00001 #ifndef INC_CPTensorConfParser_hpp_
00002 #define INC_CPTensorConfParser_hpp_
00003
00004 #include <antlr/config.hpp>
00005
00006 #include <antlr/TokenStream.hpp>
00007 #include <antlr/TokenBuffer.hpp>
00008 #include "CPTensorConfParserTokenTypes.hpp"
00009 #include <antlr/LLkParser.hpp>
00010
00011 #line 1 "CPTensorConf.g"
00012
00013 #include <string>
00014 #include <vector>
00015 #include <iostream>
00016
00017 #line 18 "CPTensorConfParser.hpp"
00018 class CUSTOM_API CPTensorConfParser : public antlr::LLkParser, public CPTensorConfParserTokenTypes
00019 {
00020 #line 20 "CPTensorConf.g"
00021
00022 private:
00023 int i; double dtemp; int itemp; std::string stemp; bool btemp;
00024 public:
00025 double scalefactor;
00026 bool normalize;
00027 bool writetensor;
00028 bool writeserialparallel;
00029 bool calcerr;
00030 #line 22 "CPTensorConfParser.hpp"
00031 public:
00032 void initializeASTFactory( antlr::ASTFactory& factory );
00033 protected:
00034 CPTensorConfParser(antlr::TokenBuffer& tokenBuf, int k);
00035 public:
00036 CPTensorConfParser(antlr::TokenBuffer& tokenBuf);
00037 protected:
00038 CPTensorConfParser(antlr::TokenStream& lexer, int k);
00039 public:
00040 CPTensorConfParser(antlr::TokenStream& lexer);
00041 CPTensorConfParser(const antlr::ParserSharedInputState& state);
00042 int getNumTokens() const
00043 {
00044 return CPTensorConfParser::NUM_TOKENS;
00045 }
00046 const char* getTokenName( int type ) const
00047 {
00048 if( type > getNumTokens() ) return 0;
00049 return CPTensorConfParser::tokenNames[type];
00050 }
00051 const char* const* getTokenNames() const
00052 {
00053 return CPTensorConfParser::tokenNames;
00054 }
00055 public: void configentry();
00056 public: double numvalue();
00057 public: bool boolvalue();
00058 public: void configfile();
00059 public: std::string stringvalue();
00060 public:
00061 antlr::RefAST getAST()
00062 {
00063 return returnAST;
00064 }
00065
00066 protected:
00067 antlr::RefAST returnAST;
00068 private:
00069 static const char* tokenNames[];
00070 #ifndef NO_STATIC_CONSTS
00071 static const int NUM_TOKENS = 22;
00072 #else
00073 enum {
00074 NUM_TOKENS = 22
00075 };
00076 #endif
00077
00078 static const unsigned long _tokenSet_0_data_[];
00079 static const antlr::BitSet _tokenSet_0;
00080 static const unsigned long _tokenSet_1_data_[];
00081 static const antlr::BitSet _tokenSet_1;
00082 static const unsigned long _tokenSet_2_data_[];
00083 static const antlr::BitSet _tokenSet_2;
00084 static const unsigned long _tokenSet_3_data_[];
00085 static const antlr::BitSet _tokenSet_3;
00086 static const unsigned long _tokenSet_4_data_[];
00087 static const antlr::BitSet _tokenSet_4;
00088 static const unsigned long _tokenSet_5_data_[];
00089 static const antlr::BitSet _tokenSet_5;
00090 static const unsigned long _tokenSet_6_data_[];
00091 static const antlr::BitSet _tokenSet_6;
00092 static const unsigned long _tokenSet_7_data_[];
00093 static const antlr::BitSet _tokenSet_7;
00094 };
00095
00096 #endif