Abstract base class for OPstream operations that depend on the parallel library used. Foam::OPstreamImpl::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>OPstreamImpl. More...
#include <OpenFOAM/OPstreamImpl.H>
Abstract base class for OPstream operations that depend on the parallel library used. Foam::OPstreamImpl::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>OPstreamImpl.
Definition at line 64 of file OPstreamImpl.H.
Public Member Functions | |
TypeName ("OPstreamImpl") | |
declareRunTimeSelectionTable (autoPtr, OPstreamImpl, dictionary,(),()) | |
OPstreamImpl () | |
Construct null. | |
virtual bool | write (const PstreamImpl::commsTypes commsType, const int toProcNo, const char *buf, const std::streamsize bufSize)=0 |
Write given buffer to given processor. | |
virtual void | waitRequests ()=0 |
Non-blocking writes: wait until all have finished. | |
virtual bool | finishedRequest (const label i)=0 |
Non-blocking writes: has request i finished? | |
virtual void | flush (const PstreamImpl::commsTypes commsType, const int toProcNo, const char *buf, const int bufPosition)=0 |
Flush the buffer (used in OPstream::~OPstream()) |
Static Public Member Functions | |
static autoPtr< OPstreamImpl > | New () |
Return a reference to the selected OPstreamImpl implementation. |
|
inline |
Construct null.
Definition at line 98 of file OPstreamImpl.H.
TypeName | ( | "OPstreamImpl" | ) |
declareRunTimeSelectionTable | ( | autoPtr | , |
OPstreamImpl | , | ||
dictionary | , | ||
() | , | ||
() | |||
) |
|
static |
Return a reference to the selected OPstreamImpl implementation.
Definition at line 46 of file OPstreamImpl.C.
|
pure virtual |
Write given buffer to given processor.
Implemented in dummyOPstreamImpl, and mpiOPstreamImpl.
Referenced by OPstream::write().
|
pure virtual |
Non-blocking writes: wait until all have finished.
Implemented in dummyOPstreamImpl, and mpiOPstreamImpl.
Referenced by OPstream::waitRequests().
|
pure virtual |
Non-blocking writes: has request i finished?
Implemented in dummyOPstreamImpl, and mpiOPstreamImpl.
Referenced by OPstream::finishedRequest().
|
pure virtual |
Flush the buffer (used in OPstream::~OPstream())
Implemented in dummyOPstreamImpl, and mpiOPstreamImpl.