36 #undef Pstream_CommonRoutines 37 #define Pstream_CommonRoutines(Native) \ 38 void Foam::UPstream::allToAll \ 40 const UList<Native>& sendData, \ 41 UList<Native>& recvData, \ 45 recvData.deepCopy(sendData); \ 52 #undef Pstream_CommonRoutines 57 #undef Pstream_CommonRoutines 58 #define Pstream_CommonRoutines(Native) \ 59 void Foam::UPstream::allToAllConsensus \ 61 const UList<Native>& sendData, \ 62 UList<Native>& recvData, \ 67 recvData.deepCopy(sendData); \ 69 void Foam::UPstream::allToAllConsensus \ 71 const Map<Native>& sendData, \ 72 Map<Native>& recvData, \ 77 recvData = sendData; \ 84 #undef Pstream_CommonRoutines 89 #undef Pstream_CommonRoutines 90 #define Pstream_CommonRoutines(Native) \ 91 void Foam::UPstream::allToAll \ 93 const Native* sendData, \ 94 const UList<int>& sendCounts, \ 95 const UList<int>& sendOffsets, \ 97 const UList<int>& recvCounts, \ 98 const UList<int>& recvOffsets, \ 102 if (recvCounts[0] != sendCounts[0]) \ 104 FatalErrorInFunction \ 105 << "Number to send " << sendCounts[0] \ 106 << " does not equal number to receive " << recvCounts[0] \ 107 << Foam::abort(FatalError); \ 109 std::memmove(recvData, sendData, recvCounts[0]*sizeof(Native)); \ 115 #undef Pstream_CommonRoutines #define Pstream_CommonRoutines(Native)