From 0fb6d62ff7a8510b7f4eb9f7658e84049efbeafa Mon Sep 17 00:00:00 2001 From: Tomasz Bold <tomasz.bold@gmail.com> Date: Tue, 11 Dec 2018 21:40:44 +0100 Subject: [PATCH] Enable L1 menu info decoding for MET --- .../TrigSteer/L1Decoder/src/METRoIsUnpackingTool.cxx | 11 +++++++++-- .../TrigSteer/L1Decoder/src/RoIsUnpackingToolBase.cxx | 3 +++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/Trigger/TrigSteer/L1Decoder/src/METRoIsUnpackingTool.cxx b/Trigger/TrigSteer/L1Decoder/src/METRoIsUnpackingTool.cxx index 774c055df2e..27152f7cf24 100644 --- a/Trigger/TrigSteer/L1Decoder/src/METRoIsUnpackingTool.cxx +++ b/Trigger/TrigSteer/L1Decoder/src/METRoIsUnpackingTool.cxx @@ -4,6 +4,7 @@ #include "TrigConfL1Data/ThresholdConfig.h" #include "TrigT1Result/JetEnergyResult.h" #include "TrigT1Result/RoIBResult.h" +#include "TrigConfL1Data/CTPConfig.h" #include "METRoIsUnpackingTool.h" METRoIsUnpackingTool::METRoIsUnpackingTool( const std::string& type, @@ -26,8 +27,14 @@ StatusCode METRoIsUnpackingTool::initialize() return StatusCode::SUCCESS; } -StatusCode METRoIsUnpackingTool::updateConfiguration( const IRoIsUnpackingTool::SeedingMap& ) { - using namespace TrigConf; +StatusCode METRoIsUnpackingTool::updateConfiguration( const IRoIsUnpackingTool::SeedingMap& seeding ) { + using namespace TrigConf; + ATH_CHECK( decodeMapping( [](const TriggerThreshold* th){ return L1DataDef::TE == th->ttype() or L1DataDef::XE == th->ttype() or L1DataDef::XS == th->ttype(); }, + m_configSvc->ctpConfig()->menu().itemVector(), + seeding ) ); + + + const ThresholdConfig* thresholdConfig = m_configSvc->thresholdConfig(); std::vector<const TriggerThreshold*> filtered; { diff --git a/Trigger/TrigSteer/L1Decoder/src/RoIsUnpackingToolBase.cxx b/Trigger/TrigSteer/L1Decoder/src/RoIsUnpackingToolBase.cxx index 41706f9b89e..befa8363890 100644 --- a/Trigger/TrigSteer/L1Decoder/src/RoIsUnpackingToolBase.cxx +++ b/Trigger/TrigSteer/L1Decoder/src/RoIsUnpackingToolBase.cxx @@ -30,13 +30,16 @@ StatusCode RoIsUnpackingToolBase::decodeMapping( std::function< bool(const TrigC auto itemsIterator = l1Items.get<TrigConf::tag_name_hash>().find(itemName); if ( itemsIterator != l1Items.get<TrigConf::tag_name_hash>().end() ) { + const TrigConf::TriggerItem* item = *itemsIterator; const TrigConf::TriggerItemNode* node = item->topNode(); std::vector<TrigConf::TriggerThreshold*> itemThresholds; node->getAllThresholds(itemThresholds); + ATH_MSG_DEBUG( "Item " << item->name() << " with thresholds " << itemThresholds.size() ); for ( const TrigConf::TriggerThreshold* th: itemThresholds ) { if ( filter(th) ) { m_thresholdToChainMapping[HLT::Identifier(th->name())].push_back( HLT::Identifier(chainName) ); + ATH_MSG_DEBUG( "Associating " << chainName << " with threshold " << th->name() ); } } } else { -- GitLab