ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/branches/new_design/OOPSE-4/src/io/BendTypesSectionParser.cpp
(Generate patch)

Comparing branches/new_design/OOPSE-4/src/io/BendTypesSectionParser.cpp (file contents):
Revision 1799 by tim, Mon Nov 29 15:27:43 2004 UTC vs.
Revision 1800 by tim, Tue Nov 30 04:14:43 2004 UTC

# Line 29 | Line 29 | namespace oopse {
29   #include "types/CubicBendType.hpp"
30   #include "types/QuarticBendType.hpp"
31   #include "types/PolynomialBendType.hpp"
32 + #include "UseTheForce/ForceField.hpp"
33   namespace oopse {
34  
35   BendTypesSectionParser::BendTypesSectionParser() {
36      setSectionName("BendTypes");
37 +
38 +    stringToEnumMap_["Harmonic"] =  btHarmonic;      
39 +    stringToEnumMap_["GhostBend"] =  btGhostBend;                
40 +    stringToEnumMap_["UreyBradley"] =  btUreyBradley;                    
41 +    stringToEnumMap_["Cubic"] = btCubic;
42 +    stringToEnumMap_["Quartic"] = btQuartic;
43 +    stringToEnumMap_["Polynomial"] = btPolynomial;    
44   }
45  
46   void BendTypesSectionParser::parseLine(ForceField& ff,const std::string& line, int lineNo){
# Line 61 | Line 69 | void BendTypesSectionParser::parseLine(ForceField& ff,
69      //switch is a maintain nightmare
70      switch(bt) {
71              
72 <        case "Harmonic" :
72 >        case btHarmonic :
73              
74              if (nTokens < 1) {
75  
# Line 71 | Line 79 | void BendTypesSectionParser::parseLine(ForceField& ff,
79                  bendType = new HarmonicBendType(theta0, ktheta);
80              }
81              break;
82 <        case "GhostBend" :
82 >        case btGhostBend :
83              if (nTokens < 1) {
84  
85              } else {
# Line 80 | Line 88 | void BendTypesSectionParser::parseLine(ForceField& ff,
88              }
89              break;            
90  
91 <        case "UreyBradley" :
91 >        case btUreyBradley :
92              if (nTokens < 3) {
93  
94              } else {
# Line 91 | Line 99 | void BendTypesSectionParser::parseLine(ForceField& ff,
99              }
100              break;
101              
102 <        case "Cubic" :
102 >        case btCubic :
103              if (nTokens < 4) {
104  
105              } else {
# Line 105 | Line 113 | void BendTypesSectionParser::parseLine(ForceField& ff,
113              }
114              break;
115              
116 <        case "Quartic" :
116 >        case btQuartic :
117              if (nTokens < 5) {
118  
119              } else {
# Line 121 | Line 129 | void BendTypesSectionParser::parseLine(ForceField& ff,
129              }
130              break;
131  
132 <        case "Polynomial" :
132 >        case btPolynomial :
133              if (nTokens < 2 || nTokens % 2 != 0) {
134  
135              } else {
# Line 148 | Line 156 | void BendTypesSectionParser::parseLine(ForceField& ff,
156      }
157   }
158  
159 + BendTypeEnum BendTypesSectionParser::getTorsionTypeEnum(const std::string& str) {
160 +    std::map<std::string, BondTypeEnum>::iterator i;
161 +    i = stringToEnumMap_.find(str);
162 +
163 +    return i == stringToEnumMap_.end() ? TorsionTypesSectionParser::ttUnknown : i->second;
164 + }
165 +
166   } //end namespace oopse
167  
168  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines