00001 #ifndef INC_CLevmarConfParser_hpp_
00002 #define INC_CLevmarConfParser_hpp_
00003
00004 #include <antlr/config.hpp>
00005
00006 #include <antlr/TokenStream.hpp>
00007 #include <antlr/TokenBuffer.hpp>
00008 #include "CLevmarConfParserTokenTypes.hpp"
00009 #include <antlr/LLkParser.hpp>
00010
00011 #line 1 "CLevmarConf.g"
00012
00013 #include <string>
00014 #include <vector>
00015 #include <iostream>
00016
00017 #line 18 "CLevmarConfParser.hpp"
00018 class CUSTOM_API CLevmarConfParser : public antlr::LLkParser, public CLevmarConfParserTokenTypes
00019 {
00020 #line 20 "CLevmarConf.g"
00021
00022 private:
00023 int i; double dtemp; int itemp; std::string stemp; bool btemp;
00024 public:
00025 int maxiter;
00026 std::string mode;
00027 std::string mtfit;
00028 std::string mtinputdata;
00029 std::string recinputdata;
00030 double slowness;
00031 double omega;
00032 double sigma;
00033 int shift;
00034 double wlevel;
00035 double poisson;
00036 double starttime;
00037 double endtime;
00038 double tensorerror;
00039 double phaseerror;
00040 double reserror;
00041 double recerror;
00042 std::vector< double > minres;
00043 std::vector< double > maxres;
00044 std::vector< double > startres;
00045 std::vector< double > minthick;
00046 std::vector< double > maxthick;
00047 std::vector< double > startthick;
00048 std::vector< double > minsvel;
00049 std::vector< double > maxsvel;
00050 std::vector< double > startsvel;
00051 std::vector< double > mindens;
00052 std::vector< double > maxdens;
00053 std::vector< double > startdens;
00054 std::vector< double > weights;
00055 #line 22 "CLevmarConfParser.hpp"
00056 public:
00057 void initializeASTFactory( antlr::ASTFactory& factory );
00058 protected:
00059 CLevmarConfParser(antlr::TokenBuffer& tokenBuf, int k);
00060 public:
00061 CLevmarConfParser(antlr::TokenBuffer& tokenBuf);
00062 protected:
00063 CLevmarConfParser(antlr::TokenStream& lexer, int k);
00064 public:
00065 CLevmarConfParser(antlr::TokenStream& lexer);
00066 CLevmarConfParser(const antlr::ParserSharedInputState& state);
00067 int getNumTokens() const
00068 {
00069 return CLevmarConfParser::NUM_TOKENS;
00070 }
00071 const char* getTokenName( int type ) const
00072 {
00073 if( type > getNumTokens() ) return 0;
00074 return CLevmarConfParser::tokenNames[type];
00075 }
00076 const char* const* getTokenNames() const
00077 {
00078 return CLevmarConfParser::tokenNames;
00079 }
00080 public: void configentry();
00081 public: double numvalue();
00082 public: std::string stringvalue();
00083 public: void configfile();
00084 public: bool boolvalue();
00085 public:
00086 antlr::RefAST getAST()
00087 {
00088 return returnAST;
00089 }
00090
00091 protected:
00092 antlr::RefAST returnAST;
00093 private:
00094 static const char* tokenNames[];
00095 #ifndef NO_STATIC_CONSTS
00096 static const int NUM_TOKENS = 47;
00097 #else
00098 enum {
00099 NUM_TOKENS = 47
00100 };
00101 #endif
00102
00103 static const unsigned long _tokenSet_0_data_[];
00104 static const antlr::BitSet _tokenSet_0;
00105 static const unsigned long _tokenSet_1_data_[];
00106 static const antlr::BitSet _tokenSet_1;
00107 static const unsigned long _tokenSet_2_data_[];
00108 static const antlr::BitSet _tokenSet_2;
00109 static const unsigned long _tokenSet_3_data_[];
00110 static const antlr::BitSet _tokenSet_3;
00111 static const unsigned long _tokenSet_4_data_[];
00112 static const antlr::BitSet _tokenSet_4;
00113 static const unsigned long _tokenSet_5_data_[];
00114 static const antlr::BitSet _tokenSet_5;
00115 static const unsigned long _tokenSet_6_data_[];
00116 static const antlr::BitSet _tokenSet_6;
00117 };
00118
00119 #endif