From 8e7b9e001a6de395af6b82be6df063b815b7df00 Mon Sep 17 00:00:00 2001
From: Tomasz Bold <tomasz.bold@gmail.com>
Date: Mon, 19 Mar 2018 18:39:07 +0100
Subject: [PATCH] Debugged alg

Former-commit-id: 8ba21d2be3788f75114900a0750c3100f6dc9625
---
 .../TrigSteerMonitor/src/TrigSignatureMoniMT.cxx | 16 +++++++---------
 .../TrigSteerMonitor/src/TrigSignatureMoniMT.h   |  2 +-
 .../TrigUpgradeTest/share/egamma.withViews.py    |  7 ++++---
 3 files changed, 12 insertions(+), 13 deletions(-)

diff --git a/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigSignatureMoniMT.cxx b/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigSignatureMoniMT.cxx
index 77e7b17d16d..07d57aaa70c 100644
--- a/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigSignatureMoniMT.cxx
+++ b/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigSignatureMoniMT.cxx
@@ -72,8 +72,10 @@ StatusCode TrigSignatureMoniMT::fillChains(const TrigCompositeUtils::DecisionIDC
     auto id2bin = m_chainIDToBinMap.find( id );
     if ( id2bin == m_chainIDToBinMap.end() ) {
       ATH_MSG_WARNING( "HLT chain " << HLT::Identifier(id) << " not configured to be monitred" );
+    } else {
+      ATH_MSG_DEBUG( "Passed " <<  id2bin->second << " " << row );
+      m_outputHistogram->Fill( id2bin->second, double(row) );
     }
-    m_outputHistogram->Fill( id2bin->second, double(row) );
   }
   return StatusCode::SUCCESS;
 }
@@ -86,8 +88,9 @@ StatusCode TrigSignatureMoniMT::execute()  {
   CHECK( l1Decisions->at( 1 )->name() == "unprescaled" ); // see L1Decoder implementation
 
   auto fillL1 = [&]( int index ) -> StatusCode {    
-    TrigCompositeUtils::DecisionIDContainer ids;
-    TrigCompositeUtils::passingIDs( l1Decisions->at( index ), ids );
+    TrigCompositeUtils::DecisionIDContainer ids;    
+    TrigCompositeUtils::decisionIDs( l1Decisions->at( index ), ids );
+    ATH_MSG_DEBUG( "L1 " << index << " N positive decisions " << ids.size()  );
     CHECK( fillChains( ids, index ) );
     if ( not ids.empty() )
       m_outputHistogram->Fill( 0., double( index+1 ) );
@@ -103,6 +106,7 @@ StatusCode TrigSignatureMoniMT::execute()  {
   for ( auto d: m_finalDecisionsKey ) {
     auto decisions = SG::makeHandle( d );
     if ( decisions.isValid() )  { // may be invalid and that is perfectly correct (early rejection
+      ATH_MSG_DEBUG( "Decision for " << decisions->size() << " objects available in " << d.key() );
       // we need one entry per chain only and the "sum" is used for that
       TrigCompositeUtils::DecisionIDContainer sum;
       
@@ -170,11 +174,5 @@ StatusCode TrigSignatureMoniMT::initHist() {
     y->SetBinLabel(bin, ( "Step " + std::to_string( bin - 2 ) ).c_str() );
   }
  
-  for ( int xbin = 1; xbin <= x->GetNbins(); ++xbin )  {
-    for ( int ybin = 1; ybin <= y->GetNbins(); ++ybin )  {
-      m_outputHistogram->SetBinContent( xbin, ybin, -1 );
-    }
-  }
-
   return StatusCode::SUCCESS;
 }
diff --git a/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigSignatureMoniMT.h b/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigSignatureMoniMT.h
index f2307d9db5f..8fb9341f48d 100644
--- a/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigSignatureMoniMT.h
+++ b/Trigger/TrigMonitoring/TrigSteerMonitor/src/TrigSignatureMoniMT.h
@@ -33,7 +33,7 @@ class TrigSignatureMoniMT : public ::AthAlgorithm
  
  private: 
   TrigSignatureMoniMT();
-  SG::ReadHandleKey<TrigCompositeUtils::DecisionContainer> m_l1DecisionsKey{ this, "L1Decisions", "HLTChains", "Chains activated after the L1" };
+  SG::ReadHandleKey<TrigCompositeUtils::DecisionContainer> m_l1DecisionsKey{ this, "L1Decisions", "HLTChainsResult", "Chains activated after the L1" };
 
   SG::ReadHandleKeyArray<TrigCompositeUtils::DecisionContainer> m_finalDecisionsKey{ this, "FinalDecisions", {}, "Final stage of all decisions" };
   typedef std::map<std::string, std::vector<std::string> > StringToStringVectorMap;
diff --git a/Trigger/TrigValidation/TrigUpgradeTest/share/egamma.withViews.py b/Trigger/TrigValidation/TrigUpgradeTest/share/egamma.withViews.py
index 54f579daf72..fe73b07b1cd 100644
--- a/Trigger/TrigValidation/TrigUpgradeTest/share/egamma.withViews.py
+++ b/Trigger/TrigValidation/TrigUpgradeTest/share/egamma.withViews.py
@@ -210,10 +210,11 @@ summary.OutputLevel = DEBUG
 
 steps = seqAND("HLTSteps", [ step0, step1, summary ]  )
 
-mon = TriggerSummaryAlg( "TriggerMonitoringAlg" )
-mon.InputDecision = "HLTChains"
+from TrigSteerMonitor.TrigSteerMonitorConf import TrigSignatureMoniMT
+mon = TrigSignatureMoniMT()
 mon.FinalDecisions = [ "ElectronL2Decisions", "MuonL2Decisions", "WhateverElse" ]
-mon.HLTSummary = "MonitoringSummary"
+from TrigUpgradeTest.TestUtils import MenuTest
+mon.ChainsList = [ x.split(":")[1] for x in  MenuTest.CTPToChainMapping ]
 mon.OutputLevel = DEBUG
 
 hltTop = seqOR( "hltTop", [ steps, mon] )
-- 
GitLab