From 11b4ed033abaf36542f9ce770f137d4e9f732cb0 Mon Sep 17 00:00:00 2001
From: Frank Winklmeier <frank.winklmeier@cern.ch>
Date: Fri, 18 Jan 2019 11:06:54 +0100
Subject: [PATCH] Migrate algs to new Monitored interface

Implement the necessary changes for the new Monitored interface
(MR !20403).
---
 .../TrigCaloRec/src/TrigCaloCellMakerMT.cxx   | 18 ++--
 .../src/TrigCaloClusterMakerMT.cxx            | 31 +++----
 .../TrigCaloRec/src/TrigCaloTowerMakerMT.cxx  | 15 ++-
 .../TrigEFMissingET/src/EFMissingETAlgMT.cxx  | 43 +++++----
 .../src/EFMissingETFromCellsMT.cxx            | 12 +--
 .../TrigL2MuonSA/src/MuFastSteering.cxx       | 84 ++++++++---------
 .../src/TrigMuonEFTrackIsolationAlgMT.cxx     | 23 +++--
 .../src/TrigCaloDataAccessSvc.cxx             | 26 +++---
 .../TrigTauRec/src/TrigTauRecMergedMT.cxx     | 91 +++++++++----------
 .../TrigmuComb/src/muCombMT.cxx               | 47 +++++-----
 .../TrigAlgorithms/TrigmuIso/src/muIso.cxx    | 25 +++--
 .../TrigBjetHypo/src/TrigBjetHypoTool.cxx     |  6 +-
 .../src/TrigL2CaloHypoToolInc.cxx             | 33 ++++---
 .../src/TrigL2ElectronFexMT.cxx               | 17 ++--
 .../src/TrigL2ElectronHypoTool.cxx            | 23 +++--
 .../src/TrigL2PhotonHypoTool.cxx              | 29 +++---
 .../src/TrigL2CaloRingerFexMT.cxx             | 23 +++--
 .../src/TrigL2CaloRingerHypoToolMT.cxx        |  2 +-
 .../TrigMuonHypo/src/TrigMufastHypoTool.cxx   | 27 +++---
 .../TrigMuonHypo/src/TrigMuisoHypoTool.cxx    |  9 +-
 .../src/TrigMuonEFCombinerHypoTool.cxx        | 17 ++--
 .../src/TrigMuonEFMSonlyHypoTool.cxx          | 17 ++--
 .../src/TrigMuonEFTrackIsolationHypoTool.cxx  |  9 +-
 .../TrigMuonHypo/src/TrigmuCombHypoTool.cxx   | 19 ++--
 .../TrigTauHypo/src/TrigTauGenericHypoMT.cxx  |  7 +-
 .../L1Decoder/src/CTPUnpackingTool.cxx        |  9 +-
 .../L1Decoder/src/EMRoIsUnpackingTool.cxx     | 11 +--
 Trigger/TrigSteer/L1Decoder/src/FakeRoI.cxx   |  7 +-
 .../L1Decoder/src/JRoIsUnpackingTool.cxx      | 11 +--
 .../L1Decoder/src/MURoIsUnpackingTool.cxx     | 11 +--
 .../L1Decoder/src/TAURoIsUnpackingTool.cxx    | 11 +--
 .../src/HLTResultMTMaker.cxx                  | 15 ++-
 32 files changed, 346 insertions(+), 382 deletions(-)
 mode change 100755 => 100644 Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloCellMakerMT.cxx
 mode change 100755 => 100644 Trigger/TrigAlgorithms/TrigTauRec/src/TrigTauRecMergedMT.cxx
 mode change 100755 => 100644 Trigger/TrigAlgorithms/TrigmuComb/src/muCombMT.cxx
 mode change 100755 => 100644 Trigger/TrigAlgorithms/TrigmuIso/src/muIso.cxx
 mode change 100755 => 100644 Trigger/TrigHypothesis/TrigBjetHypo/src/TrigBjetHypoTool.cxx
 mode change 100755 => 100644 Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigL2PhotonHypoTool.cxx
 mode change 100755 => 100644 Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMufastHypoTool.cxx
 mode change 100755 => 100644 Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMuonEFTrackIsolationHypoTool.cxx
 mode change 100755 => 100644 Trigger/TrigHypothesis/TrigTauHypo/src/TrigTauGenericHypoMT.cxx

diff --git a/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloCellMakerMT.cxx b/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloCellMakerMT.cxx
old mode 100755
new mode 100644
index f7e96d53eb0..14dff6ce953
--- a/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloCellMakerMT.cxx
+++ b/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloCellMakerMT.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 // ********************************************************************
@@ -22,7 +22,7 @@
 #include "GaudiKernel/StatusCode.h"
 #include "GaudiKernel/ListItem.h"
 //
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 #include "TrigT1Interfaces/TrigT1Interfaces_ClassDEF.h"
 #include "TrigSteeringEvent/TrigRoiDescriptor.h"
@@ -176,16 +176,14 @@ StatusCode TrigCaloCellMakerMT::finalize()
 
 StatusCode TrigCaloCellMakerMT::execute()
 {
-  using namespace Monitored;   
-
   // Monitoring initialization...
-  auto timer = MonitoredTimer::declare("TIME_execute");
-  auto time_tools = MonitoredTimer::declare("TIME_ContainerTools");
-  auto mon_CellContainerSize = MonitoredScalar::declare("CellContainerSize", 0.);
-  auto mon_roi_phi = MonitoredScalar::declare("RoIPhi", 0.);
-  auto mon_roi_eta = MonitoredScalar::declare("RoIEta", 0.);
+  auto timer = Monitored::Timer("TIME_execute");
+  auto time_tools = Monitored::Timer("TIME_ContainerTools");
+  auto mon_CellContainerSize = Monitored::Scalar("CellContainerSize", 0.);
+  auto mon_roi_phi = Monitored::Scalar("RoIPhi", 0.);
+  auto mon_roi_eta = Monitored::Scalar("RoIEta", 0.);
 
-  auto monitorIt = MonitoredScope::declare( m_monTool, timer, time_tools, mon_roi_eta,  mon_roi_phi,  mon_CellContainerSize);
+  auto monitorIt = Monitored::Group( m_monTool, timer, time_tools, mon_roi_eta,  mon_roi_phi,  mon_CellContainerSize);
 
   //  for(int id=0; id<IAlgToolEFCalo::MAXNEFCALO; id++) m_conversionError[id]=0;
   
diff --git a/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloClusterMakerMT.cxx b/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloClusterMakerMT.cxx
index 4c29f575376..092286dd8b7 100644
--- a/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloClusterMakerMT.cxx
+++ b/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloClusterMakerMT.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 // ********************************************************************
@@ -23,7 +23,7 @@
 #include "GaudiKernel/ListItem.h"
 #include "CaloInterface/ISetCaloCellContainerName.h"
 //
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 #include "TrigT1Interfaces/TrigT1Interfaces_ClassDEF.h"
 //
@@ -160,11 +160,10 @@ return StatusCode::SUCCESS;
 
 StatusCode TrigCaloClusterMakerMT::execute() 
 {
-  using namespace Monitored;   
   // Monitoring initialization...
-  auto time_tot = MonitoredTimer::declare("TIME_execute");
-  auto time_clusMaker = MonitoredTimer::declare("TIME_ClustMaker");
-  auto time_clusCorr = MonitoredTimer::declare("TIME_ClustCorr");
+  auto time_tot = Monitored::Timer("TIME_execute");
+  auto time_clusMaker = Monitored::Timer("TIME_ClustMaker");
+  auto time_clusCorr = Monitored::Timer("TIME_ClustCorr");
 
 
 
@@ -186,21 +185,21 @@ StatusCode TrigCaloClusterMakerMT::execute()
 
 
   // monitored variables 
-  auto mon_container_size = MonitoredScalar::declare("container_size", 0.);
-  auto mon_clusEt = MonitoredCollection::declare("Et",   *pCaloClusterContainer, &xAOD::CaloCluster::et );
-  auto mon_clusSignalState = MonitoredCollection::declare("signalState",   *pCaloClusterContainer, &xAOD::CaloCluster::signalState );
-  auto mon_clusSize = MonitoredCollection::declare("clusterSize",   *pCaloClusterContainer, &xAOD::CaloCluster::clusterSize );
+  auto mon_container_size = Monitored::Scalar("container_size", 0.);
+  auto mon_clusEt = Monitored::Collection("Et",   *pCaloClusterContainer, &xAOD::CaloCluster::et );
+  auto mon_clusSignalState = Monitored::Collection("signalState",   *pCaloClusterContainer, &xAOD::CaloCluster::signalState );
+  auto mon_clusSize = Monitored::Collection("clusterSize",   *pCaloClusterContainer, &xAOD::CaloCluster::clusterSize );
   std::vector<double>       clus_phi;
   std::vector<double>       clus_eta;
   std::vector<double>       N_BAD_CELLS;
   std::vector<double>       ENG_FRAC_MAX;
   std::vector<unsigned int> sizeVec; 
-  auto mon_clusPhi = MonitoredCollection::declare("Phi", clus_phi); // phi and eta are virtual methods of CaloCluster
-  auto mon_clusEta = MonitoredCollection::declare("Eta", clus_eta); 
-  auto mon_badCells = MonitoredCollection::declare("N_BAD_CELLS",N_BAD_CELLS );
-  auto mon_engFrac = MonitoredCollection::declare("ENG_FRAC_MAX",N_BAD_CELLS );
-  auto mon_size = MonitoredCollection::declare("size",sizeVec );
-  auto monitorIt = MonitoredScope::declare( m_monTool, time_clusMaker,  time_clusCorr, mon_container_size, mon_clusEt, 
+  auto mon_clusPhi = Monitored::Collection("Phi", clus_phi); // phi and eta are virtual methods of CaloCluster
+  auto mon_clusEta = Monitored::Collection("Eta", clus_eta);
+  auto mon_badCells = Monitored::Collection("N_BAD_CELLS",N_BAD_CELLS );
+  auto mon_engFrac = Monitored::Collection("ENG_FRAC_MAX",N_BAD_CELLS );
+  auto mon_size = Monitored::Collection("size",sizeVec );
+  auto monitorIt = Monitored::Group( m_monTool, time_clusMaker,  time_clusCorr, mon_container_size, mon_clusEt,
 					    mon_clusPhi, mon_clusEta, mon_clusSignalState, mon_clusSize, 
 					    mon_badCells, mon_engFrac, mon_size);	    
 
diff --git a/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloTowerMakerMT.cxx b/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloTowerMakerMT.cxx
index 1ab4683edc6..8a2397e938c 100644
--- a/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloTowerMakerMT.cxx
+++ b/Trigger/TrigAlgorithms/TrigCaloRec/src/TrigCaloTowerMakerMT.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 // ********************************************************************
@@ -21,7 +21,7 @@
 #include "GaudiKernel/StatusCode.h"
 #include "GaudiKernel/ListItem.h"
 //
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 #include "TrigT1Interfaces/TrigT1Interfaces_ClassDEF.h"
 #include "TrigSteeringEvent/TrigRoiDescriptor.h"
 //
@@ -170,16 +170,13 @@ StatusCode TrigCaloTowerMakerMT::finalize()
 
 
 StatusCode TrigCaloTowerMakerMT::execute()
-
 {
-  using namespace Monitored;   
-    
   // Monitoring initialization...
-  auto timer = MonitoredTimer::declare("TIME_execute");
-  auto time_tools = MonitoredTimer::declare("TIME_tools");
-  auto mon_towerContainerSize = MonitoredScalar::declare("towerContainerSize", 0.);
+  auto timer = Monitored::Timer("TIME_execute");
+  auto time_tools = Monitored::Timer("TIME_tools");
+  auto mon_towerContainerSize = Monitored::Scalar("towerContainerSize", 0.);
 
-  auto monitorIt = MonitoredScope::declare( m_monTool, timer, time_tools, mon_towerContainerSize);
+  auto monitorIt = Monitored::Group( m_monTool, timer, time_tools, mon_towerContainerSize);
 
     ATH_MSG_DEBUG ( "in execute()" );
     
diff --git a/Trigger/TrigAlgorithms/TrigEFMissingET/src/EFMissingETAlgMT.cxx b/Trigger/TrigAlgorithms/TrigEFMissingET/src/EFMissingETAlgMT.cxx
index 7a59ea4262c..145c9ab7e76 100644
--- a/Trigger/TrigAlgorithms/TrigEFMissingET/src/EFMissingETAlgMT.cxx
+++ b/Trigger/TrigAlgorithms/TrigEFMissingET/src/EFMissingETAlgMT.cxx
@@ -1,10 +1,10 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 #include <cmath>
 #include "xAODTrigMissingET/TrigMissingETAuxContainer.h"
 #include "TrigEFMissingET/EFMissingETHelper.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 #include "TrigEFMissingET/EFMissingETAlgMT.h"
 
 
@@ -43,9 +43,8 @@ double EFMissingETAlgMT::toLinGeV( double x, double fallback , double epsilon )
 
 StatusCode EFMissingETAlgMT::execute( const EventContext& context ) const {  
   ATH_MSG_DEBUG ( "Executing " << name() << "..." );
-  using namespace Monitored;
-  auto totalTimer = MonitoredTimer::declare( "TIME_Total" );
-  auto loopTimer = MonitoredTimer::declare( "TIME_Loop" );
+  auto totalTimer = Monitored::Timer( "TIME_Total" );
+  auto loopTimer = Monitored::Timer( "TIME_Loop" );
 
   auto metContainer = std::make_unique<xAOD::TrigMissingETContainer>();
   auto metAuxContainer = std::make_unique<xAOD::TrigMissingETAuxContainer>();
@@ -65,27 +64,27 @@ StatusCode EFMissingETAlgMT::execute( const EventContext& context ) const {
 
   ATH_CHECK( m_helperTool->executeMT(met, &metHelper) );
 
-  auto EF_MEx_log = MonitoredScalar::declare( "EF_MEx_log", toLogGeV( met->ex() ) );
-  auto EF_MEy_log = MonitoredScalar::declare( "EF_MEy_log", toLogGeV( met->ey() ) );
-  auto EF_MEz_log = MonitoredScalar::declare( "EF_MEz_log", toLogGeV( met->ez() ) );
-  auto EF_MET_log = MonitoredScalar::declare( "EF_MET_log", toLogGeV( std::hypot( met->ex(), met->ey() ) ) );
-  auto EF_ME_log    = MonitoredScalar::declare( "EF_ME_log",  toLogGeV( std::hypot( std::hypot(met->ex(), met->ey()), met->ez() ) ) );
-  auto EF_SumEt_log = MonitoredScalar::declare( "EF_SumEt_log", toLogGeV( met->sumEt() )  );
-  auto EF_SumE_log  = MonitoredScalar::declare( "EF_SumE_log",  toLogGeV( met->sumE(), -9e9 ) );
+  auto EF_MEx_log = Monitored::Scalar( "EF_MEx_log", toLogGeV( met->ex() ) );
+  auto EF_MEy_log = Monitored::Scalar( "EF_MEy_log", toLogGeV( met->ey() ) );
+  auto EF_MEz_log = Monitored::Scalar( "EF_MEz_log", toLogGeV( met->ez() ) );
+  auto EF_MET_log = Monitored::Scalar( "EF_MET_log", toLogGeV( std::hypot( met->ex(), met->ey() ) ) );
+  auto EF_ME_log    = Monitored::Scalar( "EF_ME_log",  toLogGeV( std::hypot( std::hypot(met->ex(), met->ey()), met->ez() ) ) );
+  auto EF_SumEt_log = Monitored::Scalar( "EF_SumEt_log", toLogGeV( met->sumEt() )  );
+  auto EF_SumE_log  = Monitored::Scalar( "EF_SumE_log",  toLogGeV( met->sumE(), -9e9 ) );
   
-  auto EF_MEx_lin = MonitoredScalar::declare( "EF_MEx_lin", toLinGeV( met->ex() ) );
-  auto EF_MEy_lin = MonitoredScalar::declare( "EF_MEy_lin", toLinGeV( met->ey() ) );
-  auto EF_MEz_lin = MonitoredScalar::declare( "EF_MEz_lin", toLinGeV( met->ez() ) );
-  auto EF_MET_lin = MonitoredScalar::declare( "EF_MET_lin", toLinGeV( std::hypot( met->ex(), met->ey() ) ) );			     
-  auto EF_ME_lin  = MonitoredScalar::declare( "EF_ME_lin",  toLinGeV( std::hypot( std::hypot(met->ex(), met->ey()), met->ez() ) ) );
-  auto EF_SumEt_lin =  MonitoredScalar::declare( "EF_SumEt_lin", toLinGeV( met->sumEt() ) );
-  auto EF_SumE_lin  = MonitoredScalar::declare( "EF_SumE_lin",  toLinGeV( met->sumE(), -9e9 ) );
-  auto EF_XS        = MonitoredScalar::declare( "EF_XS", toLinGeV( std::hypot( met->ex(), met->ey() ) ) / toLinGeV( met->sumEt() ) );
-  auto EF_MET_phi   = MonitoredScalar::declare( "EF_MET_phi",   std::atan2( met->ey(), met->ex() ) );
+  auto EF_MEx_lin = Monitored::Scalar( "EF_MEx_lin", toLinGeV( met->ex() ) );
+  auto EF_MEy_lin = Monitored::Scalar( "EF_MEy_lin", toLinGeV( met->ey() ) );
+  auto EF_MEz_lin = Monitored::Scalar( "EF_MEz_lin", toLinGeV( met->ez() ) );
+  auto EF_MET_lin = Monitored::Scalar( "EF_MET_lin", toLinGeV( std::hypot( met->ex(), met->ey() ) ) );
+  auto EF_ME_lin  = Monitored::Scalar( "EF_ME_lin",  toLinGeV( std::hypot( std::hypot(met->ex(), met->ey()), met->ez() ) ) );
+  auto EF_SumEt_lin =  Monitored::Scalar( "EF_SumEt_lin", toLinGeV( met->sumEt() ) );
+  auto EF_SumE_lin  = Monitored::Scalar( "EF_SumE_lin",  toLinGeV( met->sumE(), -9e9 ) );
+  auto EF_XS        = Monitored::Scalar( "EF_XS", toLinGeV( std::hypot( met->ex(), met->ey() ) ) / toLinGeV( met->sumEt() ) );
+  auto EF_MET_phi   = Monitored::Scalar( "EF_MET_phi",   std::atan2( met->ey(), met->ex() ) );
  
   ATH_MSG_INFO("Event MET: "  << std::hypot( met->ex(), met->ey() ) << " MeV");
 
-  auto monitorIt = MonitoredScope::declare( m_monTool, 
+  auto monitorIt = Monitored::Group( m_monTool,
 					    totalTimer, loopTimer,
 					    EF_MEx_log, EF_MEy_log, EF_MEz_log, EF_MET_log, EF_ME_log, EF_ME_log, EF_SumE_log,
 					    EF_MEx_lin, EF_MEy_lin, EF_MEz_lin, EF_MET_lin, EF_ME_lin, EF_SumEt_lin, EF_SumE_lin, 
diff --git a/Trigger/TrigAlgorithms/TrigEFMissingET/src/EFMissingETFromCellsMT.cxx b/Trigger/TrigAlgorithms/TrigEFMissingET/src/EFMissingETFromCellsMT.cxx
index 5a5098e5956..62838f17ef8 100644
--- a/Trigger/TrigAlgorithms/TrigEFMissingET/src/EFMissingETFromCellsMT.cxx
+++ b/Trigger/TrigAlgorithms/TrigEFMissingET/src/EFMissingETFromCellsMT.cxx
@@ -1,8 +1,8 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 // FrameWork includes
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 #include "GaudiKernel/IToolSvc.h"
 
 // TrigEFMissingET includes
@@ -33,13 +33,13 @@ StatusCode EFMissingETFromCellsMT::initialize()
 
 StatusCode EFMissingETFromCellsMT::update( xAOD::TrigMissingET */*met*/,
 					   TrigEFMissingEtHelper *metHelper ) const {
-  using namespace Monitored;
-  auto totalTimer = MonitoredTimer::declare( "TIME_Total" );  
+
+  auto totalTimer = Monitored::Timer( "TIME_Total" );
   const EventContext context{ Gaudi::Hive::currentContext() };
   auto caloCellsHandle = SG::makeHandle( m_cellsKey );
 
-  auto loopTimer = MonitoredTimer::declare( "TIME_Loop" );  
-  auto countUsedCells = MonitoredScalar::declare<unsigned>( "UsedCells", 0 );  
+  auto loopTimer = Monitored::Timer( "TIME_Loop" );
+  auto countUsedCells = Monitored::Scalar<unsigned>( "UsedCells", 0 );
 
   // now it is time to iterate over the cells
   ATH_MSG_INFO("About to loop over cells from CellMET");
diff --git a/Trigger/TrigAlgorithms/TrigL2MuonSA/src/MuFastSteering.cxx b/Trigger/TrigAlgorithms/TrigL2MuonSA/src/MuFastSteering.cxx
index fc773f9d09d..527a32046ae 100644
--- a/Trigger/TrigAlgorithms/TrigL2MuonSA/src/MuFastSteering.cxx
+++ b/Trigger/TrigAlgorithms/TrigL2MuonSA/src/MuFastSteering.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 #include <numeric>
@@ -23,7 +23,7 @@
 #include "GaudiKernel/ServiceHandle.h"
 
 #include "AthenaBaseComps/AthMsgStreamMacros.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 using namespace SG;
 // --------------------------------------------------------------------------------
@@ -275,10 +275,8 @@ StatusCode MuFastSteering::execute()
 {
   ATH_MSG_DEBUG("StatusCode MuFastSteering::execute start");
 
-  // TimerSvc
-  using namespace Monitored;
-  auto totalTimer = MonitoredTimer::declare( "TIME_Total" );
-  auto monitorIt	= MonitoredScope::declare(m_monTool, totalTimer );
+  auto totalTimer = Monitored::Timer( "TIME_Total" );
+  auto monitorIt	= Monitored::Group(m_monTool, totalTimer );
   totalTimer.start();
 
   auto ctx = getContext();
@@ -383,10 +381,8 @@ HLT::ErrorCode MuFastSteering::hltExecute(const HLT::TriggerElement* /*inputTE*/
 {
   ATH_MSG_DEBUG("hltExecute called");
 
-  // TimerSvc
-  using namespace Monitored;
-  auto totalTimer = MonitoredTimer::declare( "TIME_Total" );
-  auto monitorIt	= MonitoredScope::declare(m_monTool, totalTimer );
+  auto totalTimer = Monitored::Timer( "TIME_Total" );
+  auto monitorIt	= Monitored::Group(m_monTool, totalTimer );
   totalTimer.start();
 
   std::vector< const TrigRoiDescriptor*> roids;
@@ -570,16 +566,15 @@ StatusCode MuFastSteering::findMuonSignature(const DataVector<const TrigRoiDescr
   ATH_MSG_DEBUG("StatusCode MuFastSteering::findMuonSignature start");
   StatusCode sc = StatusCode::SUCCESS;
 
-  using namespace Monitored;
-  auto prepTimer           = MonitoredTimer::declare( "TIME_Data_Preparator" );
-  auto patternTimer        = MonitoredTimer::declare( "TIME_Pattern_Finder" );
-  auto stationFitterTimer  = MonitoredTimer::declare( "TIME_Station_Fitter" );
-  auto trackFitterTimer    = MonitoredTimer::declare( "TIME_Track_Fitter" );
-  auto trackExtraTimer     = MonitoredTimer::declare( "TIME_Track_Extrapolator" );
-  auto calibrationTimer    = MonitoredTimer::declare( "TIME_Calibration_Streamer" );
+  auto prepTimer           = Monitored::Timer( "TIME_Data_Preparator" );
+  auto patternTimer        = Monitored::Timer( "TIME_Pattern_Finder" );
+  auto stationFitterTimer  = Monitored::Timer( "TIME_Station_Fitter" );
+  auto trackFitterTimer    = Monitored::Timer( "TIME_Track_Fitter" );
+  auto trackExtraTimer     = Monitored::Timer( "TIME_Track_Extrapolator" );
+  auto calibrationTimer    = Monitored::Timer( "TIME_Calibration_Streamer" );
 
-  auto monitorIt	= MonitoredScope::declare(m_monTool, prepTimer, patternTimer, stationFitterTimer, 
-                                                  trackFitterTimer, trackExtraTimer, calibrationTimer );
+  auto monitorIt	= Monitored::Group(m_monTool, prepTimer, patternTimer, stationFitterTimer,
+                                                trackFitterTimer, trackExtraTimer, calibrationTimer );
  
   if (m_use_timer) {
     for (unsigned int i_timer=0; i_timer<m_timingTimers.size(); i_timer++) {
@@ -1665,19 +1660,18 @@ StatusCode MuFastSteering::updateMonitor(const LVL1::RecMuonRoI*
                                          const TrigL2MuonSA::MdtHits&               mdtHits,
                                          std::vector<TrigL2MuonSA::TrackPattern>&   trackPatterns )
 {
-  using namespace Monitored;
   // initialize monitored variable
-  auto inner_mdt_hits 	= MonitoredScalar::declare("InnMdtHits", -1);
-  auto middle_mdt_hits 	= MonitoredScalar::declare("MidMdtHits", -1);
-  auto outer_mdt_hits 	= MonitoredScalar::declare("OutMdtHits", -1);
-  auto invalid_rpc_roi_number = MonitoredScalar::declare("InvalidRpcRoINumber", -1);
-
-  auto efficiency 	= MonitoredScalar::declare("Efficiency", 0);
-  auto sag_inverse 	= MonitoredScalar::declare("SagInv", 9999.);
-  auto address 		= MonitoredScalar::declare("Address", 9999.);
-  auto absolute_pt 	= MonitoredScalar::declare("AbsPt", 9999.);
-  auto sagitta	 	= MonitoredScalar::declare("Sagitta", 9999.);
-  auto track_pt 	= MonitoredScalar::declare("TrackPt", 9999.);
+  auto inner_mdt_hits 	= Monitored::Scalar("InnMdtHits", -1);
+  auto middle_mdt_hits 	= Monitored::Scalar("MidMdtHits", -1);
+  auto outer_mdt_hits 	= Monitored::Scalar("OutMdtHits", -1);
+  auto invalid_rpc_roi_number = Monitored::Scalar("InvalidRpcRoINumber", -1);
+
+  auto efficiency 	= Monitored::Scalar("Efficiency", 0);
+  auto sag_inverse 	= Monitored::Scalar("SagInv", 9999.);
+  auto address 		= Monitored::Scalar("Address", 9999.);
+  auto absolute_pt 	= Monitored::Scalar("AbsPt", 9999.);
+  auto sagitta	 	= Monitored::Scalar("Sagitta", 9999.);
+  auto track_pt 	= Monitored::Scalar("TrackPt", 9999.);
 
   std::vector<float> t_eta, t_phi;
   std::vector<float> f_eta, f_phi;
@@ -1693,20 +1687,20 @@ StatusCode MuFastSteering::updateMonitor(const LVL1::RecMuonRoI*
   r_outer.clear();
   f_residuals.clear();
 
-  auto track_eta	= MonitoredCollection::declare("TrackEta", t_eta);
-  auto track_phi	= MonitoredCollection::declare("TrackPhi", t_phi);
-  auto failed_eta	= MonitoredCollection::declare("FailedRoIEta", f_eta);
-  auto failed_phi	= MonitoredCollection::declare("FailedRoIPhi", f_phi);
-  auto res_inner	= MonitoredCollection::declare("ResInner", r_inner);
-  auto res_middle	= MonitoredCollection::declare("ResMiddle", r_middle);
-  auto res_outer	= MonitoredCollection::declare("ResOuter", r_outer);
-  auto fit_residuals	= MonitoredCollection::declare("FitResiduals", f_residuals);
-
-  auto monitorIt	= MonitoredScope::declare(m_monTool, inner_mdt_hits, middle_mdt_hits, outer_mdt_hits, 
-						  invalid_rpc_roi_number,
-					          efficiency, sag_inverse, address, absolute_pt, sagitta, track_pt,
-					          track_eta, track_phi, failed_eta, failed_phi, 
-						  res_inner, res_middle, res_outer, fit_residuals );
+  auto track_eta	= Monitored::Collection("TrackEta", t_eta);
+  auto track_phi	= Monitored::Collection("TrackPhi", t_phi);
+  auto failed_eta	= Monitored::Collection("FailedRoIEta", f_eta);
+  auto failed_phi	= Monitored::Collection("FailedRoIPhi", f_phi);
+  auto res_inner	= Monitored::Collection("ResInner", r_inner);
+  auto res_middle	= Monitored::Collection("ResMiddle", r_middle);
+  auto res_outer	= Monitored::Collection("ResOuter", r_outer);
+  auto fit_residuals	= Monitored::Collection("FitResiduals", f_residuals);
+
+  auto monitorIt	= Monitored::Group(m_monTool, inner_mdt_hits, middle_mdt_hits, outer_mdt_hits,
+                                                invalid_rpc_roi_number,
+                                                efficiency, sag_inverse, address, absolute_pt, sagitta, track_pt,
+                                                track_eta, track_phi, failed_eta, failed_phi,
+                                                res_inner, res_middle, res_outer, fit_residuals );
   
   const float ZERO_LIMIT = 1e-5;
 
diff --git a/Trigger/TrigAlgorithms/TrigMuonEF/src/TrigMuonEFTrackIsolationAlgMT.cxx b/Trigger/TrigAlgorithms/TrigMuonEF/src/TrigMuonEFTrackIsolationAlgMT.cxx
index 9687ba187dd..73f4d210431 100644
--- a/Trigger/TrigAlgorithms/TrigMuonEF/src/TrigMuonEFTrackIsolationAlgMT.cxx
+++ b/Trigger/TrigAlgorithms/TrigMuonEF/src/TrigMuonEFTrackIsolationAlgMT.cxx
@@ -3,7 +3,7 @@
 */
 
 #include "TrigMuonEFTrackIsolationAlgMT.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 
 TrigMuonEFTrackIsolationAlgMT::TrigMuonEFTrackIsolationAlgMT( const std::string& name, 
@@ -79,7 +79,6 @@ StatusCode TrigMuonEFTrackIsolationAlgMT::execute()
 
   auto ctx = getContext();
 
-  using namespace Monitored;
   // variables to initialize and keep values for monitoring variables
   std::vector<double> ini_cone2(0);
   std::vector<double> ini_cone3(0);
@@ -91,16 +90,16 @@ StatusCode TrigMuonEFTrackIsolationAlgMT::execute()
   std::vector<int> ini_ntrks(0);
 
   // Monitoring histogram
-  auto trkptiso_cone2  = MonitoredCollection::declare("trks_trkptiso_cone2", ini_cone2);
-  auto trkptiso_cone3  = MonitoredCollection::declare("trks_trkptiso_cone3", ini_cone3);
-  auto trkdz           = MonitoredCollection::declare("trks_trkdz", ini_trkdz);
-  auto trkdr           = MonitoredCollection::declare("trks_trksdr", ini_trkdr);
-  auto muon_selfpt     = MonitoredCollection::declare("muon_selfpt", ini_selfpt);
-  auto muon_removedpt  = MonitoredCollection::declare("muon_removedpt", ini_removedpt);
-  auto muon_combinedpt = MonitoredCollection::declare("muon_combinedpt", ini_combinedpt);
-  auto n_trks          = MonitoredCollection::declare("n_trks", ini_ntrks);
-
-  auto monitorIt = MonitoredScope::declare( m_monTool, trkptiso_cone2, trkptiso_cone3, trkdz, trkdr, 
+  auto trkptiso_cone2  = Monitored::Collection("trks_trkptiso_cone2", ini_cone2);
+  auto trkptiso_cone3  = Monitored::Collection("trks_trkptiso_cone3", ini_cone3);
+  auto trkdz           = Monitored::Collection("trks_trkdz", ini_trkdz);
+  auto trkdr           = Monitored::Collection("trks_trksdr", ini_trkdr);
+  auto muon_selfpt     = Monitored::Collection("muon_selfpt", ini_selfpt);
+  auto muon_removedpt  = Monitored::Collection("muon_removedpt", ini_removedpt);
+  auto muon_combinedpt = Monitored::Collection("muon_combinedpt", ini_combinedpt);
+  auto n_trks          = Monitored::Collection("n_trks", ini_ntrks);
+
+  auto monitorIt = Monitored::Group( m_monTool, trkptiso_cone2, trkptiso_cone3, trkdz, trkdr, 
                                             muon_selfpt, muon_removedpt, muon_combinedpt, n_trks );
 
   // get input objects
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloCommon/src/TrigCaloDataAccessSvc.cxx b/Trigger/TrigAlgorithms/TrigT2CaloCommon/src/TrigCaloDataAccessSvc.cxx
index d88649bd6ef..e12b73cce37 100644
--- a/Trigger/TrigAlgorithms/TrigT2CaloCommon/src/TrigCaloDataAccessSvc.cxx
+++ b/Trigger/TrigAlgorithms/TrigT2CaloCommon/src/TrigCaloDataAccessSvc.cxx
@@ -1,7 +1,7 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 #include "TrigCaloDataAccessSvc.h"
 #include "TrigSteeringEvent/TrigRoiDescriptor.h"
 #include "CaloDetDescr/CaloDetDescrManager.h"
@@ -180,7 +180,7 @@ unsigned int TrigCaloDataAccessSvc::prepareLArFullCollections( const EventContex
 
   HLTCaloEventCache* cache = m_hLTCaloSlot.get( context );
   
-  auto lockTime = Monitored::MonitoredTimer::declare ( "TIME_locking_LAr_FullDet" );  
+  auto lockTime = Monitored::Timer ( "TIME_locking_LAr_FullDet" );
   std::lock_guard<std::mutex> collectionLock { cache->mutex };  
   lockTime.stop();
 
@@ -210,9 +210,9 @@ unsigned int TrigCaloDataAccessSvc::prepareLArFullCollections( const EventContex
   } // end of for m_vrodid32fullDetHG.size()
 
   int detid(0);
-  auto detidMon = Monitored::MonitoredScalar::declare<int>( "det", detid );
+  auto detidMon = Monitored::Scalar<int>( "det", detid );
 
-  Monitored::MonitoredScope::declare( m_monTool, lockTime, detidMon );
+  Monitored::Group( m_monTool, lockTime, detidMon );
   return status;
 }
 
@@ -225,7 +225,7 @@ unsigned int TrigCaloDataAccessSvc::prepareTileFullCollections( const EventConte
 
   HLTCaloEventCache* cache = m_hLTCaloSlot.get( context );
 
-  auto lockTime = Monitored::MonitoredTimer::declare ( "TIME_locking_LAr_FullDet" );
+  auto lockTime = Monitored::Timer ( "TIME_locking_LAr_FullDet" );
   std::lock_guard<std::mutex> collectionLock { cache->mutex };
   lockTime.stop();
 
@@ -236,9 +236,9 @@ unsigned int TrigCaloDataAccessSvc::prepareTileFullCollections( const EventConte
   convertROBs( m_rIdstile, (cache->tileContainer) );
 
   int detid(0);
-  auto detidMon = Monitored::MonitoredScalar::declare<int>( "det", detid );
+  auto detidMon = Monitored::Scalar<int>( "det", detid );
 
-  Monitored::MonitoredScope::declare( m_monTool, lockTime, detidMon );
+  Monitored::Group( m_monTool, lockTime, detidMon );
   return status;
 }
 
@@ -551,7 +551,7 @@ unsigned int TrigCaloDataAccessSvc::prepareLArCollections( const EventContext& c
     return 0x1; // dummy code
   }
 
-  auto lockTime = Monitored::MonitoredTimer::declare ( "TIME_locking_LAr_RoI" );  
+  auto lockTime = Monitored::Timer ( "TIME_locking_LAr_RoI" );
   std::lock_guard<std::mutex> collectionLock { cache->mutex };  
   lockTime.stop();
 
@@ -568,11 +568,11 @@ unsigned int TrigCaloDataAccessSvc::prepareLArCollections( const EventContext& c
     status |= 0x1; // dummy code
     clearMissing( requestROBs, robFrags, ( cache->larContainer ) );
   }
-  auto roiROBs = Monitored::MonitoredScalar::declare( "roiROBs_LAr", robFrags.size() );
-  auto roiEta = Monitored::MonitoredScalar::declare( "roiEta_LAr", roi.eta() );
-  auto roiPhi = Monitored::MonitoredScalar::declare( "roiPhi_LAr", roi.phi() );
+  auto roiROBs = Monitored::Scalar( "roiROBs_LAr", robFrags.size() );
+  auto roiEta = Monitored::Scalar( "roiEta_LAr", roi.eta() );
+  auto roiPhi = Monitored::Scalar( "roiPhi_LAr", roi.phi() );
 
-  Monitored::MonitoredScope::declare( m_monTool, lockTime, roiEta, roiPhi, roiROBs );
+  Monitored::Group( m_monTool, lockTime, roiEta, roiPhi, roiROBs );
   return status;
 }
 
diff --git a/Trigger/TrigAlgorithms/TrigTauRec/src/TrigTauRecMergedMT.cxx b/Trigger/TrigAlgorithms/TrigTauRec/src/TrigTauRecMergedMT.cxx
old mode 100755
new mode 100644
index d4b5a359848..8a1cdf2d38a
--- a/Trigger/TrigAlgorithms/TrigTauRec/src/TrigTauRecMergedMT.cxx
+++ b/Trigger/TrigAlgorithms/TrigTauRec/src/TrigTauRecMergedMT.cxx
@@ -44,7 +44,7 @@
 #include "LumiBlockComps/ILumiBlockMuTool.h"
 
 #include "TrigTauRecMergedMT.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 
 using namespace std;
@@ -153,7 +153,6 @@ StatusCode TrigTauRecMergedMT::execute()
 
    auto ctx = getContext();
 
-   using namespace Monitored;
    // variables to initialize and keep values for monitoring variables
    std::vector<unsigned char> calo_errors(0);
    std::vector<unsigned char> track_errors(0);
@@ -161,50 +160,50 @@ StatusCode TrigTauRecMergedMT::execute()
    std::vector<float> deltaZ0coreTrks(0);
    std::vector<float> deltaZ0wideTrks(0);
 
-   auto nCells             = MonitoredScalar::declare<int>("nRoI_EFTauCells",    0);
-   auto nTracks            = MonitoredScalar::declare<int>("nRoI_EFTauTracks", -10);
-   auto dEta               = MonitoredScalar::declare<float>("dEtaEFTau_RoI",    -10.);
-   auto dPhi               = MonitoredScalar::declare<float>("dPhiEFTau_RoI",    -10.);
-   auto emRadius           = MonitoredScalar::declare<float>("EF_EMRadius", -0.099);
-   auto hadRadius          = MonitoredScalar::declare<float>("EF_EMRadius", -0.099);
-   auto EtFinal            = MonitoredScalar::declare<float>("EF_EtFinal", 0.);
-   auto Et                 = MonitoredScalar::declare<float>("EF_Et", 0.);
-   auto EtHad              = MonitoredScalar::declare<float>("EF_EtHad",-10.);
-   auto EtEm               = MonitoredScalar::declare<float>("EF_EtEm",-10.);
-   auto EMFrac             = MonitoredScalar::declare<float>("EF_EMFrac",-10.);
-   auto IsoFrac            = MonitoredScalar::declare<float>("EF_IsoFrac",-1.);
-   auto centFrac           = MonitoredScalar::declare<float>("EF_centFrac",-10.);
-   auto nWideTrk           = MonitoredScalar::declare<int>("EF_nWideTrk",0);
-   auto ipSigLeadTrk       = MonitoredScalar::declare<float>("EF_ipSigLeadTrk",-1000.);
-   auto trFlightPathSig    = MonitoredScalar::declare<float>("EF_trFlightPathSig",-10.);
-   auto massTrkSys         = MonitoredScalar::declare<float>("EF_massTrkSys",-10.);
-   auto dRmax              = MonitoredScalar::declare<float>("EF_dRmax",-10.);
-   auto numTrack           = MonitoredScalar::declare<int>("EF_NTrk", -10);
-   auto trkAvgDist         = MonitoredScalar::declare<float>("EF_TrkAvgDist",-1.0);
-   auto etovPtLead         = MonitoredScalar::declare<float>("EF_EtovPtLead",-10.);
-   auto PSSFraction        = MonitoredScalar::declare<float>("EF_PSSFraction",-999.9);
-   auto EMPOverTrkSysP     = MonitoredScalar::declare<float>("EF_EMPOverTrkSysP",-999.9);
-   auto ChPiEMEOverCaloEME = MonitoredScalar::declare<float>("EF_ChPiEMEOverCaloEME",-999.9);
-   auto SumPtTrkFrac       = MonitoredScalar::declare<float>("EF_SumPtTrkFrac",-999.9);
-   auto innerTrkAvgDist    = MonitoredScalar::declare<float>("EF_innerTrkAvgDist",-1.0);
-   auto Ncand              = MonitoredScalar::declare<int>("EF_nCand",0);
-   auto ActualInteractions = MonitoredScalar::declare<float>("EF_ActualInteractions",-999.9);
-   auto AvgInteractions    = MonitoredScalar::declare<float>("EF_AvgInteractions",-999.9);
-   auto beamspot_x         = MonitoredScalar::declare<float>("EF_beamspot_x",-999.9);
-   auto beamspot_y         = MonitoredScalar::declare<float>("EF_beamspot_y",-999.9);
-   auto beamspot_z         = MonitoredScalar::declare<float>("EF_beamspot_z",-999.9);
-   auto EtaL1                 = MonitoredScalar::declare<float>("EtaL1",-99.9);
-   auto PhiL1                 = MonitoredScalar::declare<float>("PhiL1",-99.9);
-   auto EtaEF                 = MonitoredScalar::declare<float>("EtaEF",-99.9);
-   auto PhiEF                 = MonitoredScalar::declare<float>("PhiEF",-99.9);
-
-   auto EF_calo_errors        = MonitoredCollection::declare("calo_errors",calo_errors);
-   auto EF_track_errors       = MonitoredCollection::declare("track_errors",track_errors);
-   auto EF_author             = MonitoredCollection::declare("author",author);
-   auto EF_deltaZ0coreTrks    = MonitoredCollection::declare("deltaZ0coreTrks",deltaZ0coreTrks);
-   auto EF_deltaZ0wideTrks    = MonitoredCollection::declare("deltaZ0wideTrks",deltaZ0wideTrks);
-
-   auto monitorIt = MonitoredScope::declare( m_monTool, nCells, nTracks, dEta, dPhi, emRadius, hadRadius,
+   auto nCells             = Monitored::Scalar<int>("nRoI_EFTauCells",    0);
+   auto nTracks            = Monitored::Scalar<int>("nRoI_EFTauTracks", -10);
+   auto dEta               = Monitored::Scalar<float>("dEtaEFTau_RoI",    -10.);
+   auto dPhi               = Monitored::Scalar<float>("dPhiEFTau_RoI",    -10.);
+   auto emRadius           = Monitored::Scalar<float>("EF_EMRadius", -0.099);
+   auto hadRadius          = Monitored::Scalar<float>("EF_EMRadius", -0.099);
+   auto EtFinal            = Monitored::Scalar<float>("EF_EtFinal", 0.);
+   auto Et                 = Monitored::Scalar<float>("EF_Et", 0.);
+   auto EtHad              = Monitored::Scalar<float>("EF_EtHad",-10.);
+   auto EtEm               = Monitored::Scalar<float>("EF_EtEm",-10.);
+   auto EMFrac             = Monitored::Scalar<float>("EF_EMFrac",-10.);
+   auto IsoFrac            = Monitored::Scalar<float>("EF_IsoFrac",-1.);
+   auto centFrac           = Monitored::Scalar<float>("EF_centFrac",-10.);
+   auto nWideTrk           = Monitored::Scalar<int>("EF_nWideTrk",0);
+   auto ipSigLeadTrk       = Monitored::Scalar<float>("EF_ipSigLeadTrk",-1000.);
+   auto trFlightPathSig    = Monitored::Scalar<float>("EF_trFlightPathSig",-10.);
+   auto massTrkSys         = Monitored::Scalar<float>("EF_massTrkSys",-10.);
+   auto dRmax              = Monitored::Scalar<float>("EF_dRmax",-10.);
+   auto numTrack           = Monitored::Scalar<int>("EF_NTrk", -10);
+   auto trkAvgDist         = Monitored::Scalar<float>("EF_TrkAvgDist",-1.0);
+   auto etovPtLead         = Monitored::Scalar<float>("EF_EtovPtLead",-10.);
+   auto PSSFraction        = Monitored::Scalar<float>("EF_PSSFraction",-999.9);
+   auto EMPOverTrkSysP     = Monitored::Scalar<float>("EF_EMPOverTrkSysP",-999.9);
+   auto ChPiEMEOverCaloEME = Monitored::Scalar<float>("EF_ChPiEMEOverCaloEME",-999.9);
+   auto SumPtTrkFrac       = Monitored::Scalar<float>("EF_SumPtTrkFrac",-999.9);
+   auto innerTrkAvgDist    = Monitored::Scalar<float>("EF_innerTrkAvgDist",-1.0);
+   auto Ncand              = Monitored::Scalar<int>("EF_nCand",0);
+   auto ActualInteractions = Monitored::Scalar<float>("EF_ActualInteractions",-999.9);
+   auto AvgInteractions    = Monitored::Scalar<float>("EF_AvgInteractions",-999.9);
+   auto beamspot_x         = Monitored::Scalar<float>("EF_beamspot_x",-999.9);
+   auto beamspot_y         = Monitored::Scalar<float>("EF_beamspot_y",-999.9);
+   auto beamspot_z         = Monitored::Scalar<float>("EF_beamspot_z",-999.9);
+   auto EtaL1                 = Monitored::Scalar<float>("EtaL1",-99.9);
+   auto PhiL1                 = Monitored::Scalar<float>("PhiL1",-99.9);
+   auto EtaEF                 = Monitored::Scalar<float>("EtaEF",-99.9);
+   auto PhiEF                 = Monitored::Scalar<float>("PhiEF",-99.9);
+
+   auto EF_calo_errors        = Monitored::Collection("calo_errors",calo_errors);
+   auto EF_track_errors       = Monitored::Collection("track_errors",track_errors);
+   auto EF_author             = Monitored::Collection("author",author);
+   auto EF_deltaZ0coreTrks    = Monitored::Collection("deltaZ0coreTrks",deltaZ0coreTrks);
+   auto EF_deltaZ0wideTrks    = Monitored::Collection("deltaZ0wideTrks",deltaZ0wideTrks);
+
+   auto monitorIt = Monitored::Group( m_monTool, nCells, nTracks, dEta, dPhi, emRadius, hadRadius,
    EtFinal, Et, EtHad, EtEm, EMFrac, IsoFrac, centFrac, nWideTrk, ipSigLeadTrk, trFlightPathSig, massTrkSys,
    dRmax, numTrack, trkAvgDist, etovPtLead, PSSFraction, EMPOverTrkSysP, ChPiEMEOverCaloEME, SumPtTrkFrac,
    innerTrkAvgDist, Ncand, ActualInteractions, AvgInteractions, beamspot_x, beamspot_y, beamspot_z, EtaL1,
diff --git a/Trigger/TrigAlgorithms/TrigmuComb/src/muCombMT.cxx b/Trigger/TrigAlgorithms/TrigmuComb/src/muCombMT.cxx
old mode 100755
new mode 100644
index 8f4604b5e77..b4cfbfd6b5a
--- a/Trigger/TrigAlgorithms/TrigmuComb/src/muCombMT.cxx
+++ b/Trigger/TrigAlgorithms/TrigmuComb/src/muCombMT.cxx
@@ -24,7 +24,7 @@
 #include "xAODTrigMuon/L2CombinedMuonAuxContainer.h"
 #include "xAODTracking/TrackParticleContainer.h"
 #include "TrigSiSpacePointTool/ISpacePointProvider.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 #include "CLHEP/Units/SystemOfUnits.h"
 class ISvcLocator;
@@ -468,42 +468,41 @@ int muCombMT::mfMatch(const xAOD::L2StandAloneMuon* feature,
  */
 StatusCode muCombMT::execute()
 {
-   using namespace Monitored;
    using namespace xAOD;
 
    auto ctx = getContext();
 
    // Monitoring variables
    //Timer
-   auto timer = MonitoredTimer::declare("TIME_execute");
+   auto timer = Monitored::Timer("TIME_execute");
    //Input
-   auto ptMS = MonitoredScalar::declare("PtMS",        -9999.);
-   auto etaMS = MonitoredScalar::declare("EtaMS",      -9999.);
-   auto phiMS = MonitoredScalar::declare("PhiMS",      -9999.);
-   auto zetaMS = MonitoredScalar::declare("ZetaMS",    -9999.);
+   auto ptMS = Monitored::Scalar("PtMS",        -9999.);
+   auto etaMS = Monitored::Scalar("EtaMS",      -9999.);
+   auto phiMS = Monitored::Scalar("PhiMS",      -9999.);
+   auto zetaMS = Monitored::Scalar("ZetaMS",    -9999.);
    //ID
-   auto ptID = MonitoredScalar::declare("PtID",        -9999.);
-   auto etaID = MonitoredScalar::declare("EtaID",      -9999.);
-   auto phiID = MonitoredScalar::declare("PhiID",      -9999.);
-   auto zetaID = MonitoredScalar::declare("ZetaID",    -9999.);
+   auto ptID = Monitored::Scalar("PtID",        -9999.);
+   auto etaID = Monitored::Scalar("EtaID",      -9999.);
+   auto phiID = Monitored::Scalar("PhiID",      -9999.);
+   auto zetaID = Monitored::Scalar("ZetaID",    -9999.);
    //Combined
-   auto ptMC = MonitoredScalar::declare("PtMC",        -9999.);
-   auto dEta = MonitoredScalar::declare("DEta",        -9999.);
-   auto dPhi = MonitoredScalar::declare("DPhi",        -9999.);
-   auto dZeta = MonitoredScalar::declare("DZeta",      -9999.);
-   auto dR = MonitoredScalar::declare("DeltaR",        -9999.);
+   auto ptMC = Monitored::Scalar("PtMC",        -9999.);
+   auto dEta = Monitored::Scalar("DEta",        -9999.);
+   auto dPhi = Monitored::Scalar("DPhi",        -9999.);
+   auto dZeta = Monitored::Scalar("DZeta",      -9999.);
+   auto dR = Monitored::Scalar("DeltaR",        -9999.);
    //Failed
-   auto ptFL = MonitoredScalar::declare("PtFL",        -9999.);
-   auto etaFL = MonitoredScalar::declare("EtaFL",      -9999.);
-   auto phiFL = MonitoredScalar::declare("PhiFL",      -9999.);
+   auto ptFL = Monitored::Scalar("PtFL",        -9999.);
+   auto etaFL = Monitored::Scalar("EtaFL",      -9999.);
+   auto phiFL = Monitored::Scalar("PhiFL",      -9999.);
    //Info
-   auto efficiency = MonitoredScalar::declare<int>("Efficiency",  -1);
-   auto StrategyMC = MonitoredScalar::declare<int>("StrategyMC",  -1);
-   auto ErrorFlagMC = MonitoredScalar::declare<int>("ErrorFlagMC", 0);
-   auto MatchFlagMC = MonitoredScalar::declare<int>("MatchFlagMC", 0);
+   auto efficiency = Monitored::Scalar<int>("Efficiency",  -1);
+   auto StrategyMC = Monitored::Scalar<int>("StrategyMC",  -1);
+   auto ErrorFlagMC = Monitored::Scalar<int>("ErrorFlagMC", 0);
+   auto MatchFlagMC = Monitored::Scalar<int>("MatchFlagMC", 0);
 
 
-   auto mon = MonitoredScope::declare(m_monTool, timer, ptMS, etaMS, phiMS, zetaMS, 
+   auto mon = Monitored::Group(m_monTool, timer, ptMS, etaMS, phiMS, zetaMS, 
                                                         ptID, etaID, phiID, zetaID, 
                                                         ptMC, dEta, dPhi, dZeta, dR,
                                                         ptFL, etaFL, phiFL,
diff --git a/Trigger/TrigAlgorithms/TrigmuIso/src/muIso.cxx b/Trigger/TrigAlgorithms/TrigmuIso/src/muIso.cxx
old mode 100755
new mode 100644
index b4d5340e38f..0f016dd4a42
--- a/Trigger/TrigAlgorithms/TrigmuIso/src/muIso.cxx
+++ b/Trigger/TrigAlgorithms/TrigmuIso/src/muIso.cxx
@@ -43,7 +43,7 @@
 #include "CLHEP/Units/SystemOfUnits.h"
 
 #include "AthenaBaseComps/AthMsgStreamMacros.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 class ISvcLocator;
 
@@ -380,19 +380,18 @@ StatusCode muIso::findIsolation( const xAOD::L2CombinedMuonContainer& muonColl,
                                  const xAOD::TrackParticleContainer& idTrackParticles,
                                  xAOD::L2IsoMuonContainer& muonISColl ) 
 {
-   using namespace Monitored;
    // Initalize Monitored variables
-   auto errorFlagMI = MonitoredScalar::declare("ErrorFlagMI", 0);
-   auto sumpt       = MonitoredScalar::declare("Sumpt", -9999);
-   auto muPt        = MonitoredScalar::declare("TEMuPt", -9999);
-   auto muEta       = MonitoredScalar::declare("TEMuEta", -9999);
-   auto muPhi       = MonitoredScalar::declare("TEMuPhi", -9999);
-   auto nTrk        = MonitoredScalar::declare("NTRK", -9999);
-   auto ptFL        = MonitoredScalar::declare("PtFL", -9999);
-   auto idIso       = MonitoredScalar::declare("IDiso", -9999);
-   auto isIsolated  = MonitoredScalar::declare("IsIsolated", -9999);
-
-   auto monitorIt   = MonitoredScope::declare( m_monTool, errorFlagMI, sumpt, 
+   auto errorFlagMI = Monitored::Scalar("ErrorFlagMI", 0);
+   auto sumpt       = Monitored::Scalar("Sumpt", -9999);
+   auto muPt        = Monitored::Scalar("TEMuPt", -9999);
+   auto muEta       = Monitored::Scalar("TEMuEta", -9999);
+   auto muPhi       = Monitored::Scalar("TEMuPhi", -9999);
+   auto nTrk        = Monitored::Scalar("NTRK", -9999);
+   auto ptFL        = Monitored::Scalar("PtFL", -9999);
+   auto idIso       = Monitored::Scalar("IDiso", -9999);
+   auto isIsolated  = Monitored::Scalar("IsIsolated", -9999);
+
+   auto monitorIt   = Monitored::Group( m_monTool, errorFlagMI, sumpt, 
                                                muPt, muEta, muPhi, nTrk, ptFL,
                                                idIso, isIsolated);
 
diff --git a/Trigger/TrigHypothesis/TrigBjetHypo/src/TrigBjetHypoTool.cxx b/Trigger/TrigHypothesis/TrigBjetHypo/src/TrigBjetHypoTool.cxx
old mode 100755
new mode 100644
index d5670dfd513..eed69629e6f
--- a/Trigger/TrigHypothesis/TrigBjetHypo/src/TrigBjetHypoTool.cxx
+++ b/Trigger/TrigHypothesis/TrigBjetHypo/src/TrigBjetHypoTool.cxx
@@ -15,7 +15,7 @@
 #include "DecisionHandling/HLTIdentifier.h"
 
 #include "TrigBjetHypoTool.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 
 TrigBjetHypoTool::TrigBjetHypoTool( const std::string& type, 
@@ -62,8 +62,8 @@ bool TrigBjetHypoTool::decide(  const xAOD::BTagging* bTag, const TrigRoiDescrip
   ATH_MSG_DEBUG(  "Executing TrigBjetHypoTool"  );
 
   // initialise monitoring variables 
-  auto PassedCuts = Monitored::MonitoredScalar::declare<int>( "CutCounter", -1 );
-  auto monitorIt  = Monitored::MonitoredScope::declare( m_monTool, PassedCuts );
+  auto PassedCuts = Monitored::Scalar<int>( "CutCounter", -1 );
+  auto monitorIt = Monitored::Group( m_monTool, PassedCuts );
   // when leaving scope it will ship data to monTool
   PassedCuts = PassedCuts + 1; //got called (data in place)
 
diff --git a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigL2CaloHypoToolInc.cxx b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigL2CaloHypoToolInc.cxx
index cd47f31bd79..2a30f17ffe2 100644
--- a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigL2CaloHypoToolInc.cxx
+++ b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigL2CaloHypoToolInc.cxx
@@ -5,7 +5,7 @@
 #include <algorithm>
 #include "DecisionHandling/HLTIdentifier.h"
 #include "DecisionHandling/Combinators.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 #include "TrigL2CaloHypoToolInc.h"
 
@@ -71,25 +71,24 @@ bool TrigL2CaloHypoToolInc::decide( const ITrigL2CaloHypoTool::ClusterInfo& inpu
 
   bool pass = false;
 
-  using namespace Monitored;
   // TB Not sure if anything else than the CutCounter should monitored it in every cut tool, 
   // Should  quantitities be filled only after the succesful selection?
 
-  auto dEta         = MonitoredScalar::declare( "dEta", -1. ); 
-  auto dPhi         = MonitoredScalar::declare( "dPhi", -1. );
-  auto eT_T2Calo    = MonitoredScalar::declare( "Et_em"   , -1.0 );
-  auto hadET_T2Calo = MonitoredScalar::declare( "Et_had", -1.0 );
-  auto rCore        = MonitoredScalar::declare( "RCore"       , -1.0 );
-  auto energyRatio  = MonitoredScalar::declare( "ERatio" , -1.0 );
-  auto etaBin       = MonitoredScalar::declare( "EtaBin", -1. );
-  auto monEta       = MonitoredScalar::declare( "Eta", -99. ); 
-  auto monPhi       = MonitoredScalar::declare( "Phi", -99. );
-  auto F1           = MonitoredScalar::declare( "F1"          , -1.0 );  
-  auto Weta2        = MonitoredScalar::declare( "Weta2"       , -1.0 );
-  auto Wstot        = MonitoredScalar::declare( "Wstot"       , -1.0 );
-  auto F3           = MonitoredScalar::declare( "F3"          , -1.0 );
-  auto PassedCuts   = MonitoredScalar::declare<int>( "CutCounter", -1 );  
-  auto monitorIt    = MonitoredScope::declare( m_monTool, 
+  auto dEta         = Monitored::Scalar( "dEta", -1. ); 
+  auto dPhi         = Monitored::Scalar( "dPhi", -1. );
+  auto eT_T2Calo    = Monitored::Scalar( "Et_em"   , -1.0 );
+  auto hadET_T2Calo = Monitored::Scalar( "Et_had", -1.0 );
+  auto rCore        = Monitored::Scalar( "RCore"       , -1.0 );
+  auto energyRatio  = Monitored::Scalar( "ERatio" , -1.0 );
+  auto etaBin       = Monitored::Scalar( "EtaBin", -1. );
+  auto monEta       = Monitored::Scalar( "Eta", -99. ); 
+  auto monPhi       = Monitored::Scalar( "Phi", -99. );
+  auto F1           = Monitored::Scalar( "F1"          , -1.0 );  
+  auto Weta2        = Monitored::Scalar( "Weta2"       , -1.0 );
+  auto Wstot        = Monitored::Scalar( "Wstot"       , -1.0 );
+  auto F3           = Monitored::Scalar( "F3"          , -1.0 );
+  auto PassedCuts   = Monitored::Scalar<int>( "CutCounter", -1 );  
+  auto monitorIt    = Monitored::Group( m_monTool, 
 					       dEta, dPhi, eT_T2Calo, hadET_T2Calo,
 					       rCore, energyRatio, etaBin, monEta,
 					       monPhi, F1, Weta2, Wstot, F3, PassedCuts );
diff --git a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigL2ElectronFexMT.cxx b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigL2ElectronFexMT.cxx
index 5fd08ee4ea8..efeb806ec18 100644
--- a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigL2ElectronFexMT.cxx
+++ b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigL2ElectronFexMT.cxx
@@ -23,7 +23,7 @@
 #include "TrigL2ElectronFexMT.h"
 #include "xAODTrigCalo/TrigEMClusterContainer.h"
 #include "xAODTrigCalo/TrigEMClusterAuxContainer.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 class ISvcLocator;
 
 template <class SRC>
@@ -97,7 +97,6 @@ StatusCode TrigL2ElectronFexMT::finalize()
 
 
 StatusCode TrigL2ElectronFexMT::execute() {
- using namespace Monitored;   
  using namespace xAOD;   
 
  ATH_MSG_DEBUG( "Executing " <<name());
@@ -167,14 +166,14 @@ StatusCode TrigL2ElectronFexMT::execute() {
   // monitoring
   std::vector<float> calotrkdeta_noextrap_mon; //!< monitor preselection between track eta and cluster before extrapolation 
 
-  auto caloPtMon = MonitoredCollection::declare("PtCalo",   *trigElecColl,  getCaloPt );
-  auto trackPtMon = MonitoredCollection::declare("PtTrack", *trigElecColl, getTkPt );
-  auto caloTrackDEtaMon = MonitoredCollection::declare("CaloTrackdEta", *trigElecColl, &xAOD::TrigElectron::trkClusDeta );
-  auto caloTrackDPhiMon = MonitoredCollection::declare("CaloTrackdPhi", *trigElecColl, &xAOD::TrigElectron::trkClusDphi );
-  auto etOverPtMon = MonitoredCollection::declare("CaloTrackEoverP", *trigElecColl, &xAOD::TrigElectron::etOverPt );
-  auto caloTrackDEtaNoExtrapMon = MonitoredCollection::declare("CaloTrackdEtaNoExtrapMon", calotrkdeta_noextrap_mon );
+  auto caloPtMon = Monitored::Collection("PtCalo",   *trigElecColl,  getCaloPt );
+  auto trackPtMon = Monitored::Collection("PtTrack", *trigElecColl, getTkPt );
+  auto caloTrackDEtaMon = Monitored::Collection("CaloTrackdEta", *trigElecColl, &xAOD::TrigElectron::trkClusDeta );
+  auto caloTrackDPhiMon = Monitored::Collection("CaloTrackdPhi", *trigElecColl, &xAOD::TrigElectron::trkClusDphi );
+  auto etOverPtMon = Monitored::Collection("CaloTrackEoverP", *trigElecColl, &xAOD::TrigElectron::etOverPt );
+  auto caloTrackDEtaNoExtrapMon = Monitored::Collection("CaloTrackdEtaNoExtrapMon", calotrkdeta_noextrap_mon );
 
-  auto mon = MonitoredScope::declare(m_monTool,  caloPtMon, trackPtMon, caloTrackDEtaMon, caloTrackDPhiMon, etOverPtMon, caloTrackDEtaNoExtrapMon );
+  auto mon = Monitored::Group(m_monTool,  caloPtMon, trackPtMon, caloTrackDEtaMon, caloTrackDPhiMon, etOverPtMon, caloTrackDEtaNoExtrapMon );
 
 
 
diff --git a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigL2ElectronHypoTool.cxx b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigL2ElectronHypoTool.cxx
index b2a51086552..795821da892 100644
--- a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigL2ElectronHypoTool.cxx
+++ b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigL2ElectronHypoTool.cxx
@@ -5,7 +5,7 @@
 
 #include "DecisionHandling/HLTIdentifier.h"
 #include "DecisionHandling/Combinators.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 #include "TrigL2ElectronHypoTool.h"
 
@@ -50,17 +50,16 @@ TrigL2ElectronHypoTool::~TrigL2ElectronHypoTool() {}
 
 bool TrigL2ElectronHypoTool::decideOnSingleObject( const xAOD::TrigElectron* electron, 
 						   size_t cutIndex ) const {
-  using namespace Monitored;
-  auto cutCounter = MonitoredScalar::declare<int>( "CutCounter", -1 );  
-  auto cutIndexM  = MonitoredScalar::declare<int>( "CutIndex", cutIndex );  // one can do 2D plots for each cut independently
-  auto ptCalo     = MonitoredScalar::declare( "PtCalo", -999. );
-  auto ptTrack    = MonitoredScalar::declare( "PtTrack", -999. );
-  auto dEtaCalo   = MonitoredScalar::declare( "CaloTrackEta", -1. );
-  auto dPhiCalo   = MonitoredScalar::declare( "CaloTrackPhi", -1. );
-  auto eToverPt   = MonitoredScalar::declare( "CaloTrackEoverP", -1. );
-  auto caloEta    = MonitoredScalar::declare( "CaloEta", -100. );
-  auto caloPhi    = MonitoredScalar::declare( "CaloEta", -100. );
-  auto monitorIt  = MonitoredScope::declare( m_monTool, 
+  auto cutCounter = Monitored::Scalar<int>( "CutCounter", -1 );  
+  auto cutIndexM  = Monitored::Scalar<int>( "CutIndex", cutIndex );  // one can do 2D plots for each cut independently
+  auto ptCalo     = Monitored::Scalar( "PtCalo", -999. );
+  auto ptTrack    = Monitored::Scalar( "PtTrack", -999. );
+  auto dEtaCalo   = Monitored::Scalar( "CaloTrackEta", -1. );
+  auto dPhiCalo   = Monitored::Scalar( "CaloTrackPhi", -1. );
+  auto eToverPt   = Monitored::Scalar( "CaloTrackEoverP", -1. );
+  auto caloEta    = Monitored::Scalar( "CaloEta", -100. );
+  auto caloPhi    = Monitored::Scalar( "CaloEta", -100. );
+  auto monitorIt  = Monitored::Group( m_monTool, 
 					     cutCounter, cutIndexM,
 					     ptCalo, ptTrack,    
 					     dEtaCalo, dPhiCalo,   
diff --git a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigL2PhotonHypoTool.cxx b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigL2PhotonHypoTool.cxx
old mode 100755
new mode 100644
index de3982fb644..5cfce83a5f7
--- a/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigL2PhotonHypoTool.cxx
+++ b/Trigger/TrigHypothesis/TrigEgammaHypo/src/TrigL2PhotonHypoTool.cxx
@@ -6,7 +6,7 @@
 
 #include "DecisionHandling/HLTIdentifier.h"
 #include "DecisionHandling/Combinators.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 #include "TrigL2PhotonHypoTool.h"
 
@@ -50,20 +50,19 @@ TrigL2PhotonHypoTool::~TrigL2PhotonHypoTool() {}
 
 
 bool TrigL2PhotonHypoTool::decideOnSingleObject( const xAOD::TrigPhoton* photon,size_t cutIndex ) const {
-  using namespace Monitored;
-
-  auto cutCounter = MonitoredScalar::declare<int>( "CutCounter", -1 );
-  auto cutIndexM  = MonitoredScalar::declare<int>( "CutIndex", cutIndex );
-  auto PhEt =  MonitoredScalar::declare( "PhEt", -99. );
-  auto PhEta = MonitoredScalar::declare( "PhEta", -99. );
-  auto PhPhi = MonitoredScalar::declare( "PhPhi", -99. );
-  auto dEta = MonitoredScalar::declare( "dEta", -99. );
-  auto dPhi = MonitoredScalar::declare( "dPhi", -99. );
-  auto PhRcore = MonitoredScalar::declare( "PhRcore", -99. );
-  auto PhEratio = MonitoredScalar::declare( "PhRcore", -99. );
-  auto PhHadEt = MonitoredScalar::declare( "PhHadEt", -99. );
-  auto PhF1 = MonitoredScalar::declare( "PhF1", -99. );
-  auto monitorIt  = MonitoredScope::declare( m_monTool,
+
+  auto cutCounter = Monitored::Scalar<int>( "CutCounter", -1 );
+  auto cutIndexM  = Monitored::Scalar<int>( "CutIndex", cutIndex );
+  auto PhEt =  Monitored::Scalar( "PhEt", -99. );
+  auto PhEta = Monitored::Scalar( "PhEta", -99. );
+  auto PhPhi = Monitored::Scalar( "PhPhi", -99. );
+  auto dEta = Monitored::Scalar( "dEta", -99. );
+  auto dPhi = Monitored::Scalar( "dPhi", -99. );
+  auto PhRcore = Monitored::Scalar( "PhRcore", -99. );
+  auto PhEratio = Monitored::Scalar( "PhRcore", -99. );
+  auto PhHadEt = Monitored::Scalar( "PhHadEt", -99. );
+  auto PhF1 = Monitored::Scalar( "PhF1", -99. );
+  auto monitorIt  = Monitored::Group( m_monTool,
                                              cutCounter, cutIndexM,
                                              PhEt,
                                              PhEta, PhPhi,
diff --git a/Trigger/TrigHypothesis/TrigMultiVarHypo/src/TrigL2CaloRingerFexMT.cxx b/Trigger/TrigHypothesis/TrigMultiVarHypo/src/TrigL2CaloRingerFexMT.cxx
index 7e701e0c634..3b0bbb06196 100644
--- a/Trigger/TrigHypothesis/TrigMultiVarHypo/src/TrigL2CaloRingerFexMT.cxx
+++ b/Trigger/TrigHypothesis/TrigMultiVarHypo/src/TrigL2CaloRingerFexMT.cxx
@@ -3,11 +3,11 @@
 */
 
 #include "CLHEP/Units/SystemOfUnits.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 #include "xAODTrigCalo/TrigEMClusterContainer.h"
 #include "xAODTrigCalo/TrigEMClusterAuxContainer.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 #include "TrigL2CaloRingerFexMT.h"
 #include "TrigMultiVarHypo/preproc/TrigRingerPreprocessor.h"
@@ -127,13 +127,12 @@ StatusCode TrigL2CaloRingerFexMT::finalize(){
 StatusCode TrigL2CaloRingerFexMT::execute(){
   
   ATH_MSG_DEBUG("start RingerMT");
-  using namespace Monitored;
-  auto etMon    = MonitoredScalar::declare( "Et", -100. );
-  auto etaMon    = MonitoredScalar::declare( "Eta", -100. );
-  auto rnnOutMon = MonitoredScalar::declare( "rnnOut", -100. );
-  auto monitorIt  = MonitoredScope::declare( m_monTool, etMon, etaMon, rnnOutMon );
+  auto etMon    = Monitored::Scalar( "Et", -100. );
+  auto etaMon    = Monitored::Scalar( "Eta", -100. );
+  auto rnnOutMon = Monitored::Scalar( "rnnOut", -100. );
+  auto monitorIt  = Monitored::Group( m_monTool, etMon, etaMon, rnnOutMon );
 
-  auto totalTime = Monitored::MonitoredTimer::declare("TIME_total");
+  auto totalTime = Monitored::Timer("TIME_total");
   totalTime.start();
   ATH_MSG_DEBUG( "start RingerMT" );
   
@@ -182,19 +181,19 @@ StatusCode TrigL2CaloRingerFexMT::execute(){
 
     
     ATH_MSG_DEBUG( "Et = " << et << " GeV, |eta| = " << eta );
-    auto preprocessTime = Monitored::MonitoredTimer::declare("TIME_preprocess");
+    auto preprocessTime = Monitored::Timer("TIME_preprocess");
     ///pre-processing shape
     preprocessTime.start();
     if(preproc)     preproc->ppExecute(refRings);
     preprocessTime.stop();
     
     ATH_MSG_DEBUG( "after preproc refRings.size() is: " << rings.size() );
-    auto decisionTime = Monitored::MonitoredTimer::declare("TIME_decision");
+    auto decisionTime = Monitored::Timer("TIME_decision");
     ///Apply the discriminator
     decisionTime.start();
     if(discr)  m_output = discr->propagate(refRings);
     decisionTime.stop();
-    auto scope = Monitored::MonitoredScope::declare( m_monTool, preprocessTime, decisionTime );
+    auto scope = Monitored::Group( m_monTool, preprocessTime, decisionTime );
     
   }else{
      ATH_MSG_DEBUG("There is no discriminator into this Fex.");
@@ -216,7 +215,7 @@ StatusCode TrigL2CaloRingerFexMT::execute(){
   ATH_CHECK( outputHandle.record(std::move(rnnOutput)) );
 
   totalTime.stop();
-  auto scope = Monitored::MonitoredScope::declare( m_monTool, totalTime );
+  auto scope = Monitored::Group( m_monTool, totalTime );
   
   return StatusCode::SUCCESS;
 }
diff --git a/Trigger/TrigHypothesis/TrigMultiVarHypo/src/TrigL2CaloRingerHypoToolMT.cxx b/Trigger/TrigHypothesis/TrigMultiVarHypo/src/TrigL2CaloRingerHypoToolMT.cxx
index 1b7909752fd..7b6b8c736fe 100644
--- a/Trigger/TrigHypothesis/TrigMultiVarHypo/src/TrigL2CaloRingerHypoToolMT.cxx
+++ b/Trigger/TrigHypothesis/TrigMultiVarHypo/src/TrigL2CaloRingerHypoToolMT.cxx
@@ -5,7 +5,7 @@
 
 #include "DecisionHandling/HLTIdentifier.h"
 #include "DecisionHandling/Combinators.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 #include "GaudiKernel/SystemOfUnits.h"
 #include "TrigL2CaloRingerHypoToolMT.h"
 
diff --git a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMufastHypoTool.cxx b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMufastHypoTool.cxx
old mode 100755
new mode 100644
index 0ebaacbc629..ec9672a5f0f
--- a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMufastHypoTool.cxx
+++ b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMufastHypoTool.cxx
@@ -7,7 +7,7 @@
 
 #include "GaudiKernel/MsgStream.h"
 #include "GaudiKernel/StatusCode.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 #include "DecisionHandling/Combinators.h"
 
@@ -85,19 +85,18 @@ StatusCode TrigMufastHypoTool::initialize()
 
 bool TrigMufastHypoTool::decideOnSingleObject(TrigMufastHypoTool::MuonClusterInfo& input, size_t cutIndex) const
 {
-   using namespace Monitored;
-
-   auto fexPt 		= MonitoredScalar::declare("Pt", -9999.);
-   auto fexEta 		= MonitoredScalar::declare("Eta", -9999.);
-   auto fexPhi 		= MonitoredScalar::declare("Phi", -9999.);
-   auto fexPtFL		= MonitoredScalar::declare("PtFL", -9999.);
-   auto xatStation	= MonitoredScalar::declare("XatSt", -9999.);
-   auto yatStation	= MonitoredScalar::declare("YatSt", -9999.);
-   auto zatStation	= MonitoredScalar::declare("ZatSt", -9999.);
-   auto xatBeam		= MonitoredScalar::declare("XatBe", -9999.);
-   auto zatBeam		= MonitoredScalar::declare("ZatBe", -9999.);
-
-   auto monitorIt	= MonitoredScope::declare(m_monTool, fexPt, fexEta, fexPhi, fexPtFL,
+
+   auto fexPt 		= Monitored::Scalar("Pt", -9999.);
+   auto fexEta 		= Monitored::Scalar("Eta", -9999.);
+   auto fexPhi 		= Monitored::Scalar("Phi", -9999.);
+   auto fexPtFL		= Monitored::Scalar("PtFL", -9999.);
+   auto xatStation	= Monitored::Scalar("XatSt", -9999.);
+   auto yatStation	= Monitored::Scalar("YatSt", -9999.);
+   auto zatStation	= Monitored::Scalar("ZatSt", -9999.);
+   auto xatBeam		= Monitored::Scalar("XatBe", -9999.);
+   auto zatBeam		= Monitored::Scalar("ZatBe", -9999.);
+
+   auto monitorIt	= Monitored::Group(m_monTool, fexPt, fexEta, fexPhi, fexPtFL,
    					          xatStation, yatStation, zatStation, 
 					          xatBeam, zatBeam);
 
diff --git a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMuisoHypoTool.cxx b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMuisoHypoTool.cxx
index d363c92ec25..641854297f4 100644
--- a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMuisoHypoTool.cxx
+++ b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMuisoHypoTool.cxx
@@ -7,7 +7,7 @@
 
 #include "GaudiKernel/MsgStream.h"
 #include "GaudiKernel/StatusCode.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 #include "DecisionHandling/Combinators.h"
 
@@ -52,12 +52,11 @@ StatusCode TrigMuisoHypoTool::initialize()
 bool TrigMuisoHypoTool::decideOnSingleObject( TrigMuisoHypoTool::MuisoInfo& input,
                                               size_t cutIndex ) const
 {
-  using namespace Monitored;
 
-  auto cutCounter = MonitoredScalar::declare( "CutCounter", 0 );
-  auto sumPtCone  = MonitoredScalar::declare( "SumPtCone", 0 );
+  auto cutCounter = Monitored::Scalar( "CutCounter", 0 );
+  auto sumPtCone  = Monitored::Scalar( "SumPtCone", 0 );
 
-  auto monitorIt  = MonitoredScope::declare( m_monTool, cutCounter, sumPtCone ); 
+  auto monitorIt  = Monitored::Group( m_monTool, cutCounter, sumPtCone ); 
 
   ATH_MSG_VERBOSE( "Cut index " << cutIndex );
 
diff --git a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMuonEFCombinerHypoTool.cxx b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMuonEFCombinerHypoTool.cxx
index 2756f215e00..da29df28359 100644
--- a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMuonEFCombinerHypoTool.cxx
+++ b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMuonEFCombinerHypoTool.cxx
@@ -6,7 +6,7 @@
 #include "TrigMuonHypo/TrigMuonEFCombinerHypoTool.h"
 #include "CLHEP/Units/SystemOfUnits.h"
 #include "DecisionHandling/TrigCompositeUtils.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 class ISvcLocator;
 TrigMuonEFCombinerHypoTool::TrigMuonEFCombinerHypoTool(const std::string & type, const std::string & name, const IInterface* parent):
   AthAlgTool(type, name, parent),
@@ -43,16 +43,15 @@ StatusCode TrigMuonEFCombinerHypoTool::initialize(){
 }
 bool TrigMuonEFCombinerHypoTool::decideOnSingleObject(TrigMuonEFCombinerHypoTool::MuonEFInfo& input, size_t cutIndex) const{
   ATH_MSG_DEBUG( "deciding...");
-  using namespace Monitored;
   //Monitored Variables
   std::vector<float> fexPt, fexEta, fexPhi, selPt, selEta, selPhi;
-  auto muonPtMon = MonitoredCollection::declare("Pt", fexPt);
-  auto muonEtaMon = MonitoredCollection::declare("Eta", fexEta);
-  auto muonPhiMon = MonitoredCollection::declare("Phi", fexPhi);
-  auto muonPtSelMon = MonitoredCollection::declare("Pt_sel", selPt);
-  auto muonEtaSelMon = MonitoredCollection::declare("Eta_sel", selEta);
-  auto muonPhiSelMon = MonitoredCollection::declare("Phi_sel", selPhi);
-  auto monitorIt	= MonitoredScope::declare(m_monTool, muonPtMon, muonEtaMon, muonPhiMon, muonPtSelMon, muonEtaSelMon, muonPhiSelMon); 
+  auto muonPtMon = Monitored::Collection("Pt", fexPt);
+  auto muonEtaMon = Monitored::Collection("Eta", fexEta);
+  auto muonPhiMon = Monitored::Collection("Phi", fexPhi);
+  auto muonPtSelMon = Monitored::Collection("Pt_sel", selPt);
+  auto muonEtaSelMon = Monitored::Collection("Eta_sel", selEta);
+  auto muonPhiSelMon = Monitored::Collection("Phi_sel", selPhi);
+  auto monitorIt	= Monitored::Group(m_monTool, muonPtMon, muonEtaMon, muonPhiMon, muonPtSelMon, muonEtaSelMon, muonPhiSelMon); 
   bool result = false;
   //for pass through mode
   if(m_acceptAll) {
diff --git a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMuonEFMSonlyHypoTool.cxx b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMuonEFMSonlyHypoTool.cxx
index 54766989511..6fde08b283a 100644
--- a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMuonEFMSonlyHypoTool.cxx
+++ b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMuonEFMSonlyHypoTool.cxx
@@ -6,7 +6,7 @@
 #include "TrigMuonHypo/TrigMuonEFMSonlyHypoTool.h"
 #include "CLHEP/Units/SystemOfUnits.h"
 #include "DecisionHandling/TrigCompositeUtils.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 class ISvcLocator;
 TrigMuonEFMSonlyHypoTool::TrigMuonEFMSonlyHypoTool(const std::string & type, const std::string & name, const IInterface* parent):
   AthAlgTool(type, name, parent),
@@ -43,16 +43,15 @@ StatusCode TrigMuonEFMSonlyHypoTool::initialize(){
 }
 bool TrigMuonEFMSonlyHypoTool::decideOnSingleObject(TrigMuonEFMSonlyHypoTool::MuonEFInfo& input, size_t cutIndex) const{
   ATH_MSG_DEBUG( "deciding...");
-  using namespace Monitored;
   //Monitored Variables
   std::vector<float> fexPt, fexEta, fexPhi, selPt, selEta, selPhi;
-  auto muonPtMon = MonitoredCollection::declare("Pt", fexPt);
-  auto muonEtaMon = MonitoredCollection::declare("Eta", fexEta);
-  auto muonPhiMon = MonitoredCollection::declare("Phi", fexPhi);
-  auto muonPtSelMon = MonitoredCollection::declare("Pt_sel", selPt);
-  auto muonEtaSelMon = MonitoredCollection::declare("Eta_sel", selEta);
-  auto muonPhiSelMon = MonitoredCollection::declare("Phi_sel", selPhi);
-  auto monitorIt	= MonitoredScope::declare(m_monTool, muonPtMon, muonEtaMon, muonPhiMon, muonPtSelMon, muonEtaSelMon, muonPhiSelMon); 
+  auto muonPtMon = Monitored::Collection("Pt", fexPt);
+  auto muonEtaMon = Monitored::Collection("Eta", fexEta);
+  auto muonPhiMon = Monitored::Collection("Phi", fexPhi);
+  auto muonPtSelMon = Monitored::Collection("Pt_sel", selPt);
+  auto muonEtaSelMon = Monitored::Collection("Eta_sel", selEta);
+  auto muonPhiSelMon = Monitored::Collection("Phi_sel", selPhi);
+  auto monitorIt	= Monitored::Group(m_monTool, muonPtMon, muonEtaMon, muonPhiMon, muonPtSelMon, muonEtaSelMon, muonPhiSelMon); 
   bool result = false;
   //for pass through mode
   if(m_acceptAll) {
diff --git a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMuonEFTrackIsolationHypoTool.cxx b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMuonEFTrackIsolationHypoTool.cxx
old mode 100755
new mode 100644
index a5012661ee6..73b40ffa462
--- a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMuonEFTrackIsolationHypoTool.cxx
+++ b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigMuonEFTrackIsolationHypoTool.cxx
@@ -7,7 +7,7 @@
 
 #include "GaudiKernel/MsgStream.h"
 #include "GaudiKernel/StatusCode.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 #include "DecisionHandling/Combinators.h"
 
@@ -79,13 +79,12 @@ bool TrigMuonEFTrackIsolationHypoTool::decideOnSingleObject(TrigMuonEFTrackIsola
 {
    ATH_MSG_DEBUG("Decision ...");
 
-   using namespace Monitored;
    std::vector<float> ini_ptcone02(0);
    std::vector<float> ini_ptcone03(0);
-   auto fex_ptcone02 = MonitoredCollection::declare("PtCone02", ini_ptcone02);
-   auto fex_ptcone03 = MonitoredCollection::declare("PtCone03", ini_ptcone03);
+   auto fex_ptcone02 = Monitored::Collection("PtCone02", ini_ptcone02);
+   auto fex_ptcone03 = Monitored::Collection("PtCone03", ini_ptcone03);
 
-   auto monitorIt    = MonitoredScope::declare( m_monTool, fex_ptcone02, fex_ptcone03 );
+   auto monitorIt    = Monitored::Group( m_monTool, fex_ptcone02, fex_ptcone03 );
 
    ATH_MSG_VERBOSE( "Cut index " << cutIndex );
 
diff --git a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigmuCombHypoTool.cxx b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigmuCombHypoTool.cxx
index eafacec2af1..dbb695693c1 100644
--- a/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigmuCombHypoTool.cxx
+++ b/Trigger/TrigHypothesis/TrigMuonHypo/src/TrigmuCombHypoTool.cxx
@@ -7,7 +7,7 @@
 
 #include "GaudiKernel/MsgStream.h"
 #include "GaudiKernel/StatusCode.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 #include "DecisionHandling/Combinators.h"
 
@@ -74,18 +74,17 @@ StatusCode TrigmuCombHypoTool::initialize()
 
 bool TrigmuCombHypoTool::decideOnSingleObject(TrigmuCombHypoTool::CombinedMuonInfo& input, size_t cutIndex) const
 {
-   using namespace Monitored;
  
    // defined Monitoring variables
-   auto fexPt	= MonitoredScalar::declare("Pt", -9999.);
-   auto ptFL	= MonitoredScalar::declare("PtFL", -9999.);
-   auto Strategy	= MonitoredScalar::declare("StrategyFlag", 0);
-   auto idEta 	= MonitoredScalar::declare("Eta", -9999.);
-   auto idPhi 	= MonitoredScalar::declare("Phi", -9999.);
-   auto idZ0 	= MonitoredScalar::declare("Z0", -9999.);
-   auto idA0 	= MonitoredScalar::declare("A0", -9999.);
+   auto fexPt	= Monitored::Scalar("Pt", -9999.);
+   auto ptFL	= Monitored::Scalar("PtFL", -9999.);
+   auto Strategy	= Monitored::Scalar("StrategyFlag", 0);
+   auto idEta 	= Monitored::Scalar("Eta", -9999.);
+   auto idPhi 	= Monitored::Scalar("Phi", -9999.);
+   auto idZ0 	= Monitored::Scalar("Z0", -9999.);
+   auto idA0 	= Monitored::Scalar("A0", -9999.);
  
-   auto monitorIt = MonitoredScope::declare(m_monTool, fexPt, ptFL, Strategy, 
+   auto monitorIt = Monitored::Group(m_monTool, fexPt, ptFL, Strategy, 
  					   idEta, idPhi, idZ0, idA0);
 
    ATH_MSG_VERBOSE( "Cut index " << cutIndex );
diff --git a/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTauGenericHypoMT.cxx b/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTauGenericHypoMT.cxx
old mode 100755
new mode 100644
index c3966a5ab5f..a3563570f33
--- a/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTauGenericHypoMT.cxx
+++ b/Trigger/TrigHypothesis/TrigTauHypo/src/TrigTauGenericHypoMT.cxx
@@ -44,7 +44,7 @@
 
 #include "DecisionHandling/HLTIdentifier.h"
 #include "DecisionHandling/Combinators.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 //class ISvcLocator;
 
@@ -94,10 +94,9 @@ bool TrigTauGenericHypoMT::decide( const ITrigTauGenericHypoTool::ClusterInfo& i
 
   bool pass = false;
 
-  using namespace Monitored;
 
-  auto PassedCuts        = MonitoredScalar::declare<int>( "CutCounter", -1 );
-  auto monitorIt         = MonitoredScope::declare( m_monTool, PassedCuts );
+  auto PassedCuts        = Monitored::Scalar<int>( "CutCounter", -1 );
+  auto monitorIt         = Monitored::Group( m_monTool, PassedCuts );
 
   // when leaving scope it will ship data to monTool
   PassedCuts = PassedCuts + 1; //got called (data in place)
diff --git a/Trigger/TrigSteer/L1Decoder/src/CTPUnpackingTool.cxx b/Trigger/TrigSteer/L1Decoder/src/CTPUnpackingTool.cxx
index 8eff1b8e0db..2e5d83ac1f5 100644
--- a/Trigger/TrigSteer/L1Decoder/src/CTPUnpackingTool.cxx
+++ b/Trigger/TrigSteer/L1Decoder/src/CTPUnpackingTool.cxx
@@ -3,7 +3,7 @@
 */
 #include "DecisionHandling/HLTIdentifier.h"
 #include "TrigT1Result/RoIBResult.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 #include "TrigConfL1Data/CTPConfig.h"
 #include "TrigConfL1Data/TriggerItem.h"
 #include "CTPUnpackingTool.h"
@@ -54,10 +54,9 @@ StatusCode CTPUnpackingTool::updateConfiguration( const std::map<std::string, st
 
 
 StatusCode CTPUnpackingTool::decode( const ROIB::RoIBResult& roib,  HLT::IDVec& enabledChains ) const {
-  using namespace Monitored;
-  auto nTAVItems = MonitoredScalar::declare( "TAVItems", 0 );
-  auto nChains   = MonitoredScalar::declare( "Chains", 0 );
-  auto monitorit = MonitoredScope::declare( m_monTool, nTAVItems, nChains );
+  auto nTAVItems = Monitored::Scalar( "TAVItems", 0 );
+  auto nChains   = Monitored::Scalar( "Chains", 0 );
+  auto monitorit = Monitored::Group( m_monTool, nTAVItems, nChains );
   auto tav = roib.cTPResult().TAV();
   const size_t tavSize = tav.size();
 
diff --git a/Trigger/TrigSteer/L1Decoder/src/EMRoIsUnpackingTool.cxx b/Trigger/TrigSteer/L1Decoder/src/EMRoIsUnpackingTool.cxx
index aa18cb8d7e5..558bdd59e50 100644
--- a/Trigger/TrigSteer/L1Decoder/src/EMRoIsUnpackingTool.cxx
+++ b/Trigger/TrigSteer/L1Decoder/src/EMRoIsUnpackingTool.cxx
@@ -5,7 +5,7 @@
 #include "EMRoIsUnpackingTool.h"
 #include "TrigT1Result/RoIBResult.h"
 #include "TrigT1Interfaces/TrigT1CaloDefs.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 #include "TrigConfL1Data/CTPConfig.h"
 
 /////////////////////////////////////////////////////////////////// 
@@ -131,11 +131,10 @@ StatusCode EMRoIsUnpackingTool::unpack( const EventContext& ctx,
 
   // monitoring
   {
-    using namespace Monitored;
-    auto RoIsCount = MonitoredScalar::declare( "count", trigRoIs->size() );
-    auto RoIsPhi   = MonitoredCollection::declare( "phi", *trigRoIs, &TrigRoiDescriptor::phi );
-    auto RoIsEta   = MonitoredCollection::declare( "eta", *trigRoIs, &TrigRoiDescriptor::eta );
-    MonitoredScope::declare( m_monTool,  RoIsCount, RoIsEta, RoIsPhi );
+    auto RoIsCount = Monitored::Scalar( "count", trigRoIs->size() );
+    auto RoIsPhi   = Monitored::Collection( "phi", *trigRoIs, &TrigRoiDescriptor::phi );
+    auto RoIsEta   = Monitored::Collection( "eta", *trigRoIs, &TrigRoiDescriptor::eta );
+    Monitored::Group( m_monTool,  RoIsCount, RoIsEta, RoIsPhi );
   }
 
   ATH_MSG_DEBUG( "Unpacked " <<  trigRoIs->size() << " RoIs" );
diff --git a/Trigger/TrigSteer/L1Decoder/src/FakeRoI.cxx b/Trigger/TrigSteer/L1Decoder/src/FakeRoI.cxx
index 3e8f552cdb8..001fba73edc 100644
--- a/Trigger/TrigSteer/L1Decoder/src/FakeRoI.cxx
+++ b/Trigger/TrigSteer/L1Decoder/src/FakeRoI.cxx
@@ -19,7 +19,7 @@
 #include "TrigT1Result/RoIBResult.h"
 #include "TrigConfL1Data/L1DataDef.h"
 #include "TrigConfHLTData/HLTUtils.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 #include "./FakeRoI.h"
 
@@ -123,9 +123,8 @@ StatusCode FakeRoI::execute() {
 	m_decisions->setStore(m_decisionsAux.ptr());
 
 
-    using namespace Monitored;
-    auto roiCount = MonitoredScalar::declare<int>("roiCount",0);
-    auto monitorit = MonitoredScope::declare(m_monTool, roiCount);
+    auto roiCount = Monitored::Scalar<int>("roiCount",0);
+    auto monitorit = Monitored::Group(m_monTool, roiCount);
 
 	for (auto& fakeRoI : m_inputData[m_currentRowNumber]) {
         roiCount += 1;
diff --git a/Trigger/TrigSteer/L1Decoder/src/JRoIsUnpackingTool.cxx b/Trigger/TrigSteer/L1Decoder/src/JRoIsUnpackingTool.cxx
index 0fc1f102fed..fcc40726833 100644
--- a/Trigger/TrigSteer/L1Decoder/src/JRoIsUnpackingTool.cxx
+++ b/Trigger/TrigSteer/L1Decoder/src/JRoIsUnpackingTool.cxx
@@ -5,7 +5,7 @@
 #include "JRoIsUnpackingTool.h"
 #include "TrigT1Result/RoIBResult.h"
 #include "TrigT1Interfaces/TrigT1CaloDefs.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 #include "TrigConfL1Data/CTPConfig.h"
 
 JRoIsUnpackingTool::JRoIsUnpackingTool( const std::string& type, 
@@ -117,11 +117,10 @@ StatusCode JRoIsUnpackingTool::unpack( const EventContext& ctx,
 
   // monitoring
   {
-    using namespace Monitored;
-    auto RoIsCount = MonitoredScalar::declare( "count", trigRoIs->size() );
-    auto RoIsPhi   = MonitoredCollection::declare( "phi", *trigRoIs, &TrigRoiDescriptor::phi );
-    auto RoIsEta   = MonitoredCollection::declare( "eta", *trigRoIs, &TrigRoiDescriptor::eta );
-    MonitoredScope::declare( m_monTool,  RoIsCount, RoIsEta, RoIsPhi );
+    auto RoIsCount = Monitored::Scalar( "count", trigRoIs->size() );
+    auto RoIsPhi   = Monitored::Collection( "phi", *trigRoIs, &TrigRoiDescriptor::phi );
+    auto RoIsEta   = Monitored::Collection( "eta", *trigRoIs, &TrigRoiDescriptor::eta );
+    Monitored::Group( m_monTool,  RoIsCount, RoIsEta, RoIsPhi );
   }
 
   ATH_MSG_DEBUG( "Number of decision IDs associated with FS RoI: " <<  TrigCompositeUtils::decisionIDs( decision ).size()  );
diff --git a/Trigger/TrigSteer/L1Decoder/src/MURoIsUnpackingTool.cxx b/Trigger/TrigSteer/L1Decoder/src/MURoIsUnpackingTool.cxx
index 379476043be..763d2687fc3 100644
--- a/Trigger/TrigSteer/L1Decoder/src/MURoIsUnpackingTool.cxx
+++ b/Trigger/TrigSteer/L1Decoder/src/MURoIsUnpackingTool.cxx
@@ -3,7 +3,7 @@
 */
 #include "MURoIsUnpackingTool.h"
 #include "TrigT1Result/RoIBResult.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 #include "TrigConfL1Data/CTPConfig.h"
 
 /////////////////////////////////////////////////////////////////// 
@@ -103,11 +103,10 @@ StatusCode MURoIsUnpackingTool::unpack( const EventContext& ctx,
   }
   // monitoring
   {
-    using namespace Monitored;
-    auto RoIsCount = MonitoredScalar::declare( "count", trigRoIs->size() );
-    auto RoIsPhi   = MonitoredCollection::declare( "phi", *trigRoIs, &TrigRoiDescriptor::phi );
-    auto RoIsEta   = MonitoredCollection::declare( "eta", *trigRoIs, &TrigRoiDescriptor::eta );
-    MonitoredScope::declare( m_monTool,  RoIsCount, RoIsEta, RoIsPhi );
+    auto RoIsCount = Monitored::Scalar( "count", trigRoIs->size() );
+    auto RoIsPhi   = Monitored::Collection( "phi", *trigRoIs, &TrigRoiDescriptor::phi );
+    auto RoIsEta   = Monitored::Collection( "eta", *trigRoIs, &TrigRoiDescriptor::eta );
+    Monitored::Group( m_monTool,  RoIsCount, RoIsEta, RoIsPhi );
   }
   return StatusCode::SUCCESS;
 }
diff --git a/Trigger/TrigSteer/L1Decoder/src/TAURoIsUnpackingTool.cxx b/Trigger/TrigSteer/L1Decoder/src/TAURoIsUnpackingTool.cxx
index 74ebc40b0fa..1fb56141d14 100644
--- a/Trigger/TrigSteer/L1Decoder/src/TAURoIsUnpackingTool.cxx
+++ b/Trigger/TrigSteer/L1Decoder/src/TAURoIsUnpackingTool.cxx
@@ -5,7 +5,7 @@
 #include "TAURoIsUnpackingTool.h"
 #include "TrigT1Result/RoIBResult.h"
 #include "TrigT1Interfaces/TrigT1CaloDefs.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 #include "TrigConfL1Data/CTPConfig.h"
 
 /////////////////////////////////////////////////////////////////// 
@@ -104,11 +104,10 @@ StatusCode TAURoIsUnpackingTool::unpack( const EventContext& ctx,
   }
   // monitoring
   {
-    using namespace Monitored;
-    auto RoIsCount = MonitoredScalar::declare( "count", trigRoIs->size() );
-    auto RoIsPhi   = MonitoredCollection::declare( "phi", *trigRoIs, &TrigRoiDescriptor::phi );
-    auto RoIsEta   = MonitoredCollection::declare( "eta", *trigRoIs, &TrigRoiDescriptor::eta );
-    MonitoredScope::declare( m_monTool,  RoIsCount, RoIsEta, RoIsPhi );
+    auto RoIsCount = Monitored::Scalar( "count", trigRoIs->size() );
+    auto RoIsPhi   = Monitored::Collection( "phi", *trigRoIs, &TrigRoiDescriptor::phi );
+    auto RoIsEta   = Monitored::Collection( "eta", *trigRoIs, &TrigRoiDescriptor::eta );
+    Monitored::Group( m_monTool,  RoIsCount, RoIsEta, RoIsPhi );
   }
 
   ATH_MSG_DEBUG( "Unpacked " <<  trigRoIs->size() << " RoIs" );
diff --git a/Trigger/TrigSteer/TrigOutputHandling/src/HLTResultMTMaker.cxx b/Trigger/TrigSteer/TrigOutputHandling/src/HLTResultMTMaker.cxx
index 341ecf6c149..b4f4c09a9a5 100644
--- a/Trigger/TrigSteer/TrigOutputHandling/src/HLTResultMTMaker.cxx
+++ b/Trigger/TrigSteer/TrigOutputHandling/src/HLTResultMTMaker.cxx
@@ -3,7 +3,7 @@
 */
 
 #include "TrigOutputHandling/HLTResultMTMaker.h"
-#include "AthenaMonitoring/MonitoredScope.h"
+#include "AthenaMonitoring/Monitored.h"
 
 // =============================================================================
 // Standard constructor
@@ -45,23 +45,22 @@ StatusCode HLTResultMTMaker::makeResult(const EventContext& eventContext) const
   ATH_MSG_DEBUG("Recorded HLTResultMT with key " << m_hltResultWHKey.key());
 
   // Fill the object using the result maker tools
-  using namespace Monitored;
-  auto time =  MonitoredTimer::declare("TIME_build" );
+  auto time =  Monitored::Timer("TIME_build" );
   for (auto& maker: m_makerTools) {
     ATH_CHECK(maker->fill(*hltResult));
   }
   time.stop();
 
   // Fill monitoring histograms
-  auto nstreams = MonitoredScalar::declare("nstreams", hltResult->getStreamTags().size());
-  auto bitWords = MonitoredScalar::declare("bitWords", hltResult->getHltBits().size());
-  auto nfrags   = MonitoredScalar::declare("nfrags",   hltResult->getSerialisedData().size());
-  auto sizeMain = MonitoredScalar::declare("sizeMain", -1.);
+  auto nstreams = Monitored::Scalar("nstreams", hltResult->getStreamTags().size());
+  auto bitWords = Monitored::Scalar("bitWords", hltResult->getHltBits().size());
+  auto nfrags   = Monitored::Scalar("nfrags",   hltResult->getSerialisedData().size());
+  auto sizeMain = Monitored::Scalar("sizeMain", -1.);
   auto iter = hltResult->getSerialisedData().find(0); // this is the main fragment of the HLT result
   if (iter != hltResult->getSerialisedData().end())
     sizeMain = double(iter->second.size()*sizeof(uint32_t))/1024;
 
-  MonitoredScope::declare(m_monTool, time, nstreams, nfrags, sizeMain, bitWords);
+  Monitored::Group(m_monTool, time, nstreams, nfrags, sizeMain, bitWords);
 
   return StatusCode::SUCCESS;
 }
-- 
GitLab