From 1f337798953cdde94b6cc6bfc94c8083aa06dfc3 Mon Sep 17 00:00:00 2001 From: gustavo Date: Fri, 9 Feb 2007 15:50:01 +0000 Subject: [PATCH] CalibData() method returns AliEMCALCaliData instance filled with CDB calibration data --- EMCAL/AliEMCALLoader.cxx | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/EMCAL/AliEMCALLoader.cxx b/EMCAL/AliEMCALLoader.cxx index 228af6008f8..d3f3e94ccde 100644 --- a/EMCAL/AliEMCALLoader.cxx +++ b/EMCAL/AliEMCALLoader.cxx @@ -51,6 +51,7 @@ #include "AliCDBLocal.h" #include "AliCDBStorage.h" #include "AliCDBManager.h" +#include "AliCDBEntry.h" #include "AliEMCALHit.h" ClassImp(AliEMCALLoader) @@ -129,10 +130,18 @@ AliEMCALLoader::~AliEMCALLoader() //____________________________________________________________________________ AliEMCALCalibData* AliEMCALLoader::CalibData() { - // Check if the instance of AliEMCALCalibData exists, and return it + // Check if the instance of AliEMCALCalibData exists, if not, create it if + // the OCDB is available, and finally return it. - if( !(AliCDBManager::Instance()->IsDefaultStorageSet()) ) - fgCalibData=0x0; + if(!fgCalibData && (AliCDBManager::Instance()->IsDefaultStorageSet())) + { + AliCDBEntry *entry = (AliCDBEntry*) + AliCDBManager::Instance()->Get("EMCAL/Calib/Data"); + if (entry) fgCalibData = (AliEMCALCalibData*) entry->GetObject(); + } + + if(!fgCalibData) + AliFatal("Calibration parameters not found in CDB!"); return fgCalibData; -- 2.31.1