| 49 |  | #include <string> | 
| 50 |  | #include <map> | 
| 51 |  |  | 
| 52 | – | #include "io/BASS_interface.h" | 
| 52 |  | #include "types/Component.hpp" | 
| 53 | < | #include "types/MakeStamps.hpp" | 
| 54 | < | #include "types/ZconStamp.hpp" | 
| 56 | < |  | 
| 53 | > | #include "types/ZconsStamp.hpp" | 
| 54 | > | #include "types/MoleculeStamp.hpp" | 
| 55 |  | #include "utils/ParameterManager.hpp" | 
| 56 |  |  | 
| 57 | < | class Globals { | 
| 57 | > | namespace oopse { | 
| 58 | > | class Globals : public DataHolder { | 
| 59 |  | public: | 
| 60 |  | Globals(); | 
| 61 | < | ~Globals(); | 
| 61 | > | virtual ~Globals(); | 
| 62 |  |  | 
| 63 |  | DeclareParameter(ForceField, std::string); | 
| 65 | – | DeclareParameter(NComponents, int); | 
| 64 |  | DeclareParameter(TargetTemp, double); | 
| 65 |  | DeclareParameter(Ensemble, std::string); | 
| 66 |  | DeclareParameter(Dt, double); | 
| 67 |  | DeclareParameter(RunTime, double); | 
| 68 |  | DeclareParameter(InitialConfig, std::string); | 
| 69 |  | DeclareParameter(FinalConfig, std::string); | 
| 72 | – | DeclareParameter(NMol, int); | 
| 73 | – | DeclareParameter(Density, double); | 
| 74 | – | DeclareParameter(Box, double); | 
| 75 | – | DeclareParameter(BoxX, double); | 
| 76 | – | DeclareParameter(BoxY, double); | 
| 77 | – | DeclareParameter(BoxZ, double); | 
| 70 |  | DeclareParameter(SampleTime, double); | 
| 71 |  | DeclareParameter(ResetTime, double); | 
| 72 |  | DeclareParameter(StatusTime, double); | 
| 81 |  | DeclareParameter(TauThermostat, double); | 
| 82 |  | DeclareParameter(TauBarostat, double); | 
| 83 |  | DeclareParameter(ZconsTime, double); | 
| 92 | – | DeclareParameter(NZconstraints, int); | 
| 84 |  | DeclareParameter(ZconsTol, double); | 
| 85 |  | DeclareParameter(ZconsForcePolicy, std::string); | 
| 86 |  | DeclareParameter(Seed, int); | 
| 119 |  | DeclareParameter(SkinThickness, double); | 
| 120 |  | DeclareParameter(StatFileFormat, std::string); | 
| 121 |  |  | 
| 131 | – | private: | 
| 132 | – | typedef std::map<std::string, ParameterBase*> ParamMap; | 
| 133 | – | ParamMap parameters_; | 
| 134 | – |  | 
| 135 | – | Component* current_component; | 
| 136 | – | Component** components; // the array of components | 
| 137 | – |  | 
| 138 | – | ZconStamp* current_zConstraint; | 
| 139 | – | ZconStamp** zConstraints; // the array of zConstraints | 
| 140 | – |  | 
| 141 | – | char* checkMe(); | 
| 142 | – |  | 
| 122 |  | public: | 
| 123 | < | int newComponent( event* the_event ); | 
| 124 | < | int componentAssign( event* the_event ); | 
| 125 | < | int componentEnd( event* the_event ); | 
| 123 | > | bool addComponent(Component* comp); | 
| 124 | > | bool addZConsStamp(ZConsStamp* zcons); | 
| 125 | > | bool addMoleculeStamp(MoleculeStamp* molStamp); | 
| 126 | > | int getNComponents() {return components_.size();} | 
| 127 | > | std::vector<Component*> getComponents() {return components_;} | 
| 128 | > | Component* getComponentAt(int index) {return components_.at(index);} | 
| 129 |  |  | 
| 130 | < | int newZconstraint( event* the_event ); | 
| 131 | < | int zConstraintAssign( event* the_event ); | 
| 132 | < | int zConstraintEnd( event* the_event ); | 
| 151 | < |  | 
| 152 | < | int globalAssign( event* the_event ); | 
| 153 | < | int globalEnd( event* the_event ); | 
| 130 | > | int getNZconsStamps() {return zconstraints_.size();} | 
| 131 | > | std::vector<ZConsStamp*> getZconsStamps() {return zconstraints_;} | 
| 132 | > | ZConsStamp* getZconsStampAt(int index) {return zconstraints_.at(index);} | 
| 133 |  |  | 
| 134 | < | ZconStamp** getZconStamp() {return zConstraints;} | 
| 135 | < | Component** getComponents() {return components;} | 
| 134 | > | virtual void validate(); | 
| 135 | > | private: | 
| 136 | > | std::vector<Component*> components_; | 
| 137 | > | std::vector<ZConsStamp*> zconstraints_; | 
| 138 | > | std::map<std::string, MoleculeStamp*> moleculeStamps_; | 
| 139 | > |  | 
| 140 |  | }; | 
| 141 | + | } | 
| 142 |  | #endif | 
| 143 |  |  |