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

Comparing branches/new_design/OOPSE-3.0/src/UseTheForce/ForceField.hpp (file contents):
Revision 1765 by tim, Mon Nov 22 20:55:52 2004 UTC vs.
Revision 1786 by tim, Fri Nov 26 02:13:56 2004 UTC

# Line 38 | Line 38
38   #define STR_DEFINE(t, s) t = MK_STR(s)
39  
40   #include <string>
41 < #include <utilities>
41 > #include <utility>
42  
43   #include "io/basic_ifstrstream.hpp"
44   #include "utils/TypeContainer.hpp"
# Line 50 | Line 50 | namespace oopse {
50   namespace oopse {
51  
52   /**
53 < * @class ForceFiled ForceField.hpp ''UseTheForce/ForceField.hpp"
53 > * @class ForceField ForceField.hpp ''UseTheForce/ForceField.hpp"
54   * @brief
55   */
56   class ForceField{
57  
58      public:
59  
60 +        typedef TypeContainer<AtomType, 1> AtomTypeContainer;
61 +        typedef TypeContainer<BondType, 2> BondTypeContainer;
62 +        typedef TypeContainer<BendType, 3> BendTypeContainer;
63 +        typedef TypeContainer<TorsionType, 4> TorsionTypeContainer;
64 +        
65          ForceField();
66  
67 <        virtual ~ForceFields(){}
67 >        virtual ~ForceField(){}
68  
69          void setVariant(const std::string &variant) {
70              hasVariant_ = true;
# Line 75 | Line 80 | class ForceField{
80          TorsionType* getTorsionType(const std::string &at1, const std::string &at2,
81                                            const std::string &at3, const std::string &at4);
82  
83 +        BondType* getExactBondType(const std::string &at1, const std::string &at2);
84 +        BendType* getExactBendType(const std::string &at1, const std::string &at2,
85 +                                    const std::string &at3);
86 +        TorsionType* getExactTorsionType(const std::string &at1, const std::string &at2,
87 +                                          const std::string &at3, const std::string &at4);
88 +
89 +
90          //avoid make virtual function public
91          //Herb Sutter and Andrei Alexandrescu, C++ coding Standards, Addision-Wesley
92          virtual double getRcutFromAtomType(AtomType* at);
# Line 87 | Line 99 | class ForceField{
99              wildCardAtomTypeName_ = wildCard;
100          }
101  
102 <    protected:
102 >
103 >        unsigned int getNAtomType() {
104 >            return atomTypeCont_.size();
105 >        }
106          
107          bool addAtomType(const std::string &at, AtomType* atomType);
108 +
109          bool addBondType(const std::string &at1, const std::string &at2, BondType* bondType);
110 +
111          bool addBendType(const std::string &at1, const std::string &at2,
112                                      const std::string &at3, BendType* bendType);
113 +
114          bool addTorsionType(const std::string &at1, const std::string &at2,
115                                            const std::string &at3, const std::string &at4, TorsionType* torsionType);
116  
117          ifstrstream* openForceFieldFile(const std::string& filename);
118  
119 <        unsigned int getNAtomType() {
120 <            return atomTypeCont_.size();
121 <        }
119 >    protected:
120 >
121 >        AtomTypeContainer atomTypeCont_;    
122 >        BondTypeContainer bondTypeCont_;
123 >        BendTypeContainer bendTypeCont_;
124 >        TorsionTypeContainer torsionTypeCont_;
125          
126      private:  
127          std::string ffPath_;
# Line 109 | Line 130 | class ForceField{
130  
131          std::string wildCardAtomTypeName_;
132  
112        typedef TypeContainer<AtomType, 1> AtomTypeContainer;
113        typedef TypeContainer<BondType, 2> BondTypeContainer;
114        typedef TypeContainer<BendType, 3> BendTypeContainer;
115        typedef TypeContainer<TorsionType, 4> TorsionTypeContainer;
116
117        AtomTypeContainer atomTypeCont_;    
118        BondTypeContainer bondTypeCont_;
119        BendTypeContainer bendTypeCont_;
120        TorsionTypeContainer torsionTypeCont_;
121
122        SectionParserManager
133   };
134  
135  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines