| 48 |  | #include <fstream> | 
| 49 |  |  | 
| 50 |  | #include "brains/SimInfo.hpp" | 
| 51 | < | #include "selection/Token.hpp" | 
| 51 | > | #include "selection/SelectionToken.hpp" | 
| 52 |  | #include "selection/SelectionCompiler.hpp" | 
| 53 |  | #include "selection/NameFinder.hpp" | 
| 54 |  | #include "selection/DistanceFinder.hpp" | 
| 55 |  | #include "selection/IndexFinder.hpp" | 
| 56 | < | #include "utils/BitSet.hpp" | 
| 56 | > | #include "utils/OOPSEBitSet.hpp" | 
| 57 |  | #include "primitives/StuntDouble.hpp" | 
| 58 |  | #include "utils/StringUtils.hpp" | 
| 59 |  | namespace oopse { | 
| 61 |  |  | 
| 62 |  | /** | 
| 63 |  | * @class SelectionEvaluator SelectionEvaluator.hpp "selection/SelectionEvaluator" | 
| 64 | < | * @brief Evalute the tokens compiled by SelectionCompiler and return a BitSet | 
| 64 | > | * @brief Evalute the tokens compiled by SelectionCompiler and return a OOPSEBitSet | 
| 65 |  | */ | 
| 66 |  | class SelectionEvaluator{ | 
| 67 |  | public: | 
| 68 |  |  | 
| 69 |  | SelectionEvaluator(SimInfo* info); | 
| 70 |  |  | 
| 71 | – |  | 
| 71 |  | bool loadScriptString(const std::string& script); | 
| 72 |  | bool loadScriptFile(const std::string& filename); | 
| 73 |  |  | 
| 74 | < | BitSet evaluate(); | 
| 74 | > | OOPSEBitSet evaluate(); | 
| 75 |  |  | 
| 76 |  | /** | 
| 77 |  | * Tests if the result from evaluation of script is dynamic. | 
| 115 |  | void clearDefinitionsAndLoadPredefined(); | 
| 116 |  |  | 
| 117 |  | void define(); | 
| 118 | < | void select(BitSet& bs); | 
| 118 | > | void select(OOPSEBitSet& bs); | 
| 119 |  | void predefine(const std::string& script); | 
| 120 |  |  | 
| 121 | < | void instructionDispatchLoop(BitSet& bs); | 
| 121 | > | void instructionDispatchLoop(OOPSEBitSet& bs); | 
| 122 |  |  | 
| 123 | < | void withinInstruction(const Token& instruction, BitSet& bs); | 
| 123 | > | void withinInstruction(const Token& instruction, OOPSEBitSet& bs); | 
| 124 |  |  | 
| 125 | < | BitSet comparatorInstruction(const Token& instruction); | 
| 126 | < | void compareProperty(StuntDouble* sd, BitSet& bs, int property, int comparator, float comparisonValue); | 
| 127 | < | BitSet nameInstruction(const std::string& name); | 
| 128 | < | BitSet indexInstruction(const boost::any& value); | 
| 129 | < | BitSet expression(const std::vector<Token>& tokens, int pc); | 
| 125 | > | OOPSEBitSet comparatorInstruction(const Token& instruction); | 
| 126 | > | void compareProperty(StuntDouble* sd, OOPSEBitSet& bs, int property, int comparator, float comparisonValue); | 
| 127 | > | OOPSEBitSet nameInstruction(const std::string& name); | 
| 128 | > | OOPSEBitSet indexInstruction(const boost::any& value); | 
| 129 | > | OOPSEBitSet expression(const std::vector<Token>& tokens, int pc); | 
| 130 |  |  | 
| 131 | < | BitSet lookupValue(const std::string& variable); | 
| 131 | > | OOPSEBitSet lookupValue(const std::string& variable); | 
| 132 |  |  | 
| 133 |  | void evalError(const std::string& message) { | 
| 134 | < | std::cerr << "SelectionEvaulator Error: " << message <<  std::endl; | 
| 134 | > | sprintf( painCave.errMsg, | 
| 135 | > | "SelectionEvaluator Error: %s\n", message.c_str()); | 
| 136 | > | painCave.severity = OOPSE_ERROR; | 
| 137 | > | painCave.isFatal = 1; | 
| 138 | > | simError(); | 
| 139 |  | } | 
| 140 |  |  | 
| 141 |  | void unrecognizedCommand(const Token& token) { | 
| 165 |  |  | 
| 166 |  | bool containDynamicToken(const std::vector<Token>& tokens); | 
| 167 |  |  | 
| 168 | < | double getCharge(Atom* atom); | 
| 168 | > | RealType getCharge(Atom* atom); | 
| 169 |  |  | 
| 170 |  | SelectionCompiler compiler; | 
| 171 |  |  | 
| 191 |  | NameFinder nameFinder; | 
| 192 |  | DistanceFinder distanceFinder; | 
| 193 |  | IndexFinder indexFinder; | 
| 194 | < | int nStuntDouble;   //natoms + nrigidbodies | 
| 194 | > | int nStuntDouble;   //nGLOBALatoms + nGLOBALrigidbodies | 
| 195 |  |  | 
| 196 |  | typedef std::map<std::string, boost::any > VariablesType; | 
| 197 |  | VariablesType variables; |