--- branches/mmeineke/mdtools/headers/ForceFields.hpp 2002/07/09 18:40:59 10 +++ trunk/mdtools/headers/ForceFields.hpp 2002/10/21 22:02:53 151 @@ -7,6 +7,10 @@ class bond_pair{ #include "Atom.hpp" #include "SimInfo.hpp" +#ifdef IS_MPI +#include "mpiForceField.h" +#endif + class bond_pair{ public: bond_pair(){} @@ -54,7 +58,7 @@ class ForceFields{ (public) public: ForceFields(){ frcFile = NULL; entry_plug = NULL; } - ~ForceFields(){} + virtual ~ForceFields(){} void setSimInfo( SimInfo* the_entry_plug ) { entry_plug = the_entry_plug; } virtual void initializeAtoms( void ) = 0; @@ -63,6 +67,17 @@ class ForceFields{ (public) virtual void initializeTorsions( torsion_set* the_torsions ) = 0; protected: + + void ffError( char* errMsg ){ + +#ifdef IS_MPI + ffInterfaceExit( errMsg ); +#else + fprintf( stderr, "%s\n", errMsg ); + exit(0); +#endif + } + FILE *frcFile; SimInfo* entry_plug; @@ -73,7 +88,7 @@ class TraPPEFF : public ForceFields{ (public) public: TraPPEFF(); - ~TraPPEFF(); + virtual ~TraPPEFF(); void initializeAtoms( void ); void initializeBonds( bond_pair* the_bonds ); @@ -86,7 +101,7 @@ class DipoleTestFF : public ForceFields{ (public) public: DipoleTestFF(); - ~DipoleTestFF(); + virtual ~DipoleTestFF(); void initializeAtoms( void ); void initializeBonds( bond_pair* the_bonds ); @@ -98,7 +113,7 @@ class TraPPE_ExFF : public ForceFields{ (public) public: TraPPE_ExFF(); - ~TraPPE_ExFF(); + virtual ~TraPPE_ExFF(); void initializeAtoms( void ); void initializeBonds( bond_pair* the_bonds );