Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vtkReductionFilter Class Reference

A generic filter that can reduce any type of dataset using any reduction algorithm. More...

#include <vtkReductionFilter.h>

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

Public Types

enum  ReductionModeType { REDUCE_ALL_TO_ONE = 0, MOVE_ALL_TO_ONE = 1, REDUCE_ALL_TO_ALL = 2 }
 
enum  Tags { TRANSMIT_DATA_OBJECT = 23484 }
 
typedef vtkDataObjectAlgorithm Superclass
 
typedef enum vtkReductionFilter::ReductionModeType ReductionModeType
 
- Public Types inherited from vtkDataObjectAlgorithm
typedef vtkAlgorithm Superclass
 
- Public Types inherited from vtkAlgorithm
enum  DesiredOutputPrecision
 
enum  DesiredOutputPrecision
 
typedef vtkObject Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
void PrintSelf (ostream &os, vtkIndent indent) override
 
void SetController (vtkMultiProcessController *)
 Get/Set the MPI controller used for gathering. More...
 
virtual void SetReductionMode (int)
 Get/Set the Reduction Mode. More...
 
virtual int GetReductionMode ()
 Get/Set the Reduction Mode. More...
 
virtual void SetReductionProcessId (int)
 Get/Set the node to reduce to, default is 0. More...
 
virtual int GetReductionProcessId ()
 Get/Set the node to reduce to, default is 0. More...
 
void SetPreGatherHelper (vtkAlgorithm *)
 Get/Set the pre-reduction helper. More...
 
void SetPreGatherHelperName (const char *)
 Get/Set the pre-reduction helper. More...
 
virtual vtkAlgorithmGetPreGatherHelper ()
 Get/Set the pre-reduction helper. More...
 
void SetPostGatherHelper (vtkAlgorithm *)
 Get/Set the reduction helper. More...
 
void SetPostGatherHelperName (const char *)
 Get/Set the reduction helper. More...
 
virtual vtkAlgorithmGetPostGatherHelper ()
 Get/Set the reduction helper. More...
 
virtual void SetPassThrough (int)
 Get/Set the PassThrough flag which (when set to a nonnegative number N) tells the filter to produce results that come from node N only. More...
 
virtual int GetPassThrough ()
 Get/Set the PassThrough flag which (when set to a nonnegative number N) tells the filter to produce results that come from node N only. More...
 
virtual void SetGenerateProcessIds (int)
 When set, a new array vtkOriginalProcessIds will be added to the output of the the pre-gather helper (or input, if no pre-gather helper is set). More...
 
virtual int GetGenerateProcessIds ()
 When set, a new array vtkOriginalProcessIds will be added to the output of the the pre-gather helper (or input, if no pre-gather helper is set). More...
 
- Public Member Functions inherited from vtkDataObjectAlgorithm
vtkDataObjectAlgorithmNewInstance () const
 
vtkDataObjectGetInput ()
 
vtkDataObjectGetInput (int port)
 
vtkDataObjectGetOutput ()
 
vtkDataObjectGetOutput (int)
 
virtual void SetOutput (vtkDataObject *d)
 
virtual int ProcessRequest (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 
void SetInputData (vtkDataObject *)
 
void SetInputData (int, vtkDataObject *)
 
void AddInputData (vtkDataObject *)
 
void AddInputData (int, vtkDataObject *)
 
vtkDataObjectGetOutput ()
 
vtkDataObjectGetOutput (int)
 
virtual void SetOutput (vtkDataObject *d)
 
virtual int ProcessRequest (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 
void SetInputData (vtkDataObject *)
 
void SetInputData (int, vtkDataObject *)
 
void AddInputData (vtkDataObject *)
 
void AddInputData (int, vtkDataObject *)
 
- Public Member Functions inherited from vtkAlgorithm
vtkAlgorithmNewInstance () const
 
int HasExecutive ()
 
vtkExecutiveGetExecutive ()
 
virtual void SetExecutive (vtkExecutive *executive)
 
virtual int ModifyRequest (vtkInformation *request, int when)
 
vtkInformationGetInputPortInformation (int port)
 
vtkInformationGetOutputPortInformation (int port)
 
int GetNumberOfInputPorts ()
 
int GetNumberOfOutputPorts ()
 
void UpdateProgress (double amount)
 
vtkInformationGetInputArrayInformation (int idx)
 
void RemoveAllInputs ()
 
vtkDataObjectGetOutputDataObject (int port)
 
virtual void RemoveInputConnection (int port, vtkAlgorithmOutput *input)
 
virtual void RemoveInputConnection (int port, int idx)
 
virtual void RemoveAllInputConnections (int port)
 
int GetNumberOfInputConnections (int port)
 
int GetTotalNumberOfInputConnections ()
 
vtkAlgorithmOutputGetInputConnection (int port, int index)
 
vtkAlgorithmGetInputAlgorithm (int port, int index, int &algPort)
 
vtkAlgorithmGetInputAlgorithm (int port, int index)
 
vtkExecutiveGetInputExecutive (int port, int index)
 
vtkInformationGetInputInformation (int port, int index)
 
vtkInformationGetOutputInformation (int port)
 
virtual int Update (int port, vtkInformationVector *requests)
 
virtual int Update (vtkInformation *requests)
 
virtual int UpdateExtent (const int extents[6])
 
virtual void UpdateInformation ()
 
virtual void UpdateDataObject ()
 
virtual void PropagateUpdateExtent ()
 
virtual void UpdateWholeExtent ()
 
void ConvertTotalInputToPortConnection (int ind, int &port, int &conn)
 
int SetUpdateExtentToWholeExtent (int port)
 
int SetUpdateExtentToWholeExtent ()
 
void SetUpdateExtent (int port, int extent[6])
 
void SetUpdateExtent (int extent[6])
 
int ProcessRequest (vtkInformation *request, vtkCollection *inInfo, vtkInformationVector *outInfo)
 
virtual int ComputePipelineMTime (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int requestFromOutputPort, vtkMTimeType *mtime)
 
virtual vtkInformationGetInformation ()
 
virtual void SetInformation (vtkInformation *)
 
void Register (vtkObjectBase *o) VTK_OVERRIDE
 
void UnRegister (vtkObjectBase *o) VTK_OVERRIDE
 
virtual void SetAbortExecute (int)
 
virtual int GetAbortExecute ()
 
virtual void AbortExecuteOn ()
 
virtual void AbortExecuteOff ()
 
virtual void SetProgress (double)
 
virtual double GetProgress ()
 
void SetProgressText (const char *ptext)
 
virtual char * GetProgressText ()
 
virtual unsigned long GetErrorCode ()
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, const char *name)
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, int fieldAttributeType)
 
virtual void SetInputArrayToProcess (int idx, vtkInformation *info)
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, const char *fieldAssociation, const char *attributeTypeorName)
 
vtkDataObjectGetInputDataObject (int port, int connection)
 
virtual void SetInputConnection (int port, vtkAlgorithmOutput *input)
 
virtual void SetInputConnection (vtkAlgorithmOutput *input)
 
virtual void AddInputConnection (int port, vtkAlgorithmOutput *input)
 
virtual void AddInputConnection (vtkAlgorithmOutput *input)
 
virtual void SetInputDataObject (int port, vtkDataObject *data)
 
virtual void SetInputDataObject (vtkDataObject *data)
 
virtual void AddInputDataObject (int port, vtkDataObject *data)
 
virtual void AddInputDataObject (vtkDataObject *data)
 
vtkAlgorithmOutputGetOutputPort (int index)
 
vtkAlgorithmOutputGetOutputPort ()
 
vtkAlgorithmGetInputAlgorithm ()
 
vtkExecutiveGetInputExecutive ()
 
vtkInformationGetInputInformation ()
 
virtual void Update (int port)
 
virtual void Update ()
 
virtual int UpdatePiece (int piece, int numPieces, int ghostLevels, const int extents[6]=0)
 
virtual int UpdateTimeStep (double time, int piece=-1, int numPieces=1, int ghostLevels=0, const int extents[6]=0)
 
virtual void SetReleaseDataFlag (int)
 
virtual int GetReleaseDataFlag ()
 
void ReleaseDataFlagOn ()
 
void ReleaseDataFlagOff ()
 
int UpdateExtentIsEmpty (vtkInformation *pinfo, vtkDataObject *output)
 
int UpdateExtentIsEmpty (vtkInformation *pinfo, int extentType)
 
void SetUpdateExtent (int port, int piece, int numPieces, int ghostLevel)
 
void SetUpdateExtent (int piece, int numPieces, int ghostLevel)
 
intGetUpdateExtent ()
 
intGetUpdateExtent (int port)
 
void GetUpdateExtent (int &x0, int &x1, int &y0, int &y1, int &z0, int &z1)
 
void GetUpdateExtent (int port, int &x0, int &x1, int &y0, int &y1, int &z0, int &z1)
 
void GetUpdateExtent (int extent[6])
 
void GetUpdateExtent (int port, int extent[6])
 
int GetUpdatePiece ()
 
int GetUpdatePiece (int port)
 
int GetUpdateNumberOfPieces ()
 
int GetUpdateNumberOfPieces (int port)
 
int GetUpdateGhostLevel ()
 
int GetUpdateGhostLevel (int port)
 
void SetProgressObserver (vtkProgressObserver *)
 
virtual vtkProgressObserverGetProgressObserver ()
 
int ProcessRequest (vtkInformation *request, vtkCollection *inInfo, vtkInformationVector *outInfo)
 
virtual int ComputePipelineMTime (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int requestFromOutputPort, vtkMTimeType *mtime)
 
virtual vtkInformationGetInformation ()
 
virtual void SetInformation (vtkInformation *)
 
void Register (vtkObjectBase *o) VTK_OVERRIDE
 
void UnRegister (vtkObjectBase *o) VTK_OVERRIDE
 
virtual void SetAbortExecute (int)
 
virtual int GetAbortExecute ()
 
virtual void AbortExecuteOn ()
 
virtual void AbortExecuteOff ()
 
virtual void SetProgress (double)
 
virtual double GetProgress ()
 
void SetProgressText (const char *ptext)
 
virtual char * GetProgressText ()
 
virtual unsigned long GetErrorCode ()
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, const char *name)
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, int fieldAttributeType)
 
virtual void SetInputArrayToProcess (int idx, vtkInformation *info)
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, const char *fieldAssociation, const char *attributeTypeorName)
 
vtkDataObjectGetInputDataObject (int port, int connection)
 
virtual void SetInputConnection (int port, vtkAlgorithmOutput *input)
 
virtual void SetInputConnection (vtkAlgorithmOutput *input)
 
virtual void AddInputConnection (int port, vtkAlgorithmOutput *input)
 
virtual void AddInputConnection (vtkAlgorithmOutput *input)
 
virtual void SetInputDataObject (int port, vtkDataObject *data)
 
virtual void SetInputDataObject (vtkDataObject *data)
 
virtual void AddInputDataObject (int port, vtkDataObject *data)
 
virtual void AddInputDataObject (vtkDataObject *data)
 
vtkAlgorithmOutputGetOutputPort (int index)
 
vtkAlgorithmOutputGetOutputPort ()
 
vtkAlgorithmGetInputAlgorithm ()
 
vtkExecutiveGetInputExecutive ()
 
vtkInformationGetInputInformation ()
 
virtual void Update (int port)
 
virtual void Update ()
 
virtual int UpdatePiece (int piece, int numPieces, int ghostLevels, const int extents[6]=0)
 
virtual int UpdateTimeStep (double time, int piece=-1, int numPieces=1, int ghostLevels=0, const int extents[6]=0)
 
virtual void SetReleaseDataFlag (int)
 
virtual int GetReleaseDataFlag ()
 
void ReleaseDataFlagOn ()
 
void ReleaseDataFlagOff ()
 
int UpdateExtentIsEmpty (vtkInformation *pinfo, vtkDataObject *output)
 
int UpdateExtentIsEmpty (vtkInformation *pinfo, int extentType)
 
void SetUpdateExtent (int port, int piece, int numPieces, int ghostLevel)
 
void SetUpdateExtent (int piece, int numPieces, int ghostLevel)
 
intGetUpdateExtent ()
 
intGetUpdateExtent (int port)
 
void GetUpdateExtent (int &x0, int &x1, int &y0, int &y1, int &z0, int &z1)
 
void GetUpdateExtent (int port, int &x0, int &x1, int &y0, int &y1, int &z0, int &z1)
 
void GetUpdateExtent (int extent[6])
 
void GetUpdateExtent (int port, int extent[6])
 
int GetUpdatePiece ()
 
int GetUpdatePiece (int port)
 
int GetUpdateNumberOfPieces ()
 
int GetUpdateNumberOfPieces (int port)
 
int GetUpdateGhostLevel ()
 
int GetUpdateGhostLevel (int port)
 
void SetProgressObserver (vtkProgressObserver *)
 
virtual vtkProgressObserverGetProgressObserver ()
 
- Public Member Functions inherited from vtkObject
 vtkBaseTypeMacro (vtkObject, vtkObjectBase)
 
virtual void DebugOn ()
 
virtual void DebugOff ()
 
bool GetDebug ()
 
void SetDebug (bool debugFlag)
 
virtual void Modified ()
 
virtual vtkMTimeType GetMTime ()
 
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)
 
int InvokeEvent (unsigned long event)
 
int InvokeEvent (const char *event)
 
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 *)
 
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
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)
 
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 *)
 
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
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)
 
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 
virtual void Delete ()
 
virtual void FastDelete ()
 
void Print (ostream &os)
 
void SetReferenceCount (int)
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 
int GetReferenceCount ()
 
void PrintRevisions (ostream &)
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 
int GetReferenceCount ()
 
void PrintRevisions (ostream &)
 

Static Public Member Functions

static vtkReductionFilterNew ()
 
static int IsTypeOf (const char *type)
 
static vtkReductionFilterSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from vtkDataObjectAlgorithm
static vtkDataObjectAlgorithmNew ()
 
static int IsTypeOf (const char *type)
 
static vtkDataObjectAlgorithmSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkAlgorithm
static vtkAlgorithmNew ()
 
static int IsTypeOf (const char *type)
 
static vtkAlgorithmSafeDownCast (vtkObjectBase *o)
 
static vtkInformationIntegerKeyINPUT_IS_OPTIONAL ()
 
static vtkInformationIntegerKeyINPUT_IS_REPEATABLE ()
 
static vtkInformationInformationVectorKeyINPUT_REQUIRED_FIELDS ()
 
static vtkInformationStringVectorKeyINPUT_REQUIRED_DATA_TYPE ()
 
static vtkInformationInformationVectorKeyINPUT_ARRAYS_TO_PROCESS ()
 
static vtkInformationIntegerKeyINPUT_PORT ()
 
static vtkInformationIntegerKeyINPUT_CONNECTION ()
 
static vtkInformationIntegerKeyCAN_PRODUCE_SUB_EXTENT ()
 
static vtkInformationIntegerKeyCAN_HANDLE_PIECE_REQUEST ()
 
static void SetDefaultExecutivePrototype (vtkExecutive *proto)
 
- Static Public Member Functions inherited from vtkObject
static vtkObjectNew ()
 
static void BreakOnError ()
 
static void SetGlobalWarningDisplay (int val)
 
static void GlobalWarningDisplayOn ()
 
static void GlobalWarningDisplayOff ()
 
static int GetGlobalWarningDisplay ()
 
static void SetGlobalWarningDisplay (int val)
 
static void GlobalWarningDisplayOn ()
 
static void GlobalWarningDisplayOff ()
 
static int GetGlobalWarningDisplay ()
 
- Static Public Member Functions inherited from vtkObjectBase
static vtkTypeBool IsTypeOf (const char *name)
 
static vtkObjectBaseNew ()
 
static vtkObjectBaseNew ()
 

Protected Member Functions

 vtkReductionFilter ()
 
 ~vtkReductionFilter () override
 
int FillInputPortInformation (int port, vtkInformation *info) override
 
int RequestDataObject (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
 
int RequestData (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
 
void Reduce (vtkDataObject *input, vtkDataObject *output)
 
vtkDataObjectPreProcess (vtkDataObject *input)
 
void PostProcess (vtkDataObject *output, vtkSmartPointer< vtkDataObject > inputs[], unsigned int num_inputs)
 
int GatherSelection (vtkSelection *sendData, std::vector< vtkSmartPointer< vtkDataObject >> &receiveData, int destProcessId)
 Gather for vtkSelection sendData is a vtkSelection while receiveData is a vector of NumberOfProcesses vtkSelections. More...
 
- Protected Member Functions inherited from vtkDataObjectAlgorithm
virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkDataObjectAlgorithm ()
 
 ~vtkDataObjectAlgorithm ()
 
virtual int RequestInformation (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
 
virtual int FillOutputPortInformation (int port, vtkInformation *info)
 
virtual int RequestUpdateExtent (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 
virtual int RequestUpdateExtent (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 
- Protected Member Functions inherited from vtkAlgorithm
 vtkAlgorithm ()
 
 ~vtkAlgorithm ()
 
virtual void SetNumberOfInputPorts (int n)
 
virtual void SetNumberOfOutputPorts (int n)
 
int InputPortIndexInRange (int index, const char *action)
 
int OutputPortIndexInRange (int index, const char *action)
 
int GetInputArrayAssociation (int idx, vtkInformationVector **inputVector)
 
virtual vtkExecutiveCreateDefaultExecutive ()
 
void ReportReferences (vtkGarbageCollector *) VTK_OVERRIDE
 
virtual void SetNumberOfInputConnections (int port, int n)
 
int GetInputArrayAssociation (int idx, int connection, vtkInformationVector **inputVector)
 
int GetInputArrayAssociation (int idx, vtkDataObject *input)
 
vtkDataArrayGetInputArrayToProcess (int idx, vtkInformationVector **inputVector)
 
vtkDataArrayGetInputArrayToProcess (int idx, vtkInformationVector **inputVector, int &association)
 
vtkDataArrayGetInputArrayToProcess (int idx, int connection, vtkInformationVector **inputVector)
 
vtkDataArrayGetInputArrayToProcess (int idx, int connection, vtkInformationVector **inputVector, int &association)
 
vtkDataArrayGetInputArrayToProcess (int idx, vtkDataObject *input)
 
vtkDataArrayGetInputArrayToProcess (int idx, vtkDataObject *input, int &association)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, vtkInformationVector **inputVector)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, vtkInformationVector **inputVector, int &association)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, int connection, vtkInformationVector **inputVector)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, int connection, vtkInformationVector **inputVector, int &association)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, vtkDataObject *input)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, vtkDataObject *input, int &association)
 
vtkInformationGetInputArrayFieldInformation (int idx, vtkInformationVector **inputVector)
 
virtual void SetNthInputConnection (int port, int index, vtkAlgorithmOutput *input)
 
void SetInputDataInternal (int port, vtkDataObject *input)
 
void AddInputDataInternal (int port, vtkDataObject *input)
 
int GetInputArrayAssociation (int idx, int connection, vtkInformationVector **inputVector)
 
int GetInputArrayAssociation (int idx, vtkDataObject *input)
 
vtkDataArrayGetInputArrayToProcess (int idx, vtkInformationVector **inputVector)
 
vtkDataArrayGetInputArrayToProcess (int idx, vtkInformationVector **inputVector, int &association)
 
vtkDataArrayGetInputArrayToProcess (int idx, int connection, vtkInformationVector **inputVector)
 
vtkDataArrayGetInputArrayToProcess (int idx, int connection, vtkInformationVector **inputVector, int &association)
 
vtkDataArrayGetInputArrayToProcess (int idx, vtkDataObject *input)
 
vtkDataArrayGetInputArrayToProcess (int idx, vtkDataObject *input, int &association)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, vtkInformationVector **inputVector)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, vtkInformationVector **inputVector, int &association)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, int connection, vtkInformationVector **inputVector)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, int connection, vtkInformationVector **inputVector, int &association)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, vtkDataObject *input)
 
vtkAbstractArrayGetInputAbstractArrayToProcess (int idx, vtkDataObject *input, int &association)
 
vtkInformationGetInputArrayFieldInformation (int idx, vtkInformationVector **inputVector)
 
virtual void SetErrorCode (unsigned long)
 
virtual void SetNthInputConnection (int port, int index, vtkAlgorithmOutput *input)
 
void SetInputDataInternal (int port, vtkDataObject *input)
 
void AddInputDataInternal (int port, vtkDataObject *input)
 
- Protected Member Functions inherited from vtkObject
 vtkObject ()
 
virtual ~vtkObject ()
 
void RegisterInternal (vtkObjectBase *, vtkTypeBool check) VTK_OVERRIDE
 
void UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) VTK_OVERRIDE
 
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL)
 
void InternalReleaseFocus ()
 
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 &)
 

Protected Attributes

vtkAlgorithmPreGatherHelper
 
vtkAlgorithmPostGatherHelper
 
vtkMultiProcessControllerController
 
int PassThrough
 
int GenerateProcessIds
 
int ReductionMode
 
int ReductionProcessId
 
- Protected Attributes inherited from vtkAlgorithm
vtkInformationInformation
 
double Progress
 
char * ProgressText
 
vtkProgressObserverProgressObserver
 
unsigned long ErrorCode
 
- Protected Attributes inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
vtkAtomicInt32 ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

Additional Inherited Members

- Public Attributes inherited from vtkAlgorithm
 SINGLE_PRECISION
 
 DOUBLE_PRECISION
 
 DEFAULT_PRECISION
 
int AbortExecute
 
- Static Protected Member Functions inherited from vtkAlgorithm
static vtkInformationIntegerKeyPORT_REQUIREMENTS_FILLED ()
 
- Static Protected Attributes inherited from vtkAlgorithm
static vtkExecutiveDefaultExecutivePrototype
 

Detailed Description

A generic filter that can reduce any type of dataset using any reduction algorithm.

A generic filter that can reduce any type of dataset using any reduction algorithm. Actual reduction is performed by running the PreGatherHelper and PostGatherHelper algorithms. The PreGatherHelper runs on each node in parallel. Next the intermediate results are gathered to the root node. Then the root node then runs the PostGatherHelper algorithm to produce a single result. The PostGatherHelper must be an algorithm that takes multiple input connections and produces a single reduced output.

In addition to doing reduction the PassThrough variable lets you choose to pass through the results of any one node instead of aggregating all of them together.

Definition at line 32 of file vtkReductionFilter.h.

Member Typedef Documentation

◆ Superclass

Definition at line 36 of file vtkReductionFilter.h.

◆ ReductionModeType

Member Enumeration Documentation

◆ ReductionModeType

Enumerator
REDUCE_ALL_TO_ONE 
MOVE_ALL_TO_ONE 
REDUCE_ALL_TO_ALL 

Definition at line 39 of file vtkReductionFilter.h.

◆ Tags

Enumerator
TRANSMIT_DATA_OBJECT 

Definition at line 117 of file vtkReductionFilter.h.

Constructor & Destructor Documentation

◆ vtkReductionFilter()

vtkReductionFilter::vtkReductionFilter ( )
protected

◆ ~vtkReductionFilter()

vtkReductionFilter::~vtkReductionFilter ( )
overrideprotected

Member Function Documentation

◆ New()

static vtkReductionFilter* vtkReductionFilter::New ( )
static

◆ GetClassName()

virtual const char* vtkReductionFilter::GetClassName ( )
virtual

◆ IsTypeOf()

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

◆ IsA()

virtual int vtkReductionFilter::IsA ( const char *  type)
virtual

Reimplemented from vtkDataObjectAlgorithm.

◆ SafeDownCast()

static vtkReductionFilter* vtkReductionFilter::SafeDownCast ( vtkObject o)
static

◆ PrintSelf()

void vtkReductionFilter::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
overridevirtual

Reimplemented from vtkDataObjectAlgorithm.

◆ SetReductionMode()

virtual void vtkReductionFilter::SetReductionMode ( int  )
virtual

Get/Set the Reduction Mode.

REDUCE_ALL_TO_ONE is the default behavior. It reduces all data on a single node, while other nodes keeps their data. MOVE_ALL_TO_ONE Reduce all data on a single node while other nodes delete their data. ALL NODES Reduce all data on all nodes.

◆ GetReductionMode()

virtual int vtkReductionFilter::GetReductionMode ( )
virtual

Get/Set the Reduction Mode.

REDUCE_ALL_TO_ONE is the default behavior. It reduces all data on a single node, while other nodes keeps their data. MOVE_ALL_TO_ONE Reduce all data on a single node while other nodes delete their data. ALL NODES Reduce all data on all nodes.

◆ SetReductionProcessId()

virtual void vtkReductionFilter::SetReductionProcessId ( int  )
virtual

Get/Set the node to reduce to, default is 0.

Not used with REDUCE_ALL_TO_ALL Reduction mode

◆ GetReductionProcessId()

virtual int vtkReductionFilter::GetReductionProcessId ( )
virtual

Get/Set the node to reduce to, default is 0.

Not used with REDUCE_ALL_TO_ALL Reduction mode

◆ SetPreGatherHelper()

void vtkReductionFilter::SetPreGatherHelper ( vtkAlgorithm )

Get/Set the pre-reduction helper.

Pre-Reduction helper is an algorithm that runs on each node's data before it is sent to the root.

◆ SetPreGatherHelperName()

void vtkReductionFilter::SetPreGatherHelperName ( const char *  )

Get/Set the pre-reduction helper.

Pre-Reduction helper is an algorithm that runs on each node's data before it is sent to the root.

◆ GetPreGatherHelper()

virtual vtkAlgorithm* vtkReductionFilter::GetPreGatherHelper ( )
virtual

Get/Set the pre-reduction helper.

Pre-Reduction helper is an algorithm that runs on each node's data before it is sent to the root.

◆ SetPostGatherHelper()

void vtkReductionFilter::SetPostGatherHelper ( vtkAlgorithm )

Get/Set the reduction helper.

Reduction helper is an algorithm with multiple input connections, that produces a single output as the reduced output. This is run on the root node to produce a result from the gathered results of each node.

◆ SetPostGatherHelperName()

void vtkReductionFilter::SetPostGatherHelperName ( const char *  )

Get/Set the reduction helper.

Reduction helper is an algorithm with multiple input connections, that produces a single output as the reduced output. This is run on the root node to produce a result from the gathered results of each node.

◆ GetPostGatherHelper()

virtual vtkAlgorithm* vtkReductionFilter::GetPostGatherHelper ( )
virtual

Get/Set the reduction helper.

Reduction helper is an algorithm with multiple input connections, that produces a single output as the reduced output. This is run on the root node to produce a result from the gathered results of each node.

◆ SetController()

void vtkReductionFilter::SetController ( vtkMultiProcessController )

Get/Set the MPI controller used for gathering.

◆ SetPassThrough()

virtual void vtkReductionFilter::SetPassThrough ( int  )
virtual

Get/Set the PassThrough flag which (when set to a nonnegative number N) tells the filter to produce results that come from node N only.

The data from that node still runs through the PreReduction and PostGatherHelper algorithms.

◆ GetPassThrough()

virtual int vtkReductionFilter::GetPassThrough ( )
virtual

Get/Set the PassThrough flag which (when set to a nonnegative number N) tells the filter to produce results that come from node N only.

The data from that node still runs through the PreReduction and PostGatherHelper algorithms.

◆ SetGenerateProcessIds()

virtual void vtkReductionFilter::SetGenerateProcessIds ( int  )
virtual

When set, a new array vtkOriginalProcessIds will be added to the output of the the pre-gather helper (or input, if no pre-gather helper is set).

The values in the array indicate the process id. Note that the array is added only if the number of processes is > 1.

◆ GetGenerateProcessIds()

virtual int vtkReductionFilter::GetGenerateProcessIds ( )
virtual

When set, a new array vtkOriginalProcessIds will be added to the output of the the pre-gather helper (or input, if no pre-gather helper is set).

The values in the array indicate the process id. Note that the array is added only if the number of processes is > 1.

◆ FillInputPortInformation()

int vtkReductionFilter::FillInputPortInformation ( int  port,
vtkInformation info 
)
overrideprotectedvirtual

Reimplemented from vtkDataObjectAlgorithm.

◆ RequestDataObject()

int vtkReductionFilter::RequestDataObject ( vtkInformation request,
vtkInformationVector **  inputVector,
vtkInformationVector outputVector 
)
overrideprotectedvirtual

Reimplemented from vtkDataObjectAlgorithm.

◆ RequestData()

int vtkReductionFilter::RequestData ( vtkInformation request,
vtkInformationVector **  inputVector,
vtkInformationVector outputVector 
)
overrideprotectedvirtual

Reimplemented from vtkDataObjectAlgorithm.

◆ Reduce()

void vtkReductionFilter::Reduce ( vtkDataObject input,
vtkDataObject output 
)
protected

◆ PreProcess()

vtkDataObject* vtkReductionFilter::PreProcess ( vtkDataObject input)
protected

◆ PostProcess()

void vtkReductionFilter::PostProcess ( vtkDataObject output,
vtkSmartPointer< vtkDataObject inputs[],
unsigned int  num_inputs 
)
protected

◆ GatherSelection()

int vtkReductionFilter::GatherSelection ( vtkSelection sendData,
std::vector< vtkSmartPointer< vtkDataObject >> &  receiveData,
int  destProcessId 
)
protected

Gather for vtkSelection sendData is a vtkSelection while receiveData is a vector of NumberOfProcesses vtkSelections.

Selections are gathered on destProcessId

Member Data Documentation

◆ PreGatherHelper

vtkAlgorithm* vtkReductionFilter::PreGatherHelper
protected

Definition at line 148 of file vtkReductionFilter.h.

◆ PostGatherHelper

vtkAlgorithm* vtkReductionFilter::PostGatherHelper
protected

Definition at line 149 of file vtkReductionFilter.h.

◆ Controller

vtkMultiProcessController* vtkReductionFilter::Controller
protected

Definition at line 150 of file vtkReductionFilter.h.

◆ PassThrough

int vtkReductionFilter::PassThrough
protected

Definition at line 151 of file vtkReductionFilter.h.

◆ GenerateProcessIds

int vtkReductionFilter::GenerateProcessIds
protected

Definition at line 152 of file vtkReductionFilter.h.

◆ ReductionMode

int vtkReductionFilter::ReductionMode
protected

Definition at line 153 of file vtkReductionFilter.h.

◆ ReductionProcessId

int vtkReductionFilter::ReductionProcessId
protected

Definition at line 154 of file vtkReductionFilter.h.


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