ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetEventCnv
ITkStripsByteStreamCnv
python
ITkStripByteStreamCnvConfig.py
Go to the documentation of this file.
1
#
2
# Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
#
4
5
from
AthenaConfiguration.ComponentAccumulator
import
ComponentAccumulator
6
from
AthenaConfiguration.ComponentFactory
import
CompFactory
7
from
AthenaConfiguration.Enums
import
ProductionStep
8
from
ITkStripCabling.ITkStripCablingConfig
import
ITkStripCablingToolCfg
9
from
StripGeoModelXml.ITkStripGeoModelConfig
import
ITkStripReadoutGeometryCfg
10
11
12
def
ITkStripRawContByteStreamToolCfg
(flags, name="ITkStripRawContByteStreamToolCustom", **kwargs) :
13
acc = ComponentAccumulator()
14
if
"ITkStripsRodEncoder"
not
in
kwargs :
15
kwargs.setdefault(
"Encoder"
, acc.popToolsAndMerge(
ITkStripsRodEncoderCfg
(flags)))
16
acc.setPrivateTools( CompFactory.ITkStripsRawContByteStreamTool(name=name,**kwargs))
17
return
acc
18
19
def
ITkStripRawContByteStreamToolProviderToolCfg
(flags, name="SCTRawContByteStreamToolProviderTool", **kwargs) :
20
acc = ComponentAccumulator()
21
if
"RawContByteStreamTool"
not
in
kwargs :
22
kwargs.setdefault(
"RawContByteStreamTool"
, acc.popToolsAndMerge(
ITkStripRawContByteStreamToolCfg
(flags)))
23
acc.addPublicTool( CompFactory.ITkStripRawContByteStreamToolProviderTool(name=name,**kwargs))
24
return
acc
25
26
def
ITkStripsRodEncoderCfg
(flags, name='ITkStripRodEncoder', **kwargs):
27
acc = ComponentAccumulator()
28
acc.merge(ITkStripReadoutGeometryCfg(flags))
29
if
"DataRateMonitoringTool"
not
in
kwargs:
30
kwargs.setdefault(
"DataRateMonitoringTool"
, acc.getPrimaryAndMerge(
ITkStripDataRateMonToolCfg
(flags, doExpertPlots=
False
)))
31
kwargs.setdefault(
"ITkStripCablingTool"
, acc.popToolsAndMerge(ITkStripCablingToolCfg(flags)))
32
acc.setPrivateTools(CompFactory.ITkStripsRodEncoder(name,**kwargs))
33
return
acc
34
35
def
ITkStripsRodDecoderCfg
(flags, name='ITkStripsRodDecoder', **kwargs):
36
acc = ComponentAccumulator()
37
acc.merge(ITkStripReadoutGeometryCfg(flags))
38
kwargs.setdefault(
"ITkStripCablingTool"
, acc.popToolsAndMerge(ITkStripCablingToolCfg(flags)))
39
acc.setPrivateTools(CompFactory.ITkStripsRodDecoder(name,**kwargs))
40
return
acc
41
42
def
ITkStripRawDataProviderToolCfg
(flags, name="ITkStripRawDataProviderTool", **kwargs):
43
acc = ComponentAccumulator()
44
kwargs.setdefault(
"Decoder"
, acc.popToolsAndMerge(
ITkStripsRodDecoderCfg
(flags)))
45
acc.setPrivateTools(CompFactory.ITkStripRawDataProviderTool(name, **kwargs))
46
return
acc
47
48
def
ITkStripRawDataProviderCfg
(flags, **kwargs):
49
""" Configures the main algorithm for ITk raw data decoding """
50
acc = ComponentAccumulator()
51
kwargs.setdefault(
"ProviderTool"
, acc.popToolsAndMerge(
ITkStripRawDataProviderToolCfg
(flags)))
52
53
if
flags.Common.ProductionStep
is
ProductionStep.MinbiasPreprocessing:
54
kwargs.setdefault(
"RDOKey"
, f
"{flags.Overlay.BkgPrefix}ITkStripRDOs"
)
55
kwargs.setdefault(
"LVL1IDKey"
, f
"{flags.Overlay.BkgPrefix}ITkStripLVL1ID"
)
56
kwargs.setdefault(
"BCIDKey"
, f
"{flags.Overlay.BkgPrefix}ITkStripBCID"
)
57
58
acc.addEventAlgo(CompFactory.ITkStripRawDataProvider(name=
"ITkStripRawDataProvider"
,**kwargs))
59
return
acc
60
61
def
ITkStripsEventFlagWriterCfg
(flags, **kwargs):
62
acc = ComponentAccumulator()
63
if
flags.Common.ProductionStep
is
ProductionStep.MinbiasPreprocessing:
64
kwargs.setdefault(
"xAODEventInfoKey"
, f
"{flags.Overlay.BkgPrefix}EventInfo"
)
65
acc.addEventAlgo(CompFactory.SCTEventFlagWriter(name=
"ITkStripsEventFlagWriter"
, **kwargs))
66
67
return
acc
68
69
def
ITkStripDataRateMonToolCfg
(flags,
70
name = "ITkStripDataRateMonTool",
71
doExpertPlots = False,
72
HistogramGroup: str=
"DataRateMon"
,
73
FileName: str=
'ITkStripEncodingMonitoring.root'
) -> ComponentAccumulator:
74
acc = ComponentAccumulator()
75
76
histSvc = CompFactory.THistSvc(Output = [f
"{HistogramGroup} DATAFILE='{FileName}', OPT='RECREATE'"
] )
77
acc.addService(histSvc)
78
79
monitor = CompFactory.ITkStripDataRateMonTool(name)
80
monitor.HistSvc = histSvc
81
monitor.DoExpertPlots = doExpertPlots
82
83
acc.addPublicTool(monitor, primary=
True
)
84
return
acc
ITkStripByteStreamCnvConfig.ITkStripRawContByteStreamToolCfg
ITkStripRawContByteStreamToolCfg(flags, name="ITkStripRawContByteStreamToolCustom", **kwargs)
Definition
ITkStripByteStreamCnvConfig.py:12
ITkStripByteStreamCnvConfig.ITkStripRawDataProviderToolCfg
ITkStripRawDataProviderToolCfg(flags, name="ITkStripRawDataProviderTool", **kwargs)
Definition
ITkStripByteStreamCnvConfig.py:42
ITkStripByteStreamCnvConfig.ITkStripDataRateMonToolCfg
ComponentAccumulator ITkStripDataRateMonToolCfg(flags, name="ITkStripDataRateMonTool", doExpertPlots=False, str HistogramGroup="DataRateMon", str FileName='ITkStripEncodingMonitoring.root')
Definition
ITkStripByteStreamCnvConfig.py:73
ITkStripByteStreamCnvConfig.ITkStripRawContByteStreamToolProviderToolCfg
ITkStripRawContByteStreamToolProviderToolCfg(flags, name="SCTRawContByteStreamToolProviderTool", **kwargs)
Definition
ITkStripByteStreamCnvConfig.py:19
ITkStripByteStreamCnvConfig.ITkStripsRodEncoderCfg
ITkStripsRodEncoderCfg(flags, name='ITkStripRodEncoder', **kwargs)
Definition
ITkStripByteStreamCnvConfig.py:26
ITkStripByteStreamCnvConfig.ITkStripRawDataProviderCfg
ITkStripRawDataProviderCfg(flags, **kwargs)
Definition
ITkStripByteStreamCnvConfig.py:48
ITkStripByteStreamCnvConfig.ITkStripsEventFlagWriterCfg
ITkStripsEventFlagWriterCfg(flags, **kwargs)
Definition
ITkStripByteStreamCnvConfig.py:61
ITkStripByteStreamCnvConfig.ITkStripsRodDecoderCfg
ITkStripsRodDecoderCfg(flags, name='ITkStripsRodDecoder', **kwargs)
Definition
ITkStripByteStreamCnvConfig.py:35
Generated on
for ATLAS Offline Software by
1.17.0