#ifndef INDEX_SEARCHER_HDR #define INDEX_SEARCHER_HDR #include #include #include #include #include "concordia/common/config.hpp" #include "concordia/substring_occurence.hpp" #include "concordia/hash_generator.hpp" #include "concordia/concordia_exception.hpp" #include "concordia/anubis_searcher.hpp" #include "concordia/anubis_search_result.hpp" #include /*! Class for searching the index with a sentence. */ using namespace std; class IndexSearcher { public: explicit IndexSearcher(); /*! Destructor. */ virtual ~IndexSearcher(); vector simpleSearch( boost::shared_ptr hashGenerator, boost::shared_ptr > T, boost::shared_ptr > markers, boost::shared_ptr > SA, const string & pattern) throw(ConcordiaException); vector anubisSearch( boost::shared_ptr hashGenerator, boost::shared_ptr > T, boost::shared_ptr > markers, boost::shared_ptr > SA, const string & pattern) throw(ConcordiaException); private: boost::shared_ptr _anubisSearcher; }; #endif