5 from AthenaConfiguration.AccumulatorCache
import AccumulatorCache
6 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
7 from AthenaConfiguration.ComponentFactory
import CompFactory
8 from IOVDbSvc.IOVDbSvcConfig
import addFolders
9 from AthenaConfiguration.Enums
import LHCPeriod
16 if flags.Common.isOnline:
19 kwargs[
"isOnline"] =
False
21 kwargs[
'isData'] =
False
22 folders = [
"/MDT/DCS/DROPPEDCH",
"/MDT/DCS/PSLVCHSTATE"]
25 kwargs[
'ReadKey_MC_DE'] =
''
26 kwargs[
'ReadKey_MC_DT'] =
''
29 kwargs[
'ReadKey_DataR1_DC'] =
''
30 kwargs[
'ReadKey_DataR1_HV'] =
''
31 kwargs[
'ReadKey_DataR1_LV'] =
''
32 kwargs[
'ReadKey_DataR1_V0'] =
''
33 kwargs[
'ReadKey_DataR1_V1'] =
''
34 kwargs[
'ReadKey_DataR2_HV'] =
''
35 kwargs[
'ReadKey_DataR2_LV'] =
''
37 kwargs[
'isData'] =
True
38 kwargs[
'isRun1'] = flags.IOVDb.DatabaseInstance ==
'COMP200'
39 kwargs[
'useRun1SetPoints'] =
False
40 if kwargs[
'isRun1']
and kwargs[
'useRun1SetPoints']:
41 folders = [
"/MDT/DCS/PSV0SETPOINTS",
"/MDT/DCS/PSV1SETPOINTS"]
44 kwargs[
'ReadKey_DataR1_DC'] =
''
45 kwargs[
'ReadKey_DataR1_HV'] =
''
46 kwargs[
'ReadKey_DataR1_LV'] =
''
47 kwargs[
'ReadKey_DataR2_HV'] =
''
48 kwargs[
'ReadKey_DataR2_LV'] =
''
50 folders = [
"/MDT/DCS/PSHVMLSTATE",
"/MDT/DCS/PSLVCHSTATE",
"/MDT/DCS/DROPPEDCH"]
53 kwargs[
'ReadKey_DataR1_V0'] =
''
54 kwargs[
'ReadKey_DataR1_V1'] =
''
55 kwargs[
'ReadKey_DataR2_HV'] =
''
56 kwargs[
'ReadKey_DataR2_LV'] =
''
58 folders = [
"/MDT/DCS/HV",
"/MDT/DCS/LV"]
61 kwargs[
'ReadKey_DataR1_DC'] =
''
62 kwargs[
'ReadKey_DataR1_HV'] =
''
63 kwargs[
'ReadKey_DataR1_LV'] =
''
64 kwargs[
'ReadKey_DataR1_V0'] =
''
65 kwargs[
'ReadKey_DataR1_V1'] =
''
68 kwargs[
'ReadKey_MC_DC'] =
''
69 kwargs[
'ReadKey_MC_DE'] =
''
70 kwargs[
'ReadKey_MC_DT'] =
''
71 kwargs[
'ReadKey_MC_NC'] =
''
73 alg = CompFactory.MdtCondDbAlg(**kwargs)
74 result.merge(
addFolders(flags, folders , detDb=
"DCS_OFL", className=
'CondAttrListCollection') )
75 result.addCondAlgo(alg, primary =
True)
80 if flags.Common.isOnline:
83 kwargs[
'isData'] =
not flags.Input.isMC
84 alg = CompFactory.RpcCondDbAlg(**kwargs)
86 result.merge(
addFolders(flags, [
"/RPC/DQMF/ELEMENT_STATUS"], detDb=
"RPC_OFL", className=
'CondAttrListCollection') )
87 result.addCondAlgo(alg)
92 pslope_from_db =
False
93 folders = [
"/CSC/FTHOLD",
"/CSC/NOISE",
"/CSC/PED",
"/CSC/RMS",
"/CSC/STAT",
"/CSC/T0BASE",
"/CSC/T0PHASE"]
95 kwargs[
'ReadKey_HV'] =
''
96 if flags.Common.isOnline:
97 kwargs[
"isOnline" ] =
True
98 kwargs[
'isData' ] =
True
99 kwargs[
'ReadKey_FT'] =
'/CSC/FTHOLD'
100 kwargs[
'ReadKey_NO'] =
'/CSC/NOISE'
101 kwargs[
'ReadKey_PD'] =
'/CSC/PED'
103 kwargs[
'ReadKey_PS'] =
'/CSC/PSLOPE'
104 kwargs[
'ReadKey_RM'] =
'/CSC/RMS'
105 kwargs[
'ReadKey_ST'] =
'/CSC/STAT'
106 kwargs[
'ReadKey_TB'] =
''
107 kwargs[
'ReadKey_TP'] =
''
108 folders = [
"/CSC/ONL/FTHOLD",
"/CSC/ONL/NOISE",
"/CSC/ONL/PED",
"/CSC/ONL/RMS",
"/CSC/ONL/STAT"]
110 folders.append(
"/CSC/PSLOPE")
114 folders.append(
"/CSC/PSLOPE")
116 kwargs[
"isOnline"] =
False
118 kwargs[
'isData'] =
False
120 kwargs[
'isData'] =
True
121 kwargs[
'isRun1'] = flags.IOVDb.DatabaseInstance ==
'COMP200'
122 alg = CompFactory.CscCondDbAlg(**kwargs)
123 result.merge(
addFolders(flags, folders , detDb=scheme, className=
'CondAttrListCollection') )
124 result.addCondAlgo(alg)
130 the_alg = CompFactory.TgcCondDbAlg(name = name, **kwargs)
131 result.addCondAlgo(the_alg, primary =
True)
137 the_alg = CompFactory.TgcDigitEnergyThreshCondAlg(name= name, **kwargs)
138 result.addCondAlgo(the_alg, primary =
True)
143 the_alg = CompFactory.TgcDigitJitterCondAlg(name = name, **kwargs)
144 result.addCondAlgo(the_alg, primary =
True)
149 if flags.Digitization.UseUpdatedTGCConditions:
150 result.merge(
addFolders(flags, [
"/TGC/DIGIT/ASDPOS"], detDb=
"TGC_OFL", db=
"OFLP200", className=
"CondAttrListCollection"))
152 result.merge(
addFolders(flags, [
"/TGC/DIGIT/ASDPOS"], tag=
'TgcDigitAsdPos-00-01', detDb=
"TGC_OFL", db=
"OFLP200", className=
"CondAttrListCollection"))
153 the_alg = CompFactory.TgcDigitASDposCondAlg(name = name, **kwargs)
154 result.addCondAlgo(the_alg, primary =
True)
159 result.merge(
addFolders(flags, [
"/TGC/DIGIT/TOFFSET"], tag=
'TgcDigitTimeOffset-00-01', detDb=
"TGC_OFL", db=
"OFLP200", className=
"CondAttrListCollection"))
160 the_alg = CompFactory.TgcDigitTimeOffsetCondAlg(name = name, **kwargs)
161 result.addCondAlgo(the_alg, primary =
True)
166 result.merge(
addFolders(flags, [
"/TGC/DIGIT/XTALK"], tag=
'TgcDigitXTalk-00-01', detDb=
"TGC_OFL", db=
"OFLP200", className=
"CondAttrListCollection"))
167 the_alg = CompFactory.TgcDigitCrosstalkCondAlg(name = name, **kwargs)
168 result.addCondAlgo(the_alg, primary =
True)
187 kwargs.setdefault(
"MmT0FileName",
"")
188 kwargs.setdefault(
"sTgcT0FileName",
"")
190 kwargs.setdefault(
"loadMmT0Data",flags.Muon.Calib.applyMmT0Correction)
191 kwargs.setdefault(
"loadsTgcT0Data", flags.Muon.Calib.applysTgcT0Correction)
192 if(kwargs[
"loadMmT0Data"]
and not kwargs[
'MmT0FileName'] ):
193 kwargs.setdefault(
'ReadKey_MM_T0',
"/MDT/MM/T0")
194 kwargs.setdefault(
'ReadKey_MM_T0',
"")
196 if(kwargs[
"loadsTgcT0Data"]
and not kwargs[
'sTgcT0FileName']):
197 kwargs.setdefault(
'ReadKey_STGC_T0',
"")
198 kwargs.setdefault(
'ReadKey_STGC_T0',
"")
202 if flags.Common.isOnline:
203 kwargs[
'isData'] =
True
209 if flags.GeoModel.Run>=LHCPeriod.Run4:
210 result.merge(
addFolders(flags, [
"/MDT/Onl/MM/TIME/SIDEA" ], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmTdoSideA-Const-3p73") )
211 result.merge(
addFolders(flags, [
"/MDT/Onl/MM/TIME/SIDEC" ], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmTdoSideC-Const-3p73") )
212 result.merge(
addFolders(flags, [
"/MDT/Onl/MM/CHARGE/SIDEA"], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmPdoSideA-Const-9p0" ) )
213 result.merge(
addFolders(flags, [
"/MDT/Onl/MM/CHARGE/SIDEC"], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmPdoSideC-Const-9p0" ) )
214 if(kwargs[
'ReadKey_MM_T0']):
215 result.merge(
addFolders(flags, [kwargs[
'ReadKey_MM_T0']], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmT0SideAc-Nov2023"))
217 folders = [
"/MDT/Onl/MM/TIME/SIDEA",
"/MDT/Onl/MM/CHARGE/SIDEA", \
218 "/MDT/Onl/MM/TIME/SIDEC",
"/MDT/Onl/MM/CHARGE/SIDEC"]
219 result.merge(
addFolders(flags, folders, detDb=scheme, className=
'CondAttrListCollection') )
220 if(kwargs[
'ReadKey_MM_T0']):
221 result.merge(
addFolders(flags, [kwargs[
'ReadKey_MM_T0']], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmT0SideAc-Nov2023"))
223 kwargs[
"ReadKey_MM_SIDEA_TDO"] =
"/MDT/Onl/MM/TIME/SIDEA"
224 kwargs[
"ReadKey_MM_SIDEC_TDO"] =
"/MDT/Onl/MM/TIME/SIDEC"
225 kwargs[
"ReadKey_MM_SIDEA_PDO"] =
"/MDT/Onl/MM/CHARGE/SIDEA"
226 kwargs[
"ReadKey_MM_SIDEC_PDO"] =
"/MDT/Onl/MM/CHARGE/SIDEC"
234 if flags.GeoModel.Run>=LHCPeriod.Run4:
235 result.merge(
addFolders(flags, [
"/TGC/Onl/NSW/TIME/SIDEA" ], detDb=scheme, className=
'CondAttrListCollection' , tag=
"sTgcTdoSideA-Const-3p73"))
236 result.merge(
addFolders(flags, [
"/TGC/Onl/NSW/TIME/SIDEC" ], detDb=scheme, className=
'CondAttrListCollection' , tag=
"sTgcTdoSideC-Const-3p73"))
237 result.merge(
addFolders(flags, [
"/TGC/Onl/NSW/CHARGE/SIDEA"], detDb=scheme, className=
'CondAttrListCollection' , tag=
"sTgcPdoSideA-Const-0p78-icpt0"))
238 result.merge(
addFolders(flags, [
"/TGC/Onl/NSW/CHARGE/SIDEC"], detDb=scheme, className=
'CondAttrListCollection' , tag=
"sTgcPdoSideC-Const-0p78-icpt0"))
240 folders = [
"/TGC/Onl/NSW/TIME/SIDEA",
"/TGC/Onl/NSW/CHARGE/SIDEA", \
241 "/TGC/Onl/NSW/TIME/SIDEC",
"/TGC/Onl/NSW/CHARGE/SIDEC"]
242 result.merge(
addFolders(flags, folders , detDb=scheme, className=
'CondAttrListCollection') )
244 kwargs[
"ReadKey_STGC_SIDEA_TDO"] =
"/TGC/Onl/NSW/TIME/SIDEA"
245 kwargs[
"ReadKey_STGC_SIDEC_TDO"] =
"/TGC/Onl/NSW/TIME/SIDEC"
246 kwargs[
"ReadKey_STGC_SIDEA_PDO"] =
"/TGC/Onl/NSW/CHARGE/SIDEA"
247 kwargs[
"ReadKey_STGC_SIDEC_PDO"] =
"/TGC/Onl/NSW/CHARGE/SIDEC"
250 elif flags.Input.isMC:
251 kwargs[
'isData'] =
False
257 if flags.GeoModel.Run>=LHCPeriod.Run4:
258 result.merge(
addFolders(flags, [
"/MDT/MM/TIME/SIDEA" ], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmTdoSideA-Const-3p73") )
259 result.merge(
addFolders(flags, [
"/MDT/MM/TIME/SIDEC" ], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmTdoSideC-Const-3p73") )
260 result.merge(
addFolders(flags, [
"/MDT/MM/CHARGE/SIDEA"], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmPdoSideA-Const-9p0" ) )
261 result.merge(
addFolders(flags, [
"/MDT/MM/CHARGE/SIDEC"], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmPdoSideC-Const-9p0" ) )
262 result.merge(
addFolders(flags, [
"/MDT/MM/THR/SIDEA" ], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmThrSideA-Const-55p4") )
263 result.merge(
addFolders(flags, [
"/MDT/MM/THR/SIDEC" ], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmThrSideC-Const-55p4") )
264 if(kwargs[
'ReadKey_MM_T0']):
265 result.merge(
addFolders(flags, [kwargs[
'ReadKey_MM_T0']], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmT0SideAc-Nov2023"))
267 folders = [
"/MDT/MM/TIME/SIDEA" ,
"/MDT/MM/CHARGE/SIDEA" ,
"/MDT/MM/THR/SIDEA" , \
268 "/MDT/MM/TIME/SIDEC" ,
"/MDT/MM/CHARGE/SIDEC" ,
"/MDT/MM/THR/SIDEC" ]
269 result.merge(
addFolders(flags, folders, detDb=scheme, className=
'CondAttrListCollection') )
270 if(kwargs[
'ReadKey_MM_T0']):
271 result.merge(
addFolders(flags, [kwargs[
'ReadKey_MM_T0']], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmT0SideAc-Nov2023"))
277 if flags.GeoModel.Run>=LHCPeriod.Run4:
278 result.merge(
addFolders(flags, [
"/TGC/NSW/TIME/SIDEA" ], detDb=scheme, className=
'CondAttrListCollection' , tag=
"sTgcTdoSideA-Const-3p73"))
279 result.merge(
addFolders(flags, [
"/TGC/NSW/TIME/SIDEC" ], detDb=scheme, className=
'CondAttrListCollection' , tag=
"sTgcTdoSideC-Const-3p73"))
280 result.merge(
addFolders(flags, [
"/TGC/NSW/CHARGE/SIDEA"], detDb=scheme, className=
'CondAttrListCollection' , tag=
"sTgcPdoSideA-Const-0p78-icpt0"))
281 result.merge(
addFolders(flags, [
"/TGC/NSW/CHARGE/SIDEC"], detDb=scheme, className=
'CondAttrListCollection' , tag=
"sTgcPdoSideC-Const-0p78-icpt0"))
282 result.merge(
addFolders(flags, [
"/TGC/NSW/THR/SIDEA" ], detDb=scheme, className=
'CondAttrListCollection' , tag=
"sTgcThrSideA-Const-15p0"))
283 result.merge(
addFolders(flags, [
"/TGC/NSW/THR/SIDEC" ], detDb=scheme, className=
'CondAttrListCollection' , tag=
"sTgcThrSideC-Const-15p0"))
285 folders = [
"/TGC/NSW/TIME/SIDEA",
"/TGC/NSW/CHARGE/SIDEA",
"/TGC/NSW/THR/SIDEA", \
286 "/TGC/NSW/TIME/SIDEC",
"/TGC/NSW/CHARGE/SIDEC",
"/TGC/NSW/THR/SIDEC"]
287 result.merge(
addFolders(flags, folders , detDb=scheme, className=
'CondAttrListCollection') )
291 kwargs[
'isData'] =
True
297 if flags.GeoModel.Run>=LHCPeriod.Run4:
298 result.merge(
addFolders(flags, [
"/MDT/MM/TIME/SIDEA" ], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmTdoSideA-Const-3p73") )
299 result.merge(
addFolders(flags, [
"/MDT/MM/TIME/SIDEC" ], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmTdoSideC-Const-3p73") )
300 result.merge(
addFolders(flags, [
"/MDT/MM/CHARGE/SIDEA"], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmPdoSideA-Const-9p0" ) )
301 result.merge(
addFolders(flags, [
"/MDT/MM/CHARGE/SIDEC"], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmPdoSideC-Const-9p0" ) )
302 if(kwargs[
'ReadKey_MM_T0']):
303 result.merge(
addFolders(flags, [kwargs[
'ReadKey_MM_T0']], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmT0SideAc-Nov2023"))
305 folders = [
"/MDT/MM/TIME/SIDEA",
"/MDT/MM/CHARGE/SIDEA", \
306 "/MDT/MM/TIME/SIDEC",
"/MDT/MM/CHARGE/SIDEC"]
307 result.merge(
addFolders(flags, folders, detDb=scheme, className=
'CondAttrListCollection') )
308 if(kwargs[
'ReadKey_MM_T0']):
309 result.merge(
addFolders(flags, [kwargs[
'ReadKey_MM_T0']], detDb=scheme, className=
'CondAttrListCollection' , tag=
"MmT0SideAc-Nov2023"))
316 if flags.GeoModel.Run>=LHCPeriod.Run4:
317 result.merge(
addFolders(flags, [
"/TGC/NSW/TIME/SIDEA" ], detDb=scheme, className=
'CondAttrListCollection' , tag=
"sTgcTdoSideA-Const-3p73"))
318 result.merge(
addFolders(flags, [
"/TGC/NSW/TIME/SIDEC" ], detDb=scheme, className=
'CondAttrListCollection' , tag=
"sTgcTdoSideC-Const-3p73"))
319 result.merge(
addFolders(flags, [
"/TGC/NSW/CHARGE/SIDEA"], detDb=scheme, className=
'CondAttrListCollection' , tag=
"sTgcPdoSideA-Const-0p78-icpt0"))
320 result.merge(
addFolders(flags, [
"/TGC/NSW/CHARGE/SIDEC"], detDb=scheme, className=
'CondAttrListCollection' , tag=
"sTgcPdoSideC-Const-0p78-icpt0"))
322 folders = [
"/TGC/NSW/TIME/SIDEA",
"/TGC/NSW/CHARGE/SIDEA", \
323 "/TGC/NSW/TIME/SIDEC",
"/TGC/NSW/CHARGE/SIDEC"]
324 result.merge(
addFolders(flags, folders , detDb=scheme, className=
'CondAttrListCollection') )
326 result.addCondAlgo(CompFactory.NswCalibDbAlg(**kwargs))
332 if flags.GeoModel.Run>=LHCPeriod.Run4:
333 acc.merge(
addFolders(flags,
"/MDT/MM/PASSIVATION",
"MDT_OFL", className=
"CondAttrListCollection", tag=
"MmPassiv2022May19"))
335 acc.merge(
addFolders(flags,
"/MDT/MM/PASSIVATION",
"MDT_OFL", className=
"CondAttrListCollection"))
336 alg = CompFactory.NswPassivationDbAlg(
"NswPassivationDbAlg", **kwargs)
344 if flags.Common.isOnline: kwargs.setdefault(
"MdtCondKey",
"")
345 muon_station_intersect_condalg = CompFactory.MuonStationIntersectCondAlg(name=name, **kwargs)
346 result.addCondAlgo(muon_station_intersect_condalg, primary=
True)
351 if flags.GeoModel.Run!=LHCPeriod.Run3:
return acc
352 if flags.Input.isMC:
return acc
353 kwargs.setdefault(
"LoadTdaq",
False)
354 kwargs.setdefault(
"LoadEltx",
False)
355 acc.merge(
addFolders(flags,
"/MMG/DCS/HV",
"DCS_OFL", className=
"CondAttrListCollection"))
356 acc.merge(
addFolders(flags,
"/STG/DCS/HV",
"DCS_OFL", className=
"CondAttrListCollection"))
358 if(kwargs[
"LoadTdaq"]):
359 kwargs.setdefault(
"ReadKey_MMG_TDAQ",
"/MDT/MM/ELinks")
360 kwargs.setdefault(
"ReadKey_STG_TDAQ",
"/TGC/NSW/ELinks")
361 acc.merge(
addFolders(flags,
"/MDT/MM/ELinks", detDb=
"MDT_OFL", className=
"CondAttrListCollection", tag=
"MmElinks2023-TEST-01"))
362 acc.merge(
addFolders(flags,
"/TGC/NSW/ELinks", detDb=
"TGC_OFL", className=
"CondAttrListCollection", tag=
"sTgcElinks2023-TEST-01"))
363 kwargs.setdefault(
"ReadKey_MMG_TDAQ",
"/MDT/MM/ELinks")
364 kwargs.setdefault(
"ReadKey_STG_TDAQ",
"/TGC/NSW/Elinks")
366 if(kwargs[
"LoadEltx"]):
367 kwargs.setdefault(
"ReadKey_MMG_ELTX",
"/MMG/DCS/TSELTX")
368 kwargs.setdefault(
"ReadKey_STG_ELTX",
"/STG/DCS/TSELTX")
369 acc.merge(
addFolders(flags, kwargs[
"ReadKey_MMG_ELTX"],
"DCS_OFL", className=
"CondAttrListCollection"))
370 acc.merge(
addFolders(flags, kwargs[
"ReadKey_STG_ELTX"],
"DCS_OFL", className=
"CondAttrListCollection"))
371 kwargs.setdefault(
"ReadKey_MMG_ELTX",
"")
372 kwargs.setdefault(
"ReadKey_STG_ELTX",
"")
375 alg = CompFactory.NswDcsDbAlg(
"NswDcsDbAlg", **kwargs)