VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkImagePadFilter.h 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00024 #ifndef __vtkImagePadFilter_h 00025 #define __vtkImagePadFilter_h 00026 00027 #include "vtkImagingCoreModule.h" // For export macro 00028 #include "vtkThreadedImageAlgorithm.h" 00029 00030 class VTKIMAGINGCORE_EXPORT vtkImagePadFilter : public vtkThreadedImageAlgorithm 00031 { 00032 public: 00033 static vtkImagePadFilter *New(); 00034 vtkTypeMacro(vtkImagePadFilter,vtkThreadedImageAlgorithm); 00035 void PrintSelf(ostream& os, vtkIndent indent); 00036 00038 00039 void SetOutputWholeExtent(int extent[6]); 00040 void SetOutputWholeExtent(int minX, int maxX, int minY, int maxY, 00041 int minZ, int maxZ); 00042 void GetOutputWholeExtent(int extent[6]); 00043 int *GetOutputWholeExtent() {return this->OutputWholeExtent;} 00045 00047 00048 vtkSetMacro(OutputNumberOfScalarComponents, int); 00049 vtkGetMacro(OutputNumberOfScalarComponents, int); 00051 00052 protected: 00053 vtkImagePadFilter(); 00054 ~vtkImagePadFilter() {}; 00055 00056 int OutputWholeExtent[6]; 00057 int OutputNumberOfScalarComponents; 00058 00059 virtual int RequestInformation (vtkInformation*, 00060 vtkInformationVector**, 00061 vtkInformationVector*); 00062 virtual int RequestUpdateExtent(vtkInformation*, 00063 vtkInformationVector**, 00064 vtkInformationVector*); 00065 00066 virtual void ComputeInputUpdateExtent (int inExt[6], int outExt[6], 00067 int wExt[6]); 00068 00069 private: 00070 vtkImagePadFilter(const vtkImagePadFilter&); // Not implemented. 00071 void operator=(const vtkImagePadFilter&); // Not implemented. 00072 }; 00073 00074 #endif 00075 00076 00077