diff --git a/Event/EventOverlay/EventOverlayJobTransforms/scripts/chain.sh b/Event/EventOverlay/EventOverlayJobTransforms/scripts/chain.sh index 5af342f77e62b1ed952dd47eeb79b88ee07188dd..af73d194b4f9bf9b63f5e43717707b0dff69e39c 100755 --- a/Event/EventOverlay/EventOverlayJobTransforms/scripts/chain.sh +++ b/Event/EventOverlay/EventOverlayJobTransforms/scripts/chain.sh @@ -39,7 +39,7 @@ if [ $doreco == 1 ]; then #rdotrig="--outputRDO_TRIGFile testRTT.RDO_TRIG.pool.root --triggerConfig MCRECO:DBF:TRIGGERDBMC:2046,20,48 " aodout="--outputAODFile testRTT.AOD.pool.root" #trigflag="from TriggerJobOpts.TriggerFlags import TriggerFlags as TF; TF.doLVL1.set_Value_and_Lock(False); TF.doL1Topo.set_Value_and_Lock(False); TF.doLVL2.set_Value_and_Lock(True); TF.doEF.set_Value_and_Lock(True);" -trigflag="from TriggerJobOpts.TriggerFlags import TriggerFlags as TF; TF.readLVL1configFromXML.set_Value_and_Lock(True); TF.configForStartup.set_Value_and_Lock('HLToffline'); TF.configurationSourceList.set_Value_and_Lock('xml');" +trigflag="from TriggerJobOpts.TriggerFlags import TriggerFlags as TF; TF.configForStartup.set_Value_and_Lock('HLToffline');" #dotrig="rec.doTrigger=True;" Reco_tf.py \ diff --git a/Trigger/TrigT1/TrigT1TGC/python/TrigT1TGCConfig.py b/Trigger/TrigT1/TrigT1TGC/python/TrigT1TGCConfig.py index 75cbdd919d91059d12a4ec91b4922938279c2b39..dfa57e3f3c6fe5135cdbf00ae1de162b31288875 100755 --- a/Trigger/TrigT1/TrigT1TGC/python/TrigT1TGCConfig.py +++ b/Trigger/TrigT1/TrigT1TGC/python/TrigT1TGCConfig.py @@ -1,4 +1,4 @@ -# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration +# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration from TrigT1TGC.TrigT1TGCConf import LVL1TGCTrigger__LVL1TGCTrigger from AthenaCommon.AlgSequence import AlgSequence @@ -22,27 +22,6 @@ job = AlgSequence() TrigT1TGC = TrigT1TGCConfig() job += TrigT1TGC - -# Configuration of TGC Coincidence Window (default is setK defined in LVL1TGCTrigger constructor) -from TriggerJobOpts.TriggerFlags import TriggerFlags -triggerMenuSetup = TriggerFlags.triggerMenuSetup() -if triggerMenuSetup.startswith('MC_pp_v2'): # setH (the lowest threshold is L1_MU0) is used for MC_pp_v2 menus. - job.LVL1TGCTrigger.VersionCW='setH' - job.LVL1TGCTrigger.MaskFileName12="TrigT1TGCMaskedChannel._12.MC_pp_v2.db" - print ('TrigT1TGCConfig.py: TGC Coincidence Window setH will be used for %s menu.' % triggerMenuSetup) -elif triggerMenuSetup.startswith('MC_pp_v3'): # setI (MU4' is the lowest, for 2011 autumn pp runs/MC_pp_v3 menus) - job.LVL1TGCTrigger.VersionCW='setI' - print ('TrigT1TGCConfig.py: TGC Coincidence Window setI will be used for %s menu.' % triggerMenuSetup) -elif triggerMenuSetup.startswith('MC_HI_v1'): # setJ (for 2011 Heavy Ion runs) is used for MC_HI_v1 menus. - job.LVL1TGCTrigger.VersionCW='setJ' - print ('TrigT1TGCConfig.py: TGC Coincidence Window setJ will be used for %s menu.' % triggerMenuSetup) -elif triggerMenuSetup.startswith('MC_HI_v2'): # setL (for 2013 Heavy Ion runs) is used for MC_HI_v2 menus. - job.LVL1TGCTrigger.VersionCW='setL' - print ('TrigT1TGCConfig.py: TGC Coincidence Window setL will be used for %s menu.' % triggerMenuSetup) -elif triggerMenuSetup.startswith('Physics_lumi1E34'): # setE (PT=0,6,10,15,20,40) is used for high lumi MC - job.LVL1TGCTrigger.VersionCW='setE' - print ('TrigT1TGCConfig.py: TGC Coincidence Window setE will be used for %s menu.' % triggerMenuSetup) - if globalflags.DataSource() == 'geant4': conddb.addFolder("TGC_OFL","/TGC/TRIGGER/CW_EIFI",className='CondAttrListCollection') diff --git a/Trigger/TrigValidation/TrigP1Test/share/PEBDSTest.py b/Trigger/TrigValidation/TrigP1Test/share/PEBDSTest.py index c36c81540845ab290177c29368b996652b964b86..491ed1322886d0ec53b6621f7c1abc865ff96823 100644 --- a/Trigger/TrigValidation/TrigP1Test/share/PEBDSTest.py +++ b/Trigger/TrigValidation/TrigP1Test/share/PEBDSTest.py @@ -158,7 +158,7 @@ for collectionConfig in TriggerEDMRun3.TriggerHLTListRun3: TriggerEDMRun3.TriggerHLTListRun3 = myTriggerHLTListRun3 # Set menu flag and slice options for runHLT_standalone -ConfigFlags.Trigger.triggerMenuSetup = TriggerFlags.triggerMenuSetup = 'LS2_v1' +ConfigFlags.Trigger.triggerMenuSetup = 'LS2_v1' doEmptyMenu = True doEgammaSlice = True doMuonSlice = True diff --git a/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerConfigGetter.py b/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerConfigGetter.py index 028979f056233c37451a9d7678a7307aa16d8abd..23619669e1450ee226e69135398c6d73123b4c58 100644 --- a/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerConfigGetter.py +++ b/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerConfigGetter.py @@ -240,13 +240,6 @@ class TriggerConfigGetter(Configured): # non-MT (Run-2) Trigger Configuration self.svc = SetupTrigConfigSvc() - if 'xml' in self.ConfigSrcList: - # sets them if plain XML reading is to be used - self.svc.l1XmlFile = TriggerFlags.outputLVL1configFile() # generated in python - # FW, May 2021: setting of HLT XML file removed - if TriggerFlags.readLVL1configFromXML(): - self.svc.l1XmlFile = TriggerFlags.inputLVL1configFile() # given XML - try: self.svc.SetStates( self.ConfigSrcList ) except Exception: diff --git a/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerFlags.py b/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerFlags.py index d46ac7a6eadcd83ac38853064a3df1afc907994b..e6123c73b554ff2eef02b014c695bb1a1ec0eb90 100644 --- a/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerFlags.py +++ b/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerFlags.py @@ -1,7 +1,5 @@ # Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration -import re - from AthenaCommon.Logging import logging log = logging.getLogger( 'TriggerJobOpts.TriggerFlags' ) @@ -69,11 +67,11 @@ _flags.append(doValidationMonitoring) # trigger configuration source list class configurationSourceList(JobProperty): - """ define where to read trigger configuration from. Allowed values: ['xml','aod','ds']""" + """ define where to read trigger configuration from. Allowed values: ['aod','ds']""" statusOn=True allowedType=['list'] StoredValue=[] - allowedValues = AllowedList( ['aod','xml','ds'] ) + allowedValues = AllowedList( ['aod','ds'] ) _flags.append(configurationSourceList) @@ -207,6 +205,11 @@ class triggerConfig(JobProperty): log = logging.getLogger( 'TriggerFlags.triggerConfig' ) log.info("triggerConfig: \""+self.get_Value()+"\"") + + # FW, 09/21: This flag is obsolete but need a bit more cleanup before removing it + # to avoid accidentally breaking job options + log.warning("The use of TriggerFlags.triggerConfig is deprecated") + # We split the string passed to the flag configs = self.get_Value().split(":") @@ -282,15 +285,7 @@ class triggerConfig(JobProperty): log.info("triggerConfig: LVL1 from DB configured with wrong number of keys/arguments" ) else: - ### We read config from XML - tf.readLVL1configFromXML=True - if (configs[1] == 'DEFAULT' or configs[1] == 'default'): - tf.triggerMenuSetup = 'default' - else: - tf.triggerMenuSetup = configs[1] - log.info("triggerConfig: LVL1 menu from xml (%s)", tf.triggerMenuSetup()) - - + log.error("Reading the LVL1 menu from XML is no longer supported") #------ # MCRECO: Reconstruction of MC @@ -327,14 +322,7 @@ class triggerConfig(JobProperty): tf.triggerMenuSetup=getMenuNameFromDB(tf.triggerDbConnection(),tf.triggerDbKeys()[2]) log.info("triggerConfig: Setting tf.triggerMenuSetup to " + tf.triggerMenuSetup()) else: - ### We read the menu from xml - if (configs[-1] == 'DEFAULT' or configs[-1] == 'default'): - tf.triggerMenuSetup = 'default' - else: - tf.triggerMenuSetup = configs[-1] - - tf.readLVL1configFromXML=True - log.info("triggerConfig: MCRECO menu from xml (%s)", tf.triggerMenuSetup()) + log.error("Reading the LVL1 menu from XML is no longer supported") # This part was there in the original (old) csc_reco_trigger.py snippet # Still wanted? @@ -359,36 +347,6 @@ class triggerConfig(JobProperty): _flags.append(triggerConfig) - -class readLVL1configFromXML(JobProperty): - """ If set to True the LVL1 config file is read from earlier generated XML file """ - statusOn=True - allowedType=['bool'] - # note: if you change the following default value, you must also change the default value in class inputLVL1configFile - # StoredValue=False - StoredValue = False - - def _do_action(self): - """ setup some consistency """ - import os - log = logging.getLogger( 'TriggerFlags.readLVL1configFromXML' ) - - import TriggerMenuMT.LVL1MenuConfig.LVL1.Lvl1Flags # noqa: F401 - - if self.get_Value() is False: - TriggerFlags.inputLVL1configFile = TriggerFlags.outputLVL1configFile() - TriggerFlags.Lvl1.items.set_On() - else: - TriggerFlags.inputLVL1configFile = "TriggerMenuMT/LVL1config_"+_getMenuBaseName(TriggerFlags.triggerMenuSetup())+"_" + TriggerFlags.menuVersion() + ".xml" - xmlFile=TriggerFlags.inputLVL1configFile() - from TrigConfigSvc.TrigConfigSvcConfig import findFileInXMLPATH - if xmlFile!='NONE' and not os.path.exists(findFileInXMLPATH(xmlFile)): - log.error("Cannot find LVL1 xml file %s", xmlFile) - - TriggerFlags.Lvl1.items.set_Off() - -_flags.append(readLVL1configFromXML) - class triggerDbKeys(JobProperty): """ define the keys [Configuration, LVL1Prescale, HLTPrescale, L1BunchGroupSet] in that order!""" statusOn=False @@ -413,182 +371,6 @@ class triggerCoolDbConnection(JobProperty): _flags.append(triggerCoolDbConnection) -class outputLVL1configFile(JobProperty): - """ File name for output LVL1 configuration XML file """ - statusOn=True - StoredValue="" - - def __call__(self): - if self.get_Value() == "": - return "LVL1config_"+_getMenuBaseName(TriggerFlags.triggerMenuSetup())+"_" + TriggerFlags.menuVersion() + ".xml" - else: - return self.get_Value() - -_flags.append(outputLVL1configFile) - - -class inputLVL1configFile(JobProperty): - """ File name for input LVL1 configuration XML file """ - statusOn=True -# allowedType=['str'] -# The following default is appropriate when XML cofig is the default -# StoredValue="TriggerMenuXML/LVL1config_default_" + TriggerFlags.menuVersion() + ".xml" -# The following default is appropriate when python config is the default - StoredValue="" -# StoredValue = "TriggerMenuXML/LVL1config_default_" + TriggerFlags.menuVersion() + ".xml" - - def __call__(self): - if self.get_Value() == "": - return "LVL1config_"+_getMenuBaseName(TriggerFlags.triggerMenuSetup())+"_" + TriggerFlags.menuVersion() + ".xml" - else: - return self.get_Value() - -_flags.append(inputLVL1configFile) - -# remove prescale suffixes -def _getMenuBaseName(menuName): - m = re.match(r'(.*v\d(?:_primaries)?).*', menuName) - if m: - menuName = m.groups()[0] - return menuName - - -# ================= -# -# trigger menu flags - menu version, prescale sets -# -# ================= -class menuVersion(JobProperty): - """ Defines the menu version to use, usually the same as the release number. This is part of the XML file name. """ - statusOn=True - allowedType=['str'] - - from AthenaCommon.AppMgr import release_metadata - StoredValue = release_metadata()['release'] # returns '?' if missing - -_flags.append(menuVersion) - - -class triggerMenuSetup(JobProperty): - """ Defines the luminosity dependent setup of trigger lumi01 == 10^33, switches on/off signatures """ - statusOn=True - allowedType=['str'] - allowedValues = [ - 'default', 'cosmic_default', 'InitialBeam_default', - # menus for 10^31 with EMScale L1 calib - 'Physics_lumi1E31_simpleL1Calib','Physics_lumi1E31_simpleL1Calib_no_prescale', - 'MC_lumi1E31_simpleL1Calib','MC_lumi1E31_simpleL1Calib_no_prescale', - 'MC_lumi1E31_simpleL1Calib_physics_prescale', - # menus for 10^32 with EMScale L1 calib - 'Physics_lumi1E32_simpleL1Calib','Physics_lumi1E32_simpleL1Calib_no_prescale', - 'MC_lumi1E32_simpleL1Calib','MC_lumi1E32_simpleL1Calib_no_prescale', - 'MC_lumi1E32_simpleL1Calib_physics_prescale', - # menus for 10^33 - 'Physics_lumi1E33','Physics_lumi1E33_no_prescale', - 'MC_lumi1E33','MC_lumi1E33_no_prescale', - 'Physics_lumi1E34','Physics_lumi1E34_no_prescale', - 'MC_lumi1E34','MC_lumi1E34_no_prescale', - # - 'Cosmics','Cosmic_v1', 'Cosmic2009_v1', 'Cosmic2009_v2', - 'InitialBeam_v1', 'MC_InitialBeam_v1', 'MC_InitialBeam_v1_no_prescale', - 'Cosmic2009_simpleL1Calib', 'Cosmic2009_inclMuons', - 'enhBias', - # for 2010 running - 'Cosmic_v2','Cosmic_v3', - 'InitialBeam_v2', 'MC_InitialBeam_v2', 'MC_InitialBeam_v2_no_prescale', - 'InitialBeam_v3', 'MC_InitialBeam_v3', 'MC_InitialBeam_v3_no_prescale', - #for 2010-2011 running - 'Physics_pp_v1', 'Physics_pp_v1_no_prescale', 'Physics_pp_v1_cosmics_prescale', - 'MC_pp_v1', 'MC_pp_v1_no_prescale', - 'MC_pp_v1_tight_mc_prescale', 'MC_pp_v1_loose_mc_prescale', - #v2 - 'Physics_pp_v2', 'Physics_pp_v2_no_prescale', 'Physics_pp_v2_cosmics_prescale', - 'MC_pp_v2', 'MC_pp_v2_primary', 'MC_pp_v2_no_prescale', - 'MC_pp_v2_tight_mc_prescale', 'MC_pp_v2_loose_mc_prescale', - #v3 - 'Physics_pp_v3', 'Physics_pp_v3_no_prescale', 'Physics_pp_v3_cosmics_prescale', - 'MC_pp_v3', 'MC_pp_v3_primary', 'MC_pp_v3_no_prescale', - 'MC_pp_v3_tight_mc_prescale', 'MC_pp_v3_loose_mc_prescale', - #v4 - 'Physics_pp_v4', 'Physics_pp_v4_no_prescale', 'Physics_pp_v4_cosmics_prescale', - 'MC_pp_v4', 'MC_pp_v4_primary', 'MC_pp_v4_no_prescale', - 'MC_pp_v4_upgrade_mc_prescale','MC_pp_v4_tight_mc_prescale', 'MC_pp_v4_loose_mc_prescale', - # L1 v2 for testing - 'L1_pp_v2', - 'L1_pp_v3', - 'L1_pp_v4', - 'L1_pp_test', - 'L1_alfa_v1', - 'L1_alfa_v2', - # for HeavyIon - 'InitialBeam_HI_v1', 'InitialBeam_HI_v1_no_prescale', - 'MC_InitialBeam_HI_v1', 'MC_InitialBeam_HI_v1_no_prescale', - 'Physics_HI_v1', 'Physics_HI_v1_no_prescale', - 'MC_HI_v1', 'MC_HI_v1_no_prescale', 'MC_HI_v1_pPb_mc_prescale', - # - 'Physics_HI_v2', 'Physics_HI_v2_no_prescale', - 'MC_HI_v2', 'MC_HI_v2_no_prescale', 'MC_HI_v2_pPb_mc_prescale', - # - 'Physics_default', 'MC_loose_default', 'MC_tight_default', 'default_loose', 'default_tight', - # ----------------------------------------------------------------- - # Run 2 - 'MC_pp_v5', 'MC_pp_v5_no_prescale', 'MC_pp_v5_tight_mc_prescale', 'MC_pp_v5_loose_mc_prescale','MC_pp_v5_special_mc_prescale', # for development and simulation - 'Physics_pp_v5', # for testing algorithms and software quality during LS1, later for data taking - 'Physics_pp_v5_cosmics_prescale', - 'Physics_pp_v5_tight_physics_prescale', - 'LS1_v1', # for P1 detector commissioning (cosmics, streamers) - 'DC14', 'DC14_no_prescale', 'DC14_tight_mc_prescale', 'DC14_loose_mc_prescale', # for DC14 - 'Physics_HI_v3', 'Physics_HI_v3_no_prescale', # for 2015 lead-lead menu - 'MC_HI_v3', 'MC_HI_v3_tight_mc_prescale', - 'Physics_HI_v4', 'Physics_HI_v4_no_prescale', # for 2016 proton-lead menu - 'MC_HI_v4', 'MC_HI_v4_tight_mc_prescale', - - 'MC_pp_v6','Physics_pp_v6','MC_pp_v6_no_prescale', 'MC_pp_v6_tight_mc_prescale', 'MC_pp_v6_tightperf_mc_prescale', 'MC_pp_v6_loose_mc_prescale','Physics_pp_v6_tight_physics_prescale', - 'MC_pp_v7','Physics_pp_v7','Physics_pp_v7_primaries','MC_pp_v7_no_prescale', 'MC_pp_v7_tight_mc_prescale', 'MC_pp_v7_tightperf_mc_prescale', 'MC_pp_v7_loose_mc_prescale','Physics_pp_v7_tight_physics_prescale', - # ----------------------------------------------------------------- - # Run 3 (and preparation for Run-3) - 'LS2_v1', # for development of AthenaMT - 'LS2_emu_v1', # emulation test menu for AthenaMT - 'MC_pp_run3_v1', # MC_pp_run3 for AthenaMT - 'PhysicsP1_pp_run3_v1', # PhysicsP1_pp_run3 for AthenaMT - 'Physics_pp_run3_v1', # Physics_pp_run3 for AthenaMT - 'PhysicsP1_HI_run3_v1', # PhysicsP1_HI_run3 for AthenaMT - 'Dev_HI_run3_v1', # Dev_HI_run3 for AthenaMT - 'MC_pp_v7_TriggerValidation_mc_prescale', # MC trigger simulated in 21.0 but reconstructed in 22.0 - 'MC_pp_v8', 'Physics_pp_v8', 'MC_pp_v8_no_prescale', 'MC_pp_v8_tight_mc_prescale', 'MC_pp_v8_tightperf_mc_prescale', 'MC_pp_v8_loose_mc_prescale','Physics_pp_v8_tight_physics_prescale', - 'Cosmic_run3_v1', - 'LS2_v1_Primary_prescale', - 'LS2_v1_TriggerValidation_prescale', - 'LS2_v1_BulkMCProd_prescale', - 'LS2_v1_CPSampleProd_prescale' - ] - - _default_menu='Physics_pp_v7_primaries' - _default_cosmic_menu='Physics_pp_v5_cosmics_prescale' - _default_InitialBeam_menu='MC_InitialBeam_v3_no_prescale' - - StoredValue = _default_menu - - def _do_action(self): - """ setup some consistency """ - - # meaning full default menu - if self.get_Value() == 'default': - self.set_Value(self._default_menu) - self._log.info("%s - trigger menu 'default' changed to '%s'", self.__class__.__name__, self.get_Value()) - elif self.get_Value() == 'cosmic_default': - self.set_Value(self._default_cosmic_menu) - self._log.info("%s - trigger menu 'cosmic_default' changed to '%s'", self.__class__.__name__, self.get_Value()) - elif self.get_Value() == 'InitialBeam_default': - self.set_Value(self._default_InitialBeam_menu) - self._log.info("%s - trigger menu 'InitialBeam_default' changed to '%s'", self.__class__.__name__, self.get_Value()) - - # filenames for LVL1 and HLT - if TriggerFlags.readLVL1configFromXML() is True: - TriggerFlags.inputLVL1configFile = "LVL1config_"+_getMenuBaseName(TriggerFlags.triggerMenuSetup())+"_" + TriggerFlags.menuVersion() + ".xml" - -_flags.append(triggerMenuSetup) - # the container of all trigger flags diff --git a/Trigger/TriggerCommon/TriggerJobOpts/share/BStoESD_Tier0_HLTConfig_jobOptions.py b/Trigger/TriggerCommon/TriggerJobOpts/share/BStoESD_Tier0_HLTConfig_jobOptions.py index 8720eae9897d5b4356de200a7422906cd7d9bd01..8f69a71606ef5368b41ee37ee2387dea7a41973f 100644 --- a/Trigger/TriggerCommon/TriggerJobOpts/share/BStoESD_Tier0_HLTConfig_jobOptions.py +++ b/Trigger/TriggerCommon/TriggerJobOpts/share/BStoESD_Tier0_HLTConfig_jobOptions.py @@ -62,23 +62,8 @@ if rec.doTrigger(): from AthenaCommon.Resilience import treatException treatException("Could not run TriggerConfigGetter()") - #--------------------------------------------------------------------------- - if tf.configForStartup()=="HLToffline": # HLT is ran offline so cannot read from COOL. - if ConfigFlags.Trigger.EDMVersion == 1 or ConfigFlags.Trigger.EDMVersion == 2: # Run 1+2 setup, not needed for Run 3 reco - tf.readLVL1configFromXML = True # has to use the .xml file used for reco - # You have to set the 2 following files to the .xml files you want. - # Here are the default files for reprocessing special case with trigger - # FW, May 2021: Setting of HLT XML file removed - tf.inputLVL1configFile = "LVL1Menu.xml" # Has to be set correctly - tf.inputLVL1configFile.lock() # this is needed to not be overwritten by TrigT1CTMonitoring - - #--------------------------------------------------------------------------- - elif tf.configForStartup()=="HLTonline": # need to talk to clients using LVL1ConfigSvc and add new folders into - #Just to be sure we use no LVL1 xml file and do not forget any clients - tf.inputLVL1configFile = "LVL1configDUMMY.xml" - tf.inputLVL1configFile.lock() - tf.readLVL1configFromXML=False - tf.readLVL1configFromXML.lock() + #--------------------------------------------------------------------------- + if tf.configForStartup()=="HLTonline": # need to talk to clients using LVL1ConfigSvc and add new folders into # do not need thresholds but are using LVL1ConfigSvc if not hasattr(ToolSvc,'RecMuCTPIByteStreamTool'): diff --git a/Trigger/TriggerCommon/TriggerJobOpts/share/runHLT_standalone.py b/Trigger/TriggerCommon/TriggerJobOpts/share/runHLT_standalone.py index 3454150cd604a00cf2cd21c625026976beb870a8..c7971f5c7f00c2eb8eced1cd175f29256f14b5a8 100644 --- a/Trigger/TriggerCommon/TriggerJobOpts/share/runHLT_standalone.py +++ b/Trigger/TriggerCommon/TriggerJobOpts/share/runHLT_standalone.py @@ -441,9 +441,6 @@ elif ConfigFlags.Input.Format == 'BS' and not ConfigFlags.Trigger.Online.isParti # --------------------------------------------------------------- if opt.setMenu: ConfigFlags.Trigger.triggerMenuSetup = opt.setMenu -TriggerFlags.triggerMenuSetup = ConfigFlags.Trigger.triggerMenuSetup -TriggerFlags.readLVL1configFromXML = False -TriggerFlags.outputLVL1configFile = None from TrigConfigSvc.TrigConfigSvcCfg import generateL1Menu, createL1PrescalesFileFromMenu generateL1Menu(ConfigFlags) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/CMakeLists.txt b/Trigger/TriggerCommon/TriggerMenuMT/CMakeLists.txt index f330b284c2724a965522221726798487e2e6c640..a3617d54829700cd47e72ee36d73045542bc6791 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/CMakeLists.txt +++ b/Trigger/TriggerCommon/TriggerMenuMT/CMakeLists.txt @@ -5,7 +5,6 @@ atlas_subdir( TriggerMenuMT ) # Install files from the package: atlas_install_python_modules( python/*.py - python/LVL1MenuConfig python/L1 python/HLTMenuConfig python/TriggerAPI diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/DictFromChainName.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/DictFromChainName.py index 3b5dfdd8ba1b1163aad09748fe504ac7a62fb032..d384fb408bbc96bd9e00666afd5ce13bcc2fa12f 100755 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/DictFromChainName.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/DictFromChainName.py @@ -43,7 +43,7 @@ def getOverallL1item(chainName): lvl1name = getL1MenuFileName(ConfigFlags) lvl1access = L1MenuAccess(lvl1name) itemsDict = lvl1access.items(includeKeys = ['name','ctpid','triggerType']) - l1seedlist = getSpecificL1Seeds(l1seed, itemsDict) + l1seedlist = getSpecificL1Seeds(l1seed, itemsDict, ConfigFlags.Trigger.triggerMenuSetup) return l1seedlist return l1seed diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/L1Seeds.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/L1Seeds.py index d277fa446b8fe056aabf088987d73fb20bce9847..5da1309a6161eeb98f8c66850a81f7777296b61a 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/L1Seeds.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/L1Seeds.py @@ -3,26 +3,14 @@ from AthenaCommon.Logging import logging log = logging.getLogger(__name__) -from TriggerJobOpts.TriggerFlags import TriggerFlags - ####################################### # trigger type definitions ###################################### -from TriggerMenuMT.LVL1MenuConfig.LVL1.Lvl1Flags import Lvl1Flags -run1 = Lvl1Flags.CTPVersion()<=3 - -if run1: - from TriggerMenuMT.LVL1MenuConfig.LVL1.TriggerTypeDefRun1 import TT - rpcout_type = TT.rpcout | TT.phys - rpcin_type = TT.rpcin | TT.phys -else: - from TriggerMenuMT.LVL1MenuConfig.LVL1.TriggerTypeDef import TT - rpcout_type = TT.muon | TT.phys - rpcin_type = TT.muon | TT.phys - - -cl_type = TT.calo | TT.phys -mb_type = TT.minb | TT.phys +from TriggerMenuMT.L1.Config.TriggerTypeDef import TT +rpcout_type = TT.muon | TT.phys +rpcin_type = TT.muon | TT.phys +cl_type = TT.calo | TT.phys +mb_type = TT.minb | TT.phys calo_exceptions = set([]) @@ -52,7 +40,7 @@ def Lvl1ItemByTriggerType(l1object, triggertype_pattern, triggertype_bitmask): ############################## # define the various seeds ############################## -def getL1BackgroundSeed(menul1items): +def getL1BackgroundSeed(menul1items, menu_name): l1bgditems = [ 'L1_BCM_AC_CA_BGRP0', 'L1_BCM_Wide_EMPTY', 'L1_BCM_Wide_UNPAIRED_ISO', 'L1_BCM_Wide_UNPAIRED_NONISO', @@ -69,7 +57,7 @@ def getL1BackgroundSeed(menul1items): 'L1_J12_EMPTY', 'L1_J12_BGRP12', ] - if TriggerFlags.triggerMenuSetup() == 'LS1_v1': + if menu_name == 'LS1_v1': l1bgditems = [ 'L1_BCM_AC_CA_BGRP0','L1_BCM_AC_CA_UNPAIRED_ISO', 'L1_BCM_Wide_EMPTY','L1_BCM_Wide_UNPAIRED_ISO','L1_BCM_Wide_UNPAIRED_NONISO', @@ -388,13 +376,13 @@ def getL1LowLumi(l1seed): ##################################### # assigned the seeds to the L1 names ##################################### -def getSpecificL1Seeds(l1seedname, l1itemobject): +def getSpecificL1Seeds(l1seedname, l1itemobject, menu_name): l1items = l1itemobject.keys() L1Seed = '' if l1seedname == 'L1_J': L1Seed = getL1JetBS() if (l1seedname == 'L1_Bkg'): - L1Seed = getL1BackgroundSeed(l1items) + L1Seed = getL1BackgroundSeed(l1items, menu_name) # elif (l1seedname == 'L1_ALFA_Diff_Phys' ): # L1Seed = getL1_ALFA_Diff_Phys_Seeds(l1items) # elif (l1seedname == 'L1_ALFA_CDiff_Phys' ): @@ -485,7 +473,7 @@ def getSpecificL1Seeds(l1seedname, l1itemobject): ##################################### # map from l1item name to inputTE ##################################### -def getInputTEfromL1Item(l1item): +def getInputTEfromL1Item(l1item, menu_name): L1Map = { 'L1_TAU8_EMPTY' : ['HA8'], @@ -504,7 +492,7 @@ def getInputTEfromL1Item(l1item): 'L1_TAU100' : ['HA100'], } - if TriggerFlags.triggerMenuSetup() == 'LS1_v1': + if menu_name == 'LS1_v1': L1Map['L1_CALREQ2']=['NIM30'] else: L1Map['L1_CALREQ2']=['CAL2'] diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/MenuPrescaleConfig.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/MenuPrescaleConfig.py index d7974ee168fd0380f5f54440ff1d9420fc0330b2..f22afde43ccc39415e400d24fd8c5e7afd3448d6 100755 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/MenuPrescaleConfig.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/MenuPrescaleConfig.py @@ -1,4 +1,4 @@ -# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration +# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration from TriggerJobOpts.TriggerFlags import TriggerFlags @@ -12,7 +12,9 @@ def MenuPrescaleConfig(triggerConfigHLT): HLTPrescales = {} Prescales = PrescaleClass() - menu_name = TriggerFlags.triggerMenuSetup() + from AthenaConfiguration.AllConfigFlags import ConfigFlags + menu_name = ConfigFlags.Trigger.triggerMenuSetup + ## Do some aliasing here if menu_name == 'Physics_default': menu_name = 'LS2_v1' diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/MenuUtil.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/MenuUtil.py deleted file mode 100755 index cc7a4f23d06891a72352b97568bd9add35986184..0000000000000000000000000000000000000000 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/MenuUtil.py +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration - -from TriggerJobOpts.TriggerFlags import TriggerFlags -from AthenaCommon.Logging import logging -log = logging.getLogger(__name__) - -def checkGroups(triggerPythonConfig): - """ Make sure the groups used in Physics and MC menu exists - """ - menu_name = TriggerFlags.triggerMenuSetup() - log.info("Menu: %s", menu_name) - - from TriggerMenuMT.HLTMenuConfig.Menu.GroupInfo import getAllAllowedGroups - allgroup=getAllAllowedGroups(menu_name) - - for chain in triggerPythonConfig.theHLTChains: - if len(chain.groups) == 0: - log.error( "group undefined for chain: %s", chain.chain_name ) - for i in chain.groups: - if 'BW' in i: - if i.split('BW:')[1] not in allgroup: - log.error( "BW Group %d for chain %s not allowed.", i, chain.chain_name) - - - -def checkTriggerGroupAssignment(triggerPythonConfig): - """ Checks menu consistency - - Checks trigger-groups assignment in Physics_ and MC_ menus. - Excludes those chains which either have no group assigned or have a wrong group attached in Physics_ - which allows only primary, supporting and calibration triggers. - """ - menu_name = TriggerFlags.triggerMenuSetup() - log.info("Menu: %s", menu_name) - GroupItems = [] - CheckGroups=False - - if menu_name.startswith('Physics_lumi'): - CheckGroups=True - GroupItems = ['Primary', 'Supporting', 'Calibration', 'Monitoring'] - elif menu_name.startswith('MC_lumi'): - CheckGroups=True - GroupItems = ['Primary', 'Supporting', 'Calibration', 'Monitoring', 'Backup', 'Commissioning', 'Test'] - - for chain in triggerPythonConfig.theL2HLTChains + triggerPythonConfig.theEFHLTChains: - if len(chain.groups) == 0: - log.error( "IN CHAIN: GROUP undefined for chain: %s", chain.chain_name ) - else: - GroupAssigned=False - - for group in GroupItems: - if group in chain.groups: - GroupAssigned=True - if GroupAssigned is False and CheckGroups is True: - log.warning( "IN CHAIN: GROUP (primary, supporting, ... etc) undefined for chain: %s", chain.chain_name ) - -#def checkStreamConsistency(triggerPythonConfig,streamConfig): -def checkStreamConsistency(triggerPythonConfig): - """ Checks streamer consistency - Checks that all chains are assigned to existing streams - """ - menu_name = TriggerFlags.triggerMenuSetup() - log.info("Menu: %s", menu_name) - - from TriggerMenuMT.HLTMenuConfig.Menu.StreamInfo import getAllStreams - - allStreams = getAllStreams() - - ##Check that all the streams associated to the chains exists - ##Chech that there is no duplication of ROB_ID for the ds streams used in a specific menu - already_used_robs={} - for chain in triggerPythonConfig.theHLTChains: - if len(chain.stream_tag) == 0: - log.error( "IN CHAIN: STREAMTAG undefined for chain: %s", chain.chain_name ) - else: - for stream in chain.stream_tag: - if stream[0] not in allStreams: - log.error('Chain: %s has the wrong streamer %s', chain.chain_name, stream[0]) - else: - ##check data scouting streaming name - if "DataScouting" in stream[0]: - rob_id= stream[0].split("_")[1] - if rob_id in already_used_robs and stream[0] is not already_used_robs[rob_id]: - log.error("Duplicated ROB in stream %s (ROB number %s already used in stream %s)", - stream[0], stream[0].split("_")[1], - already_used_robs[stream[0].split("_")[1]]) - already_used_robs[rob_id]=stream[0] - else: - already_used_robs[rob_id]=stream[0] - - - ##Chech that there is no duplication of ROB_ID for the ds streams defined in the all TM - already_used_robs={} - for stream in allStreams: - if "DataScouting" in stream: - rob_id= stream.split("_")[1] - if rob_id in already_used_robs: - log.error("Duplicated ROB in stream %s (ROB number %s already used in stream %s)", - stream, rob_id, already_used_robs[rob_id]) - already_used_robs[rob_id]=stream - else: - already_used_robs[rob_id]=stream - - -def allSignatures(): - sigs = [] - slices = ( - TriggerFlags.MuonSlice, - TriggerFlags.JetSlice, - TriggerFlags.METSlice, - TriggerFlags.TauSlice, - TriggerFlags.EgammaSlice, - TriggerFlags.MinBiasSlice, - TriggerFlags.CombinedSlice, - ) - for a in slices: - if a.signatures.statusOn: - sigs += a.signatures() - return sigs - - -def findL1TT(chain, triggerPythonConfig): - l2_chain = chain - if chain.level == 'EF': - l2_chain_name = chain.lower_chain_name - l2_chain = triggerPythonConfig.getHLTChain(l2_chain_name) - if l2_chain is None: - return -2 - l1_item_name = l2_chain.lower_chain_name - l1_item = triggerPythonConfig.getLvl1Item(l1_item_name) - if l1_item is None: - return -1 - return l1_item.trigger_type - diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/L1Menu.py b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/L1Menu.py index 8b1809ef7a4e9a44a47cfaf9779cfad94f53f7ac..8092e21114079add11569fc75fe4559e0c6ef8bb 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/L1Menu.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/L1Menu.py @@ -8,6 +8,7 @@ from .Boards import MenuBoardsCollection from .Connectors import MenuConnectorsCollection from .MenuUtils import get_smk_psk_Name from .Limits import Limits +from .L1MenuFlags import L1MenuFlags from collections import OrderedDict as odict from AthenaCommon.Logging import logging @@ -46,8 +47,7 @@ class L1Menu(object): @staticmethod def partitioning(): - from Lvl1Flags import Lvl1Flags - first = Lvl1Flags.MenuPartitioning() + first = L1MenuFlags.MenuPartitioning() last = first[1:] + [ Limits.MaxTrigItems ] partitioning = dict( zip([1,2,3],zip(first,last)) ) return partitioning diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/LVL1MenuConfig/LVL1/Limits.py b/Trigger/TriggerCommon/TriggerMenuMT/python/LVL1MenuConfig/LVL1/Limits.py deleted file mode 100644 index f376c5096647980ba18327902348cf2998a96001..0000000000000000000000000000000000000000 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/LVL1MenuConfig/LVL1/Limits.py +++ /dev/null @@ -1,81 +0,0 @@ -# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration - -""" -This temporarily holds CTP sizes -""" - -from AthenaCommon.Logging import logging -log = logging.getLogger(__name__) - -class Access(type): - """Metaclass to implement __getattr__ for class variables""" - def __getattr__(cls, key): - if cls.ctpDataFormat is None: - raise RuntimeError("CTP version has not been set, you need to call Limits.setLimits(ctpversion) before you can use the limits") - - if hasattr(cls.ctpDataFormat, key): - return getattr( cls.ctpDataFormat, key) - elif hasattr(cls.l1common, key): - return getattr( cls.l1common, key) - else: - raise AttributeError("Neither class 'CTPdataformat' nor class 'L1Common' have an attribute '%s'" % key) - - def __str__(cls): - if cls.ctpDataFormat is None: - return "None" - - s = "CTP DataFormat version %i\n" % cls.CTPVersion - varnames = ['MaxTrigItems', 'NumBunchgroups', 'NumRndmTriggers'] - for varname in varnames: - s += " %s = %r\n" % (varname, getattr( cls.ctpDataFormat, varname)) - s += "L1Common version %i\n" % cls.L1CommonVersion - varnames = ['MUON_bitnum','EM_bitnum', 'TAU_bitnum', 'JET_bitnum', 'JE_bitnum', 'JB_bitnum', 'JF_bitnum', 'TE_bitnum', 'XE_bitnum', 'XS_bitnum', - 'MBTS_bitnum', 'MBTSSI_bitnum', 'NIM_bitnum', 'ZDC_bitnum', 'TRT_bitnum', 'BCM_bitnum', 'BCMCMB_bitnum', 'LUCID_bitnum', 'CALREQ_bitnum', - 'MUON_cable', 'EM_cable', 'TAU_cable', 'JET_cable', 'JE_cable', 'JB_cable', 'JF_cable', 'TE_cable', 'XE_cable', 'XS_cable', 'MBTS_cable', - 'MBTSSI_cable', 'NIM_cable', 'ZDC_cable', 'TRT_cable', 'BCM_cable', 'BCMCMB_cable', 'LUCID_cable', 'CALREQ_cable'] - for varname in varnames: - s += " %s = %r\n" % (varname, getattr( cls.l1common, varname)) - return s - - - -class Limits(object, metaclass=Access): - - CTPVersion = None - L1CommonVersion = None - - ctpDataFormat = None - l1common = None - - @staticmethod - def getCTPdataformat(version): - module = __import__('CTPfragment.CTPdataformat_v%i' % version, globals(), locals(), ['CTPdataformat_v%i' % version], 0) - return getattr(module, "CTPdataformat_v%i" % version) - - @staticmethod - def getL1Common(version): - module = __import__('L1Common.L1Common_v%i' % version, globals(), locals(), ['L1Common_v%i' % version], 0) - return getattr(module, "L1Common_v%i" % version) - - @staticmethod - def setLimits(CTPVersion, verbose = False): - Limits.CTPVersion = CTPVersion - Limits.L1CommonVersion = 0 if CTPVersion <= 3 else 1 - #print "Setting limits for CTP version %i and L1Common Version %i" % (Limits.CTPVersion, Limits.L1CommonVersion) - Limits.ctpDataFormat = Limits.getCTPdataformat( Limits.CTPVersion ) - Limits.l1common = Limits.getL1Common( Limits.L1CommonVersion ) - if verbose: - log.debug(Limits) - - - - -class CaloLimits(object): - # Maximum values for calo thresholds to disable that threshold - ClusterOff = 255 - IsolationOff = 63 - JetOff = 1023 - EtSumOff = 32767 - EtMissOff = 32767 - JetEtOff = 13286 - diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/LVL1MenuConfig/LVL1/Lvl1Flags.py b/Trigger/TriggerCommon/TriggerMenuMT/python/LVL1MenuConfig/LVL1/Lvl1Flags.py deleted file mode 100644 index b2fcfb01748768a06138d7e2b2be22fa95e9fa03..0000000000000000000000000000000000000000 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/LVL1MenuConfig/LVL1/Lvl1Flags.py +++ /dev/null @@ -1,145 +0,0 @@ -# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration - -""" -Lvl1 specific flags -""" - -from AthenaCommon.JobProperties import JobProperty, JobPropertyContainer -from AthenaCommon.Logging import logging -from .Limits import Limits - -__author__ = 'J.Stelzer' -__doc__="Level 1 specific flags for Run 2" - -log = logging.getLogger(__name__) - -_flags = [] -class CTPVersion(JobProperty): - """Version of the CTP configuration""" - - statusOn = True - allowedTypes = [int] - allowedValues = [0,1,2,3,4,5] - StoredValue = 4 - - Limits.setLimits(3) - - def _do_action(self): - """Load the limits""" - from .Limits import Limits - Limits.setLimits(self.get_Value()) - - -_flags.append(CTPVersion) - -class items(JobProperty): - """Names of items enabled in the selected L1 menu""" - statusOn=True - allowedTypes=['list'] - StoredValue=[] - -_flags.append(items) - -class thresholds(JobProperty): - """Names of thresholds enabled in selected L1 menu """ - statusOn=True - allowedTypes=['list'] - StoredValue = [] - -_flags.append(thresholds) - -class prescales(JobProperty): - """Maps prescales to items that are different from 1""" - statusOn=True - allowedTypes=['dict'] - StoredValue = {} - -_flags.append(prescales) - -class RemapThresholdsAsListed(JobProperty): - statusOn = True - allowedTypes = ['bool'] - StoredValue = False - -_flags.append(RemapThresholdsAsListed) - -class CtpIdMap(JobProperty): - statusOn = True - allowedTypes = ['dict'] - StoredValue = {} - -_flags.append(CtpIdMap) - -class BunchGroupPartitioning(JobProperty): - statusOn = True - allowedTypes = ['list'] - StoredValue = [] - -_flags.append(BunchGroupPartitioning) - -class BunchGroupNames(JobProperty): - statusOn = True - allowedTypes = ['list'] - StoredValue = [] - -_flags.append(BunchGroupNames) - -class MenuPartitioning(JobProperty): - statusOn = True - allowedTypes = ['list'] - StoredValue = [] - -_flags.append(MenuPartitioning) - -class OldStylePrescales(JobProperty): - statusOn = True - allowedTypes = ['bool'] - StoredValue = False - -class ThresholdMap(JobProperty): - statusOn = True - allowedTypes = ['dict'] - StoredValue = {} - -_flags.append(ThresholdMap) - - -class ItemMap(JobProperty): - statusOn = True - allowedTypes = ['dict'] - StoredValue = {} - -_flags.append(ItemMap) - - - -_flags.append(OldStylePrescales) - - - -class Lvl1(JobPropertyContainer): - """ Lvl1 flags used in menu generation """ - - - - -# execute - -from TriggerJobOpts.TriggerFlags import TriggerFlags -TriggerFlags.add_Container(Lvl1) - -for flag in _flags: - TriggerFlags.Lvl1.add_JobProperty(flag) -del _flags - - - -# make an alias -Lvl1Flags = TriggerFlags.Lvl1 - - - -# LocalWords: AllowedList - - - diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/LVL1MenuConfig/LVL1/TriggerTypeDef.py b/Trigger/TriggerCommon/TriggerMenuMT/python/LVL1MenuConfig/LVL1/TriggerTypeDef.py deleted file mode 100644 index 5262d14f27746040d25d6a104143574d4370ee5d..0000000000000000000000000000000000000000 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/LVL1MenuConfig/LVL1/TriggerTypeDef.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration - -class TT(object): - """ - Trigger type logic - should also match StreamingDef.py definitions - """ - rand = 1 << 0 - zerobs = 1 << 1 # trigger type for zero bias triggers - calo = 1 << 2 - muon = 1 << 3 - lardemo = 1 << 4 - ftk = minb = 1 << 5 # min-bias TT is needed for TM internal use (L1Seeds.py) - nim = alfa = 1 << 6 - phys = 1 << 7 - - # Calibration requests - # From David B - for calibration events TriggerType - # will be reset by CTP - values below are placeholders - calreq0 = 0x30 - calreq1 = 0x32 - calreq2 = 0x34 diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/LVL1MenuConfig/LVL1/TriggerTypeDefRun1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/LVL1MenuConfig/LVL1/TriggerTypeDefRun1.py deleted file mode 100644 index ef07604c0ab2e19a3d669b4306db6e355cb85360..0000000000000000000000000000000000000000 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/LVL1MenuConfig/LVL1/TriggerTypeDefRun1.py +++ /dev/null @@ -1,41 +0,0 @@ -# Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration - - -from TriggerJobOpts.TriggerFlags import TriggerFlags as TF - -class TT: - """ - Trigger type logic - should also match StreamingDef.py definitions - """ - rand = 1 << 0 - zerobs = 1 << 1 # trigger type for zero bias triggers - calo = 1 << 2 - rpcin = tgc = 1 << 3 # Assign TGC to RPCIN to free one bit for new and CALOEM trigger type - caloem = 1 << 4 # to stream separately - minb = 1 << 5 - rpcout = 1 << 6 - phys = 1 << 7 - - # Calibration requests - # From David B - for calibration events TriggerType - # will be reset by CTP - values below are placeholders - calreq0 = 0x30 - calreq1 = 0x32 - calreq2 = 0x34 - - if any([ x in TF.triggerMenuSetup() for x in - [ 'InitialBeam_HI', - 'Cosmic_v3', - 'L1_pp', - 'L1_alfa', - 'MC_pp', - 'MC_HI', - 'MC_loose', - 'MC_tight', - 'Physics_pp', - 'Physics_default', - 'Physics_HI', - ]]): - caloem = 0 - diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/LVL1MenuConfig/LVL1/__init__.py b/Trigger/TriggerCommon/TriggerMenuMT/python/LVL1MenuConfig/LVL1/__init__.py deleted file mode 100644 index d0cb751d0f336e3ac36673d3352ecaed8478e92f..0000000000000000000000000000000000000000 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/LVL1MenuConfig/LVL1/__init__.py +++ /dev/null @@ -1 +0,0 @@ -#Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/LVL1MenuConfig/__init__.py b/Trigger/TriggerCommon/TriggerMenuMT/python/LVL1MenuConfig/__init__.py deleted file mode 100644 index 139597f9cb07c5d48bed18984ec4747f4b4f3438..0000000000000000000000000000000000000000 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/LVL1MenuConfig/__init__.py +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/TriggerAPI/TriggerDataAccess.py b/Trigger/TriggerCommon/TriggerMenuMT/python/TriggerAPI/TriggerDataAccess.py index a38a4baca02e2f556ef95d8383b46b183baa6125..15f12b631bccf7dc5a444179956f3533df222efd 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/TriggerAPI/TriggerDataAccess.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/TriggerAPI/TriggerDataAccess.py @@ -302,11 +302,7 @@ def getHLTmap_fromTM(period, release): menu = "Physics_pp_run3_v1" from AthenaConfiguration.AllConfigFlags import ConfigFlags - from TriggerJobOpts.TriggerFlags import TriggerFlags - TriggerFlags.triggerMenuSetup = menu - TriggerFlags.readLVL1configFromXML = False - TriggerFlags.outputLVL1configFile = None - + mutelog = logging.getLogger(__name__) mutelog.setLevel(logging.WARNING) #avoid spam from Menu.L1.L1MenuConfig