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

dox/Imaging/vtkImageShiftScale.h

Go to the documentation of this file.
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkImageShiftScale.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 =========================================================================*/ 00034 #ifndef __vtkImageShiftScale_h 00035 #define __vtkImageShiftScale_h 00036 00037 00038 #include "vtkImageToImageFilter.h" 00039 00040 class VTK_IMAGING_EXPORT vtkImageShiftScale : public vtkImageToImageFilter 00041 { 00042 public: 00043 static vtkImageShiftScale *New(); 00044 vtkTypeRevisionMacro(vtkImageShiftScale,vtkImageToImageFilter); 00045 void PrintSelf(ostream& os, vtkIndent indent); 00046 00048 00049 vtkSetMacro(Shift,float); 00050 vtkGetMacro(Shift,float); 00052 00054 00055 vtkSetMacro(Scale,float); 00056 vtkGetMacro(Scale,float); 00058 00060 00062 vtkSetMacro(OutputScalarType, int); 00063 vtkGetMacro(OutputScalarType, int); 00064 void SetOutputScalarTypeToDouble() 00065 {this->SetOutputScalarType(VTK_DOUBLE);} 00066 void SetOutputScalarTypeToFloat() 00067 {this->SetOutputScalarType(VTK_FLOAT);} 00068 void SetOutputScalarTypeToLong() 00069 {this->SetOutputScalarType(VTK_LONG);} 00070 void SetOutputScalarTypeToUnsignedLong() 00071 {this->SetOutputScalarType(VTK_UNSIGNED_LONG);}; 00072 void SetOutputScalarTypeToInt() 00073 {this->SetOutputScalarType(VTK_INT);} 00074 void SetOutputScalarTypeToUnsignedInt() 00075 {this->SetOutputScalarType(VTK_UNSIGNED_INT);} 00076 void SetOutputScalarTypeToShort() 00077 {this->SetOutputScalarType(VTK_SHORT);} 00078 void SetOutputScalarTypeToUnsignedShort() 00079 {this->SetOutputScalarType(VTK_UNSIGNED_SHORT);} 00080 void SetOutputScalarTypeToChar() 00081 {this->SetOutputScalarType(VTK_CHAR);} 00082 void SetOutputScalarTypeToUnsignedChar() 00083 {this->SetOutputScalarType(VTK_UNSIGNED_CHAR);} 00085 00087 00090 vtkSetMacro(ClampOverflow, int); 00091 vtkGetMacro(ClampOverflow, int); 00092 vtkBooleanMacro(ClampOverflow, int); 00094 00095 protected: 00096 vtkImageShiftScale(); 00097 ~vtkImageShiftScale() {}; 00098 00099 float Shift; 00100 float Scale; 00101 int OutputScalarType; 00102 int ClampOverflow; 00103 00104 void ExecuteInformation(vtkImageData *inData, vtkImageData *outData); 00105 void ExecuteInformation(){this->vtkImageToImageFilter::ExecuteInformation();}; 00106 void ThreadedExecute(vtkImageData *inData, vtkImageData *outData, 00107 int extent[6], int id); 00108 private: 00109 vtkImageShiftScale(const vtkImageShiftScale&); // Not implemented. 00110 void operator=(const vtkImageShiftScale&); // Not implemented. 00111 }; 00112 00113 #endif 00114 00115 00116