X-Git-Url: http://git.uio.no/git/?p=u%2Fmrichter%2FAliRoot.git;a=blobdiff_plain;f=ITS%2FAliITSDetTypeRec.cxx;h=49a56239bb09228b2b1977c0af3605fb67f6ccd8;hp=011f2a5125a2ca6bf98f541df3877155dd4f3338;hb=ed446fa30f058d226adb7fa66f13ee87e0a0c7f4;hpb=6fa74b815e64a411b69a5c13cf88fd3226a62211 diff --git a/ITS/AliITSDetTypeRec.cxx b/ITS/AliITSDetTypeRec.cxx index 011f2a5125a..49a56239bb0 100644 --- a/ITS/AliITSDetTypeRec.cxx +++ b/ITS/AliITSDetTypeRec.cxx @@ -43,6 +43,8 @@ #include "AliITSRawClusterSDD.h" #include "AliITSRawClusterSSD.h" #include "AliITSRecPoint.h" +#include "AliITSReconstructor.h" +#include "AliITSRecoParam.h" #include "AliITSCalibrationSDD.h" #include "AliITSMapSDD.h" #include "AliITSDriftSpeedArraySDD.h" @@ -404,7 +406,8 @@ Bool_t AliITSDetTypeRec::GetCalibration() { AliCDBEntry *entryPedestalSSD = AliCDBManager::Instance()->Get("ITS/Calib/PedestalSSD"); AliCDBEntry *entryGainSSD = AliCDBManager::Instance()->Get("ITS/Calib/GainSSD"); AliCDBEntry *entryBadChannelsSSD = AliCDBManager::Instance()->Get("ITS/Calib/BadChannelsSSD"); - + // Entry for the AliITSRecoParam object + AliCDBEntry *entryRP = AliCDBManager::Instance()->Get("ITS/Calib/RecoParam/"); AliCDBEntry *entry2SPD = AliCDBManager::Instance()->Get("ITS/Calib/RespSPD"); AliCDBEntry *entry2SDD = AliCDBManager::Instance()->Get("ITS/Calib/RespSDD"); AliCDBEntry *entry2SSD = AliCDBManager::Instance()->Get("ITS/Calib/RespSSD"); @@ -415,7 +418,7 @@ Bool_t AliITSDetTypeRec::GetCalibration() { if(!entrySPD || !entrySDD || !entryNoiseSSD || !entryGainSSD || !entryPedestalSSD || !entryBadChannelsSSD || - !entry2SPD || !entry2SDD || !entry2SSD || !drSpSDD || !ddlMapSDD || !mapASDD || !mapTSDD){ + !entry2SPD || !entry2SDD || !entry2SSD || !drSpSDD || !ddlMapSDD || !mapASDD || !mapTSDD || !entryRP){ AliFatal("Calibration object retrieval failed! "); return kFALSE; } @@ -472,6 +475,16 @@ Bool_t AliITSDetTypeRec::GetCalibration() { if(!cacheStatus)entry2SSD->SetObject(NULL); entry2SSD->SetOwner(kTRUE); + AliITSRecoParam *rp = (AliITSRecoParam*)entryRP->GetObject(); + if(!cacheStatus)entryRP->SetObject(NULL); + entryRP->SetOwner(kTRUE); + if(!AliITSReconstructor::GetRecoParam()){ + AliITSReconstructor::SetRecoParam(rp); + } + else { + AliWarning("AliITSRecoPAram object has been already set in AliITSReconstructor. The OCDB instance will not be used\n"); + } + // DB entries are deleted. In this way metadeta objects are deleted as well if(!cacheStatus){ delete entrySPD;