ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/branches/new_design/OOPSE-3.0/src/brains/SimCreator.hpp
(Generate patch)

Comparing branches/new_design/OOPSE-3.0/src/brains/SimCreator.hpp (file contents):
Revision 1703 by tim, Wed Nov 3 19:56:02 2004 UTC vs.
Revision 1733 by tim, Fri Nov 12 06:19:04 2004 UTC

# Line 35 | Line 35 | namespace oopse {
35   #define BRAINS_SIMCREATOR_HPP
36  
37  
38 + #include "primitives/Molecule.hpp"
39 + #include "brans/SimInfo.hpp"
40 + #include "types/MakeStamps.hpp"
41 + #include "io/Globals.hpp"
42 + #include "UseTheForce/ForceField.hpp"
43 +
44   namespace oopse {
45  
46   /**
47   * @class SimCreator SimCreator.hpp "brains/SimCreator.hpp"
48 < * @brief SimCreator is an abstract factory which is responsible for setting up the simulation.
48 > * @brief
49   */
50   class SimCreator {
51      public:
52 <        void parseFile(const string& mdfile);
53 <        void createSim();
52 >
53 >        /**
54 >         * Setup Simulation
55 >         * @return a pointer to SimInfo
56 >         * @param mdfile the meta-data file name
57 >         */
58 >        SimInfo* createSim(char* mdfile);
59          
60      protected:
61  
62 <        virtual ForceFiled* createForceFiled();
63 <        virtual Molecule* createMolecule();
64 <        virtual Atom* createAtom();
65 <        virtual RigidBody* createRigidBody();
66 <        virtual Bond* createBond();
67 <        virtual Bend* createBend();
68 <        virtual Torsion* createTorsion();
62 >        /**
63 >         * Parses the meta-data file
64 >         * @param mdfile
65 >         * @param stamps
66 >         * @param globals
67 >         */
68 >        void parseFile(const std::string mdFileName,  MakeStamps* stamps, Globals* globals);
69 >
70 > #ifdef IS_MPI
71 >        /**
72 >         * Divide the molecules among the processors
73 >         */
74 >        void divideMolecules();
75 > #endif //is_mpi
76 >
77 >        /** create the molecules belong to current processor*/
78 >        virtual void createMolecules();
79 >
80 >        /** Sets the global index for atoms, rigidbodies and cutoff groups */
81 >        void setGlobalIndex();
82 >            
83 >    private:
84          
85 <        
86 <        
87 <        
85 >        /** Extracts the molecules stamps and adds them into SimInfo class */
86 >        void compList(MakeStamps* stamps,  Globals* globals,
87 >                                     std::vector<std::pair<MoleculeStamp*, int> >& moleculeStamps) ;
88 >
89 >        /** Initialize fortran, mainly set the cutoff radius and setup*/
90 >        void initFortran(SimInfo* info);
91 >
92 >        std::string mdFileName_;  //save the meta-data file name which may be used later
93   };
94  
95   } //end namespace oopse

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines