ATLAS Offline Software
L1CaloCondConfig.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2 
3 import sys
4 
5 def L1CaloCondFoldersCfg(flags, Physics, Calib1, Calib2):
6 
7 
8  L1CaloFolders = {}
9 
10  if Physics:
11  L1CaloFolders['PprChanCalibV2Physics'] = '/TRIGGER/L1Calo/V2/Calibration/Physics/PprChanCalib'
12  L1CaloFolders['PprChanCommonV2Physics'] = '/TRIGGER/L1Calo/V2/Calibration/Physics/PprChanCommon'
13  L1CaloFolders['PprChanHighMuV2Physics'] = '/TRIGGER/L1Calo/V2/Calibration/Physics/PprChanHighMu'
14  L1CaloFolders['PprChanLowMuV2Physics'] = '/TRIGGER/L1Calo/V2/Calibration/Physics/PprChanLowMu'
15  if Calib1:
16  L1CaloFolders['PprChanCalibV2Calib1'] = '/TRIGGER/L1Calo/V2/Calibration/Calib1/PprChanCalib'
17  L1CaloFolders['PprChanCommonV2Calib1'] = '/TRIGGER/L1Calo/V2/Calibration/Calib1/PprChanCommon'
18  L1CaloFolders['PprChanHighMuV2Calib1'] = '/TRIGGER/L1Calo/V2/Calibration/Calib1/PprChanHighMu'
19  L1CaloFolders['PprChanLowMuV2Calib1'] = '/TRIGGER/L1Calo/V2/Calibration/Calib1/PprChanLowMu'
20  if Calib2:
21  L1CaloFolders['PprChanCalibV2Calib2'] = '/TRIGGER/L1Calo/V2/Calibration/Calib2/PprChanCalib'
22  L1CaloFolders['PprChanCommonV2Calib2'] = '/TRIGGER/L1Calo/V2/Calibration/Calib2/PprChanCommon'
23  L1CaloFolders['PprChanHighMuV2Calib2'] = '/TRIGGER/L1Calo/V2/Calibration/Calib2/PprChanHighMu'
24  L1CaloFolders['PprChanLowMuV2Calib2'] = '/TRIGGER/L1Calo/V2/Calibration/Calib2/PprChanLowMu'
25 
26  L1CaloFolders['PprChanDefaultsV2'] = '/TRIGGER/L1Calo/V2/Configuration/PprChanDefaults'
27  L1CaloFolders['ReadoutConfig'] = "/TRIGGER/L1Calo/V2/Configuration/ReadoutConfig"
28  L1CaloFolders['ReadoutConfigJSON'] = "/TRIGGER/L1Calo/V2/Configuration/ReadoutConfigJSON"
29  L1CaloFolders['PprChanStrategy'] = "/TRIGGER/L1Calo/V2/Configuration/PprChanStrategy"
30 
31 
32  L1CaloFolders['FineTimeReferences'] = "/TRIGGER/L1Calo/V1/References/FineTimeReferences"
33  L1CaloFolders['RunParameters'] = "/TRIGGER/L1Calo/V1/Conditions/RunParameters"
34  L1CaloFolders['Strategy'] = '/TRIGGER/Receivers/Conditions/Strategy'
35  L1CaloFolders['DisabledTowers'] = '/TRIGGER/L1Calo/V1/Conditions/DisabledTowers'
36  L1CaloFolders['DerivedRunPars'] = '/TRIGGER/L1Calo/V1/Conditions/DerivedRunPars'
37  L1CaloFolders['PpmDeadChannels'] = '/TRIGGER/L1Calo/V1/Calibration/PpmDeadChannels'
38 
39  from IOVDbSvc.IOVDbSvcConfig import addFolders
40  db = 'TRIGGER'
41  return addFolders(flags,list(L1CaloFolders.values()), db, className='CondAttrListCollection')
42 
43 
44 
45 def L1CaloCondAlgCfg(flags, readTest=False, Physics=True, Calib1=True, Calib2=True):
46 
47  from AthenaConfiguration.ComponentFactory import CompFactory
48  result = L1CaloCondFoldersCfg(flags, Physics, Calib1, Calib2)
49  result.addCondAlgo(CompFactory.L1CaloCondAlg(UsePhysicsRegime = Physics,
50  UseCalib1Regime = Calib1,
51  UseCalib2Regime = Calib2))
52 
53  if readTest:
54  # Set True for test L1CaloCondAlg and print condition container parameters
55  L1CaloCondReader = CompFactory.L1CaloCondAlgReader()
56  result.addEventAlgo(L1CaloCondReader, 'AthAlgSeq')
57 
58 
59  return result
60 
61 
62 if __name__=="__main__":
63 
64  from AthenaConfiguration.AllConfigFlags import initConfigFlags
65  from AthenaConfiguration.TestDefaults import defaultTestFiles, defaultGeometryTags
66 
67  flags = initConfigFlags()
68  flags.Input.Files = defaultTestFiles.RAW_RUN2
69  flags.GeoModel.AtlasVersion = defaultGeometryTags.RUN2
70  flags.Exec.MaxEvents = 1
71  flags.IOVDb.GlobalTag = 'CONDBR2-BLKPA-2022-02'
72  flags.Trigger.enableL1CaloLegacy = True
73  flags.fillFromArgs()
74  flags.lock()
75 
76  from AthenaConfiguration.MainServicesConfig import MainServicesCfg
77  from ByteStreamCnvSvc.ByteStreamConfig import ByteStreamReadCfg
78  from TrigT1ResultByteStream.TrigT1ResultByteStreamConfig import L1TriggerByteStreamDecoderCfg
79  from TrigT1CaloByteStream.LVL1CaloRun2ByteStreamConfig import LVL1CaloRun2ReadBSCfg
80 
81 
82  acc = MainServicesCfg(flags)
83  acc.merge( ByteStreamReadCfg(flags) )
84  acc.merge( L1TriggerByteStreamDecoderCfg(flags) )
85  acc.merge( LVL1CaloRun2ReadBSCfg(flags))
86 
87 
92  acc.merge(L1CaloCondAlgCfg(flags, Physics=True, Calib1=False, Calib2=False))
93 
94  #Example ...
95  #acc.merge(L1CaloCondAlgCfg(flags,readTest=True, Physics=True, Calib1=False, Calib2=False))
96  #acc.getCondAlgo('L1CaloCondAlg').OutputLevel = 2
97  #acc.getCondAlgo('L1CaloCondAlg').timingRegime = "Calib2"
98  #acc.getCondAlgo('L1CaloCondAlg').strategy = "LowMu"
99 
100 
101 
102 
103 
104  sys.exit(acc.run().isFailure())
L1CaloCondConfig.L1CaloCondFoldersCfg
def L1CaloCondFoldersCfg(flags, Physics, Calib1, Calib2)
Definition: L1CaloCondConfig.py:5
python.ByteStreamConfig.ByteStreamReadCfg
def ByteStreamReadCfg(flags, type_names=None)
Definition: Event/ByteStreamCnvSvc/python/ByteStreamConfig.py:25
LVL1CaloRun2ByteStreamConfig.LVL1CaloRun2ReadBSCfg
def LVL1CaloRun2ReadBSCfg(flags, forRoIBResultToxAOD=False)
Definition: LVL1CaloRun2ByteStreamConfig.py:121
L1CaloCondConfig.L1CaloCondAlgCfg
def L1CaloCondAlgCfg(flags, readTest=False, Physics=True, Calib1=True, Calib2=True)
Definition: L1CaloCondConfig.py:45
python.MainServicesConfig.MainServicesCfg
def MainServicesCfg(flags, LoopMgr='AthenaEventLoopMgr')
Definition: MainServicesConfig.py:256
histSizes.list
def list(name, path='/')
Definition: histSizes.py:38
python.IOVDbSvcConfig.addFolders
def addFolders(flags, folderStrings, detDb=None, className=None, extensible=False, tag=None, db=None, modifiers='')
Definition: IOVDbSvcConfig.py:72
python.AllConfigFlags.initConfigFlags
def initConfigFlags()
Definition: AllConfigFlags.py:19
TrigT1ResultByteStreamConfig.L1TriggerByteStreamDecoderCfg
def L1TriggerByteStreamDecoderCfg(flags, returnEDM=False)
Definition: TrigT1ResultByteStreamConfig.py:133