From 2ba1c3ed530788185ae457e203a7bf534bf26f8e Mon Sep 17 00:00:00 2001
From: Frank Winklmeier <fwinkl@cern>
Date: Mon, 30 Nov 2020 15:55:39 +0100
Subject: [PATCH] TriggerFlags: remove doLVL2 and doEF flags

`doLVL2` and `doEF` were used during Run-1 to configure the two-level
HLT. This has not been supported since a long time and was replaced by a
single `doHLT` flag. Adjust relevant python fragments.
---
 .../share/preInclude.SLHC_Rec.py              |  3 +--
 .../python/EFInDetConfig.py                   |  2 +-
 .../share/skeleton.LArNoise_fromraw.py        |  3 +--
 .../LArMonitoring/share/LArReco_fromraw.py    |  3 +--
 .../python/TrigConfMetadata.py                |  7 ++----
 .../FastCaloSimFromTruthWithTrigT1Calo.py     |  3 +--
 .../FastCaloSimFromTruthv13WithTrigT1Calo.py  |  3 +--
 .../FastCaloSimFromTruthv14WithTrigT1Calo.py  |  3 +--
 .../python/TrigT2CaloCommonConfig.py          |  4 ++--
 .../python/TrigConfigSvcConfig.py             |  4 ++--
 .../python/TrigCostMonitorConfig.py           |  7 +-----
 .../TrigCostMonitor/share/RunTrigCost.py      |  3 +--
 .../TrigCostMonitor/share/readDataRate.py     |  3 +--
 .../L1TopoSimulation/share/L1Simulation.py    |  2 --
 .../share/TrigT1CTP_standalone_xml_job.py     |  2 --
 .../TrigInDetConf/python/TrigInDetSequence.py |  2 +-
 .../TriggerJobOpts/python/HLTTriggerGetter.py | 24 -------------------
 .../TriggerJobOpts/python/Modifiers.py        |  8 -------
 .../python/TriggerConfigGetter.py             | 12 ++++------
 .../TriggerJobOpts/python/TriggerFlags.py     | 23 +-----------------
 .../TriggerJobOpts/python/TriggerGetter.py    | 18 +++++++-------
 .../BStoESD_Tier0_HLTConfig_jobOptions.py     |  3 +--
 .../share/Trigger_topOptions_standalone.py    |  2 +-
 .../TrigSimTransforms/share/athena_RDOtoBS.py |  3 +--
 .../share/skeleton.BStoTRIGBS.fails.py        |  5 +---
 25 files changed, 35 insertions(+), 117 deletions(-)

diff --git a/InnerDetector/InDetExample/InDetSLHC_Example/share/preInclude.SLHC_Rec.py b/InnerDetector/InDetExample/InDetSLHC_Example/share/preInclude.SLHC_Rec.py
index 9e5473d41bf..3acc9797f2e 100644
--- a/InnerDetector/InDetExample/InDetSLHC_Example/share/preInclude.SLHC_Rec.py
+++ b/InnerDetector/InDetExample/InDetSLHC_Example/share/preInclude.SLHC_Rec.py
@@ -15,8 +15,7 @@ if rec.doWriteESD() or rec.doWriteAOD() or ('doWriteESD' in dir() and doWriteESD
     # --- turn off trigger
     #rec.doTrigger = False
     from TriggerJobOpts.TriggerFlags import TriggerFlags
-    TriggerFlags.doLVL2.set_Value_and_Lock(False)
-    TriggerFlags.doEF.set_Value_and_Lock(False)
+    TriggerFlags.doHLT.set_Value_and_Lock(False)
 
     # --- this is the SLHC 
     InDetFlags.doSLHC = True
diff --git a/InnerDetector/InDetExample/InDetTrigRecExample/python/EFInDetConfig.py b/InnerDetector/InDetExample/InDetTrigRecExample/python/EFInDetConfig.py
index 24ad50ac90c..e880f6c9e9b 100755
--- a/InnerDetector/InDetExample/InDetTrigRecExample/python/EFInDetConfig.py
+++ b/InnerDetector/InDetExample/InDetTrigRecExample/python/EFInDetConfig.py
@@ -282,7 +282,7 @@ class TrigEFIDSequence(TrigInDetSequenceBase):
     #    modify the sequence acoording to triggerflags
     from TriggerJobOpts.TriggerFlags  import TriggerFlags
 
-    if not ( TriggerFlags.doEF() or TriggerFlags.doHLT() ) or not TriggerFlags.doFEX():
+    if not TriggerFlags.doHLT() or not TriggerFlags.doFEX():
       from TrigSteeringTest.TrigSteeringTestConf import PESA__dummyAlgo as dummyAlgo_disabledByTriggerFlags_EFID
       dummyAlgEFID = dummyAlgo_disabledByTriggerFlags_EFID("doEF_or_doFEX_False_no_EFID")
       alglist = '[dummyAlgEFID]'
diff --git a/LArCalorimeter/LArCafJobs/share/skeleton.LArNoise_fromraw.py b/LArCalorimeter/LArCafJobs/share/skeleton.LArNoise_fromraw.py
index 6ed2b834009..e585382c412 100644
--- a/LArCalorimeter/LArCafJobs/share/skeleton.LArNoise_fromraw.py
+++ b/LArCalorimeter/LArCafJobs/share/skeleton.LArNoise_fromraw.py
@@ -217,8 +217,7 @@ if hasattr(runArgs,"outputNTUP_LARNOISEFile") or hasattr(runArgs,"outputNTUP_HEC
    from TriggerJobOpts.TriggerFlags import TriggerFlags as tf
    tf.readBS.set_Value_and_Lock(True)
    tf.doLVL1.set_Value_and_Lock(False)
-   tf.doLVL2.set_Value_and_Lock(False)
-   tf.doEF.set_Value_and_Lock(False)
+   tf.doHLT.set_Value_and_Lock(False)
    tf.doL1Topo.set_Value_and_Lock(False)
    tf.readLVL1Calo.set_Value_and_Lock(True)
    tf.enableMonitoring.set_Value_and_Lock(False)
diff --git a/LArCalorimeter/LArMonitoring/share/LArReco_fromraw.py b/LArCalorimeter/LArMonitoring/share/LArReco_fromraw.py
index d118853fe8d..2c66f49c45e 100644
--- a/LArCalorimeter/LArMonitoring/share/LArReco_fromraw.py
+++ b/LArCalorimeter/LArMonitoring/share/LArReco_fromraw.py
@@ -157,8 +157,7 @@ include("LArCellRec/LArCollisionTime_jobOptions.py")
 from TriggerJobOpts.TriggerFlags import TriggerFlags as tf
 tf.readBS.set_Value_and_Lock(True)
 tf.doLVL1.set_Value_and_Lock(False)
-tf.doLVL2.set_Value_and_Lock(False)
-tf.doEF.set_Value_and_Lock(False)
+tf.doHLT.set_Value_and_Lock(False)
 tf.doL1Topo.set_Value_and_Lock(False)
 tf.readLVL1Calo.set_Value_and_Lock(True)
 tf.enableMonitoring.set_Value_and_Lock(False)
diff --git a/PhysicsAnalysis/D3PDMaker/TriggerD3PDMaker/python/TrigConfMetadata.py b/PhysicsAnalysis/D3PDMaker/TriggerD3PDMaker/python/TrigConfMetadata.py
index bbc000a87c1..26b66437fe4 100644
--- a/PhysicsAnalysis/D3PDMaker/TriggerD3PDMaker/python/TrigConfMetadata.py
+++ b/PhysicsAnalysis/D3PDMaker/TriggerD3PDMaker/python/TrigConfMetadata.py
@@ -1,6 +1,5 @@
-# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 
-# $Id: TrigConfMetadata.py 618376 2014-09-24 15:33:35Z tamartin $
 #
 # This module holds the code that should be used to add trigger configuration
 # metadata to the D3PD.
@@ -74,10 +73,8 @@ def addTrigConfMetadata( d3pdalg = None, useTrigConfEventSummaries = False, doCo
             else: 
               logger.info( "TrigConfMetadataTool will use TriggerFlags flags for config" )
               from TriggerJobOpts.TriggerFlags import TriggerFlags
-              if TriggerFlags.doHLT() and not (TriggerFlags.doEF() or TriggerFlags.doLVL2()):
+              if TriggerFlags.doHLT():
                 _trigConfTool.keyConfig = "HLT_TrigMonConfigCollection_OPI_HLT_monitoring_config"
-              elif TriggerFlags.doEF() or TriggerFlags.doLVL2():
-                _trigConfTool.keyConfig = "HLT_TrigMonConfigCollection_OPI_EF_monitoring_config"
             logger.info( "TrigConfMetadataTool will use the StoreGate key " + _trigConfTool.keyConfig )
             d3pdalg.MetadataTools += [ _trigConfTool ]
     else:
diff --git a/Simulation/FastShower/FastCaloSim/share/FastCaloSimFromTruthWithTrigT1Calo.py b/Simulation/FastShower/FastCaloSim/share/FastCaloSimFromTruthWithTrigT1Calo.py
index cadae1f5739..49bd812c5fa 100755
--- a/Simulation/FastShower/FastCaloSim/share/FastCaloSimFromTruthWithTrigT1Calo.py
+++ b/Simulation/FastShower/FastCaloSim/share/FastCaloSimFromTruthWithTrigT1Calo.py
@@ -75,8 +75,7 @@ TriggerFlags.doID   = False
 TriggerFlags.doCalo = True
 TriggerFlags.doMuon = False
 
-TriggerFlags.doLVL2 = False
-TriggerFlags.doEF   = False
+TriggerFlags.doHLT = False
 
 
 # if needed to configure AOD building
diff --git a/Simulation/FastShower/FastCaloSim/share/FastCaloSimFromTruthv13WithTrigT1Calo.py b/Simulation/FastShower/FastCaloSim/share/FastCaloSimFromTruthv13WithTrigT1Calo.py
index 827ad87d181..579a5225311 100755
--- a/Simulation/FastShower/FastCaloSim/share/FastCaloSimFromTruthv13WithTrigT1Calo.py
+++ b/Simulation/FastShower/FastCaloSim/share/FastCaloSimFromTruthv13WithTrigT1Calo.py
@@ -33,7 +33,6 @@ TriggerFlags.doID   = False
 TriggerFlags.doCalo = True
 TriggerFlags.doMuon = False
 
-TriggerFlags.doLVL2 = False
-TriggerFlags.doEF   = False
+TriggerFlags.doHLT   = False
 
 include ( "FastCaloSim/FastCaloSimFromTruthv13.py" )
diff --git a/Simulation/FastShower/FastCaloSim/share/FastCaloSimFromTruthv14WithTrigT1Calo.py b/Simulation/FastShower/FastCaloSim/share/FastCaloSimFromTruthv14WithTrigT1Calo.py
index 48a86649efe..758e4c5c05b 100644
--- a/Simulation/FastShower/FastCaloSim/share/FastCaloSimFromTruthv14WithTrigT1Calo.py
+++ b/Simulation/FastShower/FastCaloSim/share/FastCaloSimFromTruthv14WithTrigT1Calo.py
@@ -33,7 +33,6 @@ TriggerFlags.doID   = False
 TriggerFlags.doCalo = True
 TriggerFlags.doMuon = False
 
-TriggerFlags.doLVL2 = False
-TriggerFlags.doEF   = False
+TriggerFlags.doHLT   = False
 
 include ( "FastCaloSim/FastCaloSimFromTruthv14.py" )
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloCommon/python/TrigT2CaloCommonConfig.py b/Trigger/TrigAlgorithms/TrigT2CaloCommon/python/TrigT2CaloCommonConfig.py
index d7362e1066d..da261e7bd2f 100644
--- a/Trigger/TrigAlgorithms/TrigT2CaloCommon/python/TrigT2CaloCommonConfig.py
+++ b/Trigger/TrigAlgorithms/TrigT2CaloCommon/python/TrigT2CaloCommonConfig.py
@@ -15,8 +15,8 @@ class TrigDataAccess(_TrigDataAccess):
         from AthenaCommon.Logging import logging
         log = logging.getLogger(name)
      
-        self.loadFullCollections = ( TriggerFlags.doEF() or TriggerFlags.doHLT() )
-        self.loadAllSamplings    = ( TriggerFlags.doLVL2() or TriggerFlags.doHLT() )
+        self.loadFullCollections = TriggerFlags.doHLT()
+        self.loadAllSamplings    = TriggerFlags.doHLT()
         log.info('Not possible anymore to enable HLT calo offset correction, tools deprecated')
 
         from RecExConfig.RecFlags import rec
diff --git a/Trigger/TrigConfiguration/TrigConfigSvc/python/TrigConfigSvcConfig.py b/Trigger/TrigConfiguration/TrigConfigSvc/python/TrigConfigSvcConfig.py
index fbf5759f4bd..6da3ac898f0 100755
--- a/Trigger/TrigConfiguration/TrigConfigSvc/python/TrigConfigSvcConfig.py
+++ b/Trigger/TrigConfiguration/TrigConfigSvc/python/TrigConfigSvcConfig.py
@@ -354,14 +354,14 @@ class SetupTrigConfigSvc(object):
                 from TriggerJobOpts.TriggerFlags import TriggerFlags
 
 
-                if TriggerFlags.doLVL2() or TriggerFlags.doEF() or TriggerFlags.doHLT() or TriggerFlags.configForStartup()=='HLToffline':
+                if TriggerFlags.doHLT() or TriggerFlags.configForStartup()=='HLToffline':
                     self.mlog.info( "setup HLTConfigSvc and add instance to ServiceMgr (xml file="+self.hltXmlFile+")" )
                     hlt = HLTConfigSvc("HLTConfigSvc")
                     hlt.XMLMenuFile = self.hltXmlFile
                     hlt.doMergedHLT = TriggerFlags.doHLT()
                     ServiceMgr += hlt
                 else:
-                    self.mlog.info( "Will not setup HLTConfigSvc, since TriggerFlags doLVL2(), doEF(), and doHLT() are all False" )
+                    self.mlog.info( "Will not setup HLTConfigSvc, since doHLT() is False" )
                     self.states[self.states.index("xml")] = "xmll1"
 
                 # generating a json L1 menu for Physics_pp_v7_primaries
diff --git a/Trigger/TrigMonitoring/TrigCostMonitor/python/TrigCostMonitorConfig.py b/Trigger/TrigMonitoring/TrigCostMonitor/python/TrigCostMonitorConfig.py
index 73fcf5b21c6..0b68f913321 100644
--- a/Trigger/TrigMonitoring/TrigCostMonitor/python/TrigCostMonitorConfig.py
+++ b/Trigger/TrigMonitoring/TrigCostMonitor/python/TrigCostMonitorConfig.py
@@ -444,12 +444,7 @@ def setupCostJob(config = 'OPI ROB NOPS'):
         from TriggerJobOpts.TriggerFlags import TriggerFlags
         if TriggerFlags.doHLT():
             configSteeringOPI(topSeq, 'TrigSteer_HLT', config, log)
-        else: 
-            if TriggerFlags.doEF():
-                configSteeringOPI(topSeq, 'TrigSteer_EF', config, log)
-            if TriggerFlags.doLVL2():
-                configSteeringOPI(topSeq, 'TrigSteer_L2', config, log)
-        
+
     if config.count('ROB'):
         log.info('Will try to configure online monitoring for ROBDataProviderSvc...')
         from AthenaCommon.AppMgr import ServiceMgr as svcMgr
diff --git a/Trigger/TrigMonitoring/TrigCostMonitor/share/RunTrigCost.py b/Trigger/TrigMonitoring/TrigCostMonitor/share/RunTrigCost.py
index d9bbb1f4f1c..e191a3912ca 100644
--- a/Trigger/TrigMonitoring/TrigCostMonitor/share/RunTrigCost.py
+++ b/Trigger/TrigMonitoring/TrigCostMonitor/share/RunTrigCost.py
@@ -51,8 +51,7 @@ TriggerFlags.readHLTconfigFromXML=False
 TriggerFlags.inputLVL1configFile=''
 TriggerFlags.inputHLTconfigFile=''
 TriggerFlags.doLVL1=True
-TriggerFlags.doLVL2=True
-TriggerFlags.doEF=True
+TriggerFlags.doHLT=True
 TriggerFlags.L1PrescaleSet  = 'L1Prescales100_' +TriggerFlags.triggerMenuSetup()
 TriggerFlags.HLTPrescaleSet = 'HLTPrescales100_'+TriggerFlags.triggerMenuSetup()
 TriggerFlags.configurationSourceList=['xml']
diff --git a/Trigger/TrigMonitoring/TrigCostMonitor/share/readDataRate.py b/Trigger/TrigMonitoring/TrigCostMonitor/share/readDataRate.py
index 504f3c2fa6f..c05ac507f13 100644
--- a/Trigger/TrigMonitoring/TrigCostMonitor/share/readDataRate.py
+++ b/Trigger/TrigMonitoring/TrigCostMonitor/share/readDataRate.py
@@ -17,8 +17,7 @@ globalflags.DataSource  = 'data'
 from TriggerJobOpts.TriggerFlags import TriggerFlags
 TriggerFlags.readBS = True
 TriggerFlags.doLVL1 = False
-TriggerFlags.doLVL2 = False
-TriggerFlags.doEF   = False
+TriggerFlags.doHLT   = False
 
 #----------------------------------------------------------------------
 # Set services for reading BS files
diff --git a/Trigger/TrigT1/L1Topo/L1TopoSimulation/share/L1Simulation.py b/Trigger/TrigT1/L1Topo/L1TopoSimulation/share/L1Simulation.py
index 644b306b39c..f9357780a71 100644
--- a/Trigger/TrigT1/L1Topo/L1TopoSimulation/share/L1Simulation.py
+++ b/Trigger/TrigT1/L1Topo/L1TopoSimulation/share/L1Simulation.py
@@ -47,8 +47,6 @@ include ( "RecExCond/RecExCommon_flags.py" )
 
 TriggerFlags.doL1Topo = True
 TriggerFlags.doLVL1   = True
-TriggerFlags.doLVL2   = False
-TriggerFlags.doEF     = False
 TriggerFlags.doHLT    = True
 
 TriggerFlags.triggerMenuSetup = "MC_pp_v5"
diff --git a/Trigger/TrigT1/TrigT1CTP/share/TrigT1CTP_standalone_xml_job.py b/Trigger/TrigT1/TrigT1CTP/share/TrigT1CTP_standalone_xml_job.py
index 3a365b2cf72..8468b24b2ef 100755
--- a/Trigger/TrigT1/TrigT1CTP/share/TrigT1CTP_standalone_xml_job.py
+++ b/Trigger/TrigT1/TrigT1CTP/share/TrigT1CTP_standalone_xml_job.py
@@ -42,8 +42,6 @@ include("RecExCond/AllDet_detDescr.py")
 # use TriggerGetter but disable HLT
 from TriggerJobOpts.TriggerFlags import TriggerFlags as TF
 TF.doLVL1 = True
-TF.doLVL2 = False
-TF.doEF = False
 TF.doHLT = False
 TF.readLVL1configFromXML=True
 TF.triggerMenuSetup = "MC_pp_v5"
diff --git a/Trigger/TrigTools/TrigInDetConf/python/TrigInDetSequence.py b/Trigger/TrigTools/TrigInDetConf/python/TrigInDetSequence.py
index 3cc82e6db4d..84501919807 100644
--- a/Trigger/TrigTools/TrigInDetConf/python/TrigInDetSequence.py
+++ b/Trigger/TrigTools/TrigInDetConf/python/TrigInDetSequence.py
@@ -128,7 +128,7 @@ class TrigInDetSequence(TrigInDetSequenceBase):
     #    modify the sequence acoording to triggerflags
     from TriggerJobOpts.TriggerFlags  import TriggerFlags
 
-    if not ( TriggerFlags.doEF() or TriggerFlags.doHLT() ) or not TriggerFlags.doFEX():
+    if not TriggerFlags.doHLT() or not TriggerFlags.doFEX():
       from TrigSteeringTest.TrigSteeringTestConf import PESA__dummyAlgo as dummyAlgo_disabledByTriggerFlags_EFID
       dummyAlgEFID = dummyAlgo_disabledByTriggerFlags_EFID("doEF_or_doFEX_False_no_EFID")
       alglist = '[dummyAlgEFID]'
diff --git a/Trigger/TriggerCommon/TriggerJobOpts/python/HLTTriggerGetter.py b/Trigger/TriggerCommon/TriggerJobOpts/python/HLTTriggerGetter.py
index f4cfb67c00b..0e67ee47b11 100644
--- a/Trigger/TriggerCommon/TriggerJobOpts/python/HLTTriggerGetter.py
+++ b/Trigger/TriggerCommon/TriggerJobOpts/python/HLTTriggerGetter.py
@@ -218,22 +218,6 @@ class HLTSimulationGetter(Configured):
 
 
         if TriggerFlags.writeBS():
-            # declare objects to go to BS (from the lists above)
-            ## if TriggerFlags.doLVL2():                
-            ##     from TrigEDMConfig.TriggerEDM import getL2BSList
-            ##     TrigSteer_L2.Navigation.ClassesToPayload = getL2BSList()
-            ##     TrigSteer_L2.Navigation.ClassesToPreregister = []
-            ## 
-            ## if TriggerFlags.doEF():
-            ##     from TrigEDMConfig.TriggerEDM import getEFBSList
-            ##     TrigSteer_EF.Navigation.ClassesToPayload = getEFBSList()
-            ##     TrigSteer_EF.Navigation.ClassesToPreregister = []
-            ##     try:
-            ##         from TrigEDMConfig.TriggerEDM import getEFDSList
-            ##         TrigSteer_EF.Navigation.ClassesToPayload_DSonly = getEFDSList()
-            ##     except ImportError:
-            ##         log.warning("DataScouting not available in this release")
-
             if TriggerFlags.doHLT():
                 from TrigEDMConfig.TriggerEDM import  getHLTBSList 
                 TrigSteer_HLT.Navigation.ClassesToPayload = getHLTBSList() 
@@ -257,14 +241,6 @@ class HLTSimulationGetter(Configured):
             TrigSerializeConvHelper = TrigSerializeConvHelper(doTP = True)
             ToolSvc += TrigSerializeConvHelper
 
-            #do not activate T/P of EF classes at L2
-            ## if TriggerFlags.doLVL2(): 
-            ##     from TrigEDMConfig.TriggerEDM import getL2BSTypeList
-            ##     TrigSerToolTP.ActiveClasses = getL2BSTypeList()
-            ## if TriggerFlags.doEF():
-            ##     from TrigEDMConfig.TriggerEDM import getL2BSTypeList, getEFBSTypeList
-            ##     TrigSerToolTP.ActiveClasses = getL2BSTypeList() + getEFBSTypeList()
-
             if TriggerFlags.doHLT():
                 from TrigEDMConfig.TriggerEDM import getHLTBSTypeList 
                 TrigSerToolTP.ActiveClasses = getHLTBSTypeList()
diff --git a/Trigger/TriggerCommon/TriggerJobOpts/python/Modifiers.py b/Trigger/TriggerCommon/TriggerJobOpts/python/Modifiers.py
index f9a8e1cf22b..5727d0bb3bc 100644
--- a/Trigger/TriggerCommon/TriggerJobOpts/python/Modifiers.py
+++ b/Trigger/TriggerCommon/TriggerJobOpts/python/Modifiers.py
@@ -633,10 +633,6 @@ class rerunLVL1(_modifier):
     """
     def preSetup(self):
 
-        # Do nothing for EF only running
-        if not TriggerFlags.doLVL2() and TriggerFlags.doEF():
-            return
-
         from AthenaCommon.Include import include
         from AthenaCommon.AlgSequence import AlgSequence
         topSequence = AlgSequence()
@@ -736,10 +732,6 @@ class rerunDMLVL1(_modifier):
     """
     def preSetup(self):
 
-         # Do nothing for EF only running
-         if not TriggerFlags.doLVL2() and TriggerFlags.doEF():
-             return
-
          from AthenaCommon.Include import include
          from AthenaCommon.AlgSequence import AlgSequence
          topSequence = AlgSequence()
diff --git a/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerConfigGetter.py b/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerConfigGetter.py
index 78517fb357d..d3f95dbdefc 100644
--- a/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerConfigGetter.py
+++ b/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerConfigGetter.py
@@ -141,15 +141,13 @@ class TriggerConfigGetter(Configured):
 
         # first check the input
         if "HIT2RDO" in self._environment:
-            TriggerFlags.doLVL2 = False
-            TriggerFlags.doEF = False
+            TriggerFlags.doHLT = False
             log.info("For simulation jobs the following flags are set:")
             log.info("globalflags.InputFormat             : %s", globalflags.InputFormat())
             log.info("globalflags.DataSource              : %s", globalflags.DataSource())
             log.info("TriggerFlags.configForStartup       : %s", TriggerFlags.configForStartup())
             log.info("TriggerFlags.dataTakingConditions   : %s", TriggerFlags.dataTakingConditions())
-            log.info("TriggerFlags.doLVL2                 : %s", TriggerFlags.doLVL2())
-            log.info("TriggerFlags.doEF                   : %s", TriggerFlags.doEF())
+            log.info("TriggerFlags.doHLT                  : %s", TriggerFlags.doHLT())
         else:
             if not self.checkInput():
                 log.error("Could not determine job input. Can't setup trigger configuration and will return!")
@@ -190,14 +188,14 @@ class TriggerConfigGetter(Configured):
 
         # reading from the TriggerDB can mean different things:
 
-        # a) TriggerFlags doLVL2() and doEF() are both False:
+        # a) TriggerFlags doHLT() is False:
         #    - create a tmp sqlite file with the conditions (menu)
         #    - use DSConfigSvc
 
 
-        # b) TriggerFlags doLVL2() or doEF() is True:
+        # b) TriggerFlags doHLT() is True:
         #    - use HLTConfigSvc
-        if self.readTriggerDB and (TriggerFlags.doLVL2() or TriggerFlags.doEF() or TriggerFlags.doHLT()):
+        if self.readTriggerDB and TriggerFlags.doHLT():
 
             self.ConfigSrcList = ['xml'] # to use L1/HLTConfigSvc and not DSConfigSvc, but only if we are running the HLT
 
diff --git a/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerFlags.py b/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerFlags.py
index e7ea511f414..6a6b8003a5b 100644
--- a/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerFlags.py
+++ b/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerFlags.py
@@ -54,8 +54,6 @@ default_false_flags = [
     "useRun1CaloEnergyScale",
     "doCosmicSim", # run the LVL1 simulation with special setup for cosmic simulation (set to FALSE by default, to do collisions simulation) """
     "disableRandomPrescale",  # if True, disable Random Prescales
-    "doLVL2",  # if False, disable LVL2 selection
-    "doEF",  # if False, disable EF selection
     "doTruth",
     "doFTK",  # if False, disable FTK result reader """
     "doTriggerConfigOnly",  # if True only the configuration services should be set, no algorithm """
@@ -87,24 +85,6 @@ class doHLT(JobProperty):
     allowedType=['bool']
     StoredValue=True
     
-    def _do_action(self):
-        """ setup flag level consistency """
-        if self.get_Value() is True:
-            if TriggerFlags.doEF.is_locked():
-                TriggerFlags.doEF.unlock()
-                TriggerFlags.doEF.set_Off()
-                TriggerFlags.doEF.lock()
-            else:
-                TriggerFlags.doEF.set_Off()
-            if TriggerFlags.doEF.is_locked():
-                TriggerFlags.doLVL2.unlock()
-                TriggerFlags.doLVL2.set_Off()
-                TriggerFlags.doLVL2.lock()
-            else:
-                TriggerFlags.doLVL2.set_Off()
-            log = logging.getLogger( 'TriggerFlags.doHLT' )
-            log.info("doHLT is True: force doLVL2=False and doEF=False"  )
-
 _flags.append(doHLT)
 
 class doMT(JobProperty):
@@ -964,8 +944,7 @@ def sync_Trigger2Reco():
     if globalflags.InputFormat() == 'bytestream':
         TriggerFlags.readBS = True
         TriggerFlags.doLVL1 = False
-        TriggerFlags.doLVL2 = False
-        TriggerFlags.doEF   = False
+        TriggerFlags.doHLT   = False
 
     if rec.doWriteBS():
         TriggerFlags.writeBS = True
diff --git a/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerGetter.py b/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerGetter.py
index d1fd8603a31..a33ba3f35c0 100644
--- a/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerGetter.py
+++ b/Trigger/TriggerCommon/TriggerJobOpts/python/TriggerGetter.py
@@ -1,4 +1,4 @@
-# Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 
 from AthenaCommon.GlobalFlags import jobproperties
 from AthenaCommon.Logging import logging
@@ -44,17 +44,17 @@ class TriggerGetter(Configured):
 
         # start with print some information what this will do
         log.info("Basic configuration flags RecAlgsFlag.doTrigger: %d   RecFlags.doTrigger: %d TriggerFlags.doTriggerConfigOnly %d", recAlgs.doTrigger(), rec.doTrigger(), TF.doTriggerConfigOnly() )
-        log.info("TriggerFlags: doL1Topo: %s, doLVL1: %s, doLVL2: %s, doEF: %s, doHLT: %s, doMT: %s", TF.doL1Topo(), TF.doLVL1(), TF.doLVL2(), TF.doEF(), TF.doHLT(), TF.doMT() )
+        log.info("TriggerFlags: doL1Topo: %s, doLVL1: %s, doHLT: %s, doMT: %s", TF.doL1Topo(), TF.doLVL1(), TF.doHLT(), TF.doMT() )
 
         # RDOtoRDOTrigger MT temporarily coded in the transform skeleton, so skip here
         if TF.doMT() and rec.readRDO() and rec.doWriteRDO():
             log.info("Nothing happens in TriggerGetter for RDOtoRDOTrigger MT")
             return True
         
-        willGenerateMenu = recAlgs.doTrigger() and (TF.doLVL1() or TF.doLVL2() or TF.doEF() or TF.doHLT()) and not TF.doTriggerConfigOnly()
+        willGenerateMenu = recAlgs.doTrigger() and (TF.doLVL1() or TF.doHLT()) and not TF.doTriggerConfigOnly()
         willRunTriggerConfigGetter = recAlgs.doTrigger() or rec.doTrigger() or TF.doTriggerConfigOnly()
         willRunLVL1SimulationGetter = recAlgs.doTrigger() and not TF.doTriggerConfigOnly()
-        willRunHLTSimulationGetter = willRunLVL1SimulationGetter and (TF.doLVL2() or TF.doEF() or TF.doHLT())
+        willRunHLTSimulationGetter = willRunLVL1SimulationGetter and TF.doHLT()
 
         log.info("Will run: %s%s%s%s", "GenerateMenu " if willGenerateMenu else "",
                                        "TriggerConfigGetter " if willRunTriggerConfigGetter else "",
@@ -68,7 +68,7 @@ class TriggerGetter(Configured):
         if recAlgs.doTrigger():
             from TriggerMenu.menu.GenerateMenu import GenerateMenu
 
-            if ((TF.doLVL1() or TF.doLVL2() or TF.doEF() or TF.doHLT()) and not TF.doTriggerConfigOnly()):
+            if ((TF.doLVL1() or TF.doHLT()) and not TF.doTriggerConfigOnly()):
                 log.info("generating menu")
                 # trigger menu files generation
                 g = GenerateMenu()
@@ -120,7 +120,7 @@ class TriggerGetter(Configured):
             lvl1 = Lvl1SimulationGetter()  # noqa: F841
             
 
-            if TF.doTransientByteStream() or (jobproperties.Global.InputFormat() != 'bytestream' and (TF.doLVL2() or TF.doEF() or TF.doHLT())):
+            if TF.doTransientByteStream() or (jobproperties.Global.InputFormat() != 'bytestream' and TF.doHLT()):
                 # Transient BS construction and intialization
                 from ByteStreamCnvSvc import WriteByteStream
                 StreamBS = WriteByteStream.getStream("Transient","StreamBS")
@@ -147,10 +147,8 @@ class TriggerGetter(Configured):
 
             # setup HLT
             # initialize HLT config svc
-            log.info("TriggerFlags: doLVL2 %r", TF.doLVL2())
-            log.info("TriggerFlags: doEF   %r", TF.doEF())
             log.info("TriggerFlags: doHLT  %r", TF.doHLT())
-            if TF.doLVL2() or TF.doEF() or TF.doHLT():
+            if TF.doHLT():
                 log.info("configuring hlt")
                 from TriggerJobOpts.HLTTriggerGetter import HLTSimulationGetter
                 hlt = HLTSimulationGetter(g)  # noqa: F841
@@ -166,7 +164,7 @@ class TriggerGetter(Configured):
         hltouput = Lvl1ResultBuilderGetter()
 
         # prepare result making of HLT
-        if TF.doLVL2() or TF.doEF() or TF.doHLT() or (recAlgs.doTrigger() and TF.readBS()):
+        if TF.doHLT() or (recAlgs.doTrigger() and TF.readBS()):
             from TriggerJobOpts.HLTTriggerResultGetter import HLTTriggerResultGetter
             hltouput = HLTTriggerResultGetter()  # noqa: F841
       
diff --git a/Trigger/TriggerCommon/TriggerJobOpts/share/BStoESD_Tier0_HLTConfig_jobOptions.py b/Trigger/TriggerCommon/TriggerJobOpts/share/BStoESD_Tier0_HLTConfig_jobOptions.py
index 1418276ca6d..f7245c3d1b1 100644
--- a/Trigger/TriggerCommon/TriggerJobOpts/share/BStoESD_Tier0_HLTConfig_jobOptions.py
+++ b/Trigger/TriggerCommon/TriggerJobOpts/share/BStoESD_Tier0_HLTConfig_jobOptions.py
@@ -29,8 +29,7 @@ if rec.doTrigger():
     tf.readBS=True # needed in HLTTriggerGetter - do not understand why it is not
     # true by default when globalflags.InputFormat = 'bytestream'
     tf.doLVL1= False # needed to not rerun the trigger
-    tf.doEF= False # needed to not rerun the trigger
-    tf.doLVL2 = False  # needed to not rerun the trigger
+    tf.doHLT= False # needed to not rerun the trigger
     tf.configurationSourceList = ['ds']
 
     try:
diff --git a/Trigger/TriggerCommon/TriggerJobOpts/share/Trigger_topOptions_standalone.py b/Trigger/TriggerCommon/TriggerJobOpts/share/Trigger_topOptions_standalone.py
index 6889699a20f..268cae97692 100755
--- a/Trigger/TriggerCommon/TriggerJobOpts/share/Trigger_topOptions_standalone.py
+++ b/Trigger/TriggerCommon/TriggerJobOpts/share/Trigger_topOptions_standalone.py
@@ -133,7 +133,7 @@ if TriggerFlags.doMuon():
     # load services needed for converters
     import MuonCnvExample.MuonCablingConfig  # noqa: F401 configuration by import, old Run-2 job options
     import MuonRecExample.MuonReadCalib  # noqa: F401 configuration by import, old Run-2 job options
-    if (TriggerFlags.doEF() or TriggerFlags.doHLT()) and 'forceMuonDataPrep' in dir():
+    if TriggerFlags.doHLT() and 'forceMuonDataPrep' in dir():
         if (TriggerFlags.MuonSlice.doEFRoIDrivenAccess()):
             include("MuonRdoToPrepData/CscRdoToCscPrepData_jobOptions.py")
         else:
diff --git a/Trigger/TriggerSimulation/TrigSimTransforms/share/athena_RDOtoBS.py b/Trigger/TriggerSimulation/TrigSimTransforms/share/athena_RDOtoBS.py
index 61caf0feea3..3214c045ed4 100644
--- a/Trigger/TriggerSimulation/TrigSimTransforms/share/athena_RDOtoBS.py
+++ b/Trigger/TriggerSimulation/TrigSimTransforms/share/athena_RDOtoBS.py
@@ -76,8 +76,7 @@ recAlgs.doTrigger.set_Value_and_Lock(True)
 
 # Config trigger
 TriggerFlags.doLVL1.set_Value_and_Lock(True)   # this should be disabled in the future
-TriggerFlags.doLVL2.set_Value_and_Lock(False)
-TriggerFlags.doEF.set_Value_and_Lock(False)
+TriggerFlags.doHLT.set_Value_and_Lock(False)
 #-------------------------------------------------------------------------------
 TriggerFlags.configurationSourceList.set_Value_and_Lock(["xml"])
 
diff --git a/Trigger/TriggerSimulation/TrigSimTransforms/share/skeleton.BStoTRIGBS.fails.py b/Trigger/TriggerSimulation/TrigSimTransforms/share/skeleton.BStoTRIGBS.fails.py
index 5057d3d6c75..24bddfb7564 100644
--- a/Trigger/TriggerSimulation/TrigSimTransforms/share/skeleton.BStoTRIGBS.fails.py
+++ b/Trigger/TriggerSimulation/TrigSimTransforms/share/skeleton.BStoTRIGBS.fails.py
@@ -68,8 +68,7 @@ topSequence = AlgSequence()
 
 # Trying manual setup of L1 instead of automatic (throgh L1ConfigGetter).
 TriggerFlags.doLVL1 = False
-TriggerFlags.doLVL2 = True
-TriggerFlags.doEF = True
+TriggerFlags.doHLT = True
 
 TriggerFlags.doTruth.set_Value_and_Lock(False)
 
@@ -337,8 +336,6 @@ hlt = HLTSimulationGetter()
 
 rng = getattr(ToolSvc,'HLT::RandomScaler')
 rng.useEventSeed = True
-#EF gets an extra seed "hash-offset" of 1 to make it independent of L2
-rng.config(seed=int(TriggerFlags.doEF()), luxury=2)
 
 ### End of the mess.....
 ###############################
-- 
GitLab