11 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
12 from AthenaConfiguration.ComponentFactory
import CompFactory
16 """Main config method for LRT e-gamma decorations"""
31 if not hasattr(acc,
"ElectronChargeIDSelectorLoose"):
32 if ConfigFlags.Derivation.Egamma.addECIDS:
33 from ElectronPhotonSelectorTools.AsgElectronChargeIDSelectorToolConfig
import (
34 AsgElectronChargeIDSelectorToolCfg,
37 ElectronChargeIDSelector = acc.popToolsAndMerge(
39 ConfigFlags, name=
"ElectronChargeIDSelectorLoose"
42 ElectronChargeIDSelector.primaryVertexContainer =
"PrimaryVertices"
43 ElectronChargeIDSelector.TrainingFile = (
44 "ElectronPhotonSelectorTools/ChargeID/"
45 +
"ECIDS_20180731rel21Summer2018.root"
47 acc.addPublicTool(ElectronChargeIDSelector)
52 from DerivationFrameworkEGamma.EGammaToolsConfig
import (
53 EGElectronLikelihoodToolWrapperCfg,
60 if ConfigFlags.Derivation.Egamma.addECIDS:
61 LRTElectronPassECIDS = acc.getPrimaryAndMerge(
64 name=
"LRTElectronPassECIDS",
65 EGammaElectronLikelihoodTool=ElectronChargeIDSelector,
68 StoreGateEntryName=
"DFCommonElectronsECIDS",
69 ContainerName=
"LRTElectrons",
76 from DerivationFrameworkEGamma.EGammaToolsConfig
import EGElectronAmbiguityToolCfg
78 LRTElectronAmbiguity = acc.getPrimaryAndMerge(
81 name=
"LRTElectronAdditionnalAmbiguity",
82 idCut=
"DFCommonElectronsLHLooseNoPix",
83 ContainerName=
"LRTElectrons",
84 isMC=ConfigFlags.Input.isMC,
89 LRTEGAugmentationTools = [LRTElectronAmbiguity]
90 if ConfigFlags.Derivation.Egamma.addECIDS:
91 LRTEGAugmentationTools.extend([LRTElectronPassECIDS])
95 if ConfigFlags.Input.isMC:
97 from MCTruthClassifier.MCTruthClassifierConfig
import MCTruthClassifierCfg
99 BkgElectronMCTruthClassifier = acc.popToolsAndMerge(
102 name=
"BkgElectronMCTruthClassifier",
103 ParticleCaloExtensionTool=
"",
106 acc.addPublicTool(BkgElectronMCTruthClassifier)
108 from DerivationFrameworkEGamma.EGammaToolsConfig
import (
109 BkgElectronClassificationCfg,
112 BkgLRTElectronClassificationTool = acc.getPrimaryAndMerge(
115 name=
"BkgLRTElectronClassificationTool",
116 MCTruthClassifierTool=BkgElectronMCTruthClassifier,
117 ElectronContainerName=
"LRTElectrons",
120 LRTEGAugmentationTools.append(BkgLRTElectronClassificationTool)
127 CompFactory.DerivationFramework.CommonAugmentation(
128 "EGammaLRTKernel", AugmentationTools=LRTEGAugmentationTools
135 from IsolationAlgs.DerivationTrackIsoConfig
import DerivationTrackIsoCfg
139 ConfigFlags, object_types=(
"Electrons",
"Muons"), postfix=
"LRT"
143 if not hasattr(acc,
"LRTElectronCaloIsolationBuilder"):
144 from IsolationAlgs.IsolationSteeringDerivConfig
import (
145 LRTElectronIsolationSteeringDerivCfg,
150 from IsolationAlgs.IsolationBuilderConfig
import egIsolationCfg
155 name=
"electronIsolationLRT",
158 ElectronCollectionContainerName=
"LRTElectrons",