Abstract base class for IPstream operations that depend on the parallel library used. Foam::IPstreamImpl::New will lookup the entry "PstreamImplementation" in the global controlDict file (i.e. the one found by Foam::dotFoam) and tries to first load a library named lib<PstreamImplementation>Pstream.so, and then instantiate the class <PstreamImplementation>IPstreamImpl. More...
#include <OpenFOAM/IPstreamImpl.H>
Abstract base class for IPstream operations that depend on the parallel library used. Foam::IPstreamImpl::New will lookup the entry "PstreamImplementation" in the global controlDict file (i.e. the one found by Foam::dotFoam) and tries to first load a library named lib<PstreamImplementation>Pstream.so, and then instantiate the class <PstreamImplementation>IPstreamImpl.
Definition at line 64 of file IPstreamImpl.H.
Public Member Functions | |
TypeName ("IPstreamImpl") | |
declareRunTimeSelectionTable (autoPtr, IPstreamImpl, dictionary,(),()) | |
IPstreamImpl () | |
Construct null.
| |
virtual | ~IPstreamImpl () |
virtual void | init (const PstreamImpl::commsTypes commsType, const label bufSize, int &fromProcNo, label &messageSize, List< char > &buf)=0 |
Initialization.
| |
virtual label | read (const PstreamImpl::commsTypes commsType, const int fromProcNo, char *buf, const std::streamsize bufSize)=0 |
Read into given buffer from given processor and return the.
| |
virtual void | waitRequests ()=0 |
Non-blocking receives: wait until all have finished.
| |
virtual bool | finishedRequest (const label i)=0 |
Non-blocking receives: has request i finished?
| |
Static Public Member Functions | |
static autoPtr< IPstreamImpl > | New () |
Return a reference to the selected IPstreamImpl implementation.
|
IPstreamImpl | ( | ) | [inline]
|
Construct null.
Definition at line 98 of file IPstreamImpl.H.
virtual ~IPstreamImpl | ( | ) | [inline, virtual]
|
Definition at line 102 of file IPstreamImpl.H.
TypeName | ( | "IPstreamImpl" | ) |
declareRunTimeSelectionTable | ( | autoPtr | , |
IPstreamImpl | , | ||
dictionary | , | ||
() | , | ||
() | |||
) |
Foam::autoPtr< Foam::IPstreamImpl > New | ( | ) | [static]
|
Return a reference to the selected IPstreamImpl implementation.
Definition at line 46 of file IPstreamImpl.C.
virtual void init | ( | const PstreamImpl::commsTypes | commsType, |
const label | bufSize, | ||
int & | fromProcNo, | ||
label & | messageSize, | ||
List< char > & | buf | ||
) | [pure virtual]
|
Initialization.
Implemented in dummyIPstreamImpl, and mpiIPstreamImpl.
virtual label read | ( | const PstreamImpl::commsTypes | commsType, |
const int | fromProcNo, | ||
char * | buf, | ||
const std::streamsize | bufSize | ||
) | [pure virtual]
|
Read into given buffer from given processor and return the.
message size
Implemented in dummyIPstreamImpl, and mpiIPstreamImpl.
virtual void waitRequests | ( | ) | [pure virtual]
|
Non-blocking receives: wait until all have finished.
Implemented in dummyIPstreamImpl, and mpiIPstreamImpl.
virtual bool finishedRequest | ( | const label | i ) | [pure virtual]
|
Non-blocking receives: has request i finished?
Implemented in dummyIPstreamImpl, and mpiIPstreamImpl.