#include <vtkDataObject.h>
Inheritance diagram for vtkDataObject:
Public Methods | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | PrintSelf (ostream &os, vtkIndent indent) |
virtual vtkDataObject * | MakeObject () |
virtual vtkSource * | GetSource () |
void | SetSource (vtkSource *s) |
unsigned long int | GetMTime () |
virtual void | Initialize () |
void | ReleaseData () |
int | ShouldIReleaseData () |
virtual int | GetDataReleased () |
virtual void | SetReleaseDataFlag (int) |
virtual int | GetReleaseDataFlag () |
virtual void | ReleaseDataFlagOn () |
virtual void | ReleaseDataFlagOff () |
void | GlobalReleaseDataFlagOn () |
void | GlobalReleaseDataFlagOff () |
virtual void | SetFieldData (vtkFieldData *) |
virtual vtkFieldData * | GetFieldData () |
void | UnRegister (vtkObject *o) |
virtual int | GetNetReferenceCount () |
virtual void | Update () |
virtual void | UpdateInformation () |
virtual void | PropagateUpdateExtent () |
virtual void | TriggerAsynchronousUpdate () |
virtual void | UpdateData () |
unsigned long | GetEstimatedPipelineMemorySize () |
virtual unsigned long | GetEstimatedMemorySize () |
void | ComputeEstimatedPipelineMemorySize (unsigned long sizes[3]) |
virtual void | SetUpdateExtent (int vtkNotUsed(piece), int vtkNotUsed(numPieces), int vtkNotUsed(ghostLevel)) |
void | SetUpdateExtent (int piece, int numPieces) |
virtual void | SetUpdateExtent (int x1, int x2, int y1, int y2, int z1, int z2) |
virtual void | SetUpdateExtent (int ext[6]) |
virtual int * | GetUpdateExtent () |
virtual void | GetUpdateExtent (int &, int &, int &, int &, int &, int &) |
virtual void | GetUpdateExtent (int[6]) |
virtual int | GetDataObjectType () |
unsigned long | GetUpdateTime () |
void | SetUpdateExtentToWholeExtent () |
void | SetPipelineMTime (unsigned long time) |
virtual unsigned long | GetPipelineMTime () |
virtual unsigned long | GetActualMemorySize () |
void | CopyInformation (vtkDataObject *data) |
virtual void | CopyTypeSpecificInformation (vtkDataObject *data) |
void | SetUpdatePiece (int piece) |
void | SetUpdateNumberOfPieces (int num) |
virtual int | GetUpdatePiece () |
virtual int | GetUpdateNumberOfPieces () |
void | SetUpdateGhostLevel (int level) |
virtual int | GetUpdateGhostLevel () |
virtual void | SetWholeExtent (int, int, int, int, int, int) |
virtual void | SetWholeExtent (int[6]) |
virtual int * | GetWholeExtent () |
virtual void | GetWholeExtent (int &, int &, int &, int &, int &, int &) |
virtual void | GetWholeExtent (int[6]) |
void | DataHasBeenGenerated () |
virtual void | PrepareForNewData () |
virtual void | ShallowCopy (vtkDataObject *src) |
virtual void | DeepCopy (vtkDataObject *src) |
virtual void | SetLocality (float) |
virtual float | GetLocality () |
void | SetExtentTranslator (vtkExtentTranslator *translator) |
vtkExtentTranslator * | GetExtentTranslator () |
Static Public Methods | |
vtkDataObject * | New () |
int | IsTypeOf (const char *type) |
vtkDataObject * | SafeDownCast (vtkObject *o) |
void | SetGlobalReleaseDataFlag (int val) |
int | GetGlobalReleaseDataFlag () |
Protected Methods | |
vtkDataObject () | |
~vtkDataObject () | |
vtkDataObject (const vtkDataObject &) | |
void | operator= (const vtkDataObject &) |
int | UpdateExtentIsOutsideOfTheExtent () |
int | UpdateExtentIsEmpty () |
virtual int | VerifyUpdateExtent () |
virtual int | GetExtentType () |
Protected Attributes | |
vtkFieldData * | FieldData |
vtkSource * | Source |
int | DataReleased |
int | WholeExtent [6] |
int | Extent [6] |
int | UpdateExtent [6] |
unsigned char | UpdateExtentInitialized |
vtkExtentTranslator * | ExtentTranslator |
int | NumberOfPieces |
int | Piece |
int | UpdateNumberOfPieces |
int | UpdatePiece |
int | GhostLevel |
int | UpdateGhostLevel |
int | ReleaseDataFlag |
vtkTimeStamp | UpdateTime |
unsigned long | EstimatedWholeMemorySize |
unsigned long | PipelineMTime |
int | LastUpdateExtentWasOutsideOfTheExtent |
float | Locality |
vtkDataObject is an general representation of visualization data. It serves to encapsulate instance variables and methods for visualization network execution, as well as representing data consisting of a field (i.e., just an unstructured pile of data). This is to be compared with a vtkDataSet, which is data with geometric and/or topological structure.
vtkDataObjects are used to represent arbitrary repositories of data via the vtkFieldData instance variable. These data must be eventually mapped into a concrete subclass of vtkDataSet before they can actually be displayed.
Definition at line 73 of file vtkDataObject.h.
|
|
|
|
|
Definition at line 291 of file vtkDataObject.h. |
|
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. Reimplemented from vtkObject. Reimplemented in vtkImageData, vtkPolyData, vtkRectilinearGrid, vtkStructuredGrid, vtkStructuredPoints, vtkUnstructuredGrid, vtkPiecewiseFunction, and vtkImageCanvasSource2D. Referenced by MakeObject().
|
|
Return the class name as a string. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h. Reimplemented from vtkObject. Reimplemented in vtkDataSet, vtkImageData, vtkPointSet, vtkPolyData, vtkRectilinearGrid, vtkStructuredGrid, vtkStructuredPoints, vtkUnstructuredGrid, vtkPiecewiseFunction, and vtkImageCanvasSource2D. |
|
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h. Reimplemented from vtkObject. Reimplemented in vtkDataSet, vtkImageData, vtkPointSet, vtkPolyData, vtkRectilinearGrid, vtkStructuredGrid, vtkStructuredPoints, vtkUnstructuredGrid, vtkPiecewiseFunction, and vtkImageCanvasSource2D. |
|
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h. Reimplemented from vtkObject. Reimplemented in vtkDataSet, vtkImageData, vtkPointSet, vtkPolyData, vtkRectilinearGrid, vtkStructuredGrid, vtkStructuredPoints, vtkUnstructuredGrid, vtkPiecewiseFunction, and vtkImageCanvasSource2D. |
|
Will cast the supplied object to vtkObject* is this is a safe operation (i.e., a safe downcast); otherwise NULL is returned. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h. Reimplemented from vtkObject. Reimplemented in vtkDataSet, vtkImageData, vtkPointSet, vtkPolyData, vtkRectilinearGrid, vtkStructuredGrid, vtkStructuredPoints, vtkUnstructuredGrid, vtkPiecewiseFunction, and vtkImageCanvasSource2D. Referenced by vtkDataObjectCollection::GetItem(), and vtkDataObjectCollection::GetNextItem().
|
|
Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes. Reimplemented from vtkObject. Reimplemented in vtkDataSet, vtkImageData, vtkPointSet, vtkPolyData, vtkRectilinearGrid, vtkStructuredGrid, vtkUnstructuredGrid, vtkPiecewiseFunction, and vtkImageCanvasSource2D. |
|
Create concrete instance of this data object. Reimplemented in vtkImageData, vtkPolyData, vtkRectilinearGrid, vtkStructuredGrid, vtkStructuredPoints, vtkUnstructuredGrid, and vtkPiecewiseFunction. Definition at line 82 of file vtkDataObject.h. |
|
Set/Get the source object creating this data object. |
|
|
|
Data objects are composite objects and need to check each part for MTime. The information object also needs to be considered. Reimplemented from vtkObject. Reimplemented in vtkDataSet, vtkPointSet, and vtkPiecewiseFunction. |
|
Reimplemented in vtkDataSet, vtkPointSet, vtkPolyData, vtkRectilinearGrid, vtkStructuredGrid, vtkUnstructuredGrid, and vtkPiecewiseFunction. |
|
Release data back to system to conserve memory resource. Used during visualization network execution. Releasing this data does not make down-stream data invalid, so it does not modify the MTime of this data object. |
|
Return flag indicating whether data should be released after use by a filter. |
|
Get the flag indicating the data has been released. |
|
Turn on/off flag to control whether this object's data is released after being used by a filter. |
|
|
|
|
|
|
|
Turn on/off flag to control whether every object releases its data after being used by a filter. |
|
Definition at line 118 of file vtkDataObject.h. |
|
Definition at line 119 of file vtkDataObject.h. |
|
|
|
Assign or retrieve field data to this data object. |
|
|
|
Decrease the reference count (release by another object). This has the same effect as invoking Delete() (i.e., it reduces the reference count by 1). Reimplemented from vtkObject. Reimplemented in vtkPointSet. |
|
Get the net reference count. That is the count minus any self created loops. This is used in the Source/Data registration to properly free the objects. Reimplemented in vtkPointSet. Definition at line 132 of file vtkDataObject.h. |
|
Provides opportunity for the data object to insure internal consistency before access. Also causes owning source/filter (if any) to update itself. The Update() method is composed of UpdateInformation(), PropagateUpdateExtent(), TriggerAsynchronousUpdate(), and UpdateData(). Referenced by vtkImageData::UpdateAndReturnData().
|
|
WARNING: INTERNAL METHOD - NOT FOR GENERAL USE. THIS METHOD IS PART OF THE PIPELINE UPDATE FUNCTIONALITY. Update all the "easy to update" information about the object such as the extent which will be used to control the update. This propagates all the way up then back down the pipeline. As a by-product the PipelineMTime is updated. |
|
WARNING: INTERNAL METHOD - NOT FOR GENERAL USE. THIS METHOD IS PART OF THE PIPELINE UPDATE FUNCTIONALITY. The update extent for this object is propagated up the pipeline. This propagation may early terminate based on the PipelineMTime. |
|
WARNING: INTERNAL METHOD - NOT FOR GENERAL USE. THIS METHOD IS PART OF THE PIPELINE UPDATE FUNCTIONALITY. Propagate back up the pipeline for ports and trigger the update on the other side of the port to allow for asynchronous parallel processing in the pipeline. This propagation may early terminate based on the PipelineMTime. |
|
WARNING: INTERNAL METHOD - NOT FOR GENERAL USE. THIS METHOD IS PART OF THE PIPELINE UPDATE FUNCTIONALITY. Propagate the update back up the pipeline, and perform the actual work of updating on the way down. When the propagate arrives at a port, block and wait for the asynchronous update to finish on the other side. This propagation may early terminate based on the PipelineMTime. Reimplemented in vtkImageData. |
|
Get the maximum size of the pipeline. Should only be called after UpdateInformation() and PropagateUpdateExtent() have both been called. The size is returned in kilobytes. |
|
Get the estimated size of this data object itself. Should be called after UpdateInformation() and PropagateUpdateExtent() have both been called. Should be overridden in a subclass - otherwise the default is to assume that this data object requires no memory. The size is returned in kilobytes. Reimplemented in vtkImageData. |
|
Propogate the computation of the maximum size of the pipeline. The first size returned is the size of the pipeline after the source has executed (and has therefore had a chance to release any of its input data). The second size returned is the estimated size of this data object according to the source. If this is structured data, then the source likely asked this object for its estimated size. If it is unstructured data, then the source should have made its own prediction as to its output size. The third size returned is the maximum pipeline size encounted upstream during this propagation. All sizes are in kilobytes. |
|
A generic way of specifying an update extent. Subclasses must decide what a piece is. When the NumberOfPieces is zero, then no data is requested, and the source will not execute. Definition at line 196 of file vtkDataObject.h. Referenced by vtkUnstructuredGrid::SetUpdateExtent(), vtkStructuredGrid::SetUpdateExtent(), vtkRectilinearGrid::SetUpdateExtent(), vtkPolyData::SetUpdateExtent(), and vtkImageData::SetUpdateExtent().
|
|
Reimplemented in vtkImageData, vtkPolyData, vtkRectilinearGrid, vtkStructuredGrid, and vtkUnstructuredGrid. Definition at line 199 of file vtkDataObject.h. |
|
Set the update extent for data objects that use 3D extents. Using this method on data objects that set extents as pieces (such as vtkPolyData or vtkUnstructuredGrid) has no real effect. Don't use the set macro to set the update extent since we don't want this object to be modified just due to a change in update extent. When the volume of the extent is zero (0, -1,..), then no data is requested, and the source will not execute. Reimplemented in vtkImageData, vtkPolyData, vtkRectilinearGrid, vtkStructuredGrid, and vtkUnstructuredGrid. |
|
Reimplemented in vtkImageData, vtkPolyData, vtkRectilinearGrid, vtkStructuredGrid, and vtkUnstructuredGrid. |
|
Reimplemented in vtkPolyData, and vtkUnstructuredGrid. |
|
Reimplemented in vtkPolyData, and vtkUnstructuredGrid. |
|
Reimplemented in vtkPolyData, and vtkUnstructuredGrid. |
|
Return class name of data type. This is one of VTK_STRUCTURED_GRID, VTK_STRUCTURED_POINTS, VTK_UNSTRUCTURED_GRID, VTK_POLY_DATA, or VTK_RECTILINEAR_GRID (see vtkSetGet.h for definitions). THIS METHOD IS THREAD SAFE Reimplemented in vtkDataSet, vtkImageData, vtkPolyData, vtkRectilinearGrid, vtkStructuredGrid, vtkStructuredPoints, vtkUnstructuredGrid, and vtkPiecewiseFunction. Definition at line 217 of file vtkDataObject.h. Referenced by vtkDataSet::GetDataSetType().
|
|
Used by Threaded ports to determine if they should initiate an asynchronous update (still in development). |
|
If the whole input extent is required to generate the requested output extent, this method can be called to set the input update extent to the whole input extent. This method assumes that the whole extent is known (that UpdateInformation has been called) |
|
Definition at line 229 of file vtkDataObject.h. |
|
|
|
Return the actual size of the data in kilobytes. This number is valid only after the pipeline has updated. The memory size returned is guaranteed to be greater than or equal to the memory required to represent the data (e.g., extra space in arrays, etc. are not included in the return value). Reimplemented in vtkDataSet, vtkImageData, vtkPointSet, vtkPolyData, vtkRectilinearGrid, vtkStructuredGrid, and vtkUnstructuredGrid. |
|
Copy the generic information (WholeExtent ...) |
|
By default, there is no type specific information Reimplemented in vtkImageData. Definition at line 243 of file vtkDataObject.h. |
|
Set / Get the update piece and the update number of pieces. Similar to update extent in 3D. |
|
|
|
|
|
|
|
Set / Get the update ghost level and the update number of ghost levels. Similar to update extent in 3D. |
|
|
|
Set/Get the whole extent of this data object |
|
|
|
|
|
|
|
|
|
This method is called by the source when it executes to generate data. It is sort of the opposite of ReleaseData. It sets the DataReleased flag to 0, and sets a new UpdateTime. |
|
make the output data ready for new data to be inserted. For most objects we just call Initialize. But for vtkImageData we leave the old data in case the memory can be reused. Reimplemented in vtkImageData. Definition at line 270 of file vtkDataObject.h. |
|
Shallow and Deep copy. These copy the data, but not any of the pipeline connections. Reimplemented in vtkDataSet, vtkImageData, vtkPointSet, vtkPolyData, vtkRectilinearGrid, vtkStructuredGrid, vtkUnstructuredGrid, and vtkPiecewiseFunction. |
|
Reimplemented in vtkDataSet, vtkImageData, vtkPointSet, vtkPolyData, vtkRectilinearGrid, vtkStructuredGrid, vtkUnstructuredGrid, and vtkPiecewiseFunction. |
|
Locality is used internally by the pipeline update mechanism. It is used to get parralel execution when a filter has multiple inputs with ports upstream. |
|
|
|
An object that will translate pieces into structured extents. |
|
|
|
Definition at line 292 of file vtkDataObject.h. |
|
Return non zero if the UpdateExtent is outside of the Extent |
|
This detects when the UpdateExtent will generate no data, and UpdateData on the source is not necessary. This condition is satisfied when the UpdateExtent has zero volume (0,-1,...) of the UpdateNumberOfPieces is 0. |
|
Default behavior is to make sure that the update extent lies within the whole extent. If it does not, an error condition occurs and this method returns 0. If it is ok, then 1 is returned. Since uninitialized extents are initialized to the whole extent during UpdateInformation() there should not be errors. If a data object subclass wants to try to take care of errors silently, then this method should be overridden. |
|
Reimplemented in vtkImageData, vtkRectilinearGrid, and vtkStructuredGrid. Definition at line 327 of file vtkDataObject.h. |
|
Definition at line 295 of file vtkDataObject.h. |
|
Definition at line 298 of file vtkDataObject.h. |
|
Definition at line 301 of file vtkDataObject.h. |
|
Definition at line 332 of file vtkDataObject.h. |
|
Definition at line 333 of file vtkDataObject.h. |
|
Definition at line 334 of file vtkDataObject.h. |
|
Definition at line 336 of file vtkDataObject.h. |
|
Definition at line 338 of file vtkDataObject.h. |
|
Definition at line 341 of file vtkDataObject.h. |
|
Definition at line 342 of file vtkDataObject.h. |
|
Definition at line 343 of file vtkDataObject.h. |
|
Definition at line 344 of file vtkDataObject.h. |
|
Definition at line 346 of file vtkDataObject.h. |
|
Definition at line 347 of file vtkDataObject.h. |
|
Definition at line 350 of file vtkDataObject.h. |
|
Definition at line 353 of file vtkDataObject.h. |
|
Definition at line 357 of file vtkDataObject.h. |
|
Definition at line 361 of file vtkDataObject.h. |
|
Definition at line 364 of file vtkDataObject.h. |
|
Definition at line 371 of file vtkDataObject.h. |