Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages

# Imaging/vtkImageCast.h

Go to the documentation of this file.

    00001 /*=========================================================================
    00002
    00003   Program:   Visualization Toolkit
    00004   Module:    $RCSfile: vtkImageCast.h,v $
    00005   Language:  C++
    00006
    00007   Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen
    00008   All rights reserved.
    00009   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
    00010
    00011      This software is distributed WITHOUT ANY WARRANTY; without even
    00012      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
    00013      PURPOSE.  See the above copyright notice for more information.
    00014
    00015 =========================================================================*/
    00050 #ifndef __vtkImageCast_h
    00051 #define __vtkImageCast_h
    00052
    00053
    00054 #include "vtkImageToImageFilter.h"
    00055
    00056 class VTK_IMAGING_EXPORT vtkImageCast : public vtkImageToImageFilter
    00057 {
    00058 public:
    00059   static vtkImageCast *New();
    00060   vtkTypeRevisionMacro(vtkImageCast,vtkImageToImageFilter);
    00061   void PrintSelf(ostream& os, vtkIndent indent);
    00062
    00064
    00065   vtkSetMacro(OutputScalarType,int);
    00066   vtkGetMacro(OutputScalarType,int);
    00067   void SetOutputScalarTypeToFloat(){this->SetOutputScalarType(VTK_FLOAT);};
    00068   void SetOutputScalarTypeToDouble(){this->SetOutputScalarType(VTK_DOUBLE);};
    00069   void SetOutputScalarTypeToInt(){this->SetOutputScalarType(VTK_INT);};
    00070   void SetOutputScalarTypeToUnsignedInt()
    00071     {this->SetOutputScalarType(VTK_UNSIGNED_INT);};
    00072   void SetOutputScalarTypeToLong(){this->SetOutputScalarType(VTK_LONG);};
    00073   void SetOutputScalarTypeToUnsignedLong()
    00074     {this->SetOutputScalarType(VTK_UNSIGNED_LONG);};
    00075   void SetOutputScalarTypeToShort(){this->SetOutputScalarType(VTK_SHORT);};
    00076   void SetOutputScalarTypeToUnsignedShort()
    00077     {this->SetOutputScalarType(VTK_UNSIGNED_SHORT);};
    00078   void SetOutputScalarTypeToUnsignedChar()
    00079     {this->SetOutputScalarType(VTK_UNSIGNED_CHAR);};
    00080   void SetOutputScalarTypeToChar()
    00081     {this->SetOutputScalarType(VTK_CHAR);};
    00083
    00085
    00088   vtkSetMacro(ClampOverflow, int);
    00089   vtkGetMacro(ClampOverflow, int);
    00090   vtkBooleanMacro(ClampOverflow, int);
    00092
    00093
    00094 protected:
    00095   vtkImageCast();
    00096   ~vtkImageCast() {};
    00097
    00098   int ClampOverflow;
    00099   int OutputScalarType;
    00100   void ExecuteInformation(vtkImageData *inData, vtkImageData *outData);
    00101   void UpdateData(vtkDataObject *data);
    00102   void ExecuteInformation(){this->vtkImageToImageFilter::ExecuteInformation();};
    00103   void ThreadedExecute(vtkImageData *inData, vtkImageData *outData,
    00104                        int ext[6], int id);
    00105
    00106 private:
    00107   vtkImageCast(const vtkImageCast&);  // Not implemented.
    00108   void operator=(const vtkImageCast&);  // Not implemented.
    00109 };
    00110
    00111 #endif
    00112
    00113
    00114
    00115