10def TileMonitoringCfg(flags):
11 ''' Function to configure Tile Monitoring in the monitoring system for Run III.'''
12
13 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
14 acc = ComponentAccumulator()
15
16 from AthenaCommon.Logging import logging
17 msg = logging.getLogger( 'TileMonitoringCfg' )
18
19 environment = flags.DQ.Environment
20
21 if environment in ('online', 'tier0', 'tier0Raw'):
22 msg.info('Setup Tile Monitoring for RAW data due to environment: %s', environment)
23
24 from TileMonitoring.TileDQFragMonitorAlgorithm import TileDQFragMonitoringConfig
25 acc.merge( TileDQFragMonitoringConfig(flags) )
26
27 from TileMonitoring.TileMBTSMonitorAlgorithm import TileMBTSMonitoringConfig
28 acc.merge( TileMBTSMonitoringConfig(flags) )
29
30 from TileMonitoring.TileDigiNoiseMonitorAlgorithm import TileDigiNoiseMonitoringConfig
31 acc.merge( TileDigiNoiseMonitoringConfig(flags) )
32
33 if environment in ('online', 'tier0', 'tier0ESD'):
34 msg.info('Setup Tile Monitoring for ESD data due to environment: %s', environment)
35
36 from TileMonitoring.TileCellMonitorAlgorithm import TileCellMonitoringConfig
37 acc.merge( TileCellMonitoringConfig(flags) )
38
39 from TileMonitoring.TileTowerMonitorAlgorithm import TileTowerMonitoringConfig
40 acc.merge( TileTowerMonitoringConfig(flags) )
41
42 from TileMonitoring.TileClusterMonitorAlgorithm import TileClusterMonitoringConfig
43 acc.merge( TileClusterMonitoringConfig(flags) )
44
45 from TileMonitoring.TileMuIdMonitorAlgorithm import TileMuIdMonitoringConfig
46 acc.merge( TileMuIdMonitoringConfig(flags) )
47
48 from TileMonitoring.TileJetMonitorAlgorithm import TileJetMonitoringConfig
49 acc.merge( TileJetMonitoringConfig(flags) )
50
51 if flags.IOVDb.DatabaseInstance == 'CONDBR2' and flags.DQ.triggerDataAvailable:
52 from TileMonitoring.TileTMDBRawChannelMonitorAlgorithm import TileTMDBRawChannelMonitoringConfig
53 acc.merge( TileTMDBRawChannelMonitoringConfig(flags, FillRawChannelHistograms = False, FillEfficiencyHistograms = True) )
54
55 from AthenaConfiguration.Enums import BeamType
56 if flags.Beam.Type in [BeamType.Cosmics, BeamType.SingleBeam]:
57 from TileCosmicAlgs.TileMuonFitterConfig import TileMuonFitterCfg
58 acc.merge(TileMuonFitterCfg(flags))
59
60 from TileMonitoring.TileMuonFitMonitorAlgorithm import TileMuonFitMonitoringConfig
61 acc.merge( TileMuonFitMonitoringConfig(flags) )
62
63 return acc
64
65
66