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
# for track overlay, write out the signal RDOs because reco tracking will only run on them
45
if
flags.Overlay.doTrackOverlay:
46
from
OutputStreamAthenaPool.OutputStreamConfig
import
OutputStreamCfg
47
acc.merge(OutputStreamCfg(flags,
"RDO"
, ItemList=[
48
f
"PixelRDO_Container#{flags.Overlay.SigPrefix}PLR_RDOs"
49
]))
50
51
return
acc
52
53
54
def
PLR_TruthOverlayCfg
(flags, name="PLR_SDOOverlay", **kwargs):
55
"""Return a ComponentAccumulator for the PLR SDO overlay algorithm"""
56
acc = ComponentAccumulator()
57
58
# We do not need background PLR SDOs for data overlay
59
if
not
flags.Input.isMC:
60
kwargs.setdefault(
"BkgInputKey"
,
""
)
61
else
:
62
kwargs.setdefault(
"BkgInputKey"
, f
"{flags.Overlay.BkgPrefix}PLR_SDO_Map"
)
63
64
if
kwargs[
"BkgInputKey"
]:
65
from
SGComps.SGInputLoaderConfig
import
SGInputLoaderCfg
66
acc.merge(SGInputLoaderCfg(flags, [f
'InDetSimDataCollection#{kwargs["BkgInputKey"]}'
]))
67
68
kwargs.setdefault(
"SignalInputKey"
, f
"{flags.Overlay.SigPrefix}PLR_SDO_Map"
)
69
kwargs.setdefault(
"OutputKey"
,
"PLR_SDO_Map"
)
70
71
# Do PLR truth overlay
72
acc.addEventAlgo(CompFactory.InDetSDOOverlay(name, **kwargs))
73
74
# Setup output
75
if
flags.Output.doWriteRDO:
76
from
OutputStreamAthenaPool.OutputStreamConfig
import
OutputStreamCfg
77
acc.merge(OutputStreamCfg(flags,
"RDO"
, ItemList=[
78
"InDetSimDataCollection#PLR_SDO_Map"
79
]))
80
81
if
flags.Output.doWriteRDO_SGNL:
82
from
OutputStreamAthenaPool.OutputStreamConfig
import
OutputStreamCfg
83
acc.merge(OutputStreamCfg(flags,
"RDO_SGNL"
, ItemList=[
84
f
"InDetSimDataCollection#{flags.Overlay.SigPrefix}PLR_SDO_Map"
85
]))
86
87
return
acc
88
89
90
def
PLR_OverlayCfg
(flags):
91
"""Configure and return a ComponentAccumulator for PLR overlay"""
92
acc = ComponentAccumulator()
93
94
# Add PLR overlay digitization algorithm
95
from
PixelDigitization.PLR_DigitizationConfig
import
PLR_OverlayDigitizationBasicCfg
96
acc.merge(PLR_OverlayDigitizationBasicCfg(flags))
97
98
# Add PLR overlay algorithm
99
acc.merge(
PLR_OverlayAlgCfg
(flags))
100
101
# Add PLR truth overlay
102
if
flags.Digitization.EnableTruth:
103
acc.merge(
PLR_TruthOverlayCfg
(flags))
104
105
return
acc
PLR_OverlayConfig.PLR_OverlayCfg
PLR_OverlayCfg(flags)
Definition
PLR_OverlayConfig.py:90
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:54
Generated on
for ATLAS Offline Software by
1.17.0