23 #ifndef vtkCommunicator_h
24 #define vtkCommunicator_h
27 #include "vtkParallelCoreModule.h"
31 VTK_ABI_NAMESPACE_BEGIN
55 virtual void SetNumberOfProcesses(
int num);
56 vtkGetMacro(NumberOfProcesses,
int);
63 vtkGetMacro(LocalProcessId,
int);
109 virtual void Function(
const void* A,
void* B,
vtkIdType length,
int datatype) = 0;
115 virtual int Commutative() = 0;
140 virtual int SendVoidArray(
149 return this->SendVoidArray(data, length,
VTK_INT, remoteHandle, tag);
153 return this->SendVoidArray(data, length,
VTK_INT, remoteHandle, tag);
157 return this->SendVoidArray(data, length,
VTK_SHORT, remoteHandle, tag);
165 return this->SendVoidArray(data, length,
VTK_LONG, remoteHandle, tag);
177 return this->SendVoidArray(data, length,
VTK_CHAR, remoteHandle, tag);
181 return this->SendVoidArray(data, length,
VTK_SIGNED_CHAR, remoteHandle, tag);
185 return this->SendVoidArray(data, length,
VTK_FLOAT, remoteHandle, tag);
189 return this->SendVoidArray(data, length,
VTK_DOUBLE, remoteHandle, tag);
193 return this->SendVoidArray(data, length,
VTK_LONG_LONG, remoteHandle, tag);
231 virtual int ReceiveVoidArray(
240 return this->ReceiveVoidArray(data, maxlength,
VTK_INT, remoteHandle, tag);
244 return this->ReceiveVoidArray(data, maxlength,
VTK_INT, remoteHandle, tag);
248 return this->ReceiveVoidArray(data, maxlength,
VTK_SHORT, remoteHandle, tag);
252 return this->ReceiveVoidArray(data, maxlength,
VTK_UNSIGNED_SHORT, remoteHandle, tag);
256 return this->ReceiveVoidArray(data, maxlength,
VTK_LONG, remoteHandle, tag);
260 return this->ReceiveVoidArray(data, maxlength,
VTK_UNSIGNED_LONG, remoteHandle, tag);
264 return this->ReceiveVoidArray(data, maxlength,
VTK_UNSIGNED_CHAR, remoteHandle, tag);
268 return this->ReceiveVoidArray(data, maxlength,
VTK_CHAR, remoteHandle, tag);
272 return this->ReceiveVoidArray(data, maxlength,
VTK_SIGNED_CHAR, remoteHandle, tag);
276 return this->ReceiveVoidArray(data, maxlength,
VTK_FLOAT, remoteHandle, tag);
280 return this->ReceiveVoidArray(data, maxlength,
VTK_DOUBLE, remoteHandle, tag);
284 return this->ReceiveVoidArray(data, maxlength,
VTK_LONG_LONG, remoteHandle, tag);
311 virtual int AllToAllVVoidArray(
const void* sendBuffer,
const int* sendCounts,
312 const int* sendOffsets,
void* recvBuffer,
const int* recvCounts,
const int* recvOffsets,
319 virtual void Barrier();
329 return this->BroadcastVoidArray(data, length,
VTK_INT, srcProcessId);
333 return this->BroadcastVoidArray(data, length,
VTK_UNSIGNED_INT, srcProcessId);
337 return this->BroadcastVoidArray(data, length,
VTK_SHORT, srcProcessId);
345 return this->BroadcastVoidArray(data, length,
VTK_LONG, srcProcessId);
357 return this->BroadcastVoidArray(data, length,
VTK_CHAR, srcProcessId);
361 return this->BroadcastVoidArray(data, length,
VTK_SIGNED_CHAR, srcProcessId);
365 return this->BroadcastVoidArray(data, length,
VTK_FLOAT, srcProcessId);
369 return this->BroadcastVoidArray(data, length,
VTK_DOUBLE, srcProcessId);
373 return this->BroadcastVoidArray(data, length,
VTK_LONG_LONG, srcProcessId);
397 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
VTK_INT, destProcessId);
400 const unsigned int* sendBuffer,
unsigned int* recvBuffer,
vtkIdType length,
int destProcessId)
402 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_INT, destProcessId);
406 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
VTK_SHORT, destProcessId);
411 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_SHORT, destProcessId);
415 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
VTK_LONG, destProcessId);
418 const unsigned long* sendBuffer,
unsigned long* recvBuffer,
vtkIdType length,
int destProcessId)
420 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_LONG, destProcessId);
423 const unsigned char* sendBuffer,
unsigned char* recvBuffer,
vtkIdType length,
int destProcessId)
425 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_CHAR, destProcessId);
429 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
VTK_CHAR, destProcessId);
432 const signed char* sendBuffer,
signed char* recvBuffer,
vtkIdType length,
int destProcessId)
434 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
VTK_SIGNED_CHAR, destProcessId);
438 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
VTK_FLOAT, destProcessId);
442 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
VTK_DOUBLE, destProcessId);
445 const long long* sendBuffer,
long long* recvBuffer,
vtkIdType length,
int destProcessId)
447 return this->GatherVoidArray(sendBuffer, recvBuffer, length,
VTK_LONG_LONG, destProcessId);
452 return this->GatherVoidArray(
483 std::vector<vtkMultiProcessStream>& recvBuffer,
int destProcessId);
500 return this->GatherVVoidArray(
501 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_INT, destProcessId);
503 int GatherV(
const unsigned int* sendBuffer,
unsigned int* recvBuffer,
vtkIdType sendLength,
506 return this->GatherVVoidArray(
507 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_UNSIGNED_INT, destProcessId);
512 return this->GatherVVoidArray(
513 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_SHORT, destProcessId);
515 int GatherV(
const unsigned short* sendBuffer,
unsigned short* recvBuffer,
vtkIdType sendLength,
518 return this->GatherVVoidArray(
519 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_UNSIGNED_SHORT, destProcessId);
524 return this->GatherVVoidArray(
525 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_LONG, destProcessId);
527 int GatherV(
const unsigned long* sendBuffer,
unsigned long* recvBuffer,
vtkIdType sendLength,
530 return this->GatherVVoidArray(
531 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_UNSIGNED_LONG, destProcessId);
533 int GatherV(
const unsigned char* sendBuffer,
unsigned char* recvBuffer,
vtkIdType sendLength,
536 return this->GatherVVoidArray(
537 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_UNSIGNED_CHAR, destProcessId);
542 return this->GatherVVoidArray(
543 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_CHAR, destProcessId);
548 return this->GatherVVoidArray(
549 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_SIGNED_CHAR, destProcessId);
554 return this->GatherVVoidArray(
555 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_FLOAT, destProcessId);
560 return this->GatherVVoidArray(
561 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_DOUBLE, destProcessId);
566 return this->GatherVVoidArray(
567 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_LONG_LONG, destProcessId);
569 int GatherV(
const unsigned long long* sendBuffer,
unsigned long long* recvBuffer,
572 return this->GatherVVoidArray(sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
619 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
VTK_INT, srcProcessId);
622 const unsigned int* sendBuffer,
unsigned int* recvBuffer,
vtkIdType length,
int srcProcessId)
624 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_INT, srcProcessId);
628 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
VTK_SHORT, srcProcessId);
633 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_SHORT, srcProcessId);
637 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
VTK_INT, srcProcessId);
640 const unsigned long* sendBuffer,
unsigned long* recvBuffer,
vtkIdType length,
int srcProcessId)
642 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_LONG, srcProcessId);
645 const unsigned char* sendBuffer,
unsigned char* recvBuffer,
vtkIdType length,
int srcProcessId)
647 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_CHAR, srcProcessId);
651 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
VTK_CHAR, srcProcessId);
654 const signed char* sendBuffer,
signed char* recvBuffer,
vtkIdType length,
int srcProcessId)
656 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
VTK_SIGNED_CHAR, srcProcessId);
660 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
VTK_FLOAT, srcProcessId);
664 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
VTK_DOUBLE, srcProcessId);
667 const long long* sendBuffer,
long long* recvBuffer,
vtkIdType length,
int srcProcessId)
669 return this->ScatterVoidArray(sendBuffer, recvBuffer, length,
VTK_LONG_LONG, srcProcessId);
671 int Scatter(
const unsigned long long* sendBuffer,
unsigned long long* recvBuffer,
674 return this->ScatterVoidArray(
691 return this->ScatterVVoidArray(
692 sendBuffer, recvBuffer, sendLengths, offsets, recvLength,
VTK_INT, srcProcessId);
697 return this->ScatterVVoidArray(
698 sendBuffer, recvBuffer, sendLengths, offsets, recvLength,
VTK_UNSIGNED_INT, srcProcessId);
703 return this->ScatterVVoidArray(
704 sendBuffer, recvBuffer, sendLengths, offsets, recvLength,
VTK_SHORT, srcProcessId);
706 int ScatterV(
const unsigned short* sendBuffer,
unsigned short* recvBuffer,
vtkIdType* sendLengths,
709 return this->ScatterVVoidArray(
710 sendBuffer, recvBuffer, sendLengths, offsets, recvLength,
VTK_UNSIGNED_SHORT, srcProcessId);
715 return this->ScatterVVoidArray(
716 sendBuffer, recvBuffer, sendLengths, offsets, recvLength,
VTK_LONG, srcProcessId);
718 int ScatterV(
const unsigned long* sendBuffer,
unsigned long* recvBuffer,
vtkIdType* sendLengths,
721 return this->ScatterVVoidArray(
722 sendBuffer, recvBuffer, sendLengths, offsets, recvLength,
VTK_UNSIGNED_LONG, srcProcessId);
724 int ScatterV(
const unsigned char* sendBuffer,
unsigned char* recvBuffer,
vtkIdType* sendLengths,
727 return this->ScatterVVoidArray(
728 sendBuffer, recvBuffer, sendLengths, offsets, recvLength,
VTK_UNSIGNED_CHAR, srcProcessId);
733 return this->ScatterVVoidArray(
734 sendBuffer, recvBuffer, sendLengths, offsets, recvLength,
VTK_CHAR, srcProcessId);
739 return this->ScatterVVoidArray(
740 sendBuffer, recvBuffer, sendLengths, offsets, recvLength,
VTK_SIGNED_CHAR, srcProcessId);
745 return this->ScatterVVoidArray(
746 sendBuffer, recvBuffer, sendLengths, offsets, recvLength,
VTK_FLOAT, srcProcessId);
751 return this->ScatterVVoidArray(
752 sendBuffer, recvBuffer, sendLengths, offsets, recvLength,
VTK_DOUBLE, srcProcessId);
757 return this->ScatterVVoidArray(
758 sendBuffer, recvBuffer, sendLengths, offsets, recvLength,
VTK_LONG_LONG, srcProcessId);
760 int ScatterV(
const unsigned long long* sendBuffer,
unsigned long long* recvBuffer,
763 return this->ScatterVVoidArray(sendBuffer, recvBuffer, sendLengths, offsets, recvLength,
774 return this->AllGatherVoidArray(sendBuffer, recvBuffer, length,
VTK_INT);
778 return this->AllGatherVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_INT);
782 return this->AllGatherVoidArray(sendBuffer, recvBuffer, length,
VTK_SHORT);
790 return this->AllGatherVoidArray(sendBuffer, recvBuffer, length,
VTK_LONG);
794 return this->AllGatherVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_LONG);
798 return this->AllGatherVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_CHAR);
802 return this->AllGatherVoidArray(sendBuffer, recvBuffer, length,
VTK_CHAR);
806 return this->AllGatherVoidArray(sendBuffer, recvBuffer, length,
VTK_SIGNED_CHAR);
810 return this->AllGatherVoidArray(sendBuffer, recvBuffer, length,
VTK_FLOAT);
814 return this->AllGatherVoidArray(sendBuffer, recvBuffer, length,
VTK_DOUBLE);
818 return this->AllGatherVoidArray(sendBuffer, recvBuffer, length,
VTK_LONG_LONG);
821 const unsigned long long* sendBuffer,
unsigned long long* recvBuffer,
vtkIdType length)
849 return this->AllGatherVVoidArray(
850 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_INT);
855 return this->AllGatherVVoidArray(
856 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_UNSIGNED_INT);
861 return this->AllGatherVVoidArray(
862 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_SHORT);
867 return this->AllGatherVVoidArray(
873 return this->AllGatherVVoidArray(
874 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_LONG);
879 return this->AllGatherVVoidArray(
885 return this->AllGatherVVoidArray(
891 return this->AllGatherVVoidArray(
892 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_CHAR);
897 return this->AllGatherVVoidArray(
903 return this->AllGatherVVoidArray(
904 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_FLOAT);
909 return this->AllGatherVVoidArray(
910 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_DOUBLE);
915 return this->AllGatherVVoidArray(
916 sendBuffer, recvBuffer, sendLength, recvLengths, offsets,
VTK_LONG_LONG);
918 int AllGatherV(
const unsigned long long* sendBuffer,
unsigned long long* recvBuffer,
921 return this->AllGatherVVoidArray(
936 const int* sendBuffer,
int* recvBuffer,
vtkIdType length,
int operation,
int destProcessId)
938 return this->ReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_INT, operation, destProcessId);
941 int operation,
int destProcessId)
943 return this->ReduceVoidArray(
944 sendBuffer, recvBuffer, length,
VTK_UNSIGNED_INT, operation, destProcessId);
947 const short* sendBuffer,
short* recvBuffer,
vtkIdType length,
int operation,
int destProcessId)
949 return this->ReduceVoidArray(
950 sendBuffer, recvBuffer, length,
VTK_SHORT, operation, destProcessId);
953 int operation,
int destProcessId)
955 return this->ReduceVoidArray(
959 const long* sendBuffer,
long* recvBuffer,
vtkIdType length,
int operation,
int destProcessId)
961 return this->ReduceVoidArray(
962 sendBuffer, recvBuffer, length,
VTK_LONG, operation, destProcessId);
965 int operation,
int destProcessId)
967 return this->ReduceVoidArray(
971 int operation,
int destProcessId)
973 return this->ReduceVoidArray(
977 const char* sendBuffer,
char* recvBuffer,
vtkIdType length,
int operation,
int destProcessId)
979 return this->ReduceVoidArray(
980 sendBuffer, recvBuffer, length,
VTK_CHAR, operation, destProcessId);
983 int operation,
int destProcessId)
985 return this->ReduceVoidArray(
986 sendBuffer, recvBuffer, length,
VTK_SIGNED_CHAR, operation, destProcessId);
989 const float* sendBuffer,
float* recvBuffer,
vtkIdType length,
int operation,
int destProcessId)
991 return this->ReduceVoidArray(
992 sendBuffer, recvBuffer, length,
VTK_FLOAT, operation, destProcessId);
997 return this->ReduceVoidArray(
998 sendBuffer, recvBuffer, length,
VTK_DOUBLE, operation, destProcessId);
1003 return this->ReduceVoidArray(
1004 sendBuffer, recvBuffer, length,
VTK_LONG_LONG, operation, destProcessId);
1007 int operation,
int destProcessId)
1009 return this->ReduceVoidArray(
1023 return this->ReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_INT, operation, destProcessId);
1026 Operation* operation,
int destProcessId)
1028 return this->ReduceVoidArray(
1029 sendBuffer, recvBuffer, length,
VTK_UNSIGNED_INT, operation, destProcessId);
1034 return this->ReduceVoidArray(
1035 sendBuffer, recvBuffer, length,
VTK_SHORT, operation, destProcessId);
1038 Operation* operation,
int destProcessId)
1040 return this->ReduceVoidArray(
1046 return this->ReduceVoidArray(
1047 sendBuffer, recvBuffer, length,
VTK_LONG, operation, destProcessId);
1050 Operation* operation,
int destProcessId)
1052 return this->ReduceVoidArray(
1056 Operation* operation,
int destProcessId)
1058 return this->ReduceVoidArray(
1064 return this->ReduceVoidArray(
1065 sendBuffer, recvBuffer, length,
VTK_CHAR, operation, destProcessId);
1068 Operation* operation,
int destProcessId)
1070 return this->ReduceVoidArray(
1071 sendBuffer, recvBuffer, length,
VTK_SIGNED_CHAR, operation, destProcessId);
1076 return this->ReduceVoidArray(
1077 sendBuffer, recvBuffer, length,
VTK_FLOAT, operation, destProcessId);
1082 return this->ReduceVoidArray(
1083 sendBuffer, recvBuffer, length,
VTK_DOUBLE, operation, destProcessId);
1086 Operation* operation,
int destProcessId)
1088 return this->ReduceVoidArray(
1089 sendBuffer, recvBuffer, length,
VTK_LONG_LONG, operation, destProcessId);
1092 Operation* operation,
int destProcessId)
1094 return this->ReduceVoidArray(
1107 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_INT, operation);
1110 const unsigned int* sendBuffer,
unsigned int* recvBuffer,
vtkIdType length,
int operation)
1112 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_INT, operation);
1116 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_SHORT, operation);
1119 const unsigned short* sendBuffer,
unsigned short* recvBuffer,
vtkIdType length,
int operation)
1121 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_SHORT, operation);
1125 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_LONG, operation);
1128 const unsigned long* sendBuffer,
unsigned long* recvBuffer,
vtkIdType length,
int operation)
1130 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_LONG, operation);
1133 const unsigned char* sendBuffer,
unsigned char* recvBuffer,
vtkIdType length,
int operation)
1135 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_CHAR, operation);
1139 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_CHAR, operation);
1142 const signed char* sendBuffer,
signed char* recvBuffer,
vtkIdType length,
int operation)
1144 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_SIGNED_CHAR, operation);
1148 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_FLOAT, operation);
1152 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_DOUBLE, operation);
1156 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_LONG_LONG, operation);
1158 int AllReduce(
const unsigned long long* sendBuffer,
unsigned long long* recvBuffer,
1161 return this->AllReduceVoidArray(
1167 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_INT, operation);
1172 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_INT, operation);
1176 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_SHORT, operation);
1181 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_SHORT, operation);
1185 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_LONG, operation);
1190 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_LONG, operation);
1195 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_UNSIGNED_CHAR, operation);
1199 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_CHAR, operation);
1204 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_SIGNED_CHAR, operation);
1208 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_FLOAT, operation);
1213 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_DOUBLE, operation);
1218 return this->AllReduceVoidArray(sendBuffer, recvBuffer, length,
VTK_LONG_LONG, operation);
1220 int AllReduce(
const unsigned long long* sendBuffer,
unsigned long long* recvBuffer,
1223 return this->AllReduceVoidArray(
1235 virtual int GatherVoidArray(
1237 virtual int GatherVVoidArray(
const void* sendBuffer,
void* recvBuffer,
vtkIdType sendLength,
1239 virtual int ScatterVoidArray(
1241 virtual int ScatterVVoidArray(
const void* sendBuffer,
void* recvBuffer,
vtkIdType* sendLengths,
1243 virtual int AllGatherVoidArray(
1245 virtual int AllGatherVVoidArray(
const void* sendBuffer,
void* recvBuffer,
vtkIdType sendLength,
1247 virtual int ReduceVoidArray(
const void* sendBuffer,
void* recvBuffer,
vtkIdType length,
int type,
1248 int operation,
int destProcessId);
1249 virtual int ReduceVoidArray(
const void* sendBuffer,
void* recvBuffer,
vtkIdType length,
int type,
1250 Operation* operation,
int destProcessId);
1251 virtual int AllReduceVoidArray(
1253 virtual int AllReduceVoidArray(
1254 const void* sendBuffer,
void* recvBuffer,
vtkIdType length,
int type, Operation* operation);
1276 virtual int Probe(
int vtkNotUsed(
source),
int vtkNotUsed(tag),
int* vtkNotUsed(actualSource))
1278 vtkErrorMacro(
"Probe not implemented for this controller.");
1282 static void SetUseCopy(
int useCopy);
1295 virtual int ComputeGlobalBounds(
int processorId,
int numProcesses,
vtkBoundingBox* bounds,
1296 int* rightHasBounds =
nullptr,
int* leftHasBounds =
nullptr,
int hasBoundsTag = 288402,
1297 int localBoundsTag = 288403,
int globalBoundsTag = 288404);
1305 static int GetParentProcessor(
int pid);
1306 static int GetLeftChildProcessor(
int pid);
1347 int GatherVElementalDataObject(
1384 VTK_ABI_NAMESPACE_END
1385 #endif // vtkCommunicator_h
int Receive(double *data, vtkIdType maxlength, int remoteHandle, int tag)
Convenience methods for receiving data arrays.
virtual int Probe(int source, int tag, int *actualSource)
Blocking test for checking for a message tagged with tag from source process (if source == ANY_SOURCE...
int Receive(unsigned int *data, vtkIdType maxlength, int remoteHandle, int tag)
Convenience methods for receiving data arrays.
int AllGather(const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType length)
Same as gather except that the result ends up on all processes.
int Broadcast(float *data, vtkIdType length, int srcProcessId)
Broadcast sends the array in the process with id srcProcessId to all of the other processes...
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.
int Gather(const unsigned int *sendBuffer, unsigned int *recvBuffer, vtkIdType length, int destProcessId)
Gather collects arrays in the process with id destProcessId.
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.
int ScatterV(const signed char *sendBuffer, signed char *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId)
ScatterV is the vector variant of Scatter.
int Gather(const int *sendBuffer, int *recvBuffer, vtkIdType length, int destProcessId)
Gather collects arrays in the process with id destProcessId.
int GatherV(const double *sendBuffer, double *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId)
GatherV is the vector variant of Gather.
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.
virtual int GetTagMaxValue() const
Return the maximum value that the tag can take for tag sending and receive.
A custom operation to use in a reduce command.
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.
int Send(const short *data, vtkIdType length, int remoteHandle, int tag)
Convenience methods for sending data arrays.
int Reduce(const long *sendBuffer, long *recvBuffer, vtkIdType length, Operation *operation, int destProcessId)
Reduce an array to the given destination process.
int ScatterV(const double *sendBuffer, double *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId)
ScatterV is the vector variant of Scatter.
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.
int Send(const int *data, vtkIdType length, int remoteHandle, int tag)
Convenience methods for sending data arrays.
abstract base class for most VTK objects
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.
int Receive(unsigned char *data, vtkIdType maxlength, int remoteHandle, int tag)
Convenience methods for receiving data arrays.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int Scatter(const double *sendBuffer, double *recvBuffer, vtkIdType length, int srcProcessId)
Scatter takes an array in the process with id srcProcessId and distributes it.
int AllGather(const long long *sendBuffer, long long *recvBuffer, vtkIdType length)
Same as gather except that the result ends up on all processes.
stream used to pass data across processes using vtkMultiProcessController.
int Gather(const long long *sendBuffer, long long *recvBuffer, vtkIdType length, int destProcessId)
Gather collects arrays in the process with id destProcessId.
int Receive(long long *data, vtkIdType maxlength, int remoteHandle, int tag)
Convenience methods for receiving data arrays.
int GatherV(const char *sendBuffer, char *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId)
GatherV is the vector variant of Gather.
int Gather(const unsigned short *sendBuffer, unsigned short *recvBuffer, vtkIdType length, int destProcessId)
Gather collects arrays in the process with id destProcessId.
#define VTK_UNSIGNED_SHORT
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.
abstract class to specify dataset behavior
int Gather(const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType length, int destProcessId)
Gather collects arrays in the process with id destProcessId.
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.
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.
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.
int Reduce(const float *sendBuffer, float *recvBuffer, vtkIdType length, int operation, int destProcessId)
Reduce an array to the given destination process.
int Reduce(const double *sendBuffer, double *recvBuffer, vtkIdType length, Operation *operation, int destProcessId)
Reduce an array to the given destination process.
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.
int Reduce(const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType length, Operation *operation, int destProcessId)
Reduce an array to the given destination process.
int ScatterV(const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId)
ScatterV is the vector variant of Scatter.
int Scatter(const long *sendBuffer, long *recvBuffer, vtkIdType length, int srcProcessId)
Scatter takes an array in the process with id srcProcessId and distributes it.
int Send(const float *data, vtkIdType length, int remoteHandle, int tag)
Convenience methods for sending data arrays.
virtual bool CanProbe()
Check if this communicator implements a probe operation.
int Scatter(const char *sendBuffer, char *recvBuffer, vtkIdType length, int srcProcessId)
Scatter takes an array in the process with id srcProcessId and distributes it.
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.
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...
int Send(const unsigned short *data, vtkIdType length, int remoteHandle, int tag)
Convenience methods for sending data arrays.
int Scatter(const short *sendBuffer, short *recvBuffer, vtkIdType length, int srcProcessId)
Scatter takes an array in the process with id srcProcessId and distributes it.
int ScatterV(const unsigned int *sendBuffer, unsigned int *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId)
ScatterV is the vector variant of Scatter.
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...
int GatherV(const long long *sendBuffer, long long *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId)
GatherV is the vector variant of Gather.
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.
int Send(const signed char *data, vtkIdType length, int remoteHandle, int tag)
Convenience methods for sending data arrays.
int Reduce(const int *sendBuffer, int *recvBuffer, vtkIdType length, Operation *operation, int destProcessId)
Reduce an array to the given destination process.
int GatherV(const signed char *sendBuffer, signed char *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId)
GatherV is the vector variant of Gather.
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.
dynamic, self-adjusting array of vtkIdType
int Reduce(const long long *sendBuffer, long long *recvBuffer, vtkIdType length, Operation *operation, int destProcessId)
Reduce an array to the given destination process.
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.
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.
int Broadcast(char *data, vtkIdType length, int srcProcessId)
Broadcast sends the array in the process with id srcProcessId to all of the other processes...
int AllGather(const unsigned int *sendBuffer, unsigned int *recvBuffer, vtkIdType length)
Same as gather except that the result ends up on all processes.
int AllGather(const double *sendBuffer, double *recvBuffer, vtkIdType length)
Same as gather except that the result ends up on all processes.
int MaximumNumberOfProcesses
int Send(const double *data, vtkIdType length, int remoteHandle, int tag)
Convenience methods for sending data arrays.
int ScatterV(const short *sendBuffer, short *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId)
ScatterV is the vector variant of Scatter.
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.
int ScatterV(const unsigned short *sendBuffer, unsigned short *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId)
ScatterV is the vector variant of Scatter.
int GatherV(const unsigned short *sendBuffer, unsigned short *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId)
GatherV is the vector variant of Gather.
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.
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.
int ScatterV(const int *sendBuffer, int *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId)
ScatterV is the vector variant of Scatter.
int Reduce(const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType length, int operation, int destProcessId)
Reduce an array to the given destination process.
int Scatter(const float *sendBuffer, float *recvBuffer, vtkIdType length, int srcProcessId)
Scatter takes an array in the process with id srcProcessId and distributes it.
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.
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...
int Reduce(const unsigned short *sendBuffer, unsigned short *recvBuffer, vtkIdType length, int operation, int destProcessId)
Reduce an array to the given destination process.
int ScatterV(const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId)
ScatterV is the vector variant of Scatter.
dynamic, self-adjusting array of char
int Broadcast(long *data, vtkIdType length, int srcProcessId)
Broadcast sends the array in the process with id srcProcessId to all of the other processes...
int AllGather(const signed char *sendBuffer, signed char *recvBuffer, vtkIdType length)
Same as gather except that the result ends up on all processes.
int AllGather(const unsigned short *sendBuffer, unsigned short *recvBuffer, vtkIdType length)
Same as gather except that the result ends up on all processes.
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.
int Gather(const double *sendBuffer, double *recvBuffer, vtkIdType length, int destProcessId)
Gather collects arrays in the process with id destProcessId.
int Receive(char *data, vtkIdType maxlength, int remoteHandle, int tag)
Convenience methods for receiving data arrays.
int Send(const unsigned int *data, vtkIdType length, int remoteHandle, int tag)
Convenience methods for sending data arrays.
int Send(const unsigned long long *data, vtkIdType length, int remoteHandle, int tag)
Convenience methods for sending data arrays.
int Reduce(const unsigned short *sendBuffer, unsigned short *recvBuffer, vtkIdType length, Operation *operation, int destProcessId)
Reduce an array to the given destination process.
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.
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.
int Gather(const signed char *sendBuffer, signed char *recvBuffer, vtkIdType length, int destProcessId)
Gather collects arrays in the process with id destProcessId.
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.
int Reduce(const float *sendBuffer, float *recvBuffer, vtkIdType length, Operation *operation, int destProcessId)
Reduce an array to the given destination process.
a simple class to control print indentation
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.
int Receive(short *data, vtkIdType maxlength, int remoteHandle, int tag)
Convenience methods for receiving data arrays.
int ScatterV(const char *sendBuffer, char *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId)
ScatterV is the vector variant of Scatter.
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.
int Receive(long *data, vtkIdType maxlength, int remoteHandle, int tag)
Convenience methods for receiving data arrays.
int GatherV(const short *sendBuffer, short *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId)
GatherV is the vector variant of Gather.
topologically and geometrically regular array of data
int GatherV(const long *sendBuffer, long *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId)
GatherV is the vector variant of Gather.
int Receive(signed char *data, vtkIdType maxlength, int remoteHandle, int tag)
Convenience methods for receiving data arrays.
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.
abstract superclass for arrays of numeric data
int AllGather(const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType length)
Same as gather except that the result ends up on all processes.
int Reduce(const int *sendBuffer, int *recvBuffer, vtkIdType length, int operation, int destProcessId)
Reduce an array to the given destination process.
int Gather(const short *sendBuffer, short *recvBuffer, vtkIdType length, int destProcessId)
Gather collects arrays in the process with id destProcessId.
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.
int Reduce(const long long *sendBuffer, long long *recvBuffer, vtkIdType length, int operation, int destProcessId)
Reduce an array to the given destination process.
int AllGather(const float *sendBuffer, float *recvBuffer, vtkIdType length)
Same as gather except that the result ends up on all processes.
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.
int Reduce(const signed char *sendBuffer, signed char *recvBuffer, vtkIdType length, int operation, int destProcessId)
Reduce an array to the given destination process.
int Send(const unsigned long *data, vtkIdType length, int remoteHandle, int tag)
Convenience methods for sending data arrays.
int Gather(const char *sendBuffer, char *recvBuffer, vtkIdType length, int destProcessId)
Gather collects arrays in the process with id destProcessId.
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.
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.
int Gather(const float *sendBuffer, float *recvBuffer, vtkIdType length, int destProcessId)
Gather collects arrays in the process with id destProcessId.
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.
int Reduce(const unsigned int *sendBuffer, unsigned int *recvBuffer, vtkIdType length, int operation, int destProcessId)
Reduce an array to the given destination process.
int GatherV(const int *sendBuffer, int *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId)
GatherV is the vector variant of Gather.
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...
int AllGather(const long *sendBuffer, long *recvBuffer, vtkIdType length)
Same as gather except that the result ends up on all processes.
boost::graph_traits< vtkGraph * >::vertex_descriptor source(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
int ScatterV(const long long *sendBuffer, long long *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId)
ScatterV is the vector variant of Scatter.
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.
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.
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...
int Reduce(const char *sendBuffer, char *recvBuffer, vtkIdType length, Operation *operation, int destProcessId)
Reduce an array to the given destination process.
int Broadcast(short *data, vtkIdType length, int srcProcessId)
Broadcast sends the array in the process with id srcProcessId to all of the other processes...
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.
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.
int AllGather(const int *sendBuffer, int *recvBuffer, vtkIdType length)
Same as gather except that the result ends up on all processes.
int Broadcast(double *data, vtkIdType length, int srcProcessId)
Broadcast sends the array in the process with id srcProcessId to all of the other processes...
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.
int Reduce(const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType length, Operation *operation, int destProcessId)
Reduce an array to the given destination process.
int Send(const long *data, vtkIdType length, int remoteHandle, int tag)
Convenience methods for sending data arrays.
int Receive(float *data, vtkIdType maxlength, int remoteHandle, int tag)
Convenience methods for receiving data arrays.
int Send(const long long *data, vtkIdType length, int remoteHandle, int tag)
Convenience methods for sending data arrays.
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.
int Send(const unsigned char *data, vtkIdType length, int remoteHandle, int tag)
Convenience methods for sending data arrays.
#define VTK_UNSIGNED_CHAR
int ScatterV(const float *sendBuffer, float *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId)
ScatterV is the vector variant of Scatter.
int Gather(const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType length, int destProcessId)
Gather collects arrays in the process with id destProcessId.
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.
int Reduce(const char *sendBuffer, char *recvBuffer, vtkIdType length, int operation, int destProcessId)
Reduce an array to the given destination process.
int Gather(const unsigned long long *sendBuffer, unsigned long long *recvBuffer, vtkIdType length, int destProcessId)
Gather collects arrays in the process with id destProcessId.
int AllGather(const short *sendBuffer, short *recvBuffer, vtkIdType length)
Same as gather except that the result ends up on all processes.
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.
Composite dataset that organizes datasets into blocks.
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.
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.
int Receive(int *data, vtkIdType maxlength, int remoteHandle, int tag)
Convenience methods for receiving data arrays.
int Reduce(const signed char *sendBuffer, signed char *recvBuffer, vtkIdType length, Operation *operation, int destProcessId)
Reduce an array to the given destination process.
int Receive(unsigned long long *data, vtkIdType maxlength, int remoteHandle, int tag)
Convenience methods for receiving data arrays.
int Reduce(const short *sendBuffer, short *recvBuffer, vtkIdType length, int operation, int destProcessId)
Reduce an array to the given destination process.
int GatherV(const float *sendBuffer, float *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId)
GatherV is the vector variant of Gather.
int Reduce(const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType length, int operation, int destProcessId)
Reduce an array to the given destination process.
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...
#define VTK_UNSIGNED_LONG
int Receive(unsigned long *data, vtkIdType maxlength, int remoteHandle, int tag)
Convenience methods for receiving data arrays.
int Broadcast(int *data, vtkIdType length, int srcProcessId)
Broadcast sends the array in the process with id srcProcessId to all of the other processes...
int GatherV(const unsigned long *sendBuffer, unsigned long *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId)
GatherV is the vector variant of Gather.
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.
int AllGather(const char *sendBuffer, char *recvBuffer, vtkIdType length)
Same as gather except that the result ends up on all processes.
int Reduce(const long *sendBuffer, long *recvBuffer, vtkIdType length, int operation, int destProcessId)
Reduce an array to the given destination process.
Used to send/receive messages in a multiprocess environment.
int Reduce(const unsigned int *sendBuffer, unsigned int *recvBuffer, vtkIdType length, Operation *operation, int destProcessId)
Reduce an array to the given destination process.
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.
int Scatter(const int *sendBuffer, int *recvBuffer, vtkIdType length, int srcProcessId)
Scatter takes an array in the process with id srcProcessId and distributes it.
general representation of visualization data
int GatherV(const unsigned char *sendBuffer, unsigned char *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId)
GatherV is the vector variant of Gather.
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.
int Send(const char *data, vtkIdType length, int remoteHandle, int tag)
Convenience methods for sending data arrays.
int Reduce(const short *sendBuffer, short *recvBuffer, vtkIdType length, Operation *operation, int destProcessId)
Reduce an array to the given destination process.
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.
int ScatterV(const long *sendBuffer, long *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int srcProcessId)
ScatterV is the vector variant of Scatter.
#define VTK_UNSIGNED_LONG_LONG
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.
int Receive(unsigned short *data, vtkIdType maxlength, int remoteHandle, int tag)
Convenience methods for receiving data arrays.
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.
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.
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...
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.
Fast, simple class for representing and operating on 3D bounds.
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.
int Reduce(const double *sendBuffer, double *recvBuffer, vtkIdType length, int operation, int destProcessId)
Reduce an array to the given destination process.
int GatherV(const unsigned int *sendBuffer, unsigned int *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int destProcessId)
GatherV is the vector variant of Gather.
int Gather(const long *sendBuffer, long *recvBuffer, vtkIdType length, int destProcessId)
Gather collects arrays in the process with id destProcessId.