/** * @file MultiDataset.h * @brief multiple datasets * @author Erik Rodner * @date 02/08/2008 */ #ifndef MULTIDATASETINCLUDE #define MULTIDATASETINCLUDE #include <string> #include <map> #include <core/basics/Config.h> #include "LabeledSetSelection.h" #include "LabeledFileList.h" #include "LabeledSet.h" #include "ClassNames.h" namespace OBJREC { /** multiple datasets */ class MultiDataset { protected: LabeledFileList lfl; std::map<std::string, ClassNames> classnames; std::map<std::string, LabeledSet> datasets; void selectExamples ( const std::string & examples_command, const LabeledSet & base, LabeledSet & positives, LabeledSet & negatives, const ClassNames & cn ) const; public: /** simple constructor */ MultiDataset( const NICE::Config *conf ); /** simple destructor */ virtual ~MultiDataset(); const ClassNames & getClassNames ( const std::string & key ) const; const LabeledSet * operator[] ( const std::string & key ) const; const LabeledSet * at ( const std::string & key ) const; }; } // namespace #endif