3 //**************************************************************************
4 //* This file is property of and copyright by the ALICE HLT Project *
5 //* ALICE Experiment at CERN, All rights reserved. *
7 //* Primary Authors: Matthias Richter <Matthias.Richter@ift.uib.no> *
8 //* for The ALICE HLT Project. *
10 //* Permission to use, copy, modify and distribute this software and its *
11 //* documentation strictly for non-commercial purposes is hereby granted *
12 //* without fee, provided that the above copyright notice appears in all *
13 //* copies and that both the copyright notice and this permission notice *
14 //* appear in the supporting documentation. The authors make no claims *
15 //* about the suitability of this software for any purpose. It is *
16 //* provided "as is" without express or implied warranty. *
17 //**************************************************************************
19 /// @file AliHLTMisc.cxx
20 /// @author Matthias Richter
22 /// @brief Miscellaneous methods for the HLT AliRoot integration
24 #include "AliHLTMiscImplementation.h"
25 #include "AliHLTLogging.h"
26 #include "AliCDBManager.h"
27 #include "AliCDBStorage.h"
28 #include "AliCDBEntry.h"
30 /** ROOT macro for the implementation of ROOT specific class methods */
31 ClassImp(AliHLTMiscImplementation);
33 AliHLTMiscImplementation::AliHLTMiscImplementation()
37 AliHLTMiscImplementation::~AliHLTMiscImplementation()
39 // see header file for function documentation
42 int AliHLTMiscImplementation::InitCDB(const char* cdbpath)
44 // see header file for function documentation
46 AliCDBManager* pCDB = AliCDBManager::Instance();
49 log.Logging(kHLTLogError, "InitCDB", "CDB handling", "Could not get CDB instance");
51 if (cdbpath && cdbpath[0]!=0) {
52 pCDB->SetDefaultStorage(cdbpath);
53 log.Logging(kHLTLogDebug, "InitCDB", "CDB handling", "CDB instance 0x%x", pCDB);
54 } else if (!pCDB->IsDefaultStorageSet()) {
55 const char* cdbUri="local://$ALICE_ROOT/OCDB";
56 pCDB->SetDefaultStorage(cdbUri);
58 log.Logging(kHLTLogInfo, "InitCDB", "CDB handling", "set default URI: %s", cdbUri);
64 int AliHLTMiscImplementation::SetCDBRunNo(int runNo)
66 // see header file for function documentation
68 AliCDBManager* pCDB = AliCDBManager::Instance();
71 log.Logging(kHLTLogError, "InitCDB", "CDB handling", "Could not get CDB instance");
78 AliCDBEntry* AliHLTMiscImplementation::LoadOCDBEntry(const char* path, int runNo, int version, int subVersion)
80 // see header file for function documentation
81 AliCDBStorage* store = AliCDBManager::Instance()->GetDefaultStorage();
85 if (version<0) version = store->GetLatestVersion(path, runNo);
86 if (subVersion<0) subVersion = store->GetLatestSubVersion(path, runNo, version);
87 return AliCDBManager::Instance()->Get(path, runNo, version, subVersion);
90 TObject* AliHLTMiscImplementation::ExtractObject(AliCDBEntry* entry)
92 // see header file for function documentation
93 if (!entry) return NULL;
94 return entry->GetObject();
97 int AliHLTMiscInitCDB(const char* cdbpath)
100 AliCDBManager* pCDB = AliCDBManager::Instance();
103 log.Logging(kHLTLogError, "InitCDB", "CDB handling", "Could not get CDB instance");
105 if (cdbpath && cdbpath[0]!=0) {
106 pCDB->SetDefaultStorage(cdbpath);
107 log.Logging(kHLTLogDebug, "InitCDB", "CDB handling", "CDB instance 0x%x", pCDB);
108 } else if (!pCDB->IsDefaultStorageSet()) {
109 const char* cdbUri="local://$ALICE_ROOT/OCDB";
110 pCDB->SetDefaultStorage(cdbUri);
112 log.Logging(kHLTLogInfo, "InitCDB", "CDB handling", "set default URI: %s", cdbUri);
118 int AliHLTMiscSetCDBRunNo(int runNo)
121 AliCDBManager* pCDB = AliCDBManager::Instance();
124 log.Logging(kHLTLogError, "InitCDB", "CDB handling", "Could not get CDB instance");