281 '''Function to call l1calo DQ monitoring algorithms'''
282 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
283 from AthenaConfiguration.Enums
import Format
287 local_logger = logging.getLogger(
'AthenaMonitoringCfg')
288 info = local_logger.info
289 info(
'In LVL1CaloMonitoringConfig')
294 if not flags.Trigger.Online.isPartition:
295 if not flags.DQ.triggerDataAvailable:
298 isData =
not flags.Input.isMC
301 validation=flags.DQ.Steering.LVL1Calo.doValidation
305 if not validation
and isData
and flags.DQ.Environment
not in (
'tier0Raw',
'AOD'):
307 from TrigT1CaloMonitoring.PprMonitorAlgorithm
import PprMonitoringConfig
308 from TrigT1CaloMonitoring.JepJemMonitorAlgorithm
import JepJemMonitoringConfig
311 from AthenaConfiguration.AutoConfigFlags
import GetFileMD
313 inputContainsRun3FormatConfigMetadata = (
"metadata_items" in md
and any((
'TriggerMenuJson' in key)
for key
in md[
"metadata_items"].
keys()))
316 if flags.Input.Format
is not Format.POOL
or inputContainsRun3FormatConfigMetadata:
322 detMask=eformat.helper.DetectorMask(f
'{md.get("detectorMask",[0x0])[0]:032x}')
323 hasCPM = detMask.is_set(eformat.helper.SubDetector.TDAQ_CALO_CLUSTER_PROC_DAQ)
324 hasJEP = detMask.is_set(eformat.helper.SubDetector.TDAQ_CALO_JET_PROC_DAQ)
327 from TrigT1CaloMonitoring.CpmMonitorAlgorithm
import CpmMonitoringConfig
328 from TrigT1CaloMonitoring.CpmSimMonitorAlgorithm
import CpmSimMonitoringConfig
333 from TrigT1CaloMonitoring.JepCmxMonitorAlgorithm
import JepCmxMonitoringConfig
336 from TrigT1CaloMonitoring.OverviewMonitorAlgorithm
import OverviewMonitoringConfig
337 from TrigT1CaloMonitoring.PPMSimBSMonitorAlgorithm
import PPMSimBSMonitoringConfig
343 OverviewMonAlg = result.getEventAlgo(
"OverviewMonAlg")
344 OverviewMonAlg.CPMErrorLocation =
""
345 OverviewMonAlg.CPMMismatchLocation =
""
347 if flags.Input.TriggerStream ==
"physics_Mistimed":
348 from TrigT1CaloMonitoring.MistimedStreamMonitorAlgorithm
import MistimedStreamMonitorConfig
352 if flags.Input.Format
is Format.BS:
353 from TrigT1CaloByteStream.LVL1CaloRun2ByteStreamConfig
import LVL1CaloRun2ReadBSCfg
357 if flags.Trigger.enableL1CaloPhase1
and flags.Input.Format
is not Format.POOL:
360 from L1CaloFEXSim.L1CaloFEXSimCfg
import L1CaloFEXSimCfg
364 if flags.Trigger.L1.doeFex:
365 from TrigT1CaloMonitoring.EfexInputMonitorAlgorithm
import EfexInputMonitoringConfig
369 from TrigT1CaloMonitoring.EfexSimMonitorAlgorithm
import EfexSimMonitoringConfig
373 if flags.Trigger.L1.dogFex:
375 from TrigT1CaloMonitoring.GfexInputMonitorAlgorithm
import GfexInputMonitoringConfig
378 from TrigT1CaloMonitoring.GfexSimMonitorAlgorithm
import GfexSimMonitoringConfig
382 if flags.Trigger.L1.dojFex:
384 from TrigT1CaloMonitoring.JfexInputMonitorAlgorithm
import JfexInputMonitoringConfig
388 from TrigT1CaloMonitoring.JfexSimMonitorAlgorithm
import JfexSimMonitoringConfig
390 result.merge(JfexSimMonitoring)
393 if validation
or (isData
and flags.DQ.Environment
not in (
'tier0Raw',
'AOD')):
397 from TrigT1CaloMonitoring.L1CaloLegacyEDMMonitorAlgorithm
import L1CaloLegacyEDMMonitoringConfig
401 if flags.Trigger.L1.doeFex:
402 from TrigT1CaloMonitoring.EfexMonitorAlgorithm
import EfexMonitoringConfig
404 from TrigT1CaloMonitoring.EfexMonitorAlgorithm
import EfexMonitoringHistConfig
408 if flags.Trigger.L1.dogFex:
409 from TrigT1CaloMonitoring.GfexMonitorAlgorithm
import GfexMonitoringConfig
413 if flags.Trigger.L1.dojFex:
414 from TrigT1CaloMonitoring.JfexMonitorAlgorithm
import JfexMonitoringConfig
418 if flags.Trigger.L1.dojFex
or flags.Trigger.L1.dogFex:
419 from TrigT1CaloMonitoring.JetEfficiencyMonitorAlgorithm
import JetEfficiencyMonitoringConfig
422 result.printConfig( withDetails=
True )