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