ATLAS Offline Software
Loading...
Searching...
No Matches
ITkPixelByteStreamCnvConfig.py
Go to the documentation of this file.
2# Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3#
4
5from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
6from AthenaConfiguration.ComponentFactory import CompFactory
7
8def ITkPixelHitSortingToolCfg(flags, name = "ITkPixelHitSortingTool", **kwargs) -> ComponentAccumulator:
9 acc = ComponentAccumulator()
10
11 from PixelReadoutGeometry.PixelReadoutGeometryConfig import ITkPixelReadoutManagerCfg
12 acc.merge(ITkPixelReadoutManagerCfg(flags))
13
14 acc.setPrivateTools(CompFactory.ITkPixelHitSortingTool(name, **kwargs))
15 return acc
16
17def ITkPixelEncodingToolCfg(flags, name = "ITkPixelEncodingTool", **kwargs) -> ComponentAccumulator:
18 acc = ComponentAccumulator()
19 acc.setPrivateTools(CompFactory.ITkPixelEncodingTool(name, **kwargs))
20 return acc
21
22def ITkPixelTranslatorAlgCfg(flags, name = "ITkPixelTranslatorAlg", **kwargs) -> ComponentAccumulator:
23 acc = ComponentAccumulator()
24
25 from PixelGeoModelXml.ITkPixelGeoModelConfig import ITkPixelReadoutGeometryCfg
26 acc.merge(ITkPixelReadoutGeometryCfg(flags))
27
28 acc.addEventAlgo(CompFactory.ITkPixelTranslatorAlg(name, **kwargs))
29
30 return acc
31
32def ITkPixelDecodingAlgCfg(flags, name = "ITkPixelDecodingAlg", **kwargs) -> ComponentAccumulator:
33 acc = ComponentAccumulator()
34
35 from PixelGeoModelXml.ITkPixelGeoModelConfig import ITkPixelReadoutGeometryCfg
36 acc.merge(ITkPixelReadoutGeometryCfg(flags))
37
38 acc.addEventAlgo(CompFactory.ITkPixelDecodingAlg(name, **kwargs))
39
40 return acc
41
42
43def ITkPixelEncodingAlgCfg(flags, name = "ITkPixelEncodingAlg",
44 doMonitoring = False,
45 doExpertPlots = False,
46 **kwargs) -> ComponentAccumulator:
47 acc = ComponentAccumulator()
48
49 from PixelGeoModelXml.ITkPixelGeoModelConfig import ITkPixelReadoutGeometryCfg
50 acc.merge(ITkPixelReadoutGeometryCfg(flags))
51
52 kwargs.setdefault("PixelConversionTool", acc.getPrimaryAndMerge( ITkPixelCnvToolCfg(flags,
53 doMonitoring = doMonitoring,
54 doExpertPlots = doExpertPlots,
55 **kwargs) ))
56
57 acc.addEventAlgo(CompFactory.ITkPixelEncodingAlg(name, **kwargs))
58
59 return acc
60
61
63 name = "ITkPixelDataRateMonTool",
64 doExpertPlots = False,
65 HistogramGroup: str="DataRateMon",
66 FileName: str='ITkPixelEncodingMonitoring.root') -> ComponentAccumulator:
67 acc = ComponentAccumulator()
68
69 histSvc = CompFactory.THistSvc(Output = [f"{HistogramGroup} DATAFILE='{FileName}', OPT='RECREATE'"] )
70 acc.addService(histSvc)
71
72 monitor = CompFactory.ITkPixelDataRateMonTool(name)
73 monitor.HistSvc = histSvc
74 monitor.DoExpertPlots = doExpertPlots
75
76 acc.addPublicTool(monitor, primary=True)
77 return acc
78
79
80def ITkPixelCnvToolCfg(flags, name = "ITkPixelCnvTool",
81 doMonitoring = False,
82 doExpertPlots = False,
83 **kwargs) -> ComponentAccumulator:
84 acc = ComponentAccumulator()
85
86 if doMonitoring:
87 kwargs.setdefault("DataRateMonitoringTool", acc.getPrimaryAndMerge(ITkPixelDataRateMonToolCfg(flags, doExpertPlots=doExpertPlots)))
88
89 kwargs.setdefault("HitSortingTool", acc.popToolsAndMerge(ITkPixelHitSortingToolCfg(name)))
90 kwargs.setdefault("EncodingTool", acc.popToolsAndMerge(ITkPixelEncodingToolCfg(name)))
91 kwargs.setdefault("PixelCablingKey", "ITkPixelCablingData")
92
93 acc.addPublicTool(CompFactory.ITkPixelCnvTool(name, **kwargs), primary=True)
94 return acc
ComponentAccumulator ITkPixelEncodingToolCfg(flags, name="ITkPixelEncodingTool", **kwargs)
ComponentAccumulator ITkPixelCnvToolCfg(flags, name="ITkPixelCnvTool", doMonitoring=False, doExpertPlots=False, **kwargs)
ComponentAccumulator ITkPixelEncodingAlgCfg(flags, name="ITkPixelEncodingAlg", doMonitoring=False, doExpertPlots=False, **kwargs)
ComponentAccumulator ITkPixelDataRateMonToolCfg(flags, name="ITkPixelDataRateMonTool", doExpertPlots=False, str HistogramGroup="DataRateMon", str FileName='ITkPixelEncodingMonitoring.root')
ComponentAccumulator ITkPixelTranslatorAlgCfg(flags, name="ITkPixelTranslatorAlg", **kwargs)
ComponentAccumulator ITkPixelHitSortingToolCfg(flags, name="ITkPixelHitSortingTool", **kwargs)
ComponentAccumulator ITkPixelDecodingAlgCfg(flags, name="ITkPixelDecodingAlg", **kwargs)