00001
00002
00003
00004 #ifndef AITOOLS_INVERTEDINDEX_EXTERNALIZABLE_HPP
00005 #define AITOOLS_INVERTEDINDEX_EXTERNALIZABLE_HPP
00006
00007 #include <boost/filesystem.hpp>
00008 #include <stdexcept>
00009 #include <string>
00010
00011 namespace bfs = boost::filesystem;
00012
00013 namespace aitools {
00014 namespace invertedindex {
00015
00026 class Externalizable {
00027
00028 public:
00029
00033 Externalizable() {}
00034
00038 virtual ~Externalizable() {}
00039
00040 public:
00041
00047 virtual void
00048 load(const bfs::path& path) throw (std::invalid_argument) = 0;
00049
00055 virtual void
00056 save(const bfs::path& path) throw (std::invalid_argument) = 0;
00057
00058 };
00059
00060 }
00061 }
00062
00063 #endif // AITOOLS_INVERTEDINDEX_EXTERNALIZABLE_HPP