00001 #ifndef INC_MTAnisoGAConfParser_hpp_
00002 #define INC_MTAnisoGAConfParser_hpp_
00003
00004 #include <antlr/config.hpp>
00005
00006 #include <antlr/TokenStream.hpp>
00007 #include <antlr/TokenBuffer.hpp>
00008 #include "MTAnisoGAConfParserTokenTypes.hpp"
00009 #include <antlr/LLkParser.hpp>
00010
00011 #line 1 "MTAnisoGAConf.g"
00012
00013 #include <string>
00014 #include <vector>
00015 #include <iostream>
00016
00017 #line 18 "MTAnisoGAConfParser.hpp"
00018 class CUSTOM_API MTAnisoGAConfParser : public antlr::LLkParser, public MTAnisoGAConfParserTokenTypes
00019 {
00020 #line 20 "MTAnisoGAConf.g"
00021
00022 private:
00023 int i; double dtemp; int itemp; std::string stemp; bool btemp;
00024 public:
00025 bool verbose;
00026 int mtfitexponent;
00027 int popsize;
00028 double inittemp;
00029 double coolingratio;
00030 int generations;
00031 double mutationprob;
00032 double crossoverprob;
00033 int threads;
00034 double starttime;
00035 double endtime;
00036 double tensorerror;
00037 double reserror;
00038 double phaseerror;
00039 std::string gatype;
00040 std::string outputbase;
00041 std::string mode;
00042 std::string mtfit;
00043 std::string mtinputdata;
00044 std::string ptensordata;
00045 int annealinggeneration;
00046 bool elitist;
00047 std::vector< double > thickbase;
00048 std::vector< double > thickstep;
00049 std::vector< int > thicksizes;
00050 std::vector< double > resbase;
00051 std::vector< double > resstep;
00052 std::vector< int > ressizes;
00053 std::vector< double > anisobase;
00054 std::vector< double > anisostep;
00055 std::vector< int > anisosizes;
00056 std::vector< double > strikebase;
00057 std::vector< double > strikestep;
00058 std::vector< int > strikesizes;
00059 std::vector< double > weights;
00060 double conddiffweight;
00061 double anisotropyweight;
00062 double strikediffweight;
00063 #line 22 "MTAnisoGAConfParser.hpp"
00064 public:
00065 void initializeASTFactory( antlr::ASTFactory& factory );
00066 protected:
00067 MTAnisoGAConfParser(antlr::TokenBuffer& tokenBuf, int k);
00068 public:
00069 MTAnisoGAConfParser(antlr::TokenBuffer& tokenBuf);
00070 protected:
00071 MTAnisoGAConfParser(antlr::TokenStream& lexer, int k);
00072 public:
00073 MTAnisoGAConfParser(antlr::TokenStream& lexer);
00074 MTAnisoGAConfParser(const antlr::ParserSharedInputState& state);
00075 int getNumTokens() const
00076 {
00077 return MTAnisoGAConfParser::NUM_TOKENS;
00078 }
00079 const char* getTokenName( int type ) const
00080 {
00081 if( type > getNumTokens() ) return 0;
00082 return MTAnisoGAConfParser::tokenNames[type];
00083 }
00084 const char* const* getTokenNames() const
00085 {
00086 return MTAnisoGAConfParser::tokenNames;
00087 }
00088 public: void configentry();
00089 public: bool boolvalue();
00090 public: double numvalue();
00091 public: std::string stringvalue();
00092 public: void configfile();
00093 public:
00094 antlr::RefAST getAST()
00095 {
00096 return returnAST;
00097 }
00098
00099 protected:
00100 antlr::RefAST returnAST;
00101 private:
00102 static const char* tokenNames[];
00103 #ifndef NO_STATIC_CONSTS
00104 static const int NUM_TOKENS = 55;
00105 #else
00106 enum {
00107 NUM_TOKENS = 55
00108 };
00109 #endif
00110
00111 static const unsigned long _tokenSet_0_data_[];
00112 static const antlr::BitSet _tokenSet_0;
00113 static const unsigned long _tokenSet_1_data_[];
00114 static const antlr::BitSet _tokenSet_1;
00115 static const unsigned long _tokenSet_2_data_[];
00116 static const antlr::BitSet _tokenSet_2;
00117 static const unsigned long _tokenSet_3_data_[];
00118 static const antlr::BitSet _tokenSet_3;
00119 static const unsigned long _tokenSet_4_data_[];
00120 static const antlr::BitSet _tokenSet_4;
00121 static const unsigned long _tokenSet_5_data_[];
00122 static const antlr::BitSet _tokenSet_5;
00123 static const unsigned long _tokenSet_6_data_[];
00124 static const antlr::BitSet _tokenSet_6;
00125 };
00126
00127 #endif