diff --git a/Trigger/TrigValidation/TrigUpgradeTest/share/RunMenuTest.ref b/Trigger/TrigValidation/TrigUpgradeTest/share/RunMenuTest.ref index 82b7e4a12fa73368dc265a485f11b5d47a5362c9..739e534823a1da683ed4ecd43135aac0fb09970d 100644 --- a/Trigger/TrigValidation/TrigUpgradeTest/share/RunMenuTest.ref +++ b/Trigger/TrigValidation/TrigUpgradeTest/share/RunMenuTest.ref @@ -1,41 +1,9 @@ TrigSignatureMoniMT INFO Chains passing step (1st row events & 2nd row decision counts TrigSignatureMoniMT INFO Chain name L1, AfterPS, [... steps ...], Output TrigSignatureMoniMT INFO All 20 20 0 0 17 -TrigSignatureMoniMT INFO HLT_2e3_etcut 20 20 0 0 0 -TrigSignatureMoniMT INFO HLT_2e3_etcut decisions 0 0 -TrigSignatureMoniMT INFO HLT_2mu6 20 20 0 0 0 -TrigSignatureMoniMT INFO HLT_2mu6 decisions 0 0 -TrigSignatureMoniMT INFO HLT_e15mu24 20 20 0 0 0 -TrigSignatureMoniMT INFO HLT_e15mu24 decisions 0 0 TrigSignatureMoniMT INFO HLT_e3_etcut 20 20 18 17 17 TrigSignatureMoniMT INFO HLT_e3_etcut decisions 54 262 -TrigSignatureMoniMT INFO HLT_e3e5_etcut 20 20 0 0 0 -TrigSignatureMoniMT INFO HLT_e3e5_etcut decisions 0 0 TrigSignatureMoniMT INFO HLT_e5_etcut 20 20 17 16 16 TrigSignatureMoniMT INFO HLT_e5_etcut decisions 50 251 -TrigSignatureMoniMT INFO HLT_e7_etcut 20 20 11 11 11 -TrigSignatureMoniMT INFO HLT_e7_etcut decisions 17 117 -TrigSignatureMoniMT INFO HLT_g5_etcut 20 20 0 0 0 -TrigSignatureMoniMT INFO HLT_g5_etcut decisions 0 0 -TrigSignatureMoniMT INFO HLT_j35_gsc45_bmv2c1070 20 20 0 0 0 -TrigSignatureMoniMT INFO HLT_j35_gsc45_bmv2c1070 decisions 0 0 -TrigSignatureMoniMT INFO HLT_j35_gsc45_bmv2c1070_split 20 20 0 0 0 -TrigSignatureMoniMT INFO HLT_j35_gsc45_bmv2c1070_split decisions 0 0 -TrigSignatureMoniMT INFO HLT_j35_gsc45_boffperf_split 20 20 0 0 0 -TrigSignatureMoniMT INFO HLT_j35_gsc45_boffperf_split decisions 0 0 -TrigSignatureMoniMT INFO HLT_j60 20 20 0 0 0 -TrigSignatureMoniMT INFO HLT_j60 decisions 0 0 -TrigSignatureMoniMT INFO HLT_j85 20 20 0 0 0 -TrigSignatureMoniMT INFO HLT_j85 decisions 0 0 -TrigSignatureMoniMT INFO HLT_mu20 20 20 0 0 0 -TrigSignatureMoniMT INFO HLT_mu20 decisions 0 0 -TrigSignatureMoniMT INFO HLT_mu6 20 20 0 0 0 -TrigSignatureMoniMT INFO HLT_mu6 decisions 0 0 -TrigSignatureMoniMT INFO HLT_mu6idperf 20 20 0 0 0 -TrigSignatureMoniMT INFO HLT_mu6idperf decisions 0 0 -TrigSignatureMoniMT INFO HLT_te15 20 20 0 0 0 -TrigSignatureMoniMT INFO HLT_te15 decisions 0 0 -TrigSignatureMoniMT INFO HLT_xe10 20 20 0 0 0 -TrigSignatureMoniMT INFO HLT_xe10 decisions 0 0 -TrigSignatureMoniMT INFO HLT_xs20 20 20 0 0 0 -TrigSignatureMoniMT INFO HLT_xs20 decisions 0 0 +TrigSignatureMoniMT INFO HLT_e7_etcut 20 20 15 14 14 +TrigSignatureMoniMT INFO HLT_e7_etcut decisions 36 205 diff --git a/Trigger/TrigValidation/TrigUpgradeTest/share/runMenuTest.py b/Trigger/TrigValidation/TrigUpgradeTest/share/runMenuTest.py index a3e1c38e49794b2b83443caa8484418bca91229d..520d8cb58cc78ecab3c05f23c0cc7540d36c6c8d 100644 --- a/Trigger/TrigValidation/TrigUpgradeTest/share/runMenuTest.py +++ b/Trigger/TrigValidation/TrigUpgradeTest/share/runMenuTest.py @@ -5,23 +5,23 @@ # import flags include("TrigUpgradeTest/testHLT_MT.py") +from AthenaCommon.Constants import VERBOSE,INFO,DEBUG from TriggerJobOpts.TriggerFlags import TriggerFlags TriggerFlags.triggerMenuSetup = "LS2_v1" from TriggerMenuMT.HLTMenuConfig.Menu.GenerateMenuMT import GenerateMenuMT -g = GenerateMenuMT() +menu = GenerateMenuMT(DEBUG) # set some flags -g.doEgammaChains=True +menu.doEgammaChains = True +menu.doJetChains = False +menu.doMuonChains = False +menu.doCombinedChains = False -g.generateMT() - -#allChainConfigs = g.getChainsFromMenu() -#EnabledChainNamesToCTP = dict([ (c[0], c[1]) for c in allChainConfigs]) -#topSequence.L1DecoderTest.ChainToCTPMapping = EnabledChainNamesToCTP - +# generate the Chains from the Menu Dictionary +allChainConfigs = menu.generateMT() ########################################## diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/GenerateMenuMT.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/GenerateMenuMT.py index e0acb90930cac7017fffaded7ed530a7a92e887b..93b72656577a3da73707680c16429f55bc85c1f9 100755 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/GenerateMenuMT.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/GenerateMenuMT.py @@ -13,6 +13,7 @@ AlgScheduler.ShowDataFlow( True ) from AthenaCommon.CFElements import parOR, seqAND, stepSeq from AthenaCommon.AlgSequence import AlgSequence, AthSequencer +from AthenaCommon.Constants import VERBOSE,INFO,DEBUG from TriggerMenuMT.HLTMenuConfig.Menu.TriggerConfigHLT import TriggerConfigHLT from TriggerMenuMT.HLTMenuConfig.Menu.HLTCFConfig import * @@ -28,12 +29,14 @@ import os, traceback, operator, commands, time from AthenaCommon.Logging import logging log = logging.getLogger( 'TriggerMenuMT.HLTMenuConfig.Menu.GenerateMenuMT' ) + _func_to_modify_the_menu = None _func_to_modify_signatures = None class GenerateMenuMT: - def __init__(self): + def __init__(self, logLevel=DEBUG): + log.setLevel(logLevel) self.triggerConfigHLT = None self.chains = [] self.chainDefs = [] @@ -253,4 +256,5 @@ class GenerateMenuMT: print step makeHLTTree(finalListOfChainConfigs) + return finalListOfChainConfigs diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/HLTCFConfig.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/HLTCFConfig.py index c93b3db116deb2c27eaa012a0e020cb67b676b98..63a50bfe2a16ad2874af3a2fed67d720dc506b9d 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/HLTCFConfig.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/HLTCFConfig.py @@ -107,43 +107,50 @@ def createCFTree(CFseq): def makeHLTTree(HLTChains): """ creates the full HLT tree""" - # TopHLTRootSeq = seqAND("TopHLTRoot") # Root - # main HLT top sequence - hltTop = seqOR("hltTop") + + # lock flags + from AthenaConfiguration.AllConfigFlags import ConfigFlags + ConfigFlags.lock() + + # get totpSequnece + from AthenaCommon.AlgSequence import AlgSequence + topSequence = AlgSequence() #add the L1Upcacking -# TopHLTRootSeq += L1UnpackingSeq + # TopHLTRootSeq += L1UnpackingSeq + + # connect to L1Decoder + l1decoder = [ d for d in topSequence.getChildren() if d.getType() == "L1Decoder" ] + if len(l1decoder) != 1 : + raise RuntimeError(" Can't find 1 instance of L1Decoder in topSequence, instead found this in topSequence "+str(topSequence.getChildren()) ) + + + # set CTP chains before creating the full tree (and the monitor) + EnabledChainNamesToCTP = dict([ (c.name, c.seed) for c in HLTChains]) + l1decoder[0].ChainToCTPMapping = EnabledChainNamesToCTP + # main HLT top sequence + hltTop = seqOR("hltTop") + # add the HLT steps Node steps = seqAND("HLTAllSteps") hltTop += steps # make CF tree finalDecisions = decisionTree_From_Chains(steps, HLTChains) - EnabledChainNames = [c.name for c in HLTChains] - + # make Summary flatDecisions=[] for step in finalDecisions: flatDecisions.extend (step) summary= makeSummary("TriggerSummaryFinal", flatDecisions) #from TrigOutputHandling.TrigOutputHandlingConf import HLTEDMCreator - #edmCreator = HLTEDMCreator() - + #edmCreator = HLTEDMCreator() #edmCreator.TrigCompositeContainer = flatDecisions #summary.OutputTools= [ edmCreator ] hltTop += summary - from AthenaCommon.AlgSequence import AlgSequence - topSequence = AlgSequence() - + # add some more monitor from TriggerJobOpts.TriggerConfig import collectHypos, triggerMonitoringCfg, triggerSummaryCfg - from AthenaConfiguration.AllConfigFlags import ConfigFlags - ConfigFlags.lock() - - l1decoder = [ d for d in topSequence.getChildren() if d.getType() == "L1Decoder" ] - if len(l1decoder) != 1 : - raise RuntimeError(" Can't find 1 instance of L1Decoder in topSequence, instead found this in topSequence "+str(topSequence.getChildren()) ) - hypos = collectHypos(steps) summaryAcc, summaryAlg = triggerSummaryCfg( ConfigFlags, hypos ) hltTop += summaryAlg