- Introduced SVG export, which has some issues with dynamical systems (too many paths...
[mldemos:mldemos.git] / _AlgorithmsPlugins / KernelMethods / interfaceSVMRegress.h
1 /*********************************************************************\r
2 MLDemos: A User-Friendly visualization toolkit for machine learning\r
3 Copyright (C) 2010  Basilio Noris\r
4 Contact: mldemos@b4silio.com\r
5 \r
6 This library is free software; you can redistribute it and/or\r
7 modify it under the terms of the GNU Lesser General Public License,\r
8 version 3 as published by the Free Software Foundation.\r
9 \r
10 This library is distributed in the hope that it will be useful, but\r
11 WITHOUT ANY WARRANTY; without even the implied warranty of\r
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\r
13 Lesser General Public License for more details.\r
14 \r
15 You should have received a copy of the GNU Lesser General Public\r
16 License along with this library; if not, write to the Free\r
17 Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.\r
18 *********************************************************************/\r
19 #ifndef _INTERFACESVMREGRESS_H_\r
20 #define _INTERFACESVMREGRESS_H_\r
21 \r
22 #include <vector>\r
23 #include <interfaces.h>\r
24 #include "regressorSVR.h"\r
25 #include "regressorGPR.h"\r
26 #include "regressorRVM.h"\r
27 #include "regressorKRLS.h"\r
28 #include "ui_paramsSVMregr.h"\r
29 \r
30 class RegrSVM : public QObject, public RegressorInterface\r
31 {\r
32         Q_OBJECT\r
33         Q_INTERFACES(RegressorInterface)\r
34 private:\r
35         QWidget *widget;\r
36         Ui::ParametersRegr *params;\r
37 public:\r
38         RegrSVM();\r
39         // virtual functions to manage the algorithm creation\r
40         Regressor *GetRegressor();\r
41         void DrawInfo(Canvas *canvas, QPainter &painter, Regressor *regressor);\r
42         void DrawModel(Canvas *canvas, QPainter &painter, Regressor *regressor);\r
43         void DrawConfidence(Canvas *canvas, Regressor *regressor);\r
44 \r
45         // virtual functions to manage the GUI and I/O\r
46         QString GetName(){return QString("Kernel");};\r
47         QString GetInfoFile(){return "kernelRegression.html";};\r
48         QWidget *GetParameterWidget(){return widget;};\r
49         void SetParams(Regressor *regressor);\r
50         void SaveOptions(QSettings &settings);\r
51         bool LoadOptions(QSettings &settings);\r
52         void SaveParams(std::ofstream &stream);\r
53         bool LoadParams(char *line, float value);\r
54 public slots:\r
55         void ChangeOptions();\r
56 };\r
57 \r
58 #endif // _INTERFACESVMREGRESS_H_\r