ATLAS Offline Software
Loading...
Searching...
No Matches
SiDetElementsRoadToolConfig.py
Go to the documentation of this file.
1# Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
2# Configuration of SiDetElementsRoadTool_xk package
3
4from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
5from AthenaConfiguration.ComponentFactory import CompFactory
6from AthenaConfiguration.Enums import BeamType
7
8def SiDetElementsRoadMaker_xkCfg(flags, name="InDetSiRoadMaker", **kwargs) :
9 acc = ComponentAccumulator()
10
11 #
12 # --- SCT and Pixel detector elements road builder
13 #
14
15 from PixelGeoModel.PixelGeoModelConfig import PixelReadoutGeometryCfg
16 acc.merge(PixelReadoutGeometryCfg(flags)) # To produce PixelDetectorElementCollection
17 from SCT_GeoModel.SCT_GeoModelConfig import SCT_ReadoutGeometryCfg
18 acc.merge(SCT_ReadoutGeometryCfg(flags)) # To produce SCT_DetectorElementCollection
19
20 # Create ReadCondHandle SiDetElementsLayerVectors_xk
21 acc.addCondAlgo(CompFactory.InDet.SiDetElementsRoadCondAlg_xk(name = "SiDetElementsRoadCondAlg_xk"))
22
23 from TrkConfig.TrkExRungeKuttaPropagatorConfig import RungeKuttaPropagatorCfg
24 InDetPatternPropagator = acc.popToolsAndMerge(RungeKuttaPropagatorCfg(flags, name="InDetPatternPropagator"))
25 acc.addPublicTool(InDetPatternPropagator)
26 kwargs.setdefault("PropagatorTool", InDetPatternPropagator)
27
28 kwargs.setdefault("usePixel", flags.Tracking.ActiveConfig.usePixel )
29 kwargs.setdefault("PixManagerLocation", 'Pixel')
30 kwargs.setdefault("useSCT", flags.Tracking.ActiveConfig.useSCT)
31 kwargs.setdefault("SCTManagerLocation", 'SCT')
32 kwargs.setdefault("RoadWidth", flags.Tracking.ActiveConfig.roadWidth)
33
34 acc.setPrivateTools(CompFactory.InDet.SiDetElementsRoadMaker_xk(
35 name+flags.Tracking.ActiveConfig.extension, **kwargs))
36 return acc
37
38def TrigSiDetElementsRoadMaker_xkCfg(flags, name="InDetTrigSiRoadMaker", **kwargs) :
39 acc = ComponentAccumulator()
40
41 if 'PropagatorTool' not in kwargs:
42 from TrkConfig.TrkExRungeKuttaPropagatorConfig import RungeKuttaPropagatorCfg
43 InDetPatternPropagator = acc.popToolsAndMerge(RungeKuttaPropagatorCfg(flags,
44 name="InDetTrigPatternPropagator"))
45 acc.addPublicTool(InDetPatternPropagator)
46 kwargs.setdefault("PropagatorTool", InDetPatternPropagator)
47
48 acc.setPrivateTools(acc.popToolsAndMerge(SiDetElementsRoadMaker_xkCfg(flags, name, **kwargs)))
49 return acc
50
51
52def SiDetElementsRoadMaker_xk_TRT_Cfg(flags, name = 'InDetTRT_SeededSiRoad', **kwargs):
53 #
54 # Silicon det elements road maker tool
55 #
56 kwargs.setdefault("RoadWidth", 50. if flags.Beam.Type is BeamType.Cosmics else 35.)
57 kwargs.setdefault("MaxStep", 20.)
58
59 return SiDetElementsRoadMaker_xkCfg(flags, name, **kwargs)
60
61def ITkSiDetElementsRoadMaker_xkCfg(flags, name="ITkSiRoadMaker", **kwargs) :
62 acc = ComponentAccumulator()
63 #
64 # --- ITk Strip and Pixel detector elements road builder
65 #
66
67 from PixelGeoModelXml.ITkPixelGeoModelConfig import ITkPixelReadoutGeometryCfg
68 acc.merge(ITkPixelReadoutGeometryCfg(flags)) # To produce ITkPixelDetectorElementCollection
69 from StripGeoModelXml.ITkStripGeoModelConfig import ITkStripReadoutGeometryCfg
70 acc.merge(ITkStripReadoutGeometryCfg(flags)) # To produce ITkStripDetectorElementCollection
71
72 # Create ReadCondHandle SiDetElementsLayerVectors_xk
73 acc.addCondAlgo(CompFactory.InDet.SiDetElementsRoadCondAlg_xk(name = "SiDetElementsRoadCondAlg_xk",
74 PixelDetEleCollKey = "ITkPixelDetectorElementCollection",
75 SCTDetEleCollKey = "ITkStripDetectorElementCollection"))
76
77 from TrkConfig.TrkExRungeKuttaPropagatorConfig import RungeKuttaPropagatorCfg
78 ITkPatternPropagator = acc.popToolsAndMerge(RungeKuttaPropagatorCfg(flags, name="ITkPatternPropagator"))
79 acc.addPublicTool(ITkPatternPropagator)
80 kwargs.setdefault("PropagatorTool", ITkPatternPropagator)
81
82 kwargs.setdefault("usePixel", flags.Tracking.ActiveConfig.useITkPixel )
83 kwargs.setdefault("PixManagerLocation", 'ITkPixel')
84 kwargs.setdefault("useSCT", flags.Tracking.ActiveConfig.useITkStrip)
85 kwargs.setdefault("SCTManagerLocation", 'ITkStrip')
86 kwargs.setdefault("RoadWidth", flags.Tracking.ActiveConfig.roadWidth)
87
88 acc.setPrivateTools(CompFactory.InDet.SiDetElementsRoadMaker_xk(
89 name+flags.Tracking.ActiveConfig.extension, **kwargs))
90 return acc
91
TrigSiDetElementsRoadMaker_xkCfg(flags, name="InDetTrigSiRoadMaker", **kwargs)
ITkSiDetElementsRoadMaker_xkCfg(flags, name="ITkSiRoadMaker", **kwargs)
SiDetElementsRoadMaker_xk_TRT_Cfg(flags, name='InDetTRT_SeededSiRoad', **kwargs)
SiDetElementsRoadMaker_xkCfg(flags, name="InDetSiRoadMaker", **kwargs)