2 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
3 from AthenaConfiguration.ComponentFactory
import CompFactory
7 the_tool = CompFactory.MuonGMR4.MuonGeoUtilityTool(name, **kwargs)
8 result.addPublicTool(the_tool, primary =
True)
13 the_tool = CompFactory.MuonGMR4.MdtReadoutGeomTool(name, **kwargs)
14 result.setPrivateTools(the_tool)
20 the_tool = CompFactory.MuonGMR4.RpcReadoutGeomTool(name, **kwargs)
21 result.setPrivateTools(the_tool)
27 the_tool = CompFactory.MuonGMR4.TgcReadoutGeomTool(name, **kwargs)
28 result.setPrivateTools(the_tool)
34 the_tool = CompFactory.MuonGMR4.sTgcReadoutGeomTool(name, **kwargs)
35 result.setPrivateTools(the_tool)
41 the_tool = CompFactory.MuonGMR4.MmReadoutGeomTool(name, **kwargs)
42 result.setPrivateTools(the_tool)
48 the_tool = CompFactory.MuonGMR4.ChamberAssembleTool(name, **kwargs)
49 result.setPrivateTools(the_tool)
54 if flags.Detector.GeometryMDT:
57 if flags.Detector.GeometryRPC:
60 if flags.Detector.GeometryTGC:
63 if flags.Detector.GeometrysTGC:
66 if flags.Detector.GeometryMM:
69 from AthenaConfiguration.Enums
import ProductionStep
70 if flags.Common.ProductionStep
is not ProductionStep.Simulation:
72 kwargs.setdefault(
"ReadoutEleBuilders", sub_detTools)
73 the_tool = CompFactory.MuonGMR4.MuonDetectorTool(name = name, **kwargs)
74 result.setPrivateTools(the_tool)
79 from AtlasGeoModel.GeoModelConfig
import GeoModelCfg
80 geoModelSvc = result.getPrimaryAndMerge(
GeoModelCfg(flags))
86 if not flags.Muon.usePhaseIIGeoSetup:
return result
87 from MuonCondAlgR4.ConditionsConfig
import ActsMuonAlignCondAlgCfg
89 from ActsAlignmentAlgs.AlignmentAlgsConfig
import ActsAlignStoreProviderAlgCfg
91 from ROOT.ActsTrk
import DetectorType
93 if flags.Detector.GeometryMDT:
95 name=
"ActsDetAlignmentAlgMdt",
96 CondAlignStore=
"MdtActsAlignContainer" if flags.Muon.enableAlignment
else "",
97 EventAlignStore=
"MdtActsAlignContainer",
98 SplitPhysVolCache =
False,
99 SplitActsTrfCache =
False,
100 FillAlignCache =
False,
101 LoadTrackingGeoSvc =
False,
102 DetectorType=DetectorType.Mdt))
103 if flags.Detector.GeometryRPC:
105 name=
"ActsDetAlignmentAlgRpc",
106 CondAlignStore=
"RpcActsAlignContainer" if flags.Muon.enableAlignment
else "",
107 EventAlignStore=
"RpcActsAlignContainer",
108 SplitPhysVolCache =
False,
109 SplitActsTrfCache =
False,
110 FillAlignCache =
False,
111 LoadTrackingGeoSvc =
False,
112 DetectorType=DetectorType.Rpc))
113 if flags.Detector.GeometryTGC:
115 name=
"ActsDetAlignmentAlgTgc",
116 CondAlignStore=
"TgcActsAlignContainer" if flags.Muon.enableAlignment
else "",
117 EventAlignStore=
"TgcActsAlignContainer",
118 SplitPhysVolCache =
False,
119 SplitActsTrfCache =
False,
120 FillAlignCache =
False,
121 LoadTrackingGeoSvc =
False,
122 DetectorType=DetectorType.Tgc))
123 if flags.Detector.GeometrysTGC:
125 name=
"ActsDetAlignmentAlgSTGC",
126 CondAlignStore=
"sTgcActsAlignContainer" if flags.Muon.enableAlignment
else "",
127 EventAlignStore=
"sTgcActsAlignContainer",
128 SplitPhysVolCache =
False,
129 SplitActsTrfCache =
False,
130 FillAlignCache =
False,
131 LoadTrackingGeoSvc =
False,
132 DetectorType=DetectorType.sTgc))
134 if flags.Detector.GeometryMM:
136 name=
"ActsDetAlignmentAlgMM",
137 CondAlignStore=
"MmActsAlignContainer" if flags.Muon.enableAlignment
or \
138 flags.Muon.applyMMPassivation
else "",
139 EventAlignStore=
"MmActsAlignContainer",
140 SplitPhysVolCache =
False,
141 SplitActsTrfCache =
False,
142 FillAlignCache =
False,
143 LoadTrackingGeoSvc =
False,
144 DetectorType=DetectorType.Mm))