ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-3.0/src/io/BondTypesSectionParser.cpp
(Generate patch)

Comparing trunk/OOPSE-3.0/src/io/BondTypesSectionParser.cpp (file contents):
Revision 1956 by gezelter, Wed Jan 12 22:41:40 2005 UTC vs.
Revision 1957 by tim, Tue Jan 25 17:45:23 2005 UTC

# Line 46 | Line 46 | namespace oopse {
46   #include "types/QuarticBondType.hpp"
47   #include "types/PolynomialBondType.hpp"
48   #include "UseTheForce/ForceField.hpp"
49 + #include "utils/simError.h"
50   namespace oopse {
51  
52   BondTypesSectionParser::BondTypesSectionParser() {
# Line 64 | Line 65 | void BondTypesSectionParser::parseLine(ForceField& ff,
65      int nTokens = tokenizer.countTokens();
66  
67      if (nTokens < 4) {
68 <
69 <        return;
68 >        sprintf(painCave.errMsg, "BondTypesSectionParser Error: Not enough tokens at line %d\n",
69 >                lineNo);
70 >        painCave.isFatal = 1;
71 >        simError();
72      }
73      
74      std::string at1 = tokenizer.nextToken();
# Line 82 | Line 85 | void BondTypesSectionParser::parseLine(ForceField& ff,
85              
86          case btHarmonic :
87              if (nTokens < 1) {
88 <
88 >                sprintf(painCave.errMsg, "BondTypesSectionParser Error: Not enough tokens at line %d\n",
89 >                        lineNo);
90 >                painCave.isFatal = 1;
91 >                simError();
92              } else {
93  
94                  double kb = tokenizer.nextTokenAsDouble();
# Line 93 | Line 99 | void BondTypesSectionParser::parseLine(ForceField& ff,
99  
100          case btCubic :
101              if (nTokens < 4) {
102 <
102 >                sprintf(painCave.errMsg, "BondTypesSectionParser Error: Not enough tokens at line %d\n",
103 >                        lineNo);
104 >                painCave.isFatal = 1;
105 >                simError();
106              } else {
107  
108                  double k3 = tokenizer.nextTokenAsDouble();
# Line 108 | Line 117 | void BondTypesSectionParser::parseLine(ForceField& ff,
117          case btQuartic :
118              if (nTokens < 5) {
119  
120 +                sprintf(painCave.errMsg, "BondTypesSectionParser Error: Not enough tokens at line %d\n",
121 +                        lineNo);
122 +                painCave.isFatal = 1;
123 +                simError();
124 +
125              } else {
126  
127                  b0 = tokenizer.nextTokenAsDouble();
# Line 123 | Line 137 | void BondTypesSectionParser::parseLine(ForceField& ff,
137  
138          case btPolynomial :
139              if (nTokens < 2 || nTokens % 2 != 0) {
140 +                sprintf(painCave.errMsg, "BondTypesSectionParser Error: Not enough tokens at line %d\n",
141 +                        lineNo);
142 +                painCave.isFatal = 1;
143 +                simError();
144  
145              } else {
146                  int nPairs = nTokens / 2;
# Line 141 | Line 159 | void BondTypesSectionParser::parseLine(ForceField& ff,
159  
160          case btUnknown :
161          default:
162 +                sprintf(painCave.errMsg, "BondTypesSectionParser Error: Unknown Bond Type at line %d\n",
163 +                        lineNo);
164 +                painCave.isFatal = 1;
165 +                simError();
166 +
167              break;
168              
169      }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines