3 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
4 from AthenaConfiguration.ComponentFactory
import CompFactory
5 from AthenaConfiguration.Enums
import Format
6 from AthenaConfiguration.Enums
import ProductionStep
10 """Return clusterization input prefix based on the production step and tracking config"""
11 if hasattr(flags.TrackOverlay,
"ActiveConfig"):
12 doTrackOverlay = getattr(flags.TrackOverlay.ActiveConfig,
"doTrackOverlay",
None)
14 doTrackOverlay = flags.Overlay.doTrackOverlay
17 prefix = flags.Overlay.SigPrefix
18 elif flags.Common.ProductionStep
in [ProductionStep.PileUpPretracking, ProductionStep.MinbiasPreprocessing]:
19 prefix = flags.Overlay.BkgPrefix
28 kwargs.setdefault(
'ProcessHgtd',
True)
29 acc.addEventAlgo(CompFactory.InDet.InDetToXAODClusterConversion(name, **kwargs))
34 kwargs.setdefault(
'ProcessHgtd',
True)
35 acc.addEventAlgo(CompFactory.InDet.XAODToInDetClusterConversion(name, **kwargs))
41 kwargs.setdefault(
'ProcessPixel', flags.Detector.EnableITkPixel)
42 kwargs.setdefault(
'ProcessStrip', flags.Detector.EnableITkStrip)
43 acc.addEventAlgo(CompFactory.InDet.InDetToXAODClusterConversion(name, **kwargs))
50 from SiLorentzAngleTool.ITkStripLorentzAngleConfig
import ITkStripLorentzAngleToolCfg
53 kwargs.setdefault(
'ProcessPixel', flags.Detector.EnableITkPixel)
54 kwargs.setdefault(
'ProcessStrip', flags.Detector.EnableITkStrip)
56 acc.addEventAlgo(CompFactory.InDet.XAODToInDetClusterConversion(name, **kwargs))
65 if "clusteringTool" not in kwargs:
66 from InDetConfig.SiClusterizationToolConfig
import MergedPixelsToolCfg
67 kwargs.setdefault(
"clusteringTool", acc.popToolsAndMerge(
70 if "gangedAmbiguitiesFinder" not in kwargs:
71 from InDetConfig.SiClusterizationToolConfig
import PixelGangedAmbiguitiesFinderCfg
72 kwargs.setdefault(
"gangedAmbiguitiesFinder", acc.popToolsAndMerge(
75 kwargs.setdefault(
"DataObjectName", prefix +
"PixelRDOs")
76 kwargs.setdefault(
"ClustersName",
"PixelClusters")
78 acc.addEventAlgo(CompFactory.InDet.PixelClusterization(prefix+name, **kwargs))
83 kwargs.setdefault(
"DataObjectName",
"Pixel_PU_RDOs")
84 kwargs.setdefault(
"ClustersName",
"PixelPUClusters")
85 kwargs.setdefault(
"AmbiguitiesMap",
"PixelClusterAmbiguitiesMapPU")
92 if "RegSelTool" not in kwargs:
93 from RegionSelector.RegSelToolConfig
import regSelTool_Pixel_Cfg
94 kwargs.setdefault(
"RegSelTool", acc.popToolsAndMerge(
97 if "clusteringTool" not in kwargs:
98 from InDetConfig.SiClusterizationToolConfig
import TrigMergedPixelsToolCfg
99 kwargs.setdefault(
"clusteringTool", acc.popToolsAndMerge(
102 if "gangedAmbiguitiesFinder" not in kwargs:
103 from InDetConfig.SiClusterizationToolConfig
import PixelGangedAmbiguitiesFinderCfg
104 kwargs.setdefault(
"gangedAmbiguitiesFinder", acc.popToolsAndMerge(
107 kwargs.setdefault(
"AmbiguitiesMap", flags.Trigger.InDetTracking.ClusterAmbiguitiesMap)
108 kwargs.setdefault(
"ClustersName",
"PixelTrigClusters")
109 kwargs.setdefault(
"isRoI_Seeded",
True)
110 kwargs.setdefault(
"RoIs", RoIs)
111 kwargs.setdefault(
"ClusterContainerCacheKey", flags.Trigger.InDetTracking.PixelClusterCacheKey)
112 kwargs.setdefault(
"useDataPoolWithCache",
True)
113 kwargs.setdefault(
"name", f
"{name}_{RoIs}")
115 acc.addEventAlgo(CompFactory.InDet.PixelClusterization(**kwargs))
124 if "clusteringTool" not in kwargs:
125 from InDetConfig.SiClusterizationToolConfig
import ITkMergedPixelsToolCfg
126 kwargs.setdefault(
"clusteringTool", acc.popToolsAndMerge(
129 if "gangedAmbiguitiesFinder" not in kwargs:
130 from InDetConfig.SiClusterizationToolConfig
import ITkPixelGangedAmbiguitiesFinderCfg
132 kwargs.setdefault(
"DataObjectName", prefix +
"ITkPixelRDOs")
133 kwargs.setdefault(
"ClustersName",
"ITkPixelClusters")
134 kwargs.setdefault(
"AmbiguitiesMap",
"ITkPixelClusterAmbiguitiesMap")
136 acc.addEventAlgo(CompFactory.InDet.PixelClusterization(prefix+name, **kwargs))
142 from RegionSelector.RegSelToolConfig
import regSelTool_ITkPixel_Cfg
144 name=
"ITkPixelClusterization_"+signature,
147 ClustersName =
"ITkTrigPixelClusters",
148 ClusterContainerCacheKey=flags.Trigger.ITkTracking.PixelClusterCacheKey,
149 AmbiguitiesMap = flags.Trigger.ITkTracking.ClusterAmbiguitiesMap,
159 if "conditionsTool" not in kwargs:
160 from SCT_ConditionsTools.SCT_ConditionsToolsConfig
import SCT_ConditionsSummaryToolCfg
161 kwargs.setdefault(
"conditionsTool", acc.popToolsAndMerge(
164 if "SCTDetElStatus" not in kwargs :
165 from SCT_ConditionsAlgorithms.SCT_ConditionsAlgorithmsConfig
import SCT_DetectorElementStatusAlgWithoutFlaggedCfg
167 kwargs.setdefault(
"SCTDetElStatus",
"SCTDetectorElementStatusWithoutFlagged" )
169 if "clusteringTool" not in kwargs:
170 from InDetConfig.SiClusterizationToolConfig
import SCT_ClusteringToolCfg
171 kwargs.setdefault(
"clusteringTool", acc.popToolsAndMerge(
174 kwargs.setdefault(
"DataObjectName", prefix +
"SCT_RDOs")
175 kwargs.setdefault(
"ClustersName",
'SCT_Clusters')
177 acc.addEventAlgo(CompFactory.InDet.SCT_Clusterization(prefix+name, **kwargs))
182 kwargs.setdefault(
"DataObjectName",
"SCT_PU_RDOs" )
183 kwargs.setdefault(
"ClustersName",
"SCT_PU_Clusters")
190 if "RegSelTool" not in kwargs:
191 from RegionSelector.RegSelToolConfig
import regSelTool_SCT_Cfg
192 kwargs.setdefault(
"RegSelTool", acc.popToolsAndMerge(
195 if "conditionsTool" not in kwargs:
196 from SCT_ConditionsTools.SCT_ConditionsToolsConfig
import SCT_ConditionsSummaryToolCfg
197 kwargs.setdefault(
"conditionsTool", acc.popToolsAndMerge(
200 if "clusteringTool" not in kwargs:
201 from InDetConfig.SiClusterizationToolConfig
import Trig_SCT_ClusteringToolCfg
202 kwargs.setdefault(
"clusteringTool", acc.popToolsAndMerge(
205 kwargs.setdefault(
"DataObjectName",
'SCT_RDOs')
206 kwargs.setdefault(
"ClustersName",
'SCT_TrigClusters')
207 kwargs.setdefault(
"isRoI_Seeded",
True)
208 kwargs.setdefault(
"RoIs", RoIs)
209 kwargs.setdefault(
"ClusterContainerCacheKey", flags.Trigger.InDetTracking.SCTClusterCacheKey)
210 kwargs.setdefault(
"FlaggedCondCacheKey",
"")
211 kwargs.setdefault(
"useDataPoolWithCache",
True)
212 kwargs.setdefault(
"name", f
"{name}_{RoIs}")
214 acc.addEventAlgo(CompFactory.InDet.SCT_Clusterization(**kwargs))
223 kwargs.setdefault(
"conditionsTool",
None)
224 if "SCTDetElStatus" not in kwargs :
225 if not flags.Trigger.doHLT :
226 from SCT_ConditionsAlgorithms.ITkStripConditionsAlgorithmsConfig
import (
227 ITkStripDetectorElementStatusAlgCfg)
229 kwargs.setdefault(
"SCTDetElStatus",
"ITkStripDetectorElementStatus")
231 if "clusteringTool" not in kwargs:
232 from InDetConfig.SiClusterizationToolConfig
import ITKStrip_SCT_ClusteringToolCfg
233 kwargs.setdefault(
"clusteringTool", acc.popToolsAndMerge(
235 kwargs.setdefault(
"DataObjectName", prefix +
'ITkStripRDOs')
236 kwargs.setdefault(
"ClustersName",
'ITkStripClusters')
237 kwargs.setdefault(
"SCT_FlaggedCondData",
"ITkStripFlaggedCondData")
239 kwargs.setdefault(
"maxFiredStrips", 0)
241 acc.addEventAlgo( CompFactory.InDet.SCT_Clusterization(prefix+name, **kwargs))
247 from RegionSelector.RegSelToolConfig
import regSelTool_ITkStrip_Cfg
249 name=
"ITkStripClusterization_"+signature,
252 ClustersName =
"ITkTrigStripClusters",
253 ClusterContainerCacheKey=flags.Trigger.ITkTracking.SCTClusterCacheKey,
262 if flags.Common.ProductionStep
in [ProductionStep.PileUpPretracking, ProductionStep.MinbiasPreprocessing]:
263 prefix = flags.Overlay.BkgPrefix
267 if "TRT_DriftCircleTool" not in kwargs:
268 from InDetConfig.TRT_DriftCircleToolConfig
import TRT_DriftCircleToolCfg
269 kwargs.setdefault(
"TRT_DriftCircleTool", acc.popToolsAndMerge(
271 kwargs.setdefault(
"TRTRIOLocation",
'TRT_DriftCircles')
274 kwargs.setdefault(
"TRTRDOLocation", prefix +
'TRT_RDOs')
276 acc.addEventAlgo(CompFactory.InDet.TRT_RIO_Maker(prefix+name, **kwargs))
283 if "TRT_DriftCircleTool" not in kwargs:
284 from InDetConfig.TRT_DriftCircleToolConfig
import TRT_NoTime_DriftCircleToolCfg
285 kwargs.setdefault(
"TRT_DriftCircleTool", acc.popToolsAndMerge(
288 kwargs.setdefault(
"TRTRIOLocation",
'TRT_DriftCirclesUncalibrated')
297 if "TRT_DriftCircleTool" not in kwargs:
298 from InDetConfig.TRT_DriftCircleToolConfig
import TRT_Phase_DriftCircleToolCfg
299 kwargs.setdefault(
"TRT_DriftCircleTool", acc.popToolsAndMerge(
307 kwargs.setdefault(
"TRTRDOLocation",
'TRT_PU_RDOs')
308 kwargs.setdefault(
"TRTRIOLocation",
'TRT_PU_DriftCircles')
315 if "RegSelTool" not in kwargs:
316 from RegionSelector.RegSelToolConfig
import regSelTool_TRT_Cfg
317 kwargs.setdefault(
"RegSelTool", acc.popToolsAndMerge(
320 if "TRT_DriftCircleTool" not in kwargs:
321 from InDetConfig.TRT_DriftCircleToolConfig
import TRT_DriftCircleToolCfg
322 kwargs.setdefault(
"TRT_DriftCircleTool", acc.popToolsAndMerge(
325 kwargs.setdefault(
"TRTRIOLocation",
"TRT_TrigDriftCircles")
326 kwargs.setdefault(
"TRTRDOLocation",
"TRT_RDOs_TRIG" if flags.Input.Format
is Format.BS
else "TRT_RDOs")
327 kwargs.setdefault(
"isRoI_Seeded",
True)
328 kwargs.setdefault(
"RoIs", RoIs)
330 kwargs.setdefault(
"TRT_DriftCircleCache", flags.Trigger.InDetTracking.TRT_DriftCircleCacheKey)
331 kwargs.setdefault(
"useDataPoolWithCache",
True)
333 kwargs.setdefault(
"name", f
"{name}_{RoIs}")
334 acc.addEventAlgo(CompFactory.InDet.TRT_RIO_Maker(**kwargs))
343 if flags.Detector.EnableITkPixel:
348 if flags.Detector.EnableITkStrip: