40 #ifndef __vtkDataObject_h
41 #define __vtkDataObject_h
47 class vtkDataSetAttributes;
51 class vtkProcessObject;
53 class vtkStreamingDemandDrivenPipelineToDataObjectFriendship;
63 class vtkStreamingDemandDrivenPipeline;
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();
140 virtual void SetFieldData(vtkFieldData*);
141 vtkGetObjectMacro(FieldData,vtkFieldData);
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
472 virtual vtkDataSetAttributes* GetAttributes(
int type);
478 virtual vtkFieldData* GetAttributesAsFieldData(
int type);
487 virtual vtkIdType GetNumberOfElements(
int type);
497 FIELD_OPERATION_REMOVED
504 static const char* GetAssociationTypeAsString(
int associationType);
580 vtkStreamingDemandDrivenPipeline* TrySDDP(
const char* method);
581 typedef vtkStreamingDemandDrivenPipeline
SDDP;
585 friend class vtkStreamingDemandDrivenPipelineToDataObjectFriendship;
588 static const char AssociationNames[NUMBER_OF_ASSOCIATIONS][55];
void GlobalReleaseDataFlagOn()
abstract base class for most VTK objects
virtual void Register(vtkObjectBase *o)
vtkStreamingDemandDrivenPipeline SDDP
void CopyInformationToPipeline(vtkInformation *request, vtkInformation *input)
Abstract superclass for all arrays.
record modification and/or execution time
virtual void PrepareForNewData()
Generates a structured extent from unstructured.
void GlobalReleaseDataFlagOff()
Superclass for all pipeline executives in VTK.
virtual int GetExtentType()
Detect and break reference loops.
Proxy object to connect input/output ports.
virtual void PrintSelf(ostream &os, vtkIndent indent)
virtual void UnRegister(vtkObjectBase *o)
virtual unsigned long GetMTime()
a simple class to control print indentation
virtual void ReportReferences(vtkGarbageCollector *)
#define VTK_PIECES_EXTENT
virtual void CopyTypeSpecificInformation(vtkDataObject *data)
abstract base class for most VTK objects
vtkInformation * PipelineInformation
void SetUpdateExtent(int piece, int numPieces)
abstract class specifies interface for visualization network source
virtual int GetDataObjectType()
general representation of visualization data
vtkInformation * Information