37 """Force all conditions (except prescales) to match the given run and LB number, a timestamp can also be provided for MC"""
39 log.info(forceConditions.__doc__)
42 iovDbSvc = cfg.getService(
'IOVDbSvc')
45 ignore = [
'/TRIGGER/HLT/PrescaleKey']
48 timebased = [
'/TDAQ/OLC/CALIBRATIONS',
49 '/TDAQ/Resources/ATLAS/SCT/Robins',
50 '/SCT/DAQ/Config/ChipSlim',
51 '/SCT/DAQ/Config/Geog',
52 '/SCT/DAQ/Config/MUR',
53 '/SCT/DAQ/Config/Module',
54 '/SCT/DAQ/Config/ROD',
55 '/SCT/DAQ/Config/RODMUR',
57 '/SCT/HLT/DCS/MODTEMP',
58 '/MUONALIGN/Onl/MDT/BARREL',
59 '/MUONALIGN/Onl/MDT/ENDCAP/SIDEA',
60 '/MUONALIGN/Onl/MDT/ENDCAP/SIDEC',
61 '/MUONALIGN/Onl/TGC/SIDEA',
62 '/MUONALIGN/Onl/TGC/SIDEC',
63 '/TRIGGER/L1Calo/V1/Calibration/EfexNoiseCuts',
64 '/TRIGGER/L1Calo/V1/Calibration/EfexEnergyCalib',
65 '/TRIGGER/L1Calo/V1/Calibration/JfexModuleSettings',
66 '/TRIGGER/L1Calo/V1/Calibration/JfexNoiseCuts',
67 '/TRIGGER/L1Calo/V1/Calibration/JfexSystemSettings',
68 '/TRIGGER/L1Calo/V1/Calibration/GfexModuleSettings']
71 from TrigCommon.AthHLT
import get_sor_params
72 sor = get_sor_params(run)
73 timestamp = sor[
'SORTime'] // int(1e9)
75 for i,f
in enumerate(iovDbSvc.Folders):
76 if any(name
in f
for name
in ignore):
78 if any(name
in f
for name
in timebased):
79 iovDbSvc.Folders[i] += f
'<forceTimestamp>{timestamp:d}</forceTimestamp>'
81 iovDbSvc.Folders[i] += f
'<forceRunNumber>{run:d}</forceRunNumber> <forceLumiblockNumber>{lb:d}</forceLumiblockNumber>'
95def dbmod_BFieldAutoConfig(): # DB modifier for debug recovery when using an online SMK
96 """Use DCS currents to configure magnetic field"""
98 log.info(dbmod_BFieldAutoConfig.__doc__)
100 from GaudiPython.Bindings import iProperty
102 f = '<db>COOLOFL_DCS/CONDBR2</db> /EXT/DCS/MAGNETS/SENSORDATA'
103 iProperty('IOVDbSvc').Folders += [f]
104 iProperty('CondInputLoader').Load.add(('CondAttrListCollection','/EXT/DCS/MAGNETS/SENSORDATA'))
106 iProperty('AtlasFieldCacheCondAlg').UseDCS = True
107 iProperty('AtlasFieldMapCondAlg').LoadMapOnStart = False
108 iProperty('AtlasFieldMapCondAlg').UseMapsFromCOOL = True
109 iProperty('HltEventLoopMgr').setMagFieldFromPtree = False
forceConditions(run, lb, timestamp=None, iovDbSvc=None)