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

Executive supporting on-demand execution. More...

#include <vtkDemandDrivenPipeline.h>

Inherits vtkExecutive.

Collaboration diagram for vtkDemandDrivenPipeline:
[legend]

Public Types

typedef vtkExecutive Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual int SetReleaseDataFlag (int port, int n)
 
virtual int GetReleaseDataFlag (int port)
 
virtual int UpdatePipelineMTime ()
 
virtual int UpdateDataObject ()
 
virtual int UpdateInformation ()
 
virtual int UpdateData (int outputPort)
 
virtual int ProcessRequest (vtkInformation *request, vtkInformationVector **inInfo, vtkInformationVector *outInfo)
 
virtual int ComputePipelineMTime (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int requestFromOutputPort, unsigned long *mtime)
 
virtual int Update ()
 
virtual int Update (int port)
 
virtual unsigned long GetPipelineMTime ()
 

Static Public Member Functions

static vtkDemandDrivenPipelineNew ()
 
static int IsTypeOf (const char *type)
 
static vtkDemandDrivenPipelineSafeDownCast (vtkObject *o)
 
static vtkInformationRequestKeyREQUEST_DATA_OBJECT ()
 
static vtkInformationRequestKeyREQUEST_INFORMATION ()
 
static vtkInformationRequestKeyREQUEST_DATA ()
 
static vtkInformationRequestKeyREQUEST_DATA_NOT_GENERATED ()
 
static vtkInformationIntegerKeyRELEASE_DATA ()
 
static vtkInformationIntegerKeyDATA_NOT_GENERATED ()
 
static vtkDataObjectNewDataObject (const char *type)
 
static vtkInformationIntegerKeyREQUEST_REGENERATE_INFORMATION ()
 

Protected Member Functions

 vtkDemandDrivenPipeline ()
 
 ~vtkDemandDrivenPipeline ()
 
virtual int ExecuteDataObject (vtkInformation *request, vtkInformationVector **inInfo, vtkInformationVector *outInfo)
 
virtual int ExecuteInformation (vtkInformation *request, vtkInformationVector **inInfo, vtkInformationVector *outInfo)
 
virtual int ExecuteData (vtkInformation *request, vtkInformationVector **inInfo, vtkInformationVector *outInfo)
 
virtual void ResetPipelineInformation (int port, vtkInformation *)
 
virtual int CheckDataObject (int port, vtkInformationVector *outInfo)
 
int InputCountIsValid (vtkInformationVector **)
 
int InputCountIsValid (int port, vtkInformationVector **)
 
int InputTypeIsValid (vtkInformationVector **)
 
int InputTypeIsValid (int port, vtkInformationVector **)
 
virtual int InputTypeIsValid (int port, int index, vtkInformationVector **)
 
int InputFieldsAreValid (vtkInformationVector **)
 
int InputFieldsAreValid (int port, vtkInformationVector **)
 
virtual int InputFieldsAreValid (int port, int index, vtkInformationVector **)
 
int DataSetAttributeExists (vtkDataSetAttributes *dsa, vtkInformation *field)
 
int FieldArrayExists (vtkFieldData *data, vtkInformation *field)
 
int ArrayIsValid (vtkAbstractArray *array, vtkInformation *field)
 
int InputIsOptional (int port)
 
int InputIsRepeatable (int port)
 
virtual int NeedToExecuteData (int outputPort, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec)
 
virtual void ExecuteDataStart (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec)
 
virtual void ExecuteDataEnd (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec)
 
virtual void MarkOutputsGenerated (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec)
 

Protected Attributes

unsigned long PipelineMTime
 
vtkTimeStamp DataObjectTime
 
vtkTimeStamp InformationTime
 
vtkTimeStamp DataTime
 
vtkInformationInfoRequest
 
vtkInformationDataObjectRequest
 
vtkInformationDataRequest
 

Friends

class vtkCompositeDataPipeline
 

Detailed Description

Executive supporting on-demand execution.

vtkDemandDrivenPipeline is an executive that will execute an algorithm only when its outputs are out-of-date with respect to its inputs.

Events:
vtkCommand::EndEvent vtkCommand::StartEvent

Definition at line 42 of file vtkDemandDrivenPipeline.h.

Member Typedef Documentation

Definition at line 46 of file vtkDemandDrivenPipeline.h.

Constructor & Destructor Documentation

vtkDemandDrivenPipeline::vtkDemandDrivenPipeline ( )
protected
vtkDemandDrivenPipeline::~vtkDemandDrivenPipeline ( )
protected

Member Function Documentation

static vtkDemandDrivenPipeline* vtkDemandDrivenPipeline::New ( )
static
virtual const char* vtkDemandDrivenPipeline::GetClassName ( )
virtual
static int vtkDemandDrivenPipeline::IsTypeOf ( const char *  type)
static
virtual int vtkDemandDrivenPipeline::IsA ( const char *  type)
virtual
static vtkDemandDrivenPipeline* vtkDemandDrivenPipeline::SafeDownCast ( vtkObject o)
static
void vtkDemandDrivenPipeline::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
virtual int vtkDemandDrivenPipeline::ProcessRequest ( vtkInformation request,
vtkInformationVector **  inInfo,
vtkInformationVector outInfo 
)
virtual

Generalized interface for asking the executive to fullfill update requests.

virtual int vtkDemandDrivenPipeline::ComputePipelineMTime ( vtkInformation request,
vtkInformationVector **  inInfoVec,
vtkInformationVector outInfoVec,
int  requestFromOutputPort,
unsigned long *  mtime 
)
virtual

Implement the pipeline modified time request.

virtual int vtkDemandDrivenPipeline::Update ( )
virtual

Bring the algorithm's outputs up-to-date. Returns 1 for success and 0 for failure.

virtual int vtkDemandDrivenPipeline::Update ( int  port)
virtual

Bring the algorithm's outputs up-to-date. Returns 1 for success and 0 for failure.

virtual unsigned long vtkDemandDrivenPipeline::GetPipelineMTime ( )
virtual

Get the PipelineMTime for this exective.

virtual int vtkDemandDrivenPipeline::SetReleaseDataFlag ( int  port,
int  n 
)
virtual

Set whether the given output port releases data when it is consumed. Returns 1 if the the value changes and 0 otherwise.

virtual int vtkDemandDrivenPipeline::GetReleaseDataFlag ( int  port)
virtual

Get whether the given output port releases data when it is consumed.

virtual int vtkDemandDrivenPipeline::UpdatePipelineMTime ( )
virtual

Bring the PipelineMTime up to date.

virtual int vtkDemandDrivenPipeline::UpdateDataObject ( )
virtual

Bring the output data object's existence up to date. This does not actually produce data, but does create the data object that will store data produced during the UpdateData step.

virtual int vtkDemandDrivenPipeline::UpdateInformation ( )
virtual

Bring the output information up to date.

virtual int vtkDemandDrivenPipeline::UpdateData ( int  outputPort)
virtual

Bring the output data up to date. This should be called only when information is up to date. Use the Update method if it is not known that the information is up to date.

static vtkInformationRequestKey* vtkDemandDrivenPipeline::REQUEST_DATA_OBJECT ( )
static

Key defining a request to make sure the output data objects exist.

static vtkInformationRequestKey* vtkDemandDrivenPipeline::REQUEST_INFORMATION ( )
static

Key defining a request to make sure the output information is up to date.

static vtkInformationRequestKey* vtkDemandDrivenPipeline::REQUEST_DATA ( )
static

Key defining a request to make sure the output data are up to date.

static vtkInformationRequestKey* vtkDemandDrivenPipeline::REQUEST_DATA_NOT_GENERATED ( )
static

Key defining a request to mark outputs that will NOT be generated during a REQUEST_DATA.

static vtkInformationIntegerKey* vtkDemandDrivenPipeline::RELEASE_DATA ( )
static

Key to specify in pipeline information the request that data be released after it is used.

static vtkInformationIntegerKey* vtkDemandDrivenPipeline::DATA_NOT_GENERATED ( )
static

Key to store a mark for an output that will not be generated. Algorithms use this to tell the executive that they will not generate certain outputs for a REQUEST_DATA.

static vtkDataObject* vtkDemandDrivenPipeline::NewDataObject ( const char *  type)
static

Create (New) and return a data object of the given type. This is here for backwards compatibility. Use vtkDataObjectTypes::NewDataObject() instead.

static vtkInformationIntegerKey* vtkDemandDrivenPipeline::REQUEST_REGENERATE_INFORMATION ( )
static

Key to be used for REQUEST_INFORMATION and REQUEST_DATA_OBJECT passes when you modification time should not be taken into account.

virtual int vtkDemandDrivenPipeline::ExecuteDataObject ( vtkInformation request,
vtkInformationVector **  inInfo,
vtkInformationVector outInfo 
)
protectedvirtual
virtual int vtkDemandDrivenPipeline::ExecuteInformation ( vtkInformation request,
vtkInformationVector **  inInfo,
vtkInformationVector outInfo 
)
protectedvirtual
virtual int vtkDemandDrivenPipeline::ExecuteData ( vtkInformation request,
vtkInformationVector **  inInfo,
vtkInformationVector outInfo 
)
protectedvirtual
virtual void vtkDemandDrivenPipeline::ResetPipelineInformation ( int  port,
vtkInformation  
)
protectedvirtual
virtual int vtkDemandDrivenPipeline::CheckDataObject ( int  port,
vtkInformationVector outInfo 
)
protectedvirtual
int vtkDemandDrivenPipeline::InputCountIsValid ( vtkInformationVector **  )
protected
int vtkDemandDrivenPipeline::InputCountIsValid ( int  port,
vtkInformationVector **   
)
protected
int vtkDemandDrivenPipeline::InputTypeIsValid ( vtkInformationVector **  )
protected
int vtkDemandDrivenPipeline::InputTypeIsValid ( int  port,
vtkInformationVector **   
)
protected
virtual int vtkDemandDrivenPipeline::InputTypeIsValid ( int  port,
int  index,
vtkInformationVector **   
)
protectedvirtual
int vtkDemandDrivenPipeline::InputFieldsAreValid ( vtkInformationVector **  )
protected
int vtkDemandDrivenPipeline::InputFieldsAreValid ( int  port,
vtkInformationVector **   
)
protected
virtual int vtkDemandDrivenPipeline::InputFieldsAreValid ( int  port,
int  index,
vtkInformationVector **   
)
protectedvirtual
int vtkDemandDrivenPipeline::DataSetAttributeExists ( vtkDataSetAttributes dsa,
vtkInformation field 
)
protected
int vtkDemandDrivenPipeline::FieldArrayExists ( vtkFieldData *  data,
vtkInformation field 
)
protected
int vtkDemandDrivenPipeline::ArrayIsValid ( vtkAbstractArray array,
vtkInformation field 
)
protected
int vtkDemandDrivenPipeline::InputIsOptional ( int  port)
protected
int vtkDemandDrivenPipeline::InputIsRepeatable ( int  port)
protected
virtual int vtkDemandDrivenPipeline::NeedToExecuteData ( int  outputPort,
vtkInformationVector **  inInfoVec,
vtkInformationVector outInfoVec 
)
protectedvirtual
virtual void vtkDemandDrivenPipeline::ExecuteDataStart ( vtkInformation request,
vtkInformationVector **  inInfoVec,
vtkInformationVector outInfoVec 
)
protectedvirtual
virtual void vtkDemandDrivenPipeline::ExecuteDataEnd ( vtkInformation request,
vtkInformationVector **  inInfoVec,
vtkInformationVector outInfoVec 
)
protectedvirtual
virtual void vtkDemandDrivenPipeline::MarkOutputsGenerated ( vtkInformation request,
vtkInformationVector **  inInfoVec,
vtkInformationVector outInfoVec 
)
protectedvirtual

Friends And Related Function Documentation

friend class vtkCompositeDataPipeline
friend

Definition at line 203 of file vtkDemandDrivenPipeline.h.

Member Data Documentation

unsigned long vtkDemandDrivenPipeline::PipelineMTime
protected

Definition at line 195 of file vtkDemandDrivenPipeline.h.

vtkTimeStamp vtkDemandDrivenPipeline::DataObjectTime
protected

Definition at line 198 of file vtkDemandDrivenPipeline.h.

vtkTimeStamp vtkDemandDrivenPipeline::InformationTime
protected

Definition at line 199 of file vtkDemandDrivenPipeline.h.

vtkTimeStamp vtkDemandDrivenPipeline::DataTime
protected

Definition at line 200 of file vtkDemandDrivenPipeline.h.

vtkInformation* vtkDemandDrivenPipeline::InfoRequest
protected

Definition at line 207 of file vtkDemandDrivenPipeline.h.

vtkInformation* vtkDemandDrivenPipeline::DataObjectRequest
protected

Definition at line 208 of file vtkDemandDrivenPipeline.h.

vtkInformation* vtkDemandDrivenPipeline::DataRequest
protected

Definition at line 209 of file vtkDemandDrivenPipeline.h.


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