diff --git a/Trigger/TrigValidation/TrigUpgradeTest/share/full_menu.py b/Trigger/TrigValidation/TrigUpgradeTest/share/full_menu.py index 7432c3f9dccfc164f8218d60c92b653462f4727d..4ddb6ed823048bdb9d7ddce11ded894596a5dd93 100644 --- a/Trigger/TrigValidation/TrigUpgradeTest/share/full_menu.py +++ b/Trigger/TrigValidation/TrigUpgradeTest/share/full_menu.py @@ -157,8 +157,6 @@ if opt.doJetSlice == True: testChains += jetChains - - ################################################################## # bjet chains ################################################################## @@ -175,8 +173,11 @@ if opt.doBJetSlice == True: ] testChains += bjetChains +################################################################## +# tau chains +################################################################## if opt.doTauSlice == True: - from TrigUpgradeTest.tauMenuDefs import getTauSequence + from TriggerMenuMT.HLTMenuConfig.Tau.TauMenuSequences import getTauSequence step1=ChainStep("Step1_tau", [getTauSequence('calo')]) step2=ChainStep("Step2_tau", [getTauSequence('track_core')]) diff --git a/Trigger/TrigValidation/TrigUpgradeTest/share/runMenuTest.py b/Trigger/TrigValidation/TrigUpgradeTest/share/runMenuTest.py index 6186fc098120abc3509d28303d4d71ffe98df484..a8fdf603faa0ad0f93eddcfa9c1cbf7c654de020 100644 --- a/Trigger/TrigValidation/TrigUpgradeTest/share/runMenuTest.py +++ b/Trigger/TrigValidation/TrigUpgradeTest/share/runMenuTest.py @@ -17,6 +17,7 @@ def signaturesToGenerate(): TriggerFlags.MuonSlice.setAll() TriggerFlags.METSlice.setAll() TriggerFlags.JetSlice.setAll() + TriggerFlags.TauSlice.setAll() # generate the Chains from the Menu Dictionary diff --git a/Trigger/TrigValidation/TrigUpgradeTest/python/ElectronMenuConfig.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Electron/ElectronRecoSequences.py similarity index 100% rename from Trigger/TrigValidation/TrigUpgradeTest/python/ElectronMenuConfig.py rename to Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Electron/ElectronRecoSequences.py diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Electron/generateElectron.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Electron/generateElectron.py index 2b3424cc810ff39787bf1a59de5307be1063bfca..d5e7e173a146252d0a65be20c642d1b45105f16e 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Electron/generateElectron.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Electron/generateElectron.py @@ -1,6 +1,6 @@ # Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration -from TrigUpgradeTest.ElectronMenuConfig import l2CaloRecoCfg, l2CaloHypoCfg +from TriggerMenuMT.HLTMenuConfig.Electron.ElectronRecoSequences import l2CaloRecoCfg, l2CaloHypoCfg from TriggerMenuMT.HLTMenuConfig.Menu.MenuComponents import MenuSequence, \ ChainStep, Chain, getChainStepName, createStepView diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/LS2_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/LS2_v1.py index 4154a63bc95856ad605d8af72b9e5e04223b283a..6cf942c9e463280b8d4c0880ac3230e047bfba63 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/LS2_v1.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/LS2_v1.py @@ -91,7 +91,10 @@ def setupMenu(): ChainProp(name="HLT_j35_gsc45_bmv2c1070_L1J20", groups=SingleBjetGroup), ] - TriggerFlags.TauSlice.signatures = [] + TriggerFlags.TauSlice.signatures = [ + #ChainProp(name="HLT_tau0_perf_ptonly_L1TAU12", groups=SingleTauGroup), + #ChainProp(name="HLT_tau25_medium1_tracktwo_L1TAU12IM", groups=SingleTauGroup), + ] TriggerFlags.BphysicsSlice.signatures = [ ] TriggerFlags.CombinedSlice.signatures = [] TriggerFlags.HeavyIonSlice.signatures = [] diff --git a/Trigger/TrigValidation/TrigUpgradeTest/python/PhotonMenuConfig.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Photon/PhotonRecoSequences.py similarity index 97% rename from Trigger/TrigValidation/TrigUpgradeTest/python/PhotonMenuConfig.py rename to Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Photon/PhotonRecoSequences.py index 9ccc441059dda72b2c78c422f72fd4710806c6e6..b8d3439a3e0a1a7066350563bf856c1f30239c60 100644 --- a/Trigger/TrigValidation/TrigUpgradeTest/python/PhotonMenuConfig.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Photon/PhotonRecoSequences.py @@ -55,7 +55,7 @@ def generatePhotonsCfg( flags ): l2CaloHypo.CaloClusters = 'L2CaloEMClusters' - from TrigUpgradeTest.ElectronMenuConfig import l2CaloRecoCfg + from TriggerMenuMT.HLTMenuConfig.Electron.ElectronRecoSequences import l2CaloRecoCfg l2CaloReco = RecoFragmentsPool.retrieve( l2CaloRecoCfg, flags ) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Photon/generatePhoton.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Photon/generatePhoton.py index 39ad1d9a0e7aa42d40127606a7c73607dc5e6dde..707dc57749daaf1cb9bee9fc010a81a900a82ec9 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Photon/generatePhoton.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Photon/generatePhoton.py @@ -1,7 +1,7 @@ # Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration -from TrigUpgradeTest.ElectronMenuConfig import l2CaloRecoCfg, l2CaloHypoCfg -from TrigUpgradeTest.PhotonMenuConfig import l2PhotonRecoCfg, l2PhotonHypoCfg +from TriggerMenuMT.HLTMenuConfig.Electron.ElectronRecoSequences import l2CaloRecoCfg, l2CaloHypoCfg +from TriggerMenuMT.HLTMenuConfig.Photon.PhotonRecoSequences import l2PhotonRecoCfg, l2PhotonHypoCfg from TriggerMenuMT.HLTMenuConfig.Menu.MenuComponents import MenuSequence, \ ChainStep, Chain, getChainStepName, createStepView from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/GenerateTauChainDefs.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/GenerateTauChainDefs.py new file mode 100644 index 0000000000000000000000000000000000000000..7089a09c2f3dd27b4893fab86e7c4bcb12691dec --- /dev/null +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/GenerateTauChainDefs.py @@ -0,0 +1,41 @@ +# Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration + +########################################################################### +# SliceDef file for Muon chains +########################################################################### + +from AthenaCommon.Logging import logging +log = logging.getLogger( 'TriggerMenuMT.HLTMenuConfig.Muon.generateChainConfigs' ) +logging.getLogger().info("Importing %s",__name__) + +from TriggerMenuMT.HLTMenuConfig.Menu.ChainDictTools import splitChainDict +from TriggerMenuMT.HLTMenuConfig.Tau.TauChainConfiguration import TauChainConfiguration as TauChainConfiguration + + + +def generateChainConfigs(chainDict): + + listOfChainDicts = splitChainDict(chainDict) + listOfChainDefs=[] + + for subChainDict in listOfChainDicts: + + Tau = TauChainConfiguration(subChainDict).assembleChain() + + listOfChainDefs += [Tau] + log.debug('length of chaindefs %s', len(listOfChainDefs) ) + + + if len(listOfChainDefs)>1: + log.warning("Implement case for multi-electron chain!!") + theChainDef = listOfChainDefs[0] #needs to be implemented properly + else: + theChainDef = listOfChainDefs[0] + + log.debug("theChainDef.name: %s" , theChainDef.name) + log.debug("theChainDef.seed: %s" , theChainDef.seed) + log.debug("theChainDef.ChainSteps: %s" , theChainDef.steps) + + return theChainDef + + diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauChainConfiguration.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauChainConfiguration.py new file mode 100755 index 0000000000000000000000000000000000000000..0c218f49c8bebf006fe3a5686292a735698aee26 --- /dev/null +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauChainConfiguration.py @@ -0,0 +1,83 @@ +# Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration + +######################################################################## +# +# SliceDef file for muon chains/signatures +# +######################################################################### +from AthenaCommon.Logging import logging +logging.getLogger().info("Importing %s",__name__) +log = logging.getLogger("TriggerMenuMT.HLTMenuConfig.Tau.TauChainConfiguration") + +from TriggerMenuMT.HLTMenuConfig.Menu.ChainConfigurationBase import ChainConfigurationBase, RecoFragmentsPool +from TriggerMenuMT.HLTMenuConfig.Menu.MenuComponents import ChainStep + +from TriggerMenuMT.HLTMenuConfig.Tau.TauMenuSequences import tauCaloMenuSequence, tauCoreTrackSequence + +from TrigUpgradeTest.InDetSetup import inDetSetup + +#-------------------------------------------------------- +# fragments generating config will be functions in new JO +#-------------------------------------------------------- +def getTauCaloCfg(flags): + return tauCaloMenuSequence("Tau") + +def getTauCoreTrackCfg(flags): + return tauCoreTrackSequence() + + +############################################# +### Class/function to configure muon chains +############################################# + +class TauChainConfiguration(ChainConfigurationBase): + + def __init__(self, chainDict): + ChainConfigurationBase.__init__(self,chainDict) + + # ---------------------- + # Assemble the chain depending on information from chainName + # ---------------------- + def assembleChain(self): + chainSteps = [] + log.debug("Assembling chain for " + self.chainName) + + # Calling inDetSetup here + inDetSetup() + + # -------------------- + # define here the names of the steps and obtain the chainStep configuration + # -------------------- + stepDictionary = { + "ptonly":[self.getCaloSeq(), self.getTrackCore()], + "tracktwo":[self.getCaloSeq(), self.getTrackCore()], + } + + # this should be extended by the signature expert to make full use of the dictionary! + key = self.chainPart['preselection'] + steps=stepDictionary[key] + for step in steps: + chainSteps+=[step] + + myChain = self.buildChain(chainSteps) + return myChain + + + # -------------------- + def getCaloSeq(self): + stepName = 'Step1_tau' + log.debug("Configuring step " + stepName) + tauSeq = RecoFragmentsPool.retrieve( getTauCaloCfg, None) + return ChainStep(stepName, [tauSeq]) + + # -------------------- + def getTrackCore(self): + stepName = 'Step2_tau' + log.debug("Configuring step " + stepName) + tauSeq = RecoFragmentsPool.retrieve( getTauCoreTrackCfg, None) + return ChainStep(stepName, [tauSeq]) + + # -------------------- + + + diff --git a/Trigger/TrigValidation/TrigUpgradeTest/python/tauMenuDefs.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauMenuSequences.py similarity index 98% rename from Trigger/TrigValidation/TrigUpgradeTest/python/tauMenuDefs.py rename to Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauMenuSequences.py index d65b0b2637bba708b6fe8583e60b6d54cbd372ec..ee17c680ea132b0a640c863b9c055e38f6c6e451 100644 --- a/Trigger/TrigValidation/TrigUpgradeTest/python/tauMenuDefs.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauMenuSequences.py @@ -9,7 +9,7 @@ from AthenaConfiguration.AllConfigFlags import ConfigFlags from TriggerMenuMT.HLTMenuConfig.Menu.MenuComponents import MenuSequence, RecoFragmentsPool from AthenaCommon.CFElements import parOR, seqAND from ViewAlgs.ViewAlgsConf import EventViewCreatorAlgorithm -from TrigUpgradeTest.tauDefs import tauCaloSequence +from TriggerMenuMT.HLTMenuConfig.Tau.TauRecoSequences import tauCaloSequence # ==================================================================================================== diff --git a/Trigger/TrigValidation/TrigUpgradeTest/python/tauDefs.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauRecoSequences.py similarity index 100% rename from Trigger/TrigValidation/TrigUpgradeTest/python/tauDefs.py rename to Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauRecoSequences.py