ROOT
6.07/01
Reference Guide
ROOT Home Page
Main Page
Tutorials
User's Classes
Namespaces
All Classes
Files
Release Notes
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
tmva
tmva
inc
TMVA
Types.h
Go to the documentation of this file.
1
// @(#)root/tmva $Id$
2
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss
3
4
/**********************************************************************************
5
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
6
* Package: TMVA *
7
* Class : Types *
8
* Web : http://tmva.sourceforge.net *
9
* *
10
* Description: *
11
* GLobal types (singleton class) *
12
* *
13
* Authors (alphabetical): *
14
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
15
* Peter Speckmayer <Peter.Speckmayer@cern.ch> - CERN, Switzerland *
16
* Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland *
17
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, Germany *
18
* *
19
* Copyright (c) 2005: *
20
* CERN, Switzerland *
21
* U. of Victoria, Canada *
22
* MPI-K Heidelberg, Germany *
23
* *
24
* Redistribution and use in source and binary forms, with or without *
25
* modification, are permitted according to the terms listed in LICENSE *
26
* (http://mva.sourceforge.net/license.txt) *
27
**********************************************************************************/
28
29
#ifndef ROOT_TMVA_Types
30
#define ROOT_TMVA_Types
31
32
//////////////////////////////////////////////////////////////////////////
33
// //
34
// Types //
35
// //
36
// Singleton class for Global types used by TMVA //
37
// //
38
//////////////////////////////////////////////////////////////////////////
39
40
#include <map>
41
#if __cplusplus > 199711L
42
#include <atomic>
43
#endif
44
45
#ifndef ROOT_Rtypes
46
#include "
Rtypes.h
"
47
#endif
48
49
#ifndef ROOT_TString
50
#include "
TString.h
"
51
#endif
52
53
namespace
TMVA {
54
55
typedef
UInt_t
TMVAVersion_t
;
56
57
class
MsgLogger
;
58
59
// message types for MsgLogger
60
// define outside of Types class to facilite access
61
enum
EMsgType
{
62
kDEBUG
= 1,
63
kVERBOSE
= 2,
64
kINFO
= 3,
65
kWARNING
= 4,
66
kERROR
= 5,
67
kFATAL
= 6,
68
kSILENT
= 7
69
};
70
71
enum
HistType
{
kMVAType
= 0,
kProbaType
= 1,
kRarityType
= 2,
kCompareType
= 3 };
72
73
74
class
Types
{
75
76
public
:
77
78
// available MVA methods
79
enum
EMVA
{
80
kVariable
= 0,
81
kCuts
,
82
kLikelihood
,
83
kPDERS
,
84
kHMatrix
,
85
kFisher
,
86
kKNN
,
87
kCFMlpANN
,
88
kTMlpANN
,
89
kBDT
,
90
kDT
,
91
kRuleFit
,
92
kSVM
,
93
kMLP
,
94
kBayesClassifier
,
95
kFDA
,
96
kBoost
,
97
kPDEFoam
,
98
kLD
,
99
kPlugins
,
100
kCategory
,
101
kMaxMethod
,
102
kPyRandomForest
,
103
kPyAdaBoost
,
104
kPyGTB
,
105
kC50
,
106
kRSNNS
,
107
kRSVM
,
108
kRXGB
109
};
110
111
// available variable transformations
112
enum
EVariableTransform
{
113
kIdentity
= 0,
114
kDecorrelated
,
115
kNormalized
,
116
kPCA
,
117
kRearranged
,
118
kGauss
,
119
kUniform
,
120
kMaxVariableTransform
121
};
122
123
// type of analysis
124
enum
EAnalysisType
{
125
kClassification
= 0,
126
kRegression
,
127
kMulticlass
,
128
kNoAnalysisType
,
129
kMaxAnalysisType
130
};
131
132
enum
ESBType
{
133
kSignal
= 0,
// Never change this number - it is elsewhere assumed to be zero !
134
kBackground
,
135
kSBBoth
,
136
kMaxSBType
,
137
kTrueType
138
};
139
140
enum
ETreeType
{
141
kTraining
= 0,
142
kTesting
,
143
kMaxTreeType
,
// also used as temporary storage for trees not yet assigned for testing;training...
144
kValidation
,
// these are placeholders... currently not used, but could be moved "forward" if
145
kTrainingOriginal
// ever needed
146
};
147
148
enum
EBoostStage
{
149
kBoostProcBegin
=0,
150
kBeforeTraining
,
151
kBeforeBoosting
,
152
kAfterBoosting
,
153
kBoostProcEnd
154
};
155
156
public
:
157
158
static
Types
&
Instance
();
159
static
void
DestroyInstance
();
160
~Types
();
161
162
Types::EMVA
GetMethodType
(
const
TString
& method )
const
;
163
TString
GetMethodName
(
Types::EMVA
method )
const
;
164
165
Bool_t
AddTypeMapping
(
Types::EMVA
method,
const
TString
& methodname);
166
167
private
:
168
169
Types
();
170
#if __cplusplus > 199711L
171
static
std::atomic<Types*>
fgTypesPtr
;
172
#else
173
static
Types
*
fgTypesPtr
;
174
#endif
175
176
private
:
177
178
std::map<TString, TMVA::Types::EMVA>
fStr2type
;
// types-to-text map
179
mutable
MsgLogger
*
fLogger
;
// message logger
180
MsgLogger
&
Log
()
const
{
return
*
fLogger
; }
181
182
};
183
}
184
185
#endif
TMVA::kRarityType
Definition:
Types.h:71
TMVA::Types::kSBBoth
Definition:
Types.h:135
TMVA::Types::kRSNNS
Definition:
Types.h:106
TMVA::kFATAL
Definition:
Types.h:67
TMVA::Types::EMVA
EMVA
Definition:
Types.h:79
TMVA::Types::kMaxAnalysisType
Definition:
Types.h:129
TMVA::Types
Definition:
Types.h:74
TMVA::Types::kPyAdaBoost
Definition:
Types.h:103
TMVA::Types::kTMlpANN
Definition:
Types.h:88
TMVA::Types::kRXGB
Definition:
Types.h:108
TMVA::Types::kHMatrix
Definition:
Types.h:84
Rtypes.h
TMVA::Types::kTrainingOriginal
Definition:
Types.h:145
TMVA::Types::kSVM
Definition:
Types.h:92
TMVA::Types::EAnalysisType
EAnalysisType
Definition:
Types.h:124
TMVA::TMVAVersion_t
UInt_t TMVAVersion_t
Definition:
Types.h:55
TMVA::Types::kDecorrelated
Definition:
Types.h:114
TMVA::Types::kMulticlass
Definition:
Types.h:127
TMVA::Types::kRSVM
Definition:
Types.h:107
TMVA::Types::kRuleFit
Definition:
Types.h:91
TString
Basic string class.
Definition:
TString.h:137
TMVA::Types::kGauss
Definition:
Types.h:118
TMVA::Types::kCFMlpANN
Definition:
Types.h:87
TMVA::Types::kTesting
Definition:
Types.h:142
TMVA::Types::kNoAnalysisType
Definition:
Types.h:128
Bool_t
bool Bool_t
Definition:
RtypesCore.h:59
TMVA::Types::fStr2type
std::map< TString, TMVA::Types::EMVA > fStr2type
Definition:
Types.h:178
TMVA::Types::kBackground
Definition:
Types.h:134
TMVA::Types::Instance
static Types & Instance()
the the single instance of "Types" if existin already, or create it (Signleton)
Definition:
Types.cxx:64
TMVA::Types::AddTypeMapping
Bool_t AddTypeMapping(Types::EMVA method, const TString &methodname)
Definition:
Types.cxx:95
TMVA::Types::~Types
~Types()
Definition:
Types.cxx:55
TMVA::Types::Types
Types()
constructor
Definition:
Types.cxx:50
TMVA::Types::kC50
Definition:
Types.h:105
TMVA::Types::kFisher
Definition:
Types.h:85
TMVA::Types::kPCA
Definition:
Types.h:116
TMVA::kDEBUG
Definition:
Types.h:62
TMVA::Types::kCuts
Definition:
Types.h:81
TMVA::Types::kMaxSBType
Definition:
Types.h:136
TMVA::Types::fLogger
MsgLogger * fLogger
Definition:
Types.h:179
TMVA::Types::kPyGTB
Definition:
Types.h:104
TMVA::Types::kKNN
Definition:
Types.h:86
TMVA::Types::kPlugins
Definition:
Types.h:99
TMVA::kERROR
Definition:
Types.h:66
TMVA::kCompareType
Definition:
Types.h:71
TMVA::Types::kBayesClassifier
Definition:
Types.h:94
TMVA::Types::kRegression
Definition:
Types.h:126
TString.h
TMVA::Types::kFDA
Definition:
Types.h:95
TMVA::Types::fgTypesPtr
static Types * fgTypesPtr
Definition:
Types.h:173
TMVA::Types::kBoost
Definition:
Types.h:96
TMVA::kProbaType
Definition:
Types.h:71
TMVA::Types::kPyRandomForest
Definition:
Types.h:102
TMVA::Types::kBeforeBoosting
Definition:
Types.h:151
TMVA::Types::kPDEFoam
Definition:
Types.h:97
TMVA::Types::kCategory
Definition:
Types.h:100
TMVA::Types::GetMethodName
TString GetMethodName(Types::EMVA method) const
Definition:
Types.cxx:130
TMVA::Types::kDT
Definition:
Types.h:90
TMVA::EMsgType
EMsgType
Definition:
Types.h:61
TMVA::Types::GetMethodType
Types::EMVA GetMethodType(const TString &method) const
Definition:
Types.cxx:114
UInt_t
unsigned int UInt_t
Definition:
RtypesCore.h:42
TMVA::Types::kClassification
Definition:
Types.h:125
TMVA::Types::ETreeType
ETreeType
Definition:
Types.h:140
TMVA::Types::ESBType
ESBType
Definition:
Types.h:132
TMVA::Types::kBoostProcEnd
Definition:
Types.h:153
TMVA::Types::DestroyInstance
static void DestroyInstance()
"destructor" of the single instance
Definition:
Types.cxx:83
TMVA::Types::kMaxVariableTransform
Definition:
Types.h:120
TMVA::Types::kTrueType
Definition:
Types.h:137
TMVA::Types::kAfterBoosting
Definition:
Types.h:152
TMVA::Types::kBeforeTraining
Definition:
Types.h:150
TMVA::Types::kLD
Definition:
Types.h:98
TMVA::Types::kVariable
Definition:
Types.h:80
TMVA::Types::Log
MsgLogger & Log() const
Definition:
Types.h:180
TMVA::Types::kLikelihood
Definition:
Types.h:82
TMVA::Types::kValidation
Definition:
Types.h:144
TMVA::Types::EBoostStage
EBoostStage
Definition:
Types.h:148
TMVA::Types::kMaxTreeType
Definition:
Types.h:143
TMVA::MsgLogger
Definition:
MsgLogger.h:63
TMVA::kSILENT
Definition:
Types.h:68
TMVA::HistType
HistType
Definition:
Types.h:71
TMVA::Types::kMaxMethod
Definition:
Types.h:101
TMVA::Types::kTraining
Definition:
Types.h:141
TMVA::Types::kNormalized
Definition:
Types.h:115
TMVA::Types::EVariableTransform
EVariableTransform
Definition:
Types.h:112
TMVA::Types::kIdentity
Definition:
Types.h:113
TMVA::Types::kRearranged
Definition:
Types.h:117
TMVA::kVERBOSE
Definition:
Types.h:63
TMVA::Types::kMLP
Definition:
Types.h:93
TMVA::Types::kBDT
Definition:
Types.h:89
TMVA::Types::kPDERS
Definition:
Types.h:83
TMVA::kINFO
Definition:
Types.h:64
TMVA::kWARNING
Definition:
Types.h:65
TMVA::Types::kUniform
Definition:
Types.h:119
TMVA::kMVAType
Definition:
Types.h:71
TMVA::Types::kBoostProcBegin
Definition:
Types.h:149
TMVA::Types::kSignal
Definition:
Types.h:133