00001 00007 #ifndef PATCHTYPES_H 00008 #define PATCHTYPES_H 00009 00010 #include "NamdTypes.h" 00011 #include "Lattice.h" 00012 00013 class Flags 00014 { 00015 public: 00016 int step; // timestep number reported to user 00017 // Same number may appear multiple times! 00018 int sequence; // sequence number of compute call 00019 // changes by 1 every time! 00020 int doEnergy; 00021 int doNonbonded; 00022 int doFullElectrostatics; 00023 int doMolly; 00024 int submitLoadStats; 00025 int maxForceUsed; // may ignore slower force classes 00026 int maxForceMerged; // add this and faster to normal 00027 00028 int usePairlists; 00029 int savePairlists; 00030 BigReal pairlistTolerance; 00031 BigReal maxAtomMovement; 00032 BigReal maxGroupRadius; 00033 00034 Lattice lattice; // rather than shipping around separately 00035 00036 inline Flags& operator= (const Flags &flags) 00037 { 00038 CmiMemcpy (this, &flags, sizeof(Flags)); 00039 return *this; 00040 } 00041 00042 }; 00043 00044 class Results 00045 { 00046 public: 00047 enum { normal=0, nbond=1, slow=2, maxNumForces=3 }; 00048 Force *f[maxNumForces]; 00049 }; 00050 00051 #endif 00052
1.3.9.1