63 **kwargs):
64 result = ComponentAccumulator()
65
66 kwargs.setdefault("WorldDimension", [])
67 kwargs.setdefault("WorldMaterialProperties", [])
68
69 if "TrackingVolumeArrayCreator" not in kwargs:
70 from TrackingGeometryCondAlg.TrkDetDescrToolsConfig import (
71 TrackingVolumeArrayCreatorCfg)
72 TrackingVolumeArrayCreator = result.popToolsAndMerge(
73 TrackingVolumeArrayCreatorCfg(flags))
74 result.addPublicTool(TrackingVolumeArrayCreator)
75 kwargs.setdefault("TrackingVolumeArrayCreator",
76 TrackingVolumeArrayCreator)
77
78 if "TrackingVolumeHelper" not in kwargs:
79 from TrackingGeometryCondAlg.TrkDetDescrToolsConfig import (
80 TrackingVolumeHelperCfg)
81 TrackingVolumeHelper = result.popToolsAndMerge(
82 TrackingVolumeHelperCfg(flags))
83 result.addPublicTool(TrackingVolumeHelper)
84 kwargs.setdefault("TrackingVolumeHelper", TrackingVolumeHelper)
85
86
87
88 if flags.Detector.GeometryID:
89 from TrackingGeometryCondAlg.InDetTrackingGeometryConfig import (
90 InDetTrackingGeometryBuilderCfg)
91 kwargs.setdefault(
92 "InDetTrackingGeometryBuilder", result.popToolsAndMerge(
93 InDetTrackingGeometryBuilderCfg(flags, useCond=useCond)))
94
95 elif flags.Detector.GeometryITk:
96 from TrackingGeometryCondAlg.InDetTrackingGeometryConfig import (
97 ITkTrackingGeometryBuilderCfg)
98 kwargs.setdefault(
99 "InDetTrackingGeometryBuilder", result.popToolsAndMerge(
100 ITkTrackingGeometryBuilderCfg(flags, useCond=useCond)))
101
102
103 if flags.Detector.GeometryHGTD and useCond:
104 from TrackingGeometryCondAlg.HGTD_TrackingGeometryConfig import (
105 HGTD_TrackingGeometryBuilderCfg)
106 kwargs.setdefault(
107 "HGTD_TrackingGeometryBuilder", result.popToolsAndMerge(
108 HGTD_TrackingGeometryBuilderCfg(flags)))
109
110 if flags.Detector.GeometryCalo:
111 from TrackingGeometryCondAlg.CaloTrackingGeometryConfig import (
112 CaloTrackingGeometryBuilderCfg)
113 kwargs.setdefault(
114 "CaloTrackingGeometryBuilder", result.popToolsAndMerge(
115 CaloTrackingGeometryBuilderCfg(flags, useCond=useCond)))
116
117 if flags.Detector.GeometryMuon:
118 from TrackingGeometryCondAlg.MuonTrackingGeometryConfig import (
119 MuonTrackingGeometryBuilderCfg)
120 kwargs.setdefault(
121 "MuonTrackingGeometryBuilder", result.popToolsAndMerge(
122 MuonTrackingGeometryBuilderCfg(flags, useCond=useCond)))
123
124 geometryBuilder = CompFactory.Trk.GeometryBuilderCond(name, **kwargs) \
125 if useCond else \
126 CompFactory.Trk.GeometryBuilder(name, **kwargs)
127 result.setPrivateTools(geometryBuilder)
128 return result
129
130@AccumulatorCache