VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
vtkSource Class Reference

abstract class specifies interface for visualization network source More...

#include <vtkSource.h>

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

Public Types

typedef vtkProcessObject Superclass
 
- Public Types inherited from vtkProcessObject
typedef vtkAlgorithm Superclass
 
- Public Types inherited from vtkAlgorithm
typedef vtkObject Superclass
 
- Public Types inherited from vtkObject
typedef vtkObjectBase Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
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 *)
 
- Public Member Functions inherited from vtkProcessObject
void SqueezeInputArray ()
 
void RemoveAllInputs ()
 
vtkDataObject ** GetInputs ()
 
int GetNumberOfInputs ()
 
virtual void SetInputConnection (vtkAlgorithmOutput *input)
 
virtual void SetInputConnection (int port, vtkAlgorithmOutput *input)
 
virtual void AddInputConnection (int port, vtkAlgorithmOutput *input)
 
virtual void AddInputConnection (vtkAlgorithmOutput *input)
 
virtual void RemoveInputConnection (int port, vtkAlgorithmOutput *input)
 
virtual void SetNthInputConnection (int port, int index, vtkAlgorithmOutput *input)
 
virtual void SetNumberOfInputConnections (int port, int n)
 
- Public Member Functions inherited from vtkAlgorithm
int HasExecutive ()
 
vtkExecutiveGetExecutive ()
 
virtual int ModifyRequest (vtkInformation *request, int when)
 
vtkInformationGetInputPortInformation (int port)
 
vtkInformationGetOutputPortInformation (int port)
 
int GetNumberOfInputPorts ()
 
int GetNumberOfOutputPorts ()
 
void UpdateProgress (double amount)
 
vtkInformationGetInputArrayInformation (int idx)
 
void RemoveAllInputs ()
 
vtkDataObjectGetOutputDataObject (int port)
 
int GetNumberOfInputConnections (int port)
 
int GetTotalNumberOfInputConnections ()
 
vtkAlgorithmOutputGetInputConnection (int port, int index)
 
void ConvertTotalInputToPortConnection (int ind, int &port, int &conn)
 
virtual double ComputePriority ()
 
int ProcessRequest (vtkInformation *request, vtkCollection *inInfo, vtkInformationVector *outInfo)
 
virtual int ComputePipelineMTime (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int requestFromOutputPort, unsigned long *mtime)
 
virtual vtkInformationGetInformation ()
 
virtual void SetInformation (vtkInformation *)
 
virtual void Register (vtkObjectBase *o)
 
virtual void UnRegister (vtkObjectBase *o)
 
virtual void SetAbortExecute (int)
 
virtual int GetAbortExecute ()
 
virtual void AbortExecuteOn ()
 
virtual void AbortExecuteOff ()
 
virtual void SetProgress (double)
 
virtual double GetProgress ()
 
void SetProgressText (const char *ptext)
 
virtual char * GetProgressText ()
 
virtual unsigned long GetErrorCode ()
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, const char *name)
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, int fieldAttributeType)
 
virtual void SetInputArrayToProcess (int idx, vtkInformation *info)
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, const char *fieldAssociation, const char *attributeTypeorName)
 
vtkDataObjectGetInputDataObject (int port, int connection)
 
vtkAlgorithmOutputGetOutputPort (int index)
 
vtkAlgorithmOutputGetOutputPort ()
 
void ReleaseDataFlagOn ()
 
void ReleaseDataFlagOff ()
 
int UpdateExtentIsEmpty (vtkDataObject *output)
 
int UpdateExtentIsEmpty (vtkInformation *pinfo, int extentType)
 
- Public Member Functions inherited from vtkObject
virtual void DebugOn ()
 
virtual void DebugOff ()
 
unsigned char GetDebug ()
 
void SetDebug (unsigned char debugFlag)
 
virtual void Modified ()
 
virtual unsigned long GetMTime ()
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 
vtkCommandGetCommand (unsigned long tag)
 
void RemoveObserver (vtkCommand *)
 
void RemoveObservers (unsigned long event, vtkCommand *)
 
void RemoveObservers (const char *event, vtkCommand *)
 
int HasObserver (unsigned long event, vtkCommand *)
 
int HasObserver (const char *event, vtkCommand *)
 
void RemoveObserver (unsigned long tag)
 
void RemoveObservers (unsigned long event)
 
void RemoveObservers (const char *event)
 
void RemoveAllObservers ()
 
int HasObserver (unsigned long event)
 
int HasObserver (const char *event)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
int InvokeEvent (unsigned long event, void *callData)
 
int InvokeEvent (const char *event, void *callData)
 
int InvokeEvent (unsigned long event)
 
int InvokeEvent (const char *event)
 
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 
virtual void Delete ()
 
virtual void FastDelete ()
 
void Print (ostream &os)
 
void SetReferenceCount (int)
 
void PrintRevisions (ostream &os)
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 
int GetReferenceCount ()
 

Static Public Member Functions

static int IsTypeOf (const char *type)
 
static vtkSourceSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from vtkProcessObject
static int IsTypeOf (const char *type)
 
static vtkProcessObjectSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from vtkAlgorithm
static vtkAlgorithmNew ()
 
static int IsTypeOf (const char *type)
 
static vtkAlgorithmSafeDownCast (vtkObject *o)
 
static void SetDefaultExecutivePrototype (vtkExecutive *proto)
 
static vtkInformationIntegerKeyINPUT_IS_OPTIONAL ()
 
static vtkInformationIntegerKeyINPUT_IS_REPEATABLE ()
 
static
vtkInformationInformationVectorKey
INPUT_REQUIRED_FIELDS ()
 
static
vtkInformationStringVectorKey
INPUT_REQUIRED_DATA_TYPE ()
 
static
vtkInformationInformationVectorKey
INPUT_ARRAYS_TO_PROCESS ()
 
static vtkInformationIntegerKeyINPUT_PORT ()
 
static vtkInformationIntegerKeyINPUT_CONNECTION ()
 
static vtkInformationIntegerKeyPRESERVES_DATASET ()
 
static vtkInformationIntegerKeyPRESERVES_GEOMETRY ()
 
static vtkInformationIntegerKeyPRESERVES_BOUNDS ()
 
static vtkInformationIntegerKeyPRESERVES_TOPOLOGY ()
 
static vtkInformationIntegerKeyPRESERVES_ATTRIBUTES ()
 
static vtkInformationIntegerKeyPRESERVES_RANGES ()
 
- Static Public Member Functions inherited from vtkObject
static int IsTypeOf (const char *type)
 
static vtkObjectSafeDownCast (vtkObject *o)
 
static vtkObjectNew ()
 
static void BreakOnError ()
 
static void SetGlobalWarningDisplay (int val)
 
static void GlobalWarningDisplayOn ()
 
static void GlobalWarningDisplayOff ()
 
static int GetGlobalWarningDisplay ()
 
- Static Public Member Functions inherited from vtkObjectBase
static int IsTypeOf (const char *name)
 
static vtkObjectBaseNew ()
 

Protected Member Functions

 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)
 
- Protected Member Functions inherited from vtkProcessObject
void SetNumberOfInputs (int num)
 
virtual void SetNthInput (int num, vtkDataObject *input)
 
virtual void AddInput (vtkDataObject *input)
 
virtual void RemoveInput (vtkDataObject *input)
 
virtual int FillInputPortInformation (int, vtkInformation *)
 
void AddInputInternal (vtkDataObject *input)
 
void RemoveInputInternal (vtkDataObject *input)
 
void SetupInputs ()
 
 vtkProcessObject ()
 
 ~vtkProcessObject ()
 
- Protected Member Functions inherited from vtkAlgorithm
 vtkAlgorithm ()
 
 ~vtkAlgorithm ()
 
virtual void SetNumberOfInputPorts (int n)
 
int InputPortIndexInRange (int index, const char *action)
 
int OutputPortIndexInRange (int index, const char *action)
 
int GetInputArrayAssociation (int idx, vtkInformationVector **inputVector)
 
virtual vtkExecutiveCreateDefaultExecutive ()
 
int GetInputArrayAssociation (int idx, int connection, vtkInformationVector **inputVector)
 
int GetInputArrayAssociation (int idx, vtkDataObject *input)
 
vtkDataArrayGetInputArrayToProcess (int idx, vtkInformationVector **inputVector)
 
vtkDataArrayGetInputArrayToProcess (int idx, vtkInformationVector **inputVector, int &association)
 
vtkDataArrayGetInputArrayToProcess (int idx, int connection, vtkInformationVector **inputVector)
 
vtkDataArrayGetInputArrayToProcess (int idx, int connection, vtkInformationVector **inputVector, int &association)
 
vtkDataArrayGetInputArrayToProcess (int idx, vtkDataObject *input)
 
vtkDataArrayGetInputArrayToProcess (int idx, vtkDataObject *input, int &association)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, vtkInformationVector **inputVector)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, vtkInformationVector **inputVector, int &association)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, int connection, vtkInformationVector **inputVector)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, int connection, vtkInformationVector **inputVector, int &association)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, vtkDataObject *input)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, vtkDataObject *input, int &association)
 
vtkInformationGetInputArrayFieldInformation (int idx, vtkInformationVector **inputVector)
 
virtual void SetErrorCode (unsigned long)
 
- Protected Member Functions inherited from vtkObject
 vtkObject ()
 
virtual ~vtkObject ()
 
virtual void RegisterInternal (vtkObjectBase *, int check)
 
virtual void UnRegisterInternal (vtkObjectBase *, int check)
 
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL)
 
void InternalReleaseFocus ()
 
- Protected Member Functions inherited from vtkObjectBase
 vtkObjectBase ()
 
virtual ~vtkObjectBase ()
 
virtual void CollectRevisions (ostream &os)
 
 vtkObjectBase (const vtkObjectBase &)
 
void operator= (const vtkObjectBase &)
 

Protected Attributes

vtkDataObject ** Outputs
 
int NumberOfOutputs
 
int Updating
 
vtkTimeStamp InformationTime
 
- Protected Attributes inherited from vtkProcessObject
int NumberOfInputs
 
int NumberOfRequiredInputs
 
vtkDataObject ** Inputs
 
- Protected Attributes inherited from vtkAlgorithm
vtkInformationInformation
 
double Progress
 
char * ProgressText
 
unsigned long ErrorCode
 
- Protected Attributes inherited from vtkObject
unsigned char Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
int ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

Friends

class vtkDataObjectToSourceFriendship
 

Additional Inherited Members

- Public Attributes inherited from vtkAlgorithm
int AbortExecute
 
- Static Protected Member Functions inherited from vtkAlgorithm
static vtkInformationIntegerKeyPORT_REQUIREMENTS_FILLED ()
 
- Static Protected Attributes inherited from vtkAlgorithm
static vtkExecutiveDefaultExecutivePrototype
 

Detailed Description

abstract class specifies interface for visualization network source

vtkSource is an abstract object that specifies behavior and interface of source objects. Source objects are objects that begin visualization pipeline. Sources include readers (read data from file or communications port) and procedural sources (generate data programmatically). vtkSource objects are also objects that generate output data. In this sense vtkSource is used as a superclass to vtkFilter.

Concrete subclasses of vtkSource 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.

An important feature of subclasses of vtkSource 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
vtkProcessObject vtkDataSetReader vtkFilter vtkPolyDataSource vtkStructuredGridSource vtkStructuredPointsSource vtkUnstructuredGridSource
Events:
vtkCommand::ExecuteInformationEvent vtkCommand::SetOutputEvent

Definition at line 55 of file vtkSource.h.

Member Typedef Documentation

Definition at line 58 of file vtkSource.h.

Constructor & Destructor Documentation

vtkSource::vtkSource ( )
protected
vtkSource::~vtkSource ( )
protected

Member Function Documentation

virtual const char* vtkSource::GetClassName ( )
virtual
static int vtkSource::IsTypeOf ( const char *  type)
static
virtual int vtkSource::IsA ( const char *  name)
virtual
static vtkSource* vtkSource::SafeDownCast ( vtkObject o)
static
void vtkSource::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
virtual
virtual void vtkSource::Update ( )
virtual

Bring object up-to-date before execution. Update() checks modified time against last execution time, and re-executes object if necessary.

Reimplemented from vtkAlgorithm.

virtual void vtkSource::UpdateWholeExtent ( )
virtual

Like update, but make sure the update extent is the whole extent in the output.

Reimplemented from vtkAlgorithm.

virtual void vtkSource::UpdateInformation ( )
virtual

Updates any global information about the data (like spacing for images)

Reimplemented from vtkAlgorithm.

virtual void vtkSource::PropagateUpdateExtent ( vtkDataObject output)
virtual

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.

virtual void vtkSource::TriggerAsynchronousUpdate ( )
virtual

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.

virtual void vtkSource::UpdateData ( vtkDataObject output)
virtual

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.

virtual void vtkSource::ComputeInputUpdateExtents ( vtkDataObject output)
virtual
virtual void vtkSource::SetReleaseDataFlag ( int  )
virtual

Turn on/off flag to control whether this object's data is released after being used by a source.

Reimplemented from vtkAlgorithm.

virtual int vtkSource::GetReleaseDataFlag ( )
virtual

Turn on/off flag to control whether this object's data is released after being used by a source.

Reimplemented from vtkAlgorithm.

virtual void vtkSource::ReleaseDataFlagOn ( )
virtual

Turn on/off flag to control whether this object's data is released after being used by a source.

virtual void vtkSource::ReleaseDataFlagOff ( )
virtual

Turn on/off flag to control whether this object's data is released after being used by a source.

vtkDataObject** vtkSource::GetOutputs ( )

Return an array with all the inputs of this process object. This is useful for tracing back in the pipeline to construct graphs etc.

virtual int vtkSource::GetNumberOfOutputs ( )
virtual

Return an array with all the inputs of this process object. This is useful for tracing back in the pipeline to construct graphs etc.

Reimplemented in vtkPLOT3DReader.

void vtkSource::UnRegisterAllOutputs ( void  )

Release/disconnect all outputs of this source. This is intended to be called prior to Delete() if the user is concerned about outputs holding on to the filter/source.

int vtkSource::GetOutputIndex ( vtkDataObject out)

Return what index output the passed in output is, return -1 if it does not match any of the outputs

virtual void vtkSource::SetExecutive ( vtkExecutive executive)
virtual

Set this algorithm's executive. This algorithm is removed from any executive to which it has previously been assigned and then assigned to the given executive.

Reimplemented from vtkAlgorithm.

virtual int vtkSource::ProcessRequest ( vtkInformation ,
vtkInformationVector **  ,
vtkInformationVector  
)
virtual

Transform pipeline requests from executives into old-style pipeline calls. This works with the vtkStreamingDemandDrivenPipeline executive to maintain backward compatibility for filters written as subclasses of vtkSource.

Reimplemented from vtkAlgorithm.

Reimplemented in vtkDataSetToDataSetFilter.

virtual void vtkSource::ExecuteData ( vtkDataObject output)
protectedvirtual

This method is the one that should be used by subclasses, right now the default implementation is to call the backwards compatibility method

Reimplemented in vtkImageToImageFilter, vtkImageMultipleInputFilter, and vtkImageMultipleInputOutputFilter.

virtual void vtkSource::Execute ( )
protectedvirtual

This method is the old style execute method

Reimplemented in vtkPLOT3DReader, vtkSpatialRepresentationFilter, vtkSESAMEReader, and vtkImageSource.

virtual void vtkSource::ExecuteInformation ( )
protectedvirtual
virtual void vtkSource::MarkGeneratedOutputs ( vtkDataObject )
protectedvirtual
void vtkSource::SetNumberOfOutputs ( int  num)
protected
vtkDataObject* vtkSource::GetOutput ( int  idx)
protected
virtual void vtkSource::SetNthOutput ( int  num,
vtkDataObject output 
)
protectedvirtual
virtual void vtkSource::AddOutput ( vtkDataObject output)
protectedvirtual
virtual void vtkSource::RemoveOutput ( vtkDataObject output)
protectedvirtual
virtual void vtkSource::ReportReferences ( vtkGarbageCollector )
protectedvirtual

Reimplemented from vtkProcessObject.

Reimplemented in vtkSpatialRepresentationFilter.

int vtkSource::FillOutputPortInformation ( int  port,
vtkInformation info 
)
protectedvirtual

Fill the output port information objects for this algorithm. This is invoked by the first call to GetOutputPortInformation for each port so subclasses can specify what they can handle.

Reimplemented from vtkProcessObject.

Reimplemented in vtkUnstructuredGridSource, vtkStructuredPointsSource, and vtkStructuredGridSource.

virtual void vtkSource::SetNumberOfOutputPorts ( int  n)
protectedvirtual

Set the number of output ports provided by the algorithm.

Reimplemented from vtkAlgorithm.

Friends And Related Function Documentation

friend class vtkDataObjectToSourceFriendship
friend

Definition at line 189 of file vtkSource.h.

Member Data Documentation

vtkDataObject** vtkSource::Outputs
protected

Definition at line 173 of file vtkSource.h.

int vtkSource::NumberOfOutputs
protected

Definition at line 174 of file vtkSource.h.

int vtkSource::Updating
protected

Definition at line 175 of file vtkSource.h.

vtkTimeStamp vtkSource::InformationTime
protected

Definition at line 177 of file vtkSource.h.


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