Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

vtkDemandDrivenPipeline Class Reference

#include <vtkDemandDrivenPipeline.h>

Inheritance diagram for vtkDemandDrivenPipeline:

Inheritance graph
[legend]
Collaboration diagram for vtkDemandDrivenPipeline:

Collaboration graph
[legend]
List of all members.

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::StartEvent vtkCommand::EndEvent

Definition at line 41 of file vtkDemandDrivenPipeline.h.

Public Types

typedef vtkExecutive Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
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)
void PrintSelf (ostream &os, vtkIndent indent)
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)

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 **)
int InputTypeIsValid (int port, int index, vtkInformationVector **)
int InputFieldsAreValid (vtkInformationVector **)
int InputFieldsAreValid (int port, vtkInformationVector **)
int InputFieldsAreValid (int port, int index, vtkInformationVector **)
int DataSetAttributeExists (vtkDataSetAttributes *dsa, vtkInformation *field)
int FieldArrayExists (vtkFieldData *data, vtkInformation *field)
int ArrayIsValid (vtkDataArray *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


Member Typedef Documentation

typedef vtkExecutive vtkDemandDrivenPipeline::Superclass
 

Reimplemented from vtkExecutive.

Reimplemented in vtkCachedStreamingDemandDrivenPipeline, vtkCompositeDataPipeline, vtkStreamingDemandDrivenPipeline, and vtkImageImportExecutive.

Definition at line 45 of file vtkDemandDrivenPipeline.h.


Constructor & Destructor Documentation

vtkDemandDrivenPipeline::vtkDemandDrivenPipeline  )  [protected]
 

vtkDemandDrivenPipeline::~vtkDemandDrivenPipeline  )  [protected]
 


Member Function Documentation

static vtkDemandDrivenPipeline* vtkDemandDrivenPipeline::New  )  [static]
 

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkObject.

Reimplemented in vtkCachedStreamingDemandDrivenPipeline, vtkCompositeDataPipeline, vtkStreamingDemandDrivenPipeline, and vtkImageImportExecutive.

virtual const char* vtkDemandDrivenPipeline::GetClassName  )  [virtual]
 

Reimplemented from vtkExecutive.

Reimplemented in vtkCachedStreamingDemandDrivenPipeline, vtkCompositeDataPipeline, vtkStreamingDemandDrivenPipeline, and vtkImageImportExecutive.

static int vtkDemandDrivenPipeline::IsTypeOf const char *  type  )  [static]
 

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 vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkExecutive.

Reimplemented in vtkCachedStreamingDemandDrivenPipeline, vtkCompositeDataPipeline, vtkStreamingDemandDrivenPipeline, and vtkImageImportExecutive.

virtual int vtkDemandDrivenPipeline::IsA const char *  type  )  [virtual]
 

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 vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkExecutive.

Reimplemented in vtkCachedStreamingDemandDrivenPipeline, vtkCompositeDataPipeline, vtkStreamingDemandDrivenPipeline, and vtkImageImportExecutive.

static vtkDemandDrivenPipeline* vtkDemandDrivenPipeline::SafeDownCast vtkObject o  )  [static]
 

Reimplemented from vtkExecutive.

Reimplemented in vtkCachedStreamingDemandDrivenPipeline, vtkCompositeDataPipeline, vtkStreamingDemandDrivenPipeline, and vtkImageImportExecutive.

void vtkDemandDrivenPipeline::PrintSelf ostream &  os,
vtkIndent  indent
[virtual]
 

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 vtkExecutive.

Reimplemented in vtkCachedStreamingDemandDrivenPipeline, vtkCompositeDataPipeline, and vtkStreamingDemandDrivenPipeline.

virtual int vtkDemandDrivenPipeline::ProcessRequest vtkInformation request,
vtkInformationVector **  inInfo,
vtkInformationVector outInfo
[virtual]
 

Generalized interface for asking the executive to fullfill update requests.

Reimplemented from vtkExecutive.

Reimplemented in vtkCompositeDataPipeline, vtkStreamingDemandDrivenPipeline, and vtkImageImportExecutive.

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

Implement the pipeline modified time request.

Reimplemented from vtkExecutive.

Reimplemented in vtkCompositeDataPipeline.

virtual int vtkDemandDrivenPipeline::Update  )  [virtual]
 

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

Reimplemented from vtkExecutive.

Reimplemented in vtkCachedStreamingDemandDrivenPipeline, and vtkStreamingDemandDrivenPipeline.

virtual int vtkDemandDrivenPipeline::Update int  port  )  [virtual]
 

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

Reimplemented from vtkExecutive.

Reimplemented in vtkCachedStreamingDemandDrivenPipeline, and vtkStreamingDemandDrivenPipeline.

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.

Implements vtkExecutive.

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.

virtual int vtkDemandDrivenPipeline::ExecuteDataObject vtkInformation request,
vtkInformationVector **  inInfo,
vtkInformationVector outInfo
[protected, virtual]
 

Reimplemented in vtkCompositeDataPipeline.

virtual int vtkDemandDrivenPipeline::ExecuteInformation vtkInformation request,
vtkInformationVector **  inInfo,
vtkInformationVector outInfo
[protected, virtual]
 

Reimplemented in vtkStreamingDemandDrivenPipeline.

virtual int vtkDemandDrivenPipeline::ExecuteData vtkInformation request,
vtkInformationVector **  inInfo,
vtkInformationVector outInfo
[protected, virtual]
 

Reimplemented in vtkCachedStreamingDemandDrivenPipeline, and vtkCompositeDataPipeline.

virtual void vtkDemandDrivenPipeline::ResetPipelineInformation int  port,
vtkInformation
[protected, virtual]
 

Implements vtkExecutive.

Reimplemented in vtkStreamingDemandDrivenPipeline.

virtual int vtkDemandDrivenPipeline::CheckDataObject int  port,
vtkInformationVector outInfo
[protected, virtual]
 

Reimplemented in vtkCompositeDataPipeline.

int vtkDemandDrivenPipeline::InputCountIsValid vtkInformationVector **   )  [protected]
 

int vtkDemandDrivenPipeline::InputCountIsValid int  port,
vtkInformationVector ** 
[protected]
 

int vtkDemandDrivenPipeline::InputTypeIsValid vtkInformationVector **   )  [protected]
 

int vtkDemandDrivenPipeline::InputTypeIsValid int  port,
vtkInformationVector ** 
[protected]
 

int vtkDemandDrivenPipeline::InputTypeIsValid int  port,
int  index,
vtkInformationVector ** 
[protected]
 

int vtkDemandDrivenPipeline::InputFieldsAreValid vtkInformationVector **   )  [protected]
 

int vtkDemandDrivenPipeline::InputFieldsAreValid int  port,
vtkInformationVector ** 
[protected]
 

int vtkDemandDrivenPipeline::InputFieldsAreValid int  port,
int  index,
vtkInformationVector ** 
[protected]
 

int vtkDemandDrivenPipeline::DataSetAttributeExists vtkDataSetAttributes dsa,
vtkInformation field
[protected]
 

int vtkDemandDrivenPipeline::FieldArrayExists vtkFieldData data,
vtkInformation field
[protected]
 

int vtkDemandDrivenPipeline::ArrayIsValid vtkDataArray 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
[protected, virtual]
 

Reimplemented in vtkCachedStreamingDemandDrivenPipeline, and vtkStreamingDemandDrivenPipeline.

virtual void vtkDemandDrivenPipeline::ExecuteDataStart vtkInformation request,
vtkInformationVector **  inInfoVec,
vtkInformationVector outInfoVec
[protected, virtual]
 

Reimplemented in vtkCompositeDataPipeline, and vtkStreamingDemandDrivenPipeline.

virtual void vtkDemandDrivenPipeline::ExecuteDataEnd vtkInformation request,
vtkInformationVector **  inInfoVec,
vtkInformationVector outInfoVec
[protected, virtual]
 

Reimplemented in vtkStreamingDemandDrivenPipeline.

virtual void vtkDemandDrivenPipeline::MarkOutputsGenerated vtkInformation request,
vtkInformationVector **  inInfoVec,
vtkInformationVector outInfoVec
[protected, virtual]
 

Reimplemented in vtkStreamingDemandDrivenPipeline.


Friends And Related Function Documentation

friend class vtkCompositeDataPipeline [friend]
 

Definition at line 196 of file vtkDemandDrivenPipeline.h.


Member Data Documentation

unsigned long vtkDemandDrivenPipeline::PipelineMTime [protected]
 

Definition at line 188 of file vtkDemandDrivenPipeline.h.

vtkTimeStamp vtkDemandDrivenPipeline::DataObjectTime [protected]
 

Definition at line 191 of file vtkDemandDrivenPipeline.h.

vtkTimeStamp vtkDemandDrivenPipeline::InformationTime [protected]
 

Definition at line 192 of file vtkDemandDrivenPipeline.h.

vtkTimeStamp vtkDemandDrivenPipeline::DataTime [protected]
 

Definition at line 193 of file vtkDemandDrivenPipeline.h.

vtkInformation* vtkDemandDrivenPipeline::InfoRequest [protected]
 

Definition at line 200 of file vtkDemandDrivenPipeline.h.

vtkInformation* vtkDemandDrivenPipeline::DataObjectRequest [protected]
 

Reimplemented in vtkCompositeDataPipeline.

Definition at line 201 of file vtkDemandDrivenPipeline.h.

vtkInformation* vtkDemandDrivenPipeline::DataRequest [protected]
 

Reimplemented in vtkCompositeDataPipeline.

Definition at line 202 of file vtkDemandDrivenPipeline.h.


The documentation for this class was generated from the following file:
Generated on Mon Jan 21 23:41:06 2008 for VTK by  doxygen 1.4.3-20050530