| 73 |  | class SnapshotManager; | 
| 74 |  | class Molecule; | 
| 75 |  | class SelectionManager; | 
| 76 | + | class StuntDouble; | 
| 77 |  | /** | 
| 78 |  | * @class SimInfo SimInfo.hpp "brains/SimInfo.hpp" | 
| 79 |  | * @brief One of the heavy weight classes of OOPSE, SimInfo maintains a list of molecules. | 
| 321 |  | std::string getFinalConfigFileName() { | 
| 322 |  | return finalConfigFileName_; | 
| 323 |  | } | 
| 324 | < |  | 
| 324 | > |  | 
| 325 |  | void setFinalConfigFileName(const std::string& fileName) { | 
| 326 |  | finalConfigFileName_ = fileName; | 
| 327 |  | } | 
| 328 |  |  | 
| 329 | + | std::string getRawMetaData() { | 
| 330 | + | return rawMetaData_; | 
| 331 | + | } | 
| 332 | + | void setRawMetaData(const std::string& rawMetaData) { | 
| 333 | + | rawMetaData_ = rawMetaData; | 
| 334 | + | } | 
| 335 | + |  | 
| 336 |  | std::string getDumpFileName() { | 
| 337 |  | return dumpFileName_; | 
| 338 |  | } | 
| 537 |  | */ | 
| 538 |  | LocalIndexManager localIndexMan_; | 
| 539 |  |  | 
| 540 | + | // unparsed MetaData block for storing in Dump and EOR files: | 
| 541 | + | std::string rawMetaData_; | 
| 542 | + |  | 
| 543 |  | //file names | 
| 544 |  | std::string finalConfigFileName_; | 
| 545 |  | std::string dumpFileName_; | 
| 554 |  |  | 
| 555 |  | bool calcBoxDipole_; /**< flag to indicate whether or not we calculate the simulation box dipole moment */ | 
| 556 |  |  | 
| 557 | + | public: | 
| 558 | + | /** | 
| 559 | + | * return an integral objects by its global index. In MPI version, if the StuntDouble with specified | 
| 560 | + | * global index does not belong to local processor, a NULL will be return. | 
| 561 | + | */ | 
| 562 | + | StuntDouble* getIOIndexToIntegrableObject(int index); | 
| 563 | + | void setIOIndexToIntegrableObject(const std::vector<StuntDouble*>& v); | 
| 564 | + | private: | 
| 565 | + | std::vector<StuntDouble*> IOIndexToIntegrableObject; | 
| 566 | + | //public: | 
| 567 | + | //void setStuntDoubleFromGlobalIndex(std::vector<StuntDouble*> v); | 
| 568 | + | /** | 
| 569 | + | * return a StuntDouble by its global index. In MPI version, if the StuntDouble with specified | 
| 570 | + | * global index does not belong to local processor, a NULL will be return. | 
| 571 | + | */ | 
| 572 | + | //StuntDouble* getStuntDoubleFromGlobalIndex(int index); | 
| 573 | + | //private: | 
| 574 | + | //std::vector<StuntDouble*> sdByGlobalIndex_; | 
| 575 | + |  | 
| 576 |  | #ifdef IS_MPI | 
| 577 |  | //in Parallel version, we need MolToProc | 
| 578 |  | public: | 
| 594 |  | void setMolToProcMap(const std::vector<int>& molToProcMap) { | 
| 595 |  | molToProcMap_ = molToProcMap; | 
| 596 |  | } | 
| 597 | + |  | 
| 598 | + |  | 
| 599 |  |  | 
| 600 |  | private: | 
| 601 |  |  |