dox/Imaging/vtkImageStencilData.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00030 #ifndef __vtkImageStencilData_h
00031 #define __vtkImageStencilData_h
00032
00033
00034 #include "vtkDataObject.h"
00035
00036 class VTK_IMAGING_EXPORT vtkImageStencilData : public vtkDataObject
00037 {
00038 public:
00039 static vtkImageStencilData *New();
00040 vtkTypeRevisionMacro(vtkImageStencilData, vtkDataObject);
00041 void PrintSelf(ostream& os, vtkIndent indent);
00042
00043
00044 #ifndef VTK_REMOVE_LEGACY_CODE
00045
00046 virtual vtkDataObject* MakeObject();
00047 #endif
00048
00049 void Initialize();
00050 void DeepCopy(vtkDataObject *o);
00051 void ShallowCopy(vtkDataObject *f);
00052 void InternalImageStencilDataCopy(vtkImageStencilData *s);
00053
00056 int GetDataObjectType() { return VTK_DATA_OBJECT; }
00057
00059 int GetExtentType() { return VTK_3D_EXTENT; };
00060
00062
00070 int GetNextExtent(int &r1, int &r2, int xMin, int xMax,
00071 int yIdx, int zIdx, int &iter);
00073
00079 void InsertNextExtent(int r1, int r2, int yIdx, int zIdx);
00080
00082
00085 vtkSetVector3Macro(Spacing, float);
00086 vtkGetVector3Macro(Spacing, float);
00088
00090
00093 vtkSetVector3Macro(Origin, float);
00094 vtkGetVector3Macro(Origin, float);
00096
00098
00101 vtkSetVector6Macro(Extent, int);
00102 vtkGetVector6Macro(Extent, int);
00104
00106
00108 vtkSetVector3Macro(OldSpacing, float);
00109 vtkGetVector3Macro(OldSpacing, float);
00111
00113
00115 vtkSetVector3Macro(OldOrigin, float);
00116 vtkGetVector3Macro(OldOrigin, float);
00118
00121 void AllocateExtents();
00122
00129 void UpdateData();
00130
00135 void PropagateUpdateExtent();
00136
00142 void TriggerAsynchronousUpdate();
00143
00144 protected:
00145 vtkImageStencilData();
00146 ~vtkImageStencilData();
00147
00150 int SpacingOrOriginHasChanged();
00151
00153
00155 float OldSpacing[3];
00156 float OldOrigin[3];
00158
00160
00161 float Spacing[3];
00162 float Origin[3];
00164
00166
00167 int NumberOfExtentEntries;
00168 int *ExtentListLengths;
00169 int **ExtentLists;
00171 private:
00172 vtkImageStencilData(const vtkImageStencilData&);
00173 void operator=(const vtkImageStencilData&);
00174 };
00175
00176 #endif
00177
00178
00179