ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetRawAlgs
InDetOverlay
python
PLR_OverlayConfig.py
Go to the documentation of this file.
1
"""Define methods to construct configured PLR overlay algorithms
2
3
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
4
"""
5
6
from
AthenaConfiguration.ComponentAccumulator
import
ComponentAccumulator
7
from
AthenaConfiguration.ComponentFactory
import
CompFactory
8
9
10
def
PLR_OverlayAlgCfg
(flags, name="PLR_Overlay", **kwargs):
11
"""Return a ComponentAccumulator for PLR Overlay algorithm"""
12
acc = ComponentAccumulator()
13
14
kwargs.setdefault(
"BkgInputKey"
, f
"{flags.Overlay.BkgPrefix}PLR_RDOs"
if
not
flags.Overlay.IgnoreBkgInputs
else
""
)
15
kwargs.setdefault(
"SignalInputKey"
, f
"{flags.Overlay.SigPrefix}PLR_RDOs"
)
16
kwargs.setdefault(
"OutputKey"
,
"PLR_RDOs"
)
17
18
# Input setup
19
if
kwargs[
"BkgInputKey"
]:
20
from
SGComps.SGInputLoaderConfig
import
SGInputLoaderCfg
21
acc.merge(SGInputLoaderCfg(flags, [f
'PixelRDO_Container#{kwargs["BkgInputKey"]}'
]))
22
23
# Do PLR overlay
24
acc.addEventAlgo(CompFactory.PixelOverlay(name, **kwargs))
25
26
# Setup output
27
if
flags.Output.doWriteRDO:
28
from
OutputStreamAthenaPool.OutputStreamConfig
import
OutputStreamCfg
29
acc.merge(OutputStreamCfg(flags,
"RDO"
, ItemList=[
30
"PixelRDO_Container#PLR_RDOs"
31
]))
32
33
if
not
flags.Input.isMC:
34
acc.merge(OutputStreamCfg(flags,
"RDO"
, ItemList=[
35
"IDCInDetBSErrContainer#PLR_ByteStreamErrs"
36
]))
37
38
if
flags.Output.doWriteRDO_SGNL:
39
from
OutputStreamAthenaPool.OutputStreamConfig
import
OutputStreamCfg
40
acc.merge(OutputStreamCfg(flags,
"RDO_SGNL"
, ItemList=[
41
f
"PixelRDO_Container#{flags.Overlay.SigPrefix}PLR_RDOs"
42
]))
43
44
return
acc
45
46
47
def
PLR_TruthOverlayCfg
(flags, name="PLR_SDOOverlay", **kwargs):
48
"""Return a ComponentAccumulator for the PLR SDO overlay algorithm"""
49
acc = ComponentAccumulator()
50
51
# We do not need background PLR SDOs for data overlay
52
if
not
flags.Input.isMC:
53
kwargs.setdefault(
"BkgInputKey"
,
""
)
54
else
:
55
kwargs.setdefault(
"BkgInputKey"
, f
"{flags.Overlay.BkgPrefix}PLR_SDO_Map"
)
56
57
if
kwargs[
"BkgInputKey"
]:
58
from
SGComps.SGInputLoaderConfig
import
SGInputLoaderCfg
59
acc.merge(SGInputLoaderCfg(flags, [f
'InDetSimDataCollection#{kwargs["BkgInputKey"]}'
]))
60
61
kwargs.setdefault(
"SignalInputKey"
, f
"{flags.Overlay.SigPrefix}PLR_SDO_Map"
)
62
kwargs.setdefault(
"OutputKey"
,
"PLR_SDO_Map"
)
63
64
# Do PLR truth overlay
65
acc.addEventAlgo(CompFactory.InDetSDOOverlay(name, **kwargs))
66
67
# Setup output
68
if
flags.Output.doWriteRDO:
69
from
OutputStreamAthenaPool.OutputStreamConfig
import
OutputStreamCfg
70
acc.merge(OutputStreamCfg(flags,
"RDO"
, ItemList=[
71
"InDetSimDataCollection#PLR_SDO_Map"
72
]))
73
74
if
flags.Output.doWriteRDO_SGNL:
75
from
OutputStreamAthenaPool.OutputStreamConfig
import
OutputStreamCfg
76
acc.merge(OutputStreamCfg(flags,
"RDO_SGNL"
, ItemList=[
77
f
"InDetSimDataCollection#{flags.Overlay.SigPrefix}PLR_SDO_Map"
78
]))
79
80
return
acc
81
82
83
def
PLR_OverlayCfg
(flags):
84
"""Configure and return a ComponentAccumulator for PLR overlay"""
85
acc = ComponentAccumulator()
86
87
# Add PLR overlay digitization algorithm
88
from
PixelDigitization.PLR_DigitizationConfig
import
PLR_OverlayDigitizationBasicCfg
89
acc.merge(PLR_OverlayDigitizationBasicCfg(flags))
90
91
# Add PLR overlay algorithm
92
acc.merge(
PLR_OverlayAlgCfg
(flags))
93
94
# Add PLR truth overlay
95
if
flags.Digitization.EnableTruth:
96
acc.merge(
PLR_TruthOverlayCfg
(flags))
97
98
return
acc
PLR_OverlayConfig.PLR_OverlayCfg
PLR_OverlayCfg(flags)
Definition
PLR_OverlayConfig.py:83
PLR_OverlayConfig.PLR_OverlayAlgCfg
PLR_OverlayAlgCfg(flags, name="PLR_Overlay", **kwargs)
Definition
PLR_OverlayConfig.py:10
PLR_OverlayConfig.PLR_TruthOverlayCfg
PLR_TruthOverlayCfg(flags, name="PLR_SDOOverlay", **kwargs)
Definition
PLR_OverlayConfig.py:47
Generated on
for ATLAS Offline Software by
1.17.0