34 #ifndef __vtkCommunicator_h
35 #define __vtkCommunicator_h
37 #include "vtkParallelCoreModule.h"
46 class vtkMultiBlockDataSet;
61 virtual void SetNumberOfProcesses(
int num);
62 vtkGetMacro(NumberOfProcesses,
int);
67 vtkGetMacro(LocalProcessId,
int);
114 virtual void Function(
const void *A,
void *B,
vtkIdType length,
120 virtual int Commutative() = 0;
133 int Send(
vtkDataArray* data,
int remoteHandle,
int tag);
140 virtual int SendVoidArray(
const void *data,
vtkIdType length,
int type,
141 int remoteHandle,
int tag) = 0;
147 return this->SendVoidArray(data, length,
VTK_INT, remoteHandle, tag);
149 int Send(
const unsigned int* data,
vtkIdType length,
int remoteHandle,
int tag) {
150 return this->SendVoidArray(data, length,
VTK_INT, remoteHandle, tag);
153 int remoteHandle,
int tag) {
157 int remoteHandle,
int tag) {
161 return this->SendVoidArray(data, length,
VTK_CHAR, remoteHandle, tag);
164 return this->SendVoidArray(data, length,
VTK_FLOAT, remoteHandle, tag);
167 return this->SendVoidArray(data, length,
VTK_DOUBLE, remoteHandle, tag);
169 #ifdef VTK_USE_64BIT_IDS
171 return this->SendVoidArray(data, length,
VTK_ID_TYPE, remoteHandle, tag);
190 int Receive(
vtkDataArray* data,
int remoteHandle,
int tag);
201 virtual int ReceiveVoidArray(
void *data,
vtkIdType maxlength,
int type,
202 int remoteHandle,
int tag) = 0;
208 return this->ReceiveVoidArray(data, maxlength,
VTK_INT, remoteHandle, tag);
211 return this->ReceiveVoidArray(data, maxlength,
VTK_INT, remoteHandle, tag);
222 return this->ReceiveVoidArray(data, maxlength,
VTK_CHAR, remoteHandle, tag);
225 return this->ReceiveVoidArray(data, maxlength,
VTK_FLOAT, remoteHandle, tag);
228 return this->ReceiveVoidArray(data, maxlength,
VTK_DOUBLE, remoteHandle, tag);
230 #ifdef VTK_USE_64BIT_IDS
232 return this->ReceiveVoidArray(data, maxlength,
VTK_ID_TYPE, remoteHandle, tag);
255 virtual void Barrier();
262 return this->BroadcastVoidArray(data, length,
VTK_INT, srcProcessId);
265 return this->BroadcastVoidArray(data, length,
VTK_UNSIGNED_INT, srcProcessId);
274 return this->BroadcastVoidArray(data, length,
VTK_CHAR, srcProcessId);
277 return this->BroadcastVoidArray(data, length,
VTK_FLOAT, srcProcessId);
280 return this->BroadcastVoidArray(data, length,
VTK_DOUBLE, srcProcessId);
282 #ifdef VTK_USE_64BIT_IDS
284 return this->BroadcastVoidArray(data, length,
VTK_ID_TYPE, srcProcessId);
303 int Gather(
const int *sendBuffer,
int *recvBuffer,
305 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
308 int Gather(
const unsigned long *sendBuffer,
unsigned long *recvBuffer,
310 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
313 int Gather(
const unsigned char *sendBuffer,
unsigned char *recvBuffer,
315 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
318 int Gather(
const char *sendBuffer,
char *recvBuffer,
320 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
323 int Gather(
const float *sendBuffer,
float *recvBuffer,
325 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
328 int Gather(
const double *sendBuffer,
double *recvBuffer,
330 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
333 #ifdef VTK_USE_64BIT_IDS
336 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
355 int GatherV(
const int* sendBuffer,
int* recvBuffer,
358 return this->GatherVVoidArray(sendBuffer, recvBuffer,
359 sendLength, recvLengths,
360 offsets,
VTK_INT, destProcessId);
362 int GatherV(
const unsigned long* sendBuffer,
unsigned long* recvBuffer,
365 return this->GatherVVoidArray(sendBuffer, recvBuffer,
366 sendLength, recvLengths,
369 int GatherV(
const unsigned char* sendBuffer,
unsigned char* recvBuffer,
372 return this->GatherVVoidArray(sendBuffer, recvBuffer,
373 sendLength, recvLengths,
376 int GatherV(
const char* sendBuffer,
char* recvBuffer,
379 return this->GatherVVoidArray(sendBuffer, recvBuffer,
380 sendLength, recvLengths,
383 int GatherV(
const float* sendBuffer,
float* recvBuffer,
386 return this->GatherVVoidArray(sendBuffer, recvBuffer,
387 sendLength, recvLengths,
390 int GatherV(
const double* sendBuffer,
double* recvBuffer,
393 return this->GatherVVoidArray(sendBuffer, recvBuffer,
394 sendLength, recvLengths,
397 #ifdef VTK_USE_64BIT_IDS
401 return this->GatherVVoidArray(sendBuffer, recvBuffer,
402 sendLength, recvLengths,
418 int Scatter(
const int *sendBuffer,
int *recvBuffer,
420 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
423 int Scatter(
const unsigned long *sendBuffer,
unsigned long *recvBuffer,
425 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
428 int Scatter(
const unsigned char *sendBuffer,
unsigned char *recvBuffer,
430 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
433 int Scatter(
const char *sendBuffer,
char *recvBuffer,
435 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
438 int Scatter(
const float *sendBuffer,
float *recvBuffer,
440 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
443 int Scatter(
const double *sendBuffer,
double *recvBuffer,
445 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
448 #ifdef VTK_USE_64BIT_IDS
451 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
466 int ScatterV(
const int *sendBuffer,
int *recvBuffer,
468 vtkIdType recvLength,
int srcProcessId) {
469 return this->ScatterVVoidArray(sendBuffer, recvBuffer,
470 sendLengths, offsets, recvLength,
473 int ScatterV(
const unsigned long *sendBuffer,
unsigned long *recvBuffer,
475 vtkIdType recvLength,
int srcProcessId) {
476 return this->ScatterVVoidArray(sendBuffer, recvBuffer,
477 sendLengths, offsets, recvLength,
480 int ScatterV(
const unsigned char *sendBuffer,
unsigned char *recvBuffer,
482 vtkIdType recvLength,
int srcProcessId) {
483 return this->ScatterVVoidArray(sendBuffer, recvBuffer,
484 sendLengths, offsets, recvLength,
487 int ScatterV(
const char *sendBuffer,
char *recvBuffer,
489 vtkIdType recvLength,
int srcProcessId) {
490 return this->ScatterVVoidArray(sendBuffer, recvBuffer,
491 sendLengths, offsets, recvLength,
494 int ScatterV(
const float *sendBuffer,
float *recvBuffer,
496 vtkIdType recvLength,
int srcProcessId) {
497 return this->ScatterVVoidArray(sendBuffer, recvBuffer,
498 sendLengths, offsets, recvLength,
501 int ScatterV(
const double *sendBuffer,
double *recvBuffer,
503 vtkIdType recvLength,
int srcProcessId) {
504 return this->ScatterVVoidArray(sendBuffer, recvBuffer,
505 sendLengths, offsets, recvLength,
508 #ifdef VTK_USE_64BIT_IDS
511 vtkIdType recvLength,
int srcProcessId) {
512 return this->ScatterVVoidArray(sendBuffer, recvBuffer,
513 sendLengths, offsets, recvLength,
522 return this->AllGatherVoidArray(sendBuffer, recvBuffer, length,
VTK_INT);
525 unsigned long *recvBuffer,
vtkIdType length) {
526 return this->AllGatherVoidArray(sendBuffer, recvBuffer, length,
530 unsigned char *recvBuffer,
vtkIdType length) {
531 return this->AllGatherVoidArray(sendBuffer, recvBuffer, length,
535 return this->AllGatherVoidArray(sendBuffer, recvBuffer, length,
VTK_CHAR);
538 return this->AllGatherVoidArray(sendBuffer, recvBuffer, length,
VTK_FLOAT);
542 return this->AllGatherVoidArray(sendBuffer, recvBuffer, length,
VTK_DOUBLE);
544 #ifdef VTK_USE_64BIT_IDS
547 return this->AllGatherVoidArray(sendBuffer, recvBuffer, length,
559 return this->AllGatherVVoidArray(sendBuffer, recvBuffer,
560 sendLength, recvLengths,
563 int AllGatherV(
const unsigned long* sendBuffer,
unsigned long* recvBuffer,
566 return this->AllGatherVVoidArray(sendBuffer, recvBuffer,
567 sendLength, recvLengths,
570 int AllGatherV(
const unsigned char* sendBuffer,
unsigned char* recvBuffer,
573 return this->AllGatherVVoidArray(sendBuffer, recvBuffer,
574 sendLength, recvLengths,
580 return this->AllGatherVVoidArray(sendBuffer, recvBuffer,
581 sendLength, recvLengths,
587 return this->AllGatherVVoidArray(sendBuffer, recvBuffer,
588 sendLength, recvLengths,
594 return this->AllGatherVVoidArray(sendBuffer, recvBuffer,
595 sendLength, recvLengths,
598 #ifdef VTK_USE_64BIT_IDS
602 return this->AllGatherVVoidArray(sendBuffer, recvBuffer,
603 sendLength, recvLengths,
616 int Reduce(
const int *sendBuffer,
int *recvBuffer,
617 vtkIdType length,
int operation,
int destProcessId) {
618 return this->ReduceVoidArray(sendBuffer, recvBuffer, length,
619 VTK_INT, operation, destProcessId);
621 int Reduce(
const unsigned int *sendBuffer,
unsigned int *recvBuffer,
622 vtkIdType length,
int operation,
int destProcessId) {
623 return this->ReduceVoidArray(sendBuffer, recvBuffer, length,
626 int Reduce(
const unsigned long *sendBuffer,
unsigned long *recvBuffer,
627 vtkIdType length,
int operation,
int destProcessId) {
628 return this->ReduceVoidArray(sendBuffer, recvBuffer, length,
631 int Reduce(
const unsigned char *sendBuffer,
unsigned char *recvBuffer,
632 vtkIdType length,
int operation,
int destProcessId) {
633 return this->ReduceVoidArray(sendBuffer, recvBuffer, length,
636 int Reduce(
const char *sendBuffer,
char *recvBuffer,
637 vtkIdType length,
int operation,
int destProcessId) {
638 return this->ReduceVoidArray(sendBuffer, recvBuffer, length,
639 VTK_CHAR, operation, destProcessId);
641 int Reduce(
const float *sendBuffer,
float *recvBuffer,
642 vtkIdType length,
int operation,
int destProcessId) {
643 return this->ReduceVoidArray(sendBuffer, recvBuffer, length,
646 int Reduce(
const double *sendBuffer,
double *recvBuffer,
647 vtkIdType length,
int operation,
int destProcessId) {
648 return this->ReduceVoidArray(sendBuffer, recvBuffer, length,
651 #ifdef VTK_USE_64BIT_IDS
653 vtkIdType length,
int operation,
int destProcessId) {
654 return this->ReduceVoidArray(sendBuffer, recvBuffer, length,
659 int operation,
int destProcessId);
666 int Reduce(
const int *sendBuffer,
int *recvBuffer,
668 return this->ReduceVoidArray(sendBuffer, recvBuffer, length,
669 VTK_INT, operation, destProcessId);
671 int Reduce(
const unsigned long *sendBuffer,
unsigned long *recvBuffer,
673 return this->ReduceVoidArray(sendBuffer, recvBuffer, length,
676 int Reduce(
const unsigned char *sendBuffer,
unsigned char *recvBuffer,
678 return this->ReduceVoidArray(sendBuffer, recvBuffer, length,
681 int Reduce(
const char *sendBuffer,
char *recvBuffer,
683 return this->ReduceVoidArray(sendBuffer, recvBuffer, length,
684 VTK_CHAR, operation, destProcessId);
686 int Reduce(
const float *sendBuffer,
float *recvBuffer,
688 return this->ReduceVoidArray(sendBuffer, recvBuffer, length,
691 int Reduce(
const double *sendBuffer,
double *recvBuffer,
693 return this->ReduceVoidArray(sendBuffer, recvBuffer, length,
696 #ifdef VTK_USE_64BIT_IDS
698 vtkIdType length, Operation *operation,
int destProcessId) {
699 return this->ReduceVoidArray(sendBuffer, recvBuffer, length,
704 Operation *operation,
int destProcessId);
712 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
715 int AllReduce(
const unsigned long *sendBuffer,
unsigned long *recvBuffer,
717 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
720 int AllReduce(
const unsigned char *sendBuffer,
unsigned char *recvBuffer,
722 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
727 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
730 int AllReduce(
const float *sendBuffer,
float *recvBuffer,
732 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
735 int AllReduce(
const double *sendBuffer,
double *recvBuffer,
737 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
740 #ifdef VTK_USE_64BIT_IDS
743 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
751 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
754 int AllReduce(
const unsigned long *sendBuffer,
unsigned long *recvBuffer,
756 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
759 int AllReduce(
const unsigned char *sendBuffer,
unsigned char *recvBuffer,
761 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
766 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
769 int AllReduce(
const float *sendBuffer,
float *recvBuffer,
771 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
774 int AllReduce(
const double *sendBuffer,
double *recvBuffer,
776 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
779 #ifdef VTK_USE_64BIT_IDS
781 vtkIdType length, Operation *operation) {
782 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
787 Operation *operation);
793 virtual int BroadcastVoidArray(
void *data,
vtkIdType length,
int type,
795 virtual int GatherVoidArray(
const void *sendBuffer,
void *recvBuffer,
796 vtkIdType length,
int type,
int destProcessId);
797 virtual int GatherVVoidArray(
const void *sendBuffer,
void *recvBuffer,
799 vtkIdType *offsets,
int type,
int destProcessId);
800 virtual int ScatterVoidArray(
const void *sendBuffer,
void *recvBuffer,
801 vtkIdType length,
int type,
int srcProcessId);
802 virtual int ScatterVVoidArray(
const void *sendBuffer,
void *recvBuffer,
806 virtual int AllGatherVoidArray(
const void *sendBuffer,
void *recvBuffer,
808 virtual int AllGatherVVoidArray(
const void *sendBuffer,
void *recvBuffer,
811 virtual int ReduceVoidArray(
const void *sendBuffer,
void *recvBuffer,
813 int operation,
int destProcessId);
814 virtual int ReduceVoidArray(
const void *sendBuffer,
void *recvBuffer,
816 Operation *operation,
int destProcessId);
817 virtual int AllReduceVoidArray(
const void *sendBuffer,
void *recvBuffer,
820 virtual int AllReduceVoidArray(
const void *sendBuffer,
void *recvBuffer,
822 Operation *operation);
825 static void SetUseCopy(
int useCopy);
837 virtual int ComputeGlobalBounds(
int processorId,
int numProcesses,
839 int *rightHasBounds = 0,
840 int *leftHasBounds = 0,
841 int hasBoundsTag = 288402,
842 int localBoundsTag = 288403,
843 int globalBoundsTag = 288404);
851 static int GetParentProcessor(
int pid);
852 static int GetLeftChildProcessor(
int pid);
872 int SendElementalDataObject(
vtkDataObject* data,
int remoteHandle,
int tag);
873 int SendMultiBlockDataSet(vtkMultiBlockDataSet* data,
int remoteHandle,
int tag);
875 int remoteHandle,
int tag,
int type=-1);
877 int remoteHandle,
int tag);
878 int ReceiveMultiBlockDataSet(
879 vtkMultiBlockDataSet* data,
int remoteHandle,
int tag);
895 #endif // __vtkCommunicator_h
int Receive(double *data, vtkIdType maxlength, int remoteHandle, int tag)
int Receive(unsigned int *data, vtkIdType maxlength, int remoteHandle, int tag)
int AllGather(const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType length)
int Broadcast(float *data, vtkIdType length, int srcProcessId)
int AllReduce(const char *sendBuffer, char *recvBuffer, vtkIdType length, Operation *operation)
int Gather(const int *sendBuffer, int *recvBuffer, vtkIdType length, int destProcessId)
int GatherV(const double *sendBuffer, double *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId)
int AllReduce(const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType length, int operation)
int ScatterV(const double *sendBuffer, double *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId)
int AllReduce(const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType length, int operation)
int Send(const int *data, vtkIdType length, int remoteHandle, int tag)
abstract base class for most VTK objects
int Receive(unsigned char *data, vtkIdType maxlength, int remoteHandle, int tag)
int Scatter(const double *sendBuffer, double *recvBuffer, vtkIdType length, int srcProcessId)
stream used to pass data across processes using vtkMultiProcessController.
int GatherV(const char *sendBuffer, char *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId)
int Gather(const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType length, int destProcessId)
int AllReduce(const double *sendBuffer, double *recvBuffer, vtkIdType length, Operation *operation)
int AllReduce(const float *sendBuffer, float *recvBuffer, vtkIdType length, Operation *operation)
int Reduce(const float *sendBuffer, float *recvBuffer, vtkIdType length, int operation, int destProcessId)
int Reduce(const double *sendBuffer, double *recvBuffer, vtkIdType length, Operation *operation, int destProcessId)
int Reduce(const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType length, Operation *operation, int destProcessId)
int ScatterV(const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId)
int Send(const float *data, vtkIdType length, int remoteHandle, int tag)
int Scatter(const char *sendBuffer, char *recvBuffer, vtkIdType length, int srcProcessId)
int Reduce(const int *sendBuffer, int *recvBuffer, vtkIdType length, Operation *operation, int destProcessId)
int AllGatherV(const int *sendBuffer, int *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets)
int AllReduce(const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType length, Operation *operation)
int Broadcast(char *data, vtkIdType length, int srcProcessId)
int AllGather(const double *sendBuffer, double *recvBuffer, vtkIdType length)
int MaximumNumberOfProcesses
int Send(const double *data, vtkIdType length, int remoteHandle, int tag)
int ScatterV(const int *sendBuffer, int *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId)
int Reduce(const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType length, int operation, int destProcessId)
int Scatter(const float *sendBuffer, float *recvBuffer, vtkIdType length, int srcProcessId)
int AllReduce(const char *sendBuffer, char *recvBuffer, vtkIdType length, int operation)
int ScatterV(const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId)
dynamic, self-adjusting array of char
int Gather(const double *sendBuffer, double *recvBuffer, vtkIdType length, int destProcessId)
int Receive(char *data, vtkIdType maxlength, int remoteHandle, int tag)
int Send(const unsigned int *data, vtkIdType length, int remoteHandle, int tag)
virtual void PrintSelf(ostream &os, vtkIndent indent)
int AllGatherV(const float *sendBuffer, float *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets)
int Reduce(const float *sendBuffer, float *recvBuffer, vtkIdType length, Operation *operation, int destProcessId)
a simple class to control print indentation
int ScatterV(const char *sendBuffer, char *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId)
int AllGatherV(const char *sendBuffer, char *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets)
abstract superclass for arrays of numeric data
int AllGather(const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType length)
int Reduce(const int *sendBuffer, int *recvBuffer, vtkIdType length, int operation, int destProcessId)
int AllReduce(const double *sendBuffer, double *recvBuffer, vtkIdType length, int operation)
int AllGather(const float *sendBuffer, float *recvBuffer, vtkIdType length)
int AllReduce(const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType length, Operation *operation)
int Send(const unsigned long *data, vtkIdType length, int remoteHandle, int tag)
int Gather(const char *sendBuffer, char *recvBuffer, vtkIdType length, int destProcessId)
int AllGatherV(const double *sendBuffer, double *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets)
int Scatter(const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType length, int srcProcessId)
int Gather(const float *sendBuffer, float *recvBuffer, vtkIdType length, int destProcessId)
int AllGatherV(const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets)
int Reduce(const unsigned int *sendBuffer, unsigned int *recvBuffer, vtkIdType length, int operation, int destProcessId)
int GatherV(const int *sendBuffer, int *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId)
int Broadcast(unsigned long *data, vtkIdType length, int srcProcessId)
int Reduce(const char *sendBuffer, char *recvBuffer, vtkIdType length, Operation *operation, int destProcessId)
int Scatter(const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType length, int srcProcessId)
int AllGatherV(const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets)
int AllGather(const int *sendBuffer, int *recvBuffer, vtkIdType length)
int Broadcast(double *data, vtkIdType length, int srcProcessId)
int AllReduce(const int *sendBuffer, int *recvBuffer, vtkIdType length, Operation *operation)
int Reduce(const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType length, Operation *operation, int destProcessId)
int Receive(float *data, vtkIdType maxlength, int remoteHandle, int tag)
int Send(const unsigned char *data, vtkIdType length, int remoteHandle, int tag)
#define VTK_UNSIGNED_CHAR
int ScatterV(const float *sendBuffer, float *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId)
int Gather(const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType length, int destProcessId)
int Reduce(const char *sendBuffer, char *recvBuffer, vtkIdType length, int operation, int destProcessId)
int AllReduce(const float *sendBuffer, float *recvBuffer, vtkIdType length, int operation)
int Receive(int *data, vtkIdType maxlength, int remoteHandle, int tag)
int GatherV(const float *sendBuffer, float *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId)
int Reduce(const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType length, int operation, int destProcessId)
int Broadcast(unsigned char *data, vtkIdType length, int srcProcessId)
#define VTK_UNSIGNED_LONG
int Receive(unsigned long *data, vtkIdType maxlength, int remoteHandle, int tag)
int Broadcast(int *data, vtkIdType length, int srcProcessId)
int GatherV(const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId)
int AllGather(const char *sendBuffer, char *recvBuffer, vtkIdType length)
Used to send/receive messages in a multiprocess environment.
int Scatter(const int *sendBuffer, int *recvBuffer, vtkIdType length, int srcProcessId)
general representation of visualization data
int GatherV(const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId)
int Send(const char *data, vtkIdType length, int remoteHandle, int tag)
int AllReduce(const int *sendBuffer, int *recvBuffer, vtkIdType length, int operation)
int Broadcast(unsigned int *data, vtkIdType length, int srcProcessId)
Fast Simple Class for dealing with 3D bounds.
int Reduce(const double *sendBuffer, double *recvBuffer, vtkIdType length, int operation, int destProcessId)