00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef INDRI_QUERYPARSERFACTORY_HPP
00020 #define INDRI_QUERYPARSERFACTORY_HPP
00021 #include <string>
00022 #include "antlr/ANTLRException.hpp"
00023 namespace indri
00024 {
00025 namespace lang
00026 {
00027 class ScoredExtentNode;
00028 }
00029
00030 namespace api
00031 {
00034 class QueryParserWrapper {
00035 public:
00036 virtual ~QueryParserWrapper() {}
00037 virtual indri::lang::ScoredExtentNode *query() = 0;
00038 };
00039
00040
00043 class QueryParserFactory {
00044 private:
00045
00046
00047 public:
00051 static QueryParserWrapper *get(const std::string &query,
00052 const std::string &parserType = "indri");
00053 };
00054 }
00055 }
00056
00057 #endif // INDRI_QUERYPARSERFACTORY_HPP