00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00031 #ifndef __vtkImageStencilSource_h
00032 #define __vtkImageStencilSource_h
00033
00034
00035 #include "vtkImageStencilAlgorithm.h"
00036
00037 class vtkImageStencilData;
00038 class vtkImageData;
00039
00040 class VTK_IMAGING_EXPORT vtkImageStencilSource :
00041 public vtkImageStencilAlgorithm
00042 {
00043 public:
00044 static vtkImageStencilSource *New();
00045 vtkTypeMacro(vtkImageStencilSource, vtkImageStencilAlgorithm);
00046
00047 void PrintSelf(ostream& os, vtkIndent indent);
00048
00050
00055 virtual void SetInformationInput(vtkImageData*);
00056 vtkGetObjectMacro(InformationInput, vtkImageData);
00058
00060
00063 vtkSetVector3Macro(OutputOrigin, double);
00064 vtkGetVector3Macro(OutputOrigin, double);
00066
00068
00071 vtkSetVector3Macro(OutputSpacing, double);
00072 vtkGetVector3Macro(OutputSpacing, double);
00074
00076
00078 vtkSetVector6Macro(OutputWholeExtent, int);
00079 vtkGetVector6Macro(OutputWholeExtent, int);
00081
00083 virtual void ReportReferences(vtkGarbageCollector*);
00084
00085 protected:
00086 vtkImageStencilSource();
00087 ~vtkImageStencilSource();
00088
00089 virtual int RequestInformation(vtkInformation *, vtkInformationVector **,
00090 vtkInformationVector *);
00091
00092 vtkImageData *InformationInput;
00093
00094 int OutputWholeExtent[6];
00095 double OutputOrigin[3];
00096 double OutputSpacing[3];
00097
00098 private:
00099 vtkImageStencilSource(const vtkImageStencilSource&);
00100 void operator=(const vtkImageStencilSource&);
00101 };
00102
00103 #endif
00104