8 from inspect
import currentframe, getframeinfo
9 caller = currentframe().f_back
10 func_name = getframeinfo(caller)[2]
11 caller = caller.f_back
12 func = caller.f_locals.get(
13 func_name, caller.f_globals.get(
35 doFix, name =
runAODFix(flags, correctCluster)
40 result=ComponentAccumulator()
43 hasElectrons =
"Electrons" in flags.Input.Collections
44 hasPhotons =
"Photons" in flags.Input.Collections
45 if not hasElectrons
and not hasPhotons:
52 from SGComps.AddressRemappingConfig
import InputRenameCfg
54 result.merge(InputRenameCfg(
"xAOD::ElectronContainer",
"Electrons",
"old_Electrons"))
55 result.merge(InputRenameCfg(
"xAOD::ElectronAuxContainer",
"ElectronsAux.",
"old_ElectronsAux."))
57 result.merge(InputRenameCfg(
"xAOD::PhotonContainer",
"Photons",
"old_Photons"))
58 result.merge(InputRenameCfg(
"xAOD::PhotonAuxContainer",
"PhotonsAux.",
"old_PhotonsAux."))
61 kwargs[
'CorrectCluster'] = correctCluster
62 kwargs[
'FixAmbiguityLinks'] = (name.find(
'egammaAmbiguityLinksFix') >= 0)
65 from LArBadChannelTool.LArBadChannelConfig
import LArBadChannelCfg
66 result.merge(LArBadChannelCfg(flags))
69 from CaloBadChannelTool.CaloBadChanToolConfig
import CaloBadChanToolCfg
70 result.popToolsAndMerge( CaloBadChanToolCfg(flags) )
71 result.merge(InputRenameCfg(
"xAOD::CaloClusterContainer",
"egammaClusters",
"old_egammaClusters"))
72 result.merge(InputRenameCfg(
"xAOD::CaloClusterAuxContainer",
"egammaClustersAux.",
"old_egammaClustersAux."))
73 result.merge(InputRenameCfg(
"CaloClusterCellLinkContainer",
"egammaClusters_links",
"old_egammaClusters_links"))
74 kwargs[
'CaloDetDescrManager'] =
'CaloDetDescrManager'
75 from egammaTools.egammaSwToolConfig
import egammaSwToolCfg
76 kwargs[
'ClusterCorrectionTool'] = result.popToolsAndMerge(egammaSwToolCfg(flags))
77 from egammaMVACalib.egammaMVACalibConfig
import egammaMVASvcCfg
78 kwargs[
'MVACalibSvc'] = result.getPrimaryAndMerge(egammaMVASvcCfg(flags))
79 kwargs[
'EGammaClustersOutputName'] = flags.Egamma.Keys.Output.CaloClusters
80 kwargs[
'EGammaClustersInputName'] = f
'old_{flags.Egamma.Keys.Output.CaloClusters}'
82 kwargs[
'IsoLeakCorrectionTool'] = CompFactory.CP.IsolationCorrectionTool(
83 LogLogFitForLeakage =
True)
86 result.addEventAlgo(CompFactory.egammaAODFixes(**kwargs))