383 '''Function to call l1calo DQ monitoring algorithms'''
384 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
385 from AthenaConfiguration.Enums
import Format
389 local_logger = logging.getLogger(
'AthenaMonitoringCfg')
390 info = local_logger.info
391 info(
'In LVL1CaloMonitoringConfig')
396 if not flags.Trigger.Online.isPartition:
397 if not flags.DQ.triggerDataAvailable:
400 isData =
not flags.Input.isMC
403 validation=flags.DQ.Steering.LVL1Calo.doValidation
407 if not validation
and isData
and flags.DQ.Environment
not in (
'tier0Raw',
'AOD'):
409 from TrigT1CaloMonitoring.PprMonitorAlgorithm
import PprMonitoringConfig
410 from TrigT1CaloMonitoring.JepJemMonitorAlgorithm
import JepJemMonitoringConfig
413 from AthenaConfiguration.AutoConfigFlags
import GetFileMD
415 inputContainsRun3FormatConfigMetadata = (
"metadata_items" in md
and any((
'TriggerMenuJson' in key)
for key
in md[
"metadata_items"].
keys()))
418 if flags.Input.Format
is not Format.POOL
or inputContainsRun3FormatConfigMetadata:
424 detMask=eformat.helper.DetectorMask(f
'{md.get("detectorMask",[0x0])[0]:032x}')
425 hasCPM = detMask.is_set(eformat.helper.SubDetector.TDAQ_CALO_CLUSTER_PROC_DAQ)
426 hasJEP = detMask.is_set(eformat.helper.SubDetector.TDAQ_CALO_JET_PROC_DAQ)
429 from TrigT1CaloMonitoring.CpmMonitorAlgorithm
import CpmMonitoringConfig
430 from TrigT1CaloMonitoring.CpmSimMonitorAlgorithm
import CpmSimMonitoringConfig
435 from TrigT1CaloMonitoring.JepCmxMonitorAlgorithm
import JepCmxMonitoringConfig
438 from TrigT1CaloMonitoring.OverviewMonitorAlgorithm
import OverviewMonitoringConfig
439 from TrigT1CaloMonitoring.PPMSimBSMonitorAlgorithm
import PPMSimBSMonitoringConfig
445 OverviewMonAlg = result.getEventAlgo(
"OverviewMonAlg")
446 OverviewMonAlg.CPMErrorLocation =
""
447 OverviewMonAlg.CPMMismatchLocation =
""
449 if flags.Input.TriggerStream ==
"physics_Mistimed":
450 from TrigT1CaloMonitoring.MistimedStreamMonitorAlgorithm
import MistimedStreamMonitorConfig
454 if flags.Input.Format
is Format.BS:
455 from TrigT1CaloByteStream.LVL1CaloRun2ByteStreamConfig
import LVL1CaloRun2ReadBSCfg
459 if flags.Trigger.enableL1CaloPhase1
and flags.Input.Format
is not Format.POOL:
462 from L1CaloFEXSim.L1CaloFEXSimCfg
import L1CaloFEXSimCfg
466 if flags.Trigger.L1.doeFex:
467 from TrigT1CaloMonitoring.EfexInputMonitorAlgorithm
import EfexInputMonitoringConfig
471 from TrigT1CaloMonitoring.EfexSimMonitorAlgorithm
import EfexSimMonitoringConfig
475 if flags.Trigger.L1.dogFex:
477 from TrigT1CaloMonitoring.GfexInputMonitorAlgorithm
import GfexInputMonitoringConfig
480 from TrigT1CaloMonitoring.GfexSimMonitorAlgorithm
import GfexSimMonitoringConfig
484 if flags.Trigger.L1.dojFex:
486 from TrigT1CaloMonitoring.JfexInputMonitorAlgorithm
import JfexInputMonitoringConfig
490 from TrigT1CaloMonitoring.JfexSimMonitorAlgorithm
import JfexSimMonitoringConfig
492 result.merge(JfexSimMonitoring)
495 if validation
or (isData
and flags.DQ.Environment
not in (
'tier0Raw',
'AOD')):
499 from TrigT1CaloMonitoring.L1CaloLegacyEDMMonitorAlgorithm
import L1CaloLegacyEDMMonitoringConfig
503 if flags.Trigger.L1.doeFex:
504 from TrigT1CaloMonitoring.EfexMonitorAlgorithm
import EfexMonitoringConfig
506 from TrigT1CaloMonitoring.EfexMonitorAlgorithm
import EfexMonitoringHistConfig
510 if flags.Trigger.L1.dogFex:
511 from TrigT1CaloMonitoring.GfexMonitorAlgorithm
import GfexMonitoringConfig
515 if flags.Trigger.L1.dojFex:
516 from TrigT1CaloMonitoring.JfexMonitorAlgorithm
import JfexMonitoringConfig
520 if flags.Trigger.L1.dojFex
or flags.Trigger.L1.dogFex:
521 from TrigT1CaloMonitoring.JetEfficiencyMonitorAlgorithm
import JetEfficiencyMonitoringConfig
524 result.printConfig( withDetails=
True )