@@ -65,10 +65,10 @@ void Digitizer::init()
6565
6666 if (!digitizerParams.efficiencyCcdbPath .empty ()) {
6767 LOG (info) << " Loading efficiency map from CCDB: " << digitizerParams.efficiencyCcdbPath ;
68- loadEfficiencyMapFromCCDB ( digitizerParams.efficiencyCcdbPath );
68+ loadMapFromCCDB ( mEfficiencyMap , digitizerParams.efficiencyCcdbPath , " mEfficiencyMap " );
6969 } else if (!digitizerParams.efficiencyFilePath .empty ()) {
7070 LOG (info) << " Loading efficiency map from file: " << digitizerParams.efficiencyFilePath ;
71- loadEfficiencyMap ( digitizerParams.efficiencyFilePath );
71+ loadMap ( mEfficiencyMap , digitizerParams.efficiencyFilePath , " mEfficiencyMap " );
7272 } else {
7373 LOG (info) << " No efficiency map provided, using uniform efficiency: " << digitizerParams.efficiency * 100 << " %" ;
7474 }
@@ -346,7 +346,7 @@ int Digitizer::energyToCharge(float energyLoss) const
346346
347347// _______________________________________________________________________
348348
349- void Digitizer::loadEfficiencyMap ( const std::string& filePath)
349+ void Digitizer::loadMap ( TH1D * map, const std::string& filePath, const char * mapName )
350350{
351351 // Load the efficiency map from a file
352352 TFile* file = TFile::Open (filePath.c_str ());
@@ -367,13 +367,13 @@ void Digitizer::loadEfficiencyMap(const std::string& filePath)
367367 file->Close ();
368368 return ;
369369 }
370- mEfficiencyMap = dynamic_cast <TH2D *>(rawMap->Clone (" mEfficiencyMap " ));
371- mEfficiencyMap ->SetDirectory (nullptr ); // Detach from file to avoid deletion when file is closed
370+ map = dynamic_cast <TH2D *>(rawMap->Clone (mapName ));
371+ map ->SetDirectory (nullptr ); // Detach from file to avoid deletion when file is closed
372372
373373 file->Close ();
374374}
375375
376- void Digitizer::loadEfficiencyMapFromCCDB ( const std::string& ccdbPath)
376+ void Digitizer::loadMapFromCCDB ( TH1D * map, const std::string& ccdbPath, const char * mapName )
377377{
378378 // Load the efficiency map from CCDB
379379 auto rawMap = o2::ccdb::BasicCCDBManager::instance ().get <TH2D >(ccdbPath);
@@ -386,8 +386,8 @@ void Digitizer::loadEfficiencyMapFromCCDB(const std::string& ccdbPath)
386386 LOG (info) << " Efficiency map dimensions: " << rawMap->GetNbinsX () << " x " << rawMap->GetNbinsY ();
387387 }
388388
389- mEfficiencyMap = dynamic_cast <TH2D *>(rawMap->Clone (" mEfficiencyMap " ));
390- mEfficiencyMap ->SetDirectory (nullptr ); // Detach from file to avoid deletion when file is closed
389+ map = dynamic_cast <TH2D *>(rawMap->Clone (mapName ));
390+ map ->SetDirectory (nullptr ); // Detach from file to avoid deletion when file is closed
391391
392392 LOG (info) << " Successfully loaded efficiency map from CCDB path: " << ccdbPath;
393393}
0 commit comments