ATLAS Offline Software
ForDetGeoModelConfig.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
2 
3 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
4 from AthenaConfiguration.ComponentFactory import CompFactory
5 
6 from IOVDbSvc.IOVDbSvcConfig import addFoldersSplitOnline
7 
8 def ALFA_DetectorToolCfg(flags, name="ALFA_DetectorTool", **kwargs):
9  result = ComponentAccumulator()
10  theALFA_DetectorTool = CompFactory.ALFA_DetectorTool(name="ALFA_DetectorTool")
11  theALFA_DetectorTool.MetrologyType=3
12  theALFA_DetectorTool.B7L1U_MDGeometryType = 2
13  theALFA_DetectorTool.B7L1U_ODGeometryType = 2
14  theALFA_DetectorTool.B7L1L_MDGeometryType = 2
15  theALFA_DetectorTool.B7L1L_ODGeometryType = 2
16  theALFA_DetectorTool.A7L1U_MDGeometryType = 2
17  theALFA_DetectorTool.A7L1U_ODGeometryType = 2
18  theALFA_DetectorTool.A7L1L_MDGeometryType = 2
19  theALFA_DetectorTool.A7L1L_ODGeometryType = 2
20  theALFA_DetectorTool.A7R1U_MDGeometryType = 2
21  theALFA_DetectorTool.A7R1U_ODGeometryType = 2
22  theALFA_DetectorTool.A7R1L_MDGeometryType = 2
23  theALFA_DetectorTool.A7R1L_ODGeometryType = 2
24  theALFA_DetectorTool.B7R1U_MDGeometryType = 2
25  theALFA_DetectorTool.B7R1U_ODGeometryType = 2
26  theALFA_DetectorTool.B7R1L_MDGeometryType = 2
27  theALFA_DetectorTool.B7R1L_ODGeometryType = 2
28  result.merge(addFoldersSplitOnline(flags,'FWD','/FWD/Onl/ALFA/position_calibration','/FWD/ALFA/position_calibration'))
29  result.setPrivateTools(theALFA_DetectorTool)
30  return result
31 
32 
33 def ForDetGeometryCfg(flags):
34  from AtlasGeoModel.GeoModelConfig import GeoModelCfg
35  result = GeoModelCfg(flags)
36  geoModelSvc=result.getPrimary()
37  geoModelSvc.DetectorTools += [ CompFactory.ForDetEnvelopeTool() ]
38  # LUCID
39  if flags.Detector.GeometryLucid:
40  geoModelSvc.DetectorTools += [ CompFactory.LUCID_DetectorTool() ]
41  # ALFA
42  if flags.Detector.GeometryALFA:
43  geoModelSvc.DetectorTools += [ result.popToolsAndMerge(ALFA_DetectorToolCfg(flags)) ]
44  # ForwardRegion
45  if flags.Detector.GeometryFwdRegion:
46  # ForwardRegionGeoModelFactory (created by
47  # ForwardRegionGeoModelTool) has a PublicToolHandle to
48  # IForwardRegionProperties. Outside of simulation jobs the
49  # default version of the tool seems to be used.
50  from AthenaConfiguration.Enums import ProductionStep
51  if flags.Common.ProductionStep in [ProductionStep.Simulation, ProductionStep.FastChain]:
52  from ForwardRegionProperties.ForwardRegionPropertiesConfig import ForwardRegionPropertiesCfg
53  tool = result.popToolsAndMerge(ForwardRegionPropertiesCfg(flags))
54  result.addPublicTool(tool)
55  geoModelSvc.DetectorTools += [ CompFactory.ForwardRegionGeoModelTool() ]
56  # ZDC
57  if flags.Detector.GeometryZDC:
58  geoModelSvc.DetectorTools += [ CompFactory.ZDC_DetTool() ]
59  # AFP
60  if flags.Detector.GeometryAFP:
61  geoModelSvc.DetectorTools += [ CompFactory.AFP_GeoModelTool() ]
62  return result
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
python.ForDetGeoModelConfig.ForDetGeometryCfg
def ForDetGeometryCfg(flags)
Definition: ForDetGeoModelConfig.py:33
python.IOVDbSvcConfig.addFoldersSplitOnline
def addFoldersSplitOnline(flags, detDb, onlineFolders, offlineFolders, className=None, extensible=False, addMCString='_OFL', splitMC=False, tag=None, forceDb=None, modifiers='')
Definition: IOVDbSvcConfig.py:153
python.GeoModelConfig.GeoModelCfg
def GeoModelCfg(flags)
Definition: GeoModelConfig.py:16
python.ForDetGeoModelConfig.ALFA_DetectorToolCfg
def ALFA_DetectorToolCfg(flags, name="ALFA_DetectorTool", **kwargs)
Definition: ForDetGeoModelConfig.py:8
ForwardRegionPropertiesConfig.ForwardRegionPropertiesCfg
def ForwardRegionPropertiesCfg(flags, name="ForwardRegionProperties", **kwargs)
Definition: ForwardRegionPropertiesConfig.py:45