VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
vtkDataObjectSource Class Reference

abstract class specifies interface for field source (or objects that generate field output) More...

#include <vtkDataObjectSource.h>

Inheritance diagram for vtkDataObjectSource:
[legend]
Collaboration diagram for vtkDataObjectSource:
[legend]

Public Types

typedef vtkSource Superclass
 
- Public Types inherited from vtkSource
typedef vtkProcessObject Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
void PrintSelf (ostream &os, vtkIndent indent)
 
void SetOutput (vtkDataObject *)
 
vtkDataObjectGetOutput ()
 
vtkDataObjectGetOutput (int idx)
 
- Public Member Functions inherited from vtkSource
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual void Update ()
 
virtual void UpdateWholeExtent ()
 
virtual void UpdateInformation ()
 
virtual void PropagateUpdateExtent (vtkDataObject *output)
 
virtual void TriggerAsynchronousUpdate ()
 
virtual void UpdateData (vtkDataObject *output)
 
virtual void ComputeInputUpdateExtents (vtkDataObject *output)
 
void UnRegisterAllOutputs (void)
 
int GetOutputIndex (vtkDataObject *out)
 
virtual void SetExecutive (vtkExecutive *executive)
 
virtual void SetReleaseDataFlag (int)
 
virtual int GetReleaseDataFlag ()
 
virtual void ReleaseDataFlagOn ()
 
virtual void ReleaseDataFlagOff ()
 
vtkDataObject ** GetOutputs ()
 
virtual int GetNumberOfOutputs ()
 
virtual int ProcessRequest (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 

Static Public Member Functions

static int IsTypeOf (const char *type)
 
static vtkDataObjectSourceSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from vtkSource
static int IsTypeOf (const char *type)
 
static vtkSourceSafeDownCast (vtkObject *o)
 

Protected Member Functions

 vtkDataObjectSource ()
 
 ~vtkDataObjectSource ()
 
virtual int FillOutputPortInformation (int, vtkInformation *)
 
- Protected Member Functions inherited from vtkSource
 vtkSource ()
 
 ~vtkSource ()
 
virtual void ExecuteData (vtkDataObject *output)
 
virtual void Execute ()
 
virtual void ExecuteInformation ()
 
virtual void MarkGeneratedOutputs (vtkDataObject *)
 
void SetNumberOfOutputs (int num)
 
vtkDataObjectGetOutput (int idx)
 
virtual void SetNthOutput (int num, vtkDataObject *output)
 
virtual void AddOutput (vtkDataObject *output)
 
virtual void RemoveOutput (vtkDataObject *output)
 
virtual void ReportReferences (vtkGarbageCollector *)
 
int FillOutputPortInformation (int, vtkInformation *)
 
virtual void SetNumberOfOutputPorts (int n)
 

Additional Inherited Members

- Protected Attributes inherited from vtkSource
vtkDataObject ** Outputs
 
int NumberOfOutputs
 
int Updating
 
vtkTimeStamp InformationTime
 

Detailed Description

abstract class specifies interface for field source (or objects that generate field output)

vtkDataObjectSource is an abstract object that specifies behavior and interface of field source objects. Field source objects are source objects that create vtkFieldData (field data) on output.

Concrete subclasses of vtkDataObjectSource must define Update() and Execute() methods. The public method Update() invokes network execution and will bring the network up-to-date. The protected Execute() method actually does the work of data creation/generation. The difference between the two methods is that Update() implements input consistency checks and modified time comparisons and then invokes the Execute() which is an implementation of a particular algorithm.

vtkDataObjectSource provides a mechanism for invoking the methods StartMethod() and EndMethod() before and after object execution (via Execute()). These are convenience methods you can use for any purpose (e.g., debugging info, highlighting/notifying user interface, etc.) These methods accept a single void* pointer that can be used to send data to the methods. It is also possible to specify a function to delete the argument via StartMethodArgDelete and EndMethodArgDelete.

Another method, ProgressMethod() can be specified. Some filters invoke this method periodically during their execution. The use is similar to that of StartMethod() and EndMethod().

An important feature of subclasses of vtkDataObjectSource is that it is possible to control the memory-management model (i.e., retain output versus delete output data). If enabled the ReleaseDataFlag enables the deletion of the output data once the downstream process object finishes processing the data (please see text).

See also
vtkSource vtkFilter vtkFieldDataFilter

Definition at line 61 of file vtkDataObjectSource.h.

Member Typedef Documentation

Definition at line 64 of file vtkDataObjectSource.h.

Constructor & Destructor Documentation

vtkDataObjectSource::vtkDataObjectSource ( )
protected
vtkDataObjectSource::~vtkDataObjectSource ( )
inlineprotected

Definition at line 80 of file vtkDataObjectSource.h.

Member Function Documentation

virtual const char* vtkDataObjectSource::GetClassName ( )
virtual

Reimplemented from vtkSource.

static int vtkDataObjectSource::IsTypeOf ( const char *  type)
static
virtual int vtkDataObjectSource::IsA ( const char *  type)
virtual

Reimplemented from vtkSource.

static vtkDataObjectSource* vtkDataObjectSource::SafeDownCast ( vtkObject o)
static
void vtkDataObjectSource::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
vtkDataObject* vtkDataObjectSource::GetOutput ( )

Get the output field of this source.

vtkDataObject* vtkDataObjectSource::GetOutput ( int  idx)
inline

Get the output field of this source.

Definition at line 70 of file vtkDataObjectSource.h.

void vtkDataObjectSource::SetOutput ( vtkDataObject )
virtual int vtkDataObjectSource::FillOutputPortInformation ( int  ,
vtkInformation  
)
protectedvirtual

The documentation for this class was generated from the following file: