tobicore
7.0.0
Main Page
Modules
Classes
Files
Examples
File List
All
Classes
Functions
Variables
Typedefs
Enumerator
Friends
Groups
Pages
ICClassifier.hpp
1
/*
2
Copyright (C) 2009-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
3
Michele Tavella <michele.tavella@epfl.ch>
4
5
This program is free software: you can redistribute it and/or modify
6
it under the terms of the GNU General Public License as published by
7
the Free Software Foundation, either version 3 of the License, or
8
(at your option) any later version.
9
10
This program is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
GNU General Public License for more details.
14
15
You should have received a copy of the GNU General Public License
16
along with this program. If not, see <http://www.gnu.org/licenses/>.
17
*/
18
19
#ifndef ICCLASSIFIER_HPP
20
#define ICCLASSIFIER_HPP
21
22
#include <cstdio>
23
#include <iostream>
24
#include <map>
25
#include <string>
26
#include "ICClass.hpp"
27
#include "ICSetClass.hpp"
28
#include "ICTypes.hpp"
29
30
#define ICCLASSIFIER_CHNAME_SIZE 128
31
#define ICCLASSIFIER_CHDESC_SIZE 128
32
48
class
ICClassifier
{
49
public
:
52
ICClassifier
(
const
std::string& name,
const
std::string& desc);
53
56
ICClassifier
(
const
std::string& name,
const
std::string& desc,
57
ICVtype
vtype,
ICLtype
ltype);
58
59
virtual
~
ICClassifier
();
60
64
virtual
std::string
GetName
(
void
)
const
;
65
69
virtual
std::string
GetDescription
(
void
)
const
;
70
74
virtual
const
char
*
GetChName
(
void
);
75
79
virtual
const
char
*
GetChDescription
(
void
);
80
86
virtual
bool
SetValueType
(
ICVtype
vtype);
87
93
virtual
bool
SetLabelType
(
ICLtype
ltype);
94
100
virtual
bool
SetValueType
(std::string vtype);
101
107
virtual
bool
SetLabelType
(std::string ltype);
108
113
virtual
ICVtype
GetValueType
(
void
)
const
;
114
119
virtual
ICLtype
GetLabelType
(
void
)
const
;
120
126
static
ICVtype
ValueType
(
const
std::string& vtype);
132
static
ICLtype
LabelType
(
const
std::string& ltype);
133
139
static
ICVtype
ValueChType
(
const
char
* vtype);
140
145
static
ICLtype
LabelChType
(
const
char
* ltype);
146
147
public
:
149
static
const
ICVtype
ValueUndef
= -1;
151
static
const
ICVtype
ValueProb
= 0;
153
static
const
ICVtype
ValueDist
= 1;
155
static
const
ICVtype
ValueCLbl
= 2;
157
static
const
ICVtype
ValueRCoe
= 3;
158
160
static
const
ICLtype
LabelUndef
= -1;
162
static
const
ICLtype
LabelBiosig
= 0;
164
static
const
ICLtype
LabelCustom
= 1;
166
static
const
ICLtype
LabelClass
= 2;
167
169
static
std::string
TxtValueUndef
;
171
static
std::string
TxtValueProb
;
173
static
std::string
TxtValueDist
;
175
static
std::string
TxtValueCLbl
;
177
static
std::string
TxtValueRCoe
;
179
static
std::string
TxtLabelUndef
;
181
static
std::string
TxtLabelBiosig
;
183
static
std::string
TxtLabelCustom
;
185
static
std::string
TxtLabelClass
;
186
187
public
:
192
ICSetClass
classes
;
193
protected
:
195
std::string
_name
;
197
std::string
_desc
;
199
char
_chname
[ICCLASSIFIER_CHNAME_SIZE];
201
char
_chdesc
[ICCLASSIFIER_CHDESC_SIZE];
203
ICVtype
_vtype
;
205
ICLtype
_ltype
;
206
};
207
208
#endif
tobiic
ICClassifier.hpp
Generated on Tue Oct 23 2012 13:15:34 for tobicore by
1.8.1.2