VTK
|
Used to send/receive messages in a multiprocess environment. More...
#include <vtkCommunicator.h>
Classes | |
class | Operation |
A custom operation to use in a reduce command. More... | |
Public Types | |
enum | Tags { BROADCAST_TAG = 10, GATHER_TAG = 11, GATHERV_TAG = 12, SCATTER_TAG = 13, SCATTERV_TAG = 14, REDUCE_TAG = 15, BARRIER_TAG = 16 } |
enum | StandardOperations { MAX_OP, MIN_OP, SUM_OP, PRODUCT_OP, LOGICAL_AND_OP, BITWISE_AND_OP, LOGICAL_OR_OP, BITWISE_OR_OP, LOGICAL_XOR_OP, BITWISE_XOR_OP } |
typedef vtkObject | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
Return 1 if this class is the same type of (or a subclass of) the named class. More... | |
vtkCommunicator * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) override |
Methods invoked by print to print information about the object including superclasses. More... | |
int | Send (vtkDataObject *data, int remoteHandle, int tag) |
This method sends a data object to a destination. More... | |
int | Send (vtkDataArray *data, int remoteHandle, int tag) |
This method sends a data array to a destination. More... | |
virtual int | SendVoidArray (const void *data, vtkIdType length, int type, int remoteHandle, int tag)=0 |
Subclasses have to supply this method to send various arrays of data. More... | |
int | Send (const vtkMultiProcessStream &stream, int remoteId, int tag) |
int | Receive (vtkDataObject *data, int remoteHandle, int tag) |
This method receives a data object from a corresponding send. More... | |
vtkDataObject * | ReceiveDataObject (int remoteHandle, int tag) |
The caller does not have to know the data type before this call is made. More... | |
int | Receive (vtkDataArray *data, int remoteHandle, int tag) |
This method receives a data array from a corresponding send. More... | |
virtual int | ReceiveVoidArray (void *data, vtkIdType maxlength, int type, int remoteHandle, int tag)=0 |
Subclasses have to supply this method to receive various arrays of data. More... | |
int | Receive (vtkMultiProcessStream &stream, int remoteId, int tag) |
virtual void | Barrier () |
Will block the processes until all other processes reach the Barrier function. More... | |
int | Broadcast (vtkMultiProcessStream &stream, int srcProcessId) |
int | Gather (vtkDataObject *sendBuffer, std::vector< vtkSmartPointer< vtkDataObject > > &recvBuffer, int destProcessId) |
Gathers vtkDataObject (sendBuffer ) from all ranks to the destProcessId . More... | |
int | GatherV (vtkDataObject *sendData, vtkSmartPointer< vtkDataObject > *recvData, int destProcessId) |
Collects data objects in the process with id destProcessId . More... | |
virtual int | ComputeGlobalBounds (int processorId, int numProcesses, vtkBoundingBox *bounds, int *rightHasBounds=nullptr, int *leftHasBounds=nullptr, int hasBoundsTag=288402, int localBoundsTag=288403, int globalBoundsTag=288404) |
Determine the global bounds for a set of processes. More... | |
virtual void | SetNumberOfProcesses (int num) |
Set the number of processes you will be using. More... | |
virtual int | GetNumberOfProcesses () |
Set the number of processes you will be using. More... | |
virtual int | GetLocalProcessId () |
Tells you which process [0, NumProcess) you are in. More... | |
int | Send (const int *data, vtkIdType length, int remoteHandle, int tag) |
Convenience methods for sending data arrays. More... | |
int | Send (const unsigned int *data, vtkIdType length, int remoteHandle, int tag) |
Convenience methods for sending data arrays. More... | |
int | Send (const short *data, vtkIdType length, int remoteHandle, int tag) |
Convenience methods for sending data arrays. More... | |
int | Send (const unsigned short *data, vtkIdType length, int remoteHandle, int tag) |
Convenience methods for sending data arrays. More... | |
int | Send (const long *data, vtkIdType length, int remoteHandle, int tag) |
Convenience methods for sending data arrays. More... | |
int | Send (const unsigned long *data, vtkIdType length, int remoteHandle, int tag) |
Convenience methods for sending data arrays. More... | |
int | Send (const unsigned char *data, vtkIdType length, int remoteHandle, int tag) |
Convenience methods for sending data arrays. More... | |
int | Send (const char *data, vtkIdType length, int remoteHandle, int tag) |
Convenience methods for sending data arrays. More... | |
int | Send (const signed char *data, vtkIdType length, int remoteHandle, int tag) |
Convenience methods for sending data arrays. More... | |
int | Send (const float *data, vtkIdType length, int remoteHandle, int tag) |
Convenience methods for sending data arrays. More... | |
int | Send (const double *data, vtkIdType length, int remoteHandle, int tag) |
Convenience methods for sending data arrays. More... | |
int | Send (const long long *data, vtkIdType length, int remoteHandle, int tag) |
Convenience methods for sending data arrays. More... | |
int | Send (const unsigned long long *data, vtkIdType length, int remoteHandle, int tag) |
Convenience methods for sending data arrays. More... | |
int | Receive (int *data, vtkIdType maxlength, int remoteHandle, int tag) |
Convenience methods for receiving data arrays. More... | |
int | Receive (unsigned int *data, vtkIdType maxlength, int remoteHandle, int tag) |
Convenience methods for receiving data arrays. More... | |
int | Receive (short *data, vtkIdType maxlength, int remoteHandle, int tag) |
Convenience methods for receiving data arrays. More... | |
int | Receive (unsigned short *data, vtkIdType maxlength, int remoteHandle, int tag) |
Convenience methods for receiving data arrays. More... | |
int | Receive (long *data, vtkIdType maxlength, int remoteHandle, int tag) |
Convenience methods for receiving data arrays. More... | |
int | Receive (unsigned long *data, vtkIdType maxlength, int remoteHandle, int tag) |
Convenience methods for receiving data arrays. More... | |
int | Receive (unsigned char *data, vtkIdType maxlength, int remoteHandle, int tag) |
Convenience methods for receiving data arrays. More... | |
int | Receive (char *data, vtkIdType maxlength, int remoteHandle, int tag) |
Convenience methods for receiving data arrays. More... | |
int | Receive (signed char *data, vtkIdType maxlength, int remoteHandle, int tag) |
Convenience methods for receiving data arrays. More... | |
int | Receive (float *data, vtkIdType maxlength, int remoteHandle, int tag) |
Convenience methods for receiving data arrays. More... | |
int | Receive (double *data, vtkIdType maxlength, int remoteHandle, int tag) |
Convenience methods for receiving data arrays. More... | |
int | Receive (long long *data, vtkIdType maxlength, int remoteHandle, int tag) |
Convenience methods for receiving data arrays. More... | |
int | Receive (unsigned long long *data, vtkIdType maxlength, int remoteHandle, int tag) |
Convenience methods for receiving data arrays. More... | |
virtual vtkIdType | GetCount () |
Returns the number of words received by the most recent Receive(). More... | |
int | Broadcast (int *data, vtkIdType length, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. More... | |
int | Broadcast (unsigned int *data, vtkIdType length, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. More... | |
int | Broadcast (short *data, vtkIdType length, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. More... | |
int | Broadcast (unsigned short *data, vtkIdType length, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. More... | |
int | Broadcast (long *data, vtkIdType length, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. More... | |
int | Broadcast (unsigned long *data, vtkIdType length, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. More... | |
int | Broadcast (unsigned char *data, vtkIdType length, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. More... | |
int | Broadcast (char *data, vtkIdType length, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. More... | |
int | Broadcast (signed char *data, vtkIdType length, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. More... | |
int | Broadcast (float *data, vtkIdType length, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. More... | |
int | Broadcast (double *data, vtkIdType length, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. More... | |
int | Broadcast (long long *data, vtkIdType length, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. More... | |
int | Broadcast (unsigned long long *data, vtkIdType length, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. More... | |
int | Broadcast (vtkDataObject *data, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. More... | |
int | Broadcast (vtkDataArray *data, int srcProcessId) |
Broadcast sends the array in the process with id srcProcessId to all of the other processes. More... | |
int | Gather (const int *sendBuffer, int *recvBuffer, vtkIdType length, int destProcessId) |
Gather collects arrays in the process with id destProcessId . More... | |
int | Gather (const unsigned int *sendBuffer, unsigned int *recvBuffer, vtkIdType length, int destProcessId) |
Gather collects arrays in the process with id destProcessId . More... | |
int | Gather (const short *sendBuffer, short *recvBuffer, vtkIdType length, int destProcessId) |
Gather collects arrays in the process with id destProcessId . More... | |
int | Gather (const unsigned short *sendBuffer, unsigned short *recvBuffer, vtkIdType length, int destProcessId) |
Gather collects arrays in the process with id destProcessId . More... | |
int | Gather (const long *sendBuffer, long *recvBuffer, vtkIdType length, int destProcessId) |
Gather collects arrays in the process with id destProcessId . More... | |
int | Gather (const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType length, int destProcessId) |
Gather collects arrays in the process with id destProcessId . More... | |
int | Gather (const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType length, int destProcessId) |
Gather collects arrays in the process with id destProcessId . More... | |
int | Gather (const char *sendBuffer, char *recvBuffer, vtkIdType length, int destProcessId) |
Gather collects arrays in the process with id destProcessId . More... | |
int | Gather (const signed char *sendBuffer, signed char *recvBuffer, vtkIdType length, int destProcessId) |
Gather collects arrays in the process with id destProcessId . More... | |
int | Gather (const float *sendBuffer, float *recvBuffer, vtkIdType length, int destProcessId) |
Gather collects arrays in the process with id destProcessId . More... | |
int | Gather (const double *sendBuffer, double *recvBuffer, vtkIdType length, int destProcessId) |
Gather collects arrays in the process with id destProcessId . More... | |
int | Gather (const long long *sendBuffer, long long *recvBuffer, vtkIdType length, int destProcessId) |
Gather collects arrays in the process with id destProcessId . More... | |
int | Gather (const unsigned long long *sendBuffer, unsigned long long *recvBuffer, vtkIdType length, int destProcessId) |
Gather collects arrays in the process with id destProcessId . More... | |
int | Gather (vtkDataArray *sendBuffer, vtkDataArray *recvBuffer, int destProcessId) |
Gather collects arrays in the process with id destProcessId . More... | |
int | GatherV (const int *sendBuffer, int *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId) |
GatherV is the vector variant of Gather. More... | |
int | GatherV (const unsigned int *sendBuffer, unsigned int *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId) |
GatherV is the vector variant of Gather. More... | |
int | GatherV (const short *sendBuffer, short *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId) |
GatherV is the vector variant of Gather. More... | |
int | GatherV (const unsigned short *sendBuffer, unsigned short *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId) |
GatherV is the vector variant of Gather. More... | |
int | GatherV (const long *sendBuffer, long *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId) |
GatherV is the vector variant of Gather. More... | |
int | GatherV (const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId) |
GatherV is the vector variant of Gather. More... | |
int | GatherV (const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId) |
GatherV is the vector variant of Gather. More... | |
int | GatherV (const char *sendBuffer, char *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId) |
GatherV is the vector variant of Gather. More... | |
int | GatherV (const signed char *sendBuffer, signed char *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId) |
GatherV is the vector variant of Gather. More... | |
int | GatherV (const float *sendBuffer, float *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId) |
GatherV is the vector variant of Gather. More... | |
int | GatherV (const double *sendBuffer, double *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId) |
GatherV is the vector variant of Gather. More... | |
int | GatherV (const long long *sendBuffer, long long *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId) |
GatherV is the vector variant of Gather. More... | |
int | GatherV (const unsigned long long *sendBuffer, unsigned long long *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId) |
GatherV is the vector variant of Gather. More... | |
int | GatherV (vtkDataArray *sendBuffer, vtkDataArray *recvBuffer, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId) |
For the first GatherV variant, recvLenghts and offsets known on destProcessId and are passed in as parameters For the second GatherV variant, recvLenghts and offsets are not known on destProcessId . More... | |
int | GatherV (vtkDataArray *sendBuffer, vtkDataArray *recvBuffer, vtkIdTypeArray *recvLengths, vtkIdTypeArray *offsets, int destProcessId) |
For the first GatherV variant, recvLenghts and offsets known on destProcessId and are passed in as parameters For the second GatherV variant, recvLenghts and offsets are not known on destProcessId . More... | |
int | GatherV (vtkDataArray *sendBuffer, vtkDataArray *recvBuffer, int destProcessId) |
For the first GatherV variant, recvLenghts and offsets known on destProcessId and are passed in as parameters For the second GatherV variant, recvLenghts and offsets are not known on destProcessId . More... | |
int | Scatter (const int *sendBuffer, int *recvBuffer, vtkIdType length, int srcProcessId) |
Scatter takes an array in the process with id srcProcessId and distributes it. More... | |
int | Scatter (const unsigned int *sendBuffer, unsigned int *recvBuffer, vtkIdType length, int srcProcessId) |
Scatter takes an array in the process with id srcProcessId and distributes it. More... | |
int | Scatter (const short *sendBuffer, short *recvBuffer, vtkIdType length, int srcProcessId) |
Scatter takes an array in the process with id srcProcessId and distributes it. More... | |
int | Scatter (const unsigned short *sendBuffer, unsigned short *recvBuffer, vtkIdType length, int srcProcessId) |
Scatter takes an array in the process with id srcProcessId and distributes it. More... | |
int | Scatter (const long *sendBuffer, long *recvBuffer, vtkIdType length, int srcProcessId) |
Scatter takes an array in the process with id srcProcessId and distributes it. More... | |
int | Scatter (const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType length, int srcProcessId) |
Scatter takes an array in the process with id srcProcessId and distributes it. More... | |
int | Scatter (const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType length, int srcProcessId) |
Scatter takes an array in the process with id srcProcessId and distributes it. More... | |
int | Scatter (const char *sendBuffer, char *recvBuffer, vtkIdType length, int srcProcessId) |
Scatter takes an array in the process with id srcProcessId and distributes it. More... | |
int | Scatter (const signed char *sendBuffer, signed char *recvBuffer, vtkIdType length, int srcProcessId) |
Scatter takes an array in the process with id srcProcessId and distributes it. More... | |
int | Scatter (const float *sendBuffer, float *recvBuffer, vtkIdType length, int srcProcessId) |
Scatter takes an array in the process with id srcProcessId and distributes it. More... | |
int | Scatter (const double *sendBuffer, double *recvBuffer, vtkIdType length, int srcProcessId) |
Scatter takes an array in the process with id srcProcessId and distributes it. More... | |
int | Scatter (const long long *sendBuffer, long long *recvBuffer, vtkIdType length, int srcProcessId) |
Scatter takes an array in the process with id srcProcessId and distributes it. More... | |
int | Scatter (const unsigned long long *sendBuffer, unsigned long long *recvBuffer, vtkIdType length, int srcProcessId) |
Scatter takes an array in the process with id srcProcessId and distributes it. More... | |
int | Scatter (vtkDataArray *sendBuffer, vtkDataArray *recvBuffer, int srcProcessId) |
Scatter takes an array in the process with id srcProcessId and distributes it. More... | |
int | ScatterV (const int *sendBuffer, int *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId) |
ScatterV is the vector variant of Scatter. More... | |
int | ScatterV (const unsigned int *sendBuffer, unsigned int *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId) |
ScatterV is the vector variant of Scatter. More... | |
int | ScatterV (const short *sendBuffer, short *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId) |
ScatterV is the vector variant of Scatter. More... | |
int | ScatterV (const unsigned short *sendBuffer, unsigned short *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId) |
ScatterV is the vector variant of Scatter. More... | |
int | ScatterV (const long *sendBuffer, long *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId) |
ScatterV is the vector variant of Scatter. More... | |
int | ScatterV (const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId) |
ScatterV is the vector variant of Scatter. More... | |
int | ScatterV (const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId) |
ScatterV is the vector variant of Scatter. More... | |
int | ScatterV (const char *sendBuffer, char *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId) |
ScatterV is the vector variant of Scatter. More... | |
int | ScatterV (const signed char *sendBuffer, signed char *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId) |
ScatterV is the vector variant of Scatter. More... | |
int | ScatterV (const float *sendBuffer, float *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId) |
ScatterV is the vector variant of Scatter. More... | |
int | ScatterV (const double *sendBuffer, double *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId) |
ScatterV is the vector variant of Scatter. More... | |
int | ScatterV (const long long *sendBuffer, long long *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId) |
ScatterV is the vector variant of Scatter. More... | |
int | ScatterV (const unsigned long long *sendBuffer, unsigned long long *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId) |
ScatterV is the vector variant of Scatter. More... | |
int | AllGather (const int *sendBuffer, int *recvBuffer, vtkIdType length) |
Same as gather except that the result ends up on all processes. More... | |
int | AllGather (const unsigned int *sendBuffer, unsigned int *recvBuffer, vtkIdType length) |
Same as gather except that the result ends up on all processes. More... | |
int | AllGather (const short *sendBuffer, short *recvBuffer, vtkIdType length) |
Same as gather except that the result ends up on all processes. More... | |
int | AllGather (const unsigned short *sendBuffer, unsigned short *recvBuffer, vtkIdType length) |
Same as gather except that the result ends up on all processes. More... | |
int | AllGather (const long *sendBuffer, long *recvBuffer, vtkIdType length) |
Same as gather except that the result ends up on all processes. More... | |
int | AllGather (const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType length) |
Same as gather except that the result ends up on all processes. More... | |
int | AllGather (const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType length) |
Same as gather except that the result ends up on all processes. More... | |
int | AllGather (const char *sendBuffer, char *recvBuffer, vtkIdType length) |
Same as gather except that the result ends up on all processes. More... | |
int | AllGather (const signed char *sendBuffer, signed char *recvBuffer, vtkIdType length) |
Same as gather except that the result ends up on all processes. More... | |
int | AllGather (const float *sendBuffer, float *recvBuffer, vtkIdType length) |
Same as gather except that the result ends up on all processes. More... | |
int | AllGather (const double *sendBuffer, double *recvBuffer, vtkIdType length) |
Same as gather except that the result ends up on all processes. More... | |
int | AllGather (const long long *sendBuffer, long long *recvBuffer, vtkIdType length) |
Same as gather except that the result ends up on all processes. More... | |
int | AllGather (const unsigned long long *sendBuffer, unsigned long long *recvBuffer, vtkIdType length) |
Same as gather except that the result ends up on all processes. More... | |
int | AllGather (vtkDataArray *sendBuffer, vtkDataArray *recvBuffer) |
Same as gather except that the result ends up on all processes. More... | |
int | AllGatherV (const int *sendBuffer, int *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets) |
Same as GatherV except that the result is placed in all processes. More... | |
int | AllGatherV (const unsigned int *sendBuffer, unsigned int *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets) |
Same as GatherV except that the result is placed in all processes. More... | |
int | AllGatherV (const short *sendBuffer, short *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets) |
Same as GatherV except that the result is placed in all processes. More... | |
int | AllGatherV (const unsigned short *sendBuffer, unsigned short *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets) |
Same as GatherV except that the result is placed in all processes. More... | |
int | AllGatherV (const long *sendBuffer, long *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets) |
Same as GatherV except that the result is placed in all processes. More... | |
int | AllGatherV (const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets) |
Same as GatherV except that the result is placed in all processes. More... | |
int | AllGatherV (const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets) |
Same as GatherV except that the result is placed in all processes. More... | |
int | AllGatherV (const char *sendBuffer, char *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets) |
Same as GatherV except that the result is placed in all processes. More... | |
int | AllGatherV (const signed char *sendBuffer, signed char *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets) |
Same as GatherV except that the result is placed in all processes. More... | |
int | AllGatherV (const float *sendBuffer, float *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets) |
Same as GatherV except that the result is placed in all processes. More... | |
int | AllGatherV (const double *sendBuffer, double *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets) |
Same as GatherV except that the result is placed in all processes. More... | |
int | AllGatherV (const long long *sendBuffer, long long *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets) |
Same as GatherV except that the result is placed in all processes. More... | |
int | AllGatherV (const unsigned long long *sendBuffer, unsigned long long *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets) |
Same as GatherV except that the result is placed in all processes. More... | |
int | AllGatherV (vtkDataArray *sendBuffer, vtkDataArray *recvBuffer, vtkIdType *recvLengths, vtkIdType *offsets) |
Same as GatherV except that the result is placed in all processes. More... | |
int | AllGatherV (vtkDataArray *sendBuffer, vtkDataArray *recvBuffer) |
Same as GatherV except that the result is placed in all processes. More... | |
int | Reduce (const int *sendBuffer, int *recvBuffer, vtkIdType length, int operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const unsigned int *sendBuffer, unsigned int *recvBuffer, vtkIdType length, int operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const short *sendBuffer, short *recvBuffer, vtkIdType length, int operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const unsigned short *sendBuffer, unsigned short *recvBuffer, vtkIdType length, int operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const long *sendBuffer, long *recvBuffer, vtkIdType length, int operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType length, int operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType length, int operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const char *sendBuffer, char *recvBuffer, vtkIdType length, int operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const signed char *sendBuffer, signed char *recvBuffer, vtkIdType length, int operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const float *sendBuffer, float *recvBuffer, vtkIdType length, int operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const double *sendBuffer, double *recvBuffer, vtkIdType length, int operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const long long *sendBuffer, long long *recvBuffer, vtkIdType length, int operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const unsigned long long *sendBuffer, unsigned long long *recvBuffer, vtkIdType length, int operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (vtkDataArray *sendBuffer, vtkDataArray *recvBuffer, int operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const int *sendBuffer, int *recvBuffer, vtkIdType length, Operation *operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const unsigned int *sendBuffer, unsigned int *recvBuffer, vtkIdType length, Operation *operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const short *sendBuffer, short *recvBuffer, vtkIdType length, Operation *operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const unsigned short *sendBuffer, unsigned short *recvBuffer, vtkIdType length, Operation *operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const long *sendBuffer, long *recvBuffer, vtkIdType length, Operation *operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType length, Operation *operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType length, Operation *operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const char *sendBuffer, char *recvBuffer, vtkIdType length, Operation *operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const signed char *sendBuffer, signed char *recvBuffer, vtkIdType length, Operation *operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const float *sendBuffer, float *recvBuffer, vtkIdType length, Operation *operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const double *sendBuffer, double *recvBuffer, vtkIdType length, Operation *operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const long long *sendBuffer, long long *recvBuffer, vtkIdType length, Operation *operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (const unsigned long long *sendBuffer, unsigned long long *recvBuffer, vtkIdType length, Operation *operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | Reduce (vtkDataArray *sendBuffer, vtkDataArray *recvBuffer, Operation *operation, int destProcessId) |
Reduce an array to the given destination process. More... | |
int | AllReduce (const int *sendBuffer, int *recvBuffer, vtkIdType length, int operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const unsigned int *sendBuffer, unsigned int *recvBuffer, vtkIdType length, int operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const short *sendBuffer, short *recvBuffer, vtkIdType length, int operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const unsigned short *sendBuffer, unsigned short *recvBuffer, vtkIdType length, int operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const long *sendBuffer, long *recvBuffer, vtkIdType length, int operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType length, int operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType length, int operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const char *sendBuffer, char *recvBuffer, vtkIdType length, int operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const signed char *sendBuffer, signed char *recvBuffer, vtkIdType length, int operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const float *sendBuffer, float *recvBuffer, vtkIdType length, int operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const double *sendBuffer, double *recvBuffer, vtkIdType length, int operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const long long *sendBuffer, long long *recvBuffer, vtkIdType length, int operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const unsigned long long *sendBuffer, unsigned long long *recvBuffer, vtkIdType length, int operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (vtkDataArray *sendBuffer, vtkDataArray *recvBuffer, int operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const int *sendBuffer, int *recvBuffer, vtkIdType length, Operation *operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const unsigned int *sendBuffer, unsigned int *recvBuffer, vtkIdType length, Operation *operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const short *sendBuffer, short *recvBuffer, vtkIdType length, Operation *operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const unsigned short *sendBuffer, unsigned short *recvBuffer, vtkIdType length, Operation *operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const long *sendBuffer, long *recvBuffer, vtkIdType length, Operation *operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType length, Operation *operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType length, Operation *operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const char *sendBuffer, char *recvBuffer, vtkIdType length, Operation *operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const signed char *sendBuffer, signed char *recvBuffer, vtkIdType length, Operation *operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const float *sendBuffer, float *recvBuffer, vtkIdType length, Operation *operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const double *sendBuffer, double *recvBuffer, vtkIdType length, Operation *operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const long long *sendBuffer, long long *recvBuffer, vtkIdType length, Operation *operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (const unsigned long long *sendBuffer, unsigned long long *recvBuffer, vtkIdType length, Operation *operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
int | AllReduce (vtkDataArray *sendBuffer, vtkDataArray *recvBuffer, Operation *operation) |
Same as Reduce except that the result is placed in all of the processes. More... | |
virtual int | BroadcastVoidArray (void *data, vtkIdType length, int type, int srcProcessId) |
Subclasses should reimplement these if they have a more efficient implementation. More... | |
virtual int | GatherVoidArray (const void *sendBuffer, void *recvBuffer, vtkIdType length, int type, int destProcessId) |
Subclasses should reimplement these if they have a more efficient implementation. More... | |
virtual int | GatherVVoidArray (const void *sendBuffer, void *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int type, int destProcessId) |
Subclasses should reimplement these if they have a more efficient implementation. More... | |
virtual int | ScatterVoidArray (const void *sendBuffer, void *recvBuffer, vtkIdType length, int type, int srcProcessId) |
Subclasses should reimplement these if they have a more efficient implementation. More... | |
virtual int | ScatterVVoidArray (const void *sendBuffer, void *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int type, int srcProcessId) |
Subclasses should reimplement these if they have a more efficient implementation. More... | |
virtual int | AllGatherVoidArray (const void *sendBuffer, void *recvBuffer, vtkIdType length, int type) |
Subclasses should reimplement these if they have a more efficient implementation. More... | |
virtual int | AllGatherVVoidArray (const void *sendBuffer, void *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int type) |
Subclasses should reimplement these if they have a more efficient implementation. More... | |
virtual int | ReduceVoidArray (const void *sendBuffer, void *recvBuffer, vtkIdType length, int type, int operation, int destProcessId) |
Subclasses should reimplement these if they have a more efficient implementation. More... | |
virtual int | ReduceVoidArray (const void *sendBuffer, void *recvBuffer, vtkIdType length, int type, Operation *operation, int destProcessId) |
Subclasses should reimplement these if they have a more efficient implementation. More... | |
virtual int | AllReduceVoidArray (const void *sendBuffer, void *recvBuffer, vtkIdType length, int type, int operation) |
Subclasses should reimplement these if they have a more efficient implementation. More... | |
virtual int | AllReduceVoidArray (const void *sendBuffer, void *recvBuffer, vtkIdType length, int type, Operation *operation) |
Subclasses should reimplement these if they have a more efficient implementation. More... | |
![]() | |
vtkBaseTypeMacro (vtkObject, vtkObjectBase) | |
virtual void | DebugOn () |
Turn debugging output on. More... | |
virtual void | DebugOff () |
Turn debugging output off. More... | |
bool | GetDebug () |
Get the value of the debug flag. More... | |
void | SetDebug (bool debugFlag) |
Set the value of the debug flag. More... | |
virtual void | Modified () |
Update the modification time for this object. More... | |
virtual vtkMTimeType | GetMTime () |
Return this object's modified time. More... | |
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) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
vtkCommand * | GetCommand (unsigned long tag) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
void | RemoveObserver (vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
void | RemoveObservers (unsigned long event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
void | RemoveObservers (const char *event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
int | HasObserver (unsigned long event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
int | HasObserver (const char *event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More... | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More... | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
Allow user to set the AbortFlagOn() with the return value of the callback method. More... | |
int | InvokeEvent (unsigned long event, void *callData) |
This method invokes an event and return whether the event was aborted or not. More... | |
int | InvokeEvent (const char *event, void *callData) |
This method invokes an event and return whether the event was aborted or not. More... | |
![]() | |
const char * | GetClassName () const |
Return the class name as a string. More... | |
virtual void | Delete () |
Delete a VTK object. More... | |
virtual void | FastDelete () |
Delete a reference to this object. More... | |
void | InitializeObjectBase () |
void | Print (ostream &os) |
Print an object to an ostream. More... | |
virtual void | Register (vtkObjectBase *o) |
Increase the reference count (mark as used by another object). More... | |
virtual void | UnRegister (vtkObjectBase *o) |
Decrease the reference count (release by another object). More... | |
int | GetReferenceCount () |
Return the current reference count of this object. More... | |
void | SetReferenceCount (int) |
Sets the reference count. More... | |
void | PrintRevisions (ostream &) |
Legacy. More... | |
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
Methods invoked by print to print information about the object including superclasses. More... | |
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
Methods invoked by print to print information about the object including superclasses. More... | |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkCommunicator * | SafeDownCast (vtkObjectBase *o) |
static void | SetUseCopy (int useCopy) |
static vtkSmartPointer< vtkDataObject > | UnMarshalDataObject (vtkCharArray *buffer) |
Same as UnMarshalDataObject(vtkCharArray*, vtkDataObject*) except that this method doesn't need to know the type of the data object a priori. More... | |
static int | GetParentProcessor (int pid) |
Some helper functions when dealing with heap tree - based algorthims - we don't need a function for getting the right processor since it is 1 + theLeftProcessor. More... | |
static int | GetLeftChildProcessor (int pid) |
Some helper functions when dealing with heap tree - based algorthims - we don't need a function for getting the right processor since it is 1 + theLeftProcessor. More... | |
static int | MarshalDataObject (vtkDataObject *object, vtkCharArray *buffer) |
Convert a data object into a string that can be transmitted and vice versa. More... | |
static int | UnMarshalDataObject (vtkCharArray *buffer, vtkDataObject *object) |
Convert a data object into a string that can be transmitted and vice versa. More... | |
![]() | |
static vtkObject * | New () |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More... | |
static void | BreakOnError () |
This method is called when vtkErrorMacro executes. More... | |
static void | SetGlobalWarningDisplay (int val) |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
static void | GlobalWarningDisplayOn () |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
static void | GlobalWarningDisplayOff () |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
static int | GetGlobalWarningDisplay () |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
![]() | |
static vtkTypeBool | IsTypeOf (const char *name) |
Return 1 if this class type is the same type of (or a subclass of) the named class. More... | |
static vtkObjectBase * | New () |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More... | |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
int | WriteDataArray (vtkDataArray *object) |
int | ReadDataArray (vtkDataArray *object) |
vtkCommunicator () | |
~vtkCommunicator () override | |
int | SendElementalDataObject (vtkDataObject *data, int remoteHandle, int tag) |
int | ReceiveDataObject (vtkDataObject *data, int remoteHandle, int tag, int type=-1) |
int | ReceiveElementalDataObject (vtkDataObject *data, int remoteHandle, int tag) |
int | ReceiveMultiBlockDataSet (vtkMultiBlockDataSet *data, int remoteHandle, int tag) |
int | GatherV (vtkDataArray *sendArray, vtkDataArray *recvArray, vtkSmartPointer< vtkDataArray > *recvArrays, int destProcessId) |
GatherV collects arrays in the process with id destProcessId . More... | |
int | GatherVElementalDataObject (vtkDataObject *sendData, vtkSmartPointer< vtkDataObject > *receiveData, int destProcessId) |
GatherV collects arrays in the process with id destProcessId . More... | |
![]() | |
vtkObject () | |
~vtkObject () override | |
void | RegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
void | UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr) |
These methods allow a command to exclusively grab all events. More... | |
void | InternalReleaseFocus () |
These methods allow a command to exclusively grab all events. More... | |
![]() | |
vtkObjectBase () | |
virtual | ~vtkObjectBase () |
virtual void | CollectRevisions (ostream &) |
virtual void | ReportReferences (vtkGarbageCollector *) |
vtkObjectBase (const vtkObjectBase &) | |
void | operator= (const vtkObjectBase &) |
Protected Attributes | |
int | MaximumNumberOfProcesses |
int | NumberOfProcesses |
int | LocalProcessId |
vtkIdType | Count |
![]() | |
bool | Debug |
vtkTimeStamp | MTime |
vtkSubjectHelper * | SubjectHelper |
![]() | |
vtkAtomicInt32 | ReferenceCount |
vtkWeakPointerBase ** | WeakPointers |
Static Protected Attributes | |
static int | UseCopy |
Used to send/receive messages in a multiprocess environment.
This is an abstract class which contains functionality for sending and receiving inter-process messages. It contains methods for marshaling an object into a string (currently used by the MPI communicator but not the shared memory communicator).
Definition at line 50 of file vtkCommunicator.h.
typedef vtkObject vtkCommunicator::Superclass |
Definition at line 55 of file vtkCommunicator.h.
Enumerator | |
---|---|
BROADCAST_TAG | |
GATHER_TAG | |
GATHERV_TAG | |
SCATTER_TAG | |
SCATTERV_TAG | |
REDUCE_TAG | |
BARRIER_TAG |
Definition at line 75 of file vtkCommunicator.h.
Enumerator | |
---|---|
MAX_OP | |
MIN_OP | |
SUM_OP | |
PRODUCT_OP | |
LOGICAL_AND_OP | |
BITWISE_AND_OP | |
LOGICAL_OR_OP | |
BITWISE_OR_OP | |
LOGICAL_XOR_OP | |
BITWISE_XOR_OP |
Definition at line 86 of file vtkCommunicator.h.
|
protected |
|
overrideprotected |
|
static |
|
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 vtkObjectBase.
Reimplemented in vtkMPICommunicator, vtkSocketCommunicator, vtkSubCommunicator, and vtkDummyCommunicator.
|
static |
|
protectedvirtual |
Reimplemented in vtkMPICommunicator, vtkSocketCommunicator, vtkSubCommunicator, and vtkDummyCommunicator.
vtkCommunicator* vtkCommunicator::NewInstance | ( | ) | const |
|
overridevirtual |
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 vtkObject.
Reimplemented in vtkMPICommunicator, vtkSocketCommunicator, vtkSubCommunicator, and vtkDummyCommunicator.
|
virtual |
Set the number of processes you will be using.
This defaults to the maximum number available. If you set this to a value higher than the default, you will get an error.
Reimplemented in vtkSocketCommunicator.
|
virtual |
Set the number of processes you will be using.
This defaults to the maximum number available. If you set this to a value higher than the default, you will get an error.
|
virtual |
Tells you which process [0, NumProcess) you are in.
int vtkCommunicator::Send | ( | vtkDataObject * | data, |
int | remoteHandle, | ||
int | tag | ||
) |
This method sends a data object to a destination.
Tag eliminates ambiguity and is used to match sends to receives.
int vtkCommunicator::Send | ( | vtkDataArray * | data, |
int | remoteHandle, | ||
int | tag | ||
) |
This method sends a data array to a destination.
Tag eliminates ambiguity and is used to match sends to receives.
|
pure virtual |
Subclasses have to supply this method to send various arrays of data.
The type
arg is one of the VTK type constants recognized by the vtkTemplateMacro (VTK_FLOAT, VTK_INT, etc.). length
is measured in number of values (as opposed to number of bytes).
Implemented in vtkSocketCommunicator, vtkMPICommunicator, vtkSubCommunicator, and vtkDummyCommunicator.
Convenience methods for sending data arrays.
Definition at line 156 of file vtkCommunicator.h.
|
inline |
Convenience methods for sending data arrays.
Definition at line 159 of file vtkCommunicator.h.
|
inline |
Convenience methods for sending data arrays.
Definition at line 162 of file vtkCommunicator.h.
|
inline |
Convenience methods for sending data arrays.
Definition at line 165 of file vtkCommunicator.h.
Convenience methods for sending data arrays.
Definition at line 168 of file vtkCommunicator.h.
|
inline |
Convenience methods for sending data arrays.
Definition at line 172 of file vtkCommunicator.h.
|
inline |
Convenience methods for sending data arrays.
Definition at line 176 of file vtkCommunicator.h.
Convenience methods for sending data arrays.
Definition at line 180 of file vtkCommunicator.h.
|
inline |
Convenience methods for sending data arrays.
Definition at line 183 of file vtkCommunicator.h.
|
inline |
Convenience methods for sending data arrays.
Definition at line 186 of file vtkCommunicator.h.
|
inline |
Convenience methods for sending data arrays.
Definition at line 189 of file vtkCommunicator.h.
|
inline |
Convenience methods for sending data arrays.
Definition at line 192 of file vtkCommunicator.h.
|
inline |
Convenience methods for sending data arrays.
Definition at line 195 of file vtkCommunicator.h.
int vtkCommunicator::Send | ( | const vtkMultiProcessStream & | stream, |
int | remoteId, | ||
int | tag | ||
) |
int vtkCommunicator::Receive | ( | vtkDataObject * | data, |
int | remoteHandle, | ||
int | tag | ||
) |
This method receives a data object from a corresponding send.
It blocks until the receive is finished.
vtkDataObject* vtkCommunicator::ReceiveDataObject | ( | int | remoteHandle, |
int | tag | ||
) |
The caller does not have to know the data type before this call is made.
It returns the newly created object.
int vtkCommunicator::Receive | ( | vtkDataArray * | data, |
int | remoteHandle, | ||
int | tag | ||
) |
This method receives a data array from a corresponding send.
It blocks until the receive is finished.
|
pure virtual |
Subclasses have to supply this method to receive various arrays of data.
The type
arg is one of the VTK type constants recognized by the vtkTemplateMacro (VTK_FLOAT, VTK_INT, etc.). maxlength
is measured in number of values (as opposed to number of bytes) and is the maxmum length of the data to receive. If the maxlength is less than the length of the message sent by the sender, an error will be flagged. Once a message is received, use the GetCount() method to determine the actual size of the data received.
Implemented in vtkSocketCommunicator, vtkMPICommunicator, vtkSubCommunicator, and vtkDummyCommunicator.
Convenience methods for receiving data arrays.
Definition at line 237 of file vtkCommunicator.h.
|
inline |
Convenience methods for receiving data arrays.
Definition at line 240 of file vtkCommunicator.h.
|
inline |
Convenience methods for receiving data arrays.
Definition at line 243 of file vtkCommunicator.h.
|
inline |
Convenience methods for receiving data arrays.
Definition at line 246 of file vtkCommunicator.h.
Convenience methods for receiving data arrays.
Definition at line 249 of file vtkCommunicator.h.
|
inline |
Convenience methods for receiving data arrays.
Definition at line 252 of file vtkCommunicator.h.
|
inline |
Convenience methods for receiving data arrays.
Definition at line 256 of file vtkCommunicator.h.
Convenience methods for receiving data arrays.
Definition at line 260 of file vtkCommunicator.h.
|
inline |
Convenience methods for receiving data arrays.
Definition at line 263 of file vtkCommunicator.h.
|
inline |
Convenience methods for receiving data arrays.
Definition at line 266 of file vtkCommunicator.h.
|
inline |
Convenience methods for receiving data arrays.
Definition at line 269 of file vtkCommunicator.h.
|
inline |
Convenience methods for receiving data arrays.
Definition at line 272 of file vtkCommunicator.h.
|
inline |
Convenience methods for receiving data arrays.
Definition at line 275 of file vtkCommunicator.h.
int vtkCommunicator::Receive | ( | vtkMultiProcessStream & | stream, |
int | remoteId, | ||
int | tag | ||
) |
|
virtual |
Returns the number of words received by the most recent Receive().
Note that this is not the number of bytes received, but the number of items of the data-type received by the most recent Receive() eg. if Receive(int*,..) was used, then this returns the number of ints received; if Receive(double*,..) was used, then this returns the number of doubles received etc. The return value is valid only after a successful Receive().
|
virtual |
Will block the processes until all other processes reach the Barrier function.
Reimplemented in vtkMPICommunicator, and vtkSocketCommunicator.
Broadcast sends the array in the process with id srcProcessId
to all of the other processes.
All processes must call these method with the same arguments in order for it to complete.
Definition at line 308 of file vtkCommunicator.h.
Broadcast sends the array in the process with id srcProcessId
to all of the other processes.
All processes must call these method with the same arguments in order for it to complete.
Definition at line 311 of file vtkCommunicator.h.
Broadcast sends the array in the process with id srcProcessId
to all of the other processes.
All processes must call these method with the same arguments in order for it to complete.
Definition at line 314 of file vtkCommunicator.h.
Broadcast sends the array in the process with id srcProcessId
to all of the other processes.
All processes must call these method with the same arguments in order for it to complete.
Definition at line 317 of file vtkCommunicator.h.
Broadcast sends the array in the process with id srcProcessId
to all of the other processes.
All processes must call these method with the same arguments in order for it to complete.
Definition at line 320 of file vtkCommunicator.h.
Broadcast sends the array in the process with id srcProcessId
to all of the other processes.
All processes must call these method with the same arguments in order for it to complete.
Definition at line 323 of file vtkCommunicator.h.
Broadcast sends the array in the process with id srcProcessId
to all of the other processes.
All processes must call these method with the same arguments in order for it to complete.
Definition at line 326 of file vtkCommunicator.h.
Broadcast sends the array in the process with id srcProcessId
to all of the other processes.
All processes must call these method with the same arguments in order for it to complete.
Definition at line 329 of file vtkCommunicator.h.
Broadcast sends the array in the process with id srcProcessId
to all of the other processes.
All processes must call these method with the same arguments in order for it to complete.
Definition at line 332 of file vtkCommunicator.h.
Broadcast sends the array in the process with id srcProcessId
to all of the other processes.
All processes must call these method with the same arguments in order for it to complete.
Definition at line 335 of file vtkCommunicator.h.
Broadcast sends the array in the process with id srcProcessId
to all of the other processes.
All processes must call these method with the same arguments in order for it to complete.
Definition at line 338 of file vtkCommunicator.h.
Broadcast sends the array in the process with id srcProcessId
to all of the other processes.
All processes must call these method with the same arguments in order for it to complete.
Definition at line 341 of file vtkCommunicator.h.
|
inline |
Broadcast sends the array in the process with id srcProcessId
to all of the other processes.
All processes must call these method with the same arguments in order for it to complete.
Definition at line 344 of file vtkCommunicator.h.
int vtkCommunicator::Broadcast | ( | vtkDataObject * | data, |
int | srcProcessId | ||
) |
Broadcast sends the array in the process with id srcProcessId
to all of the other processes.
All processes must call these method with the same arguments in order for it to complete.
int vtkCommunicator::Broadcast | ( | vtkDataArray * | data, |
int | srcProcessId | ||
) |
Broadcast sends the array in the process with id srcProcessId
to all of the other processes.
All processes must call these method with the same arguments in order for it to complete.
int vtkCommunicator::Broadcast | ( | vtkMultiProcessStream & | stream, |
int | srcProcessId | ||
) |
|
inline |
Gather collects arrays in the process with id destProcessId
.
Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length
argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer
(on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter.
Definition at line 363 of file vtkCommunicator.h.
|
inline |
Gather collects arrays in the process with id destProcessId
.
Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length
argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer
(on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter.
Definition at line 368 of file vtkCommunicator.h.
|
inline |
Gather collects arrays in the process with id destProcessId
.
Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length
argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer
(on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter.
Definition at line 373 of file vtkCommunicator.h.
|
inline |
Gather collects arrays in the process with id destProcessId
.
Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length
argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer
(on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter.
Definition at line 378 of file vtkCommunicator.h.
|
inline |
Gather collects arrays in the process with id destProcessId
.
Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length
argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer
(on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter.
Definition at line 383 of file vtkCommunicator.h.
|
inline |
Gather collects arrays in the process with id destProcessId
.
Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length
argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer
(on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter.
Definition at line 388 of file vtkCommunicator.h.
|
inline |
Gather collects arrays in the process with id destProcessId
.
Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length
argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer
(on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter.
Definition at line 393 of file vtkCommunicator.h.
|
inline |
Gather collects arrays in the process with id destProcessId
.
Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length
argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer
(on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter.
Definition at line 398 of file vtkCommunicator.h.
|
inline |
Gather collects arrays in the process with id destProcessId
.
Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length
argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer
(on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter.
Definition at line 403 of file vtkCommunicator.h.
|
inline |
Gather collects arrays in the process with id destProcessId
.
Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length
argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer
(on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter.
Definition at line 408 of file vtkCommunicator.h.
|
inline |
Gather collects arrays in the process with id destProcessId
.
Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length
argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer
(on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter.
Definition at line 413 of file vtkCommunicator.h.
|
inline |
Gather collects arrays in the process with id destProcessId
.
Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length
argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer
(on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter.
Definition at line 418 of file vtkCommunicator.h.
|
inline |
Gather collects arrays in the process with id destProcessId
.
Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length
argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer
(on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter.
Definition at line 423 of file vtkCommunicator.h.
int vtkCommunicator::Gather | ( | vtkDataArray * | sendBuffer, |
vtkDataArray * | recvBuffer, | ||
int | destProcessId | ||
) |
Gather collects arrays in the process with id destProcessId
.
Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The length
argument (which must be the same on all processes) is the length of the sendBuffers. The recvBuffer
(on te destination process) must be of length length*numProcesses. Gather is the inverse operation of Scatter.
int vtkCommunicator::Gather | ( | vtkDataObject * | sendBuffer, |
std::vector< vtkSmartPointer< vtkDataObject > > & | recvBuffer, | ||
int | destProcessId | ||
) |
Gathers vtkDataObject (sendBuffer
) from all ranks to the destProcessId
.
[in] | sendBuffer | - data object to send from local process. Can be null if not sending any data from the current process. |
[out] | recvBuffer | - vector of data objects to receive data on the receiving rank (identified by destProcessId ). This may be empty or filled with data object instances. If empty, data objects will be created as needed. If not empty, existing data object will be used. |
[in] | destProcessId | - process id to gather on. |
|
inline |
GatherV is the vector variant of Gather.
It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength
argument defines how much the local process sends to destProcessId
and recvLengths
is an array containing the amount destProcessId
receives from each process, in rank order.
Definition at line 460 of file vtkCommunicator.h.
|
inline |
GatherV is the vector variant of Gather.
It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength
argument defines how much the local process sends to destProcessId
and recvLengths
is an array containing the amount destProcessId
receives from each process, in rank order.
Definition at line 467 of file vtkCommunicator.h.
|
inline |
GatherV is the vector variant of Gather.
It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength
argument defines how much the local process sends to destProcessId
and recvLengths
is an array containing the amount destProcessId
receives from each process, in rank order.
Definition at line 474 of file vtkCommunicator.h.
|
inline |
GatherV is the vector variant of Gather.
It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength
argument defines how much the local process sends to destProcessId
and recvLengths
is an array containing the amount destProcessId
receives from each process, in rank order.
Definition at line 481 of file vtkCommunicator.h.
|
inline |
GatherV is the vector variant of Gather.
It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength
argument defines how much the local process sends to destProcessId
and recvLengths
is an array containing the amount destProcessId
receives from each process, in rank order.
Definition at line 488 of file vtkCommunicator.h.
|
inline |
GatherV is the vector variant of Gather.
It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength
argument defines how much the local process sends to destProcessId
and recvLengths
is an array containing the amount destProcessId
receives from each process, in rank order.
Definition at line 495 of file vtkCommunicator.h.
|
inline |
GatherV is the vector variant of Gather.
It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength
argument defines how much the local process sends to destProcessId
and recvLengths
is an array containing the amount destProcessId
receives from each process, in rank order.
Definition at line 502 of file vtkCommunicator.h.
|
inline |
GatherV is the vector variant of Gather.
It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength
argument defines how much the local process sends to destProcessId
and recvLengths
is an array containing the amount destProcessId
receives from each process, in rank order.
Definition at line 509 of file vtkCommunicator.h.
|
inline |
GatherV is the vector variant of Gather.
It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength
argument defines how much the local process sends to destProcessId
and recvLengths
is an array containing the amount destProcessId
receives from each process, in rank order.
Definition at line 516 of file vtkCommunicator.h.
|
inline |
GatherV is the vector variant of Gather.
It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength
argument defines how much the local process sends to destProcessId
and recvLengths
is an array containing the amount destProcessId
receives from each process, in rank order.
Definition at line 523 of file vtkCommunicator.h.
|
inline |
GatherV is the vector variant of Gather.
It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength
argument defines how much the local process sends to destProcessId
and recvLengths
is an array containing the amount destProcessId
receives from each process, in rank order.
Definition at line 530 of file vtkCommunicator.h.
|
inline |
GatherV is the vector variant of Gather.
It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength
argument defines how much the local process sends to destProcessId
and recvLengths
is an array containing the amount destProcessId
receives from each process, in rank order.
Definition at line 537 of file vtkCommunicator.h.
|
inline |
GatherV is the vector variant of Gather.
It extends the functionality of Gather by allowing a varying count of data from each process. GatherV collects arrays in the process with id destProcessId
. Each process (including the destination) sends the contents of its send buffer to the destination process. The destination process receives the messages and stores them in rank order. The sendLength
argument defines how much the local process sends to destProcessId
and recvLengths
is an array containing the amount destProcessId
receives from each process, in rank order.
Definition at line 544 of file vtkCommunicator.h.
int vtkCommunicator::GatherV | ( | vtkDataArray * | sendBuffer, |
vtkDataArray * | recvBuffer, | ||
vtkIdType * | recvLengths, | ||
vtkIdType * | offsets, | ||
int | destProcessId | ||
) |
For the first GatherV variant, recvLenghts
and offsets
known on destProcessId
and are passed in as parameters For the second GatherV variant, recvLenghts
and offsets
are not known on destProcessId
.
The recvLenghts
is set using a gather operation and offsets
is computed from recvLenghts
. recvLengths has NumberOfProcesses
elements and has NumberOfProcesses + 1 elements. The third variant is the same as the second variant but it does not expose recvLength
and offsets
int vtkCommunicator::GatherV | ( | vtkDataArray * | sendBuffer, |
vtkDataArray * | recvBuffer, | ||
vtkIdTypeArray * | recvLengths, | ||
vtkIdTypeArray * | offsets, | ||
int | destProcessId | ||
) |
For the first GatherV variant, recvLenghts
and offsets
known on destProcessId
and are passed in as parameters For the second GatherV variant, recvLenghts
and offsets
are not known on destProcessId
.
The recvLenghts
is set using a gather operation and offsets
is computed from recvLenghts
. recvLengths has NumberOfProcesses
elements and has NumberOfProcesses + 1 elements. The third variant is the same as the second variant but it does not expose recvLength
and offsets
int vtkCommunicator::GatherV | ( | vtkDataArray * | sendBuffer, |
vtkDataArray * | recvBuffer, | ||
int | destProcessId | ||
) |
For the first GatherV variant, recvLenghts
and offsets
known on destProcessId
and are passed in as parameters For the second GatherV variant, recvLenghts
and offsets
are not known on destProcessId
.
The recvLenghts
is set using a gather operation and offsets
is computed from recvLenghts
. recvLengths has NumberOfProcesses
elements and has NumberOfProcesses + 1 elements. The third variant is the same as the second variant but it does not expose recvLength
and offsets
int vtkCommunicator::GatherV | ( | vtkDataObject * | sendData, |
vtkSmartPointer< vtkDataObject > * | recvData, | ||
int | destProcessId | ||
) |
Collects data objects in the process with id destProcessId
.
Each process (including the destination) marshals and then sends the data object to the destination process. The destination process unmarshals and then stores the data objects in rank order. The recvData
(on the destination process) must be of length numProcesses.
|
inline |
Scatter takes an array in the process with id srcProcessId
and distributes it.
Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length
values, process 1 receives the second length
values, and so on. Scatter is the inverse operation of Gather.
Definition at line 592 of file vtkCommunicator.h.
|
inline |
Scatter takes an array in the process with id srcProcessId
and distributes it.
Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length
values, process 1 receives the second length
values, and so on. Scatter is the inverse operation of Gather.
Definition at line 597 of file vtkCommunicator.h.
|
inline |
Scatter takes an array in the process with id srcProcessId
and distributes it.
Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length
values, process 1 receives the second length
values, and so on. Scatter is the inverse operation of Gather.
Definition at line 602 of file vtkCommunicator.h.
|
inline |
Scatter takes an array in the process with id srcProcessId
and distributes it.
Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length
values, process 1 receives the second length
values, and so on. Scatter is the inverse operation of Gather.
Definition at line 607 of file vtkCommunicator.h.
|
inline |
Scatter takes an array in the process with id srcProcessId
and distributes it.
Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length
values, process 1 receives the second length
values, and so on. Scatter is the inverse operation of Gather.
Definition at line 612 of file vtkCommunicator.h.
|
inline |
Scatter takes an array in the process with id srcProcessId
and distributes it.
Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length
values, process 1 receives the second length
values, and so on. Scatter is the inverse operation of Gather.
Definition at line 617 of file vtkCommunicator.h.
|
inline |
Scatter takes an array in the process with id srcProcessId
and distributes it.
Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length
values, process 1 receives the second length
values, and so on. Scatter is the inverse operation of Gather.
Definition at line 622 of file vtkCommunicator.h.
|
inline |
Scatter takes an array in the process with id srcProcessId
and distributes it.
Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length
values, process 1 receives the second length
values, and so on. Scatter is the inverse operation of Gather.
Definition at line 627 of file vtkCommunicator.h.
|
inline |
Scatter takes an array in the process with id srcProcessId
and distributes it.
Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length
values, process 1 receives the second length
values, and so on. Scatter is the inverse operation of Gather.
Definition at line 632 of file vtkCommunicator.h.
|
inline |
Scatter takes an array in the process with id srcProcessId
and distributes it.
Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length
values, process 1 receives the second length
values, and so on. Scatter is the inverse operation of Gather.
Definition at line 637 of file vtkCommunicator.h.
|
inline |
Scatter takes an array in the process with id srcProcessId
and distributes it.
Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length
values, process 1 receives the second length
values, and so on. Scatter is the inverse operation of Gather.
Definition at line 642 of file vtkCommunicator.h.
|
inline |
Scatter takes an array in the process with id srcProcessId
and distributes it.
Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length
values, process 1 receives the second length
values, and so on. Scatter is the inverse operation of Gather.
Definition at line 647 of file vtkCommunicator.h.
|
inline |
Scatter takes an array in the process with id srcProcessId
and distributes it.
Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length
values, process 1 receives the second length
values, and so on. Scatter is the inverse operation of Gather.
Definition at line 652 of file vtkCommunicator.h.
int vtkCommunicator::Scatter | ( | vtkDataArray * | sendBuffer, |
vtkDataArray * | recvBuffer, | ||
int | srcProcessId | ||
) |
Scatter takes an array in the process with id srcProcessId
and distributes it.
Each process (including the source) receives a portion of the send buffer. Process 0 receives the first length
values, process 1 receives the second length
values, and so on. Scatter is the inverse operation of Gather.
|
inline |
ScatterV is the vector variant of Scatter.
It extends the functionality of Scatter by allowing a varying count of data to each process. ScatterV takes an array in the process with id srcProcessId
and distributes it. Each process (including the source) receives a portion of the send buffer defined by the sendLengths
and offsets
arrays.
Definition at line 669 of file vtkCommunicator.h.
|
inline |
ScatterV is the vector variant of Scatter.
It extends the functionality of Scatter by allowing a varying count of data to each process. ScatterV takes an array in the process with id srcProcessId
and distributes it. Each process (including the source) receives a portion of the send buffer defined by the sendLengths
and offsets
arrays.
Definition at line 676 of file vtkCommunicator.h.
|
inline |
ScatterV is the vector variant of Scatter.
It extends the functionality of Scatter by allowing a varying count of data to each process. ScatterV takes an array in the process with id srcProcessId
and distributes it. Each process (including the source) receives a portion of the send buffer defined by the sendLengths
and offsets
arrays.
Definition at line 683 of file vtkCommunicator.h.
|
inline |
ScatterV is the vector variant of Scatter.
It extends the functionality of Scatter by allowing a varying count of data to each process. ScatterV takes an array in the process with id srcProcessId
and distributes it. Each process (including the source) receives a portion of the send buffer defined by the sendLengths
and offsets
arrays.
Definition at line 690 of file vtkCommunicator.h.
|
inline |
ScatterV is the vector variant of Scatter.
It extends the functionality of Scatter by allowing a varying count of data to each process. ScatterV takes an array in the process with id srcProcessId
and distributes it. Each process (including the source) receives a portion of the send buffer defined by the sendLengths
and offsets
arrays.
Definition at line 697 of file vtkCommunicator.h.
|
inline |
ScatterV is the vector variant of Scatter.
It extends the functionality of Scatter by allowing a varying count of data to each process. ScatterV takes an array in the process with id srcProcessId
and distributes it. Each process (including the source) receives a portion of the send buffer defined by the sendLengths
and offsets
arrays.
Definition at line 704 of file vtkCommunicator.h.
|
inline |
ScatterV is the vector variant of Scatter.
It extends the functionality of Scatter by allowing a varying count of data to each process. ScatterV takes an array in the process with id srcProcessId
and distributes it. Each process (including the source) receives a portion of the send buffer defined by the sendLengths
and offsets
arrays.
Definition at line 711 of file vtkCommunicator.h.
|
inline |
ScatterV is the vector variant of Scatter.
It extends the functionality of Scatter by allowing a varying count of data to each process. ScatterV takes an array in the process with id srcProcessId
and distributes it. Each process (including the source) receives a portion of the send buffer defined by the sendLengths
and offsets
arrays.
Definition at line 718 of file vtkCommunicator.h.
|
inline |
ScatterV is the vector variant of Scatter.
It extends the functionality of Scatter by allowing a varying count of data to each process. ScatterV takes an array in the process with id srcProcessId
and distributes it. Each process (including the source) receives a portion of the send buffer defined by the sendLengths
and offsets
arrays.
Definition at line 725 of file vtkCommunicator.h.
|
inline |
ScatterV is the vector variant of Scatter.
It extends the functionality of Scatter by allowing a varying count of data to each process. ScatterV takes an array in the process with id srcProcessId
and distributes it. Each process (including the source) receives a portion of the send buffer defined by the sendLengths
and offsets
arrays.
Definition at line 732 of file vtkCommunicator.h.
|
inline |
ScatterV is the vector variant of Scatter.
It extends the functionality of Scatter by allowing a varying count of data to each process. ScatterV takes an array in the process with id srcProcessId
and distributes it. Each process (including the source) receives a portion of the send buffer defined by the sendLengths
and offsets
arrays.
Definition at line 739 of file vtkCommunicator.h.
|
inline |
ScatterV is the vector variant of Scatter.
It extends the functionality of Scatter by allowing a varying count of data to each process. ScatterV takes an array in the process with id srcProcessId
and distributes it. Each process (including the source) receives a portion of the send buffer defined by the sendLengths
and offsets
arrays.
Definition at line 746 of file vtkCommunicator.h.
|
inline |
ScatterV is the vector variant of Scatter.
It extends the functionality of Scatter by allowing a varying count of data to each process. ScatterV takes an array in the process with id srcProcessId
and distributes it. Each process (including the source) receives a portion of the send buffer defined by the sendLengths
and offsets
arrays.
Definition at line 753 of file vtkCommunicator.h.
|
inline |
Same as gather except that the result ends up on all processes.
Definition at line 766 of file vtkCommunicator.h.
|
inline |
Same as gather except that the result ends up on all processes.
Definition at line 769 of file vtkCommunicator.h.
|
inline |
Same as gather except that the result ends up on all processes.
Definition at line 774 of file vtkCommunicator.h.
|
inline |
Same as gather except that the result ends up on all processes.
Definition at line 777 of file vtkCommunicator.h.
|
inline |
Same as gather except that the result ends up on all processes.
Definition at line 782 of file vtkCommunicator.h.
|
inline |
Same as gather except that the result ends up on all processes.
Definition at line 785 of file vtkCommunicator.h.
|
inline |
Same as gather except that the result ends up on all processes.
Definition at line 790 of file vtkCommunicator.h.
|
inline |
Same as gather except that the result ends up on all processes.
Definition at line 795 of file vtkCommunicator.h.
|
inline |
Same as gather except that the result ends up on all processes.
Definition at line 798 of file vtkCommunicator.h.
|
inline |
Same as gather except that the result ends up on all processes.
Definition at line 803 of file vtkCommunicator.h.
|
inline |
Same as gather except that the result ends up on all processes.
Definition at line 806 of file vtkCommunicator.h.
|
inline |
Same as gather except that the result ends up on all processes.
Definition at line 810 of file vtkCommunicator.h.
|
inline |
Same as gather except that the result ends up on all processes.
Definition at line 815 of file vtkCommunicator.h.
int vtkCommunicator::AllGather | ( | vtkDataArray * | sendBuffer, |
vtkDataArray * | recvBuffer | ||
) |
Same as gather except that the result ends up on all processes.
|
inline |
Same as GatherV except that the result is placed in all processes.
Definition at line 827 of file vtkCommunicator.h.
|
inline |
Same as GatherV except that the result is placed in all processes.
Definition at line 834 of file vtkCommunicator.h.
|
inline |
Same as GatherV except that the result is placed in all processes.
Definition at line 841 of file vtkCommunicator.h.
|
inline |
Same as GatherV except that the result is placed in all processes.
Definition at line 848 of file vtkCommunicator.h.
|
inline |
Same as GatherV except that the result is placed in all processes.
Definition at line 855 of file vtkCommunicator.h.
|
inline |
Same as GatherV except that the result is placed in all processes.
Definition at line 862 of file vtkCommunicator.h.
|
inline |
Same as GatherV except that the result is placed in all processes.
Definition at line 869 of file vtkCommunicator.h.
|
inline |
Same as GatherV except that the result is placed in all processes.
Definition at line 876 of file vtkCommunicator.h.
|
inline |
Same as GatherV except that the result is placed in all processes.
Definition at line 883 of file vtkCommunicator.h.
|
inline |
Same as GatherV except that the result is placed in all processes.
Definition at line 890 of file vtkCommunicator.h.
|
inline |
Same as GatherV except that the result is placed in all processes.
Definition at line 897 of file vtkCommunicator.h.
|
inline |
Same as GatherV except that the result is placed in all processes.
Definition at line 904 of file vtkCommunicator.h.
|
inline |
Same as GatherV except that the result is placed in all processes.
Definition at line 911 of file vtkCommunicator.h.
int vtkCommunicator::AllGatherV | ( | vtkDataArray * | sendBuffer, |
vtkDataArray * | recvBuffer, | ||
vtkIdType * | recvLengths, | ||
vtkIdType * | offsets | ||
) |
Same as GatherV except that the result is placed in all processes.
int vtkCommunicator::AllGatherV | ( | vtkDataArray * | sendBuffer, |
vtkDataArray * | recvBuffer | ||
) |
Same as GatherV except that the result is placed in all processes.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation.
Definition at line 929 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation.
Definition at line 934 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation.
Definition at line 939 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation.
Definition at line 944 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation.
Definition at line 949 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation.
Definition at line 954 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation.
Definition at line 959 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation.
Definition at line 964 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation.
Definition at line 969 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation.
Definition at line 974 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation.
Definition at line 979 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation.
Definition at line 984 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation.
Definition at line 989 of file vtkCommunicator.h.
int vtkCommunicator::Reduce | ( | vtkDataArray * | sendBuffer, |
vtkDataArray * | recvBuffer, | ||
int | operation, | ||
int | destProcessId | ||
) |
Reduce an array to the given destination process.
This version of Reduce takes an identifier defined in the vtkCommunicator::StandardOperations enum to define the operation.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes a custom operation as a subclass of vtkCommunicator::Operation.
Definition at line 1003 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes a custom operation as a subclass of vtkCommunicator::Operation.
Definition at line 1008 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes a custom operation as a subclass of vtkCommunicator::Operation.
Definition at line 1013 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes a custom operation as a subclass of vtkCommunicator::Operation.
Definition at line 1018 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes a custom operation as a subclass of vtkCommunicator::Operation.
Definition at line 1023 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes a custom operation as a subclass of vtkCommunicator::Operation.
Definition at line 1028 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes a custom operation as a subclass of vtkCommunicator::Operation.
Definition at line 1033 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes a custom operation as a subclass of vtkCommunicator::Operation.
Definition at line 1038 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes a custom operation as a subclass of vtkCommunicator::Operation.
Definition at line 1043 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes a custom operation as a subclass of vtkCommunicator::Operation.
Definition at line 1048 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes a custom operation as a subclass of vtkCommunicator::Operation.
Definition at line 1053 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes a custom operation as a subclass of vtkCommunicator::Operation.
Definition at line 1058 of file vtkCommunicator.h.
|
inline |
Reduce an array to the given destination process.
This version of Reduce takes a custom operation as a subclass of vtkCommunicator::Operation.
Definition at line 1063 of file vtkCommunicator.h.
int vtkCommunicator::Reduce | ( | vtkDataArray * | sendBuffer, |
vtkDataArray * | recvBuffer, | ||
Operation * | operation, | ||
int | destProcessId | ||
) |
Reduce an array to the given destination process.
This version of Reduce takes a custom operation as a subclass of vtkCommunicator::Operation.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1076 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1081 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1086 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1091 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1096 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1101 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1106 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1111 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1116 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1121 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1126 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1131 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1136 of file vtkCommunicator.h.
int vtkCommunicator::AllReduce | ( | vtkDataArray * | sendBuffer, |
vtkDataArray * | recvBuffer, | ||
int | operation | ||
) |
Same as Reduce except that the result is placed in all of the processes.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1143 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1148 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1153 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1158 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1163 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1168 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1173 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1178 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1183 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1188 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1193 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1198 of file vtkCommunicator.h.
|
inline |
Same as Reduce except that the result is placed in all of the processes.
Definition at line 1203 of file vtkCommunicator.h.
int vtkCommunicator::AllReduce | ( | vtkDataArray * | sendBuffer, |
vtkDataArray * | recvBuffer, | ||
Operation * | operation | ||
) |
Same as Reduce except that the result is placed in all of the processes.
|
virtual |
Subclasses should reimplement these if they have a more efficient implementation.
Reimplemented in vtkMPICommunicator, and vtkSocketCommunicator.
|
virtual |
Subclasses should reimplement these if they have a more efficient implementation.
Reimplemented in vtkMPICommunicator, and vtkSocketCommunicator.
|
virtual |
Subclasses should reimplement these if they have a more efficient implementation.
Reimplemented in vtkMPICommunicator, and vtkSocketCommunicator.
|
virtual |
Subclasses should reimplement these if they have a more efficient implementation.
Reimplemented in vtkMPICommunicator, and vtkSocketCommunicator.
|
virtual |
Subclasses should reimplement these if they have a more efficient implementation.
Reimplemented in vtkMPICommunicator, and vtkSocketCommunicator.
|
virtual |
Subclasses should reimplement these if they have a more efficient implementation.
Reimplemented in vtkMPICommunicator, and vtkSocketCommunicator.
|
virtual |
Subclasses should reimplement these if they have a more efficient implementation.
Reimplemented in vtkMPICommunicator, and vtkSocketCommunicator.
|
virtual |
Subclasses should reimplement these if they have a more efficient implementation.
Reimplemented in vtkMPICommunicator, and vtkSocketCommunicator.
|
virtual |
Subclasses should reimplement these if they have a more efficient implementation.
Reimplemented in vtkMPICommunicator, and vtkSocketCommunicator.
|
virtual |
Subclasses should reimplement these if they have a more efficient implementation.
Reimplemented in vtkMPICommunicator, and vtkSocketCommunicator.
|
virtual |
Subclasses should reimplement these if they have a more efficient implementation.
Reimplemented in vtkMPICommunicator, and vtkSocketCommunicator.
|
static |
|
virtual |
Determine the global bounds for a set of processes.
BBox is initially set (outside of the call to the local bounds of the process and will be modified to be the global bounds - this default implementation views the processors as a heap tree with the root being processId = 0 If either rightHasBounds or leftHasBounds is not 0 then the corresponding int will be set to 1 if the right/left processor has bounds else it will be set to 0 The last three arguments are the tags to be used when performing the operation
Some helper functions when dealing with heap tree - based algorthims - we don't need a function for getting the right processor since it is 1 + theLeftProcessor.
Some helper functions when dealing with heap tree - based algorthims - we don't need a function for getting the right processor since it is 1 + theLeftProcessor.
|
static |
Convert a data object into a string that can be transmitted and vice versa.
Returns 1 for success and 0 for failure. WARNING: This will only work for types that have a vtkDataWriter class.
|
static |
Convert a data object into a string that can be transmitted and vice versa.
Returns 1 for success and 0 for failure. WARNING: This will only work for types that have a vtkDataWriter class.
|
static |
Same as UnMarshalDataObject(vtkCharArray*, vtkDataObject*) except that this method doesn't need to know the type of the data object a priori.
It can deduce that from the contents of the buffer
. May return nullptr data object if buffer
is nullptr or empty.
|
protected |
|
protected |
|
protected |
|
protected |
GatherV collects arrays in the process with id destProcessId
.
Each process (including the destination) sends its sendArray to the destination process. The destination process receives the arrays and stores them in rank order in recvArrays. The recvArays
is an array containing NumberOfProcesses
elements. The recvArray
allocates and manages memory for recvArrays
.
|
protected |
GatherV collects arrays in the process with id destProcessId
.
Each process (including the destination) sends its sendArray to the destination process. The destination process receives the arrays and stores them in rank order in recvArrays. The recvArays
is an array containing NumberOfProcesses
elements. The recvArray
allocates and manages memory for recvArrays
.
|
protected |
|
protected |
|
protected |
|
protected |
Definition at line 1331 of file vtkCommunicator.h.
|
protected |
Definition at line 1332 of file vtkCommunicator.h.
|
protected |
Definition at line 1334 of file vtkCommunicator.h.
|
staticprotected |
Definition at line 1336 of file vtkCommunicator.h.
|
protected |
Definition at line 1338 of file vtkCommunicator.h.