3 from ElectronPhotonSelectorTools.EgammaPIDdefs
import egammaPID
4 from egammaTools.EMTrackMatchBuilderConfig
import EMTrackMatchBuilderCfg
5 from ElectronPhotonSelectorTools.AsgForwardElectronIsEMSelectorsConfig
import (
6 AsgForwardElectronIsEMSelectorCfg)
7 from AthenaCommon.Logging
import logging
8 from AthenaConfiguration.ComponentFactory
import CompFactory
9 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
10 from egammaTools.egammaOQFlagsBuilderConfig
import egammaOQFlagsBuilderCfg
17 if flags.Detector.GeometryITk:
18 kwargs[
"doTrackMatching"] =
True
19 kwargs[
"doCookieCutting"] =
True
21 if "forwardelectronIsEMselectors" not in kwargs:
24 "LooseForwardElectronSelector",
25 egammaPID.ForwardElectronIDLoose)
28 "MediumForwardElectronSelector",
29 egammaPID.ForwardElectronIDMedium)
32 "TightForwardElectronSelector",
33 egammaPID.ForwardElectronIDTight)
35 kwargs.setdefault(
"forwardelectronIsEMselectors",
36 [LooseFwdElectronSelector.popPrivateTools(),
37 MediumFwdElectronSelector.popPrivateTools(),
38 TightFwdElectronSelector.popPrivateTools()])
40 "forwardelectronIsEMselectorResultNames",
41 [
"Loose",
"Medium",
"Tight"])
43 acc.merge(LooseFwdElectronSelector)
44 acc.merge(MediumFwdElectronSelector)
45 acc.merge(TightFwdElectronSelector)
47 if "ObjectQualityTool" not in kwargs
and not flags.Common.isOnline:
49 kwargs[
"ObjectQualityTool"] = egOQ.popPrivateTools()
52 if flags.Egamma.doForwardCalib:
53 kwargs[
"doEnergyCal"] =
True
54 kwargs[
"PrimaryVerticesContainerKey"] =
"PrimaryVertices"
55 kwargs[
"EventInfoKey"] =
"EventInfo"
56 from egammaMVACalib.egammaMVACalibConfig
import egammaMVASvcCfg
59 kwargs.setdefault(
"ElectronOutputName",
60 flags.Egamma.Keys.Output.ForwardElectrons)
61 kwargs.setdefault(
"TopoClusterName",
62 flags.Egamma.Keys.Internal.ForwardTopoClusters)
63 kwargs.setdefault(
"ClusterContainerName",
64 flags.Egamma.Keys.Output.ForwardClusters)
65 fwdAlg = CompFactory.egammaForwardBuilder(name, **kwargs)
67 acc.addEventAlgo(fwdAlg)
71 if __name__ ==
"__main__":
72 from AthenaConfiguration.AllConfigFlags
import initConfigFlags
73 from AthenaConfiguration.TestDefaults
import defaultTestFiles
74 from AthenaConfiguration.ComponentAccumulator
import printProperties
75 from AthenaConfiguration.MainServicesConfig
import MainServicesCfg
77 flags.Input.Files = defaultTestFiles.RDO_RUN2
81 mlog = logging.getLogger(
"egammaForwardBuilderConfigTest")
82 mlog.info(
"Configuring egammaForwardBuilder: ")
85 acc.getEventAlgo(
"egammaForwardElectron"),
88 with open(
"egammaforwardbuilder.pkl",
"wb")
as f: