MPI implementation of the PstreamImpl abstract base class. More...
#include <mpiPstream/mpiPstreamImpl.H>
MPI implementation of the PstreamImpl abstract base class.
Definition at line 55 of file mpiPstreamImpl.H.
Inheritance diagram for mpiPstreamImpl:
Collaboration diagram for mpiPstreamImpl:Public Member Functions | |
| TypeName ("mpiPstreamImpl") | |
| mpiPstreamImpl () | |
| Construct null. | |
| virtual void | addValidParOptions (HashTable< string > &validParOptions) |
| Add the valid option this type of communications library. | |
| virtual bool | init (int &argc, char **&argv, int &myProcNo_, List< int > &procIDs_, bool &isParallel) |
| Initialisation function called from main. | |
| virtual void | exit (int errnum) |
| Exit program. | |
| virtual void | abort () |
| Abort program. | |
| void | reduce (scalar &Value, const sumOp< scalar > &bop) |
| Reduce implementation for scalars (. | |
Public Member Functions inherited from PstreamImpl | |
| TypeName ("PstreamImpl") | |
| declareRunTimeSelectionTable (autoPtr, PstreamImpl, dictionary,(),()) | |
| PstreamImpl () | |
| Construct null. | |
| virtual | ~PstreamImpl () |
Additional Inherited Members | |
Static Public Member Functions inherited from PstreamImpl | |
| static autoPtr< PstreamImpl > | New () |
| Return a reference to the selected PstreamImpl implementation. | |
| static void | loadPstreamLibrary () |
| Loads the Pstream implementation library. | |
| template<class T , class CTable > | |
| static autoPtr< T > | loadPstreamInstance (const word &dictEntry, const word &envName, CTable *ctable) |
| Loads the given type from the Pstream implementation library. | |
Static Protected Member Functions inherited from PstreamImpl | |
| static void | setParRun (bool &isParallel) |
| Set data for parallel running. | |
| static void | initCommunicationSchedule () |
| Initialize all communication schedules. Callback from. | |
|
inline |
Construct null.
Definition at line 75 of file mpiPstreamImpl.H.
| TypeName | ( | "mpiPstreamImpl" | ) |
Add the valid option this type of communications library.
adds/requires on the command line
Implements PstreamImpl.
Definition at line 62 of file mpiPstreamImpl.C.
References HashTable< T, Key, Hash >::insert().
|
virtual |
Initialisation function called from main.
Spawns slave processes and initialises inter-communication
Implements PstreamImpl.
Definition at line 74 of file mpiPstreamImpl.C.
References Foam::abort(), Foam::FatalError, FatalErrorIn, forAll, Foam::getEnv(), PstreamImpl::initCommunicationSchedule(), and List< T >::setSize().
|
virtual |
Exit program.
Implements PstreamImpl.
Definition at line 133 of file mpiPstreamImpl.C.
References Foam::exit().
|
virtual |
|
virtual |
Reduce implementation for scalars (.
Implements PstreamImpl.
Definition at line 159 of file mpiPstreamImpl.C.
References Foam::abort(), Foam::FatalError, FatalErrorIn, Pstream::firstSlave(), Pstream::lastSlave(), Pstream::master(), Pstream::masterNo(), Pstream::msgType(), Pstream::nProcs(), Pstream::nProcsSimpleSum, Pstream::parRun(), Pstream::procID(), and Foam::sum().