00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef INDRI_FILECLASSENVIRONMENTFACTORY_HPP
00019 #define INDRI_FILECLASSENVIRONMENTFACTORY_HPP
00020
00021 #include "indri/FileClassEnvironment.hpp"
00022 #include <string>
00023 #include "indri/HashTable.hpp"
00024
00025 class FileClassEnvironmentFactory {
00026 private:
00027 std::map<std::string, struct file_class_environment_spec_stl*> _userTable;
00028
00029 public:
00030 ~FileClassEnvironmentFactory();
00031
00032 FileClassEnvironment* get( const std::string& name );
00033 void addFileClass( const std::string& name,
00034 const std::string& iterator,
00035 const std::string& parser,
00036 const std::string& startDocTag,
00037 const std::string& endDocTag,
00038 const std::string& endMetadataTag,
00039 const std::vector<std::string>& include,
00040 const std::vector<std::string>& exclude,
00041 const std::vector<std::string>& index,
00042 const std::vector<std::string>& metadata,
00043 const std::map<std::string,std::string>& conflations );
00044 };
00045
00046 #endif // INDRI_FILECLASSENVIRONMENTFACTORY_HPP
00047