Go to the documentation of this file.
48 commsType_(commsType),
53 sendBuf_(UPstream::nProcs(comm)),
54 recvBuf_(UPstream::nProcs(comm)),
55 recvBufPos_(UPstream::nProcs(comm), 0),
56 finishedSendsCalled_(
false)
70 <<
"Message from processor " << procI
71 <<
" not fully consumed. messageSize:" <<
recvBuf_[procI].size()
84 finishedSendsCalled_ =
true;
89 Pstream::exchange<DynamicList<char>,
char>
104 finishedSendsCalled_ =
true;
108 Pstream::exchange<DynamicList<char>,
char>
121 <<
"Obtaining sizes not supported in "
123 <<
" since transfers already in progress. Use non-blocking instead."
157 finishedSendsCalled_ =
false;
word format(conversionProperties.lookup("format"))
Creates a single block of cells from point coordinates, numbers of cells in each direction and an exp...
~PstreamBuffers()
Destructor.
#define forAll(list, i)
Loop across all elements in list.
static const NamedEnum< commsTypes, 3 > commsTypeNames
Ostream & endl(Ostream &os)
Add newline and flush stream.
void clear()
Clear storage and reset.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
void finishedSends(const bool block=true)
Mark all sends as having been done. This will start receives.
errorManip< error > abort(error &err)
errorManipArg< error, int > exit(error &err, const int errNo=1)
PstreamBuffers(const UPstream::commsTypes commsType, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm, IOstream::streamFormat format=IOstream::BINARY, IOstream::versionNumber version=IOstream::currentVersion)
Construct given comms type,.
List< DynamicList< char > > recvBuf_
Receive buffer.
commsTypes
Types of communications.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
labelList recvBufPos_
Read position in recvBuf_.
static DynamicList< char > nullBuf
streamFormat
Enumeration for the format of data in the stream.