8 **kwargs) -> ComponentAccumulator:
9 acc = ComponentAccumulator()
10
11 from ROOT.ActsTrk import DetectorType
12 kwargs.setdefault("NotAlignDetectors", [DetectorType.Trt,
13 DetectorType.Hgtd])
14 kwargs.setdefault("UseBlueprint", flags.Acts.TrackingGeometry.UseBlueprint)
15 kwargs.setdefault("ObjDebugOutput", flags.Acts.TrackingGeometry.ObjDebugOutput)
16
17 subDetectors = []
18 blueprintTools = []
19
20 if flags.Detector.GeometryBpipe:
21 from BeamPipeGeoModel.BeamPipeGMConfig import BeamPipeGeometryCfg
22 acc.merge(BeamPipeGeometryCfg(flags))
23 kwargs.setdefault("BuildBeamPipe", True)
24
25 if flags.Detector.GeometryPixel:
26 subDetectors += ["Pixel"]
27 from PixelGeoModel.PixelGeoModelConfig import PixelReadoutGeometryCfg
28 acc.merge(PixelReadoutGeometryCfg(flags))
29
30
31 if flags.Detector.GeometrySCT:
32 subDetectors += ["SCT"]
33 from SCT_GeoModel.SCT_GeoModelConfig import SCT_ReadoutGeometryCfg
34 acc.merge(SCT_ReadoutGeometryCfg(flags))
35
36 if flags.Detector.GeometryTRT:
37
38
39
40 from TRT_GeoModel.TRT_GeoModelConfig import TRT_ReadoutGeometryCfg
41 acc.merge(TRT_ReadoutGeometryCfg(flags))
42
43 if flags.Detector.GeometryCalo:
44
45
46
47
48
49
50
51
52 from LArGeoAlgsNV.LArGMConfig import LArGMCfg
53 acc.merge(LArGMCfg(flags))
54 from TileGeoModel.TileGMConfig import TileGMCfg
55 acc.merge(TileGMCfg(flags))
56
57
58 if flags.Acts.TrackingGeometry.UseBlueprint:
59 if flags.Detector.GeometryITkPixel or flags.Detector.GeometryITkStrip:
60 blueprintTools += [acc.popToolsAndMerge(ItkBlueprintNodeBuilderCfg(flags))]
61 if flags.Detector.GeometryCalo:
62 subDetectors += ["Calo"]
63 blueprintTools += [acc.popToolsAndMerge(caloBlueprintNodeBuilderCfg(flags))]
64 if flags.Detector.GeometryMuon:
65 subDetectors += ["Muon"]
66 from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg
67 acc.merge(MuonGeoModelCfg(flags))
68 from ActsMuonDetector.ActsMuonDetectorCfg import MuonBlueprintNodeBuilderCfg
69 blueprintTools += [acc.popToolsAndMerge(MuonBlueprintNodeBuilderCfg(flags))]
70
71
72 if flags.Detector.GeometryITkPixel:
73 subDetectors += ["ITkPixel"]
74 from PixelGeoModelXml.ITkPixelGeoModelConfig import ITkPixelReadoutGeometryCfg
75 acc.merge(ITkPixelReadoutGeometryCfg(flags))
76
77 if flags.Detector.GeometryITkStrip:
78 subDetectors += ["ITkStrip"]
79 from StripGeoModelXml.ITkStripGeoModelConfig import ITkStripReadoutGeometryCfg
80 acc.merge(ITkStripReadoutGeometryCfg(flags))
81
82
83 if flags.Detector.GeometryHGTD:
84 subDetectors += ["HGTD"]
85 if flags.HGTD.Geometry.useGeoModelXml:
86 from HGTD_GeoModelXml.HGTD_GeoModelConfig import HGTD_ReadoutGeometryCfg
87 else:
88 from HGTD_GeoModel.HGTD_GeoModelConfig import HGTD_ReadoutGeometryCfg
89 acc.merge(HGTD_ReadoutGeometryCfg(flags))
90
91 actsTrackingGeometrySvc = CompFactory.ActsTrackingGeometrySvc(name,
92 BuildSubDetectors=subDetectors,
93 BlueprintNodeBuilders=blueprintTools,
94 **kwargs)
95
96 if flags.Acts.TrackingGeometry.MaterialSource == "Default":
97 if flags.Detector.GeometryITk:
98 extension = "ITk"
99 if flags.Detector.GeometryHGTD:
100 extension += "-HGTD"
101 if flags.Acts.TrackingGeometry.InsertITkPassiveMaterialLayers:
102 extension += "-passiveLayers"
103 if flags.Acts.TrackingGeometry.MaterialFileExtension:
104 extension += "-"+flags.Acts.TrackingGeometry.MaterialFileExtension
105 actsTrackingGeometrySvc.UseMaterialMap = True
106 actsTrackingGeometrySvc.MaterialMapCalibFolder = flags.Acts.TrackingGeometry.MaterialCalibrationFolder
107 actsTrackingGeometrySvc.MaterialMapInputFile = \
108 "material-maps-" + flags.GeoModel.AtlasVersion + "-" + extension + ".json"
109
110 elif flags.Acts.TrackingGeometry.MaterialSource.find(".json") != -1:
111 actsTrackingGeometrySvc.UseMaterialMap = True
112 actsTrackingGeometrySvc.MaterialMapCalibFolder = flags.Acts.TrackingGeometry.MaterialCalibrationFolder
113 actsTrackingGeometrySvc.MaterialMapInputFile = flags.Acts.TrackingGeometry.MaterialSource
114
115 if flags.Acts.TrackingGeometry.InsertITkPassiveMaterialLayers:
116 actsTrackingGeometrySvc.PassiveITkInnerPixelBarrelLayerRadii = flags.Acts.TrackingGeometry.PassiveITkInnerPixelBarrelLayerRadii
117 actsTrackingGeometrySvc.PassiveITkInnerPixelBarrelLayerHalflengthZ = flags.Acts.TrackingGeometry.PassiveITkInnerPixelBarrelLayerHalflengthZ
118 actsTrackingGeometrySvc.PassiveITkInnerPixelBarrelLayerThickness = flags.Acts.TrackingGeometry.PassiveITkInnerPixelBarrelLayerThickness
119 actsTrackingGeometrySvc.PassiveITkOuterPixelBarrelLayerRadii = flags.Acts.TrackingGeometry.PassiveITkOuterPixelBarrelLayerRadii
120 actsTrackingGeometrySvc.PassiveITkOuterPixelBarrelLayerHalflengthZ = flags.Acts.TrackingGeometry.PassiveITkOuterPixelBarrelLayerHalflengthZ
121 actsTrackingGeometrySvc.PassiveITkOuterPixelBarrelLayerThickness = flags.Acts.TrackingGeometry.PassiveITkOuterPixelBarrelLayerThickness
122 actsTrackingGeometrySvc.PassiveITkStripBarrelLayerRadii = flags.Acts.TrackingGeometry.PassiveITkStripBarrelLayerRadii
123 actsTrackingGeometrySvc.PassiveITkStripBarrelLayerHalflengthZ = flags.Acts.TrackingGeometry.PassiveITkStripBarrelLayerHalflengthZ
124 actsTrackingGeometrySvc.PassiveITkStripBarrelLayerThickness = flags.Acts.TrackingGeometry.PassiveITkStripBarrelLayerThickness
125
126
127
128 acc.addService(actsTrackingGeometrySvc, primary = True)
129 return acc
130
131