31 #ifndef GRT_POST_PROCESSING_HEADER
32 #define GRT_POST_PROCESSING_HEADER
65 bool copyBaseVariables(
const PostProcessing *postProcessingModule);
81 virtual bool reset(){
return true; }
90 virtual bool saveModelToFile(std::string filename)
const;
99 virtual bool loadModelFromFile(std::string filename);
122 std::string getPostProcessingType()
const;
127 UINT getPostProcessingInputMode()
const;
132 UINT getPostProcessingOutputMode()
const;
153 bool getInitialized()
const;
158 bool getIsPostProcessingInputModePredictedClassLabel()
const;
163 bool getIsPostProcessingInputModeClassLikelihoods()
const;
168 bool getIsPostProcessingOutputModePredictedClassLabel()
const;
173 bool getIsPostProcessingOutputModeClassLikelihoods()
const;
191 static PostProcessing* createInstanceFromString(std::string
const &postProcessingType);
198 enum PostprocessingInputModes{INPUT_MODE_NOT_SET=0,INPUT_MODE_PREDICTED_CLASS_LABEL,INPUT_MODE_CLASS_LIKELIHOODS};
199 enum PostprocessingOutputModes{OUTPUT_MODE_NOT_SET=0,OUTPUT_MODE_PREDICTED_CLASS_LABEL,OUTPUT_MODE_CLASS_LIKELIHOODS};
215 bool savePostProcessingSettingsToFile(std::fstream &file)
const;
222 bool loadPostProcessingSettingsFromFile(std::fstream &file);
224 std::string postProcessingType;
226 UINT postProcessingInputMode;
227 UINT postProcessingOutputMode;
230 static StringPostProcessingMap *getMap() {
231 if( !stringPostProcessingMap ){ stringPostProcessingMap =
new StringPostProcessingMap; }
232 return stringPostProcessingMap;
236 static StringPostProcessingMap *stringPostProcessingMap;
237 static UINT numPostProcessingInstances;
241 template<
typename T >
PostProcessing *newPostProcessingModuleInstance() {
return new T; }
243 template<
typename T >
247 getMap()->insert( std::pair< std::string,
PostProcessing*(*)() >(newPostProcessingModuleName, &newPostProcessingModuleInstance< T > ) );
253 #endif //GRT_POST_PROCESSING_HEADER
virtual bool deepCopyFrom(const PostProcessing *postProcessing)
virtual bool saveModelToFile(std::fstream &file) const
virtual bool process(const VectorFloat &inputVector)
UINT getNumOutputDimensions() const
This is the main base class that all GRT machine learning algorithms should inherit from...
virtual bool loadModelFromFile(std::fstream &file)
UINT getNumInputDimensions() const
std::map< std::string, PostProcessing *(*)() > StringPostProcessingMap