SHOGUN  3.2.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Preprocessor.h
Go to the documentation of this file.
1 /*
2  * This program is free software; you can redistribute it and/or modify
3  * it under the terms of the GNU General Public License as published by
4  * the Free Software Foundation; either version 3 of the License, or
5  * (at your option) any later version.
6  *
7  * Written (W) 1999-2009 Soeren Sonnenburg
8  * Written (W) 1999-2008 Gunnar Raetsch
9  * Copyright (C) 1999-2009 Fraunhofer Institute FIRST and Max-Planck-Society
10  */
11 
12 #ifndef PREPROCESSOR_H_
13 #define PREPROCESSOR_H_
14 
15 #include <shogun/lib/config.h>
16 
17 #include <shogun/lib/common.h>
18 #include <shogun/base/SGObject.h>
21 
22 namespace shogun
23 {
24 
25 class CFeatures;
26 
33 {
47  P_PCA=130,
51  P_SUMONE=170,
53  P_PNORM = 190,
55  P_FISHERLDA = 210,
56  P_BAHSIC = 220
57 };
58 
75 class CPreprocessor : public CSGObject
76 {
77 public:
80  {
81  };
82 
84  virtual ~CPreprocessor()
85  {
86  }
87 
89  virtual bool init(CFeatures* features)=0;
90 
97  virtual CFeatures* apply(CFeatures* features)=0;
98 
100  virtual void cleanup()=0;
101 
103  virtual EFeatureType get_feature_type()=0;
104 
106  virtual EFeatureClass get_feature_class()=0;
107 
109  virtual EPreprocessorType get_type() const=0;
110 };
111 }
112 #endif // PREPROCESSOR_H_

SHOGUN Machine Learning Toolbox - Documentation