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

# 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 =========================================================================*/
    00047 #ifndef __vtkImageShiftScale_h
    00048 #define __vtkImageShiftScale_h
    00049
    00050
    00051 #include "vtkImageToImageFilter.h"
    00052
    00053 class VTK_IMAGING_EXPORT vtkImageShiftScale : public vtkImageToImageFilter
    00054 {
    00055 public:
    00056   static vtkImageShiftScale *New();
    00057   vtkTypeRevisionMacro(vtkImageShiftScale,vtkImageToImageFilter);
    00058   void PrintSelf(ostream& os, vtkIndent indent);
    00059
    00061
    00062   vtkSetMacro(Shift,float);
    00063   vtkGetMacro(Shift,float);
    00065
    00067
    00068   vtkSetMacro(Scale,float);
    00069   vtkGetMacro(Scale,float);
    00071
    00073
    00075   vtkSetMacro(OutputScalarType, int);
    00076   vtkGetMacro(OutputScalarType, int);
    00077   void SetOutputScalarTypeToDouble()
    00078     {this->SetOutputScalarType(VTK_DOUBLE);}
    00079   void SetOutputScalarTypeToFloat()
    00080     {this->SetOutputScalarType(VTK_FLOAT);}
    00081   void SetOutputScalarTypeToLong()
    00082     {this->SetOutputScalarType(VTK_LONG);}
    00083   void SetOutputScalarTypeToUnsignedLong()
    00084     {this->SetOutputScalarType(VTK_UNSIGNED_LONG);};
    00085   void SetOutputScalarTypeToInt()
    00086     {this->SetOutputScalarType(VTK_INT);}
    00087   void SetOutputScalarTypeToUnsignedInt()
    00088     {this->SetOutputScalarType(VTK_UNSIGNED_INT);}
    00089   void SetOutputScalarTypeToShort()
    00090     {this->SetOutputScalarType(VTK_SHORT);}
    00091   void SetOutputScalarTypeToUnsignedShort()
    00092     {this->SetOutputScalarType(VTK_UNSIGNED_SHORT);}
    00093   void SetOutputScalarTypeToChar()
    00094     {this->SetOutputScalarType(VTK_CHAR);}
    00095   void SetOutputScalarTypeToUnsignedChar()
    00096     {this->SetOutputScalarType(VTK_UNSIGNED_CHAR);}
    00098
    00100
    00103   vtkSetMacro(ClampOverflow, int);
    00104   vtkGetMacro(ClampOverflow, int);
    00105   vtkBooleanMacro(ClampOverflow, int);
    00107
    00108 protected:
    00109   vtkImageShiftScale();
    00110   ~vtkImageShiftScale() {};
    00111
    00112   float Shift;
    00113   float Scale;
    00114   int OutputScalarType;
    00115   int ClampOverflow;
    00116
    00117   void ExecuteInformation(vtkImageData *inData, vtkImageData *outData);
    00118   void ExecuteInformation(){this->vtkImageToImageFilter::ExecuteInformation();};
    00119   void ThreadedExecute(vtkImageData *inData, vtkImageData *outData,
    00120                        int extent[6], int id);
    00121 private:
    00122   vtkImageShiftScale(const vtkImageShiftScale&);  // Not implemented.
    00123   void operator=(const vtkImageShiftScale&);  // Not implemented.
    00124 };
    00125
    00126 #endif
    00127
    00128
    00129