ATLAS Offline Software
Loading...
Searching...
No Matches
EMConversionBuilderConfig.py
Go to the documentation of this file.
1# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2
3""" Configure Conversion building """
4
5from AthenaCommon.Logging import logging
6from AthenaConfiguration.ComponentFactory import CompFactory
7from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
8from egammaTrackTools.egammaTrackToolsConfig import EMExtrapolationToolsCfg
9
10
11def EMConversionBuilderCfg(flags, name='EMConversionBuilder', **kwargs):
12
13 mlog = logging.getLogger(name)
14 mlog.debug('Start configuration')
15
16 acc = ComponentAccumulator()
17 EMConversionBuilder = CompFactory.EMConversionBuilder
18
19 if "ExtrapolationTool" not in kwargs:
20 kwargs["ExtrapolationTool"] = acc.popToolsAndMerge(
21 EMExtrapolationToolsCfg(flags)
22 )
23
24 kwargs.setdefault("ConversionContainerName",
25 flags.Egamma.Keys.Output.ConversionVertices)
26
27 emconv = EMConversionBuilder(name, **kwargs)
28
29 acc.setPrivateTools(emconv)
30 return acc
31
32
33if __name__ == "__main__":
34
35 from AthenaConfiguration.AllConfigFlags import initConfigFlags
36 from AthenaConfiguration.ComponentAccumulator import printProperties
37 from AthenaConfiguration.TestDefaults import defaultTestFiles
38 flags = initConfigFlags()
39 flags.Input.Files = defaultTestFiles.RDO_RUN2
40 flags.fillFromArgs()
41 flags.lock()
42 flags.dump()
43
44 cfg = ComponentAccumulator()
45 mlog = logging.getLogger("EMConversionBuilderConfigTest")
46 mlog.info("Configuring EMConversionBuilder: ")
47 printProperties(mlog, cfg.popToolsAndMerge(
49 nestLevel=1,
50 printDefaults=True)
51
52 f = open("emshowerbuilder.pkl", "wb")
53 cfg.store(f)
54 f.close()
EMConversion data object builder.
EMConversionBuilderCfg(flags, name='EMConversionBuilder', **kwargs)