#include <TError.h>
#include <TObjString.h>
#include <TMap.h>
#include <TClass.h>
#include "AliRsnTrainManager.h"
ClassImp(AliRsnTrainManager)
AliRsnTrainManager *AliRsnTrainManager::fgRsnTrainManager = 0;
AliRsnTrainManager::AliRsnTrainManager(const char *name,const char *title) : TNamed(name,title),
fGlobals(0)
{
fgRsnTrainManager = this;
if (TClass::IsCallingNew() != TClass::kDummyNew) {
fGlobals = new TMap();
}
}
AliRsnTrainManager::AliRsnTrainManager(const AliRsnTrainManager ©) : TNamed(copy),
fGlobals(copy.fGlobals)
{
}
AliRsnTrainManager &AliRsnTrainManager::operator=(const AliRsnTrainManager ©)
{
TNamed::operator=(copy);
if (this == ©)
return *this;
fGlobals = copy.fGlobals;
return (*this);
}
AliRsnTrainManager::~AliRsnTrainManager()
{
delete fGlobals;
fgRsnTrainManager = 0;
}
void AliRsnTrainManager::SetGlobalStr(const char *key, const char *value,Bool_t verbose)
{
AliRsnTrainManager *mgr = AliRsnTrainManager::GetRsnTrainManager();
if (!mgr) {
::Error("AliRsnTrainManager::SetGlobalStr", "No analysis manager defined");
return;
}
Bool_t valid = kFALSE;
TString existing = AliRsnTrainManager::GetGlobalStr(key, valid);
if (valid) {
if (verbose) ::Error("AliRsnTrainManager::SetGlobalStr", "Global %s = %s already defined.", key, existing.Data());
return;
}
mgr->GetGlobals()->Add(new TObjString(key), new TObjString(value));
}
const char *AliRsnTrainManager::GetGlobalStr(const char *key, Bool_t &valid)
{
valid = kFALSE;
AliRsnTrainManager *mgr = AliRsnTrainManager::GetRsnTrainManager();
if (!mgr) return 0;
TObject *value = mgr->GetGlobals()->GetValue(key);
if (!value) return 0;
valid = kTRUE;
return value->GetName();
}
void AliRsnTrainManager::SetGlobalInt(const char *key, Int_t value,Bool_t verbose)
{
AliRsnTrainManager *mgr = AliRsnTrainManager::GetRsnTrainManager();
if (!mgr) {
::Error("AliRsnTrainManager::SetGlobalStr", "No analysis manager defined");
return;
}
Bool_t valid = kFALSE;
Int_t existing = AliRsnTrainManager::GetGlobalInt(key, valid);
if (valid) {
if (verbose) ::Error("AliRsnTrainManager::SetGlobalInt", "Global %s = %i already defined.", key, existing);
return;
}
mgr->GetGlobals()->Add(new TObjString(key), new TObjString(TString::Format("%i",value)));
}
Int_t AliRsnTrainManager::GetGlobalInt(const char *key, Bool_t &valid)
{
valid = kFALSE;
AliRsnTrainManager *mgr = AliRsnTrainManager::GetRsnTrainManager();
if (!mgr) return 0;
TObject *value = mgr->GetGlobals()->GetValue(key);
if (!value) return 0;
valid = kTRUE;
TString s = value->GetName();
return s.Atoi();
}
void AliRsnTrainManager::SetGlobalDbl(const char *key, Double_t value,Bool_t verbose)
{
AliRsnTrainManager *mgr = AliRsnTrainManager::GetRsnTrainManager();
if (!mgr) {
::Error("AliRsnTrainManager::SetGlobalStr", "No analysis manager defined");
return;
}
Bool_t valid = kFALSE;
Double_t existing = AliRsnTrainManager::GetGlobalDbl(key, valid);
if (valid) {
if (verbose) ::Error("AliRsnTrainManager::SetGlobalInt", "Global %s = %g already defined.", key, existing);
return;
}
mgr->GetGlobals()->Add(new TObjString(key), new TObjString(TString::Format("%f",value)));
}
Double_t AliRsnTrainManager::GetGlobalDbl(const char *key, Bool_t &valid)
{
valid = kFALSE;
AliRsnTrainManager *mgr = AliRsnTrainManager::GetRsnTrainManager();
if (!mgr) return 0;
TObject *value = mgr->GetGlobals()->GetValue(key);
if (!value) return 0;
valid = kTRUE;
TString s = value->GetName();
return s.Atof();
}
void AliRsnTrainManager::SetGlobalObj(const char *key, TObject *value,Bool_t verbose)
{
AliRsnTrainManager *mgr = AliRsnTrainManager::GetRsnTrainManager();
if (!mgr) {
::Error("AliRsnTrainManager::SetGlobalStr", "No analysis manager defined");
return;
}
Bool_t valid = kFALSE;
TObject *existing = AliRsnTrainManager::GetGlobalObj(key, valid);
if (valid) {
if (verbose) ::Error("AliRsnTrainManager::SetGlobalInt", "Global %s = %p already defined.", key, existing);
return;
}
mgr->GetGlobals()->Add(new TObjString(key), value->Clone());
}
TObject *AliRsnTrainManager::GetGlobalObj(const char *key, Bool_t &valid)
{
valid = kFALSE;
AliRsnTrainManager *mgr = AliRsnTrainManager::GetRsnTrainManager();
if (!mgr) return 0;
TObject *value = mgr->GetGlobals()->GetValue(key);
return value;
}
void AliRsnTrainManager::Print(Option_t *) const {
if (!fGlobals) return;
Printf("=========================================================");
Printf(" Rsn Global variables: \n");
TIter next(fGlobals->GetTable());
TPair *a;
TObjString *str;
while ((a = (TPair *)next())) {
str = 0;
if (a->Value() && a->Value()->IsOnHeap()) {
str = dynamic_cast<TObjString *>(a->Value());
}
if (str) {
if (str) Printf(" %20s = %-20s",a->Key()->GetName(),str->GetString().Data());
}
}
Printf("\n=========================================================");
}
AliRsnTrainManager.cxx:10 AliRsnTrainManager.cxx:11 AliRsnTrainManager.cxx:12 AliRsnTrainManager.cxx:13 AliRsnTrainManager.cxx:14 AliRsnTrainManager.cxx:15 AliRsnTrainManager.cxx:16 AliRsnTrainManager.cxx:17 AliRsnTrainManager.cxx:18 AliRsnTrainManager.cxx:19 AliRsnTrainManager.cxx:20 AliRsnTrainManager.cxx:21 AliRsnTrainManager.cxx:22 AliRsnTrainManager.cxx:23 AliRsnTrainManager.cxx:24 AliRsnTrainManager.cxx:25 AliRsnTrainManager.cxx:26 AliRsnTrainManager.cxx:27 AliRsnTrainManager.cxx:28 AliRsnTrainManager.cxx:29 AliRsnTrainManager.cxx:30 AliRsnTrainManager.cxx:31 AliRsnTrainManager.cxx:32 AliRsnTrainManager.cxx:33 AliRsnTrainManager.cxx:34 AliRsnTrainManager.cxx:35 AliRsnTrainManager.cxx:36 AliRsnTrainManager.cxx:37 AliRsnTrainManager.cxx:38 AliRsnTrainManager.cxx:39 AliRsnTrainManager.cxx:40 AliRsnTrainManager.cxx:41 AliRsnTrainManager.cxx:42 AliRsnTrainManager.cxx:43 AliRsnTrainManager.cxx:44 AliRsnTrainManager.cxx:45 AliRsnTrainManager.cxx:46 AliRsnTrainManager.cxx:47 AliRsnTrainManager.cxx:48 AliRsnTrainManager.cxx:49 AliRsnTrainManager.cxx:50 AliRsnTrainManager.cxx:51 AliRsnTrainManager.cxx:52 AliRsnTrainManager.cxx:53 AliRsnTrainManager.cxx:54 AliRsnTrainManager.cxx:55 AliRsnTrainManager.cxx:56 AliRsnTrainManager.cxx:57 AliRsnTrainManager.cxx:58 AliRsnTrainManager.cxx:59 AliRsnTrainManager.cxx:60 AliRsnTrainManager.cxx:61 AliRsnTrainManager.cxx:62 AliRsnTrainManager.cxx:63 AliRsnTrainManager.cxx:64 AliRsnTrainManager.cxx:65 AliRsnTrainManager.cxx:66 AliRsnTrainManager.cxx:67 AliRsnTrainManager.cxx:68 AliRsnTrainManager.cxx:69 AliRsnTrainManager.cxx:70 AliRsnTrainManager.cxx:71 AliRsnTrainManager.cxx:72 AliRsnTrainManager.cxx:73 AliRsnTrainManager.cxx:74 AliRsnTrainManager.cxx:75 AliRsnTrainManager.cxx:76 AliRsnTrainManager.cxx:77 AliRsnTrainManager.cxx:78 AliRsnTrainManager.cxx:79 AliRsnTrainManager.cxx:80 AliRsnTrainManager.cxx:81 AliRsnTrainManager.cxx:82 AliRsnTrainManager.cxx:83 AliRsnTrainManager.cxx:84 AliRsnTrainManager.cxx:85 AliRsnTrainManager.cxx:86 AliRsnTrainManager.cxx:87 AliRsnTrainManager.cxx:88 AliRsnTrainManager.cxx:89 AliRsnTrainManager.cxx:90 AliRsnTrainManager.cxx:91 AliRsnTrainManager.cxx:92 AliRsnTrainManager.cxx:93 AliRsnTrainManager.cxx:94 AliRsnTrainManager.cxx:95 AliRsnTrainManager.cxx:96 AliRsnTrainManager.cxx:97 AliRsnTrainManager.cxx:98 AliRsnTrainManager.cxx:99 AliRsnTrainManager.cxx:100 AliRsnTrainManager.cxx:101 AliRsnTrainManager.cxx:102 AliRsnTrainManager.cxx:103 AliRsnTrainManager.cxx:104 AliRsnTrainManager.cxx:105 AliRsnTrainManager.cxx:106 AliRsnTrainManager.cxx:107 AliRsnTrainManager.cxx:108 AliRsnTrainManager.cxx:109 AliRsnTrainManager.cxx:110 AliRsnTrainManager.cxx:111 AliRsnTrainManager.cxx:112 AliRsnTrainManager.cxx:113 AliRsnTrainManager.cxx:114 AliRsnTrainManager.cxx:115 AliRsnTrainManager.cxx:116 AliRsnTrainManager.cxx:117 AliRsnTrainManager.cxx:118 AliRsnTrainManager.cxx:119 AliRsnTrainManager.cxx:120 AliRsnTrainManager.cxx:121 AliRsnTrainManager.cxx:122 AliRsnTrainManager.cxx:123 AliRsnTrainManager.cxx:124 AliRsnTrainManager.cxx:125 AliRsnTrainManager.cxx:126 AliRsnTrainManager.cxx:127 AliRsnTrainManager.cxx:128 AliRsnTrainManager.cxx:129 AliRsnTrainManager.cxx:130 AliRsnTrainManager.cxx:131 AliRsnTrainManager.cxx:132 AliRsnTrainManager.cxx:133 AliRsnTrainManager.cxx:134 AliRsnTrainManager.cxx:135 AliRsnTrainManager.cxx:136 AliRsnTrainManager.cxx:137 AliRsnTrainManager.cxx:138 AliRsnTrainManager.cxx:139 AliRsnTrainManager.cxx:140 AliRsnTrainManager.cxx:141 AliRsnTrainManager.cxx:142 AliRsnTrainManager.cxx:143 AliRsnTrainManager.cxx:144 AliRsnTrainManager.cxx:145 AliRsnTrainManager.cxx:146 AliRsnTrainManager.cxx:147 AliRsnTrainManager.cxx:148 AliRsnTrainManager.cxx:149 AliRsnTrainManager.cxx:150 AliRsnTrainManager.cxx:151 AliRsnTrainManager.cxx:152 AliRsnTrainManager.cxx:153 AliRsnTrainManager.cxx:154 AliRsnTrainManager.cxx:155 AliRsnTrainManager.cxx:156 AliRsnTrainManager.cxx:157 AliRsnTrainManager.cxx:158 AliRsnTrainManager.cxx:159 AliRsnTrainManager.cxx:160 AliRsnTrainManager.cxx:161 AliRsnTrainManager.cxx:162 AliRsnTrainManager.cxx:163 AliRsnTrainManager.cxx:164 AliRsnTrainManager.cxx:165 AliRsnTrainManager.cxx:166 AliRsnTrainManager.cxx:167 AliRsnTrainManager.cxx:168 AliRsnTrainManager.cxx:169 AliRsnTrainManager.cxx:170 AliRsnTrainManager.cxx:171 AliRsnTrainManager.cxx:172 AliRsnTrainManager.cxx:173 AliRsnTrainManager.cxx:174 AliRsnTrainManager.cxx:175 AliRsnTrainManager.cxx:176 AliRsnTrainManager.cxx:177 AliRsnTrainManager.cxx:178 AliRsnTrainManager.cxx:179 AliRsnTrainManager.cxx:180 AliRsnTrainManager.cxx:181 AliRsnTrainManager.cxx:182 AliRsnTrainManager.cxx:183 AliRsnTrainManager.cxx:184 AliRsnTrainManager.cxx:185 AliRsnTrainManager.cxx:186 AliRsnTrainManager.cxx:187 AliRsnTrainManager.cxx:188 AliRsnTrainManager.cxx:189 AliRsnTrainManager.cxx:190 AliRsnTrainManager.cxx:191 AliRsnTrainManager.cxx:192 AliRsnTrainManager.cxx:193 AliRsnTrainManager.cxx:194 AliRsnTrainManager.cxx:195 AliRsnTrainManager.cxx:196 AliRsnTrainManager.cxx:197 AliRsnTrainManager.cxx:198 AliRsnTrainManager.cxx:199 AliRsnTrainManager.cxx:200 AliRsnTrainManager.cxx:201 AliRsnTrainManager.cxx:202 AliRsnTrainManager.cxx:203 AliRsnTrainManager.cxx:204 AliRsnTrainManager.cxx:205 AliRsnTrainManager.cxx:206 AliRsnTrainManager.cxx:207 AliRsnTrainManager.cxx:208 AliRsnTrainManager.cxx:209 AliRsnTrainManager.cxx:210 AliRsnTrainManager.cxx:211 AliRsnTrainManager.cxx:212 AliRsnTrainManager.cxx:213 AliRsnTrainManager.cxx:214 AliRsnTrainManager.cxx:215 AliRsnTrainManager.cxx:216 AliRsnTrainManager.cxx:217 AliRsnTrainManager.cxx:218 AliRsnTrainManager.cxx:219 AliRsnTrainManager.cxx:220 AliRsnTrainManager.cxx:221 AliRsnTrainManager.cxx:222 AliRsnTrainManager.cxx:223 AliRsnTrainManager.cxx:224 AliRsnTrainManager.cxx:225 AliRsnTrainManager.cxx:226 AliRsnTrainManager.cxx:227 AliRsnTrainManager.cxx:228 AliRsnTrainManager.cxx:229 AliRsnTrainManager.cxx:230 AliRsnTrainManager.cxx:231 AliRsnTrainManager.cxx:232 AliRsnTrainManager.cxx:233 AliRsnTrainManager.cxx:234 AliRsnTrainManager.cxx:235 AliRsnTrainManager.cxx:236 AliRsnTrainManager.cxx:237 AliRsnTrainManager.cxx:238 AliRsnTrainManager.cxx:239 AliRsnTrainManager.cxx:240 AliRsnTrainManager.cxx:241 AliRsnTrainManager.cxx:242 AliRsnTrainManager.cxx:243