ATLAS Offline Software
ITkStripRawDataByteStreamCnvConfig.py
Go to the documentation of this file.
1 #
2 # Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 #
4 
5 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
6 from AthenaConfiguration.ComponentFactory import CompFactory
7 from ITkStripCabling.ITkStripCablingConfig import ITkStripCablingToolCfg
8 from StripGeoModelXml.ITkStripGeoModelConfig import ITkStripReadoutGeometryCfg
9 
10 def ITkStripsRodDecoderCfg(flags, **kwargs):
11  acc = ComponentAccumulator()
12  acc.merge(ITkStripReadoutGeometryCfg(flags))
13  kwargs.setdefault("ITkStripCablingTool", acc.popToolsAndMerge(ITkStripCablingToolCfg(flags)))
14  acc.setPrivateTools(CompFactory.ITkStripsRodDecoder(name="ITkStripsRodDecoder",**kwargs))
15  return acc
16 
17 def ITkStripRawDataProviderToolCfg(flags, **kwargs):
18  acc = ComponentAccumulator()
19  kwargs.setdefault("Decoder", acc.popToolsAndMerge(ITkStripsRodDecoderCfg(flags)))
20  acc.setPrivateTools(CompFactory.ITkStripRawDataProviderTool(name="ITkStripRawDataProviderTool",**kwargs))
21  return acc
22 
23 def ITkStripRawDataProviderCfg(flags, **kwargs):
24  """ Configures the main algorithm for ITk raw data decoding """
25  acc = ComponentAccumulator()
26  kwargs.setdefault("ProviderTool", acc.popToolsAndMerge(ITkStripRawDataProviderToolCfg(flags)))
27 
28  if flags.Overlay.ByteStream:
29  kwargs.setdefault("RDOKey", f"{flags.Overlay.BkgPrefix}ITkStripRDOs")
30  kwargs.setdefault("LVL1IDKey", f"{flags.Overlay.BkgPrefix}ITkStripLVL1ID")
31  kwargs.setdefault("BCIDKey", f"{flags.Overlay.BkgPrefix}ITkStripBCID")
32 
33  acc.addEventAlgo(CompFactory.ITkStripRawDataProvider(name="ITkStripRawDataProvider",**kwargs))
34  return acc
35 
36 def ITkStripsEventFlagWriterCfg(flags, **kwargs):
37  acc = ComponentAccumulator()
38  if flags.Overlay.ByteStream:
39  kwargs.setdefault("xAODEventInfoKey", f"{flags.Overlay.BkgPrefix}EventInfo")
40  acc.addEventAlgo(CompFactory.SCTEventFlagWriter(name="ITkStripsEventFlagWriter", **kwargs))
41 
42  return acc
43 
ITkStripCablingConfig.ITkStripCablingToolCfg
def ITkStripCablingToolCfg(flags, name="ITkStripCablingTool")
Definition: ITkStripCablingConfig.py:13
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
ITkStripGeoModelConfig.ITkStripReadoutGeometryCfg
def ITkStripReadoutGeometryCfg(flags)
Definition: ITkStripGeoModelConfig.py:43
ITkStripRawDataByteStreamCnvConfig.ITkStripRawDataProviderCfg
def ITkStripRawDataProviderCfg(flags, **kwargs)
Definition: ITkStripRawDataByteStreamCnvConfig.py:23
ITkStripRawDataByteStreamCnvConfig.ITkStripsRodDecoderCfg
def ITkStripsRodDecoderCfg(flags, **kwargs)
Definition: ITkStripRawDataByteStreamCnvConfig.py:10
ITkStripRawDataByteStreamCnvConfig.ITkStripRawDataProviderToolCfg
def ITkStripRawDataProviderToolCfg(flags, **kwargs)
Definition: ITkStripRawDataByteStreamCnvConfig.py:17
ITkStripRawDataByteStreamCnvConfig.ITkStripsEventFlagWriterCfg
def ITkStripsEventFlagWriterCfg(flags, **kwargs)
Definition: ITkStripRawDataByteStreamCnvConfig.py:36