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)
 
vtkThreadedCompositeDataPipeline * NewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual int CallAlgorithm (vtkInformation *request, int direction, vtkInformationVector **inInfo, vtkInformationVector *outInfo)
 
- Public Member Functions inherited from vtkCompositeDataPipeline
vtkCompositeDataPipeline * NewInstance () const
 
vtkDataObject * GetCompositeOutputData (int port)
 
vtkDataObject * GetCompositeInputData (int port, int index, vtkInformationVector **inInfoVec)
 
- Public Member Functions inherited from vtkStreamingDemandDrivenPipeline
vtkStreamingDemandDrivenPipeline * NewInstance () 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
vtkDemandDrivenPipeline * NewInstance () 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
vtkExecutive * NewInstance () const
 
vtkAlgorithm * GetAlgorithm ()
 
int GetNumberOfInputConnections (int port)
 
virtual vtkInformation * GetOutputInformation (int port)
 
vtkInformationVector * GetOutputInformation ()
 
vtkInformation * GetInputInformation (int port, int connection)
 
vtkInformationVector * GetInputInformation (int port)
 
vtkInformationVector ** GetInputInformation ()
 
vtkExecutive * GetInputExecutive (int port, int connection)
 
int GetNumberOfInputPorts ()
 
int GetNumberOfOutputPorts ()
 
virtual vtkDataObject * GetOutputData (int port)
 
virtual void SetOutputData (int port, vtkDataObject *, vtkInformation *info)
 
virtual void SetOutputData (int port, vtkDataObject *)
 
virtual vtkDataObject * GetInputData (int port, int connection)
 
virtual vtkDataObject * GetInputData (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
vtkObject * NewInstance () 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)
 
vtkCommand * GetCommand (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 vtkThreadedCompositeDataPipeline * New ()
 
static int IsTypeOf (const char *type)
 
static vtkThreadedCompositeDataPipeline * SafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkCompositeDataPipeline
static vtkCompositeDataPipeline * New ()
 
static int IsTypeOf (const char *type)
 
static vtkCompositeDataPipeline * SafeDownCast (vtkObjectBase *o)
 
static vtkInformationIntegerKey * LOAD_REQUESTED_BLOCKS ()
 
static vtkInformationObjectBaseKey * COMPOSITE_DATA_META_DATA ()
 
static vtkInformationIntegerVectorKey * UPDATE_COMPOSITE_INDICES ()
 
static vtkInformationDoubleKey * BLOCK_AMOUNT_OF_DETAIL ()
 
- Static Public Member Functions inherited from vtkStreamingDemandDrivenPipeline
static vtkStreamingDemandDrivenPipeline * New ()
 
static int IsTypeOf (const char *type)
 
static vtkStreamingDemandDrivenPipeline * SafeDownCast (vtkObjectBase *o)
 
static vtkInformationRequestKey * REQUEST_UPDATE_EXTENT ()
 
static vtkInformationRequestKey * REQUEST_UPDATE_TIME ()
 
static vtkInformationRequestKey * REQUEST_TIME_DEPENDENT_INFORMATION ()
 
static vtkInformationIntegerKey * CONTINUE_EXECUTING ()
 
static vtkInformationIntegerKey * UPDATE_EXTENT_INITIALIZED ()
 
static vtkInformationIntegerVectorKey * UPDATE_EXTENT ()
 
static vtkInformationIntegerKey * UPDATE_PIECE_NUMBER ()
 
static vtkInformationIntegerKey * UPDATE_NUMBER_OF_PIECES ()
 
static vtkInformationIntegerKey * UPDATE_NUMBER_OF_GHOST_LEVELS ()
 
static vtkInformationIntegerVectorKey * COMBINED_UPDATE_EXTENT ()
 
static vtkInformationIntegerVectorKey * WHOLE_EXTENT ()
 
static vtkInformationIntegerKey * UNRESTRICTED_UPDATE_EXTENT ()
 
static vtkInformationIntegerKey * EXACT_EXTENT ()
 
static vtkInformationDoubleVectorKey * TIME_STEPS ()
 
static vtkInformationDoubleVectorKey * TIME_RANGE ()
 
static vtkInformationDoubleKey * UPDATE_TIME_STEP ()
 
static vtkInformationIntegerKey * TIME_DEPENDENT_INFORMATION ()
 
static vtkInformationDoubleVectorKey * BOUNDS ()
 
static int SetWholeExtent (vtkInformation *, int extent[6])
 
static void GetWholeExtent (vtkInformation *, int extent[6])
 
static int * GetWholeExtent (vtkInformation *)
 
static int SetUpdateExtentToWholeExtent (vtkInformation *)
 
static int SetUpdateExtent (vtkInformation *, int extent[6])
 
static void GetUpdateExtent (vtkInformation *, int extent[6])
 
static int * GetUpdateExtent (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 vtkDemandDrivenPipeline * New ()
 
static int IsTypeOf (const char *type)
 
static vtkDemandDrivenPipeline * SafeDownCast (vtkObjectBase *o)
 
static vtkInformationRequestKey * REQUEST_DATA_OBJECT ()
 
static vtkInformationRequestKey * REQUEST_INFORMATION ()
 
static vtkInformationRequestKey * REQUEST_DATA ()
 
static vtkInformationRequestKey * REQUEST_DATA_NOT_GENERATED ()
 
static vtkInformationIntegerKey * RELEASE_DATA ()
 
static vtkInformationIntegerKey * DATA_NOT_GENERATED ()
 
static vtkDataObject * NewDataObject (const char *type)
 
- Static Public Member Functions inherited from vtkExecutive
static int IsTypeOf (const char *type)
 
static vtkExecutive * SafeDownCast (vtkObjectBase *o)
 
static vtkInformationExecutivePortKey * PRODUCER ()
 
static vtkInformationExecutivePortVectorKey * CONSUMERS ()
 
static vtkInformationIntegerKey * FROM_OUTPUT_PORT ()
 
static vtkInformationIntegerKey * ALGORITHM_BEFORE_FORWARD ()
 
static vtkInformationIntegerKey * ALGORITHM_AFTER_FORWARD ()
 
static vtkInformationIntegerKey * ALGORITHM_DIRECTION ()
 
static vtkInformationIntegerKey * FORWARD_DIRECTION ()
 
static vtkInformationKeyVectorKey * KEYS_TO_COPY ()
 
- Static Public Member Functions inherited from vtkObject
static int IsTypeOf (const char *type)
 
static vtkObject * SafeDownCast (vtkObjectBase *o)
 
static vtkObject * New ()
 
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 vtkObjectBase * New ()
 

Protected Member Functions

virtual vtkObjectBase * NewInstanceInternal () 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)
 
vtkDataObject * ExecuteSimpleAlgorithmForBlock (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)
 
vtkCompositeDataSet * CreateOutputCompositeDataSet (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 vtkInformationIntegerKey * SUPPRESS_RESET_PI ()
 
static vtkInformationIntegerVectorKey * DATA_COMPOSITE_INDICES ()
 
- Static Protected Member Functions inherited from vtkStreamingDemandDrivenPipeline
static vtkInformationDoubleKey * PREVIOUS_UPDATE_TIME_STEP ()
 
- Protected Attributes inherited from vtkCompositeDataPipeline
int InLocalLoop
 
vtkInformation * InformationCache
 
vtkInformation * GenericRequest
 
vtkInformation * DataObjectRequest
 
vtkInformation * InformationRequest
 
vtkInformation * UpdateExtentRequest
 
vtkInformation * DataRequest
 
- Protected Attributes inherited from vtkStreamingDemandDrivenPipeline
int ContinueExecuting
 
vtkInformation * UpdateExtentRequest
 
int LastPropogateUpdateExtentShortCircuited
 
- Protected Attributes inherited from vtkDemandDrivenPipeline
unsigned long PipelineMTime
 
vtkTimeStamp DataObjectTime
 
vtkTimeStamp InformationTime
 
vtkTimeStamp DataTime
 
vtkInformation * InfoRequest
 
vtkInformation * DataObjectRequest
 
vtkInformation * DataRequest
 
- Protected Attributes inherited from vtkExecutive
vtkAlgorithm * Algorithm
 
int InAlgorithm
 
vtkInformationVector ** SharedInputInformation
 
vtkInformationVector * SharedOutputInformation
 
- 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

◆ Superclass

Definition at line 43 of file vtkThreadedCompositeDataPipeline.h.

Constructor & Destructor Documentation

◆ vtkThreadedCompositeDataPipeline()

vtkThreadedCompositeDataPipeline::vtkThreadedCompositeDataPipeline ( )
protected

◆ ~vtkThreadedCompositeDataPipeline()

vtkThreadedCompositeDataPipeline::~vtkThreadedCompositeDataPipeline ( )
protected

Member Function Documentation

◆ New()

static vtkThreadedCompositeDataPipeline* vtkThreadedCompositeDataPipeline::New ( )
static

◆ IsTypeOf()

static int vtkThreadedCompositeDataPipeline::IsTypeOf ( const char *  type)
static

◆ IsA()

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.

◆ SafeDownCast()

static vtkThreadedCompositeDataPipeline* vtkThreadedCompositeDataPipeline::SafeDownCast ( vtkObjectBase *  o)
static

◆ NewInstanceInternal()

virtual vtkObjectBase* vtkThreadedCompositeDataPipeline::NewInstanceInternal ( ) const
protectedvirtual

Reimplemented from vtkCompositeDataPipeline.

◆ NewInstance()

vtkThreadedCompositeDataPipeline* vtkThreadedCompositeDataPipeline::NewInstance ( ) const

◆ PrintSelf()

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.

◆ CallAlgorithm()

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.

◆ ExecuteEach()

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

◆ ProcessBlock

friend class ProcessBlock
friend

Definition at line 68 of file vtkThreadedCompositeDataPipeline.h.


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