73def MDTCablingConfigCfg(flags, name = "MuonMDT_CablingAlg", **kwargs):
74 acc = ComponentAccumulator()
75 if not flags.Detector.GeometryMDT: return acc
76 from AthenaConfiguration.Enums import LHCPeriod
77
78 kwargs.setdefault("UseJSONFormat", flags.Muon.usePhaseIIGeoSetup and \
79 flags.GeoModel.Run >= LHCPeriod.Run4)
80
81 kwargs.setdefault("MezzanineJSON", "")
82 kwargs.setdefault("CablingJSON", "")
83
84 kwargs.setdefault("isRun3", flags.GeoModel.Run >= LHCPeriod.Run3 )
85 from IOVDbSvc.IOVDbSvcConfig import addFolders
86 if len(kwargs["MezzanineJSON"]) == 0 and len(kwargs["CablingJSON"]) == 0:
87 if flags.Input.isMC is True:
88 dbTagMezz = None
89 dbTagSchema = None
90 if flags.Muon.usePhaseIIGeoSetup and \
91 flags.GeoModel.Run >= LHCPeriod.Run4:
92 dbTagMezz = "MDTMezMapSchemaJSON_RUN4BestKnowledge_v1"
93 dbTagSchema = "MDTCablingMapSchemaJSON_RUN4BestKnowledge_v1"
94 elif flags.GeoModel.Run >= LHCPeriod.Run4:
95 dbTagSchema = "MDTOflCablingMapSchema_RUN124_MC15_02"
96 dbTagMezz = "MDTOflCablingMezzanineSchema_RUN124_MC15_02"
97 if kwargs["UseJSONFormat"]:
98 kwargs.setdefault("MapFolders", "/MDT/CABLING/MAP_SCHEMA_JSON")
99 kwargs.setdefault("MezzanineFolders", "/MDT/CABLING/MEZZANINE_SCHEMA_JSON")
100 else:
101 kwargs.setdefault("MapFolders", "/MDT/Ofl/CABLING/MAP_SCHEMA")
102 kwargs.setdefault("MezzanineFolders", "/MDT/Ofl/CABLING/MEZZANINE_SCHEMA")
103 acc.merge( addFolders( flags, [kwargs["MapFolders"]], 'MDT_OFL',
104 className="CondAttrListCollection", tag = dbTagSchema))
105 acc.merge( addFolders( flags, [kwargs["MezzanineFolders"]], 'MDT_OFL',
106 className="CondAttrListCollection", tag = dbTagMezz) )
107 else:
108 if kwargs["UseJSONFormat"]:
109 kwargs.setdefault("MapFolders", "/MDT/CABLING/MAP_SCHEMA_JSON")
110 kwargs.setdefault("MezzanineFolders", "/MDT/CABLING/MEZZANINE_SCHEMA_JSON")
111 else:
112 kwargs.setdefault("MapFolders", "/MDT/CABLING/MAP_SCHEMA")
113 kwargs.setdefault("MezzanineFolders", "/MDT/CABLING/MEZZANINE_SCHEMA")
114 acc.merge( addFolders( flags, [kwargs["MapFolders"], kwargs["MezzanineFolders"]], 'MDT',
115 className="CondAttrListCollection") )
116
117
118 MDTCablingAlg = CompFactory.MuonMDT_CablingAlg(name, **kwargs)
119 acc.addCondAlgo( MDTCablingAlg, primary = True )
120
121 return acc
122