-/// \param addMapInSimulation (default kFALSE);
-/// kTRUE: creates file MUON/Calib/TriggerEfficiency/Run0_99999999_v0_s?.root
-/// with calculated chamber efficiency which can be used in the next simulation
-/// \param inputDir
-/// path to AliESDs.root (default ".")
-
- Char_t filename[150], *className = "AliMUONTriggerEfficiencyCells";
- sprintf(filename,"%s/AliESDs.root",inputDir);
-
- TFile *file = new TFile(filename,"read");
- if(!file){
- cerr << "Cannot find " << filename << "\nExit!" << endl;
- return;
- }
-
- TTree *esdTree = (TTree*)file->Get("esdTree");
- if(!esdTree){
- cerr << "Cannot find esdTree in " << filename << "\nExit!" << endl;
- return;
- }
-
- AliMUONTriggerEfficiencyCells *effMap =
- (AliMUONTriggerEfficiencyCells*)esdTree->GetUserInfo()->FindObject(className);
- if(!effMap){
- cerr << "Cannot find " << className << " in esdTree.\nExit!" << endl;
- return;
- }
-
- effMap->DisplayEfficiency();
-
- if(!addMapInSimulation) return;
-
- AliMUONCDB muonCDB;
- muonCDB.WriteToCDB("MUON/Calib/TriggerEfficiency",effMap,0,99999999,true);
+/// \param inputFile (default "./MUON.TriggerEfficiencyMaps.root")
+/// File with the numerator and denominator histos for efficiency calculation
+/// (It is the output of the PWG3/muon/AliAnalysisTaskTrigChEff analysis
+/// \param outputCDB (default "")
+/// add the map on the specified CDB
+/// \param firstRun (default 0)
+/// first run of validity for CDB object
+/// \param lastRun (default AliCDBRunRange::Infinity())
+/// last run of validity for CDB Object
+
+ AliCDBManager::Instance()->SetDefaultStorage("local://$ALICE_ROOT/OCDB");
+
+ AliMUONTriggerEfficiencyCells* effMap = new AliMUONTriggerEfficiencyCells(inputFile.Data());
+
+ if ( outputCDB.IsNull() ){
+ // Draw the efficiency and exit
+ AliCDBManager::Instance()->SetRun(firstRun);
+ AliMUONTriggerChamberEfficiency* trigChEff = new AliMUONTriggerChamberEfficiency(effMap);
+
+ trigChEff->DisplayEfficiency(kFALSE,kFALSE);
+ return;
+ }
+
+
+ // Write efficiency on OCDB
+
+ AliCDBManager::Instance()->SetSpecificStorage("MUON/Calib/TriggerEfficiency", outputCDB.Data());
+
+ AliMUONCDB::WriteToCDB(effMap, "MUON/Calib/TriggerEfficiency", firstRun, lastRun, "Measured efficiencies");