#include <TClonesArray.h>
#include <TObjArray.h>
#include "AliCDBManager.h"
#include "AliCDBEntry.h"
#include "AliLog.h"
#include "AliEMCALTriggerDCSConfigDB.h"
#include "AliEMCALTriggerDCSConfig.h"
#include "AliEMCALTriggerSTUDCSConfig.h"
#include "AliEMCALTriggerTRUDCSConfig.h"
ClassImp(AliEMCALTriggerDCSConfigDB)
AliEMCALTriggerDCSConfigDB* AliEMCALTriggerDCSConfigDB::fgInstance = 0;
Bool_t AliEMCALTriggerDCSConfigDB::fgTerminated = kFALSE;
AliEMCALTriggerDCSConfigDB* AliEMCALTriggerDCSConfigDB::Instance()
{
if (fgTerminated != kFALSE)
{
return 0;
}
if (fgInstance == 0)
{
fgInstance = new AliEMCALTriggerDCSConfigDB();
}
return fgInstance;
}
void AliEMCALTriggerDCSConfigDB::Terminate()
{
fgTerminated = kTRUE;
if (fgInstance != 0)
{
delete fgInstance;
fgInstance = 0;
}
}
AliEMCALTriggerDCSConfigDB::AliEMCALTriggerDCSConfigDB() : TObject()
,fRun(-1)
{
for (Int_t i = 0; i < kCDBCacheSize; ++i)
{
fCDBCache[i] = 0;
fCDBEntries[i] = 0;
}
}
AliEMCALTriggerDCSConfigDB::AliEMCALTriggerDCSConfigDB(const AliEMCALTriggerDCSConfigDB &c) : TObject(c)
,fRun(-1)
{
for (Int_t i = 0; i < kCDBCacheSize; ++i)
{
fCDBCache[i] = 0;
fCDBEntries[i] = 0;
}
}
AliEMCALTriggerDCSConfigDB &AliEMCALTriggerDCSConfigDB::operator=(const AliEMCALTriggerDCSConfigDB &c)
{
if (this != &c)
{
AliFatal("No assignment operator defined");
}
return *this;
}
AliEMCALTriggerDCSConfigDB::~AliEMCALTriggerDCSConfigDB()
{
Invalidate();
}
const TObject *AliEMCALTriggerDCSConfigDB::GetCachedCDBObject(Int_t id)
{
switch (id)
{
case kIDTriggerConfig :
return CacheCDBEntry(kIDTriggerConfig, "EMCAL/Calib/Trigger");
break;
default:
AliError("Object not found!");
break;
}
return 0x0;
}
AliCDBEntry* AliEMCALTriggerDCSConfigDB::GetCDBEntry(const char *cdbPath)
{
AliCDBEntry *entry = AliCDBManager::Instance()->Get(cdbPath,fRun);
if (!entry)
{
AliError(Form("Failed to get entry: %s",cdbPath));
return 0;
}
return entry;
}
const TObject *AliEMCALTriggerDCSConfigDB::CacheCDBEntry(Int_t id, const char *cdbPath)
{
if (!fCDBCache[id])
{
fCDBEntries[id] = GetCDBEntry(cdbPath);
if (fCDBEntries[id]) fCDBCache[id] = fCDBEntries[id]->GetObject();
}
return fCDBCache[id];
}
void AliEMCALTriggerDCSConfigDB::SetRun(Long64_t run)
{
if (fRun == run) return;
fRun = run;
Invalidate();
}
void AliEMCALTriggerDCSConfigDB::Invalidate()
{
for (Int_t i = 0; i < kCDBCacheSize; ++i)
{
if (fCDBEntries[i])
{
if (AliCDBManager::Instance()->GetCacheFlag() == kFALSE)
{
if ((fCDBEntries[i]->IsOwner() == kFALSE) && (fCDBCache[i])) delete fCDBCache[i];
delete fCDBEntries[i];
}
fCDBEntries[i] = 0;
fCDBCache[i] = 0;
}
}
}
const AliEMCALTriggerDCSConfig* AliEMCALTriggerDCSConfigDB::GetTriggerDCSConfig()
{
const AliEMCALTriggerDCSConfig* dcsConf = dynamic_cast<const AliEMCALTriggerDCSConfig*>(GetCachedCDBObject(kIDTriggerConfig));
if (!dcsConf)
{
AliError("Trigger DCS configuration not found!");
return 0x0;
}
else
return dcsConf;
}
AliEMCALTriggerDCSConfigDB.cxx:1 AliEMCALTriggerDCSConfigDB.cxx:2 AliEMCALTriggerDCSConfigDB.cxx:3 AliEMCALTriggerDCSConfigDB.cxx:4 AliEMCALTriggerDCSConfigDB.cxx:5 AliEMCALTriggerDCSConfigDB.cxx:6 AliEMCALTriggerDCSConfigDB.cxx:7 AliEMCALTriggerDCSConfigDB.cxx:8 AliEMCALTriggerDCSConfigDB.cxx:9 AliEMCALTriggerDCSConfigDB.cxx:10 AliEMCALTriggerDCSConfigDB.cxx:11 AliEMCALTriggerDCSConfigDB.cxx:12 AliEMCALTriggerDCSConfigDB.cxx:13 AliEMCALTriggerDCSConfigDB.cxx:14 AliEMCALTriggerDCSConfigDB.cxx:15 AliEMCALTriggerDCSConfigDB.cxx:16 AliEMCALTriggerDCSConfigDB.cxx:17 AliEMCALTriggerDCSConfigDB.cxx:18 AliEMCALTriggerDCSConfigDB.cxx:19 AliEMCALTriggerDCSConfigDB.cxx:20 AliEMCALTriggerDCSConfigDB.cxx:21 AliEMCALTriggerDCSConfigDB.cxx:22 AliEMCALTriggerDCSConfigDB.cxx:23 AliEMCALTriggerDCSConfigDB.cxx:24 AliEMCALTriggerDCSConfigDB.cxx:25 AliEMCALTriggerDCSConfigDB.cxx:26 AliEMCALTriggerDCSConfigDB.cxx:27 AliEMCALTriggerDCSConfigDB.cxx:28 AliEMCALTriggerDCSConfigDB.cxx:29 AliEMCALTriggerDCSConfigDB.cxx:30 AliEMCALTriggerDCSConfigDB.cxx:31 AliEMCALTriggerDCSConfigDB.cxx:32 AliEMCALTriggerDCSConfigDB.cxx:33 AliEMCALTriggerDCSConfigDB.cxx:34 AliEMCALTriggerDCSConfigDB.cxx:35 AliEMCALTriggerDCSConfigDB.cxx:36 AliEMCALTriggerDCSConfigDB.cxx:37 AliEMCALTriggerDCSConfigDB.cxx:38 AliEMCALTriggerDCSConfigDB.cxx:39 AliEMCALTriggerDCSConfigDB.cxx:40 AliEMCALTriggerDCSConfigDB.cxx:41 AliEMCALTriggerDCSConfigDB.cxx:42 AliEMCALTriggerDCSConfigDB.cxx:43 AliEMCALTriggerDCSConfigDB.cxx:44 AliEMCALTriggerDCSConfigDB.cxx:45 AliEMCALTriggerDCSConfigDB.cxx:46 AliEMCALTriggerDCSConfigDB.cxx:47 AliEMCALTriggerDCSConfigDB.cxx:48 AliEMCALTriggerDCSConfigDB.cxx:49 AliEMCALTriggerDCSConfigDB.cxx:50 AliEMCALTriggerDCSConfigDB.cxx:51 AliEMCALTriggerDCSConfigDB.cxx:52 AliEMCALTriggerDCSConfigDB.cxx:53 AliEMCALTriggerDCSConfigDB.cxx:54 AliEMCALTriggerDCSConfigDB.cxx:55 AliEMCALTriggerDCSConfigDB.cxx:56 AliEMCALTriggerDCSConfigDB.cxx:57 AliEMCALTriggerDCSConfigDB.cxx:58 AliEMCALTriggerDCSConfigDB.cxx:59 AliEMCALTriggerDCSConfigDB.cxx:60 AliEMCALTriggerDCSConfigDB.cxx:61 AliEMCALTriggerDCSConfigDB.cxx:62 AliEMCALTriggerDCSConfigDB.cxx:63 AliEMCALTriggerDCSConfigDB.cxx:64 AliEMCALTriggerDCSConfigDB.cxx:65 AliEMCALTriggerDCSConfigDB.cxx:66 AliEMCALTriggerDCSConfigDB.cxx:67 AliEMCALTriggerDCSConfigDB.cxx:68 AliEMCALTriggerDCSConfigDB.cxx:69 AliEMCALTriggerDCSConfigDB.cxx:70 AliEMCALTriggerDCSConfigDB.cxx:71 AliEMCALTriggerDCSConfigDB.cxx:72 AliEMCALTriggerDCSConfigDB.cxx:73 AliEMCALTriggerDCSConfigDB.cxx:74 AliEMCALTriggerDCSConfigDB.cxx:75 AliEMCALTriggerDCSConfigDB.cxx:76 AliEMCALTriggerDCSConfigDB.cxx:77 AliEMCALTriggerDCSConfigDB.cxx:78 AliEMCALTriggerDCSConfigDB.cxx:79 AliEMCALTriggerDCSConfigDB.cxx:80 AliEMCALTriggerDCSConfigDB.cxx:81 AliEMCALTriggerDCSConfigDB.cxx:82 AliEMCALTriggerDCSConfigDB.cxx:83 AliEMCALTriggerDCSConfigDB.cxx:84 AliEMCALTriggerDCSConfigDB.cxx:85 AliEMCALTriggerDCSConfigDB.cxx:86 AliEMCALTriggerDCSConfigDB.cxx:87 AliEMCALTriggerDCSConfigDB.cxx:88 AliEMCALTriggerDCSConfigDB.cxx:89 AliEMCALTriggerDCSConfigDB.cxx:90 AliEMCALTriggerDCSConfigDB.cxx:91 AliEMCALTriggerDCSConfigDB.cxx:92 AliEMCALTriggerDCSConfigDB.cxx:93 AliEMCALTriggerDCSConfigDB.cxx:94 AliEMCALTriggerDCSConfigDB.cxx:95 AliEMCALTriggerDCSConfigDB.cxx:96 AliEMCALTriggerDCSConfigDB.cxx:97 AliEMCALTriggerDCSConfigDB.cxx:98 AliEMCALTriggerDCSConfigDB.cxx:99 AliEMCALTriggerDCSConfigDB.cxx:100 AliEMCALTriggerDCSConfigDB.cxx:101 AliEMCALTriggerDCSConfigDB.cxx:102 AliEMCALTriggerDCSConfigDB.cxx:103 AliEMCALTriggerDCSConfigDB.cxx:104 AliEMCALTriggerDCSConfigDB.cxx:105 AliEMCALTriggerDCSConfigDB.cxx:106 AliEMCALTriggerDCSConfigDB.cxx:107 AliEMCALTriggerDCSConfigDB.cxx:108 AliEMCALTriggerDCSConfigDB.cxx:109 AliEMCALTriggerDCSConfigDB.cxx:110 AliEMCALTriggerDCSConfigDB.cxx:111 AliEMCALTriggerDCSConfigDB.cxx:112 AliEMCALTriggerDCSConfigDB.cxx:113 AliEMCALTriggerDCSConfigDB.cxx:114 AliEMCALTriggerDCSConfigDB.cxx:115 AliEMCALTriggerDCSConfigDB.cxx:116 AliEMCALTriggerDCSConfigDB.cxx:117 AliEMCALTriggerDCSConfigDB.cxx:118 AliEMCALTriggerDCSConfigDB.cxx:119 AliEMCALTriggerDCSConfigDB.cxx:120 AliEMCALTriggerDCSConfigDB.cxx:121 AliEMCALTriggerDCSConfigDB.cxx:122 AliEMCALTriggerDCSConfigDB.cxx:123 AliEMCALTriggerDCSConfigDB.cxx:124 AliEMCALTriggerDCSConfigDB.cxx:125 AliEMCALTriggerDCSConfigDB.cxx:126 AliEMCALTriggerDCSConfigDB.cxx:127 AliEMCALTriggerDCSConfigDB.cxx:128 AliEMCALTriggerDCSConfigDB.cxx:129 AliEMCALTriggerDCSConfigDB.cxx:130 AliEMCALTriggerDCSConfigDB.cxx:131 AliEMCALTriggerDCSConfigDB.cxx:132 AliEMCALTriggerDCSConfigDB.cxx:133 AliEMCALTriggerDCSConfigDB.cxx:134 AliEMCALTriggerDCSConfigDB.cxx:135 AliEMCALTriggerDCSConfigDB.cxx:136 AliEMCALTriggerDCSConfigDB.cxx:137 AliEMCALTriggerDCSConfigDB.cxx:138 AliEMCALTriggerDCSConfigDB.cxx:139 AliEMCALTriggerDCSConfigDB.cxx:140 AliEMCALTriggerDCSConfigDB.cxx:141 AliEMCALTriggerDCSConfigDB.cxx:142 AliEMCALTriggerDCSConfigDB.cxx:143 AliEMCALTriggerDCSConfigDB.cxx:144 AliEMCALTriggerDCSConfigDB.cxx:145 AliEMCALTriggerDCSConfigDB.cxx:146 AliEMCALTriggerDCSConfigDB.cxx:147 AliEMCALTriggerDCSConfigDB.cxx:148 AliEMCALTriggerDCSConfigDB.cxx:149 AliEMCALTriggerDCSConfigDB.cxx:150 AliEMCALTriggerDCSConfigDB.cxx:151 AliEMCALTriggerDCSConfigDB.cxx:152 AliEMCALTriggerDCSConfigDB.cxx:153 AliEMCALTriggerDCSConfigDB.cxx:154 AliEMCALTriggerDCSConfigDB.cxx:155 AliEMCALTriggerDCSConfigDB.cxx:156 AliEMCALTriggerDCSConfigDB.cxx:157 AliEMCALTriggerDCSConfigDB.cxx:158 AliEMCALTriggerDCSConfigDB.cxx:159 AliEMCALTriggerDCSConfigDB.cxx:160 AliEMCALTriggerDCSConfigDB.cxx:161 AliEMCALTriggerDCSConfigDB.cxx:162 AliEMCALTriggerDCSConfigDB.cxx:163 AliEMCALTriggerDCSConfigDB.cxx:164 AliEMCALTriggerDCSConfigDB.cxx:165 AliEMCALTriggerDCSConfigDB.cxx:166 AliEMCALTriggerDCSConfigDB.cxx:167 AliEMCALTriggerDCSConfigDB.cxx:168 AliEMCALTriggerDCSConfigDB.cxx:169 AliEMCALTriggerDCSConfigDB.cxx:170 AliEMCALTriggerDCSConfigDB.cxx:171 AliEMCALTriggerDCSConfigDB.cxx:172 AliEMCALTriggerDCSConfigDB.cxx:173 AliEMCALTriggerDCSConfigDB.cxx:174 AliEMCALTriggerDCSConfigDB.cxx:175 AliEMCALTriggerDCSConfigDB.cxx:176 AliEMCALTriggerDCSConfigDB.cxx:177 AliEMCALTriggerDCSConfigDB.cxx:178 AliEMCALTriggerDCSConfigDB.cxx:179 AliEMCALTriggerDCSConfigDB.cxx:180 AliEMCALTriggerDCSConfigDB.cxx:181 AliEMCALTriggerDCSConfigDB.cxx:182 AliEMCALTriggerDCSConfigDB.cxx:183 AliEMCALTriggerDCSConfigDB.cxx:184 AliEMCALTriggerDCSConfigDB.cxx:185 AliEMCALTriggerDCSConfigDB.cxx:186 AliEMCALTriggerDCSConfigDB.cxx:187 AliEMCALTriggerDCSConfigDB.cxx:188 AliEMCALTriggerDCSConfigDB.cxx:189 AliEMCALTriggerDCSConfigDB.cxx:190 AliEMCALTriggerDCSConfigDB.cxx:191 AliEMCALTriggerDCSConfigDB.cxx:192 AliEMCALTriggerDCSConfigDB.cxx:193 AliEMCALTriggerDCSConfigDB.cxx:194 AliEMCALTriggerDCSConfigDB.cxx:195 AliEMCALTriggerDCSConfigDB.cxx:196 AliEMCALTriggerDCSConfigDB.cxx:197 AliEMCALTriggerDCSConfigDB.cxx:198 AliEMCALTriggerDCSConfigDB.cxx:199 AliEMCALTriggerDCSConfigDB.cxx:200 AliEMCALTriggerDCSConfigDB.cxx:201 AliEMCALTriggerDCSConfigDB.cxx:202 AliEMCALTriggerDCSConfigDB.cxx:203 AliEMCALTriggerDCSConfigDB.cxx:204 AliEMCALTriggerDCSConfigDB.cxx:205 AliEMCALTriggerDCSConfigDB.cxx:206 AliEMCALTriggerDCSConfigDB.cxx:207 AliEMCALTriggerDCSConfigDB.cxx:208 AliEMCALTriggerDCSConfigDB.cxx:209 AliEMCALTriggerDCSConfigDB.cxx:210 AliEMCALTriggerDCSConfigDB.cxx:211 AliEMCALTriggerDCSConfigDB.cxx:212 AliEMCALTriggerDCSConfigDB.cxx:213 AliEMCALTriggerDCSConfigDB.cxx:214 AliEMCALTriggerDCSConfigDB.cxx:215 AliEMCALTriggerDCSConfigDB.cxx:216 AliEMCALTriggerDCSConfigDB.cxx:217 AliEMCALTriggerDCSConfigDB.cxx:218 AliEMCALTriggerDCSConfigDB.cxx:219 AliEMCALTriggerDCSConfigDB.cxx:220 AliEMCALTriggerDCSConfigDB.cxx:221 AliEMCALTriggerDCSConfigDB.cxx:222 AliEMCALTriggerDCSConfigDB.cxx:223 AliEMCALTriggerDCSConfigDB.cxx:224 AliEMCALTriggerDCSConfigDB.cxx:225 AliEMCALTriggerDCSConfigDB.cxx:226 AliEMCALTriggerDCSConfigDB.cxx:227 AliEMCALTriggerDCSConfigDB.cxx:228 AliEMCALTriggerDCSConfigDB.cxx:229 AliEMCALTriggerDCSConfigDB.cxx:230 AliEMCALTriggerDCSConfigDB.cxx:231 AliEMCALTriggerDCSConfigDB.cxx:232 AliEMCALTriggerDCSConfigDB.cxx:233 AliEMCALTriggerDCSConfigDB.cxx:234 AliEMCALTriggerDCSConfigDB.cxx:235 AliEMCALTriggerDCSConfigDB.cxx:236 AliEMCALTriggerDCSConfigDB.cxx:237 AliEMCALTriggerDCSConfigDB.cxx:238 AliEMCALTriggerDCSConfigDB.cxx:239 AliEMCALTriggerDCSConfigDB.cxx:240 AliEMCALTriggerDCSConfigDB.cxx:241 AliEMCALTriggerDCSConfigDB.cxx:242 AliEMCALTriggerDCSConfigDB.cxx:243 AliEMCALTriggerDCSConfigDB.cxx:244 AliEMCALTriggerDCSConfigDB.cxx:245 AliEMCALTriggerDCSConfigDB.cxx:246 AliEMCALTriggerDCSConfigDB.cxx:247