00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef _DBMANAGER_HPP
00013 #define _DBMANAGER_HPP
00014
00015 #include "MemParser.hpp"
00016 namespace lemur
00017 {
00018 namespace distrib
00019 {
00020
00025 typedef struct results {
00026 int numDocs;
00027 docid_t * ids;
00028 } results_t;
00029
00030
00031
00037 class DBManager {
00038
00039 public:
00040
00041 virtual void open (const string &info) = 0;
00042 virtual void close() = 0;
00043
00045 virtual results_t * query (const char * query, int numdocs) const = 0;
00047 virtual MemParser * getParser() const = 0;
00049 virtual doc_t * getDoc(const docid_t docid) const = 0;
00051 virtual void output(const docid_t docid) const = 0;
00053 virtual void setOutputFile(const string &filename) const = 0;
00054
00055 };
00056 }
00057 }
00058
00059 #endif