00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00024 #ifndef __vtkImagePadFilter_h
00025 #define __vtkImagePadFilter_h
00026
00027 #include "vtkThreadedImageAlgorithm.h"
00028
00029 class VTK_IMAGING_EXPORT vtkImagePadFilter : public vtkThreadedImageAlgorithm
00030 {
00031 public:
00032 static vtkImagePadFilter *New();
00033 vtkTypeRevisionMacro(vtkImagePadFilter,vtkThreadedImageAlgorithm);
00034 void PrintSelf(ostream& os, vtkIndent indent);
00035
00037
00038 void SetOutputWholeExtent(int extent[6]);
00039 void SetOutputWholeExtent(int minX, int maxX, int minY, int maxY,
00040 int minZ, int maxZ);
00041 void GetOutputWholeExtent(int extent[6]);
00042 int *GetOutputWholeExtent() {return this->OutputWholeExtent;}
00044
00046
00047 vtkSetMacro(OutputNumberOfScalarComponents, int);
00048 vtkGetMacro(OutputNumberOfScalarComponents, int);
00050
00051 protected:
00052 vtkImagePadFilter();
00053 ~vtkImagePadFilter() {};
00054
00055 int OutputWholeExtent[6];
00056 int OutputNumberOfScalarComponents;
00057
00058 virtual int RequestInformation (vtkInformation*,
00059 vtkInformationVector**,
00060 vtkInformationVector*);
00061 virtual int RequestUpdateExtent(vtkInformation*,
00062 vtkInformationVector**,
00063 vtkInformationVector*);
00064
00065 virtual void ComputeInputUpdateExtent (int inExt[6], int outExt[6],
00066 int wExt[6]);
00067
00068 private:
00069 vtkImagePadFilter(const vtkImagePadFilter&);
00070 void operator=(const vtkImagePadFilter&);
00071 };
00072
00073 #endif
00074
00075
00076