ParaView
Public Member Functions | Static Public Member Functions | Protected Member Functions
vtkCPProcessor Class Reference

There are 3 distinct phases for the operation of a co-processor. More...

#include <vtkCPProcessor.h>

Inheritance diagram for vtkCPProcessor:
Inheritance graph
[legend]
Collaboration diagram for vtkCPProcessor:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
virtual int AddPipeline (vtkCPPipeline *pipeline)
 Add in a pipeline that is externally configured.
virtual int GetNumberOfPipelines ()
 Get the number of pipelines.
virtual vtkCPPipelineGetPipeline (int which)
 Return a specific pipeline.
virtual void RemovePipeline (vtkCPPipeline *pipeline)
 Remove pipelines.
virtual void RemoveAllPipelines ()
virtual int Initialize ()
 Initialize the co-proccesor.
virtual int RequestDataDescription (vtkCPDataDescription *dataDescription)
 Configuration Step: The coprocessor first determines if any coprocessing needs to be done at this TimeStep/Time combination returning 1 if it does and 0 otherwise.
virtual int CoProcess (vtkCPDataDescription *dataDescription)
 Processing Step: Provides the grid and the field data for the co-procesor to process.
virtual int Finalize ()
 Called after all co-processing is complete giving the Co-Processor implementation an opportunity to clean up, before it is destroyed.

Static Public Member Functions

static vtkCPProcessorNew ()
static int IsTypeOf (const char *type)
static vtkCPProcessorSafeDownCast (vtkObject *o)

Protected Member Functions

 vtkCPProcessor ()
virtual ~vtkCPProcessor ()

Detailed Description

There are 3 distinct phases for the operation of a co-processor.


1) Initialization -- set up for the run.
2) Processing -- the run.
3) Finalization -- clean up before exit.
The processing phase occurs repeatedly and is composed of two distinct steps, namely 1) Configuration (see vtkCPProcessor::ProcessDataDescription) and 2) Processing (see vtkCPProcessor::ProcessData).

Configuration step:
In the first step the Co-Processor implemntation is called with a vtkDataDescription describing the data that the simulation can provide This gives the Co-Processor implemntation a chance to identify what (if any) of the available data it will process during this pass. By default all of the avaible data is selected, so that if the Co-Processor implementation does nothing it will receive all data during the Processing step. The Co-Processor implementation should extract what ever meta-data it will need (or alternatively can save a reference to the DataDescription), during the Processing step.

Processing step:
In the second step the Co-Processor implementation is called with the actual data that it has been asked to provide, if any. If no data was selected during the Configuration Step than the priovided vtkDataObject may be NULL.

Definition at line 55 of file vtkCPProcessor.h.


Constructor & Destructor Documentation

vtkCPProcessor::vtkCPProcessor ( ) [protected]
virtual vtkCPProcessor::~vtkCPProcessor ( ) [protected, virtual]

Member Function Documentation

static vtkCPProcessor* vtkCPProcessor::New ( ) [static]

Reimplemented from vtkObject.

virtual const char* vtkCPProcessor::GetClassName ( ) [virtual]

Reimplemented from vtkObject.

static int vtkCPProcessor::IsTypeOf ( const char *  type) [static]

Reimplemented from vtkObject.

virtual int vtkCPProcessor::IsA ( const char *  type) [virtual]

Reimplemented from vtkObject.

static vtkCPProcessor* vtkCPProcessor::SafeDownCast ( vtkObject o) [static]

Reimplemented from vtkObject.

void vtkCPProcessor::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Reimplemented from vtkObject.

virtual int vtkCPProcessor::AddPipeline ( vtkCPPipeline pipeline) [virtual]

Add in a pipeline that is externally configured.

Returns 1 if successful and 0 otherwise.

virtual int vtkCPProcessor::GetNumberOfPipelines ( ) [virtual]

Get the number of pipelines.

virtual vtkCPPipeline* vtkCPProcessor::GetPipeline ( int  which) [virtual]

Return a specific pipeline.

virtual void vtkCPProcessor::RemovePipeline ( vtkCPPipeline pipeline) [virtual]

Remove pipelines.

virtual void vtkCPProcessor::RemoveAllPipelines ( ) [virtual]
virtual int vtkCPProcessor::Initialize ( ) [virtual]

Initialize the co-proccesor.

Returns 1 if successful and 0 otherwise.

virtual int vtkCPProcessor::RequestDataDescription ( vtkCPDataDescription dataDescription) [virtual]

Configuration Step: The coprocessor first determines if any coprocessing needs to be done at this TimeStep/Time combination returning 1 if it does and 0 otherwise.

If coprocessing does need to be performed this time step it fills in the FieldNames array that the coprocessor requires in order to fulfill all the coprocessing requests for this TimeStep/Time combination.

virtual int vtkCPProcessor::CoProcess ( vtkCPDataDescription dataDescription) [virtual]

Processing Step: Provides the grid and the field data for the co-procesor to process.

virtual int vtkCPProcessor::Finalize ( ) [virtual]

Called after all co-processing is complete giving the Co-Processor implementation an opportunity to clean up, before it is destroyed.


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