40 #ifndef __vtkDataObject_h
41 #define __vtkDataObject_h
53 class vtkStreamingDemandDrivenPipelineToDataObjectFriendship;
66 #define VTK_PIECES_EXTENT 0
67 #define VTK_3D_EXTENT 1
68 #define VTK_TIME_EXTENT 2
104 virtual void Initialize();
114 int ShouldIReleaseData();
118 vtkGetMacro(DataReleased,
int);
124 void SetReleaseDataFlag(
int);
125 int GetReleaseDataFlag();
126 vtkBooleanMacro(ReleaseDataFlag,
int);
132 static void SetGlobalReleaseDataFlag(
int val);
135 static int GetGlobalReleaseDataFlag();
153 virtual void Update();
160 virtual void UpdateInformation();
166 virtual void PropagateUpdateExtent();
173 virtual void TriggerAsynchronousUpdate();
181 virtual void UpdateData();
188 virtual unsigned long GetEstimatedMemorySize();
194 virtual void SetUpdateExtent(
int piece,
int numPieces,
int ghostLevel);
196 {this->SetUpdateExtent(piece, numPieces, 0);}
207 virtual void SetUpdateExtent(
int x0,
int x1,
int y0,
int y1,
int z0,
int z1);
208 virtual void SetUpdateExtent(
int extent[6]);
209 virtual int* GetUpdateExtent();
210 virtual void GetUpdateExtent(
int& x0,
int& x1,
int& y0,
int& y1,
212 virtual void GetUpdateExtent(
int extent[6]);
223 unsigned long GetUpdateTime();
229 void SetUpdateExtentToWholeExtent();
233 unsigned long GetPipelineMTime();
240 virtual unsigned long GetActualMemorySize();
248 {this->CopyInformation( data );};
254 void SetUpdatePiece(
int piece);
255 void SetUpdateNumberOfPieces(
int num);
256 virtual int GetUpdatePiece();
257 virtual int GetUpdateNumberOfPieces();
263 void SetUpdateGhostLevel(
int level);
264 virtual int GetUpdateGhostLevel();
273 virtual void SetRequestExactExtent(
int flag);
274 virtual int GetRequestExactExtent();
275 vtkBooleanMacro(RequestExactExtent,
int);
282 virtual void SetWholeExtent(
int x0,
int x1,
int y0,
int y1,
int z0,
int z1);
283 virtual void SetWholeExtent(
int extent[6]);
284 virtual int* GetWholeExtent();
285 virtual void GetWholeExtent(
int& x0,
int& x1,
int& y0,
int& y1,
287 virtual void GetWholeExtent(
int extent[6]);
294 virtual void SetWholeBoundingBox(
double x0,
double x1,
double y0,
295 double y1,
double z0,
double z1);
296 virtual void SetWholeBoundingBox(
double bb[6]);
297 virtual double* GetWholeBoundingBox();
298 virtual void GetWholeBoundingBox(
double& x0,
double& x1,
double& y0,
299 double& y1,
double& z0,
double& z1);
300 virtual void GetWholeBoundingBox(
double extent[6]);
308 virtual void SetMaximumNumberOfPieces(
int);
309 virtual int GetMaximumNumberOfPieces();
331 this->CopyInformationToPipeline(request, input, this->PipelineInformation, 0);
337 virtual void CopyInformationFromPipeline(
vtkInformation* request);
345 int fieldAssociation,
int attributeType);
353 int fieldAssociation,
const char *
name);
359 int fieldAssociation,
370 int fieldAssociation,
const char *attributeName,
int attributeType);
382 int fieldAssociation,
int attributeType,
const char *
name,
int arrayType,
383 int numComponents,
int numTuples);
391 int arrayType,
int numComponents);
397 void DataHasBeenGenerated();
441 NUMBER_OF_ASSOCIATIONS
459 NUMBER_OF_ATTRIBUTE_TYPES
497 FIELD_OPERATION_REMOVED
504 static const char* GetAssociationTypeAsString(
int associationType);
585 friend class vtkStreamingDemandDrivenPipelineToDataObjectFriendship;
588 static const char AssociationNames[NUMBER_OF_ASSOCIATIONS][55];