diff --git a/Trigger/TrigAlgorithms/TrigCaloRec/src/HLTCaloCellMaker.cxx b/Trigger/TrigAlgorithms/TrigCaloRec/src/HLTCaloCellMaker.cxx index c91155fe022aac04f6d19dbdd13b18d718977f67..e9dcff01f753e7d2097cb8af9559730c17c62f42 100644 --- a/Trigger/TrigAlgorithms/TrigCaloRec/src/HLTCaloCellMaker.cxx +++ b/Trigger/TrigAlgorithms/TrigCaloRec/src/HLTCaloCellMaker.cxx @@ -37,7 +37,7 @@ HLTCaloCellMaker::~HLTCaloCellMaker() StatusCode HLTCaloCellMaker::initialize() { ATH_CHECK( m_roiCollectionKey.initialize() ); - if ( m_roiMode ) + if ( m_roiMode ) ATH_CHECK( m_cellContainerKey.initialize() ); else ATH_CHECK( m_cellContainerVKey.initialize() ); @@ -48,9 +48,13 @@ StatusCode HLTCaloCellMaker::initialize() { StatusCode HLTCaloCellMaker::execute( const EventContext& context ) const { - auto roisHandle = SG::makeHandle( m_roiCollectionKey, context ); + if ( not roisHandle.isValid() ) { + ATH_MSG_ERROR("Cell maker did not get a valid RoIs collection"); + return StatusCode::FAILURE; + } const TrigRoiDescriptorCollection* roiCollection = roisHandle.cptr(); + ATH_MSG_DEBUG("Operating on " << roiCollection->size() <<"RoI(s)"); // datahandle if ( m_roiMode ) { diff --git a/Trigger/TrigAlgorithms/TrigT2CaloCommon/python/CaloDef.py b/Trigger/TrigAlgorithms/TrigT2CaloCommon/python/CaloDef.py index 3642df254d12f13ec673976ac7b56b32c6d94b82..c6f89f4eccecb42e1772acde1cc8a599fead0230 100644 --- a/Trigger/TrigAlgorithms/TrigT2CaloCommon/python/CaloDef.py +++ b/Trigger/TrigAlgorithms/TrigT2CaloCommon/python/CaloDef.py @@ -1,4 +1,4 @@ -from AthenaCommon.Constants import ERROR +from AthenaCommon.Constants import ERROR,DEBUG from AthenaCommon.CFElements import seqAND, parOR from ViewAlgs.ViewAlgsConf import EventViewCreatorAlgorithm @@ -37,7 +37,7 @@ def _algoHLTTopoCluster(inputEDM="CellsClusters", OutputLevel=ERROR, algSuffix=" def _algoHLTTopoClusterLC(inputEDM="CellsClusters", OutputLevel=ERROR, algSuffix="") : from TrigCaloRec.TrigCaloRecConfig import TrigCaloClusterMakerMT_topo algo = TrigCaloClusterMakerMT_topo(name="TrigCaloClusterMakerMT_topo"+algSuffix, doMoments=True, doLC=True, cells=inputEDM) - algo.CaloClusters="caloclusters" + algo.CaloClusters="HLT_TopoCaloClustersLC" algo.OutputLevel=OutputLevel return algo @@ -104,26 +104,27 @@ def HLTCellMaker(RoIs='FSJETRoI', outputName="CaloCells", algSuffix=""): return cellMakerAlgo def HLTFSCellMakerRecoSequence(RoIs='FSJETRoI'): - cellMake = HLTCellMaker(RoIs, outputName="CaloCellsFS", algSuffix="FS") - RecoSequence = parOR("ClusterRecoSequenceFS", [cellMake]) - return (RecoSequence, cellMake.CellsName) + cellMaker = HLTCellMaker(RoIs, outputName="CaloCellsFS", algSuffix="FS") + RecoSequence = parOR("ClusterRecoSequenceFS", [cellMaker]) + return (RecoSequence, cellMaker.CellsName) def HLTFSTopoRecoSequence(RoIs): - cellMake = HLTCellMaker(RoIs, outputName="CaloCellsFS", algSuffix="FS") - topoClusterMaker = _algoHLTTopoCluster(inputEDM = cellMake.CellsName, algSuffix="FS") - RecoSequence = parOR("TopoClusterRecoSequenceFS", [cellMake, topoClusterMaker]) + cellMaker = HLTCellMaker(RoIs, outputName="CaloCellsFS", algSuffix="FS") + topoClusterMaker = _algoHLTTopoCluster(inputEDM = cellMaker.CellsName, algSuffix="FS") + RecoSequence = parOR("TopoClusterRecoSequenceFS", [cellMaker, topoClusterMaker]) return (RecoSequence, topoClusterMaker.CaloClusters) def HLTRoITopoRecoSequence(RoIs): - cellMake = HLTCellMaker(RoIs, algSuffix="RoI") - topoClusterMaker = _algoHLTTopoCluster(inputEDM = cellMake.CellsName, algSuffix="RoI") - RecoSequence = parOR("TopoClusterRecoSequenceRoI", [cellMake, topoClusterMaker]) + cellMaker = HLTCellMaker(RoIs, algSuffix="RoI") + topoClusterMaker = _algoHLTTopoCluster(inputEDM = cellMaker.CellsName, algSuffix="RoI") + RecoSequence = parOR("RoITopoClusterRecoSequence", [cellMaker, topoClusterMaker]) return (RecoSequence, topoClusterMaker.CaloClusters) def HLTLCTopoRecoSequence(RoIs='InViewRoIs'): - cellMake = HLTCellMaker(RoIs, outputName="CaloCellsLC", algSuffix="LC") - topoClusterMaker = _algoHLTTopoClusterLC(inputEDM = cellMake.CellsName, algSuffix="LC") - RecoSequence = parOR("LCTopoClusterRecoSequenceFS",[cellMake,topoClusterMaker]) + cellMaker = HLTCellMaker(RoIs, outputName="CaloCellsLC", algSuffix="LC") + cellMaker.OutputLevel=DEBUG + topoClusterMaker = _algoHLTTopoClusterLC(inputEDM = cellMaker.CellsName, algSuffix="LC") + RecoSequence = parOR("TopoClusterRecoSequenceLC",[cellMaker,topoClusterMaker]) return (RecoSequence, topoClusterMaker.CaloClusters) diff --git a/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTauCaloRoiUpdaterMT.h b/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTauCaloRoiUpdaterMT.h index 89eb202b719a3a393a939b3f3a57d7715da0edab..66918c224b0f7d166db2457383c0c0febb769d62 100644 --- a/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTauCaloRoiUpdaterMT.h +++ b/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTauCaloRoiUpdaterMT.h @@ -36,8 +36,8 @@ class TrigTauCaloRoiUpdaterMT : public AthAlgorithm { //SG::ReadHandleKey< xAOD::JetContainer > m_jetInputKey {this,"JetInputKey","TrigJetRec","Input Jet Collection Key, retrieved from reconstructed jets"}; SG::ReadHandleKey< TrigRoiDescriptorCollection > m_roIInputKey {this,"RoIInputKey","Undefined",""}; - SG::ReadHandleKey< xAOD::CaloClusterContainer > m_clustersKey { this, "calocluster_update", "caloclusters", "caloclusters in view" }; - SG::WriteHandleKey< TrigRoiDescriptorCollection > m_roIOutputKey {this,"RoIOutputKey","EMViewRoIs","Output RoI Collection Key"}; + SG::ReadHandleKey< xAOD::CaloClusterContainer > m_clustersKey { this, "CaloClustersKey", "Undefined", "caloclusters in view" }; + SG::WriteHandleKey< TrigRoiDescriptorCollection > m_roIOutputKey {this,"RoIOutputKey","TauViewRoIs","Output RoI Collection Key"}; }; diff --git a/Trigger/TrigValidation/TrigUpgradeTest/share/runMenuTest.ref b/Trigger/TrigValidation/TrigUpgradeTest/share/runMenuTest.ref index 87eb4f6220f091849621687d591775aa7a3d4439..1f2cf74e81d8e1b1dee8fab437522788047e9cea 100644 --- a/Trigger/TrigValidation/TrigUpgradeTest/share/runMenuTest.ref +++ b/Trigger/TrigValidation/TrigUpgradeTest/share/runMenuTest.ref @@ -12,11 +12,11 @@ TrigSignatureMoniMT INFO HLT_5j70_0eta240_L1J20 d TrigSignatureMoniMT INFO HLT_e3_etcut1step_L1EM3 20 20 18 0 0 0 0 18 TrigSignatureMoniMT INFO HLT_e3_etcut1step_L1EM3 decisions 54 0 0 0 0 TrigSignatureMoniMT INFO HLT_e3_etcut_L1EM3 20 20 18 17 0 0 0 17 -TrigSignatureMoniMT INFO HLT_e3_etcut_L1EM3 decisions 54 342 0 0 0 +TrigSignatureMoniMT INFO HLT_e3_etcut_L1EM3 decisions 54 343 0 0 0 TrigSignatureMoniMT INFO HLT_e5_etcut_L1EM3 20 20 17 16 0 0 0 16 -TrigSignatureMoniMT INFO HLT_e5_etcut_L1EM3 decisions 50 329 0 0 0 +TrigSignatureMoniMT INFO HLT_e5_etcut_L1EM3 decisions 50 330 0 0 0 TrigSignatureMoniMT INFO HLT_e7_etcut_L1EM3 20 20 15 14 0 0 0 14 -TrigSignatureMoniMT INFO HLT_e7_etcut_L1EM3 decisions 36 264 0 0 0 +TrigSignatureMoniMT INFO HLT_e7_etcut_L1EM3 decisions 36 265 0 0 0 TrigSignatureMoniMT INFO HLT_g5_etcut_L1EM3 20 20 17 17 0 0 0 17 TrigSignatureMoniMT INFO HLT_g5_etcut_L1EM3 decisions 50 50 0 0 0 TrigSignatureMoniMT INFO HLT_j0_vbenfSEP30etSEP34mass35SEP50fbet_L1J2020 20 0 0 0 0 0 0 @@ -45,6 +45,10 @@ TrigSignatureMoniMT INFO HLT_mu6fast_L1MU6 TrigSignatureMoniMT INFO HLT_mu6fast_L1MU6 decisions 3 0 0 0 0 TrigSignatureMoniMT INFO HLT_mu6noL1_L1MU6 20 20 4 0 0 0 0 0 TrigSignatureMoniMT INFO HLT_mu6noL1_L1MU6 decisions 5 0 0 0 0 +TrigSignatureMoniMT INFO HLT_tau0_perf_ptonly_L1TAU12 20 20 6 6 0 0 0 6 +TrigSignatureMoniMT INFO HLT_tau0_perf_ptonly_L1TAU12 decisions 6 6 0 0 0 +TrigSignatureMoniMT INFO HLT_tau25_medium1_tracktwo_L1TAU12IM20 20 6 6 0 0 0 6 +TrigSignatureMoniMT INFO HLT_tau25_medium1_tracktwo_L1TAU12IM decisions 6 6 0 0 0 TrigSignatureMoniMT INFO HLT_xe30_cell_L1XE10 20 20 12 0 0 0 0 12 TrigSignatureMoniMT INFO HLT_xe30_cell_L1XE10 decisions 12 0 0 0 0 TrigSignatureMoniMT INFO HLT_xe30_tcpufit_L1XE10 20 20 3 0 0 0 0 3 diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/LS2_v1.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/LS2_v1.py index 6cf942c9e463280b8d4c0880ac3230e047bfba63..fa4c90950f44c20e498a8ac49bb0727dd41d274c 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/LS2_v1.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/LS2_v1.py @@ -27,7 +27,7 @@ def setupMenu(): MultiJetGroup = ['RATE:MultiJet', 'BW:Jet'] SingleBjetGroup = ['RATE:SingleBJet', 'BW:BJet'] #MultiBjetGroup = ['RATE:MultiBJet', 'BW:BJet'] - #SingleTauGroup = ['RATE:SingleTau', 'BW:Tau'] + SingleTauGroup = ['RATE:SingleTau', 'BW:Tau'] #MultiTauGroup = ['RATE:MultiTau', 'BW:Tau'] TriggerFlags.Slices_all_setOff() @@ -92,8 +92,8 @@ def setupMenu(): ] TriggerFlags.TauSlice.signatures = [ - #ChainProp(name="HLT_tau0_perf_ptonly_L1TAU12", groups=SingleTauGroup), - #ChainProp(name="HLT_tau25_medium1_tracktwo_L1TAU12IM", groups=SingleTauGroup), + ChainProp(name="HLT_tau0_perf_ptonly_L1TAU12", groups=SingleTauGroup), + ChainProp(name="HLT_tau25_medium1_tracktwo_L1TAU12IM", groups=SingleTauGroup), ] TriggerFlags.BphysicsSlice.signatures = [ ] TriggerFlags.CombinedSlice.signatures = [] diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauRecoSequences.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauRecoSequences.py index c60356d8c7111278e2961790aebc99c96bf52cc2..d569d352df363d202221c92dabf7f5183af56eb1 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauRecoSequences.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Tau/TauRecoSequences.py @@ -7,43 +7,47 @@ from ViewAlgs.ViewAlgsConf import EventViewCreatorAlgorithm from TrigT2CaloCommon.CaloDef import HLTLCTopoRecoSequence from TrigEDMConfig.TriggerEDMRun3 import recordable -def _algoTauRoiUpdater(inputRoIs="EMRoIs"): + + +def _algoTauRoiUpdater(inputRoIs, clusters): from TrigTauHypo.TrigTauHypoConf import TrigTauCaloRoiUpdaterMT - algo = TrigTauCaloRoiUpdaterMT("CaloRoiUpdater") - algo.RoIInputKey = "TAUCaloRoIs" + algo = TrigTauCaloRoiUpdaterMT("TauCaloRoiUpdater") + algo.RoIInputKey = inputRoIs algo.RoIOutputKey = "RoiForTau" + algo.CaloClustersKey = clusters return algo -def _algoTauCaloOnly(inputRoIs="EMRoIs"): +def _algoTauCaloOnly(inputRoIs, clusters): from TrigTauRec.TrigTauRecConfigMT import TrigTauRecMerged_TauCaloOnly - roiUpdateAlgo = _algoTauRoiUpdater(inputRoIs) + roiUpdateAlgo = _algoTauRoiUpdater(inputRoIs, clusters) algo = TrigTauRecMerged_TauCaloOnly() algo.RoIInputKey = inputRoIs + algo.clustersKey = clusters algo.L1RoIKey = roiUpdateAlgo.RoIInputKey - algo.clustersKey = "caloclusters" algo.TrigTauRecOutputKey = recordable("HLT_TrigTauRecMerged") return algo -def tauCaloRecoSequence(InViewRoIs): +def tauCaloRecoSequence(InViewRoIs, SeqName): # lc sequence - (lcTopoInViewSequence, sequenceOut) = HLTLCTopoRecoSequence(InViewRoIs) - tauCaloRoiUpdaterAlg = _algoTauRoiUpdater(inputRoIs = InViewRoIs) - tauCaloOnlyAlg = _algoTauCaloOnly(inputRoIs = InViewRoIs) - RecoSequence = parOR( 'tauCaloInViewSequence', [lcTopoInViewSequence,tauCaloRoiUpdaterAlg,tauCaloOnlyAlg] ) + (lcTopoInViewSequence, lcCaloSequenceOut) = HLTLCTopoRecoSequence(InViewRoIs) + tauCaloRoiUpdaterAlg = _algoTauRoiUpdater(inputRoIs = InViewRoIs, clusters = lcCaloSequenceOut) + tauCaloOnlyAlg = _algoTauCaloOnly(inputRoIs = InViewRoIs, clusters = lcCaloSequenceOut) + RecoSequence = parOR( SeqName, [lcTopoInViewSequence, tauCaloRoiUpdaterAlg, tauCaloOnlyAlg] ) return (RecoSequence, tauCaloOnlyAlg.TrigTauRecOutputKey) def tauCaloSequence(ConfigFlags): """ Creates L2 Fast Calo sequence for Taus""" # EV creator InViewRoIs="TAUCaloRoIs" + RecoSequenceName="tauCaloInViewSequence" + tauCaloViewsMaker = EventViewCreatorAlgorithm( "tauCaloViewsMaker") tauCaloViewsMaker.ViewFallThrough = True tauCaloViewsMaker.RoIsLink = "initialRoI" tauCaloViewsMaker.InViewRoIs = InViewRoIs tauCaloViewsMaker.Views = "TAUCaloViews" - tauCaloViewsMaker.ViewNodeName = "tauCaloInViewSequence" - - (tauCaloInViewSequence, sequenceOut) = tauCaloRecoSequence(InViewRoIs) + tauCaloViewsMaker.ViewNodeName = RecoSequenceName + (tauCaloInViewSequence, sequenceOut) = tauCaloRecoSequence(InViewRoIs, RecoSequenceName) tauCaloSequence = seqAND("tauCaloSequence", [tauCaloViewsMaker, tauCaloInViewSequence ]) return (tauCaloSequence, tauCaloViewsMaker, sequenceOut)