VTK
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions
vtkThreadedStreamingPipeline Class Reference

Executive supporting multi-threads. More...

#include <vtkThreadedStreamingPipeline.h>

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

List of all members.

Public Types

typedef vtkCompositeDataPipeline Superclass
enum  { PROCESSING_UNIT_NONE = 0, PROCESSING_UNIT_CPU = 1, PROCESSING_UNIT_GPU = 2 }

Public Member Functions

virtual int IsA (const char *type)
vtkThreadedStreamingPipelineNewInstance () const
void PrintSelf (ostream &os, vtkIndent indent)
void Pull ()
void Pull (vtkInformation *info)
void Push ()
void Push (vtkInformation *info)
void ReleaseInputs ()
int ForceUpdateData (int processingUnit, vtkInformation *info)
void UpdateRequestDataTimeFromSource ()
vtkComputingResourcesGetResources ()
virtual int ProcessRequest (vtkInformation *request, vtkInformationVector **inInfo, vtkInformationVector *outInfo)

Static Public Member Functions

static
vtkThreadedStreamingPipeline
New ()
static int IsTypeOf (const char *type)
static
vtkThreadedStreamingPipeline
SafeDownCast (vtkObjectBase *o)
static vtkInformationIntegerKeyAUTO_PROPAGATE ()
static
vtkInformationObjectBaseKey
EXTRA_INFORMATION ()
static void SetMultiThreadedEnabled (bool enabled)
static void SetAutoPropagatePush (bool enabled)
static void Pull (vtkExecutiveCollection *execs)
static void Pull (vtkExecutiveCollection *execs, vtkInformation *info)
static void Push (vtkExecutiveCollection *execs)
static void Push (vtkExecutiveCollection *execs, vtkInformation *info)
static void Pull (vtkExecutive *exec)
static void Pull (vtkExecutive *exec, vtkInformation *info)
static void Push (vtkExecutive *exec)
static void Push (vtkExecutive *exec, vtkInformation *info)

Public Attributes

float LastDataRequestTime
float LastDataRequestTimeFromSource
vtkInformationForceDataRequest
vtkComputingResourcesResources
vtkExecutionSchedulerScheduler

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 vtkThreadedStreamingPipeline ()
 ~vtkThreadedStreamingPipeline ()
virtual int ForwardUpstream (vtkInformation *request)
virtual int ForwardUpstream (int i, int j, vtkInformation *request)

Detailed Description

Executive supporting multi-threads.

vtkThreadeStreamingDemandDrivenPipeline is an executive that supports updating input ports based on the number of threads available.

See also:
vtkExecutionScheduler
Examples:
vtkThreadedStreamingPipeline (Examples)

Definition at line 53 of file vtkThreadedStreamingPipeline.h.


Member Typedef Documentation

Reimplemented from vtkCompositeDataPipeline.

Definition at line 57 of file vtkThreadedStreamingPipeline.h.


Member Enumeration Documentation

anonymous enum

Definition of different types of processing units an algorithm can be executed

Enumerator:
PROCESSING_UNIT_NONE 
PROCESSING_UNIT_CPU 
PROCESSING_UNIT_GPU 

Definition at line 70 of file vtkThreadedStreamingPipeline.h.


Constructor & Destructor Documentation


Member Function Documentation

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

Reimplemented from vtkCompositeDataPipeline.

static int vtkThreadedStreamingPipeline::IsTypeOf ( const char *  name) [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 vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkCompositeDataPipeline.

virtual int vtkThreadedStreamingPipeline::IsA ( const char *  name) [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 vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkCompositeDataPipeline.

Reimplemented from vtkCompositeDataPipeline.

virtual vtkObjectBase* vtkThreadedStreamingPipeline::NewInstanceInternal ( ) const [protected, virtual]

Reimplemented from vtkCompositeDataPipeline.

Reimplemented from vtkCompositeDataPipeline.

void vtkThreadedStreamingPipeline::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 vtkCompositeDataPipeline.

Key to store the priority of a task

Key to store the additional information for an update request

static void vtkThreadedStreamingPipeline::SetMultiThreadedEnabled ( bool  enabled) [static]

Enable/Disable Multi-Threaded updating mechanism

static void vtkThreadedStreamingPipeline::SetAutoPropagatePush ( bool  enabled) [static]

Enable/Disable automatic propagation of Push events

Trigger the updates on certain execs and asking all of its upstream modules to be updated as well (propagate up)

static void vtkThreadedStreamingPipeline::Pull ( vtkExecutiveCollection execs,
vtkInformation info 
) [static]

Trigger the updates on certain execs and asking all of its upstream modules to be updated as well (propagate up)

Trigger the updates on certain execs and asking all of its downstream modules to be updated as well (propagate down)

static void vtkThreadedStreamingPipeline::Push ( vtkExecutiveCollection execs,
vtkInformation info 
) [static]

Trigger the updates on certain execs and asking all of its downstream modules to be updated as well (propagate down)

static void vtkThreadedStreamingPipeline::Pull ( vtkExecutive exec) [static]

A simplified version of Pull() which only acts upon a single executive

static void vtkThreadedStreamingPipeline::Pull ( vtkExecutive exec,
vtkInformation info 
) [static]

A simplified version of Pull() which only acts upon a single executive

static void vtkThreadedStreamingPipeline::Push ( vtkExecutive exec) [static]

A simplified version of Push() which only acts upon a single executive

static void vtkThreadedStreamingPipeline::Push ( vtkExecutive exec,
vtkInformation info 
) [static]

A simplified version of Push() which only acts upon a single executive

Triggers upstream modules to update but not including itself

Triggers upstream modules to update but not including itself

Triggers downstream modules to update but not including itself

Triggers downstream modules to update but not including itself

Release all the locks for input ports living upstream

virtual int vtkThreadedStreamingPipeline::ProcessRequest ( vtkInformation request,
vtkInformationVector **  inInfo,
vtkInformationVector outInfo 
) [virtual]

Generalized interface for asking the executive to fulfill update requests.

Reimplemented from vtkStreamingDemandDrivenPipeline.

Send a direct REQUEST_DATA (on all ports) to this executive

Update the LastDataRequestTimeFromSource using its upstream time

Return the scheduling for this executive

virtual int vtkThreadedStreamingPipeline::ForwardUpstream ( vtkInformation request) [protected, virtual]

Reimplemented from vtkCompositeDataPipeline.

virtual int vtkThreadedStreamingPipeline::ForwardUpstream ( int  i,
int  j,
vtkInformation request 
) [protected, virtual]

Reimplemented from vtkCompositeDataPipeline.


Member Data Documentation

Definition at line 149 of file vtkThreadedStreamingPipeline.h.

Definition at line 150 of file vtkThreadedStreamingPipeline.h.

Definition at line 151 of file vtkThreadedStreamingPipeline.h.

Definition at line 152 of file vtkThreadedStreamingPipeline.h.

Definition at line 153 of file vtkThreadedStreamingPipeline.h.


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