FreeFOAM The Cross-Platform CFD Toolkit
Hosted by SourceForge:
Get FreeFOAM at SourceForge.net.
            Fast, secure and Free Open Source software downloads

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>


Detailed Description

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.

Source files

Definition at line 64 of file IPstreamImpl.H.

Inheritance diagram for IPstreamImpl:
Collaboration diagram for IPstreamImpl:

List of all members.

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.

Constructor & Destructor Documentation

IPstreamImpl (  ) [inline]

Construct null.

Definition at line 98 of file IPstreamImpl.H.

virtual ~IPstreamImpl (  ) [inline, virtual]

Definition at line 102 of file IPstreamImpl.H.


Member Function Documentation

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.


The documentation for this class was generated from the following files: