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

Executive that works in parallel. More...

#include <vtkThreadedCompositeDataPipeline.h>

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

Public Types

typedef vtkCompositeDataPipeline Superclass
 
- Public Types inherited from vtkCompositeDataPipeline
typedef vtkStreamingDemandDrivenPipeline Superclass
 
- Public Types inherited from vtkStreamingDemandDrivenPipeline
typedef vtkDemandDrivenPipeline Superclass
 
- Public Types inherited from vtkDemandDrivenPipeline
typedef vtkExecutive Superclass
 
- Public Types inherited from vtkExecutive
typedef vtkObject Superclass
 
enum  { RequestUpstream, RequestDownstream }
 
enum  { BeforeForward, AfterForward }
 
- Public Types inherited from vtkObject
typedef vtkObjectBase Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkThreadedCompositeDataPipelineNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual int CallAlgorithm (vtkInformation *request, int direction, vtkInformationVector **inInfo, vtkInformationVector *outInfo)
 
- Public Member Functions inherited from vtkCompositeDataPipeline
vtkCompositeDataPipelineNewInstance () const
 
vtkDataObjectGetCompositeOutputData (int port)
 
vtkDataObjectGetCompositeInputData (int port, int index, vtkInformationVector **inInfoVec)
 
- Public Member Functions inherited from vtkStreamingDemandDrivenPipeline
vtkStreamingDemandDrivenPipelineNewInstance () const
 
int PropagateUpdateExtent (int outputPort)
 
virtual int ProcessRequest (vtkInformation *request, vtkInformationVector **inInfo, vtkInformationVector *outInfo)
 
virtual int Update ()
 
virtual int Update (int port)
 
virtual int UpdateWholeExtent ()
 
int PropagateTime (int outputPort)
 
int UpdateTimeDependentInformation (int outputPort)
 
int SetRequestExactExtent (int port, int flag)
 
int GetRequestExactExtent (int port)
 
int SetUpdateExtentToWholeExtent (int port)
 
int SetUpdateExtent (int port, int extent[6])
 
int SetUpdateExtent (int port, int x0, int x1, int y0, int y1, int z0, int z1)
 
int SetUpdateExtent (int port, int piece, int numPieces, int ghostLevel)
 
int SetUpdateTimeStep (int port, double time)
 
- Public Member Functions inherited from vtkDemandDrivenPipeline
vtkDemandDrivenPipelineNewInstance () const
 
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 ComputePipelineMTime (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int requestFromOutputPort, unsigned long *mtime)
 
virtual unsigned long GetPipelineMTime ()
 
- Public Member Functions inherited from vtkExecutive
vtkExecutiveNewInstance () const
 
vtkAlgorithmGetAlgorithm ()
 
int GetNumberOfInputConnections (int port)
 
virtual vtkInformationGetOutputInformation (int port)
 
vtkInformationVectorGetOutputInformation ()
 
vtkInformationGetInputInformation (int port, int connection)
 
vtkInformationVectorGetInputInformation (int port)
 
vtkInformationVector ** GetInputInformation ()
 
vtkExecutiveGetInputExecutive (int port, int connection)
 
int GetNumberOfInputPorts ()
 
int GetNumberOfOutputPorts ()
 
virtual vtkDataObjectGetOutputData (int port)
 
virtual void SetOutputData (int port, vtkDataObject *, vtkInformation *info)
 
virtual void SetOutputData (int port, vtkDataObject *)
 
virtual vtkDataObjectGetInputData (int port, int connection)
 
virtual vtkDataObjectGetInputData (int port, int connection, vtkInformationVector **inInfoVec)
 
void SetSharedInputInformation (vtkInformationVector **inInfoVec)
 
void SetSharedOutputInformation (vtkInformationVector *outInfoVec)
 
virtual void Register (vtkObjectBase *o)
 
virtual void UnRegister (vtkObjectBase *o)
 
- Public Member Functions inherited from vtkObject
vtkObjectNewInstance () const
 
virtual void DebugOn ()
 
virtual void DebugOff ()
 
bool GetDebug ()
 
void SetDebug (bool 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)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, bool(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 &)
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 
int GetReferenceCount ()
 

Static Public Member Functions

static vtkThreadedCompositeDataPipelineNew ()
 
static int IsTypeOf (const char *type)
 
static vtkThreadedCompositeDataPipelineSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkCompositeDataPipeline
static vtkCompositeDataPipelineNew ()
 
static int IsTypeOf (const char *type)
 
static vtkCompositeDataPipelineSafeDownCast (vtkObjectBase *o)
 
static vtkInformationIntegerKeyLOAD_REQUESTED_BLOCKS ()
 
static vtkInformationObjectBaseKeyCOMPOSITE_DATA_META_DATA ()
 
static vtkInformationIntegerVectorKeyUPDATE_COMPOSITE_INDICES ()
 
static vtkInformationDoubleKeyBLOCK_AMOUNT_OF_DETAIL ()
 
- Static Public Member Functions inherited from vtkStreamingDemandDrivenPipeline
static vtkStreamingDemandDrivenPipelineNew ()
 
static int IsTypeOf (const char *type)
 
static vtkStreamingDemandDrivenPipelineSafeDownCast (vtkObjectBase *o)
 
static vtkInformationRequestKeyREQUEST_UPDATE_EXTENT ()
 
static vtkInformationRequestKeyREQUEST_UPDATE_TIME ()
 
static vtkInformationRequestKeyREQUEST_TIME_DEPENDENT_INFORMATION ()
 
static vtkInformationIntegerKeyCONTINUE_EXECUTING ()
 
static vtkInformationIntegerKeyUPDATE_EXTENT_INITIALIZED ()
 
static vtkInformationIntegerVectorKeyUPDATE_EXTENT ()
 
static vtkInformationIntegerKeyUPDATE_PIECE_NUMBER ()
 
static vtkInformationIntegerKeyUPDATE_NUMBER_OF_PIECES ()
 
static vtkInformationIntegerKeyUPDATE_NUMBER_OF_GHOST_LEVELS ()
 
static vtkInformationIntegerVectorKeyCOMBINED_UPDATE_EXTENT ()
 
static vtkInformationIntegerVectorKeyWHOLE_EXTENT ()
 
static vtkInformationIntegerKeyUNRESTRICTED_UPDATE_EXTENT ()
 
static vtkInformationIntegerKeyEXACT_EXTENT ()
 
static vtkInformationDoubleVectorKeyTIME_STEPS ()
 
static vtkInformationDoubleVectorKeyTIME_RANGE ()
 
static vtkInformationDoubleKeyUPDATE_TIME_STEP ()
 
static vtkInformationIntegerKeyTIME_DEPENDENT_INFORMATION ()
 
static vtkInformationDoubleVectorKeyBOUNDS ()
 
static int SetWholeExtent (vtkInformation *, int extent[6])
 
static void GetWholeExtent (vtkInformation *, int extent[6])
 
static intGetWholeExtent (vtkInformation *)
 
static int SetUpdateExtentToWholeExtent (vtkInformation *)
 
static int SetUpdateExtent (vtkInformation *, int extent[6])
 
static void GetUpdateExtent (vtkInformation *, int extent[6])
 
static intGetUpdateExtent (vtkInformation *)
 
static int SetUpdateExtent (vtkInformation *, int piece, int numPieces, int ghostLevel)
 
static int SetUpdatePiece (vtkInformation *, int piece)
 
static int GetUpdatePiece (vtkInformation *)
 
static int SetUpdateNumberOfPieces (vtkInformation *, int n)
 
static int GetUpdateNumberOfPieces (vtkInformation *)
 
static int SetUpdateGhostLevel (vtkInformation *, int n)
 
static int GetUpdateGhostLevel (vtkInformation *)
 
static int SetUpdateTimeStep (vtkInformation *, double time)
 
- Static Public Member Functions inherited from vtkDemandDrivenPipeline
static vtkDemandDrivenPipelineNew ()
 
static int IsTypeOf (const char *type)
 
static vtkDemandDrivenPipelineSafeDownCast (vtkObjectBase *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 Public Member Functions inherited from vtkExecutive
static int IsTypeOf (const char *type)
 
static vtkExecutiveSafeDownCast (vtkObjectBase *o)
 
static vtkInformationExecutivePortKeyPRODUCER ()
 
static vtkInformationExecutivePortVectorKeyCONSUMERS ()
 
static vtkInformationIntegerKeyFROM_OUTPUT_PORT ()
 
static vtkInformationIntegerKeyALGORITHM_BEFORE_FORWARD ()
 
static vtkInformationIntegerKeyALGORITHM_AFTER_FORWARD ()
 
static vtkInformationIntegerKeyALGORITHM_DIRECTION ()
 
static vtkInformationIntegerKeyFORWARD_DIRECTION ()
 
static vtkInformationKeyVectorKeyKEYS_TO_COPY ()
 
- Static Public Member Functions inherited from vtkObject
static int IsTypeOf (const char *type)
 
static vtkObjectSafeDownCast (vtkObjectBase *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

virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkThreadedCompositeDataPipeline ()
 
 ~vtkThreadedCompositeDataPipeline ()
 
virtual void ExecuteEach (vtkCompositeDataIterator *iter, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int compositePort, int connection, vtkInformation *request, vtkCompositeDataSet *compositeOutput)
 
- Protected Member Functions inherited from vtkCompositeDataPipeline
 vtkCompositeDataPipeline ()
 
 ~vtkCompositeDataPipeline ()
 
virtual int ForwardUpstream (vtkInformation *request)
 
virtual int ForwardUpstream (int i, int j, vtkInformation *request)
 
virtual void CopyDefaultInformation (vtkInformation *request, int direction, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec)
 
virtual void PushInformation (vtkInformation *)
 
virtual void PopInformation (vtkInformation *)
 
virtual int ExecuteDataObject (vtkInformation *request, vtkInformationVector **inInfo, vtkInformationVector *outInfo)
 
virtual int ExecuteData (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec)
 
virtual void ExecuteDataStart (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec)
 
virtual int NeedToExecuteData (int outputPort, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec)
 
virtual int CheckCompositeData (vtkInformation *request, int port, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec)
 
virtual void ExecuteSimpleAlgorithm (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int compositePort)
 
vtkDataObjectExecuteSimpleAlgorithmForBlock (vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, vtkInformation *inInfo, vtkInformation *outInfo, vtkInformation *request, vtkDataObject *dobj)
 
bool ShouldIterateOverInput (vtkInformationVector **inInfoVec, int &compositePort)
 
virtual int InputTypeIsValid (int port, int index, vtkInformationVector **inInfoVec)
 
virtual void ResetPipelineInformation (int port, vtkInformation *)
 
virtual void MarkOutputsGenerated (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec)
 
int NeedToExecuteBasedOnCompositeIndices (vtkInformation *outInfo)
 
vtkCompositeDataSetCreateOutputCompositeDataSet (vtkCompositeDataSet *input, int compositePort)
 
- Protected Member Functions inherited from vtkStreamingDemandDrivenPipeline
 vtkStreamingDemandDrivenPipeline ()
 
 ~vtkStreamingDemandDrivenPipeline ()
 
virtual int NeedToExecuteBasedOnTime (vtkInformation *outInfo, vtkDataObject *dataObject)
 
virtual int ExecuteInformation (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec)
 
virtual int VerifyOutputInformation (int outputPort, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec)
 
virtual void ExecuteDataEnd (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec)
 
- Protected Member Functions inherited from vtkDemandDrivenPipeline
 vtkDemandDrivenPipeline ()
 
 ~vtkDemandDrivenPipeline ()
 
virtual int CheckDataObject (int port, vtkInformationVector *outInfo)
 
int InputCountIsValid (vtkInformationVector **)
 
int InputCountIsValid (int port, vtkInformationVector **)
 
int InputTypeIsValid (vtkInformationVector **)
 
int InputTypeIsValid (int port, 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)
 
- Protected Member Functions inherited from vtkExecutive
 vtkExecutive ()
 
 ~vtkExecutive ()
 
int InputPortIndexInRange (int port, const char *action)
 
int OutputPortIndexInRange (int port, const char *action)
 
int CheckAlgorithm (const char *method, vtkInformation *request)
 
virtual int ForwardDownstream (vtkInformation *request)
 
virtual void ReportReferences (vtkGarbageCollector *)
 
virtual void SetAlgorithm (vtkAlgorithm *algorithm)
 
- 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 &)
 
 vtkObjectBase (const vtkObjectBase &)
 
void operator= (const vtkObjectBase &)
 

Friends

class ProcessBlock
 

Additional Inherited Members

- Static Protected Member Functions inherited from vtkCompositeDataPipeline
static vtkInformationIntegerKeySUPPRESS_RESET_PI ()
 
static vtkInformationIntegerVectorKeyDATA_COMPOSITE_INDICES ()
 
- Static Protected Member Functions inherited from vtkStreamingDemandDrivenPipeline
static vtkInformationDoubleKeyPREVIOUS_UPDATE_TIME_STEP ()
 
- Protected Attributes inherited from vtkCompositeDataPipeline
int InLocalLoop
 
vtkInformationInformationCache
 
vtkInformationGenericRequest
 
vtkInformationDataObjectRequest
 
vtkInformationInformationRequest
 
vtkInformationUpdateExtentRequest
 
vtkInformationDataRequest
 
- Protected Attributes inherited from vtkStreamingDemandDrivenPipeline
int ContinueExecuting
 
vtkInformationUpdateExtentRequest
 
int LastPropogateUpdateExtentShortCircuited
 
- Protected Attributes inherited from vtkDemandDrivenPipeline
unsigned long PipelineMTime
 
vtkTimeStamp DataObjectTime
 
vtkTimeStamp InformationTime
 
vtkTimeStamp DataTime
 
vtkInformationInfoRequest
 
vtkInformationDataObjectRequest
 
vtkInformationDataRequest
 
- Protected Attributes inherited from vtkExecutive
vtkAlgorithmAlgorithm
 
int InAlgorithm
 
vtkInformationVector ** SharedInputInformation
 
vtkInformationVectorSharedOutputInformation
 
- Protected Attributes inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
vtkAtomicInt32 ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

Detailed Description

Executive that works in parallel.

vtkThreadedCompositeDataPipeline processes a composite data object in parallel using the SMP framework. It does this by creating a vector of data objects (the pieces of the composite data) and processing them using vtkSMPTools::For. Note that this requires that the algorithm implement all pipeline passes in a re-entrant way. It should store/retrieve all state changes using input and output information objects, which are unique to each thread.

Tests:
vtkThreadedCompositeDataPipeline (Tests)

Definition at line 39 of file vtkThreadedCompositeDataPipeline.h.

Member Typedef Documentation

Definition at line 43 of file vtkThreadedCompositeDataPipeline.h.

Constructor & Destructor Documentation

vtkThreadedCompositeDataPipeline::vtkThreadedCompositeDataPipeline ( )
protected
vtkThreadedCompositeDataPipeline::~vtkThreadedCompositeDataPipeline ( )
protected

Member Function Documentation

static vtkThreadedCompositeDataPipeline* vtkThreadedCompositeDataPipeline::New ( )
static
static int vtkThreadedCompositeDataPipeline::IsTypeOf ( const char *  type)
static
virtual int vtkThreadedCompositeDataPipeline::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.

static vtkThreadedCompositeDataPipeline* vtkThreadedCompositeDataPipeline::SafeDownCast ( vtkObjectBase o)
static
virtual vtkObjectBase* vtkThreadedCompositeDataPipeline::NewInstanceInternal ( ) const
protectedvirtual

Reimplemented from vtkCompositeDataPipeline.

vtkThreadedCompositeDataPipeline* vtkThreadedCompositeDataPipeline::NewInstance ( ) const
void vtkThreadedCompositeDataPipeline::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.

virtual int vtkThreadedCompositeDataPipeline::CallAlgorithm ( vtkInformation request,
int  direction,
vtkInformationVector **  inInfo,
vtkInformationVector outInfo 
)
virtual

An API to CallAlgorithm that allows you to pass in the info objects to be used

Reimplemented from vtkExecutive.

virtual void vtkThreadedCompositeDataPipeline::ExecuteEach ( vtkCompositeDataIterator iter,
vtkInformationVector **  inInfoVec,
vtkInformationVector outInfoVec,
int  compositePort,
int  connection,
vtkInformation request,
vtkCompositeDataSet compositeOutput 
)
protectedvirtual

Reimplemented from vtkCompositeDataPipeline.

Friends And Related Function Documentation

friend class ProcessBlock
friend

Definition at line 68 of file vtkThreadedCompositeDataPipeline.h.


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