00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00021
00022
00024
00025 #ifndef GLITE_WMS_COMMON_REQUESTAD_GRAMMAR_H
00026 #define GLITE_WMS_COMMON_REQUESTAD_GRAMMAR_H
00027
00028
00029 #include <dirent.h>
00030 #include <iostream>
00031 #include <exception>
00032 #include <stdexcept>
00033 #include <string>
00034 #include <fstream>
00035 #include <stack>
00036 #include <boost/scoped_ptr.hpp>
00037
00038 namespace glite {
00039 namespace jdl {
00040
00041
00042 struct jdl_grammar ;
00043
00044 class jdl_parser{
00045
00046 boost::scoped_ptr<jdl_grammar> grammar ;
00047 std::stack<std::vector<std::string> *> stack;
00048 public:
00049 jdl_parser();
00050
00051 void parseString(std::string str);
00052
00053 void parseFile(std::string file_name);
00054
00055 std::string open_file(const std::string &file_name);
00056
00057 ~jdl_parser();
00058 };
00059
00060 }
00061 }
00062 #endif
00063