--- trunk/mdtools/headers/mpiSimulation.hpp 2002/09/30 19:36:00 121 +++ trunk/mdtools/headers/mpiSimulation.hpp 2003/01/03 22:04:50 223 @@ -1,27 +1,50 @@ +#ifndef __MPISIMULATION__ +#define __MPISIMULATION__ +#include "SimInfo.hpp" +#include "MakeStamps.hpp" +#define __C +#include "mpiComponentPlan.h" + class mpiSimulation{ public: - mpiSimulation(); - ~mpiSimulation(); + mpiSimulation(SimInfo* the_entryPlug); + ~mpiSimulation(); + + void divideLabor( void ); + + int getMyNode(void) { return myNode; } + int getNumberProcessors(void) { return numberProcessors; } + int getMyMolStart( void ) { return myMolStart; } + int getMyMolEnd( void ) { return myMlEnd; } + int getMyMol( void ) { return myMol; } + int getMyAtomStart( void ) { return myAtomStart; } + int getMyAtomEnd( void ) { return myAtomEnd; } + int getMyNlocal( void ) { return myNlocal; } - int getMyNode(void) {return myNode;} - int mpiInitSimulation(); - int mpiDistSimulation(); + int getTotAtoms( void ) { return simTotAtoms; } + private: protected: - int myMolStart; - int myMolEnd; - int myMol; - int numberProcessors; - int myNode; - int processorNameLen; - char processorName[MPI_MAX_PROCESSOR_NAME]; - int natomsRow,natomsCol,natomsStart,natomsEnd; - int numberCols,numberRows; - int nmolsRow,nmolsCol,nmolsLocal; + SimInfo* entryPlug; + mpiSimData* mpiPlug; + // int *myIdents; // is needed by Cpp only. It tells the molecule which stamp it is. + }; + + +/** + The following pointer is the global declaration of the mpiSim + object created when the mpiSimulation creation routine is + called. Every one who includes the header file will then have + access to all of the routines in mnpiSimulation class. +*/ + +extern mpiSimulation* mpiSim; + +#endif