10 result = ComponentAccumulator()
13 materialTagBase =
'AtlasLayerMat_v'
23 atlasMaterialTag = materialTagBase + str(version) + sub_version
24 cfolder = CoolDataBaseFolder +
'<tag>TagInfoMajor/' + \
25 atlasMaterialTag +
'_/GeoAtlas</tag>'
27 if flags.GeoModel.Run < LHCPeriod.Run4:
29 from IOVDbSvc.IOVDbSvcConfig
import addFoldersSplitOnline
30 result.merge(addFoldersSplitOnline(
31 flags,
'GLOBAL', [cfolder], [cfolder],
32 splitMC=
True, className=
'Trk::LayerMaterialMap'))
36 atlasMaterialTag = flags.ITk.trackingGeometry.materialTag + \
37 str(flags.ITk.trackingGeometry.version)
38 if flags.ITk.trackingGeometry.loadLocalDbForMaterialMaps:
39 DataBaseName = flags.ITk.trackingGeometry.localDatabaseName
40 from IOVDbSvc.IOVDbSvcConfig
import addFolders
41 result.merge(addFolders(flags,
42 "/GLOBAL/TrackingGeo/LayerMaterialITK",
45 className=
'Trk::LayerMaterialMap'))
47 atlasVersion = flags.ITk.trackingGeometry.geometryTagForMaterialMaps
49 materialFileTag = atlasMaterialTag +
'_'+ \
51 print (
"Requesting material map for tracking geometry from tag = ", materialFileTag)
52 from IOVDbSvc.IOVDbSvcConfig
import addFolders
53 result.merge(addFolders(flags,
54 "/GLOBAL/TrackingGeo/LayerMaterialITK",
58 className=
"Trk::LayerMaterialMap"))
64 result = ComponentAccumulator()
66 kwargs.setdefault(
"WorldDimension", [])
67 kwargs.setdefault(
"WorldMaterialProperties", [])
69 if "TrackingVolumeArrayCreator" not in kwargs:
70 from TrackingGeometryCondAlg.TrkDetDescrToolsConfig
import (
71 TrackingVolumeArrayCreatorCfg)
72 kwargs.setdefault(
"TrackingVolumeArrayCreator", result.popToolsAndMerge(
73 TrackingVolumeArrayCreatorCfg(flags)))
75 if "TrackingVolumeHelper" not in kwargs:
76 from TrackingGeometryCondAlg.TrkDetDescrToolsConfig
import (
77 TrackingVolumeHelperCfg)
78 kwargs.setdefault(
"TrackingVolumeHelper", result.popToolsAndMerge(
79 TrackingVolumeHelperCfg(flags)))
83 if flags.Detector.GeometryID:
84 from TrackingGeometryCondAlg.InDetTrackingGeometryConfig
import (
85 InDetTrackingGeometryBuilderCfg)
87 "InDetTrackingGeometryBuilder", result.popToolsAndMerge(
88 InDetTrackingGeometryBuilderCfg(flags, useCond=useCond)))
90 elif flags.Detector.GeometryITk:
91 from TrackingGeometryCondAlg.InDetTrackingGeometryConfig
import (
92 ITkTrackingGeometryBuilderCfg)
94 "InDetTrackingGeometryBuilder", result.popToolsAndMerge(
95 ITkTrackingGeometryBuilderCfg(flags, useCond=useCond)))
98 if flags.Detector.GeometryHGTD
and useCond:
99 from TrackingGeometryCondAlg.HGTD_TrackingGeometryConfig
import (
100 HGTD_TrackingGeometryBuilderCfg)
102 "HGTD_TrackingGeometryBuilder", result.popToolsAndMerge(
103 HGTD_TrackingGeometryBuilderCfg(flags)))
105 if flags.Detector.GeometryCalo:
106 from TrackingGeometryCondAlg.CaloTrackingGeometryConfig
import (
107 CaloTrackingGeometryBuilderCfg)
109 "CaloTrackingGeometryBuilder", result.popToolsAndMerge(
110 CaloTrackingGeometryBuilderCfg(flags, useCond=useCond)))
112 if flags.Detector.GeometryMuon:
113 from TrackingGeometryCondAlg.MuonTrackingGeometryConfig
import (
114 MuonTrackingGeometryBuilderCfg)
116 "MuonTrackingGeometryBuilder", result.popToolsAndMerge(
117 MuonTrackingGeometryBuilderCfg(flags, useCond=useCond)))
119 geometryBuilder = CompFactory.Trk.GeometryBuilderCond(name, **kwargs) \
121 CompFactory.Trk.GeometryBuilder(name, **kwargs)
122 result.setPrivateTools(geometryBuilder)
127 doMaterialValidation=False,
130 Sets up the Tracking Geometry Conditions Algorithm
132 result = ComponentAccumulator()
134 kwargs.setdefault(
"GeometryBuilder", result.popToolsAndMerge(
138 atlas_geometry_processors = []
140 if flags.TrackingGeometry.MaterialSource ==
'COOL':
141 if flags.GeoModel.Run < LHCPeriod.Run4:
142 CoolDataBaseFolder =
'/GLOBAL/TrackingGeo/LayerMaterialV2'
144 CoolDataBaseFolder =
'/GLOBAL/TrackingGeo/LayerMaterialITK'
146 from TrackingGeometryCondAlg.TrkDetDescrToolsConfig
import (
147 LayerMaterialProviderCfg)
148 atlas_geometry_processors += [ result.popToolsAndMerge(
149 LayerMaterialProviderCfg(flags,
150 LayerMaterialMapName = CoolDataBaseFolder,
151 LayerMaterialMapKey = CoolDataBaseFolder)) ]
156 elif flags.TrackingGeometry.MaterialSource ==
'Input':
157 from TrackingGeometryCondAlg.TrkDetDescrToolsConfig
import (
158 InputLayerMaterialProviderCfg)
159 atlas_geometry_processors += [ result.popToolsAndMerge(
160 InputLayerMaterialProviderCfg(flags)) ]
162 if doMaterialValidation:
163 from TrackingGeometryCondAlg.TrkDetDescrToolsConfig
import (
164 LayerMaterialInspectorCfg)
165 atlas_geometry_processors += [ result.popToolsAndMerge(
166 LayerMaterialInspectorCfg(flags)) ]
168 from GaudiKernel.GaudiHandles
import PrivateToolHandleArray
169 kwargs.setdefault(
"GeometryProcessors", PrivateToolHandleArray(
170 atlas_geometry_processors))
171 kwargs.setdefault(
"TrackingGeometryWriteKey",
'AtlasTrackingGeometry')
173 result.addCondAlgo(CompFactory.Trk.TrackingGeometryCondAlg(name, **kwargs),