ATLAS Offline Software
TrkEventCnvToolsConfig.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 def InDetEventCnvToolCfg(flags, name='InDetEventCnvTool', **kwargs):
8 
9  # For condition data
10  if flags.Detector.GeometryPixel:
11  from PixelGeoModel.PixelGeoModelConfig import PixelReadoutGeometryCfg
12  acc.merge(PixelReadoutGeometryCfg(flags))
13  if flags.Detector.GeometrySCT:
14  from SCT_GeoModel.SCT_GeoModelConfig import SCT_ReadoutGeometryCfg
15  acc.merge(SCT_ReadoutGeometryCfg(flags))
16  if flags.Detector.GeometryTRT:
17  from TRT_GeoModel.TRT_GeoModelConfig import TRT_ReadoutGeometryCfg
18  acc.merge(TRT_ReadoutGeometryCfg(flags))
19 
20  acc.setPrivateTools(CompFactory.InDet.InDetEventCnvTool(name, **kwargs))
21  return acc
22 
23 def ITkEventCnvToolCfg(flags, name='ITkEventCnvTool', **kwargs):
24  acc = ComponentAccumulator()
25 
26  # For condition data
27  if flags.Detector.GeometryITkPixel:
28  from PixelGeoModelXml.ITkPixelGeoModelConfig import ITkPixelReadoutGeometryCfg
29  acc.merge(ITkPixelReadoutGeometryCfg(flags))
30  if flags.Detector.GeometryITkStrip:
31  from StripGeoModelXml.ITkStripGeoModelConfig import ITkStripReadoutGeometryCfg
32  acc.merge(ITkStripReadoutGeometryCfg(flags))
33 
34  kwargs.setdefault("PixelClusterContainer", "ITkPixelClusters")
35  kwargs.setdefault("SCT_ClusterContainer", "ITkStripClusters")
36  kwargs.setdefault("TRT_DriftCircleContainer", "")
37  kwargs.setdefault("PixelDetEleCollKey", "ITkPixelDetectorElementCollection")
38  kwargs.setdefault("SCTDetEleCollKey", "ITkStripDetectorElementCollection")
39  kwargs.setdefault("TRTDetEleContKey", "")
40 
41  acc.setPrivateTools(CompFactory.InDet.InDetEventCnvTool(name, **kwargs))
42  return acc
43 
44 def MuonEventCnvToolCfg(flags, name='MuonEventCnvTool', **kwargs):
45  from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg
46  acc = MuonGeoModelCfg(flags)
47  kwargs.setdefault("FixTGCs", not flags.Muon.usePhaseIIGeoSetup)
48  acc.setPrivateTools(CompFactory.Muon.MuonEventCnvTool(name, **kwargs))
49  return acc
50 
51 def TrkEventCnvSuperToolCfg(flags, name='EventCnvSuperTool', **kwargs):
52  acc = ComponentAccumulator()
53 
54  kwargs.setdefault("DoID", flags.Reco.EnableTracking)
55  kwargs.setdefault("DoMuons", flags.Detector.EnableMuon)
56  kwargs.setdefault("DoTrackOverlay",
57  (flags.Common.isOverlay or flags.Output.doWriteRDO) and \
58  flags.Overlay.doTrackOverlay)
59 
60  if kwargs["DoID"] and "IdCnvTool" not in kwargs:
61  if flags.Detector.GeometryID:
62  IdCnvTool = acc.popToolsAndMerge(InDetEventCnvToolCfg(flags))
63  elif flags.Detector.GeometryITk:
64  IdCnvTool = acc.popToolsAndMerge(ITkEventCnvToolCfg(flags))
65  kwargs.setdefault("IdCnvTool", IdCnvTool)
66 
67  if kwargs["DoMuons"] and "MuonCnvTool" not in kwargs:
68  kwargs.setdefault("MuonCnvTool", acc.popToolsAndMerge(
69  MuonEventCnvToolCfg(flags)))
70 
71  acc.addPublicTool(CompFactory.Trk.EventCnvSuperTool(name, **kwargs))
72  return acc
73 
74 
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
TRT_GeoModelConfig.TRT_ReadoutGeometryCfg
def TRT_ReadoutGeometryCfg(flags)
Definition: TRT_GeoModelConfig.py:55
python.TrkEventCnvToolsConfig.TrkEventCnvSuperToolCfg
def TrkEventCnvSuperToolCfg(flags, name='EventCnvSuperTool', **kwargs)
Definition: TrkEventCnvToolsConfig.py:51
SCT_GeoModelConfig.SCT_ReadoutGeometryCfg
def SCT_ReadoutGeometryCfg(flags)
Definition: SCT_GeoModelConfig.py:42
python.TrkEventCnvToolsConfig.ITkEventCnvToolCfg
def ITkEventCnvToolCfg(flags, name='ITkEventCnvTool', **kwargs)
Definition: TrkEventCnvToolsConfig.py:23
PixelGeoModelConfig.PixelReadoutGeometryCfg
def PixelReadoutGeometryCfg(flags)
Definition: PixelGeoModelConfig.py:42
ITkPixelGeoModelConfig.ITkPixelReadoutGeometryCfg
def ITkPixelReadoutGeometryCfg(flags, setGeometryAlignable=False, setAlignmentFolderName="/Indet/Align")
Definition: ITkPixelGeoModelConfig.py:39
python.MuonGeometryConfig.MuonGeoModelCfg
def MuonGeoModelCfg(flags)
Definition: MuonGeometryConfig.py:28
ITkStripGeoModelConfig.ITkStripReadoutGeometryCfg
def ITkStripReadoutGeometryCfg(flags, setGeometryAlignable=False, setAlignmentFolderName="/Indet/Align")
Definition: ITkStripGeoModelConfig.py:39
python.TrkEventCnvToolsConfig.InDetEventCnvToolCfg
def InDetEventCnvToolCfg(flags, name='InDetEventCnvTool', **kwargs)
Definition: TrkEventCnvToolsConfig.py:6
python.TrkEventCnvToolsConfig.MuonEventCnvToolCfg
def MuonEventCnvToolCfg(flags, name='MuonEventCnvTool', **kwargs)
Definition: TrkEventCnvToolsConfig.py:44