OpenMD 3.1
Molecular Dynamics in the Open
Loading...
Searching...
No Matches
MDTreeParser.hpp
1#ifndef INC_MDTreeParser_hpp_
2#define INC_MDTreeParser_hpp_
3
4#include <antlr/config.hpp>
5#include "MDTreeParserTokenTypes.hpp"
6/* $ANTLR 2.7.7 (2006-11-01): "MDTreeParser.g" -> "MDTreeParser.hpp"$ */
7#include <antlr/TreeParser.hpp>
8
9#line 2 "MDTreeParser.g"
10
11#include <stack>
12#include "io/Globals.hpp"
13#include "utils/StringUtils.hpp"
14using namespace std;
15using namespace OpenMD;
16
17#line 18 "MDTreeParser.hpp"
18class CUSTOM_API MDTreeParser : public ANTLR_USE_NAMESPACE(antlr)TreeParser, public MDTreeParserTokenTypes
19{
20#line 21 "MDTreeParser.g"
21
22 public:
23 Globals* walkTree(ANTLR_USE_NAMESPACE(antlr)RefAST tree)
24 {
25 currConf = new Globals;
26 blockStack.push(currConf);
27 mdfile(tree);
28 return currConf;
29 }
30 private:
31 Globals* currConf;
32 stack<DataHolder*> blockStack;
33#line 22 "MDTreeParser.hpp"
34public:
36 static void initializeASTFactory( ANTLR_USE_NAMESPACE(antlr)ASTFactory& factory );
37 int getNumTokens() const
38 {
39 return MDTreeParser::NUM_TOKENS;
40 }
41 const char* getTokenName( int type ) const
42 {
43 if( type > getNumTokens() ) return 0;
44 return MDTreeParser::tokenNames[type];
45 }
46 const char* const* getTokenNames() const
47 {
48 return MDTreeParser::tokenNames;
49 }
50 public: void mdfile(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
51 public: void statement(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
52 public: void assignment(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
53 public: void componentblock(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
54 public: void moleculeblock(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
55 public: void fragmentblock(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
56 public: void zconstraintblock(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
57 public: void restraintblock(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
58 public: void flucqblock(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
59 public: void rnemdblock(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
60 public: void lightblock(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
61 public: void minimizerblock(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
62 public: void constant(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
63 ANTLR_USE_NAMESPACE(antlr)RefAST id
64 );
65 protected: int intConst(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
66 protected: RealType floatConst(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
67 public: vector<RealType> doubleNumberTuple(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
68 public: void moleculestatement(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
69 public: void atomblock(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
70 public: void bondblock(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
71 public: void bendblock(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
72 public: void torsionblock(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
73 public: void inversionblock(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
74 public: void rigidbodyblock(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
75 public: void cutoffgroupblock(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
76 public: void constraintblock(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
77 public: void sequencestring(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
78 public: void fragmentstatement(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
79 public: void nodesblock(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
80 public: void atomstatement(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
81 protected: RealType doubleNumber(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
82 public: void bondstatement(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
83 public: vector<int> inttuple(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
84 public: void bendstatement(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
85 public: void torsionstatement(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
86 public: void inversionstatement(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
87 public: void rigidbodystatement(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
88 public: void cutoffgroupstatement(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
89 public: void constraintstatement(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
90 public: void nodesstatement(ANTLR_USE_NAMESPACE(antlr)RefAST _t);
91public:
92 ANTLR_USE_NAMESPACE(antlr)RefAST getAST()
93 {
94 return returnAST;
95 }
96
97protected:
98 ANTLR_USE_NAMESPACE(antlr)RefAST returnAST;
99 ANTLR_USE_NAMESPACE(antlr)RefAST _retTree;
100private:
101 static const char* tokenNames[];
102#ifndef NO_STATIC_CONSTS
103 static const int NUM_TOKENS = 81;
104#else
105 enum {
106 NUM_TOKENS = 81
107 };
108#endif
109
110 static const unsigned long _tokenSet_0_data_[];
111 static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_0;
112 static const unsigned long _tokenSet_1_data_[];
113 static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_1;
114 static const unsigned long _tokenSet_2_data_[];
115 static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_2;
116 static const unsigned long _tokenSet_3_data_[];
117 static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_3;
118 static const unsigned long _tokenSet_4_data_[];
119 static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_4;
120 static const unsigned long _tokenSet_5_data_[];
121 static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_5;
122 static const unsigned long _tokenSet_6_data_[];
123 static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_6;
124 static const unsigned long _tokenSet_7_data_[];
125 static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_7;
126};
127
128#endif /*INC_MDTreeParser_hpp_*/
This basic Periodic Table class was originally taken from the data.cpp file in OpenBabel.