diff --git a/Calorimeter/CaloTools/src/CaloNoiseToolDB.cxx b/Calorimeter/CaloTools/src/CaloNoiseToolDB.cxx
index 8383130f0352d283f5de59fbf52730d567e9fed0..2eec234ffb261493603e7371ad55c0c3ed92356f 100644
--- a/Calorimeter/CaloTools/src/CaloNoiseToolDB.cxx
+++ b/Calorimeter/CaloTools/src/CaloNoiseToolDB.cxx
@@ -117,6 +117,9 @@ CaloNoiseToolDB::initialize()
     ATH_CHECK( detStore()->regFcn(&ILArCellHVCorrTool::LoadCalibration, &(*m_larHVCellCorrTool),&CaloNoiseToolDB::clearCache, this) );
     ATH_MSG_INFO( "Regestered callback on ILArCellHVCorrTool::LoadCalibration"  );
   }
+  else {
+    m_larHVCellCorrTool.disable();
+  }
 
   ATH_MSG_INFO( "CaloNoiseToolDB geoInit() end"  );
 
diff --git a/Control/AthViews/AthViews/SimpleView.h b/Control/AthViews/AthViews/SimpleView.h
index 457f9fc5e34f29440ec323693438e5c1ee625ec4..fc0d120fdb78352bf5b764d7f0efb64ecbf1d4cf 100644
--- a/Control/AthViews/AthViews/SimpleView.h
+++ b/Control/AthViews/AthViews/SimpleView.h
@@ -36,6 +36,7 @@ class SimpleView : public IProxyDict
 		DeclareInterfaceID( SimpleView, 2, 0 );
 		SimpleView();
 		SimpleView( std::string Name, bool AllowFallThrough = true );
+		SimpleView( std::string Name, bool AllowFallThrough, std::string const& storeName );
 		virtual ~SimpleView();
 
 		/// get default proxy with given id. Returns 0 to flag failure
diff --git a/Control/AthViews/AthViews/View.h b/Control/AthViews/AthViews/View.h
index 8ea49e3f170a9416d898906725a505036b7531ff..d122577d35a48b8f910695c1ee787c6d0792f0a3 100644
--- a/Control/AthViews/AthViews/View.h
+++ b/Control/AthViews/AthViews/View.h
@@ -21,6 +21,7 @@ namespace SG {
 class View : public IProxyDict {
 public:
   View (const std::string& name, bool AllowFallThrough = true);
+  View (const std::string& name, bool AllowFallThrough, std::string const& storeName);
   virtual ~View ();
   View (const View&) = delete;
   View& operator= (const View&) = delete;
diff --git a/Control/AthViews/share/DigiModel.py b/Control/AthViews/share/DigiModel.py
new file mode 100644
index 0000000000000000000000000000000000000000..d4515102ea4125eb4072e51bb5937aa688a33461
--- /dev/null
+++ b/Control/AthViews/share/DigiModel.py
@@ -0,0 +1,76 @@
+#
+#  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+#
+
+###############################################################
+#
+# Job options file
+#
+# Based on AthExStoreGateExamples
+#
+#==============================================================
+
+#--------------------------------------------------------------
+# ATLAS default Application Configuration options
+#--------------------------------------------------------------
+
+# Configure the scheduler
+from AthenaCommon.AlgScheduler import AlgScheduler
+AlgScheduler.ShowControlFlow( True )
+AlgScheduler.ShowDataDependencies( True )
+
+# Make an extra StoreGate for the pileup events
+import StoreGate.StoreGateConf as StoreGateConf
+DigiStore = StoreGateConf.StoreGateSvc( "digi_store" )
+DigiStore.OutputLevel = VERBOSE
+svcMgr += DigiStore
+
+# Control flow
+from AthenaCommon.AlgSequence import AthSequencer
+allViewAlgorithms = AthSequencer( "allViewAlgorithms" )
+allViewAlgorithms.ModeOR = False
+allViewAlgorithms.Sequential = False
+allViewAlgorithms.StopOverride = False
+makeViewSequence = AthSequencer( "makeViewSequence" )
+makeViewSequence.ModeOR = False
+makeViewSequence.Sequential = True
+makeViewSequence.StopOverride = False
+
+# Event-level algorithm sequence
+from AthenaCommon.AlgSequence import AlgSequence
+job = AlgSequence()
+
+# Make views
+DigiSetup = CfgMgr.AthViews__DigiDemoSetupAlg("digi_setup")
+DigiSetup.ViewBaseName = "view"
+DigiSetup.ViewNumber = 10
+DigiSetup.ViewNodeName = "allViewAlgorithms"
+DigiSetup.Scheduler = AlgScheduler.getScheduler()
+DigiSetup.DigiStore = DigiStore
+DigiSetup.DigiData = "dflow_ints"
+makeViewSequence += DigiSetup
+
+# View algorithms run transparently in the digi store events
+ViewTest = CfgMgr.AthViews__ViewTestAlg("view_test")
+allViewAlgorithms += ViewTest
+
+# Add the view algorithms to the job
+makeViewSequence += allViewAlgorithms
+
+# Merge data from many digi store events
+DigiMerge = CfgMgr.AthViews__ViewMergeAlg("digi_merge")
+makeViewSequence += DigiMerge
+
+job += makeViewSequence
+
+#--------------------------------------------------------------
+# Event related parameters
+#--------------------------------------------------------------
+theApp.EvtMax = 10
+
+
+#==============================================================
+#
+# End of job options file
+#
+###############################################################
diff --git a/Control/AthViews/src/SimpleView.cxx b/Control/AthViews/src/SimpleView.cxx
index 438a236b3799811ca6202b2eaad683e56e0e6e7d..f74aeaf65d79d8cfb7bf7f86e4511707ad6c0207 100644
--- a/Control/AthViews/src/SimpleView.cxx
+++ b/Control/AthViews/src/SimpleView.cxx
@@ -22,6 +22,13 @@ SimpleView::SimpleView( std::string Name, bool AllowFallThrough ) :
 {
 }
 
+SimpleView::SimpleView( std::string Name, bool AllowFallThrough, std::string const& storeName ) :
+	m_store( storeName, "SimpleView" ),
+	m_name( Name ),
+  m_allowFallThrough( AllowFallThrough )
+{
+}
+
 SimpleView::~SimpleView()
 {
 }
diff --git a/Control/AthViews/src/View.cxx b/Control/AthViews/src/View.cxx
index 539f7756947396466e3198a901621a41d65065ad..e4b54dd39011976dcbcd652be9f60b5ef2fa14c1 100644
--- a/Control/AthViews/src/View.cxx
+++ b/Control/AthViews/src/View.cxx
@@ -9,6 +9,10 @@ View::View(const std::string& name, bool AllowFallThrough ) {
   m_implementation = new SimpleView(name, AllowFallThrough);
 }
 
+View::View(const std::string& name, bool AllowFallThrough, std::string const& storeName) {
+  m_implementation = new SimpleView(name, AllowFallThrough, storeName);
+}
+
 View::~View () {
   delete m_implementation;
 }
diff --git a/Control/AthViews/src_dflow/DigiDemoSetupAlg.cxx b/Control/AthViews/src_dflow/DigiDemoSetupAlg.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..4e773e240ef1e632c7069b8d8091bbc4339270a1
--- /dev/null
+++ b/Control/AthViews/src_dflow/DigiDemoSetupAlg.cxx
@@ -0,0 +1,141 @@
+/*
+  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+*/
+
+#include "DigiDemoSetupAlg.h"
+#include "AthViews/ViewHelper.h"
+
+// FrameWork includes
+#include "StoreGate/WriteHandle.h"
+#include "StoreGate/ReadHandle.h"
+
+namespace AthViews {
+
+/////////////////////////////////////////////////////////////////// 
+// Public methods: 
+/////////////////////////////////////////////////////////////////// 
+
+// Constructors
+////////////////
+DigiDemoSetupAlg::DigiDemoSetupAlg( const std::string& name, 
+                      ISvcLocator* pSvcLocator ) : 
+  ::AthAlgorithm( name, pSvcLocator )
+{
+}
+
+// Destructor
+///////////////
+DigiDemoSetupAlg::~DigiDemoSetupAlg()
+{
+}
+
+// Athena Algorithm's Hooks
+////////////////////////////
+StatusCode DigiDemoSetupAlg::initialize()
+{
+  ATH_MSG_INFO ("Initializing " << name() << "...");
+
+  CHECK( m_w_ints.initialize() );
+  CHECK( m_w_views.initialize() );
+  CHECK( m_scheduler.retrieve() );
+  CHECK( m_digiStore.retrieve() );
+
+  return StatusCode::SUCCESS;
+}
+
+StatusCode DigiDemoSetupAlg::finalize()
+{
+  ATH_MSG_INFO ("Finalizing " << name() << "...");
+
+  return StatusCode::SUCCESS;
+}
+
+StatusCode DigiDemoSetupAlg::execute()
+{  
+  ATH_MSG_DEBUG ("Executing " << name() << "...");
+
+#ifdef GAUDI_SYSEXECUTE_WITHCONTEXT 
+  const EventContext& ctx = getContext();
+#else
+  const EventContext& ctx = *getContext();
+#endif
+
+
+  //Get a pointer to the digitisation store
+  IProxyDict * digiStorePointer = dynamic_cast< IProxyDict* >( m_digiStore.get() );
+  if ( !digiStorePointer )
+  {
+    ATH_MSG_FATAL( "Unable to retrieve digitisation store" );
+    return StatusCode::FAILURE;
+  }
+
+  //Hacky way to determine if you've already done the setup
+  SG::ReadHandle< int > firstHandle( "FirstTimeFlag" );
+  firstHandle.setProxyDict( digiStorePointer );
+  if ( firstHandle.isValid() )
+  {
+    //Skip first time setup
+    ATH_MSG_INFO( "Digi store already set up" );
+  }
+  else
+  {
+    //Do first time setup
+    ATH_MSG_INFO( "Setting up digi store" );
+    SG::WriteHandle< int > firstHandleFiller( "FirstTimeFlag" );
+    firstHandleFiller.setProxyDict( digiStorePointer );
+    firstHandleFiller.record( std::make_unique< int >( 1 ) );
+
+    //Make all the "pileup events"
+    for ( int eventIndex = 0; eventIndex < 100; ++eventIndex )
+    {
+      SG::View * digiView = new SG::View( m_viewBaseName + std::to_string( eventIndex ), false, digiStorePointer->name() );
+      SG::WriteHandle< std::vector< int > > digiHandle( m_w_ints );
+      digiHandle.setProxyDict( digiView );
+      digiHandle.record( std::make_unique< std::vector< int > >( 1, eventIndex ) );
+      delete digiView;
+    }
+  }
+  
+  //Make a vector of views for "pileup events" to use in this event
+  std::vector< SG::View* > viewVector( m_viewNumber, nullptr );
+  for ( int viewIndex = 0; viewIndex < m_viewNumber; ++viewIndex )
+  {
+    int sampleIndex = ( viewIndex + ctx.evt() + 37 ) % 100; // whatever
+    SG::View * digiView = new SG::View( m_viewBaseName + std::to_string( sampleIndex ), false, digiStorePointer->name() );
+    viewVector[ viewIndex ] = digiView;
+  }
+
+  //Schedule the algorithms in views
+  CHECK( ViewHelper::ScheduleViews( viewVector, //View vector
+        m_viewNodeName,                         //Name of node to attach views to
+        ctx,                                    //Context to attach the views to
+        m_scheduler.get() ) );                  //ServiceHandle for the scheduler
+
+  //Store the collection of views
+  SG::WriteHandle< std::vector< SG::View* > > outputViewHandle( m_w_views, ctx );
+  outputViewHandle.record( CxxUtils::make_unique< std::vector< SG::View* > >( viewVector ) );
+
+  return StatusCode::SUCCESS;
+}
+
+/////////////////////////////////////////////////////////////////// 
+// Const methods: 
+///////////////////////////////////////////////////////////////////
+
+/////////////////////////////////////////////////////////////////// 
+// Non-const methods: 
+/////////////////////////////////////////////////////////////////// 
+
+/////////////////////////////////////////////////////////////////// 
+// Protected methods: 
+/////////////////////////////////////////////////////////////////// 
+
+/////////////////////////////////////////////////////////////////// 
+// Const methods: 
+///////////////////////////////////////////////////////////////////
+
+/////////////////////////////////////////////////////////////////// 
+// Non-const methods: 
+/////////////////////////////////////////////////////////////////// 
+
+} //> end namespace AthViews
diff --git a/Control/AthViews/src_dflow/DigiDemoSetupAlg.h b/Control/AthViews/src_dflow/DigiDemoSetupAlg.h
new file mode 100644
index 0000000000000000000000000000000000000000..9b7865536553b7847a2b99d33aeb1f65d9f95e1e
--- /dev/null
+++ b/Control/AthViews/src_dflow/DigiDemoSetupAlg.h
@@ -0,0 +1,79 @@
+/*
+  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+*/
+
+#ifndef ATHVIEWS_ATHVIEWS_DIGIDEMOSETUPALG_H
+#define ATHVIEWS_ATHVIEWS_DIGIDEMOSETUPALG_H 1
+
+// STL includes
+#include <string>
+#include <vector>
+
+// FrameWork includes
+#include "AthenaBaseComps/AthAlgorithm.h"
+#include "AthViews/View.h"
+#include "StoreGate/WriteHandleKey.h"
+#include "GaudiKernel/IScheduler.h"
+
+namespace AthViews {
+
+class DigiDemoSetupAlg
+  : public ::AthAlgorithm
+{ 
+
+  /////////////////////////////////////////////////////////////////// 
+  // Public methods: 
+  /////////////////////////////////////////////////////////////////// 
+ public: 
+
+  // Copy constructor: 
+
+  /// Constructor with parameters: 
+  DigiDemoSetupAlg( const std::string& name, ISvcLocator* pSvcLocator );
+
+  /// Destructor: 
+  virtual ~DigiDemoSetupAlg(); 
+
+  // Athena algorithm's Hooks
+  virtual StatusCode  initialize();
+  virtual StatusCode  execute();
+  virtual StatusCode  finalize();
+
+  /////////////////////////////////////////////////////////////////// 
+  // Const methods: 
+  ///////////////////////////////////////////////////////////////////
+
+  /////////////////////////////////////////////////////////////////// 
+  // Non-const methods: 
+  /////////////////////////////////////////////////////////////////// 
+
+  /////////////////////////////////////////////////////////////////// 
+  // Private data: 
+  /////////////////////////////////////////////////////////////////// 
+ private: 
+
+  /// Default constructor: 
+  DigiDemoSetupAlg();
+
+  /// Containers
+  
+  // vars
+  ServiceHandle< IScheduler > m_scheduler { this, "Scheduler", "AvalancheSchedulerSvc", "The Athena scheduler" };
+  ServiceHandle< IProxyDict > m_digiStore { this, "DigiStore", "digi_store", "The store for pileup events" };
+  SG::WriteHandleKey< std::vector< SG::View* > > m_w_views { this, "AllViews", "all_views", "All views" };
+  SG::WriteHandleKey< std::vector< int > > m_w_ints { this, "DigiData", "digi_data", "Something to store for each pileup event" };
+  Gaudi::Property< std::string > m_viewBaseName { this, "ViewBaseName", "", "Name to use for all views - number will be appended" };
+  Gaudi::Property< std::string > m_viewNodeName { this, "ViewNodeName", "", "Name of CF node to attach views to" };
+  Gaudi::Property< int > m_viewNumber { this, "ViewNumber", 0, "Total number of views to make" };
+}; 
+
+// I/O operators
+//////////////////////
+
+/////////////////////////////////////////////////////////////////// 
+// Inline methods: 
+/////////////////////////////////////////////////////////////////// 
+
+} //> end namespace AthViews
+
+#endif //> !ATHVIEWS_ATHVIEWS_DIGIDEMOSETUPALG_H
diff --git a/Control/AthViews/src_dflow/components/AthViewsDFlow_entries.cxx b/Control/AthViews/src_dflow/components/AthViewsDFlow_entries.cxx
index 09b2e00d85186c786f02ff6cabbaf1e461cb1181..bc9adb373242264a280f14e2f9a72b4b90dbdd22 100644
--- a/Control/AthViews/src_dflow/components/AthViewsDFlow_entries.cxx
+++ b/Control/AthViews/src_dflow/components/AthViewsDFlow_entries.cxx
@@ -3,6 +3,7 @@
 #include "../DFlowAlg3.h"
 #include "../ViewMergeAlg.h"
 #include "../ViewSubgraphAlg.h"
+#include "../DigiDemoSetupAlg.h"
 
 
 DECLARE_COMPONENT( AthViews::DFlowAlg1 )
@@ -10,4 +11,5 @@ DECLARE_COMPONENT( AthViews::DFlowAlg2 )
 DECLARE_COMPONENT( AthViews::DFlowAlg3 )
 DECLARE_COMPONENT( AthViews::ViewMergeAlg )
 DECLARE_COMPONENT( AthViews::ViewSubgraphAlg )
+DECLARE_COMPONENT( AthViews::DigiDemoSetupAlg )
 
diff --git a/Control/AthenaServices/src/MetaDataSvc.cxx b/Control/AthenaServices/src/MetaDataSvc.cxx
index d2ec1a528fb9ddd2f8be11c9885e5b4deb6d7b3e..598111c657afe5463e73b7806a2b32e103e6a77c 100644
--- a/Control/AthenaServices/src/MetaDataSvc.cxx
+++ b/Control/AthenaServices/src/MetaDataSvc.cxx
@@ -72,6 +72,7 @@ MetaDataSvc::MetaDataSvc(const std::string& name, ISvcLocator* pSvcLocator) : ::
    m_toolForClid.insert(std::pair<CLID, std::string>(1234982351, "BookkeeperTool"));
    m_toolForClid.insert(std::pair<CLID, std::string>(1107011239, "xAODMaker::TriggerMenuMetaDataTool"));
    m_toolForClid.insert(std::pair<CLID, std::string>(1115934851, "LumiBlockMetaDataTool"));
+   m_toolForClid.insert(std::pair<CLID, std::string>(178309087, "xAODMaker::FileMetaDataTool"));
    m_toolForClid.insert(std::pair<CLID, std::string>(1188015687, "xAODMaker::TruthMetaDataTool"));
 }
 //__________________________________________________________________________
@@ -431,17 +432,45 @@ StatusCode MetaDataSvc::addProxyToInputMetaDataStore(const std::string& tokenStr
    }
    const std::string toolName = m_toolForClid[clid];
    if (!toolName.empty()) {
+      std::string toolInstName;
+      std::size_t pos = toolName.find("::");
+      if (pos != std::string::npos) {
+         toolInstName = toolName.substr(pos + 2);
+      } else {
+         toolInstName = toolName;
+      }
+      if (clid == 178309087) { // Some MetaData have multiple objects needing seperate tools for propagation
+         toolInstName += "_" + keyName;
+      }
       bool foundTool = false;
       for (auto iter = m_metaDataTools.begin(), iterEnd = m_metaDataTools.end(); iter != iterEnd; iter++) {
-         if ((*iter)->name() == "ToolSvc." + toolName) foundTool = true;
+         if ((*iter)->name() == "ToolSvc." + toolInstName) foundTool = true;
       }
       if (!foundTool) {
-         ToolHandle<IMetaDataTool> metadataTool(toolName);
+         if (toolInstName != toolName) {
+            toolInstName = toolName + "/" + toolInstName;
+         }
+         ToolHandle<IMetaDataTool> metadataTool(toolInstName);
          m_metaDataTools.push_back(metadataTool);
          if (!metadataTool.retrieve().isSuccess()) {
-            ATH_MSG_FATAL("Cannot get " << toolName);
+            ATH_MSG_FATAL("Cannot get " << toolInstName);
             return(StatusCode::FAILURE);
          }
+         if (clid == 178309087) { // Set keys for FileMetaDataTool
+            IProperty* property = dynamic_cast<IProperty*>(metadataTool.get());
+            if (property == nullptr) {
+               ATH_MSG_FATAL("addProxyToInputMetaDataStore: Cannot set input key " << tokenStr);
+               return(StatusCode::FAILURE);
+            }
+            if (!property->setProperty("InputKey", keyName).isSuccess()) {
+               ATH_MSG_FATAL("addProxyToInputMetaDataStore: Cannot set input key " << tokenStr);
+               return(StatusCode::FAILURE);
+            }
+            if (!property->setProperty("OutputKey", keyName).isSuccess()) {
+               ATH_MSG_FATAL("addProxyToInputMetaDataStore: Cannot set output key " << tokenStr);
+               return(StatusCode::FAILURE);
+            }
+         }
       }
    }
    const std::string par[3] = { "SHM" , keyName , className };
diff --git a/Control/AthenaServices/src/MetaDataSvc.h b/Control/AthenaServices/src/MetaDataSvc.h
index 5d4a277343d7a71b0351659ff3853c35cb92c862..30d45fcfe7ccf7479dbdf45bc59bfbbba007d68c 100644
--- a/Control/AthenaServices/src/MetaDataSvc.h
+++ b/Control/AthenaServices/src/MetaDataSvc.h
@@ -115,7 +115,6 @@ private: // properties
    /// MetaDataContainer, POOL container name for MetaData.
    StringProperty                 m_metaDataCont;
    /// MetaDataTools, vector with the MetaData tools.
-   //ToolHandleArray<IAlgTool> m_metaDataTools;
    ToolHandleArray<IMetaDataTool> m_metaDataTools;
 };
 
diff --git a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead.ref b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead.ref
index d6b65a6865cee315b831a4f392f22e6c5fb4abf3..45999c6a455e1313ac3790207f21e78ca8e7b6c8 100644
--- a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead.ref
@@ -1,14 +1,111 @@
+Wed Mar 14 17:40:01 CET 2018
+Preloading tcmalloc_minimal.so
+Py:Athena            INFO including file "AthenaCommon/Preparation.py"
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1639]
+Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
+Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
+Py:Athena            INFO executing ROOT6Setup
+Py:Athena            INFO including file "AthenaCommon/Execution.py"
+Py:Athena            INFO including file "DataModelRunTests/AuxDataTestRead_jo.py"
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+Py:Athena            INFO including file "EventAthenaPool/EventAthenaPoolItemList_joboptions.py"
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
+Py:Athena            INFO including file "AthenaCommon/runbatch.py"
+ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
+ApplicationMgr    SUCCESS 
+====================================================================================================================================
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 17:40:17 2018
+====================================================================================================================================
+ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
+ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
+StatusCodeSvc        INFO initialize
+AthDictLoaderSvc     INFO in initialize...
+AthDictLoaderSvc     INFO acquired Dso-registry
+ClassIDSvc           INFO  getRegistryEntries: read 9958 CLIDRegistry entries for module ALL
+ChronoStatSvc        INFO  Number of skipped events for MemStat-1
+CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
+CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
+AthenaEventLoopMgr   INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00
+ClassIDSvc           INFO  getRegistryEntries: read 752 CLIDRegistry entries for module ALL
+DecisionSvc          INFO Inserting stream: Stream1 with no Algs
+MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00
+AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
+PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
+PoolSvc              INFO Frontier compression level set to 5
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
+PoolSvc              INFO Successfully setup replica sorting algorithm
+PoolSvc              INFO Setting up APR FileCatalog and Streams
+PoolSvc              INFO POOL WriteCatalog is file:AuxDataTestRead_catalog.xml
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
+EventSelector        INFO reinitialization...
+EventSelector        INFO EventSelection with query 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] BD743C69-DFE3-2AF1-523D-40853CCDE86A
+Domain[ROOT_All]     INFO                           auxdata.root
+RootDatabase.open    INFO auxdata.root File version:61006
+auxdata.root         INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] BD743C69-DFE3-2AF1-523D-40853CCDE86A
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] BD743C69-DFE3-2AF1-523D-40853CCDE86A
+Domain[ROOT_All]     INFO                           auxdata.root
+RootDatabase.open    INFO auxdata.root File version:61006
+auxdata.root         INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] BD743C69-DFE3-2AF1-523D-40853CCDE86A
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 2000D6A7-4548-F943-8CED-8D62475D09DD
+Domain[ROOT_All]     INFO                           auxdata.root
+RootDatabase.open    INFO auxdata.root File version:61006
+EventPersistenc...   INFO Added successfully Conversion service:AthenaPoolCnvSvc
+OutputStreamSeq...   INFO Initializing OutputStreamSequencerSvc - package version AthenaServices-00-00-00
+Stream1.Stream1...   INFO Initializing Stream1.Stream1Tool - package version AthenaServices-00-00-00
 Stream1              INFO Found HelperTools = PrivateToolHandleArray([])
 Stream1              INFO Data output: auxdata2.root
+Stream1              INFO I/O reinitialization...
+ClassIDSvc           INFO  getRegistryEntries: read 705 CLIDRegistry entries for module ALL
+DecisionSvc          INFO Inserting stream: Stream2 with no Algs
+Stream2.Stream2...   INFO Initializing Stream2.Stream2Tool - package version AthenaServices-00-00-00
 Stream2              INFO Found HelperTools = PrivateToolHandleArray([])
 Stream2              INFO Data output: auxdata2b.root
+Stream2              INFO I/O reinitialization...
+HistogramPersis...WARNING Histograms saving not required.
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
+auxdata.root         INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 2000D6A7-4548-F943-8CED-8D62475D09DD
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 2000D6A7-4548-F943-8CED-8D62475D09DD
+Domain[ROOT_All]     INFO                           auxdata.root
+RootDatabase.open    INFO auxdata.root File version:61006
+ApplicationMgr       INFO Application Manager Started successfully
 AlgResourcePool      INFO TopAlg list empty. Recovering the one of Application Manager
+AthenaPoolConve...   INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
+ClassIDSvc           INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
 1
+ClassIDSvc           INFO  getRegistryEntries: read 50 CLIDRegistry entries for module ALL
 aB aFloat1 anInt1 dFloat1 pfloat pint pvfloat pvint 
  anInt1: 1100 aFloat1: 1200.5 pInt: 2 pFloat: 0.01 aB: 1300 dFloat1: 1400.5
   pvInt: []
@@ -41,6 +138,14 @@ aB aFloat1 anInt1 dFloat1 pfloat pint pvfloat pvint
   pvInt: [-310 -309 -308 -307 -306 -305 -304 -303 -302 ]
   pvFloat: [-0.409 -0.309 -0.209 -0.109 -0.009 0.091 0.191 0.291 0.391 ]
 b anInt1: 9999 aFloat1: 9999.5 anEL: bauxvec[1] aB: 10099 dFloat1: 10199.5
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     UPDATE    [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] 31134105-5B75-D145-841D-9B8429B884D9
+Domain[ROOT_All]     INFO                           auxdata2.root
+RootDatabase.open    INFO auxdata2.root File version:61006
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] BB9E8887-2B21-2E47-9DAD-C6CC1C04B82F
+Domain[ROOT_All]     INFO                           auxdata2b.root
+RootDatabase.open    INFO auxdata2b.root File version:61006
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #0, run #0 1 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #1, run #0 1 events processed so far  <<<===
 2
@@ -707,8 +812,24 @@ aB aFloat1 anInt1 dFloat1 pfloat pint pvfloat pvint
   pvFloat: [-0.390 -0.290 -0.190 -0.090 0.010 0.110 0.210 0.310 0.410 ]
 b anInt1: 199980 aFloat1: 199980.5 anEL: bauxvec[0] aB: 200080 dFloat1: 200180
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
+Stream1              INFO Records written: 21
 Stream2              INFO Records written: 21
+auxdata.root         INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 2000D6A7-4548-F943-8CED-8D62475D09DD
+auxdata2.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] 31134105-5B75-D145-841D-9B8429B884D9
+auxdata2b.root       INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] BB9E8887-2B21-2E47-9DAD-C6CC1C04B82F
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     UPDATE    [ROOT_All] 
+ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog           INFO File 'AuxDataTestRead_catalog.xml' does not exist. New file created.
+DecisionSvc          INFO Finalized successfully.
+AthDictLoaderSvc     INFO in finalize...
+ToolSvc              INFO Removing all tools created by ToolSvc
+ChronoStatSvc.f...   INFO  Service finalized successfully 
 ApplicationMgr       INFO Application Manager Finalized successfully
 ApplicationMgr       INFO Application Manager Terminated successfully
+Py:Athena            INFO leaving with code 0: "successful run"
diff --git a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead2.ref b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead2.ref
index 513f8f9761f8452a4fb9cf9dbe2ff4afdf9a0f99..a450b9407abdf1147111859353302ad1628da1fd 100644
--- a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead2.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead2.ref
@@ -1,21 +1,28 @@
-Thu Nov  2 15:26:27 EDT 2017
-WARNING: TCMALLOCDIR not defined, will use libc malloc
+Wed Mar 14 18:13:33 CET 2018
+Preloading tcmalloc_minimal.so
 Py:Athena            INFO including file "AthenaCommon/Preparation.py"
-Py:Athena            INFO using release [?-21.0.0] [i686-slc5-gcc43-dbg] [?/?] -- built on [?]
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1645]
 Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
 Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
 Py:Athena            INFO executing ROOT6Setup
 Py:Athena            INFO including file "AthenaCommon/Execution.py"
 Py:Athena            INFO including file "DataModelRunTests/AuxDataTestRead2_jo.py"
-Py:ConfigurableDb    INFO Read module info for 467 configurables from 2 genConfDb files
-Py:ConfigurableDb    INFO No duplicates have been found: that's good !
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
 Py:Athena            INFO including file "AthenaCommon/runbatch.py"
-# setting LC_ALL to "C"
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 ApplicationMgr    SUCCESS 
 ====================================================================================================================================
-                                                   Welcome to ApplicationMgr (GaudiCoreSvc v27r1p99)
-                                          running on karma on Thu Nov  2 15:26:56 2017
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 18:13:49 2018
 ====================================================================================================================================
 ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
@@ -23,7 +30,7 @@ ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to leve
 StatusCodeSvc        INFO initialize
 AthDictLoaderSvc     INFO in initialize...
 AthDictLoaderSvc     INFO acquired Dso-registry
-ClassIDSvc           INFO  getRegistryEntries: read 10025 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 9958 CLIDRegistry entries for module ALL
 ChronoStatSvc        INFO  Number of skipped events for MemStat-1
 CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
 CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
@@ -32,43 +39,60 @@ MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServi
 AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
 PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
 PoolSvc              INFO Frontier compression level set to 5
-DBReplicaSvc         INFO Read replica configuration from /home/sss/atlas/dvtest/build/share/dbreplica.config
-DBReplicaSvc         INFO No specific match for domain found - use default fallback
-DBReplicaSvc         INFO Total of 1 servers found for host karma [atlas_dd ]
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
 PoolSvc              INFO Successfully setup replica sorting algorithm
 PoolSvc              INFO Setting up APR FileCatalog and Streams
 PoolSvc              INFO POOL WriteCatalog is file:AuxDataTestRead2_catalog.xml
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
 EventSelector        INFO reinitialization...
 EventSelector        INFO EventSelection with query 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] C35B44C1-138C-8946-835E-8465FA0E7A37
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 3C0B0ABA-4343-D0D9-F7B0-E85DEDED7C37
+Domain[ROOT_All]     INFO                           auxdata2.root
+RootDatabase.open    INFO auxdata2.root File version:61006
+auxdata2.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 3C0B0ABA-4343-D0D9-F7B0-E85DEDED7C37
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 3C0B0ABA-4343-D0D9-F7B0-E85DEDED7C37
+Domain[ROOT_All]     INFO                           auxdata2.root
+RootDatabase.open    INFO auxdata2.root File version:61006
+auxdata2.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 3C0B0ABA-4343-D0D9-F7B0-E85DEDED7C37
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] A1B263B2-8AB8-FB4A-AC6D-112D69D31C7F
 Domain[ROOT_All]     INFO                           auxdata2.root
-RootDatabase.open    INFO auxdata2.root File version:60806
+RootDatabase.open    INFO auxdata2.root File version:61006
 EventPersistenc...   INFO Added successfully Conversion service:AthenaPoolCnvSvc
-EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
-EventSelector        INFO reinitialization...
-EventSelector        INFO EventSelection with query 
-AthenaPoolAddre...   INFO Initializing AthenaPoolAddressProviderSvc - package version EventSelectorAthenaPool-00-00-00
 HistogramPersis...WARNING Histograms saving not required.
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
 auxdata2.root        INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] C35B44C1-138C-8946-835E-8465FA0E7A37
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] A1B263B2-8AB8-FB4A-AC6D-112D69D31C7F
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] C35B44C1-138C-8946-835E-8465FA0E7A37
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] A1B263B2-8AB8-FB4A-AC6D-112D69D31C7F
 Domain[ROOT_All]     INFO                           auxdata2.root
-RootDatabase.open    INFO auxdata2.root File version:60806
+RootDatabase.open    INFO auxdata2.root File version:61006
 ApplicationMgr       INFO Application Manager Started successfully
-ClassIDSvc           INFO  getRegistryEntries: read 1397 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 1457 CLIDRegistry entries for module ALL
 AlgResourcePool      INFO TopAlg list empty. Recovering the one of Application Manager
 AthenaPoolConve...   INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
-ClassIDSvc           INFO  getRegistryEntries: read 16 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
 1
-ClassIDSvc           INFO  getRegistryEntries: read 54 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 50 CLIDRegistry entries for module ALL
 aB aFloat1 anInt1 dFloat1 dInt1 pfloat pint pvfloat pvint 
  anInt1: 1100 aFloat1: 1200.5 pInt: 2 pFloat: 0.01 aB: 1300 dFloat1: 1400.5 dInt1: 1100
   pvInt: []
@@ -1428,11 +1452,12 @@ aB aFloat1 anInt1 dFloat1 pfloat pint pvfloat pvint
 b anInt1: 199980 aFloat1: 199980.5 anEL: bauxvec[0] aB: 200080 dFloat1: 200180
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
 auxdata2.root        INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] C35B44C1-138C-8946-835E-8465FA0E7A37
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] A1B263B2-8AB8-FB4A-AC6D-112D69D31C7F
 ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog           INFO File 'AuxDataTestRead2_catalog.xml' does not exist. New file created.
 AthDictLoaderSvc     INFO in finalize...
 ToolSvc              INFO Removing all tools created by ToolSvc
 ChronoStatSvc.f...   INFO  Service finalized successfully 
diff --git a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead2_jo.py b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead2_jo.py
index 87d4292a0a3c94ad9773466549fd7744808ddbcd..15762df45cc98adb3b8587dec301875e2b79bc3e 100644
--- a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead2_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead2_jo.py
@@ -70,7 +70,6 @@ ChronoStatSvc.StatPrintOutTable   = FALSE
 
 #svcMgr.ExceptionSvc.Catch = "None"
 
-# Explicitly specify the output file catalog
-# to avoid races when running tests in parallel.
-PoolSvc = Service( "PoolSvc" )
-PoolSvc.WriteCatalog = "file:AuxDataTestRead2_catalog.xml"
+# Avoid races when running tests in parallel.
+FILECATALOG = 'AuxDataTestRead2_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead2b.ref b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead2b.ref
index e85f183a89e4b636af08c685673bae5c953cc079..224ba02db03b6067da9829e0d7e93622e3da19f7 100644
--- a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead2b.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead2b.ref
@@ -1,21 +1,28 @@
-Thu Nov  2 15:27:51 EDT 2017
-WARNING: TCMALLOCDIR not defined, will use libc malloc
+Wed Mar 14 18:02:55 CET 2018
+Preloading tcmalloc_minimal.so
 Py:Athena            INFO including file "AthenaCommon/Preparation.py"
-Py:Athena            INFO using release [?-21.0.0] [i686-slc5-gcc43-dbg] [?/?] -- built on [?]
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1645]
 Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
 Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
 Py:Athena            INFO executing ROOT6Setup
 Py:Athena            INFO including file "AthenaCommon/Execution.py"
 Py:Athena            INFO including file "DataModelRunTests/AuxDataTestRead2b_jo.py"
-Py:ConfigurableDb    INFO Read module info for 467 configurables from 2 genConfDb files
-Py:ConfigurableDb    INFO No duplicates have been found: that's good !
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
 Py:Athena            INFO including file "AthenaCommon/runbatch.py"
-# setting LC_ALL to "C"
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 ApplicationMgr    SUCCESS 
 ====================================================================================================================================
-                                                   Welcome to ApplicationMgr (GaudiCoreSvc v27r1p99)
-                                          running on karma on Thu Nov  2 15:28:20 2017
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 18:03:13 2018
 ====================================================================================================================================
 ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
@@ -23,7 +30,7 @@ ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to leve
 StatusCodeSvc        INFO initialize
 AthDictLoaderSvc     INFO in initialize...
 AthDictLoaderSvc     INFO acquired Dso-registry
-ClassIDSvc           INFO  getRegistryEntries: read 10025 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 9958 CLIDRegistry entries for module ALL
 ChronoStatSvc        INFO  Number of skipped events for MemStat-1
 CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
 CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
@@ -32,43 +39,60 @@ MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServi
 AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
 PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
 PoolSvc              INFO Frontier compression level set to 5
-DBReplicaSvc         INFO Read replica configuration from /home/sss/atlas/dvtest/build/share/dbreplica.config
-DBReplicaSvc         INFO No specific match for domain found - use default fallback
-DBReplicaSvc         INFO Total of 1 servers found for host karma [atlas_dd ]
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
 PoolSvc              INFO Successfully setup replica sorting algorithm
 PoolSvc              INFO Setting up APR FileCatalog and Streams
 PoolSvc              INFO POOL WriteCatalog is file:AuxDataTestRead2b_catalog.xml
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
 EventSelector        INFO reinitialization...
 EventSelector        INFO EventSelection with query 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 1CA7EE0C-7D18-4548-9F8C-ADA7F216DBF9
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] FABDDFB0-BA07-A78F-6AEE-42D65633E468
+Domain[ROOT_All]     INFO                           auxdata2b.root
+RootDatabase.open    INFO auxdata2b.root File version:61006
+auxdata2b.root       INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] FABDDFB0-BA07-A78F-6AEE-42D65633E468
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] FABDDFB0-BA07-A78F-6AEE-42D65633E468
+Domain[ROOT_All]     INFO                           auxdata2b.root
+RootDatabase.open    INFO auxdata2b.root File version:61006
+auxdata2b.root       INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] FABDDFB0-BA07-A78F-6AEE-42D65633E468
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] B28CEF17-D001-B74A-B67C-D2607D860E79
 Domain[ROOT_All]     INFO                           auxdata2b.root
-RootDatabase.open    INFO auxdata2b.root File version:60806
+RootDatabase.open    INFO auxdata2b.root File version:61006
 EventPersistenc...   INFO Added successfully Conversion service:AthenaPoolCnvSvc
-EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
-EventSelector        INFO reinitialization...
-EventSelector        INFO EventSelection with query 
-AthenaPoolAddre...   INFO Initializing AthenaPoolAddressProviderSvc - package version EventSelectorAthenaPool-00-00-00
 HistogramPersis...WARNING Histograms saving not required.
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
 auxdata2b.root       INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 1CA7EE0C-7D18-4548-9F8C-ADA7F216DBF9
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] B28CEF17-D001-B74A-B67C-D2607D860E79
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 1CA7EE0C-7D18-4548-9F8C-ADA7F216DBF9
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] B28CEF17-D001-B74A-B67C-D2607D860E79
 Domain[ROOT_All]     INFO                           auxdata2b.root
-RootDatabase.open    INFO auxdata2b.root File version:60806
+RootDatabase.open    INFO auxdata2b.root File version:61006
 ApplicationMgr       INFO Application Manager Started successfully
-ClassIDSvc           INFO  getRegistryEntries: read 1397 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 1457 CLIDRegistry entries for module ALL
 AlgResourcePool      INFO TopAlg list empty. Recovering the one of Application Manager
 AthenaPoolConve...   INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
-ClassIDSvc           INFO  getRegistryEntries: read 16 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
 1
-ClassIDSvc           INFO  getRegistryEntries: read 54 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 50 CLIDRegistry entries for module ALL
 aB aFloat1 anInt1 dFloat1 dInt2 pfloat pint pvfloat pvint 
  anInt1: 1100 aFloat1: 1200.5 pInt: 2 pFloat: 0.01 aB: 1300 dFloat1: 1400.5 dInt2: 1200
   pvInt: []
@@ -768,11 +792,12 @@ aB aFloat1 anInt1 dFloat1 dInt2 pfloat pint pvfloat pvint
 b anInt1: 199980 aFloat1: 199980.5 anEL: bauxvec[0] aB: 200080 dFloat1: 200180 dInt2: 200600
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
 auxdata2b.root       INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 1CA7EE0C-7D18-4548-9F8C-ADA7F216DBF9
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] B28CEF17-D001-B74A-B67C-D2607D860E79
 ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog           INFO File 'AuxDataTestRead2b_catalog.xml' does not exist. New file created.
 AthDictLoaderSvc     INFO in finalize...
 ToolSvc              INFO Removing all tools created by ToolSvc
 ChronoStatSvc.f...   INFO  Service finalized successfully 
diff --git a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead2b_jo.py b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead2b_jo.py
index 7ab8367701988c70cbb94e4266bc7dfa6b02d18e..db5ba86de40e22573458ac887dca21c8c5b1dda3 100644
--- a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead2b_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead2b_jo.py
@@ -68,7 +68,6 @@ ChronoStatSvc.StatPrintOutTable   = FALSE
 
 #svcMgr.ExceptionSvc.Catch = "None"
 
-# Explicitly specify the output file catalog
-# to avoid races when running tests in parallel.
-PoolSvc = Service( "PoolSvc" )
-PoolSvc.WriteCatalog = "file:AuxDataTestRead2b_catalog.xml"
+# Avoid races when running tests in parallel.
+FILECATALOG = 'AuxDataTestRead2b_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead3.ref b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead3.ref
index 9440c162e64c7c055c5622cd71bc6ec4c91a8503..e2c578ca47c4edbc78a0e0f97dbe954f496a516e 100644
--- a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead3.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead3.ref
@@ -1,21 +1,28 @@
-Thu Nov  2 15:26:27 EDT 2017
-WARNING: TCMALLOCDIR not defined, will use libc malloc
+Wed Mar 14 17:54:35 CET 2018
+Preloading tcmalloc_minimal.so
 Py:Athena            INFO including file "AthenaCommon/Preparation.py"
-Py:Athena            INFO using release [?-21.0.0] [i686-slc5-gcc43-dbg] [?/?] -- built on [?]
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1645]
 Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
 Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
 Py:Athena            INFO executing ROOT6Setup
 Py:Athena            INFO including file "AthenaCommon/Execution.py"
 Py:Athena            INFO including file "DataModelRunTests/AuxDataTestRead3_jo.py"
-Py:ConfigurableDb    INFO Read module info for 467 configurables from 2 genConfDb files
-Py:ConfigurableDb    INFO No duplicates have been found: that's good !
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
 Py:Athena            INFO including file "AthenaCommon/runbatch.py"
-# setting LC_ALL to "C"
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 ApplicationMgr    SUCCESS 
 ====================================================================================================================================
-                                                   Welcome to ApplicationMgr (GaudiCoreSvc v27r1p99)
-                                          running on karma on Thu Nov  2 15:26:55 2017
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 17:54:51 2018
 ====================================================================================================================================
 ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
@@ -23,7 +30,7 @@ ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to leve
 StatusCodeSvc        INFO initialize
 AthDictLoaderSvc     INFO in initialize...
 AthDictLoaderSvc     INFO acquired Dso-registry
-ClassIDSvc           INFO  getRegistryEntries: read 10025 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 9958 CLIDRegistry entries for module ALL
 ChronoStatSvc        INFO  Number of skipped events for MemStat-1
 CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
 CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
@@ -32,43 +39,60 @@ MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServi
 AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
 PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
 PoolSvc              INFO Frontier compression level set to 5
-DBReplicaSvc         INFO Read replica configuration from /home/sss/atlas/dvtest/build/share/dbreplica.config
-DBReplicaSvc         INFO No specific match for domain found - use default fallback
-DBReplicaSvc         INFO Total of 1 servers found for host karma [atlas_dd ]
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
 PoolSvc              INFO Successfully setup replica sorting algorithm
 PoolSvc              INFO Setting up APR FileCatalog and Streams
 PoolSvc              INFO POOL WriteCatalog is file:AuxDataTestRead3_catalog.xml
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
 EventSelector        INFO reinitialization...
 EventSelector        INFO EventSelection with query 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 002B8756-D35C-AD49-BC48-9B39E41FF41A
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 61A78656-FB78-9429-EB10-35AB98140AE8
+Domain[ROOT_All]     INFO                           auxdata3.root
+RootDatabase.open    INFO auxdata3.root File version:61006
+auxdata3.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 61A78656-FB78-9429-EB10-35AB98140AE8
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 61A78656-FB78-9429-EB10-35AB98140AE8
+Domain[ROOT_All]     INFO                           auxdata3.root
+RootDatabase.open    INFO auxdata3.root File version:61006
+auxdata3.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 61A78656-FB78-9429-EB10-35AB98140AE8
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 8F5921C2-3169-9F42-9BBF-78D2D2536EBE
 Domain[ROOT_All]     INFO                           auxdata3.root
-RootDatabase.open    INFO auxdata3.root File version:60806
+RootDatabase.open    INFO auxdata3.root File version:61006
 EventPersistenc...   INFO Added successfully Conversion service:AthenaPoolCnvSvc
-EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
-EventSelector        INFO reinitialization...
-EventSelector        INFO EventSelection with query 
-AthenaPoolAddre...   INFO Initializing AthenaPoolAddressProviderSvc - package version EventSelectorAthenaPool-00-00-00
 HistogramPersis...WARNING Histograms saving not required.
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
 auxdata3.root        INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 002B8756-D35C-AD49-BC48-9B39E41FF41A
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 8F5921C2-3169-9F42-9BBF-78D2D2536EBE
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 002B8756-D35C-AD49-BC48-9B39E41FF41A
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 8F5921C2-3169-9F42-9BBF-78D2D2536EBE
 Domain[ROOT_All]     INFO                           auxdata3.root
-RootDatabase.open    INFO auxdata3.root File version:60806
+RootDatabase.open    INFO auxdata3.root File version:61006
 ApplicationMgr       INFO Application Manager Started successfully
-ClassIDSvc           INFO  getRegistryEntries: read 1397 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 1457 CLIDRegistry entries for module ALL
 AlgResourcePool      INFO TopAlg list empty. Recovering the one of Application Manager
 AthenaPoolConve...   INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
-ClassIDSvc           INFO  getRegistryEntries: read 16 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
 1
-ClassIDSvc           INFO  getRegistryEntries: read 54 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 50 CLIDRegistry entries for module ALL
 aB aFloat1 anInt1 dFloat1 pfloat pint pvfloat pvint 
  anInt1: 1100 aFloat1: 1200.5 pInt: 2 pFloat: 0.01 aB: 1300 dFloat1: 1400.5
   pvInt: []
@@ -1428,11 +1452,12 @@ aB aFloat1 anInt1 dFloat1 pfloat pint pvfloat pvint
 b anInt1: 199980 aFloat1: 199980.5 anEL: bauxvec[0] aB: 200080 dFloat1: 200180
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
 auxdata3.root        INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 002B8756-D35C-AD49-BC48-9B39E41FF41A
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 8F5921C2-3169-9F42-9BBF-78D2D2536EBE
 ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog           INFO File 'AuxDataTestRead3_catalog.xml' does not exist. New file created.
 AthDictLoaderSvc     INFO in finalize...
 ToolSvc              INFO Removing all tools created by ToolSvc
 ChronoStatSvc.f...   INFO  Service finalized successfully 
diff --git a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead3_jo.py b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead3_jo.py
index 98de7af3ef2792ef61b11a9832fd584c85dba12c..51fae68eb7ef60d4ca17a4527d1cd0b8640632ed 100644
--- a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead3_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead3_jo.py
@@ -70,7 +70,6 @@ ChronoStatSvc.StatPrintOutTable   = FALSE
 
 #svcMgr.ExceptionSvc.Catch = "None"
 
-# Explicitly specify the output file catalog
-# to avoid races when running tests in parallel.
-PoolSvc = Service( "PoolSvc" )
-PoolSvc.WriteCatalog = "file:AuxDataTestRead3_catalog.xml"
+# Avoid races when running tests in parallel.
+FILECATALOG = 'AuxDataTestRead3_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead_jo.py b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead_jo.py
index 20acd7151f1a34a7f6ee400793af8965ddd12102..f8987fe42284024458184b9d71b2670938b26eb2 100755
--- a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestRead_jo.py
@@ -105,7 +105,6 @@ ChronoStatSvc.StatPrintOutTable   = FALSE
 
 #svcMgr.ExceptionSvc.Catch = "None"
 
-# Explicitly specify the output file catalog
-# to avoid races when running tests in parallel.
-PoolSvc = Service( "PoolSvc" )
-PoolSvc.WriteCatalog = "file:AuxDataTestRead_catalog.xml"
+# Avoid races when running tests in parallel.
+FILECATALOG = 'AuxDataTestRead_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestTypelessRead.ref b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestTypelessRead.ref
index b4409a1a33e51912502bab337e1f80974d170bf3..789754428c3a0f35405e77a4203de41efa342a62 100644
--- a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestTypelessRead.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestTypelessRead.ref
@@ -1,12 +1,106 @@
+Wed Mar 14 17:25:43 CET 2018
+Preloading tcmalloc_minimal.so
+Py:Athena            INFO including file "AthenaCommon/Preparation.py"
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1614]
+Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
+Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
+Py:Athena            INFO executing ROOT6Setup
+Py:Athena            INFO including file "AthenaCommon/Execution.py"
+Py:Athena            INFO including file "DataModelRunTests/AuxDataTestTypelessRead_jo.py"
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+Py:Athena            INFO including file "EventAthenaPool/EventAthenaPoolItemList_joboptions.py"
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
+Py:Athena            INFO including file "AthenaCommon/runbatch.py"
+ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
+ApplicationMgr    SUCCESS 
+====================================================================================================================================
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 17:26:00 2018
+====================================================================================================================================
+ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
+ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
+StatusCodeSvc        INFO initialize
+AthDictLoaderSvc     INFO in initialize...
+AthDictLoaderSvc     INFO acquired Dso-registry
+ClassIDSvc           INFO  getRegistryEntries: read 9958 CLIDRegistry entries for module ALL
+ChronoStatSvc        INFO  Number of skipped events for MemStat-1
+CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
+CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
+AthenaEventLoopMgr   INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00
+ClassIDSvc           INFO  getRegistryEntries: read 752 CLIDRegistry entries for module ALL
+DecisionSvc          INFO Inserting stream: Stream1 with no Algs
+MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00
+AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
+PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
+PoolSvc              INFO Frontier compression level set to 5
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
+PoolSvc              INFO Successfully setup replica sorting algorithm
+PoolSvc              INFO Setting up APR FileCatalog and Streams
+PoolSvc              INFO POOL WriteCatalog is file:AuxDataTestTypelessRead_catalog.xml
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
+EventSelector        INFO reinitialization...
+EventSelector        INFO EventSelection with query 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] BD743C69-DFE3-2AF1-523D-40853CCDE86A
+Domain[ROOT_All]     INFO                           auxdata.root
+RootDatabase.open    INFO auxdata.root File version:61006
+auxdata.root         INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] BD743C69-DFE3-2AF1-523D-40853CCDE86A
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] BD743C69-DFE3-2AF1-523D-40853CCDE86A
+Domain[ROOT_All]     INFO                           auxdata.root
+RootDatabase.open    INFO auxdata.root File version:61006
+auxdata.root         INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] BD743C69-DFE3-2AF1-523D-40853CCDE86A
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] A4DBA0B5-C6F7-A14A-8C07-6D3369736F2A
+Domain[ROOT_All]     INFO                           auxdata.root
+RootDatabase.open    INFO auxdata.root File version:61006
+EventPersistenc...   INFO Added successfully Conversion service:AthenaPoolCnvSvc
+OutputStreamSeq...   INFO Initializing OutputStreamSequencerSvc - package version AthenaServices-00-00-00
+Stream1.Stream1...   INFO Initializing Stream1.Stream1Tool - package version AthenaServices-00-00-00
 Stream1              INFO Found HelperTools = PrivateToolHandleArray([])
 Stream1              INFO Data output: auxdata3.root
+Stream1              INFO I/O reinitialization...
+HistogramPersis...WARNING Histograms saving not required.
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
+auxdata.root         INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] A4DBA0B5-C6F7-A14A-8C07-6D3369736F2A
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] A4DBA0B5-C6F7-A14A-8C07-6D3369736F2A
+Domain[ROOT_All]     INFO                           auxdata.root
+RootDatabase.open    INFO auxdata.root File version:61006
+ApplicationMgr       INFO Application Manager Started successfully
+ClassIDSvc           INFO  getRegistryEntries: read 705 CLIDRegistry entries for module ALL
 AlgResourcePool      INFO TopAlg list empty. Recovering the one of Application Manager
+AthenaPoolConve...   INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
+ClassIDSvc           INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
 1
+ClassIDSvc           INFO  getRegistryEntries: read 50 CLIDRegistry entries for module ALL
 bvec types: aB/DMTest::B aFloat1/float anInt1/int dFloat1/float pfloat/float pint/unsigned int pvfloat/std::vector<float,std::allocator<float> > pvint/std::vector<int,std::allocator<int> > 
   aB: 1300; aFloat1: 1200.500; anInt1: 1100; dFloat1: 1400.500; pfloat: 0.010; pint: 2; 
     pvfloat: []; 
@@ -40,6 +134,11 @@ bvec types: aB/DMTest::B aFloat1/float anInt1/int dFloat1/float pfloat/float pin
     pvint: [-310 -309 -308 -307 -306 -305 -304 -303 -302 ]; 
 b types: aB/DMTest::B aFloat1/float anEL/ElementLink<DMTest::BAuxVec> anInt1/int dFloat1/float 
 aB: 10099; aFloat1: 9999.500; anEL: bauxvec[1]; anInt1: 9999; dFloat1: 10199.500; 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     UPDATE    [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] 0B053E8C-9E6C-CF43-86FA-468A83DFBAB7
+Domain[ROOT_All]     INFO                           auxdata3.root
+RootDatabase.open    INFO auxdata3.root File version:61006
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #0, run #0 1 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #1, run #0 1 events processed so far  <<<===
 2
@@ -725,7 +824,21 @@ bvec types: aB/DMTest::B aFloat1/float anInt1/int dFloat1/float pfloat/float pin
 b types: aB/DMTest::B aFloat1/float anEL/ElementLink<DMTest::BAuxVec> anInt1/int dFloat1/float 
 aB: 200080; aFloat1: 199980.500; anEL: bauxvec[0]; anInt1: 199980; dFloat1: 200180.500; 
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
+Stream1              INFO Records written: 21
+auxdata.root         INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] A4DBA0B5-C6F7-A14A-8C07-6D3369736F2A
+auxdata3.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] 0B053E8C-9E6C-CF43-86FA-468A83DFBAB7
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     UPDATE    [ROOT_All] 
+ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog           INFO File 'AuxDataTestTypelessRead_catalog.xml' does not exist. New file created.
+DecisionSvc          INFO Finalized successfully.
+AthDictLoaderSvc     INFO in finalize...
+ToolSvc              INFO Removing all tools created by ToolSvc
+ChronoStatSvc.f...   INFO  Service finalized successfully 
 ApplicationMgr       INFO Application Manager Finalized successfully
 ApplicationMgr       INFO Application Manager Terminated successfully
+Py:Athena            INFO leaving with code 0: "successful run"
diff --git a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestTypelessRead_jo.py b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestTypelessRead_jo.py
index 37ccd67d45f896ddc7c3ffe4988701026e851be8..2e4ced12601abd69eb34c74409955484b53a1975 100644
--- a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestTypelessRead_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestTypelessRead_jo.py
@@ -85,7 +85,6 @@ ChronoStatSvc.StatPrintOutTable   = FALSE
 
 #svcMgr.ExceptionSvc.Catch = "None"
 
-# Explicitly specify the output file catalog
-# to avoid races when running tests in parallel.
-PoolSvc = Service( "PoolSvc" )
-PoolSvc.WriteCatalog = "file:AuxDataTestTypelessRead_catalog.xml"
+# Avoid races when running tests in parallel.
+FILECATALOG = 'AuxDataTestTypelessRead_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestWrite.ref b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestWrite.ref
index ded74e9e6397577282137a4701fb100583e5381c..a335558d707617e1e3513b503a11c11134a80821 100644
--- a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestWrite.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestWrite.ref
@@ -1,11 +1,74 @@
+Wed Mar 14 17:20:02 CET 2018
+Preloading tcmalloc_minimal.so
+Py:Athena            INFO including file "AthenaCommon/Preparation.py"
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1614]
+Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
+Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
+Py:Athena            INFO executing ROOT6Setup
+Py:Athena            INFO including file "AthenaCommon/Execution.py"
+Py:Athena            INFO including file "DataModelRunTests/AuxDataTestWrite_jo.py"
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+[?1034hPy:Athena            INFO including file "EventAthenaPool/EventAthenaPoolItemList_joboptions.py"
+Py:Athena            INFO including file "DataModelRunTests/setCatalog.py"
+Py:Athena            INFO including file "AthenaCommon/runbatch.py"
+ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
+ApplicationMgr    SUCCESS 
+====================================================================================================================================
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 17:20:21 2018
+====================================================================================================================================
+ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
+ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
+StatusCodeSvc        INFO initialize
+AthDictLoaderSvc     INFO in initialize...
+AthDictLoaderSvc     INFO acquired Dso-registry
+ClassIDSvc           INFO  getRegistryEntries: read 9701 CLIDRegistry entries for module ALL
+ChronoStatSvc        INFO  Number of skipped events for MemStat-1
+CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
+CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
+AthenaEventLoopMgr   INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00
+ClassIDSvc           INFO  getRegistryEntries: read 754 CLIDRegistry entries for module ALL
+DecisionSvc          INFO Inserting stream: Stream1 with no Algs
+MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00
+AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
+PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
+PoolSvc              INFO Frontier compression level set to 5
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
+PoolSvc              INFO Successfully setup replica sorting algorithm
+PoolSvc              INFO Setting up APR FileCatalog and Streams
+PoolSvc              INFO POOL WriteCatalog is file:AuxDataTestWrite_catalog.xml
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+OutputStreamSeq...   INFO Initializing OutputStreamSequencerSvc - package version AthenaServices-00-00-00
+Stream1.Stream1...   INFO Initializing Stream1.Stream1Tool - package version AthenaServices-00-00-00
 Stream1              INFO Found HelperTools = PrivateToolHandleArray([])
 Stream1              INFO Data output: auxdata.root
+Stream1              INFO I/O reinitialization...
+HistogramPersis...WARNING Histograms saving not required.
 EventSelector        INFO  Enter McEventSelector Initialization 
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
+ApplicationMgr       INFO Application Manager Started successfully
+EventPersistenc...   INFO Added successfully Conversion service:McCnvSvc
+ClassIDSvc           INFO  getRegistryEntries: read 446 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     UPDATE    [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] 557AB268-6A17-8740-90C7-ABF9991F68A0
+Domain[ROOT_All]     INFO                           auxdata.root
+RootDatabase.open    INFO auxdata.root File version:61006
 StorageSvc           INFO Building shape according to reflection information using shape ID for:
 StorageSvc           INFO EventInfo_p4 [C634FDB6-CC4B-4BA2-B8F9-A84BE6A786C7]
 StorageSvc           INFO Building shape according to reflection information using shape ID for:
@@ -17,6 +80,7 @@ StorageSvc           INFO DataHeaderForm_p5 [3397D8A3-BBE6-463C-9F8E-4B3DFD8831F
 StorageSvc           INFO Building shape according to reflection information using shape ID for:
 StorageSvc           INFO DataHeader_p5 [D82968A1-CF91-4320-B2DD-E0F739CBC7E6]
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #0, run #0 1 events processed so far  <<<===
+ClassIDSvc           INFO  getRegistryEntries: read 85 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #1, run #0 1 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #1, run #0 2 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #2, run #0 2 events processed so far  <<<===
@@ -55,7 +119,20 @@ AthenaEventLoopMgr   INFO   ===>>>  start processing event #18, run #0 18 events
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #18, run #0 19 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #19, run #0 19 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
+Stream1              INFO Records written: 21
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+auxdata.root         INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] 557AB268-6A17-8740-90C7-ABF9991F68A0
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     UPDATE    [ROOT_All] 
+ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
+EventSelector        INFO finalize
+XMLCatalog           INFO File 'AuxDataTestWrite_catalog.xml' does not exist. New file created.
+DecisionSvc          INFO Finalized successfully.
+AthDictLoaderSvc     INFO in finalize...
+ToolSvc              INFO Removing all tools created by ToolSvc
+ChronoStatSvc.f...   INFO  Service finalized successfully 
 ApplicationMgr       INFO Application Manager Finalized successfully
 ApplicationMgr       INFO Application Manager Terminated successfully
+Py:Athena            INFO leaving with code 0: "successful run"
diff --git a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestWrite_jo.py b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestWrite_jo.py
index 19b0d38677a5150008bd8722430219946ad0560b..d12ce3a07d04f4532703c2006e6266d90c1c01a6 100755
--- a/Control/DataModelTest/DataModelRunTests/share/AuxDataTestWrite_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/AuxDataTestWrite_jo.py
@@ -75,7 +75,6 @@ ChronoStatSvc.ChronoPrintOutTable = FALSE
 ChronoStatSvc.PrintUserTime       = FALSE
 ChronoStatSvc.StatPrintOutTable   = FALSE
 
-# Explicitly specify the output file catalog
-# to avoid races when running tests in parallel.
-PoolSvc = Service( "PoolSvc" )
-PoolSvc.WriteCatalog = "file:AuxDataTestWrite_catalog.xml"
+# Avoid races when running tests in parallel.
+FILECATALOG = 'AuxDataTestWrite_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/CondReader_jo.py b/Control/DataModelTest/DataModelRunTests/share/CondReader_jo.py
index 558496e17d686c82ed76032cb23a74f42622aa38..09e53fe81210f3fa470b5498994b496e116e5f7d 100644
--- a/Control/DataModelTest/DataModelRunTests/share/CondReader_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/CondReader_jo.py
@@ -93,3 +93,6 @@ ChronoStatSvc.StatPrintOutTable   = FALSE
 # Increment LBN every two events.
 from McEventSelector import McEventSelectorConf
 svcMgr+=McEventSelectorConf.McEventSelector('EventSelector',EventsPerLB=2)
+
+PoolSvc = Service( "PoolSvc" )
+PoolSvc.ReadCatalog = ["file:CondWriter_catalog.xml"]
diff --git a/Control/DataModelTest/DataModelRunTests/share/CondWriter.ref b/Control/DataModelTest/DataModelRunTests/share/CondWriter.ref
index 8eb6af6a97a35ad99cc260cad150457da8acaab0..7beb12edef39e2efa732ad98fc892996dff34005 100644
--- a/Control/DataModelTest/DataModelRunTests/share/CondWriter.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/CondWriter.ref
@@ -1,21 +1,29 @@
-Fri Oct 27 21:45:28 CEST 2017
+Wed Mar 14 20:59:12 CET 2018
 Preloading tcmalloc_minimal.so
 Py:Athena            INFO including file "AthenaCommon/Preparation.py"
-Py:Athena            INFO using release [AthenaWorkDir-22.0.0] [x86_64-slc6-gcc62-opt] [atlas-work3/9f528da37a] -- built on [2017-10-27T2018]
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1950]
 Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
 Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
 Py:Athena            INFO executing ROOT6Setup
 Py:Athena            INFO including file "AthenaCommon/Execution.py"
 Py:Athena            INFO including file "DataModelRunTests/CondWriter_jo.py"
-Py:ConfigurableDb    INFO Read module info for 5436 configurables from 58 genConfDb files
-Py:ConfigurableDb    INFO No duplicates have been found: that's good !
-[?1034hEventInfoMgtInit: Got release version  Athena-22.0.0
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+[?1034hEventInfoMgtInit: Got release version  Athena-22.0.1
+Py:Athena            INFO including file "DataModelRunTests/setCatalog.py"
 Py:Athena            INFO including file "AthenaCommon/runbatch.py"
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 ApplicationMgr    SUCCESS 
 ====================================================================================================================================
-                                                   Welcome to ApplicationMgr (GaudiCoreSvc v29r0)
-                                          running on lxplus012.cern.ch on Fri Oct 27 21:45:47 2017
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 20:59:27 2018
 ====================================================================================================================================
 ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
@@ -23,23 +31,22 @@ ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to leve
 StatusCodeSvc        INFO initialize
 AthDictLoaderSvc     INFO in initialize...
 AthDictLoaderSvc     INFO acquired Dso-registry
-ClassIDSvc           INFO  getRegistryEntries: read 3160 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 3233 CLIDRegistry entries for module ALL
 ChronoStatSvc        INFO  Number of skipped events for MemStat-1
 CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
 CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
 AthenaEventLoopMgr   INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00
-ClassIDSvc           INFO  getRegistryEntries: read 379 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 383 CLIDRegistry entries for module ALL
 MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00
 AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
-PoolSvc              INFO io_register[PoolSvc](xmlcatalog_file:PoolFileCatalog.xml) [ok]
 PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
 PoolSvc              INFO Frontier compression level set to 5
 DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
-DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2017-10-26T2259/Athena/22.0.0/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config
-DBReplicaSvc         INFO Total of 10 servers found for host lxplus012.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
 PoolSvc              INFO Successfully setup replica sorting algorithm
 PoolSvc              INFO Setting up APR FileCatalog and Streams
-PoolSvc              INFO POOL WriteCatalog is xmlcatalog_file:PoolFileCatalog.xml
+PoolSvc              INFO POOL WriteCatalog is file:CondWriter_catalog.xml
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
 IOVDbSvc             INFO Opened read transaction for POOL PersistencySvc
@@ -48,14 +55,14 @@ IOVDbSvc             INFO Read from meta data only for folder /TagInfo
 IOVDbSvc             INFO Initialised with 1 connections and 1 folders
 IOVDbSvc             INFO Service IOVDbSvc initialised successfully
 IOVDbSvc             INFO preLoadAddresses: Removing folder /TagInfo. It should only be in the file meta data and was not found.
-DMTest::CondWri...   INFO Initializing DMTest::CondWriterAlg.CondStream - package version OutputStreamAthenaPool-00-00-00
+DMTest::CondWri...   INFO Initializing DMTest::CondWriterAlg.CondStream - package version AthenaServices-00-00-00
 HistogramPersis...WARNING Histograms saving not required.
 EventSelector        INFO  Enter McEventSelector Initialization 
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
 ApplicationMgr       INFO Application Manager Started successfully
 EventPersistenc...   INFO Added successfully Conversion service:McCnvSvc
-ClassIDSvc           INFO  getRegistryEntries: read 2188 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 1674 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 EventPersistenc...   INFO Added successfully Conversion service:AthenaPoolCnvSvc
 EventPersistenc...   INFO Added successfully Conversion service:TagInfoMgr
@@ -66,9 +73,9 @@ IOVDbSvc             INFO *** COOL  exception caught: The database does not exis
 IOVDbSvc             INFO Create a new conditions database: sqlite://;schema=condtest.db;dbname=OFLP200
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     UPDATE    [ROOT_All] 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] E1465CDF-45D8-6E46-9567-FD16A39DA219
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] 91449638-76F6-6847-B6FC-F66456BDDE09
 Domain[ROOT_All]     INFO                           condtest.pool.root
-RootDatabase.open    INFO condtest.pool.root File version:60806
+RootDatabase.open    INFO condtest.pool.root File version:61006
 StorageSvc           INFO Building shape according to reflection information using shape ID for:
 StorageSvc           INFO DMTest::S2 [EC2D9BCD-4B99-41EB-A799-82BAF48887FC]
 StorageSvc           INFO Building shape according to reflection information using shape ID for:
@@ -80,7 +87,7 @@ AthenaEventLoopMgr   INFO   ===>>>  done processing event #0, run #0 1 events pr
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #1, run #0 1 events processed so far  <<<===
 IOVSvc               INFO No IOVSvcTool associated with store "StoreGateSvc"
 IOVSvcTool           INFO IOVRanges will be checked at every Event
-ClassIDSvc           INFO  getRegistryEntries: read 324 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 341 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #1, run #0 2 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #2, run #0 2 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #2, run #0 3 events processed so far  <<<===
@@ -120,7 +127,7 @@ AthenaEventLoopMgr   INFO   ===>>>  start processing event #19, run #0 19 events
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
 condtest.pool.root   INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] E1465CDF-45D8-6E46-9567-FD16A39DA219
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] 91449638-76F6-6847-B6FC-F66456BDDE09
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     UPDATE    [ROOT_All] 
 ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
@@ -129,6 +136,7 @@ EventSelector        INFO finalize
 IOVDbSvc             INFO Total payload read from COOL: 0 bytes in ((      0.00 ))s
 IOVDbSvc             INFO Disconnecting from sqlite://;schema=condtest.db;dbname=OFLP200
 IOVDbSvc             INFO Connection sqlite://;schema=condtest.db;dbname=OFLP200 : nConnect: 1 nFolders: 0 ReadTime: ((     0.00 ))s
+XMLCatalog           INFO File 'CondWriter_catalog.xml' does not exist. New file created.
 AthDictLoaderSvc     INFO in finalize...
 ToolSvc              INFO Removing all tools created by ToolSvc
 ChronoStatSvc.f...   INFO  Service finalized successfully 
diff --git a/Control/DataModelTest/DataModelRunTests/share/CondWriter_jo.py b/Control/DataModelTest/DataModelRunTests/share/CondWriter_jo.py
index 5ee96f49664e1d95067e66accca6a32b8d18d005..266f8f84b3600cc1fe3119caf88a4f201e264849 100644
--- a/Control/DataModelTest/DataModelRunTests/share/CondWriter_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/CondWriter_jo.py
@@ -76,3 +76,8 @@ ChronoStatSvc = Service( "ChronoStatSvc" )
 ChronoStatSvc.ChronoPrintOutTable = FALSE
 ChronoStatSvc.PrintUserTime       = FALSE
 ChronoStatSvc.StatPrintOutTable   = FALSE
+
+
+# Avoid races when running tests in parallel.
+FILECATALOG = 'CondWriter_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/DataModelTestRead.ref b/Control/DataModelTest/DataModelRunTests/share/DataModelTestRead.ref
index 1b5a26cbb43faee9f7015492978ba2d88e551189..0b3821c859aca945195523d025efaaa33c4284b0 100644
--- a/Control/DataModelTest/DataModelRunTests/share/DataModelTestRead.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/DataModelTestRead.ref
@@ -1,12 +1,107 @@
+Wed Mar 14 17:42:23 CET 2018
+Preloading tcmalloc_minimal.so
+Py:Athena            INFO including file "AthenaCommon/Preparation.py"
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1639]
+Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
+Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
+Py:Athena            INFO executing ROOT6Setup
+Py:Athena            INFO including file "AthenaCommon/Execution.py"
+Py:Athena            INFO including file "DataModelRunTests/DataModelTestRead_jo.py"
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+Py:Athena            INFO including file "EventAthenaPool/EventAthenaPoolItemList_joboptions.py"
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
+Py:Athena            INFO including file "AthenaCommon/runbatch.py"
+ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
+ApplicationMgr    SUCCESS 
+====================================================================================================================================
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 17:42:39 2018
+====================================================================================================================================
+ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
+ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
+StatusCodeSvc        INFO initialize
+AthDictLoaderSvc     INFO in initialize...
+AthDictLoaderSvc     INFO acquired Dso-registry
+ClassIDSvc           INFO  getRegistryEntries: read 9958 CLIDRegistry entries for module ALL
+ChronoStatSvc        INFO  Number of skipped events for MemStat-1
+CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
+CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
+AthenaEventLoopMgr   INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00
+ClassIDSvc           INFO  getRegistryEntries: read 752 CLIDRegistry entries for module ALL
+DecisionSvc          INFO Inserting stream: Stream1 with no Algs
+MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00
+AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
+PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
+PoolSvc              INFO Frontier compression level set to 5
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
+PoolSvc              INFO Successfully setup replica sorting algorithm
+PoolSvc              INFO Setting up APR FileCatalog and Streams
+PoolSvc              INFO POOL WriteCatalog is file:DataModelTestRead_catalog.xml
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
+EventSelector        INFO reinitialization...
+EventSelector        INFO EventSelection with query 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 56E12913-0392-B55D-F57B-2EA688350D34
+Domain[ROOT_All]     INFO                           SimplePoolFile.root
+RootDatabase.open    INFO SimplePoolFile.root File version:61006
+SimplePoolFile....   INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 56E12913-0392-B55D-F57B-2EA688350D34
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 56E12913-0392-B55D-F57B-2EA688350D34
+Domain[ROOT_All]     INFO                           SimplePoolFile.root
+RootDatabase.open    INFO SimplePoolFile.root File version:61006
+SimplePoolFile....   INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 56E12913-0392-B55D-F57B-2EA688350D34
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 130EE382-9714-E247-95DB-DCFDECDBD5D7
+Domain[ROOT_All]     INFO                           SimplePoolFile.root
+RootDatabase.open    INFO SimplePoolFile.root File version:61006
+EventPersistenc...   INFO Added successfully Conversion service:AthenaPoolCnvSvc
+OutputStreamSeq...   INFO Initializing OutputStreamSequencerSvc - package version AthenaServices-00-00-00
+Stream1.Stream1...   INFO Initializing Stream1.Stream1Tool - package version AthenaServices-00-00-00
 Stream1              INFO Found HelperTools = PrivateToolHandleArray([])
 Stream1              INFO Data output: SimplePoolFile2.root
+Stream1              INFO I/O reinitialization...
+HistogramPersis...WARNING Histograms saving not required.
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
+SimplePoolFile....   INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 130EE382-9714-E247-95DB-DCFDECDBD5D7
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 130EE382-9714-E247-95DB-DCFDECDBD5D7
+Domain[ROOT_All]     INFO                           SimplePoolFile.root
+RootDatabase.open    INFO SimplePoolFile.root File version:61006
+ApplicationMgr       INFO Application Manager Started successfully
+ClassIDSvc           INFO  getRegistryEntries: read 705 CLIDRegistry entries for module ALL
 AlgResourcePool      INFO TopAlg list empty. Recovering the one of Application Manager
+AthenaPoolConve...   INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
+ClassIDSvc           INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
+ClassIDSvc           INFO  getRegistryEntries: read 12 CLIDRegistry entries for module ALL
 bvec as DataVector<DMTest::B>: 0 1 2 3 4 5 6 7 8 9 
+ClassIDSvc           INFO  getRegistryEntries: read 50 CLIDRegistry entries for module ALL
 bder as DMTest::BDer: 100 101 102 103 104 105 106 107 108 109 
 dvec as DataVector<DMTest::D>: 200 201 202 203 204 205 206 207 208 209 
 dder as DMTest::DDer: 300 301 302 303 304 305 306 307 308 309 
@@ -17,6 +112,11 @@ dder as DataVector<DMTest::D>: 300 301 302 303 304 305 306 307 308 309
 elvec: 0 3 6 9 101 104 107 
 elv_remap: 100 101 102 103 104 105 106 107 108 109 200 201 202 203 204 205 206 207 208 209 
 elv_remap v2: 100 101 102 103 104 105 106 107 108 109 200 201 202 203 204 205 206 207 208 209 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     UPDATE    [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] EFB28C1F-4701-6F44-8D43-A710B4BAF3FE
+Domain[ROOT_All]     INFO                           SimplePoolFile2.root
+RootDatabase.open    INFO SimplePoolFile2.root File version:61006
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #0, run #0 1 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #1, run #0 1 events processed so far  <<<===
 bvec as DataVector<DMTest::B>: 1 2 3 4 5 6 7 8 9 10 
@@ -265,7 +365,21 @@ elvec: 19 22 25 28 120 123 126
 elv_remap: 119 120 121 122 123 124 125 126 127 128 219 220 221 222 223 224 225 226 227 228 
 elv_remap v2: 119 120 121 122 123 124 125 126 127 128 219 220 221 222 223 224 225 226 227 228 
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
+Stream1              INFO Records written: 21
+SimplePoolFile....   INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 130EE382-9714-E247-95DB-DCFDECDBD5D7
+SimplePoolFile2...   INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] EFB28C1F-4701-6F44-8D43-A710B4BAF3FE
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     UPDATE    [ROOT_All] 
+ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog           INFO File 'DataModelTestRead_catalog.xml' does not exist. New file created.
+DecisionSvc          INFO Finalized successfully.
+AthDictLoaderSvc     INFO in finalize...
+ToolSvc              INFO Removing all tools created by ToolSvc
+ChronoStatSvc.f...   INFO  Service finalized successfully 
 ApplicationMgr       INFO Application Manager Finalized successfully
 ApplicationMgr       INFO Application Manager Terminated successfully
+Py:Athena            INFO leaving with code 0: "successful run"
diff --git a/Control/DataModelTest/DataModelRunTests/share/DataModelTestRead2.ref b/Control/DataModelTest/DataModelRunTests/share/DataModelTestRead2.ref
index aa5e0e6b7d2faecc60af24f15dd5436de87f00af..d93538c0d78cee6bade4b367723f721130904980 100644
--- a/Control/DataModelTest/DataModelRunTests/share/DataModelTestRead2.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/DataModelTestRead2.ref
@@ -1,21 +1,28 @@
-Thu Nov  2 15:27:51 EDT 2017
-WARNING: TCMALLOCDIR not defined, will use libc malloc
+Wed Mar 14 17:28:33 CET 2018
+Preloading tcmalloc_minimal.so
 Py:Athena            INFO including file "AthenaCommon/Preparation.py"
-Py:Athena            INFO using release [?-21.0.0] [i686-slc5-gcc43-dbg] [?/?] -- built on [?]
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1614]
 Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
 Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
 Py:Athena            INFO executing ROOT6Setup
 Py:Athena            INFO including file "AthenaCommon/Execution.py"
 Py:Athena            INFO including file "DataModelRunTests/DataModelTestRead2_jo.py"
-Py:ConfigurableDb    INFO Read module info for 467 configurables from 2 genConfDb files
-Py:ConfigurableDb    INFO No duplicates have been found: that's good !
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
 Py:Athena            INFO including file "AthenaCommon/runbatch.py"
-# setting LC_ALL to "C"
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 ApplicationMgr    SUCCESS 
 ====================================================================================================================================
-                                                   Welcome to ApplicationMgr (GaudiCoreSvc v27r1p99)
-                                          running on karma on Thu Nov  2 15:28:19 2017
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 17:28:51 2018
 ====================================================================================================================================
 ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
@@ -23,7 +30,7 @@ ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to leve
 StatusCodeSvc        INFO initialize
 AthDictLoaderSvc     INFO in initialize...
 AthDictLoaderSvc     INFO acquired Dso-registry
-ClassIDSvc           INFO  getRegistryEntries: read 10078 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 9958 CLIDRegistry entries for module ALL
 ChronoStatSvc        INFO  Number of skipped events for MemStat-1
 CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
 CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
@@ -32,43 +39,60 @@ MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServi
 AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
 PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
 PoolSvc              INFO Frontier compression level set to 5
-DBReplicaSvc         INFO Read replica configuration from /home/sss/atlas/dvtest/build/share/dbreplica.config
-DBReplicaSvc         INFO No specific match for domain found - use default fallback
-DBReplicaSvc         INFO Total of 1 servers found for host karma [atlas_dd ]
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
 PoolSvc              INFO Successfully setup replica sorting algorithm
 PoolSvc              INFO Setting up APR FileCatalog and Streams
 PoolSvc              INFO POOL WriteCatalog is file:DataModelTestRead2_catalog.xml
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
 EventSelector        INFO reinitialization...
 EventSelector        INFO EventSelection with query 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 5B4CB2C3-AC45-0241-A50A-43F874AC370F
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 5582E00A-A40F-D6C3-E147-039EACFA93F7
+Domain[ROOT_All]     INFO                           SimplePoolFile2.root
+RootDatabase.open    INFO SimplePoolFile2.root File version:61006
+SimplePoolFile2...   INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 5582E00A-A40F-D6C3-E147-039EACFA93F7
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 5582E00A-A40F-D6C3-E147-039EACFA93F7
+Domain[ROOT_All]     INFO                           SimplePoolFile2.root
+RootDatabase.open    INFO SimplePoolFile2.root File version:61006
+SimplePoolFile2...   INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 5582E00A-A40F-D6C3-E147-039EACFA93F7
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] DD099686-9250-9342-8B00-D9F1FB499445
 Domain[ROOT_All]     INFO                           SimplePoolFile2.root
-RootDatabase.open    INFO SimplePoolFile2.root File version:60806
+RootDatabase.open    INFO SimplePoolFile2.root File version:61006
 EventPersistenc...   INFO Added successfully Conversion service:AthenaPoolCnvSvc
-EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
-EventSelector        INFO reinitialization...
-EventSelector        INFO EventSelection with query 
-AthenaPoolAddre...   INFO Initializing AthenaPoolAddressProviderSvc - package version EventSelectorAthenaPool-00-00-00
 HistogramPersis...WARNING Histograms saving not required.
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
 SimplePoolFile2...   INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 5B4CB2C3-AC45-0241-A50A-43F874AC370F
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] DD099686-9250-9342-8B00-D9F1FB499445
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 5B4CB2C3-AC45-0241-A50A-43F874AC370F
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] DD099686-9250-9342-8B00-D9F1FB499445
 Domain[ROOT_All]     INFO                           SimplePoolFile2.root
-RootDatabase.open    INFO SimplePoolFile2.root File version:60806
+RootDatabase.open    INFO SimplePoolFile2.root File version:61006
 ApplicationMgr       INFO Application Manager Started successfully
-ClassIDSvc           INFO  getRegistryEntries: read 1344 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 1457 CLIDRegistry entries for module ALL
 AlgResourcePool      INFO TopAlg list empty. Recovering the one of Application Manager
 AthenaPoolConve...   INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
-ClassIDSvc           INFO  getRegistryEntries: read 16 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
 bvec as DataVector<DMTest::B>: 0 1 2 3 4 5 6 7 8 9 
-ClassIDSvc           INFO  getRegistryEntries: read 54 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 50 CLIDRegistry entries for module ALL
 bder as DMTest::BDer: 100 101 102 103 104 105 106 107 108 109 
 dvec not in SG; ignored.
 dder not in SG; ignored.
@@ -328,11 +352,12 @@ elv_remap: 119 120 121 122 123 124 125 126 127 128 219 220 221 222 223 224 225 2
 elv_remap v2: 119 120 121 122 123 124 125 126 127 128 219 220 221 222 223 224 225 226 227 228 
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
 SimplePoolFile2...   INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 5B4CB2C3-AC45-0241-A50A-43F874AC370F
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] DD099686-9250-9342-8B00-D9F1FB499445
 ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog           INFO File 'DataModelTestRead2_catalog.xml' does not exist. New file created.
 AthDictLoaderSvc     INFO in finalize...
 ToolSvc              INFO Removing all tools created by ToolSvc
 ChronoStatSvc.f...   INFO  Service finalized successfully 
diff --git a/Control/DataModelTest/DataModelRunTests/share/DataModelTestRead2_jo.py b/Control/DataModelTest/DataModelRunTests/share/DataModelTestRead2_jo.py
index 692404475eabc33076e2fae04d7153056dbddc47..379ed0131b91bcbd350c361ab73333a5b13ecea3 100755
--- a/Control/DataModelTest/DataModelRunTests/share/DataModelTestRead2_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/DataModelTestRead2_jo.py
@@ -67,7 +67,6 @@ ChronoStatSvc.StatPrintOutTable   = FALSE
 
 #svcMgr.ExceptionSvc.Catch = "None"
 
-# Explicitly specify the output file catalog
-# to avoid races when running tests in parallel.
-PoolSvc = Service( "PoolSvc" )
-PoolSvc.WriteCatalog = "file:DataModelTestRead2_catalog.xml"
+# Avoid races when running tests in parallel.
+FILECATALOG = 'DataModelTestRead2_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/DataModelTestRead_jo.py b/Control/DataModelTest/DataModelRunTests/share/DataModelTestRead_jo.py
index c7a8a01840828e1bbcfd40d348868851fbb5ed8a..0e0d89f38778d99b636ec3b9d520268b77606030 100755
--- a/Control/DataModelTest/DataModelRunTests/share/DataModelTestRead_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/DataModelTestRead_jo.py
@@ -94,7 +94,6 @@ ChronoStatSvc.StatPrintOutTable   = FALSE
 
 #svcMgr.ExceptionSvc.Catch = "None"
 
-# Explicitly specify the output file catalog
-# to avoid races when running tests in parallel.
-PoolSvc = Service( "PoolSvc" )
-PoolSvc.WriteCatalog = "file:DataModelTestRead_catalog.xml"
+# Avoid races when running tests in parallel.
+FILECATALOG = 'DataModelTestRead_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/DataModelTestWrite.ref b/Control/DataModelTest/DataModelRunTests/share/DataModelTestWrite.ref
index 58c5c85b775c710953031fe7e23a1c237c01f9b6..b956f04ee9c3e7924c0529445a3f9a196c837931 100644
--- a/Control/DataModelTest/DataModelRunTests/share/DataModelTestWrite.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/DataModelTestWrite.ref
@@ -1,11 +1,74 @@
+Wed Mar 14 17:05:52 CET 2018
+Preloading tcmalloc_minimal.so
+Py:Athena            INFO including file "AthenaCommon/Preparation.py"
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1554]
+Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
+Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
+Py:Athena            INFO executing ROOT6Setup
+Py:Athena            INFO including file "AthenaCommon/Execution.py"
+Py:Athena            INFO including file "DataModelRunTests/DataModelTestWrite_jo.py"
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+[?1034hPy:Athena            INFO including file "EventAthenaPool/EventAthenaPoolItemList_joboptions.py"
+Py:Athena            INFO including file "DataModelRunTests/setCatalog.py"
+Py:Athena            INFO including file "AthenaCommon/runbatch.py"
+ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
+ApplicationMgr    SUCCESS 
+====================================================================================================================================
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 17:06:32 2018
+====================================================================================================================================
+ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
+ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
+StatusCodeSvc        INFO initialize
+AthDictLoaderSvc     INFO in initialize...
+AthDictLoaderSvc     INFO acquired Dso-registry
+ClassIDSvc           INFO  getRegistryEntries: read 9701 CLIDRegistry entries for module ALL
+ChronoStatSvc        INFO  Number of skipped events for MemStat-1
+CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
+CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
+AthenaEventLoopMgr   INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00
+ClassIDSvc           INFO  getRegistryEntries: read 754 CLIDRegistry entries for module ALL
+DecisionSvc          INFO Inserting stream: Stream1 with no Algs
+MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00
+AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
+PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
+PoolSvc              INFO Frontier compression level set to 5
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
+PoolSvc              INFO Successfully setup replica sorting algorithm
+PoolSvc              INFO Setting up APR FileCatalog and Streams
+PoolSvc              INFO POOL WriteCatalog is file:DataModelTestWrite_catalog.xml
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+OutputStreamSeq...   INFO Initializing OutputStreamSequencerSvc - package version AthenaServices-00-00-00
+Stream1.Stream1...   INFO Initializing Stream1.Stream1Tool - package version AthenaServices-00-00-00
 Stream1              INFO Found HelperTools = PrivateToolHandleArray([])
 Stream1              INFO Data output: SimplePoolFile.root
+Stream1              INFO I/O reinitialization...
+HistogramPersis...WARNING Histograms saving not required.
 EventSelector        INFO  Enter McEventSelector Initialization 
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
+ApplicationMgr       INFO Application Manager Started successfully
+EventPersistenc...   INFO Added successfully Conversion service:McCnvSvc
+ClassIDSvc           INFO  getRegistryEntries: read 446 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     UPDATE    [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] 65389B2F-5654-9A4D-8067-624D191E1C43
+Domain[ROOT_All]     INFO                           SimplePoolFile.root
+RootDatabase.open    INFO SimplePoolFile.root File version:61006
 StorageSvc           INFO Building shape according to reflection information using shape ID for:
 StorageSvc           INFO EventInfo_p4 [C634FDB6-CC4B-4BA2-B8F9-A84BE6A786C7]
 StorageSvc           INFO Building shape according to reflection information using shape ID for:
@@ -23,6 +86,7 @@ StorageSvc           INFO DataHeaderForm_p5 [3397D8A3-BBE6-463C-9F8E-4B3DFD8831F
 StorageSvc           INFO Building shape according to reflection information using shape ID for:
 StorageSvc           INFO DataHeader_p5 [D82968A1-CF91-4320-B2DD-E0F739CBC7E6]
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #0, run #0 1 events processed so far  <<<===
+ClassIDSvc           INFO  getRegistryEntries: read 85 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #1, run #0 1 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #1, run #0 2 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #2, run #0 2 events processed so far  <<<===
@@ -61,7 +125,20 @@ AthenaEventLoopMgr   INFO   ===>>>  start processing event #18, run #0 18 events
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #18, run #0 19 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #19, run #0 19 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
+Stream1              INFO Records written: 21
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+SimplePoolFile....   INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] 65389B2F-5654-9A4D-8067-624D191E1C43
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     UPDATE    [ROOT_All] 
+ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
+EventSelector        INFO finalize
+XMLCatalog           INFO File 'DataModelTestWrite_catalog.xml' does not exist. New file created.
+DecisionSvc          INFO Finalized successfully.
+AthDictLoaderSvc     INFO in finalize...
+ToolSvc              INFO Removing all tools created by ToolSvc
+ChronoStatSvc.f...   INFO  Service finalized successfully 
 ApplicationMgr       INFO Application Manager Finalized successfully
 ApplicationMgr       INFO Application Manager Terminated successfully
+Py:Athena            INFO leaving with code 0: "successful run"
diff --git a/Control/DataModelTest/DataModelRunTests/share/DataModelTestWrite_jo.py b/Control/DataModelTest/DataModelRunTests/share/DataModelTestWrite_jo.py
index 7575420c6477da1be36d2ce5ecc9a38935da641b..abded05efe1ea293cae5a55e97201ac40d90d5bf 100755
--- a/Control/DataModelTest/DataModelRunTests/share/DataModelTestWrite_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/DataModelTestWrite_jo.py
@@ -81,7 +81,6 @@ ChronoStatSvc.ChronoPrintOutTable = FALSE
 ChronoStatSvc.PrintUserTime       = FALSE
 ChronoStatSvc.StatPrintOutTable   = FALSE
 
-# Explicitly specify the output file catalog
-# to avoid races when running tests in parallel.
-PoolSvc = Service( "PoolSvc" )
-PoolSvc.WriteCatalog = "file:DataModelTestWrite_catalog.xml"
+# Avoid races when running tests in parallel.
+FILECATALOG = 'DataModelTestWrite_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/setCatalog.py b/Control/DataModelTest/DataModelRunTests/share/setCatalog.py
new file mode 100644
index 0000000000000000000000000000000000000000..2cb2270576beaad69f3f3146b6d4b2f08fe909f8
--- /dev/null
+++ b/Control/DataModelTest/DataModelRunTests/share/setCatalog.py
@@ -0,0 +1,21 @@
+#
+# Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration.
+#
+#
+# File: DataModelRunTests/share/setCatalog.py
+# Author: snyder@bnl.gov
+# Date: Mar 2018
+# Purpose: Helper to set the file catalog being written.
+#
+# Needed to avoid races when running tests in parallel.
+#
+
+PoolSvc = Service( 'PoolSvc' )
+PoolSvc.WriteCatalog = 'file:' + FILECATALOG
+
+import os
+try:
+    os.remove (FILECATALOG)
+except OSError:
+    pass
+
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestDecorHandle2.ref b/Control/DataModelTest/DataModelRunTests/share/xAODTestDecorHandle2.ref
index 2262fddc976d812c3041c3de1c601eae8ec1991f..eab8975e368e6011e1bc46cfd19015445ead63c2 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestDecorHandle2.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestDecorHandle2.ref
@@ -1,21 +1,28 @@
-Mon Jan 29 12:06:33 EST 2018
-WARNING: TCMALLOCDIR not defined, will use libc malloc
+Wed Mar 14 21:07:51 CET 2018
+Preloading tcmalloc_minimal.so
 Py:Athena            INFO including file "AthenaCommon/Preparation.py"
-Py:Athena            INFO using release [?-21.0.0] [i686-slc5-gcc43-dbg] [?/?] -- built on [?]
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1950]
 Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
 Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
 Py:Athena            INFO executing ROOT6Setup
 Py:Athena            INFO including file "AthenaCommon/Execution.py"
 Py:Athena            INFO including file "DataModelRunTests/xAODTestDecorHandle2_jo.py"
-Py:ConfigurableDb    INFO Read module info for 468 configurables from 2 genConfDb files
-Py:ConfigurableDb    INFO No duplicates have been found: that's good !
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
 Py:Athena            INFO including file "AthenaCommon/runbatch.py"
-# setting LC_ALL to "C"
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 ApplicationMgr    SUCCESS 
 ====================================================================================================================================
-                                                   Welcome to ApplicationMgr (GaudiCoreSvc v27r1p99)
-                                          running on karma on Mon Jan 29 12:06:39 2018
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 21:08:07 2018
 ====================================================================================================================================
 ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
@@ -23,56 +30,73 @@ ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to leve
 StatusCodeSvc        INFO initialize
 AthDictLoaderSvc     INFO in initialize...
 AthDictLoaderSvc     INFO acquired Dso-registry
-ClassIDSvc           INFO  getRegistryEntries: read 10097 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 9958 CLIDRegistry entries for module ALL
 ChronoStatSvc        INFO  Number of skipped events for MemStat-1
 CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
 CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
 AthenaEventLoopMgr   INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00
-ClassIDSvc           INFO  getRegistryEntries: read 318 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 383 CLIDRegistry entries for module ALL
 MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00
 AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
-PoolSvc              INFO io_register[PoolSvc](xmlcatalog_file:PoolFileCatalog.xml) [ok]
 PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
 PoolSvc              INFO Frontier compression level set to 5
-DBReplicaSvc         INFO Read replica configuration from /home/sss/atlas/dvtest/build/share/dbreplica.config
-DBReplicaSvc         INFO No specific match for domain found - use default fallback
-DBReplicaSvc         INFO Total of 1 servers found for host karma [atlas_dd ]
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
 PoolSvc              INFO Successfully setup replica sorting algorithm
 PoolSvc              INFO Setting up APR FileCatalog and Streams
-PoolSvc              INFO POOL WriteCatalog is xmlcatalog_file:PoolFileCatalog.xml
+PoolSvc              INFO POOL WriteCatalog is file:xAODTestDecorHandle2_catalog.xml
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
 EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
 EventSelector        INFO reinitialization...
 EventSelector        INFO EventSelection with query 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] B0544B8E-9BE7-6A4D-B280-F60BD34489CB
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO                           xaoddata.root
+RootDatabase.open    INFO xaoddata.root File version:61006
+xaoddata.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO                           xaoddata.root
+RootDatabase.open    INFO xaoddata.root File version:61006
+xaoddata.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] CE9F5493-C7BE-6D45-B6B6-CB892E36CF31
 Domain[ROOT_All]     INFO                           xaoddata.root
-RootDatabase.open    INFO xaoddata.root File version:60806
+RootDatabase.open    INFO xaoddata.root File version:61006
 EventPersistenc...   INFO Added successfully Conversion service:AthenaPoolCnvSvc
-ClassIDSvc           INFO  getRegistryEntries: read 1084 CLIDRegistry entries for module ALL
-AthenaPoolAddre...   INFO Initializing AthenaPoolAddressProviderSvc - package version EventSelectorAthenaPool-00-00-00
+ClassIDSvc           INFO  getRegistryEntries: read 1121 CLIDRegistry entries for module ALL
 HistogramPersis...WARNING Histograms saving not required.
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
 xaoddata.root        INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] B0544B8E-9BE7-6A4D-B280-F60BD34489CB
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] CE9F5493-C7BE-6D45-B6B6-CB892E36CF31
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] B0544B8E-9BE7-6A4D-B280-F60BD34489CB
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] CE9F5493-C7BE-6D45-B6B6-CB892E36CF31
 Domain[ROOT_All]     INFO                           xaoddata.root
-RootDatabase.open    INFO xaoddata.root File version:60806
+RootDatabase.open    INFO xaoddata.root File version:61006
 ApplicationMgr       INFO Application Manager Started successfully
 AlgResourcePool      INFO TopAlg list empty. Recovering the one of Application Manager
 AthenaPoolConve...   INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
-ClassIDSvc           INFO  getRegistryEntries: read 16 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
 xAODTestReadDecor    INFO cvec.dInt1: 401 402 403 404 405 406 407 408 409 410
 xAODTestReadDecor    INFO cinfo.dInt1: 3000
 xAODTestReadDecor    INFO cinfo.dInt1Base: 3001
 xAODTestReadDecor    INFO cinfo.dInt1: 3000
-ClassIDSvc           INFO  getRegistryEntries: read 54 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 50 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #0, run #0 1 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #1, run #0 1 events processed so far  <<<===
 xAODTestReadDecor    INFO cvec.dInt1: 801 802 803 804 805 806 807 808 809 810
@@ -189,11 +213,12 @@ xAODTestReadDecor    INFO cinfo.dInt1Base: 60001
 xAODTestReadDecor    INFO cinfo.dInt1: 60000
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
 xaoddata.root        INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] B0544B8E-9BE7-6A4D-B280-F60BD34489CB
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] CE9F5493-C7BE-6D45-B6B6-CB892E36CF31
 ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog           INFO File 'xAODTestDecorHandle2_catalog.xml' does not exist. New file created.
 AthDictLoaderSvc     INFO in finalize...
 ToolSvc              INFO Removing all tools created by ToolSvc
 ChronoStatSvc.f...   INFO  Service finalized successfully 
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestDecorHandle2MT.ref b/Control/DataModelTest/DataModelRunTests/share/xAODTestDecorHandle2MT.ref
index 151605545fac4742f767da54d4fac5a486ab3207..5f3185b09f46906aab23c2546d03b219c881c588 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestDecorHandle2MT.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestDecorHandle2MT.ref
@@ -1,7 +1,7 @@
-Mon Jan 29 11:54:47 EST 2018
-WARNING: TCMALLOCDIR not defined, will use libc malloc
+Wed Mar 14 20:59:37 CET 2018
+Preloading tcmalloc_minimal.so
 Py:Athena            INFO including file "AthenaCommon/Preparation.py"
-Py:Athena            INFO using release [?-21.0.0] [i686-slc5-gcc43-dbg] [?/?] -- built on [?]
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1950]
 Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
 Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
 Py:Athena            INFO executing ROOT6Setup
@@ -10,50 +10,74 @@ Py:AlgScheduler      INFO setting up AvalancheSchedulerSvc/AvalancheSchedulerSvc
 Py:Athena            INFO including file "AthenaCommon/Execution.py"
 Py:Athena            INFO including file "DataModelRunTests/xAODTestDecorHandle2MT_jo.py"
 Py:Athena            INFO including file "DataModelRunTests/xAODTestDecorHandle2_jo.py"
-Py:ConfigurableDb    INFO Read module info for 468 configurables from 2 genConfDb files
-Py:ConfigurableDb    INFO No duplicates have been found: that's good !
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
 Py:Athena            INFO including file "AthenaCommon/runbatch.py"
-# setting LC_ALL to "C"
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 MessageSvc           INFO Activating in a separate thread
 ApplicationMgr    SUCCESS 
 ====================================================================================================================================
-                                                   Welcome to ApplicationMgr (GaudiCoreSvc v27r1p99)
-                                          running on karma on Mon Jan 29 11:54:55 2018
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 20:59:53 2018
 ====================================================================================================================================
 ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
 ApplicationMgr                                     INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 AthDictLoaderSvc                                   INFO in initialize...
 AthDictLoaderSvc                                   INFO acquired Dso-registry
-ClassIDSvc                                         INFO  getRegistryEntries: read 10539 CLIDRegistry entries for module ALL
+ClassIDSvc                                         INFO  getRegistryEntries: read 10347 CLIDRegistry entries for module ALL
 ChronoStatSvc                                      INFO  Number of skipped events for MemStat-1
 CoreDumpSvc                                        INFO install f-a-t-a-l handler... (flag = -1)
 CoreDumpSvc                                        INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
 AthenaHiveEventLoopMgr                             INFO Initializing AthenaHiveEventLoopMgr - package version AthenaServices-00-00-00
 MetaDataSvc                                        INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00
 AthenaPoolCnvSvc                                   INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
-PoolSvc                                            INFO io_register[PoolSvc](xmlcatalog_file:PoolFileCatalog.xml) [ok]
 PoolSvc                                            INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
 PoolSvc                                            INFO Frontier compression level set to 5
-DBReplicaSvc                                       INFO Read replica configuration from /home/sss/atlas/dvtest/build/share/dbreplica.config
-DBReplicaSvc                                       INFO No specific match for domain found - use default fallback
-DBReplicaSvc                                       INFO Total of 1 servers found for host karma [atlas_dd ]
+DBReplicaSvc                                       INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc                                       INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc                                       INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
 PoolSvc                                            INFO Successfully setup replica sorting algorithm
 PoolSvc                                            INFO Setting up APR FileCatalog and Streams
-PoolSvc                                            INFO POOL WriteCatalog is xmlcatalog_file:PoolFileCatalog.xml
+PoolSvc                                            INFO POOL WriteCatalog is file:xAODTestDecorHandle2MT_catalog.xml
 DbSession                                          INFO     Open     DbSession    
 Domain[ROOT_All]                                   INFO >   Access   DbDomain     READ      [ROOT_All] 
 EventSelector                                      INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
 EventSelector                                      INFO reinitialization...
 EventSelector                                      INFO EventSelection with query 
-Domain[ROOT_All]                                   INFO ->  Access   DbDatabase   READ      [ROOT_All] B0544B8E-9BE7-6A4D-B280-F60BD34489CB
+PoolSvc                                            INFO File is not in Catalog! Attempt to open it anyway.
+DbSession                                          INFO     Open     DbSession    
+Domain[ROOT_All]                                   INFO ->  Access   DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]                                   INFO                           xaoddata.root
+RootDatabase.open                                  INFO xaoddata.root File version:61006
+xaoddata.root                                      INFO Database being retired...
+Domain[ROOT_All]                                   INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]                                   INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc                                            INFO File is not in Catalog! Attempt to open it anyway.
+DbSession                                          INFO     Open     DbSession    
+Domain[ROOT_All]                                   INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]                                   INFO ->  Access   DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]                                   INFO                           xaoddata.root
+RootDatabase.open                                  INFO xaoddata.root File version:61006
+xaoddata.root                                      INFO Database being retired...
+Domain[ROOT_All]                                   INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]                                   INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession                                          INFO     Open     DbSession    
+Domain[ROOT_All]                                   INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]                                   INFO ->  Access   DbDatabase   READ      [ROOT_All] 577B0665-852C-2641-8548-690B860A42A8
 Domain[ROOT_All]                                   INFO                           xaoddata.root
-RootDatabase.open                                  INFO xaoddata.root File version:60806
+RootDatabase.open                                  INFO xaoddata.root File version:61006
 EventPersistencySvc                                INFO Added successfully Conversion service:AthenaPoolCnvSvc
-ClassIDSvc                                         INFO  getRegistryEntries: read 1084 CLIDRegistry entries for module ALL
-AthenaPoolAddressProviderSvc                       INFO Initializing AthenaPoolAddressProviderSvc - package version EventSelectorAthenaPool-00-00-00
-ClassIDSvc                                         INFO  getRegistryEntries: read 318 CLIDRegistry entries for module ALL
+ClassIDSvc                                         INFO  getRegistryEntries: read 1121 CLIDRegistry entries for module ALL
+ClassIDSvc                                         INFO  getRegistryEntries: read 383 CLIDRegistry entries for module ALL
 ThreadPoolSvc                                      INFO no thread init tools attached
 AvalancheSchedulerSvc                              INFO Activating scheduler in a separate thread
 AvalancheSchedulerSvc                              INFO Waiting for AvalancheSchedulerSvc to activate
@@ -90,24 +114,24 @@ HistogramPersistencySvc                         WARNING Histograms saving not re
 AthenaHiveEventLoopMgr                             INFO Setup EventSelector service EventSelector
 ApplicationMgr                                     INFO Application Manager Initialized successfully
 xaoddata.root                                      INFO Database being retired...
-Domain[ROOT_All]                                   INFO ->  Deaccess DbDatabase   READ      [ROOT_All] B0544B8E-9BE7-6A4D-B280-F60BD34489CB
+Domain[ROOT_All]                                   INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 577B0665-852C-2641-8548-690B860A42A8
 Domain[ROOT_All]                                   INFO >   Deaccess DbDomain     READ      [ROOT_All] 
 DbSession                                          INFO     Open     DbSession    
 Domain[ROOT_All]                                   INFO >   Access   DbDomain     READ      [ROOT_All] 
-Domain[ROOT_All]                                   INFO ->  Access   DbDatabase   READ      [ROOT_All] B0544B8E-9BE7-6A4D-B280-F60BD34489CB
+Domain[ROOT_All]                                   INFO ->  Access   DbDatabase   READ      [ROOT_All] 577B0665-852C-2641-8548-690B860A42A8
 Domain[ROOT_All]                                   INFO                           xaoddata.root
-RootDatabase.open                                  INFO xaoddata.root File version:60806
+RootDatabase.open                                  INFO xaoddata.root File version:61006
 ApplicationMgr                                     INFO Application Manager Started successfully
 AthenaHiveEventLoopMgr                             INFO Starting loop on events
 AthenaPoolConverter                     0   0      INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
 AthenaHiveEventLoopMgr                  0   0      INFO   ===>>>  start of run 0    <<<===
-ClassIDSvc                              0   0      INFO  getRegistryEntries: read 16 CLIDRegistry entries for module ALL
+ClassIDSvc                              0   0      INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaHiveEventLoopMgr                  0   0      INFO   ===>>>  start processing event #0, run #0 on slot 0,  0 events processed so far  <<<===
 xAODTestReadDecor                       0   0      INFO cvec.dInt1: 401 402 403 404 405 406 407 408 409 410
 xAODTestReadDecor                       0   0      INFO cinfo.dInt1: 3000
 xAODTestReadDecor                       0   0      INFO cinfo.dInt1Base: 3001
 xAODTestReadDecor                       0   0      INFO cinfo.dInt1: 3000
-ClassIDSvc                              0   0      INFO  getRegistryEntries: read 54 CLIDRegistry entries for module ALL
+ClassIDSvc                              0   0      INFO  getRegistryEntries: read 50 CLIDRegistry entries for module ALL
 AthenaHiveEventLoopMgr                             INFO   ===>>>  done processing event #0, run #0 on slot 0,  1 events processed so far  <<<===
 AthenaHiveEventLoopMgr                  1   0      INFO   ===>>>  start processing event #1, run #0 on slot 0,  1 events processed so far  <<<===
 xAODTestReadDecor                       1   0      INFO cvec.dInt1: 801 802 803 804 805 806 807 808 809 810
@@ -223,9 +247,9 @@ xAODTestReadDecor                       19  0      INFO cinfo.dInt1: 60000
 xAODTestReadDecor                       19  0      INFO cinfo.dInt1Base: 60001
 xAODTestReadDecor                       19  0      INFO cinfo.dInt1: 60000
 AthenaHiveEventLoopMgr                             INFO   ===>>>  done processing event #19, run #0 on slot 0,  20 events processed so far  <<<===
-AthenaHiveEventLoopMgr                             INFO ---> Loop Finished (seconds): 0.118135
+AthenaHiveEventLoopMgr                             INFO ---> Loop Finished (seconds): 0.381866
 xaoddata.root                                      INFO Database being retired...
-Domain[ROOT_All]                                   INFO ->  Deaccess DbDatabase   READ      [ROOT_All] B0544B8E-9BE7-6A4D-B280-F60BD34489CB
+Domain[ROOT_All]                                   INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 577B0665-852C-2641-8548-690B860A42A8
 ApplicationMgr                                     INFO Application Manager Stopped successfully
 IncidentProcAlg1                                   INFO Finalize
 SGInputLoader                                      INFO Finalizing SGInputLoader...
@@ -234,6 +258,7 @@ AvalancheSchedulerSvc                              INFO Joining Scheduler thread
 AvalancheSchedulerSvc                   19  0      INFO Terminating thread-pool resources
 EventDataSvc                                       INFO Finalizing EventDataSvc - package version StoreGate-00-00-00
 Domain[ROOT_All]                                   INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog                                         INFO File 'xAODTestDecorHandle2MT_catalog.xml' does not exist. New file created.
 AthDictLoaderSvc                                   INFO in finalize...
 ToolSvc                                            INFO Removing all tools created by ToolSvc
 ChronoStatSvc.finalize()                           INFO  Service finalized successfully 
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestDecorHandle2MT_jo.py b/Control/DataModelTest/DataModelRunTests/share/xAODTestDecorHandle2MT_jo.py
index 70897bcc4c46f17ba64fc789d2eee25616e8d095..628c8ae717db8c808ee050a2a4da852d3ef0fd8a 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestDecorHandle2MT_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestDecorHandle2MT_jo.py
@@ -7,4 +7,5 @@
 # Purpose: Test decoration handles and hive.
 #
 
+FILECATALOG = 'xAODTestDecorHandle2MT_catalog.xml'
 include ('DataModelRunTests/xAODTestDecorHandle2_jo.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestDecorHandle2_jo.py b/Control/DataModelTest/DataModelRunTests/share/xAODTestDecorHandle2_jo.py
index 600e17e8762c9fa30255a7bb77da35443651f41c..58bcfed246bf4404c32e0c1d3d90f191f4d45293 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestDecorHandle2_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestDecorHandle2_jo.py
@@ -76,3 +76,7 @@ ChronoStatSvc.ChronoPrintOutTable = FALSE
 ChronoStatSvc.PrintUserTime       = FALSE
 ChronoStatSvc.StatPrintOutTable   = FALSE
 
+# Avoid races when running tests in parallel.
+if 'FILECATALOG' not in globals():
+  FILECATALOG = 'xAODTestDecorHandle2_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestRead.ref b/Control/DataModelTest/DataModelRunTests/share/xAODTestRead.ref
index 88d67aef92b8d0fce1364390c8af54cf003af8f8..6bc05a550c84339ee920546364383973bebda4f8 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestRead.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestRead.ref
@@ -1,21 +1,29 @@
-Fri Feb  2 17:56:48 CET 2018
+Wed Mar 14 18:27:46 CET 2018
 Preloading tcmalloc_minimal.so
 Py:Athena            INFO including file "AthenaCommon/Preparation.py"
-Py:Athena            INFO using release [WorkDir-22.0.0] [x86_64-slc6-gcc62-dbg] [atlas-work3g/fe158bca093] -- built on [2018-02-02T1445]
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1645]
 Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
 Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
 Py:Athena            INFO executing ROOT6Setup
 Py:Athena            INFO including file "AthenaCommon/Execution.py"
 Py:Athena            INFO including file "DataModelRunTests/xAODTestRead_jo.py"
-Py:ConfigurableDb    INFO Read module info for 5453 configurables from 7 genConfDb files
-Py:ConfigurableDb    INFO No duplicates have been found: that's good !
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
 Py:Athena            INFO including file "EventAthenaPool/EventAthenaPoolItemList_joboptions.py"
-[?1034hPy:Athena            INFO including file "AthenaCommon/runbatch.py"
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
+Py:Athena            INFO including file "AthenaCommon/runbatch.py"
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 ApplicationMgr    SUCCESS 
 ====================================================================================================================================
                                                    Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
-                                          running on lxplus011.cern.ch on Fri Feb  2 17:57:36 2018
+                                          running on lxplus008.cern.ch on Wed Mar 14 18:28:02 2018
 ====================================================================================================================================
 ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
@@ -23,7 +31,7 @@ ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to leve
 StatusCodeSvc        INFO initialize
 AthDictLoaderSvc     INFO in initialize...
 AthDictLoaderSvc     INFO acquired Dso-registry
-ClassIDSvc           INFO  getRegistryEntries: read 10095 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 10120 CLIDRegistry entries for module ALL
 ChronoStatSvc        INFO  Number of skipped events for MemStat-1
 CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
 CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
@@ -33,8 +41,8 @@ AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version Athena
 PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
 PoolSvc              INFO Frontier compression level set to 5
 DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
-DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-02-01T2153/Athena/22.0.0/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
-DBReplicaSvc         INFO Total of 10 servers found for host lxplus011.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
 PoolSvc              INFO Successfully setup replica sorting algorithm
 PoolSvc              INFO Setting up APR FileCatalog and Streams
 PoolSvc              INFO POOL WriteCatalog is file:xAODTestRead_catalog.xml
@@ -43,11 +51,30 @@ Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All]
 EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
 EventSelector        INFO reinitialization...
 EventSelector        INFO EventSelection with query 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 5EB428F9-6315-C947-A806-138BC2CB9101
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO                           xaoddata.root
+RootDatabase.open    INFO xaoddata.root File version:61006
+xaoddata.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO                           xaoddata.root
+RootDatabase.open    INFO xaoddata.root File version:61006
+xaoddata.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 Domain[ROOT_All]     INFO                           xaoddata.root
 RootDatabase.open    INFO xaoddata.root File version:61006
 EventPersistenc...   INFO Added successfully Conversion service:AthenaPoolCnvSvc
-ClassIDSvc           INFO  getRegistryEntries: read 1111 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 1121 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00
 ClassIDSvc           INFO  getRegistryEntries: read 437 CLIDRegistry entries for module ALL
 ClassIDSvc           INFO  getRegistryEntries: read 62 CLIDRegistry entries for module ALL
@@ -58,14 +85,14 @@ MetaInputLoader      INFO Will create WriteCondHandle dependencies for the follo
     +  ( 'DMTest::C' , 'MetaC' ) 
 DecisionSvc          INFO Inserting stream: Stream1 with no Algs
 OutputStreamSeq...   INFO Initializing OutputStreamSequencerSvc - package version AthenaServices-00-00-00
-ClassIDSvc           INFO  getRegistryEntries: read 386 CLIDRegistry entries for module ALL
-Stream1.Stream1...   INFO Initializing Stream1.Stream1Tool - package version OutputStreamAthenaPool-00-00-00
+Stream1.Stream1...   INFO Initializing Stream1.Stream1Tool - package version AthenaServices-00-00-00
 Stream1.Stream1...   INFO Initializing Stream1.Stream1_MakeEventStreamInfo - package version OutputStreamAthenaPool-00-00-00
 Stream1              INFO Found HelperTools = PrivateToolHandleArray(['MakeEventStreamInfo/Stream1_MakeEventStreamInfo'])
 Stream1              INFO Data output: xaoddata2.root
 Stream1              INFO I/O reinitialization...
+ClassIDSvc           INFO  getRegistryEntries: read 336 CLIDRegistry entries for module ALL
 DecisionSvc          INFO Inserting stream: Stream2 with no Algs
-Stream2.Stream2...   INFO Initializing Stream2.Stream2Tool - package version OutputStreamAthenaPool-00-00-00
+Stream2.Stream2...   INFO Initializing Stream2.Stream2Tool - package version AthenaServices-00-00-00
 Stream2.Stream2...   INFO Initializing Stream2.Stream2_MakeEventStreamInfo - package version OutputStreamAthenaPool-00-00-00
 Stream2              INFO Found HelperTools = PrivateToolHandleArray(['MakeEventStreamInfo/Stream2_MakeEventStreamInfo'])
 Stream2              INFO Data output: xaoddata2b.root
@@ -74,35 +101,35 @@ HistogramPersis...WARNING Histograms saving not required.
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
 xaoddata.root        INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 5EB428F9-6315-C947-A806-138BC2CB9101
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 5EB428F9-6315-C947-A806-138BC2CB9101
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 Domain[ROOT_All]     INFO                           xaoddata.root
 RootDatabase.open    INFO xaoddata.root File version:61006
 ApplicationMgr       INFO Application Manager Started successfully
 AlgResourcePool      INFO TopAlg list empty. Recovering the one of Application Manager
 AthenaPoolConve...   INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
-ClassIDSvc           INFO  getRegistryEntries: read 11 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 0
-MetaInputLoader      INFO createMetaObj for MetaCAux. and sid 5EB428F9-6315-C947-A806-138BC2CB9101
-MetaInputLoader      INFO  address0 0x17df3800
+MetaInputLoader      INFO createMetaObj for MetaCAux. and sid 7F2F3510-E20F-7D44-A810-3114E1E15F7C
+MetaInputLoader      INFO  address0 0x19641400
 MetaDataStore_ImplWARNING record_impl: Doing auto-symlinks for object with CLID 9723 and SG key MetaCAux.: Proxy already set for base CLID 187169987; not making auto-symlink.
-MetaInputLoader      INFO  address1 0x17df3800
+MetaInputLoader      INFO  address1 0x19641400
 MetaInputLoader      INFO Now have mcb with 1 entries
 ClassIDSvc           INFO  getRegistryEntries: read 50 CLIDRegistry entries for module ALL
 MetaInputLoader      INFO Retrieved mcb with entries = 0
-MetaInputLoader      INFO createMetaObj for MetaC and sid 5EB428F9-6315-C947-A806-138BC2CB9101
-MetaInputLoader      INFO  address0 0x17df4900
-MetaInputLoader      INFO  address1 0x17df4900
+MetaInputLoader      INFO createMetaObj for MetaC and sid 7F2F3510-E20F-7D44-A810-3114E1E15F7C
+MetaInputLoader      INFO  address0 0x19640e00
+MetaInputLoader      INFO  address1 0x19640e00
 MetaInputLoader      INFO Now have mcb with 1 entries
 MetaInputLoader      INFO Retrieved mcb with entries = 0
-MetaInputLoader      INFO createMetaObj for MetaS1 and sid 5EB428F9-6315-C947-A806-138BC2CB9101
-MetaInputLoader      INFO  address0 0x22003e00
-MetaInputLoader      INFO  address1 0x22003e00
+MetaInputLoader      INFO createMetaObj for MetaS1 and sid 7F2F3510-E20F-7D44-A810-3114E1E15F7C
+MetaInputLoader      INFO  address0 0x1963f900
+MetaInputLoader      INFO  address1 0x1963f900
 MetaInputLoader      INFO Now have mcb with 1 entries
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
@@ -179,7 +206,7 @@ hvec: 401.5 402.5 403.5 404.5 405.5 406.5 407.5 408.5 409.5 410.5 411.5 412.5 41
 hview: 420.5 419.5 418.5 417.5 416.5 415.5 414.5 413.5 412.5 411.5 410.5 409.5 408.5 407.5 406.5 405.5 404.5 403.5 402.5 401.5
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     UPDATE    [ROOT_All] 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] AB66E1A4-A5A6-7D49-99A6-4B74852B948C
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] FA70270A-9244-C245-AAF1-82D8C861F895
 Domain[ROOT_All]     INFO                           xaoddata2.root
 RootDatabase.open    INFO xaoddata2.root File version:61006
 StorageSvc           INFO Building shape according to reflection information using shape ID for:
@@ -195,17 +222,17 @@ StorageSvc           INFO xAOD::ShallowAuxContainer [C63C39D7-9501-49DC-B1B0-6AD
 StorageSvc           INFO Building shape according to reflection information using shape ID for:
 StorageSvc           INFO xAOD::AuxContainerBase [C87C71B3-B03F-42FC-AF99-DF497F148397]
 ClassIDSvc           INFO  getRegistryEntries: read 18 CLIDRegistry entries for module ALL
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] D383090A-BEE6-4345-A5C6-F22C994AFED3
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] AC1AAD2B-8E1F-C746-A5D6-52C79B54BB10
 Domain[ROOT_All]     INFO                           xaoddata2b.root
 RootDatabase.open    INFO xaoddata2b.root File version:61006
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #0, run #0 1 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #1, run #0 1 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -280,11 +307,11 @@ hview: 820.5 819.5 818.5 817.5 816.5 815.5 814.5 813.5 812.5 811.5 810.5 809.5 8
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #1, run #0 2 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #2, run #0 2 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -359,11 +386,11 @@ hview: 1220.5 1219.5 1218.5 1217.5 1216.5 1215.5 1214.5 1213.5 1212.5 1211.5 121
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #2, run #0 3 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #3, run #0 3 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -438,11 +465,11 @@ hview: 1620.5 1619.5 1618.5 1617.5 1616.5 1615.5 1614.5 1613.5 1612.5 1611.5 161
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #3, run #0 4 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #4, run #0 4 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -477,11 +504,11 @@ hview: 2020.5 2019.5 2018.5 2017.5 2016.5 2015.5 2014.5 2013.5 2012.5 2011.5 201
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #4, run #0 5 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #5, run #0 5 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -556,11 +583,11 @@ hview: 2420.5 2419.5 2418.5 2417.5 2416.5 2415.5 2414.5 2413.5 2412.5 2411.5 241
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #5, run #0 6 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #6, run #0 6 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -635,11 +662,11 @@ hview: 2820.5 2819.5 2818.5 2817.5 2816.5 2815.5 2814.5 2813.5 2812.5 2811.5 281
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #6, run #0 7 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #7, run #0 7 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -714,11 +741,11 @@ hview: 3220.5 3219.5 3218.5 3217.5 3216.5 3215.5 3214.5 3213.5 3212.5 3211.5 321
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #7, run #0 8 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #8, run #0 8 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -793,11 +820,11 @@ hview: 3620.5 3619.5 3618.5 3617.5 3616.5 3615.5 3614.5 3613.5 3612.5 3611.5 361
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #8, run #0 9 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #9, run #0 9 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -872,11 +899,11 @@ hview: 4020.5 4019.5 4018.5 4017.5 4016.5 4015.5 4014.5 4013.5 4012.5 4011.5 401
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #9, run #0 10 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #10, run #0 10 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -951,11 +978,11 @@ hview: 4420.5 4419.5 4418.5 4417.5 4416.5 4415.5 4414.5 4413.5 4412.5 4411.5 441
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #10, run #0 11 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #11, run #0 11 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -1030,11 +1057,11 @@ hview: 4820.5 4819.5 4818.5 4817.5 4816.5 4815.5 4814.5 4813.5 4812.5 4811.5 481
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #11, run #0 12 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #12, run #0 12 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -1109,11 +1136,11 @@ hview: 5220.5 5219.5 5218.5 5217.5 5216.5 5215.5 5214.5 5213.5 5212.5 5211.5 521
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #12, run #0 13 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #13, run #0 13 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -1188,11 +1215,11 @@ hview: 5620.5 5619.5 5618.5 5617.5 5616.5 5615.5 5614.5 5613.5 5612.5 5611.5 561
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #13, run #0 14 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #14, run #0 14 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -1267,11 +1294,11 @@ hview: 6020.5 6019.5 6018.5 6017.5 6016.5 6015.5 6014.5 6013.5 6012.5 6011.5 601
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #14, run #0 15 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #15, run #0 15 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -1346,11 +1373,11 @@ hview: 6420.5 6419.5 6418.5 6417.5 6416.5 6415.5 6414.5 6413.5 6412.5 6411.5 641
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #15, run #0 16 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #16, run #0 16 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -1425,11 +1452,11 @@ hview: 6820.5 6819.5 6818.5 6817.5 6816.5 6815.5 6814.5 6813.5 6812.5 6811.5 681
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #16, run #0 17 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #17, run #0 17 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -1504,11 +1531,11 @@ hview: 7220.5 7219.5 7218.5 7217.5 7216.5 7215.5 7214.5 7213.5 7212.5 7211.5 721
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #17, run #0 18 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #18, run #0 18 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -1583,11 +1610,11 @@ hview: 7620.5 7619.5 7618.5 7617.5 7616.5 7615.5 7614.5 7613.5 7612.5 7611.5 761
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #18, run #0 19 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #19, run #0 19 events processed so far  <<<===
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::CInfoAuxContainer' , 'MetaCAux.' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::C' , 'MetaC' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 MetaInputLoader      INFO Retrieved mcb with entries = 1
-MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 5EB428F9-6315-C947-A806-138BC2CB9101
+MetaInputLoader      INFO   MetaObj  ( 'DMTest::S1' , 'MetaS1' )  is still valid for 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 DMTest::MetaRea...   INFO MetaS1: 24
 DMTest::MetaRea...   INFO MetaC: 3 2.5
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -1664,11 +1691,11 @@ ClassIDSvc           INFO  getRegistryEntries: read 4 CLIDRegistry entries for m
 Stream1              INFO Records written: 21
 Stream2              INFO Records written: 21
 xaoddata.root        INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 5EB428F9-6315-C947-A806-138BC2CB9101
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 7F2F3510-E20F-7D44-A810-3114E1E15F7C
 xaoddata2.root       INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] AB66E1A4-A5A6-7D49-99A6-4B74852B948C
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] FA70270A-9244-C245-AAF1-82D8C861F895
 xaoddata2b.root      INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] D383090A-BEE6-4345-A5C6-F22C994AFED3
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] AC1AAD2B-8E1F-C746-A5D6-52C79B54BB10
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     UPDATE    [ROOT_All] 
 ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
@@ -1676,6 +1703,7 @@ MetaInputLoader      INFO Finalizing MetaInputLoader...
 IncidentProcAlg2     INFO Finalize
 DecisionSvc          INFO Finalized successfully.
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog           INFO File 'xAODTestRead_catalog.xml' does not exist. New file created.
 AthDictLoaderSvc     INFO in finalize...
 ToolSvc              INFO Removing all tools created by ToolSvc
 ChronoStatSvc.f...   INFO  Service finalized successfully 
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestRead2.ref b/Control/DataModelTest/DataModelRunTests/share/xAODTestRead2.ref
index 4b56737ad31d31545dfcb18ba2ad314a6c1c4c68..1c069ae9374236d8cbafb768426e55a4c25b7dcb 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestRead2.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestRead2.ref
@@ -1,22 +1,29 @@
-Mon Jan 29 10:29:18 EST 2018
-WARNING: TCMALLOCDIR not defined, will use libc malloc
+Wed Mar 14 18:28:09 CET 2018
+Preloading tcmalloc_minimal.so
 Py:Athena            INFO including file "AthenaCommon/Preparation.py"
-Py:Athena            INFO using release [?-21.0.0] [i686-slc5-gcc43-dbg] [?/?] -- built on [?]
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1645]
 Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
 Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
 Py:Athena            INFO executing ROOT6Setup
 Py:Athena            INFO including file "AthenaCommon/Execution.py"
 Py:Athena            INFO including file "DataModelRunTests/xAODTestRead2_jo.py"
-Py:ConfigurableDb    INFO Read module info for 468 configurables from 2 genConfDb files
-Py:ConfigurableDb    INFO No duplicates have been found: that's good !
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
 Py:Athena            INFO including file "EventAthenaPool/EventAthenaPoolItemList_joboptions.py"
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
 Py:Athena            INFO including file "AthenaCommon/runbatch.py"
-# setting LC_ALL to "C"
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 ApplicationMgr    SUCCESS 
 ====================================================================================================================================
-                                                   Welcome to ApplicationMgr (GaudiCoreSvc v27r1p99)
-                                          running on karma on Mon Jan 29 10:29:23 2018
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 18:28:25 2018
 ====================================================================================================================================
 ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
@@ -24,19 +31,19 @@ ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to leve
 StatusCodeSvc        INFO initialize
 AthDictLoaderSvc     INFO in initialize...
 AthDictLoaderSvc     INFO acquired Dso-registry
-ClassIDSvc           INFO  getRegistryEntries: read 10097 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 9958 CLIDRegistry entries for module ALL
 ChronoStatSvc        INFO  Number of skipped events for MemStat-1
 CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
 CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
 AthenaEventLoopMgr   INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00
-ClassIDSvc           INFO  getRegistryEntries: read 318 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 380 CLIDRegistry entries for module ALL
 MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00
 AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
 PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
 PoolSvc              INFO Frontier compression level set to 5
-DBReplicaSvc         INFO Read replica configuration from /home/sss/atlas/dvtest/build/share/dbreplica.config
-DBReplicaSvc         INFO No specific match for domain found - use default fallback
-DBReplicaSvc         INFO Total of 1 servers found for host karma [atlas_dd ]
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
 PoolSvc              INFO Successfully setup replica sorting algorithm
 PoolSvc              INFO Setting up APR FileCatalog and Streams
 PoolSvc              INFO POOL WriteCatalog is file:xAODTestRead2_catalog.xml
@@ -45,16 +52,33 @@ Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All]
 EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
 EventSelector        INFO reinitialization...
 EventSelector        INFO EventSelection with query 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] C51525D3-C0C7-DE4B-9E48-109EE434A04C
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 214E5BC9-9F55-F7AF-D6A3-866AAB37B6FE
+Domain[ROOT_All]     INFO                           xaoddata2.root
+RootDatabase.open    INFO xaoddata2.root File version:61006
+xaoddata2.root       INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 214E5BC9-9F55-F7AF-D6A3-866AAB37B6FE
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 214E5BC9-9F55-F7AF-D6A3-866AAB37B6FE
+Domain[ROOT_All]     INFO                           xaoddata2.root
+RootDatabase.open    INFO xaoddata2.root File version:61006
+xaoddata2.root       INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 214E5BC9-9F55-F7AF-D6A3-866AAB37B6FE
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] FA70270A-9244-C245-AAF1-82D8C861F895
 Domain[ROOT_All]     INFO                           xaoddata2.root
-RootDatabase.open    INFO xaoddata2.root File version:60806
+RootDatabase.open    INFO xaoddata2.root File version:61006
 EventPersistenc...   INFO Added successfully Conversion service:AthenaPoolCnvSvc
-AthenaPoolAddre...   INFO Initializing AthenaPoolAddressProviderSvc - package version EventSelectorAthenaPool-00-00-00
-ClassIDSvc           INFO  getRegistryEntries: read 1084 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 1121 CLIDRegistry entries for module ALL
 DecisionSvc          INFO Inserting stream: Stream1 with no Algs
 OutputStreamSeq...   INFO Initializing OutputStreamSequencerSvc - package version AthenaServices-00-00-00
-ClassIDSvc           INFO  getRegistryEntries: read 386 CLIDRegistry entries for module ALL
-Stream1.Stream1...   INFO Initializing Stream1.Stream1Tool - package version OutputStreamAthenaPool-00-00-00
+Stream1.Stream1...   INFO Initializing Stream1.Stream1Tool - package version AthenaServices-00-00-00
 Stream1.Stream1...   INFO Initializing Stream1.Stream1_MakeEventStreamInfo - package version OutputStreamAthenaPool-00-00-00
 Stream1              INFO Found HelperTools = PrivateToolHandleArray(['MakeEventStreamInfo/Stream1_MakeEventStreamInfo'])
 Stream1              INFO Data output: xaoddata2x.root
@@ -63,17 +87,18 @@ HistogramPersis...WARNING Histograms saving not required.
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
 xaoddata2.root       INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] C51525D3-C0C7-DE4B-9E48-109EE434A04C
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] FA70270A-9244-C245-AAF1-82D8C861F895
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] C51525D3-C0C7-DE4B-9E48-109EE434A04C
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] FA70270A-9244-C245-AAF1-82D8C861F895
 Domain[ROOT_All]     INFO                           xaoddata2.root
-RootDatabase.open    INFO xaoddata2.root File version:60806
+RootDatabase.open    INFO xaoddata2.root File version:61006
 ApplicationMgr       INFO Application Manager Started successfully
+ClassIDSvc           INFO  getRegistryEntries: read 336 CLIDRegistry entries for module ALL
 AlgResourcePool      INFO TopAlg list empty. Recovering the one of Application Manager
 AthenaPoolConve...   INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
-ClassIDSvc           INFO  getRegistryEntries: read 16 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dInt100 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -121,7 +146,7 @@ Type of aux store: xAOD::AuxContainerBase
 cinfo aux items: aFloat anInt anInt2 cEL dInt1 dInt100 dInt100Base dInt1Base 
 cinfo  anInt1 1000 aFloat: 0.1 anInt2: 2000 dInt1: 3000 cEL: cvec[1] dInt100: 1500
 1
-ClassIDSvc           INFO  getRegistryEntries: read 108 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 100 CLIDRegistry entries for module ALL
 ctrig aux items: aFloat anInt anInt2 dInt1 dInt100 
  anInt1 501 aFloat: 600 anInt2: 701 dInt1: 481 dInt100: 1201
  anInt1 502 aFloat: 600.1 anInt2: 702 dInt1: 482 dInt100: 1202
@@ -273,9 +298,9 @@ scopy_cvecWD 1001: 201(40100) 202(40200) 203(40300) 204(40400) 205(40500) 206(40
 scopy_hvec: 401.5 402.5 403.5 404.5 405.5 406.5 407.5 408.5 409.5 410.5 411.5 412.5 413.5 414.5 415.5 416.5 417.5 418.5 419.5 420.5
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     UPDATE    [ROOT_All] 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] 92504F88-CC86-5648-BD98-638B1CF26ED7
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] B6189FE3-84F7-7244-B3E1-E89B86891898
 Domain[ROOT_All]     INFO                           xaoddata2x.root
-RootDatabase.open    INFO xaoddata2x.root File version:60806
+RootDatabase.open    INFO xaoddata2x.root File version:61006
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #0, run #0 1 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #1, run #0 1 events processed so far  <<<===
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dInt100 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -3883,15 +3908,16 @@ scopy_hvec: 8001.5 8002.5 8003.5 8004.5 8005.5 8006.5 8007.5 8008.5 8009.5 8010.
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
 Stream1              INFO Records written: 21
 xaoddata2.root       INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] C51525D3-C0C7-DE4B-9E48-109EE434A04C
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] FA70270A-9244-C245-AAF1-82D8C861F895
 xaoddata2x.root      INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] 92504F88-CC86-5648-BD98-638B1CF26ED7
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] B6189FE3-84F7-7244-B3E1-E89B86891898
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     UPDATE    [ROOT_All] 
 ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
 DecisionSvc          INFO Finalized successfully.
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog           INFO File 'xAODTestRead2_catalog.xml' does not exist. New file created.
 AthDictLoaderSvc     INFO in finalize...
 ToolSvc              INFO Removing all tools created by ToolSvc
 ChronoStatSvc.f...   INFO  Service finalized successfully 
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestRead2_jo.py b/Control/DataModelTest/DataModelRunTests/share/xAODTestRead2_jo.py
index 9f6098eb2ea336272476f75e48a1d12b88aee2f5..2136092d7bb8a5fdd0d74125d503468fd2a90724 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestRead2_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestRead2_jo.py
@@ -125,7 +125,6 @@ ChronoStatSvc.StatPrintOutTable   = FALSE
 
 #svcMgr.ExceptionSvc.Catch = "None"
 
-# Explicitly specify the output file catalog
-# to avoid races when running tests in parallel.
-PoolSvc = Service( "PoolSvc" )
-PoolSvc.WriteCatalog = "file:xAODTestRead2_catalog.xml"
+# Avoid races when running tests in parallel.
+FILECATALOG = 'xAODTestRead2_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestRead2b.ref b/Control/DataModelTest/DataModelRunTests/share/xAODTestRead2b.ref
index 5d35e798d98788f8e19523ce43f68d1887f8cbd6..25817975f778a3b82b60ff8a6ad52b609a083bd5 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestRead2b.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestRead2b.ref
@@ -1,21 +1,28 @@
-Mon Jan 29 10:20:35 EST 2018
-WARNING: TCMALLOCDIR not defined, will use libc malloc
+Wed Mar 14 18:11:30 CET 2018
+Preloading tcmalloc_minimal.so
 Py:Athena            INFO including file "AthenaCommon/Preparation.py"
-Py:Athena            INFO using release [?-21.0.0] [i686-slc5-gcc43-dbg] [?/?] -- built on [?]
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1645]
 Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
 Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
 Py:Athena            INFO executing ROOT6Setup
 Py:Athena            INFO including file "AthenaCommon/Execution.py"
 Py:Athena            INFO including file "DataModelRunTests/xAODTestRead2b_jo.py"
-Py:ConfigurableDb    INFO Read module info for 468 configurables from 2 genConfDb files
-Py:ConfigurableDb    INFO No duplicates have been found: that's good !
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
 Py:Athena            INFO including file "AthenaCommon/runbatch.py"
-# setting LC_ALL to "C"
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 ApplicationMgr    SUCCESS 
 ====================================================================================================================================
-                                                   Welcome to ApplicationMgr (GaudiCoreSvc v27r1p99)
-                                          running on karma on Mon Jan 29 10:20:43 2018
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 18:11:47 2018
 ====================================================================================================================================
 ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
@@ -23,19 +30,19 @@ ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to leve
 StatusCodeSvc        INFO initialize
 AthDictLoaderSvc     INFO in initialize...
 AthDictLoaderSvc     INFO acquired Dso-registry
-ClassIDSvc           INFO  getRegistryEntries: read 10097 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 9958 CLIDRegistry entries for module ALL
 ChronoStatSvc        INFO  Number of skipped events for MemStat-1
 CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
 CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
 AthenaEventLoopMgr   INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00
-ClassIDSvc           INFO  getRegistryEntries: read 318 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 380 CLIDRegistry entries for module ALL
 MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00
 AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
 PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
 PoolSvc              INFO Frontier compression level set to 5
-DBReplicaSvc         INFO Read replica configuration from /home/sss/atlas/dvtest/build/share/dbreplica.config
-DBReplicaSvc         INFO No specific match for domain found - use default fallback
-DBReplicaSvc         INFO Total of 1 servers found for host karma [atlas_dd ]
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
 PoolSvc              INFO Successfully setup replica sorting algorithm
 PoolSvc              INFO Setting up APR FileCatalog and Streams
 PoolSvc              INFO POOL WriteCatalog is file:xAODTestRead2b_catalog.xml
@@ -44,27 +51,45 @@ Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All]
 EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
 EventSelector        INFO reinitialization...
 EventSelector        INFO EventSelection with query 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 5A67A273-88DD-D641-AC09-6F1E8DD149A3
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] D31353FB-2D38-DA09-9F36-0002F69DBB5D
+Domain[ROOT_All]     INFO                           xaoddata2b.root
+RootDatabase.open    INFO xaoddata2b.root File version:61006
+xaoddata2b.root      INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] D31353FB-2D38-DA09-9F36-0002F69DBB5D
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] D31353FB-2D38-DA09-9F36-0002F69DBB5D
+Domain[ROOT_All]     INFO                           xaoddata2b.root
+RootDatabase.open    INFO xaoddata2b.root File version:61006
+xaoddata2b.root      INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] D31353FB-2D38-DA09-9F36-0002F69DBB5D
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 4D46AC82-F641-5A4A-BBA6-4971B69725A9
 Domain[ROOT_All]     INFO                           xaoddata2b.root
-RootDatabase.open    INFO xaoddata2b.root File version:60806
+RootDatabase.open    INFO xaoddata2b.root File version:61006
 EventPersistenc...   INFO Added successfully Conversion service:AthenaPoolCnvSvc
-AthenaPoolAddre...   INFO Initializing AthenaPoolAddressProviderSvc - package version EventSelectorAthenaPool-00-00-00
 HistogramPersis...WARNING Histograms saving not required.
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
 xaoddata2b.root      INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 5A67A273-88DD-D641-AC09-6F1E8DD149A3
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 4D46AC82-F641-5A4A-BBA6-4971B69725A9
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 5A67A273-88DD-D641-AC09-6F1E8DD149A3
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 4D46AC82-F641-5A4A-BBA6-4971B69725A9
 Domain[ROOT_All]     INFO                           xaoddata2b.root
-RootDatabase.open    INFO xaoddata2b.root File version:60806
+RootDatabase.open    INFO xaoddata2b.root File version:61006
 ApplicationMgr       INFO Application Manager Started successfully
-ClassIDSvc           INFO  getRegistryEntries: read 1084 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 1121 CLIDRegistry entries for module ALL
 AlgResourcePool      INFO TopAlg list empty. Recovering the one of Application Manager
 AthenaPoolConve...   INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
-ClassIDSvc           INFO  getRegistryEntries: read 16 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dInt100 dInt200 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -112,7 +137,7 @@ Type of aux store: xAOD::AuxContainerBase
 cinfo aux items: aFloat anInt anInt2 cEL dInt1 dInt100 dInt100Base dInt1Base dInt200 dInt200Base 
 cinfo  anInt1 1000 aFloat: 0.1 anInt2: 2000 dInt1: 3000 cEL: cvec[1] dInt100: 1500 dInt200: 1600
 1
-ClassIDSvc           INFO  getRegistryEntries: read 108 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 100 CLIDRegistry entries for module ALL
 ctrig aux items: aFloat anInt anInt2 dInt1 dInt100 dInt200 
  anInt1 501 aFloat: 600 anInt2: 701 dInt1: 481 dInt100: 1201 dInt200: 1301
  anInt1 502 aFloat: 600.1 anInt2: 702 dInt1: 482 dInt100: 1202 dInt200: 1302
@@ -2528,11 +2553,12 @@ scopy_cvecWD 1020: 4001(800100) 4002(800200) 4003(800300) 4004(800400) 4005(8005
 scopy_hvec: 8001.5 8002.5 8003.5 8004.5 8005.5 8006.5 8007.5 8008.5 8009.5 8010.5 8011.5 8012.5 8013.5 8014.5 8015.5 8016.5 8017.5 8018.5 8019.5 8020.5
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
 xaoddata2b.root      INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 5A67A273-88DD-D641-AC09-6F1E8DD149A3
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 4D46AC82-F641-5A4A-BBA6-4971B69725A9
 ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog           INFO File 'xAODTestRead2b_catalog.xml' does not exist. New file created.
 AthDictLoaderSvc     INFO in finalize...
 ToolSvc              INFO Removing all tools created by ToolSvc
 ChronoStatSvc.f...   INFO  Service finalized successfully 
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestRead2b_jo.py b/Control/DataModelTest/DataModelRunTests/share/xAODTestRead2b_jo.py
index ab40323e6245e3071ecf8a181668791e776f8773..dff4ecfdd3a23a43c715b3ea3c995aaba3f89880 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestRead2b_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestRead2b_jo.py
@@ -87,7 +87,6 @@ ChronoStatSvc.StatPrintOutTable   = FALSE
 
 #svcMgr.ExceptionSvc.Catch = "None"
 
-# Explicitly specify the output file catalog
-# to avoid races when running tests in parallel.
-PoolSvc = Service( "PoolSvc" )
-PoolSvc.WriteCatalog = "file:xAODTestRead2b_catalog.xml"
+# Avoid races when running tests in parallel.
+FILECATALOG = 'xAODTestRead2b_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestRead3.ref b/Control/DataModelTest/DataModelRunTests/share/xAODTestRead3.ref
index a8d8f3987a678ad4e8f9437160683c4195185496..085c5256ff14f93aaaa31578b13b3a6a7c52bef8 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestRead3.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestRead3.ref
@@ -1,21 +1,28 @@
-Mon Jan 29 10:11:33 EST 2018
-WARNING: TCMALLOCDIR not defined, will use libc malloc
+Wed Mar 14 18:11:39 CET 2018
+Preloading tcmalloc_minimal.so
 Py:Athena            INFO including file "AthenaCommon/Preparation.py"
-Py:Athena            INFO using release [?-21.0.0] [i686-slc5-gcc43-dbg] [?/?] -- built on [?]
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1645]
 Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
 Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
 Py:Athena            INFO executing ROOT6Setup
 Py:Athena            INFO including file "AthenaCommon/Execution.py"
 Py:Athena            INFO including file "DataModelRunTests/xAODTestRead3_jo.py"
-Py:ConfigurableDb    INFO Read module info for 468 configurables from 2 genConfDb files
-Py:ConfigurableDb    INFO No duplicates have been found: that's good !
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
 Py:Athena            INFO including file "AthenaCommon/runbatch.py"
-# setting LC_ALL to "C"
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 ApplicationMgr    SUCCESS 
 ====================================================================================================================================
-                                                   Welcome to ApplicationMgr (GaudiCoreSvc v27r1p99)
-                                          running on karma on Mon Jan 29 10:11:44 2018
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 18:11:58 2018
 ====================================================================================================================================
 ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
@@ -23,19 +30,19 @@ ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to leve
 StatusCodeSvc        INFO initialize
 AthDictLoaderSvc     INFO in initialize...
 AthDictLoaderSvc     INFO acquired Dso-registry
-ClassIDSvc           INFO  getRegistryEntries: read 10097 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 9958 CLIDRegistry entries for module ALL
 ChronoStatSvc        INFO  Number of skipped events for MemStat-1
 CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
 CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
 AthenaEventLoopMgr   INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00
-ClassIDSvc           INFO  getRegistryEntries: read 318 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 380 CLIDRegistry entries for module ALL
 MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00
 AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
 PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
 PoolSvc              INFO Frontier compression level set to 5
-DBReplicaSvc         INFO Read replica configuration from /home/sss/atlas/dvtest/build/share/dbreplica.config
-DBReplicaSvc         INFO No specific match for domain found - use default fallback
-DBReplicaSvc         INFO Total of 1 servers found for host karma [atlas_dd ]
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
 PoolSvc              INFO Successfully setup replica sorting algorithm
 PoolSvc              INFO Setting up APR FileCatalog and Streams
 PoolSvc              INFO POOL WriteCatalog is file:xAODTestRead3_catalog.xml
@@ -44,27 +51,45 @@ Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All]
 EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
 EventSelector        INFO reinitialization...
 EventSelector        INFO EventSelection with query 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 25DE488B-4B4E-3143-B233-1EC30C6E2F91
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 9537AB7C-6D7D-ED65-5325-B23A804F19D8
+Domain[ROOT_All]     INFO                           xaoddata3.root
+RootDatabase.open    INFO xaoddata3.root File version:61006
+xaoddata3.root       INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 9537AB7C-6D7D-ED65-5325-B23A804F19D8
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 9537AB7C-6D7D-ED65-5325-B23A804F19D8
+Domain[ROOT_All]     INFO                           xaoddata3.root
+RootDatabase.open    INFO xaoddata3.root File version:61006
+xaoddata3.root       INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 9537AB7C-6D7D-ED65-5325-B23A804F19D8
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] C73A4F64-0A8B-7145-A35C-FB56058A53D0
 Domain[ROOT_All]     INFO                           xaoddata3.root
-RootDatabase.open    INFO xaoddata3.root File version:60806
+RootDatabase.open    INFO xaoddata3.root File version:61006
 EventPersistenc...   INFO Added successfully Conversion service:AthenaPoolCnvSvc
-AthenaPoolAddre...   INFO Initializing AthenaPoolAddressProviderSvc - package version EventSelectorAthenaPool-00-00-00
 HistogramPersis...WARNING Histograms saving not required.
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
 xaoddata3.root       INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 25DE488B-4B4E-3143-B233-1EC30C6E2F91
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] C73A4F64-0A8B-7145-A35C-FB56058A53D0
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 25DE488B-4B4E-3143-B233-1EC30C6E2F91
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] C73A4F64-0A8B-7145-A35C-FB56058A53D0
 Domain[ROOT_All]     INFO                           xaoddata3.root
-RootDatabase.open    INFO xaoddata3.root File version:60806
+RootDatabase.open    INFO xaoddata3.root File version:61006
 ApplicationMgr       INFO Application Manager Started successfully
-ClassIDSvc           INFO  getRegistryEntries: read 1084 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 1121 CLIDRegistry entries for module ALL
 AlgResourcePool      INFO TopAlg list empty. Recovering the one of Application Manager
 AthenaPoolConve...   INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
-ClassIDSvc           INFO  getRegistryEntries: read 16 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -113,7 +138,7 @@ RootAuxDynReader     INFO FILE:LINE (const RootAuxDynReader::BranchInfo& RootAux
 cinfo aux items: aFloat anInt anInt2 cEL dInt1 dInt1Base 
 cinfo  anInt1 1000 aFloat: 0.1 anInt2: 2000 dInt1: 3000 cEL: cvec[1]
 1
-ClassIDSvc           INFO  getRegistryEntries: read 86 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 82 CLIDRegistry entries for module ALL
 ctrig aux items: aFloat anInt anInt2 dInt1 
  anInt1 501 aFloat: 600 anInt2: 701 dInt1: 481
  anInt1 502 aFloat: 600.1 anInt2: 702 dInt1: 482
@@ -2350,11 +2375,12 @@ copy_hvec: 8001.5 8002.5 8003.5 8004.5 8005.5 8006.5 8007.5 8008.5 8009.5 8010.5
 copy_hview: 8020.5 8019.5 8018.5 8017.5 8016.5 8015.5 8014.5 8013.5 8012.5 8011.5 8010.5 8009.5 8008.5 8007.5 8006.5 8005.5 8004.5 8003.5 8002.5 8001.5
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
 xaoddata3.root       INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 25DE488B-4B4E-3143-B233-1EC30C6E2F91
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] C73A4F64-0A8B-7145-A35C-FB56058A53D0
 ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog           INFO File 'xAODTestRead3_catalog.xml' does not exist. New file created.
 AthDictLoaderSvc     INFO in finalize...
 ToolSvc              INFO Removing all tools created by ToolSvc
 ChronoStatSvc.f...   INFO  Service finalized successfully 
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestRead3_jo.py b/Control/DataModelTest/DataModelRunTests/share/xAODTestRead3_jo.py
index b323e6b6dd9c6957432b011c6ab1ab08704e79ab..443badf6966ad7e353fc70f39343bdecd01ee6c8 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestRead3_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestRead3_jo.py
@@ -88,7 +88,6 @@ ChronoStatSvc.StatPrintOutTable   = FALSE
 
 #svcMgr.ExceptionSvc.Catch = "None"
 
-# Explicitly specify the output file catalog
-# to avoid races when running tests in parallel.
-PoolSvc = Service( "PoolSvc" )
-PoolSvc.WriteCatalog = "file:xAODTestRead3_catalog.xml"
+# Avoid races when running tests in parallel.
+FILECATALOG = 'xAODTestRead3_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestReadFilter.ref b/Control/DataModelTest/DataModelRunTests/share/xAODTestReadFilter.ref
index 1d6bf4d4407143be3123a6c2a83df0af1d6c021c..f7262c26f2fc92925057f08bbc2ff841b8045508 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestReadFilter.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestReadFilter.ref
@@ -1,13 +1,116 @@
+Wed Mar 14 19:22:50 CET 2018
+Preloading tcmalloc_minimal.so
+Py:Athena            INFO including file "AthenaCommon/Preparation.py"
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1645]
+Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
+Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
+Py:Athena            INFO executing ROOT6Setup
+Py:Athena            INFO including file "AthenaCommon/Execution.py"
+Py:Athena            INFO including file "DataModelRunTests/xAODTestReadFilter_jo.py"
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+Py:Athena            INFO including file "EventAthenaPool/EventAthenaPoolItemList_joboptions.py"
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
+Py:Athena            INFO including file "AthenaCommon/runbatch.py"
+ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
+ApplicationMgr    SUCCESS 
+====================================================================================================================================
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 19:23:06 2018
+====================================================================================================================================
+ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
+ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
+StatusCodeSvc        INFO initialize
+AthDictLoaderSvc     INFO in initialize...
+AthDictLoaderSvc     INFO acquired Dso-registry
+ClassIDSvc           INFO  getRegistryEntries: read 9958 CLIDRegistry entries for module ALL
+ChronoStatSvc        INFO  Number of skipped events for MemStat-1
+CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
+CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
+AthenaEventLoopMgr   INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00
+ClassIDSvc           INFO  getRegistryEntries: read 380 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 65 CLIDRegistry entries for module ALL
+MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00
+AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
+PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
+PoolSvc              INFO Frontier compression level set to 5
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
+PoolSvc              INFO Successfully setup replica sorting algorithm
+PoolSvc              INFO Setting up APR FileCatalog and Streams
+PoolSvc              INFO POOL WriteCatalog is file:xAODTestReadFilter_catalog.xml
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
+EventSelector        INFO reinitialization...
+EventSelector        INFO EventSelection with query 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO                           xaoddata.root
+RootDatabase.open    INFO xaoddata.root File version:61006
+xaoddata.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO                           xaoddata.root
+RootDatabase.open    INFO xaoddata.root File version:61006
+xaoddata.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 15C064BE-B8A3-5A42-BEBD-3F10026F9997
+Domain[ROOT_All]     INFO                           xaoddata.root
+RootDatabase.open    INFO xaoddata.root File version:61006
+EventPersistenc...   INFO Added successfully Conversion service:AthenaPoolCnvSvc
+ClassIDSvc           INFO  getRegistryEntries: read 1121 CLIDRegistry entries for module ALL
+DecisionSvc          INFO Inserting stream: Stream1 with no Algs
+OutputStreamSeq...   INFO Initializing OutputStreamSequencerSvc - package version AthenaServices-00-00-00
+Stream1.Stream1...   INFO Initializing Stream1.Stream1Tool - package version AthenaServices-00-00-00
+Stream1.Stream1...   INFO Initializing Stream1.Stream1_MakeEventStreamInfo - package version OutputStreamAthenaPool-00-00-00
 Stream1              INFO Found HelperTools = PrivateToolHandleArray(['MakeEventStreamInfo/Stream1_MakeEventStreamInfo'])
 Stream1              INFO Data output: xaoddata_filt.root
+Stream1              INFO I/O reinitialization...
+HistogramPersis...WARNING Histograms saving not required.
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
+xaoddata.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 15C064BE-B8A3-5A42-BEBD-3F10026F9997
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 15C064BE-B8A3-5A42-BEBD-3F10026F9997
+Domain[ROOT_All]     INFO                           xaoddata.root
+RootDatabase.open    INFO xaoddata.root File version:61006
+ApplicationMgr       INFO Application Manager Started successfully
+ClassIDSvc           INFO  getRegistryEntries: read 336 CLIDRegistry entries for module ALL
 AlgResourcePool      INFO TopAlg list empty. Recovering the one of Application Manager
+AthenaPoolConve...   INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
+ClassIDSvc           INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
+ClassIDSvc           INFO  getRegistryEntries: read 50 CLIDRegistry entries for module ALL
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     UPDATE    [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] D613170C-0F50-7549-971B-04641AB3F2C5
+Domain[ROOT_All]     INFO                           xaoddata_filt.root
+RootDatabase.open    INFO xaoddata_filt.root File version:61006
 StorageSvc           INFO Building shape according to reflection information using shape ID for:
 StorageSvc           INFO xAOD::AuxContainerBase [C87C71B3-B03F-42FC-AF99-DF497F148397]
+ClassIDSvc           INFO  getRegistryEntries: read 18 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #0, run #0 1 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #1, run #0 1 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #1, run #0 2 events processed so far  <<<===
@@ -47,7 +150,21 @@ AthenaEventLoopMgr   INFO   ===>>>  start processing event #18, run #0 18 events
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #18, run #0 19 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #19, run #0 19 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
+Stream1              INFO Records written: 21
+xaoddata.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 15C064BE-B8A3-5A42-BEBD-3F10026F9997
+xaoddata_filt.root   INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] D613170C-0F50-7549-971B-04641AB3F2C5
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     UPDATE    [ROOT_All] 
+ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
+DecisionSvc          INFO Finalized successfully.
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog           INFO File 'xAODTestReadFilter_catalog.xml' does not exist. New file created.
+AthDictLoaderSvc     INFO in finalize...
+ToolSvc              INFO Removing all tools created by ToolSvc
+ChronoStatSvc.f...   INFO  Service finalized successfully 
 ApplicationMgr       INFO Application Manager Finalized successfully
 ApplicationMgr       INFO Application Manager Terminated successfully
+Py:Athena            INFO leaving with code 0: "successful run"
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestReadFilterRead.ref b/Control/DataModelTest/DataModelRunTests/share/xAODTestReadFilterRead.ref
index 0f1cd93860270ae8e796f6df4d1cacffce405bdf..7a030ba09ec9c7ab65de0dfbff1d8be2d65f5620 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestReadFilterRead.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestReadFilterRead.ref
@@ -1,21 +1,28 @@
-Mon Jan 29 10:36:17 EST 2018
-WARNING: TCMALLOCDIR not defined, will use libc malloc
+Wed Mar 14 21:01:27 CET 2018
+Preloading tcmalloc_minimal.so
 Py:Athena            INFO including file "AthenaCommon/Preparation.py"
-Py:Athena            INFO using release [?-21.0.0] [i686-slc5-gcc43-dbg] [?/?] -- built on [?]
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1950]
 Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
 Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
 Py:Athena            INFO executing ROOT6Setup
 Py:Athena            INFO including file "AthenaCommon/Execution.py"
 Py:Athena            INFO including file "DataModelRunTests/xAODTestReadFilterRead_jo.py"
-Py:ConfigurableDb    INFO Read module info for 468 configurables from 2 genConfDb files
-Py:ConfigurableDb    INFO No duplicates have been found: that's good !
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
 Py:Athena            INFO including file "AthenaCommon/runbatch.py"
-# setting LC_ALL to "C"
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 ApplicationMgr    SUCCESS 
 ====================================================================================================================================
-                                                   Welcome to ApplicationMgr (GaudiCoreSvc v27r1p99)
-                                          running on karma on Mon Jan 29 10:36:26 2018
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 21:01:43 2018
 ====================================================================================================================================
 ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
@@ -23,49 +30,66 @@ ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to leve
 StatusCodeSvc        INFO initialize
 AthDictLoaderSvc     INFO in initialize...
 AthDictLoaderSvc     INFO acquired Dso-registry
-ClassIDSvc           INFO  getRegistryEntries: read 10097 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 9958 CLIDRegistry entries for module ALL
 ChronoStatSvc        INFO  Number of skipped events for MemStat-1
 CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
 CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
 AthenaEventLoopMgr   INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00
-ClassIDSvc           INFO  getRegistryEntries: read 318 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 380 CLIDRegistry entries for module ALL
 MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00
 AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
-PoolSvc              INFO io_register[PoolSvc](xmlcatalog_file:PoolFileCatalog.xml) [ok]
 PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
 PoolSvc              INFO Frontier compression level set to 5
-DBReplicaSvc         INFO Read replica configuration from /home/sss/atlas/dvtest/build/share/dbreplica.config
-DBReplicaSvc         INFO No specific match for domain found - use default fallback
-DBReplicaSvc         INFO Total of 1 servers found for host karma [atlas_dd ]
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
 PoolSvc              INFO Successfully setup replica sorting algorithm
 PoolSvc              INFO Setting up APR FileCatalog and Streams
-PoolSvc              INFO POOL WriteCatalog is xmlcatalog_file:PoolFileCatalog.xml
+PoolSvc              INFO POOL WriteCatalog is file:xAODTestReadFilterRead_catalog.xml
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
 EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
 EventSelector        INFO reinitialization...
 EventSelector        INFO EventSelection with query 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] A9D271C3-B354-644F-BBBD-2F5B16DBF40C
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] FB6DAC2F-D141-44C5-9E33-B8F501C6CA3D
+Domain[ROOT_All]     INFO                           xaoddata_filt.root
+RootDatabase.open    INFO xaoddata_filt.root File version:61006
+xaoddata_filt.root   INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] FB6DAC2F-D141-44C5-9E33-B8F501C6CA3D
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] FB6DAC2F-D141-44C5-9E33-B8F501C6CA3D
+Domain[ROOT_All]     INFO                           xaoddata_filt.root
+RootDatabase.open    INFO xaoddata_filt.root File version:61006
+xaoddata_filt.root   INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] FB6DAC2F-D141-44C5-9E33-B8F501C6CA3D
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 7D8686E9-14AA-8C49-9CD4-21471F7811C6
 Domain[ROOT_All]     INFO                           xaoddata_filt.root
-RootDatabase.open    INFO xaoddata_filt.root File version:60806
+RootDatabase.open    INFO xaoddata_filt.root File version:61006
 EventPersistenc...   INFO Added successfully Conversion service:AthenaPoolCnvSvc
-AthenaPoolAddre...   INFO Initializing AthenaPoolAddressProviderSvc - package version EventSelectorAthenaPool-00-00-00
 HistogramPersis...WARNING Histograms saving not required.
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
 xaoddata_filt.root   INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] A9D271C3-B354-644F-BBBD-2F5B16DBF40C
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 7D8686E9-14AA-8C49-9CD4-21471F7811C6
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] A9D271C3-B354-644F-BBBD-2F5B16DBF40C
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 7D8686E9-14AA-8C49-9CD4-21471F7811C6
 Domain[ROOT_All]     INFO                           xaoddata_filt.root
-RootDatabase.open    INFO xaoddata_filt.root File version:60806
+RootDatabase.open    INFO xaoddata_filt.root File version:61006
 ApplicationMgr       INFO Application Manager Started successfully
-ClassIDSvc           INFO  getRegistryEntries: read 1084 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 1121 CLIDRegistry entries for module ALL
 AlgResourcePool      INFO TopAlg list empty. Recovering the one of Application Manager
 AthenaPoolConve...   INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
-ClassIDSvc           INFO  getRegistryEntries: read 16 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -93,7 +117,7 @@ RootAuxDynReader     INFO FILE:LINE (const RootAuxDynReader::BranchInfo& RootAux
   dpvFloat: [0.810 0.811 0.812 0.813 0.814 0.815 0.816 0.817 ]
 cinfo aux items: aFloat anInt anInt2 cEL dInt1 dInt1Base 
 cinfo  anInt1 1111 aFloat: 111.1 anInt2: 2111 dInt1: 3111 cEL: cvec[1]
-ClassIDSvc           INFO  getRegistryEntries: read 76 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 68 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #0, run #0 1 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #1, run #0 1 events processed so far  <<<===
 cvec aux items: aFloat anInt anInt2 cEL dInt1 dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -570,11 +594,12 @@ cinfo aux items: aFloat anInt anInt2 cEL dInt1 dInt1Base
 cinfo  anInt1 20111 aFloat: 113 anInt2: 40111 dInt1: 60111 cEL: cvec[0]
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
 xaoddata_filt.root   INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] A9D271C3-B354-644F-BBBD-2F5B16DBF40C
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 7D8686E9-14AA-8C49-9CD4-21471F7811C6
 ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog           INFO File 'xAODTestReadFilterRead_catalog.xml' does not exist. New file created.
 AthDictLoaderSvc     INFO in finalize...
 ToolSvc              INFO Removing all tools created by ToolSvc
 ChronoStatSvc.f...   INFO  Service finalized successfully 
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestReadFilterRead_jo.py b/Control/DataModelTest/DataModelRunTests/share/xAODTestReadFilterRead_jo.py
index 4358323698cc5c8ef3252b605d336d9d837fa6df..fbd65ca60274fd63b890eaf0f86cb7fbb779b130 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestReadFilterRead_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestReadFilterRead_jo.py
@@ -72,3 +72,6 @@ ChronoStatSvc.StatPrintOutTable   = FALSE
 
 #svcMgr.ExceptionSvc.Catch = "None"
 
+# Avoid races when running tests in parallel.
+FILECATALOG = 'xAODTestReadFilterRead_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestReadFilter_jo.py b/Control/DataModelTest/DataModelRunTests/share/xAODTestReadFilter_jo.py
index 4689b8a630da566e0e0375d7b203067878017450..a9a09f91b001ac5f3376c1f395aba0630d64c832 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestReadFilter_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestReadFilter_jo.py
@@ -114,3 +114,7 @@ ChronoStatSvc.StatPrintOutTable   = FALSE
 
 #svcMgr.ExceptionSvc.Catch = "None"
 
+# Avoid races when running tests in parallel.
+FILECATALOG = 'xAODTestReadFilter_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
+
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestReadRename.ref b/Control/DataModelTest/DataModelRunTests/share/xAODTestReadRename.ref
index 554d14cb7f808c3404a9b9e1ceed3fe0c36410eb..8a01bde00dbcb809319dab0d8b1c7495f3bf0e7b 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestReadRename.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestReadRename.ref
@@ -1,21 +1,28 @@
-Mon Jan 29 13:28:16 EST 2018
-WARNING: TCMALLOCDIR not defined, will use libc malloc
+Wed Mar 14 20:59:13 CET 2018
+Preloading tcmalloc_minimal.so
 Py:Athena            INFO including file "AthenaCommon/Preparation.py"
-Py:Athena            INFO using release [?-21.0.0] [i686-slc5-gcc43-dbg] [?/?] -- built on [?]
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1950]
 Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
 Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
 Py:Athena            INFO executing ROOT6Setup
 Py:Athena            INFO including file "AthenaCommon/Execution.py"
 Py:Athena            INFO including file "DataModelRunTests/xAODTestReadRename_jo.py"
-Py:ConfigurableDb    INFO Read module info for 468 configurables from 2 genConfDb files
-Py:ConfigurableDb    INFO No duplicates have been found: that's good !
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
 Py:Athena            INFO including file "AthenaCommon/runbatch.py"
-# setting LC_ALL to "C"
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 ApplicationMgr    SUCCESS 
 ====================================================================================================================================
-                                                   Welcome to ApplicationMgr (GaudiCoreSvc v27r1p99)
-                                          running on karma on Mon Jan 29 13:28:21 2018
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 20:59:30 2018
 ====================================================================================================================================
 ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
@@ -23,49 +30,67 @@ ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to leve
 StatusCodeSvc        INFO initialize
 AthDictLoaderSvc     INFO in initialize...
 AthDictLoaderSvc     INFO acquired Dso-registry
-ClassIDSvc           INFO  getRegistryEntries: read 10097 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 9958 CLIDRegistry entries for module ALL
 ChronoStatSvc        INFO  Number of skipped events for MemStat-1
 CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
 CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
 AthenaEventLoopMgr   INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00
-ClassIDSvc           INFO  getRegistryEntries: read 318 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 380 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 65 CLIDRegistry entries for module ALL
 MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00
 AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
-PoolSvc              INFO io_register[PoolSvc](xmlcatalog_file:PoolFileCatalog.xml) [ok]
 PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
 PoolSvc              INFO Frontier compression level set to 5
-DBReplicaSvc         INFO Read replica configuration from /home/sss/atlas/dvtest/build/share/dbreplica.config
-DBReplicaSvc         INFO No specific match for domain found - use default fallback
-DBReplicaSvc         INFO Total of 1 servers found for host karma [atlas_dd ]
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
 PoolSvc              INFO Successfully setup replica sorting algorithm
 PoolSvc              INFO Setting up APR FileCatalog and Streams
-PoolSvc              INFO POOL WriteCatalog is xmlcatalog_file:PoolFileCatalog.xml
+PoolSvc              INFO POOL WriteCatalog is file:xAODTestReadRename_catalog.xml
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
 EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
 EventSelector        INFO reinitialization...
 EventSelector        INFO EventSelection with query 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] B0544B8E-9BE7-6A4D-B280-F60BD34489CB
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO                           xaoddata.root
+RootDatabase.open    INFO xaoddata.root File version:61006
+xaoddata.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO                           xaoddata.root
+RootDatabase.open    INFO xaoddata.root File version:61006
+xaoddata.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 577B0665-852C-2641-8548-690B860A42A8
 Domain[ROOT_All]     INFO                           xaoddata.root
-RootDatabase.open    INFO xaoddata.root File version:60806
+RootDatabase.open    INFO xaoddata.root File version:61006
 EventPersistenc...   INFO Added successfully Conversion service:AthenaPoolCnvSvc
-ClassIDSvc           INFO  getRegistryEntries: read 1084 CLIDRegistry entries for module ALL
-AthenaPoolAddre...   INFO Initializing AthenaPoolAddressProviderSvc - package version EventSelectorAthenaPool-00-00-00
+ClassIDSvc           INFO  getRegistryEntries: read 1121 CLIDRegistry entries for module ALL
 HistogramPersis...WARNING Histograms saving not required.
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
 xaoddata.root        INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] B0544B8E-9BE7-6A4D-B280-F60BD34489CB
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 577B0665-852C-2641-8548-690B860A42A8
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] B0544B8E-9BE7-6A4D-B280-F60BD34489CB
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 577B0665-852C-2641-8548-690B860A42A8
 Domain[ROOT_All]     INFO                           xaoddata.root
-RootDatabase.open    INFO xaoddata.root File version:60806
+RootDatabase.open    INFO xaoddata.root File version:61006
 ApplicationMgr       INFO Application Manager Started successfully
 AlgResourcePool      INFO TopAlg list empty. Recovering the one of Application Manager
 AthenaPoolConve...   INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
-ClassIDSvc           INFO  getRegistryEntries: read 16 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
 cvec_renamed aux items: aFloat anInt anInt2 cEL dInt1_renamed dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -115,7 +140,7 @@ xAODTestReadDecor    INFO cvec_renamed.dInt1_renamed: 401 402 403 404 405 406 40
 xAODTestReadDecor    INFO cinfo.dInt1_renamed: 3000
 xAODTestReadDecor    INFO cinfo.dInt1_renamedBase: 3001
 xAODTestReadDecor    INFO cinfo.dInt1_renamed: 3000
-ClassIDSvc           INFO  getRegistryEntries: read 54 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 50 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #0, run #0 1 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #1, run #0 1 events processed so far  <<<===
 cvec_renamed aux items: aFloat anInt anInt2 cEL dInt1_renamed dVar1 dpInt1 dpvFloat pFloat pInt pvFloat pvInt 
@@ -990,11 +1015,12 @@ xAODTestReadDecor    INFO cinfo.dInt1_renamedBase: 60001
 xAODTestReadDecor    INFO cinfo.dInt1_renamed: 60000
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
 xaoddata.root        INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] B0544B8E-9BE7-6A4D-B280-F60BD34489CB
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 577B0665-852C-2641-8548-690B860A42A8
 ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog           INFO File 'xAODTestReadRename_catalog.xml' does not exist. New file created.
 AthDictLoaderSvc     INFO in finalize...
 ToolSvc              INFO Removing all tools created by ToolSvc
 ChronoStatSvc.f...   INFO  Service finalized successfully 
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestReadRename_jo.py b/Control/DataModelTest/DataModelRunTests/share/xAODTestReadRename_jo.py
index 3b8a85bd1ee61ac73aef7e6da1b08ec315ccde68..65ac61be9d85927b7c257a5fc56305c36547116d 100755
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestReadRename_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestReadRename_jo.py
@@ -88,3 +88,6 @@ ChronoStatSvc.StatPrintOutTable   = FALSE
 
 #svcMgr.ExceptionSvc.Catch = "None"
 
+# Avoid races when running tests in parallel.
+FILECATALOG = 'xAODTestReadRename_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestRead_jo.py b/Control/DataModelTest/DataModelRunTests/share/xAODTestRead_jo.py
index ef0534ea535eff2ea92fd0792a8159f245b07276..ac8ee37fe7ad4e7857e2723af624849c7db614cf 100755
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestRead_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestRead_jo.py
@@ -201,7 +201,6 @@ ChronoStatSvc.StatPrintOutTable   = FALSE
 
 #svcMgr.ExceptionSvc.Catch = "None"
 
-# Explicitly specify the output file catalog
-# to avoid races when running tests in parallel.
-PoolSvc = Service( "PoolSvc" )
-PoolSvc.WriteCatalog = "file:xAODTestRead_catalog.xml"
+# Avoid races when running tests in parallel.
+FILECATALOG = 'xAODTestRead_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2.ref b/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2.ref
index 0dfe029044719efee726263b0e2f70e6bfaac7ce..e1db082fcca6622dd1eb103b54145d25bbe22f3a 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2.ref
@@ -1,21 +1,28 @@
-Thu Nov  2 15:33:00 EDT 2017
-WARNING: TCMALLOCDIR not defined, will use libc malloc
+Wed Mar 14 21:07:30 CET 2018
+Preloading tcmalloc_minimal.so
 Py:Athena            INFO including file "AthenaCommon/Preparation.py"
-Py:Athena            INFO using release [?-21.0.0] [i686-slc5-gcc43-dbg] [?/?] -- built on [?]
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1950]
 Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
 Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
 Py:Athena            INFO executing ROOT6Setup
 Py:Athena            INFO including file "AthenaCommon/Execution.py"
 Py:Athena            INFO including file "DataModelRunTests/xAODTestSymlinks2_jo.py"
-Py:ConfigurableDb    INFO Read module info for 467 configurables from 2 genConfDb files
-Py:ConfigurableDb    INFO No duplicates have been found: that's good !
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
 Py:Athena            INFO including file "AthenaCommon/runbatch.py"
-# setting LC_ALL to "C"
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 ApplicationMgr    SUCCESS 
 ====================================================================================================================================
-                                                   Welcome to ApplicationMgr (GaudiCoreSvc v27r1p99)
-                                          running on karma on Thu Nov  2 15:33:29 2017
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 21:07:46 2018
 ====================================================================================================================================
 ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
@@ -23,54 +30,70 @@ ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to leve
 StatusCodeSvc        INFO initialize
 AthDictLoaderSvc     INFO in initialize...
 AthDictLoaderSvc     INFO acquired Dso-registry
-ClassIDSvc           INFO  getRegistryEntries: read 10025 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 9958 CLIDRegistry entries for module ALL
 ChronoStatSvc        INFO  Number of skipped events for MemStat-1
 CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
 CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
 AthenaEventLoopMgr   INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00
-ClassIDSvc           INFO  getRegistryEntries: read 318 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 383 CLIDRegistry entries for module ALL
 MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00
 AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
-PoolSvc              INFO io_register[PoolSvc](xmlcatalog_file:PoolFileCatalog.xml) [ok]
 PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
 PoolSvc              INFO Frontier compression level set to 5
-DBReplicaSvc         INFO Read replica configuration from /home/sss/atlas/dvtest/build/share/dbreplica.config
-DBReplicaSvc         INFO No specific match for domain found - use default fallback
-DBReplicaSvc         INFO Total of 1 servers found for host karma [atlas_dd ]
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
 PoolSvc              INFO Successfully setup replica sorting algorithm
 PoolSvc              INFO Setting up APR FileCatalog and Streams
-PoolSvc              INFO POOL WriteCatalog is xmlcatalog_file:PoolFileCatalog.xml
+PoolSvc              INFO POOL WriteCatalog is file:xAODTestSymlinks2_catalog.xml
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
 EventSelector        INFO reinitialization...
 EventSelector        INFO EventSelection with query 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] D45552C7-3AA1-9A49-A420-3F8F30601500
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO                           xaoddata.root
+RootDatabase.open    INFO xaoddata.root File version:61006
+xaoddata.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO                           xaoddata.root
+RootDatabase.open    INFO xaoddata.root File version:61006
+xaoddata.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] CE9F5493-C7BE-6D45-B6B6-CB892E36CF31
 Domain[ROOT_All]     INFO                           xaoddata.root
-RootDatabase.open    INFO xaoddata.root File version:60806
+RootDatabase.open    INFO xaoddata.root File version:61006
 EventPersistenc...   INFO Added successfully Conversion service:AthenaPoolCnvSvc
-EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
-EventSelector        INFO reinitialization...
-EventSelector        INFO EventSelection with query 
-AthenaPoolAddre...   INFO Initializing AthenaPoolAddressProviderSvc - package version EventSelectorAthenaPool-00-00-00
+ClassIDSvc           INFO  getRegistryEntries: read 1121 CLIDRegistry entries for module ALL
 HistogramPersis...WARNING Histograms saving not required.
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
 xaoddata.root        INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] D45552C7-3AA1-9A49-A420-3F8F30601500
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] CE9F5493-C7BE-6D45-B6B6-CB892E36CF31
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] D45552C7-3AA1-9A49-A420-3F8F30601500
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] CE9F5493-C7BE-6D45-B6B6-CB892E36CF31
 Domain[ROOT_All]     INFO                           xaoddata.root
-RootDatabase.open    INFO xaoddata.root File version:60806
+RootDatabase.open    INFO xaoddata.root File version:61006
 ApplicationMgr       INFO Application Manager Started successfully
-ClassIDSvc           INFO  getRegistryEntries: read 1084 CLIDRegistry entries for module ALL
 AlgResourcePool      INFO TopAlg list empty. Recovering the one of Application Manager
 AthenaPoolConve...   INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
-ClassIDSvc           INFO  getRegistryEntries: read 16 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
 xAODTestReadSym...   INFO C (as AuxElement): 1000; S 0
-ClassIDSvc           INFO  getRegistryEntries: read 54 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 50 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #0, run #0 1 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #1, run #0 1 events processed so far  <<<===
 xAODTestReadSym...   INFO C (as AuxElement): 2000; S 100
@@ -130,11 +153,12 @@ AthenaEventLoopMgr   INFO   ===>>>  start processing event #19, run #0 19 events
 xAODTestReadSym...   INFO C (as AuxElement): 20000; S 1900
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
 xaoddata.root        INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] D45552C7-3AA1-9A49-A420-3F8F30601500
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] CE9F5493-C7BE-6D45-B6B6-CB892E36CF31
 ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog           INFO File 'xAODTestSymlinks2_catalog.xml' does not exist. New file created.
 AthDictLoaderSvc     INFO in finalize...
 ToolSvc              INFO Removing all tools created by ToolSvc
 ChronoStatSvc.f...   INFO  Service finalized successfully 
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2MT.ref b/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2MT.ref
index 9dee00bacafa9d55b31c7de56e9776fc1997897d..455203a123df9127610a92714d734fb212ab230e 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2MT.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2MT.ref
@@ -1,7 +1,7 @@
-Tue Jan  2 17:47:48 PST 2018
+Wed Mar 14 21:07:51 CET 2018
 Preloading tcmalloc_minimal.so
 Py:Athena            INFO including file "AthenaCommon/Preparation.py"
-Py:Athena            INFO using release [WorkDir-22.0.0] [x86_64-slc6-gcc62-dbg] [dev/3227fd4b6f] -- built on [2018-01-02T1642]
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1950]
 Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
 Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
 Py:Athena            INFO executing ROOT6Setup
@@ -10,49 +10,74 @@ Py:AlgScheduler      INFO setting up AvalancheSchedulerSvc/AvalancheSchedulerSvc
 Py:Athena            INFO including file "AthenaCommon/Execution.py"
 Py:Athena            INFO including file "DataModelRunTests/xAODTestSymlinks2MT_jo.py"
 Py:Athena            INFO including file "DataModelRunTests/xAODTestSymlinks2_jo.py"
-Py:ConfigurableDb    INFO Read module info for 5430 configurables from 7 genConfDb files
-Py:ConfigurableDb    INFO No duplicates have been found: that's good !
-[?1034hPy:Athena            INFO including file "AthenaCommon/runbatch.py"
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
+Py:Athena            INFO including file "AthenaCommon/runbatch.py"
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 MessageSvc           INFO Activating in a separate thread
 ApplicationMgr    SUCCESS 
 ====================================================================================================================================
                                                    Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
-                                          running on zeus on Tue Jan  2 17:48:04 2018
+                                          running on lxplus008.cern.ch on Wed Mar 14 21:08:07 2018
 ====================================================================================================================================
 ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
 ApplicationMgr                                     INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 AthDictLoaderSvc                                   INFO in initialize...
 AthDictLoaderSvc                                   INFO acquired Dso-registry
-ClassIDSvc                                         INFO  getRegistryEntries: read 10201 CLIDRegistry entries for module ALL
+ClassIDSvc                                         INFO  getRegistryEntries: read 10347 CLIDRegistry entries for module ALL
 ChronoStatSvc                                      INFO  Number of skipped events for MemStat-1
 CoreDumpSvc                                        INFO install f-a-t-a-l handler... (flag = -1)
 CoreDumpSvc                                        INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
 AthenaHiveEventLoopMgr                             INFO Initializing AthenaHiveEventLoopMgr - package version AthenaServices-00-00-00
 MetaDataSvc                                        INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00
 AthenaPoolCnvSvc                                   INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
-PoolSvc                                            INFO io_register[PoolSvc](xmlcatalog_file:PoolFileCatalog.xml) [ok]
 PoolSvc                                            INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
 PoolSvc                                            INFO Frontier compression level set to 5
-DBReplicaSvc                                       INFO Frontier server at (serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(proxyurl=http://msquid01-ib.nersc.gov:3128)(proxyurl=http://msquid02-ib.nersc.gov:3128) will be considered for COOL data
-DBReplicaSvc                                       INFO Read replica configuration from /bld2/build/v30r1.002/build/install/Athena/22.0.0/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
-DBReplicaSvc                                       INFO No specific match for domain found - use default fallback
-DBReplicaSvc                                       INFO Total of 2 servers found for host zeus [ATLF atlas_dd ]
+DBReplicaSvc                                       INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc                                       INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc                                       INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
 PoolSvc                                            INFO Successfully setup replica sorting algorithm
 PoolSvc                                            INFO Setting up APR FileCatalog and Streams
-PoolSvc                                            INFO POOL WriteCatalog is xmlcatalog_file:PoolFileCatalog.xml
+PoolSvc                                            INFO POOL WriteCatalog is file:xAODTestSymlinks2MT_catalog.xml
 DbSession                                          INFO     Open     DbSession    
 Domain[ROOT_All]                                   INFO >   Access   DbDomain     READ      [ROOT_All] 
 EventSelector                                      INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
 EventSelector                                      INFO reinitialization...
 EventSelector                                      INFO EventSelection with query 
-Domain[ROOT_All]                                   INFO ->  Access   DbDatabase   READ      [ROOT_All] 3B042E92-46EE-DB43-8F81-88D283E3D843
+PoolSvc                                            INFO File is not in Catalog! Attempt to open it anyway.
+DbSession                                          INFO     Open     DbSession    
+Domain[ROOT_All]                                   INFO ->  Access   DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]                                   INFO                           xaoddata.root
+RootDatabase.open                                  INFO xaoddata.root File version:61006
+xaoddata.root                                      INFO Database being retired...
+Domain[ROOT_All]                                   INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]                                   INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc                                            INFO File is not in Catalog! Attempt to open it anyway.
+DbSession                                          INFO     Open     DbSession    
+Domain[ROOT_All]                                   INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]                                   INFO ->  Access   DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]                                   INFO                           xaoddata.root
+RootDatabase.open                                  INFO xaoddata.root File version:61006
+xaoddata.root                                      INFO Database being retired...
+Domain[ROOT_All]                                   INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]                                   INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession                                          INFO     Open     DbSession    
+Domain[ROOT_All]                                   INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]                                   INFO ->  Access   DbDatabase   READ      [ROOT_All] CE9F5493-C7BE-6D45-B6B6-CB892E36CF31
 Domain[ROOT_All]                                   INFO                           xaoddata.root
-RootDatabase.open                                  INFO xaoddata.root File version:60806
+RootDatabase.open                                  INFO xaoddata.root File version:61006
 EventPersistencySvc                                INFO Added successfully Conversion service:AthenaPoolCnvSvc
-AthenaPoolAddressProviderSvc                       INFO Initializing AthenaPoolAddressProviderSvc - package version EventSelectorAthenaPool-00-00-00
-ClassIDSvc                                         INFO  getRegistryEntries: read 1493 CLIDRegistry entries for module ALL
+ClassIDSvc                                         INFO  getRegistryEntries: read 1121 CLIDRegistry entries for module ALL
+ClassIDSvc                                         INFO  getRegistryEntries: read 383 CLIDRegistry entries for module ALL
 ThreadPoolSvc                                      INFO no thread init tools attached
 AvalancheSchedulerSvc                              INFO Activating scheduler in a separate thread
 AvalancheSchedulerSvc                              INFO Waiting for AvalancheSchedulerSvc to activate
@@ -92,18 +117,18 @@ HistogramPersistencySvc                         WARNING Histograms saving not re
 AthenaHiveEventLoopMgr                             INFO Setup EventSelector service EventSelector
 ApplicationMgr                                     INFO Application Manager Initialized successfully
 xaoddata.root                                      INFO Database being retired...
-Domain[ROOT_All]                                   INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 3B042E92-46EE-DB43-8F81-88D283E3D843
+Domain[ROOT_All]                                   INFO ->  Deaccess DbDatabase   READ      [ROOT_All] CE9F5493-C7BE-6D45-B6B6-CB892E36CF31
 Domain[ROOT_All]                                   INFO >   Deaccess DbDomain     READ      [ROOT_All] 
 DbSession                                          INFO     Open     DbSession    
 Domain[ROOT_All]                                   INFO >   Access   DbDomain     READ      [ROOT_All] 
-Domain[ROOT_All]                                   INFO ->  Access   DbDatabase   READ      [ROOT_All] 3B042E92-46EE-DB43-8F81-88D283E3D843
+Domain[ROOT_All]                                   INFO ->  Access   DbDatabase   READ      [ROOT_All] CE9F5493-C7BE-6D45-B6B6-CB892E36CF31
 Domain[ROOT_All]                                   INFO                           xaoddata.root
-RootDatabase.open                                  INFO xaoddata.root File version:60806
+RootDatabase.open                                  INFO xaoddata.root File version:61006
 ApplicationMgr                                     INFO Application Manager Started successfully
 AthenaHiveEventLoopMgr                             INFO Starting loop on events
 AthenaPoolConverter                     0   0      INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
 AthenaHiveEventLoopMgr                  0   0      INFO   ===>>>  start of run 0    <<<===
-ClassIDSvc                              0   0      INFO  getRegistryEntries: read 11 CLIDRegistry entries for module ALL
+ClassIDSvc                              0   0      INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaHiveEventLoopMgr                  0   0      INFO   ===>>>  start processing event #0, run #0 on slot 0,  0 events processed so far  <<<===
 xAODTestReadSymlink                     0   0      INFO C (as AuxElement): 1000; S 0
 ClassIDSvc                              0   0      INFO  getRegistryEntries: read 50 CLIDRegistry entries for module ALL
@@ -165,9 +190,9 @@ AthenaHiveEventLoopMgr                             INFO   ===>>>  done processin
 AthenaHiveEventLoopMgr                  19  0      INFO   ===>>>  start processing event #19, run #0 on slot 0,  19 events processed so far  <<<===
 xAODTestReadSymlink                     19  0      INFO C (as AuxElement): 20000; S 1900
 AthenaHiveEventLoopMgr                             INFO   ===>>>  done processing event #19, run #0 on slot 0,  20 events processed so far  <<<===
-AthenaHiveEventLoopMgr                             INFO ---> Loop Finished (seconds): 0.366807
+AthenaHiveEventLoopMgr                             INFO ---> Loop Finished (seconds): 0.310579
 xaoddata.root                                      INFO Database being retired...
-Domain[ROOT_All]                                   INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 3B042E92-46EE-DB43-8F81-88D283E3D843
+Domain[ROOT_All]                                   INFO ->  Deaccess DbDatabase   READ      [ROOT_All] CE9F5493-C7BE-6D45-B6B6-CB892E36CF31
 ApplicationMgr                                     INFO Application Manager Stopped successfully
 IncidentProcAlg1                                   INFO Finalize
 SGInputLoader                                      INFO Finalizing SGInputLoader...
@@ -176,6 +201,7 @@ AvalancheSchedulerSvc                              INFO Joining Scheduler thread
 AvalancheSchedulerSvc                   19  0      INFO Terminating thread-pool resources
 EventDataSvc                                       INFO Finalizing EventDataSvc - package version StoreGate-00-00-00
 Domain[ROOT_All]                                   INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog                                         INFO File 'xAODTestSymlinks2MT_catalog.xml' does not exist. New file created.
 AthDictLoaderSvc                                   INFO in finalize...
 ToolSvc                                            INFO Removing all tools created by ToolSvc
 ChronoStatSvc.finalize()                           INFO  Service finalized successfully 
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2MT_jo.py b/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2MT_jo.py
index 556b3860ea096473323b5d9d6b305f6846c1b73c..10d8b66b7c808a82fd73f1c520db7009385e5015 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2MT_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2MT_jo.py
@@ -7,4 +7,5 @@
 # Purpose: Test syminks and hive.
 #
 
+FILECATALOG = 'xAODTestSymlinks2MT_catalog.xml'
 include ('DataModelRunTests/xAODTestSymlinks2_jo.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2_jo.py b/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2_jo.py
index da829d8ab2214641388566585e66c2a6a455154e..5932d2520eff3bb2c9c75784a935833dfea16434 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2_jo.py
@@ -75,3 +75,9 @@ ChronoStatSvc = Service( "ChronoStatSvc" )
 ChronoStatSvc.ChronoPrintOutTable = FALSE
 ChronoStatSvc.PrintUserTime       = FALSE
 ChronoStatSvc.StatPrintOutTable   = FALSE
+
+# Avoid races when running tests in parallel.
+if 'FILECATALOG' not in globals():
+  FILECATALOG = 'xAODTestSymlinks2_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
+
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestTypelessRead.ref b/Control/DataModelTest/DataModelRunTests/share/xAODTestTypelessRead.ref
index 807d94ba93f968f693f111a0796df2ec36b67be4..ba6f9fc574e26c05115fbd7d39a4dce046d5b4bf 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestTypelessRead.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestTypelessRead.ref
@@ -1,22 +1,29 @@
-Mon Jan 29 10:37:01 EST 2018
-WARNING: TCMALLOCDIR not defined, will use libc malloc
+Wed Mar 14 18:00:14 CET 2018
+Preloading tcmalloc_minimal.so
 Py:Athena            INFO including file "AthenaCommon/Preparation.py"
-Py:Athena            INFO using release [?-21.0.0] [i686-slc5-gcc43-dbg] [?/?] -- built on [?]
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1645]
 Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
 Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
 Py:Athena            INFO executing ROOT6Setup
 Py:Athena            INFO including file "AthenaCommon/Execution.py"
 Py:Athena            INFO including file "DataModelRunTests/xAODTestTypelessRead_jo.py"
-Py:ConfigurableDb    INFO Read module info for 468 configurables from 2 genConfDb files
-Py:ConfigurableDb    INFO No duplicates have been found: that's good !
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
 Py:Athena            INFO including file "EventAthenaPool/EventAthenaPoolItemList_joboptions.py"
+[?1034hPy:Athena            INFO including file "DataModelRunTests/setCatalog.py"
 Py:Athena            INFO including file "AthenaCommon/runbatch.py"
-# setting LC_ALL to "C"
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 ApplicationMgr    SUCCESS 
 ====================================================================================================================================
-                                                   Welcome to ApplicationMgr (GaudiCoreSvc v27r1p99)
-                                          running on karma on Mon Jan 29 10:37:07 2018
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 18:00:30 2018
 ====================================================================================================================================
 ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
@@ -24,20 +31,20 @@ ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to leve
 StatusCodeSvc        INFO initialize
 AthDictLoaderSvc     INFO in initialize...
 AthDictLoaderSvc     INFO acquired Dso-registry
-ClassIDSvc           INFO  getRegistryEntries: read 10097 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 9958 CLIDRegistry entries for module ALL
 ChronoStatSvc        INFO  Number of skipped events for MemStat-1
 CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
 CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
 AthenaEventLoopMgr   INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00
-ClassIDSvc           INFO  getRegistryEntries: read 690 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 752 CLIDRegistry entries for module ALL
 DecisionSvc          INFO Inserting stream: Stream1 with no Algs
 MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00
 AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
 PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
 PoolSvc              INFO Frontier compression level set to 5
-DBReplicaSvc         INFO Read replica configuration from /home/sss/atlas/dvtest/build/share/dbreplica.config
-DBReplicaSvc         INFO No specific match for domain found - use default fallback
-DBReplicaSvc         INFO Total of 1 servers found for host karma [atlas_dd ]
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
 PoolSvc              INFO Successfully setup replica sorting algorithm
 PoolSvc              INFO Setting up APR FileCatalog and Streams
 PoolSvc              INFO POOL WriteCatalog is file:xAODTestTypelessRead_catalog.xml
@@ -46,15 +53,32 @@ Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All]
 EventSelector        INFO Initializing EventSelector - package version EventSelectorAthenaPool-00-00-00
 EventSelector        INFO reinitialization...
 EventSelector        INFO EventSelection with query 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 292B5BAE-22FD-614D-B5F1-A71B79E8B532
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO                           xaoddata.root
+RootDatabase.open    INFO xaoddata.root File version:61006
+xaoddata.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+PoolSvc              INFO File is not in Catalog! Attempt to open it anyway.
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO                           xaoddata.root
+RootDatabase.open    INFO xaoddata.root File version:61006
+xaoddata.root        INFO Database being retired...
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 1AA9ED5E-1E4B-3A55-A718-BF5CAC995112
+Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+DbSession            INFO     Open     DbSession    
+Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] E6919052-9AE1-0A46-BA06-CF1CD0CDD637
 Domain[ROOT_All]     INFO                           xaoddata.root
-RootDatabase.open    INFO xaoddata.root File version:60806
+RootDatabase.open    INFO xaoddata.root File version:61006
 EventPersistenc...   INFO Added successfully Conversion service:AthenaPoolCnvSvc
-ClassIDSvc           INFO  getRegistryEntries: read 712 CLIDRegistry entries for module ALL
-AthenaPoolAddre...   INFO Initializing AthenaPoolAddressProviderSvc - package version EventSelectorAthenaPool-00-00-00
+ClassIDSvc           INFO  getRegistryEntries: read 749 CLIDRegistry entries for module ALL
 OutputStreamSeq...   INFO Initializing OutputStreamSequencerSvc - package version AthenaServices-00-00-00
-ClassIDSvc           INFO  getRegistryEntries: read 386 CLIDRegistry entries for module ALL
-Stream1.Stream1...   INFO Initializing Stream1.Stream1Tool - package version OutputStreamAthenaPool-00-00-00
+Stream1.Stream1...   INFO Initializing Stream1.Stream1Tool - package version AthenaServices-00-00-00
 Stream1.Stream1...   INFO Initializing Stream1.Stream1_MakeEventStreamInfo - package version OutputStreamAthenaPool-00-00-00
 Stream1              INFO Found HelperTools = PrivateToolHandleArray(['MakeEventStreamInfo/Stream1_MakeEventStreamInfo'])
 Stream1              INFO Data output: xaoddata3.root
@@ -63,21 +87,22 @@ HistogramPersis...WARNING Histograms saving not required.
 AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
 xaoddata.root        INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 292B5BAE-22FD-614D-B5F1-A71B79E8B532
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] E6919052-9AE1-0A46-BA06-CF1CD0CDD637
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] 292B5BAE-22FD-614D-B5F1-A71B79E8B532
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   READ      [ROOT_All] E6919052-9AE1-0A46-BA06-CF1CD0CDD637
 Domain[ROOT_All]     INFO                           xaoddata.root
-RootDatabase.open    INFO xaoddata.root File version:60806
+RootDatabase.open    INFO xaoddata.root File version:61006
 ApplicationMgr       INFO Application Manager Started successfully
+ClassIDSvc           INFO  getRegistryEntries: read 336 CLIDRegistry entries for module ALL
 AlgResourcePool      INFO TopAlg list empty. Recovering the one of Application Manager
 AthenaPoolConve...   INFO massageEventInfo: unable to get OverrideRunNumberFromInput property from EventSelector 
-ClassIDSvc           INFO  getRegistryEntries: read 16 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 15 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
 1
-ClassIDSvc           INFO  getRegistryEntries: read 54 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 50 CLIDRegistry entries for module ALL
 cvec types: aFloat/float anInt/int anInt2/int cEL/ElementLink<DataVector<DMTest::C_v1,DataModel_detail::NoBase> > dInt1/int dVar1/int dpInt1/unsigned int dpvFloat/std::vector<float,std::allocator<float> > pFloat/float pInt/unsigned int pvFloat/std::vector<float,std::allocator<float> > pvInt/std::vector<int,std::allocator<int> > 
   aFloat: 200.000; anInt: 101; anInt2: 301; cEL: cvec[9]; dInt1: 401; dVar1: 451; dpInt1: 51; 
     dpvFloat: []; pFloat: 0.010; pInt: 501; 
@@ -247,9 +272,9 @@ hview
   aFloat: 401.500; 
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     UPDATE    [ROOT_All] 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] 25DE488B-4B4E-3143-B233-1EC30C6E2F91
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] D4E13164-F280-E74F-8739-3C65D7160BDF
 Domain[ROOT_All]     INFO                           xaoddata3.root
-RootDatabase.open    INFO xaoddata3.root File version:60806
+RootDatabase.open    INFO xaoddata3.root File version:61006
 StorageSvc           INFO Building shape according to reflection information using shape ID for:
 StorageSvc           INFO DataVector<DMTest::H_v2> [CD6C3074-425B-4C08-AF1C-43D7E8C84288]
 StorageSvc           INFO Building shape according to reflection information using shape ID for:
@@ -3389,14 +3414,15 @@ hview
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #19, run #0 20 events processed so far  <<<===
 Stream1              INFO Records written: 21
 xaoddata.root        INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] 292B5BAE-22FD-614D-B5F1-A71B79E8B532
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   READ      [ROOT_All] E6919052-9AE1-0A46-BA06-CF1CD0CDD637
 xaoddata3.root       INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] 25DE488B-4B4E-3143-B233-1EC30C6E2F91
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] D4E13164-F280-E74F-8739-3C65D7160BDF
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     UPDATE    [ROOT_All] 
 ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
+XMLCatalog           INFO File 'xAODTestTypelessRead_catalog.xml' does not exist. New file created.
 DecisionSvc          INFO Finalized successfully.
 AthDictLoaderSvc     INFO in finalize...
 ToolSvc              INFO Removing all tools created by ToolSvc
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestTypelessRead_jo.py b/Control/DataModelTest/DataModelRunTests/share/xAODTestTypelessRead_jo.py
index 556c605d02d7800b098332f90a46977d08dc2e16..9616014329d50eec860440b58d92c05bded86ce3 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestTypelessRead_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestTypelessRead_jo.py
@@ -122,7 +122,6 @@ ChronoStatSvc.StatPrintOutTable   = FALSE
 
 #svcMgr.ExceptionSvc.Catch = "None"
 
-# Explicitly specify the output file catalog
-# to avoid races when running tests in parallel.
-PoolSvc = Service( "PoolSvc" )
-PoolSvc.WriteCatalog = "file:xAODTestTypelessRead_catalog.xml"
+# Avoid races when running tests in parallel.
+FILECATALOG = 'xAODTestTypelessRead_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestWrite.ref b/Control/DataModelTest/DataModelRunTests/share/xAODTestWrite.ref
index 35412546cbbd1bd729edea26e0471c0d7edac7f6..af218a9d0e0a8bcffb9b5db7ee1024141a1b5cd4 100644
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestWrite.ref
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestWrite.ref
@@ -1,22 +1,29 @@
-Mon Dec 25 22:29:24 EST 2017
-WARNING: TCMALLOCDIR not defined, will use libc malloc
+Wed Mar 14 17:20:02 CET 2018
+Preloading tcmalloc_minimal.so
 Py:Athena            INFO including file "AthenaCommon/Preparation.py"
-Py:Athena            INFO using release [?-21.0.0] [i686-slc5-gcc43-dbg] [?/?] -- built on [?]
+Py:Athena            INFO using release [AthenaWorkDir-22.0.1] [x86_64-slc6-gcc62-dbg] [atlas-work3/f3be32beeb] -- built on [2018-03-14T1614]
 Py:Athena            INFO including file "AthenaCommon/Bootstrap.py"
 Py:Athena            INFO including file "AthenaCommon/Atlas.UnixStandardJob.py"
 Py:Athena            INFO executing ROOT6Setup
 Py:Athena            INFO including file "AthenaCommon/Execution.py"
 Py:Athena            INFO including file "DataModelRunTests/xAODTestWrite_jo.py"
-Py:ConfigurableDb    INFO Read module info for 468 configurables from 2 genConfDb files
-Py:ConfigurableDb    INFO No duplicates have been found: that's good !
-Py:Athena            INFO including file "EventAthenaPool/EventAthenaPoolItemList_joboptions.py"
+Py:ConfigurableDb    INFO Read module info for 5506 configurables from 66 genConfDb files
+Py:ConfigurableDb WARNING Found 3 duplicates among the 66 genConfDb files :
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -<component name>: <module> - [ <duplicates> ]
+Py:ConfigurableDb WARNING --------------------------------------------------
+Py:ConfigurableDb WARNING   -TrackTools: DerivationFrameworkTileCal.DerivationFrameworkTileCalConf - ['TileD3PDMaker.TileD3PDMakerConf']
+Py:ConfigurableDb WARNING   -IDTrackCaloDepositsDecoratorTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING   -MuonTPExtrapolationTool: MuonTPTools.MuonTPToolsConf - ['DerivationFrameworkMuons.DerivationFrameworkMuonsConf']
+Py:ConfigurableDb WARNING Fix your cmt/requirements file !!
+[?1034hPy:Athena            INFO including file "EventAthenaPool/EventAthenaPoolItemList_joboptions.py"
+Py:Athena            INFO including file "DataModelRunTests/setCatalog.py"
 Py:Athena            INFO including file "AthenaCommon/runbatch.py"
-# setting LC_ALL to "C"
 ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0
 ApplicationMgr    SUCCESS 
 ====================================================================================================================================
-                                                   Welcome to ApplicationMgr (GaudiCoreSvc v27r1p99)
-                                          running on karma on Mon Dec 25 22:29:35 2017
+                                                   Welcome to ApplicationMgr (GaudiCoreSvc v30r1)
+                                          running on lxplus008.cern.ch on Wed Mar 14 17:20:21 2018
 ====================================================================================================================================
 ApplicationMgr       INFO Successfully loaded modules : AthenaServices
 ApplicationMgr       INFO Application Manager Configured successfully
@@ -24,7 +31,7 @@ ApplicationMgr       INFO Updating Gaudi::PluginService::SetDebug(level) to leve
 StatusCodeSvc        INFO initialize
 AthDictLoaderSvc     INFO in initialize...
 AthDictLoaderSvc     INFO acquired Dso-registry
-ClassIDSvc           INFO  getRegistryEntries: read 10051 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 9863 CLIDRegistry entries for module ALL
 ChronoStatSvc        INFO  Number of skipped events for MemStat-1
 CoreDumpSvc          INFO install f-a-t-a-l handler... (flag = -1)
 CoreDumpSvc          INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) 
@@ -33,20 +40,20 @@ MetaDataSvc          INFO Initializing MetaDataSvc - package version AthenaServi
 AthenaPoolCnvSvc     INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00
 PoolSvc              INFO Set connectionsvc retry/timeout/IDLE timeout to  'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled
 PoolSvc              INFO Frontier compression level set to 5
-DBReplicaSvc         INFO Read replica configuration from /home/sss/atlas/dvtest/build/share/dbreplica.config
-DBReplicaSvc         INFO No specific match for domain found - use default fallback
-DBReplicaSvc         INFO Total of 1 servers found for host karma [atlas_dd ]
+DBReplicaSvc         INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data
+DBReplicaSvc         INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2018-03-13T2157/Athena/22.0.1/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config
+DBReplicaSvc         INFO Total of 10 servers found for host lxplus008.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ]
 PoolSvc              INFO Successfully setup replica sorting algorithm
 PoolSvc              INFO Setting up APR FileCatalog and Streams
 PoolSvc              INFO POOL WriteCatalog is file:xAODTestWrite_catalog.xml
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     READ      [ROOT_All] 
 AthenaEventLoopMgr   INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00
-ClassIDSvc           INFO  getRegistryEntries: read 1028 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 1092 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 65 CLIDRegistry entries for module ALL
 DecisionSvc          INFO Inserting stream: Stream1 with no Algs
 OutputStreamSeq...   INFO Initializing OutputStreamSequencerSvc - package version AthenaServices-00-00-00
-ClassIDSvc           INFO  getRegistryEntries: read 386 CLIDRegistry entries for module ALL
-Stream1.Stream1...   INFO Initializing Stream1.Stream1Tool - package version OutputStreamAthenaPool-00-00-00
+Stream1.Stream1...   INFO Initializing Stream1.Stream1Tool - package version AthenaServices-00-00-00
 Stream1.Stream1...   INFO Initializing Stream1.Stream1_MakeEventStreamInfo - package version OutputStreamAthenaPool-00-00-00
 Stream1              INFO Found HelperTools = PrivateToolHandleArray(['MakeEventStreamInfo/Stream1_MakeEventStreamInfo'])
 Stream1              INFO Data output: xaoddata.root
@@ -57,14 +64,14 @@ AthenaEventLoopMgr   INFO Setup EventSelector service EventSelector
 ApplicationMgr       INFO Application Manager Initialized successfully
 ApplicationMgr       INFO Application Manager Started successfully
 EventPersistenc...   INFO Added successfully Conversion service:McCnvSvc
-ClassIDSvc           INFO  getRegistryEntries: read 108 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 444 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  start of run 0    <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #0, run #0 0 events processed so far  <<<===
 DbSession            INFO     Open     DbSession    
 Domain[ROOT_All]     INFO >   Access   DbDomain     UPDATE    [ROOT_All] 
-Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] 58ADB804-AD3F-E54D-8C62-C11EF821C58E
+Domain[ROOT_All]     INFO ->  Access   DbDatabase   CREATE    [ROOT_All] F1958EA0-D7F3-DA42-9649-D7ABA3C9612B
 Domain[ROOT_All]     INFO                           xaoddata.root
-RootDatabase.open    INFO xaoddata.root File version:60806
+RootDatabase.open    INFO xaoddata.root File version:61006
 StorageSvc           INFO Building shape according to reflection information using shape ID for:
 StorageSvc           INFO EventInfo_p4 [C634FDB6-CC4B-4BA2-B8F9-A84BE6A786C7]
 StorageSvc           INFO Building shape according to reflection information using shape ID for:
@@ -97,7 +104,7 @@ StorageSvc           INFO Building shape according to reflection information usi
 StorageSvc           INFO DataHeaderForm_p5 [3397D8A3-BBE6-463C-9F8E-4B3DFD8831FE]
 StorageSvc           INFO Building shape according to reflection information using shape ID for:
 StorageSvc           INFO DataHeader_p5 [D82968A1-CF91-4320-B2DD-E0F739CBC7E6]
-ClassIDSvc           INFO  getRegistryEntries: read 121 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 154 CLIDRegistry entries for module ALL
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #0, run #0 1 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  start processing event #1, run #0 1 events processed so far  <<<===
 AthenaEventLoopMgr   INFO   ===>>>  done processing event #1, run #0 2 events processed so far  <<<===
@@ -143,17 +150,18 @@ StorageSvc           INFO Building shape according to reflection information usi
 StorageSvc           INFO xAOD::EventFormat_v1 [0EFE2D2C-9E78-441D-9A87-9EE2B908AC81]
 StorageSvc           INFO Building shape according to reflection information using shape ID for:
 StorageSvc           INFO DMTest::S1 [230C025C-A8BB-4C8A-9C82-04C9C3D92384]
-ClassIDSvc           INFO  getRegistryEntries: read 13 CLIDRegistry entries for module ALL
+ClassIDSvc           INFO  getRegistryEntries: read 11 CLIDRegistry entries for module ALL
 Stream1              INFO Records written: 21
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     READ      [ROOT_All] 
 xaoddata.root        INFO Database being retired...
-Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] 58ADB804-AD3F-E54D-8C62-C11EF821C58E
+Domain[ROOT_All]     INFO ->  Deaccess DbDatabase   CREATE    [ROOT_All] F1958EA0-D7F3-DA42-9649-D7ABA3C9612B
 Domain[ROOT_All]     INFO >   Deaccess DbDomain     UPDATE    [ROOT_All] 
 ApplicationMgr       INFO Application Manager Stopped successfully
 IncidentProcAlg1     INFO Finalize
 IncidentProcAlg2     INFO Finalize
 EventSelector        INFO finalize
 DecisionSvc          INFO Finalized successfully.
+XMLCatalog           INFO File 'xAODTestWrite_catalog.xml' does not exist. New file created.
 AthDictLoaderSvc     INFO in finalize...
 ToolSvc              INFO Removing all tools created by ToolSvc
 ChronoStatSvc.f...   INFO  Service finalized successfully 
diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestWrite_jo.py b/Control/DataModelTest/DataModelRunTests/share/xAODTestWrite_jo.py
index 36287e59076a5e072fa5f0ec1dcc3b8d14c3b240..f90d15f5274b72e5980a7b3b93a921865f6adf13 100755
--- a/Control/DataModelTest/DataModelRunTests/share/xAODTestWrite_jo.py
+++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestWrite_jo.py
@@ -135,10 +135,9 @@ ChronoStatSvc.ChronoPrintOutTable = FALSE
 ChronoStatSvc.PrintUserTime       = FALSE
 ChronoStatSvc.StatPrintOutTable   = FALSE
 
-# Explicitly specify the output file catalog
-# to avoid races when running tests in parallel.
-PoolSvc = Service( "PoolSvc" )
-PoolSvc.WriteCatalog = "file:xAODTestWrite_catalog.xml"
+# Avoid races when running tests in parallel.
+FILECATALOG = 'xAODTestWrite_catalog.xml'
+include ('DataModelRunTests/setCatalog.py')
 
 # Increment LBN every two events.
 from McEventSelector import McEventSelectorConf
diff --git a/Control/PileUpTools/PileUpTools/PileUpMergeSvc.icc b/Control/PileUpTools/PileUpTools/PileUpMergeSvc.icc
index 26b060587494824e72357f278afe9e6447e24916..319397e9fe92a046c039155030c89486e70839e6 100755
--- a/Control/PileUpTools/PileUpTools/PileUpMergeSvc.icc
+++ b/Control/PileUpTools/PileUpTools/PileUpMergeSvc.icc
@@ -145,7 +145,6 @@ PileUpMergeSvc::retrieveSubSetEvtData(const KEY& dataKey, //orig evt key
 {
   typedef typename TIMEDDATA::value_type value_type;  //pair<time_t,DataLink..
   typedef typename value_type::second_type DataLink_t;
-  typedef typename DataLink_t::value_type data_t;
 
   SubEventIterator iEvt = bSubEvents;
   for (; iEvt != eSubEvents; iEvt++) {
diff --git a/Control/RngComps/test/RNGWrapper_test.cxx b/Control/RngComps/test/RNGWrapper_test.cxx
index 03051976d9860e879d58d8d0b5bc851704f6a046..743f5e80822e6d33be5797dd79a8f4ae6eec6b1f 100644
--- a/Control/RngComps/test/RNGWrapper_test.cxx
+++ b/Control/RngComps/test/RNGWrapper_test.cxx
@@ -60,7 +60,9 @@ class TestScenario : public ParallelCallTest {
 public:
   TestScenario( RNGWrapper* wrapper, const std::string& name )
     : m_wrapper( wrapper ),
-      m_name( name ){}
+      m_name( name ),
+      m_slot0SumRef(0)
+  {}
 
   // pull numbers from the first slot and make it a reference
   void firstCall() override {    
diff --git a/DataQuality/HanConfigGenerator/src/hcg.cxx b/DataQuality/HanConfigGenerator/src/hcg.cxx
index d8d41cc73d7607f6d4f1e9b487492867e2e0ec3d..31e72915eaafd77ca1f8000621a44360d46bb910 100644
--- a/DataQuality/HanConfigGenerator/src/hcg.cxx
+++ b/DataQuality/HanConfigGenerator/src/hcg.cxx
@@ -53,9 +53,9 @@ std::vector<std::string> mapped;
 
 /// sadly, includes a return at the end 
 std::string date() { 
-  time_t _t;
-  time(&_t);
-  std::string a = ctime(&_t);
+  time_t t;
+  time(&t);
+  std::string a = ctime(&t);
   std::string b = "";
   for ( unsigned i=0 ; i<a.size()-1 ; i++ ) b+=a[i];
   return b;
@@ -173,17 +173,17 @@ std::string chop(std::string& s1, const std::string& s2)
 
 std::vector<std::string> split( const std::string& s, const std::string& t=":"  ) {
     
-    std::string _s = s;
-    size_t pos = _s.find(t);
+    std::string s2 = s;
+    size_t pos = s2.find(t);
     
     std::vector<std::string> tags;
     
     while ( pos!=std::string::npos ) { 
-      tags.push_back( chop(_s,t) );
-      pos = _s.find(t);
+      tags.push_back( chop(s2,t) );
+      pos = s2.find(t);
     }
     
-    tags.push_back(_s);
+    tags.push_back(s2);
     
     return tags;
 }
@@ -439,7 +439,7 @@ class reference {
 public:
 
   reference( const std::string& n, const std::string& f ) : 
-    mname(n), mfile(f) { 
+    m_name(n), m_file(f) { 
     
     /// oh dear, find the run number from the specified file 
 
@@ -470,7 +470,7 @@ public:
 
 	if ( contains( dir, "run_" ) ) {
 	  dir.erase( 0, std::string( "run_").size() ); 
-	  mrun = std::atoi( dir.c_str() );
+	  m_run = std::atoi( dir.c_str() );
 	  
 	  break;
 	}
@@ -482,20 +482,20 @@ public:
   } 
 
 
-  reference( const reference& r ) : mname(r.mname), mfile(r.mfile), mrun(r.mrun) { } 
+  reference( const reference& r ) : m_name(r.m_name), m_file(r.m_file), m_run(r.m_run) { } 
 
   
-  std::string name() const { return mname; }
-  std::string file() const { return mfile; }
+  std::string name() const { return m_name; }
+  std::string file() const { return m_file; }
 
-  int run() const { return mrun; }
+  int run() const { return m_run; }
 
 private:
 
-  std::string mname;
-  std::string mfile;
+  std::string m_name;
+  std::string m_file;
 
-  int         mrun;
+  int         m_run;
 
 };
 
@@ -627,7 +627,7 @@ class ass {
 
 public: 
   
-  ass( node& n, bool ah=true ) : mallhists(ah) { 
+  ass( node& n, bool ah=true ) : m_allhists(ah) { 
     (*outp) << "\n\n";
     (*outp) << "#######################\n";
     (*outp) << "# Histogram Assessments\n";
@@ -680,7 +680,7 @@ public:
       for ( unsigned i=0 ; i<n.size() ; i++ ) { 
 	if       ( n[i]->type()!=node::HISTOGRAM ) makeass( *n[i], newspacer, path, rawpath, found ) ;
 	else if  ( n[i]->type()==node::HISTOGRAM ) { 
-	  if ( !mallhists ) { 
+	  if ( !m_allhists ) { 
 	    if ( first_hists ) {
 	      (*outp) << space << "\t"   << "hist .* {\n";
 	      (*outp) << space << "\t\t" << "regex       \t= 1\n";
@@ -719,7 +719,7 @@ public:
   
 private:
 
-  bool mallhists;
+  bool m_allhists;
 
 };
 
diff --git a/Database/APR/RootStorageSvc/src/RootTreeContainer.cpp b/Database/APR/RootStorageSvc/src/RootTreeContainer.cpp
index e739cfed5efaaa7b6a600206a246a5007794d12d..69ed6538c4fd487f91eee209cb8d12c63ecac0ce 100755
--- a/Database/APR/RootStorageSvc/src/RootTreeContainer.cpp
+++ b/Database/APR/RootStorageSvc/src/RootTreeContainer.cpp
@@ -212,7 +212,8 @@ DbStatus RootTreeContainer::writeObject(TransactionStack::value_type& ent) {
                          auto &reg = SG::AuxTypeRegistry::instance();
                          // we have a new attribute, create a branch for it
                          log << "   Creating branch for new dynamic attribute, Id=" << id << ": type="
-                             << store->getIOType(id)->name() << ", " << reg.getName(id) << DbPrint::endmsg;
+                             << SG::normalizedTypeinfoName( *(store->getIOType(id)) )
+                             << ", " << reg.getName(id) << DbPrint::endmsg;
                          sc = addAuxBranch(reg.getName(id), store->getIOType(id), newBrDsc);
                          if( !sc.isSuccess() )  {
                             p.ptr = nullptr;  // trigger an Error
@@ -883,6 +884,7 @@ DbStatus  RootTreeContainer::addAuxBranch(const std::string& attribute,
                                           const type_info* typeinfo,
                                           BranchDesc& dsc)
 {
+   string error_type("is unknown");
    string typenam = SG::normalizedTypeinfoName(*typeinfo);
    string branch_name = RootAuxDynIO::auxBranchName(attribute, m_branchName);
    dsc.branch = nullptr;
@@ -913,16 +915,20 @@ DbStatus  RootTreeContainer::addAuxBranch(const std::string& attribute,
          createBasicAuxBranch(branch_name, attribute + "/C", dsc);
       else {
          TClass* cl = TClass::GetClass(typenam.c_str());
-         if( cl ) {
+         if( !cl ) {
+            error_type =" has no TClass";
+         } else if( !cl->GetStreamerInfo() )  {
+            error_type =" has no streamer";
+         } else if( !cl->HasDictionary() ) {
+            error_type =" has no dictionary";
+         } else {
             dsc.clazz = cl;
-            if( cl->GetStreamerInfo() )  {
-               int split = cl->CanSplit() ? 1 : 0;
-               dsc.branch  = m_tree->Branch(branch_name.c_str(),   // Branch name
-                                            cl->GetName(),         // Object class
-                                            (void*)&dsc.buffer,    // Object address
-                                            8192,                  // Buffer size
-                                            split);                // Split Mode (Levels) 
-            }
+            int split = cl->CanSplit() ? 1 : 0;
+            dsc.branch  = m_tree->Branch(branch_name.c_str(),   // Branch name
+                                         cl->GetName(),         // Object class
+                                         (void*)&dsc.buffer,    // Object address
+                                         8192,                  // Buffer size
+                                         split);                // Split Mode (Levels)
          }
       }
    }
@@ -948,10 +954,8 @@ DbStatus  RootTreeContainer::addAuxBranch(const std::string& attribute,
    }
    
    DbPrint log("RootStorageSvc::addAuxBranch");
-   if( typenam.empty() ) typenam = System::typeinfoName( *typeinfo );
    log << DbPrintLvl::Error << "Failed to create Auxiliary branch '" << branch_name << "'."
-       << " Class " << typenam << " is unknown."
-       << DbPrint::endmsg;
+       << " Class " << typenam << error_type << DbPrint::endmsg;
    return Error;
 }
 
diff --git a/Database/APR/Tests/StorageSvc_AuxStore/AuxStoreTest.h b/Database/APR/Tests/StorageSvc_AuxStore/AuxStoreTest.h
index df11fe98c5bb0316a4279e0cbb41010658879f64..b2d20a2d398ab88bf34e333f3020980475f14154 100644
--- a/Database/APR/Tests/StorageSvc_AuxStore/AuxStoreTest.h
+++ b/Database/APR/Tests/StorageSvc_AuxStore/AuxStoreTest.h
@@ -56,9 +56,13 @@ namespace APRTest
          : SG::AuxStoreInternal::getData( auxid);
    }
 
- 
-}
 
+   class AClassWithDict {
+    public:
+     AClassWithDict(int v=54321) { _val=v; };
+     int _val;
+   };
 
-#endif
+}
 
+#endif
diff --git a/Database/APR/Tests/StorageSvc_AuxStore/TestDriver.cpp b/Database/APR/Tests/StorageSvc_AuxStore/TestDriver.cpp
index 3479b626549a931ff1c5501e017a7a8b994d9b95..9c544a40a540655b46b3c0be2561bd946729e1f3 100755
--- a/Database/APR/Tests/StorageSvc_AuxStore/TestDriver.cpp
+++ b/Database/APR/Tests/StorageSvc_AuxStore/TestDriver.cpp
@@ -20,6 +20,7 @@
 #include "StorageSvc/DatabaseConnection.h"
 #include "StorageSvc/FileDescriptor.h"
 #include "StorageSvc/DbType.h"
+#include "StorageSvc/DbOption.h"
 #include "POOLCore/DbPrint.h"
 
 #include <stdexcept>
@@ -33,11 +34,22 @@ using namespace std;
 
 int numTokenInstances();
 
+bool  test_nodict = false;
+
 static const std::string file = "pool_test.root";
-static const std::string container = "CollectionTree(container Aux.)";
+static const std::string container = "CollectionTree(container_Aux.)";
 static int nObjects = 10;
 // hardcode here in case we only test reading, remember to keep in sync with selection.xml
-static string   testTypeID = "A2222222-B111-C111-D111-E22134511121";
+static string   testTypeID = "A2222222-B111-C111-D111-E22134511111";
+
+
+class TestClassNoDict {
+public:
+  TestClassNoDict(int v=12345) { _val=v; };
+  int _val;
+};
+
+using APRTest::AClassWithDict;
 
 
 TestDriver::TestDriver()
@@ -71,21 +83,28 @@ TestDriver::testWriting()
    }
 
    cout << "Session connect" << endl;
-   pool::FileDescriptor* fd = new pool::FileDescriptor( file, file );
-   if ( ! ( storSvc->connect( sessionHandle, poolDb::CREATE, *fd ).isSuccess() ) ) {
+   pool::FileDescriptor fd( file, file );
+   if ( ! ( storSvc->connect( sessionHandle, poolDb::RECREATE, fd ).isSuccess() ) ) {
       throw std::runtime_error( "Could not start a connection." );
    }
-   pool::DatabaseConnection* connection = fd->dbc();
+   pool::DatabaseConnection* connection = fd.dbc();
    pool::Transaction* transaction = 0;
    cout << "startTransaction" << endl;
    if ( ! ( storSvc->startTransaction( connection, transaction ).isSuccess() ) ) {
       throw std::runtime_error( "Could not start a transaction." );
    }
 
-      
+   void *pVoid;
+   pool::DbStatus sc = storSvc->queryInterface( pool::IStorageExplorer::interfaceID(), &pVoid );
+   pool::IStorageExplorer* storageExplorer = (pool::IStorageExplorer*)pVoid;
+   pool::DbOption opt("TREE_AUTO_FLUSH", "CollectionTree", 10);
+   storageExplorer->setDatabaseOption(fd, opt);
+
    SG::auxid_t ityp1 = SG::AuxTypeRegistry::instance().getAuxID<int> ("anInt");
    SG::auxid_t ityp2 = SG::AuxTypeRegistry::instance().getAuxID<int> ("int2");
- 
+   SG::auxid_t dict_type = SG::AuxTypeRegistry::instance().getAuxID<AClassWithDict*>("withdict");
+   SG::auxid_t nodict_type = SG::AuxTypeRegistry::instance().getAuxID<TestClassNoDict*>("nodict");
+
    cout << "Creating objects" << endl;
    vector<APRTest::AuxStore*>  objs;   
    for( int objn=0; objn <nObjects; objn++ ) {
@@ -94,14 +113,21 @@ TestDriver::testWriting()
       const int intN = 10;
       int* i1 = reinterpret_cast<int*>( object->getData(ityp1, intN, 20) );
       int* i2 = reinterpret_cast<int*>( object->getData(ityp2, intN, 20) );
+      AClassWithDict** wd_vect = reinterpret_cast<AClassWithDict**>( object->getData(dict_type, intN, 20) );
+      TestClassNoDict** nodict = 0;
+      if( test_nodict )
+         nodict = reinterpret_cast<TestClassNoDict**>( object->getData(nodict_type, intN, 20) );
       assert (object->size() == intN);
       for( int i=0; i<intN; i++ ) {
          i1[i] = getVal1(objn, i);
          i2[i] = getVal2(objn, i);
+         wd_vect[i] = new AClassWithDict(objn);
+         if( test_nodict )
+            nodict[i] = new TestClassNoDict(objn);
       } 
       objs.push_back( object );
    }
-   cout << "****  m_data offset=" << (char*)&(objs[0]->m_data) - (char*)objs[0] << endl;
+   //cout << "****  m_data offset=" << (char*)&(objs[0]->m_data) - (char*)objs[0] << endl;
 
    
    // Creating the persistent shape.
@@ -113,9 +139,8 @@ TestDriver::testWriting()
    }
    Guid guid = pool::DbReflex::guid(testtype);
    const pool::Shape* shape = 0;
-   if ( storSvc->getShape( *fd, guid, shape ) == pool::IStorageSvc::SHAPE_NOT_AVAILIBLE ) {
-      //storSvc->createShape( *fd, container, guid, shape, objs[0] );
-      storSvc->createShape( *fd, container, guid, shape);
+   if ( storSvc->getShape( fd, guid, shape ) == pool::IStorageSvc::SHAPE_NOT_AVAILIBLE ) {
+      storSvc->createShape( fd, container, guid, shape);
    }
    if ( ! shape ) {
       throw std::runtime_error( "Could not create a persistent shape." );
@@ -126,11 +151,18 @@ TestDriver::testWriting()
    cout << "Writing objects" << endl;
    for( int objn=0; objn <nObjects; objn++ ) {
       Token* token;
-      if( ! ( storSvc->allocate( transaction, *fd,
+      if( ! ( storSvc->allocate( transaction, fd,
                                  container, pool::ROOTTREE_StorageType.type(),
                                  objs[objn], shape, token ).isSuccess() ) ) {
          throw std::runtime_error( "Could not write an object" );
       }
+      cout << "Committing transaction" << endl;
+      if( ! ( storSvc->endTransaction( transaction, pool::Transaction::TRANSACT_COMMIT ).isSuccess() ) ) {
+         throw std::runtime_error( "Commit ERROR" );
+      }
+      if( ! ( storSvc->startTransaction( connection, transaction ).isSuccess() ) ) {
+         throw std::runtime_error( "Could not restart the transaction." );
+      }
       delete token;
    }
 
@@ -141,16 +173,19 @@ TestDriver::testWriting()
    }
 
 // Clearing the cache
+   cout << "Deleting written data objects" << endl;
    for( int objn=0; objn <nObjects; objn++ ) 
       delete objs[objn];
    
-   if ( ! ( storSvc->disconnect( *fd ).isSuccess() ) ) {
+   cout << "Disconnecting StorageSvc" << endl;
+   if ( ! ( storSvc->disconnect( fd ).isSuccess() ) ) {
       throw std::runtime_error( "Could not disconnect." );
    }
-   delete fd;
+   cout << "Ending Session" << endl;
    if ( ! ( storSvc->endSession( sessionHandle ).isSuccess() ) ) {
       throw std::runtime_error( "Could not end correctly the session." );
    }
+   cout << "Releasing StorageSvc" << endl;
    storSvc->release();
 }
 
@@ -171,6 +206,11 @@ TestDriver::testReading()
     throw std::runtime_error( "Could not retrieve a IStorageExplorer interface" );
   }
 
+  SG::auxid_t ityp1 = SG::AuxTypeRegistry::instance().getAuxID<int> ("anInt");
+  SG::auxid_t ityp2 = SG::AuxTypeRegistry::instance().getAuxID<int> ("int2");
+  SG::auxid_t dict_type = SG::AuxTypeRegistry::instance().getAuxID<AClassWithDict*>("withdict");
+  SG::auxid_t nodict_type = SG::AuxTypeRegistry::instance().getAuxID<TestClassNoDict*>("nodict");
+
   pool::Session* sessionHandle = 0;
   if ( ! ( storSvc->startSession( poolDb::READ, pool::ROOT_StorageType.type(), sessionHandle ).isSuccess() ) ) {
     throw std::runtime_error( "Could not start a session." );
@@ -225,14 +265,20 @@ TestDriver::testReading()
          throw std::runtime_error( "Object m_data read different from object written" );
       }
 
-      SG::auxid_t ityp1 = SG::AuxTypeRegistry::instance().getAuxID<int> ("anInt");
-      SG::auxid_t ityp2 = SG::AuxTypeRegistry::instance().getAuxID<int> ("int2");
       const int intN = 10;
       const int* i1 = reinterpret_cast<const int*>( object->getData(ityp1) );
       const int* i2 = reinterpret_cast<const int*>( object->getData(ityp2) );
+      TestClassNoDict* const* nodict = 0;
+      if( test_nodict )
+         nodict = reinterpret_cast<TestClassNoDict* const*>( object->getData(nodict_type) );
+      auto wd_vect = reinterpret_cast<AClassWithDict* const*>( object->getData(dict_type) );
       assert (object->size() == intN);
       for( int i=0; i<intN; i++ ) {
-         cout << i << ": " << i1[i] << "   : " << i2[i] << endl;
+         cout << i << ": " << i1[i] << "   : " << i2[i]
+              << "  : withdict["<<i<<"]= " << wd_vect[i] << " v=" << wd_vect[i]->_val;
+         if( test_nodict )
+            cout << "  : nodict[]= " << nodict[i] ;
+         cout << endl;
          if( i1[i] != getVal1(iObject, i) || i2[i] != getVal2(iObject,i) )
             throw std::runtime_error( "Objects AUX data read different from objects written" );
       }
diff --git a/Database/APR/Tests/StorageSvc_AuxStore/classes.xml b/Database/APR/Tests/StorageSvc_AuxStore/classes.xml
index 7caa32a6eaf2eeca65269867c41b222999b419c7..8ea776877bfcd54c6cb52cf653f53f3f7ece2915 100644
--- a/Database/APR/Tests/StorageSvc_AuxStore/classes.xml
+++ b/Database/APR/Tests/StorageSvc_AuxStore/classes.xml
@@ -1,4 +1,6 @@
 <lcgdict>
-  <class name="APRTest::AuxStore" id="A2222222-B111-C111-D111-E22134511121">
-  </class>
+  <class name="APRTest::AuxStore" id="A2222222-B111-C111-D111-E22134511111">  </class>
+  <class name="APRTest::AClassWithDict" >  </class>
+  <class name="std::vector<APRTest::AClassWithDict*>" id="A2222222-B111-C111-D111-E22134533333">  </class>
+
 </lcgdict>
diff --git a/Database/APR/Tests/StorageSvc_AuxStore/main.cpp b/Database/APR/Tests/StorageSvc_AuxStore/main.cpp
index 95b813be856b7f69d65f942ea8ad994ed6af3eb6..ca64f1749dcddb00a0912bba6caaa18909462123 100755
--- a/Database/APR/Tests/StorageSvc_AuxStore/main.cpp
+++ b/Database/APR/Tests/StorageSvc_AuxStore/main.cpp
@@ -6,7 +6,7 @@
 #include <exception>
 #include "TestDriver.h"
 
-int main( int argc, char** ) {
+int main( int argc, char** argv ) {
   try {
     std::cout << "[OVAL] Creating the test driver." << std::endl;
     TestDriver driver;
@@ -16,14 +16,16 @@ int main( int argc, char** ) {
     libraries.push_back( "test_StorageSvc_AuxStoreDict" );
     driver.loadLibraries( libraries );
 
-    if( argc == 1 ) {
+    if( argc<2 || *argv[1] == 'w' ) {
        std::cout << "[OVAL] Testing the writing operations" << std::endl;
        driver.testWriting();
        std::cout << "[OVAL] ...done" << std::endl;
     }
-    std::cout << "[OVAL] Testing the reading operations" << std::endl;
-    driver.testReading();
-    std::cout << "[OVAL] ...done" << std::endl;
+    if( argc<2 || *argv[1] == 'r' ) {
+       std::cout << "[OVAL] Testing the reading operations" << std::endl;
+       driver.testReading();
+       std::cout << "[OVAL] ...done" << std::endl;
+    }
   }
   catch ( std::exception& e ) {
     std::cerr << e.what() << std::endl;
diff --git a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/CMakeLists.txt b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/CMakeLists.txt
index d6b4a2961c62ec3e744fa8266957a682fa0afd0b..7ab4f5daa482dcb1c1dc25f671263a1f297b4eef 100644
--- a/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/CMakeLists.txt
+++ b/Database/AthenaPOOL/AthenaPoolExample/AthenaPoolExampleAlgorithms/CMakeLists.txt
@@ -75,21 +75,22 @@ endfunction( _add_test )
 # Write 'Hits', with multistreamand TAGs
 _add_test( AthenaPoolExample_Write 
    "athena.py AthenaPoolExampleAlgorithms/AthenaPoolExample_WriteJobOptions.py"
-   EXTRA_PATTERNS "RootCollection DEBUG File|found catalog guid|from the catalog"
+   EXTRA_PATTERNS "RootCollection DEBUG File|DEBUG lookupPFN|DEBUG registered PFN|XMLCatalog +INFO"
    PRE_EXEC test/pre_check.sh )
 # Append to existing file
 _add_test( AthenaPoolExample_Append
    "athena.py AthenaPoolExampleAlgorithms/AthenaPoolExample_AppendJobOptions.py"
-   DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_Write_ctest )
+   DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_Write_ctest
+   EXTRA_PATTERNS "RootCollection DEBUG File|DEBUG lookupPFN|DEBUG registered PFN|XMLCatalog +INFO" )
 # Read 'Hits' and write 'Tracks'
 _add_test( AthenaPoolExample_ReWrite
    "athena.py AthenaPoolExampleAlgorithms/AthenaPoolExample_RWJobOptions.py"
-   EXTRA_PATTERNS "RootCollection DEBUG File|found catalog guid|from the catalog"
+   EXTRA_PATTERNS "RootCollection DEBUG File|DEBUG lookupPFN|DEBUG registered PFN|XMLCatalog +INFO"
    DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_Append_ctest )
 # Read all output
 _add_test( AthenaPoolExample_Read
    "athena.py AthenaPoolExampleAlgorithms/AthenaPoolExample_ReadJobOptions.py"
-   EXTRA_PATTERNS "BYTES_READ"
+   EXTRA_PATTERNS "BYTES_READ|DEBUG lookupPFN|DEBUG registered PFN|XMLCatalog +INFO|Found address:"
    DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_ReWrite_ctest )
 # Read all output via TAGs
 _add_test( AthenaPoolExample_ReadTag
@@ -98,12 +99,12 @@ _add_test( AthenaPoolExample_ReadTag
 # Read all output including scoped BackNavigation
 _add_test( AthenaPoolExample_ReadBN
    "athena.py AthenaPoolExampleAlgorithms/AthenaPoolExample_ReadBNJobOptions.py"
-   EXTRA_PATTERNS "BYTES_READ"
+   EXTRA_PATTERNS "BYTES_READ|DEBUG lookupPFN|DEBUG registered PFN|XMLCatalog +INFO"
    DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_ReWrite_ctest )
 # Read all output w/o BackNavigation
 _add_test( AthenaPoolExample_ReadNoBN
    "athena.py AthenaPoolExampleAlgorithms/AthenaPoolExample_ReadNoBNJobOptions.py"
-   EXTRA_PATTERNS "BYTES_READ"
+   EXTRA_PATTERNS "BYTES_READ|DEBUG lookupPFN|DEBUG registered PFN|XMLCatalog +INFO"
    DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_ReWrite_ctest )
 
 # Copy 'Hits' file without extending provenance
@@ -112,19 +113,21 @@ _add_test( AthenaPoolExample_Copy
    DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_Read_ctest
            AthenaPoolExampleAlgorithms_AthenaPoolExample_ReadTag_ctest
            AthenaPoolExampleAlgorithms_AthenaPoolExample_ReadBN_ctest
-           AthenaPoolExampleAlgorithms_AthenaPoolExample_ReadNoBN_ctest )
+           AthenaPoolExampleAlgorithms_AthenaPoolExample_ReadNoBN_ctest
+   EXTRA_PATTERNS "DEBUG lookupPFN|DEBUG registered PFN|XMLCatalog +INFO" )
 # Read copied 'Hits' and write 'Tracks'
 _add_test( AthenaPoolExample_ReWriteAgain
    "athena.py AthenaPoolExampleAlgorithms/AthenaPoolExample_ReWriteAgainJobOptions.py"
-   DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_Copy_ctest )
+   DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_Copy_ctest
+   EXTRA_PATTERNS "DEBUG lookupPFN|DEBUG registered PFN|XMLCatalog +INFO|Unable to register collection" )
 _add_test( AthenaPoolExample_ReWriteNext
    "athena.py AthenaPoolExampleAlgorithms/AthenaPoolExample_ReWriteNextJobOptions.py"
-   EXTRA_PATTERNS "RootCollection DEBUG File|found catalog guid|from the catalog"
+   EXTRA_PATTERNS "RootCollection DEBUG File|DEBUG lookupPFN|DEBUG registered PFN|XMLCatalog +INFO"
    DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_ReWriteAgain_ctest )
 # Read via TAGs and use query to filter events
 _add_test( AthenaPoolExample_Filter
    "athena.py AthenaPoolExampleAlgorithms/AthenaPoolExample_FilterJobOptions.py"
-   EXTRA_PATTERNS "RootCollection DEBUG File|found catalog guid|from the catalog"
+   EXTRA_PATTERNS "RootCollection DEBUG File|DEBUG lookupPFN|DEBUG registered PFN|XMLCatalog +INFO"
    DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_ReWriteNext_ctest )
 _add_test( AthenaPoolExample_RFilter
    "athena.py AthenaPoolExampleAlgorithms/AthenaPoolExample_RFilterJobOptions.py"
@@ -132,7 +135,7 @@ _add_test( AthenaPoolExample_RFilter
 # Read all (including bad files, skipped for now expected failure)
 _add_test( AthenaPoolExample_ReadAgain
    "athena.py AthenaPoolExampleAlgorithms/AthenaPoolExample_ReadAgainJobOptions.py"
-   EXTRA_PATTERNS "Deaccess DbContainer|Database being retired|BYTES_READ|endTransaction|Bytes:"
+   EXTRA_PATTERNS "Deaccess DbContainer|Database being retired|BYTES_READ|endTransaction|Bytes:|DEBUG lookupPFN|DEBUG registered PFN|XMLCatalog +INFO"
    DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_RFilter_ctest )
 
 # Concatenate jobs write 'Hits' and 'Tracks' to different streams
@@ -140,26 +143,30 @@ _add_test( AthenaPoolExample_Concat
    "athena.py AthenaPoolExampleAlgorithms/AthenaPoolExample_ConcatJobOptions.py"
    DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_RFilter_ctest
            AthenaPoolExampleAlgorithms_AthenaPoolExample_ReadAgain_ctest
+   EXTRA_PATTERNS "DEBUG lookupPFN|DEBUG registered PFN|XMLCatalog +INFO"
    PRE_EXEC test/pre_check.sh )
 _add_test( AthenaPoolExample_ReadConcat
    "athena.py AthenaPoolExampleAlgorithms/AthenaPoolExample_ReadJobOptions.py"
-   EXTRA_PATTERNS "BYTES_READ"
+   EXTRA_PATTERNS "BYTES_READ|DEBUG lookupPFN|DEBUG registered PFN|XMLCatalog +INFO"
    DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_Concat_ctest )
 
 # Testing 'Conditions' I/O
 _add_test( AthenaPoolExample_WCond
    "athena.py AthenaPoolExampleAlgorithms/AthenaPoolExample_WCondJobOptions.py"
-   DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_ReadConcat_ctest )
+   DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_ReadConcat_ctest
+   EXTRA_PATTERNS "DEBUG lookupPFN|DEBUG registered PFN|XMLCatalog +INFO" )
 _add_test( AthenaPoolExample_RCond
    "athena.py AthenaPoolExampleAlgorithms/AthenaPoolExample_RCondJobOptions.py"
-   DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_WCond_ctest )
+   DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_WCond_ctest
+   EXTRA_PATTERNS "DEBUG lookupPFN|DEBUG registered PFN|XMLCatalog +INFO" )
 
 # Testing 'Metadata' I/O
 _add_test( AthenaPoolExample_WMeta
    "athena.py AthenaPoolExampleAlgorithms/AthenaPoolExample_WMetaJobOptions.py"
    DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_RCond_ctest
+   EXTRA_PATTERNS "DEBUG lookupPFN|DEBUG registered PFN|XMLCatalog +INFO"
    PRE_EXEC test/pre_check.sh )
 _add_test( AthenaPoolExample_RMeta
    "athena.py AthenaPoolExampleAlgorithms/AthenaPoolExample_RMetaJobOptions.py"
    DEPENDS AthenaPoolExampleAlgorithms_AthenaPoolExample_WMeta_ctest
-   EXTRA_PATTERNS "Bytes:" )
+   EXTRA_PATTERNS "Bytes:|DEBUG lookupPFN|DEBUG registered PFN|XMLCatalog +INFO" )
diff --git a/Database/AthenaPOOL/OutputStreamAthenaPool/CMakeLists.txt b/Database/AthenaPOOL/OutputStreamAthenaPool/CMakeLists.txt
index 10edbdd4c7246593b546c938bd3de33142da39fd..6e5182d57047abf8ada35e77d171a2f4b3fc93c7 100644
--- a/Database/AthenaPOOL/OutputStreamAthenaPool/CMakeLists.txt
+++ b/Database/AthenaPOOL/OutputStreamAthenaPool/CMakeLists.txt
@@ -20,7 +20,6 @@ atlas_depends_on_subdirs( PRIVATE
 
 # Component(s) in the package:
 atlas_add_component( OutputStreamAthenaPool
-                     src/AthenaPoolOutputStreamTool.cxx
                      src/MakeEventStreamInfo.cxx
                      src/CopyEventStreamInfo.cxx
                      src/MakeInputDataHeader.cxx
diff --git a/Database/AthenaPOOL/RootFileTools/src/HistoPile.cxx b/Database/AthenaPOOL/RootFileTools/src/HistoPile.cxx
index 8c1684067e580c53b940748cc2cf61a5c39597a9..f164020ed5a1ae42f0de921ebb7de5885736b35d 100644
--- a/Database/AthenaPOOL/RootFileTools/src/HistoPile.cxx
+++ b/Database/AthenaPOOL/RootFileTools/src/HistoPile.cxx
@@ -26,16 +26,16 @@ void HistoPile::Pop()
 //______________________________________________________________________________
 const char * HistoPile::Path() 
 {
-    static char line[1024];
-    Int_t len = 0;
-  
-    for( list<string>::iterator p=m_path.begin(); p!=m_path.end(); ++p) {
-      strcpy( line + len, (*p).c_str() );
-      len += p->size();
+    static std::string line;
+
+    for (const std::string& p : m_path) {
+      line += p;
     }
     // replace trailing dot
-    *(line + len-1) = 0; //' '; 
-    return line; 
+    if (line.size() > 0) {
+      line.erase (line.size()-1);
+    }
+    return line.c_str(); 
 }
 
 //______________________________________________________________________________
diff --git a/Database/CoolLumiUtilities/src/CoolLumiUtilsTest.cxx b/Database/CoolLumiUtilities/src/CoolLumiUtilsTest.cxx
index 6cd818f283413d2b0ea698af144d3dff868fc055..98e0473a67ae8757a0a8863bde16bc773549387e 100644
--- a/Database/CoolLumiUtilities/src/CoolLumiUtilsTest.cxx
+++ b/Database/CoolLumiUtilities/src/CoolLumiUtilsTest.cxx
@@ -5,7 +5,9 @@
 #include "CoolLumiUtilities/CoolLumiUtilsTest.h"
 
 
-MyTestClass::MyTestClass() {
+MyTestClass::MyTestClass()
+  : m_value(0)
+{
 }
 
 void
diff --git a/Database/CoolLumiUtilities/src/LumiBlobUtil.cxx b/Database/CoolLumiUtilities/src/LumiBlobUtil.cxx
index cf0fa18eff1e6e92839d4c5ec7bac70cbd34b382..7caaa5068f7e1da398685a33092325c4a1b3aa5a 100644
--- a/Database/CoolLumiUtilities/src/LumiBlobUtil.cxx
+++ b/Database/CoolLumiUtilities/src/LumiBlobUtil.cxx
@@ -246,7 +246,7 @@ LumiBlobUtil::unpack(const cool::Float &ARI, const coral::Blob &blobBC, const st
           m_bunchLumis.push_back(element);
         }
       } // This ends y=2               
-      AB1 = AB1/len;
+      if (len > 0) AB1 = AB1/len;
       //  std::cout << AB1 << std::endl;
     } // This ends x=2     
     if (x==4) {
diff --git a/Database/CoraCool/CoraCool/CoraCoolFolder.h b/Database/CoraCool/CoraCool/CoraCoolFolder.h
index f54fe9d3697b66c72e3e28783c1491a17647b887..b81da134ffecf1a7381b8d11825c20624f4dd381 100755
--- a/Database/CoraCool/CoraCool/CoraCoolFolder.h
+++ b/Database/CoraCool/CoraCool/CoraCoolFolder.h
@@ -45,6 +45,10 @@ class CoraCoolFolder {
   // destructor
   ~CoraCoolFolder();
 
+  // Disallow, since we manage resources.
+  CoraCoolFolder (const CoraCoolFolder&) = delete;
+  CoraCoolFolder& operator= (const CoraCoolFolder&) = delete;
+
   // properties of the folder
   std::string coralTableName() const;
   const std::string& coralFKey() const;
diff --git a/ForwardDetectors/ALFA/ALFA_G4_SD/src/ALFA_SensitiveDetector.cxx b/ForwardDetectors/ALFA/ALFA_G4_SD/src/ALFA_SensitiveDetector.cxx
index a332f8562d6a51dd6fb222d4101aab0a92f72b8d..8b0820a8c4c86295daf5e0af81c10c3d8db4a275 100644
--- a/ForwardDetectors/ALFA/ALFA_G4_SD/src/ALFA_SensitiveDetector.cxx
+++ b/ForwardDetectors/ALFA/ALFA_G4_SD/src/ALFA_SensitiveDetector.cxx
@@ -34,12 +34,12 @@ ALFA_SensitiveDetector::ALFA_SensitiveDetector(const std::string& name, const st
   m_numberOfHits = 0;
   m_numberOfODHits = 0;
 
-  pos1 = 0;
-  pos2 = 0;
+  m_pos1 = 0;
+  m_pos2 = 0;
 
-  num[0] = 0;
-  num[1] = 0;
-  num[2] = 0;
+  m_num[0] = 0;
+  m_num[1] = 0;
+  m_num[2] = 0;
 
 }
 
@@ -129,15 +129,15 @@ bool ALFA_SensitiveDetector::ProcessHits(G4Step* pStep, G4TouchableHistory*)
   if (vol_test_str.compare("ALFA_Fi") == 0)
     {
       if (std::abs(energyDeposit)<std::numeric_limits<double>::epsilon()) { return true; }
-      pos2 = 10;
+      m_pos2 = 10;
       std::string substring (vol_name);
       std::string num_string (vol_name);
 
       ////ATH_MSG_DEBUG(" volume name is " << vol_test_str  );
-      ////ATH_MSG_DEBUG("string slope is " << substring.substr(pos2,1)  );
+      ////ATH_MSG_DEBUG("string slope is " << substring.substr(m_pos2,1)  );
 
       std::string test_str ("A");
-      test_str = substring.substr(pos2,1);
+      test_str = substring.substr(m_pos2,1);
       int sign_fiber(0);
       if (test_str.compare("U") == 0)
         {
@@ -154,22 +154,22 @@ bool ALFA_SensitiveDetector::ProcessHits(G4Step* pStep, G4TouchableHistory*)
 
       for ( int k = 0; k < 3; k++ )
         {
-          substring = substring.substr(pos2+1);
+          substring = substring.substr(m_pos2+1);
           ////ATH_MSG_DEBUG("remaining string is " << substring  );
-          pos1 = int(substring.find("["));
-          ////ATH_MSG_DEBUG("position 1 is " << pos1  );
-          pos2 = int(substring.find("]"));
-          ////ATH_MSG_DEBUG("position 2 is " << pos1  );
-          num_string = substring.substr(pos1+1,pos2-1);
+          m_pos1 = int(substring.find("["));
+          ////ATH_MSG_DEBUG("position 1 is " << m_pos1  );
+          m_pos2 = int(substring.find("]"));
+          ////ATH_MSG_DEBUG("position 2 is " << m_pos1  );
+          num_string = substring.substr(m_pos1+1,m_pos2-1);
           ////ATH_MSG_DEBUG("num_string is " << substring );
           std::istringstream is(num_string);
-          is >> num[k];
-          ////ATH_MSG_DEBUG("number got is " << num[k] );
+          is >> m_num[k];
+          ////ATH_MSG_DEBUG("number got is " << m_num[k] );
         }
 
-      n_station = num[0];
-      n_plate   = num[1];
-      n_fiber   = num[2];
+      n_station = m_num[0];
+      n_plate   = m_num[1];
+      n_fiber   = m_num[2];
 
       ////ATH_MSG_DEBUG("station=" << n_station << ", plate=" << n_plate << ", fiber=" << n_fiber << ", sign=" << sign_fiber );
 
@@ -199,15 +199,15 @@ bool ALFA_SensitiveDetector::ProcessHits(G4Step* pStep, G4TouchableHistory*)
   if (vol_test_str.compare("ODFiber") == 0)
     {
       if (std::abs(energyDeposit)<std::numeric_limits<double>::epsilon()) { return true; }
-      pos2 = 7;
+      m_pos2 = 7;
       std::string substring (vol_name);
       std::string num_string (vol_name);
 
       //////ATH_MSG_DEBUG(" volume name is " << vol_test_str  );
-      //////ATH_MSG_DEBUG("string slope is " << substring.substr(pos2,1)  );
+      //////ATH_MSG_DEBUG("string slope is " << substring.substr(m_pos2,1)  );
 
       std::string test_str ("A");
-      test_str = substring.substr(pos2,1);
+      test_str = substring.substr(m_pos2,1);
       int sign_fiber(0);
       if (test_str.compare("U") == 0)
         {
@@ -222,7 +222,7 @@ bool ALFA_SensitiveDetector::ProcessHits(G4Step* pStep, G4TouchableHistory*)
         }
 
       std::string test_str_side ("A");
-      test_str_side = substring.substr(pos2+1,1);
+      test_str_side = substring.substr(m_pos2+1,1);
 
       //////ATH_MSG_DEBUG("remaining string is " << test_str_side );
       int OD_side(0);
@@ -240,22 +240,22 @@ bool ALFA_SensitiveDetector::ProcessHits(G4Step* pStep, G4TouchableHistory*)
 
       for ( int k = 0; k < 3; k++ )
         {
-          substring = substring.substr(pos2+1);
+          substring = substring.substr(m_pos2+1);
           ////ATH_MSG_DEBUG("OD: remaining string is " << substring  );
-          pos1 = int(substring.find("["));
-          ////ATH_MSG_DEBUG("OD: position 1 is " << pos1  );
-          pos2 = int(substring.find("]"));
-          ////ATH_MSG_DEBUG("OD: position 2 is " << pos1  );
-          num_string = substring.substr(pos1+1,pos2-1);
+          m_pos1 = int(substring.find("["));
+          ////ATH_MSG_DEBUG("OD: position 1 is " << m_pos1  );
+          m_pos2 = int(substring.find("]"));
+          ////ATH_MSG_DEBUG("OD: position 2 is " << m_pos1  );
+          num_string = substring.substr(m_pos1+1,m_pos2-1);
           ////ATH_MSG_DEBUG("OD: num_string is " << substring );
           std::istringstream is(num_string);
-          is >> num[k];
-          ////ATH_MSG_DEBUG("OD: number got is " << num[k] );
+          is >> m_num[k];
+          ////ATH_MSG_DEBUG("OD: number got is " << m_num[k] );
         }
 
-      n_station = num[0];
-      n_plate   = num[1];
-      n_fiber   = num[2];
+      n_station = m_num[0];
+      n_plate   = m_num[1];
+      n_fiber   = m_num[2];
 
       ////ATH_MSG_DEBUG("station=" << n_station << ", side=" << OD_side << ", plate= "<< n_plate << ", fiber=" << n_fiber << ", sign=" << sign_fiber );
       if(m_ODHitCollection.isValid())
diff --git a/ForwardDetectors/ALFA/ALFA_G4_SD/src/ALFA_SensitiveDetector.h b/ForwardDetectors/ALFA/ALFA_G4_SD/src/ALFA_SensitiveDetector.h
index 7efae487abac1433064f23c78b60200a81c80f52..4be62bf0be2525decdda46f99ac50eac35d961a3 100644
--- a/ForwardDetectors/ALFA/ALFA_G4_SD/src/ALFA_SensitiveDetector.h
+++ b/ForwardDetectors/ALFA/ALFA_G4_SD/src/ALFA_SensitiveDetector.h
@@ -52,9 +52,9 @@ private:
   SG::WriteHandle<ALFA_HitCollection> m_HitCollection;
   SG::WriteHandle<ALFA_ODHitCollection> m_ODHitCollection;
 
-  int pos1, pos2;
+  int m_pos1, m_pos2;
 
-  int num[3];
+  int m_num[3];
 };
 
 #endif //ALFA_G4_SD_ALFA_SensitiveDetector_h
diff --git a/InnerDetector/InDetConditions/PixelConditionsServices/src/PixelCalibSvc.cxx b/InnerDetector/InDetConditions/PixelConditionsServices/src/PixelCalibSvc.cxx
index 9b46f8eada875911dfb726054c2091873a8b259d..a643ab864696de13509b53d5ea200260aaf0cb13 100755
--- a/InnerDetector/InDetConditions/PixelConditionsServices/src/PixelCalibSvc.cxx
+++ b/InnerDetector/InDetConditions/PixelConditionsServices/src/PixelCalibSvc.cxx
@@ -268,7 +268,7 @@ int PixelCalibSvc::PixelType(const Identifier pix_id, const Identifier wafer_id,
       }
       col = columnsPerFE-1-eta_index%columnsPerFE; // check the col order in FEI4 ?
       row = 0;
-      circ = p_design->numberOfCircuits()==1 ? 0: eta_index/columnsPerFE;
+      circ = p_design->numberOfCircuits()==1 ? 0: 1-eta_index/columnsPerFE;
     }
     else { // FEI3
       if (barrel_ec==2 || barrel_ec==-2) {
@@ -337,7 +337,7 @@ int PixelCalibSvc::PixelCirc(const Identifier& pix_id, const Identifier& wafer_i
   else {
     int columnsPerFE = p_design->columnsPerCircuit();
     if (p_design->getReadoutTechnology()==InDetDD::PixelModuleDesign::FEI4) {
-      circ = p_design->numberOfCircuits()==1 ? 0: eta_index/columnsPerFE;
+      circ = p_design->numberOfCircuits()==1 ? 0: 1-eta_index/columnsPerFE;
     }
     else{ // FEI3 chips
       if (barrel_ec==2 || barrel_ec==-2) {
diff --git a/InnerDetector/InDetConditions/SiLorentzAngleSvc/python/PixelLorentzAngleSvcSetup.py b/InnerDetector/InDetConditions/SiLorentzAngleSvc/python/PixelLorentzAngleSvcSetup.py
index 35d2ae5ec9722347346d97774f287f721a20d56a..7e8cd6dbab2de4e2a20c1a5492dbade5e9b18618 100644
--- a/InnerDetector/InDetConditions/SiLorentzAngleSvc/python/PixelLorentzAngleSvcSetup.py
+++ b/InnerDetector/InDetConditions/SiLorentzAngleSvc/python/PixelLorentzAngleSvcSetup.py
@@ -52,8 +52,6 @@ class PixelLorentzAngleSvcSetup:
             pixelSiliconConditionsSvc=PixelSiliconConditionsSvc()
             svcMgr+=pixelSiliconConditionsSvc
 
-        pixelSiliconConditionsSvc.DepletionVoltage=10.0
-
         # Pass the silicon conditions services to the Lorentz angle service
         # Also make sure UseMagFieldTool is True as AtlasGeoModel sets this to False
         # if loaded first.
diff --git a/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/python/InDetDxAODJobProperties.py b/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/python/InDetDxAODJobProperties.py
index 14fe90e39855ccb5962f0b669c59ac3ea046c9b9..a50d1f01cdad764175ee9087dba7967c66bfdab3 100644
--- a/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/python/InDetDxAODJobProperties.py
+++ b/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/python/InDetDxAODJobProperties.py
@@ -152,12 +152,5 @@ class TrtJpsiSelection(JobProperty):
     StoredValue = False
 jobproperties.InDetDxAODJobPropertyContainer.add_JobProperty(TrtJpsiSelection)
 
-class DRAWZSelection(JobProperty):
-    """Z event selection based on DRAW ZMUMU"""
-    statusOn = True
-    allowedTypes = ["bool"]
-    StoredValue = False
-jobproperties.InDetDxAODJobPropertyContainer.add_JobProperty(DRAWZSelection)
-
 
 InDetDxAODFlags = jobproperties.InDetDxAODJobPropertyContainer
diff --git a/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/share/InDetDxAOD.py b/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/share/InDetDxAOD.py
index 3279bcc409ef958e3d6b68e1457d38b2370df158..45d35002e408299c35098d0002bfe93d0627e125 100644
--- a/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/share/InDetDxAOD.py
+++ b/InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/share/InDetDxAOD.py
@@ -16,8 +16,6 @@ dumpTrtInfo = InDetDxAODFlags.DumpTrtInfo()
 TrtZSel = InDetDxAODFlags.TrtZSelection()
 TrtJSel = InDetDxAODFlags.TrtJpsiSelection()
 
-DRAWZSel = InDetDxAODFlags.DRAWZSelection()
-
 # Thin hits to store only the ones on-track
 thinHitsOnTrack= InDetDxAODFlags.ThinHitsOnTrack()
 
@@ -312,27 +310,6 @@ if TrtZSel or TrtJSel:
 
 
 
-DRAW_ZMUMU_SkimmingTool=None
-if DRAWZSel:
-  sel_muon1  = 'Muons.pt > 25*GeV && Muons.ptcone40/Muons.pt < 0.3 && Muons.passesIDCuts && (Muons.quality <= 2)'
-  sel_muon2  = 'Muons.pt > 20*GeV && Muons.ptcone40/Muons.pt < 0.3 && Muons.passesIDCuts && (Muons.quality <= 2)'
-  draw_zmumu = '( count (  DRZmumuMass > 70*GeV   &&  DRZmumuMass < 110*GeV ) >= 1 )'
-  from DerivationFrameworkTools.DerivationFrameworkToolsConf import DerivationFramework__InvariantMassTool
-  DRZmumuMassTool = DerivationFramework__InvariantMassTool(name = "DRZmumuMassTool",
-                                                           ContainerName              = "Muons",
-                                                           ObjectRequirements         = sel_muon1,
-                                                           SecondObjectRequirements   = sel_muon2,
-                                                           MassHypothesis             = 105.66,
-                                                           SecondMassHypothesis       = 105.66,
-                                                           StoreGateEntryName         = "DRZmumuMass")
-  ToolSvc += DRZmumuMassTool
-  from DerivationFrameworkTools.DerivationFrameworkToolsConf import DerivationFramework__xAODStringSkimmingTool
-  DRAW_ZMUMU_SkimmingTool = DerivationFramework__xAODStringSkimmingTool(name = "DRAW_ZMUMU_SkimmingTool",
-                                                                        expression = draw_zmumu)
-  ToolSvc += DRAW_ZMUMU_SkimmingTool
-  print DRAW_ZMUMU_SkimmingTool
-
-
 #################
 ### Setup decorators tools
 #################
@@ -422,10 +399,6 @@ if TrtZSel:
 if TrtJSel:
     augmentationTools.append(JPSIeeMassTool, JPSImmMassTool)
 
-if DRAWZSel:
-    augmentationTools.append(DRZmumuMassTool)
-
-
 from AthenaCommon import CfgMgr
 
 # Set up stream auditor
@@ -549,10 +522,6 @@ if TrtZSel:
 if TrtJSel:
     skimmingTools.append(JPSI_SkimmingTool)
 
-if DRAWZSel:
-  skimmingTools.append(DRAW_ZMUMU_SkimmingTool)
-
-
 #minimumbiasTrig = '(L1_RD0_FILLED)'
 #
 #if not IsMonteCarlo:
@@ -650,22 +619,6 @@ IDTRKVALIDStream.AddItem("xAOD::ElectronAuxContainer#ElectronsAux.")
 IDTRKVALIDStream.AddItem("xAOD::TrackParticleContainer#GSFTrackParticles")
 IDTRKVALIDStream.AddItem("xAOD::TrackParticleAuxContainer#GSFTrackParticlesAux."+excludedAuxData)
 
-if DRAWZSel:
-  IDTRKVALIDStream.AddItem("xAOD::TauJetContainer#TauJets")
-  IDTRKVALIDStream.AddItem("xAOD::TauJetAuxContainer#TauJetsAux.")
-  IDTRKVALIDStream.AddItem("xAOD::JetContainer#AntiKt4EMTopoJets")
-  IDTRKVALIDStream.AddItem("xAOD::JetAuxContainer#AntiKt4EMTopoJetsAux.")
-  IDTRKVALIDStream.AddItem("xAOD::JetContainer#AntiKt2PV0TrackJets")
-  IDTRKVALIDStream.AddItem("xAOD::JetAuxContainer#AntiKt2PV0TrackJetsAux.")
-  IDTRKVALIDStream.AddItem("xAOD::JetContainer#AntiKt3PV0TrackJets")
-  IDTRKVALIDStream.AddItem("xAOD::JetAuxContainer#AntiKt3PV0TrackJetsAux.")
-  IDTRKVALIDStream.AddItem("xAOD::BTaggingContainer#BTagging_AntiKt4EMTopo")
-  IDTRKVALIDStream.AddItem("xAOD::BTaggingAuxContainer#BTagging_AntiKt4EMTopoAux.")
-  IDTRKVALIDStream.AddItem("xAOD::BTaggingContainer#BTagging_AntiKt2Track")
-  IDTRKVALIDStream.AddItem("xAOD::BTaggingAuxContainer#BTagging_AntiKt2TrackAux.")
-  IDTRKVALIDStream.AddItem("xAOD::BTaggingContainer#BTagging_AntiKt3Track")
-  IDTRKVALIDStream.AddItem("xAOD::BTaggingAuxContainer#BTagging_AntiKt3TrackAux.")
-
 # Add truth-related information
 if dumpTruthInfo:
     IDTRKVALIDStream.AddItem("xAOD::TruthParticleContainer#*")
diff --git a/InnerDetector/InDetExample/InDetRecExample/share/InDetRecConditionsAccess.py b/InnerDetector/InDetExample/InDetRecExample/share/InDetRecConditionsAccess.py
index 31893f9adcd6cdc1d2f615e68b4eb179be2dd3f4..9ff06824493c95d6a33e8e2cc51a6e723ae9d6df 100644
--- a/InnerDetector/InDetExample/InDetRecExample/share/InDetRecConditionsAccess.py
+++ b/InnerDetector/InDetExample/InDetRecExample/share/InDetRecConditionsAccess.py
@@ -306,7 +306,6 @@ if DetFlags.haveRIO.SCT_on():
         InDetSCT_ConditionsSummarySvc.ConditionsServices= [ sct_ConfigurationConditionsSvcSetup.getSvcName(),
                                                             sct_FlaggedConditionSvcSetup.getSvcName(),
                                                             sct_MonitorConditionsSvcSetup.getSvcName(),
-                                                            sct_ByteStreamErrorsSvcSetup.getSvcName(),
                                                             sct_ReadCalibDataSvcSetup.getSvcName()]
 
 
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/CMakeLists.txt b/InnerDetector/InDetMonitoring/SCT_Monitoring/CMakeLists.txt
index bd884341e94b030afe076f39a0c0d1c2c7ca59d4..3eb25a287d31c9dec744430377a248ce8ab025b6 100644
--- a/InnerDetector/InDetMonitoring/SCT_Monitoring/CMakeLists.txt
+++ b/InnerDetector/InDetMonitoring/SCT_Monitoring/CMakeLists.txt
@@ -26,7 +26,7 @@ atlas_depends_on_subdirs( PUBLIC
                           Trigger/TrigAnalysis/TrigAnalysisInterfaces
                           PRIVATE
                           Control/AthenaKernel
-                          Control/DataModel
+                          Control/AthContainers
                           DetectorDescription/Identifier
                           InnerDetector/InDetDetDescr/InDetIdentifier
                           InnerDetector/InDetRecEvent/InDetRIO_OnTrack
@@ -49,7 +49,7 @@ atlas_add_component( SCT_Monitoring
                      src/*.cxx
                      src/components/*.cxx
                      INCLUDE_DIRS ${ROOT_INCLUDE_DIRS} ${Boost_INCLUDE_DIRS}
-                     LINK_LIBRARIES ${ROOT_LIBRARIES} ${Boost_LIBRARIES} AthenaMonitoringLib GaudiKernel InDetReadoutGeometry InDetPrepRawData MagFieldInterfaces ITrackToVertex TrkTrack TrkToolInterfaces CommissionEvent AthenaKernel DataModel Identifier EventInfo InDetIdentifier InDetRawData InDetRIO_OnTrack LWHists PathResolver TrkSurfaces TrkEventUtils TrkMeasurementBase TrkParameters TrkRIO_OnTrack TrkSpacePoint TrkTrackSummary )
+                     LINK_LIBRARIES ${ROOT_LIBRARIES} ${Boost_LIBRARIES} AthenaMonitoringLib GaudiKernel InDetReadoutGeometry InDetPrepRawData MagFieldInterfaces ITrackToVertex TrkTrack TrkToolInterfaces CommissionEvent AthenaKernel AthContainers Identifier EventInfo InDetIdentifier InDetRawData InDetRIO_OnTrack LWHists PathResolver TrkSurfaces TrkEventUtils TrkMeasurementBase TrkParameters TrkRIO_OnTrack TrkSpacePoint TrkTrackSummary )
 
 # Install files from the package:
 atlas_install_headers( SCT_Monitoring )
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTErrMonTool.cxx b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTErrMonTool.cxx
index e3b4bf65267172b3fe7c042b71de438c220afe29..9f5a053b054df89d002fc3b3f83afbb9e458aa89 100755
--- a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTErrMonTool.cxx
+++ b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTErrMonTool.cxx
@@ -32,7 +32,7 @@
 #include "InDetRawData/SCT3_RawData.h"
 #include "InDetRawData/InDetRawDataContainer.h"
 #include "InDetRawData/InDetRawDataCLASS_DEF.h"
-#include "DataModel/DataVector.h"
+#include "AthContainers/DataVector.h"
 #include "Identifier/Identifier.h"
 #include "InDetIdentifier/SCT_ID.h"
 #include "InDetReadoutGeometry/SCT_DetectorManager.h"
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTHitsNoiseMonTool.cxx b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTHitsNoiseMonTool.cxx
index 21db54535289544071ad6a51f77ccd56e73b38cd..d7cc6c59b3b054a15e2eadf286c5296472c6e605 100755
--- a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTHitsNoiseMonTool.cxx
+++ b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTHitsNoiseMonTool.cxx
@@ -39,7 +39,7 @@
 #include "InDetRawData/SCT_TB03_RawData.h" // ?
 #include "InDetRawData/InDetRawDataContainer.h" // ?
 #include "InDetRawData/InDetRawDataCLASS_DEF.h" // ?
-#include "DataModel/DataVector.h"
+#include "AthContainers/DataVector.h"
 #include "Identifier/Identifier.h"
 #include "InDetIdentifier/SCT_ID.h"
 #include "InDetReadoutGeometry/SCT_DetectorManager.h" // ?
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTLorentzMonTool.cxx b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTLorentzMonTool.cxx
index 2d46fdc531f03aaf4e174bcd94d48efdfeb1b60f..73a0c66f27f581ab8b33f33c87cb0d5640bb02bc 100755
--- a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTLorentzMonTool.cxx
+++ b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTLorentzMonTool.cxx
@@ -22,7 +22,7 @@
 #include "TH2F.h"
 #include "TProfile2D.h"
 #include "TF1.h"
-#include "DataModel/DataVector.h"
+#include "AthContainers/DataVector.h"
 #include "Identifier/Identifier.h"
 #include "InDetIdentifier/SCT_ID.h"
 #include "InDetReadoutGeometry/SCT_DetectorManager.h"
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTRatioNoiseMonTool.cxx b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTRatioNoiseMonTool.cxx
index d735df2554238d00c634013b1973164ebed0f500..f5994d8dc4a5417a9ea5738e5353cc313024fbcc 100755
--- a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTRatioNoiseMonTool.cxx
+++ b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTRatioNoiseMonTool.cxx
@@ -18,7 +18,7 @@
 #include "TH2F.h"
 #include "TProfile2D.h"
 #include "TF1.h"
-#include "DataModel/DataVector.h"
+#include "AthContainers/DataVector.h"
 #include "Identifier/Identifier.h"
 #include "InDetIdentifier/SCT_ID.h"
 #include "InDetReadoutGeometry/SCT_DetectorManager.h"
@@ -39,7 +39,6 @@
 #include "InDetRawData/SCT3_RawData.h"
 #include "InDetRawData/InDetRawDataContainer.h"
 #include "InDetRawData/InDetRawDataCLASS_DEF.h"
-#include "DataModel/DataVector.h"
 #include "Identifier/Identifier.h"
 #include "InDetIdentifier/SCT_ID.h"
 #include "InDetReadoutGeometry/SCT_DetectorManager.h"
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTTracksMonTool.cxx b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTTracksMonTool.cxx
index 83dd139d32f00a1a5e82b92a2ce42bb5f93f47ca..70d35a82a32779fb9b692c20a02228fea8b55c79 100644
--- a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTTracksMonTool.cxx
+++ b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTTracksMonTool.cxx
@@ -19,7 +19,7 @@
 #include "TH2F.h"
 #include "TProfile2D.h"
 #include "TF1.h"
-#include "DataModel/DataVector.h"
+#include "AthContainers/DataVector.h"
 #include "Identifier/Identifier.h"
 #include "InDetIdentifier/SCT_ID.h"
 #include "InDetReadoutGeometry/SCT_DetectorManager.h"
diff --git a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkInDet/src/TrackStateOnSurfaceDecorator.cxx b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkInDet/src/TrackStateOnSurfaceDecorator.cxx
index 230714856b6f1af86b979fb528630a535e1787a2..c547cd562c374ec546f270ddbea7d7928cef5dc6 100644
--- a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkInDet/src/TrackStateOnSurfaceDecorator.cxx
+++ b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkInDet/src/TrackStateOnSurfaceDecorator.cxx
@@ -310,76 +310,6 @@ namespace DerivationFramework {
         decoratorTRTusedHits_noHT_divByL (*track) = m_TRTdEdxTool->usedHits( trkTrack, true, false);
       }
 
-      // Track extrapolation
-      std::unique_ptr<const Trk::TrackParameters> perigee( m_extrapolator->extrapolate(*trkTrack,(trkTrack->perigeeParameters())->associatedSurface(),Trk::oppositeMomentum,true, Trk::pion, Trk::addNoise));
-
-      Trk::CylinderSurface cylSurfIBL(29.5,3000.0);
-      Trk::CylinderSurface cylSurfBL(50.5,3000.0);
-      Trk::CylinderSurface cylSurfL1(88.5,3000.0);
-      Trk::CylinderSurface cylSurfL2(122.5,3000.0);
-      std::unique_ptr<const Trk::TrackParameters> outputParamsIBL(m_extrapolator->extrapolate(*perigee,cylSurfIBL,Trk::alongMomentum,true,Trk::pion,Trk::removeNoise));
-      std::unique_ptr<const Trk::TrackParameters> outputParamsBL(m_extrapolator->extrapolate(*perigee,cylSurfBL,Trk::alongMomentum,true,Trk::pion,Trk::removeNoise));
-      std::unique_ptr<const Trk::TrackParameters> outputParamsL1(m_extrapolator->extrapolate(*perigee,cylSurfL1,Trk::alongMomentum,true,Trk::pion,Trk::removeNoise));
-      std::unique_ptr<const Trk::TrackParameters> outputParamsL2(m_extrapolator->extrapolate(*perigee,cylSurfL2,Trk::alongMomentum,true,Trk::pion,Trk::removeNoise));
-
-      SG::AuxElement::Decorator<float> decoratorTrkIBLX("TrkIBLX");
-      SG::AuxElement::Decorator<float> decoratorTrkIBLY("TrkIBLY");
-      SG::AuxElement::Decorator<float> decoratorTrkIBLZ("TrkIBLZ");
-      if (outputParamsIBL.get()) {
-        decoratorTrkIBLX(*track) = outputParamsIBL->position().x();
-        decoratorTrkIBLY(*track) = outputParamsIBL->position().y();
-        decoratorTrkIBLZ(*track) = outputParamsIBL->position().z();
-      }
-      else {
-        decoratorTrkIBLX(*track) = 0.0;
-        decoratorTrkIBLY(*track) = 0.0;
-        decoratorTrkIBLZ(*track) = 0.0;
-      }
-
-      SG::AuxElement::Decorator<float> decoratorTrkBLX("TrkBLX");
-      SG::AuxElement::Decorator<float> decoratorTrkBLY("TrkBLY");
-      SG::AuxElement::Decorator<float> decoratorTrkBLZ("TrkBLZ");
-      if (outputParamsBL.get()) {
-        decoratorTrkBLX(*track) = outputParamsBL->position().x();
-        decoratorTrkBLY(*track) = outputParamsBL->position().y();
-        decoratorTrkBLZ(*track) = outputParamsBL->position().z();
-      }
-      else {
-        decoratorTrkBLX(*track) = 0.0;
-        decoratorTrkBLY(*track) = 0.0;
-        decoratorTrkBLZ(*track) = 0.0;
-      }
-
-      SG::AuxElement::Decorator<float> decoratorTrkL1X("TrkL1X");
-      SG::AuxElement::Decorator<float> decoratorTrkL1Y("TrkL1Y");
-      SG::AuxElement::Decorator<float> decoratorTrkL1Z("TrkL1Z");
-      if (outputParamsL1.get()) {
-        decoratorTrkL1X(*track) = outputParamsL1->position().x();
-        decoratorTrkL1Y(*track) = outputParamsL1->position().y();
-        decoratorTrkL1Z(*track) = outputParamsL1->position().z();
-      }
-      else {
-        decoratorTrkL1X(*track) = 0.0;
-        decoratorTrkL1Y(*track) = 0.0;
-        decoratorTrkL1Z(*track) = 0.0;
-      }
-
-      SG::AuxElement::Decorator<float> decoratorTrkL2X("TrkL2X");
-      SG::AuxElement::Decorator<float> decoratorTrkL2Y("TrkL2Y");
-      SG::AuxElement::Decorator<float> decoratorTrkL2Z("TrkL2Z");
-      if (outputParamsL2.get()) {
-        decoratorTrkL2X(*track) = outputParamsL2->position().x();
-        decoratorTrkL2Y(*track) = outputParamsL2->position().y();
-        decoratorTrkL2Z(*track) = outputParamsL2->position().z();
-      }
-      else {
-        decoratorTrkL2X(*track) = 0.0;
-        decoratorTrkL2Y(*track) = 0.0;
-        decoratorTrkL2Z(*track) = 0.0;
-      }
-
-
-
       
 
       if ( m_storeTRT && !m_TRTdEdxTool.empty() ) {
diff --git a/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/BTagging/JetBTaggerAlg.h b/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/BTagging/JetBTaggerAlg.h
new file mode 100644
index 0000000000000000000000000000000000000000..e742a197facd86e1605f7456bfa93c0984a6f4fe
--- /dev/null
+++ b/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/BTagging/JetBTaggerAlg.h
@@ -0,0 +1,59 @@
+/*
+  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+*/
+
+#ifndef BTAGGING_JETBTAGGERALG_HH
+#define BTAGGING_JETBTAGGERALG_HH
+///////////////////////////////////////////
+///
+/// \class JetTaggerAlg
+/// StandAlone tool to run and add btagging information.
+////////////////////////////////////////////
+
+#include "AthenaBaseComps/AthAlgorithm.h"
+#include "GaudiKernel/ToolHandle.h"
+#include "StoreGate/ReadHandleKey.h"
+#include "StoreGate/WriteHandleKey.h"
+#include "xAODJet/JetContainer.h"
+#include "xAODBTagging/BTaggingContainer.h"
+#include "BTagging/IBTagTool.h"
+#include "BTagging/IBTagTrackAssociation.h"
+#include "BTagging/IBTagSecVertexing.h"
+
+#include "MagFieldInterfaces/IMagFieldSvc.h"
+
+namespace Analysis{
+
+//class IBTagTool;
+//class IBTagTrackAssociation;
+//class IBTagSecVertexing;
+
+class  JetBTaggerAlg: 
+  public AthAlgorithm
+   { 
+  public:
+  
+    /** Constructors and destructors */
+    JetBTaggerAlg(const std::string& name, ISvcLocator *pSvcLocator);
+    virtual ~JetBTaggerAlg();
+    
+    /** Main routines specific to an ATHENA algorithm */
+    virtual StatusCode initialize();
+    virtual StatusCode execute();
+
+  private:
+  
+    SG::ReadHandleKey<xAOD::JetContainer > m_JetCollectionName {this, "JetCollectionName", "", "Input jet container"};
+    Gaudi::Property<SG::WriteDecorHandleKey<xAOD::JetContainer> >m_jetBTaggingLinkName{this,"JetContainerName","","Element link form jet to BTagging container"};
+    SG::WriteHandleKey<xAOD::BTaggingContainer> m_BTaggingCollectionName {this, "BTaggingCollectionName", "", "Output BTagging container"};
+
+    ToolHandle< IBTagTool > m_bTagTool;
+    ToolHandle< IBTagTrackAssociation > m_BTagTrackAssocTool;
+    ToolHandle< IBTagSecVertexing > m_bTagSecVtxTool;
+    ServiceHandle<MagField::IMagFieldSvc> m_magFieldSvc;
+
+};
+
+}
+
+#endif
diff --git a/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/CMakeLists.txt b/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/CMakeLists.txt
index ddccbdf65f40ae814ae73ab8129c2ce76b8c13be..e7232a93426fad379fe13b7ed058fd6608be5561 100644
--- a/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/CMakeLists.txt
+++ b/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/CMakeLists.txt
@@ -40,6 +40,7 @@ atlas_add_library( BTaggingLib
                    src/BTagTrackAssociation.cxx
                    src/BTagSecVertexing.cxx
                    src/JetBTaggerTool.cxx
+                   src/JetBTaggerAlg.cxx
                    src/BTagLabeling.cxx
                    src/StandAloneJetBTaggerAlg.cxx
                    src/BTagJetPtScaling.cxx
diff --git a/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/python/BTaggingConfiguration.py b/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/python/BTaggingConfiguration.py
index 3122afa3f384687d3e5d931f64e1f679a642dc69..6bd773dd51b8ffe5744730fd81d8a8b18b6d0b04 100644
--- a/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/python/BTaggingConfiguration.py
+++ b/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/python/BTaggingConfiguration.py
@@ -192,6 +192,9 @@ class Configuration:
     # This dictionary keeps track of all JetBTaggerTools for each jet collection.
     self._BTaggingConfig_JetBTaggerTools = {}
 
+    # This dictionary keeps track of all JetBTaggerAlgs for each jet collection.
+    self._BTaggingConfig_JetBTaggerAlgs = {}
+
     # These dictionaries keeps track of all particle associators for each jet collection. Photon associators are counted
     # as electron associators.
     self._BTaggingConfig_TrackAssociators = {}
@@ -359,6 +362,9 @@ class Configuration:
           print '--- JetBTaggerTools ---'
           for tool in self._BTaggingConfig_JetBTaggerTools:
               print str(tool)+': ',self._BTaggingConfig_JetBTaggerTools[tool]
+          print '--- JetBTaggerAlgs ---'
+          for tool in self._BTaggingConfig_JetBTaggerAlgs:
+              print str(tool)+': ',self._BTaggingConfig_JetBTaggerAlgs[tool]
           print '--- Main Associator Tools ---'
           for tool in self._BTaggingConfig_MainAssociatorTools:
               print str(tool)+': ',self._BTaggingConfig_MainAssociatorTools[tool]
@@ -384,8 +390,23 @@ class Configuration:
       """Updates the JetBTaggerTool for the selected JetCollection if they already exist. This is in order to keep
       them up-to-date, as someone might set up a tool after these main tools already exist. And such a tool might require a new associator
       which we need to add to the main associator tool."""
-      if JetCollection in self._BTaggingConfig_JetBTaggerTools:
-          self.setupJetBTaggerTools(JetCollections=JetCollection)
+      if JetCollection in self._BTaggingConfig_JetBTaggerAlgs:
+          self.setupJetBTaggerAlgs(JetCollections=JetCollection)
+
+  def setupJetBTaggerAlg(self, ToolSvc=None, JetCollection="", TaggerList=[], SetupScheme="", topSequence=None, Verbose = True, AddToToolSvc = True, options={}, StripJetsSuffix = True):
+      """Convenience function which takes only a single jet collection and returns an instance instead
+      of a list; see setupJetBTaggerAlgs for more info. This function is mainly here for easy calling BTagging.
+
+      This function also strips any trailing 'Jets' in the JetCollection if StripJetsSuffix=True (which is the default)."""
+      if (JetCollection.lower()).endswith("jets"):
+          if Verbose is None:
+              if BTaggingFlags.OutputLevel < 3:
+                  print(self.BTagTag()+" - DEBUG - Stripping trailing 'jets' from jet collection '"+JetCollection+"' prior to setup.")
+          elif Verbose:
+              print(self.BTagTag()+" - DEBUG - Stripping trailing 'jets' from jet collection '"+JetCollection+"' prior to setup.")
+          JetCollection = JetCollection[:-4]
+      btagger = self.setupJetBTaggerAlgs(ToolSvc, [JetCollection,], topSequence, Verbose, AddToToolSvc, options, TaggerList, SetupScheme)
+      return btagger[0]
 
   def setupJetBTaggerTool(self, ToolSvc=None, JetCollection="", TaggerList=[], SetupScheme="", topSequence=None, Verbose = None, AddToToolSvc = True, options={}, StripJetsSuffix = True):
       """Convenience function which takes only a single jet collection and returns an instance instead
@@ -402,6 +423,103 @@ class Configuration:
       btagger = self.setupJetBTaggerTools(ToolSvc, [JetCollection,], topSequence, Verbose, AddToToolSvc, options, TaggerList, SetupScheme)
       return btagger[0]
 
+  def setupJetBTaggerAlgs(self, ToolSvc=None, JetCollections=[], topSequence=None, Verbose = None, AddToToolSvc = True, options={}, TaggerList=[], SetupScheme = ""):
+      """Sets up JetBTaggerAlg tools and adds them to the topSequence (one per jet collection). This function just updates
+      the tool if such a tool already exists for the specified jet collections. This function should only be used for
+      jet collections that one need reconstruction. Note that it is allowed to set topSequence to None,
+      in this case the tool will not be added to the topSequence. (This is actually used in the default set up). Note
+      that we do need the ToolSvc, this is needed to set up the associator tool.
+
+      This function returns None for all jet collections specified if the BTaggingFlags do not allow for B-tagging to run.
+
+      input: ToolSvc:          The ToolSvc. (not needed when updating)
+             JetCollections:   List of jet collection name (can also accept string in the case of one collection).
+             topSequence:      The topSequence. (not needed when updating)
+             Verbose:          Whether to print some additional information. If None then BTaggingFlags.OutputLevel will be used.
+             AddToToolSvc:     Whether to add the JetBTaggerAlg to the ToolSvc or not.
+             options:          List of options to be passed to the JetBTaggerAlgs. This has the following defaults:
+
+      OutputLevel:                                  default: BTaggingFlags.OutputLevel
+      name:                                         default: (BTaggingFlags.OutputFilesPrefix + JetCollection).lower()
+      BTagName:                                     default: BTaggingFlags.OutputFilesPrefix + JetCollection
+      BTagJFVtxName:                                default: BTaggingFlags.OutputFilesJFVxname
+      BTagSVName:                                   default: BTaggingFlags.OutputFilesSVname
+
+             TaggerList:       List of taggers to setup. If left empty the defaults are used. The entries correspond to the names found in
+                               the BTaggingFlags class. If used all other taggers are switched off. Note however that if you enable a tagger
+                               which depends on other taggers then those taggers it depends on will also be set up regardless of this list.
+                               Note: It is up to the scheme to ultimately determine the taggers, although the Default scheme will adhere to this
+                               list.
+             SetupScheme:      Type of setup scheme to use. This allows the b-tagging group to specify more elaborate setup scripts. They are defined
+                               in ./python/BTaggingConfiguration_LoadTools.py. If left empty (which is the default) the one specified in the BTaggingFlags
+                               will be used.
+
+      output: List of JetBTaggerAlgs (this includes those for which no tool was set up because it already existed)."""
+      if len(SetupScheme) == 0:
+        SetupScheme = BTaggingFlags.ConfigurationScheme
+      from BTagging.BTaggingConfiguration_LoadTools import SetupJetCollection
+      import sys
+      if Verbose is None:
+          Verbose = (BTaggingFlags.OutputLevel < 3)
+      if Verbose:
+          print self.BTagTag()+' - DEBUG - Setting up JetBTaggerAlgs for jet collections: '+str(JetCollections)
+      returnlist = []
+      # Allow for string input
+      if type(JetCollections) == str:
+          JetCollections = [JetCollections,]
+      if not self.checkFlagsUsingBTaggingFlags():
+          for jetcol in JetCollections:
+              returnlist.append(None)
+          return returnlist
+      for jetcol in JetCollections:
+          # Make sure we have this jet collection; if not use defaults
+          if not SetupJetCollection(jetcol, TaggerList, SetupScheme, self):
+              returnlist.append(None)
+              continue
+          if jetcol in self._BTaggingConfig_JetBTaggerAlgs:
+              returnlist.append(self._BTaggingConfig_JetBTaggerAlgs.get(jetcol, None))
+              print self.BTagTag()+' - INFO - Updating JetBTaggerAlg for '+jetcol
+              self.ConfigureMainAssociatorTool(self._BTaggingConfig_MainAssociatorTools[jetcol], jetcol)
+              continue
+          # Check if this jet collection has been correctly set up.
+          if not jetcol in self._BTaggingConfig_JetCollections:
+              print self.BTagTag()+' - ERROR - setupJetBTaggerAlgs() called for jet collection with name "'+jetcol+'" but this jet collection has not been initialized.'
+              raise RuntimeError
+          print self.BTagTag()+' - INFO - Adding JetBTaggerAlg for '+jetcol
+          from BTagging.BTaggingConf import Analysis__JetBTaggerAlg as JetBTaggerAlg
+          options = dict(options)
+          options.setdefault('OutputLevel', BTaggingFlags.OutputLevel)
+          # setup the Analysis__BTagTrackAssociation tool
+          # Note that this tool is tied to the JetBTaggerAlg
+          thisBTagTrackAssociation = self.setupBTagTrackAssociation('thisBTagTrackAssociation_'+jetcol+self.GeneralToolSuffix(), ToolSvc, Verbose = Verbose)
+          self._BTaggingConfig_MainAssociatorTools[jetcol] = thisBTagTrackAssociation
+          options.setdefault('BTagTrackAssocTool', thisBTagTrackAssociation)
+          # setup the secondary vertexing tool
+          options.setdefault('BTagSecVertexing', self.getJetCollectionSecVertexingTool(jetcol))
+          # Set remaining options
+          btagname = self.getOutputFilesPrefix() + jetcol
+          options.setdefault('name', (btagname + self.GeneralToolSuffix()).lower())
+          options.setdefault('JetCollectionName', jetcol.replace('Track','PV0Track') + "Jets")
+          options.setdefault('BTaggingCollectionName', btagname)
+          options['BTagTool'] = self._BTaggingConfig_JetCollections.get(jetcol, None)
+          jetbtaggeralg = JetBTaggerAlg(**options)
+          # Setup the associator tool
+          self.ConfigureMainAssociatorTool(thisBTagTrackAssociation, jetcol)
+          # -- add tool to topSequence
+          if not topSequence is None:
+              topSequence += jetbtaggeralg
+          # -- add tool to ToolSvc
+          if AddToToolSvc:
+              ToolSvc += jetbtaggeralg
+          if Verbose:
+              print jetbtaggeralg
+              print self.BTagTag()+' - INFO - Attached to the beforementioned JetBTaggerAlg we have the following BTagTool:'
+              print self._BTaggingConfig_JetCollections.get(jetcol, None)
+          # Register
+          self._BTaggingConfig_JetBTaggerAlgs[jetcol] = jetbtaggeralg
+          returnlist.append(jetbtaggeralg)
+      return returnlist
+
   def setupJetBTaggerTools(self, ToolSvc=None, JetCollections=[], topSequence=None, Verbose = None, AddToToolSvc = True, options={}, TaggerList=[], SetupScheme = ""):
       """Sets up JetBTaggerTool tools and adds them to the topSequence (one per jet collection). This function just updates
       the tool if such a tool already exists for the specified jet collections. This function should only be used for
diff --git a/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/share/BTagging_jobOptions.py b/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/share/BTagging_jobOptions.py
index 67255bb3bd6e56a2f5d9fc5ab8af8303ca14abd3..17d83b87b1e57b82e596ec5e4e3f0b740b618ad7 100755
--- a/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/share/BTagging_jobOptions.py
+++ b/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/share/BTagging_jobOptions.py
@@ -54,149 +54,23 @@ if not BTaggingFlags.DoNotSetupBTagging: # Temporary measure so the JetRec peopl
     #Jet collections
     #JetCollectionList = ['AntiKt4LCTopoJets', 'AntiKt4EMTopoJets', 'AntiKt4TrackJets', 'AntiKt4EMPFlowJets', 'AntiKt2TrackJets']
     JetCollectionList = ['AntiKt4EMTopoJets']
-    from JetRec.JetRecFlags import jetFlags
-    #if jetFlags.useTruth():
-    #  JetCollectionList += [ 'AntiKt10TruthWZJets', 'AntiKt4TruthWZJets' ]
-
-    #WOUTER: Moved these into the BTaggingsFlags.py file.
-    #BTaggingFlags.CalibrationChannelAliases += [ "AntiKt4EMTopo->AntiKt4TopoEM" ]
-    #BTaggingFlags.CalibrationChannelAliases += [ "AntiKt4LCTopo->AntiKt4LCTopo,AntiKt4TopoEM" ]
-    #BTaggingFlags.CalibrationChannelAliases += [ "AntiKt10LCTopo->AntiKt6LCTopo,AntiKt6TopoEM,AntiKt4TopoEM" ]
-    #BTaggingFlags.CalibrationChannelAliases += [ "AntiKt10Truth->AntiKt6TopoEM,AntiKt4TopoEM" ]
-    #BTaggingFlags.CalibrationChannelAliases += [ "AntiKt10TruthWZ->AntiKt6TopoEM,AntiKt4TopoEM" ]
-    #BTaggingFlags.CalibrationChannelAliases += [ "AntiKt4Truth->AntiKt4TopoEM" ]
-    #BTaggingFlags.CalibrationChannelAliases += [ "AntiKt4TruthWZ->AntiKt4TopoEM" ]
-    #BTaggingFlags.CalibrationChannelAliases += [ "AntiKt4Track->AntiKt4TopoEM" ]
-    #BTaggingFlags.CalibrationChannelAliases += [ "AntiKt3Track->AntiKt4TopoEM" ]
 
     BTaggingFlags.Jets = [ name[:-4] for name in JetCollectionList]
 
-    #BTagging list
-    btag = ConfInstance.getOutputFilesPrefix() #BTaggingFlags.OutputFilesBTag #"BTagging_"
-    #tmpSVname = "SecVtx"
-    #tmpJFVxname = "JFVtx"   
-
-    #TODO define name author (now BTagging_AntiKt4LCTopo)
-    AuthorSubString = [ btag+name[:-4] for name in JetCollectionList] 
-
-    #include( "BTagging/BTagging_Rel19_LoadTools.py" )
+    from AthenaCommon.AlgSequence import AlgSequence
+    topSequence = AlgSequence()
 
-    #from BTagging.BTaggingConf import Analysis__JetBTaggerTool as JetBTaggerTool
-    #from BTagging.BTaggingConfiguration import setupJetBTaggerTool, getJetCollectionTool
-    #### should be unique per collection
-    #### replaces the jet rec JetBTaggerTool config or the BJetBuilder config in case of retagging
-   
-
-    NotInJetToolManager = [] # For jet collections
-    from JetRec.JetRecStandard import jtm
     for i, jet in enumerate(JetCollectionList):
-        # try: 
-#          jet = jet.replace("Track", "PV0Track")
-#          jetname = getattr(jtm, jet)
-  #          btagger = JetBTaggerTool(AuthorSubString[i].lower(), 
-  #                                   BTagTool=myBTagTool, 
-  #                                   BTagName = AuthorSubString[i], 
-  #                                   BTagTrackAssocTool = myBTagTrackAssociation, 
-  #                                   BTagSVName = tmpSVname, 
-  #                                   BTagJFVtxName = tmpJFVxname, 
-  #                                   BTagSecVertexing=myBTagSecVtx)
-  #
-  #          ToolSvc += btagger
-          btagger = ConfInstance.setupJetBTaggerTool(ToolSvc, jet) #The [:-4] is not needed here; this function automatically removes trailing 'jets' or 'Jets'.
+          #btagger = ConfInstance.setupJetBTaggerTool(ToolSvc, jet) #The [:-4] is not needed here; this function automatically removes trailing 'jets' or 'Jets'.
+          btagger = ConfInstance.setupJetBTaggerAlg(ToolSvc, jet) #The [:-4] is not needed here; this function automatically removes trailing 'jets' or 'Jets'.
           if btagger is None:
             continue
-          jet = jet.replace("Track", "PV0Track")
-          jetname = getattr(jtm, jet)
-          jetname.unlock()
-          jetname.JetModifiers += [ btagger ]
-          jetname.lock()
+          topSequence += btagger
+          #jet = jet.replace("Track", "PV0Track")
+          #jetname = getattr(jtm, jet)
+          #jetname.unlock()
+          #jetname.JetModifiers += [ btagger ]
+          #jetname.lock()
           if BTaggingFlags.OutputLevel < 3:
             print ConfInstance.getJetCollectionTool(jet[:-4])
-        # except AttributeError as error:
-        #   print '#BTAG# --> ' + str(error)
-        #   NotInJetToolManager.append(AuthorSubString[i])
-
-    if len(NotInJetToolManager) > 0:
-        AuthorSubString = list(set(AuthorSubString) - set(NotInJetToolManager))
-
-
-    # WOUTER: THESE LISTS ARE NOW FILLED DYNAMICALLY AND GOVERNED BY BTAGGINGFLAGS (see ./python/BTaggingsFlags.py and ./python/BTaggingConfiguration.py (function called RegisterOutputContainersForJetCollection)
-    # Both standard and aux container must be listed explicitly.
-    # For release 19, the container version must be explicit.
-    #BaseName = "xAOD::BTaggingContainer_v1#"
-    #BaseAuxName = "xAOD::BTaggingAuxContainer_v1#"
-    #AOD list
-    #BTaggingFlags.btaggingAODList += [ BaseName + author for author in AuthorSubString]
-    #BTaggingFlags.btaggingAODList += [ BaseAuxName + author + 'Aux.' for author in AuthorSubString]
-    #ESD list
-    #BTaggingFlags.btaggingESDList += [ BaseName + author for author in AuthorSubString]
-    #BTaggingFlags.btaggingESDList += [ BaseAuxName + author + 'Aux.' for author in AuthorSubString]
-
-    #AOD list SeCVert
-    #BaseNameSecVtx = "xAOD::VertexContainer_v1#"
-    #BaseAuxNameSecVtx = "xAOD::VertexAuxContainer_v1#"
-    #BTaggingFlags.btaggingAODList += [ BaseNameSecVtx + author + tmpSVname for author in AuthorSubString]
-    #BTaggingFlags.btaggingAODList += [ BaseAuxNameSecVtx + author + tmpSVname + 'Aux.-vxTrackAtVertex' for author in AuthorSubString]
-    #ESD list
-    #BTaggingFlags.btaggingESDList += [ BaseNameSecVtx + author + tmpSVname for author in AuthorSubString]
-    #BTaggingFlags.btaggingESDList += [ BaseAuxNameSecVtx + author + tmpSVname + 'Aux.-vxTrackAtVertex' for author in AuthorSubString]
-
-    #AOD list JFSeCVert
-    #BaseNameJFSecVtx = "xAOD::BTagVertexContainer_v1#"
-    #BaseAuxNameJFSecVtx = "xAOD::BTagVertexAuxContainer_v1#"
-    #BTaggingFlags.btaggingAODList += [ BaseNameJFSecVtx + author + tmpJFVxname for author in AuthorSubString]
-    #BTaggingFlags.btaggingAODList += [ BaseAuxNameJFSecVtx + author + tmpJFVxname + 'Aux.' for author in AuthorSubString]
-    #ESD list
-    #BTaggingFlags.btaggingESDList += [ BaseNameJFSecVtx + author + tmpJFVxname for author in AuthorSubString]
-    #BTaggingFlags.btaggingESDList += [ BaseAuxNameJFSecVtx + author + tmpJFVxname + 'Aux.' for author in AuthorSubString]
 
-    # 
-    # ========== Create and configure main b-tagging algorithms (one for each jet collection)
-    #
-  #  from BTagging.BTaggingConf import Analysis__BJetBuilder
-  #  for key in BTaggingFlags.Jets:
-  #    if key in BTaggingFlags.RetagJets:
-  #      buildername = "BJetBuilder"+key
-  #      jetBasis = "Cells"
-  #      if key.find('Track') >= 0:
-  #        jetBasis = "Tracks"
-  #      if BTaggingFlags.OutputLevel < 3:
-  #        print '### creating ',buildername,' ',jetBasis
-  #      thisAlg = Analysis__BJetBuilder(
-  #        name                       = buildername,
-  #        Runmodus                   = BTaggingFlags.Runmodus,
-  ##        TrackParticleContainerName = BTaggingFlags.TrackParticleCollectionName,
-  #        OutputLevel                = BTaggingFlags.OutputLevel,
-  #        BTagTool                   = myBTagTool,
-  #        KeepTruthInfo              = not BTaggingFlags.ConvertParticleJets,
-  #        jetFinderBasedOn           = jetBasis,
-  #        BTagTrackAssocTool         = thisBTagTrackAssociation,
-  #        BTagAssociation            = BTaggingFlags.doStandardAssoc,
-  #        MuonToJetAssociator       = BTagMuonToJetAssociator,     # OK: always the same
-  #        ElectronToJetAssociator   = BTagElectronToJetAssociator, # will also not be duplicated in memory
-  #        JetCollectionName          = key+"Jets")
-  #  # -- association of tracks to jet (for the time being same one for all jet collections):
-  #      if jetBasis == "Tracks" and not BTaggingFlags.doStandardAssoc:
-  #        if BTaggingFlags.OutputLevel < 3:
-  #          print '### jetBasis tracks, and use the track constituents for tagging'
-  #        thisAlg.ParticleToJetAssociator = None
-  #      else:
-  #        if BTaggingFlags.OutputLevel < 3:
-  #          print '### jetBasis cells or tracks but using standard btagging track-jet association'
-  #        thisAlg.ParticleToJetAssociator =  CfgMgr.Analysis__ParticleToJetAssociator("BTagTrackToJetAssociator")
-  #  # -- configure leptons:
-  #      if BTaggingFlags.SoftMu:
-  #        thisAlg.MuonContainerName       = BTaggingFlags.MuonCollectionName
-  #      if BTaggingFlags.SoftMuChi2:
-  #        thisAlg.MuonContainerName       = BTaggingFlags.MuonCollectionName
-  #      if BTaggingFlags.SoftEl:
-  #        thisAlg.ElectronContainerName   = BTaggingFlags.ElectronCollectionName
-  #        thisAlg.PhotonContainerName     = BTaggingFlags.PhotonCollectionName
-  #      if BTaggingFlags.MultiSV:
-  #        thisAlg.AdditionalTrackToJetAssocName = [ "TracksBB" ]
-  #        thisAlg.AdditionalTrackToJetAssociator = [ToolSvc.BTagTrackToJetAssociatorBB ] 
-          
-    # -- add the algo:
-  #      topSequence += thisAlg
-  #      if BTaggingFlags.OutputLevel < 3:
-         # print thisAlg
diff --git a/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/src/JetBTaggerAlg.cxx b/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/src/JetBTaggerAlg.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..8778b65e0247ba64eec976517df2f75aa5cd0e22
--- /dev/null
+++ b/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/src/JetBTaggerAlg.cxx
@@ -0,0 +1,174 @@
+/*
+  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+*/
+
+#include "BTagging/JetBTaggerAlg.h"
+
+#include "xAODJet/Jet.h"
+#include "xAODJet/JetContainer.h"
+#include "xAODJet/JetAuxContainer.h"
+#include "xAODBTagging/BTagging.h"
+#include "xAODBTagging/BTaggingContainer.h"
+#include "xAODBTagging/BTaggingAuxContainer.h"
+#include "xAODTracking/VertexContainer.h"
+#include "xAODTracking/VertexAuxContainer.h"
+#include "xAODBTagging/BTagVertexContainer.h"
+#include "xAODBTagging/BTagVertexAuxContainer.h"
+#include "StoreGate/WriteDecorHandle.h"
+
+#include <iostream>
+#include <string>
+
+namespace Analysis {
+
+
+  JetBTaggerAlg::JetBTaggerAlg(const std::string& n, ISvcLocator *p) : 
+    AthAlgorithm(n,p),
+    m_BTagTrackAssocTool("Analysis::BTagTrackAssociation"),
+    m_bTagSecVtxTool("Analysis::BTagSecVertexing"),
+    m_magFieldSvc("AtlasFieldSvc",n)
+  {
+    declareProperty("BTagTool", m_bTagTool);
+    declareProperty("BTagTrackAssocTool", m_BTagTrackAssocTool);
+    declareProperty("BTagSecVertexing", m_bTagSecVtxTool);
+    declareProperty("MagFieldSvc",    m_magFieldSvc );
+  }
+
+  JetBTaggerAlg::~JetBTaggerAlg()
+  {
+    /////....
+  }
+
+
+  StatusCode JetBTaggerAlg::initialize() {
+
+    // This will check that the properties were initialized properly
+    // by job configuration.
+    ATH_CHECK( m_JetCollectionName.initialize() );
+    ATH_CHECK( m_BTaggingCollectionName.initialize() );
+    m_jetBTaggingLinkName = m_JetCollectionName.key()+".btaggingLink";
+    ATH_CHECK( m_jetBTaggingLinkName.initialize() );
+    
+    /// retrieve the main BTagTool
+    if ( m_bTagTool.retrieve().isFailure() ) {
+      ATH_MSG_FATAL("#BTAG# Failed to retrieve tool " << m_bTagTool);
+      return StatusCode::FAILURE;
+    } else {
+      ATH_MSG_DEBUG("#BTAG# Retrieved tool " << m_bTagTool);
+    }
+
+    /// retrieve the track association tool
+    if ( !m_BTagTrackAssocTool.empty() ) {
+      if ( m_BTagTrackAssocTool.retrieve().isFailure() ) {
+        ATH_MSG_FATAL("#BTAG# Failed to retrieve tool " << m_BTagTrackAssocTool);
+        return StatusCode::FAILURE;
+      } else {
+        ATH_MSG_DEBUG("#BTAG# Retrieved tool " << m_BTagTrackAssocTool);
+      }
+    }
+    else {
+      ATH_MSG_DEBUG("#BTAG# No track association tool to retrieve");
+    }
+
+    /// retrieve the bTagSecVtxTool
+    if ( m_bTagSecVtxTool.retrieve().isFailure() ) {
+      ATH_MSG_FATAL("#BTAGVTX# Failed to retrieve tool " << m_bTagSecVtxTool);
+      return StatusCode::FAILURE;
+    } else {
+      ATH_MSG_DEBUG("#BTAGVTX# Retrieved tool " << m_bTagSecVtxTool);
+    }
+
+    /// retrieve the magnetic field service
+    if (m_magFieldSvc.retrieve().isFailure()){
+      ATH_MSG_ERROR("Could not get " << m_magFieldSvc);
+      return StatusCode::FAILURE;
+    }
+
+    return StatusCode::SUCCESS;
+  }
+
+
+  StatusCode JetBTaggerAlg::execute() {
+    //retrieve the Jet container
+    SG::ReadHandle<xAOD::JetContainer> h_JetCollectionName (m_JetCollectionName);
+    if (!h_JetCollectionName.isValid()) {
+      ATH_MSG_ERROR( " cannot retrieve jet container with key " << m_JetCollectionName.key()  );
+      return StatusCode::FAILURE;
+    }
+
+    if (h_JetCollectionName->size() == 0) {
+      ATH_MSG_DEBUG("#BTAG# Empty JetContainer !!");
+    }
+    else {
+      ATH_MSG_DEBUG("#BTAG#  Nb jets in JetContainer: "<< h_JetCollectionName->size());
+    }
+
+    //Decor Jet with element link to the BTagging
+    SG::WriteDecorHandle<xAOD::JetContainer,ElementLink< xAOD::BTaggingContainer > > h_jetBTaggingLinkName(m_jetBTaggingLinkName);
+
+    //Create a xAOD::BTaggingContainer in any case (must be done)
+    std::string bTaggingContName = m_BTaggingCollectionName.key();
+    ATH_MSG_DEBUG("#BTAG#  Container name: "<< bTaggingContName);
+
+    /* Record the BTagging  output container */
+    SG::WriteHandle<xAOD::BTaggingContainer> h_BTaggingCollectionName (m_BTaggingCollectionName);
+    ATH_CHECK( h_BTaggingCollectionName.record(std::make_unique<xAOD::BTaggingContainer>(),
+                    std::make_unique<xAOD::BTaggingAuxContainer>()) );
+
+    if (!m_magFieldSvc->solenoidOn()) {
+      for (size_t jetIndex=0; jetIndex < h_JetCollectionName->size() ; ++jetIndex) {
+        const xAOD::Jet * jet = h_JetCollectionName->at(jetIndex);
+        ElementLink< xAOD::BTaggingContainer> linkBTagger;
+        h_jetBTaggingLinkName(*jet) = linkBTagger;
+      }
+      return StatusCode::SUCCESS;
+    }
+    else { //Solenoid ON
+      for (unsigned int i = 0; i < h_JetCollectionName->size(); i++) {
+        xAOD::BTagging * newBTagMT  = new xAOD::BTagging();
+        h_BTaggingCollectionName->push_back(newBTagMT);
+      }
+    }
+
+
+    StatusCode jetIsAssociated;
+    if (!m_BTagTrackAssocTool.empty()) {
+      ATH_MSG_VERBOSE("#BTAG# Track association tool is not empty");
+      //jetIsAssociated = m_BTagTrackAssocTool->BTagTrackAssociation_exec(&jets, h_BTaggingCollectionName.ptr());
+      jetIsAssociated = m_BTagTrackAssocTool->BTagTrackAssociation_exec(h_JetCollectionName.ptr(), h_BTaggingCollectionName.ptr());
+      if ( jetIsAssociated.isFailure() ) {
+        ATH_MSG_ERROR("#BTAG# Failed to associate tracks to jet ");
+        return StatusCode::FAILURE;
+      }
+    }
+    else {
+      ATH_MSG_WARNING("#BTAG# Empty track association tool ");
+    }
+
+
+    // Secondary vertex reconstruction.
+    StatusCode SV = m_bTagSecVtxTool->BTagSecVtx_exec(h_JetCollectionName.ptr(), h_BTaggingCollectionName.ptr());
+    if (SV.isFailure()) {
+      ATH_MSG_WARNING("#BTAG# Failed to reconstruct sec vtx");
+    }
+
+    //Tag the jets
+    SV = m_bTagTool->tagJet( h_JetCollectionName.ptr(), h_BTaggingCollectionName.ptr());
+    if (SV.isFailure()) {
+      ATH_MSG_WARNING("#BTAG# Failed in taggers call");
+    }
+
+    //Create the element link from the jet to the btagging
+    for (size_t jetIndex=0; jetIndex < h_JetCollectionName->size() ; ++jetIndex) {
+      const xAOD::Jet * jetToTag = h_JetCollectionName->at(jetIndex);
+      xAOD::BTagging * itBTag = h_BTaggingCollectionName->at(jetIndex);
+      ElementLink< xAOD::BTaggingContainer> linkBTagger;
+      linkBTagger.toContainedElement(*h_BTaggingCollectionName.ptr(), itBTag);
+      h_jetBTaggingLinkName(*jetToTag) = linkBTagger;
+    }
+
+    return StatusCode::SUCCESS;
+
+  }
+
+} //// namespace analysis
diff --git a/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/src/components/BTagging_entries.cxx b/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/src/components/BTagging_entries.cxx
index edda9ccd318955537adcf7b60c535f9a40e7e8c1..2150c6bfccdd86cdbb34dd4d10d02e51350a0b42 100644
--- a/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/src/components/BTagging_entries.cxx
+++ b/PhysicsAnalysis/JetTagging/JetTagAlgs/BTagging/src/components/BTagging_entries.cxx
@@ -7,6 +7,7 @@
 #include "BTagging/BTagJetPtScaling.h"
 //#include "BTagging/BTagRemoving.h"
 #include "BTagging/JetBTaggerTool.h"
+#include "BTagging/JetBTaggerAlg.h"
 #include "BTagging/StandAloneJetBTaggerAlg.h"
 
 using namespace Analysis ;
@@ -21,6 +22,7 @@ DECLARE_COMPONENT( BTagJetPtScaling )
 //DECLARE_COMPONENT( BTagRemoving )
 DECLARE_COMPONENT( BTagTool )
 DECLARE_COMPONENT( JetBTaggerTool )
+DECLARE_COMPONENT( JetBTaggerAlg )
 
 /** factory entries need to have the name of the package */
 
diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/EtaPtFilterTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/EtaPtFilterTool.cxx
index 02b2fd98007e4345f55eb9e42545619d47779f7f..65c5c85c94962a850b614357dd00a91d0bbebb09 100755
--- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/EtaPtFilterTool.cxx
+++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/EtaPtFilterTool.cxx
@@ -135,7 +135,7 @@ StatusCode EtaPtFilterTool::buildMcAod( const McEventCollection* in,
       ATH_MSG_WARNING
         ("Could not launch filtering procedure for GenEvent number ["
          << iEvt << "] from McEventCollection ["
-         << m_mcEventsName << " !!"
+         << m_mcEventsReadHandleKey.key() << " !!"
          << endmsg
          << "  inEvt: " << inEvt);
       continue;
@@ -156,7 +156,7 @@ StatusCode EtaPtFilterTool::buildMcAod( const McEventCollection* in,
 
     if ( buildGenEvent( inEvt, outEvt ).isFailure() ) {
       ATH_MSG_ERROR("Could filter GenEvent number [" << iEvt 
-		    << "] from McEventCollection ["     << m_mcEventsName 
+		    << "] from McEventCollection ["     << m_mcEventsReadHandleKey.key() 
 		    << "] !!");
       delete outEvt;
       outEvt = 0;
diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/NoopFilterTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/NoopFilterTool.cxx
index 45c944f11d0e70d8856b07c620d3495f91252877..235c2a7db9f9f756d535aafdd886ff480797c794 100755
--- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/NoopFilterTool.cxx
+++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/NoopFilterTool.cxx
@@ -77,7 +77,7 @@ StatusCode NoopFilterTool::buildMcAod( const McEventCollection* in,
       ATH_MSG_WARNING
 	("Could not launch filtering procedure for GenEvent number ["
 	 << iEvt << "] from McEventCollection ["
-	 << m_mcEventsName.value() << "] !!"
+	 << m_mcEventsReadHandleKey.key() << "] !!"
 	 << endmsg
 	 << "  outEvt: " << outEvt);
       continue;
diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/OldSpclMcFilterTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/OldSpclMcFilterTool.cxx
index ed90d89b62725932612001eefec54b113205edb1..3c5c0c688df04497bbdb6fe739d8e3bd699830c2 100755
--- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/OldSpclMcFilterTool.cxx
+++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/OldSpclMcFilterTool.cxx
@@ -164,14 +164,14 @@ StatusCode OldSpclMcFilterTool::selectSpclMcBarcodes()
 
   std::vector<const HepMC::GenParticle*> particles;
   if ( m_includeSimul ) {
-     sc = m_tesIO->getMC(particles,  m_mcEventsName);
+    sc = m_tesIO->getMC(particles,  m_mcEventsReadHandleKey.key());
   } else {
     static const IsGenerator ifs;
-    sc = m_tesIO->getMC(particles, &ifs, m_mcEventsName);
+    sc = m_tesIO->getMC(particles, &ifs, m_mcEventsReadHandleKey.key());
   }
   if ( sc.isFailure() ) {
     ATH_MSG_ERROR("Could not get Monte Carlo particles from TDS at : "
-		  << m_mcEventsName);
+		  << m_mcEventsReadHandleKey.key());
     return StatusCode::FAILURE;
   }
 
diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/PileupFilterTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/PileupFilterTool.cxx
index 30acd51be1041e0b23d9bfc16461b8e62a8ce12c..3a2db19ae907ff7b7b59ef386b9eb457b3feafb7 100755
--- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/PileupFilterTool.cxx
+++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/PileupFilterTool.cxx
@@ -170,14 +170,14 @@ StatusCode PileupFilterTool::selectSpclMcBarcodes()
 
   std::vector<const HepMC::GenParticle*> particles;
   if ( m_includeSimul ) {
-     sc = m_tesIO->getMC(particles,  m_mcEventsName);
+    sc = m_tesIO->getMC(particles,  m_mcEventsReadHandleKey.key());
   } else {
     static const IsGenerator ifs;
-    sc = m_tesIO->getMC(particles, &ifs, m_mcEventsName);
+    sc = m_tesIO->getMC(particles, &ifs, m_mcEventsReadHandleKey.key());
   }
   if ( sc.isFailure() ) {
     ATH_MSG_ERROR("Could not get Monte Carlo particles from TDS at : "
-		  << m_mcEventsName);
+		  << m_mcEventsReadHandleKey.key());
     return StatusCode::FAILURE;
   }
 
@@ -185,9 +185,9 @@ StatusCode PileupFilterTool::selectSpclMcBarcodes()
 
   //+++ Get True Vertices from Storegate
   const McEventCollection* mcTruth(0);
-  sc = evtStore()->retrieve(mcTruth, m_mcEventsName);
+  sc = evtStore()->retrieve(mcTruth, m_mcEventsReadHandleKey.key());
   if( sc.isFailure() ) {
-    ATH_MSG_WARNING("MC Event " << m_mcEventsName << " not found.");
+    ATH_MSG_WARNING("MC Event " << m_mcEventsReadHandleKey.key() << " not found.");
     return StatusCode::SUCCESS;
   }
   ATH_MSG_DEBUG("McEventCollection successfully retrieved" << endmsg
diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthParticleCnvTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthParticleCnvTool.cxx
index 25f0ddb0b1e86271f6d4b1a912fed8180644cf82..bcf22c1f47f4b26d00fdce31d4044097301c9a6b 100755
--- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthParticleCnvTool.cxx
+++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthParticleCnvTool.cxx
@@ -23,7 +23,6 @@
 #include "HepMC/GenParticle.h"
 #include "HepMC/GenVertex.h"
 #include "HepMC/Polarization.h"
-#include "GeneratorObjects/McEventCollection.h"
 #include "HepPDT/ParticleData.hh"
 
 // McParticleKernel includes
@@ -31,7 +30,6 @@
 
 // McParticleEvent includes
 #include "McParticleEvent/TruthParticle.h"
-#include "McParticleEvent/TruthParticleContainer.h"
 
 // McParticleUtils includes
 #include "McParticleUtils/McUtils.h" // for chargeFromPdgId
@@ -68,16 +66,6 @@ TruthParticleCnvTool::TruthParticleCnvTool( const std::string& type,
 		   m_dataType_int = 4,
 		   "Type of data we are dealing with (Full/Fast/Truth...)" );
 
-  declareProperty( "McEvents", 
-		   m_mcEventsName = "GEN_AOD",
-		   "Name of the McEventCollection the TruthParticles will be "
-		   "constructed from" );
-
-  declareProperty( "TruthParticlesOutput", 
-		   m_mcPartsOutputName = "SpclMC",
-		   "Name of the output TruthParticle collection (built from the "
-		   "McEventCollection)" );
-
   declareProperty( "TruthIsolationTool",
 		   m_isolationTool = IsolTool_t( "TruthIsolationTool" ),
 		   "Pointer to the TruthIsolationTool to be able to compute "
@@ -139,6 +127,9 @@ StatusCode TruthParticleCnvTool::initialize()
     m_isolationTool.disable();
   }
 
+  //initialize DataHandleKeys
+  ATH_CHECK(m_mcPartsOutputWriteHandleKey.initialize());
+  ATH_CHECK(m_mcEventsReadHandleKey.initialize());
 
   // for compatibility with earlier version we accept <0 values :
   if(m_selectSignalTypeProp<0) m_selectSignalType = PileUpClassification::ALLMINBIAS;
@@ -148,8 +139,8 @@ StatusCode TruthParticleCnvTool::initialize()
   ATH_MSG_INFO
     (" DoEtIsolations:       [" << std::boolalpha 
      << m_doEtIsolation.value() << "]" << endmsg
-     << " McEvents:             [" << m_mcEventsName.value() << "]" << endmsg
-     << " TruthParticlesOutput: [" << m_mcPartsOutputName.value() << "]"
+     << " McEvents:             [" << m_mcEventsReadHandleKey.key() << "]" << endmsg
+     << " TruthParticlesOutput: [" << m_mcPartsOutputWriteHandleKey.key() << "]"
      << endmsg
      << " SelectSignalType:     [" << m_selectSignalType << "]");
 
@@ -160,32 +151,28 @@ StatusCode TruthParticleCnvTool::execute()
 {  
   ATH_MSG_DEBUG("Executing " << name() << "...");
 
-  TruthParticleContainer * mcParts = new TruthParticleContainer;
-  if ( evtStore()->record( mcParts, m_mcPartsOutputName.value() ).isFailure() ) {
-    ATH_MSG_ERROR("Could not record TruthParticleContainer at ["
-                  << m_mcPartsOutputName.value() << "] !!");
-    delete mcParts;
-    mcParts = 0;
+  //Setup WriteHandle, and record new TruthParticleContainer
+  SG::WriteHandle<TruthParticleContainer> mcPartsOutputWriteHandle(m_mcPartsOutputWriteHandleKey);
+  ATH_CHECK(mcPartsOutputWriteHandle.record(std::make_unique<TruthParticleContainer>()));  
+  
+  if (!mcPartsOutputWriteHandle.isValid()){
+    ATH_MSG_ERROR("Invalid WriteHandle for TruthParticleContainer with key: " << m_mcPartsOutputWriteHandleKey.key());
     return StatusCode::FAILURE;
   }
 
-  if ( !evtStore()->setConst( mcParts ).isSuccess() ) {
-    ATH_MSG_WARNING("Could not setConst TruthParticleContainer at ["
-                    << m_mcPartsOutputName.value() << "]");
-  }
+  //Setup ReadHandle for input McEventCollection
+  SG::ReadHandle<McEventCollection> mcEventsReadHandle(m_mcEventsReadHandleKey);
 
-  const McEventCollection * mcEvent = 0;
-  if ( evtStore()->retrieve( mcEvent, m_mcEventsName.value() ).isFailure() || 
-       0 == mcEvent ) {
-    ATH_MSG_WARNING("Could not retrieve McEventCollection at ["
-                    << m_mcEventsName.value() << "] !!"
-                    << endmsg
-                    << "TruthParticleContainer [" << m_mcPartsOutputName.value()
-                    << "] will be EMPTY !!");
-    return StatusCode::RECOVERABLE;
+  if (!mcEventsReadHandle.isValid()){
+     ATH_MSG_WARNING("Invalid ReadHamdle for McEventCollection with key ["
+		     << m_mcEventsReadHandleKey.key() << "] !!"
+		     << endmsg
+		     << "TruthParticleContainer [" << m_mcPartsOutputWriteHandleKey.key()
+		     << "] will be EMPTY !!");
+     return StatusCode::RECOVERABLE;
   }
-
-  ATH_MSG_DEBUG(" Found McEventCollection of size = "<< mcEvent->size() );
+  
+  ATH_MSG_DEBUG(" Found McEventCollection of size = "<< mcEventsReadHandle->size() );
   // do the actual convertion (it is merely an interface adaptation now...)
   //  selection for particles from minbias copied from the JetsFromTruthTool
 
@@ -193,11 +180,11 @@ StatusCode TruthParticleCnvTool::execute()
   const ITruthParticleVisitor* dummyVisitor = 0;
   bool all_good = true;
 
-  McEventCollection::const_iterator fEvt = mcEvent->begin();
-  McEventCollection::const_iterator lEvt = mcEvent->end();
+  McEventCollection::const_iterator fEvt = mcEventsReadHandle->begin();
+  McEventCollection::const_iterator lEvt = mcEventsReadHandle->end();
   PileUpClassification::findEventIterators(m_selectSignalType, fEvt,lEvt);
 
-  ATH_MSG_DEBUG(" Found McEventCollection iterators : "<< (fEvt-mcEvent->begin()) << " to "<< (lEvt-mcEvent->begin()) );
+  ATH_MSG_DEBUG(" Found McEventCollection iterators : "<< (fEvt-mcEventsReadHandle->begin()) << " to "<< (lEvt-mcEventsReadHandle->begin()) );
 
   for(McEventCollection::const_iterator it=fEvt ; it != lEvt; it++){
     const HepMC::GenEvent* evt = *it;
@@ -206,11 +193,11 @@ StatusCode TruthParticleCnvTool::execute()
     if (0 == evt) {
       continue;
     }
-    genEventIndex = (it - mcEvent->begin());
+    genEventIndex = (it - mcEventsReadHandle->begin());
     ATH_MSG_DEBUG(" adding event id="<< evt->signal_process_id()<<"  genEventIndex="<< genEventIndex );
 
     if( evt->signal_process_id() == 0 ) continue;
-    if (!this->convert( mcEvent, genEventIndex, mcParts, dummyVisitor ).isSuccess()) {
+    if (!this->convert( mcEventsReadHandle.ptr(), genEventIndex, mcPartsOutputWriteHandle.ptr(), dummyVisitor ).isSuccess()) {
       ATH_MSG_DEBUG("Failed to convert an event...");
       all_good = false;
     }
@@ -218,7 +205,7 @@ StatusCode TruthParticleCnvTool::execute()
 
   // VERY IMPORTANT ! Reset the index to the first GenEvent included
   // in this TruthParticleContainer. This will be used when read back from disk.
-  mcParts->setGenEvent( mcEvent, (fEvt - mcEvent->begin() ) );
+  mcPartsOutputWriteHandle->setGenEvent( mcEventsReadHandle.ptr(), (fEvt - mcEventsReadHandle->begin() ) );
 
   
   return all_good 
diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthParticleCnvTool.h b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthParticleCnvTool.h
index ce929d99f2b43e9985dbb181d02e0a17cba1181f..eaaa71c3b3fe9a374d656cab4f5fb3a34c1f6ba6 100755
--- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthParticleCnvTool.h
+++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthParticleCnvTool.h
@@ -40,15 +40,20 @@
 
 #include "EventKernel/IParticle.h" //> for ParticleDataType
 
+// CLHEP/HepMC includes
+#include "GeneratorObjects/McEventCollection.h"
+
 // McParticleKernel includes
 #include "McParticleKernel/ITruthParticleCnvTool.h"
 
 #include "McParticleEvent/PileUpClassification.h"
 
+// McParticleEvent includes
+#include "McParticleEvent/TruthParticleContainer.h"
+
 // Forward declarations
 class McEventCollection;
 class TruthParticle;
-class TruthParticleContainer;
 class ITruthIsolationTool;
 
 class TruthParticleCnvTool :  virtual public ITruthParticleCnvTool, 
@@ -107,13 +112,13 @@ class TruthParticleCnvTool :  virtual public ITruthParticleCnvTool,
   
   std::string m_vxCandidatesName;
 
-  /** Location of the McEventCollection the TruthParticles will be made from
+  /** ReadHandleKey for the McEventCollection the TruthParticles will be made from
    */
-  StringProperty m_mcEventsName;
+  SG::ReadHandleKey<McEventCollection> m_mcEventsReadHandleKey{this,"McEvents","GEN_AOD","ReadHandleKey for the input McEventCollection, from which the TruthParticles will be made from"};
 
-  /** Output TruthParticle location (built from the McEventCollection)
+  /** Output TruthParticle WriteHandleKey (built from the McEventCollection)
    */
-  StringProperty m_mcPartsOutputName;
+  SG::WriteHandleKey<TruthParticleContainer>  m_mcPartsOutputWriteHandleKey{this,"TruthParticlesOutput","SpclMC","WriteHandleKey for the output truth particles (built from the McEventCollection)"};
 
   /** Particle Property service
    */
diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthParticleFilterBaseTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthParticleFilterBaseTool.cxx
index 39e1a8efa9e6ca7cba76e204f530221006ff36d8..0f116889ea1c67c9c47c20aaaaa9b537174a429f 100755
--- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthParticleFilterBaseTool.cxx
+++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthParticleFilterBaseTool.cxx
@@ -13,9 +13,6 @@
 
 // FrameWork includes
 
-// CLHEP/HepMC includes
-#include "GeneratorObjects/McEventCollection.h"
-
 // McParticleKernel includes
 #include "McParticleKernel/IMcVtxFilterTool.h"
 #include "McParticleKernel/ITruthIsolationTool.h"
@@ -38,14 +35,6 @@ TruthParticleFilterBaseTool::TruthParticleFilterBaseTool( const std::string& typ
   // Property declaration
   // 
 
-  declareProperty( "McEvents",       
-		   m_mcEventsName = "TruthEvent",
-		   "Name of the input McEventCollection we want to filter" );
-
-  declareProperty( "McEventsOutput", 
-		   m_mcEventsOutputName = "GEN_AOD",
-		   "Name of the output McEventCollection which has been filtered" );
-
   declareProperty( "McVtxFilterTool",
 		   m_mcVtxFilterTool = McVtxFilterTool_t( "McVtxFilterTool",
 							  this ),
@@ -95,11 +84,15 @@ StatusCode TruthParticleFilterBaseTool::initialize()
     m_isolationTool.disable();
   }
 
+  //initialize DataHandleKeys
+  ATH_CHECK(m_mcEventsReadHandleKey.initialize());
+  ATH_CHECK(m_mcEventsOutputWriteHandleKey.initialize());
+  
   ATH_MSG_INFO
     (" DoEtIsolations: [" << std::boolalpha << m_doEtIsolation.value()
      << "]" << endmsg
-     << " McEvents:       [" << m_mcEventsName.value() << "]" << endmsg
-     << " McEventsOutput: [" << m_mcEventsOutputName.value() << "]");
+     << " McEvents:       [" << m_mcEventsReadHandleKey.key() << "]" << endmsg
+     << " McEventsOutput: [" << m_mcEventsOutputWriteHandleKey.key() << "]");
   
   // Give the concrete (derived) tool a chance to initialize itself
   if ( initializeTool().isFailure() ) {
@@ -132,49 +125,44 @@ StatusCode TruthParticleFilterBaseTool::execute()
 {  
   ATH_MSG_DEBUG("Executing " << name() << "...");
 
-  const McEventCollection * mcEvent = 0;
-  if ( evtStore()->retrieve( mcEvent, m_mcEventsName.value() ).isFailure() ||
-       0 == mcEvent ) {
-    ATH_MSG_ERROR("Could not retrieve McEventCollection at ["
-                  << m_mcEventsName.value() << "] !!");
-    return StatusCode::FAILURE;
-  }
+  //Setup Handle to read input container
+  SG::ReadHandle<McEventCollection> mcEventsReadHandle(m_mcEventsReadHandleKey);
 
-  McEventCollection * filterMcEvent = new McEventCollection;
-  if ( evtStore()->record( filterMcEvent, 
-                           m_mcEventsOutputName.value() ).isFailure() ) {
-    ATH_MSG_ERROR("Could not record McEventCollection at ["
-                  << m_mcEventsOutputName.value() << "] !!");
-    delete filterMcEvent;
-    filterMcEvent = 0;
+  if (!mcEventsReadHandle.isValid()){
+    ATH_MSG_ERROR("Invalid ReadHandle to McEventColleciton with key: " << m_mcEventsReadHandleKey.key());
     return StatusCode::FAILURE;
   }
 
-  if ( evtStore()->setConst( filterMcEvent ).isFailure() ) {
-    ATH_MSG_WARNING("Could not setConst McEventCollection at ["
-		    << m_mcEventsOutputName << "] !!");
+  //Setup WriteHandle, and then record new McEventCollection.
+  SG::WriteHandle<McEventCollection> mcEventsOutputWriteHandle(m_mcEventsOutputWriteHandleKey);
+  ATH_CHECK(mcEventsOutputWriteHandle.record(std::make_unique<McEventCollection>()));  
+  
+  if (!mcEventsOutputWriteHandle.isValid()){
+    ATH_MSG_ERROR("Invalid WriteHamdle for McEventCollection with key ["
+                  <<m_mcEventsOutputWriteHandleKey.key()  << "] !!");
+    return StatusCode::FAILURE;
   }
-
+  
   // Compute isolation for gamma/lepton.
   if ( m_doEtIsolation.value() ) {
     ATH_MSG_VERBOSE("Computing Et isolations...");
-    if ( m_isolationTool->buildEtIsolations(m_mcEventsName.value()).isFailure() ) {
+    if ( m_isolationTool->buildEtIsolations(m_mcEventsReadHandleKey.key()).isFailure() ) {
       ATH_MSG_ERROR("Could not compute Et isolations !!");
       return StatusCode::FAILURE;
     }
   } //> end do Et-isolation
 
-  if ( this->buildMcAod( mcEvent, filterMcEvent ).isFailure() ) {
+    if ( this->buildMcAod( mcEventsReadHandle.ptr(), mcEventsOutputWriteHandle.ptr() ).isFailure() ) {
     ATH_MSG_ERROR("Could not buildMcAod(in,out) !!");
     return StatusCode::FAILURE;
   }
 
-  // We have slimmed the filterMcEvent.
+  // We have slimmed the mcEventsOutputWriteHandle.
   // To not bias the map of isolation energies for this GenEvent, we alias
   // it to its original one
   if ( m_doEtIsolation.value() &&
-       !m_isolationTool->registerAlias( m_mcEventsOutputName.value(), 
-                                        m_mcEventsName.value() 
+       !m_isolationTool->registerAlias( m_mcEventsOutputWriteHandleKey.key(), 
+                                        m_mcEventsReadHandleKey.key() 
                                         ).isSuccess() ) {
     ATH_MSG_WARNING("Could not create an alias in the map of "\
 		    "isolation energies !");
diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthParticleFilterBaseTool.h b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthParticleFilterBaseTool.h
index 60148467640b5f9bbec50d7a277050f8c50aad42..cb6cb4108deb472f0ca65519cf86452fa8027d38 100755
--- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthParticleFilterBaseTool.h
+++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/TruthParticleFilterBaseTool.h
@@ -103,13 +103,13 @@ class TruthParticleFilterBaseTool : virtual public ITruthParticleFilterTool,
 
   // Containers
   
-  /** Location of the input McEventCollection one wants to filter
+  /** ReadHandleKey for the input McEventCollection one wants to filter
    */
-  StringProperty m_mcEventsName;
+  SG::ReadHandleKey<McEventCollection> m_mcEventsReadHandleKey{this,"McEvents","TruthEvent","ReadHandleKey for input  McEventCollection one wants to filter"};
 
   /** Location of the output McEventCollection which has been filtered
    */
-  StringProperty m_mcEventsOutputName;
+  SG::WriteHandleKey<McEventCollection> m_mcEventsOutputWriteHandleKey{this,"McEventsOutput","GEN_AOD","WriteHandleKey for the output McEventCollection which has been filtered"};
 
 }; 
 
diff --git a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/VtxBasedFilterTool.cxx b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/VtxBasedFilterTool.cxx
index 7de0d6e0c582825014edc814ba056c3a6451a44f..6d5a2c33915febd360296799682c04143d3d36c3 100755
--- a/PhysicsAnalysis/TruthParticleID/McParticleTools/src/VtxBasedFilterTool.cxx
+++ b/PhysicsAnalysis/TruthParticleID/McParticleTools/src/VtxBasedFilterTool.cxx
@@ -82,7 +82,7 @@ StatusCode VtxBasedFilterTool::buildMcAod( const McEventCollection* in,
       msg(MSG::WARNING)
         << "Could not launch filtering procedure for GenEvent number ["
         << iEvt << "] from McEventCollection ["
-        << m_mcEventsName << " !!"
+        << m_mcEventsReadHandleKey.key() << " !!"
         << endmsg
         << "  inEvt: " << inEvt << endmsg;
       continue;
@@ -104,7 +104,7 @@ StatusCode VtxBasedFilterTool::buildMcAod( const McEventCollection* in,
     if ( buildGenEvent( inEvt, outEvt ).isFailure() ) {
       msg(MSG::ERROR)
 	<< "Could filter GenEvent number [" << iEvt 
-	<< "] from McEventCollection ["     << m_mcEventsName 
+	<< "] from McEventCollection ["     << m_mcEventsReadHandleKey.key() 
 	<< "] !!" << endmsg;
       delete outEvt;
       outEvt = 0;
diff --git a/Projects/AnalysisBase/externals.txt b/Projects/AnalysisBase/externals.txt
index 9829ea2f7aaa6d1a543235d3b917245044127c1a..9fdceb7516c169b41510497f4e5c7a94f215a241 100644
--- a/Projects/AnalysisBase/externals.txt
+++ b/Projects/AnalysisBase/externals.txt
@@ -6,4 +6,4 @@
 # forbidden.
 
 # The version of atlas/atlasexternals to use:
-AnalysisBaseExternalsVersion = 2.0.1
+AnalysisBaseExternalsVersion = 2.0.2
diff --git a/Projects/AnalysisTop/externals.txt b/Projects/AnalysisTop/externals.txt
index fa4d1dc155d7b4a95a05805a81412fe0f05a3cdb..8e91a9213221448be285fecb387f78f512acb894 100644
--- a/Projects/AnalysisTop/externals.txt
+++ b/Projects/AnalysisTop/externals.txt
@@ -1,4 +1,4 @@
 # Versions of the various externals to build before starting the build of
 # this project, when doing a full stack nightly build.
 
-AnalysisBaseExternalsVersion = 2.0.1
+AnalysisBaseExternalsVersion = 2.0.2
diff --git a/Projects/AthDataQuality/externals.txt b/Projects/AthDataQuality/externals.txt
index 23b25f268def9879fd19ba6a194e266eedb58661..f183b1331e1c0ba9e953486a904532f7e8b0cc50 100644
--- a/Projects/AthDataQuality/externals.txt
+++ b/Projects/AthDataQuality/externals.txt
@@ -5,4 +5,4 @@
 # an "origin/" prefix before it. For tags however this is explicitly
 # forbidden.
 
-AtlasExternalsVersion = 2.0.1
+AtlasExternalsVersion = 2.0.2
diff --git a/Projects/AthSimulation/externals.txt b/Projects/AthSimulation/externals.txt
index ddf3b2e3e6c899154d289741940f4cbb860c3259..28a6ecd3b284a79dc1b22ee62a29c3245c33cd02 100644
--- a/Projects/AthSimulation/externals.txt
+++ b/Projects/AthSimulation/externals.txt
@@ -6,7 +6,7 @@
 # forbidden.
 
 # The version of atlas/atlasexternals to use:
-AthSimulationExternalsVersion = 2.0.1
+AthSimulationExternalsVersion = 2.0.2
 
 # The version of atlas/Gaudi to use:
 GaudiVersion = v30r1.009
diff --git a/Projects/Athena/externals.txt b/Projects/Athena/externals.txt
index ed66d8b9543a2b6e3e3d36f64ac33c08f9dcc04c..4aa015d80f5f5120dc76bd1e47430670062d75d0 100644
--- a/Projects/Athena/externals.txt
+++ b/Projects/Athena/externals.txt
@@ -6,7 +6,7 @@
 # forbidden.
 
 # The version of atlas/atlasexternals to use:
-AthenaExternalsVersion = 2.0.1
+AthenaExternalsVersion = 2.0.2
 
 # The version of atlas/Gaudi to use: 
 GaudiVersion = v30r1.009
diff --git a/Simulation/ISF/ISF_Core/ISF_Services/test/InputConverter_test.cxx b/Simulation/ISF/ISF_Core/ISF_Services/test/InputConverter_test.cxx
index 64baa56afc3f614d8637b63b08b464df3de9019d..048d22717413656af3037f3f59bd661e09b23690 100644
--- a/Simulation/ISF/ISF_Core/ISF_Services/test/InputConverter_test.cxx
+++ b/Simulation/ISF/ISF_Core/ISF_Services/test/InputConverter_test.cxx
@@ -355,7 +355,7 @@ TEST_F(InputConverter_test, passesFilters_one_nonpass_filter) {
   m_svc->setProperty("GenParticleFilters", "['ISFTesting::MockFilterTool/DummyFilter']");
   ASSERT_TRUE( m_svc->initialize().isSuccess() );
   ToolHandleArray<ISF::IGenParticleFilter>& genParticleFilters = getGenParticleFilters();
-  ASSERT_EQ (genParticleFilters.size(), 1);
+  ASSERT_EQ (genParticleFilters.size(), 1U);
   MockFilterTool* filterTool = dynamic_cast<MockFilterTool*>(&*(genParticleFilters[0]));
   ASSERT_TRUE( filterTool );
 
@@ -379,7 +379,7 @@ TEST_F(InputConverter_test, passesFilters_two_filters) {
   m_svc->setProperty("GenParticleFilters", "['ISFTesting::MockFilterTool/DummyFilterZ', 'ISFTesting::MockFilterTool/DummyFilterY']");
   ASSERT_TRUE( m_svc->initialize().isSuccess() );
   ToolHandleArray<ISF::IGenParticleFilter>& genParticleFilters = getGenParticleFilters();
-  ASSERT_EQ (genParticleFilters.size(), 2);
+  ASSERT_EQ (genParticleFilters.size(), 2U);
   MockFilterTool* filterTool1 = dynamic_cast<MockFilterTool*>(&*(genParticleFilters[0]));
   ASSERT_TRUE( filterTool1 );
   MockFilterTool* filterTool2 = dynamic_cast<MockFilterTool*>(&*(genParticleFilters[1]));
diff --git a/Trigger/TrigAnalysis/TrigBunchCrossingTool/test/ut_web_bunch_tool_test.cxx b/Trigger/TrigAnalysis/TrigBunchCrossingTool/test/ut_web_bunch_tool_test.cxx
index 09ba5d7669f8516eaad96c4a5c9345df74c87b0f..6ddfcf44ff3c3c1f290ae729f0ffd65a096b8388 100644
--- a/Trigger/TrigAnalysis/TrigBunchCrossingTool/test/ut_web_bunch_tool_test.cxx
+++ b/Trigger/TrigAnalysis/TrigBunchCrossingTool/test/ut_web_bunch_tool_test.cxx
@@ -43,6 +43,7 @@ int main() {
    SIMPLE_CHECK( tool.setProperty( "OutputLevel", MSG::DEBUG ) );
    SIMPLE_CHECK( tool.setProperty( "ServerAddress",
                                    "atlas-trigconf.cern.ch" ) );
+   SIMPLE_CHECK( tool.setProperty( "ServerTimeout", "60000" ) );
 
    // Try to load some configurations by key:
    SIMPLE_CHECK( tool.loadConfig( 104 ) );
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/AutoMonControl.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/AutoMonControl.cxx
index 06630dcc70f25c5fd81758658702df7b7ae15fca..28c0c20809b29f9501258cad0b16daa04fbae633 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/AutoMonControl.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/AutoMonControl.cxx
@@ -117,45 +117,45 @@ namespace TrigCostRootAnalysis {
   /**
    * Parse information about Tests from XML and create an AutoMonTest object.
    */
-  void AutoMonControl::parseTestXml(TXMLEngine* _xml, XMLNodePointer_t _listNode) {
-    XMLNodePointer_t _testNode = _xml->GetChild(_listNode);
+  void AutoMonControl::parseTestXml(TXMLEngine* xml, XMLNodePointer_t listNode) {
+    XMLNodePointer_t testNode = xml->GetChild(listNode);
 
-    while (_testNode != 0) {
+    while (testNode != 0) {
       bool doNotInstantiateTest = false;
       std::string testName, varName, varOpt, doFrac, alert, warn, advise;
       ConfKey_t confVar;
       VariableOption_t confVarOpts;
 
-      if (_xml->HasAttr(_testNode, "name")) {
-        testName = _xml->GetAttr(_testNode, "name");
+      if (xml->HasAttr(testNode, "name")) {
+        testName = xml->GetAttr(testNode, "name");
       } else {
         doNotInstantiateTest = true;
       }
-      if (_xml->HasAttr(_testNode, "var")) {
-        varName = _xml->GetAttr(_testNode, "var");
+      if (xml->HasAttr(testNode, "var")) {
+        varName = xml->GetAttr(testNode, "var");
       } else {
         doNotInstantiateTest = true;
       }
-      if (_xml->HasAttr(_testNode, "opt")) {
-        varOpt = _xml->GetAttr(_testNode, "opt");
+      if (xml->HasAttr(testNode, "opt")) {
+        varOpt = xml->GetAttr(testNode, "opt");
       } else {
         doNotInstantiateTest = true;
       }
-      if (_xml->HasAttr(_testNode, "alert")) {
-        alert = _xml->GetAttr(_testNode, "alert");
+      if (xml->HasAttr(testNode, "alert")) {
+        alert = xml->GetAttr(testNode, "alert");
       } else {
         doNotInstantiateTest = true;
       }
-      if (_xml->HasAttr(_testNode, "dofrac")) {
-        doFrac = _xml->GetAttr(_testNode, "dofrac");
+      if (xml->HasAttr(testNode, "dofrac")) {
+        doFrac = xml->GetAttr(testNode, "dofrac");
       } else {
         doFrac = "false";
       }
-      if (_xml->HasAttr(_testNode, "warn")) {
-        warn = _xml->GetAttr(_testNode, "warn");
+      if (xml->HasAttr(testNode, "warn")) {
+        warn = xml->GetAttr(testNode, "warn");
       }
-      if (_xml->HasAttr(_testNode, "advise")) {
-        advise = _xml->GetAttr(_testNode, "advise");
+      if (xml->HasAttr(testNode, "advise")) {
+        advise = xml->GetAttr(testNode, "advise");
       }
 
       if (!Config::config().getConfKeyNameFromString(varName, confVar)) {
@@ -210,17 +210,17 @@ namespace TrigCostRootAnalysis {
         Info("infoString", infoString.c_str());
       }
 
-      _testNode = _xml->GetNext(_testNode); //iterate to next test node
+      testNode = xml->GetNext(testNode); //iterate to next test node
     }//end loop over test Nodes
   }//end parseExamXml
 
   /**
    * Parse the control options, currently only the interest level
    */
-  void AutoMonControl::parseControlOptionsXml(TXMLEngine* _xml, XMLNodePointer_t _listNode) {
+  void AutoMonControl::parseControlOptionsXml(TXMLEngine* xml, XMLNodePointer_t listNode) {
     std::string levelString = "alert";
-    if (_xml->GetAttr(_listNode, "level")) {
-      levelString = _xml->GetAttr(_listNode, "level");
+    if (xml->GetAttr(listNode, "level")) {
+      levelString = xml->GetAttr(listNode, "level");
     }
 
     if (levelString == "warn" || levelString == "warning" || levelString == "Warn" || levelString == "Warning" ||
@@ -235,39 +235,39 @@ namespace TrigCostRootAnalysis {
   /**
    * Parse information about exam and create AutoMonExam object.
    */
-  void AutoMonControl::parseExamXml(TXMLEngine* _xml, XMLNodePointer_t _listNode) {
-    XMLNodePointer_t _examNode = _xml->GetChild(_listNode);
+  void AutoMonControl::parseExamXml(TXMLEngine* xml, XMLNodePointer_t listNode) {
+    XMLNodePointer_t examNode = xml->GetChild(listNode);
     MonitorBase* monitor;
 
-    while (_examNode != 0) {
+    while (examNode != 0) {
       bool doNotInstantiateExam = false;
       bool userDefinedRange = false;
       std::string nameString, monitorString, excludeString, specifyString, testsString, rangeString;
       monitor = nullptr;
 
-      if (_xml->HasAttr(_examNode, "name")) {
-        nameString = _xml->GetAttr(_examNode, "name");
+      if (xml->HasAttr(examNode, "name")) {
+        nameString = xml->GetAttr(examNode, "name");
       } else {
         doNotInstantiateExam = true;
       }
-      if (_xml->HasAttr(_examNode, "monitor")) {
-        monitorString = _xml->GetAttr(_examNode, "monitor");
+      if (xml->HasAttr(examNode, "monitor")) {
+        monitorString = xml->GetAttr(examNode, "monitor");
       } else {
         doNotInstantiateExam = true;
       }
-      if (_xml->HasAttr(_examNode, "tests")) {
-        testsString = _xml->GetAttr(_examNode, "tests");
+      if (xml->HasAttr(examNode, "tests")) {
+        testsString = xml->GetAttr(examNode, "tests");
       } else {
         doNotInstantiateExam = true;
       }
-      if (_xml->HasAttr(_examNode, "exclude")) {
-        excludeString = _xml->GetAttr(_examNode, "exclude");
+      if (xml->HasAttr(examNode, "exclude")) {
+        excludeString = xml->GetAttr(examNode, "exclude");
       }
-      if (_xml->HasAttr(_examNode, "specify")) {
-        specifyString = _xml->GetAttr(_examNode, "specify");
+      if (xml->HasAttr(examNode, "specify")) {
+        specifyString = xml->GetAttr(examNode, "specify");
       }
-      if (_xml->HasAttr(_examNode, "range")) {
-        rangeString = _xml->GetAttr(_examNode, "range");
+      if (xml->HasAttr(examNode, "range")) {
+        rangeString = xml->GetAttr(examNode, "range");
         userDefinedRange = true;
       }
 
@@ -314,7 +314,7 @@ namespace TrigCostRootAnalysis {
           testsString << '\n';
         }
       }
-      _examNode = _xml->GetNext(_examNode);   //Move on to next exam
+      examNode = xml->GetNext(examNode);   //Move on to next exam
     } // end of loop over exam nodes
   } // end parseExamXml
 
@@ -322,28 +322,28 @@ namespace TrigCostRootAnalysis {
    * Iterate through the XML and parse the different options.
    */
   void AutoMonControl::loadXml() {
-    TXMLEngine* _xml = new TXMLEngine();
-    XMLDocPointer_t _xmlDoc = _xml->ParseFile(m_xml_location.c_str());
-    XMLNodePointer_t _mainNode = _xml->DocGetRootElement(_xmlDoc);
+    TXMLEngine* xml = new TXMLEngine();
+    XMLDocPointer_t xmlDoc = xml->ParseFile(m_xml_location.c_str());
+    XMLNodePointer_t mainNode = xml->DocGetRootElement(xmlDoc);
 
-    if (_xml->GetNodeName(_mainNode) != std::string("AutoCostMon")) {
+    if (xml->GetNodeName(mainNode) != std::string("AutoCostMon")) {
       std::cout << "XML Head node not correct (AutoCostMon)" << '\n';
     }
-    XMLNodePointer_t _listNode = _xml->GetChild(_mainNode);
-    while (_listNode != 0) {
-      const std::string _listName = _xml->GetNodeName(_listNode);
-      if (_listName == "ControlOptions") {
-        parseControlOptionsXml(_xml, _listNode);
+    XMLNodePointer_t listNode = xml->GetChild(mainNode);
+    while (listNode != 0) {
+      const std::string listName = xml->GetNodeName(listNode);
+      if (listName == "ControlOptions") {
+        parseControlOptionsXml(xml, listNode);
       }
 
-      if (_listName == "TestDef") {
-        parseTestXml(_xml, _listNode);
+      if (listName == "TestDef") {
+        parseTestXml(xml, listNode);
       }
 
-      if (_listName == "ExamDef") {
-        parseExamXml(_xml, _listNode);
+      if (listName == "ExamDef") {
+        parseExamXml(xml, listNode);
       }
-      _listNode = _xml->GetNext(_listNode); //go to next node
+      listNode = xml->GetNext(listNode); //go to next node
     } // end loop over nodes
   }// end loadxml
 
@@ -357,4 +357,4 @@ namespace TrigCostRootAnalysis {
     m_test_results.saveOutput();
     m_test_results.printResults();
   }// end runAutoMonitoring
-}// namespace TrigCostRootAnalysis
\ No newline at end of file
+}// namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/AutoMonResult.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/AutoMonResult.cxx
index a6f53490825f249bf52b02e56d850779087d66af..ed8eb3b5ae17ceb997e2d3e7b2483a6477020f13 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/AutoMonResult.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/AutoMonResult.cxx
@@ -46,33 +46,33 @@ namespace TrigCostRootAnalysis {
    */
 
   void AutoMonResult::saveOutput() const {
-    const std::string _output = Config::config().getStr(kOutputDirectory) + "/AutoMonResult.json";
+    const std::string output = Config::config().getStr(kOutputDirectory) + "/AutoMonResult.json";
 
-    Info("AutoMonResult::saveOutput", ("Outputting AutoMonResult to " + _output).c_str());
-    std::ofstream _fout(_output.c_str());
+    Info("AutoMonResult::saveOutput", ("Outputting AutoMonResult to " + output).c_str());
+    std::ofstream fout(output.c_str());
 
-    JsonExport _json;
-    _json.addNode(_fout, "AutoMonResults");
+    JsonExport json;
+    json.addNode(fout, "AutoMonResults");
 
-    saveList(_json, m_alert_list, _fout, AlertStatus::ALERT);
+    saveList(json, m_alert_list, fout, AlertStatus::ALERT);
 
     if (m_interest_level >= AlertStatus::WARNING) {
-      saveList(_json, m_warning_list, _fout, AlertStatus::WARNING);
+      saveList(json, m_warning_list, fout, AlertStatus::WARNING);
     }
     if (m_interest_level >= AlertStatus::ADVISORY) {
-      saveList(_json, m_advisory_list, _fout, AlertStatus::ADVISORY);
+      saveList(json, m_advisory_list, fout, AlertStatus::ADVISORY);
     }
 
-    _json.endNode(_fout);
-    _fout.close();
+    json.endNode(fout);
+    fout.close();
   } //end saveOutput
 
   /*
    * Save output of a particular list to the JSON file.
    */
 
-  void AutoMonResult::saveList(JsonExport _json, std::map < const CounterBase*, const AutoMonTest* > list,
-                               std::ofstream& _fout, const AlertStatus& alert) const {
+  void AutoMonResult::saveList(JsonExport json, std::map < const CounterBase*, const AutoMonTest* > list,
+                               std::ofstream& fout, const AlertStatus& alert) const {
     for (auto list_iter = list.begin(); list_iter != list.end(); ++list_iter) {
       const std::string alertLevel = getResultString(alert);
       const std::string testName = (list_iter->second)->getTestName();
@@ -85,16 +85,16 @@ namespace TrigCostRootAnalysis {
         std::to_string((list_iter->first)->getValue((list_iter->second)->getVarName(),
                                                     (list_iter->second)->getVarOption()));
 
-      _json.addNode(_fout, counterName);
-      _json.addLeafCustom(_fout, "alertLevel", alertLevel);
-      _json.addLeafCustom(_fout, "testName", testName);
-      _json.addLeafCustom(_fout, "counterName", counterName);
-      _json.addLeafCustom(_fout, "MonitorName", MonitorName);
-      _json.addLeafCustom(_fout, "range", range);
-      _json.addLeafCustom(_fout, "AboveOrBelow", AboveOrBelow);
-      _json.addLeafCustom(_fout, "threshold", threshold);
-      _json.addLeafCustom(_fout, "value", value);
-      _json.endNode(_fout);
+      json.addNode(fout, counterName);
+      json.addLeafCustom(fout, "alertLevel", alertLevel);
+      json.addLeafCustom(fout, "testName", testName);
+      json.addLeafCustom(fout, "counterName", counterName);
+      json.addLeafCustom(fout, "MonitorName", MonitorName);
+      json.addLeafCustom(fout, "range", range);
+      json.addLeafCustom(fout, "AboveOrBelow", AboveOrBelow);
+      json.addLeafCustom(fout, "threshold", threshold);
+      json.addLeafCustom(fout, "value", value);
+      json.endNode(fout);
     }// end of loop over list
   } // end saveList
 
@@ -144,4 +144,4 @@ namespace TrigCostRootAnalysis {
       return;
     }
   } //end addToList
-}// namespace TrigCostRootAnalysis
\ No newline at end of file
+}// namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/Config.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/Config.cxx
index c42f2e400b35c3a6f9558e8b9fffa2a5104954c5..74c19699a28660894af7133d7b7ec363b0eef850 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/Config.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/Config.cxx
@@ -56,389 +56,389 @@ namespace TrigCostRootAnalysis {
     // Flags
 
     // Level
-    static Int_t _doL2 = kFALSE;
-    static Int_t _doEF = kFALSE;
-    static Int_t _doL2EF = kFALSE;
-    static Int_t _doHLT = kFALSE;
+    static Int_t doL2 = kFALSE;
+    static Int_t doEF = kFALSE;
+    static Int_t doL2EF = kFALSE;
+    static Int_t doHLT = kFALSE;
     // Range Summaries
-    static Int_t _summaryPerHLTConfig = kFALSE;
-    static Int_t _summaryPerLumiBlock = kFALSE;
-    static Int_t _summaryAll = kFALSE;
+    static Int_t summaryPerHLTConfig = kFALSE;
+    static Int_t summaryPerLumiBlock = kFALSE;
+    static Int_t summaryAll = kFALSE;
     // Monitors
-    static Int_t _monitorAll = kFALSE;
-    static Int_t _monitorChains = kFALSE;
-    static Int_t _monitorChainAlgs = kFALSE;
-    static Int_t _monitorSequences = kFALSE;
-    static Int_t _monitorSequenceAlgs = kFALSE;
-    static Int_t _monitorAlgs = kFALSE;
-    static Int_t _monitorAlgClass = kFALSE;
-    static Int_t _monitorAllChainSeqAlgs = kFALSE;
-    static Int_t _monitorROS = kFALSE;
-    static Int_t _monitorAllROS = kFALSE;
-    static Int_t _monitorROBIN = kFALSE;
-    static Int_t _monitorROSAlgs = kFALSE;
-    static Int_t _monitorROSChains = kFALSE;
-    static Int_t _monitorL1 = kFALSE;
-    static Int_t _monitorFullEvent = kFALSE;
-    static Int_t _monitorGlobals = kFALSE;
-    static Int_t _monitorEventProfile = kFALSE;
-    static Int_t _monitorROI = kFALSE;
-    static Int_t _monitorRates = kFALSE;
-    static Int_t _monitorRatesUpgrade = kFALSE;
-    static Int_t _monitorSliceCPU = kFALSE;
+    static Int_t monitorAll = kFALSE;
+    static Int_t monitorChains = kFALSE;
+    static Int_t monitorChainAlgs = kFALSE;
+    static Int_t monitorSequences = kFALSE;
+    static Int_t monitorSequenceAlgs = kFALSE;
+    static Int_t monitorAlgs = kFALSE;
+    static Int_t monitorAlgClass = kFALSE;
+    static Int_t monitorAllChainSeqAlgs = kFALSE;
+    static Int_t monitorROS = kFALSE;
+    static Int_t monitorAllROS = kFALSE;
+    static Int_t monitorROBIN = kFALSE;
+    static Int_t monitorROSAlgs = kFALSE;
+    static Int_t monitorROSChains = kFALSE;
+    static Int_t monitorL1 = kFALSE;
+    static Int_t monitorFullEvent = kFALSE;
+    static Int_t monitorGlobals = kFALSE;
+    static Int_t monitorEventProfile = kFALSE;
+    static Int_t monitorROI = kFALSE;
+    static Int_t monitorRates = kFALSE;
+    static Int_t monitorRatesUpgrade = kFALSE;
+    static Int_t monitorSliceCPU = kFALSE;
     // Output
-    static Int_t _doOutputPng = kFALSE;
-    static Int_t _doOutputPdf = kFALSE;
-    static Int_t _doOutputHist = kFALSE;
-    static Int_t _doOutputCsv = kFALSE;
-    static Int_t _doOutputXML = kFALSE;
-    static Int_t _doOutputRatesGraph = kFALSE;
-    static Int_t _doOutputMenus = kFALSE;
-    static Int_t _doOutputCanvas = kFALSE;
-    static Int_t _linkOutputDirectory = kFALSE;
-    static Int_t _writeDummyPSXML = kFALSE;
+    static Int_t doOutputPng = kFALSE;
+    static Int_t doOutputPdf = kFALSE;
+    static Int_t doOutputHist = kFALSE;
+    static Int_t doOutputCsv = kFALSE;
+    static Int_t doOutputXML = kFALSE;
+    static Int_t doOutputRatesGraph = kFALSE;
+    static Int_t doOutputMenus = kFALSE;
+    static Int_t doOutputCanvas = kFALSE;
+    static Int_t linkOutputDirectory = kFALSE;
+    static Int_t writeDummyPSXML = kFALSE;
     // Misc
-    static Int_t _ratesMode = kFALSE;
-    static Int_t _ratesUpgradeMode = kFALSE;
-    static Int_t _costMode = kFALSE;
-    static Int_t _onlineMode = kFALSE;
-    static Int_t _outputModeStandard = kFALSE;
-    static Int_t _outputTagFromAthena = kFALSE;
-    static Int_t _cleanAll = kFALSE;
-    static Int_t _doEBWeighting = kFALSE;
-    static Int_t _writeEBWeightXML = kFALSE;
-    static Int_t _debug = kFALSE;
-    static Int_t _ratesForcePass = kFALSE;
-    static Int_t _ratesScaleByPS = kFALSE;
-    static Int_t _matchL1RandomToOnline = kFALSE;
-    static Int_t _doUniqueRates = kFALSE;
-    static Int_t _doGroupOverlap = kFALSE;
-    static Int_t _doAllOverlap = kFALSE;
-    static Int_t _showVersion = kFALSE;
-    static Int_t _extraplolate8To13 = kFALSE;
-    static Int_t _extraplolate13To5 = kFALSE;
-    static Int_t _doNotWriteMetadata = kFALSE;
-    static Int_t _noMsgSup = kFALSE;
-    static Int_t _noOnlineDTCorrection = kFALSE;
-    static Int_t _noUpgradePileupScaling = kFALSE;
-    static Int_t _noUpgradeBunchScaling = kFALSE;
-    static Int_t _doCPS = kFALSE;
-    static Int_t _patternsInvert = kFALSE;
-    static Int_t _isCPUPrediction;
-    static Int_t _doUpgradeRatesScan = kFALSE;
-    static Int_t _patternsExactMatch = kFALSE;
-    static Int_t _ignoreNonPhysBunchGroups = kFALSE;
-    static Int_t _noLBRescaling = kFALSE;
-    static Int_t _useDefaultLumiScalingExceptions = kFALSE;
-    static Int_t _useDefaultExponentialScalingList = kFALSE;
-    static Int_t _upgradeMergeTOBOverlap = kFALSE;
-    static Int_t _doExponentialMu = kFALSE;
-    static Int_t _invertHighMuRunVeto = kFALSE;
-    static Int_t _ignoreGRL = kFALSE;
+    static Int_t ratesMode = kFALSE;
+    static Int_t ratesUpgradeMode = kFALSE;
+    static Int_t costMode = kFALSE;
+    static Int_t onlineMode = kFALSE;
+    static Int_t outputModeStandard = kFALSE;
+    static Int_t outputTagFromAthena = kFALSE;
+    static Int_t cleanAll = kFALSE;
+    static Int_t doEBWeighting = kFALSE;
+    static Int_t writeEBWeightXML = kFALSE;
+    static Int_t debug = kFALSE;
+    static Int_t ratesForcePass = kFALSE;
+    static Int_t ratesScaleByPS = kFALSE;
+    static Int_t matchL1RandomToOnline = kFALSE;
+    static Int_t doUniqueRates = kFALSE;
+    static Int_t doGroupOverlap = kFALSE;
+    static Int_t doAllOverlap = kFALSE;
+    static Int_t showVersion = kFALSE;
+    static Int_t extraplolate8To13 = kFALSE;
+    static Int_t extraplolate13To5 = kFALSE;
+    static Int_t doNotWriteMetadata = kFALSE;
+    static Int_t noMsgSup = kFALSE;
+    static Int_t noOnlineDTCorrection = kFALSE;
+    static Int_t noUpgradePileupScaling = kFALSE;
+    static Int_t noUpgradeBunchScaling = kFALSE;
+    static Int_t doCPS = kFALSE;
+    static Int_t patternsInvert = kFALSE;
+    static Int_t isCPUPrediction;
+    static Int_t doUpgradeRatesScan = kFALSE;
+    static Int_t patternsExactMatch = kFALSE;
+    static Int_t ignoreNonPhysBunchGroups = kFALSE;
+    static Int_t noLBRescaling = kFALSE;
+    static Int_t useDefaultLumiScalingExceptions = kFALSE;
+    static Int_t useDefaultExponentialScalingList = kFALSE;
+    static Int_t upgradeMergeTOBOverlap = kFALSE;
+    static Int_t doExponentialMu = kFALSE;
+    static Int_t invertHighMuRunVeto = kFALSE;
+    static Int_t ignoreGRL = kFALSE;
 
     // User options
-    std::vector< std::string > _inputFiles;
-    std::vector< std::string > _patternsMonitor;
-    std::vector< std::string > _patternsOutput;
-    std::vector< std::string > _patternsUnique;
-    std::vector< std::string > _patternsExclude;
-    std::vector< std::string > _patternsOverlap;
-    std::vector< std::string > _patternsNoLumiWeight;
-    std::vector< std::string > _patternsNoMuLumiWeight;
-    std::vector< std::string > _patternsNoBunchLumiWeight;
-    std::vector< std::string > _patternsExpoMuLumiWeight;
-    std::vector< Int_t > _useOnlyTheseBCIDs;
-    std::vector< Int_t > _eventPicker;
-    std::string _fileList = "";
-    std::string _fullEventFileList = "";
-    std::string _treeName = "trig_cost";
-    std::string _L2Prefix = "TrigCostL2_";
-    std::string _EFPrefix = "TrigCostEF_";
-    std::string _HLTPrefix = "TrigCostHLT_";
-    std::string _configPrefix = "trig_costMeta/TrigConfTree";
-    std::string _outRootFilename = "TrigCostRoot_Results.root";
-    std::string _outImageDirectory = "images";
-    std::string _outCSVDirectory = "csv";
-    std::string _outXMLDirectory = "xml";
-    std::string _outRatesGraphFilename = "ratesGraph.json";
-    std::string _outRatesWarningsFilename = "rates_WARNINGS.txt";
-    std::string _outDirectory = "costMonitoring_%t_%r";
-    std::string _outRootDirectory = ".";
-    std::string _outTag = "LOCAL";
-    std::string _userDetails = "";
-    std::string _menuXML = "";//"HLTconfig_Physics_pp_v5_19.2.0.xml";
-    std::string _prescaleXML1 = "";//"cool_208354_366_366.xml"; // This is an old XML for test purposes
-    std::string _prescaleXML2 = "";
-    std::string _ROSXML = "rob-ros-robin-2015.xml";
-    std::string _version = "TrigCostRootAnalysis-00-10-13";
-    std::string _upgradeScenario = "";
-    std::string _jira = "";
-    std::string _multiRun = "";
-    std::string _AutoMonXMLName = "AutoMonConfig.xml";
-
-    Int_t _lbBegin = INT_MIN;
-    Int_t _lbEnd = INT_MAX;
-    UInt_t _nEvents = INT_MAX;
-    UInt_t _nSkip = 0;
-    UInt_t _nThread = 5;
-    UInt_t _nLbFullSummary = 4;
-    UInt_t _nLbFullSkip = 50;
-    UInt_t _nHLTConfigSummary = 3;
-    UInt_t _nLbPerHLTConfig = 20;
-    UInt_t _defaultLBLength = 30;
-    UInt_t _slowThreshold = 1000;
-    UInt_t _slowEventThreshold = 120000;
-    UInt_t _histogramBins = 50;
-    UInt_t _maxNumberFullEvents = 10;
-    UInt_t _ratesOverlapWarning = 80;
-    UInt_t _maxMultiSeed = 1;
-    UInt_t _runNumber = 0;
-    UInt_t _messageWait = 10;
-    Float_t _rateFallbackPrescaleL1 = FLT_MIN;
-    Float_t _rateFallbackPrescaleHLT = FLT_MIN;
-    Float_t _basicWeight = 1.;
-    Float_t _predictionLumi = 0.;
-    Float_t _runLumi = 0.;
-    Float_t _binMin = FLT_MIN;
-    Float_t _binMax = FLT_MIN;
-    Float_t _targetMu = 0.;
-    Float_t _expoRateScaleModifierL1 = 0.105; // From high-mu run
-    Float_t _expoRateScaleModifierHLT = 0.111; // From high-mu run
+    std::vector< std::string > inputFiles;
+    std::vector< std::string > patternsMonitor;
+    std::vector< std::string > patternsOutput;
+    std::vector< std::string > patternsUnique;
+    std::vector< std::string > patternsExclude;
+    std::vector< std::string > patternsOverlap;
+    std::vector< std::string > patternsNoLumiWeight;
+    std::vector< std::string > patternsNoMuLumiWeight;
+    std::vector< std::string > patternsNoBunchLumiWeight;
+    std::vector< std::string > patternsExpoMuLumiWeight;
+    std::vector< Int_t > useOnlyTheseBCIDs;
+    std::vector< Int_t > eventPicker;
+    std::string fileList = "";
+    std::string fullEventFileList = "";
+    std::string treeName = "trig_cost";
+    std::string L2Prefix = "TrigCostL2_";
+    std::string EFPrefix = "TrigCostEF_";
+    std::string HLTPrefix = "TrigCostHLT_";
+    std::string configPrefix = "trig_costMeta/TrigConfTree";
+    std::string outRootFilename = "TrigCostRoot_Results.root";
+    std::string outImageDirectory = "images";
+    std::string outCSVDirectory = "csv";
+    std::string outXMLDirectory = "xml";
+    std::string outRatesGraphFilename = "ratesGraph.json";
+    std::string outRatesWarningsFilename = "rates_WARNINGS.txt";
+    std::string outDirectory = "costMonitoring_%t_%r";
+    std::string outRootDirectory = ".";
+    std::string outTag = "LOCAL";
+    std::string userDetails = "";
+    std::string menuXML = "";//"HLTconfig_Physics_pp_v5_19.2.0.xml";
+    std::string prescaleXML1 = "";//"cool_208354_366_366.xml"; // This is an old XML for test purposes
+    std::string prescaleXML2 = "";
+    std::string ROSXML = "rob-ros-robin-2015.xml";
+    std::string version = "TrigCostRootAnalysis-00-10-13";
+    std::string upgradeScenario = "";
+    std::string jira = "";
+    std::string multiRun = "";
+    std::string AutoMonXMLName = "AutoMonConfig.xml";
+
+    Int_t lbBegin = INT_MIN;
+    Int_t lbEnd = INT_MAX;
+    UInt_t nEvents = INT_MAX;
+    UInt_t nSkip = 0;
+    UInt_t nThread = 5;
+    UInt_t nLbFullSummary = 4;
+    UInt_t nLbFullSkip = 50;
+    UInt_t nHLTConfigSummary = 3;
+    UInt_t nLbPerHLTConfig = 20;
+    UInt_t defaultLBLength = 30;
+    UInt_t slowThreshold = 1000;
+    UInt_t slowEventThreshold = 120000;
+    UInt_t histogramBins = 50;
+    UInt_t maxNumberFullEvents = 10;
+    UInt_t ratesOverlapWarning = 80;
+    UInt_t maxMultiSeed = 1;
+    UInt_t runNumber = 0;
+    UInt_t messageWait = 10;
+    Float_t rateFallbackPrescaleL1 = FLT_MIN;
+    Float_t rateFallbackPrescaleHLT = FLT_MIN;
+    Float_t basicWeight = 1.;
+    Float_t predictionLumi = 0.;
+    Float_t runLumi = 0.;
+    Float_t binMin = FLT_MIN;
+    Float_t binMax = FLT_MIN;
+    Float_t targetMu = 0.;
+    Float_t expoRateScaleModifierL1 = 0.105; // From high-mu run
+    Float_t expoRateScaleModifierHLT = 0.111; // From high-mu run
 
     // Parse CLI
-    Int_t _status = 0;
+    Int_t status = 0;
     while (kTRUE) {
-      static struct option _longOptions[] = {
+      static struct option longOptions[] = {
         {
           "help", no_argument, 0, 0
         },
         {
-          "cleanAll", no_argument, &_cleanAll, 1
+          "cleanAll", no_argument, &cleanAll, 1
         },
         {
-          "debug", no_argument, &_debug, 1
+          "debug", no_argument, &debug, 1
         },
         {
-          "noMsgSuppression", no_argument, &_noMsgSup, 1
+          "noMsgSuppression", no_argument, &noMsgSup, 1
         },
         {
-          "doL2", no_argument, &_doL2, 1
+          "doL2", no_argument, &doL2, 1
         },
         {
-          "doEF", no_argument, &_doEF, 1
+          "doEF", no_argument, &doEF, 1
         },
         {
-          "doL2EF", no_argument, &_doL2EF, 1
+          "doL2EF", no_argument, &doL2EF, 1
         },
         {
-          "doHLT", no_argument, &_doHLT, 1
+          "doHLT", no_argument, &doHLT, 1
         },
         {
-          "doOutputCanvas", no_argument, &_doOutputCanvas, 1
+          "doOutputCanvas", no_argument, &doOutputCanvas, 1
         },
         {
-          "doOutputHist", no_argument, &_doOutputHist, 1
+          "doOutputHist", no_argument, &doOutputHist, 1
         },
         {
-          "doOutputPNG", no_argument, &_doOutputPng, 1
+          "doOutputPNG", no_argument, &doOutputPng, 1
         },
         {
-          "doOutputPDF", no_argument, &_doOutputPdf, 1
+          "doOutputPDF", no_argument, &doOutputPdf, 1
         },
         {
-          "doOutputCSV", no_argument, &_doOutputCsv, 1
+          "doOutputCSV", no_argument, &doOutputCsv, 1
         },
         {
-          "doOutputRatesXML", no_argument, &_doOutputXML, 1
+          "doOutputRatesXML", no_argument, &doOutputXML, 1
         },
         {
-          "doOutputRatesGraph", no_argument, &_doOutputRatesGraph, 1
+          "doOutputRatesGraph", no_argument, &doOutputRatesGraph, 1
         },
         {
-          "doOutputMenus", no_argument, &_doOutputMenus, 1
+          "doOutputMenus", no_argument, &doOutputMenus, 1
         },
         {
-          "outputTagFromAthena", no_argument, &_outputTagFromAthena, 1
+          "outputTagFromAthena", no_argument, &outputTagFromAthena, 1
         },
         {
-          "monitorAll", no_argument, &_monitorAll, 1
+          "monitorAll", no_argument, &monitorAll, 1
         },
         {
-          "monitorChains", no_argument, &_monitorChains, 1
+          "monitorChains", no_argument, &monitorChains, 1
         },
         {
-          "monitorChainAlgs", no_argument, &_monitorChainAlgs, 1
+          "monitorChainAlgs", no_argument, &monitorChainAlgs, 1
         },
         {
-          "monitorSequences", no_argument, &_monitorSequences, 1
+          "monitorSequences", no_argument, &monitorSequences, 1
         },
         {
-          "monitorSequenceAlgs", no_argument, &_monitorSequenceAlgs, 1
+          "monitorSequenceAlgs", no_argument, &monitorSequenceAlgs, 1
         },
         {
-          "monitorAlgs", no_argument, &_monitorAlgs, 1
+          "monitorAlgs", no_argument, &monitorAlgs, 1
         },
         {
-          "monitorAlgClass", no_argument, &_monitorAlgClass, 1
+          "monitorAlgClass", no_argument, &monitorAlgClass, 1
         },
         {
-          "monitorAllChainSeqAlgs", no_argument, &_monitorAllChainSeqAlgs, 1
+          "monitorAllChainSeqAlgs", no_argument, &monitorAllChainSeqAlgs, 1
         },
         {
-          "monitorAllChainSeqAlg", no_argument, &_monitorAllChainSeqAlgs, 1
+          "monitorAllChainSeqAlg", no_argument, &monitorAllChainSeqAlgs, 1
         }, // Back comp
         {
-          "monitorROS", no_argument, &_monitorROS, 1
+          "monitorROS", no_argument, &monitorROS, 1
         },
         {
-          "monitorAllROS", no_argument, &_monitorAllROS, 1
+          "monitorAllROS", no_argument, &monitorAllROS, 1
         },
         {
-          "monitorROBIN", no_argument, &_monitorROBIN, 1
+          "monitorROBIN", no_argument, &monitorROBIN, 1
         },
         {
-          "monitorROSAlgs", no_argument, &_monitorROSAlgs, 1
+          "monitorROSAlgs", no_argument, &monitorROSAlgs, 1
         },
         {
-          "monitorROSChains", no_argument, &_monitorROSChains, 1
+          "monitorROSChains", no_argument, &monitorROSChains, 1
         },
         {
-          "monitorROI", no_argument, &_monitorROI, 1
+          "monitorROI", no_argument, &monitorROI, 1
         },
         {
-          "monitorL1", no_argument, &_monitorL1, 1
+          "monitorL1", no_argument, &monitorL1, 1
         },
         {
-          "monitorFullEvent", no_argument, &_monitorFullEvent, 1
+          "monitorFullEvent", no_argument, &monitorFullEvent, 1
         },
         {
-          "monitorGlobals", no_argument, &_monitorGlobals, 1
+          "monitorGlobals", no_argument, &monitorGlobals, 1
         },
         {
-          "monitorEventProfile", no_argument, &_monitorEventProfile, 1
+          "monitorEventProfile", no_argument, &monitorEventProfile, 1
         },
         {
-          "monitorRates", no_argument, &_monitorRates, 1
+          "monitorRates", no_argument, &monitorRates, 1
         },
         {
-          "monitorRatesUpgrade", no_argument, &_monitorRatesUpgrade, 1
+          "monitorRatesUpgrade", no_argument, &monitorRatesUpgrade, 1
         },
         {
-          "monitorSliceCPU", no_argument, &_monitorSliceCPU, 1
+          "monitorSliceCPU", no_argument, &monitorSliceCPU, 1
         },
         {
-          "useEBWeight", no_argument, &_doEBWeighting, 1
+          "useEBWeight", no_argument, &doEBWeighting, 1
         },
         {
-          "doCPS", no_argument, &_doCPS, 1
+          "doCPS", no_argument, &doCPS, 1
         },
         {
-          "writeEBXML", no_argument, &_writeEBWeightXML, 1
+          "writeEBXML", no_argument, &writeEBWeightXML, 1
         },
         {
-          "summaryPerHLTConfig", no_argument, &_summaryPerHLTConfig, 1
+          "summaryPerHLTConfig", no_argument, &summaryPerHLTConfig, 1
         },
         {
-          "summaryPerLumiBlock", no_argument, &_summaryPerLumiBlock, 1
+          "summaryPerLumiBlock", no_argument, &summaryPerLumiBlock, 1
         },
         {
-          "summaryAll", no_argument, &_summaryAll, 1
+          "summaryAll", no_argument, &summaryAll, 1
         },
         {
-          "forceAllPass", no_argument, &_ratesForcePass, 1
+          "forceAllPass", no_argument, &ratesForcePass, 1
         },
         {
-          "doUniqueRates", no_argument, &_doUniqueRates, 1
+          "doUniqueRates", no_argument, &doUniqueRates, 1
         },
         {
-          "doGroupOverlap", no_argument, &_doGroupOverlap, 1
+          "doGroupOverlap", no_argument, &doGroupOverlap, 1
         },
         {
-          "doAllOverlap", no_argument, &_doAllOverlap, 1
+          "doAllOverlap", no_argument, &doAllOverlap, 1
         },
         {
-          "scaleRatesByPS", no_argument, &_ratesScaleByPS, 1
+          "scaleRatesByPS", no_argument, &ratesScaleByPS, 1
         },
         {
-          "writeDummyPSXML", no_argument, &_writeDummyPSXML, 1
+          "writeDummyPSXML", no_argument, &writeDummyPSXML, 1
         },
         {
-          "version", no_argument, &_showVersion, 1
+          "version", no_argument, &showVersion, 1
         },
         {
-          "linkOutputDirectory", no_argument, &_linkOutputDirectory, 1
+          "linkOutputDirectory", no_argument, &linkOutputDirectory, 1
         },
         {
-          "extrapolate8To13", no_argument, &_extraplolate8To13, 1
+          "extrapolate8To13", no_argument, &extraplolate8To13, 1
         },
         {
-          "extrapolate13To5", no_argument, &_extraplolate13To5, 1
+          "extrapolate13To5", no_argument, &extraplolate13To5, 1
         },
         {
-          "doNotWriteMetadata", no_argument, &_doNotWriteMetadata, 1
+          "doNotWriteMetadata", no_argument, &doNotWriteMetadata, 1
         },
         {
-          "matchL1RandomToOnline", no_argument, &_matchL1RandomToOnline, 1
+          "matchL1RandomToOnline", no_argument, &matchL1RandomToOnline, 1
         },
         {
-          "ratesUpgradeMode", no_argument, &_ratesUpgradeMode, 1
+          "ratesUpgradeMode", no_argument, &ratesUpgradeMode, 1
         },
         {
-          "ratesMode", no_argument, &_ratesMode, 1
+          "ratesMode", no_argument, &ratesMode, 1
         },
         {
-          "costMode", no_argument, &_costMode, 1
+          "costMode", no_argument, &costMode, 1
         },
         {
-          "onlineMode", no_argument, &_onlineMode, 1
+          "onlineMode", no_argument, &onlineMode, 1
         },
         {
-          "outputModeStandard", no_argument, &_outputModeStandard, 1
+          "outputModeStandard", no_argument, &outputModeStandard, 1
         },
         {
-          "noOnlineDTCorrection", no_argument, &_noOnlineDTCorrection, 1
+          "noOnlineDTCorrection", no_argument, &noOnlineDTCorrection, 1
         },
         {
-          "noUpgradePileupScaling", no_argument, &_noUpgradePileupScaling, 1
+          "noUpgradePileupScaling", no_argument, &noUpgradePileupScaling, 1
         },
         {
-          "noUpgradeBunchScaling", no_argument, &_noUpgradeBunchScaling, 1
+          "noUpgradeBunchScaling", no_argument, &noUpgradeBunchScaling, 1
         },
         {
-          "patternsInvert", no_argument, &_patternsInvert, 1
+          "patternsInvert", no_argument, &patternsInvert, 1
         },
         {
-          "isCPUPrediction", no_argument, &_isCPUPrediction, 1
+          "isCPUPrediction", no_argument, &isCPUPrediction, 1
         },
         {
-          "doUpgradeRatesScan", no_argument, &_doUpgradeRatesScan, 1
+          "doUpgradeRatesScan", no_argument, &doUpgradeRatesScan, 1
         },
         {
-          "patternsExactMatch", no_argument, &_patternsExactMatch, 1
+          "patternsExactMatch", no_argument, &patternsExactMatch, 1
         },
         {
-          "ignoreNonPhyBunchGroups", no_argument, &_ignoreNonPhysBunchGroups, 1
+          "ignoreNonPhyBunchGroups", no_argument, &ignoreNonPhysBunchGroups, 1
         },
         {
-          "noLBRescaling", no_argument, &_noLBRescaling, 1
+          "noLBRescaling", no_argument, &noLBRescaling, 1
         },
         {
-          "useDefaultLumiScalingExceptions", no_argument, &_useDefaultLumiScalingExceptions, 1
+          "useDefaultLumiScalingExceptions", no_argument, &useDefaultLumiScalingExceptions, 1
         },
         {
-          "useDefaultExponentialScalingList", no_argument, &_useDefaultExponentialScalingList, 1
+          "useDefaultExponentialScalingList", no_argument, &useDefaultExponentialScalingList, 1
         },
         {
-          "upgradeMergeTOBOverlap", no_argument, &_upgradeMergeTOBOverlap, 1
+          "upgradeMergeTOBOverlap", no_argument, &upgradeMergeTOBOverlap, 1
         },
         {
-          "doExponentialMu", no_argument, &_doExponentialMu, 1
+          "doExponentialMu", no_argument, &doExponentialMu, 1
         },
         {
-          "ignoreGRL", no_argument, &_ignoreGRL, 1
+          "ignoreGRL", no_argument, &ignoreGRL, 1
         },       
         {
-          "invertHighMuRunVeto", no_argument, &_invertHighMuRunVeto, 1
+          "invertHighMuRunVeto", no_argument, &invertHighMuRunVeto, 1
         }, // Hidden option
         {
           "treeName", required_argument, 0, 't'
@@ -635,21 +635,21 @@ namespace TrigCostRootAnalysis {
         }
       };
 
-      Int_t _optionIndex = 0;
-      _status = getopt_long_only(argc, argv, "betlEf:", _longOptions, &_optionIndex);
-      if (_status == -1) {
+      Int_t optionIndex = 0;
+      status = getopt_long_only(argc, argv, "betlEf:", longOptions, &optionIndex);
+      if (status == -1) {
         break;
       }
 
-      std::stringstream _ss;
-      switch (_status) {
+      std::stringstream ss;
+      switch (status) {
       case 0:
         // I set a flag
-        if (_longOptions[_optionIndex].flag != 0) {
+        if (longOptions[optionIndex].flag != 0) {
           break;
         }
-        //std::cout << "Given option " << _longOptions[_optionIndex].name;
-        if (std::string(_longOptions[_optionIndex].name) == "help") {
+        //std::cout << "Given option " << _longOptions[optionIndex].name;
+        if (std::string(longOptions[optionIndex].name) == "help") {
           std::cout << "INFO: Trig Cost Root Analysis Program Usage:- " << std::endl;
           std::cout << "\t~~~~~~~~~~~~~~~ OPERATING MODE ALIASES ~~~~~~~~~~~~~~~" << std::endl;
           std::cout <<
@@ -676,7 +676,7 @@ namespace TrigCostRootAnalysis {
           std::cout <<
             "--summaryPerHLTConfig\t\t\t\t[Default] Output a summary for each set of trigger keys processed." <<
             std::endl;
-          std::cout << "--summaryPerLumiBlock\t\t\t\tOutput a summary for each for the first " << _nLbFullSummary <<
+          std::cout << "--summaryPerLumiBlock\t\t\t\tOutput a summary for each for the first " << nLbFullSummary <<
             " lumi block(s) (see --nLbFullSummary)." << std::endl;
           std::cout << "\t~~~~~~~~~~~~~~~ AREAS TO MONITOR ~~~~~~~~~~~~~~~" << std::endl;
           std::cout << "--monitorAll\t\t\t\t\t[Default] Enable all the following monitors." << std::endl;
@@ -709,10 +709,10 @@ namespace TrigCostRootAnalysis {
             "--monitorAllROS\t\t\t\t\tEnables all of monitorROS, monitorROBIN, monitorROSAlgs and monitorROSChains." <<
             std::endl;
           std::cout << "--monitorROI\t\t\t\t\tPerform cost monitoring for Regions of Interest in the trigger." <<
-            std::endl;
+          std::endl;
           std::cout <<
             "--monitorGlobals\t\t\t\tRecord global monitoring quantities for the whole HLT per lumi block." <<
-          std::endl;
+            std::endl;
           std::cout <<
             "--monitorEventProfile\t\t\t\tBreakdown what an average event looks like, including with some (hardcoded) preselections."
                     << std::endl;
@@ -726,7 +726,7 @@ namespace TrigCostRootAnalysis {
           std::cout << "\t~~~~~~~~~~~~~~~ OUTPUT TO GENERATE ~~~~~~~~~~~~~~~" << std::endl;
           std::cout << "--doOutputCanvas\t\t\t\tSave results as decorated canvases in output ROOT file." << std::endl;
           std::cout << "--doOutputHist\t\t\t\t\tSave results as raw histograms in output ROOT file." << std::endl;
-          std::cout << "--histogramBins " << _histogramBins << "\t\t\t\tNumber of bins to use per histogram." <<
+          std::cout << "--histogramBins " << histogramBins << "\t\t\t\tNumber of bins to use per histogram." <<
             std::endl;
           std::cout <<
             "--doOutputPNG\t\t\t\t\tSave results as PNG images in folder structure (warning, best used with --patternsOutput)."
@@ -743,7 +743,7 @@ namespace TrigCostRootAnalysis {
                     << std::endl;
           std::cout << "\t~~~~~~~~~~~~~~~ RUN CONFIGURATION ~~~~~~~~~~~~~~~" << std::endl;
 #ifdef MTHREAD
-          std::cout << "--nThreads " << _nThread <<
+          std::cout << "--nThreads " << nThread <<
             "\t\t\t\tNumber of concurrent threads to use when running monitors. Setting to 1 disables multitasking." <<
             std::endl;
 #endif
@@ -753,7 +753,7 @@ namespace TrigCostRootAnalysis {
           std::cout <<
             "--useEBWeight\t\t\t\t\tApply precalculated weights to un-weight EnhancedBias data to MinimumBias data." <<
             std::endl;
-          std::cout << "--basicWeight " << _basicWeight <<
+          std::cout << "--basicWeight " << basicWeight <<
             "\t\t\t\t\tBase event weight. Can be used to apply global scaling factor to run." << std::endl;
           std::cout <<
             "--extrapolate8To13\t\t\t\tExperimental parameter! Attempt to evolve 8 TeV data/MC to 13 TeV based on HLT result."
@@ -762,24 +762,24 @@ namespace TrigCostRootAnalysis {
             "--extrapolate13To5\t\t\t\tExperimental parameter! Attempt to devolve 13 TeV data/MC to 5 TeV based on HLT result."
                     << std::endl;
           std::cout << "--nEvents INT_MAX\t\t\t\tNumber of input events from all files to run over." << std::endl;
-          std::cout << "--nSkip " << _nSkip << "\t\t\t\t\tNumber of events to skip." << std::endl;
-          std::cout << "--slowThreshold " << _slowThreshold <<
+          std::cout << "--nSkip " << nSkip << "\t\t\t\t\tNumber of events to skip." << std::endl;
+          std::cout << "--slowThreshold " << slowThreshold <<
             "\t\t\t\tTime in milliseconds. Execution times greater than this are flagged as slow." << std::endl;
-          std::cout << "--slowEventThreshold " << _slowEventThreshold <<
+          std::cout << "--slowEventThreshold " << slowEventThreshold <<
             "\t\t\tTime in milliseconds. Full event executions times greater than this are flagged as slow." <<
-          std::endl;
-          std::cout << "--nLbFullSummary " << _nLbFullSummary <<
+            std::endl;
+          std::cout << "--nLbFullSummary " << nLbFullSummary <<
             "\t\t\t\tNumber of luminosity blocks, starting from lbBegin, to produce a full summary for." << std::endl;
-          std::cout << "--nLbFullSkip " << _nLbFullSkip <<
+          std::cout << "--nLbFullSkip " << nLbFullSkip <<
             "\t\t\t\tHow many luminosity blocks to skip per full lb summary." << std::endl;
-          std::cout << "--nHLTConfigSummary " << _nHLTConfigSummary << "\t\t\t\tHow many HLT configs to monitor." <<
+          std::cout << "--nHLTConfigSummary " << nHLTConfigSummary << "\t\t\t\tHow many HLT configs to monitor." <<
             std::endl;
-          std::cout << "--nLbPerHLTConfig " << _nLbPerHLTConfig <<
+          std::cout << "--nLbPerHLTConfig " << nLbPerHLTConfig <<
             "\t\t\t\tHow many LB to process per key summary, counted from the LB of the 1st event seen with this config."
                     << std::endl;
-          std::cout << "--nFullEventSummaries " << _maxNumberFullEvents <<
+          std::cout << "--nFullEventSummaries " << maxNumberFullEvents <<
             "\t\t\tMax number of events (picked at random) to save full executions records for." << std::endl;
-          std::cout << "--defaultLBLength " << _defaultLBLength <<
+          std::cout << "--defaultLBLength " << defaultLBLength <<
             "\t\t\t\tDefault lumi block length in seconds. Used as an approximate fallback for inputs without LB length data."
                     << std::endl;
           std::cout <<
@@ -818,10 +818,10 @@ namespace TrigCostRootAnalysis {
           std::cout <<
             "--predictionMu\t\t\t\t\tSpecify a target pileup for prescaled rates prediction. This enables advanced weighting and affects the rates of explicit L1 random seeded triggers and must be supplied to get accurate predictions here."
                     << std::endl;
-          std::cout << "--prescaleXML1 \"" << _prescaleXML1 <<
+          std::cout << "--prescaleXML1 \"" << prescaleXML1 <<
             "\"\t\t\t\tPrescale/Menu/L1 XML file from which to read custom prescales for rates calculation (place in /data or current dir for Athena use)."
                     << std::endl;
-          std::cout << "--prescaleXML2 \"" << _prescaleXML2 <<
+          std::cout << "--prescaleXML2 \"" << prescaleXML2 <<
             "\"\t\t\t\tSecond Prescale/Menu/L1 XML file. For if you have L1 and HLT values split over two files. (place in /data or current dir for Athena use)."
                     << std::endl;
           std::cout <<
@@ -842,9 +842,9 @@ namespace TrigCostRootAnalysis {
             std::endl;
           std::cout << "--doExponentialMu\t\t\t\t\t\tSwitch on exponential in <mu> dependence for some chains." <<
             std::endl;
-          std::cout << "--expoRateScaleModifierL1 " << _expoRateScaleModifierL1 <<
+          std::cout << "--expoRateScaleModifierL1 " << expoRateScaleModifierL1 <<
             "\t\t\tMultiplier to exponent for L1 exponential in <mu> rates extrapolation." << std::endl;
-          std::cout << "--expoRateScaleModifierHLT " << _expoRateScaleModifierHLT <<
+          std::cout << "--expoRateScaleModifierHLT " << expoRateScaleModifierHLT <<
             "\t\t\tMultiplier to exponent for HLT exponential in <mu> rates extrapolation." << std::endl;
           std::cout <<
             "--patternsUnique patt1 patt2 ...\t\tPatterns to match in names doing unique rates, recommended to use this rather than doing unique for all."
@@ -872,7 +872,7 @@ namespace TrigCostRootAnalysis {
                     << std::endl;
           std::cout << "--doAllOverlap\t\t\t\t\tCalculate overlaps between all chains. Warning, this is very slow.." <<
             std::endl;
-          std::cout << "--ratesOverlapWarning " << _ratesOverlapWarning <<
+          std::cout << "--ratesOverlapWarning " << ratesOverlapWarning <<
             "%\t\t\tValue in percent (0-100) above which to warn about chain overlaps within rates groups." <<
           std::endl;
           std::cout <<
@@ -887,7 +887,7 @@ namespace TrigCostRootAnalysis {
           std::cout <<
             "--scaleRatesByPS\t\t\t\tScale up chains by their L1 prescale to get their rate for L1 PS=1. Only for basic L1 and HLT chains, not combinations and global rates."
                     << std::endl;
-          std::cout << "--maxMultiSeed " << _maxMultiSeed <<
+          std::cout << "--maxMultiSeed " << maxMultiSeed <<
             "\t\t\t\tMaximum number of L1 seeds a chain can have before it is dropped from Union rate groups due to exploding (2^nL1) computational complexity."
                     << std::endl;
           std::cout <<
@@ -913,34 +913,34 @@ namespace TrigCostRootAnalysis {
           std::cout <<
             "--fileList\t\t\t\t\tFile with full path of data, one entry per line. Can be EOS if at CERN and ROOT6." <<
             std::endl;
-          std::cout << "--ROSXML \"" << _ROSXML <<
+          std::cout << "--ROSXML \"" << ROSXML <<
             "\"\t\tROS ID mapping file from which to map ROBIN IDs to subdetectors (place in /data)." << std::endl;
-          std::cout << "--treeName \"" << _treeName << "\"\t\t\t\tName of TTree in ntuples containing cost data." <<
+          std::cout << "--treeName \"" << treeName << "\"\t\t\t\tName of TTree in ntuples containing cost data." <<
             std::endl;
-          std::cout << "--prefixL2 \"" << _L2Prefix << "\"\t\t\tPrefix of L2 cost branches." << std::endl;
-          std::cout << "--prefixEF \"" << _EFPrefix << "\"\t\t\tPrefix of EF cost branches." << std::endl;
-          std::cout << "--prefixHLT \"" << _HLTPrefix << "\"\t\t\tPrefix of HLT cost branches." << std::endl;
-          std::cout << "--prefixConfig \"" << _configPrefix <<
+          std::cout << "--prefixL2 \"" << L2Prefix << "\"\t\t\tPrefix of L2 cost branches." << std::endl;
+          std::cout << "--prefixEF \"" << EFPrefix << "\"\t\t\tPrefix of EF cost branches." << std::endl;
+          std::cout << "--prefixHLT \"" << HLTPrefix << "\"\t\t\tPrefix of HLT cost branches." << std::endl;
+          std::cout << "--prefixConfig \"" << configPrefix <<
             "\"\tName of TTree in ntuple containing trigger configuration metadata." << std::endl;
-          std::cout << "--outputRootDirectory \"" << _outRootDirectory <<
+          std::cout << "--outputRootDirectory \"" << outRootDirectory <<
             "\"\t\t\tFolder in which to place this programs output directory." << std::endl;
-          std::cout << "--outputDirectory \"" << _outDirectory <<
+          std::cout << "--outputDirectory \"" << outDirectory <<
             "\"\tFolder to contain all program output, %r is replaced with the run number, %t with the tag." <<
           std::endl;
-          std::cout << "--outputTag \"" << _outTag <<
+          std::cout << "--outputTag \"" << outTag <<
             "\"\t\t\t\tTag identifying this processing to be used in the output folder name (any underscores will be removed)."
                     << std::endl;
           std::cout <<
             "--outputTagFromAthena\t\t\t\tWhen running in Athena, this option will use the $AtlasVersion environment variable."
                     << std::endl;
-          std::cout << "--outputRootFile \"" << _outRootFilename << "\"\tName of ROOT file for results." << std::endl;
-          std::cout << "--outputImageDirectory \"" << _outImageDirectory <<
+          std::cout << "--outputRootFile \"" << outRootFilename << "\"\tName of ROOT file for results." << std::endl;
+          std::cout << "--outputImageDirectory \"" << outImageDirectory <<
             "\"\t\t\tName of folder for image results." << std::endl;
-          std::cout << "--outputCSVDirectory \"" << _outCSVDirectory << "\"\t\t\tName of folder for CSV results." <<
+          std::cout << "--outputCSVDirectory \"" << outCSVDirectory << "\"\t\t\tName of folder for CSV results." <<
             std::endl;
-          std::cout << "--outputXMLDirectory \"" << _outXMLDirectory << "\"\t\t\tName of folder for XML results." <<
+          std::cout << "--outputXMLDirectory \"" << outXMLDirectory << "\"\t\t\tName of folder for XML results." <<
             std::endl;
-          std::cout << "--messageWait " << _messageWait << "\t\t\t\tTime in seconds between progress reports." <<
+          std::cout << "--messageWait " << messageWait << "\t\t\t\tTime in seconds between progress reports." <<
             std::endl;
           std::cout <<
             "--writeEBXML\t\t\t\t\tWrite out EnhancedBias weights from D3PD to XML for future use (for use by rate experts)."
@@ -959,427 +959,427 @@ namespace TrigCostRootAnalysis {
           abort();
         }
         // I did not set a flag, but was also not caught above. Require implementation
-        Error("Config::parseCLI", "The following option was not recognised: %s", _longOptions[_optionIndex].name);
+        Error("Config::parseCLI", "The following option was not recognised: %s", longOptions[optionIndex].name);
         abort();
         break;
 
       case 'f':
         // I'm setting the input files
         // Do secondary loop to identify all input files
-        _inputFiles.push_back(std::string(optarg));
+        inputFiles.push_back(std::string(optarg));
         while (optind < argc) {
           if (std::string(argv[optind]).substr(0, 1) == "-") { //We're back to arguments
             break;
           }
-          _inputFiles.push_back(std::string(argv[optind++]));
+          inputFiles.push_back(std::string(argv[optind++]));
         }
         break;
 
       case 'p':
         // I'm setting the chain pattern monitor
         // Do secondary loop to identify all patterns
-        _patternsMonitor.push_back(std::string(optarg));
+        patternsMonitor.push_back(std::string(optarg));
         while (optind < argc) {
           if (std::string(argv[optind]).substr(0, 1) == "-") { //We're back to arguments
             break;
           }
-          _patternsMonitor.push_back(std::string(argv[optind++]));
+          patternsMonitor.push_back(std::string(argv[optind++]));
         }
         break;
 
       case 'P':
         // I'm setting the chain pattern output
-        _patternsOutput.push_back(std::string(optarg));
+        patternsOutput.push_back(std::string(optarg));
         while (optind < argc) {
           if (std::string(argv[optind]).substr(0, 1) == "-") { //We're back to arguments
             break;
           }
-          _patternsOutput.push_back(std::string(argv[optind++]));
+          patternsOutput.push_back(std::string(argv[optind++]));
         }
         break;
 
       case 'I':
         // I'm setting the chain pattern output
-        _patternsUnique.push_back(std::string(optarg));
+        patternsUnique.push_back(std::string(optarg));
         while (optind < argc) {
           if (std::string(argv[optind]).substr(0, 1) == "-") { //We're back to arguments
             break;
           }
-          _patternsUnique.push_back(std::string(argv[optind++]));
+          patternsUnique.push_back(std::string(argv[optind++]));
         }
         break;
 
       case 'v':
         // I'm setting the rate exclusion
-        _patternsExclude.push_back(std::string(optarg));
+        patternsExclude.push_back(std::string(optarg));
         while (optind < argc) {
           if (std::string(argv[optind]).substr(0, 1) == "-") { //We're back to arguments
             break;
           }
-          _patternsExclude.push_back(std::string(argv[optind++]));
+          patternsExclude.push_back(std::string(argv[optind++]));
         }
         break;
 
       case 'Y':
         // I'm setting the overlap list
-        _patternsOverlap.push_back(std::string(optarg));
+        patternsOverlap.push_back(std::string(optarg));
         while (optind < argc) {
           if (std::string(argv[optind]).substr(0, 1) == "-") { //We're back to arguments
             break;
           }
-          _patternsOverlap.push_back(std::string(argv[optind++]));
+          patternsOverlap.push_back(std::string(argv[optind++]));
         }
         break;
 
       case 'u':
         // I'm setting the user details string
-        _userDetails = std::string(optarg);
+        userDetails = std::string(optarg);
         while (optind < argc) {
           if (std::string(argv[optind]).substr(0, 1) == "-") { //We're back to arguments
             break;
           }
-          _userDetails += std::string(" ") + std::string(argv[optind++]);
+          userDetails += std::string(" ") + std::string(argv[optind++]);
         }
         break;
 
       case '1':
         // I'm setting the _patternsNoLumiWeight strings
-        _patternsNoLumiWeight.push_back(std::string(optarg));
+        patternsNoLumiWeight.push_back(std::string(optarg));
         while (optind < argc) {
           if (std::string(argv[optind]).substr(0, 1) == "-") { //We're back to arguments
             break;
           }
-          _patternsNoLumiWeight.push_back(std::string(argv[optind++]));
+          patternsNoLumiWeight.push_back(std::string(argv[optind++]));
         }
         break;
 
       case '2':
         // I'm setting the _patternsNoMuLumiWeight strings
-        _patternsNoMuLumiWeight.push_back(std::string(optarg));
+        patternsNoMuLumiWeight.push_back(std::string(optarg));
         while (optind < argc) {
           if (std::string(argv[optind]).substr(0, 1) == "-") { //We're back to arguments
             break;
           }
-          _patternsNoMuLumiWeight.push_back(std::string(argv[optind++]));
+          patternsNoMuLumiWeight.push_back(std::string(argv[optind++]));
         }
         break;
 
       case '3':
         // I'm setting the _patternsNoBunchLumiWeight strings
-        _patternsNoBunchLumiWeight.push_back(std::string(optarg));
+        patternsNoBunchLumiWeight.push_back(std::string(optarg));
         while (optind < argc) {
           if (std::string(argv[optind]).substr(0, 1) == "-") { //We're back to arguments
             break;
           }
-          _patternsNoBunchLumiWeight.push_back(std::string(argv[optind++]));
+          patternsNoBunchLumiWeight.push_back(std::string(argv[optind++]));
         }
         break;
 
       case '4':
         // I'm setting the patternsExpoMuLumiWeight strings
-        _patternsExpoMuLumiWeight.push_back(std::string(optarg));
+        patternsExpoMuLumiWeight.push_back(std::string(optarg));
         while (optind < argc) {
           if (std::string(argv[optind]).substr(0, 1) == "-") { //We're back to arguments
             break;
           }
-          _patternsExpoMuLumiWeight.push_back(std::string(argv[optind++]));
+          patternsExpoMuLumiWeight.push_back(std::string(argv[optind++]));
         }
         break;
 
       case '8':
         // I'm setting the useOnlyTheseBCIDs
-        _useOnlyTheseBCIDs.push_back(stringToInt(optarg));
+        useOnlyTheseBCIDs.push_back(stringToInt(optarg));
         while (optind < argc) {
           if (std::string(argv[optind]).substr(0, 1) == "-") { //We're back to arguments
             break;
           }
-          _useOnlyTheseBCIDs.push_back(stringToInt(argv[optind++]));
+          useOnlyTheseBCIDs.push_back(stringToInt(argv[optind++]));
         }
         break;
 
       case 'n':
         // N Events
-        _ss << optarg;
-        _ss >> _nEvents;
+        ss << optarg;
+        ss >> nEvents;
         break;
 
       case 'a':
         // Rate fallback prescale L1
-        _ss << optarg;
-        _ss >> _rateFallbackPrescaleL1;
+        ss << optarg;
+        ss >> rateFallbackPrescaleL1;
         break;
 
       case 'A':
         // Rate fallback prescale HLT
-        _ss << optarg;
-        _ss >> _rateFallbackPrescaleHLT;
+        ss << optarg;
+        ss >> rateFallbackPrescaleHLT;
         break;
 
       case 'h':
         // N histogram bins
-        _ss << optarg;
-        _ss >> _histogramBins;
+        ss << optarg;
+        ss >> histogramBins;
         break;
 
       case 'j':
         // Histogram bin min
-        _ss << optarg;
-        _ss >> _binMin;
+        ss << optarg;
+        ss >> binMin;
         break;
 
       case 'J':
         // N histogram bin max
-        _ss << optarg;
-        _ss >> _binMax;
+        ss << optarg;
+        ss >> binMax;
         break;
 
       case 's':
         // N Events to skip
-        _ss << optarg;
-        _ss >> _nSkip;
+        ss << optarg;
+        ss >> nSkip;
         break;
 
       case 'W':
         // N Threads
-        _ss << optarg;
-        _ss >> _nThread;
+        ss << optarg;
+        ss >> nThread;
         break;
 
       case 'S':
         // Slow threshold
-        _ss << optarg;
-        _ss >> _slowThreshold;
+        ss << optarg;
+        ss >> slowThreshold;
         break;
 
       case 'y':
         // Slow event threshold
-        _ss << optarg;
-        _ss >> _slowEventThreshold;
+        ss << optarg;
+        ss >> slowEventThreshold;
         break;
 
       case 'F':
         // Max full event summaries
-        _ss << optarg;
-        _ss >> _maxNumberFullEvents;
+        ss << optarg;
+        ss >> maxNumberFullEvents;
         break;
 
       case 'b':
         // Lumi block begining
-        _ss << optarg;
-        _ss >> _lbBegin;
+        ss << optarg;
+        ss >> lbBegin;
         break;
 
       case 'e':
         // Lumi block end
-        _ss << optarg;
-        _ss >> _lbEnd;
+        ss << optarg;
+        ss >> lbEnd;
         break;
 
       case 'z':
         // Message wait time
-        _ss << optarg;
-        _ss >> _messageWait;
+        ss << optarg;
+        ss >> messageWait;
         break;
 
       case 'B':
         // Basic event weight
-        _ss << optarg;
-        _ss >> _basicWeight;
+        ss << optarg;
+        ss >> basicWeight;
         break;
 
       case 'L':
         // Number of lumi blocks to do a full summary for
-        _ss << optarg;
-        _ss >> _nLbFullSummary;
+        ss << optarg;
+        ss >> nLbFullSummary;
         break;
 
       case 'k':
         // Number of lumi blocks to skip per full summary
-        _ss << optarg;
-        _ss >> _nLbFullSkip;
+        ss << optarg;
+        ss >> nLbFullSkip;
         break;
 
       case 'd':
         // Default lumiblock length
-        _ss << optarg;
-        _ss >> _defaultLBLength;
+        ss << optarg;
+        ss >> defaultLBLength;
         break;
 
       case 'D':
         // inst L for prediction
-        _ss << optarg;
-        _ss >> _predictionLumi;
+        ss << optarg;
+        ss >> predictionLumi;
         break;
 
       case 'U':
         // inst L of EB run
-        _ss << optarg;
-        _ss >> _runLumi;
+        ss << optarg;
+        ss >> runLumi;
         break;
 
       case 'N':
         // User supplied run number
-        _ss << optarg;
-        _ss >> _runNumber;
+        ss << optarg;
+        ss >> runNumber;
         break;
 
       case 'X':
         // Default lumiblock length
-        _ss << optarg;
-        _ss >> _maxMultiSeed;
+        ss << optarg;
+        ss >> maxMultiSeed;
         break;
 
       case 'q':
         // nHLTConfigSummary
-        _ss << optarg;
-        _ss >> _nHLTConfigSummary;
+        ss << optarg;
+        ss >> nHLTConfigSummary;
         break;
 
       case 'Q':
         // nLbPerHLTConfig
-        _ss << optarg;
-        _ss >> _nLbPerHLTConfig;
+        ss << optarg;
+        ss >> nLbPerHLTConfig;
         break;
 
       case '5':
         // expoRateScaleModifier
-        _ss << optarg;
-        _ss >> _expoRateScaleModifierL1;
+        ss << optarg;
+        ss >> expoRateScaleModifierL1;
 
       case '6':
         // expoRateScaleModifier
-        _ss << optarg;
-        _ss >> _expoRateScaleModifierHLT;
+        ss << optarg;
+        ss >> expoRateScaleModifierHLT;
         break;
 
       case 'K':
         // File list
-        _fileList = std::string(optarg);
+        fileList = std::string(optarg);
         break;
 
       case 'V':
         // Full Event File List
-        _fullEventFileList = std::string(optarg);
+        fullEventFileList = std::string(optarg);
         break;
 
       case 't':
         // Different tree name
-        _treeName = std::string(optarg);
+        treeName = std::string(optarg);
         break;
 
       case '7':
         // Multirun
-        _multiRun = std::string(optarg);
+        multiRun = std::string(optarg);
         break;
 
       case 'm':
         // Specify upgrade scenario
-        _upgradeScenario = std::string(optarg);
+        upgradeScenario = std::string(optarg);
         break;
 
       case 'T':
         // Different tag name
-        _outTag = std::string(optarg);
+        outTag = std::string(optarg);
         break;
 
       case 'M':
         // Different prescale menu XML
-        _prescaleXML1 = std::string(optarg);
+        prescaleXML1 = std::string(optarg);
         break;
 
       case 'g': // NOTE same as M
         // Different prescale menu XML
-        _prescaleXML1 = std::string(optarg);
+        prescaleXML1 = std::string(optarg);
         break;
 
       case 'G':
         // Different prescale menu XML
-        _prescaleXML2 = std::string(optarg);
+        prescaleXML2 = std::string(optarg);
         break;
 
       case 'R':
         // Different ROS mapping
-        _ROSXML = std::string(optarg);
+        ROSXML = std::string(optarg);
         break;
 
       case 'r':
         // Different output root
-        _outRootFilename = std::string(optarg);
+        outRootFilename = std::string(optarg);
         break;
 
       case 'i':
         // Different output image
-        _outImageDirectory = std::string(optarg);
+        outImageDirectory = std::string(optarg);
         break;
 
       case 'C':
         // Different output csv dir
-        _outCSVDirectory = std::string(optarg);
+        outCSVDirectory = std::string(optarg);
         break;
 
       case 'x':
         // Different output xml dir
-        _outXMLDirectory = std::string(optarg);
+        outXMLDirectory = std::string(optarg);
         break;
 
       case 'o':
         // Different output directory
-        _outDirectory = std::string(optarg);
+        outDirectory = std::string(optarg);
         break;
 
       case 'O':
         // Different output ROOT directory
-        _outRootDirectory = std::string(optarg);
+        outRootDirectory = std::string(optarg);
         break;
 
       case 'l':
         // Different L2 prefix
-        _L2Prefix = std::string(optarg);
+        L2Prefix = std::string(optarg);
         break;
 
       case 'E':
         // Different EF prefix
-        _EFPrefix = std::string(optarg);
+        EFPrefix = std::string(optarg);
         break;
 
       case 'w':
         // different overlap percent
-        _ss << optarg;
-        _ss >> _ratesOverlapWarning;
+        ss << optarg;
+        ss >> ratesOverlapWarning;
         break;
 
       case 'Z':
         // JIRA
-        _ss << optarg;
-        _ss >> _jira;
+        ss << optarg;
+        ss >> jira;
         break;
 
       case 'H':
         // Different HLT prefix
-        _HLTPrefix = std::string(optarg);
+        HLTPrefix = std::string(optarg);
         break;
 
       case 'c':
         // Different HLT prefix
-        _configPrefix = std::string(optarg);
+        configPrefix = std::string(optarg);
         break;
 
       case '0':
         // Target mu
-        _ss << optarg;
-        _ss >> _targetMu;
+        ss << optarg;
+        ss >> targetMu;
         break;
 
       default:
-        Error("Config::parseCLI", "Supplied argument '%c' not recognised.", Char_t(_status));
+        Error("Config::parseCLI", "Supplied argument '%c' not recognised.", Char_t(status));
         abort();
       }
     }
 
     // Settings read. Now to check them and store them for use
 
-    Info("Config::parseCLI", "Version %s", _version.c_str());
-    if (_showVersion == kTRUE) {
+    Info("Config::parseCLI", "Version %s", version.c_str());
+    if (showVersion == kTRUE) {
       abort();
     }
 
@@ -1387,148 +1387,148 @@ namespace TrigCostRootAnalysis {
     //        ALIASES - how handy
     //////////////////////////
 
-    if (_ratesMode == kTRUE || _ratesUpgradeMode == kTRUE) {
+    if (ratesMode == kTRUE || ratesUpgradeMode == kTRUE) {
       Info("Config::parseCLI", "Setting up default options for a rates prediction job.");
-      _cleanAll = 1;
-      _doHLT = 1;
-      _summaryAll = 1;
-      if (_ratesMode) _monitorRates = 1;
-      if (_ratesUpgradeMode) _monitorRatesUpgrade = 1;
-      _doEBWeighting = 1;
-      _matchL1RandomToOnline = 1;
-      _outputModeStandard = 1;
-      _doCPS = 1;
-      _useDefaultLumiScalingExceptions = 1;
-      // _doExponentialMu = 1; // No longer have this flag by default
-      if (_doExponentialMu) _useDefaultExponentialScalingList = 1;
-    }
-
-    if (_costMode == kTRUE) {
+      cleanAll = 1;
+      doHLT = 1;
+      summaryAll = 1;
+      if (ratesMode) monitorRates = 1;
+      if (ratesUpgradeMode) monitorRatesUpgrade = 1;
+      doEBWeighting = 1;
+      matchL1RandomToOnline = 1;
+      outputModeStandard = 1;
+      doCPS = 1;
+      useDefaultLumiScalingExceptions = 1;
+      // doExponentialMu = 1; // No longer have this flag by default
+      if (doExponentialMu) useDefaultExponentialScalingList = 1;
+    }
+
+    if (costMode == kTRUE) {
       Info("Config::parseCLI", "Setting up default options for a cost job.");
-      _cleanAll = 1;
-      _doHLT = 1;
-      _summaryAll = 1;
-      _monitorChains = 1;
-      _monitorChainAlgs = 1;
-      _monitorSequences = 1;
-      _monitorAlgs = 1;
-      _monitorAlgClass = 1;
-      _monitorROS = 1;
-      _monitorROBIN = 1;
-      _monitorROI = 1;
-      _monitorGlobals = 1;
-      _monitorFullEvent = 1;
-      _outputModeStandard = 1;
-      _ignoreNonPhysBunchGroups = 1;
-      _monitorSliceCPU = 1;
-    }
-
-    if (_onlineMode == kTRUE) {
+      cleanAll = 1;
+      doHLT = 1;
+      summaryAll = 1;
+      monitorChains = 1;
+      monitorChainAlgs = 1;
+      monitorSequences = 1;
+      monitorAlgs = 1;
+      monitorAlgClass = 1;
+      monitorROS = 1;
+      monitorROBIN = 1;
+      monitorROI = 1;
+      monitorGlobals = 1;
+      monitorFullEvent = 1;
+      outputModeStandard = 1;
+      ignoreNonPhysBunchGroups = 1;
+      monitorSliceCPU = 1;
+    }
+
+    if (onlineMode == kTRUE) {
       Info("Config::parseCLI", "Setting up default options for a online job.");
-      _cleanAll = 1;
-      _doHLT = 1;
-      _summaryPerHLTConfig = 1;
-      _summaryPerLumiBlock = 1;
-      _monitorAllChainSeqAlgs = 1;
-      _monitorChains = 1;
-      _monitorChainAlgs = 1;
-      _monitorSequences = 1;
-      _monitorAlgs = 1;
-      _monitorAlgClass = 1;
-      _monitorROS = 1;
-      _monitorROBIN = 1;
-      _monitorROI = 1;
-      _monitorGlobals = 1;
-      _monitorFullEvent = 1;
-      _outputModeStandard = 1;
-      _monitorSliceCPU = 1;
-    }
-
-    if (_outputModeStandard == kTRUE) {
+      cleanAll = 1;
+      doHLT = 1;
+      summaryPerHLTConfig = 1;
+      summaryPerLumiBlock = 1;
+      monitorAllChainSeqAlgs = 1;
+      monitorChains = 1;
+      monitorChainAlgs = 1;
+      monitorSequences = 1;
+      monitorAlgs = 1;
+      monitorAlgClass = 1;
+      monitorROS = 1;
+      monitorROBIN = 1;
+      monitorROI = 1;
+      monitorGlobals = 1;
+      monitorFullEvent = 1;
+      outputModeStandard = 1;
+      monitorSliceCPU = 1;
+    }
+
+    if (outputModeStandard == kTRUE) {
       Info("Config::parseCLI", "Setting up standard outputs.");
-      _doOutputHist = 1;
-      _doOutputCsv = 1;
-      _doOutputRatesGraph = 1;
-      _doOutputMenus = 1;
-      _doOutputXML = 1;
+      doOutputHist = 1;
+      doOutputCsv = 1;
+      doOutputRatesGraph = 1;
+      doOutputMenus = 1;
+      doOutputXML = 1;
     }
 
     //////////////////////////
     //        ROOT FILES, CHAIN AND TREE NAMES
     //////////////////////////
 
-    if (_inputFiles.size() == 0 && _fileList == m_blankString) {
+    if (inputFiles.size() == 0 && fileList == m_blankString) {
       Error("Config::parseCLI", "Please supply at least one input file with --files or --fileList");
       return kFALSE;
     }
     // If we have a file list - fill the input files
-    if (_fileList != m_blankString) {
-      std::ifstream _ifs(_fileList.c_str());
-      std::string _line;
-      while (std::getline(_ifs, _line)) {
-        _inputFiles.push_back(_line);
+    if (fileList != m_blankString) {
+      std::ifstream ifs(fileList.c_str());
+      std::string line;
+      while (std::getline(ifs, line)) {
+        inputFiles.push_back(line);
       }
     }
     // check names
-    for (UInt_t _n = 0; _n < _inputFiles.size(); ++_n) {
-      if (_inputFiles.at(_n).substr(0, 5) == "/eos/") {
-        _inputFiles.at(_n) = std::string("root:://eosatlas.cern.ch/" + _inputFiles.at(_n));
-      } else if (_inputFiles.at(_n).substr(0, 27) == "srm://srm-eosatlas.cern.ch/") {
-        _inputFiles.at(_n) = std::string("root:://eosatlas.cern.ch//") + _inputFiles.at(_n).substr(27, std::string::npos);
+    for (UInt_t n = 0; n < inputFiles.size(); ++n) {
+      if (inputFiles.at(n).substr(0, 5) == "/eos/") {
+        inputFiles.at(n) = std::string("root:://eosatlas.cern.ch/" + inputFiles.at(n));
+      } else if (inputFiles.at(n).substr(0, 27) == "srm://srm-eosatlas.cern.ch/") {
+        inputFiles.at(n) = std::string("root:://eosatlas.cern.ch//") + inputFiles.at(n).substr(27, std::string::npos);
       }
     }
 
     // If we have a full event list - fill the input files
-    if (_fullEventFileList != m_blankString) {
-      std::ifstream _ifs(_fullEventFileList.c_str());
-      std::string _line;
-      while (std::getline(_ifs, _line)) {
-        _eventPicker.push_back(stringToInt(_line));
+    if (fullEventFileList != m_blankString) {
+      std::ifstream ifs(fullEventFileList.c_str());
+      std::string line;
+      while (std::getline(ifs, line)) {
+        eventPicker.push_back(stringToInt(line));
       }
-      set(kEventPickList, _eventPicker, "EventPickList");
+      set(kEventPickList, eventPicker, "EventPickList");
     }
 
-    set(kInputFiles, _inputFiles, "InputFiles");
-    setLong(kNEvents, _nEvents, "NEvents");
-    setLong(kNSkip, _nSkip, "NSkip");
-    set(kTreeName, _treeName, "TreeName");
-    set(kL2Prefix, _L2Prefix, "L2Prefix");
-    set(kEFPrefix, _EFPrefix, "EFPrefix");
-    set(kHLTPrefix, _HLTPrefix, "HLTPrefix");
-    set(kConfigPrefix, _configPrefix, "ConfigPrefix");
+    set(kInputFiles, inputFiles, "InputFiles");
+    setLong(kNEvents, nEvents, "NEvents");
+    setLong(kNSkip, nSkip, "NSkip");
+    set(kTreeName, treeName, "TreeName");
+    set(kL2Prefix, L2Prefix, "L2Prefix");
+    set(kEFPrefix, EFPrefix, "EFPrefix");
+    set(kHLTPrefix, HLTPrefix, "HLTPrefix");
+    set(kConfigPrefix, configPrefix, "ConfigPrefix");
 
     //////////////////////////
     //        HLT LEVELS AND RUN RANGES TO PROCESS
     //////////////////////////
 
     // Trigger Level settings
-    if (_doL2 + _doEF + _doL2EF + _doHLT != 1) {
+    if (doL2 + doEF + doL2EF + doHLT != 1) {
       //  Allow use of doL2 and doEF instead of --doL2EF
-      if (!(_doL2 == 1 && _doEF == 1 && _doHLT == 0)) {
+      if (!(doL2 == 1 && doEF == 1 && doHLT == 0)) {
         Warning("Config::parseCLI",
                 "Not specified a HLT level to run (--doL2, --doEF, --doL2EF or --doHLT). Will default to --doHLT.");
-        _doHLT = 1;
+        doHLT = 1;
       }
     }
-    set(kDoL2, (Int_t) (_doL2 || _doL2EF), "DoL2");
-    set(kDoEF, (Int_t) (_doEF || _doL2EF), "DoEF");
-    set(kDoHLT, _doHLT, "DoHLT");
+    set(kDoL2, (Int_t) (doL2 || doL2EF), "DoL2");
+    set(kDoEF, (Int_t) (doEF || doL2EF), "DoEF");
+    set(kDoHLT, doHLT, "DoHLT");
     set(kDoHLTOnline, 0, "DoHLTOnline"); // If unified HLT was used online - not yet ever true
 
     // Summary range settings
-    if (_summaryAll + _summaryPerHLTConfig + _summaryPerLumiBlock == 0) {
+    if (summaryAll + summaryPerHLTConfig + summaryPerLumiBlock == 0) {
       Warning("Config::parseCLI", "Not specified a time range to summaries. Will default to --summaryPerHLTConfig.");
-      _summaryPerHLTConfig = 1;
+      summaryPerHLTConfig = 1;
     }
-    set(kDoAllSummary, _summaryAll, "DoSummaryAll");
-    set(kDoKeySummary, _summaryPerHLTConfig, "DoKeySummary");
-    set(kDoLumiBlockSummary, _summaryPerLumiBlock, "DoLBSummary");
+    set(kDoAllSummary, summaryAll, "DoSummaryAll");
+    set(kDoKeySummary, summaryPerHLTConfig, "DoKeySummary");
+    set(kDoLumiBlockSummary, summaryPerLumiBlock, "DoLBSummary");
 
     // Number of events to save full information for
-    set(kFullEventMaxNumToSave, _maxNumberFullEvents, "MaxNumberFullEvents");
+    set(kFullEventMaxNumToSave, maxNumberFullEvents, "MaxNumberFullEvents");
     set(kCurrentEventIsSlow, 0, "SlowFlag", kUnlocked);
-    if (_nEvents != INT_MAX) {
-      set(kFullEventSaveOnePer, (Int_t) (1 + (_nEvents / getInt(kFullEventMaxNumToSave))), "FullEventSaveOncePer");
+    if (nEvents != INT_MAX) {
+      set(kFullEventSaveOnePer, (Int_t) (1 + (nEvents / getInt(kFullEventMaxNumToSave))), "FullEventSaveOncePer");
     } else {
       set(kFullEventSaveOnePer, 1000000, "FullEventSaveOncePer", kUnlocked);//This is just a generic fallback. We can
                                                                             // update it later in the event loop if need
@@ -1540,206 +1540,206 @@ namespace TrigCostRootAnalysis {
     //////////////////////////
 
     // This flag just enables others
-    if (_monitorAllChainSeqAlgs == 1) {
-      _monitorChains = 1;
-      _monitorChainAlgs = 1;
-      _monitorSequences = 1;
-      _monitorSequenceAlgs = 1;
-      _monitorAlgs = 1;
-      _monitorAlgClass = 1;
-    }
-
-    if (_monitorAllROS == 1) {
-      _monitorROS = 1;
-      _monitorROBIN = 1;
-      _monitorROSAlgs = 1;
-      _monitorROSChains = 1;
-    }
-
-    int _nMon = _monitorAll
-                + _monitorChains
-                + _monitorChainAlgs
-                + _monitorSequences
-                + _monitorSequenceAlgs
-                + _monitorAlgs
-                + _monitorAlgClass
-                + _monitorROS
-                + _monitorROBIN
-                + _monitorROSAlgs
-                + _monitorROSChains
-                + _monitorROI
-                + _monitorL1
-                + _monitorFullEvent
-                + _monitorGlobals
-                + _monitorEventProfile
-                + _monitorRates
-                + _monitorRatesUpgrade
-                + _monitorSliceCPU
-                + _writeEBWeightXML;
-
-    if (_nMon == 0) {
+    if (monitorAllChainSeqAlgs == 1) {
+      monitorChains = 1;
+      monitorChainAlgs = 1;
+      monitorSequences = 1;
+      monitorSequenceAlgs = 1;
+      monitorAlgs = 1;
+      monitorAlgClass = 1;
+    }
+
+    if (monitorAllROS == 1) {
+      monitorROS = 1;
+      monitorROBIN = 1;
+      monitorROSAlgs = 1;
+      monitorROSChains = 1;
+    }
+
+    int nMon = monitorAll
+                + monitorChains
+                + monitorChainAlgs
+                + monitorSequences
+                + monitorSequenceAlgs
+                + monitorAlgs
+                + monitorAlgClass
+                + monitorROS
+                + monitorROBIN
+                + monitorROSAlgs
+                + monitorROSChains
+                + monitorROI
+                + monitorL1
+                + monitorFullEvent
+                + monitorGlobals
+                + monitorEventProfile
+                + monitorRates
+                + monitorRatesUpgrade
+                + monitorSliceCPU
+                + writeEBWeightXML;
+
+    if (nMon == 0) {
       Warning("Config::parseCLI", "Not specified a monitor to use. Will default to --monitorAll.");
-      _monitorAll = 1;
+      monitorAll = 1;
     }
 
     // Check for rates only processing, and relax the LB requirement
-    Int_t _ratesOnly = 0;
-    if ((_monitorRates == 1 || _monitorRatesUpgrade == 1) && _nMon == (_monitorRates + _monitorRatesUpgrade)) {
-      _ratesOnly = 1;
-      if (_nLbPerHLTConfig != INT_MAX && _summaryAll == 0 && _summaryPerHLTConfig == 1) {
+    Int_t ratesOnly = 0;
+    if ((monitorRates == 1 || monitorRatesUpgrade == 1) && nMon == (monitorRates + monitorRatesUpgrade)) {
+      ratesOnly = 1;
+      if (nLbPerHLTConfig != INT_MAX && summaryAll == 0 && summaryPerHLTConfig == 1) {
         Warning("Config::parseCLI",
                 "We're in 'rates only' mode, --nLbPerHLTConfig is ignored and all LB are processed per HLT config.");
       }
     }
-    set(kRatesOnly, _ratesOnly, "RatesOnly");
+    set(kRatesOnly, ratesOnly, "RatesOnly");
 
     // We save monitorAll separately as it is picked up in a time saving loop later
-    set(kDoAllMonitor, _monitorAll, "MonitorAll"); // This one is magic, and will be picked up in a loop later - force
+    set(kDoAllMonitor, monitorAll, "MonitorAll"); // This one is magic, and will be picked up in a loop later - force
                                                    // enabling all others
-    set(kDoChainMonitor, _monitorChains, "ChainMonitor");
-    set(kDoChainAlgorithmMonitor, _monitorChainAlgs, "ChainAlgorithmMonitor");
-    set(kDoSequenceMonitor, _monitorSequences, "SequenceMonitor");
-    set(kDoSequenceAlgorithmMonitor, _monitorSequenceAlgs, "SequenceAlgorithmMonitor");
-    set(kDoAlgorithmMonitor, _monitorAlgs, "AlgorithmMonitor");
-    set(kDoAlgorithmClassMonitor, _monitorAlgClass, "AlgorithmClassMonitor");
-    set(kDoSliceCPUMonitor, _monitorSliceCPU, "SliceCPUMonitor");
-    set(kDoROSMonitor, _monitorROS, "ROSMonitor");
-    set(kDoROBINMonitor, _monitorROBIN, "ROBINMonitor");
-    set(kDoROSAlgorithmMonitor, _monitorROSAlgs, "ROSAlgorithmMonitor");
-    set(kDoROSChainMonitor, _monitorROSChains, "ROSChainMonitor");
-    set(kDoROIMonitor, _monitorROI, "ROIMonitor");
-    set(kDoFullEventMonitor, _monitorFullEvent, "FullEventMonitor");
-    set(kDoGlobalsMonitor, _monitorGlobals, "GlobalsMonitor");
-    set(kDoEventProfileMonitor, _monitorEventProfile, "EventProfileMonitor");
-    set(kDoRatesMonitor, _monitorRates, "RatesMonitor");
-    set(kDoRatesUpgradeMonitor, _monitorRatesUpgrade, "RatesUpgradeMonitor");
+    set(kDoChainMonitor, monitorChains, "ChainMonitor");
+    set(kDoChainAlgorithmMonitor, monitorChainAlgs, "ChainAlgorithmMonitor");
+    set(kDoSequenceMonitor, monitorSequences, "SequenceMonitor");
+    set(kDoSequenceAlgorithmMonitor, monitorSequenceAlgs, "SequenceAlgorithmMonitor");
+    set(kDoAlgorithmMonitor, monitorAlgs, "AlgorithmMonitor");
+    set(kDoAlgorithmClassMonitor, monitorAlgClass, "AlgorithmClassMonitor");
+    set(kDoSliceCPUMonitor, monitorSliceCPU, "SliceCPUMonitor");
+    set(kDoROSMonitor, monitorROS, "ROSMonitor");
+    set(kDoROBINMonitor, monitorROBIN, "ROBINMonitor");
+    set(kDoROSAlgorithmMonitor, monitorROSAlgs, "ROSAlgorithmMonitor");
+    set(kDoROSChainMonitor, monitorROSChains, "ROSChainMonitor");
+    set(kDoROIMonitor, monitorROI, "ROIMonitor");
+    set(kDoFullEventMonitor, monitorFullEvent, "FullEventMonitor");
+    set(kDoGlobalsMonitor, monitorGlobals, "GlobalsMonitor");
+    set(kDoEventProfileMonitor, monitorEventProfile, "EventProfileMonitor");
+    set(kDoRatesMonitor, monitorRates, "RatesMonitor");
+    set(kDoRatesUpgradeMonitor, monitorRatesUpgrade, "RatesUpgradeMonitor");
 
     // Number of passes, UpgradeMonitor needs 2 if we are doing upgrade pileup scaling
-    if (_monitorRatesUpgrade == kTRUE && _noUpgradePileupScaling == kFALSE) {
+    if (monitorRatesUpgrade == kTRUE && noUpgradePileupScaling == kFALSE) {
       set(kNPasses, 2, "NPasses");
     } else {
       set(kNPasses, 1, "NPasses");
     }
 
-    if (isZero(_targetMu) &&
-        (_patternsNoLumiWeight.size() || _patternsNoMuLumiWeight.size() || _patternsNoBunchLumiWeight.size() ||
-         _patternsExpoMuLumiWeight.size())) {
+    if (isZero(targetMu) &&
+        (patternsNoLumiWeight.size() || patternsNoMuLumiWeight.size() || patternsNoBunchLumiWeight.size() ||
+         patternsExpoMuLumiWeight.size())) {
       Error("Config::parseCLI",
             "If using --patternsNoLumiWeight, --patternsNoMuLumiWeight or --patternsNoBunchLumiWeight then --predictionMu must be specified too.");
       return kFALSE;
     }
 
     // Hard code some special cases
-    if (_useDefaultLumiScalingExceptions) {
-      _patternsNoLumiWeight.push_back("HLT_lumipeb_L1RD");
-      _patternsNoLumiWeight.push_back("HLT_lumipeb_vdm_L1RD");
-      _patternsNoLumiWeight.push_back("HLT_j0_perf_L1RD");
-      _patternsNoLumiWeight.push_back("HLT_ibllumi_L1RD");
-      _patternsNoLumiWeight.push_back("HLT_l1calocalib");
-      _patternsNoLumiWeight.push_back("HLT_sct_noise");
-      _patternsNoLumiWeight.push_back("HLT_noalg_L1RD");
+    if (useDefaultLumiScalingExceptions) {
+      patternsNoLumiWeight.push_back("HLT_lumipeb_L1RD");
+      patternsNoLumiWeight.push_back("HLT_lumipeb_vdm_L1RD");
+      patternsNoLumiWeight.push_back("HLT_j0_perf_L1RD");
+      patternsNoLumiWeight.push_back("HLT_ibllumi_L1RD");
+      patternsNoLumiWeight.push_back("HLT_l1calocalib");
+      patternsNoLumiWeight.push_back("HLT_sct_noise");
+      patternsNoLumiWeight.push_back("HLT_noalg_L1RD");
     }
 
-    if (_useDefaultExponentialScalingList) {
-      _patternsExpoMuLumiWeight.push_back("HLT_noalg_L1XE");
-      _patternsExpoMuLumiWeight.push_back("HLT_xe");
-      _patternsExpoMuLumiWeight.push_back("L1_XE");
+    if (useDefaultExponentialScalingList) {
+      patternsExpoMuLumiWeight.push_back("HLT_noalg_L1XE");
+      patternsExpoMuLumiWeight.push_back("HLT_xe");
+      patternsExpoMuLumiWeight.push_back("L1_XE");
     }
 
     // String patterns to match when doing monitoring
-    set(kPatternsMonitor, _patternsMonitor, "PatternsMonitor", kUnlocked);
-    set(kPatternsOutput, _patternsOutput, "PatternsOutput", kUnlocked);
-    set(kPatternsUnique, _patternsUnique, "PatternsUnique");
-    set(kPatternsExclude, _patternsExclude, "PatternsExclude");
-    set(kPatternsOverlap, _patternsOverlap, "PatternsOverlap");
-    set(kPatternsNoLumiWeight, _patternsNoLumiWeight, "PatternsNoLumiWeight");
-    set(kPatternsNoMuLumiWeight, _patternsNoMuLumiWeight, "PatternsNoMuLumiWeight");
-    set(kPatternsNoBunchLumiWeight, _patternsNoBunchLumiWeight, "PatternsNoBunchLumiWeight");
-    set(kPatternsExpoMuLumiWeight, _patternsExpoMuLumiWeight, "PatternsExpoMuLumiWeight");
+    set(kPatternsMonitor, patternsMonitor, "PatternsMonitor", kUnlocked);
+    set(kPatternsOutput, patternsOutput, "PatternsOutput", kUnlocked);
+    set(kPatternsUnique, patternsUnique, "PatternsUnique");
+    set(kPatternsExclude, patternsExclude, "PatternsExclude");
+    set(kPatternsOverlap, patternsOverlap, "PatternsOverlap");
+    set(kPatternsNoLumiWeight, patternsNoLumiWeight, "PatternsNoLumiWeight");
+    set(kPatternsNoMuLumiWeight, patternsNoMuLumiWeight, "PatternsNoMuLumiWeight");
+    set(kPatternsNoBunchLumiWeight, patternsNoBunchLumiWeight, "PatternsNoBunchLumiWeight");
+    set(kPatternsExpoMuLumiWeight, patternsExpoMuLumiWeight, "PatternsExpoMuLumiWeight");
 
 
     // If there are patterns here, make sure we switch on unique rates
-    if (_patternsUnique.size() > 0 && _doUniqueRates == kFALSE) {
-      _doUniqueRates = kTRUE;
+    if (patternsUnique.size() > 0 && doUniqueRates == kFALSE) {
+      doUniqueRates = kTRUE;
       Info("Config::parseCLI", "Setting --doUniqueRates to TRUE because one or more --patternsUnique were supplied");
     }
-    if (_doUniqueRates && _doExponentialMu) {
+    if (doUniqueRates && doExponentialMu) {
       Warning("Config::parseCLI", "Forcing doExponentialMu flag to FALSE otherwise can get negative unique rates.");
-      _doExponentialMu = kFALSE;
+      doExponentialMu = kFALSE;
     }
 
     // Lumi block settings. Start, end, and number to fully summarise
-    if (_lbEnd < _lbBegin) {
+    if (lbEnd < lbBegin) {
       Error("Config::parseCLI", "End lumi block number cannot be before starting lumi block number.");
       return kFALSE;
     }
-    set(kLumiStart, _lbBegin, "LumiBlockStart");
-    set(kLumiEnd, _lbEnd, "LumiBlockEnd");
-    set(kNLbFullSummary, _nLbFullSummary, "NLBFullSummary");
-    set(kNLbFullSkip, _nLbFullSkip, "NLBFullSkip");
-    set(kNLbPerHLTConfig, _nLbPerHLTConfig, "NLBPerHLTConfig");
-    set(kNHLTConfigSummary, _nHLTConfigSummary, "NHLTConfigSummary");
+    set(kLumiStart, lbBegin, "LumiBlockStart");
+    set(kLumiEnd, lbEnd, "LumiBlockEnd");
+    set(kNLbFullSummary, nLbFullSummary, "NLBFullSummary");
+    set(kNLbFullSkip, nLbFullSkip, "NLBFullSkip");
+    set(kNLbPerHLTConfig, nLbPerHLTConfig, "NLBPerHLTConfig");
+    set(kNHLTConfigSummary, nHLTConfigSummary, "NHLTConfigSummary");
 
     // Are we doing time consuming ROS matching?
-    Bool_t _matching = kFALSE;
-    if (_monitorROS || _monitorROBIN || _monitorROSChains || _monitorROSAlgs || _monitorEventProfile) _matching = kTRUE;
+    Bool_t matching = kFALSE;
+    if (monitorROS || monitorROBIN || monitorROSChains || monitorROSAlgs || monitorEventProfile) matching = kTRUE;
 
-    set(kEnableROSToAlgMatching, (Int_t) _matching, "RosToAlgMatching");
+    set(kEnableROSToAlgMatching, (Int_t) matching, "RosToAlgMatching");
 
     //////////////////////////
     //        OUTPUT TO GENERATE
     //////////////////////////
 
-    if (_doOutputHist + _doOutputCanvas + _doOutputPng + _doOutputPdf + _doOutputCsv + _doOutputXML == 0) {
+    if (doOutputHist + doOutputCanvas + doOutputPng + doOutputPdf + doOutputCsv + doOutputXML == 0) {
       Warning("Config::parseCLI",
               "No output format specified. Will default to --doOutputHist --doOutputCSV --doOutputMenus --doOutputRatesGraph --doOutputRatesXML");
-      _doOutputHist = 1;
-      _doOutputCsv = 1;
-      _doOutputRatesGraph = 1;
-      _doOutputMenus = 1;
-      _doOutputXML = 1;
+      doOutputHist = 1;
+      doOutputCsv = 1;
+      doOutputRatesGraph = 1;
+      doOutputMenus = 1;
+      doOutputXML = 1;
     }
 
-    set(kOutputRootDirectory, _outRootDirectory, "OutputRootFileSystemDirectory");
+    set(kOutputRootDirectory, outRootDirectory, "OutputRootFileSystemDirectory");
     // Combine the root output directory with the programs directory name here
-    _outDirectory = _outRootDirectory + "/" + _outDirectory;
+    outDirectory = outRootDirectory + "/" + outDirectory;
 
     // See if we have been requested to get the AtlasVersion from Athena and use it in the tag
-    if (_outputTagFromAthena == kTRUE) {
-      const Char_t* _env = std::getenv("AtlasBuildStamp");
-      if (_env != NULL) {
-        _outTag = std::string(_env);
+    if (outputTagFromAthena == kTRUE) {
+      const Char_t* env = std::getenv("AtlasBuildStamp");
+      if (env != NULL) {
+        outTag = std::string(env);
       }
     }
 
     // Remove any "_" from the tag
-    while (_outTag.find("_") != std::string::npos) {
-      _outTag.replace(_outTag.find("_"), 1, m_blankString);
-    }
-
-    set(kOutputPng, _doOutputPng, "DoPNG");
-    set(kOutputPdf, _doOutputPdf, "DoPDF");
-    set(kOutputImage, (Int_t) (_doOutputPdf || _doOutputPng), "DoOutputImage");
-    set(kOutputRoot, (Int_t) (_doOutputHist || _doOutputCanvas), "DoOutputROOT");
-    set(kOutputHist, _doOutputHist, "DoOutputHist");
-    set(kOutputCanvas, _doOutputCanvas, "DoOutputCanvas");
-    set(kOutputCsv, _doOutputCsv, "DoOutputCSV");
-    set(kOutputXML, _doOutputXML, "DoOutputXML");
-    set(kOutputRatesGraph, _doOutputRatesGraph, "DoOutputRatesGraph");
-    set(kOutputMenus, _doOutputMenus, "DoOutputMenus");
-    set(kOutputDirectory, _outDirectory, "OutputDirectory", kUnlocked); // Do NOT lock this as we need to modify it to
+    while (outTag.find("_") != std::string::npos) {
+      outTag.replace(outTag.find("_"), 1, m_blankString);
+    }
+
+    set(kOutputPng, doOutputPng, "DoPNG");
+    set(kOutputPdf, doOutputPdf, "DoPDF");
+    set(kOutputImage, (Int_t) (doOutputPdf || doOutputPng), "DoOutputImage");
+    set(kOutputRoot, (Int_t) (doOutputHist || doOutputCanvas), "DoOutputROOT");
+    set(kOutputHist, doOutputHist, "DoOutputHist");
+    set(kOutputCanvas, doOutputCanvas, "DoOutputCanvas");
+    set(kOutputCsv, doOutputCsv, "DoOutputCSV");
+    set(kOutputXML, doOutputXML, "DoOutputXML");
+    set(kOutputRatesGraph, doOutputRatesGraph, "DoOutputRatesGraph");
+    set(kOutputMenus, doOutputMenus, "DoOutputMenus");
+    set(kOutputDirectory, outDirectory, "OutputDirectory", kUnlocked); // Do NOT lock this as we need to modify it to
                                                                         // add the run number in
-    set(kOutputTag, _outTag, "OutputTag");
-    set(kOutputImageDirectory, _outImageDirectory, "OutputImageDirectory");
-    set(kOutputCSVDirectory, _outCSVDirectory, "OutputCSVDirectory");
-    set(kOutputXMLDirectory, _outXMLDirectory, "OutputXMLDirectory");
-    set(kOutputRatesGraphFilename, _outRatesGraphFilename, "OutputRatesGraphFilename");
-    set(kOutputRatesWarnings, _outRatesWarningsFilename, "OutputRatesWarningsFilename");
-    set(kOutputRootFilename, _outRootFilename, "OutputROOTFileName");
-    set(kLinkOutputDir, _linkOutputDirectory, "LinkOutputDirectory");
-    set(kWriteDummyPSXML, _writeDummyPSXML, "WriteDummyPSXML");
-    if (_userDetails != "") {
-      set(kUserDetails, _userDetails, "Details", kUnlocked); // Modified later to include metadata
+    set(kOutputTag, outTag, "OutputTag");
+    set(kOutputImageDirectory, outImageDirectory, "OutputImageDirectory");
+    set(kOutputCSVDirectory, outCSVDirectory, "OutputCSVDirectory");
+    set(kOutputXMLDirectory, outXMLDirectory, "OutputXMLDirectory");
+    set(kOutputRatesGraphFilename, outRatesGraphFilename, "OutputRatesGraphFilename");
+    set(kOutputRatesWarnings, outRatesWarningsFilename, "OutputRatesWarningsFilename");
+    set(kOutputRootFilename, outRootFilename, "OutputROOTFileName");
+    set(kLinkOutputDir, linkOutputDirectory, "LinkOutputDirectory");
+    set(kWriteDummyPSXML, writeDummyPSXML, "WriteDummyPSXML");
+    if (userDetails != "") {
+      set(kUserDetails, userDetails, "Details", kUnlocked); // Modified later to include metadata
     }
 
     //////////////////////////
@@ -1747,12 +1747,12 @@ namespace TrigCostRootAnalysis {
     //////////////////////////
 
     // Cannot both use EB weights and export them
-    if (_doEBWeighting == kTRUE && _writeEBWeightXML == kTRUE) {
+    if (doEBWeighting == kTRUE && writeEBWeightXML == kTRUE) {
       Error("Config::parseCLI", "Cannot use both --useEBWeight and --writeEBXML");
       abort();
     }
 
-    if (_doEBWeighting == kTRUE && _ratesScaleByPS == kTRUE) {
+    if (doEBWeighting == kTRUE && ratesScaleByPS == kTRUE) {
       Error("Config::parseCLI",
             "--useEBWeight with --scaleRatesByPS is not valid. When using EB wieghts, all PS are supplied by the user. You can then set everything to PS=1.");
       Error("Config::parseCLI",
@@ -1760,104 +1760,104 @@ namespace TrigCostRootAnalysis {
       abort();
     }
 
-    setFloat(kBasicEventWeight, _basicWeight, "BasicEventWeight");
-    if (!isZero(_predictionLumi)) {
+    setFloat(kBasicEventWeight, basicWeight, "BasicEventWeight");
+    if (!isZero(predictionLumi)) {
       // Allow either notation here. Either explicit or in multiples of 10^30
-      if (_predictionLumi < 1e20) _predictionLumi *= 1e30;
-      setFloat(kPredictionLumi, _predictionLumi, "PredictionLumi"); // The lumi we're currently predicting for (may be
+      if (predictionLumi < 1e20) predictionLumi *= 1e30;
+      setFloat(kPredictionLumi, predictionLumi, "PredictionLumi"); // The lumi we're currently predicting for (may be
                                                                     // set in XML)
     }
-    if (!isZero(_runLumi)) {
-      if (_runLumi < 1e20) _runLumi *= 1e30;
-      setFloat(kRunLumi, _runLumi, "RunLumi"); // The lumi of the EB run online
+    if (!isZero(runLumi)) {
+      if (runLumi < 1e20) runLumi *= 1e30;
+      setFloat(kRunLumi, runLumi, "RunLumi"); // The lumi of the EB run online
     }
 #ifdef MTHREAD
-    set(kNThread, _nThread, "NumberThreads");
+    set(kNThread, nThread, "NumberThreads");
 #else
     set(kNThread, 1, "NumberThreads");
 #endif
-    set(kSlowThreshold, _slowThreshold, "SlowThreshold");
-    set(kSlowEvThreshold, _slowEventThreshold, "SlowEventThreshold");
-    set(kDoEBWeighting, _doEBWeighting, "DoEBWeighting");
-    set(kWriteEBWeightXML, _writeEBWeightXML, "WriteEBWeightXML");
-    set(kDefaultLBLength, _defaultLBLength, "DefaultLBLength");
-    set(kDebug, _debug, "Debug");
-    set(kCleanAll, _cleanAll, "CleanAll"); //Specifies if the output directory is to be regenerated
-    set(kRatesForcePass, _ratesForcePass, "RatesForceAllChainsToPassRaw");
-    set(kDoUniqueRates, _doUniqueRates, "DoUniqueRates");
-    set(kDoCPS, _doCPS, "DoCPS");
-    set(kDoGroupOverlap, _doGroupOverlap, "DoGroupOverlap");
-    set(kDoAllOverlap, _doAllOverlap, "DoAllOverlap");
-    set(kHistBins, _histogramBins, "HistogramBins");
-    set(kRatesOverlapWarning, _ratesOverlapWarning, "RatesOverlapWarning");
-    set(kRatesScaleByPS, _ratesScaleByPS, "RatesScaleByPS");
-    set(kExtrapolate8To13, _extraplolate8To13, "Extrapolate8To13TeV");
-    set(kExtrapolate13To5, _extraplolate13To5, "Extrapolate13To5TeV");
-    set(kDoNotWriteMetadata, _doNotWriteMetadata, "DoNotWriteMetadata");
-    set(kNoMsgSuppression, _noMsgSup, "NoMessageSuppression");
+    set(kSlowThreshold, slowThreshold, "SlowThreshold");
+    set(kSlowEvThreshold, slowEventThreshold, "SlowEventThreshold");
+    set(kDoEBWeighting, doEBWeighting, "DoEBWeighting");
+    set(kWriteEBWeightXML, writeEBWeightXML, "WriteEBWeightXML");
+    set(kDefaultLBLength, defaultLBLength, "DefaultLBLength");
+    set(kDebug, debug, "Debug");
+    set(kCleanAll, cleanAll, "CleanAll"); //Specifies if the output directory is to be regenerated
+    set(kRatesForcePass, ratesForcePass, "RatesForceAllChainsToPassRaw");
+    set(kDoUniqueRates, doUniqueRates, "DoUniqueRates");
+    set(kDoCPS, doCPS, "DoCPS");
+    set(kDoGroupOverlap, doGroupOverlap, "DoGroupOverlap");
+    set(kDoAllOverlap, doAllOverlap, "DoAllOverlap");
+    set(kHistBins, histogramBins, "HistogramBins");
+    set(kRatesOverlapWarning, ratesOverlapWarning, "RatesOverlapWarning");
+    set(kRatesScaleByPS, ratesScaleByPS, "RatesScaleByPS");
+    set(kExtrapolate8To13, extraplolate8To13, "Extrapolate8To13TeV");
+    set(kExtrapolate13To5, extraplolate13To5, "Extrapolate13To5TeV");
+    set(kDoNotWriteMetadata, doNotWriteMetadata, "DoNotWriteMetadata");
+    set(kNoMsgSuppression, noMsgSup, "NoMessageSuppression");
     // If set to true, RD0/1/2/3 triggers will only be allowed to fire if the event was taken online with a random
     // trigger
     // This prevents the biased triggers inflating the rate of chains which are supposed to run off of the unbiased
     // triggers
-    set(kMatchL1RandomToOnline, _matchL1RandomToOnline, "MatchL1RandomToOnline");
-    set(kNoOnlineDeadtimeCorrection, _noOnlineDTCorrection, "NoOnlineDeadtimeCorrection");
-    set(kUpgradeScenario, _upgradeScenario, "UpgradeScenario");
-    set(kNoUpgradePileupScaling, _noUpgradePileupScaling, "NoUpgradePileupScaling");
-    set(kNoUpgradeBunchScaling, _noUpgradeBunchScaling, "NoUpgradeBunchScaling");
-    set(kDoUpgradeRatesScan, _doUpgradeRatesScan, "DoUpgradeRatesScan");
-    set(kMessageWait, _messageWait, "MessageWait");
+    set(kMatchL1RandomToOnline, matchL1RandomToOnline, "MatchL1RandomToOnline");
+    set(kNoOnlineDeadtimeCorrection, noOnlineDTCorrection, "NoOnlineDeadtimeCorrection");
+    set(kUpgradeScenario, upgradeScenario, "UpgradeScenario");
+    set(kNoUpgradePileupScaling, noUpgradePileupScaling, "NoUpgradePileupScaling");
+    set(kNoUpgradeBunchScaling, noUpgradeBunchScaling, "NoUpgradeBunchScaling");
+    set(kDoUpgradeRatesScan, doUpgradeRatesScan, "DoUpgradeRatesScan");
+    set(kMessageWait, messageWait, "MessageWait");
     setFloat(kEventElapsed, 0., "EventElasped", kUnlocked);
     setFloat(kEventStartTime, 0., "EventStart", kUnlocked);
-    set(kPatternsInvert, _patternsInvert, "PatternsInvert");
-    set(kIsCPUPrediction, _isCPUPrediction, "IsCPUPrediction");
+    set(kPatternsInvert, patternsInvert, "PatternsInvert");
+    set(kIsCPUPrediction, isCPUPrediction, "IsCPUPrediction");
     set(kIgnoreRerun, 0, "IgnoreRerun", kUnlocked);
-    set(kJIRA, _jira, "JIRA");
-    set(kPatternsExactMatch, _patternsExactMatch, "PatternsExactMatch");
-    set(kIgnoreNonPhysBunchGroups, _ignoreNonPhysBunchGroups, "IgnoreNonPhyBunchgroups");
-    set(kNoLBRescaling, _noLBRescaling, "NoLBRescaling");
-    setFloat(kTargetPeakMuAverage, _targetMu, "TargetMu", kUnlocked);
-    setFloat(kExpoRateScaleModifierL1, _expoRateScaleModifierL1, "ExpoRateScaleModifierL1");
-    setFloat(kExpoRateScaleModifierHLT, _expoRateScaleModifierHLT, "ExpoRateScaleModifierHLT");
-    set(kUpgradeMergeTOBOverlap, _upgradeMergeTOBOverlap, "UpgradeMergeTOBOverlap");
-    set(kDoExponentialMu, _doExponentialMu, "DoExponentialMu");
-    set(kInvertHighMuRunVeto, _invertHighMuRunVeto, "InvertHighMuRunVeto");
-    set(kUseOnlyTheseBCIDs, _useOnlyTheseBCIDs, "UseOnlyTheseBCIDs");
-    set(kIgnoreGRL, _ignoreGRL, "IgnoreGRL");
-
-    std::stringstream _multiRunss(_multiRun); // Comma separated
-    std::string _tempStr;
-    std::vector<Int_t> _multRunInts;
-    while (std::getline(_multiRunss, _tempStr, ',')) _multRunInts.push_back(stringToInt(_tempStr));
-    set(kMultiRun, _multRunInts, "MultiRun");
-
-
-    set(kMaxMultiSeed, _maxMultiSeed, "MaxMultiSeed");
-    if (_runNumber != 0) set(kRunNumber, _runNumber, "RunNucmber");
+    set(kJIRA, jira, "JIRA");
+    set(kPatternsExactMatch, patternsExactMatch, "PatternsExactMatch");
+    set(kIgnoreNonPhysBunchGroups, ignoreNonPhysBunchGroups, "IgnoreNonPhyBunchgroups");
+    set(kNoLBRescaling, noLBRescaling, "NoLBRescaling");
+    setFloat(kTargetPeakMuAverage, targetMu, "TargetMu", kUnlocked);
+    setFloat(kExpoRateScaleModifierL1, expoRateScaleModifierL1, "ExpoRateScaleModifierL1");
+    setFloat(kExpoRateScaleModifierHLT, expoRateScaleModifierHLT, "ExpoRateScaleModifierHLT");
+    set(kUpgradeMergeTOBOverlap, upgradeMergeTOBOverlap, "UpgradeMergeTOBOverlap");
+    set(kDoExponentialMu, doExponentialMu, "DoExponentialMu");
+    set(kInvertHighMuRunVeto, invertHighMuRunVeto, "InvertHighMuRunVeto");
+    set(kUseOnlyTheseBCIDs, useOnlyTheseBCIDs, "UseOnlyTheseBCIDs");
+    set(kIgnoreGRL, ignoreGRL, "IgnoreGRL");
+
+    std::stringstream multiRunss(multiRun); // Comma separated
+    std::string tempStr;
+    std::vector<Int_t> multRunInts;
+    while (std::getline(multiRunss, tempStr, ',')) multRunInts.push_back(stringToInt(tempStr));
+    set(kMultiRun, multRunInts, "MultiRun");
+
+
+    set(kMaxMultiSeed, maxMultiSeed, "MaxMultiSeed");
+    if (runNumber != 0) set(kRunNumber, runNumber, "RunNumber");
 
     // Load files to be accessed
     // File Names
-    if (_ROSXML != m_blankString) set(kROSXMLName, _ROSXML, "ROSXML");
-    if (_prescaleXML1 != m_blankString) set(kPrescaleXMLName1, _prescaleXML1, "PrescaleXML1");
-    if (_prescaleXML2 != m_blankString) set(kPrescaleXMLName2, _prescaleXML2, "PrescaleXML2");
+    if (ROSXML != m_blankString) set(kROSXMLName, ROSXML, "ROSXML");
+    if (prescaleXML1 != m_blankString) set(kPrescaleXMLName1, prescaleXML1, "PrescaleXML1");
+    if (prescaleXML2 != m_blankString) set(kPrescaleXMLName2, prescaleXML2, "PrescaleXML2");
 
     // Choose sensible default PS behaviour. If XML supplied, default to -1, else to +1.
-    if (_prescaleXML1 != m_blankString || _prescaleXML2 != m_blankString) {
-      if (_rateFallbackPrescaleL1 == FLT_MIN) _rateFallbackPrescaleL1 = -1.;
-      if (_rateFallbackPrescaleHLT == FLT_MIN) _rateFallbackPrescaleHLT = -1.;
+    if (prescaleXML1 != m_blankString || prescaleXML2 != m_blankString) {
+      if (rateFallbackPrescaleL1 == FLT_MIN) rateFallbackPrescaleL1 = -1.;
+      if (rateFallbackPrescaleHLT == FLT_MIN) rateFallbackPrescaleHLT = -1.;
     } else {
-      if (_rateFallbackPrescaleL1 == FLT_MIN) _rateFallbackPrescaleL1 = 1.;
-      if (_rateFallbackPrescaleHLT == FLT_MIN) _rateFallbackPrescaleHLT = 1.;
+      if (rateFallbackPrescaleL1 == FLT_MIN) rateFallbackPrescaleL1 = 1.;
+      if (rateFallbackPrescaleHLT == FLT_MIN) rateFallbackPrescaleHLT = 1.;
     }
-    if (isZero(_rateFallbackPrescaleL1 - 1.) == kFALSE) {
+    if (isZero(rateFallbackPrescaleL1 - 1.) == kFALSE) {
       Warning("Config::parseCLI", "PLEASE NOTE: Setting fall-back prescale value for unknown L1 items to %f.",
-              _rateFallbackPrescaleL1);
+              rateFallbackPrescaleL1);
     }
-    if (isZero(_rateFallbackPrescaleHLT - 1.) == kFALSE) {
+    if (isZero(rateFallbackPrescaleHLT - 1.) == kFALSE) {
       Warning("Config::parseCLI", "PLEASE NOTE: Setting fall-back prescale value for unknown HLT items to %f.",
-              _rateFallbackPrescaleHLT);
+              rateFallbackPrescaleHLT);
     }
-    setFloat(kRateFallbackPrescaleL1, _rateFallbackPrescaleL1, "RateFallbackPrescaleL1");
-    setFloat(kRateFallbackPrescaleHLT, _rateFallbackPrescaleHLT, "RateFallbackPrescaleHLT");
+    setFloat(kRateFallbackPrescaleL1, rateFallbackPrescaleL1, "RateFallbackPrescaleL1");
+    setFloat(kRateFallbackPrescaleHLT, rateFallbackPrescaleHLT, "RateFallbackPrescaleHLT");
 
     //////////////////////////
     //        END OF USER SETTINGS
@@ -1881,10 +1881,10 @@ namespace TrigCostRootAnalysis {
     set(kAFSDataDir, "/afs/cern.ch/user/a/attradm/public", "AFSDataDir");
 
     //Check if we're in ROOT CORE
-    const Char_t* _env = std::getenv("ROOTCOREBIN");
-    if (_env != NULL) {
+    const Char_t* env = std::getenv("ROOTCOREBIN");
+    if (env != NULL) {
       set(kIsRootCore, 1, "IsRootCore");
-      set(kDataDir, std::string(_env) + std::string("/data/TrigCostRootAnalysis/"), "DataDir");
+      set(kDataDir, std::string(env) + std::string("/data/TrigCostRootAnalysis/"), "DataDir");
       if (getIsSet(kROSXMLName)) set(kROSXMLPath, getStr(kDataDir) + getStr(kROSXMLName));
       if (getIsSet(kPrescaleXMLName1)) {
         if (getStr(kPrescaleXMLName1).substr(0, 1) == "/") set(kPrescaleXMLPath1, getStr(kPrescaleXMLName1));
@@ -1894,45 +1894,45 @@ namespace TrigCostRootAnalysis {
         if (getStr(kPrescaleXMLName2).substr(0, 1) == "/") set(kPrescaleXMLPath2, getStr(kPrescaleXMLName2));
         else set(kPrescaleXMLPath2, getStr(kDataDir) + getStr(kPrescaleXMLName2));
       }
-      set(kAutoMonXMLPath, getStr(kDataDir) + _AutoMonXMLName, "AutoMonXMLPath");
+      set(kAutoMonXMLPath, getStr(kDataDir) + AutoMonXMLName, "AutoMonXMLPath");
     } else {
 // CAUTION - "ATHENA ONLY" CODE
 #ifndef ROOTCORE
       set(kIsRootCore, 0, "IsRootCore");
       if (getIsSet(kROSXMLName)) {
-        std::string _locAthena = PathResolverFindDataFile(getStr(kROSXMLName));
-        if (_locAthena ==
+        std::string locAthena = PathResolverFindDataFile(getStr(kROSXMLName));
+        if (locAthena ==
             m_blankString) Error("Config::parseCLI", "Athena cannot find ROS mapping file %s", getStr(
             kROSXMLName).c_str());
 
         else {
-          set(kROSXMLPath, _locAthena, "ROSXMLPath");
+          set(kROSXMLPath, locAthena, "ROSXMLPath");
           Info("Config::parseCLI", "Athena has found the file: %s", getStr(kROSXMLPath).c_str());
         }
       }
       //
       if (getIsSet(kPrescaleXMLName1)) {
-        std::string _locAthena = PathResolverFindDataFile(getStr(kPrescaleXMLName1));
-        if (_locAthena ==
+        std::string locAthena = PathResolverFindDataFile(getStr(kPrescaleXMLName1));
+        if (locAthena ==
         m_blankString) Error("Config::parseCLI", "Athena cannot find prescale XML file #1 %s", getStr(
             kPrescaleXMLName1).c_str());
         else {
-          set(kPrescaleXMLPath1, _locAthena, "PrescaleXMLPath1");
+          set(kPrescaleXMLPath1, locAthena, "PrescaleXMLPath1");
           Info("Config::parseCLI", "Athena has found the file: %s", getStr(kPrescaleXMLPath1).c_str());
         }
       }
       if (getIsSet(kPrescaleXMLName2)) {
-        std::string _locAthena = PathResolverFindDataFile(getStr(kPrescaleXMLName2));
-        if (_locAthena == m_blankString) Error("Config::parseCLI", "Athena cannot find prescale XML file #2 %s", getStr(kPrescaleXMLName2).c_str());
+        std::string locAthena = PathResolverFindDataFile(getStr(kPrescaleXMLName2));
+        if (locAthena == m_blankString) Error("Config::parseCLI", "Athena cannot find prescale XML file #2 %s", getStr(kPrescaleXMLName2).c_str());
         else {
-          set(kPrescaleXMLPath2, _locAthena, "PrescaleXMLPath2");
+          set(kPrescaleXMLPath2, locAthena, "PrescaleXMLPath2");
           Info("Config::parseCLI", "Athena has found the file: %s", getStr(kPrescaleXMLPath2).c_str());
         }
       }
-      std::string _locAthena = PathResolverFindDataFile(_AutoMonXMLName);
-      if (_locAthena == m_blankString) Error("Config::parseCLI", "Athena cannot find AutoMonConfig XML file #1 %s", _AutoMonXMLName.c_str());
+      std::string locAthena = PathResolverFindDataFile(AutoMonXMLName);
+      if (locAthena == m_blankString) Error("Config::parseCLI", "Athena cannot find AutoMonConfig XML file #1 %s", AutoMonXMLName.c_str());
       else {
-        set(kAutoMonXMLPath, _locAthena, "AutoMonXMLPath");
+        set(kAutoMonXMLPath, locAthena, "AutoMonXMLPath");
       }
 #endif // not ROOTCORE
     }
@@ -1948,9 +1948,9 @@ namespace TrigCostRootAnalysis {
     set(kLinkOutputDirName, "costMon", "OutputDirLinkName");
     setFloat(kUnbiasedWeightThreshold, 2.5e5, "UnbiasedWeightThreshold"); // RUn1 ONLY: Events with w>this will be
                                                                           // considered to be RD0 streamers (unbiased)
-    if (_binMin != FLT_MIN && _binMax != FLT_MIN) {
-      setFloat(kHistBinMin, _binMin, "HistogramBinMin");
-      setFloat(kHistBinMax, _binMax, "HistogramBinMax");
+    if (binMin != FLT_MIN && binMax != FLT_MIN) {
+      setFloat(kHistBinMin, binMin, "HistogramBinMin");
+      setFloat(kHistBinMax, binMax, "HistogramBinMax");
     }
     set(kUpgradeEMCountsPerGeV, 2, "UpgradeEMCountsPerGeV");
     set(kUpgradeJetCountsPerGeV, 1, "UpgradeJetCountsPerGeV");
@@ -2024,7 +2024,7 @@ namespace TrigCostRootAnalysis {
     set(kROBINString, "ROBIN");
     set(kROSString, "ROS");
     set(kAlwaysPassString, "UNSEEDED");
-    set(kVersionString, _version, "Version");
+    set(kVersionString, version, "Version");
 
     // Different variables to save
     set(kVarTime, "Time");
@@ -2145,355 +2145,355 @@ namespace TrigCostRootAnalysis {
   void Config::dump() {
     Info("Config::dump", "TrigCostD3PD has %i configuration settings saved for this processing.", Int_t(m_settingsStr.size() + m_settingsVecStr.size() + m_settingsInt.size()));
 
-    std::map<ConfKey_t, Int_t>::iterator _itInt;
-    std::map<ConfKey_t, Long64_t>::iterator _itLong;
-    std::map<ConfKey_t, Float_t>::iterator _itFloat;
-    std::map<ConfKey_t, std::string>::iterator _itStr;
-    std::map<ConfKey_t, std::vector<std::string> > ::iterator _itStrVec;
-    std::map<ConfKey_t, std::vector<Int_t> > ::iterator _itIntVec;
-
-    Int_t _i = -1;
-    for (_itInt = m_settingsInt.begin(); _itInt != m_settingsInt.end(); ++_itInt) {
-      const std::string _name = m_settingsName[_itInt->first];
-      Info("Config::dump", " [INT:%i]\t[LOCK:%i]\t%s = %i", ++_i, (Int_t) getIsLocked(_itInt->first), _name.c_str(), _itInt->second);
-    }
-    _i = -1;
-    for (_itLong = m_settingsLong.begin(); _itLong != m_settingsLong.end(); ++_itLong) {
-      const std::string _name = m_settingsName[_itLong->first];
-      Info("Config::dump", " [LONG:%i]\t[LOCK:%i]\t%s = %lli", ++_i, (Int_t) getIsLocked(_itLong->first), _name.c_str(), _itLong->second);
-    }
-    _i = -1;
-    for (_itFloat = m_settingsFloat.begin(); _itFloat != m_settingsFloat.end(); ++_itFloat) {
-      const std::string _name = m_settingsName[_itFloat->first];
+    std::map<ConfKey_t, Int_t>::iterator itInt;
+    std::map<ConfKey_t, Long64_t>::iterator itLong;
+    std::map<ConfKey_t, Float_t>::iterator itFloat;
+    std::map<ConfKey_t, std::string>::iterator itStr;
+    std::map<ConfKey_t, std::vector<std::string> > ::iterator itStrVec;
+    std::map<ConfKey_t, std::vector<Int_t> > ::iterator itIntVec;
+
+    Int_t i = -1;
+    for (itInt = m_settingsInt.begin(); itInt != m_settingsInt.end(); ++itInt) {
+      const std::string name = m_settingsName[itInt->first];
+      Info("Config::dump", " [INT:%i]\t[LOCK:%i]\t%s = %i", ++i, (Int_t) getIsLocked(itInt->first), name.c_str(), itInt->second);
+    }
+    i = -1;
+    for (itLong = m_settingsLong.begin(); itLong != m_settingsLong.end(); ++itLong) {
+      const std::string name = m_settingsName[itLong->first];
+      Info("Config::dump", " [LONG:%i]\t[LOCK:%i]\t%s = %lli", ++i, (Int_t) getIsLocked(itLong->first), name.c_str(), itLong->second);
+    }
+    i = -1;
+    for (itFloat = m_settingsFloat.begin(); itFloat != m_settingsFloat.end(); ++itFloat) {
+      const std::string name = m_settingsName[itFloat->first];
       // Big or small?
-      if (_itFloat->second > 1e4) { //BIG
-        Info("Config::dump", " [FLOAT:%i]\t[LOCK:%i]\t%s = %e", ++_i, (Int_t) getIsLocked(_itFloat->first), _name.c_str(), _itFloat->second);
+      if (itFloat->second > 1e4) { //BIG
+        Info("Config::dump", " [FLOAT:%i]\t[LOCK:%i]\t%s = %e", ++i, (Int_t) getIsLocked(itFloat->first), name.c_str(), itFloat->second);
       } else { // small
-        Info("Config::dump", " [FLOAT:%i]\t[LOCK:%i]\t%s = %f", ++_i, (Int_t) getIsLocked(_itFloat->first), _name.c_str(), _itFloat->second);
+        Info("Config::dump", " [FLOAT:%i]\t[LOCK:%i]\t%s = %f", ++i, (Int_t) getIsLocked(itFloat->first), name.c_str(), itFloat->second);
       }
     }
-    _i = -1;
-    for (_itStr = m_settingsStr.begin(); _itStr != m_settingsStr.end(); ++_itStr) {
-      const std::string _name = m_settingsName[_itStr->first];
-      Info("Config::dump", " [STRING:%i]\t[LOCK:%i]\t%s = \"%s\"", ++_i, (Int_t) getIsLocked(_itStr->first), _name.c_str(), _itStr->second.c_str());
-    }
-    _i = -1;
-    for (_itStrVec = m_settingsVecStr.begin(); _itStrVec != m_settingsVecStr.end(); ++_itStrVec) {
-      const std::string _name = m_settingsName[_itStrVec->first];
-      Info("Config::dump", " [VEC<STR>:%i]\t[LOCK:%i]\t%s, size %u", ++_i, (Int_t) getIsLocked(_itStrVec->first), _name.c_str(), (UInt_t) _itStrVec->second.size());
-      for (UInt_t _v = 0; _v < _itStrVec->second.size(); ++_v) {
-        Info("Config::dump", "\t\t\t\t  [%u] \"%s\"", _v, _itStrVec->second.at(_v).c_str());
+    i = -1;
+    for (itStr = m_settingsStr.begin(); itStr != m_settingsStr.end(); ++itStr) {
+      const std::string name = m_settingsName[itStr->first];
+      Info("Config::dump", " [STRING:%i]\t[LOCK:%i]\t%s = \"%s\"", ++i, (Int_t) getIsLocked(itStr->first), name.c_str(), itStr->second.c_str());
+    }
+    i = -1;
+    for (itStrVec = m_settingsVecStr.begin(); itStrVec != m_settingsVecStr.end(); ++itStrVec) {
+      const std::string name = m_settingsName[itStrVec->first];
+      Info("Config::dump", " [VEC<STR>:%i]\t[LOCK:%i]\t%s, size %u", ++i, (Int_t) getIsLocked(itStrVec->first), name.c_str(), (UInt_t) itStrVec->second.size());
+      for (UInt_t v = 0; v < itStrVec->second.size(); ++v) {
+        Info("Config::dump", "\t\t\t\t  [%u] \"%s\"", v, itStrVec->second.at(v).c_str());
       }
     }
-    _i = -1;
-    for (_itIntVec = m_settingsVecInt.begin(); _itIntVec != m_settingsVecInt.end(); ++_itIntVec) {
-      const std::string _name = m_settingsName[_itIntVec->first];
-      Info("Config::dump", " [VEC<INT>:%i]\t[LOCK:%i]\t%s, size %u", ++_i, (Int_t) getIsLocked(_itIntVec->first), _name.c_str(), (UInt_t) _itIntVec->second.size());
-      for (UInt_t _v = 0; _v < _itIntVec->second.size(); ++_v) {
-        Info("Config::dump", "\t\t\t\t  [%u] \"%i\"", _v, _itIntVec->second.at(_v));
+    i = -1;
+    for (itIntVec = m_settingsVecInt.begin(); itIntVec != m_settingsVecInt.end(); ++itIntVec) {
+      const std::string name = m_settingsName[itIntVec->first];
+      Info("Config::dump", " [VEC<INT>:%i]\t[LOCK:%i]\t%s, size %u", ++i, (Int_t) getIsLocked(itIntVec->first), name.c_str(), (UInt_t) itIntVec->second.size());
+      for (UInt_t v = 0; v < itIntVec->second.size(); ++v) {
+        Info("Config::dump", "\t\t\t\t  [%u] \"%i\"", v, itIntVec->second.at(v));
       }
     }
   }
 
-  void Config::dumpToMeta(std::ofstream& _fout, JsonExport& _json) {
-    std::map<ConfKey_t, Int_t>::iterator _itInt;
-    std::map<ConfKey_t, Long64_t>::iterator _itLong;
-    std::map<ConfKey_t, Float_t>::iterator _itFloat;
-    std::map<ConfKey_t, std::string>::iterator _itStr;
-    std::map<ConfKey_t, std::vector<std::string> > ::iterator _itStrVec;
-    std::map<ConfKey_t, std::vector<Int_t> > ::iterator _itIntVec;
+  void Config::dumpToMeta(std::ofstream& fout, JsonExport& json) {
+    std::map<ConfKey_t, Int_t>::iterator itInt;
+    std::map<ConfKey_t, Long64_t>::iterator itLong;
+    std::map<ConfKey_t, Float_t>::iterator itFloat;
+    std::map<ConfKey_t, std::string>::iterator itStr;
+    std::map<ConfKey_t, std::vector<std::string> > ::iterator itStrVec;
+    std::map<ConfKey_t, std::vector<Int_t> > ::iterator itIntVec;
 
-    for (_itInt = m_settingsInt.begin(); _itInt != m_settingsInt.end(); ++_itInt) {
-      const std::string _name = m_settingsName[_itInt->first];
-      _json.addLeafCustom(_fout, _name, intToString(_itInt->second));
+    for (itInt = m_settingsInt.begin(); itInt != m_settingsInt.end(); ++itInt) {
+      const std::string name = m_settingsName[itInt->first];
+      json.addLeafCustom(fout, name, intToString(itInt->second));
     }
-    for (_itLong = m_settingsLong.begin(); _itLong != m_settingsLong.end(); ++_itLong) {
-      const std::string _name = m_settingsName[_itLong->first];
-      _json.addLeafCustom(_fout, _name, intToString(_itLong->second));
+    for (itLong = m_settingsLong.begin(); itLong != m_settingsLong.end(); ++itLong) {
+      const std::string name = m_settingsName[itLong->first];
+      json.addLeafCustom(fout, name, intToString(itLong->second));
     }
-    for (_itFloat = m_settingsFloat.begin(); _itFloat != m_settingsFloat.end(); ++_itFloat) {
-      _json.addLeafCustom(_fout, m_settingsName[_itFloat->first], floatToString(_itFloat->second));
+    for (itFloat = m_settingsFloat.begin(); itFloat != m_settingsFloat.end(); ++itFloat) {
+      json.addLeafCustom(fout, m_settingsName[itFloat->first], floatToString(itFloat->second));
     }
-    for (_itStr = m_settingsStr.begin(); _itStr != m_settingsStr.end(); ++_itStr) {
-      if (m_settingsName[_itStr->first] == _itStr->second) continue;
-      _json.addLeafCustom(_fout, m_settingsName[_itStr->first], _itStr->second);
+    for (itStr = m_settingsStr.begin(); itStr != m_settingsStr.end(); ++itStr) {
+      if (m_settingsName[itStr->first] == itStr->second) continue;
+      json.addLeafCustom(fout, m_settingsName[itStr->first], itStr->second);
     }
-    for (_itStrVec = m_settingsVecStr.begin(); _itStrVec != m_settingsVecStr.end(); ++_itStrVec) {
-      for (UInt_t _v = 0; _v < _itStrVec->second.size(); ++_v) {
-        _json.addLeafCustom(_fout, std::string(m_settingsName[_itStrVec->first] + intToString(_v)), _itStrVec->second.at(_v).c_str());
+    for (itStrVec = m_settingsVecStr.begin(); itStrVec != m_settingsVecStr.end(); ++itStrVec) {
+      for (UInt_t v = 0; v < itStrVec->second.size(); ++v) {
+        json.addLeafCustom(fout, std::string(m_settingsName[itStrVec->first] + intToString(v)), itStrVec->second.at(v).c_str());
       }
     }
-    for (_itIntVec = m_settingsVecInt.begin(); _itIntVec != m_settingsVecInt.end(); ++_itIntVec) {
-      for (UInt_t _v = 0; _v < _itIntVec->second.size(); ++_v) {
-        _json.addLeafCustom(_fout, std::string(m_settingsName[_itIntVec->first] + intToString(_v)), intToString(_itIntVec->second.at(_v)));
+    for (itIntVec = m_settingsVecInt.begin(); itIntVec != m_settingsVecInt.end(); ++itIntVec) {
+      for (UInt_t v = 0; v < itIntVec->second.size(); ++v) {
+        json.addLeafCustom(fout, std::string(m_settingsName[itIntVec->first] + intToString(v)), intToString(itIntVec->second.at(v)));
       }
     }
   }
 
   void Config::messageSuppressionReport() {
-    for (std::map<ConfKey_t, Int_t>::iterator _itInt = m_settingsInt.begin(); _itInt != m_settingsInt.end(); ++_itInt) {
-      ConfKey_t _key = _itInt->first;
-      if (m_settingsMaxCalls[_key] == 0) {
+    for (std::map<ConfKey_t, Int_t>::iterator itInt = m_settingsInt.begin(); itInt != m_settingsInt.end(); ++itInt) {
+      ConfKey_t key = itInt->first;
+      if (m_settingsMaxCalls[key] == 0) {
         continue; // If no max message calls
       }
-      if (m_settingsInt[_key] < m_settingsMaxCalls[_key]) {
+      if (m_settingsInt[key] < m_settingsMaxCalls[key]) {
         continue; // If no overflow suppresion messages
       }
-      const std::string _name = m_settingsName[_key];
-      UInt_t _suppressed = m_settingsInt[_key] - m_settingsMaxCalls[_key];
-      Warning("Config::messageSuppressionReport", "There were %i additional instances of message '%s' which were suppressed.", _suppressed, _name.c_str());
+      const std::string name = m_settingsName[key];
+      UInt_t suppressed = m_settingsInt[key] - m_settingsMaxCalls[key];
+      Warning("Config::messageSuppressionReport", "There were %i additional instances of message '%s' which were suppressed.", suppressed, name.c_str());
     }
   }
 
   /**
    * Retrieve string configuration for given enum key.
-   * @param _key enum key for this config.
+   * @param key enum key for this config.
    * @returns Requested configuration string or blank string if key not found.
    */
-  const std::string& Config::getStr(ConfKey_t _key) {
-    if (m_settingsStr.count(_key) == 1) {
-      return m_settingsStr[_key];// Return the requested string
-    } else if (m_settingsVecStr.count(_key) == 1) {
-      static std::string _scratch; // singleton so this is OK
-      std::stringstream _ss;
-      for (auto _entry : m_settingsVecStr[_key]) {
-        _ss << _entry << ", ";
+  const std::string& Config::getStr(ConfKey_t key) {
+    if (m_settingsStr.count(key) == 1) {
+      return m_settingsStr[key];// Return the requested string
+    } else if (m_settingsVecStr.count(key) == 1) {
+      static std::string scratch; // singleton so this is OK
+      std::stringstream ss;
+      for (auto entry : m_settingsVecStr[key]) {
+        ss << entry << ", ";
       }
-      _scratch = _ss.str();
-      return _scratch;
+      scratch = ss.str();
+      return scratch;
     } else {
-      std::string _name;
-      if (m_settingsName.count(_key) == 1) _name = m_settingsName[_key];
-      Error("Config::getStr", "Unknown string-key %i. (name, if any:%s)", _key, _name.c_str());
+      std::string name;
+      if (m_settingsName.count(key) == 1) name = m_settingsName[key];
+      Error("Config::getStr", "Unknown string-key %i. (name, if any:%s)", key, name.c_str());
     }
     return m_blankString;
   }
 
   /**
    * Retrieve string name of config enum
-   * @param _key enum key for this config.
+   * @param key enum key for this config.
    * @returns Requested configuration enum's na,me.
    */
-  const std::string& Config::getName(ConfKey_t _key) {
-    if (m_settingsName.count(_key) == 0) {
-      Error("Config::getName", "Unknown key %i", _key);
+  const std::string& Config::getName(ConfKey_t key) {
+    if (m_settingsName.count(key) == 0) {
+      Error("Config::getName", "Unknown key %i", key);
       return m_blankString;
     }
     // Return the requested string
-    return m_settingsName[_key];
+    return m_settingsName[key];
   }
 
   /**
    * Retrieve integer configuration for given enum key.
-   * @param _key enum key for this config.
+   * @param key enum key for this config.
    * @return Requested configuration integer or -1 if key not found.
    */
-  Int_t Config::getInt(ConfKey_t _key) {
-    if (m_settingsInt.count(_key) == 0) {
-      std::string _name;
-      if (m_settingsName.count(_key) == 1) _name = m_settingsName[_key];
-      Error("Config::getInt", "Unknown key %i %s", _key, _name.c_str());
+  Int_t Config::getInt(ConfKey_t key) {
+    if (m_settingsInt.count(key) == 0) {
+      std::string name;
+      if (m_settingsName.count(key) == 1) name = m_settingsName[key];
+      Error("Config::getInt", "Unknown key %i %s", key, name.c_str());
       return -1;
     }
-    return m_settingsInt[_key];
+    return m_settingsInt[key];
   }
 
   /**
    * Increase by one the integer or long for given enum key.
-   * @param _key enum key for this config.
+   * @param key enum key for this config.
    */
-  void Config::increment(ConfKey_t _key) {
-    if (getIsLocked(_key, kTRUE) == kTRUE) return;
+  void Config::increment(ConfKey_t key) {
+    if (getIsLocked(key, kTRUE) == kTRUE) return;
 
-    if (m_settingsInt.count(_key) == 1) {
-      ++m_settingsInt[_key];
-    } else if (m_settingsLong.count(_key) == 1) {
-      ++m_settingsLong[_key];
+    if (m_settingsInt.count(key) == 1) {
+      ++m_settingsInt[key];
+    } else if (m_settingsLong.count(key) == 1) {
+      ++m_settingsLong[key];
     } else {
-      std::string _name;
-      if (m_settingsName.count(_key) == 1) _name = m_settingsName[_key];
-      Error("Config::increment", "Unknown key %i %s", _key, _name.c_str());
+      std::string name;
+      if (m_settingsName.count(key) == 1) name = m_settingsName[key];
+      Error("Config::increment", "Unknown key %i %s", key, name.c_str());
       return;
     }
   }
 
   /**
    * Decrease by one the integer for given enum key.
-   * @param _key enum key for this config.
+   * @param key enum key for this config.
    */
-  void Config::decrement(ConfKey_t _key) {
-    if (m_settingsInt.count(_key) == 0) {
-      std::string _name;
-      if (m_settingsName.count(_key) == 1) _name = m_settingsName[_key];
-      Error("Config::decrement", "Unknown key %i %s", _key, _name.c_str());
+  void Config::decrement(ConfKey_t key) {
+    if (m_settingsInt.count(key) == 0) {
+      std::string name;
+      if (m_settingsName.count(key) == 1) name = m_settingsName[key];
+      Error("Config::decrement", "Unknown key %i %s", key, name.c_str());
       return;
     }
-    if (getIsLocked(_key, kTRUE) == kTRUE) return;
+    if (getIsLocked(key, kTRUE) == kTRUE) return;
 
-    --m_settingsInt[_key];
+    --m_settingsInt[key];
   }
 
   /**
    * Retrieve float configuration for given enum key.
-   * @param _key enum key for this config.
+   * @param key enum key for this config.
    * @return Requested configuration integer or -1 if key not found.
    */
-  Float_t Config::getFloat(ConfKey_t _key) {
-    if (m_settingsFloat.count(_key) == 0) {
-      std::string _name;
-      if (m_settingsName.count(_key) == 1) _name = m_settingsName[_key];
-      Error("Config::getFloat", "Unknown key %i %s", _key, _name.c_str());
+  Float_t Config::getFloat(ConfKey_t key) {
+    if (m_settingsFloat.count(key) == 0) {
+      std::string name;
+      if (m_settingsName.count(key) == 1) name = m_settingsName[key];
+      Error("Config::getFloat", "Unknown key %i %s", key, name.c_str());
       return -1.;
     }
-    return m_settingsFloat[_key];
+    return m_settingsFloat[key];
   }
 
   /**
    * Retrieve long int configuration for given enum key.
-   * @param _key enum key for this config.
+   * @param key enum key for this config.
    * @return Requested configuration integer or -1 if key not found.
    */
-  Long64_t Config::getLong(ConfKey_t _key) {
-    if (m_settingsLong.count(_key) == 0) {
-      std::string _name;
-      if (m_settingsName.count(_key) == 1) _name = m_settingsName[_key];
-      Error("Config::getLong", "Unknown key %i %s", _key, _name.c_str());
+  Long64_t Config::getLong(ConfKey_t key) {
+    if (m_settingsLong.count(key) == 0) {
+      std::string name;
+      if (m_settingsName.count(key) == 1) name = m_settingsName[key];
+      Error("Config::getLong", "Unknown key %i %s", key, name.c_str());
       return -1;
     }
-    return m_settingsLong[_key];
+    return m_settingsLong[key];
   }
 
   /**
    * Retrieve size of vector storage for given enum key.
-   * @param _key enum key for this config.
+   * @param key enum key for this config.
    * @return Size of vector for given key, or INT_MAX if key not found.
    */
-  UInt_t Config::getVecSize(ConfKey_t _key) {
-    if (m_settingsVecStr.count(_key) == 0) {
-      std::string _name;
-      if (m_settingsName.count(_key) == 1) _name = m_settingsName[_key];
-      Error("Config::getVecSize", "Unknown key %i %s", _key, _name.c_str());
+  UInt_t Config::getVecSize(ConfKey_t key) {
+    if (m_settingsVecStr.count(key) == 0) {
+      std::string name;
+      if (m_settingsName.count(key) == 1) name = m_settingsName[key];
+      Error("Config::getVecSize", "Unknown key %i %s", key, name.c_str());
       return INT_MAX;
     }
-    return m_settingsVecStr[_key].size();
+    return m_settingsVecStr[key].size();
   }
 
   /**
    * Retrieve vector configuration for given key.
-   * @param _key enum key for this config.
-   * @param _location Location within vector to return.
+   * @param key enum key for this config.
+   * @param location Location within vector to return.
    * @return String at vector location for requested key or blank string if key not found or out of range.
    */
-  const std::string& Config::getVecEntry(ConfKey_t _key, UInt_t _location) {
-    if (m_settingsVecStr.count(_key) == 0) {
-      std::string _name;
-      if (m_settingsName.count(_key) == 1) _name = m_settingsName[_key];
-      Error("Config::getVecEntry", "Unknown key %i %s", _key, _name.c_str());
+  const std::string& Config::getVecEntry(ConfKey_t key, UInt_t location) {
+    if (m_settingsVecStr.count(key) == 0) {
+      std::string name;
+      if (m_settingsName.count(key) == 1) name = m_settingsName[key];
+      Error("Config::getVecEntry", "Unknown key %i %s", key, name.c_str());
       return m_blankString;
     }
-    if (_location >= getVecSize(_key)) {
-      Error("Config::getVecEntry", "Location %i is out of range", _location);
+    if (location >= getVecSize(key)) {
+      Error("Config::getVecEntry", "Location %i is out of range", location);
       return m_blankString;
     }
-    return m_settingsVecStr[_key].at(_location);
+    return m_settingsVecStr[key].at(location);
   }
 
   /**
    * If a settings vector is registered with a given key, and it is unlocked, then append the given string.
-   * @param _key enum key for this config.
-   * @param _toAdd Const reference to string to add to the settings vector.
+   * @param key enum key for this config.
+   * @param toAdd Const reference to string to add to the settings vector.
    * @return true on success.
    */
-  Bool_t Config::addVecEntry(ConfKey_t _key, const std::string& _toAdd) {
-    if (m_settingsVecStr.count(_key) == 0) {
-      std::string _name;
-      if (m_settingsName.count(_key) == 1) _name = m_settingsName[_key];
-      Error("Config::addVecEntry", "Unknown key %i %s", _key, _name.c_str());
+  Bool_t Config::addVecEntry(ConfKey_t key, const std::string& toAdd) {
+    if (m_settingsVecStr.count(key) == 0) {
+      std::string name;
+      if (m_settingsName.count(key) == 1) name = m_settingsName[key];
+      Error("Config::addVecEntry", "Unknown key %i %s", key, name.c_str());
       return kFALSE;
     }
-    if (getIsLocked(_key, kTRUE) == kTRUE) return kFALSE;
+    if (getIsLocked(key, kTRUE) == kTRUE) return kFALSE;
 
-    m_settingsVecStr[_key].push_back(_toAdd);
+    m_settingsVecStr[key].push_back(toAdd);
     return kTRUE;
   }
 
   /**
    * If a settings vector is registered with a given key, and it is unlocked, then remove the given entry.
    * Note the test is for an exact match, whereas getVecMatches() checks for a fuzzy match.
-   * @param _key enum key for this config.
-   * @param _toRemove Const reference to string to remove from the settings vector.
+   * @param key enum key for this config.
+   * @param toRemove Const reference to string to remove from the settings vector.
    * @return true if one or more entries were removed.
    */
-  Bool_t Config::removeVecEntry(ConfKey_t _key, const std::string& _toRemove) {
-    Bool_t _entriesRemoved = kFALSE;
+  Bool_t Config::removeVecEntry(ConfKey_t key, const std::string& toRemove) {
+    Bool_t entriesRemoved = kFALSE;
 
-    if (m_settingsVecStr.count(_key) == 0) {
-      std::string _name;
-      if (m_settingsName.count(_key) == 1) _name = m_settingsName[_key];
-      Error("Config::removeVecEntry", "Unknown key %i %s", _key, _name.c_str());
+    if (m_settingsVecStr.count(key) == 0) {
+      std::string name;
+      if (m_settingsName.count(key) == 1) name = m_settingsName[key];
+      Error("Config::removeVecEntry", "Unknown key %i %s", key, name.c_str());
       return kFALSE;
     }
-    if (getIsLocked(_key, kTRUE) == kTRUE) return kFALSE;
+    if (getIsLocked(key, kTRUE) == kTRUE) return kFALSE;
 
-    std::vector<std::string>::iterator _it = m_settingsVecStr[_key].begin();
-    while (_it != m_settingsVecStr[_key].end()) {
-      if (_toRemove.compare((*_it)) == 0) { // Compare == 0 for exact match only
-        _it = m_settingsVecStr[_key].erase(_it);
-        _entriesRemoved = kTRUE;
+    std::vector<std::string>::iterator it = m_settingsVecStr[key].begin();
+    while (it != m_settingsVecStr[key].end()) {
+      if (toRemove.compare((*it)) == 0) { // Compare == 0 for exact match only
+        it = m_settingsVecStr[key].erase(it);
+        entriesRemoved = kTRUE;
       } else {
-        ++_it;
+        ++it;
       }
     }
-    return _entriesRemoved;
+    return entriesRemoved;
   }
 
   /**
    * Remove all entries in a config vector
-   * @param _key enum key for this config.
+   * @param key enum key for this config.
    * @return true if one or more entries were removed.
    */
-  Bool_t Config::clearVec(ConfKey_t _key) {
-    Bool_t _entriesRemoved = kFALSE;
+  Bool_t Config::clearVec(ConfKey_t key) {
+    Bool_t entriesRemoved = kFALSE;
 
-    if (m_settingsVecStr.count(_key) == 0 && m_settingsVecInt.count(_key) == 0) {
-      std::string _name;
-      if (m_settingsName.count(_key) == 1) _name = m_settingsName[_key];
-      Error("Config::clearVec", "Unknown key %i %s", _key, _name.c_str());
+    if (m_settingsVecStr.count(key) == 0 && m_settingsVecInt.count(key) == 0) {
+      std::string name;
+      if (m_settingsName.count(key) == 1) name = m_settingsName[key];
+      Error("Config::clearVec", "Unknown key %i %s", key, name.c_str());
       return kFALSE;
     }
-    if (getIsLocked(_key, kTRUE) == kTRUE) return kFALSE;
+    if (getIsLocked(key, kTRUE) == kTRUE) return kFALSE;
 
-    if (m_settingsVecStr[_key].size()) _entriesRemoved = kTRUE;
-    m_settingsVecStr[_key].clear();
-    if (m_settingsVecInt[_key].size()) _entriesRemoved = kTRUE;
-    m_settingsVecInt[_key].clear();
-    return _entriesRemoved;
+    if (m_settingsVecStr[key].size()) entriesRemoved = kTRUE;
+    m_settingsVecStr[key].clear();
+    if (m_settingsVecInt[key].size()) entriesRemoved = kTRUE;
+    m_settingsVecInt[key].clear();
+    return entriesRemoved;
   }
 
   /**
    * Check if a vector of strings configuration contains a match to the given string.
    * Note: the pattern may match a sub-string, it does not need exactly equal one vector entry.
-   * To be clear: the stored value must be a sub-string of _entry
+   * To be clear: the stored value must be a sub-string of entry
    * This behaviour can be changed based on the stored kPatternsExactMatch config
-   * @param _key enum key for this config.
-   * @param _entry The string to match.
+   * @param key enum key for this config.
+   * @param entry The string to match.
    * @return kTRUE if the patter.
    */
-  Bool_t Config::getVecMatches(ConfKey_t _key, const std::string& _entry) {
-    if (m_settingsVecStr.count(_key) == 0) {
-      std::string _name;
-      if (m_settingsName.count(_key) == 1) _name = m_settingsName[_key];
-      Error("Config::getVecMatches", "Unknown key %i %s", _key, _name.c_str());
+  Bool_t Config::getVecMatches(ConfKey_t key, const std::string& entry) {
+    if (m_settingsVecStr.count(key) == 0) {
+      std::string name;
+      if (m_settingsName.count(key) == 1) name = m_settingsName[key];
+      Error("Config::getVecMatches", "Unknown key %i %s", key, name.c_str());
       return kFALSE;
     }
 
-    for (UInt_t _i = 0; _i < m_settingsVecStr[_key].size(); ++_i) {
+    for (UInt_t i = 0; i < m_settingsVecStr[key].size(); ++i) {
       if (m_settingsInt[kPatternsExactMatch] == 1) {
         // This chain is exactly the correct name
-        if (_entry == m_settingsVecStr[_key].at(_i)) return kTRUE;
+        if (entry == m_settingsVecStr[key].at(i)) return kTRUE;
       } else {
         // This chain contains the correct string name
-        if (_entry.find(m_settingsVecStr[_key].at(_i)) != std::string::npos) return kTRUE;
+        if (entry.find(m_settingsVecStr[key].at(i)) != std::string::npos) return kTRUE;
       }
     }
     return kFALSE;
@@ -2501,79 +2501,79 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Check if a vector of ints configuration contains a match to the given int.
-   * @param _key enum key for this config.
-   * @param _entry The int to match.
+   * @param key enum key for this config.
+   * @param entry The int to match.
    * @return kTRUE if matched.
    */
-  Bool_t Config::getIntVecMatches(ConfKey_t _key, const Int_t _entry) {
-    if (m_settingsVecInt.count(_key) == 0) {
-      std::string _name;
-      if (m_settingsName.count(_key) == 1) _name = m_settingsName[_key];
-      Error("Config::getIntVecMatches", "Unknown key %i %s", _key, _name.c_str());
+  Bool_t Config::getIntVecMatches(ConfKey_t key, const Int_t entry) {
+    if (m_settingsVecInt.count(key) == 0) {
+      std::string name;
+      if (m_settingsName.count(key) == 1) name = m_settingsName[key];
+      Error("Config::getIntVecMatches", "Unknown key %i %s", key, name.c_str());
       return kFALSE;
     }
-    if (std::find(m_settingsVecInt[_key].begin(), m_settingsVecInt[_key].end(), _entry) != m_settingsVecInt[_key].end()) return kTRUE;
+    if (std::find(m_settingsVecInt[key].begin(), m_settingsVecInt[key].end(), entry) != m_settingsVecInt[key].end()) return kTRUE;
 
     return kFALSE;
   }
 
   /**
-   * @param _key enum key for this config.
+   * @param key enum key for this config.
    * @return the vector of ints.
    */
-  const std::vector<Int_t>& Config::getIntVec(ConfKey_t _key) {
-    static std::vector<Int_t> _empty;
+  const std::vector<Int_t>& Config::getIntVec(ConfKey_t key) {
+    static std::vector<Int_t> empty;
 
-    if (m_settingsVecInt.count(_key) == 0) {
-      std::string _name;
-      if (m_settingsName.count(_key) == 1) _name = m_settingsName[_key];
-      Error("Config::getIntVecMatches", "Unknown key %i %s", _key, _name.c_str());
-      return _empty;
+    if (m_settingsVecInt.count(key) == 0) {
+      std::string name;
+      if (m_settingsName.count(key) == 1) name = m_settingsName[key];
+      Error("Config::getIntVecMatches", "Unknown key %i %s", key, name.c_str());
+      return empty;
     }
-    return m_settingsVecInt[_key];
+    return m_settingsVecInt[key];
   }
 
   /**
    * Get if there is a setting stored with the given key. Regardless of type.
-   * @param _key enum key for this config.
+   * @param key enum key for this config.
    * @return kTRUE if a setting is stored, with any type, for the given key.
    */
-  Bool_t Config::getIsSet(ConfKey_t _key) {
-    if (m_settingsVecStr.count(_key) == 1) return kTRUE;
+  Bool_t Config::getIsSet(ConfKey_t key) {
+    if (m_settingsVecStr.count(key) == 1) return kTRUE;
 
-    if (m_settingsVecInt.count(_key) == 1) return kTRUE;
+    if (m_settingsVecInt.count(key) == 1) return kTRUE;
 
-    if (m_settingsInt.count(_key) == 1) return kTRUE;
+    if (m_settingsInt.count(key) == 1) return kTRUE;
 
-    if (m_settingsLong.count(_key) == 1) return kTRUE;
+    if (m_settingsLong.count(key) == 1) return kTRUE;
 
-    if (m_settingsStr.count(_key) == 1) return kTRUE;
+    if (m_settingsStr.count(key) == 1) return kTRUE;
 
-    if (m_settingsFloat.count(_key) == 1) return kTRUE;
+    if (m_settingsFloat.count(key) == 1) return kTRUE;
 
     return kFALSE;
   }
 
   /**
-   * Get if to display a message, this assumes that _key has been preset to the maximum number of times the message
+   * Get if to display a message, this assumes that key has been preset to the maximum number of times the message
    *should be displayed before suppression.
-   * @param _key enum key for this config.
+   * @param key enum key for this config.
    * @return kTRUE if a setting is stored, with any type, for the given key.
    */
-  Bool_t Config::getDisplayMsg(ConfKey_t _key) {
-    if (m_settingsInt.count(_key) == 0) {
-      std::string _name;
-      if (m_settingsName.count(_key) == 1) _name = m_settingsName[_key];
-      Error("Config::getVecEntry", "Unknown key %i %s", _key, _name.c_str());
+  Bool_t Config::getDisplayMsg(ConfKey_t key) {
+    if (m_settingsInt.count(key) == 0) {
+      std::string name;
+      if (m_settingsName.count(key) == 1) name = m_settingsName[key];
+      Error("Config::getVecEntry", "Unknown key %i %s", key, name.c_str());
       return kFALSE;
     }
 
     if (getInt(kNoMsgSuppression) == kTRUE) return kTRUE;
 
-    m_settingsInt[_key]++;
-    if (m_settingsInt[_key] == m_settingsMaxCalls[_key]) { // Warn of last time
-      Info("Config::getDisplayMsg", "The following message has reached its suppression limit of %i and will not be displayed any more.", m_settingsInt[_key]);
-    } else if (m_settingsInt[_key] > m_settingsMaxCalls[_key]) {
+    m_settingsInt[key]++;
+    if (m_settingsInt[key] == m_settingsMaxCalls[key]) { // Warn of last time
+      Info("Config::getDisplayMsg", "The following message has reached its suppression limit of %i and will not be displayed any more.", m_settingsInt[key]);
+    } else if (m_settingsInt[key] > m_settingsMaxCalls[key]) {
       return kFALSE;
     }
     return kTRUE;
@@ -2582,138 +2582,138 @@ namespace TrigCostRootAnalysis {
   /**
    * Store or overwrite a string configuration with a enum key.
    * If no name is given, then it is assumed it is its name is its value
-   * @param _key enum key for this config.
-   * @param _value Const string value to store.
+   * @param key enum key for this config.
+   * @param value Const string value to store.
    */
-  void Config::set(ConfKey_t _key, const std::string _value, const std::string _name, LockStatus_t _lock) {
-    if (getIsLocked(_key, kTRUE) == kTRUE) return;
+  void Config::set(ConfKey_t key, const std::string value, const std::string name, LockStatus_t lock) {
+    if (getIsLocked(key, kTRUE) == kTRUE) return;
 
-    m_settingsStr[_key] = _value;
-    m_settingsName[_key] = _name;
-    if (_name == m_blankString) m_settingsName[_key] = _value;
-    m_settingsLock[_key] = _lock;
+    m_settingsStr[key] = value;
+    m_settingsName[key] = name;
+    if (name == m_blankString) m_settingsName[key] = value;
+    m_settingsLock[key] = lock;
   }
 
   /**
    * Store or overwrite a integer configuration with a enum key. Can be given an optional name.
-   * @param _key enum key for this config.
-   * @param _name Optional name for this entry.
-   * @param _value Const integer value to store.
+   * @param key enum key for this config.
+   * @param name Optional name for this entry.
+   * @param value Const integer value to store.
    */
-  void Config::set(ConfKey_t _key, const Int_t _value, const std::string _name, LockStatus_t _lock) {
-    if (getIsLocked(_key, kTRUE) == kTRUE) return;
+  void Config::set(ConfKey_t key, const Int_t value, const std::string name, LockStatus_t lock) {
+    if (getIsLocked(key, kTRUE) == kTRUE) return;
 
-    m_settingsInt[_key] = _value;
-    m_settingsMaxCalls[_key] = 0;
-    m_settingsName[_key] = _name;
-    m_settingsLock[_key] = _lock;
+    m_settingsInt[key] = value;
+    m_settingsMaxCalls[key] = 0;
+    m_settingsName[key] = name;
+    m_settingsLock[key] = lock;
     // This is a special flag, set for easy access.
-    if (_key == kDebug) {
-      m_debug = (Bool_t) _value;
+    if (key == kDebug) {
+      m_debug = (Bool_t) value;
     }
   }
 
   /**
    * Store or overwrite a integer configuration with a enum key. This versions is without any method to name the var.
-   * @param _key enum key for this config.
-   * @param _value Const integer value to store.
+   * @param key enum key for this config.
+   * @param value Const integer value to store.
    */
-  void Config::set(ConfKey_t _key, const Int_t _value, LockStatus_t _lock) {
-    if (getIsLocked(_key, kTRUE) == kTRUE) return;
+  void Config::set(ConfKey_t key, const Int_t value, LockStatus_t lock) {
+    if (getIsLocked(key, kTRUE) == kTRUE) return;
 
-    m_settingsInt[_key] = _value;
-    m_settingsMaxCalls[_key] = 0;
-    m_settingsLock[_key] = _lock;
+    m_settingsInt[key] = value;
+    m_settingsMaxCalls[key] = 0;
+    m_settingsLock[key] = lock;
     // This is a special flag, set for easy access.
-    if (_key == kDebug) {
-      m_debug = (Bool_t) _value;
+    if (key == kDebug) {
+      m_debug = (Bool_t) value;
     }
   }
 
   /**
    * Store or overwrite a integer configuration with a enum key. Can be given an optional name.
    * This version is specific for config entries which will be used to restrict the display of error messages
-   * @param _key enum key for this config.
-   * @param _name Optional name for this entry.
-   * @param _value Maximum number of itmes to display this error/warning/info message.
+   * @param key enum key for this config.
+   * @param name Optional name for this entry.
+   * @param value Maximum number of itmes to display this error/warning/info message.
    */
-  void Config::setDisplayMsg(ConfKey_t _key, const Int_t _value, const std::string _name) {
-    m_settingsInt[_key] = 0;
-    m_settingsMaxCalls[_key] = _value;
-    m_settingsName[_key] = _name;
-    m_settingsLock[_key] = kUnlocked; // Must not be locked as needs to be increased
+  void Config::setDisplayMsg(ConfKey_t key, const Int_t value, const std::string name) {
+    m_settingsInt[key] = 0;
+    m_settingsMaxCalls[key] = value;
+    m_settingsName[key] = name;
+    m_settingsLock[key] = kUnlocked; // Must not be locked as needs to be increased
   }
 
   /**
    * Store or overwrite a vector of strings configuration with a enum key.
-   * @param _key enum key for this config.
-   * @param _name Optional name for this entry.
-   * @param _value Const vector of strings to store.
+   * @param key enum key for this config.
+   * @param name Optional name for this entry.
+   * @param value Const vector of strings to store.
    */
-  void Config::set(ConfKey_t _key, const std::vector< std::string > _value, const std::string _name, LockStatus_t _lock) {
-    if (getIsLocked(_key, kTRUE) == kTRUE) return;
+  void Config::set(ConfKey_t key, const std::vector< std::string > value, const std::string name, LockStatus_t lock) {
+    if (getIsLocked(key, kTRUE) == kTRUE) return;
 
-    m_settingsVecStr[_key] = _value;
-    m_settingsName[_key] = _name;
-    m_settingsLock[_key] = _lock;
+    m_settingsVecStr[key] = value;
+    m_settingsName[key] = name;
+    m_settingsLock[key] = lock;
   }
 
   /**
    * Store or overwrite a vector of ints configuration with a enum key.
-   * @param _key enum key for this config.
-   * @param _name Optional name for this entry.
-   * @param _value Const vector of ints to store.
+   * @param key enum key for this config.
+   * @param name Optional name for this entry.
+   * @param value Const vector of ints to store.
    */
-  void Config::set(ConfKey_t _key, const std::vector< Int_t > _value, const std::string _name, LockStatus_t _lock) {
-    if (getIsLocked(_key, kTRUE) == kTRUE) return;
+  void Config::set(ConfKey_t key, const std::vector< Int_t > value, const std::string name, LockStatus_t lock) {
+    if (getIsLocked(key, kTRUE) == kTRUE) return;
 
-    m_settingsVecInt[_key] = _value;
-    m_settingsName[_key] = _name;
-    m_settingsLock[_key] = _lock;
+    m_settingsVecInt[key] = value;
+    m_settingsName[key] = name;
+    m_settingsLock[key] = lock;
   }
 
   /**
    * Store or overwrite a long integer configuration with a enum key.
    * Note - this setter has a unique name to prevent ambiguity with the Int_t setter
-   * @param _key enum key for this config.
-   * @param _name Optional name for this entry.
-   * @param _value Long64_t to store.
+   * @param key enum key for this config.
+   * @param name Optional name for this entry.
+   * @param value Long64_t to store.
    */
-  void Config::setLong(ConfKey_t _key, const Long64_t _value, const std::string _name, LockStatus_t _lock) {
-    if (getIsLocked(_key, kTRUE) == kTRUE) return;
+  void Config::setLong(ConfKey_t key, const Long64_t value, const std::string name, LockStatus_t lock) {
+    if (getIsLocked(key, kTRUE) == kTRUE) return;
 
-    m_settingsLong[_key] = _value;
-    m_settingsName[_key] = _name;
-    m_settingsLock[_key] = _lock;
+    m_settingsLong[key] = value;
+    m_settingsName[key] = name;
+    m_settingsLock[key] = lock;
   }
 
   /**
    * Store or overwrite a float configuration with a enum key.
    * Note - this setter has a unique name to prevent ambiguity with the Int_t setter
-   * @param _key enum key for this config.
-   * @param _name Optional name for this entry.
-   * @param _value Float to store.
+   * @param key enum key for this config.
+   * @param name Optional name for this entry.
+   * @param value Float to store.
    */
-  void Config::setFloat(ConfKey_t _key, const Float_t _value, const std::string _name, LockStatus_t _lock) {
-    if (getIsLocked(_key, kTRUE) == kTRUE) return;
+  void Config::setFloat(ConfKey_t key, const Float_t value, const std::string name, LockStatus_t lock) {
+    if (getIsLocked(key, kTRUE) == kTRUE) return;
 
-    m_settingsFloat[_key] = _value;
-    m_settingsName[_key] = _name;
-    m_settingsLock[_key] = _lock;
+    m_settingsFloat[key] = value;
+    m_settingsName[key] = name;
+    m_settingsLock[key] = lock;
   }
 
   /**
    * Check if this key has been used before, and if so then whether the lock was set to true. Regardles of type.
-   * @param _key enum key for this config.
-   * @param _printErrorMsg Set to kTRUE if the intention was to modify this record, will display error message to user.
+   * @param key enum key for this config.
+   * @param printErrorMsg Set to kTRUE if the intention was to modify this record, will display error message to user.
    * @return kTRUE if the key exists and the lock was set.
    */
-  Bool_t Config::getIsLocked(ConfKey_t _key, Bool_t _printErrorMsg) {
-    if (m_settingsLock.count(_key) == 1) {
-      if (m_settingsLock[_key] == kLocked) {
-        std::string _name;
-        if (m_settingsName.count(_key) == 1) _name = m_settingsName[_key];
-        if (_printErrorMsg == kTRUE) Error("Config::getIsLocked", "The configuration key %i (name, if any:%s) is LOCKED and cannot be modified.", _key, _name.c_str());
+  Bool_t Config::getIsLocked(ConfKey_t key, Bool_t printErrorMsg) {
+    if (m_settingsLock.count(key) == 1) {
+      if (m_settingsLock[key] == kLocked) {
+        std::string name;
+        if (m_settingsName.count(key) == 1) name = m_settingsName[key];
+        if (printErrorMsg == kTRUE) Error("Config::getIsLocked", "The configuration key %i (name, if any:%s) is LOCKED and cannot be modified.", key, name.c_str());
         return kTRUE;
       }
     }
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterAlgorithm.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterAlgorithm.cxx
index c44aa34cb612114a127cb3cf5bc863995cb6d940..22b87954a0c980ae87b5ee2dfdad27b11bcc5491 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterAlgorithm.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterAlgorithm.cxx
@@ -33,12 +33,12 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Algorithm counter constructor. Sets values of internal variables and sets up data store.
-   * @param _name Const ref to algorithm's name
-   * @param _ID Algorithms ID number. As an algorithm has two ID numbers, we take a hash of its name as its ID.
+   * @param name Const ref to algorithm's name
+   * @param ID Algorithms ID number. As an algorithm has two ID numbers, we take a hash of its name as its ID.
    */
-  CounterAlgorithm::CounterAlgorithm(const TrigCostData* _costData, const std::string& _name, Int_t _ID,
-                                     UInt_t _detailLevel, MonitorBase* _parent) :
-    CounterBase(_costData, _name, _ID, _detailLevel, _parent),
+  CounterAlgorithm::CounterAlgorithm(const TrigCostData* costData, const std::string& name, Int_t ID,
+                                     UInt_t detailLevel, MonitorBase* parent) :
+    CounterBase(costData, name, ID, detailLevel, parent),
     m_firstAlgStartTime(FLT_MAX),
     m_firstAlgTime(0.) {
     //m_firstAlgTimeWeight(0.),
@@ -113,82 +113,82 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Perform monitoring of a single algorithm call within an event.
-   * @param _e Sequence index in D3PD.
-   * @param _f Location of algorithm within parent sequence.
-   * @param _weight Event weight.
+   * @param e Sequence index in D3PD.
+   * @param f Location of algorithm within parent sequence.
+   * @param weight Event weight.
    */
-  void CounterAlgorithm::processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight) {
+  void CounterAlgorithm::processEventCounter(UInt_t e, UInt_t f, Float_t weight) {
     ++m_calls;
 
     // After some thought - this just doesn't work
-    //Float_t _prescaleFactor = getPrescaleFactor(_e);
-    //_weight *= _prescaleFactor;
+    //Float_t prescaleFactor = getPrescaleFactor(e);
+    //weight *= prescaleFactor;
 
     // Special case. If we are running as part of the FullEvent monitor, we should keep weight=1 to make the output
     // readable
-    if (m_detailLevel == 0 && m_calls == 1) _weight = 1.;
+    if (m_detailLevel == 0 && m_calls == 1) weight = 1.;
 
-    if (isZero(_weight) == kTRUE) {
+    if (isZero(weight) == kTRUE) {
       return;
     }
 
-    if (Config::config().debug()) debug(_e, _f);
+    if (Config::config().debug()) debug(e, f);
 
     // After some thought - this just doesn't work
-    // const std::string _myChain = TrigConfInterface::getHLTNameFromChainID(
-    // m_costData->getSequenceChannelCounter(_e));
-    // if ( m_chainsSeen.count( _myChain ) == 0) {
-    //   m_eventWeight *= (1. - _prescaleFactor);
-    //   m_chainsSeen.insert( _myChain );
+    // const std::string myChain = TrigConfInterface::getHLTNameFromChainID(
+    // m_costData->getSequenceChannelCounter(e));
+    // if ( m_chainsSeen.count( myChain ) == 0) {
+    //   m_eventWeight *= (1. - prescaleFactor);
+    //   m_chainsSeen.insert( myChain );
     // }
 
-    m_dataStore.store(kVarCalls, 1., _weight);
+    m_dataStore.store(kVarCalls, 1., weight);
 
-    m_dataStore.store(kVarAlgCalls, m_costData->getSeqAlgIsCalled(_e, _f), _weight);
-    m_dataStore.store(kVarAlgCaches, m_costData->getSeqAlgIsCached(_e, _f), _weight);
+    m_dataStore.store(kVarAlgCalls, m_costData->getSeqAlgIsCalled(e, f), weight);
+    m_dataStore.store(kVarAlgCaches, m_costData->getSeqAlgIsCached(e, f), weight);
 
-    m_dataStore.store(kVarROSCalls, m_costData->getSeqAlgROSCalls(_e, _f), _weight);
-    if (m_costData->getSeqAlgROBRequests(_e, _f) != 0) {
-      m_dataStore.store(kVarROBReqs, m_costData->getSeqAlgROBRequests(_e, _f), _weight);
-      m_dataStore.store(kVarROBReqSize, m_costData->getSeqAlgROBRequestSize(_e, _f), _weight);
+    m_dataStore.store(kVarROSCalls, m_costData->getSeqAlgROSCalls(e, f), weight);
+    if (m_costData->getSeqAlgROBRequests(e, f) != 0) {
+      m_dataStore.store(kVarROBReqs, m_costData->getSeqAlgROBRequests(e, f), weight);
+      m_dataStore.store(kVarROBReqSize, m_costData->getSeqAlgROBRequestSize(e, f), weight);
     }
-    if (m_costData->getSeqAlgROBRetrievals(_e, _f) != 0) {
-      m_dataStore.store(kVarROBRets, m_costData->getSeqAlgROBRetrievals(_e, _f), _weight);
-      m_dataStore.store(kVarROBRetSize, m_costData->getSeqAlgROBRetrievalSize(_e, _f), _weight);
+    if (m_costData->getSeqAlgROBRetrievals(e, f) != 0) {
+      m_dataStore.store(kVarROBRets, m_costData->getSeqAlgROBRetrievals(e, f), weight);
+      m_dataStore.store(kVarROBRetSize, m_costData->getSeqAlgROBRetrievalSize(e, f), weight);
     }
-    if (m_costData->getSeqAlgROBOthers(_e, _f) != 0) {
-      m_dataStore.store(kVarROBOther, m_costData->getSeqAlgROBOthers(_e, _f), _weight);
+    if (m_costData->getSeqAlgROBOthers(e, f) != 0) {
+      m_dataStore.store(kVarROBOther, m_costData->getSeqAlgROBOthers(e, f), weight);
     }
 
-    if (m_costData->getSeqAlgTimer(_e, _f) > Config::config().getInt(kSlowThreshold)) {
-      m_dataStore.store(kVarCallsSlow, 1., _weight);
+    if (m_costData->getSeqAlgTimer(e, f) > Config::config().getInt(kSlowThreshold)) {
+      m_dataStore.store(kVarCallsSlow, 1., weight);
     }
 
     // We record separately the the time of the first call in the event
-    if (m_costData->getSeqAlgTimeStart(_e, _f) < m_firstAlgStartTime) {
-      m_firstAlgStartTime = m_costData->getSeqAlgTimeStart(_e, _f);
-      m_firstAlgTime = m_costData->getSeqAlgTimer(_e, _f);
-      //m_firstAlgTimeWeight = _weight;
+    if (m_costData->getSeqAlgTimeStart(e, f) < m_firstAlgStartTime) {
+      m_firstAlgStartTime = m_costData->getSeqAlgTimeStart(e, f);
+      m_firstAlgTime = m_costData->getSeqAlgTimer(e, f);
+      //m_firstAlgTimeWeight = weight;
     }
 
-    m_dataStore.store(kVarTime, m_costData->getSeqAlgTimer(_e, _f), _weight);
+    m_dataStore.store(kVarTime, m_costData->getSeqAlgTimer(e, f), weight);
 
     // Here we only do the timing if the alg was callled NOT cached
-    if (m_costData->getSeqAlgIsCalled(_e, _f) == 1) m_dataStore.store(kVarTimeExec, m_costData->getSeqAlgTimer(_e,
-                                                                                                               _f),
-                                                                      _weight);
-
-    Float_t _ROSTime = m_costData->getSeqAlgROSTime(_e, _f);
-    if (isZero(_ROSTime) == kFALSE) {
-      m_dataStore.store(kVarROSTime, m_costData->getSeqAlgROSTime(_e, _f), _weight);
-      m_dataStore.store(kVarCPUTime, m_costData->getSeqAlgTimer(_e, _f) - _ROSTime, _weight);
+    if (m_costData->getSeqAlgIsCalled(e, f) == 1) m_dataStore.store(kVarTimeExec, m_costData->getSeqAlgTimer(e,
+                                                                                                               f),
+                                                                      weight);
+
+    Float_t ROSTime = m_costData->getSeqAlgROSTime(e, f);
+    if (isZero(ROSTime) == kFALSE) {
+      m_dataStore.store(kVarROSTime, m_costData->getSeqAlgROSTime(e, f), weight);
+      m_dataStore.store(kVarCPUTime, m_costData->getSeqAlgTimer(e, f) - ROSTime, weight);
     }
     // Gather time statistics for this algorithm call
-    s_eventTimeExecute += m_costData->getSeqAlgTimer(_e, _f) * _weight;
+    s_eventTimeExecute += m_costData->getSeqAlgTimer(e, f) * weight;
 
     // If calling this counter exactly once on a alg single execution - save some extra levels details.
     // This allows for a full-scale debug of a single event execution.
-    if (m_detailLevel == 0 && m_calls == 1) fullExecutionInformation(_e, _f, _weight);
+    if (m_detailLevel == 0 && m_calls == 1) fullExecutionInformation(e, f, weight);
   }
 
   /**
@@ -197,35 +197,35 @@ namespace TrigCostRootAnalysis {
    * scale by its L1 prescale
    * @return Multiplicative weighting factor
    */
-  Double_t CounterAlgorithm::getPrescaleFactor(UInt_t _e) {
+  Double_t CounterAlgorithm::getPrescaleFactor(UInt_t e) {
     return TrigXMLService::trigXMLService().getHLTCostWeightingFactor(
-      TrigConfInterface::getHLTNameFromChainID(m_costData->getSequenceChannelCounter(_e),
-                                               m_costData->getSequenceLevel(_e)));
+      TrigConfInterface::getHLTNameFromChainID(m_costData->getSequenceChannelCounter(e),
+                                               m_costData->getSequenceLevel(e)));
   }
 
   /**
-   * @param _e Sequence index in D3PD.
-   * @param _f Location of algorithm within parent sequence
+   * @param e Sequence index in D3PD.
+   * @param f Location of algorithm within parent sequence
    * @return How much time has passed in seconds from the beginning of the event to this alg's execution
    */
-  Float_t CounterAlgorithm::getElapsedTime(UInt_t _e, UInt_t _f) {
-    Float_t _t = m_costData->getSeqAlgTimeStart(_e, _f);
+  Float_t CounterAlgorithm::getElapsedTime(UInt_t e, UInt_t f) {
+    Float_t t = m_costData->getSeqAlgTimeStart(e, f);
 
-    if (isZero(_t) == kTRUE) { // Annoyingly - if alg was cached it will have a zero, need to look back for the last alg
+    if (isZero(t) == kTRUE) { // Annoyingly - if alg was cached it will have a zero, need to look back for the last alg
                                // to actually run
-      _t = Config::config().getFloat(kEventElapsed);
+      t = Config::config().getFloat(kEventElapsed);
     } else {
-      Config::config().setFloat(kEventElapsed, _t, "EventElapsed", kUnlocked);
+      Config::config().setFloat(kEventElapsed, t, "EventElapsed", kUnlocked);
     }
     // Were we first?
-    Float_t _eventStart = Config::config().getFloat(kEventStartTime);
-    if (isZero(_eventStart) == kTRUE) {
-      _eventStart = _t;
-      Config::config().setFloat(kEventStartTime, _eventStart, "EventStart", kUnlocked);
+    Float_t eventStart = Config::config().getFloat(kEventStartTime);
+    if (isZero(eventStart) == kTRUE) {
+      eventStart = t;
+      Config::config().setFloat(kEventStartTime, eventStart, "EventStart", kUnlocked);
     }
-    Float_t _elapsed = _t - _eventStart;
-    if (_elapsed < 0) _elapsed += 3600.;
-    return _elapsed;
+    Float_t elapsed = t - eventStart;
+    if (elapsed < 0) elapsed += 3600.;
+    return elapsed;
   }
 
   /**
@@ -233,59 +233,58 @@ namespace TrigCostRootAnalysis {
    *execution.
    * Then we save additional data and add it as decorations to this counter, these will be retrieved by the table
    *plotting code
-   * @param _e Sequence index in D3PD.
-   * @param _f Location of algorithm within parent sequence.
-   * @param _weight Event weight.
+   * @param e Sequence index in D3PD.
+   * @param f Location of algorithm within parent sequence.
+   * @param weight Event weight.
    */
-  void CounterAlgorithm::fullExecutionInformation(UInt_t _e, UInt_t _f, Float_t _weight) {
-    UNUSED(_weight);
+  void CounterAlgorithm::fullExecutionInformation(UInt_t e, UInt_t f, Float_t /*weight*/) {
 
-    decorate(kDecStartTime, m_costData->getSeqAlgTimeStart(_e, _f));
-    decorate(kDecElapsedTime, getElapsedTime(_e, _f));
-    decorate(kDecCallOrCache, m_costData->getSeqAlgIsCalled(_e, _f) ? Config::config().getStr(
+    decorate(kDecStartTime, m_costData->getSeqAlgTimeStart(e, f));
+    decorate(kDecElapsedTime, getElapsedTime(e, f));
+    decorate(kDecCallOrCache, m_costData->getSeqAlgIsCalled(e, f) ? Config::config().getStr(
                kCalledString) : Config::config().getStr(kCachedString));
 
     //RoI Info
-    std::string _roiString = "";
-    if (m_costData->getSeqAlgNRoI(_e, _f) == 0) {
-      _roiString = "No RoI";
+    std::string roiString = "";
+    if (m_costData->getSeqAlgNRoI(e, f) == 0) {
+      roiString = "No RoI";
     } else {
-      for (Int_t _i = 0; _i < m_costData->getSeqAlgNRoI(_e, _f); ++_i) {
-        if (_i != 0) _roiString += " | ";
-        Int_t _roiLocation = m_costData->getSeqAlgRoILocation(_e, _f, _i);
-        _roiString += m_costData->getRoITypeString(_roiLocation);
-        if (_roiLocation != -1 && m_costData->getRoIEta(_roiLocation) > -9000) { // Some ROIs do not have a location -
+      for (Int_t i = 0; i < m_costData->getSeqAlgNRoI(e, f); ++i) {
+        if (i != 0) roiString += " | ";
+        Int_t roiLocation = m_costData->getSeqAlgRoILocation(e, f, i);
+        roiString += m_costData->getRoITypeString(roiLocation);
+        if (roiLocation != -1 && m_costData->getRoIEta(roiLocation) > -9000) { // Some ROIs do not have a location -
                                                                                  // these return -9999 for these vars
-          _roiString += std::string(" (&eta;");
-          _roiString += floatToString(m_costData->getRoIEta(_roiLocation), 1);
-          _roiString += std::string(" - &phi;");
-          _roiString += floatToString(m_costData->getRoIPhi(_roiLocation), 1);
-          _roiString += std::string(")");
+          roiString += std::string(" (&eta;");
+          roiString += floatToString(m_costData->getRoIEta(roiLocation), 1);
+          roiString += std::string(" - &phi;");
+          roiString += floatToString(m_costData->getRoIPhi(roiLocation), 1);
+          roiString += std::string(")");
         }
       }
     }
-    decorate(kDecROIString, _roiString);
+    decorate(kDecROIString, roiString);
 
     // Which ROBs did we access?
-    std::map<std::string, UInt_t> _ROSReqs;
-    std::set<Int_t> _ros = m_costData->getSeqAlgROBLocations(_e, _f);
-    for (std::set<Int_t>::iterator _robIt = _ros.begin(); _robIt != _ros.end(); ++_robIt) {
-      Int_t _rob = (*_robIt);
-      if (m_costData->getROBDataN(_rob) == 0) continue;
-      Int_t _RobId = m_costData->getROBDataID(_rob, 0);
-      const std::string _RobinName = ROSConfService::rosConfService().getRobinNameFromId((UInt_t) _RobId);
-      const std::string _RobName = ROSConfService::rosConfService().getRosNameFromFromRobinName(_RobinName);
-      _ROSReqs[ _RobName ] += 1;
+    std::map<std::string, UInt_t> ROSReqs;
+    std::set<Int_t> ros = m_costData->getSeqAlgROBLocations(e, f);
+    for (std::set<Int_t>::iterator robIt = ros.begin(); robIt != ros.end(); ++robIt) {
+      Int_t rob = (*robIt);
+      if (m_costData->getROBDataN(rob) == 0) continue;
+      Int_t RobId = m_costData->getROBDataID(rob, 0);
+      const std::string RobinName = ROSConfService::rosConfService().getRobinNameFromId((UInt_t) RobId);
+      const std::string RobName = ROSConfService::rosConfService().getRosNameFromFromRobinName(RobinName);
+      ROSReqs[ RobName ] += 1;
     }
 
-    std::string _rosString = "";
-    for (std::map<std::string, UInt_t>::iterator _it = _ROSReqs.begin(); _it != _ROSReqs.end(); ++_it) {
-      if (_it != _ROSReqs.begin()) _rosString += " | ";
-      _rosString += _it->first;
-      _rosString += " x";
-      _rosString += intToString(_it->second);
+    std::string rosString = "";
+    for (std::map<std::string, UInt_t>::iterator it = ROSReqs.begin(); it != ROSReqs.end(); ++it) {
+      if (it != ROSReqs.begin()) rosString += " | ";
+      rosString += it->first;
+      rosString += " x";
+      rosString += intToString(it->second);
     }
-    decorate(kDecROSString, _rosString);
+    decorate(kDecROSString, rosString);
   }
 
   /**
@@ -293,11 +292,11 @@ namespace TrigCostRootAnalysis {
    * What was determined to be the first execution's time is saved, the total time for the event is used to calculate
    *per-event averages.
    */
-  void CounterAlgorithm::endEvent(Float_t _weight) {
+  void CounterAlgorithm::endEvent(Float_t weight) {
     if (m_firstAlgStartTime != FLT_MAX) {
       //m_eventWeight = 1. - m_eventWeight;
-      m_dataStore.store(kVarEventsActive, 1., /*m_eventWeight * */ _weight);
-      m_dataStore.store(kVarFirstTime, m_firstAlgTime, _weight);
+      m_dataStore.store(kVarEventsActive, 1., /*m_eventWeight * */ weight);
+      m_dataStore.store(kVarFirstTime, m_firstAlgTime, weight);
       m_firstAlgStartTime = FLT_MAX; // Reset first-exec time
       m_firstAlgTime = 0.;
       //m_firstAlgTimeWeight = 0.;
@@ -312,18 +311,18 @@ namespace TrigCostRootAnalysis {
   /**
    * Output debug information on this call to the console
    */
-  void CounterAlgorithm::debug(UInt_t _e, UInt_t _a) {
+  void CounterAlgorithm::debug(UInt_t e, UInt_t a) {
     Info("CounterAlgorithm::debug", "Algorithm Name:%s Class:%s ID:%i Pos:%i isCached:%i "
                                     "isCalled:%i NRoI:%i Timer:%.2f",
          m_name.c_str(),
          getStrDecoration(kDecAlgClassName).c_str(),
          getID(),
-         m_costData->getSeqAlgPosition(_e, _a),
-         m_costData->getSeqAlgIsCached(_e, _a),
-         m_costData->getSeqAlgIsCalled(_e, _a),
-         m_costData->getSeqAlgNRoI(_e, _a),
-         //m_costData->getSeqAlgRoIIndexFirst(_e, _a), //TODO - DISPLAY ALG INFO
-         m_costData->getSeqAlgTimer(_e, _a)
+         m_costData->getSeqAlgPosition(e, a),
+         m_costData->getSeqAlgIsCached(e, a),
+         m_costData->getSeqAlgIsCalled(e, a),
+         m_costData->getSeqAlgNRoI(e, a),
+         //m_costData->getSeqAlgRoIIndexFirst(e, a), //TODO - DISPLAY ALG INFO
+         m_costData->getSeqAlgTimer(e, a)
          );
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterBase.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterBase.cxx
index 4b8d1299f0f720ecdada062b6212a6d5ba050956..c8e977f55851c2f56a3661e3bda8d802c69d2c09 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterBase.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterBase.cxx
@@ -26,17 +26,17 @@ namespace TrigCostRootAnalysis {
   /**
    * Base class constructor. Sets name and ID.
    */
-  CounterBase::CounterBase(const TrigCostData* _costData, const std::string& _name, Int_t _ID, UInt_t _detailLevel,
-                           MonitorBase* _parent) :
-    m_costData(_costData),
+  CounterBase::CounterBase(const TrigCostData* costData, const std::string& name, Int_t ID, UInt_t detailLevel,
+                           MonitorBase* parent) :
+    m_costData(costData),
     m_dataStore(this),
-    m_parent(_parent),
+    m_parent(parent),
     m_strDecorations(),
     m_decorations(),
-    m_detailLevel(_detailLevel),
-    m_name(_name),
+    m_detailLevel(detailLevel),
+    m_name(name),
     m_calls(0) {
-    decorate(kDecID, _ID);
+    decorate(kDecID, ID);
   }
 
   /**
@@ -54,111 +54,111 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Return data for this counter from within the DataStore.
-   * @param _name The name of the variable required.
-   * @param _vo The VariableOption_t requested for this variable.
+   * @param name The name of the variable required.
+   * @param vo The VariableOption_t requested for this variable.
    * @return The stored value requested.
    */
-  Float_t CounterBase::getValue(ConfKey_t _name, VariableOption_t _vo) const {
-    return m_dataStore.getValue(_name, _vo);
+  Float_t CounterBase::getValue(ConfKey_t name, VariableOption_t vo) const {
+    return m_dataStore.getValue(name, vo);
   }
 
   /**
    * Return if the key is registered in the data store.
-   * @param _name The name of the variable required.
-   * @param _vo The VariableOption_t requested for this variable.
+   * @param name The name of the variable required.
+   * @param vo The VariableOption_t requested for this variable.
    * @return If the key is present in the data store for the given VO.
    */
-  Bool_t CounterBase::getValueExists(ConfKey_t _name, VariableOption_t _vo) const {
-    return m_dataStore.getValueExists(_name, _vo);
+  Bool_t CounterBase::getValueExists(ConfKey_t name, VariableOption_t vo) const {
+    return m_dataStore.getValueExists(name, vo);
   }
 
   /**
    * Return the error on data for this counter from within the DataStore.
-   * @param _name The name of the variable required.
-   * @param _vo The VariableOption_t requested for this variable.
+   * @param name The name of the variable required.
+   * @param vo The VariableOption_t requested for this variable.
    * @return The stored value requested.
    */
-  Float_t CounterBase::getValueError(ConfKey_t _name, VariableOption_t _vo) const {
-    return m_dataStore.getValueError(_name, _vo);
+  Float_t CounterBase::getValueError(ConfKey_t name, VariableOption_t vo) const {
+    return m_dataStore.getValueError(name, vo);
   }
 
   /**
    * Return data for this counter from within the DataStore, normalised to the number of entries.
-   * @param _name The name of the variable required.
-   * @param _vo The VariableOption_t requested for this variable.
+   * @param name The name of the variable required.
+   * @param vo The VariableOption_t requested for this variable.
    * @return The stored value divided by the number of entries.
    */
-  Float_t CounterBase::getValueNormalised(ConfKey_t _name, VariableOption_t _vo) const {
-    Float_t _nom = getValue(_name, _vo);
-    Float_t _denom = getEntries(_name, _vo);
+  Float_t CounterBase::getValueNormalised(ConfKey_t name, VariableOption_t vo) const {
+    Float_t num = getValue(name, vo);
+    Float_t denom = getEntries(name, vo);
 
-    if (isZero(_denom) == kTRUE) {
+    if (isZero(denom) == kTRUE) {
       Error("CounterBase::getValueNormalised", "Cannot get normalised value for %s, no entries. [/0].",
-            Config::config().getStr(_name).c_str());
+            Config::config().getStr(name).c_str());
       return 0.;
     }
-    return(_nom / _denom);
+    return(num / denom);
   }
 
   /**
    * Return data for this counter from within the DataStore.
-   * @param _name The name of the variable required.
-   * @param _vo The VariableOption_t requested for this variable.
+   * @param name The name of the variable required.
+   * @param vo The VariableOption_t requested for this variable.
    * @return The number of entries stored for this variable and VariableOption.
    */
-  Int_t CounterBase::getEntries(ConfKey_t _name, VariableOption_t _vo) const {
-    return m_dataStore.getEntries(_name, _vo);
+  Int_t CounterBase::getEntries(ConfKey_t name, VariableOption_t vo) const {
+    return m_dataStore.getEntries(name, vo);
   }
 
   /**
    * Set data for this counter from within the DataStore.
-   * @param _name The name of the variable required.
-   * @param _vo The VariableOption_t requested for this variable.
-   * @param _val The value store for this variable and VariableOption.
+   * @param name The name of the variable required.
+   * @param vo The VariableOption_t requested for this variable.
+   * @param val The value store for this variable and VariableOption.
    */
-  void CounterBase::setValue(ConfKey_t _name, VariableOption_t _vo, Float_t _val) {
-    return m_dataStore.setValue(_name, _vo, _val);
+  void CounterBase::setValue(ConfKey_t name, VariableOption_t vo, Float_t val) {
+    return m_dataStore.setValue(name, vo, val);
   }
 
   /**
    * Set data entries for this counter from within the DataStore.
-   * @param _name The name of the variable required.
-   * @param _vo The VariableOption_t requested for this variable.
-   * @param _val The number of entries to store for this variable and VariableOption.
+   * @param name The name of the variable required.
+   * @param vo The VariableOption_t requested for this variable.
+   * @param val The number of entries to store for this variable and VariableOption.
    */
-  void CounterBase::setEntries(ConfKey_t _name, VariableOption_t _vo, UInt_t _val) {
-    return m_dataStore.setEntries(_name, _vo, _val);
+  void CounterBase::setEntries(ConfKey_t name, VariableOption_t vo, UInt_t val) {
+    return m_dataStore.setEntries(name, vo, val);
   }
 
   /**
    * Overwrite the sumw2 error of this counter. Note that this should be the SQUARE of the error.
-   * @param _name The name of the variable required.
-   * @param _vo The VariableOption_t requested for this variable.
-   * @param _val The SQUARE of the error for this variable
+   * @param name The name of the variable required.
+   * @param vo The VariableOption_t requested for this variable.
+   * @param val The SQUARE of the error for this variable
    */
-  void CounterBase::setErrorSquared(ConfKey_t _name, VariableOption_t _vo, Float_t _val) {
-    return m_dataStore.setErrorSquared(_name, _vo, _val);
+  void CounterBase::setErrorSquared(ConfKey_t name, VariableOption_t vo, Float_t val) {
+    return m_dataStore.setErrorSquared(name, vo, val);
   }
 
   /**
    * Return data for this counter from within the DataStore.
-   * @param _name The name of the variable required.
-   * @param _vo The VariableOption_t requested for this variable.
+   * @param name The name of the variable required.
+   * @param vo The VariableOption_t requested for this variable.
    * @return The corresponding histogram pointer for this variable and VariableOption.
    */
-  TH1F* CounterBase::getHist(ConfKey_t _name, VariableOption_t _vo) {
-    return m_dataStore.getHist(_name, _vo);
+  TH1F* CounterBase::getHist(ConfKey_t name, VariableOption_t vo) {
+    return m_dataStore.getHist(name, vo);
   }
 
   /**
    * Return data for this counter from within the DataStore.
    * NOTE: 2D historgams are currently not implemented. This will always return 0.
-   * @param _name The name of the variable required.
-   * @param _vo The VariableOption_t requested for this variable.
+   * @param name The name of the variable required.
+   * @param vo The VariableOption_t requested for this variable.
    * @return The corresponding 2D histogram pointer for this variable and VariableOption.
    */
-  // TH2F* CounterBase::getHist2D(ConfKey_t _name, VariableOption_t _vo) {
-  //   return m_dataStore.getHist2D(_name, _vo);
+  // TH2F* CounterBase::getHist2D(ConfKey_t name, VariableOption_t vo) {
+  //   return m_dataStore.getHist2D(name, vo);
   // }
 
   /**
@@ -203,106 +203,106 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Records additional ID number for counter. For counters with multiple IDs, like ROBINs with many ROBs.
-   * @param _multiId The (additional) ID to store. Ignores duplicates.
+   * @param multiId The (additional) ID to store. Ignores duplicates.
    */
-  void CounterBase::addMultiID(UInt_t _multiId) {
-    m_multiId.insert(_multiId);
+  void CounterBase::addMultiID(UInt_t multiId) {
+    m_multiId.insert(multiId);
   }
 
   /**
    * Alternate method format, passing both variable name and option in a pair.
-   * @see getHist(std::string _name, VariableOption_t _vo)
+   * @see getHist(std::string name, VariableOption_t vo)
    * @return The corresponding histogram pointer for this variable and VariableOption.
    */
-  TH1F* CounterBase::getHist(ConfVariableOptionPair_t _pair) {
-    return getHist(_pair.first, _pair.second);
+  TH1F* CounterBase::getHist(ConfVariableOptionPair_t pair) {
+    return getHist(pair.first, pair.second);
   }
 
   /**
    * For some counters, like algorithm ones, it is handy to decorate the counter with additional information.
    * Such as the algorithm class, the algorithm's chain.
-   * @param _key ConfKey_t key to associate the data with.
-   * @param _value Data to save
+   * @param key ConfKey_t key to associate the data with.
+   * @param value Data to save
    */
-  void CounterBase::decorate(ConfKey_t _key, const std::string _value) {
-    m_strDecorations[_key] = _value;
+  void CounterBase::decorate(ConfKey_t key, const std::string value) {
+    m_strDecorations[key] = value;
   }
 
   /**
    * For some counters, like algorithm ones, it is handy to decorate the counter with additional information.
-   * @param _key ConfKey_t key to associate the data with.
-   * @param _value Data to save
+   * @param key ConfKey_t key to associate the data with.
+   * @param value Data to save
    */
-  void CounterBase::decorate(ConfKey_t _key, const Float_t _value) {
-    m_decorations[_key] = _value;
+  void CounterBase::decorate(ConfKey_t key, const Float_t value) {
+    m_decorations[key] = value;
   }
 
   /**
    * Additional decorate call for Int_t values
-   * @param _key ConfKey_t key to associate the data with.
-   * @param _value Data to save
+   * @param key ConfKey_t key to associate the data with.
+   * @param value Data to save
    */
-  void CounterBase::decorate(ConfKey_t _key, Int_t _value) {
-    m_intDecorations[_key] = _value;
+  void CounterBase::decorate(ConfKey_t key, Int_t value) {
+    m_intDecorations[key] = value;
   }
 
   /**
    * Get a string decoration.
-   * @see decorate( ConfKey_t _key, const std::string _value )
+   * @see decorate( ConfKey_t key, const std::string value )
    * @return Const reference to decoration.
    */
-  const std::string& CounterBase::getStrDecoration(ConfKey_t _key) const {
-    if (m_strDecorations.count(_key) == 0) {
+  const std::string& CounterBase::getStrDecoration(ConfKey_t key) const {
+    if (m_strDecorations.count(key) == 0) {
       if (Config::config().getDisplayMsg(kMsgUnknownDecoration) == kTRUE) {
         Warning("CounterBase::getStrDecoration", "Unknown decoration %s requested in %s.", Config::config().getStr(
-                  _key).c_str(), getName().c_str());
+                  key).c_str(), getName().c_str());
       }
       return Config::config().getStr(kUnknownString);
     }
-    return m_strDecorations.at(_key);
+    return m_strDecorations.at(key);
   }
 
   /**
    * Get a float decoration.
-   * @see decorate( ConfKey_t _key, Float_t _value )
+   * @see decorate( ConfKey_t key, Float_t value )
    * @return Const reference to float decoration
    */
-  Float_t CounterBase::getDecoration(ConfKey_t _key) const {
-    if (m_decorations.count(_key) == 0) {
+  Float_t CounterBase::getDecoration(ConfKey_t key) const {
+    if (m_decorations.count(key) == 0) {
       if (Config::config().getDisplayMsg(kMsgUnknownDecoration) == kTRUE) {
         Warning("CounterBase::getDecoration", "Unknown decoration %s requested in %s.", Config::config().getStr(
-                  _key).c_str(), getName().c_str());
+                  key).c_str(), getName().c_str());
       }
       return 0.;
     }
-    return m_decorations.at(_key);
+    return m_decorations.at(key);
   }
 
   /**
    * Get a int decoration.
-   * @see decorate( ConfKey_t _key, Int_t _value )
+   * @see decorate( ConfKey_t key, Int_t value )
    * @return Const reference to int decoration
    */
-  Int_t CounterBase::getIntDecoration(ConfKey_t _key) const {
-    if (m_intDecorations.count(_key) == 0) {
+  Int_t CounterBase::getIntDecoration(ConfKey_t key) const {
+    if (m_intDecorations.count(key) == 0) {
       if (Config::config().getDisplayMsg(kMsgUnknownDecoration) == kTRUE) {
         Warning("CounterBase::getIntDecoration", "Unknown decoration %s requested in %s.", Config::config().getStr(
-                  _key).c_str(), getName().c_str());
+                  key).c_str(), getName().c_str());
       }
       return 0.;
     }
-    return m_intDecorations.at(_key);
+    return m_intDecorations.at(key);
   }
 
   /**
    * @return true if a decoration of any type is stored for the given key
    */
-  Bool_t CounterBase::hasDecoration(ConfKey_t _key) const {
-    if (m_decorations.count(_key) > 0) return kTRUE;
+  Bool_t CounterBase::hasDecoration(ConfKey_t key) const {
+    if (m_decorations.count(key) > 0) return kTRUE;
 
-    if (m_intDecorations.count(_key) > 0) return kTRUE;
+    if (m_intDecorations.count(key) > 0) return kTRUE;
 
-    if (m_strDecorations.count(_key) > 0) return kTRUE;
+    if (m_strDecorations.count(key) > 0) return kTRUE;
 
     return kFALSE;
   }
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterBaseRates.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterBaseRates.cxx
index b1a17663f5c15ed28203c74eaea11313a2510f07..e4ebf40da75e52afc7fbbe8ad7c6109199f76b8c 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterBaseRates.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterBaseRates.cxx
@@ -31,18 +31,18 @@
 namespace TrigCostRootAnalysis {
   /**
    * Chain rates counter constructor. Pass data to base constructor. Also sets up the datastore for all Rates counters
-   * @see CounterBase(const TrigCostData* _costData, const std::string& _name, Int_t _ID, UInt_t _detailLevel);
+   * @see CounterBase(const TrigCostData* costData, const std::string& name, Int_t ID, UInt_t detailLevel);
    */
-  CounterBaseRates::CounterBaseRates(const TrigCostData* _costData, const std::string& _name, Int_t _ID,
-                                     UInt_t _detailLevel, MonitorBase* _parent) :
-    CounterBase(_costData, _name, _ID, _detailLevel, _parent),
+  CounterBaseRates::CounterBaseRates(const TrigCostData* costData, const std::string& name, Int_t ID,
+                                     UInt_t detailLevel, MonitorBase* parent) :
+    CounterBase(costData, name, ID, detailLevel, parent),
     m_L2s(),
     m_L1s(),
     m_cannotCompute(kFALSE),
     m_myUniqueCounter(nullptr),
     m_globalRates(nullptr),
     m_lowerRates(nullptr),
-    m_doSacleByPS(0),
+    m_doScaleByPS(0),
     m_doDirectPS(0),
     m_cachedWeight(0),
     m_alwaysDoExpressPS(kFALSE),
@@ -68,7 +68,7 @@ namespace TrigCostRootAnalysis {
       m_disableEventLumiExtrapolation = kTRUE;
     }
 
-    m_doSacleByPS = Config::config().getInt(kRatesScaleByPS);
+    m_doScaleByPS = Config::config().getInt(kRatesScaleByPS);
     m_doDirectPS = Config::config().getInt(kDirectlyApplyPrescales);
     decorate(kDecDoExpressChain, 0); // this will be overwritten as needed
 
@@ -82,7 +82,7 @@ namespace TrigCostRootAnalysis {
     m_dataStore.newVariable(kVarEventsPassRawStat).setSavePerCall();
     m_dataStore.newVariable(kVarEventsRunRawStat).setSavePerCall();
 
-    if (_name == Config::config().getStr(kRateExpressString)) m_alwaysDoExpressPS = kTRUE;
+    if (name == Config::config().getStr(kRateExpressString)) m_alwaysDoExpressPS = kTRUE;
     //m_dataStore.newVariable(kVarEventsPerLumiblock).setSavePerCall("Rate Per Lumi Block;Lumi Block;Rate [Hz]");
   }
 
@@ -101,13 +101,11 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Monitor rate of this chain
-   * @param _e Unused
-   * @param _f Unused
-   * @param _weight Event weight.
+   * @param e Unused
+   * @param f Unused
+   * @param weight Event weight.
    */
-  void CounterBaseRates::processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight) {
-    UNUSED(_e);
-    UNUSED(_f);
+  void CounterBaseRates::processEventCounter(UInt_t /*e*/, UInt_t /*f*/, Float_t weight) {
     ++m_calls;
 
     if (getInEvent() == kFALSE) return;
@@ -118,23 +116,23 @@ namespace TrigCostRootAnalysis {
     // Optional - when not doin EB weighting. We can scale up individual chains by their L1 PS to get the effective PS=1
     // rates.
     // Does not work on combinations!
-    Float_t _scaleByPS = 1.;
-    if (m_doSacleByPS && (getStrDecoration(kDecType) == "Chain" || getStrDecoration(kDecType) == "L1")) {
-      _scaleByPS = getDecoration(kDecPrescaleValOnlineL1);
+    Float_t scaleByPS = 1.;
+    if (m_doScaleByPS && (getStrDecoration(kDecType) == "Chain" || getStrDecoration(kDecType) == "L1")) {
+      scaleByPS = getDecoration(kDecPrescaleValOnlineL1);
     }
 
     // WEIGHTED Prescale
-    Double_t _weightPS = runWeight(m_alwaysDoExpressPS); // alwaysDoExpressPS is *only* for the express group
+    Double_t weightPS = runWeight(m_alwaysDoExpressPS); // alwaysDoExpressPS is *only* for the express group
     //m_eventLumiExtrapolation is calculated by runWeight()
     if (m_disableEventLumiExtrapolation) m_eventLumiExtrapolation = 1;
 
-    if (!isZero(_weightPS)) {
-      m_dataStore.store(kVarEventsPassed, 1., _weightPS * _weight * m_eventLumiExtrapolation * _scaleByPS);
+    if (!isZero(weightPS)) {
+       m_dataStore.store(kVarEventsPassed, 1., weightPS * weight * m_eventLumiExtrapolation * scaleByPS);
       // Chain passes with weight from PS as a float 0-1. All other weights  inc. 
-      // m_dataStore.store(kVarEventsPerLumiblock, m_costData->getLumi(), (_weightPS * _weight *
-      // _scaleByPS)/((Float_t)m_costData->getLumiLength()) );
+      // m_dataStore.store(kVarEventsPerLumiblock, m_costData->getLumi(), (weightPS * weight *
+      // scaleByPS)/((Float_t)m_costData->getLumiLength()) );
       if (m_detailLevel > 0 && m_L1s.size() == 1) (**m_L1s.begin()).fillHistograms(m_dataStore,
-                                                                                   _weightPS * _weight * m_eventLumiExtrapolation * _scaleByPS,
+                                                                                   weightPS * weight * m_eventLumiExtrapolation * scaleByPS,
                                                                                    static_cast<MonitorRatesUpgrade*>(
                                                                                      m_parent)->getCollidingBunchFactor());
 
@@ -142,26 +140,26 @@ namespace TrigCostRootAnalysis {
 
     // DIRECT Prescale
     if (m_doDirectPS == kTRUE) {
-      Float_t _weightDirect = runDirect();
-      if (!isZero(_weightDirect)) m_dataStore.store(kVarEventsPassedDP, 1.,
-                                                    _weightDirect * _weight * m_eventLumiExtrapolation * _scaleByPS);                                                                                                                                                   // Chain
+      Float_t weightDirect = runDirect();
+      if (!isZero(weightDirect)) m_dataStore.store(kVarEventsPassedDP, 1.,
+                                                    weightDirect * weight * m_eventLumiExtrapolation * scaleByPS);                                                                                                                                                   // Chain
       // passes with weight from PS either 0 or 1. All other weights inc.
     }
 
     if (getIntDecoration(kDecDoExpressChain) == 1) {
-      Double_t _weightPSExpress = runWeight(/*doExpress =*/ kTRUE);
-      if (!isZero(_weightPSExpress)) m_dataStore.store(kVarEventsPassedExpress, 1.,
-                                                       _weightPSExpress * _weight * m_eventLumiExtrapolation *
-        _scaleByPS);
+      Double_t weightPSExpress = runWeight(/*doExpress =*/ kTRUE);
+      if (!isZero(weightPSExpress)) m_dataStore.store(kVarEventsPassedExpress, 1.,
+                                                       weightPSExpress * weight * m_eventLumiExtrapolation *
+        scaleByPS);
     }
 
-    Float_t _passBeforePS = runDirect(/*usePrescales =*/ kFALSE);
-    m_dataStore.store(kVarEventsPassedNoPS, 1., _passBeforePS * _weight * m_eventLumiExtrapolation * _scaleByPS);
+    Float_t passBeforePS = runDirect(/*usePrescales =*/ kFALSE);
+    m_dataStore.store(kVarEventsPassedNoPS, 1., passBeforePS * weight * m_eventLumiExtrapolation * scaleByPS);
     // Times chain passes, irrespective of any PS/ All other wieghts inc.
-    m_dataStore.store(kVarEventsRun, 1., _weight * m_eventLumiExtrapolation * _scaleByPS); // Times chain is processed,
+    m_dataStore.store(kVarEventsRun, 1., weight * m_eventLumiExtrapolation * scaleByPS); // Times chain is processed,
                                                                                            // regardless of decision.
                                                                                            // All other weights inc.
-    m_dataStore.store(kVarEventsPassRawStat, 1., _passBeforePS); // Times chain passes, zero other weights (underlying
+    m_dataStore.store(kVarEventsPassRawStat, 1., passBeforePS); // Times chain passes, zero other weights (underlying
                                                                  // statistics of input file)
     m_dataStore.store(kVarEventsRunRawStat, 1.); // Times chain is processed, regardless of decision, zero other weights
                                                  // (underlying statistics of input file).
@@ -171,8 +169,7 @@ namespace TrigCostRootAnalysis {
    * The Rates counters have a much more sophisticated prescale treatment and hence do not use this function.
    * @return 0 for rates counters, prints error
    */
-  Double_t CounterBaseRates::getPrescaleFactor(UInt_t _e) {
-    UNUSED(_e);
+  Double_t CounterBaseRates::getPrescaleFactor(UInt_t /*e*/) {
     Error("CounterBaseRates::getPrescaleFactor",
           "This function is not defined for a Rates Counter, see the Rates base class.");
     return 0.;
@@ -181,8 +178,7 @@ namespace TrigCostRootAnalysis {
   /**
    * End of event processing. Unused with Rates counters
    */
-  void CounterBaseRates::endEvent(Float_t _weight) {
-    UNUSED(_weight);
+  void CounterBaseRates::endEvent(Float_t /*weight*/) {
     if (m_detailLevel == 0) Error("CounterBaseRates::endEvent", "Not expected to call this for a rates counter with detail level = 0 (no histograms)");
     m_dataStore.endEvent();
   }
@@ -242,22 +238,22 @@ namespace TrigCostRootAnalysis {
   }
 
   /**
-   * @param _toAdd Add a L1 TriggerItem which is to be used by this rates counter.
+   * @param toAdd Add a L1 TriggerItem which is to be used by this rates counter.
    */
-  void CounterBaseRates::addL1Item(RatesChainItem* _toAdd) {
-    assert(_toAdd != nullptr);
-    m_L1s.insert(_toAdd);
+  void CounterBaseRates::addL1Item(RatesChainItem* toAdd) {
+    assert(toAdd != nullptr);
+    m_L1s.insert(toAdd);
     // Add back-link
-    _toAdd->addCounter(this);
+    toAdd->addCounter(this);
   }
 
   /**
-   * @param _toAdd Add a grouping of items in a CPS.
-   * @param _name The name of the chain in this CPS group which is to be active in this counter
+   * @param toAdd Add a grouping of items in a CPS.
+   * @param name The name of the chain in this CPS group which is to be active in this counter
    */
-  void CounterBaseRates::addCPSItem(RatesCPSGroup* _toAdd, std::string _name) {
-    if (_toAdd != nullptr) m_cpsGroups.insert(_toAdd);
-    m_myCPSChains.insert(_name);
+  void CounterBaseRates::addCPSItem(RatesCPSGroup* toAdd, std::string name) {
+    if (toAdd != nullptr) m_cpsGroups.insert(toAdd);
+    m_myCPSChains.insert(name);
   }
 
   /**
@@ -273,24 +269,24 @@ namespace TrigCostRootAnalysis {
    * By excluding these here, we loose their contributions from the global rate.
    * @return If the L2 item should be excluded at this early stage.
    */
-  Bool_t CounterBaseRates::checkMultiSeed(RatesChainItem* _toAdd) {
+  Bool_t CounterBaseRates::checkMultiSeed(RatesChainItem* toAdd) {
     // Perform Union check on number of L1 seeds
     if (dynamic_cast<CounterRatesUnion*>(this) != NULL) { //If I am actually a CounterRatesUnion
-      if (_toAdd->getLower().size() > (UInt_t) Config::config().getInt(kMaxMultiSeed)) {
+      if (toAdd->getLower().size() > (UInt_t) Config::config().getInt(kMaxMultiSeed)) {
         // We are much stricter if this is a GLOBAL counter - don't want to have to disable it
-        Bool_t _isGlobal = kFALSE;
-        if (getName() == Config::config().getStr(kRateGlobalL1String)) _isGlobal = kTRUE;
-        else if (getName() == Config::config().getStr(kRateGlobalHLTString)) _isGlobal = kTRUE;
-        else if (getName() == Config::config().getStr(kRateGlobalPhysicsMainString)) _isGlobal = kTRUE;
-        else if (getName() == Config::config().getStr(kRateExpressString)) _isGlobal = kTRUE;
-        else if (getStrDecoration(kDecType) == "UniqueHLT") _isGlobal = kTRUE;
-        if (_isGlobal) {
+        Bool_t isGlobal = kFALSE;
+        if (getName() == Config::config().getStr(kRateGlobalL1String)) isGlobal = kTRUE;
+        else if (getName() == Config::config().getStr(kRateGlobalHLTString)) isGlobal = kTRUE;
+        else if (getName() == Config::config().getStr(kRateGlobalPhysicsMainString)) isGlobal = kTRUE;
+        else if (getName() == Config::config().getStr(kRateExpressString)) isGlobal = kTRUE;
+        else if (getStrDecoration(kDecType) == "UniqueHLT") isGlobal = kTRUE;
+        if (isGlobal) {
           // We only warn once per chain
-          static std::set<std::string> _toWarnAbout;
-          if (_toWarnAbout.count(_toAdd->getName()) == 0) {
-            _toWarnAbout.insert(_toAdd->getName());
+          static std::set<std::string> toWarnAbout;
+          if (toWarnAbout.count(toAdd->getName()) == 0) {
+            toWarnAbout.insert(toAdd->getName());
             Warning("CounterBaseRates::checkMultiSeed", "Not including %s in RATE_GLOBAL/EXSPRESS/UNIQUE calculations due to %u L1 seeds.",
-                    _toAdd->getName().c_str(), (UInt_t) _toAdd->getLower().size());
+                    toAdd->getName().c_str(), (UInt_t) toAdd->getLower().size());
           }
           return kFALSE;
         }
@@ -300,57 +296,57 @@ namespace TrigCostRootAnalysis {
   }
 
   /**
-   * @param _toAdd Add a HLT TriggerItem which is to be used by this rates counter.
+   * @param toAdd Add a HLT TriggerItem which is to be used by this rates counter.
    */
-  void CounterBaseRates::addL2Item(RatesChainItem* _toAdd) {
-    assert(_toAdd != nullptr);
-    if (checkMultiSeed(_toAdd) == kFALSE) return;
-
-    m_L2s.insert(_toAdd);
-    _toAdd->addCounter(this); // Add back-link
-    for (ChainItemSetIt_t _lower = _toAdd->getLowerStart(); _lower != _toAdd->getLowerEnd(); ++_lower) {
-      assert((*_lower) != nullptr);
-      m_L1s.insert((*_lower));
+  void CounterBaseRates::addL2Item(RatesChainItem* toAdd) {
+    assert(toAdd != nullptr);
+    if (checkMultiSeed(toAdd) == kFALSE) return;
+
+    m_L2s.insert(toAdd);
+    toAdd->addCounter(this); // Add back-link
+    for (ChainItemSetIt_t lower = toAdd->getLowerStart(); lower != toAdd->getLowerEnd(); ++lower) {
+      assert((*lower) != nullptr);
+      m_L1s.insert((*lower));
       //TODO do i need to add this counter to the L1s here? Don't think so
     }
   }
 
   /**
-   * @param _toAdd Add multiple HLT TriggerItems which should be used by this rates counter
+   * @param toAdd Add multiple HLT TriggerItems which should be used by this rates counter
    */
-  void CounterBaseRates::addL2Items(ChainItemSet_t _toAdd) {
-    for (ChainItemSetIt_t _it = _toAdd.begin(); _it != _toAdd.end(); ++_it) {
-      RatesChainItem* _L2 = (*_it);
+  void CounterBaseRates::addL2Items(ChainItemSet_t toAdd) {
+    for (ChainItemSetIt_t it = toAdd.begin(); it != toAdd.end(); ++it) {
+      RatesChainItem* L2 = (*it);
       // Perform Union check on number of L1 seeds
-      if (checkMultiSeed(_L2) == kFALSE) continue;
-      m_L2s.insert(_L2);
-      _L2->addCounter(this); // Add back-link
-      for (ChainItemSetIt_t _lower = _L2->getLowerStart(); _lower != _L2->getLowerEnd(); ++_lower) {
-        m_L1s.insert((*_lower));
+      if (checkMultiSeed(L2) == kFALSE) continue;
+      m_L2s.insert(L2);
+      L2->addCounter(this); // Add back-link
+      for (ChainItemSetIt_t lower = L2->getLowerStart(); lower != L2->getLowerEnd(); ++lower) {
+        m_L1s.insert((*lower));
       }
     }
   }
 
   /**
-   * @param _toAdd Add a L3 item, for upgrade this will be the new HLT
+   * @param toAdd Add a L3 item, for upgrade this will be the new HLT
    */
-  void CounterBaseRates::addL3Item(RatesChainItem* _toAdd) {
-    m_L3s.insert(_toAdd);
-    _toAdd->addCounter(this); // Add back-link
-    for (ChainItemSetIt_t _lower = _toAdd->getLowerStart(); _lower != _toAdd->getLowerEnd(); ++_lower) {
-      m_L2s.insert((*_lower));
-      for (ChainItemSetIt_t _lowerLower = (*_lower)->getLowerStart(); _lowerLower != (*_lower)->getLowerEnd(); ++_lowerLower) {
-        m_L1s.insert((*_lowerLower));
+  void CounterBaseRates::addL3Item(RatesChainItem* toAdd) {
+    m_L3s.insert(toAdd);
+    toAdd->addCounter(this); // Add back-link
+    for (ChainItemSetIt_t lower = toAdd->getLowerStart(); lower != toAdd->getLowerEnd(); ++lower) {
+      m_L2s.insert((*lower));
+      for (ChainItemSetIt_t lowerLower = (*lower)->getLowerStart(); lowerLower != (*lower)->getLowerEnd(); ++lowerLower) {
+        m_L1s.insert((*lowerLower));
       }
     }
   }
 
   /**
-   * @param _toAdd Add many L3 items, for upgrade this will be the new HLT
+   * @param toAdd Add many L3 items, for upgrade this will be the new HLT
    */
-  void CounterBaseRates::addL3Items(ChainItemSet_t _toAdd) {
-    for (auto _item : _toAdd) {
-      addL3Item(_item);
+  void CounterBaseRates::addL3Items(ChainItemSet_t toAdd) {
+    for (auto item : toAdd) {
+      addL3Item(item);
     }
   }
 
@@ -358,8 +354,8 @@ namespace TrigCostRootAnalysis {
    * @param _overlap Pointer to another counter which overlaps with this one, used to get relative rates at the end of
    *run.
    */
-  void CounterBaseRates::addOverlap(CounterBase* _overlap) {
-    m_ovelapCounters.insert(_overlap);
+  void CounterBaseRates::addOverlap(CounterBase* overlap) {
+    m_ovelapCounters.insert(overlap);
   }
 
   /**
@@ -369,24 +365,24 @@ namespace TrigCostRootAnalysis {
   Bool_t CounterBaseRates::getInEvent() {
     if (m_L2s.size() > 0 || m_cpsGroups.size() > 0) { // I'm a HLT Chain(s)
       // Check my individual chains
-      for (ChainItemSetIt_t _L2It = m_L2s.begin(); _L2It != m_L2s.end(); ++_L2It) {
-        if ((*_L2It)->getInEvent() == kTRUE) return kTRUE;
+      for (ChainItemSetIt_t L2It = m_L2s.begin(); L2It != m_L2s.end(); ++L2It) {
+        if ((*L2It)->getInEvent() == kTRUE) return kTRUE;
       }
       // Chekc any CPS groups of chains I may have
-      for (CPSGroupSetIt_t _CPSIt = m_cpsGroups.begin(); _CPSIt != m_cpsGroups.end(); ++_CPSIt) {
-        RatesCPSGroup* _cpsGroup = (*_CPSIt);
-        for (ChainItemSetIt_t _it = _cpsGroup->getChainStart(); _it != _cpsGroup->getChainEnd(); ++_it) {
-          if ((*_it)->getInEvent() == kTRUE) return kTRUE;
+      for (CPSGroupSetIt_t CPSIt = m_cpsGroups.begin(); CPSIt != m_cpsGroups.end(); ++CPSIt) {
+        RatesCPSGroup* cpsGroup = (*CPSIt);
+        for (ChainItemSetIt_t it = cpsGroup->getChainStart(); it != cpsGroup->getChainEnd(); ++it) {
+          if ((*it)->getInEvent() == kTRUE) return kTRUE;
         }
       }
     } else if (m_L1s.size() > 0) { // I'm a L1 Chain(s)
       // Still need to check that the L1 chain is active for this bunch group
-      for (ChainItemSetIt_t _L1It = m_L1s.begin(); _L1It != m_L1s.end(); ++_L1It) {
-        if ((*_L1It)->getInEvent() == kTRUE) return kTRUE;
+      for (ChainItemSetIt_t L1It = m_L1s.begin(); L1It != m_L1s.end(); ++L1It) {
+        if ((*L1It)->getInEvent() == kTRUE) return kTRUE;
       }
     } else if (m_L3s.size() > 0) { // I'm a Upgrade HLT Chain(s)
-      for (ChainItemSetIt_t _L3It = m_L3s.begin(); _L3It != m_L3s.end(); ++_L3It) {
-        if ((*_L3It)->getInEvent() == kTRUE) return kTRUE;
+      for (ChainItemSetIt_t L3It = m_L3s.begin(); L3It != m_L3s.end(); ++L3It) {
+        if ((*L3It)->getInEvent() == kTRUE) return kTRUE;
       }
     }
     return kFALSE;
@@ -400,69 +396,69 @@ namespace TrigCostRootAnalysis {
 
 
     //Check compatability of both methods
-    Float_t _chainPasses = m_dataStore.getValue(kVarEventsPassed, kSavePerCall);
-    Float_t _chainPassesDP = m_dataStore.getValue(kVarEventsPassedDP, kSavePerCall);
-    Float_t _sig = TMath::Sqrt(TMath::Abs(_chainPassesDP - _chainPasses)) / TMath::Max(_chainPassesDP, _chainPasses);
+    Float_t chainPasses = m_dataStore.getValue(kVarEventsPassed, kSavePerCall);
+    Float_t chainPassesDP = m_dataStore.getValue(kVarEventsPassedDP, kSavePerCall);
+    Float_t sig = TMath::Sqrt(TMath::Abs(chainPassesDP - chainPasses)) / TMath::Max(chainPassesDP, chainPasses);
 
-    if (_sig > 3 && !isZero(_chainPassesDP)) {
+    if (sig > 3 && !isZero(chainPassesDP)) {
       Warning("CounterBaseRates::finalise", "Chain %s of %s has Weight:%.4f DP:%.4f MethodDeviation:%.2f sigma! (PS: %s)",
               getName().c_str(), getStrDecoration(kDecRatesGroupName).c_str(),
-              _chainPasses,
-              _chainPassesDP,
-              _sig,
+              chainPasses,
+              chainPassesDP,
+              sig,
               getStrDecoration(kDecPrescaleStr).c_str());
     }
 
     // Check zero rates
-    const std::string _output = Config::config().getStr(kOutputDirectory) + "/" + Config::config().getStr(kOutputRatesWarnings);
+    const std::string output = Config::config().getStr(kOutputDirectory) + "/" + Config::config().getStr(kOutputRatesWarnings);
     if (getStrDecoration(kDecType) == "Chain" || getStrDecoration(kDecType) == "L1") { // If a plain chain
-      if (getBasicPrescale() > 0 && isZero(_chainPasses) == kTRUE) { // If PS > 0 but no rate
+      if (getBasicPrescale() > 0 && isZero(chainPasses) == kTRUE) { // If PS > 0  but no rate
         // Only display this warning once
         if (Config::config().getDisplayMsg(kMsgZeroRate) == kTRUE) {
-          Warning("CounterBaseRates::finalise", "There are chains with non-zero prescale but ZERO rate. Please check %s !", _output.c_str());
+          Warning("CounterBaseRates::finalise", "There are chains with non-zero prescale but ZERO rate. Please check %s !", output.c_str());
         }
-        std::ofstream _fout;
-        _fout.open(_output.c_str(), std::ofstream::out | std::ofstream::app); // Open to append
-        _fout << "Warning in <CounterBaseRates::finalise>: Chain " << getName() << " has a prescale of " << getStrDecoration(kDecPrescaleStr) << " but ZERO RATE." << std::endl;
-        _fout.close();
+        std::ofstream fout;
+        fout.open(output.c_str(), std::ofstream::out | std::ofstream::app); // Open to append
+        fout << "Warning in <CounterBaseRates::finalise>: Chain " << getName() << " has a prescale of " << getStrDecoration(kDecPrescaleStr) << " but ZERO RATE." << std::endl;
+        fout.close();
       }
     }
 
     // This has just been set
-    Float_t _walltime = getDecoration(kDecLbLength);
+    Float_t walltime = getDecoration(kDecLbLength);
 
     // Do lower chain rate
-    Float_t _inputRate = 0.;
+    Float_t inputRate = 0.;
     if (getStrDecoration(kDecType) == "L1") {      // For L1, just eventsRun
-      _inputRate = m_dataStore.getValue(kVarEventsRun, kSavePerCall) / _walltime;
-      decorate(kDecInputRate, floatToString(_inputRate, 4)); // Save as string
+      inputRate = m_dataStore.getValue(kVarEventsRun, kSavePerCall) / walltime;
+      decorate(kDecInputRate, floatToString(inputRate, 4)); // Save as string
     } else if (getStrDecoration(kDecType) == "Chain" && m_lowerRates != nullptr) { // For HLT, ask the L1 item
-      _inputRate = m_lowerRates->m_dataStore.getValue(kVarEventsPassed, kSavePerCall) / _walltime;
-      decorate(kDecInputRate, floatToString(_inputRate, 4)); // Save as string
+      inputRate = m_lowerRates->m_dataStore.getValue(kVarEventsPassed, kSavePerCall) / walltime;
+      decorate(kDecInputRate, floatToString(inputRate, 4)); // Save as string
     } else {
       decorate(kDecInputRate, std::string("-"));
     }
 
     // Check express
     if (getIntDecoration(kDecDoExpressChain) == 1 || m_alwaysDoExpressPS) {
-      Float_t _rateExp = m_dataStore.getValue(kVarEventsPassedExpress, kSavePerCall);
-      if (m_alwaysDoExpressPS) _rateExp = m_dataStore.getValue(kVarEventsPassed, kSavePerCall); // Duplicate this info
-      _rateExp /= _walltime;
-      decorate(kDecExpressRate, floatToString(_rateExp, 4)); // Save as string
-      decorate(kDecExpressRate, _rateExp); // Save as float too
+      Float_t rateExp = m_dataStore.getValue(kVarEventsPassedExpress, kSavePerCall);
+      if (m_alwaysDoExpressPS) rateExp = m_dataStore.getValue(kVarEventsPassed, kSavePerCall); // Duplicate this info
+      rateExp /= walltime;
+      decorate(kDecExpressRate, floatToString(rateExp, 4)); // Save as string
+      decorate(kDecExpressRate, rateExp); // Save as float too
     } else {
       decorate(kDecExpressRate, std::string("-")); // Not calculated
       decorate(kDecExpressRate, (Float_t) 0.); // Not calculated
     }
 
     // Get unique rates
-    Float_t _uniqueRate = 0.;
+    Float_t uniqueRate = 0.;
     if (getMyUniqueCounter() != 0) {
-      _uniqueRate = getMyUniqueCounter()->getValue(kVarEventsPassed, kSavePerCall);
-      _uniqueRate /= _walltime;
-      Info(getMyUniqueCounter()->getName().c_str(), "Rate %f Hz, Unique Rate %f Hz", m_dataStore.getValue(kVarEventsPassed, kSavePerCall) / _walltime, _uniqueRate);
-      decorate(kDecUniqueRate, floatToString(_uniqueRate, 4)); // Save as string
-      decorate(kDecUniqueRate, _uniqueRate); // Save as float too
+      uniqueRate = getMyUniqueCounter()->getValue(kVarEventsPassed, kSavePerCall);
+      uniqueRate /= walltime;
+      Info(getMyUniqueCounter()->getName().c_str(), "Rate %f Hz, Unique Rate %f Hz", m_dataStore.getValue(kVarEventsPassed, kSavePerCall) / walltime, uniqueRate);
+      decorate(kDecUniqueRate, floatToString(uniqueRate, 4)); // Save as string
+      decorate(kDecUniqueRate, uniqueRate); // Save as float too
     } else {
       decorate(kDecUniqueRate, std::string("-")); // Not calculated
       decorate(kDecUniqueRate, (Float_t) 0.); // Not calculated
@@ -471,14 +467,14 @@ namespace TrigCostRootAnalysis {
 
     // Get unique fraction. Note this is now a fraction of the chain rate rather than the global rate
     if (getMyUniqueCounter() != 0) {
-      Float_t _uniqueFraction = 0.;
-      Float_t _myRate = getValue(kVarEventsPassed, kSavePerCall);
-      _myRate /= _walltime;
-      if (!isZero(_myRate)) {
-        _uniqueFraction = _uniqueRate / _myRate;
+      Float_t uniqueFraction = 0.;
+      Float_t myRate = getValue(kVarEventsPassed, kSavePerCall);
+      myRate /= walltime;
+      if (!isZero(myRate)) {
+        uniqueFraction = uniqueRate / myRate;
       }
-      decorate(kDecUniqueFraction, floatToString(_uniqueFraction * 100, 2)); // Save in %, as string
-      decorate(kDecUniqueFraction, _uniqueFraction); // Save as float too
+      decorate(kDecUniqueFraction, floatToString(uniqueFraction * 100, 2)); // Save in %, as string
+      decorate(kDecUniqueFraction, uniqueFraction); // Save as float too
     } else {
       decorate(kDecUniqueFraction, std::string("-")); // Not calculated
       decorate(kDecUniqueFraction, (Float_t) 0.); // Not calculated
@@ -487,44 +483,44 @@ namespace TrigCostRootAnalysis {
     // Next step is only for chain counters
     if (getStrDecoration(kDecType) != "Chain") return;
 
-    if (isZero(_chainPasses)) return;
+    if (isZero(chainPasses)) return;
 
     if (m_ovelapCounters.size() <= 1) return; // Bug - doesn't work for one overlap counter strangely
 
     // Get the % overlap with each other counter
-    std::vector< Float_t > _binValues;
-    Bool_t _allZero = kTRUE;
-    for (CounterSetIt_t _it = m_ovelapCounters.begin(); _it != m_ovelapCounters.end(); ++_it) {
-      CounterBase* _overlapCounter = (*_it);
-      Float_t _overlapPasses = _overlapCounter->getValue(kVarEventsPassed, kSavePerCall);
-      Float_t _overlapPercentage = 100. * (_overlapPasses / _chainPasses);
-      if (_overlapPercentage != _overlapPercentage || isinf(_overlapPercentage)) {
-        Error("CounterBaseRates::finalise", "%s vs. %s propagated an inf. [Weight]", getName().c_str(), _overlapCounter->getName().c_str());
-        _binValues.push_back(0.);
+    std::vector< Float_t > binValues;
+    Bool_t allZero = kTRUE;
+    for (CounterSetIt_t it = m_ovelapCounters.begin(); it != m_ovelapCounters.end(); ++it) {
+      CounterBase* overlapCounter = (*it);
+      Float_t overlapPasses = overlapCounter->getValue(kVarEventsPassed, kSavePerCall);
+      Float_t overlapPercentage = 100. * (overlapPasses / chainPasses);
+      if (overlapPercentage != overlapPercentage || isinf(overlapPercentage)) {
+        Error("CounterBaseRates::finalise", "%s vs. %s propagated an inf. [Weight]", getName().c_str(), overlapCounter->getName().c_str());
+        binValues.push_back(0.);
       } else {
-        _binValues.push_back(_overlapPercentage);
-        if (!isZero(_overlapPercentage)) _allZero = kFALSE;
+        binValues.push_back(overlapPercentage);
+        if (!isZero(overlapPercentage)) allZero = kFALSE;
       }
     }
-    if (_allZero == kTRUE) return;
+    if (allZero == kTRUE) return;
 
     // Get the names of the other counters, use trickery on the name of the overlap counter
-    std::vector<std::string> _chainNames;
-    for (CounterSetIt_t _it = m_ovelapCounters.begin(); _it != m_ovelapCounters.end(); ++_it) {
-      CounterBase* _overlapCounter = (*_it);
+    std::vector<std::string> chainNames;
+    for (CounterSetIt_t it = m_ovelapCounters.begin(); it != m_ovelapCounters.end(); ++it) {
+      CounterBase* overlapCounter = (*it);
       // Get the name of the other chain from the name of the AND counter
-      std::string _otherName = _overlapCounter->getName();
-      _otherName.erase(_otherName.find(Config::config().getStr(kAndString)), Config::config().getStr(kAndString).size());
-      _otherName.erase(_otherName.find(getName()), getName().size());
-      _chainNames.push_back(_otherName);
+      std::string otherName = overlapCounter->getName();
+      otherName.erase(otherName.find(Config::config().getStr(kAndString)), Config::config().getStr(kAndString).size());
+      otherName.erase(otherName.find(getName()), getName().size());
+      chainNames.push_back(otherName);
     }
 
     m_dataStore.newVariable(kVarOverlap).setSavePerCall("Chain Overlap Within Rates Group;Chain;Overlap [%]");
-    m_dataStore.setBinLabels(kVarOverlap, kSavePerCall, _chainNames); // Set the bins to have this name
-    for (size_t _i = 1; _i <= _binValues.size(); ++_i) {
-      m_dataStore.store(kVarOverlap, _i, _binValues.at(_i - 1));  // Use the weight to set the effective value
-      if (_binValues.at(_i - 1) >= Config::config().getInt(kRatesOverlapWarning)) {
-        Warning("CounterBaseRates::finalise", "Chain %s overlaps %.1f%% with %s", getName().c_str(), _binValues.at(_i - 1), _chainNames.at(_i - 1).c_str());
+    m_dataStore.setBinLabels(kVarOverlap, kSavePerCall, chainNames); // Set the bins to have this name
+    for (size_t i = 1; i <= binValues.size(); ++i) {
+      m_dataStore.store(kVarOverlap, i, binValues.at(i - 1));  // Use the weight to set the effective value
+      if (binValues.at(i - 1) >= Config::config().getInt(kRatesOverlapWarning)) {
+        Warning("CounterBaseRates::finalise", "Chain %s overlaps %.1f%% with %s", getName().c_str(), binValues.at(i - 1), chainNames.at(i - 1).c_str());
       }
     }
   }
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterChain.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterChain.cxx
index bffeb2bf880c64b12c442359dd39f2df18324674..f5f8b0c49c3b9100b9d33d3636937be7a4e063e0 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterChain.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterChain.cxx
@@ -28,12 +28,12 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Chain counter constructor. Sets values of internal variables and sets up data store.
-   * @param _name Const ref to chain's name
-   * @param _ID Chain's HLT ID number.
+   * @param name Const ref to chain's name
+   * @param ID Chain's HLT ID number.
    */
-  CounterChain::CounterChain(const TrigCostData* _costData, const std::string& _name, Int_t _ID, UInt_t _detailLevel,
-                             MonitorBase* _parent)
-    : CounterBase(_costData, _name, _ID, _detailLevel, _parent),
+  CounterChain::CounterChain(const TrigCostData* costData, const std::string& name, Int_t ID, UInt_t detailLevel,
+                             MonitorBase* parent)
+    : CounterBase(costData, name, ID, detailLevel, parent),
     m_prescaleWeight(1.) {
     // Register variables to study.
     if (m_detailLevel == 0) {
@@ -86,51 +86,50 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Perform monitoring of a chain within an event.
-   * @param _e Chain index in D3PD.
-   * @param _f Unused by this counter.
-   * @param _weight Event weight.
+   * @param e Chain index in D3PD.
+   * @param f Unused by this counter.
+   * @param weight Event weight.
    */
-  void CounterChain::processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight) {
+  void CounterChain::processEventCounter(UInt_t e, UInt_t /*f*/, Float_t weight) {
     ++m_calls;
-    UNUSED(_f);
 
-    if (Config::config().debug()) debug(_e);
+    if (Config::config().debug()) debug(e);
 
-    _weight *= getPrescaleFactor();
-    if (isZero(_weight) == kTRUE) return;
+    weight *= getPrescaleFactor();
+    if (isZero(weight) == kTRUE) return;
 
     // Increase total time
-    Float_t _chainTime = m_costData->getChainTimerFromSequences(_e);
+    Float_t chainTime = m_costData->getChainTimerFromSequences(e);
 
-    //m_dataStore.store(kVarTotalPrescale, TrigConfInterface::getPrescale( m_name ), _weight);
-    m_dataStore.store(kVarEventsActive, 1., _weight);
-    m_dataStore.store(kVarEventsPassed, (Int_t) m_costData->getIsChainPassed(_e), _weight);
-    m_dataStore.store(kVarTime, _chainTime, _weight);
+    //m_dataStore.store(kVarTotalPrescale, TrigConfInterface::getPrescale( m_name ), weight);
+    m_dataStore.store(kVarEventsActive, 1., weight);
+    m_dataStore.store(kVarEventsPassed, (Int_t) m_costData->getIsChainPassed(e), weight);
+    m_dataStore.store(kVarTime, chainTime, weight);
 
-    if (m_costData->getIsChainResurrected(_e)) {
-      m_dataStore.store(kVarRerunTime, _chainTime, _weight);
+    if (m_costData->getIsChainResurrected(e)) {
+      m_dataStore.store(kVarRerunTime, chainTime, weight);
     }
 
-    s_eventTimeExecute += _chainTime * _weight; // Tabulate over all chains in event
+    s_eventTimeExecute += chainTime * weight; // Tabulate over all chains in event
 
-    if (_chainTime > Config::config().getInt(kSlowThreshold)) {
-      m_dataStore.store(kVarEventsSlow, 1., _weight);
+    if (chainTime > Config::config().getInt(kSlowThreshold)) {
+      m_dataStore.store(kVarEventsSlow, 1., weight);
     }
 
-    m_dataStore.store(kVarAlgCalls, m_costData->getChainAlgCalls(_e), _weight);
-    m_dataStore.store(kVarAlgCaches, m_costData->getChainAlgCaches(_e), _weight);
+    m_dataStore.store(kVarAlgCalls, m_costData->getChainAlgCalls(e), weight);
+    m_dataStore.store(kVarAlgCaches, m_costData->getChainAlgCaches(e), weight);
 
-    if (m_costData->getChainROBRetrievals(_e) != 0) {
-      m_dataStore.store(kVarROBRets, m_costData->getChainROBRetrievals(_e), _weight);
-      m_dataStore.store(kVarROBRetSize, m_costData->getChainROBRetrievalSize(_e), _weight);
+    if (m_costData->getChainROBRetrievals(e) != 0) {
+      m_dataStore.store(kVarROBRets, m_costData->getChainROBRetrievals(e), weight);
+      m_dataStore.store(kVarROBRetSize, m_costData->getChainROBRetrievalSize(e), weight);
     }
-    if (m_costData->getChainROBRequests(_e) != 0) {
-      m_dataStore.store(kVarROBReqs, m_costData->getChainROBRequests(_e), _weight);
-      m_dataStore.store(kVarROBReqSize, m_costData->getChainROBRequestSize(_e), _weight);
+    if (m_costData->getChainROBRequests(e) != 0) {
+      m_dataStore.store(kVarROBReqs, m_costData->getChainROBRequests(e), weight);
+      m_dataStore.store(kVarROBReqSize, m_costData->getChainROBRequestSize(e), weight);
     }
 
     // We should have as many algs here as we recorded as "called" and "cached"
-    assert(m_costData->getChainAlgs(_e).size() == m_costData->getChainAlgCalls(_e) + m_costData->getChainAlgCaches(_e));
+    assert(m_costData->getChainAlgs(e).size() == m_costData->getChainAlgCalls(e) + m_costData->getChainAlgCaches(e));
   }
 
   /**
@@ -140,16 +139,14 @@ namespace TrigCostRootAnalysis {
    * Note that this is 0 if either level has PS < 0
    * @return Multiplicitive weighting factor
    */
-  Double_t CounterChain::getPrescaleFactor(UInt_t _e) {
-    UNUSED(_e);
+  Double_t CounterChain::getPrescaleFactor(UInt_t /*e*/) {
     return m_prescaleWeight;
   }
 
   /**
    * Perform end-of-event monitoring on the DataStore.
    */
-  void CounterChain::endEvent(Float_t _weight) {
-    UNUSED(_weight);
+  void CounterChain::endEvent(Float_t /*weight*/) {
     m_dataStore.setVariableDenominator(kVarTime, s_eventTimeExecute);
     m_dataStore.endEvent();
   }
@@ -157,22 +154,22 @@ namespace TrigCostRootAnalysis {
   /**
    * Output debug information on this call to the console
    */
-  void CounterChain::debug(UInt_t _e) {
+  void CounterChain::debug(UInt_t e) {
     Info("CounterChain::debug", "Counter Name:%s ID:%i Event:%i ChainTime:%.2f ChainTimeFromSeq:%.2f "
                                 "PS:%.2f LB:%i Pass:%i PassRaw:%i PT:%i SeqCalls:%i AlgCall:%i AlgCache:%i",
          m_name.c_str(),
          getID(),
          m_costData->getEventNumber(),
-         m_costData->getChainTimer(_e),
-         m_costData->getChainTimerFromSequences(_e),
+         m_costData->getChainTimer(e),
+         m_costData->getChainTimerFromSequences(e),
          TrigConfInterface::getPrescale(m_name),
          m_costData->getLumi(),
-         m_costData->getIsChainPassed(_e),
-         m_costData->getIsChainPassedRaw(_e),
-         m_costData->getIsChainPassthrough(_e),
-         m_costData->getChainSeqCalls(_e),
-         m_costData->getChainAlgCalls(_e),
-         m_costData->getChainAlgCaches(_e)
+         m_costData->getIsChainPassed(e),
+         m_costData->getIsChainPassedRaw(e),
+         m_costData->getIsChainPassthrough(e),
+         m_costData->getChainSeqCalls(e),
+         m_costData->getChainAlgCalls(e),
+         m_costData->getChainAlgCaches(e)
          );
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterEventProfile.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterEventProfile.cxx
index 25305837a9280b274acbc0adfe2649427f397ebd..95ce00f0da8290d41808ec7ac3a3559bcd8cf42f 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterEventProfile.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterEventProfile.cxx
@@ -26,12 +26,12 @@
 namespace TrigCostRootAnalysis {
   /**
    * Evenr Profile counter - What is the typical event like? Can be broken down into differnt
-   * @param _name Const ref to name of the counter, by default this is of the form 'LumiBlock_xxx'.
-   * @param _ID Lumi block this counter is monitoring
+   * @param name Const ref to name of the counter, by default this is of the form 'LumiBlock_xxx'.
+   * @param ID Lumi block this counter is monitoring
    */
-  CounterEventProfile::CounterEventProfile(const TrigCostData* _costData, const std::string& _name, Int_t _ID,
-                                           UInt_t _detailLevel, MonitorBase* _parent)
-    : CounterBase(_costData, _name, _ID, _detailLevel, _parent) {
+  CounterEventProfile::CounterEventProfile(const TrigCostData* costData, const std::string& name, Int_t ID,
+                                           UInt_t detailLevel, MonitorBase* parent)
+    : CounterBase(costData, name, ID, detailLevel, parent) {
     m_dataStore.newVariable(kVarCalls).setSavePerCall();
     m_dataStore.newVariable(kVarTimeElapsed).setSavePerCall();
     m_dataStore.newVariable(kVarCPUTime).setSavePerCall();
@@ -56,56 +56,53 @@ namespace TrigCostRootAnalysis {
 
   /**
    * This alg was called at this counter's position in the execute sequence
-   * @param _e Unused
-   * @param _f Unused
-   * @param _weight Event weight.
+   * @param e Unused
+   * @param f Unused
+   * @param weight Event weight.
    */
-  void CounterEventProfile::processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight) {
+  void CounterEventProfile::processEventCounter(UInt_t e, UInt_t f, Float_t weight) {
     ++m_calls;
-    _weight = 1.; // Don't use weighting
-
-    if (Config::config().debug()) debug(_e);
-
-    m_dataStore.store(kVarCalls, 1., _weight);
-    m_dataStore.store(kVarAlgCaches, m_costData->getSeqAlgIsCached(_e, _f), _weight);
-    m_dataStore.store(kVarROSCalls, m_costData->getSeqAlgROSCalls(_e, _f), _weight);
-    m_dataStore.store(kVarROBReqSize, m_costData->getSeqAlgROBRequestSize(_e, _f), _weight);
-    m_dataStore.store(kVarROBRetSize, m_costData->getSeqAlgROBRetrievalSize(_e, _f), _weight);
-    Float_t _ROSTime = m_costData->getSeqAlgROSTime(_e, _f);
-    m_dataStore.store(kVarROSTime, _ROSTime, _weight);
-    m_dataStore.store(kVarCPUTime, m_costData->getSeqAlgTimer(_e, _f) - _ROSTime, _weight);
-
-    Float_t _timeOffset = Config::config().getFloat(kEventTimeOffset);
-    Float_t _time = m_costData->getSeqAlgTimeStartSec(_e, _f);
-    _time += m_costData->getSeqAlgTimeStartMicroSec(_e, _f) / 1e6;
-    _time -= _timeOffset;
-
-    if (_time < 0.) {
-      _time += 3600.; // Hour boundary crossed
+    weight = 1.; // Don't use weighting
+
+    if (Config::config().debug()) debug(e);
+
+    m_dataStore.store(kVarCalls, 1., weight);
+    m_dataStore.store(kVarAlgCaches, m_costData->getSeqAlgIsCached(e, f), weight);
+    m_dataStore.store(kVarROSCalls, m_costData->getSeqAlgROSCalls(e, f), weight);
+    m_dataStore.store(kVarROBReqSize, m_costData->getSeqAlgROBRequestSize(e, f), weight);
+    m_dataStore.store(kVarROBRetSize, m_costData->getSeqAlgROBRetrievalSize(e, f), weight);
+    Float_t ROSTime = m_costData->getSeqAlgROSTime(e, f);
+    m_dataStore.store(kVarROSTime, ROSTime, weight);
+    m_dataStore.store(kVarCPUTime, m_costData->getSeqAlgTimer(e, f) - ROSTime, weight);
+
+    Float_t timeOffset = Config::config().getFloat(kEventTimeOffset);
+    Float_t time = m_costData->getSeqAlgTimeStartSec(e, f);
+    time += m_costData->getSeqAlgTimeStartMicroSec(e, f) / 1e6;
+    time -= timeOffset;
+
+    if (time < 0.) {
+      time += 3600.; // Hour boundary crossed
       if (Config::config().getDisplayMsg(kMsgLargeSteerTime) == kTRUE) {
-        Info("CounterEventProfile::processEventCounter", "Hour boundary crossed - corrected time is %f", _time);
+        Info("CounterEventProfile::processEventCounter", "Hour boundary crossed - corrected time is %f", time);
       }
     }
-    m_dataStore.store(kVarTimeElapsed, _time, _weight);
+    m_dataStore.store(kVarTimeElapsed, time, weight);
   }
 
-  Double_t CounterEventProfile::getPrescaleFactor(UInt_t _e) {
-    UNUSED(_e);
+  Double_t CounterEventProfile::getPrescaleFactor(UInt_t /*e*/) {
     return 1.;
   }
 
   /**
    * Perform end-of-event monitoring on the DataStore.
    */
-  void CounterEventProfile::endEvent(Float_t _weight) {
-    UNUSED(_weight);
+  void CounterEventProfile::endEvent(Float_t /*weight*/) {
     m_dataStore.endEvent();
   }
 
   /**
    * Output debug information on this call to the console
    */
-  void CounterEventProfile::debug(UInt_t _e) {
-    UNUSED(_e);
+  void CounterEventProfile::debug(UInt_t /*e*/) {
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterFullEvent.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterFullEvent.cxx
index 14b9516c1bc1b01ecf3286a604e594542844ebd8..a4588af05932ddfd6891e80ea8e92805eb4e2dec 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterFullEvent.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterFullEvent.cxx
@@ -29,12 +29,12 @@
 namespace TrigCostRootAnalysis {
   /**
    * Trigger Element counter constructor. Sets values of internal variables.
-   * @param _name Name of TE counter
-   * @param _ID ID number of TE counter.
+   * @param name Name of TE counter
+   * @param ID ID number of TE counter.
    */
-  CounterFullEvent::CounterFullEvent(const TrigCostData* _costData, const std::string& _name, Int_t _ID,
-                                     UInt_t _detailLevel, MonitorBase* _parent)
-    : CounterBase(_costData, _name, _ID, _detailLevel, _parent),
+  CounterFullEvent::CounterFullEvent(const TrigCostData* costData, const std::string& name, Int_t ID,
+                                     UInt_t detailLevel, MonitorBase* parent)
+    : CounterBase(costData, name, ID, detailLevel, parent),
     m_isRun(kFALSE),
     m_algCounters() {
   }
@@ -43,8 +43,8 @@ namespace TrigCostRootAnalysis {
    * Counter destructor. Delete my vector of counters
    */
   CounterFullEvent::~CounterFullEvent() {
-    for (std::vector<CounterAlgorithm*>::iterator _it = m_algCounters.begin(); _it != m_algCounters.end(); ++_it) {
-      delete (*_it);
+    for (std::vector<CounterAlgorithm*>::iterator it = m_algCounters.begin(); it != m_algCounters.end(); ++it) {
+      delete (*it);
     }
     m_algCounters.clear();
   }
@@ -58,16 +58,13 @@ namespace TrigCostRootAnalysis {
   /**
    * Investigate the Trigger Element structure for a single event.
    * Not yet implemented.
-   * @param _e Unused.
-   * @param _f Unused.
-   * @param _weight Event weight.
+   * @param e Unused.
+   * @param f Unused.
+   * @param weight Event weight.
    */
-  void CounterFullEvent::processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight) {
+   void CounterFullEvent::processEventCounter(UInt_t e, UInt_t /*f*/, Float_t weight) {
     ++m_calls;
 
-    UNUSED(_e);
-    UNUSED(_f);
-
     if (m_isRun == kTRUE) {
       Error("CounterFullEvent::processEventCounter", "Each FullEvent Counter should only be run on one event");
       return;
@@ -78,50 +75,50 @@ namespace TrigCostRootAnalysis {
     // Note we explicitly turn off histogramming
 
     // // Get chain data for event
-    // Bool_t _first = kTRUE;
-    // for (UInt_t _c = 0; _c < m_costData->getNChains(); ++_c) {
-
-    //   Int_t _chainID = m_costData->getChainID(_c);
-    //   const std::string _chainName = TrigConfInterface::getHLTNameFromChainID( _chainID,
-    // m_costData->getChainLevel(_c) );
-    //   counterMapIt _it = m_chainCounters.find( _chainName );
-    //   if ( _it == m_chainCounters.end() ) {
-
-    //     _counter =  (CounterBase*) new CounterChain( _chainName,  _chainID, /*detail = */ 0 );
-    //     m_chainCounters[_chainName] = _counter;
-    //     if (_first == kTRUE) {
-    //       _first = kFALSE;
+    // Bool_t first = kTRUE;
+    // for (UInt_t c = 0; c < m_costData->getNChains(); ++c) {
+
+    //   Int_t chainID = m_costData->getChainID(c);
+    //   const std::string chainName = TrigConfInterface::getHLTNameFromChainID( chainID,
+    // m_costData->getChainLevel(c) );
+    //   counterMapIt it = m_chainCounters.find( chainName );
+    //   if ( it == m_chainCounters.end() ) {
+
+    //     _counter =  (CounterBase*) new CounterChain( chainName,  chainID, /*detail = */ 0 );
+    //     m_chainCounters[chainName] = _counter;
+    //     if (first == kTRUE) {
+    //       first = kFALSE;
     //       _counter->startEvent();
     //     }
     //   } else {
-    //     _counter = (*_it).second;
+    //     counter = (*it).second;
     //   }
-    //   _counter->processEventCounter( m_costData, _c, 0, _weight );
+    //   counter->processEventCounter( m_costData, c, 0, weight );
     // }
 
-    // for (counterMapIt _it = m_chainCounters.begin(); _it != m_chainCounters.end(); ++_it) {
-    //   _it->second->endEvent();
+    // for (counterMapIt it = m_chainCounters.begin(); it != m_chainCounters.end(); ++it) {
+    //   it->second->endEvent();
     // }
 
     // Get all alg data for event
-    for (UInt_t _s = 0; _s < m_costData->getNSequences(); ++_s) {
-      //Int_t _chainID = m_costData->getSequenceChannelCounter(_s);
-      //const std::string _chainName = TrigConfInterface::getHLTNameFromChainID( _chainID,
-      // m_costData->getSequenceLevel(_s) );
-      for (UInt_t _a = 0; _a < m_costData->getNSeqAlgs(_s); ++_a) {
-        Int_t _seqIndex = m_costData->getSequenceIndex(_s);
-        Int_t _seqAlgPos = m_costData->getSeqAlgPosition(_s, _a);
-
-        const std::string _algName = TrigConfInterface::getHLTAlgNameFromSeqIDAndAlgPos(_seqIndex, _seqAlgPos);
-        const std::string _algType = TrigConfInterface::getHLTAlgClassNameFromSeqIDAndAlgPos(_seqIndex, _seqAlgPos);
-        Int_t _seqAlgNameHash = TrigConfInterface::getHLTAlgClassNameIDFromSeqIDAndAlgPos(_seqIndex, _seqAlgPos);
+    for (UInt_t s = 0; s < m_costData->getNSequences(); ++s) {
+      //Int_t chainID = m_costData->getSequenceChannelCounter(s);
+      //const std::string chainName = TrigConfInterface::getHLTNameFromChainID( chainID,
+      // m_costData->getSequenceLevel(s) );
+      for (UInt_t a = 0; a < m_costData->getNSeqAlgs(s); ++a) {
+        Int_t seqIndex = m_costData->getSequenceIndex(s);
+        Int_t seqAlgPos = m_costData->getSeqAlgPosition(s, a);
+
+        const std::string algName = TrigConfInterface::getHLTAlgNameFromSeqIDAndAlgPos(seqIndex, seqAlgPos);
+        const std::string algType = TrigConfInterface::getHLTAlgClassNameFromSeqIDAndAlgPos(seqIndex, seqAlgPos);
+        Int_t seqAlgNameHash = TrigConfInterface::getHLTAlgClassNameIDFromSeqIDAndAlgPos(seqIndex, seqAlgPos);
 
         // Exceptionally here we make a new sub-counter for every algorithm to capture the fine details of the execution
 
-        CounterAlgorithm* _counter = new CounterAlgorithm(m_costData, _algName, _seqAlgNameHash, /*detail = */ 0);
-        //_counter->decorate( "algClassName", _algType );
-        _counter->processEventCounter(_s, _a, _weight);
-        m_algCounters.push_back(_counter);
+        CounterAlgorithm* counter = new CounterAlgorithm(m_costData, algName, seqAlgNameHash, /*detail = */ 0);
+        //counter->decorate( "algClassName", algType );
+        counter->processEventCounter(s, a, weight);
+        m_algCounters.push_back(counter);
       }
     }
 
@@ -129,14 +126,13 @@ namespace TrigCostRootAnalysis {
     std::sort(m_algCounters.begin(), m_algCounters.end());
 
     // Code here. Suppress warnings for now.
-    debug(_e);
+    debug(e);
   }
 
   /**
    * Perform end-of-event monitoring. Does nothing for FullEvent
    */
-  void CounterFullEvent::endEvent(Float_t _weight) {
-    UNUSED(_weight);
+  void CounterFullEvent::endEvent(Float_t /*weight*/) {
   }
 
   /**
@@ -145,16 +141,14 @@ namespace TrigCostRootAnalysis {
    * Hence this function is not used here
    * @return Multiplicative weighting factor
    */
-  Double_t CounterFullEvent::getPrescaleFactor(UInt_t _e) {
-    UNUSED(_e);
+  Double_t CounterFullEvent::getPrescaleFactor(UInt_t /*e*/) {
     return 0.;
   }
 
   /**
    * Output debug information on this call to the console
    */
-  void CounterFullEvent::debug(UInt_t _e) {
-    UNUSED(_e);
+  void CounterFullEvent::debug(UInt_t /*e*/) {
     // Loop over TEs
     std::ofstream fout(std::string("te_test" + getName() + ".dot").c_str());
     fout << "digraph G{" << std::endl;
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterGlobals.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterGlobals.cxx
index 43d76c7aba403455f0e22bf56a0efa67b94b56a8..0b746e114c08f77ab39fac3e24a2e8cf8c1bc1f5 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterGlobals.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterGlobals.cxx
@@ -26,12 +26,12 @@
 namespace TrigCostRootAnalysis {
   /**
    * Global quantities counter - monitor overall HLT processing for a single LB
-   * @param _name Const ref to name of the counter, by default this is of the form 'LumiBlock_xxx'.
-   * @param _ID Lumi block this counter is monitoring
+   * @param name Const ref to name of the counter, by default this is of the form 'LumiBlock_xxx'.
+   * @param ID Lumi block this counter is monitoring
    */
-  CounterGlobals::CounterGlobals(const TrigCostData* _costData, const std::string& _name, Int_t _ID,
-                                 UInt_t _detailLevel, MonitorBase* _parent)
-    : CounterBase(_costData, _name, _ID, _detailLevel, _parent),
+  CounterGlobals::CounterGlobals(const TrigCostData* costData, const std::string& name, Int_t ID,
+                                 UInt_t detailLevel, MonitorBase* parent)
+    : CounterBase(costData, name, ID, detailLevel, parent),
     m_earliestTimestamp(0.),
     m_latestTimestamp(0.),
     m_steeringTime(0.),
@@ -87,19 +87,19 @@ namespace TrigCostRootAnalysis {
     
 
     TrigXMLService::trigXMLService().parseHLTFarmXML();
-    const IntStringMap_t _comp = TrigXMLService::trigXMLService().getComputerTypeToNameMap();
-    if (_comp.size() >= 4) {
+    const IntStringMap_t comp = TrigXMLService::trigXMLService().getComputerTypeToNameMap();
+    if (comp.size() >= 4) {
       m_dataStore.newVariable(kVarSteeringTimeCPUType1).setSavePerEvent(std::string("Steering Time Per Event by " +
-                                                                                    _comp.at(1) +
+                                                                                    comp.at(1) +
                                                                                     ";Steering Time [ms];Events"));
       m_dataStore.newVariable(kVarSteeringTimeCPUType2).setSavePerEvent(std::string("Steering Time Per Event by " +
-                                                                                    _comp.at(2) +
+                                                                                    comp.at(2) +
                                                                                     ";Steering Time [ms];Events"));
       m_dataStore.newVariable(kVarSteeringTimeCPUType3).setSavePerEvent(std::string("Steering Time Per Event by " +
-                                                                                    _comp.at(3) +
+                                                                                    comp.at(3) +
                                                                                     ";Steering Time [ms];Events"));
       m_dataStore.newVariable(kVarSteeringTimeCPUType4).setSavePerEvent(std::string("Steering Time Per Event by " +
-                                                                                    _comp.at(4) +
+                                                                                    comp.at(4) +
                                                                                     ";Steering Time [ms];Events"));
       m_dataStore.newVariable(kVarEventsCPUType1).setSavePerCall();
       m_dataStore.newVariable(kVarEventsCPUType2).setSavePerCall();
@@ -110,7 +110,7 @@ namespace TrigCostRootAnalysis {
       m_CPUBreakDown = kFALSE;
     }
 
-    decorate(kDecLBMuValue, TrigXMLService::trigXMLService().getLBMuValue(_ID));
+    decorate(kDecLBMuValue, TrigXMLService::trigXMLService().getLBMuValue(ID));
 
   }
 
@@ -129,84 +129,82 @@ namespace TrigCostRootAnalysis {
   /**
    * Add this event to the global monitor.
    * I am run once for every event in my assigned lumi block
-   * @param _e Unused
-   * @param _f Unused
-   * @param _weight Event weight.
+   * @param e Unused
+   * @param f Unused
+   * @param weight Event weight.
    */
-  void CounterGlobals::processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight) {
+  void CounterGlobals::processEventCounter(UInt_t e, UInt_t /*f*/, Float_t weight) {
     ++m_calls;
-    UNUSED(_e);
-    UNUSED(_f);
-    static Bool_t _invertFilter = (Bool_t) Config::config().getInt(kPatternsInvert);
+    static Bool_t invertFilter = (Bool_t) Config::config().getInt(kPatternsInvert);
 
     m_earliestTimestamp = FLT_MAX;
     m_latestTimestamp = FLT_MIN;
     m_steeringTime = 0.;
 
-    m_dataStore.store(kVarEventsActive, 1., _weight);
+    m_dataStore.store(kVarEventsActive, 1., weight);
 
     //Did L1 pass?
-    for (UInt_t _i = 0; _i < m_costData->getNL1(); ++_i) {
-      if (m_costData->getIsL1PassedAfterVeto(_i) == kFALSE) continue;
-      m_dataStore.store(kVarL1PassEvents, 1., _weight);
+    for (UInt_t i = 0; i < m_costData->getNL1(); ++i) {
+      if (m_costData->getIsL1PassedAfterVeto(i) == kFALSE) continue;
+      m_dataStore.store(kVarL1PassEvents, 1., weight);
       break;
     }
 
     //Did HLT run? (almost certainly... but check)
-    if (m_costData->getNChains()) m_dataStore.store(kVarHLTEvents, 1., _weight);
+    if (m_costData->getNChains()) m_dataStore.store(kVarHLTEvents, 1., weight);
 
     //Did HLT pass?
-    Bool_t _hltPass = kFALSE;
-    for (UInt_t _i = 0; _i < m_costData->getNChains(); ++_i) {
-      if (m_costData->getIsChainPassed(_i) == kFALSE) continue;
-      const std::string _chainName = TrigConfInterface::getHLTNameFromChainID(m_costData->getChainID(_i));
-      if (_chainName.find("costmonitor") != std::string::npos) continue;                                                                              
+    Bool_t hltPass = kFALSE;
+    for (UInt_t i = 0; i < m_costData->getNChains(); ++i) {
+      if (m_costData->getIsChainPassed(i) == kFALSE) continue;
+      const std::string chainName = TrigConfInterface::getHLTNameFromChainID(m_costData->getChainID(i));
+      if (chainName.find("costmonitor") != std::string::npos) continue;                                                                              
       // This always passes!
-      if (checkPatternNameMonitor(_chainName, _invertFilter, m_costData->getIsChainResurrected(_i)) == kFALSE) continue;
+      if (checkPatternNameMonitor(chainName, invertFilter, m_costData->getIsChainResurrected(i)) == kFALSE) continue;
 
-      m_dataStore.store(kVarHLTPassEvents, 1., _weight);
-      _hltPass = kTRUE;
+      m_dataStore.store(kVarHLTPassEvents, 1., weight);
+      hltPass = kTRUE;
       break;
     }
 
     // Look at all algs in this event
-    Int_t _havePatterns = Config::config().getVecSize(kPatternsMonitor);
-    for (UInt_t _s = 0; _s < m_costData->getNSequences(); ++_s) {
+    Int_t havePatterns = Config::config().getVecSize(kPatternsMonitor);
+    for (UInt_t s = 0; s < m_costData->getNSequences(); ++s) {
       // Loop over all algorithms in sequence
-      Bool_t _isRerun = m_costData->getSeqIsRerun(_s);
-      for (UInt_t _a = 0; _a < m_costData->getNSeqAlgs(_s); ++_a) {
-        Float_t _algWeight = _weight * getPrescaleFactor(_e);
-        if (isZero(_algWeight) == kTRUE) continue;
-
-        if (_havePatterns > 0) {
-          Int_t _chainID = m_costData->getSequenceChannelCounter(_s);
-          const std::string _chainName = TrigConfInterface::getHLTNameFromChainID(_chainID);
-          if (checkPatternNameMonitor(_chainName, _invertFilter, m_costData->getSeqIsRerun(_s)) == kFALSE) continue;
+      Bool_t isRerun = m_costData->getSeqIsRerun(s);
+      for (UInt_t a = 0; a < m_costData->getNSeqAlgs(s); ++a) {
+        Float_t algWeight = weight * getPrescaleFactor(e);
+        if (isZero(algWeight) == kTRUE) continue;
+
+        if (havePatterns > 0) {
+          Int_t chainID = m_costData->getSequenceChannelCounter(s);
+          const std::string chainName = TrigConfInterface::getHLTNameFromChainID(chainID);
+          if (checkPatternNameMonitor(chainName, invertFilter, m_costData->getSeqIsRerun(s)) == kFALSE) continue;
         }
 
-        m_dataStore.store(kVarAlgCalls, 1., _algWeight);
-        m_dataStore.store(kVarROSCalls, m_costData->getSeqAlgROSCalls(_s, _a), _algWeight);
-        m_dataStore.store(kVarAlgTime, m_costData->getSeqAlgTimer(_s, _a), _algWeight);
-        m_dataStore.store(kVarROSTime, m_costData->getSeqAlgROSTime(_s, _a), _algWeight);
-        m_dataStore.store(kVarCPUTime, m_costData->getSeqAlgTimer(_s, _a) - m_costData->getSeqAlgROSTime(_s, _a), _algWeight);
+        m_dataStore.store(kVarAlgCalls, 1., algWeight);
+        m_dataStore.store(kVarROSCalls, m_costData->getSeqAlgROSCalls(s, a), algWeight);
+        m_dataStore.store(kVarAlgTime, m_costData->getSeqAlgTimer(s, a), algWeight);
+        m_dataStore.store(kVarROSTime, m_costData->getSeqAlgROSTime(s, a), algWeight);
+        m_dataStore.store(kVarCPUTime, m_costData->getSeqAlgTimer(s, a) - m_costData->getSeqAlgROSTime(s, a), algWeight);
 
-        if (_isRerun) m_dataStore.store(kVarRerunTime, m_costData->getSeqAlgTimer(_s, _a), _algWeight);
-        if (_hltPass) m_dataStore.store(kVarPassTime, m_costData->getSeqAlgTimer(_s, _a), _algWeight);
+        if (isRerun) m_dataStore.store(kVarRerunTime, m_costData->getSeqAlgTimer(s, a), algWeight);
+        if (hltPass) m_dataStore.store(kVarPassTime, m_costData->getSeqAlgTimer(s, a), algWeight);
 
         // Calculate the start and stop from the steering info
-        if (!isZero(m_costData->getSeqAlgTimeStart(_s, _a)) &&
-            m_costData->getSeqAlgTimeStart(_s, _a) < m_earliestTimestamp) {
-          m_earliestTimestamp = m_costData->getSeqAlgTimeStart(_s, _a);
+        if (!isZero(m_costData->getSeqAlgTimeStart(s, a)) &&
+            m_costData->getSeqAlgTimeStart(s, a) < m_earliestTimestamp) {
+          m_earliestTimestamp = m_costData->getSeqAlgTimeStart(s, a);
         }
-        if (m_costData->getSeqAlgTimeStop(_s, _a) > m_latestTimestamp) {
-          m_latestTimestamp = m_costData->getSeqAlgTimeStop(_s, _a);
+        if (m_costData->getSeqAlgTimeStop(s, a) > m_latestTimestamp) {
+          m_latestTimestamp = m_costData->getSeqAlgTimeStop(s, a);
         }
 
         if (Config::config().debug()) {
-          m_algTime += m_costData->getSeqAlgTimer(_s, _a);
-          m_rosTime += m_costData->getSeqAlgROSTime(_s, _a);
-          m_cpuTime += m_costData->getSeqAlgTimer(_s, _a) - m_costData->getSeqAlgROSTime(_s, _a);
-          m_rosCalls += m_costData->getSeqAlgROSCalls(_s, _a);
+          m_algTime += m_costData->getSeqAlgTimer(s, a);
+          m_rosTime += m_costData->getSeqAlgROSTime(s, a);
+          m_cpuTime += m_costData->getSeqAlgTimer(s, a) - m_costData->getSeqAlgROSTime(s, a);
+          m_rosCalls += m_costData->getSeqAlgROSCalls(s, a);
           ++m_algCalls;
         }
       }
@@ -233,44 +231,44 @@ namespace TrigCostRootAnalysis {
     // Slow event? This sets a flag which other counters will use
     if (m_steeringTime > Config::config().getInt(kSlowEvThreshold)) Config::config().set(kCurrentEventIsSlow, 1, kUnlocked);
     else Config::config().set(kCurrentEventIsSlow, 0, kUnlocked);
-    m_dataStore.store(kVarSteeringTime, m_steeringTime, _weight);
+    m_dataStore.store(kVarSteeringTime, m_steeringTime, weight);
 
-    m_dataStore.store(kVarROI, m_costData->getNRoIs(), _weight);
+    m_dataStore.store(kVarROI, m_costData->getNRoIs(), weight);
 
     // Did we encounter a new processing unit? Count unique PUs
     if (m_processingUnits.count(m_costData->getAppId()) == 0) m_dataStore.store(kVarHLTPUs, 1.);
     m_processingUnits[ m_costData->getAppId() ] += 1;
 
     if (m_CPUBreakDown == kTRUE) {
-      Int_t _computerType = TrigXMLService::trigXMLService().getComputerType(((UInt_t) m_costData->getAppId()));
-      switch (_computerType) {
-      case 1: m_dataStore.store(kVarSteeringTimeCPUType1, m_steeringTime, _weight);
-        m_dataStore.store(kVarEventsCPUType1, 1., _weight);
+      Int_t computerType = TrigXMLService::trigXMLService().getComputerType(((UInt_t) m_costData->getAppId()));
+      switch (computerType) {
+      case 1: m_dataStore.store(kVarSteeringTimeCPUType1, m_steeringTime, weight);
+        m_dataStore.store(kVarEventsCPUType1, 1., weight);
         break;
 
-      case 2: m_dataStore.store(kVarSteeringTimeCPUType2, m_steeringTime, _weight);
-        m_dataStore.store(kVarEventsCPUType2, 1., _weight);
+      case 2: m_dataStore.store(kVarSteeringTimeCPUType2, m_steeringTime, weight);
+        m_dataStore.store(kVarEventsCPUType2, 1., weight);
         break;
 
-      case 3: m_dataStore.store(kVarSteeringTimeCPUType3, m_steeringTime, _weight);
-        m_dataStore.store(kVarEventsCPUType3, 1., _weight);
+      case 3: m_dataStore.store(kVarSteeringTimeCPUType3, m_steeringTime, weight);
+        m_dataStore.store(kVarEventsCPUType3, 1., weight);
         break;
 
-      case 4: m_dataStore.store(kVarSteeringTimeCPUType4, m_steeringTime, _weight);
-        m_dataStore.store(kVarEventsCPUType4, 1., _weight);
+      case 4: m_dataStore.store(kVarSteeringTimeCPUType4, m_steeringTime, weight);
+        m_dataStore.store(kVarEventsCPUType4, 1., weight);
         break;
 
-      default: Error("CounterGlobals::processEventCounter", "Unknown computer type ID %i", _computerType);
+      default: Error("CounterGlobals::processEventCounter", "Unknown computer type ID %i", computerType);
       }
     }
 
     // Misc event timers
     m_dataStore.store(kVarTrigCostTime, m_costData->getTimerTrigCost(), 1.); // Note unweighted as this correlates 100%
                                                                              // with selected events to monitor
-    m_dataStore.store(kVarTexecTime, m_costData->getTimerEndSteer(), _weight);
-    m_dataStore.store(kVarChainExecTime, m_costData->getTimerChainProcessed(), _weight);
-    m_dataStore.store(kVarResultBuildingTime, m_costData->getTimerResultBuilder(), _weight);
-    m_dataStore.store(kVarMonitoringTime, m_costData->getTimerMonitoring(), _weight);
+    m_dataStore.store(kVarTexecTime, m_costData->getTimerEndSteer(), weight);
+    m_dataStore.store(kVarChainExecTime, m_costData->getTimerChainProcessed(), weight);
+    m_dataStore.store(kVarResultBuildingTime, m_costData->getTimerResultBuilder(), weight);
+    m_dataStore.store(kVarMonitoringTime, m_costData->getTimerMonitoring(), weight);
 
     if (Config::config().debug()) debug(0);
   }
@@ -278,8 +276,7 @@ namespace TrigCostRootAnalysis {
   /**
    * Perform end-of-event monitoring on the DataStore.
    */
-  void CounterGlobals::endEvent(Float_t _weight) {
-    UNUSED(_weight);
+  void CounterGlobals::endEvent(Float_t /*weight*/) {
     m_dataStore.endEvent();
     if (Config::config().debug()) {
       m_algTime = 0;
@@ -295,17 +292,16 @@ namespace TrigCostRootAnalysis {
    * Nees to be same as for alg
    * @return Multiplicitive weighting factor
    */
-  Double_t CounterGlobals::getPrescaleFactor(UInt_t _e) {
+  Double_t CounterGlobals::getPrescaleFactor(UInt_t e) {
     return TrigXMLService::trigXMLService().getHLTCostWeightingFactor(
-      TrigConfInterface::getHLTNameFromChainID(m_costData->getSequenceChannelCounter(_e),
-                                               m_costData->getSequenceLevel(_e)));
+      TrigConfInterface::getHLTNameFromChainID(m_costData->getSequenceChannelCounter(e),
+                                               m_costData->getSequenceLevel(e)));
   }
 
   /**
    * Output debug information on this call to the console
    */
-  void CounterGlobals::debug(UInt_t _e) {
-    UNUSED(_e);
+  void CounterGlobals::debug(UInt_t /*e*/) {
 
     Info("CounterGlobals::debug", "Calls:%i, lowStamp%f, highStamp:%f, steeringTime:%f, algTime:%f,"
                                   "cpuTime:%f, rosTime:%f, rosCalls:%i, rosInFile:%i, rois:%i, algs:%i",
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterROB.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterROB.cxx
index e0e63a75355d3d916fe935100643b4c1b0545683..c4fbd72411ea946dee5d4e55530c66d36678b92b 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterROB.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterROB.cxx
@@ -22,12 +22,12 @@
 namespace TrigCostRootAnalysis {
   /**
    * Read Out Buffer counter constructor. Sets values of internal variables and sets up data store.
-   * @param _name Const ref to name of Read Out Buffer
-   * @param _ID ID number of Read Out Buffer
+   * @param name Const ref to name of Read Out Buffer
+   * @param ID ID number of Read Out Buffer
    */
-  CounterROB::CounterROB(const TrigCostData* _costData, const std::string& _name, Int_t _ID, UInt_t _detailLevel,
-                         MonitorBase* _parent)
-    : CounterBase(_costData, _name, _ID, _detailLevel, _parent) {
+  CounterROB::CounterROB(const TrigCostData* costData, const std::string& name, Int_t ID, UInt_t detailLevel,
+                         MonitorBase* parent)
+    : CounterBase(costData, name, ID, detailLevel, parent) {
     if (m_detailLevel == 0) m_dataStore.setHistogramming(kFALSE);
 
     m_dataStore.newVariable(kVarEventsActive).setSavePerEvent();
@@ -76,90 +76,89 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Perform monitoring of a Read Out Buffer call within an event.
-   * @param _e Read Out Buffer index in D3PD.
-   * @param _f ROBIN index within ROB
-   * @param _weight Event weight.
+   * @param e Read Out Buffer index in D3PD.
+   * @param f ROBIN index within ROB
+   * @param weight Event weight.
    */
-  void CounterROB::processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight) {
-    UNUSED(_f);
+  void CounterROB::processEventCounter(UInt_t e, UInt_t /*f*/, Float_t weight) {
     ++m_calls;
 
-    _weight *= getPrescaleFactor(_e);
-    if (isZero(_weight) == kTRUE) return;
+    weight *= getPrescaleFactor(e);
+    if (isZero(weight) == kTRUE) return;
 
 
-    Bool_t _isBad = kFALSE;
+    Bool_t isBad = kFALSE;
 
-    IntSet_t* _ROBsForCounter(nullptr);
+    IntSet_t* ROBsForCounter(nullptr);
 
     // Collect data to fill. This depends on if we are looking at a ROBIN or a ROS
 
-    MonitorROSCommon* _parent = (MonitorROSCommon*) getParent(); // Up-cast
+    MonitorROSCommon* parent = (MonitorROSCommon*) getParent(); // Up-cast
 
     if (getStrDecoration(kDecType) == Config::config().getStr(kROSString)) {
       // I'm monitoring a ROS. I need to collate all my ROBINs in this request
-      _ROBsForCounter = &(_parent->getROSMapping(_e).find(getStrDecoration(kDecMyROS))->second); // Get my mapping
+      ROBsForCounter = &(parent->getROSMapping(e).find(getStrDecoration(kDecMyROS))->second); // Get my mapping
     } else if (getStrDecoration(kDecType) == Config::config().getStr(kROBINString)) {
       //Monitoring a ROBIN, need to collate all ROBS
-      _ROBsForCounter = &(_parent->getROBINMapping(_e).find(getStrDecoration(kDecMyROS))->second); //Get ROBIN mapping
+      ROBsForCounter = &(parent->getROBINMapping(e).find(getStrDecoration(kDecMyROS))->second); //Get ROBIN mapping
     } else {
       // Else we're just monitoring a ROBIN hence it's only me!
-      //_ROBsForCounter.insert( _f );
+      //ROBsForCounter.insert( f );
       Error("CounterROB::processEventCounter", "Does not match ROS or ROBIN");
     }
 
 
     // Put nullptr check here so covertiry sees it
-    if (_ROBsForCounter == nullptr) return;
+    if (ROBsForCounter == nullptr) return;
 
-    //Int_t _nROBSForCounter = _ROBsForCounter->size();
+    //Int_t _nROBSForCounter = ROBsForCounter->size();
 
     // Loop over the ROBINs in this ROS request
-    for (IntSetIt_t _it = _ROBsForCounter->begin(); _it != _ROBsForCounter->end(); ++_it) {
-      UInt_t _ROBIndex = (*_it);
+    for (IntSetIt_t it = ROBsForCounter->begin(); it != ROBsForCounter->end(); ++it) {
+      UInt_t ROBIndex = (*it);
 
-      bool isRetrieved = m_costData->getIsROBDataRetrieved(_e, _ROBIndex);
-      bool isPrefetch = m_costData->getIsROBDataStatusPrefetched(_e, _ROBIndex);
-      bool isCached = m_costData->getIsROBDataCached(_e, _ROBIndex);
+      bool isRetrieved = m_costData->getIsROBDataRetrieved(e, ROBIndex);
+      bool isPrefetch = m_costData->getIsROBDataStatusPrefetched(e, ROBIndex);
+      bool isCached = m_costData->getIsROBDataCached(e, ROBIndex);
       isRetrieved = isRetrieved || isPrefetch;
 
-      m_dataStore.store(kVarROBRets, m_costData->getIsROBDataRetrieved(_e, _ROBIndex), _weight);
-      if (isRetrieved) m_dataStore.store(kVarROBRetSize, m_costData->getROBDataSize(_e, _ROBIndex), _weight);
+      m_dataStore.store(kVarROBRets, m_costData->getIsROBDataRetrieved(e, ROBIndex), weight);
+      if (isRetrieved) m_dataStore.store(kVarROBRetSize, m_costData->getROBDataSize(e, ROBIndex), weight);
 
-      m_dataStore.store(kVarROBReqs, m_costData->getIsROBDataCached(_e, _ROBIndex), _weight);
+      m_dataStore.store(kVarROBReqs, m_costData->getIsROBDataCached(e, ROBIndex), weight);
 
-      if (isCached) m_dataStore.store(kVarROBReqSize, m_costData->getROBDataSize(_e, _ROBIndex), _weight);
+      if (isCached) m_dataStore.store(kVarROBReqSize, m_costData->getROBDataSize(e, ROBIndex), weight);
 
       if (!isPrefetch) {
-        m_dataStore.store(kVarROBUnclassified, m_costData->getIsROBDataUnclassified(_e, _ROBIndex), _weight);
+        m_dataStore.store(kVarROBUnclassified, m_costData->getIsROBDataUnclassified(e, ROBIndex), weight);
       }
 
-      m_dataStore.store(kVarROBPrefetched, m_costData->getIsROBDataStatusPrefetched(_e, _ROBIndex), _weight);
-      m_dataStore.store(kVarROBIgnored, m_costData->getIsROBDataIgnored(_e, _ROBIndex), _weight);
-      m_dataStore.store(kVarROBDisabled, m_costData->getIsROBDataDisabled(_e, _ROBIndex), _weight);
+      m_dataStore.store(kVarROBPrefetched, m_costData->getIsROBDataStatusPrefetched(e, ROBIndex), weight);
+      m_dataStore.store(kVarROBIgnored, m_costData->getIsROBDataIgnored(e, ROBIndex), weight);
+      m_dataStore.store(kVarROBDisabled, m_costData->getIsROBDataDisabled(e, ROBIndex), weight);
 
-      if (m_costData->getIsROBDataStatusOK(_e, _ROBIndex) == kFALSE) _isBad = kTRUE;
-      m_dataStore.store(kVarROBNotOK, (int) _isBad, _weight);
+      if (m_costData->getIsROBDataStatusOK(e, ROBIndex) == kFALSE) isBad = kTRUE;
+      m_dataStore.store(kVarROBNotOK, (int) isBad, weight);
 
-      if (_isBad == kTRUE && Config::config().getDisplayMsg(kMsgBadROB) == kTRUE) {
+      if (isBad == kTRUE && Config::config().getDisplayMsg(kMsgBadROB) == kTRUE) {
         Warning("CounterROB::processEventCounter", "ROB data from %s (ID 0x%x) is flagged as NOT OK.",
-                getName().c_str(), m_costData->getROBDataID(_e, _ROBIndex));
+                getName().c_str(), m_costData->getROBDataID(e, ROBIndex));
       }
 
       // We divide this time evenly to all ROBINs which were part of this request
-      Float_t _rosReqTime = m_costData->getROBTimer(_e); // Total time
-      _rosReqTime /= (Float_t) m_costData->getROBDataN(_e); // Time per ROBIN
-      m_dataStore.store(kVarTime, _rosReqTime, _weight);
+      Float_t rosReqTime = m_costData->getROBTimer(e); // Total time
+      rosReqTime /= (Float_t) m_costData->getROBDataN(e); // Time per ROBIN
+      m_dataStore.store(kVarTime, rosReqTime, weight);
     }
 
-    m_dataStore.store(kVarCalls, 1, _weight);
+    m_dataStore.store(kVarCalls, 1, weight);
   }
 
   /**
    * Perform end-of-event monitoring on the DataStore.
    */
-  void CounterROB::endEvent(Float_t _weight) {
-    m_dataStore.store(kVarEventsActive, 1., _weight);
+  void CounterROB::endEvent(Float_t weight) {
+    m_dataStore.store(kVarEventsActive, 1., weight);
     m_dataStore.endEvent();
   }
 
@@ -168,39 +167,39 @@ namespace TrigCostRootAnalysis {
    * We associate ROS with Alg, then get the alg's chain, then get the weighting factor for the chain
    * @return Multiplicative weighting factor
    */
-  Double_t CounterROB::getPrescaleFactor(UInt_t _e) {
-    Int_t _seqID = m_costData->getROBAlgLocation(_e).first;
+  Double_t CounterROB::getPrescaleFactor(UInt_t e) {
+    Int_t seqID = m_costData->getROBAlgLocation(e).first;
 
-    if (_seqID < 0) return 1.; // Could not find associated alg - no additonal scaling
+    if (seqID < 0) return 1.; // Could not find associated alg - no additonal scaling
 
     return TrigXMLService::trigXMLService().getHLTCostWeightingFactor(
-      TrigConfInterface::getHLTNameFromChainID(m_costData->getSequenceChannelCounter(_seqID),
-                                               m_costData->getSequenceLevel(_seqID)));
+      TrigConfInterface::getHLTNameFromChainID(m_costData->getSequenceChannelCounter(seqID),
+                                               m_costData->getSequenceLevel(seqID)));
   }
 
   /**
    * Output debug information on this call to the console
    */
-  void CounterROB::debug(UInt_t _e, UInt_t _f) {
-    if (_f == 0) { //For first ROB in ROSReq
+  void CounterROB::debug(UInt_t e, UInt_t f) {
+    if (f == 0) { //For first ROB in ROSReq
       Info("CounterROB::debug", "ROS %s: ReqID:%i Timer:%.2f NData:%i NSum:%i",
            getName().c_str(),
-           m_costData->getROBReqID(_e),
-           m_costData->getROBTimer(_e),
-           m_costData->getROBDataN(_e),
-           m_costData->getROBSumN(_e));
+           m_costData->getROBReqID(e),
+           m_costData->getROBTimer(e),
+           m_costData->getROBDataN(e),
+           m_costData->getROBSumN(e));
     }
     Info("CounterROB::debug",
          "\t%i] ROB %s: Size:%.2f Cache:%i Disabled:%i Ignored:%i Retr.:%i Prefetched:%i Unclassified:%i OK:%i",
-         _f,
+         f,
          getName().c_str(),
-         m_costData->getROBDataSize(_e, _f),
-         m_costData->getIsROBDataCached(_e, _f),
-         m_costData->getIsROBDataDisabled(_e, _f),
-         m_costData->getIsROBDataIgnored(_e, _f),
-         m_costData->getIsROBDataRetrieved(_e, _f),
-         m_costData->getIsROBDataStatusPrefetched(_e, _f),
-         m_costData->getIsROBDataUnclassified(_e, _f),
-         m_costData->getIsROBDataStatusOK(_e, _f));
+         m_costData->getROBDataSize(e, f),
+         m_costData->getIsROBDataCached(e, f),
+         m_costData->getIsROBDataDisabled(e, f),
+         m_costData->getIsROBDataIgnored(e, f),
+         m_costData->getIsROBDataRetrieved(e, f),
+         m_costData->getIsROBDataStatusPrefetched(e, f),
+         m_costData->getIsROBDataUnclassified(e, f),
+         m_costData->getIsROBDataStatusOK(e, f));
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterROI.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterROI.cxx
index 62515be8caf5a0653d68e2b0d8fe4baeaa66535c..e907455afd5530cf9c7a0d2104593a6b7e25834b 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterROI.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterROI.cxx
@@ -20,21 +20,21 @@
 namespace TrigCostRootAnalysis {
   /**
    * Region of Interest counter object.
-   * @param _name Const ref to name of the counter. Will only have one (plus a dummy).
-   * @param _ID ID number of Read Out Buffer
+   * @param name Const ref to name of the counter. Will only have one (plus a dummy).
+   * @param ID ID number of Read Out Buffer
    */
-  CounterROI::CounterROI(const TrigCostData* _costData, const std::string& _name, Int_t _ID, UInt_t _detailLevel,
-                         MonitorBase* _parent)
-    : CounterBase(_costData, _name, _ID, _detailLevel, _parent) {
+  CounterROI::CounterROI(const TrigCostData* costData, const std::string& name, Int_t ID, UInt_t detailLevel,
+                         MonitorBase* parent)
+    : CounterBase(costData, name, ID, detailLevel, parent) {
     m_dataStore.newVariable(kVarType).setSavePerCall("ROI Type;ROI Type;Calls");
-    std::vector<std::string> _roiTypes;
-    _roiTypes.push_back("None");
-    _roiTypes.push_back("#mu");
-    _roiTypes.push_back("EM/#tau");
-    _roiTypes.push_back("Jet");
-    _roiTypes.push_back("JetE_{T}");
-    _roiTypes.push_back("Energy");
-    m_dataStore.setBinLabels(kVarType, kSavePerCall, _roiTypes);
+    std::vector<std::string> roiTypes;
+    roiTypes.push_back("None");
+    roiTypes.push_back("#mu");
+    roiTypes.push_back("EM/#tau");
+    roiTypes.push_back("Jet");
+    roiTypes.push_back("JetE_{T}");
+    roiTypes.push_back("Energy");
+    m_dataStore.setBinLabels(kVarType, kSavePerCall, roiTypes);
 
     m_dataStore.newVariable(kVarEventsActive).setSavePerEvent();
     m_dataStore.newVariable(kVarEta).setSavePerCall("ROI #eta Distribution;#eta;ROIs");
@@ -60,39 +60,38 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Perform monitoring of a RoI.
-   * @param _e RoI to process.
-   * @param _f Unused
-   * @param _weight Event weight.
+   * @param e RoI to process.
+   * @param f Unused
+   * @param weight Event weight.
    */
-  void CounterROI::processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight) {
+  void CounterROI::processEventCounter(UInt_t e, UInt_t /*f*/, Float_t weight) {
     ++m_calls;
-    UNUSED(_f);
-
-    if (m_costData->getIsRoINone(_e) == kTRUE) m_dataStore.store(kVarType, 0., _weight);
-    else if (m_costData->getIsRoIMuon(_e) == kTRUE) m_dataStore.store(kVarType, 1., _weight);
-    else if (m_costData->getIsRoIEmTau(_e) == kTRUE) m_dataStore.store(kVarType, 2., _weight);
-    else if (m_costData->getIsRoIJet(_e) == kTRUE) m_dataStore.store(kVarType, 3., _weight);
-    else if (m_costData->getIsRoIJetEt(_e) == kTRUE) m_dataStore.store(kVarType, 4., _weight);
-    else if (m_costData->getIsRoIEnergy(_e) == kTRUE) m_dataStore.store(kVarType, 5., _weight);
-
-    if (m_costData->getRoIEta(_e) > -9000) { // Some ROIs do not have a location - these return -9999 for these vars
-      m_dataStore.store(kVarEta, m_costData->getRoIEta(_e), _weight);
-      m_dataStore.store(kVarPhi, m_costData->getRoIPhi(_e), _weight);
-      m_dataStore.store(kVarArea, m_costData->getRoIArea(_e), _weight);
+
+    if (m_costData->getIsRoINone(e) == kTRUE) m_dataStore.store(kVarType, 0., weight);
+    else if (m_costData->getIsRoIMuon(e) == kTRUE) m_dataStore.store(kVarType, 1., weight);
+    else if (m_costData->getIsRoIEmTau(e) == kTRUE) m_dataStore.store(kVarType, 2., weight);
+    else if (m_costData->getIsRoIJet(e) == kTRUE) m_dataStore.store(kVarType, 3., weight);
+    else if (m_costData->getIsRoIJetEt(e) == kTRUE) m_dataStore.store(kVarType, 4., weight);
+    else if (m_costData->getIsRoIEnergy(e) == kTRUE) m_dataStore.store(kVarType, 5., weight);
+
+    if (m_costData->getRoIEta(e) > -9000) { // Some ROIs do not have a location - these return -9999 for these vars
+      m_dataStore.store(kVarEta, m_costData->getRoIEta(e), weight);
+      m_dataStore.store(kVarPhi, m_costData->getRoIPhi(e), weight);
+      m_dataStore.store(kVarArea, m_costData->getRoIArea(e), weight);
     }
-    m_dataStore.store(kVarL1Thresh, m_costData->getRoINL1Thresh(_e), _weight);
-    //m_dataStore.store(kVarEt, m_costData->getRoIEt(_e), _weight ); // disable for now until propagated everywhere
-    m_dataStore.store(kVarCalls, 1., _weight);
+    m_dataStore.store(kVarL1Thresh, m_costData->getRoINL1Thresh(e), weight);
+    //m_dataStore.store(kVarEt, m_costData->getRoIEt(e), weight ); // disable for now until propagated everywhere
+    m_dataStore.store(kVarCalls, 1., weight);
 
 
-    if (Config::config().debug()) debug(_e);
+    if (Config::config().debug()) debug(e);
   }
 
   /**
    * Perform end-of-event monitoring on the DataStore.
    */
-  void CounterROI::endEvent(Float_t _weight) {
-    m_dataStore.store(kVarEventsActive, 1., _weight);
+  void CounterROI::endEvent(Float_t weight) {
+    m_dataStore.store(kVarEventsActive, 1., weight);
     m_dataStore.endEvent();
   }
 
@@ -101,41 +100,40 @@ namespace TrigCostRootAnalysis {
    * Not used by ROIs - doesn't make sense. Object not mapped to chain
    * @return Multiplicative weighting factor
    */
-  Double_t CounterROI::getPrescaleFactor(UInt_t _e) {
-    UNUSED(_e);
+  Double_t CounterROI::getPrescaleFactor(UInt_t /*e*/) {
     return 0.;
   }
 
   /**
    * Output debug information on this call to the console
    */
-  void CounterROI::debug(UInt_t _e) {
+  void CounterROI::debug(UInt_t e) {
     Info("CounterROI::debug",
          "ROI %u %s: ID:%i Eta:%.2f Phi:%.2f Area:%.2f NL1T:%i ET:%f ETLarge:%.2f muC:%i iso:%i EX:%.2f EY:%.2f isNone:%i isMu:%i isEmTau:%i isTau:%i isJet:%i isJetEt:%i isE:%i",
-         _e,
-         m_costData->getRoITypeString(_e).c_str(),
-         m_costData->getRoIID(_e),
-         m_costData->getRoIEta(_e),
-         m_costData->getRoIPhi(_e),
-         m_costData->getRoIArea(_e),
-         m_costData->getRoINL1Thresh(_e),
-
-         m_costData->getRoIEt(_e),
-         m_costData->getRoIEtLarge(_e),
-         m_costData->getRoIMuonCharge(_e),
-         m_costData->getRoIEmTauIsoBits(_e),
-         m_costData->getRoIVectorEX(_e),
-         m_costData->getRoIVectorEY(_e),
-         //m_costData->getRoIOverflowEX(_e),
-         //m_costData->getRoIOverflowEY(_e),
-         //m_costData->getRoIOverflowET(_e),
-
-         m_costData->getIsRoINone(_e),
-         m_costData->getIsRoIMuon(_e),
-         m_costData->getIsRoIEmTau(_e),
-         m_costData->getIsRoITau(_e),
-         m_costData->getIsRoIJet(_e),
-         m_costData->getIsRoIJetEt(_e),
-         m_costData->getIsRoIEnergy(_e));
+         e,
+         m_costData->getRoITypeString(e).c_str(),
+         m_costData->getRoIID(e),
+         m_costData->getRoIEta(e),
+         m_costData->getRoIPhi(e),
+         m_costData->getRoIArea(e),
+         m_costData->getRoINL1Thresh(e),
+
+         m_costData->getRoIEt(e),
+         m_costData->getRoIEtLarge(e),
+         m_costData->getRoIMuonCharge(e),
+         m_costData->getRoIEmTauIsoBits(e),
+         m_costData->getRoIVectorEX(e),
+         m_costData->getRoIVectorEY(e),
+         //m_costData->getRoIOverflowEX(e),
+         //m_costData->getRoIOverflowEY(e),
+         //m_costData->getRoIOverflowET(e),
+
+         m_costData->getIsRoINone(e),
+         m_costData->getIsRoIMuon(e),
+         m_costData->getIsRoIEmTau(e),
+         m_costData->getIsRoITau(e),
+         m_costData->getIsRoIJet(e),
+         m_costData->getIsRoIJetEt(e),
+         m_costData->getIsRoIEnergy(e));
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterRatesChain.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterRatesChain.cxx
index 6fff87994790de3b29ecbb1bfa4617bca18a7056..2b897d9aeb7d319d4a5050e43605a7fbc70169ba 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterRatesChain.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterRatesChain.cxx
@@ -24,13 +24,13 @@
 namespace TrigCostRootAnalysis {
   /**
    * Counter to monitor the rates of a single chain.
-   * @param _costData Const pointer to the data store, not used by this counter at the moment.
-   * @param _name Const ref to chain's name
-   * @param _ID Chain's ID number.
+   * @param costData Const pointer to the data store, not used by this counter at the moment.
+   * @param name Const ref to chain's name
+   * @param ID Chain's ID number.
    */
-  CounterRatesChain::CounterRatesChain(const TrigCostData* _costData, const std::string& _name, Int_t _ID,
-                                       UInt_t _detailLevel, MonitorBase* _parent) :
-    CounterBaseRates(_costData, _name, _ID, _detailLevel, _parent) {
+  CounterRatesChain::CounterRatesChain(const TrigCostData* costData, const std::string& name, Int_t ID,
+                                       UInt_t detailLevel, MonitorBase* parent) :
+    CounterBaseRates(costData, name, ID, detailLevel, parent) {
   }
 
   /**
@@ -46,30 +46,30 @@ namespace TrigCostRootAnalysis {
    *taken to be 1.
    * @return 1 if the chain passes, 0 if not.
    */
-  Float_t CounterRatesChain::runDirect(Bool_t _usePrescale) {
+  Float_t CounterRatesChain::runDirect(Bool_t usePrescale) {
     assert(m_L2s.size() == 1 || m_L1s.size() == 1); // We should only be one chain
     if (m_L2s.size() == 1) { // A HLT Chain
-      RatesChainItem* _L2 = (*m_L2s.begin());
+      RatesChainItem* L2 = (*m_L2s.begin());
       // L2 must pass raw and pass PS
-      if (_L2->getPassRaw() == kFALSE) return 0.;
+      if (L2->getPassRaw() == kFALSE) return 0.;
 
-      if (_usePrescale == kTRUE && _L2->getPassPS() == kFALSE) return 0.;
+      if (usePrescale == kTRUE && L2->getPassPS() == kFALSE) return 0.;
 
       // At least one L1 seed must pass Raw and pass PS
-      for (ChainItemSetIt_t _lowerIt = _L2->getLowerStart(); _lowerIt != _L2->getLowerEnd(); ++_lowerIt) {
-        RatesChainItem* _L1 = (*_lowerIt);
+      for (ChainItemSetIt_t lowerIt = L2->getLowerStart(); lowerIt != L2->getLowerEnd(); ++lowerIt) {
+        RatesChainItem* L1 = (*lowerIt);
 
-        if (_L1->getPassRaw() == kFALSE) continue;
-        if (_usePrescale == kTRUE && _L1->getPassPS() == kFALSE) continue;
+        if (L1->getPassRaw() == kFALSE) continue;
+        if (usePrescale == kTRUE && L1->getPassPS() == kFALSE) continue;
         return 1; // This chain and lower chain have both passed raw and passed PS
       }
       return 0.;
     } else { // m_L1s.size() == 1
-      RatesChainItem* _L1 = (*m_L1s.begin());
+      RatesChainItem* L1 = (*m_L1s.begin());
       // L1 must pass raw and pass PS
-      if (_L1->getPassRaw() == kFALSE) return 0.;
+      if (L1->getPassRaw() == kFALSE) return 0.;
 
-      if (_usePrescale == kTRUE && _L1->getPassPS() == kFALSE) return 0.;
+      if (usePrescale == kTRUE && L1->getPassPS() == kFALSE) return 0.;
 
       return 1;
     }
@@ -80,7 +80,7 @@ namespace TrigCostRootAnalysis {
    *factors.
    * @return Event prescale weight for this chain 0 < PS weight < 1
    */
-  Double_t CounterRatesChain::runWeight(Bool_t _includeExpress) {
+  Double_t CounterRatesChain::runWeight(Bool_t includeExpress) {
     // This is a sub-case of the ChainOR, however here we know we only have one chain at L2.
     // However, this chain may have been seeded by many L1's.
 
@@ -90,29 +90,29 @@ namespace TrigCostRootAnalysis {
     m_cachedWeight = 0.;
 
     if (m_L2s.size() == 1) { // A HLT Chain
-      RatesChainItem* _L2 = (*m_L2s.begin());
+      RatesChainItem* L2 = (*m_L2s.begin());
 
       // First we check that the one L2 passed
-      if (_L2->getPassRaw() == kFALSE) return 0.;
+      if (L2->getPassRaw() == kFALSE) return 0.;
 
-      Double_t _L1Weight = 1.;
-      for (ChainItemSetIt_t _lowerIt = _L2->getLowerStart(); _lowerIt != _L2->getLowerEnd(); ++_lowerIt) {
-        RatesChainItem* _L1 = (*_lowerIt);
-        _L1Weight *= (1. - _L1->getPassRawOverPS());
+      Double_t L1Weight = 1.;
+      for (ChainItemSetIt_t lowerIt = L2->getLowerStart(); lowerIt != L2->getLowerEnd(); ++lowerIt) {
+        RatesChainItem* L1 = (*lowerIt);
+        L1Weight *= (1. - L1->getPassRawOverPS());
       }
 
       m_eventLumiExtrapolation =
-        _L2->getLumiExtrapolationFactor(m_costData->getLumi(), m_disableEventLumiExtrapolation);
+        L2->getLumiExtrapolationFactor(m_costData->getLumi(), m_disableEventLumiExtrapolation);
       //if (getName() == "HLT_cscmon_L1All") Info("DEBUG", "WL1:%f, NL1:%s, 1-L1: %f, HLT:%f, total: %f, lumi%f",
-      // m_lowerRates->getLastWeight(), m_lowerRates->getName().c_str(),  1. - _L1Weight,
-      // _L2->getPSWeight(_includeExpress), _L2->getPSWeight(_includeExpress) * ( 1. - _L1Weight ),
-      //  _L2->getLumiExtrapolationFactor()  );
-      m_cachedWeight = _L2->getPSWeight(_includeExpress) * (1. - _L1Weight);
+      // m_lowerRates->getLastWeight(), m_lowerRates->getName().c_str(),  1. - L1Weight,
+      // L2->getPSWeight(_includeExpress), L2->getPSWeight(_includeExpress) * ( 1. - L1Weight ),
+      //  L2->getLumiExtrapolationFactor()  );
+      m_cachedWeight = L2->getPSWeight(includeExpress) * (1. - L1Weight);
     } else { // A L1Chain
-      RatesChainItem* _L1 = (*m_L1s.begin());
+      RatesChainItem* L1 = (*m_L1s.begin());
       m_eventLumiExtrapolation =
-        _L1->getLumiExtrapolationFactor(m_costData->getLumi(), m_disableEventLumiExtrapolation);
-      m_cachedWeight = _L1->getPassRawOverPS();
+        L1->getLumiExtrapolationFactor(m_costData->getLumi(), m_disableEventLumiExtrapolation);
+      m_cachedWeight = L1->getPassRawOverPS();
     }
     return m_cachedWeight;
   }
@@ -120,7 +120,6 @@ namespace TrigCostRootAnalysis {
   /**
    * Output debug information on this call to the console
    */
-  void CounterRatesChain::debug(UInt_t _e) {
-    UNUSED(_e);
+  void CounterRatesChain::debug(UInt_t /*e*/) {
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterRatesIntersection.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterRatesIntersection.cxx
index 197329f7d8b9f6d10d75bd7e0fe09a61df49bd07..47a5ff22674cd60d97b1cea3762198d5d2081690 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterRatesIntersection.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterRatesIntersection.cxx
@@ -24,13 +24,13 @@
 namespace TrigCostRootAnalysis {
   /**
    * Counter to monitor the rates of a single chain.
-   * @param _costData Const pointer to the data store, not used by this counter at the moment.
-   * @param _name Const ref to chain's name
-   * @param _ID Chain's ID number.
+   * @param costData Const pointer to the data store, not used by this counter at the moment.
+   * @param name Const ref to chain's name
+   * @param ID Chain's ID number.
    */
-  CounterRatesIntersection::CounterRatesIntersection(const TrigCostData* _costData, const std::string& _name, Int_t _ID,
-                                                     UInt_t _detailLevel, MonitorBase* _parent) :
-    CounterBaseRates(_costData, _name, _ID, _detailLevel, _parent), m_redundanciesRemoved(kFALSE) {
+  CounterRatesIntersection::CounterRatesIntersection(const TrigCostData* costData, const std::string& name, Int_t ID,
+                                                     UInt_t detailLevel, MonitorBase* parent) :
+    CounterBaseRates(costData, name, ID, detailLevel, parent), m_redundanciesRemoved(kFALSE) {
   }
 
   /**
@@ -42,31 +42,31 @@ namespace TrigCostRootAnalysis {
   /**
    * This is the naive method.
    * All L2 chains must pass raw and pass PS, plus at least one of each of their L1 chains must pass raw and pass PS too
-   * @param _usePrescale - if set to kTRUE (default) then the prescale will be simulated, otherwise the prescale is
+   * @param usePrescale - if set to kTRUE (default) then the prescale will be simulated, otherwise the prescale is
    *taken to be 1.
    * @return 1 if all the chains passes, 0 if not.
    */
-  Float_t CounterRatesIntersection::runDirect(Bool_t _usePrescale) {
-    for (ChainItemSetIt_t _L2It = m_L2s.begin(); _L2It != m_L2s.end(); ++_L2It) {
-      RatesChainItem* _L2 = (*_L2It);
+  Float_t CounterRatesIntersection::runDirect(Bool_t usePrescale) {
+    for (ChainItemSetIt_t L2It = m_L2s.begin(); L2It != m_L2s.end(); ++L2It) {
+      RatesChainItem* L2 = (*L2It);
 
-      if (_L2->getPassRaw() == kFALSE) return 0;                                                     // L2 did not pass
+      if (L2->getPassRaw() == kFALSE) return 0;                                                     // L2 did not pass
                                                                                                      // - stop
 
-      if (_usePrescale == kTRUE && _L2->getPassPS() == kFALSE) return 0.;
+      if (usePrescale == kTRUE && L2->getPassPS() == kFALSE) return 0.;
 
-      Bool_t _l1Pass = kFALSE;
-      for (ChainItemSetIt_t _lowerIt = _L2->getLowerStart(); _lowerIt != _L2->getLowerEnd(); ++_lowerIt) {
-        RatesChainItem* _L1 = (*_lowerIt);
+      Bool_t l1Pass = kFALSE;
+      for (ChainItemSetIt_t lowerIt = L2->getLowerStart(); lowerIt != L2->getLowerEnd(); ++lowerIt) {
+        RatesChainItem* L1 = (*lowerIt);
 
-        if (_L1->getPassRaw() == kFALSE) continue;                                                        // L1 did not
+        if (L1->getPassRaw() == kFALSE) continue;                                                        // L1 did not
                                                                                                           // pass, try
                                                                                                           // next
-        if (_usePrescale == kTRUE && _L1->getPassPS() == kFALSE) continue;
-        _l1Pass = kTRUE;
+        if (usePrescale == kTRUE && L1->getPassPS() == kFALSE) continue;
+        l1Pass = kTRUE;
         break;
       }
-      if (_l1Pass == kFALSE) return 0.; // No L1 passed - stop.
+      if (l1Pass == kFALSE) return 0.; // No L1 passed - stop.
     }
     // All L2 passed with at least one L1 passing
     return 1.;
@@ -78,34 +78,34 @@ namespace TrigCostRootAnalysis {
    * This only needs to be done once per trigger configuration.
    * Then we simply check that all L1 and L2 items passed raw and tot up their prescale weights.
    */
-  Double_t CounterRatesIntersection::runWeight(Bool_t _includeExpress) {
+  Double_t CounterRatesIntersection::runWeight(Bool_t includeExpress) {
     m_eventLumiExtrapolation = 0;
     m_cachedWeight = 0.;
-    Double_t _lumiExtrapNumerator = 0., _lumiExtrapDenominator = 0.;
+    Double_t lumiExtrapNumerator = 0., lumiExtrapDenominator = 0.;
 
     if (m_redundanciesRemoved == kFALSE) removeRedundancies();
-    Double_t _w = 1.;
+    Double_t w = 1.;
 
-    for (ChainItemSetIt_t _L2It = m_L2s.begin(); _L2It != m_L2s.end(); ++_L2It) {
-      RatesChainItem* _L2 = (*_L2It);
-      if (_L2->getPassRaw() == kFALSE) return 0.;
+    for (ChainItemSetIt_t L2It = m_L2s.begin(); L2It != m_L2s.end(); ++L2It) {
+      RatesChainItem* L2 = (*L2It);
+      if (L2->getPassRaw() == kFALSE) return 0.;
 
-      _w *= _L2->getPSWeight(_includeExpress);
+      w *= L2->getPSWeight(includeExpress);
 
-      _lumiExtrapNumerator += _L2->getPassRawOverPS(_includeExpress) * _L2->getLumiExtrapolationFactor(
+      lumiExtrapNumerator += L2->getPassRawOverPS(includeExpress) * L2->getLumiExtrapolationFactor(
         m_costData->getLumi(), m_disableEventLumiExtrapolation);
-      _lumiExtrapDenominator += _L2->getPassRawOverPS(_includeExpress);
+      lumiExtrapDenominator += L2->getPassRawOverPS(includeExpress);
     }
 
-    for (ChainItemSetIt_t _L1It = m_L1s.begin(); _L1It != m_L1s.end(); ++_L1It) {
-      RatesChainItem* _L1 = (*_L1It);
-      if (_L1->getPassRaw() == kFALSE) return 0.;
+    for (ChainItemSetIt_t L1It = m_L1s.begin(); L1It != m_L1s.end(); ++L1It) {
+      RatesChainItem* L1 = (*L1It);
+      if (L1->getPassRaw() == kFALSE) return 0.;
 
-      _w *= _L1->getPSWeight();
+      w *= L1->getPSWeight();
     }
 
-    if (_lumiExtrapDenominator) m_eventLumiExtrapolation = _lumiExtrapNumerator / _lumiExtrapDenominator;
-    m_cachedWeight = _w;
+    if (lumiExtrapDenominator) m_eventLumiExtrapolation = lumiExtrapNumerator / lumiExtrapDenominator;
+    m_cachedWeight = w;
     return m_cachedWeight;
   }
 
@@ -114,67 +114,66 @@ namespace TrigCostRootAnalysis {
    * Try removing one L1 at a time and see if all L2s are still reachable
    */
   void CounterRatesIntersection::removeRedundancies() {
-    ChainItemSet_t _L1Set = m_L1s;
-    ChainItemSet_t _L2Set;
+    ChainItemSet_t L1Set = m_L1s;
+    ChainItemSet_t L2Set;
 
-    UInt_t _L1ToTryRemoving = 0;
+    UInt_t L1ToTryRemoving = 0;
 
-    while (_L1ToTryRemoving < _L1Set.size()) {
-      ChainItemSetIt_t _L1ToTryRemovingIt; // Keep a iterator to the L1 item we're testing to have the option to remove
+    while (L1ToTryRemoving < L1Set.size()) {
+      ChainItemSetIt_t L1ToTryRemovingIt; // Keep a iterator to the L1 item we're testing to have the option to remove
                                            // it
-      UInt_t _N = 0; // Manual counter as we're iterating over a set
-      for (ChainItemSetIt_t _L1It = _L1Set.begin(); _L1It != _L1Set.end(); ++_L1It) {
-        RatesChainItem* _L1 = (*_L1It);
-        if (_L1It == _L1Set.begin()) { // reset L2 list
-          _L2Set = m_L2s;
+      UInt_t N = 0; // Manual counter as we're iterating over a set
+      for (ChainItemSetIt_t L1It = L1Set.begin(); L1It != L1Set.end(); ++L1It) {
+        RatesChainItem* L1 = (*L1It);
+        if (L1It == L1Set.begin()) { // reset L2 list
+          L2Set = m_L2s;
         }
 
-        if (_L1ToTryRemoving != _N++) { // If I'm *not* the L1 we're querying
-          for (ChainItemSetIt_t _L2It = _L2Set.begin(); _L2It != _L2Set.end(); /*note no increment*/) {
-            RatesChainItem* _L2 = (*_L2It);   // Look at this all L2s left in the list.
-            Bool_t _isSeeded = kFALSE;
-            for (ChainItemSetIt_t _lowerIt = _L2->getLowerStart(); _lowerIt != _L2->getLowerEnd(); ++_lowerIt) {
-              RatesChainItem* _lower = (*_lowerIt); // Now look at all the seeds of this L2
-              if (_lower == _L1) {
+        if (L1ToTryRemoving != N++) { // If I'm *not* the L1 we're querying
+          for (ChainItemSetIt_t L2It = L2Set.begin(); L2It != L2Set.end(); /*note no increment*/) {
+            RatesChainItem* L2 = (*L2It);   // Look at this all L2s left in the list.
+            Bool_t isSeeded = kFALSE;
+            for (ChainItemSetIt_t lowerIt = L2->getLowerStart(); lowerIt != L2->getLowerEnd(); ++lowerIt) {
+              RatesChainItem* lower = (*lowerIt); // Now look at all the seeds of this L2
+              if (lower == L1) {
                 // This L2 is seeded by the L1 - we can remove it
-                _isSeeded = kTRUE;
+                isSeeded = kTRUE;
                 break;
               }
             }
-            if (_isSeeded == kTRUE) {
+            if (isSeeded == kTRUE) {
               // Remove this chain from the list of L2s
-              _L2Set.erase(_L2It++); // Increment iterator after the delete
+              L2Set.erase(L2It++); // Increment iterator after the delete
             } else {
-              ++_L2It;
+              ++L2It;
             }
           }
         } else { // If *am* the L1 we're querying, remember my location
-          _L1ToTryRemovingIt = _L1It;
+          L1ToTryRemovingIt = L1It;
         }
       }
       // We have looped over all but one of the list of L1 items, have we found one we can remove?
-      if (_L2Set.size() == 0) { // If true we could still reach all the counters *without* this L1
+      if (L2Set.size() == 0) { // If true we could still reach all the counters *without* this L1
         if (Config::config().debug()) {
           Info("CounterRatesIntersection::removeRedundancies", "Removing redundant L1 chain %s from %s",
-               (*_L1ToTryRemovingIt)->getName().c_str(), getName().c_str());
+               (*L1ToTryRemovingIt)->getName().c_str(), getName().c_str());
         }
-        _L1Set.erase(_L1ToTryRemovingIt);
-        _L1ToTryRemoving = 0; // Go back to the beginning and try again
+        L1Set.erase(L1ToTryRemovingIt);
+        L1ToTryRemoving = 0; // Go back to the beginning and try again
       } else { // We cannot remove this L1 and should try removing the next L1 up until there are no more to try
                // removing
-        ++_L1ToTryRemoving;
+        ++L1ToTryRemoving;
       }
     }
 
     // Update the new L1 set
-    m_L1s = _L1Set;
+    m_L1s = L1Set;
     m_redundanciesRemoved = kTRUE;
   }
 
   /**
    * Output debug information on this call to the console
    */
-  void CounterRatesIntersection::debug(UInt_t _e) {
-    UNUSED(_e);
+  void CounterRatesIntersection::debug(UInt_t /*e*/) {
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterRatesUnion.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterRatesUnion.cxx
index 97e5584e6f869207b0979129374b1b96c3adc1c2..93f55eafeb8a7b7130f2090271dbbc3b057170b9 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterRatesUnion.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterRatesUnion.cxx
@@ -27,14 +27,14 @@
 namespace TrigCostRootAnalysis {
   /**
    * Counter to monitor the rates of the union of a group of chains
-   * @param _costData Const pointer to the data store, not used by this counter at the moment.
-   * @param _name Const ref to chain's name
-   * @param _ID Chain's ID number.
+   * @param costData Const pointer to the data store, not used by this counter at the moment.
+   * @param name Const ref to chain's name
+   * @param ID Chain's ID number.
    */
-  CounterRatesUnion::CounterRatesUnion(const TrigCostData* _costData, const std::string& _name, Int_t _ID,
-                                       UInt_t _detailLevel, MonitorBase* _parent) :
-    CounterBaseRates(_costData, _name, _ID, _detailLevel, _parent), m_combinationClassification(kUnset) {
-    //Info("CounterRatesUnion::CounterRatesUnion","New CounterRatesUnion, %s", _name.c_str());
+  CounterRatesUnion::CounterRatesUnion(const TrigCostData* costData, const std::string& name, Int_t ID,
+                                       UInt_t detailLevel, MonitorBase* parent) :
+    CounterBaseRates(costData, name, ID, detailLevel, parent), m_combinationClassification(kUnset) {
+    //Info("CounterRatesUnion::CounterRatesUnion","New CounterRatesUnion, %s", name.c_str());
   }
 
   /**
@@ -49,32 +49,32 @@ namespace TrigCostRootAnalysis {
       assert(m_globalRates != 0);
 
       // Get the global rate
-      Float_t _globPasses = m_globalRates->getValue(kVarEventsPassed, kSavePerCall);
-      Float_t _globPassesDP = m_globalRates->getValue(kVarEventsPassedDP, kSavePerCall);
-      Float_t _globPassesNoPS = m_globalRates->getValue(kVarEventsPassedNoPS, kSavePerCall);
+      Float_t globPasses = m_globalRates->getValue(kVarEventsPassed, kSavePerCall);
+      Float_t globPassesDP = m_globalRates->getValue(kVarEventsPassedDP, kSavePerCall);
+      Float_t globPassesNoPS = m_globalRates->getValue(kVarEventsPassedNoPS, kSavePerCall);
       // Square these to keep them as sumw2
-      Float_t _globPassesErr = TMath::Power(m_globalRates->getValueError(kVarEventsPassed, kSavePerCall), 2);
-      Float_t _globPassesDPErr = TMath::Power(m_globalRates->getValueError(kVarEventsPassedDP, kSavePerCall), 2);
-      Float_t _globPassesNoPSErr = TMath::Power(m_globalRates->getValueError(kVarEventsPassedNoPS, kSavePerCall), 2);
+      Float_t globPassesErr = TMath::Power(m_globalRates->getValueError(kVarEventsPassed, kSavePerCall), 2);
+      Float_t globPassesDPErr = TMath::Power(m_globalRates->getValueError(kVarEventsPassedDP, kSavePerCall), 2);
+      Float_t globPassesNoPSErr = TMath::Power(m_globalRates->getValueError(kVarEventsPassedNoPS, kSavePerCall), 2);
 
       // Get my rate
-      Float_t _chainPasses = getValue(kVarEventsPassed, kSavePerCall);
-      Float_t _chainPassesDP = getValue(kVarEventsPassedDP, kSavePerCall);
-      Float_t _chainPassesNoPS = getValue(kVarEventsPassedNoPS, kSavePerCall);
+      Float_t chainPasses = getValue(kVarEventsPassed, kSavePerCall);
+      Float_t chainPassesDP = getValue(kVarEventsPassedDP, kSavePerCall);
+      Float_t chainPassesNoPS = getValue(kVarEventsPassedNoPS, kSavePerCall);
       // Square these to keep them as sumw2
-      Float_t _chainPassesErr = TMath::Power(getValueError(kVarEventsPassed, kSavePerCall), 2);
-      Float_t _chainPassesDPErr = TMath::Power(getValueError(kVarEventsPassedDP, kSavePerCall), 2);
-      Float_t _chainPassesNoPSErr = TMath::Power(getValueError(kVarEventsPassedNoPS, kSavePerCall), 2);
+      Float_t chainPassesErr = TMath::Power(getValueError(kVarEventsPassed, kSavePerCall), 2);
+      Float_t chainPassesDPErr = TMath::Power(getValueError(kVarEventsPassedDP, kSavePerCall), 2);
+      Float_t chainPassesNoPSErr = TMath::Power(getValueError(kVarEventsPassedNoPS, kSavePerCall), 2);
 
       //Set me to the difference
-      setValue(kVarEventsPassed, kSavePerCall, _globPasses - _chainPasses);
-      setValue(kVarEventsPassedDP, kSavePerCall, _globPassesDP - _chainPassesDP);
-      setValue(kVarEventsPassedNoPS, kSavePerCall, _globPassesNoPS - _chainPassesNoPS);
-      setErrorSquared(kVarEventsPassed, kSavePerCall, _globPassesErr - _chainPassesErr); // Note - directly changing
+      setValue(kVarEventsPassed, kSavePerCall, globPasses - chainPasses);
+      setValue(kVarEventsPassedDP, kSavePerCall, globPassesDP - chainPassesDP);
+      setValue(kVarEventsPassedNoPS, kSavePerCall, globPassesNoPS - chainPassesNoPS);
+      setErrorSquared(kVarEventsPassed, kSavePerCall, globPassesErr - chainPassesErr); // Note - directly changing
                                                                                          // m_sumw2
-      setErrorSquared(kVarEventsPassedDP, kSavePerCall, _globPassesDPErr - _chainPassesDPErr); // Note - directly
+      setErrorSquared(kVarEventsPassedDP, kSavePerCall, globPassesDPErr - chainPassesDPErr); // Note - directly
                                                                                                // changing m_sumw2
-      setErrorSquared(kVarEventsPassedNoPS, kSavePerCall, _globPassesNoPSErr - _chainPassesNoPSErr); // Note - directly
+      setErrorSquared(kVarEventsPassedNoPS, kSavePerCall, globPassesNoPSErr - chainPassesNoPSErr); // Note - directly
                                                                                                      // changing m_sumw2
     }
 
@@ -86,32 +86,32 @@ namespace TrigCostRootAnalysis {
    * For the union of triggers, at least one L2 chains must pass raw and pass PS, plus one of their L1 chains must too.
    * This is the naive method.
    * TODO this does not simulate CPS
-   * @param _usePrescale - if set to kTRUE (default) then the prescale will be simulated, otherwise the prescale is
+   * @param usePrescale - if set to kTRUE (default) then the prescale will be simulated, otherwise the prescale is
    *taken to be 1.
    * @return 1 if the chain passes, 0 if not.
    */
-  Float_t CounterRatesUnion::runDirect(Bool_t _usePrescale) {
+  Float_t CounterRatesUnion::runDirect(Bool_t usePrescale) {
     if (m_L2s.size() > 0) { // Am a combination of HLTs
-      for (ChainItemSetIt_t _L2It = m_L2s.begin(); _L2It != m_L2s.end(); ++_L2It) {
-        RatesChainItem* _L2 = (*_L2It);
+      for (ChainItemSetIt_t L2It = m_L2s.begin(); L2It != m_L2s.end(); ++L2It) {
+        RatesChainItem* L2 = (*L2It);
 
-        if (_L2->getPassRaw() == kFALSE) continue; // L2 did not pass, try next
-        if (_usePrescale == kTRUE && _L2->getPassPS() == kFALSE) continue;
+        if (L2->getPassRaw() == kFALSE) continue; // L2 did not pass, try next
+        if (usePrescale == kTRUE && L2->getPassPS() == kFALSE) continue;
 
-        for (ChainItemSetIt_t _lowerIt = _L2->getLowerStart(); _lowerIt != _L2->getLowerEnd(); ++_lowerIt) {
-          RatesChainItem* _L1 = (*_lowerIt);
+        for (ChainItemSetIt_t lowerIt = L2->getLowerStart(); lowerIt != L2->getLowerEnd(); ++lowerIt) {
+          RatesChainItem* L1 = (*lowerIt);
 
-          if (_L1->getPassRaw() == kFALSE) continue; // L1 did not pass, try next
-          if (_usePrescale == kTRUE && _L1->getPassPS() == kFALSE) continue;
+          if (L1->getPassRaw() == kFALSE) continue; // L1 did not pass, try next
+          if (usePrescale == kTRUE && L1->getPassPS() == kFALSE) continue;
           return 1.; // At least one L2 passed with an L1 which passed
         }
       }
     } else { // Am a combination of L1s
-      for (ChainItemSetIt_t _L1It = m_L1s.begin(); _L1It != m_L1s.end(); ++_L1It) {
-        RatesChainItem* _L1 = (*_L1It);
+      for (ChainItemSetIt_t L1It = m_L1s.begin(); L1It != m_L1s.end(); ++L1It) {
+        RatesChainItem* L1 = (*L1It);
 
-        if (_L1->getPassRaw() == kFALSE) continue; // L1 did not pass, try next
-        if (_usePrescale == kTRUE && _L1->getPassPS() == kFALSE) continue; //PS did not pass, try next
+        if (L1->getPassRaw() == kFALSE) continue; // L1 did not pass, try next
+        if (usePrescale == kTRUE && L1->getPassPS() == kFALSE) continue; //PS did not pass, try next
 
         return 1;
       }
@@ -125,7 +125,7 @@ namespace TrigCostRootAnalysis {
    * There are a few algorithms for the union of chains, with simpler algorithms for simpler topologies
    * @return Event prescale weight for this chain 0 < PS weight < 1
    */
-  Double_t CounterRatesUnion::runWeight(Bool_t _includeExpress) {
+  Double_t CounterRatesUnion::runWeight(Bool_t includeExpress) {
     if (m_combinationClassification == kUnset) {
       classify();
       // TODO add this properly to all the classifiers!
@@ -141,11 +141,11 @@ namespace TrigCostRootAnalysis {
 
     m_eventLumiExtrapolation = 0;
 
-    if (m_combinationClassification == kAllOneToMany) m_cachedWeight = runWeight_AllOneToMany(_includeExpress);
+    if (m_combinationClassification == kAllOneToMany) m_cachedWeight = runWeight_AllOneToMany(includeExpress);
     else if (m_combinationClassification == kOnlyL1) m_cachedWeight = runWeight_OnlyL1();
-    else if (m_combinationClassification == kAllToAll) m_cachedWeight = runWeight_AllToAll(_includeExpress);
-    else if (m_combinationClassification == kAllOneToOne) m_cachedWeight = runWeight_AllOneToOne(_includeExpress);
-    else if (m_combinationClassification == kManyToMany) m_cachedWeight = runWeight_ManyToMany(_includeExpress);
+    else if (m_combinationClassification == kAllToAll) m_cachedWeight = runWeight_AllToAll(includeExpress);
+    else if (m_combinationClassification == kAllOneToOne) m_cachedWeight = runWeight_AllOneToOne(includeExpress);
+    else if (m_combinationClassification == kManyToMany) m_cachedWeight = runWeight_ManyToMany(includeExpress);
     else m_cachedWeight = 0.;
     return m_cachedWeight;
   }
@@ -165,23 +165,23 @@ namespace TrigCostRootAnalysis {
     }
 
     // See if all-to-all, each HLT chain must share identical L1 chains
-    Bool_t _allToAll = kTRUE;
-    for (ChainItemSetIt_t _L2TestIt = m_L2s.begin(); _L2TestIt != m_L2s.end(); ++_L2TestIt) {
-      RatesChainItem* _L2Test = (*_L2TestIt);
+    Bool_t allToAll = kTRUE;
+    for (ChainItemSetIt_t L2TestIt = m_L2s.begin(); L2TestIt != m_L2s.end(); ++L2TestIt) {
+      RatesChainItem* L2Test = (*L2TestIt);
       // See if I share the exact same set of L1's as the others
-      for (ChainItemSetIt_t _L2It = m_L2s.begin(); _L2It != m_L2s.end(); ++_L2It) {
-        RatesChainItem* _L2 = (*_L2It);
-        if (_L2 == _L2Test) continue; // Don't check against myself
-        if (_L2->getLowerContainsAll(_L2Test->getLower()) == kFALSE) {
-          _allToAll = kFALSE;
+      for (ChainItemSetIt_t L2It = m_L2s.begin(); L2It != m_L2s.end(); ++L2It) {
+        RatesChainItem* L2 = (*L2It);
+        if (L2 == L2Test) continue; // Don't check against myself
+        if (L2->getLowerContainsAll(L2Test->getLower()) == kFALSE) {
+          allToAll = kFALSE;
           break;
         }
       }
-      if (_allToAll == kFALSE) break;
+      if (allToAll == kFALSE) break;
     }
     // If CPS, we don't use this one (could in theory)
-    if (m_cpsGroups.size() > 0) _allToAll = kFALSE;
-    if (_allToAll == kTRUE) {
+    if (m_cpsGroups.size() > 0) allToAll = kFALSE;
+    if (allToAll == kTRUE) {
       if (Config::config().debug()) {
         Info("CounterRatesUnion::classify", "Chain %s topology classified as All-To-All.",
              getName().c_str());
@@ -191,30 +191,30 @@ namespace TrigCostRootAnalysis {
     }
 
     // See if all-one-to-one, each HLT chain must have a single unique L1 seed
-    Bool_t _allOneToOne = kTRUE;
-    for (ChainItemSetIt_t _L2TestIt = m_L2s.begin(); _L2TestIt != m_L2s.end(); ++_L2TestIt) {
-      RatesChainItem* _L2Test = (*_L2TestIt);
+    Bool_t allOneToOne = kTRUE;
+    for (ChainItemSetIt_t L2TestIt = m_L2s.begin(); L2TestIt != m_L2s.end(); ++L2TestIt) {
+      RatesChainItem* L2Test = (*L2TestIt);
       // Check that I have exactly one seed
-      if (_L2Test->getLower().size() != 1) {
-        _allOneToOne = kFALSE;
+      if (L2Test->getLower().size() != 1) {
+        allOneToOne = kFALSE;
         break;
       }
       // Check that no one else has the same L1 seed
-      for (ChainItemSetIt_t _L2It = m_L2s.begin(); _L2It != m_L2s.end(); ++_L2It) {
-        RatesChainItem* _L2 = (*_L2It);
-        if (_L2 == _L2Test) continue; // Don't check against myself
+      for (ChainItemSetIt_t L2It = m_L2s.begin(); L2It != m_L2s.end(); ++L2It) {
+        RatesChainItem* L2 = (*L2It);
+        if (L2 == L2Test) continue; // Don't check against myself
 
-        if (_L2->getLowerContains((*_L2Test->getLowerStart())) == kTRUE) { // Remember that we know L2Test only has one
+        if (L2->getLowerContains((*L2Test->getLowerStart())) == kTRUE) { // Remember that we know L2Test only has one
                                                                            // lower
-          _allOneToOne = kFALSE;
+          allOneToOne = kFALSE;
           break;
         }
       }
-      if (_allOneToOne == kFALSE) break;
+      if (allOneToOne == kFALSE) break;
     }
     // If CPS, then cannot be all one to one, CPS share L1 seed by definition
-    if (m_cpsGroups.size() > 0) _allOneToOne = kFALSE;
-    if (_allOneToOne == kTRUE) {
+    if (m_cpsGroups.size() > 0) allOneToOne = kFALSE;
+    if (allOneToOne == kTRUE) {
       if (Config::config().debug()) {
         Info("CounterRatesUnion::classify", "Chain %s topology classified as All-One-To-One.",
              getName().c_str());
@@ -224,29 +224,29 @@ namespace TrigCostRootAnalysis {
     }
 
     // see if all-one-to-many, each L2 must have eactly one seed
-    Bool_t _allOneToMany = kTRUE;
-    for (ChainItemSetIt_t _L2TestIt = m_L2s.begin(); _L2TestIt != m_L2s.end(); ++_L2TestIt) {
-      RatesChainItem* _L2Test = (*_L2TestIt);
+    Bool_t allOneToMany = kTRUE;
+    for (ChainItemSetIt_t L2TestIt = m_L2s.begin(); L2TestIt != m_L2s.end(); ++L2TestIt) {
+      RatesChainItem* L2Test = (*L2TestIt);
       // Check that I have exactly one seed
-      if (_L2Test->getLower().size() != 1) {
-        _allOneToMany = kFALSE;
+      if (L2Test->getLower().size() != 1) {
+        allOneToMany = kFALSE;
         break;
       }
     }
     // Also check CPS
-    for (CPSGroupSetIt_t _CPSIt = m_cpsGroups.begin(); _CPSIt != m_cpsGroups.end(); ++_CPSIt) {
-      RatesCPSGroup* _cpsGroup = (*_CPSIt);
-      for (ChainItemSetIt_t _L2It = _cpsGroup->getChainStart(); _L2It != _cpsGroup->getChainEnd(); ++_L2It) {
-        if (m_myCPSChains.count((*_L2It)->getName()) == 0) continue;
+    for (CPSGroupSetIt_t CPSIt = m_cpsGroups.begin(); CPSIt != m_cpsGroups.end(); ++CPSIt) {
+      RatesCPSGroup* cpsGroup = (*CPSIt);
+      for (ChainItemSetIt_t L2It = cpsGroup->getChainStart(); L2It != cpsGroup->getChainEnd(); ++L2It) {
+        if (m_myCPSChains.count((*L2It)->getName()) == 0) continue;
         //This CPS group member is not in this rates group
-        if ((*_L2It)->getLower().size() != 1) {
-          _allOneToMany = kFALSE;
+        if ((*L2It)->getLower().size() != 1) {
+          allOneToMany = kFALSE;
           break;
         }
       }
-      if (_allOneToMany == kFALSE) break;
+      if (allOneToMany == kFALSE) break;
     }
-    if (_allOneToMany == kTRUE) {
+    if (allOneToMany == kTRUE) {
       if (Config::config().debug()) {
         Info("CounterRatesUnion::classify", "Chain %s topology classified as All-One-To-Many.",
              m_name.c_str());
@@ -276,50 +276,50 @@ namespace TrigCostRootAnalysis {
    * This is the trivial case where we only have items at L1
    */
   Double_t CounterRatesUnion::runWeight_OnlyL1() {
-    Double_t _w = 1.;
-    Double_t _lumiExtrapNumerator = 0., _lumiExtrapDenominator = 0.;
+    Double_t w = 1.;
+    Double_t lumiExtrapNumerator = 0., lumiExtrapDenominator = 0.;
 
-    for (ChainItemSetIt_t _L1It = m_L1s.begin(); _L1It != m_L1s.end(); ++_L1It) {
-      RatesChainItem* _L1 = (*_L1It);
-      Double_t _passRawOverPS = _L1->getPassRawOverPS();
-      _w *= (1. - _passRawOverPS);
+    for (ChainItemSetIt_t L1It = m_L1s.begin(); L1It != m_L1s.end(); ++L1It) {
+      RatesChainItem* L1 = (*L1It);
+      Double_t passRawOverPS = L1->getPassRawOverPS();
+      w *= (1. - passRawOverPS);
 
-      _lumiExtrapNumerator += _passRawOverPS * _L1->getLumiExtrapolationFactor(
+      lumiExtrapNumerator += passRawOverPS * L1->getLumiExtrapolationFactor(
         m_costData->getLumi(), m_disableEventLumiExtrapolation);
-      _lumiExtrapDenominator += _passRawOverPS;
-      //if (isZero(_w)) break; // If a PS=1 passes, NO due to lumi extrap mode
+      lumiExtrapDenominator += passRawOverPS;
+      //if (isZero(w)) break; // If a PS=1 passes, NO due to lumi extrap mode
     }
 
-    if (_lumiExtrapDenominator) m_eventLumiExtrapolation = _lumiExtrapNumerator / _lumiExtrapDenominator;
-    //if (getName() == "RATE_GLOBAL_L1") Info("DEBUG", "WL1:%f , lumi%f", 1. - _w , m_eventLumiExtrapolation );
-    return(1. - _w);
+    if (lumiExtrapDenominator) m_eventLumiExtrapolation = lumiExtrapNumerator / lumiExtrapDenominator;
+    //if (getName() == "RATE_GLOBAL_L1") Info("DEBUG", "WL1:%f , lumi%f", 1. - w , m_eventLumiExtrapolation );
+    return(1. - w);
   }
 
   /**
    * This is the trivial parallel case where all L2s have one unique L1 chain
    * See Eq 37 of http://arxiv.org/abs/0901.4118
    */
-  Double_t CounterRatesUnion::runWeight_AllOneToOne(Bool_t _includeExpress) {
-    Double_t _w = 1.;
-    Double_t _lumiExtrapNumerator = 0., _lumiExtrapDenominator = 0.;
+  Double_t CounterRatesUnion::runWeight_AllOneToOne(Bool_t includeExpress) {
+    Double_t w = 1.;
+    Double_t lumiExtrapNumerator = 0., lumiExtrapDenominator = 0.;
 
-    for (ChainItemSetIt_t _L2It = m_L2s.begin(); _L2It != m_L2s.end(); ++_L2It) {
-      RatesChainItem* _L2 = (*_L2It);
-      RatesChainItem* _L1 = (*_L2->getLowerStart());
-      assert(_L2->getLower().size() == 1);
-      Double_t _passRawOverPSL2 = _L2->getPassRawOverPS(_includeExpress);
+    for (ChainItemSetIt_t L2It = m_L2s.begin(); L2It != m_L2s.end(); ++L2It) {
+      RatesChainItem* L2 = (*L2It);
+      RatesChainItem* L1 = (*L2->getLowerStart());
+      assert(L2->getLower().size() == 1);
+      Double_t passRawOverPSL2 = L2->getPassRawOverPS(includeExpress);
 
-      _w *= (1. - (_passRawOverPSL2 * _L1->getPassRawOverPS()));
+      w *= (1. - (passRawOverPSL2 * L1->getPassRawOverPS()));
 
-      _lumiExtrapNumerator += _passRawOverPSL2 * _L2->getLumiExtrapolationFactor(
+      lumiExtrapNumerator += passRawOverPSL2 * L2->getLumiExtrapolationFactor(
         m_costData->getLumi(), m_disableEventLumiExtrapolation);
-      _lumiExtrapDenominator += _passRawOverPSL2;
+      lumiExtrapDenominator += passRawOverPSL2;
 
-      //if (isZero(_w)) break; // If a PS=1 passes, NO due to lumi extrap mode
+      //if (isZero(w)) break; // If a PS=1 passes, NO due to lumi extrap mode
     }
 
-    if (_lumiExtrapDenominator) m_eventLumiExtrapolation = _lumiExtrapNumerator / _lumiExtrapDenominator;
-    return(1. - _w);
+    if (lumiExtrapDenominator) m_eventLumiExtrapolation = lumiExtrapNumerator / lumiExtrapDenominator;
+    return(1. - w);
   }
 
   /**
@@ -327,30 +327,30 @@ namespace TrigCostRootAnalysis {
    * L1 and L2 probabilities factorise.
    * See Eq 36 of http://arxiv.org/abs/0901.4118
    */
-  Double_t CounterRatesUnion::runWeight_AllToAll(Bool_t _includeExpress) {
-    Double_t _weightL2 = 1., _weightL1 = 1.;
-    Double_t _lumiExtrapNumerator = 0., _lumiExtrapDenominator = 0.;
-
-    for (ChainItemSetIt_t _L2It = m_L2s.begin(); _L2It != m_L2s.end(); ++_L2It) {
-      RatesChainItem* _L2 = (*_L2It);
-      Double_t _passRawOverPS = _L2->getPassRawOverPS(_includeExpress);
-      _weightL2 *= (1. - _passRawOverPS);
+  Double_t CounterRatesUnion::runWeight_AllToAll(Bool_t includeExpress) {
+    Double_t weightL2 = 1., weightL1 = 1.;
+    Double_t lumiExtrapNumerator = 0., lumiExtrapDenominator = 0.;
+
+    for (ChainItemSetIt_t L2It = m_L2s.begin(); L2It != m_L2s.end(); ++L2It) {
+      RatesChainItem* L2 = (*L2It);
+      Double_t passRawOverPS = L2->getPassRawOverPS(includeExpress);
+      weightL2 *= (1. - passRawOverPS);
       // Base the lumi extrap only on the L2s, L1s can be ignored here due to topology, they will give a common factor.
       // (TODO check this)
-      _lumiExtrapNumerator += _passRawOverPS * _L2->getLumiExtrapolationFactor(
+      lumiExtrapNumerator += passRawOverPS * L2->getLumiExtrapolationFactor(
         m_costData->getLumi(), m_disableEventLumiExtrapolation);
-      _lumiExtrapDenominator += _passRawOverPS;
-      //if (isZero(_weightL2)) break; // If a PS=1 passes, NO, lumi weighting....
+      lumiExtrapDenominator += passRawOverPS;
+      //if (isZero(weightL2)) break; // If a PS=1 passes, NO, lumi weighting....
     }
-    if (_lumiExtrapDenominator) m_eventLumiExtrapolation = _lumiExtrapNumerator / _lumiExtrapDenominator;
+    if (lumiExtrapDenominator) m_eventLumiExtrapolation = lumiExtrapNumerator / lumiExtrapDenominator;
 
-    for (ChainItemSetIt_t _L1It = m_L1s.begin(); _L1It != m_L1s.end(); ++_L1It) {
-      RatesChainItem* _L1 = (*_L1It);
-      _weightL1 *= (1. - _L1->getPassRawOverPS());
-      if (isZero(_weightL1)) break; // If a PS=1 passes
+    for (ChainItemSetIt_t L1It = m_L1s.begin(); L1It != m_L1s.end(); ++L1It) {
+      RatesChainItem* L1 = (*L1It);
+      weightL1 *= (1. - L1->getPassRawOverPS());
+      if (isZero(weightL1)) break; // If a PS=1 passes
     }
 
-    return (1. - _weightL1) * (1. - _weightL2);
+    return (1. - weightL1) * (1. - weightL2);
   }
 
   /**
@@ -361,70 +361,70 @@ namespace TrigCostRootAnalysis {
    * TODO split this off into a helper function
    * Any optimisation of this function can save a whole load of time
    */
-  Double_t CounterRatesUnion::runWeight_AllOneToMany(Bool_t _includeExpress) {
-    Double_t _weightAllChains = 1.;
-    Double_t _lumiExtrapNumerator = 0., _lumiExtrapDenominator = 0.;
+  Double_t CounterRatesUnion::runWeight_AllOneToMany(Bool_t includeExpress) {
+    Double_t weightAllChains = 1.;
+    Double_t lumiExtrapNumerator = 0., lumiExtrapDenominator = 0.;
 
     // This can be cached on first call
     if (m_l1ToProcess.size() == 0) {
       m_l1ToProcess.insert(m_L1s.begin(), m_L1s.end());
-      for (CPSGroupSetIt_t _CPSIt = m_cpsGroups.begin(); _CPSIt != m_cpsGroups.end(); ++_CPSIt) {
-        m_l1ToProcess.insert((*_CPSIt)->getL1());
+      for (CPSGroupSetIt_t CPSIt = m_cpsGroups.begin(); CPSIt != m_cpsGroups.end(); ++CPSIt) {
+        m_l1ToProcess.insert((*CPSIt)->getL1());
       }
     }
 
     // First for all the single chains
-    for (ChainItemSetIt_t _L1It = m_l1ToProcess.begin(); _L1It != m_l1ToProcess.end(); ++_L1It) {
-      RatesChainItem* _L1 = (*_L1It);
+    for (ChainItemSetIt_t L1It = m_l1ToProcess.begin(); L1It != m_l1ToProcess.end(); ++L1It) {
+      RatesChainItem* L1 = (*L1It);
 
-      Double_t _weightL1 = _L1->getPassRawOverPS();
-      //     Info("CounterRatesUnion::runWeight_AllOneToMany","L1 item  %s has weight %f", _L1->getName().c_str(),
-      //  _L1->getPassRawOverPS());
-      if (isZero(_weightL1)) continue;                                            // If L1 failed, no point looking at
+      Double_t weightL1 = L1->getPassRawOverPS();
+      //     Info("CounterRatesUnion::runWeight_AllOneToMany","L1 item  %s has weight %f", L1->getName().c_str(),
+      //  L1->getPassRawOverPS());
+      if (isZero(weightL1)) continue;                                            // If L1 failed, no point looking at
                                                                                   // HLT
 
-      Double_t _weightL2 = 1.;
-      for (ChainItemSetIt_t _L2It = _L1->getUpperStart(); _L2It != _L1->getUpperEnd(); ++_L2It) {
-        if (m_L2s.count((*_L2It)) == 0) continue;
-        Double_t _w = (*_L2It)->getPassRawOverPS(_includeExpress);
-        _lumiExtrapNumerator += _w * _weightL1 * (*_L2It)->getLumiExtrapolationFactor(
+      Double_t weightL2 = 1.;
+      for (ChainItemSetIt_t L2It = L1->getUpperStart(); L2It != L1->getUpperEnd(); ++L2It) {
+        if (m_L2s.count((*L2It)) == 0) continue;
+        Double_t w = (*L2It)->getPassRawOverPS(includeExpress);
+        lumiExtrapNumerator += w * weightL1 * (*L2It)->getLumiExtrapolationFactor(
           m_costData->getLumi(), m_disableEventLumiExtrapolation);
-        _lumiExtrapDenominator += _w * _weightL1;
-        _weightL2 *= (1. - _w);
+        lumiExtrapDenominator += w * weightL1;
+        weightL2 *= (1. - w);
       }
 
       // What about any CPS group with this seed?
-      for (CPSGroupSetIt_t _CPSIt = m_cpsGroups.begin(); _CPSIt != m_cpsGroups.end(); ++_CPSIt) {
-        RatesCPSGroup* _cpsGroup = (*_CPSIt);
-        RatesChainItem* _L1cps = _cpsGroup->getL1();
-        if (_L1cps != _L1) continue; // MUST be the same L1 seed
+      for (CPSGroupSetIt_t CPSIt = m_cpsGroups.begin(); CPSIt != m_cpsGroups.end(); ++CPSIt) {
+        RatesCPSGroup* cpsGroup = (*CPSIt);
+        RatesChainItem* L1cps = cpsGroup->getL1();
+        if (L1cps != L1) continue; // MUST be the same L1 seed
 
         //if it is the same L1 seed, do the CPS for these chains
-        Double_t _weightL2cps = 1.;
-        for (ChainItemSetIt_t _L2It = _cpsGroup->getChainStart(); _L2It != _cpsGroup->getChainEnd(); ++_L2It) {
+        Double_t weightL2cps = 1.;
+        for (ChainItemSetIt_t L2It = cpsGroup->getChainStart(); L2It != cpsGroup->getChainEnd(); ++L2It) {
           // Need to check if THIS ITEM IN THE CPS GROUP is also A MEMBER OF THE CURRENT GROUP
-          if (m_myCPSChains.count((*_L2It)->getName()) == 0) continue;
+          if (m_myCPSChains.count((*L2It)->getName()) == 0) continue;
           // This CPS group member is now in this rates group
-          Double_t _w = (*_L2It)->getPassRawOverPS(_includeExpress);
-          _lumiExtrapNumerator += _w * _weightL1 * _cpsGroup->getCommonWeight() * (*_L2It)->getLumiExtrapolationFactor(
+          Double_t w = (*L2It)->getPassRawOverPS(includeExpress);
+          lumiExtrapNumerator += w * weightL1 * cpsGroup->getCommonWeight() * (*L2It)->getLumiExtrapolationFactor(
             m_costData->getLumi(), m_disableEventLumiExtrapolation); //TODO is it OK to include the common weight in the
                                                                      // lumi extrapolation like this?
-          _lumiExtrapDenominator += _w * _weightL1 * _cpsGroup->getCommonWeight();
-          _weightL2cps *= (1. - _w);
+          lumiExtrapDenominator += w * weightL1 * cpsGroup->getCommonWeight();
+          weightL2cps *= (1. - w);
         }
-        _weightL2cps = (1. - _weightL2cps);
-        _weightL2cps *= _cpsGroup->getCommonWeight();
-        _weightL2 *= (1. - _weightL2cps);
+        weightL2cps = (1. - weightL2cps);
+        weightL2cps *= cpsGroup->getCommonWeight();
+        weightL2 *= (1. - weightL2cps);
       }
 
-      _weightL2 = (1. - _weightL2);
-      Double_t _weightL1HLT = _weightL1 * _weightL2;
+      weightL2 = (1. - weightL2);
+      Double_t weightL1HLT = weightL1 * weightL2;
 
-      _weightAllChains *= (1. - _weightL1HLT);
+      weightAllChains *= (1. - weightL1HLT);
     }
 
-    if (!isZero(_lumiExtrapDenominator)) m_eventLumiExtrapolation = _lumiExtrapNumerator / _lumiExtrapDenominator;
-    return(1. - _weightAllChains);
+    if (!isZero(lumiExtrapDenominator)) m_eventLumiExtrapolation = lumiExtrapNumerator / lumiExtrapDenominator;
+    return(1. - weightAllChains);
   }
 
   /**
@@ -435,24 +435,24 @@ namespace TrigCostRootAnalysis {
    * The probabilities do not factorise and must be evaluated in turn for each possible combinatoric
    * of the L1 items. See Eq 35 of http://arxiv.org/abs/0901.4118
    */
-  Double_t CounterRatesUnion::runWeight_ManyToMany(Bool_t _includeExpress) {
+  Double_t CounterRatesUnion::runWeight_ManyToMany(Bool_t includeExpress) {
     assert(m_L1s.size() && m_L2s.size());
 
     // We can speed up by pre-checking if any L2's passed, and return if not.
-    Bool_t _shouldRun = kFALSE;
-    for (ChainItemSetIt_t _L2It = m_L2s.begin(); _L2It != m_L2s.end(); ++_L2It) {
-      if ((*_L2It)->getPassRaw() == kTRUE) {
-        _shouldRun = kTRUE;
+    Bool_t shouldRun = kFALSE;
+    for (ChainItemSetIt_t L2It = m_L2s.begin(); L2It != m_L2s.end(); ++L2It) {
+      if ((*L2It)->getPassRaw() == kTRUE) {
+        shouldRun = kTRUE;
         // HACK! TODO replace this with the real calculation here (it's going to be awful....)
         // but this is also basically never used and will be "mostly" correct
-        m_eventLumiExtrapolation = (*_L2It)->getLumiExtrapolationFactor(
+        m_eventLumiExtrapolation = (*L2It)->getLumiExtrapolationFactor(
           m_costData->getLumi(), m_disableEventLumiExtrapolation);
         break;
       }
     }
-    if (_shouldRun == kFALSE) return 0.;
+    if (shouldRun == kFALSE) return 0.;
 
-    Double_t _w = 0.; // Event weight, we will add to this for each L1 pattern as we evaluate them
+    Double_t w = 0.; // Event weight, we will add to this for each L1 pattern as we evaluate them
 
     // Now we need to iterate over all possible L1 patterns (excluding all fail)
     // We will increment a UInt_t and use it as a bit-map. Therefore cannot have more than 32 L1 items (in reality,
@@ -463,75 +463,74 @@ namespace TrigCostRootAnalysis {
     }
     // NPatterns = (2^L1Size - 1) E.G. For 3x L1 items, there are 7 options to consider [100, 010, 110, 001, 101, 011,
     // 111]
-    UInt_t _nPatterns = static_cast<UInt_t>(TMath::Power(2., static_cast<Int_t>(m_L1s.size()))) - 1;
-    UInt_t _N = 0; // Used to remember which bit of the bit-map we are investigating
-    for (UInt_t _pattern = 1; _pattern <= _nPatterns; ++_pattern) {
+    UInt_t nPatterns = static_cast<UInt_t>(TMath::Power(2., static_cast<Int_t>(m_L1s.size()))) - 1;
+    UInt_t N = 0; // Used to remember which bit of the bit-map we are investigating
+    for (UInt_t pattern = 1; pattern <= nPatterns; ++pattern) {
       // Get the pattern bit-map in a usable form
-      std::bitset<32> _patternBits(_pattern);
+      std::bitset<32> patternBits(pattern);
 
       // Step 1
       // Get the L1 probability for this pattern to pass
-      Double_t _pOfBitPattern = 1.;
+      Double_t pOfBitPattern = 1.;
       // Loop over all L1 chains
-      _N = 0;
-      for (ChainItemSetIt_t _L1It = m_L1s.begin(); _L1It != m_L1s.end(); ++_L1It) {
-        RatesChainItem* _L1 = (*_L1It);
+      N = 0;
+      for (ChainItemSetIt_t L1It = m_L1s.begin(); L1It != m_L1s.end(); ++L1It) {
+        RatesChainItem* L1 = (*L1It);
 
         // Is this L1 chain part of the bit-patter we are exploring?
-        if (_patternBits.test(_N++) == 1) {// It is
-          _pOfBitPattern *= _L1->getPassRawOverPS();
+        if (patternBits.test(N++) == 1) {// It is
+          pOfBitPattern *= L1->getPassRawOverPS();
         } else { // It is not
-          _pOfBitPattern *= (1. - _L1->getPassRawOverPS());
+          pOfBitPattern *= (1. - L1->getPassRawOverPS());
         }
       }
 
-      //TODO add and check if (isZero(_pOfBitPattern)) continue;
+      //TODO add and check if (isZero(pOfBitPattern)) continue;
 
       // Step 2
       // Get the probability that this L1 bit-pattern is kept by L2
-      Double_t _pOfKeepingBitPattern = 1.;
+      Double_t pOfKeepingBitPattern = 1.;
       // Loop over all L2 chains
-      for (ChainItemSetIt_t _L2It = m_L2s.begin(); _L2It != m_L2s.end(); ++_L2It) {
-        RatesChainItem* _L2 = (*_L2It);
+      for (ChainItemSetIt_t L2It = m_L2s.begin(); L2It != m_L2s.end(); ++L2It) {
+        RatesChainItem* L2 = (*L2It);
 
-        Double_t _L2Weight = 0.;
+        Double_t L2Weight = 0.;
         // Loop over all the L1 items
-        _N = 0;
-        for (ChainItemSetIt_t _L1It = m_L1s.begin(); _L1It != m_L1s.end(); ++_L1It) {
-          RatesChainItem* _L1 = (*_L1It);
+        N = 0;
+        for (ChainItemSetIt_t L1It = m_L1s.begin(); L1It != m_L1s.end(); ++L1It) {
+          RatesChainItem* L1 = (*L1It);
 
           // If this L1 item is not in the bit pattern then continue
-          if (_patternBits.test(_N++) == 0) continue;
+          if (patternBits.test(N++) == 0) continue;
 
           // If this L2 chain does not seed this L1 item then continue
-          if (_L2->getLowerContains(_L1) == kFALSE) continue;
+          if (L2->getLowerContains(L1) == kFALSE) continue;
 
-          _L2Weight = 1.; // This L2 chain is seeded by a L1 item in the current bit-map pattern
+          L2Weight = 1.; // This L2 chain is seeded by a L1 item in the current bit-map pattern
           break;
         }
 
         // Now we see if this chain passed, and multiply the product by the PASS_RAW (0 or 1) and 1/PS
-        _L2Weight *= _L2->getPassRawOverPS(_includeExpress);
+        L2Weight *= L2->getPassRawOverPS(includeExpress);
 
-        // We add the contribution from this L2 chain to _pOfKeepingBitPattern
-        _pOfKeepingBitPattern *= (1. - _L2Weight);
+        // We add the contribution from this L2 chain to pOfKeepingBitPattern
+        pOfKeepingBitPattern *= (1. - L2Weight);
       }
 
       // Step 3
       // Combine L1 with L2 and add to the weight for the event.
-      // Each "fail" chain will have multiplied _pOfKeepingBitPattern by 1, each pass chain by a factor (1 - 1/PS)
-      // So now we do ( 1 - _probOfKeepingBitPattern ) to get the final p to keep the pattern at L2
+      // Each "fail" chain will have multiplied pOfKeepingBitPattern by 1, each pass chain by a factor (1 - 1/PS)
+      // So now we do ( 1 - probOfKeepingBitPattern ) to get the final p to keep the pattern at L2
       // Finally the weight for this bit pattern is the p of getting it * the p of keeping it
-      _w += (_pOfBitPattern * (1. - _pOfKeepingBitPattern));
+      w += (pOfBitPattern * (1. - pOfKeepingBitPattern));
     }
 
-    return _w;
+    return w;
   }
 
   /**
    * Output debug information on this call to the console
    */
-  void CounterRatesUnion::debug(UInt_t _e) {
-    UNUSED(_e);
+  void CounterRatesUnion::debug(UInt_t /*e*/) {
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterSequence.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterSequence.cxx
index f3c2ead96ca5c603032b21650b00a8db0d8318e3..acc8b21524202611cad5d62ff9dd5049d5c26513 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterSequence.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterSequence.cxx
@@ -24,12 +24,12 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Sequence counter constructor. Sets values of internal variables and sets up data store.
-   * @param _name Const ref to sequence's name
-   * @param _ID Sequence's index number.
+   * @param name Const ref to sequence's name
+   * @param ID Sequence's index number.
    */
-  CounterSequence::CounterSequence(const TrigCostData* _costData, const std::string& _name, Int_t _ID,
-                                   UInt_t _detailLevel, MonitorBase* _parent)
-    : CounterBase(_costData, _name, _ID, _detailLevel, _parent),
+  CounterSequence::CounterSequence(const TrigCostData* costData, const std::string& name, Int_t ID,
+                                   UInt_t detailLevel, MonitorBase* parent)
+    : CounterBase(costData, name, ID, detailLevel, parent),
     m_eventWeight(1.) {
     // Reg. variables to study.
     m_dataStore.newVariable(kVarEventsActive).setSavePerEvent();
@@ -94,61 +94,60 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Perform monitoring of a sequence within an event.
-   * @param _e Sequence index in D3PD.
-   * @param _f Unused by this counter.
-   * @param _weight Event weight.
+   * @param e Sequence index in D3PD.
+   * @param f Unused by this counter.
+   * @param weight Event weight.
    */
-  void CounterSequence::processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight) {
+  void CounterSequence::processEventCounter(UInt_t e, UInt_t /*f*/, Float_t weight) {
     ++m_calls;
-    UNUSED(_f);
 
-    Float_t _prescaleFactor = getPrescaleFactor(_e);
-    _weight *= _prescaleFactor;
-    if (isZero(_weight) == kTRUE) return;
+    Float_t prescaleFactor = getPrescaleFactor(e);
+    weight *= prescaleFactor;
+    if (isZero(weight) == kTRUE) return;
 
-    if (Config::config().debug()) debug(_e);
+    if (Config::config().debug()) debug(e);
 
-    const std::string _myChain = TrigConfInterface::getHLTNameFromChainID(m_costData->getSequenceChannelCounter(_e));
-    if (m_chainsSeen.count(_myChain) == 0) {
-      m_eventWeight *= (1. - _prescaleFactor);
-      m_chainsSeen.insert(_myChain);
+    const std::string myChain = TrigConfInterface::getHLTNameFromChainID(m_costData->getSequenceChannelCounter(e));
+    if (m_chainsSeen.count(myChain) == 0) {
+      m_eventWeight *= (1. - prescaleFactor);
+      m_chainsSeen.insert(myChain);
     }
 
-    m_dataStore.store(kVarCalls, 1., _weight);
+    m_dataStore.store(kVarCalls, 1., weight);
 
     // Get time for sequence
-    Float_t _rosTime = m_costData->getSeqROSTime(_e);
-    Float_t _sequenceTime = m_costData->getSequenceTime(_e);
-    //if ( isZero(_sequenceTime) == kTRUE ) {
-    _sequenceTime = m_costData->getSequenceAlgTotalTime(_e);
+    Float_t rosTime = m_costData->getSeqROSTime(e);
+    Float_t sequenceTime = m_costData->getSequenceTime(e);
+    //if ( isZero(sequenceTime) == kTRUE ) {
+    sequenceTime = m_costData->getSequenceAlgTotalTime(e);
     //}
-    s_eventTimeExecute += _sequenceTime * _weight; // Add to static variable to keep track during event
-    m_dataStore.store(kVarTime, _sequenceTime, _weight);
-    if (isZero(_rosTime) == kFALSE) {
-      m_dataStore.store(kVarROSTime, _rosTime, _weight);
-      m_dataStore.store(kVarCPUTime, _sequenceTime - _rosTime, _weight);
+    s_eventTimeExecute += sequenceTime * weight; // Add to static variable to keep track during event
+    m_dataStore.store(kVarTime, sequenceTime, weight);
+    if (isZero(rosTime) == kFALSE) {
+      m_dataStore.store(kVarROSTime, rosTime, weight);
+      m_dataStore.store(kVarCPUTime, sequenceTime - rosTime, weight);
     }
 
-    if (_sequenceTime > Config::config().getInt(kSlowThreshold)) {
-      m_dataStore.store(kVarCallsSlow, 1., _weight);
+    if (sequenceTime > Config::config().getInt(kSlowThreshold)) {
+      m_dataStore.store(kVarCallsSlow, 1., weight);
     }
 
     // Get alg cache staus
-    m_dataStore.store(kVarAlgCalls, m_costData->getSequenceAlgCalls(_e), _weight);
-    m_dataStore.store(kVarAlgCaches, m_costData->getSequenceAlgCaches(_e), _weight);
+    m_dataStore.store(kVarAlgCalls, m_costData->getSequenceAlgCalls(e), weight);
+    m_dataStore.store(kVarAlgCaches, m_costData->getSequenceAlgCaches(e), weight);
 
     // Get alg ROB status
-    m_dataStore.store(kVarROSCalls, m_costData->getSeqROSCalls(_e), _weight);
-    if (m_costData->getSeqROBRequests(_e) != 0) {
-      m_dataStore.store(kVarROBReqs, m_costData->getSeqROBRequests(_e), _weight);
-      m_dataStore.store(kVarROBReqSize, m_costData->getSeqROBRequestSize(_e), _weight);
+    m_dataStore.store(kVarROSCalls, m_costData->getSeqROSCalls(e), weight);
+    if (m_costData->getSeqROBRequests(e) != 0) {
+      m_dataStore.store(kVarROBReqs, m_costData->getSeqROBRequests(e), weight);
+      m_dataStore.store(kVarROBReqSize, m_costData->getSeqROBRequestSize(e), weight);
     }
-    if (m_costData->getSeqROBRetrievals(_e) != 0) {
-      m_dataStore.store(kVarROBRets, m_costData->getSeqROBRetrievals(_e), _weight);
-      m_dataStore.store(kVarROBRetSize, m_costData->getSeqROBRetrievalSize(_e), _weight);
+    if (m_costData->getSeqROBRetrievals(e) != 0) {
+      m_dataStore.store(kVarROBRets, m_costData->getSeqROBRetrievals(e), weight);
+      m_dataStore.store(kVarROBRetSize, m_costData->getSeqROBRetrievalSize(e), weight);
     }
-    if (m_costData->getSeqROBOthers(_e) != 0) {
-      m_dataStore.store(kVarROBOther, m_costData->getSeqROBOthers(_e), _weight);
+    if (m_costData->getSeqROBOthers(e) != 0) {
+      m_dataStore.store(kVarROBOther, m_costData->getSeqROBOthers(e), weight);
     }
   }
 
@@ -158,19 +157,19 @@ namespace TrigCostRootAnalysis {
    * scale by its L1 prescale
    * @return Multiplicative weighting factor
    */
-  Double_t CounterSequence::getPrescaleFactor(UInt_t _e) {
+  Double_t CounterSequence::getPrescaleFactor(UInt_t e) {
     return TrigXMLService::trigXMLService().getHLTCostWeightingFactor(
-      TrigConfInterface::getHLTNameFromChainID(m_costData->getSequenceChannelCounter(_e),
-                                               m_costData->getSequenceLevel(_e)));
+      TrigConfInterface::getHLTNameFromChainID(m_costData->getSequenceChannelCounter(e),
+                                               m_costData->getSequenceLevel(e)));
   }
 
   /**
    * Perform end-of-event monitoring on the DataStore.
    */
-  void CounterSequence::endEvent(Float_t _weight) {
+  void CounterSequence::endEvent(Float_t weight) {
     if (m_chainsSeen.size() > 0) {
       m_eventWeight = 1. - m_eventWeight;
-      m_dataStore.store(kVarEventsActive, 1., m_eventWeight * _weight);
+      m_dataStore.store(kVarEventsActive, 1., m_eventWeight * weight);
       m_eventWeight = 1.;
       m_chainsSeen.clear();
     }
@@ -182,31 +181,31 @@ namespace TrigCostRootAnalysis {
   /**
    * Output debug information on this call to the console
    */
-  void CounterSequence::debug(UInt_t _e) {
+  void CounterSequence::debug(UInt_t e) {
     Info("CounterSequence::debug", "Seq Name:%s ID:%i Evnt:%i Lvl:%i Chnl:%i Index:%i SeqTimer:%.2f SeqAlgTimer:%.2f"
                                    " isAlreadyExec:%i isExec:%i isInitial:%i isPrev:%i nAlgs:%i nAlgCalls:%i nAlgCaches:%i"
                                    " ROSCall:%i ROSTime:%.2f ROBRet:%i ROBRetSize:%.2f ROBReq:%i ROBReqSize:%.2f ROBOther:%i",
          m_name.c_str(),
          getID(),
          m_costData->getEventNumber(),
-         m_costData->getSequenceLevel(_e),
-         m_costData->getSequenceChannelCounter(_e),
-         m_costData->getSequenceIndex(_e),
-         m_costData->getSequenceTime(_e),
-         m_costData->getSequenceAlgTotalTime(_e),
-         (Int_t) m_costData->getIsSequenceAlreadyExecuted(_e),
-         (Int_t) m_costData->getIsSequenceExecuted(_e),
-         (Int_t) m_costData->getIsSequenceInitial(_e),
-         (Int_t) m_costData->getIsSequencePrevious(_e),
-         m_costData->getNSeqAlgs(_e),
-         m_costData->getSequenceAlgCalls(_e),
-         m_costData->getSequenceAlgCaches(_e),
-         m_costData->getSeqROSCalls(_e),
-         m_costData->getSeqROSTime(_e),
-         m_costData->getSeqROBRetrievals(_e),
-         m_costData->getSeqROBRetrievalSize(_e),
-         m_costData->getSeqROBRequests(_e),
-         m_costData->getSeqROBRequestSize(_e),
-         m_costData->getSeqROBOthers(_e));
+         m_costData->getSequenceLevel(e),
+         m_costData->getSequenceChannelCounter(e),
+         m_costData->getSequenceIndex(e),
+         m_costData->getSequenceTime(e),
+         m_costData->getSequenceAlgTotalTime(e),
+         (Int_t) m_costData->getIsSequenceAlreadyExecuted(e),
+         (Int_t) m_costData->getIsSequenceExecuted(e),
+         (Int_t) m_costData->getIsSequenceInitial(e),
+         (Int_t) m_costData->getIsSequencePrevious(e),
+         m_costData->getNSeqAlgs(e),
+         m_costData->getSequenceAlgCalls(e),
+         m_costData->getSequenceAlgCaches(e),
+         m_costData->getSeqROSCalls(e),
+         m_costData->getSeqROSTime(e),
+         m_costData->getSeqROBRetrievals(e),
+         m_costData->getSeqROBRetrievalSize(e),
+         m_costData->getSeqROBRequests(e),
+         m_costData->getSeqROBRequestSize(e),
+         m_costData->getSeqROBOthers(e));
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterSliceCPU.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterSliceCPU.cxx
index 613493d8eea772d105e9175f569d702f479c24bb..ed80f5c83d7a0fdce0dfb1e0293a86ca69c5ae21 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterSliceCPU.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/CounterSliceCPU.cxx
@@ -27,12 +27,12 @@
 
 namespace TrigCostRootAnalysis {
   /**
-   * @param _name Const ref to algorithm's chain's first group
-   * @param _ID Unused
+   * @param name Const ref to algorithm's chain's first group
+   * @param ID Unused
    */
-  CounterSliceCPU::CounterSliceCPU(const TrigCostData* _costData, const std::string& _name, Int_t _ID,
-                                   UInt_t _detailLevel, MonitorBase* _parent) :
-    CounterBase(_costData, _name, _ID, _detailLevel, _parent) {
+  CounterSliceCPU::CounterSliceCPU(const TrigCostData* costData, const std::string& name, Int_t ID,
+                                   UInt_t detailLevel, MonitorBase* parent) :
+    CounterBase(costData, name, ID, detailLevel, parent) {
     m_dataStore.newVariable(kVarCalls).setSavePerCall().setSavePerEvent();
     m_dataStore.newVariable(kVarEventsActive).setSavePerCall().setSavePerEvent();
     m_dataStore.newVariable(kVarTime)
@@ -54,28 +54,26 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Perform monitoring of a single algorithm call within a slice. Just CPU
-   * @param _e Sequence index in D3PD.
-   * @param _f Location of algorithm within parent sequence.
-   * @param _weight Event weight.
+   * @param e Sequence index in D3PD.
+   * @param f Location of algorithm within parent sequence.
+   * @param weight Event weight.
    */
-  void CounterSliceCPU::processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight) {
-    UNUSED(_f);
+  void CounterSliceCPU::processEventCounter(UInt_t e, UInt_t /*f*/, Float_t weight) {
     ++m_calls;
 
-    m_dataStore.store(kVarCalls, 1., _weight);
-    m_dataStore.store(kVarTime, m_costData->getChainTimerFromSequences(_e), _weight);
+    m_dataStore.store(kVarCalls, 1., weight);
+    m_dataStore.store(kVarTime, m_costData->getChainTimerFromSequences(e), weight);
   }
 
   /**
    * Perform end-of-event monitoring for this algorithm.
    */
-  void CounterSliceCPU::endEvent(Float_t _weight) {
-    m_dataStore.store(kVarEventsActive, 1., /*m_eventWeight * */ _weight);
+  void CounterSliceCPU::endEvent(Float_t weight) {
+    m_dataStore.store(kVarEventsActive, 1., /*m_eventWeight * */ weight);
     m_dataStore.endEvent();
   }
 
-  Double_t CounterSliceCPU::getPrescaleFactor(UInt_t _e) {
-    UNUSED(_e);
+  Double_t CounterSliceCPU::getPrescaleFactor(UInt_t /*e*/) {
     return 0;
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/DataStore.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/DataStore.cxx
index ffb266657933a8900174bf51798994bff748139e..114560c51a7ed8f282d0d0cc6d3f46e643e93dca 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/DataStore.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/DataStore.cxx
@@ -26,18 +26,18 @@ namespace TrigCostRootAnalysis {
   /**
    * DataStore constructor, takes no arguments.
    */
-  DataStore::DataStore(CounterBase* _parent) : m_histogrammingEnabled(kTRUE), m_mostRecent(0), m_variableMap(),
-    m_parent(_parent) {
+  DataStore::DataStore(CounterBase* parent) : m_histogrammingEnabled(kTRUE), m_mostRecent(0), m_variableMap(),
+    m_parent(parent) {
   }
 
   /**
    * DataStore destructor.
    */
   DataStore::~DataStore() {
-    VariableMapIt_t _it = m_variableMap.begin();
+    VariableMapIt_t it = m_variableMap.begin();
 
-    for (; _it != m_variableMap.end(); ++_it) {
-      delete _it->second;
+    for (; it != m_variableMap.end(); ++it) {
+      delete it->second;
     }
     m_variableMap.clear();
   }
@@ -45,212 +45,212 @@ namespace TrigCostRootAnalysis {
   /**
    * Register a new monitored variable by name.
    * @see setSaveMode()
-   * @param _name Name of new variable. Use a confKey with a string name set for it.
+   * @param name Name of new variable. Use a confKey with a string name set for it.
    * @return A self reference for chaining.
    */
-  DataStore& DataStore::newVariable(ConfKey_t _name) {
-    if (m_variableMap.count(_name) == 1) {
+  DataStore& DataStore::newVariable(ConfKey_t name) {
+    if (m_variableMap.count(name) == 1) {
       Warning("DataStore::newVariable", "Variable %s already registered. Replacing it.", Config::config().getStr(
-                _name).c_str());
-      delete m_variableMap[_name];
+                name).c_str());
+      delete m_variableMap[name];
     }
     m_mostRecent = new DataVariable(this);
-    m_variableMap[_name] = m_mostRecent;
+    m_variableMap[name] = m_mostRecent;
     return *this;
   }
 
   /**
    * Must be called on all registered savePerEventFraction variables before endEvent() is called.
    * @see endEvent()
-   * @param _name Name of variable to set denominator for.
-   * @param _denominator Denominator to divide by.
+   * @param name Name of variable to set denominator for.
+   * @param denominator Denominator to divide by.
    */
-  void DataStore::setVariableDenominator(ConfKey_t _name, Float_t _denominator) {
-    if (checkRegistered(_name) == kFALSE) return;
+  void DataStore::setVariableDenominator(ConfKey_t name, Float_t denominator) {
+    if (checkRegistered(name) == kFALSE) return;
 
-    m_mostRecent->setVariableDenominator(_denominator); // m_mostRecent is set by checkRegistered
+    m_mostRecent->setVariableDenominator(denominator); // m_mostRecent is set by checkRegistered
   }
 
   /**
    * Store a new value for a variable according to the variable's configuration.
    * Optimisation note: this is a very high-call-rate function.
-   * @param _name Name of variable which is being stored.
-   * @param _value Value to store.
-   * @param _weight Weight of entry.
+   * @param name Name of variable which is being stored.
+   * @param value Value to store.
+   * @param weight Weight of entry.
    */
-  void DataStore::store(ConfKey_t _name, Float_t _value, Float_t _weight) {
-    if (checkRegistered(_name) == kFALSE) return;
+  void DataStore::store(ConfKey_t name, Float_t value, Float_t weight) {
+    if (checkRegistered(name) == kFALSE) return;
 
-    m_mostRecent->store(_value, _weight); // m_mostRecent is set by checkRegistered
+    m_mostRecent->store(value, weight); // m_mostRecent is set by checkRegistered
   }
 
   /**
    * Flag to enable or disable histogramming for *new* save states of current or new variables.
-   * @param _histogrammingEnabled True to enable histograms for future calls to setSave*bla*.
+   * @param histogrammingEnabled True to enable histograms for future calls to setSave*bla*.
    */
-  void DataStore::setHistogramming(Bool_t _histogrammingEnabled) {
-    m_histogrammingEnabled = _histogrammingEnabled;
+  void DataStore::setHistogramming(Bool_t histogrammingEnabled) {
+    m_histogrammingEnabled = histogrammingEnabled;
   }
 
   /**
    * Set custom X axis bin lables for a histogram.
-   * @param _name Name of variable which is being accessed.
-   * @param _vo Variable option to edit.
-   * @param _titles Vector of histogram X axis bin titles
+   * @param name Name of variable which is being accessed.
+   * @param vo Variable option to edit.
+   * @param titles Vector of histogram X axis bin titles
    */
-  void DataStore::setBinLabels(ConfKey_t _name, VariableOption_t _vo, std::vector<std::string> _titles) {
-    if (checkRegistered(_name) == kFALSE) {
-      Error("DataStore::setBinLabels", "Cannot find entry for %s", Config::config().getName(_name).c_str());
+  void DataStore::setBinLabels(ConfKey_t name, VariableOption_t vo, std::vector<std::string> titles) {
+    if (checkRegistered(name) == kFALSE) {
+      Error("DataStore::setBinLabels", "Cannot find entry for %s", Config::config().getName(name).c_str());
       return;
     }
-    m_mostRecent->setBinLabels(_vo, _titles); // m_mostRecent is set by checkRegistered
+    m_mostRecent->setBinLabels(vo, titles); // m_mostRecent is set by checkRegistered
   }
 
   /**
    * Flush buffers for all per-event quantities
    */
   void DataStore::endEvent() {
-    VariableMapIt_t _it = m_variableMap.begin();
+    VariableMapIt_t it = m_variableMap.begin();
 
-    for (; _it != m_variableMap.end(); ++_it) {
-      _it->second->endEvent();
+    for (; it != m_variableMap.end(); ++it) {
+      it->second->endEvent();
     }
   }
 
   /**
    * Get a value from the data store.
-   * @param _name Name of variable to retrieve.
-   * @param _vo Variable option to retrieve .
+   * @param name Name of variable to retrieve.
+   * @param vo Variable option to retrieve .
    * @return The stored result.
    */
-  Float_t DataStore::getValue(ConfKey_t _name, VariableOption_t _vo) const {
-    if (checkRegistered(_name) == kFALSE) return 0.;
+  Float_t DataStore::getValue(ConfKey_t name, VariableOption_t vo) const {
+    if (checkRegistered(name) == kFALSE) return 0.;
 
-    return m_mostRecent->getValue(_vo); // m_mostRecent is set by checkRegistered
+    return m_mostRecent->getValue(vo); // m_mostRecent is set by checkRegistered
   }
 
   /**
    * Check if a value key and variable option are available
-   * @param _name Name of variable to check for.
-   * @param _vo Variable option to check for.
+   * @param name Name of variable to check for.
+   * @param vo Variable option to check for.
    * @return If the variable is stored with a given VO.
    */
-  Bool_t DataStore::getValueExists(ConfKey_t _name, VariableOption_t _vo) const {
-    if (checkRegistered(_name, /*silent*/ kTRUE) == kFALSE) return kFALSE;
+  Bool_t DataStore::getValueExists(ConfKey_t name, VariableOption_t vo) const {
+    if (checkRegistered(name, /*silent*/ kTRUE) == kFALSE) return kFALSE;
 
-    return m_mostRecent->getValueExists(_vo); // m_mostRecent is set by checkRegistered
+    return m_mostRecent->getValueExists(vo); // m_mostRecent is set by checkRegistered
   }
 
   /**
    * Get a value error from the data store.
-   * @param _name Name of variable to retrieve.
-   * @param _vo Variable option to retrieve .
+   * @param name Name of variable to retrieve.
+   * @param vo Variable option to retrieve .
    * @return The stored result.
    */
-  Float_t DataStore::getValueError(ConfKey_t _name, VariableOption_t _vo) const {
-    if (checkRegistered(_name) == kFALSE) return 0.;
+  Float_t DataStore::getValueError(ConfKey_t name, VariableOption_t vo) const {
+    if (checkRegistered(name) == kFALSE) return 0.;
 
-    return m_mostRecent->getValueError(_vo); // m_mostRecent is set by checkRegistered
+    return m_mostRecent->getValueError(vo); // m_mostRecent is set by checkRegistered
   }
 
   /**
    * Get the number of filled entries.
-   * @param _name Name of variable.
-   * @param _vo Variable option.
+   * @param name Name of variable.
+   * @param vo Variable option.
    * @return The number of entries stored.
    */
-  Int_t DataStore::getEntries(ConfKey_t _name, VariableOption_t _vo) const {
-    if (checkRegistered(_name) == kFALSE) {
+  Int_t DataStore::getEntries(ConfKey_t name, VariableOption_t vo) const {
+    if (checkRegistered(name) == kFALSE) {
       Error("DataStore::getEntries", "No such entry '%s' registered with VO %s", Config::config().getStr(
-              _name).c_str(), VariableOptionStr[_vo].c_str());
+              name).c_str(), VariableOptionStr[vo].c_str());
       return 0;
     }
-    return m_mostRecent->getEntries(_vo);  // m_mostRecent is set by checkRegistered
+    return m_mostRecent->getEntries(vo);  // m_mostRecent is set by checkRegistered
   }
 
   /**
    * Set a value from the data store.
-   * @param _name Name of variable to retrieve.
-   * @param _vo Variable option to retrieve .
+   * @param name Name of variable to retrieve.
+   * @param vo Variable option to retrieve .
    * @param _val The value to set.
    */
-  void DataStore::setValue(ConfKey_t _name, VariableOption_t _vo, Float_t _val) {
-    if (checkRegistered(_name) == kFALSE) return;
+  void DataStore::setValue(ConfKey_t name, VariableOption_t vo, Float_t val) {
+    if (checkRegistered(name) == kFALSE) return;
 
-    m_mostRecent->setValue(_vo, _val); // m_mostRecent is set by checkRegistered
+    m_mostRecent->setValue(vo, val); // m_mostRecent is set by checkRegistered
   }
 
   /**
    * Set the number of filled entries.
-   * @param _name Name of variable.
-   * @param _vo Variable option.
-   * @param _val The value to set as the number of entries stored.
+   * @param name Name of variable.
+   * @param vo Variable option.
+   * @param val The value to set as the number of entries stored.
    */
-  void DataStore::setEntries(ConfKey_t _name, VariableOption_t _vo, UInt_t _val) {
-    if (checkRegistered(_name) == kFALSE) {
+  void DataStore::setEntries(ConfKey_t name, VariableOption_t vo, UInt_t val) {
+    if (checkRegistered(name) == kFALSE) {
       Error("DataStore::setEntries", "No such entry '%s' registered with VO %s", Config::config().getStr(
-              _name).c_str(), VariableOptionStr[_vo].c_str());
+              name).c_str(), VariableOptionStr[vo].c_str());
       return;
     }
-    m_mostRecent->setEntries(_vo, _val);  // m_mostRecent is set by checkRegistered
+    m_mostRecent->setEntries(vo, val);  // m_mostRecent is set by checkRegistered
   }
 
   /**
    * Set the sumw2 variable - this is the SQUARE of the error.
-   * @param _name Name of variable.
-   * @param _vo Variable option.
-   * @param _val The SQUARE of the error to save.
+   * @param name Name of variable.
+   * @param vo Variable option.
+   * @param val The SQUARE of the error to save.
    */
-  void DataStore::setErrorSquared(ConfKey_t _name, VariableOption_t _vo, Float_t _val) {
-    if (checkRegistered(_name) == kFALSE) {
+  void DataStore::setErrorSquared(ConfKey_t name, VariableOption_t vo, Float_t val) {
+    if (checkRegistered(name) == kFALSE) {
       Error("DataStore::setError", "No such entry '%s' registered with VO %s", Config::config().getStr(
-              _name).c_str(), VariableOptionStr[_vo].c_str());
+              name).c_str(), VariableOptionStr[vo].c_str());
       return;
     }
-    m_mostRecent->setErrorSquared(_vo, _val);  // m_mostRecent is set by checkRegistered
+    m_mostRecent->setErrorSquared(vo, val);  // m_mostRecent is set by checkRegistered
   }
 
   /**
    * Get the histogram for a monitored quantity.
-   * @param _name Name of variable.
-   * @param _vo Variable option.
-   * @param _silent set to true to suppress error messages
+   * @param name Name of variable.
+   * @param vo Variable option.
+   * @param silent set to true to suppress error messages
    * @return Histogram pointer.
    */
-  TH1F* DataStore::getHist(ConfKey_t _name, VariableOption_t _vo, Bool_t _silent) {
-    if (checkRegistered(_name, _silent) == kFALSE) {
-      if (_silent == kFALSE) Error("DataStore::getHist",
+  TH1F* DataStore::getHist(ConfKey_t name, VariableOption_t vo, Bool_t silent) {
+    if (checkRegistered(name, silent) == kFALSE) {
+      if (silent == kFALSE) Error("DataStore::getHist",
                                    "Remember to give axis labels with newVariable() if you want histogramming.");
       return 0;
     }
-    return m_mostRecent->getHist(_vo, _silent); // m_mostRecent is set by checkRegistered
+    return m_mostRecent->getHist(vo, silent); // m_mostRecent is set by checkRegistered
   }
 
   /**
    * Set the histogram for a monitored quantity.
    * This overwrites any current hist! Use with care!
    * Object assumes ownership of the histogram
-   * @param _name Name of variable.
-   * @param _vo Variable option.
-   * @param _hist histogram pointer
+   * @param name Name of variable.
+   * @param vo Variable option.
+   * @param hist histogram pointer
    */
-  void DataStore::setHist(ConfKey_t _name, VariableOption_t _vo, TH1F* _hist) {
-    if (checkRegistered(_name, kFALSE) == kFALSE) {
+  void DataStore::setHist(ConfKey_t name, VariableOption_t vo, TH1F* hist) {
+    if (checkRegistered(name, kFALSE) == kFALSE) {
       Error("DataStore::setHist", "Cannot find entry");
       return;
     }
-    return m_mostRecent->setHist(_vo, _hist); // m_mostRecent is set by checkRegistered
+    return m_mostRecent->setHist(vo, hist); // m_mostRecent is set by checkRegistered
   }
 
   /**
    * Get the histogram for a 2D monitored quantity.
-   * @param _name Name of variable.
-   * @param _vo Variable option.
+   * @param name Name of variable.
+   * @param vo Variable option.
    * @return 2D histogram pointer.
    */
-  // TH2F* DataStore::getHist2D(ConfKey_t _name, VariableOption_t _vo) {
-  //   if ( checkRegistered(_name) == kFALSE ) return 0;
-  //   return m_mostRecent->getHist2D(_vo); // m_mostRecent is set by checkRegistered
+  // TH2F* DataStore::getHist2D(ConfKey_t name, VariableOption_t vo) {
+  //   if ( checkRegistered(name) == kFALSE ) return 0;
+  //   return m_mostRecent->getHist2D(vo); // m_mostRecent is set by checkRegistered
   // }
 
   /**
@@ -258,28 +258,28 @@ namespace TrigCostRootAnalysis {
    * @return Vector< pair< name, VariableOption_t > > of all entries which have a != TH!F pointer
    */
   VariableOptionVector_t DataStore::getAllHistograms() {
-    VariableOptionVector_t _vec;
-    VariableMapIt_t _dsIt = m_variableMap.begin();
+    VariableOptionVector_t vec;
+    VariableMapIt_t dsIt = m_variableMap.begin();
 
-    for (; _dsIt != m_variableMap.end(); ++_dsIt) {
-      ConfKey_t _dvNameEnum = _dsIt->first;
+    for (; dsIt != m_variableMap.end(); ++dsIt) {
+      ConfKey_t dvNameEnum = dsIt->first;
 
-      for (Int_t _vo = 0; _vo < kVariableOption_SIZE; ++_vo) {
-        VariableOption_t _voEnum = static_cast<VariableOption_t>(_vo);
+      for (Int_t vo = 0; vo < kVariableOption_SIZE; ++vo) {
+        VariableOption_t voEnum = static_cast<VariableOption_t>(vo);
 
-        if (getHist(_dvNameEnum, _voEnum, /*_silent = */ kTRUE) == 0) continue;
-        if (getHist(_dvNameEnum, _voEnum, /*_silent = */ kTRUE)->GetEntries() == 0) continue;
+        if (getHist(dvNameEnum, voEnum, /*silent = */ kTRUE) == 0) continue;
+        if (getHist(dvNameEnum, voEnum, /*silent = */ kTRUE)->GetEntries() == 0) continue;
 
         if (Config::config().debug()) {
           Info("DataStore::getAllHistograms", "Adding output histogram %s / %s", Config::config().getName(
-                 _dvNameEnum).c_str(), VariableOptionStr[_voEnum].c_str());
+                 dvNameEnum).c_str(), VariableOptionStr[voEnum].c_str());
         }
 
-        _vec.push_back(std::make_pair(_dvNameEnum, _voEnum));
+        vec.push_back(std::make_pair(dvNameEnum, voEnum));
       }
     }
-    //Info("","returning vec of size %i", (int)_vec.size());
-    return _vec;
+    //Info("","returning vec of size %i", (int)vec.size());
+    return vec;
   }
 
   /**
@@ -291,37 +291,37 @@ namespace TrigCostRootAnalysis {
    * @return Const reference to string with the the name (key) corresponding to m_mostRecent
    */
   const std::string& DataStore::getNameOfMostRecentCall() const {
-    VariableMapIt_t _it = m_variableMap.begin();
+    VariableMapIt_t it = m_variableMap.begin();
 
     // One-to-one mapping is enforced by newVariable, so this reverse-lookup can exit on first success.
-    for (; _it != m_variableMap.end(); ++_it) {
-      if (_it->second == m_mostRecent) { // Check pointers
-        return Config::config().getStr(_it->first);
+    for (; it != m_variableMap.end(); ++it) {
+      if (it->second == m_mostRecent) { // Check pointers
+        return Config::config().getStr(it->first);
       }
     }
     return Config::config().getStr(kUnknownString);
   }
 
   /**
-   * Check if map contains variable with _name.
+   * Check if map contains variable with name.
    * If found, pointer to the DataVariable stored in member pointer m_mostRecent (to save us having to do another find
    *to use it!)
    * Optimisation note: this is a very high-call-rate function.
    * Current implementation means that the map is only searched once per Store call.
-   * @param _name Name of variable.
-   * @return kTRUE if contains _name, m_mostRecent then points to the counter. Else kFALSE and message to error stream.
+   * @param name Name of variable.
+   * @return kTRUE if contains name, m_mostRecent then points to the counter. Else kFALSE and message to error stream.
    */
-  Bool_t DataStore::checkRegistered(ConfKey_t _name, Bool_t _silent) const {
-    VariableMapIt_t _location = m_variableMap.find(_name);
+  Bool_t DataStore::checkRegistered(ConfKey_t name, Bool_t silent) const {
+    VariableMapIt_t location = m_variableMap.find(name);
 
-    if (_location == m_variableMap.end()) {
-      if (_silent == kFALSE && Config::config().getDisplayMsg(kMsgCannotFindVar) == kTRUE) {
+    if (location == m_variableMap.end()) {
+      if (silent == kFALSE && Config::config().getDisplayMsg(kMsgCannotFindVar) == kTRUE) {
         Error("DataStore::checkRegistered", "Unable to find variable with name %s", Config::config().getStr(
-                _name).c_str());
+                name).c_str());
       }
       return kFALSE;
     }
-    m_mostRecent = _location->second; //Cache the pointer to the DataVariable
+    m_mostRecent = location->second; //Cache the pointer to the DataVariable
     return kTRUE;
   }
 
@@ -329,74 +329,74 @@ namespace TrigCostRootAnalysis {
    * Internal function used to request new save option in DataVariable.
    * One name to be supplied or pointer m_mostRecent used.
    * @see m_mostRecent
-   * @param _vo Variable option.
-   * @param _title Name of variable.
-   * @param _name Name of variable to change, or "" to use m_mostRecent.
+   * @param vo Variable option.
+   * @param title Name of variable.
+   * @param name Name of variable to change, or "" to use m_mostRecent.
    * @return A self reference for chaining.
    */
-  DataStore& DataStore::setSaveInternal(VariableOption_t _vo, std::string& _title, ConfKey_t _name) {
+  DataStore& DataStore::setSaveInternal(VariableOption_t vo, std::string& title, ConfKey_t name) {
     // Function can be called with or without name. If called with, set m_mostRecent to match the name
     // supplied. Otherwise using chained function calls so check that m_mostRecent is valid.
-    if (_name != kBlankString) {
-      if (checkRegistered(_name) == kFALSE) return *this;
+    if (name != kBlankString) {
+      if (checkRegistered(name) == kFALSE) return *this;
 
-      m_mostRecent = m_variableMap[_name];
+      m_mostRecent = m_variableMap[name];
     } else if (m_mostRecent == 0) {
       Error("DataStore::setSaveInternal", "No variable to set save state on. Did you call newVariable() first?");
       return *this;
     }
-    m_mostRecent->registerSaveState(_vo, _title);
+    m_mostRecent->registerSaveState(vo, title);
     return *this;
   }
 
   /**
    * Non-chain version of SetSave which accepts a name argument.
-   * @param _name Name of variable to modify.
-   * @param _vo Variable option to enable monitoring for.
-   * @param _title String, if filled enables histograming, format "XAxisLabel;YAxisLabel"
+   * @param name Name of variable to modify.
+   * @param vo Variable option to enable monitoring for.
+   * @param title String, if filled enables histograming, format "XAxisLabel;YAxisLabel"
    */
-  void DataStore::setSaveMode(ConfKey_t _name, VariableOption_t _vo, std::string _title) {
+  void DataStore::setSaveMode(ConfKey_t name, VariableOption_t vo, std::string title) {
     // Manual method, pass to internal function.
-    setSaveInternal(_vo, _title, _name);
+    setSaveInternal(vo, title, name);
   }
 
   /**
    * Chain version of SetSave which enables saving per-call on most recently added variable.
-   * @param _title Passing a non-empty string enables histograming, format "XAxisLabel;YAxisLabel"
+   * @param title Passing a non-empty string enables histograming, format "XAxisLabel;YAxisLabel"
    * @return A self reference for chaining.
    */
-  DataStore& DataStore::setSavePerCall(std::string _title) {
-    return setSaveInternal(kSavePerCall, _title);
+  DataStore& DataStore::setSavePerCall(std::string title) {
+    return setSaveInternal(kSavePerCall, title);
   }
 
   /**
    * Chain version of SetSave for most recently added variable which enables per-call addition to an
    * internal buffer which is stored at the end of the event.
-   * @param _title Passing a non-empty string enables histograming, format "XAxisLabel;YAxisLabel"
+   * @param title Passing a non-empty string enables histograming, format "XAxisLabel;YAxisLabel"
    * @return A self reference for chaining.
    */
-  DataStore& DataStore::setSavePerEvent(std::string _title) {
-    return setSaveInternal(kSavePerEvent, _title);
+  DataStore& DataStore::setSavePerEvent(std::string title) {
+    return setSaveInternal(kSavePerEvent, title);
   }
 
   /**
    * Chain version of SetSave for most recently added variable which enables per-call addition to an
    * internal buffer which is stored at the end of the user-defined period.
-   * @param _title Passing a non-empty string enables histogramming, format "XAxisLabel;YAxisLabel"
+   * @param title Passing a non-empty string enables histogramming, format "XAxisLabel;YAxisLabel"
    * @return A self reference for chaining.
    */
-  DataStore& DataStore::setSavePerPeriod(std::string _title) {
-    return setSaveInternal(kSavePerPeriod, _title);
+  DataStore& DataStore::setSavePerPeriod(std::string title) {
+    return setSaveInternal(kSavePerPeriod, title);
   }
 
   /**
    * Chain version of SetSave for most recently added variable which enables per-call addition to an
    * internal buffer which is divided by a denominator before being stored at the end of the event.
-   * @see setVariableDenominator(std::string _name, Float_t denominator)
-   * @param _title Passing a non-empty string enables histograming, format "XAxisLabel;YAxisLabel"
+   * @see setVariableDenominator(std::string name, Float_t denominator)
+   * @param title Passing a non-empty string enables histograming, format "XAxisLabel;YAxisLabel"
    * @return A self reference for chaining.
    */
-  DataStore& DataStore::setSavePerEventFraction(std::string _title) {
-    return setSaveInternal(kSavePerEventFraction, _title);
+  DataStore& DataStore::setSavePerEventFraction(std::string title) {
+    return setSaveInternal(kSavePerEventFraction, title);
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/DataVariable.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/DataVariable.cxx
index 10447a8bc0370b843d4d166b1519d7afb871f2c9..ea41b664da6a3d85b25a607e692c4e02e28e4471 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/DataVariable.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/DataVariable.cxx
@@ -28,7 +28,7 @@ namespace TrigCostRootAnalysis {
   /**
    * DataVariable constructor, takes a pointer to its owner
    */
-  DataVariable::DataVariable(DataStore* _parent) : m_parentDataStore(_parent) {
+  DataVariable::DataVariable(DataStore* parent) : m_parentDataStore(parent) {
     // Initialise pointers to NULL
     for (UInt_t i = 0; i < kVariableOption_SIZE; ++i) {
       m_dataMap[ (VariableOption_t) i ] = NULL;
@@ -39,9 +39,9 @@ namespace TrigCostRootAnalysis {
    * DataVariable destructor. Frees memory from all Data*
    */
   DataVariable::~DataVariable() {
-    std::map< VariableOption_t, Data* >::iterator _it = m_dataMap.begin();
-    for (; _it != m_dataMap.end(); ++_it) {
-      delete _it->second;
+    std::map< VariableOption_t, Data* >::iterator it = m_dataMap.begin();
+    for (; it != m_dataMap.end(); ++it) {
+      delete it->second;
     }
     m_dataMap.clear();
   }
@@ -65,110 +65,110 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Add a new save state (VariableOption) to this DataVariable.
-   * @param _vo Variable option defining which save state to add and enable.
-   * @param _title If not "", then enable histogramming.
+   * @param vo Variable option defining which save state to add and enable.
+   * @param title If not "", then enable histogramming.
    */
-  void DataVariable::registerSaveState(VariableOption_t _vo, std::string& _title) {
-    Data* _data = new Data;
+  void DataVariable::registerSaveState(VariableOption_t vo, std::string& title) {
+    Data* data = new Data;
 
     // Only create histograms if we are going to output a ROOT file.
     // Actual memory allocation hapens just before first fill - as many declared histos don't actually ever get used
-    _data->m_hist = 0;
+    data->m_hist = 0;
     // //TODO make use of the TH2F pointer
-    // _data->m_hist2D = 0;
-    _data->m_entries = 0.;
-    _data->m_data = 0.;
-    _data->m_sumw2 = 0.;
-    _data->m_bufferVal = 0.;
-    _data->m_bufferValW = 0.;
-    _data->m_bufferValW2 = 0.;
-    _data->m_denominator = 0;
-    _data->m_usedInEvent = kFALSE;
-    _data->m_histoTitle = 0;
-    if (_title != Config::config().getStr(kBlankString)
+    // data->m_hist2D = 0;
+    data->m_entries = 0.;
+    data->m_data = 0.;
+    data->m_sumw2 = 0.;
+    data->m_bufferVal = 0.;
+    data->m_bufferValW = 0.;
+    data->m_bufferValW2 = 0.;
+    data->m_denominator = 0;
+    data->m_usedInEvent = kFALSE;
+    data->m_histoTitle = 0;
+    if (title != Config::config().getStr(kBlankString)
         && m_parentDataStore->getHistogramming() == kTRUE
         && (Config::config().getInt(kOutputRoot) || Config::config().getInt(kOutputImage))) {
-      _data->m_histoTitle = new std::string(_title);
+      data->m_histoTitle = new std::string(title);
       // If this is the "dummy" counter, then we must make all of its histograms now.
       // This is because the dummy counter is used to determine later what output histograms are to be expected.
-      CounterBase* _holdingCounter = m_parentDataStore->getParent();
-      if (_holdingCounter != 0 && _holdingCounter->getName() == Config::config().getStr(kDummyString)) {
-        makeHist(_data);
+      CounterBase* holdingCounter = m_parentDataStore->getParent();
+      if (holdingCounter != 0 && holdingCounter->getName() == Config::config().getStr(kDummyString)) {
+        makeHist(data);
       }
     }
-    if (m_dataMap.count(_vo) == 1 && m_dataMap[_vo] != NULL) {
-      delete m_dataMap[_vo];
+    if (m_dataMap.count(vo) == 1 && m_dataMap[vo] != NULL) {
+      delete m_dataMap[vo];
       Warning("DataVariable::registerSaveState",
               "DataVariable %s in %s already exists. Replacing this DataVariable with a new one",
-              VariableOptionStr[_vo].c_str(),
+              VariableOptionStr[vo].c_str(),
               m_parentDataStore->getNameOfMostRecentCall().c_str());
     }
-    m_dataMap[_vo] = _data;
+    m_dataMap[vo] = data;
   }
 
   /**
    * Set custom X axis bin lables for a histogram.
-   * @param _vo Variable option to edit.
-   * @param _titles Vector of histogram X axis bin titles
+   * @param vo Variable option to edit.
+   * @param titles Vector of histogram X axis bin titles
    */
-  void DataVariable::setBinLabels(VariableOption_t _vo, std::vector<std::string> _titles) {
-    if (getHist(_vo) == 0 && getHistTitle(_vo) != 0) {
+  void DataVariable::setBinLabels(VariableOption_t vo, std::vector<std::string> titles) {
+    if (getHist(vo) == 0 && getHistTitle(vo) != 0) {
       // If the histogram hasn't been made yet, then we need to make it now to set its bin properties.
-      makeHist(getData(_vo));
-    } else if (getHist(_vo) == 0) {
+      makeHist(getData(vo));
+    } else if (getHist(vo) == 0) {
       Error("DataVariable::setBinLabels", "Cannot find a histogram for %s / %s",
             m_parentDataStore->getNameOfMostRecentCall().c_str(),
-            VariableOptionStr[_vo].c_str());
+            VariableOptionStr[vo].c_str());
       return;
     }
-    TH1F* _h = getHist(_vo);
+    TH1F* h = getHist(vo);
 #if ROOT_VERSION_CODE >= ROOT_VERSION(6, 0, 0)
-    _h->SetCanExtend(TH1::kNoAxis);
+    h->SetCanExtend(TH1::kNoAxis);
 #else
-    _h->SetBit(TH1::kCanRebin, kFALSE);
+    h->SetBit(TH1::kCanRebin, kFALSE);
 #endif
-    _h->SetBins((Int_t) _titles.size(), 0., (Float_t) _titles.size());
-    for (UInt_t _i = 0; _i < _titles.size(); ++_i) {
-      _h->GetXaxis()->SetBinLabel((Int_t) _i + 1, _titles.at(_i).c_str());
+    h->SetBins((Int_t) titles.size(), 0., (Float_t) titles.size());
+    for (UInt_t i = 0; i < titles.size(); ++i) {
+      h->GetXaxis()->SetBinLabel((Int_t) i + 1, titles.at(i).c_str());
     }
   }
 
   /**
    * Record a value (see DataStore for what can be monitored).
    * @see DataStore()
-   * @param _value Value to save.
-   * @param _weight Weight to be applied to value.
+   * @param value Value to save.
+   * @param weight Weight to be applied to value.
    */
-  void DataVariable::store(Float_t _value, Float_t _weight) {
+  void DataVariable::store(Float_t value, Float_t weight) {
     // Here the logic of the different types of storage come in.
 
     // SavePerCall. Every call of store records this variable.
-    dataSave(m_dataMap[kSavePerCall], _value, _weight);
+    dataSave(m_dataMap[kSavePerCall], value, weight);
 
     // SavePerEvent. Every call of store buffers this variable.
-    dataBuffer(m_dataMap[kSavePerEvent], _value, _weight);
+    dataBuffer(m_dataMap[kSavePerEvent], value, weight);
 
     // SavePerPeriod. Every call of store buffers this variable.
-    dataBuffer(m_dataMap[kSavePerPeriod], _value, _weight);
+    dataBuffer(m_dataMap[kSavePerPeriod], value, weight);
 
     // SavePerEventFraction. Every call of store buffers this variable.
-    dataBuffer(m_dataMap[kSavePerEventFraction], _value, _weight);
+    dataBuffer(m_dataMap[kSavePerEventFraction], value, weight);
   }
 
   /**
    * Used specifically with kSavePerEventFraction to set the denominator for this event.
    * @see DataStore()
    * @see kSavePerEventFraction
-   * @param _denominator Denominator to divide through by at end of event.
+   * @param denominator Denominator to divide through by at end of event.
    */
-  void DataVariable::setVariableDenominator(Float_t _denominator) {
+  void DataVariable::setVariableDenominator(Float_t denominator) {
     if (m_dataMap[kSavePerEventFraction] == 0) {
       Error("DataVariable::setVariableDenominator",
             "Per event fractional output not setup for this variable, %s, call savePerEventFraction() first.",
             m_parentDataStore->getNameOfMostRecentCall().c_str());
       return;
     }
-    m_dataMap[kSavePerEventFraction]->m_denominator = _denominator;
+    m_dataMap[kSavePerEventFraction]->m_denominator = denominator;
   }
 
   /**
@@ -198,158 +198,158 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Return the stored data for a VariableOption.
-   * @param _vo Which VariableOption_t to retrieve the stored data from.
+   * @param vo Which VariableOption_t to retrieve the stored data from.
    * @return The stored value.
    */
-  Float_t DataVariable::getValue(VariableOption_t _vo) const {
-    if (checkRegistered(_vo) == kFALSE) return 0;
+  Float_t DataVariable::getValue(VariableOption_t vo) const {
+    if (checkRegistered(vo) == kFALSE) return 0;
 
-    return m_dataMap.at(_vo)->m_data;
+    return m_dataMap.at(vo)->m_data;
   }
 
   /**
    * Return if there is stored data for a VariableOption.
-   * @param _vo Which VariableOption_t to check
+   * @param vo Which VariableOption_t to check
    * @return If there is stored data
    */
-  Bool_t DataVariable::getValueExists(VariableOption_t _vo) const {
-    return checkRegistered(_vo, /*silent*/ kTRUE);
+  Bool_t DataVariable::getValueExists(VariableOption_t vo) const {
+    return checkRegistered(vo, /*silent*/ kTRUE);
   }
 
   /**
    * Return the error on a stored data for a VariableOption.
-   * @param _vo Which VariableOption_t to retrieve the stored data from.
+   * @param vo Which VariableOption_t to retrieve the stored data from.
    * @return The stored value.
    */
-  Float_t DataVariable::getValueError(VariableOption_t _vo) const {
-    if (checkRegistered(_vo) == kFALSE) return 0;                                                      
+  Float_t DataVariable::getValueError(VariableOption_t vo) const {
+    if (checkRegistered(vo) == kFALSE) return 0;                                                      
     ///XXX TODO FIRST PASS - MAY NOT BE CORRECT
-    Float_t _sumw2 = m_dataMap.at(_vo)->m_sumw2;
-    //Float_t _entries = m_dataMap[_vo]->m_entries;
-    return (Float_t) TMath::Sqrt(_sumw2);
+    Float_t sumw2 = m_dataMap.at(vo)->m_sumw2;
+    //Float_t entries = m_dataMap[vo]->m_entries;
+    return (Float_t) TMath::Sqrt(sumw2);
   }
 
   /**
    * Set the stored data for a VariableOption (does not affect entries).
-   * @param _vo Which VariableOption_t to retrieve the stored data from.
-   * @param _val The value to set for the stored value.
+   * @param vo Which VariableOption_t to retrieve the stored data from.
+   * @param val The value to set for the stored value.
    */
-  void DataVariable::setValue(VariableOption_t _vo, Float_t _val) {
-    if (checkRegistered(_vo) == kFALSE) return;
+  void DataVariable::setValue(VariableOption_t vo, Float_t val) {
+    if (checkRegistered(vo) == kFALSE) return;
 
-    m_dataMap[_vo]->m_data = _val;
+    m_dataMap[vo]->m_data = val;
   }
 
   /**
    * Set the number of entries for a VariableOption. Be careful with this one.
-   * @param _vo Which VariableOption_t to retrieve the stored data from.
-   * @param _val The value to set for the numer of entries.
+   * @param vo Which VariableOption_t to retrieve the stored data from.
+   * @param val The value to set for the numer of entries.
    */
-  void DataVariable::setEntries(VariableOption_t _vo, UInt_t _val) {
-    if (checkRegistered(_vo) == kFALSE) return;
+  void DataVariable::setEntries(VariableOption_t vo, UInt_t val) {
+    if (checkRegistered(vo) == kFALSE) return;
 
-    m_dataMap[_vo]->m_entries = _val;
+    m_dataMap[vo]->m_entries = val;
   }
 
   /**
    * Set the SQUARE of the error (the internal sumw2 vale). Be cafeful with this one.
-   * @param _vo Which VariableOption_t to retrieve the stored data from.
-   * @param _val The value to use for sumw2.
+   * @param vo Which VariableOption_t to retrieve the stored data from.
+   * @param val The value to use for sumw2.
    */
-  void DataVariable::setErrorSquared(VariableOption_t _vo, Float_t _val) {
-    if (checkRegistered(_vo) == kFALSE) return;
+  void DataVariable::setErrorSquared(VariableOption_t vo, Float_t val) {
+    if (checkRegistered(vo) == kFALSE) return;
 
-    m_dataMap[_vo]->m_sumw2 = _val;
+    m_dataMap[vo]->m_sumw2 = val;
   }
 
   /**
    * Return the number of stored entries VariableOption.
-   * @param _vo Which VariableOption_t to retrieve the stored data from.
+   * @param vo Which VariableOption_t to retrieve the stored data from.
    * @return The numer of stored entries.
    */
-  Int_t DataVariable::getEntries(VariableOption_t _vo) const {
-    if (checkRegistered(_vo) == kFALSE) return 0;
+  Int_t DataVariable::getEntries(VariableOption_t vo) const {
+    if (checkRegistered(vo) == kFALSE) return 0;
 
-    return m_dataMap.at(_vo)->m_entries;
+    return m_dataMap.at(vo)->m_entries;
   }
 
   /**
    * Get pointer to stored histogram for export.
-   * @param _vo Which VariableOption_t to retrieve the stored data from.
+   * @param vo Which VariableOption_t to retrieve the stored data from.
    * @return TH1F histogram pointer.
    */
-  TH1F* DataVariable::getHist(VariableOption_t _vo, Bool_t _silent) {
-    if (checkRegistered(_vo, _silent) == kFALSE) return 0;
+  TH1F* DataVariable::getHist(VariableOption_t vo, Bool_t silent) {
+    if (checkRegistered(vo, silent) == kFALSE) return 0;
 
-    return m_dataMap[_vo]->m_hist;
+    return m_dataMap[vo]->m_hist;
   }
 
   /**
    * Set pointer to stored histogram for export.
-   * @param _vo Which VariableOption_t to retrieve the stored data from.
-   * @param _hist TH1F histogram pointer.
+   * @param vo Which VariableOption_t to retrieve the stored data from.
+   * @param hist TH1F histogram pointer.
    */
-  void DataVariable::setHist(VariableOption_t _vo, TH1F* _hist) {
-    if (checkRegistered(_vo, kFALSE) == kFALSE) return;
+  void DataVariable::setHist(VariableOption_t vo, TH1F* hist) {
+    if (checkRegistered(vo, kFALSE) == kFALSE) return;
 
-    if (m_dataMap[_vo]->m_hist != 0) {
+    if (m_dataMap[vo]->m_hist != 0) {
       Warning("DataVariable::setHist", "Overwriting existing hist!");
-      delete m_dataMap[_vo]->m_hist;
+      delete m_dataMap[vo]->m_hist;
     }
-    m_dataMap[_vo]->m_hist = _hist;
+    m_dataMap[vo]->m_hist = hist;
   }
 
   /**
    * Get pointer to histo title string. This is !=0 if a histogram has been requested but has not yet
    * been made on the heap becasue no Fill call has propagated to it.
-   * @param _vo Which VariableOption_t to retrieve the stored data from.
+   * @param vo Which VariableOption_t to retrieve the stored data from.
    * @return Pointer to std::string of title or 0.
    */
-  std::string* DataVariable::getHistTitle(VariableOption_t _vo) const {
-    if (checkRegistered(_vo, /*_silent*/ kTRUE) == kFALSE) return 0;
+  std::string* DataVariable::getHistTitle(VariableOption_t vo) const {
+    if (checkRegistered(vo, /*silent*/ kTRUE) == kFALSE) return 0;
 
-    return m_dataMap.at(_vo)->m_histoTitle;
+    return m_dataMap.at(vo)->m_histoTitle;
   }
 
   /**
    * Get pointer to stored histogram for export.
-   * @param _vo Which VariableOption_t to retrieve the stored data from.
+   * @param vo Which VariableOption_t to retrieve the stored data from.
    * @return TH2F histogram pointer.
    */
-  // TH2F* DataVariable::getHist2D(VariableOption_t _vo) {
-  //   if ( checkRegistered(_vo) == kFALSE) return 0;
-  //   return m_dataMap[_vo]->m_hist2D;
+  // TH2F* DataVariable::getHist2D(VariableOption_t vo) {
+  //   if ( checkRegistered(vo) == kFALSE) return 0;
+  //   return m_dataMap[vo]->m_hist2D;
   // }
 
   /**
    * Internal call to save a value.
-   * @param _data Pointer to data struct.
-   * @param _value Value to save.
-   * @param _weight Value weight.
+   * @param data Pointer to data struct.
+   * @param value Value to save.
+   * @param weight Value weight.
    */
-  void DataVariable::dataSave(Data* _data, Float_t _value, Float_t _weight) {
-    if (_data == 0) return;
-
-    _data->m_entries++;
-    _data->m_data += (_value * _weight);
-    _data->m_sumw2 += (_value * _weight * _weight);
-    if (_data->m_hist == 0 && _data->m_histoTitle != 0) makeHist(_data);
-    if (_data->m_hist != 0) {
-      static std::mutex m_mutex;
+  void DataVariable::dataSave(Data* data, Float_t value, Float_t weight) {
+    if (data == 0) return;
+
+    data->m_entries++;
+    data->m_data += (value * weight);
+    data->m_sumw2 += (value * weight * weight);
+    if (data->m_hist == 0 && data->m_histoTitle != 0) makeHist(data);
+    if (data->m_hist != 0) {
+      static std::mutex mutex;
       MUTEX_ON
-      _data->m_hist->Fill(_value, _weight);
+      data->m_hist->Fill(value, weight);
       MUTEX_OFF
     }
   }
 
   /**
    * Internal call to buffered a value.
-   * @param _data Pointer to data struct.
-   * @param _value Value to save.
-   * @param _weight Value weight.
+   * @param data Pointer to data struct.
+   * @param value Value to save.
+   * @param weight Value weight.
    */
-  void DataVariable::dataBuffer(Data* _data, Float_t _value, Float_t _weight) {
-    if (_data == 0) return;
+  void DataVariable::dataBuffer(Data* data, Float_t value, Float_t weight) {
+    if (data == 0) return;
 
     // Now we need to keep track of the values and their errors
     //
@@ -360,81 +360,81 @@ namespace TrigCostRootAnalysis {
     // bufferVal is the unweighed sum, it is needed as the raw value to fill the histogram with.
     // (bufferValW / bufferVal) can be used to get the average weight to use when filling the histogram
     //
-    _data->m_bufferVal += _value;
-    _data->m_bufferValW += _value * _weight;
-    _data->m_bufferValW2 += _value * _weight * _weight;
+    data->m_bufferVal += value;
+    data->m_bufferValW += value * weight;
+    data->m_bufferValW2 += value * weight * weight;
 
-    _data->m_usedInEvent = kTRUE;
+    data->m_usedInEvent = kTRUE;
   }
 
   /**
    * Internal call flush the buffered values.
-   * @param _data Pointer to data struct.
+   * @param data Pointer to data struct.
    */
-  void DataVariable::dataSaveBuffer(Data* _data) {
-    if (_data == 0 || _data->m_usedInEvent == kFALSE) return;
+  void DataVariable::dataSaveBuffer(Data* data) {
+    if (data == 0 || data->m_usedInEvent == kFALSE) return;
 
-    _data->m_entries++;
+    data->m_entries++;
 
-    _data->m_data += _data->m_bufferValW;
-    _data->m_sumw2 += _data->m_bufferValW2;
+    data->m_data += data->m_bufferValW;
+    data->m_sumw2 += data->m_bufferValW2;
 
-    if (_data->m_hist == 0 && _data->m_histoTitle != 0) makeHist(_data);
-    if (_data->m_hist != 0) {
-      Float_t _effectiveWeight = 0;
-      if (!isZero(_data->m_bufferVal)) _effectiveWeight = _data->m_bufferValW / _data->m_bufferVal;
+    if (data->m_hist == 0 && data->m_histoTitle != 0) makeHist(data);
+    if (data->m_hist != 0) {
+      Float_t effectiveWeight = 0;
+      if (!isZero(data->m_bufferVal)) effectiveWeight = data->m_bufferValW / data->m_bufferVal;
       //TODO what if m_bufferVal is zero? Could still have a large weight we want on the histogram?
-      static std::mutex m_mutex;
+       static std::mutex mutex;
       MUTEX_ON
-      _data->m_hist->Fill(_data->m_bufferVal, _effectiveWeight);  //TODO double check
+      data->m_hist->Fill(data->m_bufferVal, effectiveWeight);  //TODO double check
       MUTEX_OFF
     }
 
-    _data->m_bufferVal = 0.;
-    _data->m_bufferValW = 0.;
-    _data->m_bufferValW2 = 0.;
-    _data->m_usedInEvent = kFALSE;
+    data->m_bufferVal = 0.;
+    data->m_bufferValW = 0.;
+    data->m_bufferValW2 = 0.;
+    data->m_usedInEvent = kFALSE;
   }
 
   /**
    * Internal call flush the buffered values for averaged quantity.
-   * @param _data Pointer to data struct.
+   * @param data Pointer to data struct.
    */
-  void DataVariable::dataSaveFractionBuffer(Data* _data) {
-    if (_data == 0 || _data->m_usedInEvent == kFALSE) return;
+  void DataVariable::dataSaveFractionBuffer(Data* data) {
+    if (data == 0 || data->m_usedInEvent == kFALSE) return;
 
-    if (isZero(_data->m_denominator) == kTRUE) {
+    if (isZero(data->m_denominator) == kTRUE) {
       if (Config::config().getDisplayMsg(kMsgDivZero) == kTRUE) {
         Warning("DataVariable::dataSaveFractionBuffer", "Denominator of zero for per event fraction of %s [/0]."
                                                         "Make sure you call !=0 setVariableDenominator() before endEvent(). Save skipped.",
                 m_parentDataStore->getNameOfMostRecentCall().c_str());
       }
     } else {
-      _data->m_entries++;
+      data->m_entries++;
 
-      _data->m_data += _data->m_bufferValW / _data->m_denominator;
-      _data->m_sumw2 += _data->m_bufferValW2 / _data->m_denominator;
+      data->m_data += data->m_bufferValW / data->m_denominator;
+      data->m_sumw2 += data->m_bufferValW2 / data->m_denominator;
 
-      if (_data->m_hist == 0 && _data->m_histoTitle != 0) makeHist(_data);
-      if (_data->m_hist != 0) {
-        Float_t _effectiveWeight = 0;
-        if (!isZero(_data->m_bufferVal)) _effectiveWeight = _data->m_bufferValW / _data->m_bufferVal;
+      if (data->m_hist == 0 && data->m_histoTitle != 0) makeHist(data);
+      if (data->m_hist != 0) {
+        Float_t effectiveWeight = 0;
+        if (!isZero(data->m_bufferVal)) effectiveWeight = data->m_bufferValW / data->m_bufferVal;
         //TODO what if m_bufferVal is zero? Could still have a large weight we want on the histogram?
         //NOTE We assume here that the demoninator is weighted hence take the weighted numerator too.
         //If this is ever not the case, may want to put a flag in
-        static std::mutex m_mutex;
+        static std::mutex mutex;
         MUTEX_ON
-        _data->m_hist->Fill(_data->m_bufferValW / _data->m_denominator, _effectiveWeight); //TODO check, do we divide
+        data->m_hist->Fill(data->m_bufferValW / data->m_denominator, effectiveWeight); //TODO check, do we divide
                                                                                            // effW by denom?
         MUTEX_OFF
       }
     }
 
-    _data->m_bufferVal = 0.;
-    _data->m_bufferValW = 0.;
-    _data->m_bufferValW2 = 0.;
-    _data->m_denominator = 0.;
-    _data->m_usedInEvent = kFALSE;
+    data->m_bufferVal = 0.;
+    data->m_bufferValW = 0.;
+    data->m_bufferValW2 = 0.;
+    data->m_denominator = 0.;
+    data->m_usedInEvent = kFALSE;
   }
 
   /**
@@ -445,49 +445,49 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Only create a new histogram on the heap once we're sure it's actually going to be used.
-   * @param _data Pointer to data struct.
+   * @param data Pointer to data struct.
    */
-  void DataVariable::makeHist(Data* _data) {
-    static std::mutex m_mutex;
+  void DataVariable::makeHist(Data* data) {
+    static std::mutex mutex;
     MUTEX_ON
-    std::string _name;
-    CounterBase* _holdingCounter = m_parentDataStore->getParent();
+    std::string name;
+    CounterBase* holdingCounter = m_parentDataStore->getParent();
 
-    if (_holdingCounter != 0) _name += _holdingCounter->getName();
-    if (_name != "") _name = _name.substr(0, 10); // Restrict to 10 characters
-    _name += std::string("_h") + intToString(s_globalHistId++, 6);
+    if (holdingCounter != 0) name += holdingCounter->getName();
+    if (name != "") name = name.substr(0, 10); // Restrict to 10 characters
+    name += std::string("h") + intToString(s_globalHistId++, 6);
     if (Config::config().getIsSet(kHistBinMin) == kTRUE && Config::config().getIsSet(kHistBinMax) == kTRUE) {
       // Special mode - just for making custom plots - specify axis range used for every histo
-      _data->m_hist = new TH1F(_name.c_str(), _data->m_histoTitle->c_str(),
+      data->m_hist = new TH1F(name.c_str(), data->m_histoTitle->c_str(),
                                Config::config().getInt(kHistBins),
                                Config::config().getFloat(kHistBinMin),
                                Config::config().getFloat(kHistBinMax));
     } else {
       // Standard mode - automatic bin widths
-      _data->m_hist = new TH1F(_name.c_str(), _data->m_histoTitle->c_str(), Config::config().getInt(kHistBins), 0, 0);
+      data->m_hist = new TH1F(name.c_str(), data->m_histoTitle->c_str(), Config::config().getInt(kHistBins), 0, 0);
 #if ROOT_VERSION_CODE >= ROOT_VERSION(6, 0, 0)
-      _data->m_hist->SetCanExtend(TH1::kAllAxes);
+      data->m_hist->SetCanExtend(TH1::kAllAxes);
 #else
-      _data->m_hist->SetBit(TH1::kCanRebin, kTRUE);
+      data->m_hist->SetBit(TH1::kCanRebin, kTRUE);
 #endif
     }
     MUTEX_OFF
-    delete _data->m_histoTitle; //No longer need to keep this title floating about, it's stored in this histogram
-    _data->m_histoTitle = 0;
+    delete data->m_histoTitle; //No longer need to keep this title floating about, it's stored in this histogram
+    data->m_histoTitle = 0;
   }
 
   /**
    * Check if map contains Data pointer for given VariableOption.
    * Optimisation note: this is a very high-call-rate function.
-   * @param _vo VariableOption_t to check.
-   * @param _silent Set to true to suppress error messages.
+   * @param vo VariableOption_t to check.
+   * @param silent Set to true to suppress error messages.
    * @return kTRUE if pointer is not null.
    */
-  Bool_t DataVariable::checkRegistered(VariableOption_t _vo, Bool_t _silent) const {
-    if (m_dataMap.at(_vo) == 0) {
-      if (_silent == kFALSE && Config::config().getDisplayMsg(kMsgCannotFindVO) == kTRUE) {
+  Bool_t DataVariable::checkRegistered(VariableOption_t vo, Bool_t silent) const {
+    if (m_dataMap.at(vo) == 0) {
+      if (silent == kFALSE && Config::config().getDisplayMsg(kMsgCannotFindVO) == kTRUE) {
         Error("DataVariable::checkRegistered", "VariableOption_t %s is not registered for this DataStore entry: %s.",
-              VariableOptionStr[_vo].c_str(),
+              VariableOptionStr[vo].c_str(),
               m_parentDataStore->getNameOfMostRecentCall().c_str());
       }
       return kFALSE;
@@ -497,12 +497,12 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Get data pointer for a given VO
-   * @param _vo VariableOption_t to check.
+   * @param vo VariableOption_t to check.
    * @return Data pointer or 0.
    */
-  DataVariable::Data* DataVariable::getData(VariableOption_t _vo) {
-    if (checkRegistered(_vo) == kFALSE) return 0;
+  DataVariable::Data* DataVariable::getData(VariableOption_t vo) {
+    if (checkRegistered(vo) == kFALSE) return 0;
 
-    return m_dataMap[_vo];
+    return m_dataMap[vo];
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/EnergyExtrapolation.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/EnergyExtrapolation.cxx
index 3a170538927c1f0c5597391ba41b0334ba872d54..3d187850a517c536c84f47ebb92415aaea2613b9 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/EnergyExtrapolation.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/EnergyExtrapolation.cxx
@@ -127,49 +127,49 @@ namespace TrigCostRootAnalysis {
     Info("EnergyExtrapolation::loadMenuV5", "Energy extrapolation factor based on result of HLT v5 menu.");
   }
 
-  Float_t EnergyExtrapolation::eval(Float_t _x) {
+  Float_t EnergyExtrapolation::eval(Float_t x) {
     return(m_param[0] +
-           m_param[1] * TMath::Power(_x, 1.) +
-           m_param[2] * TMath::Power(_x, 2.) +
-           m_param[3] * TMath::Power(_x, 3.) +
-           m_param[4] * TMath::Power(_x, 4.) +
-           m_param[5] * TMath::Power(_x, 5.) +
-           m_param[6] * TMath::Power(_x, 6.) +
-           m_param[7] * TMath::Power(_x, 7.) +
-           m_param[8] * TMath::Power(_x, 8.));
+           m_param[1] * TMath::Power(x, 1.) +
+           m_param[2] * TMath::Power(x, 2.) +
+           m_param[3] * TMath::Power(x, 3.) +
+           m_param[4] * TMath::Power(x, 4.) +
+           m_param[5] * TMath::Power(x, 5.) +
+           m_param[6] * TMath::Power(x, 6.) +
+           m_param[7] * TMath::Power(x, 7.) +
+           m_param[8] * TMath::Power(x, 8.));
   }
 
-  Float_t EnergyExtrapolation::getEventWeight(const TrigCostData* _costData) {
+  Float_t EnergyExtrapolation::getEventWeight(const TrigCostData* costData) {
     if (m_enabled == kFALSE) return 1.;
 
-    Float_t _jettyE = 0., _missingE = 0., _muonE = 0.;
+    Float_t jettyE = 0., missingE = 0., muonE = 0.;
     // Loop over all chains
-    for (UInt_t _c = 0; _c < _costData->getNChains(); ++_c) {
+    for (UInt_t c = 0; c < costData->getNChains(); ++c) {
       // Get the name of the chain (Supplying L2 or EF helps, but is not needed)
-      Int_t _chainID = _costData->getChainID(_c);
-      const std::string _chainName = TrigConfInterface::getHLTNameFromChainID(_chainID, _costData->getChainLevel(_c));
-
-      if (m_jettyItems.count(_chainName) && m_jettyItems[_chainName] > _jettyE) {
-        _jettyE = m_jettyItems[_chainName];
-      } else if (m_muonItems.count(_chainName) && m_muonItems[_chainName] > _muonE) {
-        _muonE = m_muonItems[_chainName];
-      } else if (m_missingItems.count(_chainName) && m_missingItems[_chainName] > _missingE) {
-        _missingE = m_missingItems[_chainName];
+      Int_t chainID = costData->getChainID(c);
+      const std::string chainName = TrigConfInterface::getHLTNameFromChainID(chainID, costData->getChainLevel(c));
+
+      if (m_jettyItems.count(chainName) && m_jettyItems[chainName] > jettyE) {
+        jettyE = m_jettyItems[chainName];
+      } else if (m_muonItems.count(chainName) && m_muonItems[chainName] > muonE) {
+        muonE = m_muonItems[chainName];
+      } else if (m_missingItems.count(chainName) && m_missingItems[chainName] > missingE) {
+        missingE = m_missingItems[chainName];
       }
     }
 
-    Float_t _eventMass = _jettyE + _missingE + _muonE;
-    Float_t _extrapolationWeight = eval(_eventMass);
+    Float_t eventMass = jettyE + missingE + muonE;
+    Float_t extrapolationWeight = eval(eventMass);
     if (m_13To5) {
       // This is simply wrong, but no time to approx anything better
-      _extrapolationWeight *= 1.07; // 5->8 (minbias)
-      _extrapolationWeight = 1. / _extrapolationWeight; // Invert
+      extrapolationWeight *= 1.07; // 5->8 (minbias)
+      extrapolationWeight = 1. / extrapolationWeight; // Invert
     }
     if (Config::config().debug()) {
       Info("EnergyExtrapolation::getEventWeight",
            "Event has J:%.0f, M:%.0f, X:%.0f.\tTotal:%.0f -> Extrap. Weight:%.4f",
-           _jettyE, _muonE, _missingE, _eventMass, _extrapolationWeight);
+           jettyE, muonE, missingE, eventMass, extrapolationWeight);
     }
-    return _extrapolationWeight;
+    return extrapolationWeight;
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/LumiCollector.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/LumiCollector.cxx
index 0f730e4931714438025171bf6228543713a33433..8f6953e0ec89d4c65a780dd6fe83d0bf0f841781 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/LumiCollector.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/LumiCollector.cxx
@@ -53,11 +53,11 @@ namespace TrigCostRootAnalysis {
   /**
    * Record for later use the length of this luminosity block. Passing a length of 0 will disable the monitor which
    * will fall-back on its default luminosity block time rather than the more accurate ones from COOL.
-   * @param _lumiBlock The luminosity block
-   * @param _length The length in seconds.
+   * @param lumiBlock The luminosity block
+   * @param length The length in seconds.
    */
-  void LumiCollector::recordEventLumi(Int_t _lumiBlock, Float_t _length) {
-    if (isZero(_length) && m_useDefault == kFALSE) {
+  void LumiCollector::recordEventLumi(Int_t lumiBlock, Float_t length) {
+    if (isZero(length) && m_useDefault == kFALSE) {
       if (Config::config().getDisplayMsg(kMsgNoLumiInfo) == kTRUE) {
         Warning("LumiCollector::recordEventLumi", "No lumi block length info in file. Using default length %i s.",
                 Config::config().getInt(kDefaultLBLength));
@@ -66,21 +66,21 @@ namespace TrigCostRootAnalysis {
     }
 
     if (m_useDefault == kTRUE) {
-      _length = Config::config().getInt(kDefaultLBLength);
+      length = Config::config().getInt(kDefaultLBLength);
     }
 
-    assert(_lumiBlock >= 0);
-    assert(_length > 0 && _length == _length && _length < HUGE_VAL); //Check -ve, NaN, Inf
+    assert(lumiBlock >= 0);
+    assert(length > 0 && length == length && length < HUGE_VAL); //Check -ve, NaN, Inf
 
-    m_dataStore.store(kVarEventsPerLumiblock, _lumiBlock, 1.);
+    m_dataStore.store(kVarEventsPerLumiblock, lumiBlock, 1.);
 
     // Look to see if we've seen this LB yet
-    if (m_lumiLength.count(_lumiBlock) == 0) {
-      m_totalLumiLength += _length;
-      m_lumiLength[ _lumiBlock ] = _length;
+    if (m_lumiLength.count(lumiBlock) == 0) {
+      m_totalLumiLength += length;
+      m_lumiLength[ lumiBlock ] = length;
     }
 
-    m_eventsProcessedPerLB[ _lumiBlock ]++;
+    m_eventsProcessedPerLB[ lumiBlock ]++;
   }
 
   /**
@@ -94,31 +94,31 @@ namespace TrigCostRootAnalysis {
    * Get the time for a supplied lumiblock from internal map. Should the service be disabled, this will return the
    * default lumi block length.
    * @see m_defaultLumiBlockLength
-   * @param _lumiBlock Luminosity block to fetch time for.
+   * @param lumiBlock Luminosity block to fetch time for.
    * @return Length of luminosity block in seconds if present in map, 0 if not present or m_defaultLumiBlockLength if
    *disabled.
    */
-  Float_t LumiCollector::getLumiBlockTime(Int_t _lumiBlock) {
-    assert(_lumiBlock >= 0);
+  Float_t LumiCollector::getLumiBlockTime(Int_t lumiBlock) {
+    assert(lumiBlock >= 0);
 
     if (TrigXMLService::trigXMLService().getParsedRunXML() == kFALSE ||
         Config::config().getInt(kNoLBRescaling) == kTRUE) {
       // Basic mode. No partial-run scaling
-      if (m_lumiLength.count(_lumiBlock) == 1) {
-        return m_lumiLength[_lumiBlock];
+      if (m_lumiLength.count(lumiBlock) == 1) {
+        return m_lumiLength[lumiBlock];
       }
     } else {
       // Advanced mode, use partial-run scaling
-      Float_t _eventsSeen = m_eventsProcessedPerLB[_lumiBlock];
-      Float_t _eventsTotal = TrigXMLService::trigXMLService().getOnlineEventsInLB(_lumiBlock);
-      Float_t _fractionSeen = _eventsSeen / _eventsTotal;
-      if (isZero(_eventsTotal) == kTRUE) _fractionSeen = 0.;
-      if (m_lumiLength.count(_lumiBlock) == 1) {
-        return m_lumiLength[_lumiBlock] * _fractionSeen;
+      Float_t eventsSeen = m_eventsProcessedPerLB[lumiBlock];
+      Float_t eventsTotal = TrigXMLService::trigXMLService().getOnlineEventsInLB(lumiBlock);
+      Float_t fractionSeen = eventsSeen / eventsTotal;
+      if (isZero(eventsTotal) == kTRUE) fractionSeen = 0.;
+      if (m_lumiLength.count(lumiBlock) == 1) {
+        return m_lumiLength[lumiBlock] * fractionSeen;
       }
     }
 
-    Error("LumiCollector::getLumiBlockTime", "Requested length of unknown lumi block %i returning 0.", _lumiBlock);
+    Error("LumiCollector::getLumiBlockTime", "Requested length of unknown lumi block %i returning 0.", lumiBlock);
     return 0;
   }
 
@@ -129,82 +129,82 @@ namespace TrigCostRootAnalysis {
       return m_totalLumiLength;
     } else {
       //Advanced mode // TODO CACHE THIS INFO!
-      Float_t _totalTime = 0.;
-      static Bool_t _doStatistics = kTRUE;
-      std::stringstream _stats;
-      for (IntIntMapIt_t _it = m_eventsProcessedPerLB.begin(); _it != m_eventsProcessedPerLB.end(); ++_it) {
-        Int_t _lb = (*_it).first;
-        Float_t _eventsSeen = m_eventsProcessedPerLB[_lb];
-        Float_t _eventsTotal = TrigXMLService::trigXMLService().getOnlineEventsInLB(_lb);
-        Float_t _fractionSeen = _eventsSeen / _eventsTotal;
-        if (isZero(_eventsTotal) == kTRUE) _fractionSeen = 0.;
-        Float_t _effectiveLBTime = m_lumiLength[_lb] * _fractionSeen;
-        if (_doStatistics) _stats << "[LB:" << _lb << ",Len:" << m_lumiLength[_lb] << "s,Saw:" <<
-            std::setprecision(2) << _fractionSeen * 100. << "%]";
-        _totalTime += _effectiveLBTime;
+      Float_t totalTime = 0.;
+      static Bool_t doStatistics = kTRUE;
+      std::stringstream stats;
+      for (IntIntMapIt_t it = m_eventsProcessedPerLB.begin(); it != m_eventsProcessedPerLB.end(); ++it) {
+        Int_t lb = (*it).first;
+        Float_t eventsSeen = m_eventsProcessedPerLB[lb];
+        Float_t eventsTotal = TrigXMLService::trigXMLService().getOnlineEventsInLB(lb);
+        Float_t fractionSeen = eventsSeen / eventsTotal;
+        if (isZero(eventsTotal) == kTRUE) fractionSeen = 0.;
+        Float_t effectiveLBTime = m_lumiLength[lb] * fractionSeen;
+        if (doStatistics) stats << "[LB:" << lb << ",Len:" << m_lumiLength[lb] << "s,Saw:" <<
+            std::setprecision(2) << fractionSeen * 100. << "%]";
+        totalTime += effectiveLBTime;
       }
-      if (_doStatistics) {
+      if (doStatistics) {
         Info("LumiCollector::getTotalLumiBlockTime",
              "Overall, %.2f%% of %i lumi blocks were processed. Effective time %.2fs",
-             (_totalTime / m_totalLumiLength) * 100., (Int_t) m_eventsProcessedPerLB.size(), _totalTime);
+             (totalTime / m_totalLumiLength) * 100., (Int_t) m_eventsProcessedPerLB.size(), totalTime);
         if (Config::config().debug()) Info("LumiCollector::getTotalLumiBlockTime", "Per LB breakdown: %s",
-                                           _stats.str().c_str());
-        _doStatistics = kFALSE;
+                                           stats.str().c_str());
+        doStatistics = kFALSE;
       }
-      return _totalTime;
+      return totalTime;
     }
   }
 
   void LumiCollector::saveOutput() {
-    Bool_t _doRoot = Config::config().getInt(kOutputRoot);
-    Bool_t _doCanv = Config::config().getInt(kOutputCanvas);
-    Bool_t _doHist = Config::config().getInt(kOutputHist);
-    Bool_t _doImage = Config::config().getInt(kOutputImage);
-    Bool_t _doPng = Config::config().getInt(kOutputPng);
-    Bool_t _doPdf = Config::config().getInt(kOutputPdf);
+    Bool_t doRoot = Config::config().getInt(kOutputRoot);
+    Bool_t doCanv = Config::config().getInt(kOutputCanvas);
+    Bool_t doHist = Config::config().getInt(kOutputHist);
+    Bool_t doImage = Config::config().getInt(kOutputImage);
+    Bool_t doPng = Config::config().getInt(kOutputPng);
+    Bool_t doPdf = Config::config().getInt(kOutputPdf);
 
-    if (_doRoot == kFALSE && _doImage == kFALSE) return;
+    if (doRoot == kFALSE && doImage == kFALSE) return;
 
     //disableROOTMsg();
 
-    TCanvas* _c = new TCanvas();
-    _c->SetLogy(kTRUE);
-    _c->SetBatch(kTRUE);
+    TCanvas* c = new TCanvas();
+    c->SetLogy(kTRUE);
+    c->SetBatch(kTRUE);
 
-    const std::string _outputFolder = Config::config().getStr(kOutputDirectory);
-    const std::string _imgFolder = Config::config().getStr(kOutputImageDirectory);
-    const std::string _summaryFolder = Config::config().getStr(kOutputSummaryDirectory);
-    ConfKey_t _plotName = kVarEventsPerLumiblock;
+    const std::string outputFolder = Config::config().getStr(kOutputDirectory);
+    const std::string imgFolder = Config::config().getStr(kOutputImageDirectory);
+    const std::string summaryFolder = Config::config().getStr(kOutputSummaryDirectory);
+    ConfKey_t plotName = kVarEventsPerLumiblock;
 
-    if (_doRoot) gDirectory->mkdir(_summaryFolder.c_str());
-    if (_doRoot) gDirectory->cd(_summaryFolder.c_str());
+    if (doRoot) gDirectory->mkdir(summaryFolder.c_str());
+    if (doRoot) gDirectory->cd(summaryFolder.c_str());
 
-    const std::string _outputPath = _outputFolder + "/" + _imgFolder + "/" + _summaryFolder;
-    if (_doImage) gSystem->mkdir(_outputPath.c_str(), kTRUE);
+    const std::string outputPath = outputFolder + "/" + imgFolder + "/" + summaryFolder;
+    if (doImage) gSystem->mkdir(outputPath.c_str(), kTRUE);
 
-    TH1F* _h = m_dataStore.getHist(_plotName, kSavePerCall);
+    TH1F* h = m_dataStore.getHist(plotName, kSavePerCall);
 
-    if (_h != 0) {
-      plotHistogram(_h);
+    if (h != 0) {
+      plotHistogram(h);
 
-      if (_doPng) _c->Print(std::string(_outputPath + "/" + Config::config().getStr(_plotName) + ".png").c_str());
-      if (_doPdf) _c->Print(std::string(_outputPath + "/" + Config::config().getStr(_plotName) + ".pdf").c_str());
-      if (_doCanv) _c->Write(std::string("c_" + Config::config().getStr(_plotName)).c_str());
-      _h->GetYaxis()->SetRangeUser(0.1, _h->GetBinContent(_h->GetMaximumBin()) * 1.1);
-      if (_doHist) _h->Write(std::string("h_" + Config::config().getStr(_plotName)).c_str());
+      if (doPng) c->Print(std::string(outputPath + "/" + Config::config().getStr(plotName) + ".png").c_str());
+      if (doPdf) c->Print(std::string(outputPath + "/" + Config::config().getStr(plotName) + ".pdf").c_str());
+      if (doCanv) c->Write(std::string("c_" + Config::config().getStr(plotName)).c_str());
+      h->GetYaxis()->SetRangeUser(0.1, h->GetBinContent(h->GetMaximumBin()) * 1.1);
+      if (doHist) h->Write(std::string("h_" + Config::config().getStr(plotName)).c_str());
     }
 
-    if (_doRoot) gDirectory->cd("..");
+    if (doRoot) gDirectory->cd("..");
 
-    delete _c;
+    delete c;
 
     //enableROOTMsg();
   }
 
   void LumiCollector::print() {
     Info("LumiCollector::print", "Total time of all LBs: %f", m_totalLumiLength);
-    for (IntFloatMapIt_t _it = m_lumiLength.begin(); _it != m_lumiLength.end(); ++_it) {
-      Info("LumiCollector::print", "LB %i has time %f", _it->first, _it->second);
+    for (IntFloatMapIt_t it = m_lumiLength.begin(); it != m_lumiLength.end(); ++it) {
+      Info("LumiCollector::print", "LB %i has time %f", it->first, it->second);
     }
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithm.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithm.cxx
index 34afbad023c07e5510d0fad51a78d2a742eb828e..e8534cc02ecf5d86ce212fbe913185de493a6b5b 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithm.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithm.cxx
@@ -25,7 +25,7 @@ namespace TrigCostRootAnalysis {
   /**
    * Monitor constructor. Sets name and calls base constructor.
    */
-  MonitorAlgorithm::MonitorAlgorithm(const TrigCostData* _costData) : MonitorBase(_costData, "Algorithm") {
+  MonitorAlgorithm::MonitorAlgorithm(const TrigCostData* costData) : MonitorBase(costData, "Algorithm") {
     m_dummyCounter = newCounter(Config::config().getStr(kDummyString), INT_MIN);
   }
 
@@ -33,30 +33,30 @@ namespace TrigCostRootAnalysis {
    * Process new event for this monitor.
    * For algorithms, all sequences are looped over, all individual algorithms in the sequences are looped over.
    * Each algorithm call has low-level information recorded.
-   * @param _weight The event weight.
+   * @param weight The event weight.
    */
-  void MonitorAlgorithm::newEvent(Float_t _weight) {
+  void MonitorAlgorithm::newEvent(Float_t weight) {
     m_timer.start();
     if (Config::config().debug()) Info("MonitorAlgorithm::newEvent", "*** Processing Algorithms ***");
 
     //Now loop over the counter collections;
-    for (CounterMapSetIt_t _cmsIt = m_collectionsToProcess.begin(); _cmsIt != m_collectionsToProcess.end(); ++_cmsIt) {
-      CounterMap_t* _counterMap = *_cmsIt;
+    for (CounterMapSetIt_t cmsIt = m_collectionsToProcess.begin(); cmsIt != m_collectionsToProcess.end(); ++cmsIt) {
+      CounterMap_t* counterMap = *cmsIt;
 
       startEvent();
 
-      std::vector<AlgsInEvent>::iterator _itAlgs = m_algsInEvent.begin();
-      for (; _itAlgs != m_algsInEvent.end(); ++_itAlgs) {
-        CounterBase* _counter = getCounter(_counterMap, _itAlgs->m_algName, _itAlgs->m_algNameID);
+      std::vector<AlgsInEvent>::iterator itAlgs = m_algsInEvent.begin();
+      for (; itAlgs != m_algsInEvent.end(); ++itAlgs) {
+        CounterBase* counter = getCounter(counterMap, itAlgs->m_algName, itAlgs->m_algNameID);
         // If this counter is new, we can set it's secondary name which in this case is its class
-        if (_counter->getCalls() == 0) {
-          _counter->decorate(kDecAlgClassName, _itAlgs->m_algClassName);
+        if (counter->getCalls() == 0) {
+          counter->decorate(kDecAlgClassName, itAlgs->m_algClassName);
         }
-        _counter->processEventCounter(_itAlgs->m_seqD3PDIndex, _itAlgs->m_algD3PDIndex, _weight);
+        counter->processEventCounter(itAlgs->m_seqD3PDIndex, itAlgs->m_algD3PDIndex, weight);
       }
 
       // Do end of event
-      endEvent(_weight);
+      endEvent(weight);
     }
     m_timer.stop();
   }
@@ -66,8 +66,8 @@ namespace TrigCostRootAnalysis {
    * Note these are currently hard-coded. We may want to make them configurable
    * @return If this monitor should be active for a given mode.
    */
-  Bool_t MonitorAlgorithm::getIfActive(ConfKey_t _mode) {
-    switch (_mode) {
+  Bool_t MonitorAlgorithm::getIfActive(ConfKey_t mode) {
+    switch (mode) {
     case kDoAllSummary:       return kTRUE;
 
     case kDoKeySummary:       return kTRUE;
@@ -75,7 +75,7 @@ namespace TrigCostRootAnalysis {
     case kDoLumiBlockSummary: return kTRUE;
 
     default: Error("MonitorAlgorithm::getIfActive", "An invalid summary mode was provided (key %s)",
-                   Config::config().getName(_mode).c_str());
+                   Config::config().getName(mode).c_str());
     }
     return kFALSE;
   }
@@ -86,23 +86,23 @@ namespace TrigCostRootAnalysis {
   void MonitorAlgorithm::saveOutput() {
     m_filterOutput = kTRUE; // Apply any user-specified name filter to output
 
-    VariableOptionVector_t _toSavePlots; //Leave blank = each counter gets asked what hists it contains
-    sharedHistogramOutputRoutine(_toSavePlots);
+    VariableOptionVector_t toSavePlots; //Leave blank = each counter gets asked what hists it contains
+    sharedHistogramOutputRoutine(toSavePlots);
 
-    std::vector<TableColumnFormatter> _toSaveTable;
-    addCommonTableEntries(_toSaveTable);
-    sharedTableOutputRoutine(_toSaveTable);
+    std::vector<TableColumnFormatter> toSaveTable;
+    addCommonTableEntries(toSaveTable);
+    sharedTableOutputRoutine(toSaveTable);
   }
 
   /**
    * Construct new counter of correct derived type, pass back as base type.
    * This function must be implemented by all derived monitor types.
-   * @see MonitorBase::addCounter( const std::string &_name, Int_t _ID )
-   * @param _name Cost reference to name of counter.
-   * @param _ID Reference to ID number of counter.
+   * @see MonitorBase::addCounter( const std::string &name, Int_t ID )
+   * @param name Cost reference to name of counter.
+   * @param ID Reference to ID number of counter.
    * @returns Base class pointer to new counter object of correct serived type.
    */
-  CounterBase* MonitorAlgorithm::newCounter(const std::string& _name, Int_t _ID) {
-    return new CounterAlgorithm(m_costData, _name, _ID, m_detailLevel, (MonitorBase*) this);
+  CounterBase* MonitorAlgorithm::newCounter(const std::string& name, Int_t ID) {
+    return new CounterAlgorithm(m_costData, name, ID, m_detailLevel, (MonitorBase*) this);
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithmChain.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithmChain.cxx
index c6d6fc6a37194cd507028fb808cac28d7124127c..c5fb52d5cfa47f926ad3039c4277f7fa9d431f1c 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithmChain.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithmChain.cxx
@@ -25,7 +25,7 @@ namespace TrigCostRootAnalysis {
   /**
    * Monitor constructor. Sets name and calls base constructor.
    */
-  MonitorAlgorithmChain::MonitorAlgorithmChain(const TrigCostData* _costData) : MonitorBase(_costData,
+  MonitorAlgorithmChain::MonitorAlgorithmChain(const TrigCostData* costData) : MonitorBase(costData,
                                                                                             "Chain_Algorithm") {
     m_dummyCounter = newCounter(Config::config().getStr(kDummyString), INT_MIN);
     allowSameIDCounters();
@@ -34,36 +34,36 @@ namespace TrigCostRootAnalysis {
   /**
    * Process new event for this monitor.
    * For each algorithm-chain combination, record detailed algorithm info
-   * @param _weight The event weight.
+   * @param weight The event weight.
    */
-  void MonitorAlgorithmChain::newEvent(Float_t _weight) {
+  void MonitorAlgorithmChain::newEvent(Float_t weight) {
     m_timer.start();
     if (Config::config().debug()) Info("MonitorAlgorithmChain::newEvent", "*** Processing Algorithms ***");
 
     //Now loop over the counter collections;
-    for (CounterMapSetIt_t _cmsIt = m_collectionsToProcess.begin(); _cmsIt != m_collectionsToProcess.end(); ++_cmsIt) {
-      CounterMap_t* _counterMap = *_cmsIt;
+    for (CounterMapSetIt_t cmsIt = m_collectionsToProcess.begin(); cmsIt != m_collectionsToProcess.end(); ++cmsIt) {
+      CounterMap_t* counterMap = *cmsIt;
 
       startEvent();
 
       // Loop over all algs in event
       getAllAlgsInEvent(getLevel(), m_costData);
-      std::vector<AlgsInEvent>::iterator _itAlgs = m_algsInEvent.begin();
-      for (; _itAlgs != m_algsInEvent.end(); ++_itAlgs) {
+      std::vector<AlgsInEvent>::iterator itAlgs = m_algsInEvent.begin();
+      for (; itAlgs != m_algsInEvent.end(); ++itAlgs) {
         // Here we want a counter which comprises both the chain name and the alg name
-        const std::string _chainAndAlgName = _itAlgs->m_chainName + Config::config().getStr(kDelimatorString) +
-                                             _itAlgs->m_algName;
+        const std::string chainAndAlgName = itAlgs->m_chainName + Config::config().getStr(kDelimatorString) +
+                                            itAlgs->m_algName;
 
-        CounterBase* _counter = getCounter(_counterMap, _chainAndAlgName, _itAlgs->m_algNameID);
+        CounterBase* counter = getCounter(counterMap, chainAndAlgName, itAlgs->m_algNameID);
         // If this counter is new, we can set it's secondary name which in this case is its class
-        if (_counter->getCalls() == 0) {
-          _counter->decorate(kDecAlgClassName, _itAlgs->m_algClassName);
+        if (counter->getCalls() == 0) {
+          counter->decorate(kDecAlgClassName, itAlgs->m_algClassName);
         }
-        _counter->processEventCounter(_itAlgs->m_seqD3PDIndex, _itAlgs->m_algD3PDIndex, _weight);
+        counter->processEventCounter(itAlgs->m_seqD3PDIndex, itAlgs->m_algD3PDIndex, weight);
       }
 
       // Do end of event
-      endEvent(_weight);
+      endEvent(weight);
     }
     m_timer.stop();
   }
@@ -73,8 +73,8 @@ namespace TrigCostRootAnalysis {
    * Note these are currently hard-coded. We may want to make them configurable
    * @return If this monitor should be active for a given mode.
    */
-  Bool_t MonitorAlgorithmChain::getIfActive(ConfKey_t _mode) {
-    switch (_mode) {
+  Bool_t MonitorAlgorithmChain::getIfActive(ConfKey_t mode) {
+    switch (mode) {
     case kDoAllSummary:       return kTRUE;
 
     case kDoKeySummary:       return kTRUE;
@@ -82,7 +82,7 @@ namespace TrigCostRootAnalysis {
     case kDoLumiBlockSummary: return kFALSE;
 
     default: Error("MonitorAlgorithmChain::getIfActive", "An invalid summary mode was provided (key %s)",
-                   Config::config().getName(_mode).c_str());
+                   Config::config().getName(mode).c_str());
     }
     return kFALSE;
   }
@@ -93,23 +93,23 @@ namespace TrigCostRootAnalysis {
   void MonitorAlgorithmChain::saveOutput() {
     m_filterOutput = kTRUE; // Apply any user-specified name filter to output
 
-    VariableOptionVector_t _toSavePlots; //Leave blank = each counter gets asked what hists it contains
-    sharedHistogramOutputRoutine(_toSavePlots);
+    VariableOptionVector_t toSavePlots; //Leave blank = each counter gets asked what hists it contains
+    sharedHistogramOutputRoutine(toSavePlots);
 
-    std::vector<TableColumnFormatter> _toSaveTable;
-    addCommonTableEntries(_toSaveTable);
-    sharedTableOutputRoutine(_toSaveTable);
+    std::vector<TableColumnFormatter> toSaveTable;
+    addCommonTableEntries(toSaveTable);
+    sharedTableOutputRoutine(toSaveTable);
   }
 
   /**
    * Construct new counter of correct derived type, pass back as base type.
    * This function must be implemented by all derived monitor types.
-   * @see MonitorBase::addCounter( const std::string &_name, Int_t _ID )
-   * @param _name Cost reference to name of counter.
-   * @param _ID Reference to ID number of counter.
+   * @see MonitorBase::addCounter( const std::string &_name, Int_t ID )
+   * @param name Cost reference to name of counter.
+   * @param ID Reference to ID number of counter.
    * @returns Base class pointer to new counter object of correct serived type.
    */
-  CounterBase* MonitorAlgorithmChain::newCounter(const std::string& _name, Int_t _ID) {
-    return new CounterAlgorithm(m_costData, _name, _ID, m_detailLevel, (MonitorBase*) this);
+  CounterBase* MonitorAlgorithmChain::newCounter(const std::string& name, Int_t ID) {
+    return new CounterAlgorithm(m_costData, name, ID, m_detailLevel, (MonitorBase*) this);
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithmClass.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithmClass.cxx
index 04443133095cb846e1d1a14a8258f3de626c0b3d..30f0a2dda979b680592f733fcf3620154546d891 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithmClass.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithmClass.cxx
@@ -25,7 +25,7 @@ namespace TrigCostRootAnalysis {
   /**
    * Monitor constructor. Sets name and calls base constructor.
    */
-  MonitorAlgorithmClass::MonitorAlgorithmClass(const TrigCostData* _costData) : MonitorBase(_costData,
+  MonitorAlgorithmClass::MonitorAlgorithmClass(const TrigCostData* costData) : MonitorBase(costData,
                                                                                             "Algorithm_Class") {
     allowSameIDCounters();
   }
@@ -33,29 +33,29 @@ namespace TrigCostRootAnalysis {
   /**
    * Process new event for this monitor.
    * For each algorithm class - record details of the execution
-   * @param _weight The event weight.
+   * @param weight The event weight.
    */
-  void MonitorAlgorithmClass::newEvent(Float_t _weight) {
+  void MonitorAlgorithmClass::newEvent(Float_t weight) {
     m_timer.start();
     if (Config::config().debug()) Info("MonitorAlgorithmClass::newEvent", "*** Processing Algorithms [Class] ***");
 
     //Now loop over the counter collections;
-    for (CounterMapSetIt_t _cmsIt = m_collectionsToProcess.begin(); _cmsIt != m_collectionsToProcess.end(); ++_cmsIt) {
-      CounterMap_t* _counterMap = *_cmsIt;
+    for (CounterMapSetIt_t cmsIt = m_collectionsToProcess.begin(); cmsIt != m_collectionsToProcess.end(); ++cmsIt) {
+      CounterMap_t* counterMap = *cmsIt;
 
       startEvent();
 
       // Loop over all algs in event
-      std::vector<AlgsInEvent>::iterator _itAlgs = m_algsInEvent.begin();
-      for (; _itAlgs != m_algsInEvent.end(); ++_itAlgs) {
+      std::vector<AlgsInEvent>::iterator itAlgs = m_algsInEvent.begin();
+      for (; itAlgs != m_algsInEvent.end(); ++itAlgs) {
         // Here we want a counter which comprises both the chain name and the alg name
-        const std::string _className = _itAlgs->m_algClassName;
-        CounterBase* _counter = getCounter(_counterMap, _className, _itAlgs->m_algNameID);
-        _counter->processEventCounter(_itAlgs->m_seqD3PDIndex, _itAlgs->m_algD3PDIndex, _weight);
+        const std::string className = itAlgs->m_algClassName;
+        CounterBase* counter = getCounter(counterMap, className, itAlgs->m_algNameID);
+        counter->processEventCounter(itAlgs->m_seqD3PDIndex, itAlgs->m_algD3PDIndex, weight);
       }
 
       // Do end of event
-      endEvent(_weight);
+      endEvent(weight);
     }
     m_timer.stop();
   }
@@ -65,8 +65,8 @@ namespace TrigCostRootAnalysis {
    * Note these are currently hard-coded. We may want to make them configurable
    * @return If this monitor should be active for a given mode.
    */
-  Bool_t MonitorAlgorithmClass::getIfActive(ConfKey_t _mode) {
-    switch (_mode) {
+  Bool_t MonitorAlgorithmClass::getIfActive(ConfKey_t mode) {
+    switch (mode) {
     case kDoAllSummary:       return kTRUE;
 
     case kDoKeySummary:       return kTRUE;
@@ -74,7 +74,7 @@ namespace TrigCostRootAnalysis {
     case kDoLumiBlockSummary: return kTRUE;
 
     default: Error("MonitorAlgorithmClass::getIfActive", "An invalid summary mode was provided (key %s)",
-                   Config::config().getName(_mode).c_str());
+                   Config::config().getName(mode).c_str());
     }
     return kFALSE;
   }
@@ -85,23 +85,23 @@ namespace TrigCostRootAnalysis {
   void MonitorAlgorithmClass::saveOutput() {
     m_filterOutput = kTRUE; // Apply any user-specified name filter to output
 
-    VariableOptionVector_t _toSavePlots; //Leave blank = each counter gets asked what hists it contains
-    sharedHistogramOutputRoutine(_toSavePlots);
+    VariableOptionVector_t toSavePlots; //Leave blank = each counter gets asked what hists it contains
+    sharedHistogramOutputRoutine(toSavePlots);
 
-    std::vector<TableColumnFormatter> _toSaveTable;
-    addCommonTableEntries(_toSaveTable);
-    sharedTableOutputRoutine(_toSaveTable);
+    std::vector<TableColumnFormatter> toSaveTable;
+    addCommonTableEntries(toSaveTable);
+    sharedTableOutputRoutine(toSaveTable);
   }
 
   /**
    * Construct new counter of correct derived type, pass back as base type.
    * This function must be implemented by all derived monitor types.
-   * @see MonitorBase::addCounter( const std::string &_name, Int_t _ID )
-   * @param _name Cost reference to name of counter.
-   * @param _ID Reference to ID number of counter.
+   * @see MonitorBase::addCounter( const std::string &_name, Int_t ID )
+   * @param name Cost reference to name of counter.
+   * @param ID Reference to ID number of counter.
    * @returns Base class pointer to new counter object of correct serived type.
    */
-  CounterBase* MonitorAlgorithmClass::newCounter(const std::string& _name, Int_t _ID) {
-    return new CounterAlgorithm(m_costData, _name, _ID, m_detailLevel, (MonitorBase*) this);
+  CounterBase* MonitorAlgorithmClass::newCounter(const std::string& name, Int_t ID) {
+    return new CounterAlgorithm(m_costData, name, ID, m_detailLevel, (MonitorBase*) this);
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithmCommon.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithmCommon.cxx
index 312c638c94cab940ebdbdf483e5899726b89a0ed..71b281963c7b6b5a79e352d72cc127ed634b4743 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithmCommon.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithmCommon.cxx
@@ -31,71 +31,71 @@ namespace TrigCostRootAnalysis {
    * AlgsInEvent is a simple structure to buffer the primary data of all algorithms in an events.
    * It may then be speedily iterated over by all algorithm monitor clients of this data.
    */
-  MonitorAlgorithmCommon::AlgsInEvent::AlgsInEvent(const std::string& _algName,
-                                                   const std::string& _algClassName,
-                                                   const std::string& _seqName,
-                                                   const std::string& _chainName,
-                                                   const std::string& _chainGroup,
-                                                   Int_t _algNameID,
-                                                   Int_t _seqD3PDIndex,
-                                                   Int_t _algD3PDIndex) :
-    m_algName(_algName),
-    m_algClassName(_algClassName),
-    m_seqName(_seqName),
-    m_chainName(_chainName),
-    m_chainGroup(_chainGroup),
-    m_algNameID(_algNameID),
-    m_seqD3PDIndex(_seqD3PDIndex),
-    m_algD3PDIndex(_algD3PDIndex) { /*Nothing here*/}
+  MonitorAlgorithmCommon::AlgsInEvent::AlgsInEvent(const std::string& algName,
+                                                   const std::string& algClassName,
+                                                   const std::string& seqName,
+                                                   const std::string& chainName,
+                                                   const std::string& chainGroup,
+                                                   Int_t algNameID,
+                                                   Int_t seqD3PDIndex,
+                                                   Int_t algD3PDIndex) :
+    m_algName(algName),
+    m_algClassName(algClassName),
+    m_seqName(seqName),
+    m_chainName(chainName),
+    m_chainGroup(chainGroup),
+    m_algNameID(algNameID),
+    m_seqD3PDIndex(seqD3PDIndex),
+    m_algD3PDIndex(algD3PDIndex) { /*Nothing here*/}
 
   /**
    * Populate the static m_algsInEvent vector with basic information of all algorithms run in this event, store this
    *data in
    * AlgsInEvent structs.
    */
-  void MonitorAlgorithmCommon::getAllAlgsInEvent(UInt_t _level, const TrigCostData* _costData) {
+  void MonitorAlgorithmCommon::getAllAlgsInEvent(UInt_t level, const TrigCostData* costData) {
     // Nothing has changed, current list is fine
-    if (m_eventNumber == _costData->getEventNumber() && m_level == _level) return;
+    if (m_eventNumber == costData->getEventNumber() && m_level == level) return;
 
     // Update list of algs for multiple monitors to use
-    m_eventNumber = _costData->getEventNumber();
-    m_level = _level;
+    m_eventNumber = costData->getEventNumber();
+    m_level = level;
     m_algsInEvent.clear();
 
-    for (UInt_t _s = 0; _s < _costData->getNSequences(); ++_s) {
+    for (UInt_t s = 0; s < costData->getNSequences(); ++s) {
       // Get the name of the chain this sequence instance is in (Supplying L2 or EF helps, but is not needed)
-      Int_t _chainID = _costData->getSequenceChannelCounter(_s);
-      const std::string _chainName =
-        TrigConfInterface::getHLTNameFromChainID(_chainID, _costData->getSequenceLevel(_s));
+      Int_t chainID = costData->getSequenceChannelCounter(s);
+      const std::string chainName =
+        TrigConfInterface::getHLTNameFromChainID(chainID, costData->getSequenceLevel(s));
 
       // Did we fail?
-      if (_chainName == Config::config().getStr(kBlankString)) {
+      if (chainName == Config::config().getStr(kBlankString)) {
         Warning("MonitorAlgorithmChain::newEvent", "Skipping Chain ID %i. Cannot get name from current configuration.",
-                _chainID);
+                chainID);
         continue;
       }
 
       // Are we running over this chain?
-      static Bool_t _invertFilter = Config::config().getInt(kPatternsInvert);
-      if (checkPatternNameMonitor(_chainName, _invertFilter, _costData->getSeqIsRerun(_s)) == kFALSE) continue;
+      static Bool_t invertFilter = Config::config().getInt(kPatternsInvert);
+      if (checkPatternNameMonitor(chainName, invertFilter, costData->getSeqIsRerun(s)) == kFALSE) continue;
 
       // Loop over all algorithms in sequence
-      for (UInt_t _a = 0; _a < _costData->getNSeqAlgs(_s); ++_a) {
-        Int_t _seqIndex = _costData->getSequenceIndex(_s);
-        Int_t _seqAlgPos = _costData->getSeqAlgPosition(_s, _a);
+      for (UInt_t a = 0; a < costData->getNSeqAlgs(s); ++a) {
+        Int_t seqIndex = costData->getSequenceIndex(s);
+        Int_t seqAlgPos = costData->getSeqAlgPosition(s, a);
 
-        const std::string _seqName = TrigConfInterface::getHLTSeqNameFromIndex(_seqIndex);
+        const std::string seqName = TrigConfInterface::getHLTSeqNameFromIndex(seqIndex);
 
-        const std::string _algName = TrigConfInterface::getHLTAlgNameFromSeqIDAndAlgPos(_seqIndex, _seqAlgPos);
-        const std::string _algType = TrigConfInterface::getHLTAlgClassNameFromSeqIDAndAlgPos(_seqIndex, _seqAlgPos);
-        Int_t _seqAlgNameHash = TrigConfInterface::getHLTAlgClassNameIDFromSeqIDAndAlgPos(_seqIndex, _seqAlgPos);
+        const std::string algName = TrigConfInterface::getHLTAlgNameFromSeqIDAndAlgPos(seqIndex, seqAlgPos);
+        const std::string algType = TrigConfInterface::getHLTAlgClassNameFromSeqIDAndAlgPos(seqIndex, seqAlgPos);
+        Int_t seqAlgNameHash = TrigConfInterface::getHLTAlgClassNameIDFromSeqIDAndAlgPos(seqIndex, seqAlgPos);
 
         // Not currently used, save some CPU
-        const std::string _chainGroup = ""; // ( TrigConfInterface::getNHLTGroupNamesFromChainID( _chainID ) > 0 ?
-                                            // TrigConfInterface::getHLTGroupNameFromChainID(_chainID, 0) : "");
+        const std::string chainGroup = ""; // ( TrigConfInterface::getNHLTGroupNamesFromChainID( chainID ) > 0 ?
+                                            // TrigConfInterface::getHLTGroupNameFromChainID(chainID, 0) : "");
 
-        m_algsInEvent.push_back(AlgsInEvent(_algName, _algType, _seqName, _chainName, _chainGroup, _seqAlgNameHash, _s,
-                                            _a));
+        m_algsInEvent.push_back(AlgsInEvent(algName, algType, seqName, chainName, chainGroup, seqAlgNameHash, s,
+                                            a));
 
         //TrigCostRootAnalysis::MonitorAlgorithmCommon::AlgsInEvent::AlgsInEvent(const std::string&, const std::string&,
         // const std::string&, const std::string&, Int_t&, UInt_t&, UInt_t&)
@@ -108,52 +108,52 @@ namespace TrigCostRootAnalysis {
   /**
    * List of table entries common to all Algorithm class tables
    */
-  void MonitorAlgorithmCommon::addCommonTableEntries(std::vector<MonitorBase::TableColumnFormatter>& _toSaveTable) {
-    const std::string _slowText = "Calls > " + intToString(Config::config().getInt(kSlowThreshold)) + " ms";
+  void MonitorAlgorithmCommon::addCommonTableEntries(std::vector<MonitorBase::TableColumnFormatter>& toSaveTable) {
+    const std::string slowText = "Calls > " + intToString(Config::config().getInt(kSlowThreshold)) + " ms";
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Raw Active Events",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Raw Active Events",
                                                              "Raw underlying statistics on how many events in which this algorithm was executed.",
                                                              kVarCalls, kSavePerEvent, 0, kFormatOptionUseEntries));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Active Events",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Active Events",
                                                              "How many events in which this algorithm was executed.",
                                                              kVarEventsActive, kSavePerEvent, 0));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Calls/Event",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Calls/Event",
                                                              "Average number of calls made to this algorithm per event.",
                                                              kVarCalls, kSavePerEvent, kVarEventsActive, kSavePerEvent,
                                                              2));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter(_slowText,
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter(slowText,
                                                              "Number of algorithm executions which were particularly slow.",
                                                              kVarCallsSlow, kSavePerEvent, 0));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Event Rate [Hz]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Event Rate [Hz]",
                                                              "Rate in this run range of events with at least one execution of this algorithm.",
                                                              kVarEventsActive, kSavePerEvent, 2,
                                                              kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Call Rate [Hz]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Call Rate [Hz]",
                                                              "Rate in this run range of calls to this algorithm.",
                                                              kVarCalls, kSavePerEvent, 2,
                                                              kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Alg Total Time [s]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Alg Total Time [s]",
                                                              "Total time for this algorithm in this range - CPU + ROS.",
                                                              kVarTime, kSavePerCall, 2, kFormatOptionMiliSecToSec));
 
-    // _toSaveTable.push_back( MonitorBase::TableColumnFormatter("Alg Total Time SPE [s]",
+    // toSaveTable.push_back( MonitorBase::TableColumnFormatter("Alg Total Time SPE [s]",
     //   "Total time for this algorithm in this range - CPU + ROS.",
     //   kVarTime, kSavePerEvent, 2, kFormatOptionMiliSecToSec) );
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Alg Total Time [%]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Alg Total Time [%]",
                                                              "Total time for this algorithm (CPU+ROS) as a percentage of all algorithm executions in this run range.",
                                                              &tableFnChainGetTotalFracTime, 2)); // We can re-use the
                                                                                                  // Chain fn here as
                                                                                                  // vars in both called
                                                                                                  // "time"
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Alg Total Time/Call [ms]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Alg Total Time/Call [ms]",
                                                              "Average execution time per algorithm call in this run range.",
                                                              kVarTime, kSavePerCall, kVarCalls, kSavePerEvent, 2)); // time
                                                                                                                     // savePerCall
@@ -162,42 +162,42 @@ namespace TrigCostRootAnalysis {
                                                                                                                     // savePerEvent
                                                                                                                     // entries
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Alg Total Time/Event [ms]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Alg Total Time/Event [ms]",
                                                              "Average execution time (CPU+ROS) per event for events with at least one execution in this run range.",
                                                              kVarTime, kSavePerEvent, kVarEventsActive, kSavePerEvent,
                                                              2));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Alg First Call Time/Event [ms]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Alg First Call Time/Event [ms]",
                                                              "Average execution time (CPU+ROS) for the first algorithm execution in each event with at lease algorithm call in this run range.",
                                                              kVarFirstTime, kSavePerEvent, kVarEventsActive,
                                                              kSavePerEvent, 2));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("ROS Time/Event [ms]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("ROS Time/Event [ms]",
                                                              "Average time waiting for ROS data per event for  events with at least one execution in this run range.",
                                                              kVarROSTime, kSavePerEvent, kVarEventsActive,
                                                              kSavePerEvent, 2));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Data Request Rate [Hz]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Data Request Rate [Hz]",
                                                              "Rate of calls to the ROS from this algorithm in this run range.",
                                                              kVarROSCalls, kSavePerEvent, 2,
                                                              kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Cached ROB Rate [Hz]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Cached ROB Rate [Hz]",
                                                              "Rate of cached ROB fetches from this algorithm in this run range.",
                                                              kVarROBReqs, kSavePerEvent, 2,
                                                              kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Cached ROB Rate [kB/s]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Cached ROB Rate [kB/s]",
                                                              "Average size of cached ROB data fetches for this algorithm in this run range.",
                                                              kVarROBReqSize, kSavePerEvent, 2,
                                                              kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Retrieved ROB Rate [Hz]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Retrieved ROB Rate [Hz]",
                                                              "Rate of ROB retrievals from this algorithm in this run range.",
                                                              kVarROBRets, kSavePerEvent, 2,
                                                              kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Retrieved ROB Rate [kB/s]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Retrieved ROB Rate [kB/s]",
                                                              "Average size of retrieved ROB data fetches for this algorithm in this run range.",
                                                              kVarROBRetSize, kSavePerEvent, 2,
                                                              kFormatOptionNormaliseWallTime));
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithmSequence.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithmSequence.cxx
index 1f0f78120f10fb1e4b245c6c9c727b9d20e626d8..3aad1ee48e189818d963e86d30c5fcdfd6b3f5fa 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithmSequence.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorAlgorithmSequence.cxx
@@ -25,7 +25,7 @@ namespace TrigCostRootAnalysis {
   /**
    * Monitor constructor. Sets name and calls base constructor.
    */
-  MonitorAlgorithmSequence::MonitorAlgorithmSequence(const TrigCostData* _costData) : MonitorBase(_costData,
+  MonitorAlgorithmSequence::MonitorAlgorithmSequence(const TrigCostData* costData) : MonitorBase(costData,
                                                                                                   "Sequence_Algorithm")
   {
     m_dummyCounter = newCounter(Config::config().getStr(kDummyString), INT_MIN);
@@ -35,34 +35,34 @@ namespace TrigCostRootAnalysis {
   /**
    * Process new event for this monitor.
    * For each algorithm-sequence combination, record detailed algorithm info
-   * @param _weight The event weight.
+   * @param weight The event weight.
    */
-  void MonitorAlgorithmSequence::newEvent(Float_t _weight) {
+  void MonitorAlgorithmSequence::newEvent(Float_t weight) {
     m_timer.start();
     if (Config::config().debug()) Info("MonitorAlgorithmSequence::newEvent", "*** Processing Algorithms ***");
 
     //Now loop over the counter collections;
-    for (CounterMapSetIt_t _cmsIt = m_collectionsToProcess.begin(); _cmsIt != m_collectionsToProcess.end(); ++_cmsIt) {
-      CounterMap_t* _counterMap = *_cmsIt;
+    for (CounterMapSetIt_t cmsIt = m_collectionsToProcess.begin(); cmsIt != m_collectionsToProcess.end(); ++cmsIt) {
+      CounterMap_t* counterMap = *cmsIt;
 
       startEvent();
 
       // Loop over all algs in event
-      std::vector<AlgsInEvent>::iterator _itAlgs = m_algsInEvent.begin();
-      for (; _itAlgs != m_algsInEvent.end(); ++_itAlgs) {
+      std::vector<AlgsInEvent>::iterator itAlgs = m_algsInEvent.begin();
+      for (; itAlgs != m_algsInEvent.end(); ++itAlgs) {
         // Here we want a counter which comprises both the chain name and the alg name
-        const std::string _seqAndAlgName = _itAlgs->m_seqName + Config::config().getStr(kDelimatorString) +
-                                           _itAlgs->m_algName;
-        CounterBase* _counter = getCounter(_counterMap, _seqAndAlgName, _itAlgs->m_algNameID);
+        const std::string seqAndAlgName = itAlgs->m_seqName + Config::config().getStr(kDelimatorString) +
+                                          itAlgs->m_algName;
+        CounterBase* counter = getCounter(counterMap, seqAndAlgName, itAlgs->m_algNameID);
         // If this counter is new, we can set it's secondary name which in this case is its class
-        if (_counter->getCalls() == 0) {
-          _counter->decorate(kDecAlgClassName, _itAlgs->m_algClassName);
+        if (counter->getCalls() == 0) {
+          counter->decorate(kDecAlgClassName, itAlgs->m_algClassName);
         }
-        _counter->processEventCounter(_itAlgs->m_seqD3PDIndex, _itAlgs->m_algD3PDIndex, _weight);
+        counter->processEventCounter(itAlgs->m_seqD3PDIndex, itAlgs->m_algD3PDIndex, weight);
       }
 
       // Do end of event
-      endEvent(_weight);
+      endEvent(weight);
     }
     m_timer.stop();
   }
@@ -72,8 +72,8 @@ namespace TrigCostRootAnalysis {
    * Note these are currently hard-coded. We may want to make them configurable
    * @return If this monitor should be active for a given mode.
    */
-  Bool_t MonitorAlgorithmSequence::getIfActive(ConfKey_t _mode) {
-    switch (_mode) {
+  Bool_t MonitorAlgorithmSequence::getIfActive(ConfKey_t mode) {
+    switch (mode) {
     case kDoAllSummary:       return kTRUE;
 
     case kDoKeySummary:       return kTRUE;
@@ -81,7 +81,7 @@ namespace TrigCostRootAnalysis {
     case kDoLumiBlockSummary: return kFALSE;
 
     default: Error("MonitorAlgorithmSequence::getIfActive", "An invalid summary mode was provided (key %s)",
-                   Config::config().getName(_mode).c_str());
+                   Config::config().getName(mode).c_str());
     }
     return kFALSE;
   }
@@ -92,23 +92,23 @@ namespace TrigCostRootAnalysis {
   void MonitorAlgorithmSequence::saveOutput() {
     m_filterOutput = kTRUE; // Apply any user-specified name filter to output
 
-    VariableOptionVector_t _toSavePlots; //Leave blank = each counter gets asked what hists it contains
-    sharedHistogramOutputRoutine(_toSavePlots);
+    VariableOptionVector_t toSavePlots; //Leave blank = each counter gets asked what hists it contains
+    sharedHistogramOutputRoutine(toSavePlots);
 
-    std::vector<TableColumnFormatter> _toSaveTable;
-    addCommonTableEntries(_toSaveTable);
-    sharedTableOutputRoutine(_toSaveTable);
+    std::vector<TableColumnFormatter> toSaveTable;
+    addCommonTableEntries(toSaveTable);
+    sharedTableOutputRoutine(toSaveTable);
   }
 
   /**
    * Construct new counter of correct derived type, pass back as base type.
    * This function must be implemented by all derived monitor types.
-   * @see MonitorBase::addCounter( const std::string &_name, Int_t _ID )
-   * @param _name Cost reference to name of counter.
-   * @param _ID Reference to ID number of counter.
+   * @see MonitorBase::addCounter( const std::string &name, Int_t ID )
+   * @param name Cost reference to name of counter.
+   * @param ID Reference to ID number of counter.
    * @returns Base class pointer to new counter object of correct serived type.
    */
-  CounterBase* MonitorAlgorithmSequence::newCounter(const std::string& _name, Int_t _ID) {
-    return new CounterAlgorithm(m_costData, _name, _ID, m_detailLevel, (MonitorBase*) this);
+  CounterBase* MonitorAlgorithmSequence::newCounter(const std::string& name, Int_t ID) {
+    return new CounterAlgorithm(m_costData, name, ID, m_detailLevel, (MonitorBase*) this);
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorBase.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorBase.cxx
index 9bb9f61c021212988cbb8ecea8c17affbc3cda28..771a7e4de662ea4d70133488d3b941a2f910a57f 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorBase.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorBase.cxx
@@ -38,9 +38,9 @@ namespace TrigCostRootAnalysis {
    * Sets internal flags based on current configuration.
    * Called by derived implementation on construction.
    */
-  MonitorBase::MonitorBase(const TrigCostData* _costData, std::string _name) :
-    m_costData(_costData),
-    m_name(_name),
+  MonitorBase::MonitorBase(const TrigCostData* costData, std::string name) :
+    m_costData(costData),
+    m_name(name),
     m_level(0),
     m_pass(1),
     m_detailLevel(10),
@@ -55,7 +55,7 @@ namespace TrigCostRootAnalysis {
     m_countersInEvent(),
     m_currentCollectionLBNumber(-1),
     m_currentDBKey(-1, -1, -1),
-    m_timer("Monitor", _name) {
+    m_timer("Monitor", name) {
     m_invertFilter = Config::config().getInt(kPatternsInvert);
     m_isCPUPrediction = (Bool_t) Config::config().getInt(kIsCPUPrediction);
     m_doKeySummary = (Bool_t) Config::config().getInt(kDoKeySummary);
@@ -79,18 +79,18 @@ namespace TrigCostRootAnalysis {
       Info("MonitorBase::~MonitorBase", "Destructing this monitor and all counters within %s L:%i",
            getName().c_str(), getLevel());
     }
-    CounterCollectionIt_t _colIt = m_counterCollections.begin();
-    for (; _colIt != m_counterCollections.end(); ++_colIt) {
+    CounterCollectionIt_t colIt = m_counterCollections.begin();
+    for (; colIt != m_counterCollections.end(); ++colIt) {
       // Loop over all counters in this counter map
-      CounterMapIt_t _counterIt = _colIt->second.begin();
-      for (; _counterIt != _colIt->second.end(); ++_counterIt) {
-        delete _counterIt->second;
+      CounterMapIt_t counterIt = colIt->second.begin();
+      for (; counterIt != colIt->second.end(); ++counterIt) {
+        delete counterIt->second;
       }
     }
     m_counterCollections.clear();
-    for (std::map<std::string, LumiCollector*>::iterator _it = m_collectionLumiCollector.begin();
-         _it != m_collectionLumiCollector.end(); ++_it) {
-      delete _it->second;
+    for (std::map<std::string, LumiCollector*>::iterator it = m_collectionLumiCollector.begin();
+         it != m_collectionLumiCollector.end(); ++it) {
+      delete it->second;
     }
     m_collectionLumiCollector.clear();
     delete m_dummyCounter;
@@ -99,8 +99,8 @@ namespace TrigCostRootAnalysis {
   /**
    * @ param _pass Set which pass through the input files are we on.
    */
-  void MonitorBase::setPass(UInt_t _pass) {
-    m_pass = _pass;
+  void MonitorBase::setPass(UInt_t pass) {
+    m_pass = pass;
   }
 
   /**
@@ -130,22 +130,22 @@ namespace TrigCostRootAnalysis {
    */
   void MonitorBase::collateCounterCollectionsForEvent() {
     // Do we already have this calculated
-    Float_t _lumiLength = m_costData->getLumiLength();
-    Int_t _lumiBlockNumber = m_costData->getLumi();
-    DBKey _key = TrigConfInterface::getCurrentDBKey();
+    Float_t lumiLength = m_costData->getLumiLength();
+    Int_t lumiBlockNumber = m_costData->getLumi();
+    DBKey key = TrigConfInterface::getCurrentDBKey();
 
-    if (m_currentCollectionLBNumber == _lumiBlockNumber && m_currentDBKey == _key) {
+    if (m_currentCollectionLBNumber == lumiBlockNumber && m_currentDBKey == key) {
       // We do not need to recalculate the list of counter collections, but do still need to account for the lumi
       // bookkeeping
-      for (std::set<std::string>::const_iterator _it = m_collectionsToProcessNames.begin();
-           _it != m_collectionsToProcessNames.end(); ++_it) {
-        recordLumi(*_it, _lumiBlockNumber, _lumiLength);
+      for (std::set<std::string>::const_iterator it = m_collectionsToProcessNames.begin();
+           it != m_collectionsToProcessNames.end(); ++it) {
+        recordLumi(*it, lumiBlockNumber, lumiLength);
       }
       return;
     }
 
-    m_currentCollectionLBNumber = _lumiBlockNumber;
-    m_currentDBKey.set(_key.SMK(), _key.L1PSK(), _key.HLTPSK());
+    m_currentCollectionLBNumber = lumiBlockNumber;
+    m_currentDBKey.set(key.SMK(), key.L1PSK(), key.HLTPSK());
 
     // Clear the set of collections to iterate over this event
     m_collectionsToProcess.clear();
@@ -153,13 +153,13 @@ namespace TrigCostRootAnalysis {
 
     // Add the "All" collection. Simplist, just runs over all the events. There may be a lot of events
     if (getIfActive(kDoAllSummary) && m_doAllSummary) {
-      addToCollectionsToProcess(m_allString, _lumiBlockNumber, _lumiLength, kDoAllSummary);
+      addToCollectionsToProcess(m_allString, lumiBlockNumber, lumiLength, kDoAllSummary);
     }
 
     //Active for this monitor?
     if (getIfActive(kDoLumiBlockSummary) && m_doLumiBlockSummary) {
       // Do we look at this lumi block on its own?
-      static Int_t _lbSummaryStart = INT_MIN, _lbSummaryEnd = INT_MIN;
+      static Int_t lbSummaryStart = INT_MIN, lbSummaryEnd = INT_MIN;
 
       // Have we set yet which is the "first" LB we are doing detailed monitoring for.
       if (Config::config().getIsSet(kFullSummaryStartLb) == kFALSE) {
@@ -169,57 +169,57 @@ namespace TrigCostRootAnalysis {
           Config::config().set(kFullSummaryStartLb, Config::config().getInt(kLumiStart), kLocked);
         } else {
           // No lumiStart either... OK let's start from this LB. It may not be the first - but it's our best guess.
-          Config::config().set(kFullSummaryStartLb, _lumiBlockNumber, kLocked);
+          Config::config().set(kFullSummaryStartLb, lumiBlockNumber, kLocked);
         }
       }
 
-      if (_lbSummaryStart == INT_MIN) {
-        _lbSummaryStart = Config::config().getInt(kFullSummaryStartLb);
-        _lbSummaryEnd = _lbSummaryStart +
+      if (lbSummaryStart == INT_MIN) {
+        lbSummaryStart = Config::config().getInt(kFullSummaryStartLb);
+        lbSummaryEnd = lbSummaryStart +
                         ((Config::config().getInt(kNLbFullSummary) - 1) * Config::config().getInt(kNLbFullSkip));
         Info("MonitorBase::collateCounterCollectionsForEvent",
-             "Setting per-LB monitoring from LB %i to %i (every %i LB)", (Int_t) _lbSummaryStart, (Int_t) _lbSummaryEnd,
+             "Setting per-LB monitoring from LB %i to %i (every %i LB)", (Int_t) lbSummaryStart, (Int_t) lbSummaryEnd,
              (Int_t) Config::config().getInt(kNLbFullSkip));
-        assert(_lbSummaryEnd > _lbSummaryStart);
+        assert(lbSummaryEnd > lbSummaryStart);
       }
 
       // Does the current lumiblock fall in the range?
-      if ((Int_t) _lumiBlockNumber >= _lbSummaryStart && (Int_t) _lumiBlockNumber <= _lbSummaryEnd) {
+      if ((Int_t) lumiBlockNumber >= lbSummaryStart && (Int_t) lumiBlockNumber <= lbSummaryEnd) {
         // Is it a multiple of NLbFullSkip?
-        if ((_lumiBlockNumber - _lbSummaryStart) % m_nLbFullSkip == 0) {
-          std::string _LBIdentifier;
-          std::ostringstream _ss;
-          _ss << std::setfill('0') << std::setw(5) << _lumiBlockNumber;
-          _LBIdentifier = m_lumiBlockString + std::string("_") + _ss.str();
-          addToCollectionsToProcess(_LBIdentifier, _lumiBlockNumber, _lumiLength, kDoLumiBlockSummary);
+        if ((lumiBlockNumber - lbSummaryStart) % m_nLbFullSkip == 0) {
+          std::string LBIdentifier;
+          std::ostringstream ss;
+          ss << std::setfill('0') << std::setw(5) << lumiBlockNumber;
+          LBIdentifier = m_lumiBlockString + std::string("_") + ss.str();
+          addToCollectionsToProcess(LBIdentifier, lumiBlockNumber, lumiLength, kDoLumiBlockSummary);
         }
       }
     }
 
     // Are we providing a summary per keyset?
     if (getIfActive(kDoKeySummary) && m_doKeySummary) {
-      Bool_t _doKeySummaryDesicion = kTRUE;
+      Bool_t doKeySummaryDecision = kTRUE;
 
       if (!m_ratesOnly) { // Only apply extra logic if this is not "rates mode"
-        if (m_perKeySummaries.count(_key) == 0) { // Do we not have this summary in the books?
+        if (m_perKeySummaries.count(key) == 0) { // Do we not have this summary in the books?
           if (m_perKeySummaries.size() < (size_t) m_nHLTConfigSummary) {
             // We have not yet reached the max number of key summaries.
-            m_perKeySummaries.insert(_key);
-            m_perKeySummaryLBStart[ _key ] = _lumiBlockNumber;
+            m_perKeySummaries.insert(key);
+            m_perKeySummaryLBStart[ key ] = lumiBlockNumber;
           } else {
-            _doKeySummaryDesicion = kFALSE;
+            doKeySummaryDecision = kFALSE;
           }
         } else { // seen this one before
           // Check LB range
-          Int_t _diff = _lumiBlockNumber - m_perKeySummaryLBStart[ _key ];
-          if (_diff < 0 || _diff >= m_nLBPerHLTConfig) {
-            _doKeySummaryDesicion = kFALSE;
+          Int_t diff = lumiBlockNumber - m_perKeySummaryLBStart[ key ];
+          if (diff < 0 || diff >= m_nLBPerHLTConfig) {
+            doKeySummaryDecision = kFALSE;
           }
         }
       }
 
-      if (_doKeySummaryDesicion == kTRUE) addToCollectionsToProcess(
-          _key.name(), _lumiBlockNumber, _lumiLength, kDoKeySummary);
+      if (doKeySummaryDecision == kTRUE) addToCollectionsToProcess(
+          key.name(), lumiBlockNumber, lumiLength, kDoKeySummary);
     }
 
     // m_collectionsToProcess has been populated, return
@@ -230,14 +230,14 @@ namespace TrigCostRootAnalysis {
    * @return A count of the number of counters in all counter collections.
    */
   UInt_t MonitorBase::getNCounters() {
-    CounterCollectionIt_t _colIt = m_counterCollections.begin();
-    UInt_t _n = 0;
+    CounterCollectionIt_t colIt = m_counterCollections.begin();
+    UInt_t n = 0;
 
-    for (; _colIt != m_counterCollections.end(); ++_colIt) {
+    for (; colIt != m_counterCollections.end(); ++colIt) {
       // Loop over all counters in this counter map
-      _n += _colIt->second.size();
+      n += colIt->second.size();
     }
-    return _n;
+    return n;
   }
 
   /**
@@ -250,36 +250,36 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Adds the counters for this monitor to be processed in this event
-   * @param _name reference to the name of counter collection to add (will be created if does not exist)
-   * @param _lumiBlockNumber Current LB, used for bookkeeping for this CounterCollection
-   * @param _lumiLength Length of current LB, used for bookkeeping for this CounterCollection
+   * @param name reference to the name of counter collection to add (will be created if does not exist)
+   * @param lumiBlockNumber Current LB, used for bookkeeping for this CounterCollection
+   * @param lumiLength Length of current LB, used for bookkeeping for this CounterCollection
    * @param _type Conf key specifying the type of this CounterCollection which may be queried later.
    */
-  void MonitorBase::addToCollectionsToProcess(const std::string& _name, UInt_t _lumiBlockNumber, Float_t _lumiLength,
-                                              const ConfKey_t _type) {
-    m_collectionsToProcess.insert(getCounterCollection(_name, _type));
-    m_collectionsToProcessNames.insert(_name);
-    recordLumi(_name, _lumiBlockNumber, _lumiLength);
+  void MonitorBase::addToCollectionsToProcess(const std::string& name, UInt_t lumiBlockNumber, Float_t lumiLength,
+                                              const ConfKey_t type) {
+    m_collectionsToProcess.insert(getCounterCollection(name, type));
+    m_collectionsToProcessNames.insert(name);
+    recordLumi(name, lumiBlockNumber, lumiLength);
   }
 
   /**
    * Keep track on the event lumi
    */
-  void MonitorBase::recordLumi(const std::string& _name, UInt_t _lumiBlockNumber, Float_t _lumiLength) {
+  void MonitorBase::recordLumi(const std::string& name, UInt_t lumiBlockNumber, Float_t lumiLength) {
     if (m_pass != 1) return; // Only do lumi on the first pass
 
-    if (m_collectionLumiCollector.count(_name) == 0) {
-      m_collectionLumiCollector.insert(std::make_pair(_name, new LumiCollector()));
+    if (m_collectionLumiCollector.count(name) == 0) {
+      m_collectionLumiCollector.insert(std::make_pair(name, new LumiCollector()));
     }
-    m_collectionLumiCollector[ _name ]->recordEventLumi(_lumiBlockNumber, _lumiLength);
+    m_collectionLumiCollector[ name ]->recordEventLumi(lumiBlockNumber, lumiLength);
   }
 
   /**
    * Sets the level of detail for this monitor to use, this is passed on to all counters which are created.
-   * @param _detailLevel Level of detail nominally in the range 0 - 10
+   * @param detailLevel Level of detail nominally in the range 0 - 10
    */
-  void MonitorBase::setDetailLevel(UInt_t _detailLevel) {
-    m_detailLevel = _detailLevel;
+  void MonitorBase::setDetailLevel(UInt_t detailLevel) {
+    m_detailLevel = detailLevel;
   }
 
   /**
@@ -301,26 +301,26 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Apply a check on a counter's string decoration and only export it if an exact match
-   * @param _decoration Key of string decoration to check
-   * @param _value Value of string to match exactly
+   * @param decoration Key of string decoration to check
+   * @param value Value of string to match exactly
    */
-  void MonitorBase::filterOutputOnStrDecoration(ConfKey_t _decoration, const std::string _value) {
-    m_filterOnDecorationValue = _value;
-    m_filterOnDecorationKey = _decoration;
+  void MonitorBase::filterOutputOnStrDecoration(ConfKey_t decoration, const std::string value) {
+    m_filterOnDecorationValue = value;
+    m_filterOnDecorationKey = decoration;
   }
 
   /**
-   * Sends the startEvent call to _one_ counter - assuming that only static counters need resetting.
+   * Sends the startEvent call to one_ counter - assuming that only static counters need resetting.
    * If a counter map is optionlly suplied, the call is sent to all counters in the map
-   * @param _counters Optional map of counters to call startEvent on, if not supplied only the dummy counter is called.
+   * @param counters Optional map of counters to call startEvent on, if not supplied only the dummy counter is called.
    */
-  void MonitorBase::startEvent(CounterMap_t* _counters) {
-    if (_counters == 0 && m_dummyCounter != 0) {
+  void MonitorBase::startEvent(CounterMap_t* counters) {
+    if (counters == 0 && m_dummyCounter != 0) {
       m_dummyCounter->startEvent();
-    } else if (_counters != 0) {
-      CounterMapIt_t _it = _counters->begin();
-      for (; _it != _counters->end(); ++_it) {
-        _it->second->startEvent();
+    } else if (counters != 0) {
+      CounterMapIt_t it = counters->begin();
+      for (; it != counters->end(); ++it) {
+        it->second->startEvent();
       }
     }
   }
@@ -329,10 +329,10 @@ namespace TrigCostRootAnalysis {
    * Sends the endEvent call to all counters which have run in the event (denoted by inserting them into the set
    *m_countersInEvent)
    */
-  void MonitorBase::endEvent(Float_t _weight) {
-    for (CounterSetIt_t _it = m_countersInEvent.begin(); _it != m_countersInEvent.end(); ++_it) {
-      // _it is an iterator over a set of pointers to CounterBase objects
-      (**_it).endEvent(_weight);
+  void MonitorBase::endEvent(Float_t weight) {
+    for (CounterSetIt_t it = m_countersInEvent.begin(); it != m_countersInEvent.end(); ++it) {
+      // it is an iterator over a set of pointers to CounterBase objects
+      (**it).endEvent(weight);
     }
     m_countersInEvent.clear();
   }
@@ -340,8 +340,7 @@ namespace TrigCostRootAnalysis {
   /**
    * This must be inherited to be used
    */
-  Bool_t MonitorBase::getIfActive(ConfKey_t _mode) {
-    UNUSED(_mode);
+  Bool_t MonitorBase::getIfActive(ConfKey_t /*mode*/) {
     Error("MonitorBase::getIfActive", "Function called on base class, you must impliment this in the derived class.");
     return kFALSE;
   }
@@ -353,122 +352,122 @@ namespace TrigCostRootAnalysis {
    * If setup to do so, it can also mimic this hierarchy in the file system. Here, canvases are saved as either PDF or
    *PNG (or both).
    * Be warned, this can create thousands of files and directories if output is not slimmed using --chainPatternsOutput.
-   * @param _toSave a vector of pairs of <string name, VariableOption> where each pair corresponds to a histogram type
+   * @param toSave a vector of pairs of <string name, VariableOption> where each pair corresponds to a histogram type
    *to export.
    */
-  void MonitorBase::sharedHistogramOutputRoutine(VariableOptionVector_t& _toSave) {
-    Bool_t _doRoot = Config::config().getInt(kOutputRoot);
-    Bool_t _doCanv = Config::config().getInt(kOutputCanvas);
-    Bool_t _doHist = Config::config().getInt(kOutputHist);
-    Bool_t _doImage = Config::config().getInt(kOutputImage);
-    Bool_t _doPng = Config::config().getInt(kOutputPng);
-    Bool_t _doPdf = Config::config().getInt(kOutputPdf);
-
-    if (_doRoot == kFALSE && _doImage == kFALSE) return;
-
-    Bool_t _checkEachCounter = kFALSE;
-    if (_toSave.size() == 0) {
-      _checkEachCounter = kTRUE;
+  void MonitorBase::sharedHistogramOutputRoutine(VariableOptionVector_t& toSave) {
+    Bool_t doRoot = Config::config().getInt(kOutputRoot);
+    Bool_t doCanv = Config::config().getInt(kOutputCanvas);
+    Bool_t doHist = Config::config().getInt(kOutputHist);
+    Bool_t doImage = Config::config().getInt(kOutputImage);
+    Bool_t doPng = Config::config().getInt(kOutputPng);
+    Bool_t doPdf = Config::config().getInt(kOutputPdf);
+
+    if (doRoot == kFALSE && doImage == kFALSE) return;
+
+    Bool_t checkEachCounter = kFALSE;
+    if (toSave.size() == 0) {
+      checkEachCounter = kTRUE;
     }
 
-    TCanvas* _c = new TCanvas();
-    _c->SetLogy(kTRUE);
-    _c->SetBatch(kTRUE);
+    TCanvas* c = new TCanvas();
+    c->SetLogy(kTRUE);
+    c->SetBatch(kTRUE);
 
-    const std::string _outputFolder = Config::config().getStr(kOutputDirectory);
-    const std::string _imgFolder = Config::config().getStr(kOutputImageDirectory);
+    const std::string outputFolder = Config::config().getStr(kOutputDirectory);
+    const std::string imgFolder = Config::config().getStr(kOutputImageDirectory);
 
     // Loop over all counter collections
-    CounterCollectionIt_t _colIt = m_counterCollections.begin();
-    for (; _colIt != m_counterCollections.end(); ++_colIt) {
-      CounterMapIt_t _mapIt = _colIt->second.begin();
-      std::string _counterCollectionName = _colIt->first;
+    CounterCollectionIt_t colIt = m_counterCollections.begin();
+    for (; colIt != m_counterCollections.end(); ++colIt) {
+      CounterMapIt_t mapIt = colIt->second.begin();
+      std::string counterCollectionName = colIt->first;
 
       // For the counter collection
       disableROOTMsg();
-      if (_doRoot) gDirectory->mkdir(_counterCollectionName.c_str());
-      if (_doRoot) gDirectory->cd(_counterCollectionName.c_str());
+      if (doRoot) gDirectory->mkdir(counterCollectionName.c_str());
+      if (doRoot) gDirectory->cd(counterCollectionName.c_str());
       enableROOTMsg();
 
       // For the monitor
-      if (_doRoot) gDirectory->mkdir(std::string(getName() + "_" + getLevelStr()).c_str());
-      if (_doRoot) gDirectory->cd(std::string(getName() + "_" + getLevelStr()).c_str());
+      if (doRoot) gDirectory->mkdir(std::string(getName() + "_" + getLevelStr()).c_str());
+      if (doRoot) gDirectory->cd(std::string(getName() + "_" + getLevelStr()).c_str());
 
-      for (; _mapIt != _colIt->second.end(); ++_mapIt) {
-        CounterBase* _TCCB = _mapIt->second;
+      for (; mapIt != colIt->second.end(); ++mapIt) {
+        CounterBase* TCCB = mapIt->second;
 
         // Check if we are saving this
-        if (m_filterOutput && checkPatternNameOutput(_TCCB->getName(), m_invertFilter) == kFALSE) continue;
+        if (m_filterOutput && checkPatternNameOutput(TCCB->getName(), m_invertFilter) == kFALSE) continue;
 
         // Check if there is any content
-        if (_TCCB->getValueExists(kVarCalls, kSavePerEvent) == kTRUE) {
-          if (_TCCB->getValue(kVarCalls, kSavePerEvent) == 0) continue;
+        if (TCCB->getValueExists(kVarCalls, kSavePerEvent) == kTRUE) {
+          if (TCCB->getValue(kVarCalls, kSavePerEvent) == 0) continue;
         }
 
-        const std::string _outputPath = _outputFolder + "/"
-                                        + _imgFolder + "/"
-                                        + _counterCollectionName + "/"
+        const std::string outputPath = outputFolder + "/"
+                                        + imgFolder + "/"
+                                        + counterCollectionName + "/"
                                         + getName() + "_" + getLevelStr() + "/"
-                                        + _TCCB->getName();
+                                        + TCCB->getName();
 
-        std::string _outputName = _TCCB->getName();
-        checkForIllegalCharacters(_outputName, /* , */ kTRUE, /* ' */ kTRUE, /* : */ kTRUE);
+        std::string outputName = TCCB->getName();
+        checkForIllegalCharacters(outputName, /* , */ kTRUE, /* ' */ kTRUE, /* : */ kTRUE);
 
-        if (_checkEachCounter == kTRUE) { // Query each counter
-          _toSave = _TCCB->getAllHistograms();
+        if (checkEachCounter == kTRUE) { // Query each counter
+          toSave = TCCB->getAllHistograms();
         }
-        if (_toSave.size() == 0) {
-          //Info("MonitorBase::sharedHistogramOutputRoutine","No filled hist for %s", _outputPath.c_str());
+        if (toSave.size() == 0) {
+          //Info("MonitorBase::sharedHistogramOutputRoutine","No filled hist for %s", outputPath.c_str());
           continue; // Nothing to save here
         }
 
-        if (_doImage) gSystem->mkdir(_outputPath.c_str(), kTRUE);
-        if (_doRoot) gDirectory->mkdir(_outputName.c_str());
-        if (_doRoot) gDirectory->cd(_outputName.c_str());
+        if (doImage) gSystem->mkdir(outputPath.c_str(), kTRUE);
+        if (doRoot) gDirectory->mkdir(outputName.c_str());
+        if (doRoot) gDirectory->cd(outputName.c_str());
 
-        for (UInt_t _i = 0; _i < _toSave.size(); ++_i) {
-          const std::string _plotName = constructPlotName(_mapIt->second, _toSave[_i]);
-          TH1F* _h = _TCCB->getHist(_toSave[_i]);
+        for (UInt_t i = 0; i < toSave.size(); ++i) {
+          const std::string plotName = constructPlotName(mapIt->second, toSave[i]);
+          TH1F* h = TCCB->getHist(toSave[i]);
 
-          if (_h == 0 || _h->GetEntries() == 0) {
+          if (h == 0 || h->GetEntries() == 0) {
             if (Config::config().debug()) {
-              Info("MonitorBase::sharedHistogramOutputRoutine", "Skiping save of empty histogram %s",
-                   _plotName.c_str());
+              Info("MonitorBase::sharedHistogramOutputRoutine", "Skipping save of empty histogram %s",
+                   plotName.c_str());
             }
             continue; // Do not save empty histos
           }
 
-          plotHistogram(_h);
+          plotHistogram(h);
           // Rename for better finding later
-          _h->SetName(std::string("h_" + _plotName).c_str());
-          plotText(0.20, 0.85, std::string(m_name + ": " + _TCCB->getName()).c_str());
+          h->SetName(std::string("h_" + plotName).c_str());
+          plotText(0.20, 0.85, std::string(m_name + ": " + TCCB->getName()).c_str());
 
           disableROOTMsg();
-          if (_doPng) _c->Print(std::string(_outputPath + "/" + _plotName + ".png").c_str());
-          if (_doPdf) _c->Print(std::string(_outputPath + "/" + _plotName + ".pdf").c_str());
+          if (doPng) c->Print(std::string(outputPath + "/" + plotName + ".png").c_str());
+          if (doPdf) c->Print(std::string(outputPath + "/" + plotName + ".pdf").c_str());
           enableROOTMsg();
-          if (_doCanv) _c->Write(std::string("c_" + _plotName).c_str());
+          if (doCanv) c->Write(std::string("c_" + plotName).c_str());
           // Important - if we do not set the range here - the java web display will mess up
-          Float_t _min = _h->GetBinContent(_h->GetMinimumBin()) * 0.9;
-          _h->GetYaxis()->SetRangeUser(_min, _h->GetBinContent(_h->GetMaximumBin()) * 1.1);
-          // Float_t _max = _h->GetBinContent(h->GetMaximumBin());
-          // Float_t _min = _h->GetBinContent(h->GetMaximumBin());
-          // if (!isEqual(_max, _min) && !isZero(_min) && _min > 0 && (_max/_min) > 100. ) {
-          //   _c->SetLogy(kTRUE); // For large Y scales
+          Float_t min = h->GetBinContent(h->GetMinimumBin()) * 0.9;
+          h->GetYaxis()->SetRangeUser(min, h->GetBinContent(h->GetMaximumBin()) * 1.1);
+          // Float_t max = h->GetBinContent(h->GetMaximumBin());
+          // Float_t min = h->GetBinContent(h->GetMaximumBin());
+          // if (!isEqual(max, min) && !isZero(min) && min > 0 && (max/min) > 100. ) {
+          //   c->SetLogy(kTRUE); // For large Y scales
           // }
 
-          if (_doHist) _h->Write(std::string("h_" + _plotName).c_str());
+          if (doHist) h->Write(std::string("h_" + plotName).c_str());
         }
 
-        if (_doRoot) gDirectory->cd("..");
+        if (doRoot) gDirectory->cd("..");
       }
 
-      if (_doRoot) gDirectory->cd("..");
-      if (_doRoot) gDirectory->cd("..");
+      if (doRoot) gDirectory->cd("..");
+      if (doRoot) gDirectory->cd("..");
     }
 
-    if (_checkEachCounter == kTRUE) _toSave.clear();
-    delete _c;
+    if (checkEachCounter == kTRUE) toSave.clear();
+    delete c;
   }
 
   /**
@@ -479,77 +478,77 @@ namespace TrigCostRootAnalysis {
    *values to be saved in the table.
    * @see FormatterOption
    * @see VariableOption
-   * @param _toSave a vector of TableColumnFormatter objects which have been setup to give the desired table output.
+   * @param toSave a vector of TableColumnFormatter objects which have been setup to give the desired table output.
    */
-  void MonitorBase::sharedTableOutputRoutine(const std::vector<TableColumnFormatter>& _toSave) {
+  void MonitorBase::sharedTableOutputRoutine(const std::vector<TableColumnFormatter>& toSave) {
     if (Config::config().getInt(kOutputCsv) == kFALSE) return;
 
     // Save tables. Loop over counter collections.
-    CounterCollectionNonConstIt_t _colIt = m_counterCollections.begin();
-    for (; _colIt != m_counterCollections.end(); ++_colIt) {
-      std::string _counterCollectionName = _colIt->first;
-      CounterMap_t* _counterMap = &(_colIt->second);
-      CounterMapIt_t _counterMapIt = _colIt->second.begin();
+    CounterCollectionNonConstIt_t colIt = m_counterCollections.begin();
+    for (; colIt != m_counterCollections.end(); ++colIt) {
+      std::string counterCollectionName = colIt->first;
+      CounterMap_t* counterMap = &(colIt->second);
+      CounterMapIt_t counterMapIt = colIt->second.begin();
 
       // Skip if there are no counters to process
-      if (_counterMap->size() == 0) continue;
+      if (counterMap->size() == 0) continue;
       // Skip if there are no counters passing decoration requirement
       if (m_filterOutput && m_filterOnDecorationValue != Config::config().getStr(kBlankString)) {
-        Bool_t _stuffToWrite = kFALSE;
-        for (; _counterMapIt != _colIt->second.end(); ++_counterMapIt) {
-          if (_counterMapIt->second->getStrDecoration(m_filterOnDecorationKey) == m_filterOnDecorationValue) {
-            _stuffToWrite = kTRUE;
+        Bool_t stuffToWrite = kFALSE;
+        for (; counterMapIt != colIt->second.end(); ++counterMapIt) {
+          if (counterMapIt->second->getStrDecoration(m_filterOnDecorationKey) == m_filterOnDecorationValue) {
+            stuffToWrite = kTRUE;
             break;
           }
         }
-        if (_stuffToWrite == kFALSE) continue;
+        if (stuffToWrite == kFALSE) continue;
       }
 
-      const std::string _outputFolder = Config::config().getStr(kOutputDirectory) + "/" + Config::config().getStr(
+      const std::string outputFolder = Config::config().getStr(kOutputDirectory) + "/" + Config::config().getStr(
         kOutputCSVDirectory);
-      gSystem->mkdir(_outputFolder.c_str(), kTRUE);
+      gSystem->mkdir(outputFolder.c_str(), kTRUE);
 
-      const std::string _tableName = _outputFolder
+      const std::string tableName = outputFolder
                                      + "/Table_"
                                      + getName() + "_"
                                      + getLevelStr() + "_"
-                                     + _counterCollectionName
+                                     + counterCollectionName
                                      + ".csv";
-      std::ofstream _fout;
-      _fout.open(_tableName.c_str());
-      _fout << std::fixed; // Use fixed width output
+      std::ofstream fout;
+      fout.open(tableName.c_str());
+      fout << std::fixed; // Use fixed width output
 
       if (Config::config().debug()) {
         Info("MonitorBase::sharedTableOutputRoutine",
              "Doing table output with path %s, %u columns, %u (potential) rows.",
-             _tableName.c_str(), (UInt_t) _toSave.size(), (UInt_t) _colIt->second.size());
+             tableName.c_str(), (UInt_t) toSave.size(), (UInt_t) colIt->second.size());
       }
 
       // Do the title line. First column is always the counter's name.
-      _fout << "Name,";
-      for (UInt_t _i = 0; _i < _toSave.size(); ++_i) {
-        checkForIllegalCharacters(_toSave[_i].m_columnName, /* , */ kTRUE, /* ' */ kTRUE, /* : */ kFALSE);
-        _fout << _toSave[_i].m_columnName;
-        if (_i != _toSave.size() - 1) _fout << ",";
-        else _fout << std::endl;
+      fout << "Name,";
+      for (UInt_t i = 0; i < toSave.size(); ++i) {
+        checkForIllegalCharacters(toSave[i].m_columnName, /* , */ kTRUE, /* ' */ kTRUE, /* : */ kFALSE);
+        fout << toSave[i].m_columnName;
+        if (i != toSave.size() - 1) fout << ",";
+        else fout << std::endl;
       }
 
       // Do the second line, this contains the tooltip descriptions
-      _fout << ",";
-      for (UInt_t _i = 0; _i < _toSave.size(); ++_i) {
-        checkForIllegalCharacters(_toSave[_i].m_tooltip, /* , */ kTRUE, /* ' */ kTRUE, /* : */ kFALSE);
-        _fout << _toSave[_i].m_tooltip;
-        if (_i != _toSave.size() - 1) _fout << ",";
-        else _fout << std::endl;
+      fout << ",";
+      for (UInt_t i = 0; i < toSave.size(); ++i) {
+        checkForIllegalCharacters(toSave[i].m_tooltip, /* , */ kTRUE, /* ' */ kTRUE, /* : */ kFALSE);
+        fout << toSave[i].m_tooltip;
+        if (i != toSave.size() - 1) fout << ",";
+        else fout << std::endl;
       }
 
       // Loop over all counters and add their row to the table.
-      for (_counterMapIt = _colIt->second.begin(); _counterMapIt != _colIt->second.end(); ++_counterMapIt) {
-        CounterBase* _TCCB = _counterMapIt->second;
-        outputTableRow(_TCCB, _fout, _toSave, _counterMap, _counterCollectionName);
+      for (counterMapIt = colIt->second.begin(); counterMapIt != colIt->second.end(); ++counterMapIt) {
+        CounterBase* TCCB = counterMapIt->second;
+        outputTableRow(TCCB, fout, toSave, counterMap, counterCollectionName);
       }
 
-      _fout.close();
+      fout.close();
     }
   }
 
@@ -560,35 +559,35 @@ namespace TrigCostRootAnalysis {
    *spaces.
    * Single quotes - ' - are not allowed as these strings are echo'd into javascript fields. They are replaced with -
    *(not ideal).
-   * @param _toCheck String to parse for illegal characters. Note - this is modified.
-   * @param _checkComma True to replace comma's with spaces
-   * @param _checkApostrophe True to replace single quotes with hyphens
-   * @param _checkColon True to replace colons with underscrores
+   * @param toCheck String to parse for illegal characters. Note - this is modified.
+   * @param checkComma True to replace comma's with spaces
+   * @param checkApostrophe True to replace single quotes with hyphens
+   * @param checkColon True to replace colons with underscrores
    */
-  void MonitorBase::checkForIllegalCharacters(std::string& _toClean, Bool_t _checkComma, Bool_t _checkApostrophe,
-                                              Bool_t _checkColon) {
-    std::string _before = _toClean;
-    if (_checkComma && _toClean.find(",") != std::string::npos) {
-      std::replace(_toClean.begin(), _toClean.end(), ',', ' ');
+  void MonitorBase::checkForIllegalCharacters(std::string& toClean, Bool_t checkComma, Bool_t checkApostrophe,
+                                              Bool_t checkColon) {
+    std::string before = toClean;
+    if (checkComma && toClean.find(",") != std::string::npos) {
+      std::replace(toClean.begin(), toClean.end(), ',', ' ');
       if (Config::config().getDisplayMsg(kMsgIllegalCharacters) == kTRUE) {
         Warning("MonitorBase::checkForIllegalCharacters",
                 "Titles, tooltips and data are stored in CSV, they cannot contain ',' changing %s[%s -> %s]",
-                getName().c_str(), _before.c_str(), _toClean.c_str());
+                getName().c_str(), before.c_str(), toClean.c_str());
       }
     }
-    if (_checkApostrophe && _toClean.find("'") != std::string::npos) {
-      std::replace(_toClean.begin(), _toClean.end(), '\'', '-');
+    if (checkApostrophe && toClean.find("'") != std::string::npos) {
+      std::replace(toClean.begin(), toClean.end(), '\'', '-');
       if (Config::config().getDisplayMsg(kMsgIllegalCharacters) == kTRUE) {
         Warning("MonitorBase::checkForIllegalCharacters",
                 "Titles, tooltips and data cannot contain single quotes, messes up latter javascript, changing %s[%s -> %s]",
-                getName().c_str(), _before.c_str(), _toClean.c_str());
+                getName().c_str(), before.c_str(), toClean.c_str());
       }
     }
-    if (_checkColon && _toClean.find(":") != std::string::npos) {
-      std::replace(_toClean.begin(), _toClean.end(), ':', '_');
+    if (checkColon && toClean.find(":") != std::string::npos) {
+      std::replace(toClean.begin(), toClean.end(), ':', '_');
       if (Config::config().getDisplayMsg(kMsgIllegalCharacters) == kTRUE) {
         Warning("MonitorBase::checkForIllegalCharacters", "TDirectories, cannot contain \":\" changing %s[%s -> %s]",
-                getName().c_str(), _before.c_str(), _toClean.c_str());
+                getName().c_str(), before.c_str(), toClean.c_str());
       }
     }
   }
@@ -598,140 +597,140 @@ namespace TrigCostRootAnalysis {
    * @see sharedTableOutputRoutine
    * @see FormatterOption
    * @see VariableOption
-   * @param _TCCB Pointer to counter object
+   * @param TCCB Pointer to counter object
    */
-  void MonitorBase::outputTableRow(CounterBase* _TCCB,
-                                   std::ofstream& _fout,
-                                   const std::vector<TableColumnFormatter>& _toSave,
-                                   CounterMap_t* _counterMap,
-                                   std::string& _counterCollectionName) {
-    std::ios::fmtflags _foutFlags(_fout.flags());
+  void MonitorBase::outputTableRow(CounterBase* TCCB,
+                                   std::ofstream& fout,
+                                   const std::vector<TableColumnFormatter>& toSave,
+                                   CounterMap_t* counterMap,
+                                   std::string& counterCollectionName) {
+    std::ios::fmtflags foutFlags(fout.flags());
 
     // Check if we are saving this
-    if (m_filterOutput && checkPatternNameOutput(_TCCB->getName(), m_invertFilter) == kFALSE) return;
+    if (m_filterOutput && checkPatternNameOutput(TCCB->getName(), m_invertFilter) == kFALSE) return;
 
     if (m_filterOutput && m_filterOnDecorationValue != Config::config().getStr(kBlankString)) {
-      if (_TCCB->getStrDecoration(m_filterOnDecorationKey) != m_filterOnDecorationValue) return;
+      if (TCCB->getStrDecoration(m_filterOnDecorationKey) != m_filterOnDecorationValue) return;
     }
 
     // Check if there is any content
-    if (_TCCB->getValueExists(kVarCalls, kSavePerEvent) == kTRUE) {
-      if (_TCCB->getValue(kVarCalls, kSavePerEvent) == 0) return;
+    if (TCCB->getValueExists(kVarCalls, kSavePerEvent) == kTRUE) {
+      if (TCCB->getValue(kVarCalls, kSavePerEvent) == 0) return;
     }
 
     // Output name
-    std::string _rowName = _TCCB->getName();
-    checkForIllegalCharacters(_rowName, /* , */ kTRUE, /* ' */ kTRUE, /* : */ kTRUE);
-    _fout << _rowName << ",";
+    std::string rowName = TCCB->getName();
+    checkForIllegalCharacters(rowName, /* , */ kTRUE, /* ' */ kTRUE, /* : */ kTRUE);
+    fout << rowName << ",";
     // Output data
-    for (UInt_t _i = 0; _i < _toSave.size(); ++_i) {
-      std::string _stringValue = "";
-      Float_t _value = 0., _entries = 0.;
+    for (UInt_t i = 0; i < toSave.size(); ++i) {
+      std::string stringValue = "";
+      Float_t value = 0., entries = 0.;
 
       // If using a Float_t function pointer
-      if (_toSave[_i].m_functionPtr != 0) {
+      if (toSave[i].m_functionPtr != 0) {
         if (Config::config().debug()) {
           Info("MonitorBase::outputTableRow", "\tDoing table cell %s via Float_t FnPtr %lu",
-               _toSave[_i].m_columnName.c_str(),
-               (ULong_t) _toSave[_i].m_functionPtr);
+               toSave[i].m_columnName.c_str(),
+               (ULong_t) toSave[i].m_functionPtr);
         }
-        _value = _toSave[_i].m_functionPtr(_counterMap, _TCCB); // Use this function pointer to get the value to save.
+        value = toSave[i].m_functionPtr(counterMap, TCCB); // Use this function pointer to get the value to save.
         // If using a std::string function pointer
-      } else if (_toSave[_i].m_functionPtrStr != 0) {
+      } else if (toSave[i].m_functionPtrStr != 0) {
         if (Config::config().debug()) {
           Info("MonitorBase::outputTableRow", "\tDoing table cell %s via std::string FnPtr %lu",
-               _toSave[_i].m_columnName.c_str(),
-               (ULong_t) _toSave[_i].m_functionPtrStr);
+               toSave[i].m_columnName.c_str(),
+               (ULong_t) toSave[i].m_functionPtrStr);
         }
-        _stringValue = _toSave[_i].m_functionPtrStr(_counterMap, _TCCB);
+        stringValue = toSave[i].m_functionPtrStr(counterMap, TCCB);
         // If using a std::string decoration
-      } else if (_toSave[_i].m_formatOption == kFormatOptionUseStringDecoration) {
+      } else if (toSave[i].m_formatOption == kFormatOptionUseStringDecoration) {
         if (Config::config().debug()) {
           Info("MonitorBase::outputTableRow", "\t\tDoing table cell %s via std::string decoration %s",
-               _toSave[_i].m_columnName.c_str(),
-               Config::config().getStr(_toSave[_i].m_dataVariable).c_str());
+               toSave[i].m_columnName.c_str(),
+               Config::config().getStr(toSave[i].m_dataVariable).c_str());
         }
-        _stringValue = _TCCB->getStrDecoration(_toSave[_i].m_dataVariable);
+        stringValue = TCCB->getStrDecoration(toSave[i].m_dataVariable);
         // If using Float_t decoration
-      } else if (_toSave[_i].m_formatOption == kFormatOptionUseFloatDecoration) {
+      } else if (toSave[i].m_formatOption == kFormatOptionUseFloatDecoration) {
         if (Config::config().debug()) {
           Info("MonitorBase::outputTableRow", "\tDoing table cell %s via Float_t decoration %s",
-               _toSave[_i].m_columnName.c_str(),
-               Config::config().getStr(_toSave[_i].m_dataVariable).c_str());
+               toSave[i].m_columnName.c_str(),
+               Config::config().getStr(toSave[i].m_dataVariable).c_str());
         }
-        _value = _TCCB->getDecoration(_toSave[_i].m_dataVariable);
+        value = TCCB->getDecoration(toSave[i].m_dataVariable);
         // If using Int_t decoration
-      } else if (_toSave[_i].m_formatOption == kFormatOptionUseIntDecoration) {
+      } else if (toSave[i].m_formatOption == kFormatOptionUseIntDecoration) {
         if (Config::config().debug()) {
           Info("MonitorBase::outputTableRow", "\tDoing table cell %s via Int_t decoration %s",
-               _toSave[_i].m_columnName.c_str(),
-               Config::config().getStr(_toSave[_i].m_dataVariable).c_str());
+               toSave[i].m_columnName.c_str(),
+               Config::config().getStr(toSave[i].m_dataVariable).c_str());
         }
-        _value = _TCCB->getIntDecoration(_toSave[_i].m_dataVariable);
+        value = TCCB->getIntDecoration(toSave[i].m_dataVariable);
         // Otherwise do a direct fetch of stored data
       } else {
         if (Config::config().debug()) {
           Info("MonitorBase::outputTableRow", "\tDoing table cell %s via Float_t DataVariable %s",
-               _toSave[_i].m_columnName.c_str(),
-               Config::config().getStr(_toSave[_i].m_dataVariable).c_str());
+               toSave[i].m_columnName.c_str(),
+               Config::config().getStr(toSave[i].m_dataVariable).c_str());
         }
-        _value = _TCCB->getValue(_toSave[_i].m_dataVariable, _toSave[_i].m_dataVO);
-        _entries = _TCCB->getEntries(_toSave[_i].m_dataVariable, _toSave[_i].m_dataVO);
+        value = TCCB->getValue(toSave[i].m_dataVariable, toSave[i].m_dataVO);
+        entries = TCCB->getEntries(toSave[i].m_dataVariable, toSave[i].m_dataVO);
 
         // Check if we are supposed to divide through by a denominator
-        if (_toSave[_i].m_dataVariableDenominator != kNoneString) {
-          Float_t _valueDenom = _TCCB->getValue(_toSave[_i].m_dataVariableDenominator, _toSave[_i].m_dataVODenominator);
-          if (isZero(_valueDenom)) {
-            _value = 0.;
+        if (toSave[i].m_dataVariableDenominator != kNoneString) {
+          Float_t valueDenom = TCCB->getValue(toSave[i].m_dataVariableDenominator, toSave[i].m_dataVODenominator);
+          if (isZero(valueDenom)) {
+            value = 0.;
           } else {
-            _value /= _valueDenom;
+            value /= valueDenom;
           }
         }
       }
 
       // See if there are any other modifiers requested via enum
-      if (_toSave[_i].m_formatOption != kFormatOptionNone) {
-        switch (_toSave[_i].m_formatOption) {
+      if (toSave[i].m_formatOption != kFormatOptionNone) {
+        switch (toSave[i].m_formatOption) {
         case kFormatOptionNormaliseEntriesWallTime:
-          _value = _entries;
+          value = entries;
           // NOTE: Explicit fall-through of case logic
           /* FALLTHROUGH */
         case kFormatOptionNormaliseWallTime:
-          if (isZero(m_collectionLumiCollector[ _counterCollectionName ]->getTotalLumiBlockTime())) {
-            _value = 0.;
+          if (isZero(m_collectionLumiCollector[ counterCollectionName ]->getTotalLumiBlockTime())) {
+            value = 0.;
           } else {
-            _value /= m_collectionLumiCollector[ _counterCollectionName ]->getTotalLumiBlockTime();
+            value /= m_collectionLumiCollector[ counterCollectionName ]->getTotalLumiBlockTime();
           }
           break;
 
         case kFormatOptionNormaliseLBTimeDec:
-          if (isZero(_TCCB->getDecoration(kDecLbLength))) _value = 0;
-          else _value /= _TCCB->getDecoration(kDecLbLength);
+          if (isZero(TCCB->getDecoration(kDecLbLength))) value = 0;
+          else value /= TCCB->getDecoration(kDecLbLength);
           break;
 
         case kFormatOptionUseWallTime:
-          _value = m_collectionLumiCollector[ _counterCollectionName ]->getTotalLumiBlockTime();
+          value = m_collectionLumiCollector[ counterCollectionName ]->getTotalLumiBlockTime();
           break;
 
         case kFormatOptionNormaliseEntries:
-          if (isZero(_entries) == kTRUE) {
-            _value = 0.;
+          if (isZero(entries) == kTRUE) {
+            value = 0.;
           } else {
-            _value /= _entries;
+            value /= entries;
           }
           break;
 
         case kFormatOptionMiliSecToSec:
-          _value /= 1000.;
+          value /= 1000.;
           break;
 
         case kFormatOptionToPercentage:
-          _value *= 100.;
+          value *= 100.;
           break;
 
         case kFormatOptionUseEntries:
           // Overwrite the value field, we are after the number of entries rather than the value
-          _value = _entries;
+          value = entries;
           break;
 
         // Deliberately ignored cases
@@ -742,29 +741,29 @@ namespace TrigCostRootAnalysis {
 
         default:
           Error("MonitorBase::outputTableRow", "Table formatting option enum %i was not recognised.",
-                _toSave[_i].m_formatOption);
+                toSave[i].m_formatOption);
           break;
         }
       }
 
       // Do the output
-      if (_stringValue != "") {
-        checkForIllegalCharacters(_stringValue, /* , */ kTRUE, /* ' */ kTRUE, /* : */ kFALSE);
-        _fout << _stringValue;
+      if (stringValue != "") {
+        checkForIllegalCharacters(stringValue, /* , */ kTRUE, /* ' */ kTRUE, /* : */ kFALSE);
+        fout << stringValue;
       } else {
-        _fout << std::setprecision(_toSave[_i].m_precision) << _value;
+        fout << std::setprecision(toSave[i].m_precision) << value;
       }
 
       // Comma separate
-      if (_i != _toSave.size() - 1) _fout << ",";
+      if (i != toSave.size() - 1) fout << ",";
     }
 
-    _fout << std::endl;
-    _fout.flags(_foutFlags);
+    fout << std::endl;
+    fout.flags(foutFlags);
   }
 
-  Bool_t MonitorBase::doesCounterCollectionExist(const std::string& _identifier) {
-    if (m_counterCollections.count(_identifier) != 0) {
+  Bool_t MonitorBase::doesCounterCollectionExist(const std::string& identifier) {
+    if (m_counterCollections.count(identifier) != 0) {
       return (Bool_t) true;
     }
     return (Bool_t) false;
@@ -772,18 +771,18 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Get the collection of counters for a given identifier, create a new one if none currently exists.
-   * @param _identifier The name of the collection, "All" is used for the collection which runs on each event,
+   * @param identifier The name of the collection, "All" is used for the collection which runs on each event,
    *                    "LB:xxx" is used for individual lumi blocks, "SM:xxx_L1:xxx_HLT:xxx" for individual keysets.
    *                    Others can be added as and when needed.
-   * @param _type A key to specify what sort of counter collection this is rather than having to decude from the string
+   * @param type A key to specify what sort of counter collection this is rather than having to decude from the string
    * @return A pointer to the requested counter map.
    */
-  CounterMap_t* MonitorBase::getCounterCollection(const std::string& _identifier, const ConfKey_t _type) {
-    if (m_counterCollections.count(_identifier) == 0) {
-      m_counterCollections[_identifier] = CounterMap_t();
-      m_counterMapType[ &m_counterCollections[_identifier] ] = _type;
+  CounterMap_t* MonitorBase::getCounterCollection(const std::string& identifier, const ConfKey_t type) {
+    if (m_counterCollections.count(identifier) == 0) {
+      m_counterCollections[identifier] = CounterMap_t();
+      m_counterMapType[ &m_counterCollections[identifier] ] = type;
     }
-    return &m_counterCollections[_identifier];
+    return &m_counterCollections[identifier];
   }
 
   //TIM M - INCOMPLETE! Get name of every range
@@ -795,36 +794,36 @@ namespace TrigCostRootAnalysis {
     return toReturn;
   }
 
-  ConfKey_t MonitorBase::getCounterCollectionType(const std::string& _identifier) {
-    return m_counterMapType.at(&m_counterCollections.at(_identifier));
+  ConfKey_t MonitorBase::getCounterCollectionType(const std::string& identifier) {
+    return m_counterMapType.at(&m_counterCollections.at(identifier));
   }
 
   /**
    * Request counter for a supplied name and ID. The name must be unique within this monitor.
    * If a counter with this name already exists, a base class pointer is returned.
    * If a counter with this name does not exist, a new one is first created before its pointer returned.
-   * @param _name Const reference to unique counter name (within this monitor)
-   * @param _ID Reference to the ID number for this counter.
+   * @param name Const reference to unique counter name (within this monitor)
+   * @param ID Reference to the ID number for this counter.
    */
-  CounterBase* MonitorBase::getCounter(CounterMap_t* _counterMap, const std::string& _name, Int_t _ID) {
-    CounterMapIt_t _it = _counterMap->find(_name);
+  CounterBase* MonitorBase::getCounter(CounterMap_t* counterMap, const std::string& name, Int_t ID) {
+    CounterMapIt_t it = counterMap->find(name);
 
     // Do we have a counter for this string?
-    if (_it != _counterMap->end()) {
+    if (it != counterMap->end()) {
       // Also check IDs match (unless this has been explicitly disabled due to having many ID's)
-      if (m_allowSameIDCounters == kFALSE && _it->second->getID() != _ID) {
+      if (m_allowSameIDCounters == kFALSE && it->second->getID() != ID) {
         // This is technically allowed by the architecture of the program, but we will warn the user anyway as they have
         // not explicitly said that it is OK to have many counters with the same ID
         Warning("MonitorBase::getCounter", "Name clash for %s with IDs %i and %i.",
-                _name.c_str(), _ID, _it->second->getID());
+                name.c_str(), ID, it->second->getID());
       }
-      m_countersInEvent.insert(_it->second);
-      return _it->second;
+      m_countersInEvent.insert(it->second);
+      return it->second;
     } else {
       // If we don't yet then add a new one and return a reference
-      CounterBase* _TCCB = addCounter(_counterMap, _name, _ID);
-      m_countersInEvent.insert(_TCCB);
-      return _TCCB;
+      CounterBase* TCCB = addCounter(counterMap, name, ID);
+      m_countersInEvent.insert(TCCB);
+      return TCCB;
     }
   }
 
@@ -840,23 +839,23 @@ namespace TrigCostRootAnalysis {
    * Base class wrapper to handle the map related aspects of adding a new counter.
    * The newCounter call is pure virtual and must be implemented by the derived class such that
    * an object of the correct type is created then passed back as a polymorphic base class pointer.
-   * @param _name Const reference to the name of the new counter.
-   * @param _ID Reference to the ID number of the new counter.
+   * @param name Const reference to the name of the new counter.
+   * @param ID Reference to the ID number of the new counter.
    * @result Base class pointer to new counter.
    */
-  CounterBase* MonitorBase::addCounter(CounterMap_t* _counterMap, const std::string& _name, Int_t _ID) {
-    CounterBase* _tcc = newCounter(_name, _ID);
+  CounterBase* MonitorBase::addCounter(CounterMap_t* counterMap, const std::string& name, Int_t ID) {
+    CounterBase* tcc = newCounter(name, ID);
 
     // If we are after a new counter each call - then change the name (but *ONLY* in the map) to a simple number
     // such that it will never match a counter name upon a call to newCounter
     if (m_allowSameNamedCounters == kTRUE) {
-      static Int_t _counterNumber = 0;
-      const std::string _uniqueName = std::string("counter_" + intToString(_counterNumber++));
-      _counterMap->insert(std::make_pair(_uniqueName, _tcc));
+      static Int_t counterNumber = 0;
+      const std::string uniqueName = std::string("counter_" + intToString(counterNumber++));
+      counterMap->insert(std::make_pair(uniqueName, tcc));
     } else {
-      _counterMap->insert(std::make_pair(_name, _tcc));
+      counterMap->insert(std::make_pair(name, tcc));
     }
-    return _tcc;
+    return tcc;
   }
 
   /**
@@ -885,17 +884,17 @@ namespace TrigCostRootAnalysis {
   /**
    * Helper function. For a given counter, and a given variable plus VariableOption pair, construct the name of the plot
    * to be used as the file name or the histogram name in any output.
-   * @param _counter Pointer to counter object, the name of the counter will be used.
-   * @param _variable Pair of variable name and VariableOption enum, used in constructiong plot name.
+   * @param counter Pointer to counter object, the name of the counter will be used.
+   * @param variable Pair of variable name and VariableOption enum, used in constructiong plot name.
    * @returns Formatted plot name string.
    */
-  std::string MonitorBase::constructPlotName(CounterBase* _counter, ConfVariableOptionPair_t _variable) {
-    std::string _name = _counter->getName();
-    _name += "_";
-    _name += Config::config().getStr(_variable.first); // What is being monitored (e.g. time, calls).
-    _name += "_";
-    _name += VariableOptionStr[ _variable.second ]; // How it's being monitored (e.g. per event, per call)
-    return _name;
+  std::string MonitorBase::constructPlotName(CounterBase* counter, ConfVariableOptionPair_t variable) {
+    std::string name = counter->getName();
+    name += "_";
+    name += Config::config().getStr(variable.first); // What is being monitored (e.g. time, calls).
+    name += "_";
+    name += VariableOptionStr[ variable.second ]; // How it's being monitored (e.g. per event, per call)
+    return name;
   }
 
   /**
@@ -924,71 +923,71 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Sets the level this monitor is operating at.
-   * @param _l Sets the level.
+   * @param l Sets the level.
    */
-  void MonitorBase::setLevel(UInt_t _l) {
-    m_level = _l;
+  void MonitorBase::setLevel(UInt_t l) {
+    m_level = l;
   }
 
   /**
    * Sets the name of this monitor, used when formatting output.
-   * @param _name Sets the name.
+   * @param name Sets the name.
    */
-  void MonitorBase::setName(const std::string& _name) {
-    m_name = _name;
+  void MonitorBase::setName(const std::string& name) {
+    m_name = name;
   }
 
   /**
    * Construct a TableColumnFormatter to output a column of data from all counters.
    * This version will directly fetch a variable from the counter's storage.
-   * @param _title The title of the column in the table.
-   * @param _variableName The name of the variable saved in the counter to export for this column.
-   * @param _vo The corresponding variable option for this variable (saved per call, per event, etc.)
-   * @param _precision The number of decimal places to include for this column.
+   * @param title The title of the column in the table.
+   * @param variableName The name of the variable saved in the counter to export for this column.
+   * @param vo The corresponding variable option for this variable (saved per call, per event, etc.)
+   * @param precision The number of decimal places to include for this column.
    */
-  MonitorBase::TableColumnFormatter::TableColumnFormatter(const std::string& _title,
-                                                          const std::string& _tooltip,
-                                                          ConfKey_t _variableName,
-                                                          VariableOption_t _vo,
-                                                          UInt_t _precision, FormatterOption_t _fo) :
-    m_columnName(_title),
-    m_tooltip(_tooltip),
-    m_dataVariable(_variableName),
-    m_dataVO(_vo),
+  MonitorBase::TableColumnFormatter::TableColumnFormatter(const std::string& title,
+                                                          const std::string& tooltip,
+                                                          ConfKey_t variableName,
+                                                          VariableOption_t vo,
+                                                          UInt_t precision, FormatterOption_t fo) :
+    m_columnName(title),
+    m_tooltip(tooltip),
+    m_dataVariable(variableName),
+    m_dataVO(vo),
     m_dataVariableDenominator(kNoneString),
     m_dataVODenominator(),
-    m_precision(_precision),
+    m_precision(precision),
     m_functionPtr(0),
     m_functionPtrStr(0),
-    m_formatOption(_fo) {}
+    m_formatOption(fo) {}
 
   /**
    * Construct a TableColumnFormatter to output a column of data from all counters.
    * This version will directly fetch two variable from the counter's storage and divide one by the other.
-   * @param _title The title of the column in the table.
-   * @param _variableNameNominator The name of the variable saved in the counter to export for this column.
-   * @param _voNominator The corresponding variable option for this variable (saved per call, per event, etc.)
-   * @param _variableNameDenominator The name of the variable saved in the counter to use as denominator.
-   * @param _voDenominator The corresponding variable option for this denominator
-   * @param _precision The number of decimal places to include for this column.
+   * @param title The title of the column in the table.
+   * @param variableNameNominator The name of the variable saved in the counter to export for this column.
+   * @param voNominator The corresponding variable option for this variable (saved per call, per event, etc.)
+   * @param variableNameDenominator The name of the variable saved in the counter to use as denominator.
+   * @param voDenominator The corresponding variable option for this denominator
+   * @param precision The number of decimal places to include for this column.
    */
-  MonitorBase::TableColumnFormatter::TableColumnFormatter(const std::string& _title,
-                                                          const std::string& _tooltip,
-                                                          ConfKey_t _dataVarialbeNominator,
-                                                          VariableOption_t _voNominator,
-                                                          ConfKey_t _dataVarialbeDenominator,
-                                                          VariableOption_t _voDenominator,
-                                                          UInt_t _precision, FormatterOption_t _fo) :
-    m_columnName(_title),
-    m_tooltip(_tooltip),
-    m_dataVariable(_dataVarialbeNominator),
-    m_dataVO(_voNominator),
-    m_dataVariableDenominator(_dataVarialbeDenominator),
-    m_dataVODenominator(_voDenominator),
-    m_precision(_precision),
+  MonitorBase::TableColumnFormatter::TableColumnFormatter(const std::string& title,
+                                                          const std::string& tooltip,
+                                                          ConfKey_t dataVarialbeNominator,
+                                                          VariableOption_t voNominator,
+                                                          ConfKey_t dataVarialbeDenominator,
+                                                          VariableOption_t voDenominator,
+                                                          UInt_t precision, FormatterOption_t fo) :
+    m_columnName(title),
+    m_tooltip(tooltip),
+    m_dataVariable(dataVarialbeNominator),
+    m_dataVO(voNominator),
+    m_dataVariableDenominator(dataVarialbeDenominator),
+    m_dataVODenominator(voDenominator),
+    m_precision(precision),
     m_functionPtr(0),
     m_functionPtrStr(0),
-    m_formatOption(_fo) {}
+    m_formatOption(fo) {}
 
   /**
    * Construct a TableColumnFormatter to output a column of data from all counters.
@@ -997,23 +996,23 @@ namespace TrigCostRootAnalysis {
    * The CounterMap_t* input is considered optional. This is only needed when all counters are needed to calculate a
    *quantity, such as how much time a
    * chain used averaged over all chains.
-   * @param _title The title of the column in the table.
-   * @param _functionPrt Pointer to function which takes a counterMap* and CounterBase* and then returns a float value
+   * @param title The title of the column in the table.
+   * @param functionPrt Pointer to function which takes a counterMap* and CounterBase* and then returns a float value
    *to include in the column.
-   * @param _precision The number of decimal places to include for this column.
+   * @param precision The number of decimal places to include for this column.
    */
-  MonitorBase::TableColumnFormatter::TableColumnFormatter(const std::string& _title,
-                                                          const std::string& _tooltip,
-                                                          Float_t(*_functionPtr)(CounterMap_t*, CounterBase*),
-                                                          UInt_t _precision) :
-    m_columnName(_title),
-    m_tooltip(_tooltip),
+  MonitorBase::TableColumnFormatter::TableColumnFormatter(const std::string& title,
+                                                          const std::string& tooltip,
+                                                          Float_t(*functionPtr)(CounterMap_t*, CounterBase*),
+                                                          UInt_t precision) :
+    m_columnName(title),
+    m_tooltip(tooltip),
     m_dataVariable(),
     m_dataVO(),
     m_dataVariableDenominator(),
     m_dataVODenominator(),
-    m_precision(_precision),
-    m_functionPtr(_functionPtr),
+    m_precision(precision),
+    m_functionPtr(functionPtr),
     m_functionPtrStr(0),
     m_formatOption(kFormatOptionNone) {}
 
@@ -1024,22 +1023,22 @@ namespace TrigCostRootAnalysis {
    * The CounterMap_t* input is considered optional. This is only needed when all counters are needed to calculate a
    *quantity, such as how much time a
    * chain used averaged over all chains.
-   * @param _title The title of the column in the table.
-   * @param _functionPrtStr Pointer to function which takes a CounterMap_t* and CounterBase* and then returns a string
+   * @param title The title of the column in the table.
+   * @param functionPrtStr Pointer to function which takes a CounterMap_t* and CounterBase* and then returns a string
    *value to include in the column.
    */
-  MonitorBase::TableColumnFormatter::TableColumnFormatter(const std::string& _title,
-                                                          const std::string& _tooltip,
-                                                          std::string(*_functionPtrStr)(CounterMap_t*, CounterBase*)) :
-    m_columnName(_title),
-    m_tooltip(_tooltip),
+  MonitorBase::TableColumnFormatter::TableColumnFormatter(const std::string& title,
+                                                          const std::string& tooltip,
+                                                          std::string(*functionPtrStr)(CounterMap_t*, CounterBase*)) :
+    m_columnName(title),
+    m_tooltip(tooltip),
     m_dataVariable(),
     m_dataVO(),
     m_dataVariableDenominator(),
     m_dataVODenominator(),
     m_precision(0),
     m_functionPtr(0),
-    m_functionPtrStr(_functionPtrStr),
+    m_functionPtrStr(functionPtrStr),
     m_formatOption(kFormatOptionNone) {}
 
 
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorChain.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorChain.cxx
index b1596be1d69fbac8b8e09d500086ff47d4a9f8ce..babbe9c3b779415234ed21d91cf9d41992e9e953 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorChain.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorChain.cxx
@@ -25,57 +25,57 @@ namespace TrigCostRootAnalysis {
   /**
    * Monitor constructor. Sets name and calls base constructor.
    */
-  MonitorChain::MonitorChain(const TrigCostData* _costData) : MonitorBase(_costData, "Chain") {
+  MonitorChain::MonitorChain(const TrigCostData* costData) : MonitorBase(costData, "Chain") {
     m_dummyCounter = newCounter(Config::config().getStr(kDummyString), INT_MIN);
   }
 
   /**
    * Process new event for this monitor.
    * For the chain monitor, all chains present in this event are processed and recorded.
-   * @param _weight The event weight.
+   * @param weight The event weight.
    */
-  void MonitorChain::newEvent(Float_t _weight) {
+  void MonitorChain::newEvent(Float_t weight) {
     m_timer.start();
     if (Config::config().debug()) Info("MonitorChain::newEvent", "*** Processing Chains ***");
 
     //Now loop over the counter collections;
 
-    for (CounterMapSetIt_t _cmsIt = m_collectionsToProcess.begin(); _cmsIt != m_collectionsToProcess.end(); ++_cmsIt) {
-      CounterMap_t* _counterMap = *_cmsIt;
+    for (CounterMapSetIt_t cmsIt = m_collectionsToProcess.begin(); cmsIt != m_collectionsToProcess.end(); ++cmsIt) {
+      CounterMap_t* counterMap = *cmsIt;
 
       startEvent();
 
       // Loop over all chains.
-      for (UInt_t _c = 0; _c < m_costData->getNChains(); ++_c) {
-        if ((UInt_t) m_costData->getChainLevel(_c) != getLevel()) {
+      for (UInt_t c = 0; c < m_costData->getNChains(); ++c) {
+        if ((UInt_t) m_costData->getChainLevel(c) != getLevel()) {
           //Info("MonitorChain::newEvent", "Trigger mis-match %i-chain in %i-MonitorChain",
-          // m_costData->getChainLevel(_c), getLevel() );
+          // m_costData->getChainLevel(c), getLevel() );
           continue;
         }
 
         // Get the name of the chain (Supplying L2 or EF helps, but is not needed)
-        Int_t _chainID = m_costData->getChainID(_c);
-        const std::string _chainName =
-          TrigConfInterface::getHLTNameFromChainID(_chainID, m_costData->getChainLevel(_c));
+        Int_t chainID = m_costData->getChainID(c);
+        const std::string chainName =
+          TrigConfInterface::getHLTNameFromChainID(chainID, m_costData->getChainLevel(c));
 
         // Did we fail?
-        if (_chainName == Config::config().getStr(kBlankString)) {
+        if (chainName == Config::config().getStr(kBlankString)) {
           Warning("MonitorChain::newEvent", "Skipping Chain ID %i. Cannot get name from current configuration.",
-                  _chainID);
+                  chainID);
           continue;
         }
 
         // Are we running over this chain?
-        if (checkPatternNameMonitor(_chainName, m_invertFilter,
-                                    m_costData->getIsChainResurrected(_c)) == kFALSE) continue;
+        if (checkPatternNameMonitor(chainName, m_invertFilter,
+                                    m_costData->getIsChainResurrected(c)) == kFALSE) continue;
 
-        CounterBase* _counter = getCounter(_counterMap, _chainName, _chainID);
-        if (_counter->getCalls() ==
-            0) _counter->decorate(kDecGroupName, TrigConfInterface::getHLTGroupNameFromChainID(_chainID, 0)); // i'm new
-        _counter->processEventCounter(_c, 0, _weight);
+        CounterBase* counter = getCounter(counterMap, chainName, chainID);
+        if (counter->getCalls() ==
+            0) counter->decorate(kDecGroupName, TrigConfInterface::getHLTGroupNameFromChainID(chainID, 0)); // i'm new
+        counter->processEventCounter(c, 0, weight);
       }
 
-      endEvent(_weight);
+      endEvent(weight);
     }
     m_timer.stop();
   }
@@ -85,8 +85,8 @@ namespace TrigCostRootAnalysis {
    * Note these are currently hard-coded. We may want to make them configurable
    * @return If this monitor should be active for a given mode.
    */
-  Bool_t MonitorChain::getIfActive(ConfKey_t _mode) {
-    switch (_mode) {
+  Bool_t MonitorChain::getIfActive(ConfKey_t mode) {
+    switch (mode) {
     case kDoAllSummary:       return kTRUE;
 
     case kDoKeySummary:       return kTRUE;
@@ -94,7 +94,7 @@ namespace TrigCostRootAnalysis {
     case kDoLumiBlockSummary: return kTRUE;
 
     default: Error("MonitorChain::getIfActive", "An invalid summary mode was provided (key %s)",
-                   Config::config().getName(_mode).c_str());
+                   Config::config().getName(mode).c_str());
     }
     return kFALSE;
   }
@@ -106,98 +106,98 @@ namespace TrigCostRootAnalysis {
     m_filterOutput = kTRUE; // Apply any user-specified name filter to output
 
     // Specify what plots we wish to save from the counters
-    VariableOptionVector_t _toSavePlots = m_dummyCounter->getAllHistograms();
-    sharedHistogramOutputRoutine(_toSavePlots);
+    VariableOptionVector_t toSavePlots = m_dummyCounter->getAllHistograms();
+    sharedHistogramOutputRoutine(toSavePlots);
 
-    std::vector<TableColumnFormatter> _toSaveTable;
-    const std::string _slowText = "Calls > " + intToString(Config::config().getInt(kSlowThreshold)) + " ms";
+    std::vector<TableColumnFormatter> toSaveTable;
+    const std::string slowText = "Calls > " + intToString(Config::config().getInt(kSlowThreshold)) + " ms";
 
-    _toSaveTable.push_back(TableColumnFormatter("Group",
+    toSaveTable.push_back(TableColumnFormatter("Group",
                                                 "Bandwidth group this chain is associated to.",
                                                 kDecGroupName, kSavePerCall, 0, kFormatOptionUseStringDecoration));
 
-    _toSaveTable.push_back(TableColumnFormatter("Raw Active Events",
+    toSaveTable.push_back(TableColumnFormatter("Raw Active Events",
                                                 "Raw (unweighted) statistics on the number of events in which this chain was executed.",
                                                 kVarEventsActive, kSavePerEvent, 0, kFormatOptionUseEntries));
 
-    _toSaveTable.push_back(TableColumnFormatter("Active Events",
+    toSaveTable.push_back(TableColumnFormatter("Active Events",
                                                 "Number of events in which this chain was executed.",
                                                 kVarEventsActive, kSavePerEvent, 0));
 
-    _toSaveTable.push_back(TableColumnFormatter("Time Per Event [ms]",
+    toSaveTable.push_back(TableColumnFormatter("Time Per Event [ms]",
                                                 "Average execution time per event of this chain.",
                                                 kVarTime, kSavePerEvent, kVarEventsActive, kSavePerEvent, 2));
 
-    // _toSaveTable.push_back( TableColumnFormatter("Effective PS Weight",
+    // toSaveTable.push_back( TableColumnFormatter("Effective PS Weight",
     //   "Weight applied to all events to simulate prescale.",
     //   kEffectivePrescale, kSavePerEvent, 4, kFormatOptionUseFloatDecoration ) );
 
-    _toSaveTable.push_back(TableColumnFormatter("Execute Rate [Hz]",
+    toSaveTable.push_back(TableColumnFormatter("Execute Rate [Hz]",
                                                 "Number of chain executions normalised to the wall time for this run range.",
                                                 kVarEventsActive, kSavePerEvent, 4, kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(TableColumnFormatter(getLevelStr() + std::string(" Pass Fraction [%]"),
+    toSaveTable.push_back(TableColumnFormatter(getLevelStr() + std::string(" Pass Fraction [%]"),
                                                 "What percentage of events pass events are kept",
                                                 kVarEventsPassed, kSavePerEvent, kVarEventsActive, kSavePerEvent, 6,
                                                 kFormatOptionToPercentage));
 
-    _toSaveTable.push_back(TableColumnFormatter(_slowText,
+    toSaveTable.push_back(TableColumnFormatter(slowText,
                                                 "Number of algorithm executions which were particularly slow",
                                                 kVarEventsSlow, kSavePerEvent, 0));
 
-    _toSaveTable.push_back(TableColumnFormatter("Total Chain Time [s]",
+    toSaveTable.push_back(TableColumnFormatter("Total Chain Time [s]",
                                                 "Total time used by this chain for this run range.",
                                                 kVarTime, kSavePerEvent, 2, kFormatOptionMiliSecToSec));
 
-    _toSaveTable.push_back(TableColumnFormatter("Total Chain Time Frac. Err. [%]",
+    toSaveTable.push_back(TableColumnFormatter("Total Chain Time Frac. Err. [%]",
                                                 "Fractional statistical uncertainty on total chain time.",
                                                 &tableFnChainGetTotalTimeErr, 3));
 
-    _toSaveTable.push_back(TableColumnFormatter("Total Chain Time [%]",
+    toSaveTable.push_back(TableColumnFormatter("Total Chain Time [%]",
                                                 "Total chain time as a percentage of the total time of all chains in this run range.",
                                                 &tableFnChainGetTotalFracTime, 3));
 
-    _toSaveTable.push_back(TableColumnFormatter("Time Use In Rerun [%]",
+    toSaveTable.push_back(TableColumnFormatter("Time Use In Rerun [%]",
                                                 "Percentage of this chains CPU usage which comes from resurrection.",
                                                 kVarRerunTime, kSavePerEvent, kVarTime, kSavePerEvent, 3,
                                                 kFormatOptionToPercentage));
 
-    _toSaveTable.push_back(TableColumnFormatter("Run Agls/Event",
+    toSaveTable.push_back(TableColumnFormatter("Run Agls/Event",
                                                 "Total number of algorithms executed by this chain.",
                                                 kVarAlgCalls, kSavePerEvent, kVarEventsActive, kSavePerEvent, 2));
 
-    _toSaveTable.push_back(TableColumnFormatter("Cached Algs/Event",
+    toSaveTable.push_back(TableColumnFormatter("Cached Algs/Event",
                                                 "Total number of algorithms which supplied a cached result to this chain.",
                                                 kVarAlgCaches, kSavePerEvent, kVarEventsActive, kSavePerEvent, 2));
 
-    _toSaveTable.push_back(TableColumnFormatter("Cached ROB Rate [Hz]",
+    toSaveTable.push_back(TableColumnFormatter("Cached ROB Rate [Hz]",
                                                 "Number of cached ROBs requested by this chain normalised to the run range.",
                                                 kVarROBReqs, kSavePerEvent, 2, kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(TableColumnFormatter("Cached ROB Rate [kB/s]",
+    toSaveTable.push_back(TableColumnFormatter("Cached ROB Rate [kB/s]",
                                                 "Size of cached ROBs requested by this chain normalised to the run range.",
                                                 kVarROBReqSize, kSavePerEvent, 2, kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(TableColumnFormatter("Retrieved ROB Rate [Hz]",
+    toSaveTable.push_back(TableColumnFormatter("Retrieved ROB Rate [Hz]",
                                                 "Number of ROBs retrieved by this chain normalised to the run range.",
                                                 kVarROBRets, kSavePerEvent, 2, kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(TableColumnFormatter("Retrieved ROB Rate [kB/s]",
+    toSaveTable.push_back(TableColumnFormatter("Retrieved ROB Rate [kB/s]",
                                                 "Size of the ROBs retrieved by this chain normalised to the run range.",
                                                 kVarROBRetSize, kSavePerEvent, 2, kFormatOptionNormaliseWallTime));
 
-    sharedTableOutputRoutine(_toSaveTable);
+    sharedTableOutputRoutine(toSaveTable);
   }
 
   /**
    * Construct new counter of correct derived type, pass back as base type.
    * This function must be implemented by all derived monitor types.
-   * @see MonitorBase::addCounter( const std::string &_name, Int_t _ID )
-   * @param _name Cost reference to name of counter.
-   * @param _ID Reference to ID number of counter.
+   * @see MonitorBase::addCounter( const std::string &name, Int_t ID )
+   * @param name Cost reference to name of counter.
+   * @param ID Reference to ID number of counter.
    * @returns Base class pointer to new counter object of correct serived type.
    */
-  CounterBase* MonitorChain::newCounter(const std::string& _name, Int_t _ID) {
-    return new CounterChain(m_costData, _name, _ID, m_detailLevel, (MonitorBase*) this);
+  CounterBase* MonitorChain::newCounter(const std::string& name, Int_t ID) {
+    return new CounterChain(m_costData, name, ID, m_detailLevel, (MonitorBase*) this);
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorEventProfile.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorEventProfile.cxx
index 72f35d54f37ddde225c8357c9db1b01c50ade78a..e5c9b9ac120fcb360013c57be16482322dbb8959 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorEventProfile.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorEventProfile.cxx
@@ -29,7 +29,7 @@ namespace TrigCostRootAnalysis {
   /**
    * Monitor constructor. Sets name and calls base constructor.
    */
-  MonitorEventProfile::MonitorEventProfile(const TrigCostData* _costData) : MonitorBase(_costData, "EventProfile") {
+  MonitorEventProfile::MonitorEventProfile(const TrigCostData* costData) : MonitorBase(costData, "EventProfile") {
     m_dummyCounter = newCounter(Config::config().getStr(kDummyString), INT_MIN);
     allowSameIDCounters();
 
@@ -44,74 +44,74 @@ namespace TrigCostRootAnalysis {
    * The global monitor records overviews. Each counter corresponds to a whole lumi block.
    * It is sensible to only enable this for the "All" or "Per HLT keyset" ranges.
    * But can be used with "Per lumi block" as well, it will just only have one entry.
-   * @param _weight The event weight.
+   * @param weight The event weight.
    */
-  void MonitorEventProfile::newEvent(Float_t _weight) {
+  void MonitorEventProfile::newEvent(Float_t weight) {
     m_timer.start();
     if (Config::config().debug()) Info("MonitorEventProfile::newEvent", "*** Processing Global Quantites ***");
 
     // Get categories
-    std::set< std::string > _eventClassifications;
-
-    for (UInt_t _s = 0; _s < m_costData->getNSequences(); ++_s) {
-      for (UInt_t _a = 0; _a < m_costData->getNSeqAlgs(_s); ++_a) {
-        Int_t _seqIndex = m_costData->getSequenceIndex(_s);
-        Int_t _seqAlgPos = m_costData->getSeqAlgPosition(_s, _a);
-        const std::string _algName = TrigConfInterface::getHLTAlgNameFromSeqIDAndAlgPos(_seqIndex, _seqAlgPos);
-        if (m_AlgToEventProfile.count(_algName) == 1) {
-          _eventClassifications.insert(m_AlgToEventProfile[_algName]);
+    std::set< std::string > eventClassifications;
+
+    for (UInt_t s = 0; s < m_costData->getNSequences(); ++s) {
+      for (UInt_t a = 0; a < m_costData->getNSeqAlgs(s); ++a) {
+        Int_t seqIndex = m_costData->getSequenceIndex(s);
+        Int_t seqAlgPos = m_costData->getSeqAlgPosition(s, a);
+        const std::string algName = TrigConfInterface::getHLTAlgNameFromSeqIDAndAlgPos(seqIndex, seqAlgPos);
+        if (m_AlgToEventProfile.count(algName) == 1) {
+          eventClassifications.insert(m_AlgToEventProfile[algName]);
         }
       }
     }
 
-    _eventClassifications.insert("AllEvents"); // TEsting
+    eventClassifications.insert("AllEvents"); // TEsting
 
     //Now loop over the counter collections;
-    for (CounterMapSetIt_t _cmsIt = m_collectionsToProcess.begin(); _cmsIt != m_collectionsToProcess.end(); ++_cmsIt) {
-      CounterMap_t* _counterMap = *_cmsIt;
+    for (CounterMapSetIt_t cmsIt = m_collectionsToProcess.begin(); cmsIt != m_collectionsToProcess.end(); ++cmsIt) {
+      CounterMap_t* counterMap = *cmsIt;
 
       startEvent();
 
       // Loop over each classification
-      for (std::set<std::string>::iterator _ecIt = _eventClassifications.begin(); _ecIt != _eventClassifications.end();
-           ++_ecIt) {
-        Int_t _algN = 0;
-        Float_t _timeOffset = 0;
+      for (std::set<std::string>::iterator ecIt = eventClassifications.begin(); ecIt != eventClassifications.end();
+           ++ecIt) {
+        Int_t algN = 0;
+        Float_t timeOffset = 0;
 
-        for (UInt_t _s = 0; _s < m_costData->getNSequences(); ++_s) {
-          for (UInt_t _a = 0; _a < m_costData->getNSeqAlgs(_s); ++_a) {
-            Float_t _start = m_costData->getSeqAlgTimeStartSec(_s, _a);
-            _start += m_costData->getSeqAlgTimeStartMicroSec(_s, _a) / 1e6;
+        for (UInt_t s = 0; s < m_costData->getNSequences(); ++s) {
+          for (UInt_t a = 0; a < m_costData->getNSeqAlgs(s); ++a) {
+            Float_t start = m_costData->getSeqAlgTimeStartSec(s, a);
+            start += m_costData->getSeqAlgTimeStartMicroSec(s, a) / 1e6;
 
             if (Config::config().debug()) {
               Info("MonitorEventProfile::newEvent", "(%i,%i) - %f cache:%i time:%f",
-                   _s, _a, _start, m_costData->getSeqAlgIsCached(_s, _a), m_costData->getSeqAlgTimer(_s, _a));
+                   s, a, start, m_costData->getSeqAlgIsCached(s, a), m_costData->getSeqAlgTimer(s, a));
             }
 
-            if (isZero(_start) == kTRUE) continue;                                                        // Ignore for
+            if (isZero(start) == kTRUE) continue;                                                        // Ignore for
                                                                                                           // now algs
 
-            if (isZero(_timeOffset) == kTRUE) {
-              _timeOffset = _start;
-              Config::config().setFloat(kEventTimeOffset, _timeOffset, "TimeOffset", kUnlocked);
+            if (isZero(timeOffset) == kTRUE) {
+              timeOffset = start;
+              Config::config().setFloat(kEventTimeOffset, timeOffset, "TimeOffset", kUnlocked);
             }
 
-            std::ostringstream _ss;
-            _ss << std::setfill('0') << std::setw(5) << _algN;
-            std::string _counterStr = (*_ecIt) + "_Alg" + _ss.str();
+            std::ostringstream ss;
+            ss << std::setfill('0') << std::setw(5) << algN;
+            std::string counterStr = (*ecIt) + "_Alg" + ss.str();
 
-            CounterBase* _counter = getCounter(_counterMap, _counterStr, _algN);
-            if (_counter->getCalls() == 0) { // Save the event classification as a decoration so we can pick it up easy
+            CounterBase* counter = getCounter(counterMap, counterStr, algN);
+            if (counter->getCalls() == 0) { // Save the event classification as a decoration so we can pick it up easy
                                              // when doing the output
-              _counter->decorate(kDecCounterClassification, (*_ecIt));
+              counter->decorate(kDecCounterClassification, (*ecIt));
             }
 
-            _counter->processEventCounter(_s, _a, _weight);
-            ++_algN;
+            counter->processEventCounter(s, a, weight);
+            ++algN;
           }
         }
       }
-      endEvent(_weight);
+      endEvent(weight);
     }
     m_timer.stop();
   }
@@ -121,8 +121,8 @@ namespace TrigCostRootAnalysis {
    * Note these are currently hard-coded. We may want to make them configurable
    * @return If this monitor should be active for a given mode.
    */
-  Bool_t MonitorEventProfile::getIfActive(ConfKey_t _mode) {
-    switch (_mode) {
+  Bool_t MonitorEventProfile::getIfActive(ConfKey_t mode) {
+    switch (mode) {
     case kDoAllSummary:       return kTRUE;
 
     case kDoKeySummary:       return kTRUE;
@@ -130,7 +130,7 @@ namespace TrigCostRootAnalysis {
     case kDoLumiBlockSummary: return kFALSE;
 
     default: Error("MonitorEventProfile::getIfActive", "An invalid summary mode was provided (key %s)",
-                   Config::config().getName(_mode).c_str());
+                   Config::config().getName(mode).c_str());
     }
     return kFALSE;
   }
@@ -139,62 +139,62 @@ namespace TrigCostRootAnalysis {
    * Save the results from this monitors counters as specified in the configuration.
    */
   void MonitorEventProfile::saveOutput() {
-    std::vector<TableColumnFormatter> _toSave;
+    std::vector<TableColumnFormatter> toSave;
 
-    _toSave.push_back(TableColumnFormatter("Events",
+    toSave.push_back(TableColumnFormatter("Events",
                                            "Number of events which made it this deep into alg execution",
                                            kVarCalls, kSavePerCall, 0));
 
-    _toSave.push_back(TableColumnFormatter("Av. Time Elapsed [s]",
+    toSave.push_back(TableColumnFormatter("Av. Time Elapsed [s]",
                                            "Average CPU time spent at this step",
                                            kVarTimeElapsed, kSavePerCall, 6, kFormatOptionNormaliseEntries));
 
-    _toSave.push_back(TableColumnFormatter("Av. CPU Time [ms]",
+    toSave.push_back(TableColumnFormatter("Av. CPU Time [ms]",
                                            "Average CPU time spent at this step",
                                            kVarCPUTime, kSavePerCall, 6, kFormatOptionNormaliseEntries));
 
-    _toSave.push_back(TableColumnFormatter("Av. ROS Time [ms]",
+    toSave.push_back(TableColumnFormatter("Av. ROS Time [ms]",
                                            "Average ROS time spent at this step",
                                            kVarROSTime, kSavePerCall, 6, kFormatOptionNormaliseEntries));
 
-    //_toSave.push_back( TableColumnFormatter("Alg Cache Fraction",
+    //toSave.push_back( TableColumnFormatter("Alg Cache Fraction",
     //  "Fraction of algorithm executions which were cached",
     //  kVarAlgCaches, kSavePerCall, 4, kFormatOptionNormaliseEntries) );
 
-    _toSave.push_back(TableColumnFormatter("Av. ROS Calls",
+    toSave.push_back(TableColumnFormatter("Av. ROS Calls",
                                            "Average number of calls to the ROS both cached and retrieved",
                                            kVarROSCalls, kSavePerCall, 6, kFormatOptionNormaliseEntries));
 
-    _toSave.push_back(TableColumnFormatter("Av. ROS Retrieve [kB]",
+    toSave.push_back(TableColumnFormatter("Av. ROS Retrieve [kB]",
                                            "Average size of ROB fragment retrieved from the ROS",
                                            kVarROBRetSize, kSavePerCall, 6, kFormatOptionNormaliseEntries));
 
-    _toSave.push_back(TableColumnFormatter("Av. ROS Cached [kB]",
+    toSave.push_back(TableColumnFormatter("Av. ROS Cached [kB]",
                                            "Average size of cached ROB fragment requested from the ROS",
                                            kVarROBReqSize, kSavePerCall, 6, kFormatOptionNormaliseEntries));
 
 
     // Loop over each classification and output a monitor for each
     m_filterOutput = kTRUE;
-    std::set< std::string > _eventClassificationsOutput;
-    for (StringStringMapIt_t _it = m_AlgToEventProfile.begin(); _it != m_AlgToEventProfile.end(); ++_it) {
-      if (_eventClassificationsOutput.count(_it->second) == 1) continue; // Prevent duplicates
-      _eventClassificationsOutput.insert(_it->second);
-      setName(std::string("EventProfile_" + _it->second));
-      filterOutputOnStrDecoration(kDecCounterClassification, _it->second);
-      sharedTableOutputRoutine(_toSave);
+    std::set< std::string > eventClassificationsOutput;
+    for (StringStringMapIt_t it = m_AlgToEventProfile.begin(); it != m_AlgToEventProfile.end(); ++it) {
+      if (eventClassificationsOutput.count(it->second) == 1) continue; // Prevent duplicates
+      eventClassificationsOutput.insert(it->second);
+      setName(std::string("EventProfile_" + it->second));
+      filterOutputOnStrDecoration(kDecCounterClassification, it->second);
+      sharedTableOutputRoutine(toSave);
     }
   }
 
   /**
    * Construct new counter of correct derived type, pass back as base type.
    * This function must be implemented by all derived monitor types.
-   * @see MonitorBase::addCounter( const std::string &_name, Int_t _ID )
-   * @param _name Cost reference to name of counter.
-   * @param _ID Reference to ID number of counter.
+   * @see MonitorBase::addCounter( const std::string &name, Int_t ID )
+   * @param name Cost reference to name of counter.
+   * @param ID Reference to ID number of counter.
    * @returns Base class pointer to new counter object of correct serived type.
    */
-  CounterBase* MonitorEventProfile::newCounter(const std::string& _name, Int_t _ID) {
-    return new CounterEventProfile(m_costData, _name, _ID, m_detailLevel, (MonitorBase*) this);
+  CounterBase* MonitorEventProfile::newCounter(const std::string& name, Int_t ID) {
+    return new CounterEventProfile(m_costData, name, ID, m_detailLevel, (MonitorBase*) this);
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorFullEvent.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorFullEvent.cxx
index 5711d2a3d017b1c8320011bcd84c788352e5c08c..eadcb04e7ca1e4552e4e12dd5dceef71bb2332e7 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorFullEvent.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorFullEvent.cxx
@@ -26,7 +26,7 @@ namespace TrigCostRootAnalysis {
   /**
    * Monitor constructor. Sets name and calls base constructor.
    */
-  MonitorFullEvent::MonitorFullEvent(const TrigCostData* _costData) : MonitorBase(_costData, "Full_Evnt"),
+  MonitorFullEvent::MonitorFullEvent(const TrigCostData* costData) : MonitorBase(costData, "Full_Evnt"),
     m_probability(0.),
     m_usePickList(kFALSE),
     m_rando(4), // Seed chosen by fair dice role.
@@ -73,13 +73,13 @@ namespace TrigCostRootAnalysis {
   /**
    * Process new event for this monitor.
    * The full event execution will be summarised.
-   * @param _weight The event weight.
+   * @param weight The event weight.
    */
-  void MonitorFullEvent::newEvent(Float_t _weight) {
+  void MonitorFullEvent::newEvent(Float_t weight) {
     m_timer.start();
-    Bool_t _doSlow = (Bool_t) Config::config().getInt(kCurrentEventIsSlow);
+    Bool_t doSlow = (Bool_t) Config::config().getInt(kCurrentEventIsSlow);
 
-    if ((m_doPick || _doSlow || m_doRND) == kFALSE) {
+    if ((m_doPick || doSlow || m_doRND) == kFALSE) {
       m_timer.stop();
       return;
     }
@@ -90,25 +90,25 @@ namespace TrigCostRootAnalysis {
       return;
     }
 
-    std::string _type;
-    if (m_doPick == kTRUE || m_doRND == kTRUE) _type = m_randomString;
-    else _type = m_slowString;
+    std::string type;
+    if (m_doPick == kTRUE || m_doRND == kTRUE) type = m_randomString;
+    else type = m_slowString;
 
     // Check if we have already saved our max number of events.
     // In this monitor, we use a new counter collection for every event.
     // Gets a little confusing as we need to see what type of saved event it was by looking at one of the counters.
     if (m_doPick == kFALSE) {
-      Int_t _count = 0;
-      for (CounterCollectionIt_t _ccIt = m_counterCollections.begin(); _ccIt != m_counterCollections.end(); ++_ccIt) {
+      Int_t count = 0;
+      for (CounterCollectionIt_t ccIt = m_counterCollections.begin(); ccIt != m_counterCollections.end(); ++ccIt) {
         // Get first counter
-        if ((_ccIt->second).size() == 0) continue;
-        CounterMapIt_t _mapIt = (_ccIt->second).begin();
-        if (m_doRND == kTRUE && _mapIt->second->getStrDecoration(kDecCounterClassification) == m_randomString) ++_count;
+        if ((ccIt->second).size() == 0) continue;
+        CounterMapIt_t mapIt = (ccIt->second).begin();
+        if (m_doRND == kTRUE && mapIt->second->getStrDecoration(kDecCounterClassification) == m_randomString) ++count;
 
-        else if (_doSlow == kTRUE &&
-                 _mapIt->second->getStrDecoration(kDecCounterClassification) == m_slowString) ++_count;
+        else if (doSlow == kTRUE &&
+                 mapIt->second->getStrDecoration(kDecCounterClassification) == m_slowString) ++count;
       }
-      if (_count >= Config::config().getInt(kFullEventMaxNumToSave)) {
+      if (count >= Config::config().getInt(kFullEventMaxNumToSave)) {
         if (Config::config().debug()) {
           Warning("MonitorFullEvent::newEvent", "Reached maximum number of Full-Events to save (%i). Skipping.",
                   (Int_t) m_counterCollections.size());
@@ -120,8 +120,8 @@ namespace TrigCostRootAnalysis {
 
     // For this monitor - we have a CounterCollection per event.
     // The event number is used as the key. Pad with 6 0's
-    const std::string _eventNumberStr = std::string("Event_") + intToString(m_costData->getEventNumber(), 6);
-    CounterMap_t* _eventMap = getCounterCollection(_eventNumberStr, kDoAllSummary); // We don't care what this counter
+    const std::string eventNumberStr = std::string("Event_") + intToString(m_costData->getEventNumber(), 6);
+    CounterMap_t* eventMap = getCounterCollection(eventNumberStr, kDoAllSummary); // We don't care what this counter
                                                                                     // collection is classified as so
                                                                                     // second parameter is not important
 
@@ -130,48 +130,48 @@ namespace TrigCostRootAnalysis {
 
     if (Config::config().getDisplayMsg(kMsgSaveFullEvent) == kTRUE) {
       Info("MonitorFullEvent::newEvent", "Saving full %s event for event number %s",
-           _type.c_str(), _eventNumberStr.c_str());
+           type.c_str(), eventNumberStr.c_str());
     }
 
     // Loop over all sequences.
-    Int_t _location = 0; // Algs are in the D3PD in execution order - note this order so we can sort by it later
-    for (UInt_t _s = 0; _s < m_costData->getNSequences(); ++_s) {
+    Int_t location = 0; // Algs are in the D3PD in execution order - note this order so we can sort by it later
+    for (UInt_t s = 0; s < m_costData->getNSequences(); ++s) {
       // Get the name of the chain this sequence instance is in (Supplying L2 or EF helps, but is not needed)
-      Int_t _chainID = m_costData->getSequenceChannelCounter(_s);
-      const std::string _chainName =
-        TrigConfInterface::getHLTNameFromChainID(_chainID, m_costData->getSequenceLevel(_s));
+      Int_t chainID = m_costData->getSequenceChannelCounter(s);
+      const std::string chainName =
+        TrigConfInterface::getHLTNameFromChainID(chainID, m_costData->getSequenceLevel(s));
 
       // Loop over all algorithms in sequence
-      for (UInt_t _a = 0; _a < m_costData->getNSeqAlgs(_s); ++_a) {
-        Int_t _seqIndex = m_costData->getSequenceIndex(_s);
-        const std::string _seqName = TrigConfInterface::getHLTSeqNameFromIndex(_seqIndex);
-        Int_t _seqAlgPos = m_costData->getSeqAlgPosition(_s, _a);
+      for (UInt_t a = 0; a < m_costData->getNSeqAlgs(s); ++a) {
+        Int_t seqIndex = m_costData->getSequenceIndex(s);
+        const std::string seqName = TrigConfInterface::getHLTSeqNameFromIndex(seqIndex);
+        Int_t seqAlgPos = m_costData->getSeqAlgPosition(s, a);
 
-        const std::string _algName = TrigConfInterface::getHLTAlgNameFromSeqIDAndAlgPos(_seqIndex, _seqAlgPos);
-        const std::string _algType = TrigConfInterface::getHLTAlgClassNameFromSeqIDAndAlgPos(_seqIndex, _seqAlgPos);
+        const std::string algName = TrigConfInterface::getHLTAlgNameFromSeqIDAndAlgPos(seqIndex, seqAlgPos);
+        const std::string algType = TrigConfInterface::getHLTAlgClassNameFromSeqIDAndAlgPos(seqIndex, seqAlgPos);
 
-        Int_t _seqAlgNameHash = TrigConfInterface::getHLTAlgClassNameIDFromSeqIDAndAlgPos(_seqIndex, _seqAlgPos);
+        Int_t seqAlgNameHash = TrigConfInterface::getHLTAlgClassNameIDFromSeqIDAndAlgPos(seqIndex, seqAlgPos);
 
         // Count how many we have already saved
-        UInt_t _nCountersOfThisAlg = 0;
-        for (CounterMapIt_t _it = _eventMap->begin(); _it != _eventMap->end(); ++_it) {
-          if (_it->first.find(_algName) != std::string::npos) ++_nCountersOfThisAlg;
+        UInt_t nCountersOfThisAlg = 0;
+        for (CounterMapIt_t it = eventMap->begin(); it != eventMap->end(); ++it) {
+          if (it->first.find(algName) != std::string::npos) ++nCountersOfThisAlg;
         }
 
         // Change the name such that we always get a new counter
-        const std::string _algNewName = _algName + std::string("[") + intToString(_nCountersOfThisAlg) +
+        const std::string algNewName = algName + std::string("[") + intToString(nCountersOfThisAlg) +
                                         std::string("]");
-        CounterBase* _counter = getCounter(_eventMap, _algNewName, _seqAlgNameHash);
-        _counter->decorate(kDecAlgClassName, _algType);
-        _counter->decorate(kDecChainName, _chainName);
-        _counter->decorate(kDecSeqName, _seqName);
-        _counter->decorate(kDecCounterClassification, _type);
-        _counter->decorate(kDecID, _location++);
-        _counter->processEventCounter(_s, _a, _weight);
+        CounterBase* counter = getCounter(eventMap, algNewName, seqAlgNameHash);
+        counter->decorate(kDecAlgClassName, algType);
+        counter->decorate(kDecChainName, chainName);
+        counter->decorate(kDecSeqName, seqName);
+        counter->decorate(kDecCounterClassification, type);
+        counter->decorate(kDecID, location++);
+        counter->processEventCounter(s, a, weight);
       }
     }
 
-    endEvent(_weight);
+    endEvent(weight);
     m_timer.stop();
   }
 
@@ -179,23 +179,23 @@ namespace TrigCostRootAnalysis {
    * The full event monitor does not care for ranges, this should never be called
    * @return false
    */
-  Bool_t MonitorFullEvent::getIfActive(ConfKey_t _mode) {
+  Bool_t MonitorFullEvent::getIfActive(ConfKey_t mode) {
     Error("MonitorFullEvent::getIfActive", "Does not make sense to call for the FullEvent monitor (key %s)",
-          Config::config().getName(_mode).c_str());
+          Config::config().getName(mode).c_str());
     return kFALSE;
   }
 
   /**
    * Construct new counter of correct derived type, pass back as base type.
    * This function must be implemented by all derived monitor types.
-   * @see MonitorBase::addCounter( const std::string &_name, Int_t _ID )
-   * @param _name Cost reference to name of counter.
-   * @param _ID Reference to ID number of counter.
+   * @see MonitorBase::addCounter( const std::string &_name, Int_t ID )
+   * @param name Cost reference to name of counter.
+   * @param ID Reference to ID number of counter.
    * @returns Base class pointer to new counter object of correct serived type.
    */
-  CounterBase* MonitorFullEvent::newCounter(const std::string& _name, Int_t _ID) {
+  CounterBase* MonitorFullEvent::newCounter(const std::string& name, Int_t ID) {
     // Note - we use Algorithm counter objects in this monitor
-    return new CounterAlgorithm(m_costData, _name, _ID, m_detailLevel, (MonitorBase*) this);
+    return new CounterAlgorithm(m_costData, name, ID, m_detailLevel, (MonitorBase*) this);
   }
 
   /**
@@ -205,85 +205,84 @@ namespace TrigCostRootAnalysis {
     // No histogram output for MonitorFullEvent
 
     // Define output table
-    std::vector<TableColumnFormatter> _toSave;
+    std::vector<TableColumnFormatter> toSave;
 
-    _toSave.push_back(TableColumnFormatter("Execution ID",
+    toSave.push_back(TableColumnFormatter("Execution ID",
                                            "0 is the first algorithm to execute in the event. 1 is the second and so on.",
                                            kDecID, kSavePerCall, 0, kFormatOptionUseIntDecoration));
 
-    //_toSave.push_back( TableColumnFormatter("Start Time (s)",
+    //toSave.push_back( TableColumnFormatter("Start Time (s)",
     //  "Timestamp of the begining of this algorithms execution.",
     //  kDecStartTime, kSavePerCall, 4, kFormatOptionUseFloatDecoration ) );
 
-    _toSave.push_back(TableColumnFormatter("Elapsed Time (s)",
+    toSave.push_back(TableColumnFormatter("Elapsed Time (s)",
                                            "How long into the execution was it before this alg was called.",
                                            kDecElapsedTime, kSavePerCall, 4, kFormatOptionUseFloatDecoration));
 
-    _toSave.push_back(TableColumnFormatter("Chain Name",
+    toSave.push_back(TableColumnFormatter("Chain Name",
                                            "Chain which requested this algorithm call.",
                                            kDecChainName, kSavePerCall, 0, kFormatOptionUseStringDecoration));
 
-    _toSave.push_back(TableColumnFormatter("Sequence Step",
+    toSave.push_back(TableColumnFormatter("Sequence Step",
                                            "Sequence step of this algorithm.",
                                            kDecSeqName, kSavePerCall, 0, kFormatOptionUseStringDecoration));
 
-    _toSave.push_back(TableColumnFormatter("Algorithm Class",
+    toSave.push_back(TableColumnFormatter("Algorithm Class",
                                            "Class name of this algorithm instance.",
                                            kDecAlgClassName, kSavePerCall, 0, kFormatOptionUseStringDecoration));
 
-    _toSave.push_back(TableColumnFormatter("RoI ID(s)",
+    toSave.push_back(TableColumnFormatter("RoI ID(s)",
                                            "Regions of interest to be processed by this algorithm.",
                                            kDecROIString, kSavePerCall, 0, kFormatOptionUseStringDecoration));
 
-    _toSave.push_back(TableColumnFormatter("Algorithm Status",
+    toSave.push_back(TableColumnFormatter("Algorithm Status",
                                            "If the result of this algorithm call was cached.",
                                            kDecCallOrCache, kSavePerCall, 0, kFormatOptionUseStringDecoration));
 
-    _toSave.push_back(TableColumnFormatter("Algorithm Total Time (ms)",
+    toSave.push_back(TableColumnFormatter("Algorithm Total Time (ms)",
                                            "Total (CPU + ROS) time for this algorithm execution",
                                            kVarTime, kSavePerCall, 2));
 
-    _toSave.push_back(TableColumnFormatter("# Data Requests",
+    toSave.push_back(TableColumnFormatter("# Data Requests",
                                            "Number of calls to the ROS made by this algorithm execution",
                                            kVarROSCalls, kSavePerCall, 0));
 
-    _toSave.push_back(TableColumnFormatter("ROB Time (ms)",
+    toSave.push_back(TableColumnFormatter("ROB Time (ms)",
                                            "Time spent retrieving data from ROBs for this algorithm execution.",
                                            kVarROSTime, kSavePerCall, 2));
 
-    _toSave.push_back(TableColumnFormatter("# Cached ROBs",
+    toSave.push_back(TableColumnFormatter("# Cached ROBs",
                                            "Number of cached ROBs fetched by this algorithm execution.",
                                            kVarROBReqs, kSavePerCall, 0));
 
-    _toSave.push_back(TableColumnFormatter("# Retrieved ROBs",
+    toSave.push_back(TableColumnFormatter("# Retrieved ROBs",
                                            "Number of ROBs retrieved by this algorithm execution",
                                            kVarROBRets, kSavePerCall, 0));
 
-    _toSave.push_back(TableColumnFormatter("Cached ROBs Size (kB)",
+    toSave.push_back(TableColumnFormatter("Cached ROBs Size (kB)",
                                            "Size of cached ROBs fetched by this algorithm execution.",
                                            kVarROBReqSize, kSavePerCall, 2));
 
-    _toSave.push_back(TableColumnFormatter("Retrieved ROBs Size (kB)",
+    toSave.push_back(TableColumnFormatter("Retrieved ROBs Size (kB)",
                                            "Size of ROBs fetched by this algorithm execution.",
                                            kVarROBRetSize, kSavePerCall, 2));
 
-    _toSave.push_back(TableColumnFormatter("Data Requests",
+    toSave.push_back(TableColumnFormatter("Data Requests",
                                            "List of ROS calls by this algorithm and their multiplicity.",
                                            kDecROSString, kSavePerCall, 0, kFormatOptionUseStringDecoration));
 
     m_filterOutput = kTRUE;
     filterOutputOnStrDecoration(kDecCounterClassification, m_randomString);
-    sharedTableOutputRoutine(_toSave);
+    sharedTableOutputRoutine(toSave);
 
     setName("Slow_Evnt");
     filterOutputOnStrDecoration(kDecCounterClassification, m_slowString);
-    sharedTableOutputRoutine(_toSave);
+    sharedTableOutputRoutine(toSave);
   }
 } // namespace TrigCostRootAnalysis
 
 // Store some old code here - could come in handy again
-// void CounterFullEvent::debug(UInt_t _e) {
-//   UNUSED( _e );
+// void CounterFullEvent::debug(UInt_t /*e*/) {
 //   // Loop over TEs
 //   std::ofstream fout(std::string("te_test"+getName()+".dot").c_str());
 //   fout << "digraph G{" << std::endl;
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorGlobals.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorGlobals.cxx
index ef9c8f7c2feb848964abc38a54d9fd9052ba6383..3175733f9b4bfc59e7911b03825dab56e1aabf11 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorGlobals.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorGlobals.cxx
@@ -30,7 +30,7 @@ namespace TrigCostRootAnalysis {
   /**
    * Monitor constructor. Sets name and calls base constructor.
    */
-  MonitorGlobals::MonitorGlobals(const TrigCostData* _costData) : MonitorBase(_costData, "Global") {
+  MonitorGlobals::MonitorGlobals(const TrigCostData* costData) : MonitorBase(costData, "Global") {
     m_dummyCounter = newCounter(Config::config().getStr(kDummyString), INT_MIN);
   }
 
@@ -38,33 +38,33 @@ namespace TrigCostRootAnalysis {
    * The global monitor records overviews. Each counter corresponds to a whole lumi block.
    * It is sensible to only enable this for the "All" or "Per HLT keyset" ranges.
    * But can be used with "Per lumi block" as well, it will just only have one entry.
-   * @param _weight The event weight.
+   * @param weight The event weight.
    */
-  void MonitorGlobals::newEvent(Float_t _weight) {
+  void MonitorGlobals::newEvent(Float_t weight) {
     m_timer.start();
     if (Config::config().debug()) Info("MonitorGlobals::newEvent", "*** Processing Global Quantites ***");
 
 
     //Now loop over the counter collections;
-    for (CounterMapSetIt_t _cmsIt = m_collectionsToProcess.begin(); _cmsIt != m_collectionsToProcess.end(); ++_cmsIt) {
-      CounterMap_t* _counterMap = *_cmsIt;
+    for (CounterMapSetIt_t cmsIt = m_collectionsToProcess.begin(); cmsIt != m_collectionsToProcess.end(); ++cmsIt) {
+      CounterMap_t* counterMap = *cmsIt;
 
       startEvent();
 
       //Get the counter for this lumiblock
-      std::stringstream _ss;
-      _ss << std::setfill('0') << std::setw(5) << m_costData->getLumi();
-      const std::string _lumiBlockString = std::string("LumiBlock_") + _ss.str();
-      CounterBase* _counter = getCounter(_counterMap, _lumiBlockString, m_costData->getLumi());
-      _counter->processEventCounter(0, 0, _weight);
+      std::stringstream ss;
+      ss << std::setfill('0') << std::setw(5) << m_costData->getLumi();
+      const std::string lumiBlockString = std::string("LumiBlock_") + ss.str();
+      CounterBase* counter = getCounter(counterMap, lumiBlockString, m_costData->getLumi());
+      counter->processEventCounter(0, 0, weight);
 
       // Also process the All LB counter, we give this the ID -1
       // Don't want to do this if we're iterating over a single-LB collection
-      if (m_counterMapType[_counterMap] != kDoLumiBlockSummary) {
-        getCounter(_counterMap, Config::config().getStr(kAllString), -1)->processEventCounter(0, 0, _weight);
+      if (m_counterMapType[counterMap] != kDoLumiBlockSummary) {
+        getCounter(counterMap, Config::config().getStr(kAllString), -1)->processEventCounter(0, 0, weight);
       }
 
-      endEvent(_weight);
+      endEvent(weight);
     }
     m_timer.stop();
   }
@@ -74,8 +74,8 @@ namespace TrigCostRootAnalysis {
    * Note these are currently hard-coded. We may want to make them configurable
    * @return If this monitor should be active for a given mode.
    */
-  Bool_t MonitorGlobals::getIfActive(ConfKey_t _mode) {
-    switch (_mode) {
+  Bool_t MonitorGlobals::getIfActive(ConfKey_t mode) {
+    switch (mode) {
     case kDoAllSummary:       return kTRUE;
 
     case kDoKeySummary:       return kTRUE;
@@ -83,7 +83,7 @@ namespace TrigCostRootAnalysis {
     case kDoLumiBlockSummary: return kTRUE;
 
     default: Error("MonitorGlobals::getIfActive", "An invalid summary mode was provided (key %s)",
-                   Config::config().getName(_mode).c_str());
+                   Config::config().getName(mode).c_str());
     }
     return kFALSE;
   }
@@ -96,200 +96,200 @@ namespace TrigCostRootAnalysis {
     // events we saw vs. how many were were expecting to see
     // Loop over all my counter collections
     // TODO make a finalise loop and put me in it
-    for (CounterCollectionIt_t _ccIt = m_counterCollections.begin(); _ccIt != m_counterCollections.end(); ++_ccIt) {
-      std::string _counterCollectionName = (*_ccIt).first; // This collection name
-      CounterMap_t _counterMap = (*_ccIt).second; // This collection's counter map
-      LumiCollector* _collectionLumiCollector = m_collectionLumiCollector[ _counterCollectionName ]; // This
+    for (CounterCollectionIt_t ccIt = m_counterCollections.begin(); ccIt != m_counterCollections.end(); ++ccIt) {
+      std::string counterCollectionName = (*ccIt).first; // This collection name
+      CounterMap_t counterMap = (*ccIt).second; // This collection's counter map
+      LumiCollector* collectionLumiCollector = m_collectionLumiCollector[ counterCollectionName ]; // This
                                                                                                      // collection's
                                                                                                      // lumi counter
       // Loop over my counters
-      for (CounterMapIt_t _cmIt = _counterMap.begin(); _cmIt != _counterMap.end(); ++_cmIt) {
+      for (CounterMapIt_t cmIt = counterMap.begin(); cmIt != counterMap.end(); ++cmIt) {
         // Get the effective lumi for this LB. The ID of the counter is the LB number
-        CounterBase* _counter = (*_cmIt).second;
-        Int_t _lbNumber = _counter->getID();
-        Float_t _lbTime = 0.;
-        if (_lbNumber == -1) {
+        CounterBase* counter = (*cmIt).second;
+        Int_t lbNumber = counter->getID();
+        Float_t lbTime = 0.;
+        if (lbNumber == -1) {
           // I'm the 'ALL' counter
-          _lbTime = _collectionLumiCollector->getTotalLumiBlockTime();
+          lbTime = collectionLumiCollector->getTotalLumiBlockTime();
         } else {
           // I'm a normal counter
-          _lbTime = _collectionLumiCollector->getLumiBlockTime(_lbNumber);
+          lbTime = collectionLumiCollector->getLumiBlockTime(lbNumber);
         }
-        _counter->decorate(kDecLbLength, _lbTime);
+        counter->decorate(kDecLbLength, lbTime);
       }
     }
 
     m_filterOutput = kFALSE; // Apply any user-specified name filter to output
 
     // Specify what plots we wish to save from the counters
-    VariableOptionVector_t _toSavePlots = m_dummyCounter->getAllHistograms();
-    sharedHistogramOutputRoutine(_toSavePlots);
+    VariableOptionVector_t toSavePlots = m_dummyCounter->getAllHistograms();
+    sharedHistogramOutputRoutine(toSavePlots);
 
-    std::vector<TableColumnFormatter> _toSave;
+    std::vector<TableColumnFormatter> toSave;
 
-    const Bool_t _isAPrediction = (Bool_t) Config::config().getInt(kIsCPUPrediction);
+    const Bool_t isAPrediction = (Bool_t) Config::config().getInt(kIsCPUPrediction);
 
-    if (_isAPrediction == kTRUE) {
-      _toSave.push_back(TableColumnFormatter("Effective LB Length (s)",
+    if (isAPrediction == kTRUE) {
+      toSave.push_back(TableColumnFormatter("Effective LB Length (s)",
                                              "Effective length of the lumi block after correcting for how many events we have seen.",
                                              kDecLbLength, kSavePerCall, 2, kFormatOptionUseFloatDecoration)); // kSavePerCall
                                                                                                                // is
                                                                                                                // ignored
                                                                                                                // here
     } else {
-      _toSave.push_back(TableColumnFormatter("Lumi Block Length (s)",
+      toSave.push_back(TableColumnFormatter("Lumi Block Length (s)",
                                              "Length of this luminosity block.",
                                              kDecLbLength, kSavePerCall, 2, kFormatOptionUseFloatDecoration)); // kSavePerCall
                                                                                                                // is
                                                                                                                // ignored
                                                                                                                // here
 
-      _toSave.push_back(TableColumnFormatter("HLT PUs",
+      toSave.push_back(TableColumnFormatter("HLT PUs",
                                              "Number of HLT Processing Units in the HLT farm which were active for this lumi block.",
                                              kVarHLTPUs, kSavePerCall, 0));
     }
 
-    if (_isAPrediction == kTRUE) {
-      _toSave.push_back(TableColumnFormatter("Predicted HLT Cores From Algs",
+    if (isAPrediction == kTRUE) {
+      toSave.push_back(TableColumnFormatter("Predicted HLT Cores From Algs",
                                              "Approximated by Total HLT Algorithm Time / Effective Lumi Block Length",
                                              &tableFnGlobalGetHLTNodePrediction, 2));
 
-      _toSave.push_back(TableColumnFormatter("Predicted Cores (Algs) Err",
+      toSave.push_back(TableColumnFormatter("Predicted Cores (Algs) Err",
                                              "sqrt(sumW2 AlgTime) / Effective Lumi Block Length",
                                              &tableFnGlobalGetHLTNodePredictionErr, 2));
 
-      _toSave.push_back(TableColumnFormatter("Predicted HLT Cores From Steering",
+      toSave.push_back(TableColumnFormatter("Predicted HLT Cores From Steering",
                                              "Approximated by Total HLT Algorithm Time / Effective Lumi Block Length",
                                              &tableFnGlobalGetHLTNodePredictionSteering, 2));
 
-      _toSave.push_back(TableColumnFormatter("Predicted Cores (Steer) Err",
+      toSave.push_back(TableColumnFormatter("Predicted Cores (Steer) Err",
                                              "sqrt(sumW2 AlgTime) / Effective Lumi Block Length",
                                              &tableFnGlobalGetHLTNodePredictionErrSteering, 2));
     } else {
-      _toSave.push_back(TableColumnFormatter("Farm Usage from Steering (%)",
+      toSave.push_back(TableColumnFormatter("Farm Usage from Steering (%)",
                                              "Approximated by Total HLT Steering Time / (Lumi Block Length * N HLT PUs)",
                                              &tableFnGlobalGetSteeringFarmUse, 2));
     }
 
-    _toSave.push_back(TableColumnFormatter("Raw Events",
+    toSave.push_back(TableColumnFormatter("Raw Events",
                                            "Raw nummber of events for which we have collected statistics for before weighting",
                                            kVarEventsActive, kSavePerCall, 0, kFormatOptionUseEntries));
 
-    if (_isAPrediction == kFALSE) {
-      _toSave.push_back(TableColumnFormatter("Events Passing L1",
+    if (isAPrediction == kFALSE) {
+      toSave.push_back(TableColumnFormatter("Events Passing L1",
                                              "Total number of events where at least one L1 chain is passed after veto.",
                                              kVarL1PassEvents, kSavePerCall, 0));
 
-      _toSave.push_back(TableColumnFormatter("Input Rate from L1",
+      toSave.push_back(TableColumnFormatter("Input Rate from L1",
                                              "Total number of events where at least one L1 chain is passed after veto.",
                                              kVarL1PassEvents, kSavePerCall, 2, kFormatOptionNormaliseLBTimeDec));
     }
 
-    if (_isAPrediction == kTRUE) {
+    if (isAPrediction == kTRUE) {
       // If prediction - then the number of 'pass' events is compilicated and needs the RatesMonitor.
       // Here we can give the effective total number of events however
-      _toSave.push_back(TableColumnFormatter(std::string("# ") + getLevelStr() + std::string(" Events"),
+      toSave.push_back(TableColumnFormatter(std::string("# ") + getLevelStr() + std::string(" Events"),
                                              "Total number of events seen at this level.",
                                              kVarHLTEvents, kSavePerCall, 0));
     } else {
       // If not weighting, then just count events where a chain passes
-      _toSave.push_back(TableColumnFormatter(std::string("# ") + getLevelStr() + std::string(" Passes"),
+      toSave.push_back(TableColumnFormatter(std::string("# ") + getLevelStr() + std::string(" Passes"),
                                              "Total number of events seen at this which have at least one chain passing raw.",
                                              kVarHLTPassEvents, kSavePerCall, 0));
 
-      _toSave.push_back(TableColumnFormatter(getLevelStr() + std::string(" Pass Fraction [%]"),
+      toSave.push_back(TableColumnFormatter(getLevelStr() + std::string(" Pass Fraction [%]"),
                                              "What percentage of L1 events are kept",
                                              kVarHLTPassEvents, kSavePerCall, kVarL1PassEvents, kSavePerCall, 2,
                                              kFormatOptionToPercentage));
 
       // These two are of no help if we're throwing weights and prescales all over the place
-      _toSave.push_back(TableColumnFormatter("Steering Time [s]",
+      toSave.push_back(TableColumnFormatter("Steering Time [s]",
                                              "Total difference between the start of the first and the end of the last algorithm execution summed over all events.",
                                              kVarSteeringTime, kSavePerEvent, 2, kFormatOptionMiliSecToSec));
 
-      _toSave.push_back(TableColumnFormatter("Steering Time/Event [ms]",
+      toSave.push_back(TableColumnFormatter("Steering Time/Event [ms]",
                                              "Average time difference between the start of the first and the end of the last algorithm execution per event.",
                                              kVarSteeringTime, kSavePerEvent, kVarEventsActive, kSavePerCall, 2));
     }
 
-    _toSave.push_back(TableColumnFormatter("Alg Walltime Time [s]",
+    toSave.push_back(TableColumnFormatter("Alg Walltime Time [s]",
                                            "The sum over all algorithms walltimes.",
                                            kVarAlgTime, kSavePerCall, 2, kFormatOptionMiliSecToSec));
 
-    _toSave.push_back(TableColumnFormatter("Alg Walltime Time/Event [ms]",
+    toSave.push_back(TableColumnFormatter("Alg Walltime Time/Event [ms]",
                                            "Average per event of the sum over all algorithms walltimes.",
                                            kVarAlgTime, kSavePerEvent, kVarEventsActive, kSavePerCall, 2));
 
-    _toSave.push_back(TableColumnFormatter("Alg Walltime Time/Call [ms]",
+    toSave.push_back(TableColumnFormatter("Alg Walltime Time/Call [ms]",
                                            "Average per algorithm call of the sum over all algorithms walltimes.",
                                            kVarAlgTime, kSavePerCall, kVarAlgCalls, kSavePerCall, 2));
 
-    _toSave.push_back(TableColumnFormatter("Time Use In Rerun [%]",
+    toSave.push_back(TableColumnFormatter("Time Use In Rerun [%]",
                                            "Percentage of this total CPU usage which comes from resurrection.",
                                            kVarRerunTime, kSavePerEvent, kVarAlgTime, kSavePerEvent, 2,
                                            kFormatOptionToPercentage));
 
-    _toSave.push_back(TableColumnFormatter("Time Use In Accepted Events [%]",
+    toSave.push_back(TableColumnFormatter("Time Use In Accepted Events [%]",
                                            "Percentage of this total CPU usage which comes from resurrection.",
                                            kVarPassTime, kSavePerEvent, kVarAlgTime, kSavePerEvent, 2,
                                            kFormatOptionToPercentage));
 
-    _toSave.push_back(TableColumnFormatter("ROS Walltime Time/Event [ms]",
+    toSave.push_back(TableColumnFormatter("ROS Walltime Time/Event [ms]",
                                            "Average per event of the sum over all algorithms ROS request times.",
                                            kVarROSTime, kSavePerEvent, kVarEventsActive, kSavePerCall, 2));
 
-    _toSave.push_back(TableColumnFormatter("Data Requests/Event",
+    toSave.push_back(TableColumnFormatter("Data Requests/Event",
                                            "Average per event number of calls made to the Readout System by executed algorithms.",
                                            kVarROSCalls, kSavePerEvent, kVarEventsActive, kSavePerCall, 2));
 
-    _toSave.push_back(TableColumnFormatter("RoIs/Event",
+    toSave.push_back(TableColumnFormatter("RoIs/Event",
                                            "Average per event number of Regions of Interest supplied from the lower trigger level.",
                                            kVarROI, kSavePerEvent, kVarEventsActive, kSavePerCall, 2));
 
-    const IntStringMap_t _comp = TrigXMLService::trigXMLService().getComputerTypeToNameMap();
-    if (_comp.size() >= 4) {
-      _toSave.push_back(TableColumnFormatter(std::string(_comp.at(1) + " Steering Time/Event [ms]"),
+    const IntStringMap_t comp = TrigXMLService::trigXMLService().getComputerTypeToNameMap();
+    if (comp.size() >= 4) {
+      toSave.push_back(TableColumnFormatter(std::string(comp.at(1) + " Steering Time/Event [ms]"),
                                              "Total steering time per event for this type of CPU",
                                              kVarSteeringTimeCPUType1, kSavePerEvent, kVarEventsCPUType1, kSavePerCall,
                                              2));
 
-      _toSave.push_back(TableColumnFormatter(std::string(_comp.at(2) + " Steering Time/Event [ms]"),
+      toSave.push_back(TableColumnFormatter(std::string(comp.at(2) + " Steering Time/Event [ms]"),
                                              "Total steering time per event for this type of CPU",
                                              kVarSteeringTimeCPUType2, kSavePerEvent, kVarEventsCPUType2, kSavePerCall,
                                              2));
 
-      _toSave.push_back(TableColumnFormatter(std::string(_comp.at(3) + " Steering Time/Event [ms]"),
+      toSave.push_back(TableColumnFormatter(std::string(comp.at(3) + " Steering Time/Event [ms]"),
                                              "Total steering time per event for this type of CPU",
                                              kVarSteeringTimeCPUType3, kSavePerEvent, kVarEventsCPUType3, kSavePerCall,
                                              2));
 
-      _toSave.push_back(TableColumnFormatter(std::string(_comp.at(4) + " Steering Time/Event [ms]"),
+      toSave.push_back(TableColumnFormatter(std::string(comp.at(4) + " Steering Time/Event [ms]"),
                                              "Total steering time per event for this type of CPU",
                                              kVarSteeringTimeCPUType4, kSavePerEvent, kVarEventsCPUType4, kSavePerCall,
                                              2));
     }
 
-    _toSave.push_back(TableColumnFormatter("CostMon Time/Event [ms]",
+    toSave.push_back(TableColumnFormatter("CostMon Time/Event [ms]",
                                            "Average time per event to execute cost monitoring.",
                                            kVarTrigCostTime, kSavePerEvent, kVarEventsActive, kSavePerCall, 2));
     
-    _toSave.push_back(TableColumnFormatter("Mu",
+    toSave.push_back(TableColumnFormatter("Mu",
 					   "Average pileup per LB", 
 					   kDecLBMuValue, kSavePerEvent, 2, kFormatOptionUseFloatDecoration));
 
-    // _toSave.push_back( TableColumnFormatter("Texec Time/Event [ms]",
+    // toSave.push_back( TableColumnFormatter("Texec Time/Event [ms]",
     //   "Average time per event for the Texec timer.",
     //   kVarTexecTime, kSavePerEvent, kVarEventsActive, kSavePerCall, 2) );
 
-    // _toSave.push_back( TableColumnFormatter("Chain Exec Time/Event [ms]",
+    // toSave.push_back( TableColumnFormatter("Chain Exec Time/Event [ms]",
     //   "Average per event to process all chains.",
     //   kVarChainExecTime, kSavePerEvent, kVarEventsActive, kSavePerCall, 2) );
 
-    // _toSave.push_back( TableColumnFormatter("Result Builder Time/Event [ms]",
+    // toSave.push_back( TableColumnFormatter("Result Builder Time/Event [ms]",
     //   "Average per event number to run the Result Builder.",
     //   kVarResultBuildingTime, kSavePerEvent, kVarEventsActive, kSavePerCall, 2) );
 
-    // _toSave.push_back( TableColumnFormatter("Monitoring Time/Event [ms]",
+    // toSave.push_back( TableColumnFormatter("Monitoring Time/Event [ms]",
     //   "Average per event to run all monitoring tools. Excluding CostMon/",
     //   kVarMonitoringTime, kSavePerEvent, kVarEventsActive, kSavePerCall, 2) );
 
@@ -299,18 +299,18 @@ namespace TrigCostRootAnalysis {
     // Fin HLT farm usage estimates
     // TODO Lumi block scaling corrections
 
-    sharedTableOutputRoutine(_toSave);
+    sharedTableOutputRoutine(toSave);
   }
 
   /**
    * Construct new counter of correct derived type, pass back as base type.
    * This function must be implemented by all derived monitor types.
-   * @see MonitorBase::addCounter( const std::string &_name, Int_t _ID )
-   * @param _name Cost reference to name of counter.
-   * @param _ID Reference to ID number of counter.
+   * @see MonitorBase::addCounter( const std::string &name, Int_t ID )
+   * @param name Cost reference to name of counter.
+   * @param ID Reference to ID number of counter.
    * @returns Base class pointer to new counter object of correct serived type.
    */
-  CounterBase* MonitorGlobals::newCounter(const std::string& _name, Int_t _ID) {
-    return new CounterGlobals(m_costData, _name, _ID, m_detailLevel, (MonitorBase*) this);
+  CounterBase* MonitorGlobals::newCounter(const std::string& name, Int_t ID) {
+    return new CounterGlobals(m_costData, name, ID, m_detailLevel, (MonitorBase*) this);
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROBIN.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROBIN.cxx
index 7910d45f461b86e7b8fd4d3f5277be08ff76e740..ae63aa8d0de107018b6631b0228e9c85967bc49d 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROBIN.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROBIN.cxx
@@ -30,7 +30,7 @@ namespace TrigCostRootAnalysis {
   /**
    * Monitor constructor. Sets name and calls base constructor.
    */
-  MonitorROBIN::MonitorROBIN(const TrigCostData* _costData) : MonitorBase(_costData, "ROBIN") {
+  MonitorROBIN::MonitorROBIN(const TrigCostData* costData) : MonitorBase(costData, "ROBIN") {
     m_dummyCounter = newCounter(Config::config().getStr(kDummyString), INT_MIN);
     allowSameIDCounters();
   }
@@ -38,42 +38,42 @@ namespace TrigCostRootAnalysis {
   /**
    * Process new event for this monitor.
    * For the ROS, all ROS data is looped over and recorded.
-   * @param _weight The event weight.
+   * @param weight The event weight.
    */
-  void MonitorROBIN::newEvent(Float_t _weight) {
+  void MonitorROBIN::newEvent(Float_t weight) {
     m_timer.start();
     if (Config::config().debug()) {
-      Int_t _N = 0;
-      for (UInt_t _rob = 0; _rob < m_costData->getNROBs(); ++_rob) {
-        _N += m_costData->getROBDataN(_rob);
+      Int_t N = 0;
+      for (UInt_t rob = 0; rob < m_costData->getNROBs(); ++rob) {
+        N += m_costData->getROBDataN(rob);
       }
-      Info("MonitorROBIN::newEvent", "*** Processing ROBIN ***  Size %i ***", _N);
+      Info("MonitorROBIN::newEvent", "*** Processing ROBIN ***  Size %i ***", N);
     }
 
     //Now loop over the counter collections;
-    for (CounterMapSetIt_t _cmsIt = m_collectionsToProcess.begin(); _cmsIt != m_collectionsToProcess.end(); ++_cmsIt) {
-      CounterMap_t* _counterMap = *_cmsIt;
+    for (CounterMapSetIt_t cmsIt = m_collectionsToProcess.begin(); cmsIt != m_collectionsToProcess.end(); ++cmsIt) {
+      CounterMap_t* counterMap = *cmsIt;
 
       startEvent();
 
       // All looping over individual RODs to do their event monitoring can go here
-      for (UInt_t _robReq = 0; _robReq < m_costData->getNROBs(); ++_robReq) {
-        //Info("TEMP", "*** ROBIN MON *** REQUEST %i / %i", _rob,  m_costData->getNROBs()  );
+      for (UInt_t robReq = 0; robReq < m_costData->getNROBs(); ++robReq) {
+        //Info("TEMP", "*** ROBIN MON *** REQUEST %i / %i", rob,  m_costData->getNROBs()  );
 
-        StringIntSetMap_t _ROBINMapping = getROBINMapping(_robReq);
-        for (StringIntSetMapIt_t _reqIt = _ROBINMapping.begin(); _reqIt != _ROBINMapping.end(); ++_reqIt) {
-          CounterBase* _counter = getCounter(_counterMap, (*_reqIt).first, 0 /*not used*/);
+        StringIntSetMap_t ROBINMapping = getROBINMapping(robReq);
+        for (StringIntSetMapIt_t reqIt = ROBINMapping.begin(); reqIt != ROBINMapping.end(); ++reqIt) {
+          CounterBase* counter = getCounter(counterMap, (*reqIt).first, 0 /*not used*/);
 
-          if (_counter->getCalls() == 0) {
-            _counter->decorate(kDecType, Config::config().getStr(kROBINString));
-            _counter->decorate(kDecMyROS, (*_reqIt).first);
+          if (counter->getCalls() == 0) {
+            counter->decorate(kDecType, Config::config().getStr(kROBINString));
+            counter->decorate(kDecMyROS, (*reqIt).first);
           }
 
-          _counter->processEventCounter(_robReq, UINT_MAX /*not used*/, _weight);
+          counter->processEventCounter(robReq, UINT_MAX /*not used*/, weight);
         }
       }
 
-      endEvent(_weight);
+      endEvent(weight);
     }
     m_timer.stop();
   }
@@ -83,8 +83,8 @@ namespace TrigCostRootAnalysis {
    * Note these are currently hard-coded. We may want to make them configurable
    * @return If this monitor should be active for a given mode.
    */
-  Bool_t MonitorROBIN::getIfActive(ConfKey_t _mode) {
-    switch (_mode) {
+  Bool_t MonitorROBIN::getIfActive(ConfKey_t mode) {
+    switch (mode) {
     case kDoAllSummary:       return kTRUE;
 
     case kDoKeySummary:       return kTRUE;
@@ -92,7 +92,7 @@ namespace TrigCostRootAnalysis {
     case kDoLumiBlockSummary: return kFALSE;
 
     default: Error("MonitorROBIN::getIfActive", "An invalid summary mode was provided (key %s)",
-                   Config::config().getName(_mode).c_str());
+                   Config::config().getName(mode).c_str());
     }
     return kFALSE;
   }
@@ -103,23 +103,23 @@ namespace TrigCostRootAnalysis {
   void MonitorROBIN::saveOutput() {
     m_filterOutput = kTRUE; // Apply any user-specified name filter to output
 
-    VariableOptionVector_t _toSave = m_dummyCounter->getAllHistograms();
-    sharedHistogramOutputRoutine(_toSave);
+    VariableOptionVector_t toSave = m_dummyCounter->getAllHistograms();
+    sharedHistogramOutputRoutine(toSave);
 
-    std::vector<TableColumnFormatter> _toSaveTable;
-    addCommonTableEntries(_toSaveTable);
-    sharedTableOutputRoutine(_toSaveTable);
+    std::vector<TableColumnFormatter> toSaveTable;
+    addCommonTableEntries(toSaveTable);
+    sharedTableOutputRoutine(toSaveTable);
   }
 
   /**
    * Construct new counter of correct derived type, pass back as base type.
    * This function must be implemented by all derived monitor types.
-   * @see MonitorBase::addCounter( const std::string &_name, Int_t _ID )
-   * @param _name Cost reference to name of counter.
-   * @param _ID Reference to ID number of counter.
+   * @see MonitorBase::addCounter( const std::string &_name, Int_t ID )
+   * @param name Cost reference to name of counter.
+   * @param ID Reference to ID number of counter.
    * @returns Base class pointer to new counter object of correct derived type.
    */
-  CounterBase* MonitorROBIN::newCounter(const std::string& _name, Int_t _ID) {
-    return new CounterROB(m_costData, _name, _ID, m_detailLevel, (MonitorBase*) this);
+  CounterBase* MonitorROBIN::newCounter(const std::string& name, Int_t ID) {
+    return new CounterROB(m_costData, name, ID, m_detailLevel, (MonitorBase*) this);
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROI.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROI.cxx
index 8f702f17f45c61d0a7d6a072355ad3326bbe706d..8ad301d44e2b89023a0bb569f5418376cc513bf2 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROI.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROI.cxx
@@ -25,40 +25,40 @@ namespace TrigCostRootAnalysis {
   /**
    * Monitor constructor. Sets name and calls base constructor.
    */
-  MonitorROI::MonitorROI(const TrigCostData* _costData) : MonitorBase(_costData, "ROI") {
+  MonitorROI::MonitorROI(const TrigCostData* costData) : MonitorBase(costData, "ROI") {
     m_dummyCounter = newCounter(Config::config().getStr(kDummyString), INT_MIN);
   }
 
   /**
    * Process new event for this monitor.
    * We have one counter per ROI type and a global one
-   * @param _weight The event weight.
+   * @param weight The event weight.
    */
-  void MonitorROI::newEvent(Float_t _weight) {
+  void MonitorROI::newEvent(Float_t weight) {
     m_timer.start();
     if (Config::config().debug()) Info("MonitorROI::newEvent", "*** Processing ROI ***");
 
     //Now loop over the counter collections;
 
-    for (CounterMapSetIt_t _cmsIt = m_collectionsToProcess.begin(); _cmsIt != m_collectionsToProcess.end(); ++_cmsIt) {
-      CounterMap_t* _counterMap = *_cmsIt;
+    for (CounterMapSetIt_t cmsIt = m_collectionsToProcess.begin(); cmsIt != m_collectionsToProcess.end(); ++cmsIt) {
+      CounterMap_t* counterMap = *cmsIt;
 
       startEvent();
 
       // Loop over all chains.
-      for (UInt_t _r = 0; _r < m_costData->getNRoIs(); ++_r) {
-        CounterBase* _counter = getCounter(_counterMap, m_costData->getRoITypeString(_r), 0);
+      for (UInt_t r = 0; r < m_costData->getNRoIs(); ++r) {
+        CounterBase* counter = getCounter(counterMap, m_costData->getRoITypeString(r), 0);
 
-        if (_counter != 0) {
-          _counter->processEventCounter(_r, 0, _weight);
+        if (counter != 0) {
+          counter->processEventCounter(r, 0, weight);
         }
 
         // Call another counter on all RoIs to get the global picture
-        _counter = getCounter(_counterMap, Config::config().getStr(kAllROIString), 6);
-        _counter->processEventCounter(_r, 0, _weight);
+        counter = getCounter(counterMap, Config::config().getStr(kAllROIString), 6);
+        counter->processEventCounter(r, 0, weight);
       }
 
-      endEvent(_weight);
+      endEvent(weight);
     }
     m_timer.stop();
   }
@@ -68,8 +68,8 @@ namespace TrigCostRootAnalysis {
    * Note these are currently hard-coded. We may want to make them configurable
    * @return If this monitor should be active for a given mode.
    */
-  Bool_t MonitorROI::getIfActive(ConfKey_t _mode) {
-    switch (_mode) {
+  Bool_t MonitorROI::getIfActive(ConfKey_t mode) {
+    switch (mode) {
     case kDoAllSummary:       return kTRUE;
 
     case kDoKeySummary:       return kTRUE;
@@ -77,7 +77,7 @@ namespace TrigCostRootAnalysis {
     case kDoLumiBlockSummary: return kTRUE;
 
     default: Error("MonitorROI::getIfActive", "An invalid summary mode was provided (key %s)",
-                   Config::config().getName(_mode).c_str());
+                   Config::config().getName(mode).c_str());
     }
     return kFALSE;
   }
@@ -89,34 +89,34 @@ namespace TrigCostRootAnalysis {
     m_filterOutput = kFALSE; // Apply any user-specified name filter to output
 
     // Specify what plots we wish to save from the counters
-    VariableOptionVector_t _toSavePlots = m_dummyCounter->getAllHistograms();
-    sharedHistogramOutputRoutine(_toSavePlots);
+    VariableOptionVector_t toSavePlots = m_dummyCounter->getAllHistograms();
+    sharedHistogramOutputRoutine(toSavePlots);
 
-    std::vector<TableColumnFormatter> _toSaveTable;
-    _toSaveTable.push_back(TableColumnFormatter("ROIs",
+    std::vector<TableColumnFormatter> toSaveTable;
+    toSaveTable.push_back(TableColumnFormatter("ROIs",
                                                 "Total number of ROIs of this type.",
                                                 kVarCalls, kSavePerEvent, 0));
 
-    _toSaveTable.push_back(TableColumnFormatter("ROIs/Event",
+    toSaveTable.push_back(TableColumnFormatter("ROIs/Event",
                                                 "Average number of ROIs of this type per event.",
                                                 kVarCalls, kSavePerEvent, kVarEventsActive, kSavePerEvent, 2));
 
-    _toSaveTable.push_back(TableColumnFormatter("L1Thresholds/ROI",
+    toSaveTable.push_back(TableColumnFormatter("L1Thresholds/ROI",
                                                 "Average number of L1 Thresholds per ROI of this type.",
                                                 kVarL1Thresh, kSavePerCall, kVarCalls, kSavePerEvent, 2));
 
-    sharedTableOutputRoutine(_toSaveTable);
+    sharedTableOutputRoutine(toSaveTable);
   }
 
   /**
    * Construct new counter of correct derived type, pass back as base type.
    * This function must be implemented by all derived monitor types.
-   * @see MonitorBase::addCounter( const std::string &_name, Int_t _ID )
-   * @param _name Cost reference to name of counter.
-   * @param _ID Reference to ID number of counter.
+   * @see MonitorBase::addCounter( const std::string &_name, Int_t ID )
+   * @param name Cost reference to name of counter.
+   * @param ID Reference to ID number of counter.
    * @returns Base class pointer to new counter object of correct serived type.
    */
-  CounterBase* MonitorROI::newCounter(const std::string& _name, Int_t _ID) {
-    return new CounterROI(m_costData, _name, _ID, m_detailLevel, (MonitorBase*) this);
+  CounterBase* MonitorROI::newCounter(const std::string& name, Int_t ID) {
+    return new CounterROI(m_costData, name, ID, m_detailLevel, (MonitorBase*) this);
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROS.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROS.cxx
index f1b41332aaef02823dda0f742413152328d9816a..069268ee52533589a7acbb47ba0a0cc4ea95e549 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROS.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROS.cxx
@@ -29,7 +29,7 @@ namespace TrigCostRootAnalysis {
   /**
    * Monitor constructor. Sets name and calls base constructor.
    */
-  MonitorROS::MonitorROS(const TrigCostData* _costData) : MonitorBase(_costData, "ROS") {
+  MonitorROS::MonitorROS(const TrigCostData* costData) : MonitorBase(costData, "ROS") {
     m_dummyCounter = newCounter(Config::config().getStr(kDummyString), INT_MIN);
     allowSameIDCounters();
   }
@@ -37,41 +37,41 @@ namespace TrigCostRootAnalysis {
   /**
    * Process new event for this monitor.
    * For the ROS, all ROS data is looped over and recorded.
-   * @param _weight The event weight.
+   * @param weight The event weight.
    */
-  void MonitorROS::newEvent(Float_t _weight) {
+  void MonitorROS::newEvent(Float_t weight) {
     m_timer.start();
     if (Config::config().debug()) {
-      Int_t _N = 0;
-      for (UInt_t _rob = 0; _rob < m_costData->getNROBs(); ++_rob) {
-        _N += m_costData->getROBDataN(_rob);
+      Int_t N = 0;
+      for (UInt_t rob = 0; rob < m_costData->getNROBs(); ++rob) {
+        N += m_costData->getROBDataN(rob);
       }
-      Info("MonitorROS::newEvent", "*** Processing ROS ***  Size %i ***", _N);
+      Info("MonitorROS::newEvent", "*** Processing ROS ***  Size %i ***", N);
     }
 
     //Now loop over the counter collections;
-    for (CounterMapSetIt_t _cmsIt = m_collectionsToProcess.begin(); _cmsIt != m_collectionsToProcess.end(); ++_cmsIt) {
-      CounterMap_t* _counterMap = *_cmsIt;
+    for (CounterMapSetIt_t cmsIt = m_collectionsToProcess.begin(); cmsIt != m_collectionsToProcess.end(); ++cmsIt) {
+      CounterMap_t* counterMap = *cmsIt;
 
       startEvent();
 
-      for (UInt_t _robReq = 0; _robReq < m_costData->getNROBs(); ++_robReq) {
+      for (UInt_t robReq = 0; robReq < m_costData->getNROBs(); ++robReq) {
         // We want to call each ROS once, but the inner loop is over ROBINs
         // We now do this mapping in advance
-        StringIntSetMap_t _ROSMapping = getROSMapping(_robReq);
-        for (StringIntSetMapIt_t _reqIt = _ROSMapping.begin(); _reqIt != _ROSMapping.end(); ++_reqIt) {
+        StringIntSetMap_t ROSMapping = getROSMapping(robReq);
+        for (StringIntSetMapIt_t reqIt = ROSMapping.begin(); reqIt != ROSMapping.end(); ++reqIt) {
           // Get the counter - note we do not store any ID here
-          CounterBase* _counter = getCounter(_counterMap, (*_reqIt).first, 0 /*not used*/);
+          CounterBase* counter = getCounter(counterMap, (*reqIt).first, 0 /*not used*/);
           // This lets the counter know it should ask its parent for the full set of ROBINs to collate
-          if (_counter->getCalls() == 0) {
-            _counter->decorate(kDecType, Config::config().getStr(kROSString));
-            _counter->decorate(kDecMyROS, (*_reqIt).first);
+          if (counter->getCalls() == 0) {
+            counter->decorate(kDecType, Config::config().getStr(kROSString));
+            counter->decorate(kDecMyROS, (*reqIt).first);
           }
-          _counter->processEventCounter(_robReq, UINT_MAX /*not used*/, _weight);
+          counter->processEventCounter(robReq, UINT_MAX /*not used*/, weight);
         }
       }
 
-      endEvent(_weight);
+      endEvent(weight);
     }
     m_timer.stop();
   }
@@ -81,8 +81,8 @@ namespace TrigCostRootAnalysis {
    * Note these are currently hard-coded. We may want to make them configurable
    * @return If this monitor should be active for a given mode.
    */
-  Bool_t MonitorROS::getIfActive(ConfKey_t _mode) {
-    switch (_mode) {
+  Bool_t MonitorROS::getIfActive(ConfKey_t mode) {
+    switch (mode) {
     case kDoAllSummary:       return kTRUE;
 
     case kDoKeySummary:       return kTRUE;
@@ -90,7 +90,7 @@ namespace TrigCostRootAnalysis {
     case kDoLumiBlockSummary: return kTRUE;
 
     default: Error("MonitorROS::getIfActive", "An invalid summary mode was provided (key %s)",
-                   Config::config().getName(_mode).c_str());
+                   Config::config().getName(mode).c_str());
     }
     return kFALSE;
   }
@@ -101,23 +101,23 @@ namespace TrigCostRootAnalysis {
   void MonitorROS::saveOutput() {
     m_filterOutput = kTRUE; // Apply any user-specified name filter to output
 
-    VariableOptionVector_t _toSave = m_dummyCounter->getAllHistograms();
-    sharedHistogramOutputRoutine(_toSave);
+    VariableOptionVector_t toSave = m_dummyCounter->getAllHistograms();
+    sharedHistogramOutputRoutine(toSave);
 
-    std::vector<TableColumnFormatter> _toSaveTable;
-    addCommonTableEntries(_toSaveTable);
-    sharedTableOutputRoutine(_toSaveTable);
+    std::vector<TableColumnFormatter> toSaveTable;
+    addCommonTableEntries(toSaveTable);
+    sharedTableOutputRoutine(toSaveTable);
   }
 
   /**
    * Construct new counter of correct derived type, pass back as base type.
    * This function must be implemented by all derived monitor types.
-   * @see MonitorBase::addCounter( const std::string &_name, Int_t _ID )
-   * @param _name Cost reference to name of counter.
-   * @param _ID Reference to ID number of counter.
+   * @see MonitorBase::addCounter( const std::string &_name, Int_t ID )
+   * @param name Cost reference to name of counter.
+   * @param ID Reference to ID number of counter.
    * @returns Base class pointer to new counter object of correct derived type.
    */
-  CounterBase* MonitorROS::newCounter(const std::string& _name, Int_t _ID) {
-    return new CounterROB(m_costData, _name, _ID, m_detailLevel, (MonitorBase*) this);
+  CounterBase* MonitorROS::newCounter(const std::string& name, Int_t ID) {
+    return new CounterROB(m_costData, name, ID, m_detailLevel, (MonitorBase*) this);
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROSAlgorithm.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROSAlgorithm.cxx
index 3e45235d56010f5d810c7342f191432199c287d9..aed878edb4224bc34a5c4555b66b220598769b72 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROSAlgorithm.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROSAlgorithm.cxx
@@ -29,7 +29,7 @@ namespace TrigCostRootAnalysis {
   /**
    * Monitor constructor. Sets name and calls base constructor.
    */
-  MonitorROSAlgorithm::MonitorROSAlgorithm(const TrigCostData* _costData) : MonitorBase(_costData, "ROS_Algorithm") {
+  MonitorROSAlgorithm::MonitorROSAlgorithm(const TrigCostData* costData) : MonitorBase(costData, "ROS_Algorithm") {
     m_dummyCounter = newCounter(Config::config().getStr(kDummyString), INT_MIN);
     allowSameIDCounters();
     m_detailLevel = 0; // No Histogramming
@@ -38,51 +38,51 @@ namespace TrigCostRootAnalysis {
   /**
    * Process new event for this monitor.
    * For the ROS, all ROS data is looped over and recorded.
-   * @param _weight The event weight.
+   * @param weight The event weight.
    */
-  void MonitorROSAlgorithm::newEvent(Float_t _weight) {
+  void MonitorROSAlgorithm::newEvent(Float_t weight) {
     m_timer.start();
     if (Config::config().debug()) {
-      Int_t _N = 0;
-      for (UInt_t _rob = 0; _rob < m_costData->getNROBs(); ++_rob) {
-        _N += m_costData->getROBDataN(_rob);
+      Int_t N = 0;
+      for (UInt_t rob = 0; rob < m_costData->getNROBs(); ++rob) {
+        N += m_costData->getROBDataN(rob);
       }
-      Info("MonitorROSAlgorithm::newEvent", "*** Processing ROS-ALG ***  Size %i ***", _N);
+      Info("MonitorROSAlgorithm::newEvent", "*** Processing ROS-ALG ***  Size %i ***", N);
     }
 
     //Now loop over the counter collections;
-    for (CounterMapSetIt_t _cmsIt = m_collectionsToProcess.begin(); _cmsIt != m_collectionsToProcess.end(); ++_cmsIt) {
-      CounterMap_t* _counterMap = *_cmsIt;
+    for (CounterMapSetIt_t cmsIt = m_collectionsToProcess.begin(); cmsIt != m_collectionsToProcess.end(); ++cmsIt) {
+      CounterMap_t* counterMap = *cmsIt;
 
       startEvent();
 
-      for (UInt_t _robReq = 0; _robReq < m_costData->getNROBs(); ++_robReq) {
+      for (UInt_t robReq = 0; robReq < m_costData->getNROBs(); ++robReq) {
         // We want to call each ROS once, but the inner loop is over ROBINs
         // We now do this mapping in advance
-        StringIntSetMap_t _ROSMapping = getROSMapping(_robReq);
+        StringIntSetMap_t ROSMapping = getROSMapping(robReq);
         // Get the callng algs name too
-        const std::pair< Int_t, Int_t > _algLocation = m_costData->getROBAlgLocation(_robReq);
-        std::string _algName = Config::config().getStr(kUnknownString);
-        if (_algLocation.first != -1 && _algLocation.second != -1) {
-          const Int_t _seqIndex = m_costData->getSequenceIndex(_algLocation.first);
-          const Int_t _seqAlgPos = m_costData->getSeqAlgPosition(_algLocation.first, _algLocation.second);
-          _algName = TrigConfInterface::getHLTAlgNameFromSeqIDAndAlgPos(_seqIndex, _seqAlgPos);
+        const std::pair< Int_t, Int_t > algLocation = m_costData->getROBAlgLocation(robReq);
+        std::string algName = Config::config().getStr(kUnknownString);
+        if (algLocation.first != -1 && algLocation.second != -1) {
+          const Int_t seqIndex = m_costData->getSequenceIndex(algLocation.first);
+          const Int_t seqAlgPos = m_costData->getSeqAlgPosition(algLocation.first, algLocation.second);
+          algName = TrigConfInterface::getHLTAlgNameFromSeqIDAndAlgPos(seqIndex, seqAlgPos);
         }
-        for (StringIntSetMapIt_t _reqIt = _ROSMapping.begin(); _reqIt != _ROSMapping.end(); ++_reqIt) {
+        for (StringIntSetMapIt_t reqIt = ROSMapping.begin(); reqIt != ROSMapping.end(); ++reqIt) {
           // Get the counter - note we do not store any ID here
-          const std::string _robAlgName = (*_reqIt).first + Config::config().getStr(kDelimatorString) + _algName;
-          CounterBase* _counter = getCounter(_counterMap, _robAlgName, 0 /*not used*/);
+          const std::string robAlgName = (*reqIt).first + Config::config().getStr(kDelimatorString) + algName;
+          CounterBase* counter = getCounter(counterMap, robAlgName, 0 /*not used*/);
           // This lets the counter know it should ask its parent for the full set of ROBINs to collate
-          if (_counter->getCalls() == 0) {
-            _counter->decorate(kDecType, Config::config().getStr(kROSString));
-            _counter->decorate(kDecMyROS, (*_reqIt).first);
+          if (counter->getCalls() == 0) {
+            counter->decorate(kDecType, Config::config().getStr(kROSString));
+            counter->decorate(kDecMyROS, (*reqIt).first);
           }
           // The counter will use its name and the above map to find the ROBINs to look at
-          _counter->processEventCounter(_robReq, UINT_MAX /*not used*/, _weight);
+          counter->processEventCounter(robReq, UINT_MAX /*not used*/, weight);
         }
       }
 
-      endEvent(_weight);
+      endEvent(weight);
     }
     m_timer.stop();
   }
@@ -92,8 +92,8 @@ namespace TrigCostRootAnalysis {
    * Note these are currently hard-coded. We may want to make them configurable
    * @return If this monitor should be active for a given mode.
    */
-  Bool_t MonitorROSAlgorithm::getIfActive(ConfKey_t _mode) {
-    switch (_mode) {
+  Bool_t MonitorROSAlgorithm::getIfActive(ConfKey_t mode) {
+    switch (mode) {
     case kDoAllSummary:       return kTRUE;
 
     case kDoKeySummary:       return kTRUE;
@@ -101,7 +101,7 @@ namespace TrigCostRootAnalysis {
     case kDoLumiBlockSummary: return kFALSE;
 
     default: Error("MonitorROSAlgorithm::getIfActive", "An invalid summary mode was provided (key %s)",
-                   Config::config().getName(_mode).c_str());
+                   Config::config().getName(mode).c_str());
     }
     return kFALSE;
   }
@@ -112,23 +112,23 @@ namespace TrigCostRootAnalysis {
   void MonitorROSAlgorithm::saveOutput() {
     m_filterOutput = kTRUE; // Apply any user-specified name filter to output
 
-    VariableOptionVector_t _toSave = m_dummyCounter->getAllHistograms();
-    sharedHistogramOutputRoutine(_toSave);
+    VariableOptionVector_t toSave = m_dummyCounter->getAllHistograms();
+    sharedHistogramOutputRoutine(toSave);
 
-    std::vector<TableColumnFormatter> _toSaveTable;
-    addCommonTableEntries(_toSaveTable);
-    sharedTableOutputRoutine(_toSaveTable);
+    std::vector<TableColumnFormatter> toSaveTable;
+    addCommonTableEntries(toSaveTable);
+    sharedTableOutputRoutine(toSaveTable);
   }
 
   /**
    * Construct new counter of correct derived type, pass back as base type.
    * This function must be implemented by all derived monitor types.
-   * @see MonitorBase::addCounter( const std::string &_name, Int_t _ID )
-   * @param _name Cost reference to name of counter.
-   * @param _ID Reference to ID number of counter.
+   * @see MonitorBase::addCounter( const std::string &_name, Int_t ID )
+   * @param name Cost reference to name of counter.
+   * @param ID Reference to ID number of counter.
    * @returns Base class pointer to new counter object of correct derived type.
    */
-  CounterBase* MonitorROSAlgorithm::newCounter(const std::string& _name, Int_t _ID) {
-    return new CounterROB(m_costData, _name, _ID, m_detailLevel, (MonitorBase*) this);
+  CounterBase* MonitorROSAlgorithm::newCounter(const std::string& name, Int_t ID) {
+    return new CounterROB(m_costData, name, ID, m_detailLevel, (MonitorBase*) this);
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROSChain.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROSChain.cxx
index 4748cd0251da6977525d70f7d3653603e0f5b8ab..f4bb4ddb59338aaa5ab26115afd033040517af93 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROSChain.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROSChain.cxx
@@ -29,7 +29,7 @@ namespace TrigCostRootAnalysis {
   /**
    * Monitor constructor. Sets name and calls base constructor.
    */
-  MonitorROSChain::MonitorROSChain(const TrigCostData* _costData) : MonitorBase(_costData, "ROS_Chain") {
+  MonitorROSChain::MonitorROSChain(const TrigCostData* costData) : MonitorBase(costData, "ROS_Chain") {
     m_dummyCounter = newCounter(Config::config().getStr(kDummyString), INT_MIN);
     allowSameIDCounters();
     m_detailLevel = 0; // No Histogramming
@@ -38,52 +38,52 @@ namespace TrigCostRootAnalysis {
   /**
    * Process new event for this monitor.
    * For the ROS, all ROS data is looped over and recorded.
-   * @param _weight The event weight.
+   * @param weight The event weight.
    */
-  void MonitorROSChain::newEvent(Float_t _weight) {
+  void MonitorROSChain::newEvent(Float_t weight) {
     m_timer.start();
     if (Config::config().debug()) {
-      Int_t _N = 0;
-      for (UInt_t _rob = 0; _rob < m_costData->getNROBs(); ++_rob) {
-        _N += m_costData->getROBDataN(_rob);
+      Int_t N = 0;
+      for (UInt_t rob = 0; rob < m_costData->getNROBs(); ++rob) {
+        N += m_costData->getROBDataN(rob);
       }
-      Info("MonitorROSChain::newEvent", "*** Processing ROS-CHAIN ***  Size %i ***", _N);
+      Info("MonitorROSChain::newEvent", "*** Processing ROS-CHAIN ***  Size %i ***", N);
     }
 
     //Now loop over the counter collections;
-    for (CounterMapSetIt_t _cmsIt = m_collectionsToProcess.begin(); _cmsIt != m_collectionsToProcess.end(); ++_cmsIt) {
-      CounterMap_t* _counterMap = *_cmsIt;
+    for (CounterMapSetIt_t cmsIt = m_collectionsToProcess.begin(); cmsIt != m_collectionsToProcess.end(); ++cmsIt) {
+      CounterMap_t* counterMap = *cmsIt;
 
       startEvent();
 
-      for (UInt_t _robReq = 0; _robReq < m_costData->getNROBs(); ++_robReq) {
+      for (UInt_t robReq = 0; robReq < m_costData->getNROBs(); ++robReq) {
         // We want to call each ROS once, but the inner loop is over ROBINs
         // We now do this mapping in advance
-        StringIntSetMap_t _ROSMapping = getROSMapping(_robReq);
+        StringIntSetMap_t ROSMapping = getROSMapping(robReq);
         // Get the callng chains name too
-        const std::pair< Int_t, Int_t > _algLocation = m_costData->getROBAlgLocation(_robReq);
-        std::string _chainName = Config::config().getStr(kUnknownString);
-        if (_algLocation.first != -1 && _algLocation.second != -1) {
+        const std::pair< Int_t, Int_t > algLocation = m_costData->getROBAlgLocation(robReq);
+        std::string chainName = Config::config().getStr(kUnknownString);
+        if (algLocation.first != -1 && algLocation.second != -1) {
           // Can tell just from the sequence D3PD-ID part
-          Int_t _chainID = m_costData->getSequenceChannelCounter(_algLocation.first);
-          _chainName =
-            TrigConfInterface::getHLTNameFromChainID(_chainID, m_costData->getSequenceLevel(_algLocation.first));
+          Int_t chainID = m_costData->getSequenceChannelCounter(algLocation.first);
+          chainName =
+            TrigConfInterface::getHLTNameFromChainID(chainID, m_costData->getSequenceLevel(algLocation.first));
         }
-        for (StringIntSetMapIt_t _reqIt = _ROSMapping.begin(); _reqIt != _ROSMapping.end(); ++_reqIt) {
+        for (StringIntSetMapIt_t reqIt = ROSMapping.begin(); reqIt != ROSMapping.end(); ++reqIt) {
           // Get the counter - note we do not store any ID here
-          const std::string _robChainName = (*_reqIt).first + Config::config().getStr(kDelimatorString) + _chainName;
-          CounterBase* _counter = getCounter(_counterMap, _robChainName, 0 /*not used*/);
+          const std::string robChainName = (*reqIt).first + Config::config().getStr(kDelimatorString) + chainName;
+          CounterBase* counter = getCounter(counterMap, robChainName, 0 /*not used*/);
           // This lets the counter know it should ask its parent for the full set of ROBINs to collate
-          if (_counter->getCalls() == 0) {
-            _counter->decorate(kDecType, Config::config().getStr(kROSString));
-            _counter->decorate(kDecMyROS, (*_reqIt).first);
+          if (counter->getCalls() == 0) {
+            counter->decorate(kDecType, Config::config().getStr(kROSString));
+            counter->decorate(kDecMyROS, (*reqIt).first);
           }
           // The counter will use its name and the above map to find the ROBINs to look at
-          _counter->processEventCounter(_robReq, UINT_MAX /*not used*/, _weight);
+          counter->processEventCounter(robReq, UINT_MAX /*not used*/, weight);
         }
       }
 
-      endEvent(_weight);
+      endEvent(weight);
     }
     m_timer.stop();
   }
@@ -93,8 +93,8 @@ namespace TrigCostRootAnalysis {
    * Note these are currently hard-coded. We may want to make them configurable
    * @return If this monitor should be active for a given mode.
    */
-  Bool_t MonitorROSChain::getIfActive(ConfKey_t _mode) {
-    switch (_mode) {
+  Bool_t MonitorROSChain::getIfActive(ConfKey_t mode) {
+    switch (mode) {
     case kDoAllSummary:       return kTRUE;
 
     case kDoKeySummary:       return kTRUE;
@@ -102,7 +102,7 @@ namespace TrigCostRootAnalysis {
     case kDoLumiBlockSummary: return kFALSE;
 
     default: Error("MonitorROSChain::getIfActive", "An invalid summary mode was provided (key %s)",
-                   Config::config().getName(_mode).c_str());
+                   Config::config().getName(mode).c_str());
     }
     return kFALSE;
   }
@@ -113,23 +113,23 @@ namespace TrigCostRootAnalysis {
   void MonitorROSChain::saveOutput() {
     m_filterOutput = kTRUE; // Apply any user-specified name filter to output
 
-    VariableOptionVector_t _toSave = m_dummyCounter->getAllHistograms();
-    sharedHistogramOutputRoutine(_toSave);
+    VariableOptionVector_t toSave = m_dummyCounter->getAllHistograms();
+    sharedHistogramOutputRoutine(toSave);
 
-    std::vector<TableColumnFormatter> _toSaveTable;
-    addCommonTableEntries(_toSaveTable);
-    sharedTableOutputRoutine(_toSaveTable);
+    std::vector<TableColumnFormatter> toSaveTable;
+    addCommonTableEntries(toSaveTable);
+    sharedTableOutputRoutine(toSaveTable);
   }
 
   /**
    * Construct new counter of correct derived type, pass back as base type.
    * This function must be implemented by all derived monitor types.
-   * @see MonitorBase::addCounter( const std::string &_name, Int_t _ID )
-   * @param _name Cost reference to name of counter.
-   * @param _ID Reference to ID number of counter.
+   * @see MonitorBase::addCounter( const std::string &_name, Int_t ID )
+   * @param name Cost reference to name of counter.
+   * @param ID Reference to ID number of counter.
    * @returns Base class pointer to new counter object of correct derived type.
    */
-  CounterBase* MonitorROSChain::newCounter(const std::string& _name, Int_t _ID) {
-    return new CounterROB(m_costData, _name, _ID, m_detailLevel, (MonitorBase*) this);
+  CounterBase* MonitorROSChain::newCounter(const std::string& name, Int_t ID) {
+    return new CounterROB(m_costData, name, ID, m_detailLevel, (MonitorBase*) this);
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROSCommon.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROSCommon.cxx
index 0c756dbff451404277a2ce6ee6dd9a318f333f28..ca1ddebcd1357312a2256b9b3678913741f2ac16 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROSCommon.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorROSCommon.cxx
@@ -36,12 +36,12 @@ namespace TrigCostRootAnalysis {
   /**
    * Get the cache data for a ROS request
    */
-  StringIntSetMap_t& MonitorROSCommon::getROSMapping(UInt_t _robReq) {
-    return m_ROSRequestStorage.at(_robReq);
+  StringIntSetMap_t& MonitorROSCommon::getROSMapping(UInt_t robReq) {
+    return m_ROSRequestStorage.at(robReq);
   }
 
-  StringIntSetMap_t& MonitorROSCommon::getROBINMapping(UInt_t _robReq) {
-    return m_ROBINRequestStorage.at(_robReq);
+  StringIntSetMap_t& MonitorROSCommon::getROBINMapping(UInt_t robReq) {
+    return m_ROBINRequestStorage.at(robReq);
   }
 
   /**
@@ -51,27 +51,27 @@ namespace TrigCostRootAnalysis {
    * in the ROSCounter. This function precalculats all these connections
    * for all of the monitors deriving from ROSCommon
    */
-  void MonitorROSCommon::collateROSRequests(UInt_t _level, const TrigCostData* _costData) {
+  void MonitorROSCommon::collateROSRequests(UInt_t level, const TrigCostData* costData) {
     // Nothing has changed, current list is fine
-    if (m_eventNumber == _costData->getEventNumber() && m_level == _level) return;
+    if (m_eventNumber == costData->getEventNumber() && m_level == level) return;
 
     // Update static cached storage for multiple monitors to use
-    m_eventNumber = _costData->getEventNumber();
-    m_level = _level;
-    for (UInt_t _n = 0; _n < m_ROSRequestStorage.size(); ++_n) {
-      for (StringIntSetMapNonConstIt_t _reqIt = m_ROSRequestStorage.at(_n).begin();
-           _reqIt != m_ROSRequestStorage.at(_n).end(); ++_reqIt) {
-        (*_reqIt).second.clear();
+    m_eventNumber = costData->getEventNumber();
+    m_level = level;
+    for (UInt_t n = 0; n < m_ROSRequestStorage.size(); ++n) {
+      for (StringIntSetMapNonConstIt_t reqIt = m_ROSRequestStorage.at(n).begin();
+           reqIt != m_ROSRequestStorage.at(n).end(); ++reqIt) {
+        (*reqIt).second.clear();
       }
-      m_ROSRequestStorage.at(_n).clear();
+      m_ROSRequestStorage.at(n).clear();
     }
 
-    for (UInt_t _n = 0; _n < m_ROBINRequestStorage.size(); ++_n) {
-      for (StringIntSetMapNonConstIt_t _reqIt = m_ROBINRequestStorage.at(_n).begin();
-           _reqIt != m_ROBINRequestStorage.at(_n).end(); ++_reqIt) {
-        (*_reqIt).second.clear();
+    for (UInt_t n = 0; n < m_ROBINRequestStorage.size(); ++n) {
+      for (StringIntSetMapNonConstIt_t reqIt = m_ROBINRequestStorage.at(n).begin();
+           reqIt != m_ROBINRequestStorage.at(n).end(); ++reqIt) {
+        (*reqIt).second.clear();
       }
-      m_ROBINRequestStorage.at(_n).clear();
+      m_ROBINRequestStorage.at(n).clear();
     }
 
     {
@@ -83,12 +83,12 @@ namespace TrigCostRootAnalysis {
 
     // Out of scope, contents deleted
 
-    for (UInt_t _n1 = 0; _n1 < m_ROBINRequestStorage.size(); ++_n1) {
-      for (StringIntSetMapNonConstIt_t _reqIt1 = m_ROBINRequestStorage.at(_n1).begin();
-           _reqIt1 != m_ROBINRequestStorage.at(_n1).end(); ++_reqIt1) {
-        (*_reqIt1).second.clear();
+    for (UInt_t n1 = 0; n1 < m_ROBINRequestStorage.size(); ++n1) {
+      for (StringIntSetMapNonConstIt_t reqIt1 = m_ROBINRequestStorage.at(n1).begin();
+           reqIt1 != m_ROBINRequestStorage.at(n1).end(); ++reqIt1) {
+        (*reqIt1).second.clear();
       }
-      m_ROBINRequestStorage.at(_n1).clear();
+      m_ROBINRequestStorage.at(n1).clear();
     }
     {
       std::vector< StringIntSetMap_t > scopedVector1;
@@ -101,114 +101,114 @@ namespace TrigCostRootAnalysis {
 
 
     // Store the per ROS request mappings
-    for (UInt_t _rob = 0; _rob < _costData->getNROBs(); ++_rob) {
-      StringIntSetMap_t _ROSNameToROBINLocs;
+    for (UInt_t rob = 0; rob < costData->getNROBs(); ++rob) {
+      StringIntSetMap_t ROSNameToROBINLocs;
 
-      StringIntSetMap_t _ROBINNameToLoc;
+      StringIntSetMap_t ROBINNameToLoc;
 
-      for (UInt_t _robData = 0; _robData < _costData->getROBDataN(_rob); ++_robData) {
-        Int_t _robId = _costData->getROBDataID(_rob, _robData);
-        const std::string _robinName = ROSConfService::rosConfService().getRobinNameFromId((UInt_t) _robId);
-        const std::string _rosName = ROSConfService::rosConfService().getRosNameFromFromRobinName(_robinName);
+      for (UInt_t robData = 0; robData < costData->getROBDataN(rob); ++robData) {
+        Int_t robId = costData->getROBDataID(rob, robData);
+        const std::string robinName = ROSConfService::rosConfService().getRobinNameFromId((UInt_t) robId);
+        const std::string rosName = ROSConfService::rosConfService().getRosNameFromFromRobinName(robinName);
 
         // Map the ROS name to the D3PD index of the ROBINs in this request which are associated to this ROS
-        _ROSNameToROBINLocs[ _rosName ].insert((Int_t) _robData);
-        _ROBINNameToLoc[ _robinName ].insert((Int_t ) _robData);
+        ROSNameToROBINLocs[ rosName ].insert((Int_t) robData);
+        ROBINNameToLoc[ robinName ].insert((Int_t ) robData);
       }
-      m_ROSRequestStorage.push_back(_ROSNameToROBINLocs);
-      m_ROBINRequestStorage.push_back(_ROBINNameToLoc);
+      m_ROSRequestStorage.push_back(ROSNameToROBINLocs);
+      m_ROBINRequestStorage.push_back(ROBINNameToLoc);
     }
   }
 
   /**
    * List of table entries common to the different ROS monitors. Avoid code dupe
    */
-  void MonitorROSCommon::addCommonTableEntries(std::vector<MonitorBase::TableColumnFormatter>& _toSaveTable) {
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Raw Active Events",
+  void MonitorROSCommon::addCommonTableEntries(std::vector<MonitorBase::TableColumnFormatter>& toSaveTable) {
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Raw Active Events",
                                                              "Raw underlying statistics on the number of events in which this ROS was accessed.",
                                                              kVarCalls, kSavePerEvent, 0, kFormatOptionUseEntries));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Active Events",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Active Events",
                                                              "How many events in which this sequence was executed.",
                                                              kVarEventsActive, kSavePerEvent, 0));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Data Requests/Event",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Data Requests/Event",
                                                              "Total number of ROS access requests each may contain many ROB reads.",
                                                              kVarCalls, kSavePerEvent, kVarEventsActive, kSavePerEvent,
                                                              2));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Retrieved ROBs/Event",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Retrieved ROBs/Event",
                                                              "Total number of fetched ROB calls.",
                                                              kVarROBRets, kSavePerEvent, kVarEventsActive,
                                                              kSavePerEvent, 2));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Cached ROBs/Event",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Cached ROBs/Event",
                                                              "Total number of cached ROB calls.",
                                                              kVarROBReqs, kSavePerEvent, kVarEventsActive,
                                                              kSavePerEvent, 2));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Retrieved ROB Rate [Hz]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Retrieved ROB Rate [Hz]",
                                                              "Rate of ROB retrievals within the monitored range.",
                                                              kVarROBRets, kSavePerEvent, 2,
                                                              kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Cached ROB Rate [Hz]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Cached ROB Rate [Hz]",
                                                              "Rate of cached ROB requests within the monitored range.",
                                                              kVarROBReqs, kSavePerEvent, 2,
                                                              kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Retrieved ROB Data Rate [kB/s]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Retrieved ROB Data Rate [kB/s]",
                                                              "Amount of data fetched from the ROBs in kB/s.",
                                                              kVarROBRetSize, kSavePerEvent, 2,
                                                              kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Cached ROB Data Rate [kB/s]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Cached ROB Data Rate [kB/s]",
                                                              "Amount of cached data requested from the ROBs in kB/s.",
                                                              kVarROBReqSize, kSavePerEvent, 2,
                                                              kFormatOptionNormaliseWallTime));
 
     // Do these make sense?
-    // _toSaveTable.push_back( TableColumnFormatter("Time Per Cached ROB [ms]",
+    // toSaveTable.push_back( TableColumnFormatter("Time Per Cached ROB [ms]",
     //   "Average time per cached ROS request.",
     //   kVarTime, kSavePerCall, kVarROBReqs, kSavePerCall, 2) );
 
-    // _toSaveTable.push_back( TableColumnFormatter("Time Per Retrieved ROB [ms]",
+    // toSaveTable.push_back( TableColumnFormatter("Time Per Retrieved ROB [ms]",
     //   "Average time per ROB retrieval.",
     //   kVarTime, kSavePerCall, kVarROBRets, kSavePerCall, 2) );
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Time Per Event [ms]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Time Per Event [ms]",
                                                              "Average time for all requests and retrievals per event.",
                                                              kVarTime, kSavePerEvent, kVarEventsActive, kSavePerEvent,
                                                              2));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Unclassified ROBs/Event",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Unclassified ROBs/Event",
                                                              "ROB calls which were flagged unclassified.",
                                                              kVarROBUnclassified, kSavePerEvent, kVarEventsActive,
                                                              kSavePerEvent, 4));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Disabled ROBs/Event",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Disabled ROBs/Event",
                                                              "ROB calls which were flagged as disabled.",
                                                              kVarROBDisabled, kSavePerEvent, kVarEventsActive,
                                                              kSavePerEvent, 4));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Ignored ROBs/Event",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Ignored ROBs/Event",
                                                              "ROB calls which were flagged as ignored.",
                                                              kVarROBIgnored, kSavePerEvent, kVarEventsActive,
                                                              kSavePerEvent, 4));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Prefetched ROBs/Event",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Prefetched ROBs/Event",
                                                              "ROB calls which were flagged as prefetched.",
                                                              kVarROBPrefetched, kSavePerEvent, kVarEventsActive,
                                                              kSavePerEvent, 4));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Not OK ROBs/Event",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Not OK ROBs/Event",
                                                              "ROB calls in which the is OK bit was false.",
                                                              kVarROBNotOK, kSavePerEvent, kVarEventsActive,
                                                              kSavePerEvent, 4));
 
 
     // This doesn't make sense in its current form
-    // _toSaveTable.push_back( TableColumnFormatter("ROBs/Data Rquest",
+    // toSaveTable.push_back( TableColumnFormatter("ROBs/Data Rquest",
     //   "Average number of ROBs fetched per ROS Request involving this ROBIN/ROS.",
     //   kVarROSCalls, kSavePerCall, kVarCalls, kSavePerEvent, 2) );
   }
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorRates.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorRates.cxx
index 62fa33e33728ca2a3c6ad6440e8665a0421c1407..cd3be03cff6970fc1cbdf69f3b7a5f14dd4d7d96 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorRates.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorRates.cxx
@@ -36,9 +36,9 @@ namespace TrigCostRootAnalysis {
   /**
    * Monitor constructor. Sets name and calls base constructor.
    */
-  MonitorRates::MonitorRates(const TrigCostData* _costData) : MonitorBase(_costData, "Rate") {
+  MonitorRates::MonitorRates(const TrigCostData* costData) : MonitorBase(costData, "Rate") {
     m_dummyCounter =
-      static_cast<CounterBase*>(new CounterRatesChain(_costData, Config::config().getStr(kDummyString), INT_MIN));
+      static_cast<CounterBase*>(new CounterRatesChain(costData, Config::config().getStr(kDummyString), INT_MIN));
     m_globalRateHLTCounter = nullptr;
     m_globalRateL1Counter = nullptr;
     m_globalRatePhysicsMainCounter = nullptr;
@@ -54,11 +54,11 @@ namespace TrigCostRootAnalysis {
    * Destroy this monitor - note we have special RatesChainItems to destroy here too
    */
   MonitorRates::~MonitorRates() {
-    for (ChainItemMapIt_t _it = m_chainItemsL1.begin(); _it != m_chainItemsL1.end(); ++_it) {
-      delete _it->second;
+    for (ChainItemMapIt_t it = m_chainItemsL1.begin(); it != m_chainItemsL1.end(); ++it) {
+      delete it->second;
     }
-    for (ChainItemMapIt_t _it = m_chainItemsHLT.begin(); _it != m_chainItemsHLT.end(); ++_it) {
-      delete _it->second;
+    for (ChainItemMapIt_t it = m_chainItemsHLT.begin(); it != m_chainItemsHLT.end(); ++it) {
+      delete it->second;
     }
   }
 
@@ -70,99 +70,99 @@ namespace TrigCostRootAnalysis {
   void MonitorRates::populateChainItemMaps() {
     // ##################################################################################################################
     // STEP ONE: Look over the menu and first populate the L1 items
-    for (UInt_t _i = 0; _i < TrigConfInterface::getChainN(); ++_i) {
-      if (TrigConfInterface::getChainLevel(_i) != 1) continue; // Only L1 chains
+    for (UInt_t i = 0; i < TrigConfInterface::getChainN(); ++i) {
+      if (TrigConfInterface::getChainLevel(i) != 1) continue; // Only L1 chains
 
-      const std::string _chainName = TrigConfInterface::getChainName(_i);
-      Double_t _chainPrescale = TrigXMLService::trigXMLService().getPrescale(_chainName);
+      const std::string chainName = TrigConfInterface::getChainName(i);
+      Double_t chainPrescale = TrigXMLService::trigXMLService().getPrescale(chainName);
 
       // Check for explicit exclusion
-      if (Config::config().getVecMatches(kPatternsExclude, _chainName) == kTRUE) {
-        if (!isZero(_chainPrescale + 1)) {
+      if (Config::config().getVecMatches(kPatternsExclude, chainName) == kTRUE) {
+        if (!isZero(chainPrescale + 1)) {
           Warning("MonitorRates::populateChainItemMaps",
                   "Force-disabling chain %s (PS:%.2f) in rates prediction. New PS:-1.",
-                  _chainName.c_str(), _chainPrescale);
+                  chainName.c_str(), chainPrescale);
         }
-        _chainPrescale = -1.;
+        chainPrescale = -1.;
       }
 
-      m_chainItemsL1[ _chainName ] = new RatesChainItem(_chainName, /*chainLevel=*/ 1, _chainPrescale,
+      m_chainItemsL1[ chainName ] = new RatesChainItem(chainName, /*chainLevel=*/ 1, chainPrescale,
                                                         /*express prescale=*/ 1.);
     }
     // We have one extra one, AlwaysPass - which will be used for HLT chains with no L1 seed
-    RatesChainItem* _alwaysPass = new RatesChainItem(Config::config().getStr(kAlwaysPassString), 1, 1.); // Set level to
+    RatesChainItem* alwaysPass = new RatesChainItem(Config::config().getStr(kAlwaysPassString), 1, 1.); // Set level to
                                                                                                          // 1, PS to 1
-    CounterBaseRatesSet_t _dummy;
-    _alwaysPass->beginEvent(kTRUE, _dummy); // Set pass raw to kTRUE. This will stay fixed like this forever. Second
+    CounterBaseRatesSet_t dummy;
+    alwaysPass->beginEvent(kTRUE, dummy); // Set pass raw to kTRUE. This will stay fixed like this forever. Second
                                             // param is ignored
-    m_chainItemsL1[ Config::config().getStr(kBlankString) ] = _alwaysPass; // Associate to a blank string
+    m_chainItemsL1[ Config::config().getStr(kBlankString) ] = alwaysPass; // Associate to a blank string
 
     // ##################################################################################################################
     // STEP TWO: Now we populate the HLT items
-    for (UInt_t _i = 0; _i < TrigConfInterface::getChainN(); ++_i) {
-      if (TrigConfInterface::getChainLevel(_i) == 1) continue; // Only HLT chains
+    for (UInt_t i = 0; i < TrigConfInterface::getChainN(); ++i) {
+      if (TrigConfInterface::getChainLevel(i) == 1) continue; // Only HLT chains
 
-      const std::string _chainName = TrigConfInterface::getChainName(_i);
-      const std::string _chainCPSGroup = TrigConfInterface::getChainCPSGroup(_i);
-      Double_t _chainPrescale = TrigXMLService::trigXMLService().getPrescale(_chainName);
+      const std::string chainName = TrigConfInterface::getChainName(i);
+      const std::string chainCPSGroup = TrigConfInterface::getChainCPSGroup(i);
+      Double_t chainPrescale = TrigXMLService::trigXMLService().getPrescale(chainName);
 
-      Double_t _expressPS = 0.;
+      Double_t expressPS = 0.;
       if (TrigXMLService::trigXMLService().hasExpressPrescaleInfo()) {
-        _expressPS = TrigXMLService::trigXMLService().getExpressPrescaleInfo(_chainName);
+        expressPS = TrigXMLService::trigXMLService().getExpressPrescaleInfo(chainName);
       }
 
       // Check for explicit exclusion
-      if (Config::config().getVecMatches(kPatternsExclude, _chainName) == kTRUE) {
-        if (!isZero(_chainPrescale + 1)) {
+      if (Config::config().getVecMatches(kPatternsExclude, chainName) == kTRUE) {
+        if (!isZero(chainPrescale + 1)) {
           Warning("MonitorRates::populateChainItemMaps",
                   "Force-disabling chain %s (PS:%.2f) in rates prediction. New PS:-1.",
-                  _chainName.c_str(), _chainPrescale);
+                  chainName.c_str(), chainPrescale);
         }
-        _chainPrescale = -1.;
+        chainPrescale = -1.;
       }
 
-      RatesChainItem* _chainItemHLT = new RatesChainItem(_chainName, 2, _chainPrescale, _expressPS);
-      m_chainItemsHLT[ _chainName ] = _chainItemHLT;
+      RatesChainItem* chainItemHLT = new RatesChainItem(chainName, 2, chainPrescale, expressPS);
+      m_chainItemsHLT[ chainName ] = chainItemHLT;
 
       // Is this a CPS chain? Needs to go in an additional group if so.
-      if (m_doCPS == kTRUE && _chainCPSGroup != "") {
-        if (m_cpsGroups.count(_chainCPSGroup) == 0) m_cpsGroups[ _chainCPSGroup ] = new RatesCPSGroup(_chainCPSGroup);
-        m_cpsGroups[ _chainCPSGroup ]->add(_chainItemHLT);
+      if (m_doCPS == kTRUE && chainCPSGroup != "") {
+        if (m_cpsGroups.count(chainCPSGroup) == 0) m_cpsGroups[ chainCPSGroup ] = new RatesCPSGroup(chainCPSGroup);
+        m_cpsGroups[ chainCPSGroup ]->add(chainItemHLT);
       }
 
       // Now we link the seeding.
       // ################################################################################################################
       // STEP THREE: The HLT chain may be seeded by many L1 items. Need to link them all together
-      const std::string _L1Name = TrigConfInterface::getLowerChainName(_chainName);
-      std::vector<std::string> _L1NameVector;
-      if (_L1Name.find(",") != std::string::npos) { // Multiple seeds
+      const std::string L1Name = TrigConfInterface::getLowerChainName(chainName);
+      std::vector<std::string> L1NameVector;
+      if (L1Name.find(",") != std::string::npos) { // Multiple seeds
         //Get list of individual items.
-        std::istringstream _ss(_L1Name);
-        std::string _item;
-        while (std::getline(_ss, _item, ',')) {
+        std::istringstream ss(L1Name);
+        std::string item;
+        while (std::getline(ss, item, ',')) {
           // Remove any leading space
-          if (_item.substr(0, 1) == " ") _item = _item.substr(1, _item.length());
-          _L1NameVector.push_back(_item);
+          if (item.substr(0, 1) == " ") item = item.substr(1, item.length());
+          L1NameVector.push_back(item);
         }
       } else { // Only one seed
-        _L1NameVector.push_back(_L1Name);
+        L1NameVector.push_back(L1Name);
       }
 
-      for (UInt_t _i = 0; _i < _L1NameVector.size(); ++_i) {
-        ChainItemMapIt_t _it = m_chainItemsL1.find(_L1NameVector.at(_i));
-        if (_it != m_chainItemsL1.end()) {
-          RatesChainItem* _chainItemL1 = _it->second;
-          _chainItemHLT->addLower(_chainItemL1);
-          _chainItemL1->addUpper(_chainItemHLT);
+      for (UInt_t i = 0; i < L1NameVector.size(); ++i) {
+        ChainItemMapIt_t it = m_chainItemsL1.find(L1NameVector.at(i));
+        if (it != m_chainItemsL1.end()) {
+          RatesChainItem* chainItemL1 = it->second;
+          chainItemHLT->addLower(chainItemL1);
+          chainItemL1->addUpper(chainItemHLT);
         } else {
           Warning("MonitorRates::populateChainItemMaps", "Cannot find HLT item %s's L1 seeding chain: %s",
-                  _chainName.c_str(), _L1NameVector.at(_i).c_str());
+                  chainName.c_str(), L1NameVector.at(i).c_str());
         }
       }
     }
 
-    for (const auto _chainItem : m_chainItemsHLT) _chainItem.second->classifyLumiAndRandom();
-    for (const auto _chainItem : m_chainItemsL1) _chainItem.second->classifyLumiAndRandom();
+    for (const auto chainItem : m_chainItemsHLT) chainItem.second->classifyLumiAndRandom();
+    for (const auto chainItem : m_chainItemsL1) chainItem.second->classifyLumiAndRandom();
 
     if (Config::config().getVecSize(kListOfNoLumiWeightChains) > 0) {
       Info("MonitorRates::populateChainItemMaps",
@@ -186,7 +186,7 @@ namespace TrigCostRootAnalysis {
     }
 
     // Get the common factor of all the CPS groups
-    for (const auto _cpsGroup : m_cpsGroups) _cpsGroup.second->calculateCPSFactor();
+    for (const auto cpsGroup : m_cpsGroups) cpsGroup.second->calculateCPSFactor();
   }
 
   /**
@@ -197,18 +197,16 @@ namespace TrigCostRootAnalysis {
    * We make one counter per chain (L1 and HLT), one per intersection of each chain and other chains in its group
    * and one for the union of all chains in each group.
    */
-  void MonitorRates::populateCounterMap(CounterMap_t* _counterMap) {
-    createGlobalCounters(_counterMap);
-    createL1Counters(_counterMap);
-    createHLTCounters(_counterMap);
-    createCPSGroupCounters(_counterMap);
-    createGroupCounters(_counterMap);
-    if (m_doingOverlaps == kTRUE) createOverlapCounters(_counterMap);
+  void MonitorRates::populateCounterMap(CounterMap_t* counterMap) {
+    createGlobalCounters(counterMap);
+    createL1Counters(counterMap);
+    createHLTCounters(counterMap);
+    createCPSGroupCounters(counterMap);
+    createGroupCounters(counterMap);
+    if (m_doingOverlaps == kTRUE) createOverlapCounters(counterMap);
   }
 
-  void MonitorRates::createGlobalCounters(CounterMap_t* _counterMap) {
-    UNUSED(_counterMap);
-
+  void MonitorRates::createGlobalCounters(CounterMap_t* /*counterMap*/) {
     // Crate the global rates counter, this will be the OR of everything HLT
     m_globalRateHLTCounter =
       new CounterRatesUnion(m_costData, Config::config().getStr(kRateGlobalHLTString), 0, 0, (MonitorBase*) this); // Mint
@@ -243,208 +241,208 @@ namespace TrigCostRootAnalysis {
     m_chainItemsL1[ Config::config().getStr(kBlankString) ]->setProxy(m_globalRateL1Counter);
   }
 
-  void MonitorRates::createL1Counters(CounterMap_t* _counterMap) {
+  void MonitorRates::createL1Counters(CounterMap_t* counterMap) {
     // ##################################################################################################################
     // Create the L1 unique rates counters, these will be the OR of everything L1 *EXCEPT* for one chain
     // Note we don't assign any L1 items to the counters in this loop. We're just minting the counters here.
     if (Config::config().getInt(kDoUniqueRates) == kTRUE) {
-      for (UInt_t _i = 0; _i < TrigConfInterface::getChainN(); ++_i) {
-        if (TrigConfInterface::getChainLevel(_i) != 1) continue; // Only L1 chains
+      for (UInt_t i = 0; i < TrigConfInterface::getChainN(); ++i) {
+        if (TrigConfInterface::getChainLevel(i) != 1) continue; // Only L1 chains
 
-        const UInt_t _chainID = TrigConfInterface::getChainCounter(_i);
-        const std::string _chainName = TrigConfInterface::getChainName(_i);
+        const UInt_t chainID = TrigConfInterface::getChainCounter(i);
+        const std::string chainName = TrigConfInterface::getChainName(i);
 
-        if (checkPatternUnique(_chainName, kFALSE) == kFALSE) continue;
+        if (checkPatternUnique(chainName, kFALSE) == kFALSE) continue;
         // In the list of unique counters? Does not get inverted
-        if (checkPatternNameMonitor(_chainName, m_invertFilter) == kFALSE) continue;
+        if (checkPatternNameMonitor(chainName, m_invertFilter) == kFALSE) continue;
 
-        const std::string _uniqueName = Config::config().getStr(kRateUniqueString) + _chainName;
-        CounterRatesUnion* _uniqueChain = new CounterRatesUnion(m_costData, _uniqueName, _chainID, 0,
+        const std::string uniqueName = Config::config().getStr(kRateUniqueString) + chainName;
+        CounterRatesUnion* uniqueChain = new CounterRatesUnion(m_costData, uniqueName, chainID, 0,
                                                                 (MonitorBase*) this); // Mint new counter
-        _uniqueChain->decorate(kDecRatesGroupName, Config::config().getStr(kNoneString));
-        _uniqueChain->decorate(kDecType, "UniqueL1");
-        _uniqueChain->setGlobalRateCounter(m_globalRateL1Counter);
-        (*_counterMap)[_uniqueName] = static_cast<CounterBase*>(_uniqueChain); // Insert into the counterMap
+        uniqueChain->decorate(kDecRatesGroupName, Config::config().getStr(kNoneString));
+        uniqueChain->decorate(kDecType, "UniqueL1");
+        uniqueChain->setGlobalRateCounter(m_globalRateL1Counter);
+        (*counterMap)[uniqueName] = static_cast<CounterBase*>(uniqueChain); // Insert into the counterMap
 
         if (Config::config().getDisplayMsg(kMsgNewUniqueCounter) == kTRUE) {
-          Info("MonitorRates::createL1Counters", "Preparing unique rates for %s", _chainName.c_str());
+          Info("MonitorRates::createL1Counters", "Preparing unique rates for %s", chainName.c_str());
         }
       }
     } // End unique rates counter minting
 
     // ##################################################################################################################
     // Create and add the L1 rates counters while also filling in the L1 items to the unique counters
-    for (UInt_t _i = 0; _i < TrigConfInterface::getChainN(); ++_i) {
-      if (TrigConfInterface::getChainLevel(_i) != 1) continue; // Only L1 chains
+    for (UInt_t i = 0; i < TrigConfInterface::getChainN(); ++i) {
+      if (TrigConfInterface::getChainLevel(i) != 1) continue; // Only L1 chains
 
-      const UInt_t _chainID = TrigConfInterface::getChainCounter(_i);
-      const std::string _chainName = TrigConfInterface::getChainName(_i);
-      const std::string _uniqueName = Config::config().getStr(kRateUniqueString) + _chainName;
-      const std::string _comment = TrigXMLService::trigXMLService().getChainComment(_chainName);
+      const UInt_t chainID = TrigConfInterface::getChainCounter(i);
+      const std::string chainName = TrigConfInterface::getChainName(i);
+      const std::string uniqueName = Config::config().getStr(kRateUniqueString) + chainName;
+      const std::string comment = TrigXMLService::trigXMLService().getChainComment(chainName);
 
-      if (checkPatternNameMonitor(_chainName, m_invertFilter) == kFALSE) continue;
+      if (checkPatternNameMonitor(chainName, m_invertFilter) == kFALSE) continue;
 
       // Find the ChainItem for this chain
-      ChainItemMapIt_t _it = m_chainItemsL1.find(_chainName);
-      if (_it == m_chainItemsL1.end()) {
-        Warning("MonitorRates::populateCounterMap", "Cannot find L1 item: %s", _chainName.c_str());
+      ChainItemMapIt_t it = m_chainItemsL1.find(chainName);
+      if (it == m_chainItemsL1.end()) {
+        Warning("MonitorRates::populateCounterMap", "Cannot find L1 item: %s", chainName.c_str());
         continue;
       }
-      RatesChainItem* _chainItemL1 = _it->second;
+      RatesChainItem* chainItemL1 = it->second;
 
       // Construct a string displaying the PS for this chain
-      const std::string _prescaleStr = Config::config().getStr(kL1String) + ":" + doubleToString(
-        _chainItemL1->getPS(), 2);
-      Double_t _prescaleVal = _chainItemL1->getPS();
+      const std::string prescaleStr = Config::config().getStr(kL1String) + ":" + doubleToString(
+        chainItemL1->getPS(), 2);
+      Double_t prescaleVal = chainItemL1->getPS();
 
       // Also get online PS
-      Float_t _prescaleValOnlineL1 = TrigConfInterface::getPrescale(_chainName);
+      Float_t prescaleValOnlineL1 = TrigConfInterface::getPrescale(chainName);
 
       // Do add to unique counters
-      CounterBaseRates* _thisChainsUniqueCounter = 0;
+      CounterBaseRates* thisChainsUniqueCounter = 0;
       if (Config::config().getInt(kDoUniqueRates) == kTRUE) {
-        for (CounterMapIt_t _itA = _counterMap->begin(); _itA != _counterMap->end(); ++_itA) {
-          CounterBaseRates* _counter = static_cast<CounterBaseRates*>(_itA->second);
-          if (_counter->getStrDecoration(kDecType) != "UniqueL1") continue;  
+        for (CounterMapIt_t itA = counterMap->begin(); itA != counterMap->end(); ++itA) {
+          CounterBaseRates* counter = static_cast<CounterBaseRates*>(itA->second);
+          if (counter->getStrDecoration(kDecType) != "UniqueL1") continue;  
           // I'm not a unique counter - next
-          if (_counter->getName() == _uniqueName) {
-            _thisChainsUniqueCounter = _counter;
-            _thisChainsUniqueCounter->decorate(kDecPrescaleStr, _prescaleStr);
-            _thisChainsUniqueCounter->decorate(kDecPrescaleVal, (Float_t) _prescaleVal);
-            _thisChainsUniqueCounter->decorate(kDecPrescaleValOnlineL1, (Float_t) _prescaleValOnlineL1);
-            _thisChainsUniqueCounter->decorate(kDecComment, _comment);
+          if (counter->getName() == uniqueName) {
+            thisChainsUniqueCounter = counter;
+            thisChainsUniqueCounter->decorate(kDecPrescaleStr, prescaleStr);
+            thisChainsUniqueCounter->decorate(kDecPrescaleVal, (Float_t) prescaleVal);
+            thisChainsUniqueCounter->decorate(kDecPrescaleValOnlineL1, (Float_t) prescaleValOnlineL1);
+            thisChainsUniqueCounter->decorate(kDecComment, comment);
             continue; // I'm the unique counter for *this* chain - *don't* add me!
           }
-          _counter->addL1Item(_chainItemL1); // Add *all other* L1 items [remember unique = global - (global except for
+          counter->addL1Item(chainItemL1); // Add *all other* L1 items [remember unique = global - (global except for
                                              // one chain)]
         }
       }
 
-      CounterRatesChain* _L1Chain = new CounterRatesChain(m_costData, _chainName, _chainID, 0, (MonitorBase*) this); // Mint
+      CounterRatesChain* L1Chain = new CounterRatesChain(m_costData, chainName, chainID, 0, (MonitorBase*) this); // Mint
                                                                                                                      // new
                                                                                                                      // counter
-      _L1Chain->decorate(kDecRatesGroupName, Config::config().getStr(kNoneString));
-      _L1Chain->decorate(kDecPrescaleStr, _prescaleStr);
-      _L1Chain->decorate(kDecPrescaleVal, (Float_t) _prescaleVal);
-      _L1Chain->decorate(kDecPrescaleValOnlineL1, _prescaleValOnlineL1);
-      _L1Chain->decorate(kDecComment, _comment);
-      _L1Chain->decorate(kDecType, "L1");
-      _L1Chain->addL1Item(_chainItemL1); // Link it to where it'll be getting its pass/fail info
-      _L1Chain->setMyUniqueCounter(_thisChainsUniqueCounter); // Link it to its corresponding unique counter.
-      _L1Chain->setGlobalRateCounter(m_globalRateL1Counter);
-      (*_counterMap)[_chainName] = static_cast<CounterBase*>(_L1Chain); // Insert into the counterMap
+      L1Chain->decorate(kDecRatesGroupName, Config::config().getStr(kNoneString));
+      L1Chain->decorate(kDecPrescaleStr, prescaleStr);
+      L1Chain->decorate(kDecPrescaleVal, (Float_t) prescaleVal);
+      L1Chain->decorate(kDecPrescaleValOnlineL1, prescaleValOnlineL1);
+      L1Chain->decorate(kDecComment, comment);
+      L1Chain->decorate(kDecType, "L1");
+      L1Chain->addL1Item(chainItemL1); // Link it to where it'll be getting its pass/fail info
+      L1Chain->setMyUniqueCounter(thisChainsUniqueCounter); // Link it to its corresponding unique counter.
+      L1Chain->setGlobalRateCounter(m_globalRateL1Counter);
+      (*counterMap)[chainName] = static_cast<CounterBase*>(L1Chain); // Insert into the counterMap
 
       //Add to global L1 counter
-      m_globalRateL1Counter->addL1Item(_chainItemL1);
+      m_globalRateL1Counter->addL1Item(chainItemL1);
     }
   }
 
-  void MonitorRates::createHLTCounters(CounterMap_t* _counterMap) {
+  void MonitorRates::createHLTCounters(CounterMap_t* counterMap) {
     // ##################################################################################################################
     // Create the HLT unique rates counters, these will be the OR of everything HLT *EXCEPT* for one chain
     // Note, as with L1 - we are just minting counters here. Not associating them yet.
     if (Config::config().getInt(kDoUniqueRates) == kTRUE) {
-      for (UInt_t _i = 0; _i < TrigConfInterface::getChainN(); ++_i) {
-        if (TrigConfInterface::getChainLevel(_i) == 1) continue; // Only HLT chains
+      for (UInt_t i = 0; i < TrigConfInterface::getChainN(); ++i) {
+        if (TrigConfInterface::getChainLevel(i) == 1) continue; // Only HLT chains
 
-        const UInt_t _chainID = TrigConfInterface::getChainCounter(_i);
-        const std::string _chainName = TrigConfInterface::getChainName(_i);
-        const std::string _uniqueName = Config::config().getStr(kRateUniqueString) + _chainName;
-        if (checkPatternUnique(_chainName, kFALSE) == kFALSE) continue;
+        const UInt_t chainID = TrigConfInterface::getChainCounter(i);
+        const std::string chainName = TrigConfInterface::getChainName(i);
+        const std::string uniqueName = Config::config().getStr(kRateUniqueString) + chainName;
+        if (checkPatternUnique(chainName, kFALSE) == kFALSE) continue;
         // In the list of unique counters?
-        if (checkPatternNameMonitor(_chainName, m_invertFilter) == kFALSE) continue;
+        if (checkPatternNameMonitor(chainName, m_invertFilter) == kFALSE) continue;
 
         // LIMITATION - cannot do unique for CPS chains
-        if (m_doCPS == kTRUE && TrigConfInterface::getChainCPSGroup(_i) != "") {
+        if (m_doCPS == kTRUE && TrigConfInterface::getChainCPSGroup(i) != "") {
           Error("MonitorRates::createHLTCounters",
                 "Unique rates for chains in CPS groups are not currently supported (%s) - bug atlas-trigger-rate-expert@cern.ch if you really need this",
-                _chainName.c_str());
+                chainName.c_str());
           continue;
         }
 
-        CounterRatesUnion* _uniqueChain = new CounterRatesUnion(m_costData, _uniqueName, _chainID, 0,
+        CounterRatesUnion* uniqueChain = new CounterRatesUnion(m_costData, uniqueName, chainID, 0,
                                                                 (MonitorBase*) this); // Mint new counter
-        _uniqueChain->decorate(kDecRatesGroupName, Config::config().getStr(kNoneString)); // Not needed
-        _uniqueChain->decorate(kDecType, "UniqueHLT");
-        _uniqueChain->setGlobalRateCounter(m_globalRateHLTCounter);
-        (*_counterMap)[_uniqueName] = static_cast<CounterBase*>(_uniqueChain); // Insert into the counterMap
+        uniqueChain->decorate(kDecRatesGroupName, Config::config().getStr(kNoneString)); // Not needed
+        uniqueChain->decorate(kDecType, "UniqueHLT");
+        uniqueChain->setGlobalRateCounter(m_globalRateHLTCounter);
+        (*counterMap)[uniqueName] = static_cast<CounterBase*>(uniqueChain); // Insert into the counterMap
 
         if (Config::config().getDisplayMsg(kMsgNewUniqueCounter) == kTRUE) {
-          Info("MonitorRates::createHLTCounters", "Preparing unique rates for %s", _chainName.c_str());
+          Info("MonitorRates::createHLTCounters", "Preparing unique rates for %s", chainName.c_str());
         }
       }
     } // End unique rates counter minting
 
     // ##################################################################################################################
     // STEP ONE: We populate the HLT items
-    for (UInt_t _i = 0; _i < TrigConfInterface::getChainN(); ++_i) {
-      if (TrigConfInterface::getChainLevel(_i) == 1) continue; // Only HLT chains
-
-      const UInt_t _chainID = TrigConfInterface::getChainCounter(_i);
-      const std::string _chainName = TrigConfInterface::getChainName(_i);
-      const std::string _comment = TrigXMLService::trigXMLService().getChainComment(_chainName);
-      const std::string _uniqueName = Config::config().getStr(kRateUniqueString) + _chainName;
-      const std::vector<std::string> _chainGroups = TrigConfInterface::getChainRatesGroupNames(_i);
-      std::string _chainGroupsText = "";
-      for (UInt_t _g = 0; _g < _chainGroups.size(); ++_g) {
-        _chainGroupsText += _chainGroups.at(_g);
-        if (_g != _chainGroups.size() - 1) _chainGroupsText += " ";
+    for (UInt_t i = 0; i < TrigConfInterface::getChainN(); ++i) {
+      if (TrigConfInterface::getChainLevel(i) == 1) continue; // Only HLT chains
+
+      const UInt_t chainID = TrigConfInterface::getChainCounter(i);
+      const std::string chainName = TrigConfInterface::getChainName(i);
+      const std::string comment = TrigXMLService::trigXMLService().getChainComment(chainName);
+      const std::string uniqueName = Config::config().getStr(kRateUniqueString) + chainName;
+      const std::vector<std::string> chainGroups = TrigConfInterface::getChainRatesGroupNames(i);
+      std::string chainGroupsText = "";
+      for (UInt_t g = 0; g < chainGroups.size(); ++g) {
+        chainGroupsText += chainGroups.at(g);
+        if (g != chainGroups.size() - 1) chainGroupsText += " ";
       }
       //Add also the stream tags
-      const std::vector<std::string> _chainStreams = TrigConfInterface::getChainStreamNames(_i);
+      const std::vector<std::string> chainStreams = TrigConfInterface::getChainStreamNames(i);
 
-      if (_chainName == Config::config().getStr(kBlankString)) {
+      if (chainName == Config::config().getStr(kBlankString)) {
         Warning("MonitorRates::createHLTCounters", "Skipping Chain ID %i. Cannot get name from current configuration.",
-                _chainID);
+                chainID);
         continue;
       }
 
       // HLT chains with no (see: all!) seeds need special treatment
-      const std::string _L1Name = TrigConfInterface::getLowerChainName(_chainName);
+      const std::string L1Name = TrigConfInterface::getLowerChainName(chainName);
 
       // Find the L1 Counter for this chain. We do this so we can query the counter for its rates
-      CounterMapIt_t _itCm = _counterMap->find(_L1Name);
-      CounterBaseRates* _L1Counter = nullptr;
-      if (_itCm != _counterMap->end()) _L1Counter = (CounterBaseRates*) _itCm->second;
+      CounterMapIt_t itCm = counterMap->find(L1Name);
+      CounterBaseRates* L1Counter = nullptr;
+      if (itCm != counterMap->end()) L1Counter = (CounterBaseRates*) itCm->second;
 
       //bool _hasL1Seed = kTRUE;
-      if (_L1Name == Config::config().getStr(kBlankString)) {
+      if (L1Name == Config::config().getStr(kBlankString)) {
         //_hasL1Seed = kFALSE;
-        _L1Counter = m_globalRateL1Counter;
+        L1Counter = m_globalRateL1Counter;
       }
 
       // Are we running over this chain?
-      if (checkPatternNameMonitor(_chainName, m_invertFilter) == kFALSE) continue;
+      if (checkPatternNameMonitor(chainName, m_invertFilter) == kFALSE) continue;
 
-      // Find the ChainItem for this chain
-      ChainItemMapIt_t _it = m_chainItemsHLT.find(_chainName);
-      if (_it == m_chainItemsHLT.end()) {
-        Warning("MonitorRates::createHLTCounters", "Cannot find HLT item: %s", _chainName.c_str());
+      // Find the m_ChainItem for this chain
+      ChainItemMapIt_t it = m_chainItemsHLT.find(chainName);
+      if (it == m_chainItemsHLT.end()) {
+        Warning("MonitorRates::createHLTCounters", "Cannot find HLT item: %s", chainName.c_str());
         continue;
       }
-      RatesChainItem* _chainItemHLT = _it->second;
+      RatesChainItem* chainItemHLT = it->second;
 
 
       // Construct a string displaying the PS for this chain
-      Float_t _prescaleVal = 1.;
-      Float_t _prescaleValOnlineL1 = 1.;
-      Float_t _prescaleValOnlineHLT = TrigConfInterface::getPrescale(_chainItemHLT->getName());
-      std::string _L1PSString = Config::config().getStr(kMultipleString);
-      if (_chainItemHLT->getLower().size() == 1) {
-        _prescaleVal = (*(_chainItemHLT->getLowerStart()))->getPS();
-        _prescaleValOnlineL1 = TrigConfInterface::getPrescale((*(_chainItemHLT->getLowerStart()))->getName());
-
-        _L1PSString = floatToString(_prescaleVal, 2);
-      } else if (_chainItemHLT->getLower().size() == 1 && (*(_chainItemHLT->getLower().begin()))->getName() == "") {
-        _L1PSString = Config::config().getStr(kAlwaysPassString); // "UNSEEDED"
+      Float_t prescaleVal = 1.;
+      Float_t prescaleValOnlineL1 = 1.;
+      Float_t prescaleValOnlineHLT = TrigConfInterface::getPrescale(chainItemHLT->getName());
+      std::string L1PSString = Config::config().getStr(kMultipleString);
+      if (chainItemHLT->getLower().size() == 1) {
+        prescaleVal = (*(chainItemHLT->getLowerStart()))->getPS();
+        prescaleValOnlineL1 = TrigConfInterface::getPrescale((*(chainItemHLT->getLowerStart()))->getName());
+
+        L1PSString = floatToString(prescaleVal, 2);
+      } else if (chainItemHLT->getLower().size() == 1 && (*(chainItemHLT->getLower().begin()))->getName() == "") {
+        L1PSString = Config::config().getStr(kAlwaysPassString); // "UNSEEDED"
       }
-      const std::string _prescaleStr = Config::config().getStr(kL1String) + ":" + _L1PSString
+      const std::string prescaleStr = Config::config().getStr(kL1String) + ":" + L1PSString
                                        + " " + Config::config().getStr(kHLTString) + ":" + floatToString(
-        _chainItemHLT->getPS(), 2);
-      _prescaleVal *= _chainItemHLT->getPS();
+        chainItemHLT->getPS(), 2);
+      prescaleVal *= chainItemHLT->getPS();
 
       // Was this chain prescaled out online?
-      if (isZero(_prescaleValOnlineHLT + 1.) == kTRUE) continue; // Don't need to process if prescaled out online
+      if (isZero(prescaleValOnlineHLT + 1.) == kTRUE) continue; // Don't need to process if prescaled out online
                                                                  // EFFICIENCY
 
       // ################################################################################################################
@@ -453,33 +451,33 @@ namespace TrigCostRootAnalysis {
       // Each unique chain does the OR of _everything_ *EXCEPT* the chain we're interested in
       // Then at the end it subtracts this rate from the global rate. So we need to add *all* chains *but* this one.
 
-      CounterBaseRates* _thisChainsUniqueCounter = 0;
+      CounterBaseRates* thisChainsUniqueCounter = 0;
       if (Config::config().getInt(kDoUniqueRates) == kTRUE /*&& _hasL1Seed == kTRUE*/) {
-        for (CounterMapIt_t _itA = _counterMap->begin(); _itA != _counterMap->end(); ++_itA) {
-          CounterBaseRates* _counter = static_cast<CounterBaseRates*>(_itA->second);
-          if (_counter->getStrDecoration(kDecType) != "UniqueHLT") continue;
+        for (CounterMapIt_t itA = counterMap->begin(); itA != counterMap->end(); ++itA) {
+          CounterBaseRates* counter = static_cast<CounterBaseRates*>(itA->second);
+          if (counter->getStrDecoration(kDecType) != "UniqueHLT") continue;
           // I'm not a unique counter - next
-          if (_counter->getName() == _uniqueName) {
-            _thisChainsUniqueCounter = _counter;
-            _thisChainsUniqueCounter->decorate(kDecPrescaleStr, _prescaleStr);
-            _thisChainsUniqueCounter->decorate(kDecPrescaleVal, _prescaleVal);
-            _thisChainsUniqueCounter->decorate(kDecPrescaleValOnlineL1, _prescaleValOnlineL1);
-            _thisChainsUniqueCounter->decorate(kDecComment, _comment);
+          if (counter->getName() == uniqueName) {
+            thisChainsUniqueCounter = counter;
+            thisChainsUniqueCounter->decorate(kDecPrescaleStr, prescaleStr);
+            thisChainsUniqueCounter->decorate(kDecPrescaleVal, prescaleVal);
+            thisChainsUniqueCounter->decorate(kDecPrescaleValOnlineL1, prescaleValOnlineL1);
+            thisChainsUniqueCounter->decorate(kDecComment, comment);
             continue; // I'm the unique counter for *this* chain - *don't* add me!
           }
           // Chain *may* be part of a CPS group
-          RatesCPSGroup* _cpsGroup = nullptr;
-          const std::string _chainCPSGroup = TrigConfInterface::getChainCPSGroup(_i);
-          if (m_doCPS && _chainCPSGroup != "") {
-            CPSGroupMapIt_t _it = m_cpsGroups.find(_chainCPSGroup);
-            if (_it != m_cpsGroups.end()) _cpsGroup = _it->second;
+          RatesCPSGroup* cpsGroup = nullptr;
+          const std::string chainCPSGroup = TrigConfInterface::getChainCPSGroup(i);
+          if (m_doCPS && chainCPSGroup != "") {
+            CPSGroupMapIt_t it = m_cpsGroups.find(chainCPSGroup);
+            if (it != m_cpsGroups.end()) cpsGroup = it->second;
           }
           // Add this chain to it, or if it's in a CPS group add the group.
           // This will result in the CPS group being added multiple times, but it's a set of pointers so this is fine.
-          if (_cpsGroup != nullptr) {
-            _counter->addCPSItem(_cpsGroup, _chainName);
+          if (cpsGroup != nullptr) {
+            counter->addCPSItem(cpsGroup, chainName);
           } else {
-            _counter->addL2Item(_chainItemHLT);
+            counter->addL2Item(chainItemHLT);
           }
         }
       }
@@ -488,25 +486,25 @@ namespace TrigCostRootAnalysis {
       // STEP THREE: Make a new counter for this HLT Chain
 
       // And add a new counter to get the rates for this chainItem
-      CounterRatesChain* _ratesChain = new CounterRatesChain(m_costData, _chainName, _chainID, 0, (MonitorBase*) this); // Mint
+      CounterRatesChain* ratesChain = new CounterRatesChain(m_costData, chainName, chainID, 0, (MonitorBase*) this); // Mint
                                                                                                                         // new
                                                                                                                         // counter
-      _ratesChain->decorate(kDecRatesGroupName, _chainGroupsText);
-      _ratesChain->decorate(kDecPrescaleStr, _prescaleStr);
-      _ratesChain->decorate(kDecPrescaleVal, _prescaleVal);
-      _ratesChain->decorate(kDecPrescaleValOnlineL1, _prescaleValOnlineL1);
-      _ratesChain->decorate(kDecComment, _comment);
-      _ratesChain->decorate(kDecType, "Chain");
-      _ratesChain->setMyUniqueCounter(_thisChainsUniqueCounter); // Link it to its corresponding unique counter.
-      _ratesChain->setGlobalRateCounter(m_globalRateHLTCounter);
-      _ratesChain->setLowerRateCounter(_L1Counter);
-      _ratesChain->addL2Item(_chainItemHLT); // Link it to where it'll be getting its pass/fail info
-      (*_counterMap)[_chainName] = static_cast<CounterBase*>(_ratesChain); // Insert into the counterMap
-      //Info("MonitorRates::createHLTCounters","Created counter for: %s", _chainName.c_str() );
+      ratesChain->decorate(kDecRatesGroupName, chainGroupsText);
+      ratesChain->decorate(kDecPrescaleStr, prescaleStr);
+      ratesChain->decorate(kDecPrescaleVal, prescaleVal);
+      ratesChain->decorate(kDecPrescaleValOnlineL1, prescaleValOnlineL1);
+      ratesChain->decorate(kDecComment, comment);
+      ratesChain->decorate(kDecType, "Chain");
+      ratesChain->setMyUniqueCounter(thisChainsUniqueCounter); // Link it to its corresponding unique counter.
+      ratesChain->setGlobalRateCounter(m_globalRateHLTCounter);
+      ratesChain->setLowerRateCounter(L1Counter);
+      ratesChain->addL2Item(chainItemHLT); // Link it to where it'll be getting its pass/fail info
+      (*counterMap)[chainName] = static_cast<CounterBase*>(ratesChain); // Insert into the counterMap
+      //Info("MonitorRates::createHLTCounters","Created counter for: %s", chainName.c_str() );
 
       if (TrigXMLService::trigXMLService().hasExpressPrescaleInfo() &&
-          TrigXMLService::trigXMLService().getExpressPrescaleInfo(_chainName) > 0) {
-        _ratesChain->decorate(kDecDoExpressChain, 1);
+          TrigXMLService::trigXMLService().getExpressPrescaleInfo(chainName) > 0) {
+        ratesChain->decorate(kDecDoExpressChain, 1);
       }
     }
   }
@@ -514,216 +512,216 @@ namespace TrigCostRootAnalysis {
   /**
    * Create one union counter per CPS group and add the group to it. Nothing more than that here.
    */
-  void MonitorRates::createCPSGroupCounters(CounterMap_t* _counterMap) {
+  void MonitorRates::createCPSGroupCounters(CounterMap_t* counterMap) {
     if (m_doCPS == kFALSE) return;
 
-    for (UInt_t _i = 0; _i < TrigConfInterface::getChainN(); ++_i) {
-      if (TrigConfInterface::getChainLevel(_i) == 1) continue; // Only HLT chains
-      const std::string _chainName = TrigConfInterface::getChainName(_i);
-      if (checkPatternNameMonitor(_chainName, m_invertFilter) == kFALSE) continue;
+    for (UInt_t i = 0; i < TrigConfInterface::getChainN(); ++i) {
+      if (TrigConfInterface::getChainLevel(i) == 1) continue; // Only HLT chains
+      const std::string chainName = TrigConfInterface::getChainName(i);
+      if (checkPatternNameMonitor(chainName, m_invertFilter) == kFALSE) continue;
 
-      Float_t _prescaleValOnlineHLT = TrigConfInterface::getPrescale(_chainName);
-      //Double_t _prescaleValHLT = TrigXMLService::trigXMLService().getPrescale( TrigConfInterface::getChainName(_i) );
-      if (isZero(_prescaleValOnlineHLT + 1.) == kTRUE) continue; // Don't need to process if prescaled out online.
+      Float_t prescaleValOnlineHLT = TrigConfInterface::getPrescale(chainName);
+      //Double_t prescaleValHLT = TrigXMLService::trigXMLService().getPrescale( TrigConfInterface::getChainName(i) );
+      if (isZero(prescaleValOnlineHLT + 1.) == kTRUE) continue; // Don't need to process if prescaled out online.
                                                                  // EFFICIENCY CODE
-      //if (isZero(_prescaleValHLT + 1.) == kTRUE) continue; // Don't need to process if prescaled out in prediction.
+      //if (isZero(prescaleValHLT + 1.) == kTRUE) continue; // Don't need to process if prescaled out in prediction.
       // EFFICIENCY CODE
 
-      const std::string _chainCPSGroup = TrigConfInterface::getChainCPSGroup(_i);
-      if (_chainCPSGroup == "") continue; // Only chains in a CPS group
+      const std::string chainCPSGroup = TrigConfInterface::getChainCPSGroup(i);
+      if (chainCPSGroup == "") continue; // Only chains in a CPS group
 
       // Check we don't have a counter already
       // (the chains are already grouped in a RatesCPSGroup so we don't need to add them all individually again here)
       // But we do need to tell the group counter about this chain, so it knows that it's part of it.
       // Otherwise it wouldn't know what part of the CPS group to process or not
-      if (_counterMap->count(_chainCPSGroup) == 1) {
-        CounterBaseRates* _ptr = dynamic_cast<CounterBaseRates*>(_counterMap->find(_chainCPSGroup)->second);
-        if (_ptr != nullptr) _ptr->addCPSItem(nullptr, _chainName);
-        else Error("MonitorRates::createCPSGroups", "Could not get the group counter for %s", _chainCPSGroup.c_str());
+      if (counterMap->count(chainCPSGroup) == 1) {
+        CounterBaseRates* ptr = dynamic_cast<CounterBaseRates*>(counterMap->find(chainCPSGroup)->second);
+        if (ptr != nullptr) ptr->addCPSItem(nullptr, chainName);
+        else Error("MonitorRates::createCPSGroups", "Could not get the group counter for %s", chainCPSGroup.c_str());
         continue;
       }
 
-      CPSGroupMapIt_t _it = m_cpsGroups.find(_chainCPSGroup);
-      if (_it == m_cpsGroups.end()) {
-        Warning("MonitorRates::createCPSGroups", "Cannot find the CPS group for %s", _chainCPSGroup.c_str());
+      CPSGroupMapIt_t it = m_cpsGroups.find(chainCPSGroup);
+      if (it == m_cpsGroups.end()) {
+        Warning("MonitorRates::createCPSGroups", "Cannot find the CPS group for %s", chainCPSGroup.c_str());
         continue;
       }
-      RatesCPSGroup* _cpsGroup = _it->second;
+      RatesCPSGroup* cpsGroup = it->second;
 
-      CounterRatesUnion* _ratesCpsGroup = new CounterRatesUnion(m_costData, _chainCPSGroup, 0, 0, (MonitorBase*) this); // Mint
+      CounterRatesUnion* ratesCpsGroup = new CounterRatesUnion(m_costData, chainCPSGroup, 0, 0, (MonitorBase*) this); // Mint
                                                                                                                         // new
                                                                                                                         // counter
-      _ratesCpsGroup->decorate(kDecPrescaleStr, Config::config().getStr(kMultipleString));
-      _ratesCpsGroup->decorate(kDecPrescaleVal, (Float_t) 0.);
-      _ratesCpsGroup->decorate(kDecPrescaleValOnlineL1, (Float_t) 0.);
-      _ratesCpsGroup->decorate(kDecComment, "");
-      _ratesCpsGroup->decorate(kDecRatesGroupName, _chainCPSGroup);
-      _ratesCpsGroup->decorate(kDecType, "Union");
-      _ratesCpsGroup->setGlobalRateCounter(m_globalRateHLTCounter);
-      _ratesCpsGroup->addCPSItem(_cpsGroup, _chainName); // Add the group
-      (*_counterMap)[_chainCPSGroup] = static_cast<CounterBase*>(_ratesCpsGroup); // Instert into the map
+      ratesCpsGroup->decorate(kDecPrescaleStr, Config::config().getStr(kMultipleString));
+      ratesCpsGroup->decorate(kDecPrescaleVal, (Float_t) 0.);
+      ratesCpsGroup->decorate(kDecPrescaleValOnlineL1, (Float_t) 0.);
+      ratesCpsGroup->decorate(kDecComment, "");
+      ratesCpsGroup->decorate(kDecRatesGroupName, chainCPSGroup);
+      ratesCpsGroup->decorate(kDecType, "Union");
+      ratesCpsGroup->setGlobalRateCounter(m_globalRateHLTCounter);
+      ratesCpsGroup->addCPSItem(cpsGroup, chainName); // Add the group
+      (*counterMap)[chainCPSGroup] = static_cast<CounterBase*>(ratesCpsGroup); // Instert into the map
     }
   }
 
   /**
    * Create one counter per RATES group and add to it a combination of CPS groups and non-CPS chains.
    */
-  void MonitorRates::createGroupCounters(CounterMap_t* _counterMap) {
-    CounterRatesUnion* _expressGroup = nullptr;
+  void MonitorRates::createGroupCounters(CounterMap_t* counterMap) {
+    CounterRatesUnion* expressGroup = nullptr;
 
     if (TrigXMLService::trigXMLService().hasExpressPrescaleInfo() == kTRUE) {
-      _expressGroup = new CounterRatesUnion(m_costData, Config::config().getStr(
+      expressGroup = new CounterRatesUnion(m_costData, Config::config().getStr(
                                               kRateExpressString), 0, 0, (MonitorBase*) this); // Mint new counter,
                                                                                                // kRateExpressString is
                                                                                                // a special string - it
                                                                                                // will trigger special
                                                                                                // behaviour
-      _expressGroup->decorate(kDecPrescaleStr, Config::config().getStr(kMultipleString));
-      _expressGroup->decorate(kDecRatesGroupName, Config::config().getStr(kAllString));
-      _expressGroup->decorate(kDecPrescaleValOnlineL1, (Float_t) 0);
-      _expressGroup->decorate(kDecComment, "");
-      _expressGroup->decorate(kDecType, "Union");
-      (*_counterMap)[Config::config().getStr(kRateExpressString)] = static_cast<CounterBase*>(_expressGroup); // Instert
+      expressGroup->decorate(kDecPrescaleStr, Config::config().getStr(kMultipleString));
+      expressGroup->decorate(kDecRatesGroupName, Config::config().getStr(kAllString));
+      expressGroup->decorate(kDecPrescaleValOnlineL1, (Float_t) 0);
+      expressGroup->decorate(kDecComment, "");
+      expressGroup->decorate(kDecType, "Union");
+      (*counterMap)[Config::config().getStr(kRateExpressString)] = static_cast<CounterBase*>(expressGroup); // Instert
                                                                                                               // into
                                                                                                               // the map
     }
 
-    for (UInt_t _i = 0; _i < TrigConfInterface::getChainN(); ++_i) {
-      if (TrigConfInterface::getChainLevel(_i) == 1) continue; // Only HLT chains
-      if (checkPatternNameMonitor(TrigConfInterface::getChainName(_i), m_invertFilter) == kFALSE) continue;
-      const std::string _chainName = TrigConfInterface::getChainName(_i);
+    for (UInt_t i = 0; i < TrigConfInterface::getChainN(); ++i) {
+      if (TrigConfInterface::getChainLevel(i) == 1) continue; // Only HLT chains
+      if (checkPatternNameMonitor(TrigConfInterface::getChainName(i), m_invertFilter) == kFALSE) continue;
+      const std::string chainName = TrigConfInterface::getChainName(i);
 
-      Float_t _prescaleValOnlineHLT = TrigConfInterface::getPrescale(_chainName);
-      if (isZero(_prescaleValOnlineHLT + 1.) == kTRUE) continue; // Don't need to process if prescaled out online.
+      Float_t prescaleValOnlineHLT = TrigConfInterface::getPrescale(chainName);
+      if (isZero(prescaleValOnlineHLT + 1.) == kTRUE) continue; // Don't need to process if prescaled out online.
                                                                  // EFFICIENCY CODE
 
-      const Bool_t _isMain = TrigConfInterface::getChainIsMainStream(_i);
-      std::vector<std::string> _chainGroups = TrigConfInterface::getChainRatesGroupNames(_i);
-      const Bool_t _isExpress =
+      const Bool_t isMain = TrigConfInterface::getChainIsMainStream(i);
+      std::vector<std::string> chainGroups = TrigConfInterface::getChainRatesGroupNames(i);
+      const Bool_t isExpress =
         (TrigXMLService::trigXMLService().hasExpressPrescaleInfo() &&
-         TrigXMLService::trigXMLService().getExpressPrescaleInfo(_chainName) > 0);
+         TrigXMLService::trigXMLService().getExpressPrescaleInfo(chainName) > 0);
 
-      RatesCPSGroup* _cpsGroup = nullptr;
-      const std::string _chainCPSGroup = TrigConfInterface::getChainCPSGroup(_i);
-      if (m_doCPS && _chainCPSGroup != "") {
-        CPSGroupMapIt_t _it = m_cpsGroups.find(_chainCPSGroup);
-        if (_it != m_cpsGroups.end()) _cpsGroup = _it->second;
+      RatesCPSGroup* cpsGroup = nullptr;
+      const std::string chainCPSGroup = TrigConfInterface::getChainCPSGroup(i);
+      if (m_doCPS && chainCPSGroup != "") {
+        CPSGroupMapIt_t it = m_cpsGroups.find(chainCPSGroup);
+        if (it != m_cpsGroups.end()) cpsGroup = it->second;
       }
 
       // They are still groups, can still get their basic rate
-      if (m_doCPS == false && _chainCPSGroup != "") _chainGroups.push_back(_chainCPSGroup);
+      if (m_doCPS == false && chainCPSGroup != "") chainGroups.push_back(chainCPSGroup);
 
       // Also add STREAM rates
-      std::vector<std::string> _chainStreams = TrigConfInterface::getChainStreamNames(_i);
-      _chainGroups.insert(_chainGroups.end(), _chainStreams.begin(), _chainStreams.end());
+      std::vector<std::string> chainStreams = TrigConfInterface::getChainStreamNames(i);
+      chainGroups.insert(chainGroups.end(), chainStreams.begin(), chainStreams.end());
 
       // Debug
-      // std::stringstream _ss;
-      // for (UInt_t _group = 0; _group < _chainGroups.size(); ++_group) _ss << _chainGroups.at(_group) << " ";
-      // _ss << TrigConfInterface::getChainCPSGroup(_i);
-      // Info("MonitorRates::createGroupCounters","Chain %s in groups: %s", TrigConfInterface::getChainName(_i).c_str(),
-      // _ss.str().c_str());
+      // std::stringstream ss;
+      // for (UInt_t _group = 0; _group < chainGroups.size(); ++_group) ss << chainGroups.at(_group) << " ";
+      // ss << TrigConfInterface::getChainCPSGroup(i);
+      // Info("MonitorRates::createGroupCounters","Chain %s in groups: %s", TrigConfInterface::getChainName(i).c_str(),
+      // ss.str().c_str());
 
-      for (UInt_t _group = 0; _group < _chainGroups.size(); ++_group) {
-        std::string _chainGroup = _chainGroups.at(_group);
+      for (UInt_t group = 0; group < chainGroups.size(); ++group) {
+        std::string chainGroup = chainGroups.at(group);
 
-        ChainItemMapIt_t _it = m_chainItemsHLT.find(_chainName);
-        if (_it == m_chainItemsHLT.end()) {
+        ChainItemMapIt_t it = m_chainItemsHLT.find(chainName);
+        if (it == m_chainItemsHLT.end()) {
           Warning("MonitorRates::createGroups", "Cannot find a RatesChainItem for %s when doing group %s", TrigConfInterface::getChainName(
-                    _i).c_str(), _chainGroup.c_str());
+                    i).c_str(), chainGroup.c_str());
           continue;
         }
-        RatesChainItem* _chainItemHLT = _it->second;
+        RatesChainItem* chainItemHLT = it->second;
 
-        CounterRatesUnion* _ratesGroup = nullptr;
+        CounterRatesUnion* ratesGroup = nullptr;
         // Do we have a counter for this group?
-        CounterMapIt_t _findGroup = _counterMap->find(_chainGroup);
-        if (_findGroup != _counterMap->end()) {
+        CounterMapIt_t findGroup = counterMap->find(chainGroup);
+        if (findGroup != counterMap->end()) {
           // We do have a group already!
-          _ratesGroup = static_cast<CounterRatesUnion*>(_findGroup->second);
+          ratesGroup = static_cast<CounterRatesUnion*>(findGroup->second);
         } else {
           // We need a new group counter, this should be of type Union
-          _ratesGroup = new CounterRatesUnion(m_costData, _chainGroup, 0, 0, (MonitorBase*) this); // Mint new counter
-          _ratesGroup->decorate(kDecPrescaleStr, Config::config().getStr(kMultipleString));
-          _ratesGroup->decorate(kDecPrescaleVal, (Float_t) 0.);
-          _ratesGroup->decorate(kDecPrescaleValOnlineL1, (Float_t) 0.);
-          _ratesGroup->decorate(kDecComment, "");
-          _ratesGroup->decorate(kDecRatesGroupName, _chainGroup);
-          _ratesGroup->decorate(kDecType, "Union");
-          _ratesGroup->setGlobalRateCounter(m_globalRateHLTCounter);
-          (*_counterMap)[_chainGroup] = static_cast<CounterBase*>(_ratesGroup); // Insert into the map
+          ratesGroup = new CounterRatesUnion(m_costData, chainGroup, 0, 0, (MonitorBase*) this); // Mint new counter
+          ratesGroup->decorate(kDecPrescaleStr, Config::config().getStr(kMultipleString));
+          ratesGroup->decorate(kDecPrescaleVal, (Float_t) 0.);
+          ratesGroup->decorate(kDecPrescaleValOnlineL1, (Float_t) 0.);
+          ratesGroup->decorate(kDecComment, "");
+          ratesGroup->decorate(kDecRatesGroupName, chainGroup);
+          ratesGroup->decorate(kDecType, "Union");
+          ratesGroup->setGlobalRateCounter(m_globalRateHLTCounter);
+          (*counterMap)[chainGroup] = static_cast<CounterBase*>(ratesGroup); // Insert into the map
         }
 
         // Add this chain to it, or if it's in a CPS group add the group.
         // This will result in the CPS group being added multiple times, but it's a set of pointers so this is fine.
-        if (_cpsGroup != nullptr) {
-          _ratesGroup->addCPSItem(_cpsGroup, _chainName);
-          if (_group == 0) { // Might be adding to many groups, but only want (need) to add to the globals once
-            m_globalRateHLTCounter->addCPSItem(_cpsGroup, _chainName);
-            if (_isMain) m_globalRatePhysicsMainCounter->addCPSItem(_cpsGroup, _chainName);
-            if (_isExpress) _expressGroup->addCPSItem(_cpsGroup, _chainName);
+        if (cpsGroup != nullptr) {
+          ratesGroup->addCPSItem(cpsGroup, chainName);
+          if (group == 0) { // Might be adding to many groups, but only want (need) to add to the globals once
+            m_globalRateHLTCounter->addCPSItem(cpsGroup, chainName);
+            if (isMain) m_globalRatePhysicsMainCounter->addCPSItem(cpsGroup, chainName);
+            if (isExpress) expressGroup->addCPSItem(cpsGroup, chainName);
           }
         } else {
-          _ratesGroup->addL2Item(_chainItemHLT);
-          if (_group == 0) {
-            m_globalRateHLTCounter->addL2Item(_chainItemHLT);
-            if (_isMain) m_globalRatePhysicsMainCounter->addL2Item(_chainItemHLT);
-            if (_isExpress) _expressGroup->addL2Item(_chainItemHLT);
+          ratesGroup->addL2Item(chainItemHLT);
+          if (group == 0) {
+            m_globalRateHLTCounter->addL2Item(chainItemHLT);
+            if (isMain) m_globalRatePhysicsMainCounter->addL2Item(chainItemHLT);
+            if (isExpress) expressGroup->addL2Item(chainItemHLT);
           }
         }
       } // loop over chain groups
     } // loop over chains
   } // createGroups
 
-  void MonitorRates::createOverlapCounters(CounterMap_t* _counterMap) {
-    for (CounterMapIt_t _itA = _counterMap->begin(); _itA != _counterMap->end(); ++_itA) {
+  void MonitorRates::createOverlapCounters(CounterMap_t* counterMap) {
+    for (CounterMapIt_t itA = counterMap->begin(); itA != counterMap->end(); ++itA) {
       // Look for all Chain counters
-      CounterBaseRates* _counterA = static_cast<CounterBaseRates*>(_itA->second);
-      if (_counterA->getStrDecoration(kDecType) != "Chain") {
+      CounterBaseRates* counterA = static_cast<CounterBaseRates*>(itA->second);
+      if (counterA->getStrDecoration(kDecType) != "Chain") {
         continue; // I'm not a HLT chain counter - next
       }
 
-      if (checkPatternOverlap(_counterA->getName(), kFALSE) == kFALSE) continue;
+      if (checkPatternOverlap(counterA->getName(), kFALSE) == kFALSE) continue;
 
       // Now look at all other counters - find others in my group
-      for (CounterMapIt_t _itB = _counterMap->begin(); _itB != _counterMap->end(); ++_itB) {
-        if (_itA == _itB) continue;
+      for (CounterMapIt_t itB = counterMap->begin(); itB != counterMap->end(); ++itB) {
+        if (itA == itB) continue;
 
-        CounterBaseRates* _counterB = static_cast<CounterBaseRates*>(_itB->second);
-        if (_counterB->getStrDecoration(kDecType) != "Chain") {
+        CounterBaseRates* counterB = static_cast<CounterBaseRates*>(itB->second);
+        if (counterB->getStrDecoration(kDecType) != "Chain") {
           continue; // I'm not a HLT chain counter - next
         }
 
         // Same group?
         if (Config::config().getInt(kDoGroupOverlap) == kTRUE
-            && _counterA->getStrDecoration(kDecRatesGroupName) != _counterB->getStrDecoration(kDecRatesGroupName)) {
+            && counterA->getStrDecoration(kDecRatesGroupName) != counterB->getStrDecoration(kDecRatesGroupName)) {
           continue;
         }
 
         // Construct name for overlap counter
-        const std::string _name = _counterA->getName() + Config::config().getStr(kAndString) + _counterB->getName();
+        const std::string name = counterA->getName() + Config::config().getStr(kAndString) + counterB->getName();
 
         // check we don't have this already the other way around!
-        const std::string _altName = _counterB->getName() + Config::config().getStr(kAndString) + _counterA->getName();
-        if (_counterMap->count(_altName) > 0) continue;
+        const std::string altName = counterB->getName() + Config::config().getStr(kAndString) + counterA->getName();
+        if (counterMap->count(altName) > 0) continue;
 
         // Add new overlap counter!
-        CounterRatesIntersection* _overlapCounter = new CounterRatesIntersection(m_costData, _name, 0, 0,
+        CounterRatesIntersection* overlapCounter = new CounterRatesIntersection(m_costData, name, 0, 0,
                                                                                  (MonitorBase*) this); // Mint new
                                                                                                        // counter
-        _overlapCounter->decorate(kDecPrescaleStr, Config::config().getStr(kMultipleString));
-        _overlapCounter->decorate(kDecPrescaleValOnlineL1, (Float_t) 0.);
-        _overlapCounter->decorate(kDecComment, "");
-        _overlapCounter->decorate(kDecRatesGroupName, _counterA->getStrDecoration(kDecRatesGroupName));
-        _overlapCounter->decorate(kDecType, "Intersection");
-        _overlapCounter->addL2Items(_counterA->getL2ItemSet());
-        _overlapCounter->addL2Items(_counterB->getL2ItemSet());
-        (*_counterMap)[_name] = static_cast<CounterBase*>(_overlapCounter);
+        overlapCounter->decorate(kDecPrescaleStr, Config::config().getStr(kMultipleString));
+        overlapCounter->decorate(kDecPrescaleValOnlineL1, (Float_t) 0.);
+        overlapCounter->decorate(kDecComment, "");
+        overlapCounter->decorate(kDecRatesGroupName, counterA->getStrDecoration(kDecRatesGroupName));
+        overlapCounter->decorate(kDecType, "Intersection");
+        overlapCounter->addL2Items(counterA->getL2ItemSet());
+        overlapCounter->addL2Items(counterB->getL2ItemSet());
+        (*counterMap)[name] = static_cast<CounterBase*>(overlapCounter);
 
         // Give the two chain counters pointers to this overlap counter to be able to calculate their respective overlap
         // with each other
-        _counterA->addOverlap(static_cast<CounterBase*>(_overlapCounter));
-        _counterB->addOverlap(static_cast<CounterBase*>(_overlapCounter));
+        counterA->addOverlap(static_cast<CounterBase*>(overlapCounter));
+        counterB->addOverlap(static_cast<CounterBase*>(overlapCounter));
       }
     }
   }
@@ -731,9 +729,9 @@ namespace TrigCostRootAnalysis {
   /**
    * Process new event for this monitor.
    * For the chain rate monitor - we look at a chain's rate and its correlation with other chains in its group
-   * @param _weight The event weight.
+   * @param weight The event weight.
    */
-  void MonitorRates::newEvent(Float_t _weight) {
+  void MonitorRates::newEvent(Float_t weight) {
     if (getPass() == 2) return; // We don't do 2-pass
 
     m_timer.start();
@@ -741,74 +739,74 @@ namespace TrigCostRootAnalysis {
 
     // IMPORTANT NOTE - we REMOVE the Lumi extrap weight as this is now added more intelligently (weighted average per
     // chain combo)
-    _weight /= Config::config().getFloat(kLumiExtrapWeight);
+    weight /= Config::config().getFloat(kLumiExtrapWeight);
 
-    // First time? Setup the ChainItem maps to hold the decision and prescale information for the rates counters to use.
+    // First time? Setup the m_ChainItem maps to hold the decision and prescale information for the rates counters to use.
     if (m_chainItemsHLT.size() == 0 || m_chainItemsL1.size() == 0) populateChainItemMaps();
 
     //Now loop over the counter collections;
-    for (CounterMapSetIt_t _cmsIt = m_collectionsToProcess.begin(); _cmsIt != m_collectionsToProcess.end(); ++_cmsIt) {
-      CounterMap_t* _counterMap = *_cmsIt; // This counter map holds all the counters. But we don't really want to
+    for (CounterMapSetIt_t cmsIt = m_collectionsToProcess.begin(); cmsIt != m_collectionsToProcess.end(); ++cmsIt) {
+      CounterMap_t* counterMap = *cmsIt; // This counter map holds all the counters. But we don't really want to
                                            // process every one
-      CounterBaseRatesSet_t _inEventCounterMap; // This set contains all the counters we actually do need to iterate
+      CounterBaseRatesSet_t inEventCounterMap; // This set contains all the counters we actually do need to iterate
                                                 // over
 
       // If the counter map is empty, then we need to populate it. We will pre-load a counter for every chain.
-      if (_counterMap->size() == 0) populateCounterMap(_counterMap);
+      if (counterMap->size() == 0) populateCounterMap(counterMap);
 
 
       // ##################################################################################################################
       // PASS ONE: Fill the event information into HLT RatesChainItems - this is their only job, to remember this stuff.
-      ChainItemSet_t _chainItemsInEvent;
-      for (UInt_t _c = 0; _c < m_costData->getNChains(); ++_c) {
+      ChainItemSet_t chainItemsInEvent;
+      for (UInt_t c = 0; c < m_costData->getNChains(); ++c) {
         // Get the name of the chain (Supplying L2 or EF helps, but is not needed)
-        Int_t _chainID = m_costData->getChainID(_c);
-        const std::string _chainName =
-          TrigConfInterface::getHLTNameFromChainID(_chainID, m_costData->getChainLevel(_c));
+        Int_t chainID = m_costData->getChainID(c);
+        const std::string chainName =
+          TrigConfInterface::getHLTNameFromChainID(chainID, m_costData->getChainLevel(c));
         // Did we fail?
-        if (_chainName == Config::config().getStr(kBlankString)) {
+        if (chainName == Config::config().getStr(kBlankString)) {
           Warning("MonitorRates::newEvent", "Skipping Chain ID %i. Cannot get name from current configuration.",
-                  _chainID);
+                  chainID);
           continue;
         }
 
-        // Find the ChainItem for this chain so we can set it's PassedRaw bit for this event
-        ChainItemMapIt_t _it = m_chainItemsHLT.find(_chainName);
-        if (_it == m_chainItemsHLT.end()) {
-          Warning("MonitorRates::newEvent", "Cannot find HLT item: %s", _chainName.c_str());
+        // Find the m_ChainItem for this chain so we can set it's PassedRaw bit for this event
+        ChainItemMapIt_t it = m_chainItemsHLT.find(chainName);
+        if (it == m_chainItemsHLT.end()) {
+          Warning("MonitorRates::newEvent", "Cannot find HLT item: %s", chainName.c_str());
           continue;
         }
 
-        RatesChainItem* _chainItem = _it->second;
-        Bool_t _desicison = kFALSE;
-        if (m_isCPUPrediction) _desicison = m_costData->getIsChainPassed(_c);
-        else _desicison = m_costData->getIsChainPassedRaw(_c);
-        _chainItem->beginEvent(_desicison, _inEventCounterMap);
-        _chainItemsInEvent.insert(_chainItem);
+        RatesChainItem* chainItem = it->second;
+        Bool_t decision = kFALSE;
+        if (m_isCPUPrediction) decision = m_costData->getIsChainPassed(c);
+        else decision = m_costData->getIsChainPassedRaw(c);
+        chainItem->beginEvent(decision, inEventCounterMap);
+        chainItemsInEvent.insert(chainItem);
 
         if (Config::config().debug()) {
-          Info("MonitorRates::newEvent", "Storing Decision:%i for HLT ChainItem:%s with PS:%f",
-               (Int_t) m_costData->getIsChainPassedRaw(_c),
-               _chainItem->getName().c_str(), _chainItem->getPS());
+          Info("MonitorRates::newEvent", "Storing Decision:%i for HLT m_ChainItem:%s with PS:%f",
+               (Int_t) m_costData->getIsChainPassedRaw(c),
+               chainItem->getName().c_str(), chainItem->getPS());
         }
       }
 
       // ##################################################################################################################
       // Also fill into L1 items
-      for (UInt_t _c = 0; _c < m_costData->getNL1(); ++_c) {
-        Int_t _CTPID = m_costData->getL1CtpId(_c);
-        const std::string _chainName = TrigConfInterface::getNameFromCtpId(_CTPID);
+      for (UInt_t c = 0; c < m_costData->getNL1(); ++c) {
+        Int_t CTPID = m_costData->getL1CtpId(c);
+        const std::string chainName = TrigConfInterface::getNameFromCtpId(CTPID);
         // Did we fail?
-        if (_chainName == Config::config().getStr(kBlankString)) {
+        if (chainName == Config::config().getStr(kBlankString)) {
           Warning("MonitorRates::newEvent", "Skipping L1 Chain ID %i. Cannot get name from current configuration.",
-                  _CTPID);
+                  CTPID);
           continue;
         }
 
-        // Find the ChainItem for this chain so we can set it's PassedRaw bit for this event, could be L1 or HLT
-        ChainItemMapIt_t _it = m_chainItemsL1.find(_chainName);
-        if (_it == m_chainItemsL1.end()) {
-          Warning("MonitorRates::newEvent", "Cannot find L1 item: %s", _chainName.c_str());
+        // Find the m_ChainItem for this chain so we can set it's PassedRaw bit for this event, could be L1 or HLT
+        ChainItemMapIt_t it = m_chainItemsL1.find(chainName);
+        if (it == m_chainItemsL1.end()) {
+          Warning("MonitorRates::newEvent", "Cannot find L1 item: %s", chainName.c_str());
           continue;
         }
 
@@ -823,33 +821,33 @@ namespace TrigCostRootAnalysis {
 
         // We definitly want to use TAV when prescales were applied to EB on the grid (CPU prediction mode)
 
-        Bool_t _desicison = kFALSE;
-        if (m_isCPUPrediction == kTRUE) _desicison = m_costData->getIsL1PassedAfterVeto(_c);
-        else _desicison = m_costData->getIsL1PassedBeforePrescale(_c);
+        Bool_t decision = kFALSE;
+        if (m_isCPUPrediction == kTRUE) decision = m_costData->getIsL1PassedAfterVeto(c);
+        else decision = m_costData->getIsL1PassedBeforePrescale(c);
         // if ( Config::config().getInt(kDoEBWeighting) == 0) {
-        //   _desicison = m_costData->getIsL1PassedAfterVeto(_c);
+        //   decision = m_costData->getIsL1PassedAfterVeto(c);
         // }
 
-        RatesChainItem* _chainItem = _it->second;
-        _chainItem->beginEvent(_desicison, _inEventCounterMap);
-        _chainItemsInEvent.insert(_chainItem);
+        RatesChainItem* chainItem = it->second;
+        chainItem->beginEvent(decision, inEventCounterMap);
+        chainItemsInEvent.insert(chainItem);
 
 
         if (Config::config().debug()) {
-          Info("MonitorRates::newEvent", "Storing Decision:%i for L1 ChainItem:%s with PS:%f",
-               (Int_t) _desicison,
-               _chainItem->getName().c_str(), _chainItem->getPS());
+          Info("MonitorRates::newEvent", "Storing Decision:%i for L1 m_ChainItem:%s with PS:%f",
+               (Int_t) decision,
+               chainItem->getName().c_str(), chainItem->getPS());
         }
       }
 
       // If we are debugging such that chains always pass - then we need to re-roll everyone's random PS numbers.
       // This can be done anyway, but it normally not necessary.
       if (Config::config().getInt(kRatesForcePass) == kTRUE) {
-        for (ChainItemMapIt_t _it = m_chainItemsHLT.begin(); _it != m_chainItemsHLT.end(); ++_it) {
-          _it->second->newRandomPS();
+        for (ChainItemMapIt_t it = m_chainItemsHLT.begin(); it != m_chainItemsHLT.end(); ++it) {
+          it->second->newRandomPS();
         }
-        for (ChainItemMapIt_t _it = m_chainItemsL1.begin(); _it != m_chainItemsL1.end(); ++_it) {
-          _it->second->newRandomPS();
+        for (ChainItemMapIt_t it = m_chainItemsL1.begin(); it != m_chainItemsL1.end(); ++it) {
+          it->second->newRandomPS();
         }
       }
 
@@ -857,26 +855,26 @@ namespace TrigCostRootAnalysis {
       // PASS TWO: Now loop over all counters, they will use their pre-linked RatesChainItems to get their weights.
       // OLD - inefficient, does them all
       // Do the globals first
-      m_globalRateL1Counter->processEventCounter(0, 1, _weight);
-      m_globalRateHLTCounter->processEventCounter(0, 1, _weight);
-      m_globalRatePhysicsMainCounter->processEventCounter(0, 1, _weight);
-      CounterMapIt_t _it = _counterMap->begin();
-      for (; _it != _counterMap->end(); ++_it) {
-        _it->second->processEventCounter(0, 1, _weight);
+      m_globalRateL1Counter->processEventCounter(0, 1, weight);
+      m_globalRateHLTCounter->processEventCounter(0, 1, weight);
+      m_globalRatePhysicsMainCounter->processEventCounter(0, 1, weight);
+      CounterMapIt_t it = counterMap->begin();
+      for (; it != counterMap->end(); ++it) {
+        it->second->processEventCounter(0, 1, weight);
       }
       // NEW - better - only does the ones we need to
-      // CounterBaseRatesSetIt_t _cbrsit = _inEventCounterMap.begin();
-      // for (; _cbrsit != _inEventCounterMap.end(); ++_cbrsit) {
-      //   (*_cbrsit)->processEventCounter(0, 0, _weight);
+      // CounterBaseRatesSetIt_t cbrsit = inEventCounterMap.begin();
+      // for (; cbrsit != inEventCounterMap.end(); ++cbrsit) {
+      //   (*cbrsit)->processEventCounter(0, 0, weight);
       // }
 
       // ##################################################################################################################
       // PASS THREE: Now we just need to reset the ChainItems which were included in the event.
-      for (ChainItemSetIt_t _setIt = _chainItemsInEvent.begin(); _setIt != _chainItemsInEvent.end(); ++_setIt) {
-        RatesChainItem* _item = (*_setIt);
-        _item->endEvent();
+      for (ChainItemSetIt_t setIt = chainItemsInEvent.begin(); setIt != chainItemsInEvent.end(); ++setIt) {
+        RatesChainItem* item = (*setIt);
+        item->endEvent();
       }
-      _chainItemsInEvent.clear();
+      chainItemsInEvent.clear();
       m_countersInEvent.clear(); // unused at the moment
     }
     m_timer.stop();
@@ -886,71 +884,70 @@ namespace TrigCostRootAnalysis {
    * Saves the topology of all counters to a JSON file linked to the counter name. Imported by web display.
    */
   void MonitorRates::saveRateGraphs() {
-    const std::string _output = Config::config().getStr(kOutputDirectory) + "/" + Config::config().getStr(
+    const std::string output = Config::config().getStr(kOutputDirectory) + "/" + Config::config().getStr(
       kOutputRatesGraphFilename);
 
-    std::ofstream _fout(_output.c_str());
-    JsonExport _json;
-    _json.addNode(_fout, "ratesGaphs");
+    std::ofstream fout(output.c_str());
+    JsonExport json;
+    json.addNode(fout, "ratesGaphs");
 
-    std::set<std::string> _configsSeen;
-    for (CounterCollectionIt_t _collectionIt =
-           m_counterCollections.begin(); _collectionIt != m_counterCollections.end();
-         ++_collectionIt) {
-      for (CounterMapIt_t _counterMapIt = _collectionIt->second.begin(); _counterMapIt != _collectionIt->second.end();
-           ++_counterMapIt) {
-        CounterBaseRates* _counter = static_cast<CounterBaseRates*>(_counterMapIt->second);
+    std::set<std::string> configsSeen;
+    for (CounterCollectionIt_t collectionIt =
+           m_counterCollections.begin(); collectionIt != m_counterCollections.end();
+         ++collectionIt) {
+      for (CounterMapIt_t counterMapIt = collectionIt->second.begin(); counterMapIt != collectionIt->second.end();
+           ++counterMapIt) {
+        CounterBaseRates* counter = static_cast<CounterBaseRates*>(counterMapIt->second);
 
-        if (_configsSeen.count(_counter->getName()) == 1) continue;
-        _configsSeen.insert(_counter->getName());
-        _json.addNode(_fout, _counter->getName());
+        if (configsSeen.count(counter->getName()) == 1) continue;
+        configsSeen.insert(counter->getName());
+        json.addNode(fout, counter->getName());
 
         // If a unique then continue
-        if (_counter->getStrDecoration(kDecType) == "UniqueHLT" || _counter->getStrDecoration(kDecType) == "UniqueL1") {
-          _json.endNode(_fout);
+        if (counter->getStrDecoration(kDecType) == "UniqueHLT" || counter->getStrDecoration(kDecType) == "UniqueL1") {
+          json.endNode(fout);
           continue;
         }
 
-        if (_counter->getL2ItemSet().size() == 0) { // If only L1
-          for (ChainItemSetIt_t _L1It = _counter->getL1ItemSet().begin(); _L1It != _counter->getL1ItemSet().end();
-               ++_L1It) {
-            RatesChainItem* _L1 = (*_L1It);
-            const std::string _source = _L1->getName() + " [PS:" + doubleToString(_L1->getPS()) + "]";
-            _json.addLeafCustom(_fout, "source", _source, "target", _source);
+        if (counter->getL2ItemSet().size() == 0) { // If only L1
+          for (ChainItemSetIt_t L1It = counter->getL1ItemSet().begin(); L1It != counter->getL1ItemSet().end(); ++L1It ) {
+            RatesChainItem* L1 = (*L1It);
+            const std::string source = L1->getName() + " [PS:" + doubleToString(L1->getPS()) + "]";
+            json.addLeafCustom(fout, "source", source, "target", source);
           }
         }
 
-        for (ChainItemSetIt_t _L2It = _counter->getL2ItemSet().begin(); _L2It != _counter->getL2ItemSet().end();
-             ++_L2It) {
-          RatesChainItem* _L2 = (*_L2It);
-          for (ChainItemSetIt_t _L1It = _L2->getLowerStart(); _L1It != _L2->getLowerEnd(); ++_L1It) {
-            RatesChainItem* _L1 = (*_L1It);
-            const std::string _source = _L1->getName() + " [PS:" + doubleToString(_L1->getPS()) + "]";
-            const std::string _target = _L2->getName() + " [PS:" + doubleToString(_L2->getPS()) + "]";
-            _json.addLeafCustom(_fout, "source", _source, "target", _target);
+        for (ChainItemSetIt_t L2It = counter->getL2ItemSet().begin(); L2It != counter->getL2ItemSet().end(); ++L2It ) {
+          RatesChainItem* L2 = (*L2It);
+          for (ChainItemSetIt_t L1It = L2->getLowerStart(); L1It != L2->getLowerEnd(); ++L1It) {
+            RatesChainItem* L1 = (*L1It);
+            const std::string source = L1->getName() + " [PS:" + doubleToString(L1->getPS()) + "]";
+            const std::string target = L2->getName() + " [PS:" + doubleToString(L2->getPS()) + "]";
+            json.addLeafCustom(fout, "source", source, "target", target);
+
           }
         }
 
         // Don't forget the CPS chain groups
-        for (CPSGroupSetIt_t _CPSIt = _counter->getCPSGroupSet().begin(); _CPSIt != _counter->getCPSGroupSet().end();
-             ++_CPSIt) {
-          RatesCPSGroup* _cpsGroup = (*_CPSIt);
-          for (ChainItemSetIt_t _L2It = _cpsGroup->getChainStart(); _L2It != _cpsGroup->getChainEnd(); ++_L2It) {
-            RatesChainItem* _L2 = (*_L2It);
-            for (ChainItemSetIt_t _L1It = _L2->getLowerStart(); _L1It != _L2->getLowerEnd(); ++_L1It) {
-              RatesChainItem* _L1 = (*_L1It);
-              const std::string _source = _L1->getName() + " [PS:" + doubleToString(_L1->getPS()) + "]";
-              const std::string _target = _L2->getName() + " [PS:" + doubleToString(_L2->getPS()) + "]";
-              _json.addLeafCustom(_fout, "source", _source, "target", _target);
+        for (CPSGroupSetIt_t CPSIt = counter->getCPSGroupSet().begin(); CPSIt != counter->getCPSGroupSet().end();
+             ++CPSIt) {
+          RatesCPSGroup* cpsGroup = (*CPSIt);
+          for (ChainItemSetIt_t L2It = cpsGroup->getChainStart(); L2It != cpsGroup->getChainEnd(); ++L2It) {
+            RatesChainItem* L2 = (*L2It);
+            for (ChainItemSetIt_t L1It = L2->getLowerStart(); L1It != L2->getLowerEnd(); ++L1It) {
+              RatesChainItem* L1 = (*L1It);
+              const std::string source = L1->getName() + " [PS:" + doubleToString(L1->getPS()) + "]";
+              const std::string target = L2->getName() + " [PS:" + doubleToString(L2->getPS()) + "]";
+              json.addLeafCustom(fout, "source", source, "target", target);
             }
           }
         }
 
-        _json.endNode(_fout);
+        json.endNode(fout);
       }
     }
-    _json.endNode(_fout); // ratesGraphs
-    _fout.close();
+    json.endNode(fout); // ratesGraphs
+    fout.close();
   }
 
   /**
@@ -958,8 +955,8 @@ namespace TrigCostRootAnalysis {
    * Note these are currently hard-coded. We may want to make them configurable
    * @return If this monitor should be active for a given mode.
    */
-  Bool_t MonitorRates::getIfActive(ConfKey_t _mode) {
-    switch (_mode) {
+  Bool_t MonitorRates::getIfActive(ConfKey_t mode) {
+    switch (mode) {
     case kDoAllSummary:       return kTRUE;
 
     case kDoKeySummary:       return kTRUE;
@@ -967,7 +964,7 @@ namespace TrigCostRootAnalysis {
     case kDoLumiBlockSummary: return kTRUE;
 
     default: Error("MonitorRates::getIfActive", "An invalid summary mode was provided (key %s)",
-                   Config::config().getName(_mode).c_str());
+                   Config::config().getName(mode).c_str());
     }
     return kFALSE;
   }
@@ -978,41 +975,41 @@ namespace TrigCostRootAnalysis {
   void MonitorRates::saveOutput() {
     // Send finalise calls
 
-    for (CounterCollectionNonConstIt_t _collectionIt = m_counterCollections.begin();
-         _collectionIt != m_counterCollections.end(); ++_collectionIt) {
+    for (CounterCollectionNonConstIt_t collectionIt = m_counterCollections.begin();
+         collectionIt != m_counterCollections.end(); ++collectionIt) {
       // (Finally) add these to the maps such that they get exported with everything else
       // We didn't add them so far so we could always process these three first.
-      (_collectionIt->second)[Config::config().getStr(kRateGlobalL1String)] =
+      (collectionIt->second)[Config::config().getStr(kRateGlobalL1String)] =
         static_cast<CounterBase*>(m_globalRateL1Counter);
-      (_collectionIt->second)[Config::config().getStr(kRateGlobalHLTString)] =
+      (collectionIt->second)[Config::config().getStr(kRateGlobalHLTString)] =
         static_cast<CounterBase*>(m_globalRateHLTCounter);
-      (_collectionIt->second)[Config::config().getStr(kRateGlobalPhysicsMainString)] =
+      (collectionIt->second)[Config::config().getStr(kRateGlobalPhysicsMainString)] =
         static_cast<CounterBase*>(m_globalRatePhysicsMainCounter);
 
-      const std::string _counterCollectionName = _collectionIt->first;
+      const std::string counterCollectionName = collectionIt->first;
       // Finalise unique counters
       if (Config::config().getInt(kDoUniqueRates) == kTRUE) {
-        for (CounterMapIt_t _counterMapIt = _collectionIt->second.begin(); _counterMapIt != _collectionIt->second.end();
-             ++_counterMapIt) {
-          CounterBaseRates* _counter = static_cast<CounterBaseRates*>(_counterMapIt->second);
-          if (_counter->getStrDecoration(kDecType) == "UniqueHLT" ||
-              _counter->getStrDecoration(kDecType) == "UniqueL1") {
-            _counter->decorate(kDecLbLength,
-                               m_collectionLumiCollector[ _counterCollectionName ]->getTotalLumiBlockTime());
-            _counter->finalise();
+        for (CounterMapIt_t counterMapIt = collectionIt->second.begin(); counterMapIt != collectionIt->second.end();
+             ++counterMapIt) {
+          CounterBaseRates* counter = static_cast<CounterBaseRates*>(counterMapIt->second);
+          if (counter->getStrDecoration(kDecType) == "UniqueHLT" ||
+              counter->getStrDecoration(kDecType) == "UniqueL1") {
+            counter->decorate(kDecLbLength,
+                               m_collectionLumiCollector[ counterCollectionName ]->getTotalLumiBlockTime());
+            counter->finalise();
           }
         }
       }
       // Finalise all other counters (makes use of unique counters)
-      for (CounterMapIt_t _counterMapIt = _collectionIt->second.begin(); _counterMapIt != _collectionIt->second.end();
-           ++_counterMapIt) {
+      for (CounterMapIt_t counterMapIt = collectionIt->second.begin(); counterMapIt != collectionIt->second.end();
+           ++counterMapIt) {
         //Note we have added a negation here
-        CounterBaseRates* _counter = static_cast<CounterBaseRates*>(_counterMapIt->second);
-        if (!(_counter->getStrDecoration(kDecType) == "UniqueHLT" ||
-              _counter->getStrDecoration(kDecType) == "UniqueL1")) {
-          _counter->decorate(kDecLbLength,
-                             m_collectionLumiCollector[ _counterCollectionName ]->getTotalLumiBlockTime());
-          _counter->finalise();
+        CounterBaseRates* counter = static_cast<CounterBaseRates*>(counterMapIt->second);
+        if (!(counter->getStrDecoration(kDecType) == "UniqueHLT" ||
+              counter->getStrDecoration(kDecType) == "UniqueL1")) {
+          counter->decorate(kDecLbLength,
+                             m_collectionLumiCollector[ counterCollectionName ]->getTotalLumiBlockTime());
+          counter->finalise();
         }
       }
     }
@@ -1021,104 +1018,104 @@ namespace TrigCostRootAnalysis {
 
     // Also copy any PS files
     if (Config::config().getIsSet(kPrescaleXMLPath1)) {
-      const std::string _outputFile = Config::config().getStr(kOutputDirectory) + "/" + Config::config().getStr(
+      const std::string outputFile = Config::config().getStr(kOutputDirectory) + "/" + Config::config().getStr(
         kOutputXMLDirectory) + "/prescales1.xml";
-      gSystem->CopyFile(Config::config().getStr(kPrescaleXMLPath1).c_str(), _outputFile.c_str());
+      gSystem->CopyFile(Config::config().getStr(kPrescaleXMLPath1).c_str(), outputFile.c_str());
     }
     if (Config::config().getIsSet(kPrescaleXMLPath2)) {
-      const std::string _outputFile = Config::config().getStr(kOutputDirectory) + "/" + Config::config().getStr(
+      const std::string outputFile = Config::config().getStr(kOutputDirectory) + "/" + Config::config().getStr(
         kOutputXMLDirectory) + "/prescales2.xml";
-      gSystem->CopyFile(Config::config().getStr(kPrescaleXMLPath2).c_str(), _outputFile.c_str());
+      gSystem->CopyFile(Config::config().getStr(kPrescaleXMLPath2).c_str(), outputFile.c_str());
     }
 
     if (Config::config().getInt(kOutputRatesGraph) == kTRUE) saveRateGraphs();
 
-    VariableOptionVector_t _toSavePlots;// = m_dummyCounter->getAllHistograms();
+    VariableOptionVector_t toSavePlots;// = m_dummyCounter->getAllHistograms();
 
-    std::vector<TableColumnFormatter> _toSaveTable;
+    std::vector<TableColumnFormatter> toSaveTable;
 
-    _toSaveTable.push_back(TableColumnFormatter("Active Time [s]",
+    toSaveTable.push_back(TableColumnFormatter("Active Time [s]",
                                                 "Integrated length of all lumi blocks which contributed events to this rates prediction.",
                                                 kVarEventsPassedNoPS /*ignored*/, kSavePerCall /*ignored*/, 2,
                                                 kFormatOptionUseWallTime));
 
-    _toSaveTable.push_back(TableColumnFormatter("Group",
+    toSaveTable.push_back(TableColumnFormatter("Group",
                                                 "The group this chain belongs to.",
                                                 kDecRatesGroupName, kSavePerCall, 0, kFormatOptionUseStringDecoration));
 
-    _toSaveTable.push_back(TableColumnFormatter("Weighted PS Rate [Hz]",
+    toSaveTable.push_back(TableColumnFormatter("Weighted PS Rate [Hz]",
                                                 "Rate after applying all prescale(s) as weights.",
                                                 kVarEventsPassed, kSavePerCall, 4, kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(TableColumnFormatter("Weighted PS Rate Err [Hz]",
+    toSaveTable.push_back(TableColumnFormatter("Weighted PS Rate Err [Hz]",
                                                 "Error on rate after applying all prescale(s) as weights",
                                                 &tableFnRateGetWeightedRateErr, 4));
 
     if (Config::config().getInt(kDoUniqueRates) == kTRUE) {
-      _toSaveTable.push_back(TableColumnFormatter("Unique Rate [Hz]",
+      toSaveTable.push_back(TableColumnFormatter("Unique Rate [Hz]",
                                                   "Rate unique to this chain or combination of chains.",
                                                   kDecUniqueRate, kSavePerCall, 0, kFormatOptionUseStringDecoration));
 
-      _toSaveTable.push_back(TableColumnFormatter("Unique Fraction [%]",
+      toSaveTable.push_back(TableColumnFormatter("Unique Fraction [%]",
                                                   "Fraction of rate of this chain with no overlap with any other chain.",
                                                   kDecUniqueFraction, kSavePerCall, 0,
                                                   kFormatOptionUseStringDecoration));
     }
 
     if (TrigXMLService::trigXMLService().hasExpressPrescaleInfo() == kTRUE) {
-      _toSaveTable.push_back(TableColumnFormatter("Express Rate [Hz]",
+      toSaveTable.push_back(TableColumnFormatter("Express Rate [Hz]",
                                                   "Rate to the express stream.",
                                                   kDecExpressRate, kSavePerCall, 0, kFormatOptionUseStringDecoration));
     }
 
-    _toSaveTable.push_back(TableColumnFormatter("Prescale",
+    toSaveTable.push_back(TableColumnFormatter("Prescale",
                                                 "The prescale of this chain. Only displayed for simple combinations.",
                                                 kDecPrescaleStr, kSavePerCall, 0, kFormatOptionUseStringDecoration));
 
     if (Config::config().getInt(kRatesScaleByPS)) {
-      _toSaveTable.push_back(TableColumnFormatter("L1 Online Prescale",
+      toSaveTable.push_back(TableColumnFormatter("L1 Online Prescale",
                                                   "The online prescale of this chain at L1. Applied here as a weight.",
                                                   kDecPrescaleValOnlineL1, kSavePerCall, 0,
                                                   kFormatOptionUseFloatDecoration));
     }
 
-    _toSaveTable.push_back(TableColumnFormatter("ID",
+    toSaveTable.push_back(TableColumnFormatter("ID",
                                                 "The CPTID or HLT Chain ID",
                                                 kDecID, kSavePerCall, 0, kFormatOptionUseIntDecoration));
 
-    _toSaveTable.push_back(TableColumnFormatter("Raw Active Events",
+    toSaveTable.push_back(TableColumnFormatter("Raw Active Events",
                                                 "Raw underlying statistics on the number events processed for this chain.",
                                                 kVarEventsRunRawStat, kSavePerCall, 0));
 
-    _toSaveTable.push_back(TableColumnFormatter("Raw Pass Events",
+    toSaveTable.push_back(TableColumnFormatter("Raw Pass Events",
                                                 "Raw underlying statistics on the number events passed by this chain.",
                                                 kVarEventsPassRawStat, kSavePerCall, 0));
 
-    _toSaveTable.push_back(TableColumnFormatter("Active Events",
+    toSaveTable.push_back(TableColumnFormatter("Active Events",
                                                 "Number of events in which the chain - or at least one chain in the combination - was executed.",
                                                 kVarEventsRun, kSavePerCall, 4));
 
-    _toSaveTable.push_back(TableColumnFormatter("Input Rate [Hz]",
+    toSaveTable.push_back(TableColumnFormatter("Input Rate [Hz]",
                                                 "Input rate to this chain or combination of chains. At L1 this will be the collision frequency for the bunch pattern.",
                                                 kDecInputRate, kSavePerCall, 0, kFormatOptionUseStringDecoration));
 //    kVarEventsRun, kSavePerCall, 4, kFormatOptionNormaliseWallTime) );
 
-    _toSaveTable.push_back(TableColumnFormatter("Pass Fraction before PS [%]",
+    toSaveTable.push_back(TableColumnFormatter("Pass Fraction before PS [%]",
                                                 "Fraction of events which pass this trigger before prescale.",
                                                 kVarEventsPassedNoPS, kSavePerCall, kVarEventsRun, kSavePerCall, 4,
                                                 kFormatOptionToPercentage));
 
-    _toSaveTable.push_back(TableColumnFormatter("Pass Fraction after PS [%]",
+    toSaveTable.push_back(TableColumnFormatter("Pass Fraction after PS [%]",
                                                 "Fraction of events which pass this trigger after prescale.",
                                                 kVarEventsPassed, kSavePerCall, kVarEventsRun, kSavePerCall, 4,
                                                 kFormatOptionToPercentage));
 
-    _toSaveTable.push_back(TableColumnFormatter("Pass Weighted PS",
+    toSaveTable.push_back(TableColumnFormatter("Pass Weighted PS",
                                                 "Number of events this chain or combination passed after applying prescales as weighting factors.",
                                                 kVarEventsPassed, kSavePerCall, 4));
 
     if (TrigXMLService::trigXMLService().hasChainComments() == kTRUE) {
-      _toSaveTable.push_back(TableColumnFormatter("Comment",
+      toSaveTable.push_back(TableColumnFormatter("Comment",
                                                   "Comment from the rulebook.",
                                                   kDecComment, kSavePerCall, 0, kFormatOptionUseStringDecoration));
     }
@@ -1130,42 +1127,40 @@ namespace TrigCostRootAnalysis {
     m_filterOutput = kTRUE;
     setName("Rate_ChainL1");
     filterOutputOnStrDecoration(kDecType, "L1");
-    sharedTableOutputRoutine(_toSaveTable);
-    sharedHistogramOutputRoutine(_toSavePlots);
+    sharedTableOutputRoutine(toSaveTable);
+    sharedHistogramOutputRoutine(toSavePlots);
 
     setName("Rate_ChainHLT");
     filterOutputOnStrDecoration(kDecType, "Chain");
-    sharedTableOutputRoutine(_toSaveTable);
-    sharedHistogramOutputRoutine(_toSavePlots);
+    sharedTableOutputRoutine(toSaveTable);
+    sharedHistogramOutputRoutine(toSavePlots);
 
-    //_toSaveTable.erase( _toSaveTable.begin() + 2);   // Now do the AND - note we can remove the "Prescale" option from
+    //toSaveTable.erase( toSaveTable.begin() + 2);   // Now do the AND - note we can remove the "Prescale" option from
     // the table.
     if (m_doingOverlaps == kTRUE) {
       setName("Rate_Combination");
       filterOutputOnStrDecoration(kDecType, "Intersection");
-      sharedTableOutputRoutine(_toSaveTable);
-      sharedHistogramOutputRoutine(_toSavePlots);
+      sharedTableOutputRoutine(toSaveTable);
+      sharedHistogramOutputRoutine(toSavePlots);
     }
 
     // Now do the GROUP - note we can remove the "Group" option from the table.
-    //_toSaveTable.erase( _toSaveTable.begin() + 1 );
+    //toSaveTable.erase( toSaveTable.begin() + 1 );
     setName("Rate_Group");
     filterOutputOnStrDecoration(kDecType, "Union");
-    sharedTableOutputRoutine(_toSaveTable);
-    sharedHistogramOutputRoutine(_toSavePlots);
+    sharedTableOutputRoutine(toSaveTable);
+    sharedHistogramOutputRoutine(toSavePlots);
   }
 
   /**
    * Construct new counter of correct derived type, pass back as base type.
    * This function must be implemented by all derived monitor types.
-   * @see MonitorBase::addCounter( const std::string &_name, Int_t _ID )
-   * @param _name Cost reference to name of counter.
-   * @param _ID Reference to ID number of counter.
+   * @see MonitorBase::addCounter( const std::string &name, Int_t ID )
+   * @param name Cost reference to name of counter.
+   * @param ID Reference to ID number of counter.
    * @returns Base class pointer to new counter object of correct serived type.
    */
-  CounterBase* MonitorRates::newCounter(const std::string& _name, Int_t _ID) {
-    UNUSED(_name);
-    UNUSED(_ID);
+  CounterBase* MonitorRates::newCounter(const std::string& /*name*/, Int_t /*ID*/) {
     Error("MonitorRates::newCounter",
           "For Rates counters - please mint them yourself as the derived type is important (Chain, Union, Intersection etc.)");
     return 0;
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorRatesUpgrade.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorRatesUpgrade.cxx
index cd3ad34268a254b6ea0f9393954780d1dae5c433..e624ae4514b3883a8417ecd137acb218ed7ec481 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorRatesUpgrade.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorRatesUpgrade.cxx
@@ -53,15 +53,15 @@ namespace TrigCostRootAnalysis {
    * It will simulate L1, L2 and HLT rates using Run2 EB data as input
    * It will apply efficiencies to simulate expected rates yeilds
    */
-  MonitorRatesUpgrade::MonitorRatesUpgrade(const TrigCostData* _costData)
-    : MonitorBase(_costData, "RateUpgrade"),
+  MonitorRatesUpgrade::MonitorRatesUpgrade(const TrigCostData* costData)
+    : MonitorBase(costData, "RateUpgrade"),
     m_R3(0),
     m_statsEventMu(0.),
     m_statsEventMu2(0.),
     m_statsEventMuN(0),
     m_thisEventPtr(nullptr) {
     m_dummyCounter =
-      static_cast<CounterBase*>(new CounterRatesChain(_costData, Config::config().getStr(kDummyString), 10));
+      static_cast<CounterBase*>(new CounterRatesChain(costData, Config::config().getStr(kDummyString), 10));
     m_globalRateL1Counter = nullptr;
     m_globalRateL2Counter = nullptr;
     m_globalRateL3Counter = nullptr;
@@ -81,9 +81,9 @@ namespace TrigCostRootAnalysis {
    * Destroy this monitor - note we have special RatesChainItems to destroy here too
    */
   MonitorRatesUpgrade::~MonitorRatesUpgrade() {
-    for (auto _item : m_chainItemsL1) delete _item.second;
-    for (auto _item : m_chainItemsL2) delete _item.second;
-    for (auto _item : m_chainItemsL3) delete _item.second;
+    for (auto item : m_chainItemsL1) delete item.second;
+    for (auto item : m_chainItemsL2) delete item.second;
+    for (auto item : m_chainItemsL3) delete item.second;
   }
 
   /**
@@ -117,13 +117,13 @@ namespace TrigCostRootAnalysis {
 
     if (m_upgradeBunchScaling == kTRUE) {
       m_targetPairedBunches = Config::config().getInt(kTargetPairedBunches);
-      Int_t _pairedBunches = Config::config().getInt(kPairedBunches);
+      Int_t pairedBunches = Config::config().getInt(kPairedBunches);
 
-      m_collidingBunchFactor = m_targetPairedBunches / (Float_t) _pairedBunches; // Going to continue to assume that 1
+      m_collidingBunchFactor = m_targetPairedBunches / (Float_t) pairedBunches; // Going to continue to assume that 1
                                                                                  // is PAIRED
       Info("MonitorRatesUpgrade::populateChainItemMaps",
            "We will scale x%.2f for the number of bunches in the ring (%i->%i) (note this may change mid-processing if using MultiRun)",
-           m_collidingBunchFactor, _pairedBunches, m_targetPairedBunches);
+           m_collidingBunchFactor, pairedBunches, m_targetPairedBunches);
     } else {
       Warning("MonitorRatesUpgrade::populateChainItemMaps", "Upgrade rates will not be scaled for extra bunches.");
     }
@@ -137,177 +137,177 @@ namespace TrigCostRootAnalysis {
       Warning("MonitorRatesUpgrade::populateChainItemMaps", "Upgrade rates will not be scaled for online EB deadtime.");
     }
 
-    Float_t m_upgradePredictionL = Config::config().getFloat(kRunLumiXML) * m_collidingBunchFactor *
+    Float_t upgradePredictionL = Config::config().getFloat(kRunLumiXML) * m_collidingBunchFactor *
                                    (m_pileupFactor / Config::config().getFloat(kOnlinePeakMuAverage));
     Info("MonitorRatesUpgrade::populateChainItemMaps",
          "*** THIS UPGRADE RATES PREDICTION IS PERFORMING A L EXTRAPOLATION OF %.2e -> %.2e ***",
-         Config::config().getFloat(kRunLumiXML), m_upgradePredictionL);
-    Config::config().setFloat(kPredictionLumiMenuXML, m_upgradePredictionL, "PredictionLumiMenuXML");
+         Config::config().getFloat(kRunLumiXML), upgradePredictionL);
+    Config::config().setFloat(kPredictionLumiMenuXML, upgradePredictionL, "PredictionLumiMenuXML");
 
     if (Config::config().getInt(kDoUpgradeRatesScan) == kTRUE) {
       // Scan over a set of energies
-      for (UInt_t _e = 5; _e <= 500; _e += 5) { // Energy
-        for (UInt_t _n = 1; _n <= 8; ++_n) {
-          if (_n >= 5 && _n <= 7) continue; // Don't do N of 5,6,7
-          if (_e > 100) {
-            if (_e % 25 != 0) continue;
-          } else if (_e > 50) {
-            if (_e % 10 != 0) continue;
+      for (UInt_t e = 5; e <= 500; e += 5) { // Energy
+        for (UInt_t n = 1; n <= 8; ++n) {
+          if (n >= 5 && n <= 7) continue; // Don't do N of 5,6,7
+          if (e > 100) {
+            if (e % 25 != 0) continue;
+          } else if (e > 50) {
+            if (e % 10 != 0) continue;
           }
-          for (UInt_t _t = 0; _t < 17; ++_t) {
-            if (_n > 1 && (_t == 9 || _t == 10 || _t == 12 || _t == 13 || _t == 14)) continue; // No multiplicity in
+          for (UInt_t t = 0; t < 17; ++t) {
+            if (n > 1 && (t == 9 || t == 10 || t == 12 || t == 13 || t == 14)) continue; // No multiplicity in
                                                                                                // TE,HT or XE,MHT or
                                                                                                // MU10_ME
-            if ((_t == 2 || _t == 3) && _e > 100) continue; // No EM after 100 GeV
-            if ((_t >= 4 && _t <= 7) && _e > 100) continue; // No TAU after 100 GeV
-            if (_t == 8 && _e > 20) continue; // No MU after 20
-            if ((_t == 15 || _t == 16) && _n != 4) continue; // only 4J
-            if ((_t == 15 || _t == 16) && _e > 25) continue; // only 4J E up to 25
-
-            Int_t _iso = 0;
-            Int_t _etaMin = 0, _etaMax = 49;
-            std::string _type, _isoStr;
-            switch (_t) {
-            case 0: _type = "J";
-              _etaMax = 31;
+            if ((t == 2 || t == 3) && e > 100) continue; // No EM after 100 GeV
+            if ((t >= 4 && t <= 7) && e > 100) continue; // No TAU after 100 GeV
+            if (t == 8 && e > 20) continue; // No MU after 20
+            if ((t == 15 || t == 16) && n != 4) continue; // only 4J
+            if ((t == 15 || t == 16) && e > 25) continue; // only 4J E up to 25
+
+            Int_t iso = 0;
+            Int_t etaMin = 0, etaMax = 49;
+            std::string type, isoStr;
+            switch (t) {
+            case 0: type = "J";
+              etaMax = 31;
               break;
 
-            case 1: _type = "EM";
+            case 1: type = "EM";
               break;
 
-            case 2: _type = "EM";
-              _isoStr = "I";
-              _iso = m_isoBits["EM_I"];
+            case 2: type = "EM";
+              isoStr = "I";
+              iso = m_isoBits["EM_I"];
               break;
 
-            case 3: _type = "EM";
-              _isoStr = "VHI";
-              _iso = m_isoBits["EM_VHI"];
+            case 3: type = "EM";
+              isoStr = "VHI";
+              iso = m_isoBits["EM_VHI"];
               break;
 
-            case 4: _type = "TAU";
+            case 4: type = "TAU";
               break;
 
-            case 5: _type = "TAU";
-              _isoStr = "IL";
-              _iso = m_isoBits["TAU_IL"];
+            case 5: type = "TAU";
+              isoStr = "IL";
+              iso = m_isoBits["TAU_IL"];
               break;
 
-            case 6: _type = "TAU";
-              _isoStr = "IM";
-              _iso = m_isoBits["TAU_IM"];
+            case 6: type = "TAU";
+              isoStr = "IM";
+              iso = m_isoBits["TAU_IM"];
               break;
 
-            case 7: _type = "TAU";
-              _isoStr = "IT";
-              _iso = m_isoBits["TAU_IT"];
+            case 7: type = "TAU";
+              isoStr = "IT";
+              iso = m_isoBits["TAU_IT"];
               break;
 
-            case 8: _type = "MU";
+            case 8: type = "MU";
               break;
 
-            case 9: _type = "XE";
+            case 9: type = "XE";
               break;
 
-            case 10: _type = "TE";
+            case 10: type = "TE";
               break;
 
-            case 11: _type = "J";
-              _isoStr = "_32ETA49";
-              _etaMin = 32;
-              _etaMax = 49;
+            case 11: type = "J";
+              isoStr = "_32ETA49";
+              etaMin = 32;
+              etaMax = 49;
               break;
 
-            case 12: _type = "MHT";
+            case 12: type = "MHT";
               break;
 
-            case 13: _type = "HT";
+            case 13: type = "HT";
               break;
 
-            case 14: _type = "EM";
+            case 14: type = "EM";
               break; // plus mu10
 
-            case 15: _type = "J";
-              _etaMax = 31;
+            case 15: type = "J";
+              etaMax = 31;
               break; // 4J plus TE
 
-            case 16: _type = "J";
-              _etaMax = 31;
+            case 16: type = "J";
+              etaMax = 31;
               break; // 4J plus HT
             }
-            //if (_t != 0 || _n != 1) continue;             // HACK
-            std::string _nStr = std::to_string(_n);
-            if (_n == 1) _nStr = "";
-            std::string _extra = "";
-            if (_t == 14) _extra = "MU10_";
-
-            int _subE = 500;
-            if (_t == 15 || _t == 16) _subE = 250;
-            for (int _sE = _subE; _sE <= 500; _sE += 50) {
-              std::stringstream _name;
-              std::stringstream _group;
-
-              if (_t == 15) _extra = "TE" + std::to_string(_sE) + "_";
-              if (_t == 16) _extra = "HT" + std::to_string(_sE) + "_";
-
-              _name << "L1_" << _extra << _nStr << _type << _e << _isoStr;
-              _group << "RATE_Test_" << _extra << _nStr << _type << _isoStr;
-              if (m_chainItemsL1.count(_name.str()) == 1) continue;                                                                         // Already
+            //if (t != 0 || n != 1) continue;             // HACK
+            std::string nStr = std::to_string(n);
+            if (n == 1) nStr = "";
+            std::string extra = "";
+            if (t == 14) extra = "MU10_";
+
+            int subE = 500;
+            if (t == 15 || t == 16) subE = 250;
+            for (int sE = subE; sE <= 500; sE += 50) {
+              std::stringstream name;
+              std::stringstream group;
+
+              if (t == 15) extra = "TE" + std::to_string(sE) + "_";
+              if (t == 16) extra = "HT" + std::to_string(sE) + "_";
+
+              name << "L1_" << extra << nStr << type << e << isoStr;
+              group << "RATE_Test_" << extra << nStr << type << isoStr;
+              if (m_chainItemsL1.count(name.str()) == 1) continue;                                                                         // Already
                                                                                                                                             // has
 
-              TriggerLogic _triggerLogic;
-              _triggerLogic.addCondition(_type, _n, _e, _iso, _etaMin, _etaMax);
+              TriggerLogic triggerLogic;
+              triggerLogic.addCondition(type, n, e, iso, etaMin, etaMax);
 
-              if (_t == 14) _triggerLogic.addCondition("MU", 1, 10, 0, _etaMin, _etaMax);
-              if (_t == 15) _triggerLogic.addCondition("TE", 1, _sE, 0, 0, 49);
-              if (_t == 16) _triggerLogic.addCondition("HT", 1, _sE, 0, 0, 49);
+              if (t == 14) triggerLogic.addCondition("MU", 1, 10, 0, etaMin, etaMax);
+              if (t == 15) triggerLogic.addCondition("TE", 1, sE, 0, 0, 49);
+              if (t == 16) triggerLogic.addCondition("HT", 1, sE, 0, 0, 49);
 
-              auto _it = m_upgradeChains.insert(ChainInfo(_name.str(), 1, _triggerLogic, _group.str(), "", 1., 1.));
-              TriggerLogic* _tl = const_cast<TriggerLogic*>(&(_it->m_triggerLogic)); //Why is this const in the first
+              auto _it = m_upgradeChains.insert(ChainInfo(name.str(), 1, triggerLogic, group.str(), "", 1., 1.));
+              TriggerLogic* tl = const_cast<TriggerLogic*>(&(_it->m_triggerLogic)); //Why is this const in the first
                                                                                      // place?
 
-              RatesChainItem* _L1 = new RatesChainItem(_name.str(), /*chainLevel=*/ 1, 1.);
-              m_chainItemsL1[ _name.str() ] = _L1;
-              _L1->setTriggerLogic(_tl);
+              RatesChainItem* L1 = new RatesChainItem(name.str(), /*chainLevel=*/ 1, 1.);
+              m_chainItemsL1[ name.str() ] = L1;
+              L1->setTriggerLogic(tl);
             }
           }
         }
       }
     }
 
-    for (std::multiset<ChainInfo>::iterator _it = m_upgradeChains.begin(); _it != m_upgradeChains.end(); ++_it) {
+    for (std::multiset<ChainInfo>::iterator it = m_upgradeChains.begin(); it != m_upgradeChains.end(); ++it) {
       //for (auto _item : m_upgradeChains) {
-      if (_it->m_level == 2) {
+      if (it->m_level == 2) {
         continue; // not doing HLT yet
       }
-      const std::string _nameL1 = _it->m_name;
+      const std::string nameL1 = it->m_name;
 
-      if (m_chainItemsL1.count(_nameL1) == 1) continue;                                                             // Already
+      if (m_chainItemsL1.count(nameL1) == 1) continue;                                                             // Already
                                                                                                                     // has
 
-      Double_t _chainPrescale = 1.; //TODO - nonzero prescales?
-      RatesChainItem* _L1 = new RatesChainItem(_nameL1, /*chainLevel=*/ 1, _chainPrescale);
-      _L1->setRateReductionFactor(_it->m_weight0);
-      m_chainItemsL1[ _nameL1 ] = _L1;
+      Double_t chainPrescale = 1.; //TODO - nonzero prescales?
+      RatesChainItem* L1 = new RatesChainItem(nameL1, /*chainLevel=*/ 1, chainPrescale);
+      L1->setRateReductionFactor(it->m_weight0);
+      m_chainItemsL1[ nameL1 ] = L1;
 
-      std::string _nameL2 = _it->m_l2name;
-      RatesChainItem* _L2 = new RatesChainItem(_nameL2, /*chainLevel=*/ 2, 1.);
-      m_chainItemsL2[ _nameL2 ] = _L2;
-      _L2->setRateReductionFactor(_it->m_weight1);
+      std::string nameL2 = it->m_l2name;
+      RatesChainItem* L2 = new RatesChainItem(nameL2, /*chainLevel=*/ 2, 1.);
+      m_chainItemsL2[ nameL2 ] = L2;
+      L2->setRateReductionFactor(it->m_weight1);
 
-      _L2->addLower(_L1);
-      _L1->addUpper(_L2);
+      L2->addLower(L1);
+      L1->addUpper(L2);
 
-      TriggerLogic* _tl = const_cast<TriggerLogic*>(&(_it->m_triggerLogic)); // Why are you const!?!
+      TriggerLogic* tl = const_cast<TriggerLogic*>(&(it->m_triggerLogic)); // Why are you const!?!
 
-      _L1->setTriggerLogic(_tl);
-      _L2->setTriggerLogic(_tl);
+      L1->setTriggerLogic(tl);
+      L2->setTriggerLogic(tl);
     }
 
 
-    for (const auto _chainItem : m_chainItemsL1) _chainItem.second->classifyLumiAndRandom();
+    for (const auto chainItem : m_chainItemsL1) chainItem.second->classifyLumiAndRandom();
     //Should not be needed, do different lumi scaling here
-    for (const auto _chainItem : m_chainItemsL2) _chainItem.second->classifyLumiAndRandom();
+    for (const auto chainItem : m_chainItemsL2) chainItem.second->classifyLumiAndRandom();
   }
 
   /**
@@ -318,14 +318,14 @@ namespace TrigCostRootAnalysis {
    * We make one counter per chain (L1 and HLT), one per intersection of each chain and other chains in its group
    * and one for the union of all chains in each group.
    */
-  void MonitorRatesUpgrade::populateCounterMap(CounterMap_t* _counterMap) {
-    createGlobalCounters(_counterMap);
-    createL1Counters(_counterMap);
-    //createL2Counters(_counterMap);
-    //createL3Counters(_counterMap);
+  void MonitorRatesUpgrade::populateCounterMap(CounterMap_t* counterMap) {
+    createGlobalCounters(counterMap);
+    createL1Counters(counterMap);
+    //createL2Counters(counterMap);
+    //createL3Counters(counterMap);
   }
 
-  void MonitorRatesUpgrade::createGlobalCounters(CounterMap_t* _counterMap) {
+  void MonitorRatesUpgrade::createGlobalCounters(CounterMap_t* counterMap) {
     // Crate the global rates counter, this will be the OR of everything HLT
     m_globalRateL3Counter =
       new CounterRatesUnion(m_costData, Config::config().getStr(kRateGlobalHLTString), 0, 10, (MonitorBase*) this); // Mint
@@ -336,7 +336,7 @@ namespace TrigCostRootAnalysis {
     m_globalRateL3Counter->decorate(kDecPrescaleValOnlineL1, (Float_t) 0);
     m_globalRateL3Counter->decorate(kDecType, "Union");
     // m_globalRateL3Counter->setAdvancedLumiScaling(kFALSE);
-    (*_counterMap)[Config::config().getStr(kRateGlobalHLTString)] = static_cast<CounterBase*>(m_globalRateL3Counter);
+    (*counterMap)[Config::config().getStr(kRateGlobalHLTString)] = static_cast<CounterBase*>(m_globalRateL3Counter);
 
     // Crate the global L2 counter, this will be the OR of everything L2
     m_globalRateL2Counter =
@@ -348,7 +348,7 @@ namespace TrigCostRootAnalysis {
     m_globalRateL2Counter->decorate(kDecPrescaleValOnlineL1, (Float_t) 0);
     m_globalRateL2Counter->decorate(kDecType, "Union");
     // m_globalRateL2Counter->setAdvancedLumiScaling(kFALSE);
-    (*_counterMap)[Config::config().getStr(kRateGlobalL2String)] = static_cast<CounterBase*>(m_globalRateL2Counter);
+    (*counterMap)[Config::config().getStr(kRateGlobalL2String)] = static_cast<CounterBase*>(m_globalRateL2Counter);
 
     // Crate the global L1 counter, this will be the OR of everything L1
     m_globalRateL1Counter =
@@ -360,13 +360,13 @@ namespace TrigCostRootAnalysis {
     m_globalRateL1Counter->decorate(kDecPrescaleValOnlineL1, (Float_t) 0);
     m_globalRateL1Counter->decorate(kDecType, "Union");
     // m_globalRateL1Counter->setAdvancedLumiScaling(kFALSE);
-    (*_counterMap)[Config::config().getStr(kRateGlobalL1String)] = static_cast<CounterBase*>(m_globalRateL1Counter);
+    (*counterMap)[Config::config().getStr(kRateGlobalL1String)] = static_cast<CounterBase*>(m_globalRateL1Counter);
   }
 
   /**
    * The starting point is to define what items we're interested at L1
    */
-  void MonitorRatesUpgrade::createL1Counters(CounterMap_t* _counterMap) {
+  void MonitorRatesUpgrade::createL1Counters(CounterMap_t* counterMap) {
     // // also overlaps
     // static int ID = 1000;
     // // TEMP
@@ -383,65 +383,65 @@ namespace TrigCostRootAnalysis {
     //     _L1Chain->addL1Item( m_chainItemsL1["L1_TE" + std::to_string(TE)] );
     //     assert( m_chainItemsL1.count("L1_4J" + std::to_string(jE)) +   m_chainItemsL1.count("L1_TE" +
     // std::to_string(TE)) == 2);
-    //     (*_counterMap)[_chainName] = static_cast<CounterBase*>(_L1Chain); // Insert into the counterMap
+    //     (*counterMap)[_chainName] = static_cast<CounterBase*>(_L1Chain); // Insert into the counterMap
     //     Info("MonitorRatesUpgrade::createL1Counters","Made a L1 counter for: %s", _L1Chain->getName().c_str() );
     //   }
     // }
 
 
-    for (const auto _item : m_upgradeChains) {
-      if (_item.m_level != 1) continue; // not doing HLT here
+    for (const auto item : m_upgradeChains) {
+      if (item.m_level != 1) continue; // not doing HLT here
 
-      const std::string _chainName = _item.m_name;
-      const UInt_t _chainID = _item.m_ID;
+      const std::string chainName = item.m_name;
+      const UInt_t chainID = item.m_ID;
 
-      //Info("MonitorRatesUpgrade::createL1Counters","Create counter: %s", _chainName.c_str() );
+      //Info("MonitorRatesUpgrade::createL1Counters","Create counter: %s", chainName.c_str() );
 
       // Find the ChainItem for this chain
-      ChainItemMapIt_t _it = m_chainItemsL1.find(_chainName);
-      if (_it == m_chainItemsL1.end()) {
-        Warning("MonitorRatesUpgrade::createL1Counters", "Cannot find L1 item: %s", _chainName.c_str());
+      ChainItemMapIt_t it = m_chainItemsL1.find(chainName);
+      if (it == m_chainItemsL1.end()) {
+        Warning("MonitorRatesUpgrade::createL1Counters", "Cannot find L1 item: %s", chainName.c_str());
         continue;
       }
-      RatesChainItem* _chainItemL1 = _it->second;
+      RatesChainItem* chainItemL1 = it->second;
 
-      const std::string _prescaleStr = Config::config().getStr(kL1String) + ":" + doubleToString(
-        _chainItemL1->getPS(), 2);
-      const std::string _group = _item.m_group + std::string("_L1");
+      const std::string prescaleStr = Config::config().getStr(kL1String) + ":" + doubleToString(
+        chainItemL1->getPS(), 2);
+      const std::string group = item.m_group + std::string("L1");
 
 
-      CounterRatesChain* _L1Chain = new CounterRatesChain(m_costData, _chainName, _chainID, 10, (MonitorBase*) this); // Mint
+      CounterRatesChain* L1Chain = new CounterRatesChain(m_costData, chainName, chainID, 10, (MonitorBase*) this); // Mint
                                                                                                                       // new
                                                                                                                       // counter
-      _L1Chain->decorate(kDecRatesGroupName, _group);
-      _L1Chain->decorate(kDecPrescaleStr, _prescaleStr);
-      _L1Chain->decorate(kDecType, "L1");
-      //_L1Chain->setAdvancedLumiScaling(kFALSE);
-      _L1Chain->addL1Item(_chainItemL1); // Link it to where it'll be getting its pass/fail info
-      (*_counterMap)[_chainName] = static_cast<CounterBase*>(_L1Chain); // Insert into the counterMap
-      //Info("MonitorRatesUpgrade::createL1Counters","Made a L1 counter for: %s", _L1Chain->getName().c_str() );
+      L1Chain->decorate(kDecRatesGroupName, group);
+      L1Chain->decorate(kDecPrescaleStr, prescaleStr);
+      L1Chain->decorate(kDecType, "L1");
+      //L1Chain->setAdvancedLumiScaling(kFALSE);
+      L1Chain->addL1Item(chainItemL1); // Link it to where it'll be getting its pass/fail info
+      (*counterMap)[chainName] = static_cast<CounterBase*>(L1Chain); // Insert into the counterMap
+      //Info("MonitorRatesUpgrade::createL1Counters","Made a L1 counter for: %s", L1Chain->getName().c_str() );
 
       //Add to global L1 counter
-      m_globalRateL1Counter->addL1Item(_chainItemL1);
+      m_globalRateL1Counter->addL1Item(chainItemL1);
 
       // Do group
-      CounterMapIt_t _findGroup = _counterMap->find(_group); // Do we have a counter for this group?
-      if (_findGroup != _counterMap->end()) { // We do have a group already! Add to it.
-        (static_cast<CounterRatesUnion*>(_findGroup->second))->addL1Item(_chainItemL1);
+      CounterMapIt_t findGroup = counterMap->find(group); // Do we have a counter for this group?
+      if (findGroup != counterMap->end()) { // We do have a group already! Add to it.
+        (static_cast<CounterRatesUnion*>(findGroup->second))->addL1Item(chainItemL1);
       } else {
         // We need a new group counter, this should be of type Union
-        CounterRatesUnion* _ratesGroup = new CounterRatesUnion(m_costData, _group, 0, 10, (MonitorBase*) this); // Mint
+        CounterRatesUnion* ratesGroup = new CounterRatesUnion(m_costData, group, 0, 10, (MonitorBase*) this); // Mint
                                                                                                                 // new
                                                                                                                 // counter
-        //Info("MonitorRatesUpgrade::createL1Counters","Made a L1 Group counter for: %s", _ratesGroup->getName().c_str()
+        //Info("MonitorRatesUpgrade::createL1Counters","Made a L1 Group counter for: %s", ratesGroup->getName().c_str()
         // );
-        _ratesGroup->decorate(kDecPrescaleStr, Config::config().getStr(kMultipleString));
-        _ratesGroup->decorate(kDecPrescaleVal, (Float_t) 0.);
-        _ratesGroup->decorate(kDecRatesGroupName, _item.m_group);
-        _ratesGroup->decorate(kDecType, "Union");
-        //_ratesGroup->setAdvancedLumiScaling(kFALSE);
-        _ratesGroup->addL1Item(_chainItemL1); // Add initial counter
-        (*_counterMap)[_group] = static_cast<CounterBase*>(_ratesGroup); // Instert into the map
+        ratesGroup->decorate(kDecPrescaleStr, Config::config().getStr(kMultipleString));
+        ratesGroup->decorate(kDecPrescaleVal, (Float_t) 0.);
+        ratesGroup->decorate(kDecRatesGroupName, item.m_group);
+        ratesGroup->decorate(kDecType, "Union");
+        //ratesGroup->setAdvancedLumiScaling(kFALSE);
+        ratesGroup->addL1Item(chainItemL1); // Add initial counter
+        (*counterMap)[group] = static_cast<CounterBase*>(ratesGroup); // Instert into the map
       }
     }
   }
@@ -449,60 +449,59 @@ namespace TrigCostRootAnalysis {
   /**
    * L2 are like L1, but with another hardware layer added
    */
-  void MonitorRatesUpgrade::createL2Counters(CounterMap_t* _counterMap) {
-    for (const auto _item : m_upgradeChains) {
-      if (_item.m_level != 1) continue; // Note should be 1, L2 stored in L1 info
+  void MonitorRatesUpgrade::createL2Counters(CounterMap_t* counterMap) {
+    for (const auto item : m_upgradeChains) {
+      if (item.m_level != 1) continue; // Note should be 1, L2 stored in L1 info
 
-      std::string _chainName = _item.m_l2name;
-      const UInt_t _chainID = _item.m_ID;
+      std::string chainName = item.m_l2name;
+      const UInt_t chainID = item.m_ID;
 
       // Find the ChainItem for this chain
-      ChainItemMapIt_t _it = m_chainItemsL2.find(_chainName);
-      if (_it == m_chainItemsL2.end()) {
-        //Warning("MonitorRatesUpgrade::createL2Counters","Cannot find L2 item: %s", _chainName.c_str() );
+      ChainItemMapIt_t it = m_chainItemsL2.find(chainName);
+      if (it == m_chainItemsL2.end()) {
+        //Warning("MonitorRatesUpgrade::createL2Counters","Cannot find L2 item: %s", chainName.c_str() );
         continue;
       }
-      RatesChainItem* _chainItemL2 = _it->second;
+      RatesChainItem* chainItemL2 = it->second;
 
-      const std::string _group = _item.m_group + std::string("_L2");
-      const std::string _prescaleStr = Config::config().getStr(kL1String) + ":" + doubleToString(
-        _chainItemL2->getPS(), 2);
-      CounterRatesChain* _L2Chain = new CounterRatesChain(m_costData, _chainName, _chainID, 10, (MonitorBase*) this); // Mint
+      const std::string group = item.m_group + std::string("L2");
+      const std::string prescaleStr = Config::config().getStr(kL1String) + ":" + doubleToString(
+        chainItemL2->getPS(), 2);
+      CounterRatesChain* L2Chain = new CounterRatesChain(m_costData, chainName, chainID, 10, (MonitorBase*) this); // Mint
                                                                                                                       // new
                                                                                                                       // counter
-      _L2Chain->decorate(kDecRatesGroupName, _group);
-      _L2Chain->decorate(kDecPrescaleStr, _prescaleStr);
-      _L2Chain->decorate(kDecType, "L2");
-      _L2Chain->addL2Item(_chainItemL2); // Link it to where it'll be getting its pass/fail info
-      (*_counterMap)[_chainName] = static_cast<CounterBase*>(_L2Chain); // Insert into the counterMap
+      L2Chain->decorate(kDecRatesGroupName, group);
+      L2Chain->decorate(kDecPrescaleStr, prescaleStr);
+      L2Chain->decorate(kDecType, "L2");
+      L2Chain->addL2Item(chainItemL2); // Link it to where it'll be getting its pass/fail info
+      (*counterMap)[chainName] = static_cast<CounterBase*>(L2Chain); // Insert into the counterMap
 
-      //Info("MonitorRatesUpgrade::createL2Counters","Create counter: %s", _chainName.c_str() );
+      //Info("MonitorRatesUpgrade::createL2Counters","Create counter: %s", chainName.c_str() );
 
       //Add to global L1 counter
-      m_globalRateL2Counter->addL2Item(_chainItemL2);
+      m_globalRateL2Counter->addL2Item(chainItemL2);
 
       // Do group
-      CounterMapIt_t _findGroup = _counterMap->find(_group); // Do we have a counter for this group?
-      if (_findGroup != _counterMap->end()) { // We do have a group already! Add to it.
-        (static_cast<CounterRatesUnion*>(_findGroup->second))->addL1Item(_chainItemL2);
+      CounterMapIt_t findGroup = counterMap->find(group); // Do we have a counter for this group?
+      if (findGroup != counterMap->end()) { // We do have a group already! Add to it.
+        (static_cast<CounterRatesUnion*>(findGroup->second))->addL1Item(chainItemL2);
       } else {
         // We need a new group counter, this should be of type Union
-        CounterRatesUnion* _ratesGroup = new CounterRatesUnion(m_costData, _group, 0, 10, (MonitorBase*) this); // Mint
+        CounterRatesUnion* ratesGroup = new CounterRatesUnion(m_costData, group, 0, 10, (MonitorBase*) this); // Mint
                                                                                                                 // new
                                                                                                                 // counter
-        _ratesGroup->decorate(kDecPrescaleStr, Config::config().getStr(kMultipleString));
-        _ratesGroup->decorate(kDecPrescaleVal, (Float_t) 0.);
-        _ratesGroup->decorate(kDecRatesGroupName, _group);
-        _ratesGroup->decorate(kDecType, "Union");
-        //_ratesGroup->setAdvancedLumiScaling(kFALSE);
-        _ratesGroup->addL1Item(_chainItemL2); // Add initial counter
-        (*_counterMap)[_group] = static_cast<CounterBase*>(_ratesGroup); // Instert into the map
+        ratesGroup->decorate(kDecPrescaleStr, Config::config().getStr(kMultipleString));
+        ratesGroup->decorate(kDecPrescaleVal, (Float_t) 0.);
+        ratesGroup->decorate(kDecRatesGroupName, group);
+        ratesGroup->decorate(kDecType, "Union");
+        //ratesGroup->setAdvancedLumiScaling(kFALSE);
+        ratesGroup->addL1Item(chainItemL2); // Add initial counter
+        (*counterMap)[group] = static_cast<CounterBase*>(ratesGroup); // Instert into the map
       }
     }
   }
 
-  void MonitorRatesUpgrade::createL3Counters(CounterMap_t* _counterMap) {
-    UNUSED(_counterMap);
+  void MonitorRatesUpgrade::createL3Counters(CounterMap_t* /*counterMap*/) {
   }
 
   /**
@@ -510,141 +509,141 @@ namespace TrigCostRootAnalysis {
    * Make sure to delete all these which go into the pileup database at the end.....
    */
   TOBAccumulator* MonitorRatesUpgrade::getEventTOBs() {
-    static Float_t _EMCountsPerGeV = Config::config().getInt(kUpgradeEMCountsPerGeV);
-    static Float_t _JetCountsPerGeV = Config::config().getInt(kUpgradeJetCountsPerGeV);
-    TOBAccumulator* _tobs = new TOBAccumulator();
-    Bool_t _hasE = kFALSE;
-
-    for (UInt_t _r = 0; _r < m_costData->getNRoIs(); ++_r) {
-      //Info("MonitorRatesUpgrade::getEventTOBs", "Processing TOB %i of %i", _r, (int) m_costData->getNRoIs());
-      ConfKey_t _t = kNoneString;
-      if (m_costData->getIsRoINone(_r) == kTRUE) continue;
-      else if (m_costData->getIsRoIMuon(_r) == kTRUE) _t = kMuonString;
-      else if (m_costData->getIsRoIEmTau(_r) == kTRUE) {
-        if (m_costData->getIsRoITau(_r) == kTRUE) _t = kTauString;
-        else _t = kEmString;
-      } else if (m_costData->getIsRoIJet(_r) == kTRUE) _t = kJetString;
-      else if (m_costData->getIsRoIJetEt(_r) == kTRUE) continue;
-      else if (m_costData->getIsRoIEnergy(_r) == kTRUE) {
+    static Float_t EMCountsPerGeV = Config::config().getInt(kUpgradeEMCountsPerGeV);
+    static Float_t JetCountsPerGeV = Config::config().getInt(kUpgradeJetCountsPerGeV);
+    TOBAccumulator* tobs = new TOBAccumulator();
+    Bool_t hasE = kFALSE;
+
+    for (UInt_t r = 0; r < m_costData->getNRoIs(); ++r) {
+      //Info("MonitorRatesUpgrade::getEventTOBs", "Processing TOB %i of %i", r, (int) m_costData->getNRoIs());
+      ConfKey_t t = kNoneString;
+      if (m_costData->getIsRoINone(r) == kTRUE) continue;
+      else if (m_costData->getIsRoIMuon(r) == kTRUE) t = kMuonString;
+      else if (m_costData->getIsRoIEmTau(r) == kTRUE) {
+        if (m_costData->getIsRoITau(r) == kTRUE) t = kTauString;
+        else t = kEmString;
+      } else if (m_costData->getIsRoIJet(r) == kTRUE) t = kJetString;
+      else if (m_costData->getIsRoIJetEt(r) == kTRUE) continue;
+      else if (m_costData->getIsRoIEnergy(r) == kTRUE) {
         //Info("MonitorRatesUpgrade::getEventTOBs", "   Is of type ENERGY");
-        if (_tobs->TE() > 0 && m_costData->getRoIEt(_r) <= _tobs->TE()) continue; // Get the largest (full width)
-        _hasE = kTRUE;
-        _tobs->set(TrigXMLService::trigXMLService().m_muPerLB.at(m_costData->getLumi()),
-                   m_costData->getRoIVectorEX(_r), m_costData->getRoIVectorEY(_r), m_costData->getRoIEt(_r),
-                   m_costData->getRoIOverflowEX(_r), m_costData->getRoIOverflowEY(_r),
-                   m_costData->getRoIOverflowET(_r));
+        if (tobs->TE() > 0 && m_costData->getRoIEt(r) <= tobs->TE()) continue; // Get the largest (full width)
+        hasE = kTRUE;
+        tobs->set(TrigXMLService::trigXMLService().m_muPerLB.at(m_costData->getLumi()),
+                   m_costData->getRoIVectorEX(r), m_costData->getRoIVectorEY(r), m_costData->getRoIEt(r),
+                   m_costData->getRoIOverflowEX(r), m_costData->getRoIOverflowEY(r),
+                   m_costData->getRoIOverflowET(r));
         continue;
       }
-      //Info("MonitorRatesUpgrade::getEventTOBs", "   Is of type %s", Config::config().getName(_t).c_str());
-      TOB _tob;
-      _tob.m_eta = m_costData->getRoIEta(_r);
-      _tob.m_phi = m_costData->getRoIPhi(_r);
-      _tob.m_et = m_costData->getRoIEt(_r);
-      _tob.m_etLarge = m_costData->getRoIEtLarge(_r);
-      _tob.m_iso = m_costData->getRoIEmTauIsoBits(_r); // returns 0 for others
-      _tob.m_id = m_costData->getRoIID(_r);
-      _tob.m_type = _t;
-      if (_t == kTauString || _t == kEmString) {
-        _tob.m_et /= _EMCountsPerGeV; // Run 2 we have two counts per GeV for EM/TAU
-      } else if (_t == kJetString) {
-        _tob.m_et /= _JetCountsPerGeV; // Run 2 is still usually 1 count per GeV for jets
+      //Info("MonitorRatesUpgrade::getEventTOBs", "   Is of type %s", Config::config().getName(t).c_str());
+      TOB tob;
+      tob.m_eta = m_costData->getRoIEta(r);
+      tob.m_phi = m_costData->getRoIPhi(r);
+      tob.m_et = m_costData->getRoIEt(r);
+      tob.m_etLarge = m_costData->getRoIEtLarge(r);
+      tob.m_iso = m_costData->getRoIEmTauIsoBits(r); // returns 0 for others
+      tob.m_id = m_costData->getRoIID(r);
+      tob.m_type = t;
+      if (t == kTauString || t == kEmString) {
+        tob.m_et /= EMCountsPerGeV; // Run 2 we have two counts per GeV for EM/TAU
+      } else if (t == kJetString) {
+        tob.m_et /= JetCountsPerGeV; // Run 2 is still usually 1 count per GeV for jets
       }
-      if (_tobs->TOBs().find(_tob) != _tobs->TOBs().end() && Config::config().getDisplayMsg(kMsgDupeTOB) == kTRUE) {
-        Error("MonitorRatesUpgrade::getEventTOBs", "Event has multiple TOBs with ID %i\n%s", _tob.m_id,
-              _tobs->print().c_str());
+      if (tobs->TOBs().find(tob) != tobs->TOBs().end() && Config::config().getDisplayMsg(kMsgDupeTOB) == kTRUE) {
+        Error("MonitorRatesUpgrade::getEventTOBs", "Event has multiple TOBs with ID %i\n%s", tob.m_id,
+              tobs->print().c_str());
       }
-      _tobs->add(_tob);
+      tobs->add(tob);
     }
-    if (_hasE == kFALSE && Config::config().getDisplayMsg(kMsgNoTETOB) == kTRUE) {
+    if (hasE == kFALSE && Config::config().getDisplayMsg(kMsgNoTETOB) == kTRUE) {
       Error("MonitorRatesUpgrade::getEventTOBs", "Event has no ENERGY TOB(s). Total TOBs: %i\n%s",
-            m_costData->getNRoIs(), _tobs->print().c_str());
-      for (UInt_t _r = 0; _r < m_costData->getNRoIs(); ++_r) Info("MonitorRatesUpgrade::getEventTOBs",
-                                                                  " TOB %i/%i of id %i", _r,
+            m_costData->getNRoIs(), tobs->print().c_str());
+      for (UInt_t r = 0; r < m_costData->getNRoIs(); ++r) Info("MonitorRatesUpgrade::getEventTOBs",
+                                                                  " TOB %i/%i of id %i", r,
                                                                   (Int_t) m_costData->getNRoIs(),
-                                                                  m_costData->getRoIID(_r));
+                                                                  m_costData->getRoIID(r));
     }
-    return _tobs;
+    return tobs;
   }
 
   void MonitorRatesUpgrade::printEnergyTOBs() {
-    for (UInt_t _r = 0; _r < m_costData->getNRoIs(); ++_r) {
-      if (m_costData->getIsRoIEnergy(_r) == kTRUE) {
-        Float_t _met =
-          TMath::Sqrt((m_costData->getRoIVectorEX(_r) * m_costData->getRoIVectorEX(_r)) +
-                      (m_costData->getRoIVectorEY(_r) * m_costData->getRoIVectorEY(_r)));
+    for (UInt_t r = 0; r < m_costData->getNRoIs(); ++r) {
+      if (m_costData->getIsRoIEnergy(r) == kTRUE) {
+        Float_t met =
+          TMath::Sqrt((m_costData->getRoIVectorEX(r) * m_costData->getRoIVectorEX(r)) +
+                      (m_costData->getRoIVectorEY(r) * m_costData->getRoIVectorEY(r)));
         Info("MonitorRatesUpgrade::printEnergyTOBs",
              "Energy TOB x:%i y:%i (MET:%.2f) TE:%i | OverflowFlags: x:%i y:%i TE:%i",
-             (Int_t) m_costData->getRoIVectorEX(_r), (Int_t) m_costData->getRoIVectorEY(
-               _r), _met, (Int_t) m_costData->getRoIEt(_r),
-             m_costData->getRoIOverflowEX(_r), m_costData->getRoIOverflowEY(_r), m_costData->getRoIOverflowET(_r));
+             (Int_t) m_costData->getRoIVectorEX(r), (Int_t) m_costData->getRoIVectorEY(
+               r), met, (Int_t) m_costData->getRoIEt(r),
+             m_costData->getRoIOverflowEX(r), m_costData->getRoIOverflowEY(r), m_costData->getRoIOverflowET(r));
       }
     }
   }
 
-  void MonitorRatesUpgrade::validateTriggerEmulation(CounterMap_t* _counterMap, TOBAccumulator* _this, Bool_t _print) {
-    static std::set<std::string> _types;
+  void MonitorRatesUpgrade::validateTriggerEmulation(CounterMap_t* counterMap, TOBAccumulator* thisAccum, Bool_t print) {
+    static std::set<std::string> types;
 
-    if (_types.size() == 0) {
-      _types.insert("EM");
-      _types.insert("TAU");
-      _types.insert("J");
-      _types.insert("MU");
-      _types.insert("XE");
-      _types.insert("TE");
+    if (types.size() == 0) {
+      types.insert("EM");
+      types.insert("TAU");
+      types.insert("J");
+      types.insert("MU");
+      types.insert("XE");
+      types.insert("TE");
     }
-    static std::vector<std::string> _validationItems;
-    if (_validationItems.size() == 0) {
-      _validationItems.push_back("L1_MU15");
-      //_validationItems.push_back("L1_2MU10"); // Know broken
-      _validationItems.push_back("L1_EM15");
-      _validationItems.push_back("L1_TAU20");
-      _validationItems.push_back("L1_TE30");
-      _validationItems.push_back("L1_XE300");
-      _validationItems.push_back("L1_J100");
-      //_validationItems.push_back("L1_2EM10VH"); // Known broken
+    static std::vector<std::string> validationItems;
+    if (validationItems.size() == 0) {
+      validationItems.push_back("L1_MU15");
+      //validationItems.push_back("L1_2MU10"); // Know broken
+      validationItems.push_back("L1_EM15");
+      validationItems.push_back("L1_TAU20");
+      validationItems.push_back("L1_TE30");
+      validationItems.push_back("L1_XE300");
+      validationItems.push_back("L1_J100");
+      //validationItems.push_back("L1_2EM10VH"); // Known broken
     }
-    Int_t _checkTrigEmulation[10] = {
+    Int_t checkTrigEmulation[10] = {
       0
     };
-    Int_t _checkTrigOnline[10] = {
+    Int_t checkTrigOnline[10] = {
       0
     };
-    if (_print) Info("MonitorRatesUpgrade::validateTriggerEmulation",
+    if (print) Info("MonitorRatesUpgrade::validateTriggerEmulation",
                      " ###  ###  ###  ###  ###  ###  TRIGGER EMULATION CHECK  ###  ###  ###  ###  ###  ###");
-    if (_print) Info("MonitorRatesUpgrade::validateTriggerEmulation", " Event: %i TOBs, MET:(%.0f,%.0f)=%f TE:%f\n%s",
-      (int) _this->TOBs().size(), _this->vX(), _this->vY(), _this->MET(), _this->TE(), _this->print().c_str());
-
-    for (auto _type : _types) {
-      if (_print) Info("MonitorRatesUpgrade::validateTriggerEmulation", " *** %s ***", _type.c_str());
-      CounterMapIt_t _it = _counterMap->begin();
-      std::stringstream _ssEmu;
-      for (; _it != _counterMap->end(); ++_it) {
-        if (_it->second->getName().find(_type) == std::string::npos) continue;
-        if (_it->second->getName().substr(0, 3) != "L1_") continue;
-        if (isZero(((CounterRatesChain*) (_it->second))->runWeight()) == kTRUE) continue;
-        for (UInt_t _v = 0; _v < _validationItems.size(); ++_v) if (_it->second->getName() == _validationItems.at(_v)) _checkTrigEmulation[_v] = 1;
-        _ssEmu << _it->second->getName() << ", ";
+    if (print) Info("MonitorRatesUpgrade::validateTriggerEmulation", " Event: %i TOBs, MET:(%.0f,%.0f)=%f TE:%f\n%s",
+      (int) thisAccum->TOBs().size(), thisAccum->vX(), thisAccum->vY(), thisAccum->MET(), thisAccum->TE(), thisAccum->print().c_str());
+
+    for (auto type : types) {
+      if (print) Info("MonitorRatesUpgrade::validateTriggerEmulation", " *** %s ***", type.c_str());
+      CounterMapIt_t it = counterMap->begin();
+      std::stringstream ssEmu;
+      for (; it != counterMap->end(); ++it) {
+        if (it->second->getName().find(type) == std::string::npos) continue;
+        if (it->second->getName().substr(0, 3) != "L1_") continue;
+        if (isZero(((CounterRatesChain*) (it->second))->runWeight()) == kTRUE) continue;
+        for (UInt_t v = 0; v < validationItems.size(); ++v) if (it->second->getName() == validationItems.at(v)) checkTrigEmulation[v] = 1;
+        ssEmu << it->second->getName() << ", ";
       }
-      if (_print && _ssEmu.str().size()) Info("MonitorRatesUpgrade::validateTriggerEmulation", " ^^^ EMULATED PASS: %s", _ssEmu.str().c_str());
-      std::stringstream _ssOnline;
-      for (UInt_t _c = 0; _c < m_costData->getNL1(); ++_c) {
-        if (m_costData->getIsL1PassedBeforePrescale(_c) == kFALSE) continue;
-        Int_t _CTPID = m_costData->getL1CtpId(_c);
-        const std::string _chainName = TrigConfInterface::getNameFromCtpId(_CTPID);
-        if (_chainName.find(_type) == std::string::npos) continue;
-        if (_chainName.find("-") != std::string::npos) continue;
-        for (UInt_t _v = 0; _v < _validationItems.size(); ++_v) if (_chainName == _validationItems.at(_v)) _checkTrigOnline[_v] = kTRUE;
-        _ssOnline << _chainName << ", ";
+      if (print && ssEmu.str().size()) Info("MonitorRatesUpgrade::validateTriggerEmulation", " ^^^ EMULATED PASS: %s", ssEmu.str().c_str());
+      std::stringstream ssOnline;
+      for (UInt_t c = 0; c < m_costData->getNL1(); ++c) {
+        if (m_costData->getIsL1PassedBeforePrescale(c) == kFALSE) continue;
+        Int_t CTPID = m_costData->getL1CtpId(c);
+        const std::string chainName = TrigConfInterface::getNameFromCtpId(CTPID);
+        if (chainName.find(type) == std::string::npos) continue;
+        if (chainName.find("-") != std::string::npos) continue;
+        for (UInt_t v = 0; v < validationItems.size(); ++v) if (chainName == validationItems.at(v)) checkTrigOnline[v] = kTRUE;
+        ssOnline << chainName << ", ";
       }
-      if (_print && _ssOnline.str().size()) Info("MonitorRatesUpgrade::validateTriggerEmulation", " &&& ONLINE PASS: %s", _ssOnline.str().c_str());
+      if (print && ssOnline.str().size()) Info("MonitorRatesUpgrade::validateTriggerEmulation", " &&& ONLINE PASS: %s", ssOnline.str().c_str());
     }
-    if (_print) printEnergyTOBs();
-    if (_print == kFALSE) {
-      for (UInt_t _v = 0; _v < _validationItems.size(); ++_v) {
-        if (_checkTrigEmulation[_v] != _checkTrigOnline[_v]) {
-          Info("MonitorRatesUpgrade::validateTriggerEmulation", " !!!!!!!!!!!!!!!!!!!!!!!!! %s !!!!!!!!!!!!!!!!!!!!!!!", _validationItems.at(_v).c_str());
+    if (print) printEnergyTOBs();
+    if (print == kFALSE) {
+      for (UInt_t v = 0; v < validationItems.size(); ++v) {
+        if (checkTrigEmulation[v] != checkTrigOnline[v]) {
+          Info("MonitorRatesUpgrade::validateTriggerEmulation", " !!!!!!!!!!!!!!!!!!!!!!!!! %s !!!!!!!!!!!!!!!!!!!!!!!", validationItems.at(v).c_str());
           Info("MonitorRatesUpgrade::validateTriggerEmulation", " !!!!!!!!!!!!!!!!!!!! FAILED TO VALIDATE !!!!!!!!!!!!!!!!!!!!");
-          validateTriggerEmulation(_counterMap, _this, kTRUE);
+          validateTriggerEmulation(counterMap, thisAccum, kTRUE);
           break;
         }
       }
@@ -654,10 +653,9 @@ namespace TrigCostRootAnalysis {
   /**
    * Process new event for this monitor.
    * For the chain rate monitor - we look at a chain's rate and its correlation with other chains in its group
-   * @param _weight We don't use the standard weight here - form it ourselves
+   * @param weight We don't use the standard weight here - form it ourselves
    */
-  void MonitorRatesUpgrade::newEvent(Float_t _weight) {
-    UNUSED(_weight);
+  void MonitorRatesUpgrade::newEvent(Float_t /*weight*/) {
     m_timer.start();
     if (Config::config().debug()) Info("MonitorRatesUpgrade::newEvent", "*** Processing Chain Rates ***");
 
@@ -670,17 +668,17 @@ namespace TrigCostRootAnalysis {
     if (m_upgradePileupScaling == kTRUE) {
       // FIRST PASS
       // If FIRST PASS, all we do is build the PU database
-      static UInt_t _message = 0;
-      if (_message == 0) {
-        _message = 1;
+      static UInt_t message = 0;
+      if (message == 0) {
+        message = 1;
         Info("MonitorRatesUpgrade::newEvent", "Building the Pileup Database...");
       }
       if (getPass() == 1) {
         if (Config::config().getInt(kCurrentEventWasRandomOnline) == kTRUE) m_pileupDatabase.push_back(getEventTOBs());
         return;
       }
-      if (_message == 1) {
-        _message = 2;
+      if (message == 1) {
+        message = 2;
         Info("MonitorRatesUpgrade::newEvent", "Moving on to second pass, Pileup Database has:%i events", (Int_t) m_pileupDatabase.size());
       }
     }
@@ -697,29 +695,29 @@ namespace TrigCostRootAnalysis {
     }
 
     // We do all the weighting here ourselves
-    Float_t _weightUpgrade = Config::config().getFloat(kCurrentEventEBWeight) * m_collidingBunchFactor * m_upgradeDeadtimeScaling;
+    Float_t weightUpgrade = Config::config().getFloat(kCurrentEventEBWeight) * m_collidingBunchFactor * m_upgradeDeadtimeScaling;
 
     // SECOND PASS
-    static Int_t _tobDebug = 0;
-    // if (++_tobDebug < 50) Info("MonitorRatesUpgrade::newEvent", " *******************************************");
+    static Int_t tobDebug = 0;
+    // if (++tobDebug < 50) Info("MonitorRatesUpgrade::newEvent", " *******************************************");
 
-    TOBAccumulator* m_thisEventPtr = getEventTOBs();
+    TOBAccumulator* thisEventPtr = getEventTOBs();
 
     if (m_upgradePileupScaling) {
       m_collisionsToMix += m_pileupFactor; // Want another ~200 collisions
 
-      Int_t _eventsAdded = 0;
+      Int_t eventsAdded = 0;
       while (m_thisEventPtr->mu() < m_collisionsToMix) {
-        UInt_t _pileupLottery = m_R3.Integer(m_pileupDatabase.size());
-        m_thisEventPtr->add(m_pileupDatabase.at(_pileupLottery));
-        ++_eventsAdded;
+        UInt_t pileupLottery = m_R3.Integer(m_pileupDatabase.size());
+        m_thisEventPtr->add(m_pileupDatabase.at(pileupLottery));
+        ++eventsAdded;
       }
 
-      if (++_tobDebug < 50) Info("MonitorRatesUpgrade::newEvent", "Target collisions: %.2f | Adding %i events, <mu> = %.2f", m_collisionsToMix, _eventsAdded, m_thisEventPtr->mu());
+      if (++tobDebug < 50) Info("MonitorRatesUpgrade::newEvent", "Target collisions: %.2f | Adding %i events, <mu> = %.2f", m_collisionsToMix, eventsAdded, m_thisEventPtr->mu());
       m_collisionsToMix -= m_thisEventPtr->mu(); // Take this off so any excess is taken into account next time
 
-      m_statsEventMu += m_thisEventPtr->mu();
-      m_statsEventMu2 += pow(m_thisEventPtr->mu(), 2);
+      m_statsEventMu += thisEventPtr->mu();
+      m_statsEventMu2 += pow(thisEventPtr->mu(), 2);
       ++m_statsEventMuN;
     }
 
@@ -731,41 +729,41 @@ namespace TrigCostRootAnalysis {
     // round(m_eventsToMix), m_eventsToMix);
     // // Add pileup
     // for (Int_t _pu = 0; _pu <  (Int_t) round(m_eventsToMix); ++_pu) { // Cast to int rounds down
-    //   UInt_t _pileupLottery = m_R3.Integer( m_pileupDatabase.size() );
-    //   m_thisEventPtr->add( m_pileupDatabase.at( _pileupLottery ) );
+    //   UInt_t pileupLottery = m_R3.Integer( m_pileupDatabase.size() );
+    //   m_thisEventPtr->add( m_pileupDatabase.at( pileupLottery ) );
     // }
-    // if (_tobDebug < 20) Info("MonitorRatesUpgrade::newEvent", " ### MIXING %i EVENTS, NOW HAEV %i TOBs ### MET:%f
+    // if (tobDebug < 20) Info("MonitorRatesUpgrade::newEvent", " ### MIXING %i EVENTS, NOW HAVE %i TOBs ### MET:%f
     // TE:%f\n%s", (Int_t) m_eventsToMix, (Int_t) m_thisEventPtr->TOBs().size(), m_thisEventPtr->MET(),
     // m_thisEventPtr->TE(),m_thisEventPtr->print().c_str());
     // m_eventsToMix -= (Int_t)m_eventsToMix; // Remove whole integer events mixed. Leave fractional part to accumulate
     // for next event.
 
-    for (const auto _chainItem : m_chainItemsL1) _chainItem.second->beginEvent(m_thisEventPtr);
-    for (const auto _chainItem : m_chainItemsL2) _chainItem.second->beginEvent(m_thisEventPtr);
+    for (const auto chainItem : m_chainItemsL1) chainItem.second->beginEvent(m_thisEventPtr);
+    for (const auto chainItem : m_chainItemsL2) chainItem.second->beginEvent(m_thisEventPtr);
 
     //Now loop over the counter collections;
-    for (CounterMapSetIt_t _cmsIt = m_collectionsToProcess.begin(); _cmsIt != m_collectionsToProcess.end(); ++_cmsIt) {
-      CounterMap_t* _counterMap = *_cmsIt; // This counter map holds all the counters.
+    for (CounterMapSetIt_t cmsIt = m_collectionsToProcess.begin(); cmsIt != m_collectionsToProcess.end(); ++cmsIt) {
+      CounterMap_t* counterMap = *cmsIt; // This counter map holds all the counters.
 
       // If the counter map is empty, then we need to populate it. We will pre-load a counter for every chain.
-      if (_counterMap->size() == 0) populateCounterMap(_counterMap);
+      if (counterMap->size() == 0) populateCounterMap(counterMap);
 
       // Loop over all counters, they will use their pre-linked RatesChainItems to get their weights.
-      CounterMapIt_t _it = _counterMap->begin();
-      for (; _it != _counterMap->end(); ++_it) {
-        _it->second->processEventCounter(0, 1, _weightUpgrade);
-        m_countersInEvent.insert(_it->second);
+      CounterMapIt_t it = counterMap->begin();
+      for (; it != counterMap->end(); ++it) {
+        it->second->processEventCounter(0, 1, weightUpgrade);
+        m_countersInEvent.insert(it->second);
       }
-      //if (m_upgradePileupScaling == kFALSE) validateTriggerEmulation(_counterMap, m_thisEventPtr, kFALSE /*print*/);
+      //if (m_upgradePileupScaling == kFALSE) validateTriggerEmulation(counterMap, thisEventPtr, kFALSE /*print*/);
 
       endEvent(0);
     }
 
-    for (const auto _chainItem : m_chainItemsL1) _chainItem.second->endEvent();
-    for (const auto _chainItem : m_chainItemsL2) _chainItem.second->endEvent();
+    for (const auto chainItem : m_chainItemsL1) chainItem.second->endEvent();
+    for (const auto chainItem : m_chainItemsL2) chainItem.second->endEvent();
 
-    delete m_thisEventPtr;
-    m_thisEventPtr = nullptr;
+    delete thisEventPtr;
+    thisEventPtr = nullptr;
 
     m_timer.stop();
   }
@@ -774,65 +772,65 @@ namespace TrigCostRootAnalysis {
    * Saves the topology of all counters to a JSON file linked to the counter name. Imported by web display.
    */
   void MonitorRatesUpgrade::saveRateGraphs() {
-    const std::string _output = Config::config().getStr(kOutputDirectory) + "/" + Config::config().getStr(kOutputRatesGraphFilename);
+    const std::string output = Config::config().getStr(kOutputDirectory) + "/" + Config::config().getStr(kOutputRatesGraphFilename);
 
-    std::ofstream _fout(_output.c_str());
-    JsonExport _json;
-    _json.addNode(_fout, "ratesGaphs");
+    std::ofstream fout(output.c_str());
+    JsonExport json;
+    json.addNode(fout, "ratesGaphs");
 
-    std::set<std::string> _configsSeen;
-    for (CounterCollectionIt_t _collectionIt = m_counterCollections.begin(); _collectionIt != m_counterCollections.end(); ++_collectionIt) {
-      for (CounterMapIt_t _counterMapIt = _collectionIt->second.begin(); _counterMapIt != _collectionIt->second.end(); ++_counterMapIt) {
-        CounterBaseRates* _counter = static_cast<CounterBaseRates*>(_counterMapIt->second);
+    std::set<std::string> configsSeen;
+    for (CounterCollectionIt_t collectionIt = m_counterCollections.begin(); collectionIt != m_counterCollections.end(); ++collectionIt) {
+      for (CounterMapIt_t counterMapIt = collectionIt->second.begin(); counterMapIt != collectionIt->second.end(); ++counterMapIt) {
+        CounterBaseRates* counter = static_cast<CounterBaseRates*>(counterMapIt->second);
 
-        if (_configsSeen.count(_counter->getName()) == 1) continue;
-        _configsSeen.insert(_counter->getName());
-        _json.addNode(_fout, _counter->getName());
+        if (configsSeen.count(counter->getName()) == 1) continue;
+        configsSeen.insert(counter->getName());
+        json.addNode(fout, counter->getName());
 
         // If a unique then continue
-        if (_counter->getStrDecoration(kDecType) == "UniqueHLT" || _counter->getStrDecoration(kDecType) == "UniqueL1") {
-          _json.endNode(_fout);
+        if (counter->getStrDecoration(kDecType) == "UniqueHLT" || counter->getStrDecoration(kDecType) == "UniqueL1") {
+          json.endNode(fout);
           continue;
         }
 
-        if (_counter->getL2ItemSet().size() == 0) { // If only L1
-          for (ChainItemSetIt_t _L1It = _counter->getL1ItemSet().begin(); _L1It != _counter->getL1ItemSet().end(); ++_L1It) {
-            RatesChainItem* _L1 = (*_L1It);
-            const std::string _source = _L1->getName() + " [PS:" + doubleToString(_L1->getPS()) + "]";
-            _json.addLeafCustom(_fout, "source", _source, "target", _source);
+        if (counter->getL2ItemSet().size() == 0) { // If only L1
+          for (ChainItemSetIt_t L1It = counter->getL1ItemSet().begin(); L1It != counter->getL1ItemSet().end(); ++L1It) {
+            RatesChainItem* L1 = (*L1It);
+            const std::string source = L1->getName() + " [PS:" + doubleToString(L1->getPS()) + "]";
+            json.addLeafCustom(fout, "source", source, "target", source);
           }
-        } else if (_counter->getL3ItemSet().size() == 0) { // If only L1 and L2
-          for (ChainItemSetIt_t _L2It = _counter->getL2ItemSet().begin(); _L2It != _counter->getL2ItemSet().end(); ++_L2It) {
-            RatesChainItem* _L2 = (*_L2It);
-            for (ChainItemSetIt_t _L1It = _L2->getLowerStart(); _L1It != _L2->getLowerEnd(); ++_L1It) {
-              RatesChainItem* _L1 = (*_L1It);
-              const std::string _source = _L1->getName() + " [PS:" + doubleToString(_L1->getPS()) + "]";
-              const std::string _target = _L2->getName() + " [PS:" + doubleToString(_L2->getPS()) + "]";
-              _json.addLeafCustom(_fout, "source", _source, "target", _target);
+        } else if (counter->getL3ItemSet().size() == 0) { // If only L1 and L2
+          for (ChainItemSetIt_t L2It = counter->getL2ItemSet().begin(); L2It != counter->getL2ItemSet().end(); ++L2It) {
+            RatesChainItem* L2 = (*L2It);
+            for (ChainItemSetIt_t L1It = L2->getLowerStart(); L1It != L2->getLowerEnd(); ++L1It) {
+              RatesChainItem* L1 = (*L1It);
+              const std::string source = L1->getName() + " [PS:" + doubleToString(L1->getPS()) + "]";
+              const std::string target = L2->getName() + " [PS:" + doubleToString(L2->getPS()) + "]";
+              json.addLeafCustom(fout, "source", source, "target", target);
             }
           }
         } else { // all three levels
-          for (ChainItemSetIt_t _L3It = _counter->getL3ItemSet().begin(); _L3It != _counter->getL3ItemSet().end(); ++_L3It) {
-            RatesChainItem* _L3 = (*_L3It);
-            for (ChainItemSetIt_t _L2It = _L3->getLowerStart(); _L2It != _L3->getLowerEnd(); ++_L2It) {
-              RatesChainItem* _L2 = (*_L2It);
-              const std::string _source = _L2->getName() + " [PS:" + doubleToString(_L2->getPS()) + "]";
-              const std::string _target = _L3->getName() + " [PS:" + doubleToString(_L3->getPS()) + "]";
-              _json.addLeafCustom(_fout, "source", _source, "target", _target);
-              for (ChainItemSetIt_t _L1It = _L2->getLowerStart(); _L1It != _L2->getLowerEnd(); ++_L1It) {
-                RatesChainItem* _L1 = (*_L1It);
-                const std::string _source = _L1->getName() + " [PS:" + doubleToString(_L1->getPS()) + "]";
-                const std::string _target = _L2->getName() + " [PS:" + doubleToString(_L2->getPS()) + "]";
-                _json.addLeafCustom(_fout, "source", _source, "target", _target);
+          for (ChainItemSetIt_t L3It = counter->getL3ItemSet().begin(); L3It != counter->getL3ItemSet().end(); ++L3It) {
+            RatesChainItem* L3 = (*L3It);
+            for (ChainItemSetIt_t L2It = L3->getLowerStart(); L2It != L3->getLowerEnd(); ++L2It) {
+              RatesChainItem* L2 = (*L2It);
+              const std::string source = L2->getName() + " [PS:" + doubleToString(L2->getPS()) + "]";
+              const std::string target = L3->getName() + " [PS:" + doubleToString(L3->getPS()) + "]";
+              json.addLeafCustom(fout, "source", source, "target", target);
+              for (ChainItemSetIt_t L1It = L2->getLowerStart(); L1It != L2->getLowerEnd(); ++L1It) {
+                RatesChainItem* L1 = (*L1It);
+                const std::string source = L1->getName() + " [PS:" + doubleToString(L1->getPS()) + "]";
+                const std::string target = L2->getName() + " [PS:" + doubleToString(L2->getPS()) + "]";
+                json.addLeafCustom(fout, "source", source, "target", target);
               }
             }
           }
         }
-        _json.endNode(_fout);
+        json.endNode(fout);
       }
     }
-    _json.endNode(_fout); // ratesGraphs
-    _fout.close();
+    json.endNode(fout); // ratesGraphs
+    fout.close();
   }
 
   /**
@@ -840,15 +838,15 @@ namespace TrigCostRootAnalysis {
    * Note these are currently hard-coded. We may want to make them configurable
    * @return If this monitor should be active for a given mode.
    */
-  Bool_t MonitorRatesUpgrade::getIfActive(ConfKey_t _mode) {
-    switch (_mode) {
+  Bool_t MonitorRatesUpgrade::getIfActive(ConfKey_t mode) {
+    switch (mode) {
     case kDoAllSummary:       return kTRUE;
 
     case kDoKeySummary:       return kTRUE;
 
     case kDoLumiBlockSummary: return kTRUE;
 
-    default: Error("MonitorRatesUpgrade::getIfActive", "An invalid summary mode was provided (key %s)", Config::config().getName(_mode).c_str());
+    default: Error("MonitorRatesUpgrade::getIfActive", "An invalid summary mode was provided (key %s)", Config::config().getName(mode).c_str());
     }
     return kFALSE;
   }
@@ -863,25 +861,25 @@ namespace TrigCostRootAnalysis {
     Info("MonitorRatesUpgrade::saveOutput", "Sum(Collisions)=%.3e Sum(Collisions^2)=%.3e Events:%i", m_statsEventMu, m_statsEventMu2, m_statsEventMuN);
 
 
-    for (CounterCollectionIt_t _collectionIt = m_counterCollections.begin(); _collectionIt != m_counterCollections.end(); ++_collectionIt) {
-      const std::string _counterCollectionName = _collectionIt->first;
+    for (CounterCollectionIt_t collectionIt = m_counterCollections.begin(); collectionIt != m_counterCollections.end(); ++collectionIt) {
+      const std::string counterCollectionName = collectionIt->first;
       // Finalise unique counters
       if (Config::config().getInt(kDoUniqueRates) == kTRUE) {
-        for (CounterMapIt_t _counterMapIt = _collectionIt->second.begin(); _counterMapIt != _collectionIt->second.end(); ++_counterMapIt) {
-          CounterBaseRates* _counter = static_cast<CounterBaseRates*>(_counterMapIt->second);
-          if (_counter->getStrDecoration(kDecType) == "UniqueHLT" || _counter->getStrDecoration(kDecType) == "UniqueL1") {
-            _counter->decorate(kDecLbLength, m_collectionLumiCollector[ _counterCollectionName ]->getTotalLumiBlockTime());
-            _counter->finalise();
+        for (CounterMapIt_t counterMapIt = collectionIt->second.begin(); counterMapIt != collectionIt->second.end(); ++counterMapIt) {
+          CounterBaseRates* counter = static_cast<CounterBaseRates*>(counterMapIt->second);
+          if (counter->getStrDecoration(kDecType) == "UniqueHLT" || counter->getStrDecoration(kDecType) == "UniqueL1") {
+            counter->decorate(kDecLbLength, m_collectionLumiCollector[ counterCollectionName ]->getTotalLumiBlockTime());
+            counter->finalise();
           }
         }
       }
       // Finalise all other counters (makes use of unique counters)
-      for (CounterMapIt_t _counterMapIt = _collectionIt->second.begin(); _counterMapIt != _collectionIt->second.end(); ++_counterMapIt) {
+      for (CounterMapIt_t counterMapIt = collectionIt->second.begin(); counterMapIt != collectionIt->second.end(); ++counterMapIt) {
         //Note we have added a negation here
-        CounterBaseRates* _counter = static_cast<CounterBaseRates*>(_counterMapIt->second);
-        if (!(_counter->getStrDecoration(kDecType) == "UniqueHLT" || _counter->getStrDecoration(kDecType) == "UniqueL1")) {
-          _counter->decorate(kDecLbLength, m_collectionLumiCollector[ _counterCollectionName ]->getTotalLumiBlockTime());
-          _counter->finalise();
+        CounterBaseRates* counter = static_cast<CounterBaseRates*>(counterMapIt->second);
+        if (!(counter->getStrDecoration(kDecType) == "UniqueHLT" || counter->getStrDecoration(kDecType) == "UniqueL1")) {
+          counter->decorate(kDecLbLength, m_collectionLumiCollector[ counterCollectionName ]->getTotalLumiBlockTime());
+          counter->finalise();
         }
       }
     }
@@ -890,79 +888,79 @@ namespace TrigCostRootAnalysis {
 
     if (Config::config().getInt(kOutputRatesGraph) == kTRUE) saveRateGraphs();
 
-    VariableOptionVector_t _toSavePlots = m_dummyCounter->getAllHistograms();
+    VariableOptionVector_t toSavePlots = m_dummyCounter->getAllHistograms();
 
-    std::vector<TableColumnFormatter> _toSaveTable;
+    std::vector<TableColumnFormatter> toSaveTable;
 
-    _toSaveTable.push_back(TableColumnFormatter("Active Time [s]",
+    toSaveTable.push_back(TableColumnFormatter("Active Time [s]",
                                                 "Integrated length of all lumi blocks which contributed events to this rates prediction.",
                                                 kVarEventsPassedNoPS /*ignored*/, kSavePerCall /*ignored*/, 2, kFormatOptionUseWallTime));
 
-    _toSaveTable.push_back(TableColumnFormatter("Group",
+    toSaveTable.push_back(TableColumnFormatter("Group",
                                                 "The group this chain belongs to.",
                                                 kDecRatesGroupName, kSavePerCall, 0, kFormatOptionUseStringDecoration));
 
-    _toSaveTable.push_back(TableColumnFormatter("Weighted PS Rate [Hz]",
+    toSaveTable.push_back(TableColumnFormatter("Weighted PS Rate [Hz]",
                                                 "Rate after applying all prescale(s) as weights.",
                                                 kVarEventsPassed, kSavePerCall, 4, kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(TableColumnFormatter("Weighted PS Rate Err [Hz]",
+    toSaveTable.push_back(TableColumnFormatter("Weighted PS Rate Err [Hz]",
                                                 "Error on rate after applying all prescale(s) as weights",
                                                 &tableFnRateGetWeightedRateErr, 4));
 
     if (Config::config().getInt(kDoUniqueRates) == kTRUE) {
-      _toSaveTable.push_back(TableColumnFormatter("Unique Rate [Hz]",
+      toSaveTable.push_back(TableColumnFormatter("Unique Rate [Hz]",
                                                   "Rate unique to this chain or combination of chains.",
                                                   kDecUniqueRate, kSavePerCall, 0, kFormatOptionUseStringDecoration));
 
-      _toSaveTable.push_back(TableColumnFormatter("Unique Fraction [%]",
+      toSaveTable.push_back(TableColumnFormatter("Unique Fraction [%]",
                                                   "Fraction of rate of this chain with no overlap with any other chain.",
                                                   kDecUniqueFraction, kSavePerCall, 0, kFormatOptionUseStringDecoration));
     }
 
-    _toSaveTable.push_back(TableColumnFormatter("Unbiased Pass [%]",
+    toSaveTable.push_back(TableColumnFormatter("Unbiased Pass [%]",
                                                 "The probability that this chain passes events selected online with zero trigger bias",
                                                 kVarUnbiasedPassed, kSavePerCall, kVarUnbiasedRun, kSavePerCall, 5, kFormatOptionToPercentage));
 
-    _toSaveTable.push_back(TableColumnFormatter("Prescale",
+    toSaveTable.push_back(TableColumnFormatter("Prescale",
                                                 "The prescale of this chain. Only displayed for simple combinations.",
                                                 kDecPrescaleStr, kSavePerCall, 0, kFormatOptionUseStringDecoration));
 
     if (Config::config().getInt(kRatesScaleByPS)) {
-      _toSaveTable.push_back(TableColumnFormatter("L1 Online Prescale",
+      toSaveTable.push_back(TableColumnFormatter("L1 Online Prescale",
                                                   "The online prescale of this chain at L1. Applied here as a weight.",
                                                   kDecPrescaleValOnlineL1, kSavePerCall, 0, kFormatOptionUseFloatDecoration));
     }
 
-    _toSaveTable.push_back(TableColumnFormatter("ID",
+    toSaveTable.push_back(TableColumnFormatter("ID",
                                                 "The CPTID or HLT Chain ID",
                                                 kDecID, kSavePerCall, 0, kFormatOptionUseIntDecoration));
 
-    _toSaveTable.push_back(TableColumnFormatter("Raw Active Events",
+    toSaveTable.push_back(TableColumnFormatter("Raw Active Events",
                                                 "Raw underlying statistics on the number events processed for this chain.",
                                                 kVarEventsRunRawStat, kSavePerCall, 0));
 
-    _toSaveTable.push_back(TableColumnFormatter("Raw Pass Events",
+    toSaveTable.push_back(TableColumnFormatter("Raw Pass Events",
                                                 "Raw underlying statistics on the number events passed by this chain.",
                                                 kVarEventsPassRawStat, kSavePerCall, 0));
 
-    _toSaveTable.push_back(TableColumnFormatter("Active Events",
+    toSaveTable.push_back(TableColumnFormatter("Active Events",
                                                 "Number of events in which the chain - or at least one chain in the combination - was executed.",
                                                 kVarEventsRun, kSavePerCall, 4));
 
-    _toSaveTable.push_back(TableColumnFormatter("Input Rate [Hz]",
+    toSaveTable.push_back(TableColumnFormatter("Input Rate [Hz]",
                                                 "Input rate to this chain or combination of chains. At L1 this will be the collision frequency for the bunch pattern.",
                                                 kVarEventsRun, kSavePerCall, 4, kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(TableColumnFormatter("Pass Fraction before PS [%]",
+    toSaveTable.push_back(TableColumnFormatter("Pass Fraction before PS [%]",
                                                 "Fraction of events which pass this trigger before prescale.",
                                                 kVarEventsPassedNoPS, kSavePerCall, kVarEventsRun, kSavePerCall, 4, kFormatOptionToPercentage));
 
-    _toSaveTable.push_back(TableColumnFormatter("Pass Fraction after PS [%]",
+    toSaveTable.push_back(TableColumnFormatter("Pass Fraction after PS [%]",
                                                 "Fraction of events which pass this trigger after prescale.",
                                                 kVarEventsPassed, kSavePerCall, kVarEventsRun, kSavePerCall, 4, kFormatOptionToPercentage));
 
-    _toSaveTable.push_back(TableColumnFormatter("Pass Weighted PS",
+    toSaveTable.push_back(TableColumnFormatter("Pass Weighted PS",
                                                 "Number of events this chain or combination passed after applying prescales as weighting factors.",
                                                 kVarEventsPassed, kSavePerCall, 4));
 
@@ -972,43 +970,41 @@ namespace TrigCostRootAnalysis {
     m_filterOutput = kTRUE;
     setName("Rate_Upgrade_ChainL1");
     filterOutputOnStrDecoration(kDecType, "L1");
-    sharedTableOutputRoutine(_toSaveTable);
-    sharedHistogramOutputRoutine(_toSavePlots);
+    sharedTableOutputRoutine(toSaveTable);
+    sharedHistogramOutputRoutine(toSavePlots);
 
     setName("Rate_Upgrade_ChainL2");
     filterOutputOnStrDecoration(kDecType, "L2");
-    sharedTableOutputRoutine(_toSaveTable);
-    sharedHistogramOutputRoutine(_toSavePlots);
+    sharedTableOutputRoutine(toSaveTable);
+    sharedHistogramOutputRoutine(toSavePlots);
 
     setName("Rate_Upgrade_ChainHLT");
     filterOutputOnStrDecoration(kDecType, "HLT");
-    sharedTableOutputRoutine(_toSaveTable);
-    sharedHistogramOutputRoutine(_toSavePlots);
+    sharedTableOutputRoutine(toSaveTable);
+    sharedHistogramOutputRoutine(toSavePlots);
 
     // Now do the GROUP - note we can remove the "Group" option from the table.
-    //_toSaveTable.erase( _toSaveTable.begin() + 1 );
+    //toSaveTable.erase( toSaveTable.begin() + 1 );
     setName("Rate_Upgrade_Group");
     filterOutputOnStrDecoration(kDecType, "Union");
-    sharedTableOutputRoutine(_toSaveTable);
-    sharedHistogramOutputRoutine(_toSavePlots);
+    sharedTableOutputRoutine(toSaveTable);
+    sharedHistogramOutputRoutine(toSavePlots);
 
     setName("Rate_Upgrade_Combination");
     filterOutputOnStrDecoration(kDecType, "Intersection");
-    sharedTableOutputRoutine(_toSaveTable);
-    sharedHistogramOutputRoutine(_toSavePlots);
+    sharedTableOutputRoutine(toSaveTable);
+    sharedHistogramOutputRoutine(toSavePlots);
   }
 
   /**
    * Construct new counter of correct derived type, pass back as base type.
    * This function must be implemented by all derived monitor types.
-   * @see MonitorBase::addCounter( const std::string &_name, Int_t _ID )
-   * @param _name Cost reference to name of counter.
-   * @param _ID Reference to ID number of counter.
+   * @see MonitorBase::addCounter( const std::string &name, Int_t ID )
+   * @param name Cost reference to name of counter.
+   * @param ID Reference to ID number of counter.
    * @returns Base class pointer to new counter object of correct serived type.
    */
-  CounterBase* MonitorRatesUpgrade::newCounter(const std::string& _name, Int_t _ID) {
-    UNUSED(_name);
-    UNUSED(_ID);
+  CounterBase* MonitorRatesUpgrade::newCounter(const std::string& /*name*/, Int_t /*ID*/) {
     Error("MonitorRatesUpgrade::newCounter", "For Rates counters - please mint them yourself as the derived type is important (Chain, Union, Intersection etc.)");
     return 0;
   }
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorSequence.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorSequence.cxx
index ce423f30dd796c183000b7096116757ebbe2394b..5ed277313e9bf7d9a38bcf5c5be2c43065bdc6c7 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorSequence.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorSequence.cxx
@@ -25,52 +25,52 @@ namespace TrigCostRootAnalysis {
   /**
    * Monitor constructor. Sets name and calls base constructor.
    */
-  MonitorSequence::MonitorSequence(const TrigCostData* _costData) : MonitorBase(_costData, "Sequence") {
+  MonitorSequence::MonitorSequence(const TrigCostData* costData) : MonitorBase(costData, "Sequence") {
     m_dummyCounter = newCounter(Config::config().getStr(kDummyString), INT_MIN);
   }
 
   /**
    * Process new event for this monitor.
    * Each sequence in the event is looped over and recorded in its counter.
-   * @param _weight The event weight.
+   * @param weight The event weight.
    */
-  void MonitorSequence::newEvent(Float_t _weight) {
+  void MonitorSequence::newEvent(Float_t weight) {
     m_timer.start();
     if (Config::config().debug()) Info("MonitorSequence::newEvent", "*** Processing Sequences ***");
 
     //Now loop over the counter collections;
-    for (CounterMapSetIt_t _cmsIt = m_collectionsToProcess.begin(); _cmsIt != m_collectionsToProcess.end(); ++_cmsIt) {
-      CounterMap_t* _counterMap = *_cmsIt;
+    for (CounterMapSetIt_t cmsIt = m_collectionsToProcess.begin(); cmsIt != m_collectionsToProcess.end(); ++cmsIt) {
+      CounterMap_t* counterMap = *cmsIt;
 
       // Reset global static counters, this only needs to be called on one event
       startEvent();
 
       // Loop over all sequences.
-      for (UInt_t _s = 0; _s < m_costData->getNSequences(); ++_s) {
+      for (UInt_t s = 0; s < m_costData->getNSequences(); ++s) {
         // Get the name of the chain this sequence instance is in (Supplying L2 or EF helps, but is not needed)
-        Int_t _chainID = m_costData->getSequenceChannelCounter(_s);
-        const std::string _chainName =
-          TrigConfInterface::getHLTNameFromChainID(_chainID, m_costData->getSequenceLevel(_s));
+        Int_t chainID = m_costData->getSequenceChannelCounter(s);
+        const std::string chainName =
+          TrigConfInterface::getHLTNameFromChainID(chainID, m_costData->getSequenceLevel(s));
         // Are we running over this chain?
-        if (checkPatternNameMonitor(_chainName, m_invertFilter, m_costData->getSeqIsRerun(_s)) == kFALSE) continue;
+        if (checkPatternNameMonitor(chainName, m_invertFilter, m_costData->getSeqIsRerun(s)) == kFALSE) continue;
 
         // Get the name of the sequence
-        Int_t _seqIndex = m_costData->getSequenceIndex(_s);
-        const std::string _seqName = TrigConfInterface::getHLTSeqNameFromIndex(_seqIndex);
+        Int_t seqIndex = m_costData->getSequenceIndex(s);
+        const std::string seqName = TrigConfInterface::getHLTSeqNameFromIndex(seqIndex);
 
         // Did we fail to fetch the config?
-        if (_chainName == Config::config().getStr(kBlankString) || _seqName == Config::config().getStr(kBlankString)) {
+        if (chainName == Config::config().getStr(kBlankString) || seqName == Config::config().getStr(kBlankString)) {
           Warning("MonitorSequence::newEvent", "Skipping Chain ID %i (%s). Seq ID %i (%s)."
-                                               " Cannot get Chain or Seq name from current configuration.", _chainID,
-                  _chainName.c_str(), _seqIndex, _seqName.c_str());
+                                               " Cannot get Chain or Seq name from current configuration.", chainID,
+                  chainName.c_str(), seqIndex, seqName.c_str());
           continue;
         }
 
-        CounterBase* _counter = getCounter(_counterMap, _seqName, _seqIndex);
-        _counter->processEventCounter(_s, 0, _weight);
+        CounterBase* counter = getCounter(counterMap, seqName, seqIndex);
+        counter->processEventCounter(s, 0, weight);
       }
 
-      endEvent(_weight);
+      endEvent(weight);
     }
     m_timer.stop();
   }
@@ -80,8 +80,8 @@ namespace TrigCostRootAnalysis {
    * Note these are currently hard-coded. We may want to make them configurable
    * @return If this monitor should be active for a given mode.
    */
-  Bool_t MonitorSequence::getIfActive(ConfKey_t _mode) {
-    switch (_mode) {
+  Bool_t MonitorSequence::getIfActive(ConfKey_t mode) {
+    switch (mode) {
     case kDoAllSummary:       return kTRUE;
 
     case kDoKeySummary:       return kTRUE;
@@ -89,7 +89,7 @@ namespace TrigCostRootAnalysis {
     case kDoLumiBlockSummary: return kTRUE;
 
     default: Error("MonitorSequence::getIfActive", "An invalid summary mode was provided (key %s)",
-                   Config::config().getName(_mode).c_str());
+                   Config::config().getName(mode).c_str());
     }
     return kFALSE;
   }
@@ -98,101 +98,101 @@ namespace TrigCostRootAnalysis {
    * Save the results from this monitors counters as specified in the configuration.
    */
   void MonitorSequence::saveOutput() {
-    VariableOptionVector_t _toSavePlots;
+    VariableOptionVector_t toSavePlots;
 
     m_filterOutput = kTRUE; // Apply user name filter to output
     //TODO filter on chain name, not seq name here
-    sharedHistogramOutputRoutine(_toSavePlots);
+    sharedHistogramOutputRoutine(toSavePlots);
 
-    std::vector<TableColumnFormatter> _toSaveTable;
-    const std::string _slowText = "Calls > " + intToString(Config::config().getInt(kSlowThreshold)) + " ms";
+    std::vector<TableColumnFormatter> toSaveTable;
+    const std::string slowText = "Calls > " + intToString(Config::config().getInt(kSlowThreshold)) + " ms";
 
-    _toSaveTable.push_back(TableColumnFormatter("Raw Active Events",
+    toSaveTable.push_back(TableColumnFormatter("Raw Active Events",
                                                 "Raw underlying statistics on how many events in which this sequence was executed.",
                                                 kVarCalls, kSavePerEvent, 0, kFormatOptionUseEntries));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Active Events",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Active Events",
                                                              "How many events in which this sequence was executed.",
                                                              kVarEventsActive, kSavePerEvent, 0));
 
-    _toSaveTable.push_back(TableColumnFormatter("Calls/Event",
+    toSaveTable.push_back(TableColumnFormatter("Calls/Event",
                                                 "Total number of calls made to this sequence.",
                                                 kVarCalls, kSavePerEvent, kVarEventsActive, kSavePerEvent, 2));
 
-    _toSaveTable.push_back(TableColumnFormatter(_slowText,
+    toSaveTable.push_back(TableColumnFormatter(slowText,
                                                 "Number of sequence executions which were particularly slow.",
                                                 kVarCallsSlow, kSavePerEvent, 0));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Event Rate [Hz]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Event Rate [Hz]",
                                                              "Rate in this run range of events with at least one execution of this algorithm.",
                                                              kVarEventsActive, kSavePerEvent, 2,
                                                              kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(TableColumnFormatter("Call Rate [Hz]",
+    toSaveTable.push_back(TableColumnFormatter("Call Rate [Hz]",
                                                 "Rate in this run range of calls to this sequence.",
                                                 kVarCalls, kSavePerEvent, 2, kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(TableColumnFormatter("Seq. Total Time [s]",
+    toSaveTable.push_back(TableColumnFormatter("Seq. Total Time [s]",
                                                 "Total time for this sequence in this range - CPU + ROS.",
                                                 kVarTime, kSavePerEvent, 2, kFormatOptionMiliSecToSec));
 
-    _toSaveTable.push_back(TableColumnFormatter("Seq. Total Time [%]",
+    toSaveTable.push_back(TableColumnFormatter("Seq. Total Time [%]",
                                                 "Total time for this sequence (CPU+ROS) as a percentage of all sequence executions in this run range.",
                                                 &tableFnChainGetTotalFracTime, 2)); // We can re-use the Chain fn here
                                                                                     // as vars in both called "time"
 
-    _toSaveTable.push_back(TableColumnFormatter("Seq. Total Time/Call [ms]",
+    toSaveTable.push_back(TableColumnFormatter("Seq. Total Time/Call [ms]",
                                                 "Average execution time per sequence call in this run range.",
                                                 kVarTime, kSavePerCall, kVarCalls, kSavePerEvent, 2));
 
-    _toSaveTable.push_back(TableColumnFormatter("Seq. Total Time/Event [ms]",
+    toSaveTable.push_back(TableColumnFormatter("Seq. Total Time/Event [ms]",
                                                 "Average execution time (CPU+ROS) per event for events with at least one execution in this run range.",
                                                 kVarTime, kSavePerEvent, kVarEventsActive, kSavePerEvent, 2));
 
-    _toSaveTable.push_back(TableColumnFormatter("Run Agls/Event",
+    toSaveTable.push_back(TableColumnFormatter("Run Agls/Event",
                                                 "Total number of algorithms executed by this sequence.",
                                                 kVarAlgCalls, kSavePerEvent, kVarEventsActive, kSavePerEvent, 2));
 
-    _toSaveTable.push_back(TableColumnFormatter("Cached Algs/Event",
+    toSaveTable.push_back(TableColumnFormatter("Cached Algs/Event",
                                                 "Total number of algorithms which supplied a cached result to this sequence.",
                                                 kVarAlgCaches, kSavePerEvent, kVarEventsActive, kSavePerEvent, 2));
 
-    _toSaveTable.push_back(TableColumnFormatter("ROS Time/Event [ms]",
+    toSaveTable.push_back(TableColumnFormatter("ROS Time/Event [ms]",
                                                 "Average time waiting for ROS data per event for  events with at least one execution in this run range.",
                                                 kVarROSTime, kSavePerEvent, kVarEventsActive, kSavePerEvent, 2));
 
-    _toSaveTable.push_back(TableColumnFormatter("Data Request Rate [Hz]",
+    toSaveTable.push_back(TableColumnFormatter("Data Request Rate [Hz]",
                                                 "Rate of calls to the ROS from this algorithm in this run range.",
                                                 kVarROSCalls, kSavePerEvent, 2, kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(TableColumnFormatter("Cached ROB Rate [Hz]",
+    toSaveTable.push_back(TableColumnFormatter("Cached ROB Rate [Hz]",
                                                 "Rate of cached ROB fetches from this algorithm in this run range.",
                                                 kVarROBReqs, kSavePerEvent, 2, kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(TableColumnFormatter("Cached ROB Rate [kB/s]",
+    toSaveTable.push_back(TableColumnFormatter("Cached ROB Rate [kB/s]",
                                                 "Average size of cached ROB data fetches for this algorithm in this run range.",
                                                 kVarROBReqSize, kSavePerEvent, 2, kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(TableColumnFormatter("Retrieved ROB Rate [Hz]",
+    toSaveTable.push_back(TableColumnFormatter("Retrieved ROB Rate [Hz]",
                                                 "Rate of ROB retrievals from this algorithm in this run range.",
                                                 kVarROBRets, kSavePerEvent, 2, kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(TableColumnFormatter("Retrieved ROB Rate [kB/s]",
+    toSaveTable.push_back(TableColumnFormatter("Retrieved ROB Rate [kB/s]",
                                                 "Average size of retrieved ROB data fetches for this algorithm in this run range.",
                                                 kVarROBRetSize, kSavePerEvent, 2, kFormatOptionNormaliseWallTime));
 
-    sharedTableOutputRoutine(_toSaveTable);
+    sharedTableOutputRoutine(toSaveTable);
   }
 
   /**
    * Construct new counter of correct derived type, pass back as base type.
    * This function must be implemented by all derived monitor types.
-   * @see MonitorBase::addCounter( const std::string &_name, Int_t _ID )
-   * @param _name Cost reference to name of counter.
-   * @param _ID Reference to ID number of counter.
+   * @see MonitorBase::addCounter( const std::string &_name, Int_t ID )
+   * @param name Cost reference to name of counter.
+   * @param ID Reference to ID number of counter.
    * @returns Base class pointer to new counter object of correct serived type.
    */
-  CounterBase* MonitorSequence::newCounter(const std::string& _name, Int_t _ID) {
-    return new CounterSequence(m_costData, _name, _ID, m_detailLevel, (MonitorBase*) this);
+  CounterBase* MonitorSequence::newCounter(const std::string& name, Int_t ID) {
+    return new CounterSequence(m_costData, name, ID, m_detailLevel, (MonitorBase*) this);
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorSliceCPU.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorSliceCPU.cxx
index 30b3d91db024976ca6ca367121b624ba0f2e0605..bc8bfb74a267b8df362523aeda04895a80602d35 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorSliceCPU.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorSliceCPU.cxx
@@ -25,7 +25,7 @@ namespace TrigCostRootAnalysis {
   /**
    * Monitor constructor. Sets name and calls base constructor.
    */
-  MonitorSliceCPU::MonitorSliceCPU(const TrigCostData* _costData) : MonitorBase(_costData, "SliceCPU") {
+  MonitorSliceCPU::MonitorSliceCPU(const TrigCostData* costData) : MonitorBase(costData, "SliceCPU") {
     m_dummyCounter = newCounter(Config::config().getStr(kDummyString), INT_MIN);
     allowSameIDCounters();
   }
@@ -33,50 +33,50 @@ namespace TrigCostRootAnalysis {
   /**
    * Process new event for this monitor.
    * For each alg, get its chain and the chain's first group. Use this as the counter type
-   * @param _weight The event weight.
+   * @param weight The event weight.
    */
-  void MonitorSliceCPU::newEvent(Float_t _weight) {
+  void MonitorSliceCPU::newEvent(Float_t weight) {
     m_timer.start();
     if (Config::config().debug()) Info("MonitorSliceCPU::newEvent", "*** Processing Algorithms ***");
 
-    for (CounterMapSetIt_t _cmsIt = m_collectionsToProcess.begin(); _cmsIt != m_collectionsToProcess.end(); ++_cmsIt) {
-      CounterMap_t* _counterMap = *_cmsIt;
+    for (CounterMapSetIt_t cmsIt = m_collectionsToProcess.begin(); cmsIt != m_collectionsToProcess.end(); ++cmsIt) {
+      CounterMap_t* counterMap = *cmsIt;
 
       startEvent();
 
       // Loop over all chains.
-      for (UInt_t _c = 0; _c < m_costData->getNChains(); ++_c) {
+      for (UInt_t c = 0; c < m_costData->getNChains(); ++c) {
         // Get the name of the chain (Supplying L2 or EF helps, but is not needed)
-        Int_t _chainID = m_costData->getChainID(_c);
-        const std::string _chainName =
-          TrigConfInterface::getHLTNameFromChainID(_chainID, m_costData->getChainLevel(_c));
+        Int_t chainID = m_costData->getChainID(c);
+        const std::string chainName =
+          TrigConfInterface::getHLTNameFromChainID(chainID, m_costData->getChainLevel(c));
 
         // Did we fail?
-        if (_chainName == Config::config().getStr(kBlankString)) {
+        if (chainName == Config::config().getStr(kBlankString)) {
           Warning("MonitorChain::newEvent", "Skipping Chain ID %i. Cannot get name from current configuration.",
-                  _chainID);
+                  chainID);
           continue;
         }
 
         // Are we running over this chain?
-        if (checkPatternNameMonitor(_chainName, m_invertFilter,
-                                    m_costData->getIsChainResurrected(_c)) == kFALSE) continue;
+        if (checkPatternNameMonitor(chainName, m_invertFilter,
+                                    m_costData->getIsChainResurrected(c)) == kFALSE) continue;
 
-        std::string _chainGroup;
-        if (TrigConfInterface::getNHLTGroupNamesFromChainID(_chainID) > 0) {
-          _chainGroup = TrigConfInterface::getHLTGroupNameFromChainID(_chainID, 0);
+        std::string chainGroup;
+        if (TrigConfInterface::getNHLTGroupNamesFromChainID(chainID) > 0) {
+          chainGroup = TrigConfInterface::getHLTGroupNameFromChainID(chainID, 0);
         } else {
-          _chainGroup = Config::config().getStr(kUnknownString);
+          chainGroup = Config::config().getStr(kUnknownString);
           if (Config::config().getDisplayMsg(kMsgNoGroup) == kTRUE) Warning("MonitorSliceCPU::newEvent",
                                                                             "Chain %s (%i) has no group",
-                                                                            _chainName.c_str(), _chainID);
+                                                                            chainName.c_str(), chainID);
         }
 
-        CounterBase* _counter = getCounter(_counterMap, _chainGroup, 0);
-        _counter->processEventCounter(_c, 0, _weight);
+        CounterBase* counter = getCounter(counterMap, chainGroup, 0);
+        counter->processEventCounter(c, 0, weight);
       }
 
-      endEvent(_weight);
+      endEvent(weight);
     }
 
     m_timer.stop();
@@ -87,8 +87,8 @@ namespace TrigCostRootAnalysis {
    * Note these are currently hard-coded. We may want to make them configurable
    * @return If this monitor should be active for a given mode.
    */
-  Bool_t MonitorSliceCPU::getIfActive(ConfKey_t _mode) {
-    switch (_mode) {
+  Bool_t MonitorSliceCPU::getIfActive(ConfKey_t mode) {
+    switch (mode) {
     case kDoAllSummary:       return kTRUE;
 
     case kDoKeySummary:       return kTRUE;
@@ -96,7 +96,7 @@ namespace TrigCostRootAnalysis {
     case kDoLumiBlockSummary: return kTRUE;
 
     default: Error("MonitorSliceCPU::getIfActive", "An invalid summary mode was provided (key %s)",
-                   Config::config().getName(_mode).c_str());
+                   Config::config().getName(mode).c_str());
     }
     return kFALSE;
   }
@@ -107,47 +107,47 @@ namespace TrigCostRootAnalysis {
   void MonitorSliceCPU::saveOutput() {
     m_filterOutput = kTRUE; // Apply any user-specified name filter to output
 
-    VariableOptionVector_t _toSavePlots = m_dummyCounter->getAllHistograms();
-    std::vector<TableColumnFormatter> _toSaveTable;
+    VariableOptionVector_t toSavePlots = m_dummyCounter->getAllHistograms();
+    std::vector<TableColumnFormatter> toSaveTable;
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Event Rate [Hz]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Event Rate [Hz]",
                                                              "Rate in this run range of events with at least one execution of this algorithm.",
                                                              kVarEventsActive, kSavePerEvent, 2,
                                                              kFormatOptionNormaliseWallTime));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Group Total Time [s]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Group Total Time [s]",
                                                              "Total time for a chain execution in this group.",
                                                              kVarTime, kSavePerCall, 2, kFormatOptionMiliSecToSec));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Group Total Time Frac. Err. [%]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Group Total Time Frac. Err. [%]",
                                                              "Fractional statistical uncertainty on total chain time.",
                                                              &tableFnChainGetTotalTimeErr, 3));
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Group Total Time [%]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Group Total Time [%]",
                                                              "Total time for chain execution in this group as a percentage of all algorithm executions in this run range.",
                                                              &tableFnChainGetTotalFracTime, 2)); // We can re-use the
                                                                                                  // Chain fn here as
                                                                                                  // vars in both called
                                                                                                  // "time"
 
-    _toSaveTable.push_back(MonitorBase::TableColumnFormatter("Group Total Time/Event [ms]",
+    toSaveTable.push_back(MonitorBase::TableColumnFormatter("Group Total Time/Event [ms]",
                                                              "Average execution time for chains in this group per event for events with at least one executed chain in this run range.",
                                                              kVarTime, kSavePerEvent, kVarEventsActive, kSavePerEvent,
                                                              2));
 
-    sharedTableOutputRoutine(_toSaveTable);
-    sharedHistogramOutputRoutine(_toSavePlots);
+    sharedTableOutputRoutine(toSaveTable);
+    sharedHistogramOutputRoutine(toSavePlots);
   }
 
   /**
    * Construct new counter of correct derived type, pass back as base type.
    * This function must be implemented by all derived monitor types.
    * @see MonitorBase::addCounter( const std::string &_name, Int_t _ID )
-   * @param _name Cost reference to name of counter.
-   * @param _ID Reference to ID number of counter.
+   * @param name Cost reference to name of counter.
+   * @param ID Reference to ID number of counter.
    * @returns Base class pointer to new counter object of correct serived type.
    */
-  CounterBase* MonitorSliceCPU::newCounter(const std::string& _name, Int_t _ID) {
-    return new CounterSliceCPU(m_costData, _name, _ID, m_detailLevel, (MonitorBase*) this);
+  CounterBase* MonitorSliceCPU::newCounter(const std::string& name, Int_t ID) {
+    return new CounterSliceCPU(m_costData, name, ID, m_detailLevel, (MonitorBase*) this);
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/ProcessEvent.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/ProcessEvent.cxx
index 094978ba9a7921b39ffa5a94e49627dfd5fbe3e1..309a86b48470d1c0f509a4af9595b71a8c0a18b7 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/ProcessEvent.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/ProcessEvent.cxx
@@ -45,8 +45,8 @@ namespace TrigCostRootAnalysis {
   /**
    * ProcessEvent constructor. Not much here.
    */
-  ProcessEvent::ProcessEvent(const TrigCostData* _costData, UInt_t _level, const std::string& _name)
-    : m_costData(_costData), m_level(_level), m_name(_name),
+  ProcessEvent::ProcessEvent(const TrigCostData* costData, UInt_t level, const std::string& name)
+    : m_costData(costData), m_level(level), m_name(name),
     m_runNumber(0),
     m_invertHighMuRunVeto(kFALSE),
     m_threadTimer("Event", "Thread-Spawning"),
@@ -69,10 +69,10 @@ namespace TrigCostRootAnalysis {
    */
   ProcessEvent::~ProcessEvent() {
     // Good housekeeping
-    monitorIt_t _it = m_monitorCollections.begin();
+    monitorIt_t it = m_monitorCollections.begin();
 
-    for (; _it != m_monitorCollections.end(); ++_it) {
-      delete _it->second;
+    for (; it != m_monitorCollections.end(); ++it) {
+      delete it->second;
     }
     m_monitorCollections.clear();
   }
@@ -81,120 +81,120 @@ namespace TrigCostRootAnalysis {
    * Used to enable or disable individual monitoring modes. All start out disabled.
    * Modes which were enabled but are subsequently disabled are deleted and their memory freed.
    * @see MonitorType_t
-   * @param _type Enum of which monitor type to act on. Can be the wild-card kAllMonitors
-   * @param _isActive Boolean which specifies if monitor is to be enabled or disabled.
+   * @param type Enum of which monitor type to act on. Can be the wild-card kAllMonitors
+   * @param isActive Boolean which specifies if monitor is to be enabled or disabled.
    */
-  void ProcessEvent::setMonitoringMode(ConfKey_t _type, Bool_t _isActive) {
-    assert(_type > kMonitorBegin && _type <= kDoAllMonitor);
+  void ProcessEvent::setMonitoringMode(ConfKey_t type, Bool_t isActive) {
+    assert(type > kMonitorBegin && type <= kDoAllMonitor);
 
     // If setting all, then recurs this function
-    if (_type == kDoAllMonitor) {
-      for (UInt_t _t = kMonitorBegin + 1; _t < kDoAllMonitor; ++_t) { // Avoid hitting kAllMonitors again
-        setMonitoringMode((ConfKey_t) _t, _isActive);
+    if (type == kDoAllMonitor) {
+      for (UInt_t t = kMonitorBegin + 1; t < kDoAllMonitor; ++t) { // Avoid hitting kAllMonitors again
+        setMonitoringMode((ConfKey_t) t, isActive);
       }
       return;
     }
 
     // Find this entry in the map (may not be present)
     // This must be done by hand as object need to be of correct derived type
-    monitorNonConstIt_t _it = m_monitorCollections.find(_type);
-    if (_isActive == false) {
+    monitorNonConstIt_t it = m_monitorCollections.find(type);
+    if (isActive == false) {
       // If disabling, check if present and delete if found
-      if (_it != m_monitorCollections.end()) {
-        delete _it->second;
-        _it->second = 0;
-        m_monitorCollections.erase(_it);
+      if (it != m_monitorCollections.end()) {
+        delete it->second;
+        it->second = 0;
+        m_monitorCollections.erase(it);
         Info("ProcessEvent::setMonitoringMode", "Disabling monitoring Level:%s Mode:%s",
-             getLevelStr().c_str(), Config::config().getName(_type).c_str());
+             getLevelStr().c_str(), Config::config().getName(type).c_str());
       }
     } else {
       // If enabling, check if present and add if not
-      if (_type == kDoRatesMonitor
+      if (type == kDoRatesMonitor
           && (getLevelStr() == Config::config().getStr(kL2String)
               || getLevelStr() == Config::config().getStr(kEFString))) {
         Warning("ProcessEvent::setMonitoringMode", "Rates monitoring not yet implimented for \"old style\" L2 or EF");
         return;
       }
-      if (_it == m_monitorCollections.end()) {
-        MonitorBase* _costMonitor;
+      if (it == m_monitorCollections.end()) {
+        MonitorBase* costMonitor;
         // Create object of appropriate derived type
-        switch (_type) {
+        switch (type) {
         case kDoChainMonitor:
-          _costMonitor = new MonitorChain(m_costData);
+          costMonitor = new MonitorChain(m_costData);
           break;
 
         case kDoChainAlgorithmMonitor:
-          _costMonitor = new MonitorAlgorithmChain(m_costData);
+          costMonitor = new MonitorAlgorithmChain(m_costData);
           break;
 
         case kDoSequenceMonitor:
-          _costMonitor = new MonitorSequence(m_costData);
+          costMonitor = new MonitorSequence(m_costData);
           break;
 
         case kDoSequenceAlgorithmMonitor:
-          _costMonitor = new MonitorAlgorithmSequence(m_costData);
+          costMonitor = new MonitorAlgorithmSequence(m_costData);
           break;
 
         case kDoAlgorithmMonitor:
-          _costMonitor = new MonitorAlgorithm(m_costData);
+          costMonitor = new MonitorAlgorithm(m_costData);
           break;
 
         case kDoAlgorithmClassMonitor:
-          _costMonitor = new MonitorAlgorithmClass(m_costData);
+          costMonitor = new MonitorAlgorithmClass(m_costData);
           break;
 
         case kDoROSMonitor:
-          _costMonitor = new MonitorROS(m_costData);
+          costMonitor = new MonitorROS(m_costData);
           break;
 
         case kDoROBINMonitor:
-          _costMonitor = new MonitorROBIN(m_costData);
+          costMonitor = new MonitorROBIN(m_costData);
           break;
 
         case kDoROSAlgorithmMonitor:
-          _costMonitor = new MonitorROSAlgorithm(m_costData);
+          costMonitor = new MonitorROSAlgorithm(m_costData);
           break;
 
         case kDoROSChainMonitor:
-          _costMonitor = new MonitorROSChain(m_costData);
+          costMonitor = new MonitorROSChain(m_costData);
           break;
 
         case kDoFullEventMonitor:
-          _costMonitor = new MonitorFullEvent(m_costData);
+          costMonitor = new MonitorFullEvent(m_costData);
           break;
 
         case kDoROIMonitor:
-          _costMonitor = new MonitorROI(m_costData);
+          costMonitor = new MonitorROI(m_costData);
           break;
 
         case kDoGlobalsMonitor:
-          _costMonitor = new MonitorGlobals(m_costData);
+          costMonitor = new MonitorGlobals(m_costData);
           break;
 
         case kDoEventProfileMonitor:
-          _costMonitor = new MonitorEventProfile(m_costData);
+          costMonitor = new MonitorEventProfile(m_costData);
           break;
 
         case kDoRatesMonitor:
-          _costMonitor = new MonitorRates(m_costData);
+          costMonitor = new MonitorRates(m_costData);
           break;
 
         case kDoRatesUpgradeMonitor:
-          _costMonitor = new MonitorRatesUpgrade(m_costData);
+          costMonitor = new MonitorRatesUpgrade(m_costData);
           break;
 
         case kDoSliceCPUMonitor:
-          _costMonitor = new MonitorSliceCPU(m_costData);
+          costMonitor = new MonitorSliceCPU(m_costData);
           break;
 
         default:
-          Error("ProcessEvent::setMonitoringMode", "Unknown or unimplemented Monitor Type with enum:%i", _type);
+          Error("ProcessEvent::setMonitoringMode", "Unknown or unimplemented Monitor Type with enum:%i", type);
           return;
         }
         Info("ProcessEvent::setMonitoringMode", "Enabling monitoring Level:%s Mode:%s",
-             getLevelStr().c_str(), Config::config().getName(_type).c_str());
-        _costMonitor->setLevel(getLevel());
-        m_monitorCollections.insert(monitorPair_t(_type, _costMonitor));
+             getLevelStr().c_str(), Config::config().getName(type).c_str());
+        costMonitor->setLevel(getLevel());
+        m_monitorCollections.insert(monitorPair_t(type, costMonitor));
       }
     }
   }
@@ -204,21 +204,21 @@ namespace TrigCostRootAnalysis {
    * @param The monitor to execute in this thread
    * @param The weight to pass it
    */
-  void ProcessEvent::newEventThreaded(MonitorBase* _monitor, Float_t _weight) {
-    _monitor->newEvent(_weight);
+  void ProcessEvent::newEventThreaded(MonitorBase* monitor, Float_t weight) {
+    monitor->newEvent(weight);
   }
 
   /**
    * Call once per event, passing the cost data and the event weight. This information is fed down in turn to all
    * registered and active monitors such that they may tabulate the event details.
    * We also apply here and enhanced bias or energy extrapolation weights which affect the whole event
-   * @param _costData Const reference to cost data object.
-   * @param _weight Event weight.
+   * @param costData Const reference to cost data object.
+   * @param weight Event weight.
    * @return kTRUE if at least one monitor reported as having executed on the event.
    */
-  Bool_t ProcessEvent::newEvent(Float_t _weight) {
+  Bool_t ProcessEvent::newEvent(Float_t weight) {
     //Check for weights from energy extrapolation
-    _weight *= EnergyExtrapolation::energyExtrapolation().getEventWeight(m_costData);
+    weight *= EnergyExtrapolation::energyExtrapolation().getEventWeight(m_costData);
 
     if (m_runNumber == 0) {
       m_runNumber = Config::config().getInt(kRunNumber);
@@ -226,11 +226,11 @@ namespace TrigCostRootAnalysis {
     }
     // Special behaviour for the 2016 high mu run
     if (m_runNumber == 310574) {
-      const UInt_t _bcid = m_costData->getBunchCrossingId();
-      const Bool_t _isolatedBunch = (_bcid == 11 || _bcid == 1247 || _bcid == 2430);
-      if (m_invertHighMuRunVeto == kFALSE && _isolatedBunch == kTRUE) return false;
+      const UInt_t bcid = m_costData->getBunchCrossingId();
+      const Bool_t isolatedBunch = (bcid == 11 || bcid == 1247 || bcid == 2430);
+      if (m_invertHighMuRunVeto == kFALSE && isolatedBunch == kTRUE) return false;
       // We normally veto on these isolated bunches
-      if (m_invertHighMuRunVeto == kTRUE && _isolatedBunch == kFALSE) return false;
+      if (m_invertHighMuRunVeto == kTRUE && isolatedBunch == kFALSE) return false;
       // Or if inverted, we only keep the isolated bunches
     }
     // Special BCID filter
@@ -243,12 +243,12 @@ namespace TrigCostRootAnalysis {
 
     //Check for enhanced bias weights.
     if (Config::config().getInt(kDoEBWeighting) == kTRUE) {
-      _weight *= TrigXMLService::trigXMLService().getEventWeight(m_costData->getEventNumber(),
+      weight *= TrigXMLService::trigXMLService().getEventWeight(m_costData->getEventNumber(),
                                                                  m_costData->getLumi(), getPass());
     }
 
     // For each active monitoring type, process event
-    if (isZero(_weight) == kTRUE) return false;
+    if (isZero(weight) == kTRUE) return false;
 
 
     // HACK!
@@ -256,15 +256,15 @@ namespace TrigCostRootAnalysis {
 
     // Do any monitors want to take this event?
     m_takeEventTimer.start();
-    Int_t _takeEvent = kFALSE;
-    for (monitorIt_t _it = m_monitorCollections.begin(); _it != m_monitorCollections.end(); ++_it) {
-      _takeEvent += _it->second->getNCollectionsToProcess();
+    Int_t takeEvent = kFALSE;
+    for (monitorIt_t it = m_monitorCollections.begin(); it != m_monitorCollections.end(); ++it) {
+      takeEvent += it->second->getNCollectionsToProcess();
       // Note we cannot break this loop early, all monitors need to get this call to prepare their list of collections
       // to process
       // and perform bookkeeping
     }
     m_takeEventTimer.stop();
-    if (_takeEvent == 0) return kFALSE;
+    if (takeEvent == 0) return kFALSE;
 
     // Do buffering
     if (m_ratesOnly == kFALSE) {
@@ -287,64 +287,64 @@ namespace TrigCostRootAnalysis {
     // physics chain (NOT rerun).
     // Otherwise rerun on the costmon chain will mess up the prediction
     if (m_isCPUPrediction) {
-      UInt_t _chainPasses = 0;
-      for (UInt_t _c = 0; _c < m_costData->getNChains(); ++_c) {
-        const std::string _chainName = TrigConfInterface::getHLTNameFromChainID(m_costData->getChainID(
-                                                                                  _c), m_costData->getChainLevel(_c));
-        if (Config::config().getVecMatches(kPatternsMonitor, _chainName) == kTRUE) continue;
-        _chainPasses += (Int_t) m_costData->getIsChainPassed(_c);
-        if (_chainPasses > 0) break;
+      UInt_t chainPasses = 0;
+      for (UInt_t c = 0; c < m_costData->getNChains(); ++c) {
+        const std::string chainName = TrigConfInterface::getHLTNameFromChainID(m_costData->getChainID(
+                                                                                  c), m_costData->getChainLevel(c));
+        if (Config::config().getVecMatches(kPatternsMonitor, chainName) == kTRUE) continue;
+        chainPasses += (Int_t) m_costData->getIsChainPassed(c);
+        if (chainPasses > 0) break;
       }
-      static const std::string _ign = "IgnoreRerun";
-      if (_chainPasses == 0) Config::config().set(kIgnoreRerun, 1, _ign, kUnlocked);
+      static const std::string ign = "IgnoreRerun";
+      if (chainPasses == 0) Config::config().set(kIgnoreRerun, 1, ign, kUnlocked);
       // Then ignore RERUN chains in this event.
-      else Config::config().set(kIgnoreRerun, 0, _ign, kUnlocked);
+      else Config::config().set(kIgnoreRerun, 0, ign, kUnlocked);
     }
 
     if (m_nThread == 1 || m_ratesOnly == kTRUE) {
       // Non threaded
       m_processTime.start();
-      for (monitorIt_t _it = m_monitorCollections.begin(); _it != m_monitorCollections.end(); ++_it) {
-        _it->second->newEvent(_weight);
+      for (monitorIt_t it = m_monitorCollections.begin(); it != m_monitorCollections.end(); ++it) {
+        it->second->newEvent(weight);
       }
       m_processTime.stop();
     } else {
       // Threaded
-      std::vector<std::thread> _executing;
-      std::vector<MonitorBase*> _notThreadable; // Vector of function pointers
+      std::vector<std::thread> executing;
+      std::vector<MonitorBase*> notThreadable; // Vector of function pointers
 
       //m_threadTimer.start();
       //m_threadTimer.stop();
 
       m_processTime.start();
-      monitorIt_t _it = m_monitorCollections.begin();
-      Bool_t _doneAll = kFALSE;
+      monitorIt_t it = m_monitorCollections.begin();
+      Bool_t doneAll = kFALSE;
 
       do {
-        while (_executing.size() < m_nThread && _doneAll == kFALSE) { // Loop until full of threads or no more to add
-          MonitorBase* _monitorInstance = _it->second;
-          if (_it->second->isThreadable() == kTRUE) {
-            // Spawn a new thread to call m_threadFnPtr to run _monitorInstance with argument _weight
-            _executing.push_back(std::thread(m_threadFnPtr, _monitorInstance, _weight));
+        while (executing.size() < m_nThread && doneAll == kFALSE) { // Loop until full of threads or no more to add
+          MonitorBase* monitorInstance = it->second;
+          if (it->second->isThreadable() == kTRUE) {
+            // Spawn a new thread to call m_threadFnPtr to run monitorInstance with argument weight
+            executing.push_back(std::thread(m_threadFnPtr, monitorInstance, weight));
           } else { // Otherwise we execute it later
-            _notThreadable.push_back(_monitorInstance);
+            notThreadable.push_back(monitorInstance);
           }
-          if (++_it == m_monitorCollections.end()) {
-            _doneAll = kTRUE; // Or break if the last monitor
+          if (++it == m_monitorCollections.end()) {
+            doneAll = kTRUE; // Or break if the last monitor
             break;
           }
         }
 
         // Wait for last thread to halt
-        if (_executing.size() > 0) {
-          _executing.back().join();
-          _executing.pop_back();
+        if (executing.size() > 0) {
+          executing.back().join();
+          executing.pop_back();
         }
-      } while (_doneAll == kFALSE || _executing.size() > 0);
+      } while (doneAll == kFALSE || executing.size() > 0);
 
       // Do un-threadable after. Call the functions
-      for (UInt_t _m = 0; _m < _notThreadable.size(); ++_m) {
-        _notThreadable.at(_m)->newEvent(_weight);
+      for (UInt_t m = 0; m < notThreadable.size(); ++m) {
+        notThreadable.at(m)->newEvent(weight);
       }
       m_processTime.stop();
     }
@@ -353,11 +353,11 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Sets which pass through the input file(s) we're on down to all the monitors
-   * @param _pass Number of this pass
+   * @param pass Number of this pass
    **/
-  void ProcessEvent::setPass(UInt_t _pass) {
-    for (const auto& _monitor : m_monitorCollections) _monitor.second->setPass(_pass);
-    m_pass = _pass;
+  void ProcessEvent::setPass(UInt_t pass) {
+    for (const auto& monitor : m_monitorCollections) monitor.second->setPass(pass);
+    m_pass = pass;
   }
 
   /**
@@ -370,7 +370,7 @@ namespace TrigCostRootAnalysis {
   /**
    * Gets a map of the internal monitor objects. Note that while these are stored as base pointers, they are all
    * in fact polymorphic treatments of the derived classes.
-   * @see setMonitoringMode(MonitorType_t _type, Bool_t _isActive)
+   * @see setMonitoringMode(MonitorType_t type, Bool_t isActive)
    * @returns Map of MonitorType_t enums to TrigMonitorBase pointers.
    */
   const monitorMap_t& ProcessEvent::getMonitors() {
@@ -380,16 +380,16 @@ namespace TrigCostRootAnalysis {
   /**
    * Get base class pointer to a requested monitor. This can then be cast to the appropriate type if specific
    * base class dependent functionality is required.
-   * @param _type The type of monitor to retrieve.
+   * @param type The type of monitor to retrieve.
    * @result Base-class pointer to object. Returns 0 if monitor is not present.
    */
-  MonitorBase* ProcessEvent::getMonitor(ConfKey_t _type) {
-    assert(_type >= kDoChainMonitor && _type < kDoAllMonitor);
-    monitorIt_t _it = m_monitorCollections.find(_type);
-    if (_it != m_monitorCollections.end()) {
-      return _it->second;
+  MonitorBase* ProcessEvent::getMonitor(ConfKey_t type) {
+    assert(type >= kDoChainMonitor && type < kDoAllMonitor);
+    monitorIt_t it = m_monitorCollections.find(type);
+    if (it != m_monitorCollections.end()) {
+      return it->second;
     } else {
-      Error("ProcessEvent::getMonitor", "Collection %s is not registered.", Config::config().getName(_type).c_str());
+      Error("ProcessEvent::getMonitor", "Collection %s is not registered.", Config::config().getName(type).c_str());
       return 0;
     }
   }
@@ -400,28 +400,28 @@ namespace TrigCostRootAnalysis {
    */
   void ProcessEvent::saveOutput() {
     // Execute end-of-run code
-    for (monitorIt_t _it = m_monitorCollections.begin(); _it != m_monitorCollections.end(); ++_it) {
-      UInt_t _nCounters = _it->second->getNCounters();
-      if (_nCounters == 0) {
+    for (monitorIt_t it = m_monitorCollections.begin(); it != m_monitorCollections.end(); ++it) {
+      UInt_t nCounters = it->second->getNCounters();
+      if (nCounters == 0) {
         Info("ProcessEvent::saveOutput",
              "Skipping end-of-run output for %s %s monitor. Monitor did not find any data to run over.",
              getLevelStr().c_str(),
-             _it->second->getName().c_str());
+             it->second->getName().c_str());
         continue;
       }
       Info("ProcessEvent::saveOutput", "%s %s monitor processed %i counters. Writing out counters...",
            getLevelStr().c_str(),
-           _it->second->getName().c_str(),
-           _nCounters);
-      _it->second->saveOutput();
+           it->second->getName().c_str(),
+           nCounters);
+      it->second->saveOutput();
     }
   }
 
   /**
-   * @param _level The HLT level of this processor to set.
+   * @param level The HLT level of this processor to set.
    */
-  void ProcessEvent::setLevel(UInt_t _level) {
-    m_level = _level;
+  void ProcessEvent::setLevel(UInt_t level) {
+    m_level = level;
   }
 
   /**
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/ROSConfService.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/ROSConfService.cxx
index 2877e0746ee5491bdbd6f0dcf87e7f0d2d4c6812..d319a1b100778d969b445b57c735cb596adfc7ca 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/ROSConfService.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/ROSConfService.cxx
@@ -51,37 +51,37 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Get the name of a ROBIN from its ID within the ntuple. Assumes that parseRosXml has been called.
-   * @param _Id ID number of ROB (hexdecimal identifier stored in UInt_t)
+   * @param Id ID number of ROB (hexdecimal identifier stored in UInt_t)
    * @return Const reference to name of the ROBIN this ROB is attached to, or "UNKNOWN" on fail.
    */
-  const std::string& ROSConfService::getRobinNameFromId(UInt_t _Id) {
+  const std::string& ROSConfService::getRobinNameFromId(UInt_t Id) {
     if (m_serviceEnabled == kFALSE) {
       return Config::config().getStr(kUnknownString);
     }
 
-    IntStringMapIt_t _location = m_RobToRobinMap.find(_Id);
-    if (_location == m_RobToRobinMap.end()) {
+    IntStringMapIt_t location = m_RobToRobinMap.find(Id);
+    if (location == m_RobToRobinMap.end()) {
       return Config::config().getStr(kUnknownString);
     }
-    return _location->second;
+    return location->second;
   }
 
   /**
    * Get the name of a ROS from a ROBIN. Assumes that parseRosXml has been called.
    * Note: High call rate function.
-   * @param _robinName Name of the ROBIN
+   * @param robinName Name of the ROBIN
    * @return Const reference to name of the ROS the ROBIN is associated with, or "UNKNOWN" on fail.
    */
-  const std::string& ROSConfService::getRosNameFromFromRobinName(const std::string& _robinName) {
+  const std::string& ROSConfService::getRosNameFromFromRobinName(const std::string& robinName) {
     if (m_serviceEnabled == kFALSE) {
       return Config::config().getStr(kUnknownString);
     }
 
-    StringStringMapIt_t _location = m_RobinToRosMap.find(_robinName);
-    if (_location == m_RobinToRosMap.end()) {
+    StringStringMapIt_t location = m_RobinToRosMap.find(robinName);
+    if (location == m_RobinToRosMap.end()) {
       return Config::config().getStr(kUnknownString);
     }
-    return _location->second;
+    return location->second;
   }
 
   /**
@@ -99,49 +99,49 @@ namespace TrigCostRootAnalysis {
 
     // Now try to parse xml file
     // Only file with restricted xml syntax are supported
-    TXMLEngine* _xml = new TXMLEngine();
-    XMLDocPointer_t _xmlDoc = _xml->ParseFile(Config::config().getStr(kROSXMLPath).c_str());
-    if (_xmlDoc == 0) {
+    TXMLEngine* xml = new TXMLEngine();
+    XMLDocPointer_t xmlDoc = xml->ParseFile(Config::config().getStr(kROSXMLPath).c_str());
+    if (xmlDoc == 0) {
       Error("ROSConfService::parseRosXml", "Unable to parse ROS mapping: %s. No named ROS data.",
             Config::config().getStr(kROSXMLPath).c_str());
-      delete _xml;
+      delete xml;
       return;
     }
 
     // Get access to main node
-    XMLNodePointer_t _mainNode = _xml->DocGetRootElement(_xmlDoc);
-    assert(_xml->GetNodeName(_mainNode) == std::string("ros-rob-data"));
-
-    XMLNodePointer_t _RosNode = _xml->GetChild(_mainNode);
-    while (_RosNode != 0) { // Loop over all ROS'
-      const std::string _RosName = _xml->GetAttrValue(_xml->GetFirstAttr(_RosNode));
-      XMLNodePointer_t _RobinNode = _xml->GetChild(_RosNode);
-      while (_RobinNode != 0) { // Loop over all ROS' ROBINs
-        const std::string _RobinName = _xml->GetAttrValue(_xml->GetFirstAttr(_RobinNode));
-        m_RobinToRosMap[_RobinName] = _RosName;
-        XMLNodePointer_t _RobNode = _xml->GetChild(_RobinNode);
-        while (_RobNode != 0) { // Loop over all ROBIN's RODs
-          const std::string _RobIdStr = _xml->GetAttrValue(_xml->GetFirstAttr(_RobNode));
-          std::stringstream _ss;
-          _ss << std::hex << _RobIdStr;
-          UInt_t _RobId = 0;
-          _ss >> _RobId;
-          m_RobToRobinMap[_RobId] = _RobinName;
-          _RobNode = _xml->GetNext(_RobNode);
+    XMLNodePointer_t mainNode = xml->DocGetRootElement(xmlDoc);
+    assert(xml->GetNodeName(mainNode) == std::string("ros-rob-data"));
+
+    XMLNodePointer_t RosNode = xml->GetChild(mainNode);
+    while (RosNode != 0) { // Loop over all ROS'
+      const std::string RosName = xml->GetAttrValue(xml->GetFirstAttr(RosNode));
+      XMLNodePointer_t RobinNode = xml->GetChild(RosNode);
+      while (RobinNode != 0) { // Loop over all ROS' ROBINs
+        const std::string RobinName = xml->GetAttrValue(xml->GetFirstAttr(RobinNode));
+        m_RobinToRosMap[RobinName] = RosName;
+        XMLNodePointer_t RobNode = xml->GetChild(RobinNode);
+        while (RobNode != 0) { // Loop over all ROBIN's RODs
+          const std::string RobIdStr = xml->GetAttrValue(xml->GetFirstAttr(RobNode));
+          std::stringstream ss;
+          ss << std::hex << RobIdStr;
+          UInt_t RobId = 0;
+          ss >> RobId;
+          m_RobToRobinMap[RobId] = RobinName;
+          RobNode = xml->GetNext(RobNode);
         }
-        _RobinNode = _xml->GetNext(_RobinNode);
+        RobinNode = xml->GetNext(RobinNode);
       }
-      _RosNode = _xml->GetNext(_RosNode);
+      RosNode = xml->GetNext(RosNode);
     }
 
     if (Config::config().debug()) {
       Info("ROSConfService::parseRosXml", "Using ROS <-> ROBIN and ROBIN <-> ROB Maps from %s",
            Config::config().getStr(kROSXMLName).c_str());
-      for (StringStringMapIt_t _it = m_RobinToRosMap.begin(); _it != m_RobinToRosMap.end(); ++_it) {
-        Info("ROSConfService::parseRosXml", "\t%s -> %s", _it->first.c_str(), _it->second.c_str());
+      for (StringStringMapIt_t it = m_RobinToRosMap.begin(); it != m_RobinToRosMap.end(); ++it) {
+        Info("ROSConfService::parseRosXml", "\t%s -> %s", it->first.c_str(), it->second.c_str());
       }
-      for (IntStringMapIt_t _it = m_RobToRobinMap.begin(); _it != m_RobToRobinMap.end(); ++_it) {
-        Info("ROSConfService::parseRosXml", "\t%x -> %s", _it->first, _it->second.c_str());
+      for (IntStringMapIt_t it = m_RobToRobinMap.begin(); it != m_RobToRobinMap.end(); ++it) {
+        Info("ROSConfService::parseRosXml", "\t%x -> %s", it->first, it->second.c_str());
       }
     } else {
       Info("ROSConfService::parseRosXml", "Parsed ROS configuration %s. Read %i ROS nodes, %i ROBINs.",
@@ -151,6 +151,6 @@ namespace TrigCostRootAnalysis {
     }
 
     m_serviceEnabled = kTRUE;
-    delete _xml;
+    delete xml;
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/RatesCPSGroup.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/RatesCPSGroup.cxx
index 6109394fac0dee1e50f4495b61f4d2348f397f5e..8a2c6c617177f3ec3ce2bec1fcc7c024a4ca553c 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/RatesCPSGroup.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/RatesCPSGroup.cxx
@@ -21,8 +21,8 @@ namespace TrigCostRootAnalysis {
   /**
    * Construct new RatesCPSGroup to keep these chains together.
    */
-  RatesCPSGroup::RatesCPSGroup(std::string _name) :
-    m_name(_name),
+  RatesCPSGroup::RatesCPSGroup(std::string name) :
+    m_name(name),
     m_commonPS(1.),
     m_commonPSWeight(1.),
     m_l1(nullptr)
@@ -32,11 +32,11 @@ namespace TrigCostRootAnalysis {
    * Add a item to this CPS group. All items added will be weighted in a coherent way
    * @param _item A HLT chain item which is part of this CPS group
    */
-  void RatesCPSGroup::add(RatesChainItem* _item) {
-    assert(_item != nullptr);
-    if (m_items.count(_item) == 1) return;
+  void RatesCPSGroup::add(RatesChainItem* item) {
+    assert(item != nullptr);
+    if (m_items.count(item) == 1) return;
 
-    m_items.insert(_item);
+    m_items.insert(item);
   }
 
   /**
@@ -49,41 +49,41 @@ namespace TrigCostRootAnalysis {
       Warning("RatesCPSGroup::calculateCPSFactor", "Expect two or more HLT chains to do CPS for %s", getName().c_str());
     }
     // We can only do this if all of our chains have the same L1 seed
-    for (const auto _item : m_items) {
-      if (_item->getLower().size() != 1) {
+    for (const auto item : m_items) {
+      if (item->getLower().size() != 1) {
         Error("RatesCPSGroup::calculateCPSFactor", "Cannot factor out CPS for %s, there is not exactly one L1 seed",
               getName().c_str());
         return;
       }
-      ChainItemSetIt_t _it = _item->getLowerStart(); // We know there is only one
-      if (m_l1 == nullptr) m_l1 = (*_it);
-      else if ((*_it) != m_l1) {
+      ChainItemSetIt_t it = item->getLowerStart(); // We know there is only one
+      if (m_l1 == nullptr) m_l1 = (*it);
+      else if ((*it) != m_l1) {
         Error("RatesCPSGroup::calculateCPSFactor", "Cannot factor out CPS for %s, HLT chains have different seeds",
               getName().c_str());
         return;
       }
     }
 
-    Double_t _lowestPS = 1e10;
+    Double_t lowestPS = 1e10;
     // Find lowest PS
-    for (const auto _item : m_items) if (_item->getPS() > 0 && _item->getPS() < _lowestPS) _lowestPS = _item->getPS();
+    for (const auto item : m_items) if (item->getPS() > 0 && item->getPS() < lowestPS) lowestPS = item->getPS();
 
-    if (_lowestPS <= 0. || _lowestPS >= 1e10) {  // Disabled
+    if (lowestPS <= 0. || lowestPS >= 1e10) {  // Disabled
       if (Config::config().debug()) Warning("RatesCPSGroup::calculateCPSFactor",
                                             "Disabling CPS group %s as all its chains are prescaled out.",
                                             getName().c_str());
       m_commonPSWeight = 0.;
       m_commonPS = -1;
-      for (const auto _item : m_items) _item->setPSReduced(-1);
+      for (const auto item : m_items) item->setPSReduced(-1);
     } else {
       // Set reduced PS
-      m_commonPS = _lowestPS;
+      m_commonPS = lowestPS;
       m_commonPSWeight = 1. / m_commonPS; // Extra weight to apply coherently
-      for (const auto _item : m_items) {
-        if (_item->getPS() > 0) {
-          _item->setPSReduced(_item->getPS() / _lowestPS);
+      for (const auto item : m_items) {
+        if (item->getPS() > 0) {
+          item->setPSReduced(item->getPS() / lowestPS);
         } else {
-          _item->setPSReduced(-1);
+          item->setPSReduced(-1);
         }
       }
       if (Config::config().debug()) Info("RatesCPSGroup::calculateCPSFactor",
@@ -115,4 +115,4 @@ namespace TrigCostRootAnalysis {
   const std::string& RatesCPSGroup::getName() {
     return m_name;
   }
-}
\ No newline at end of file
+}
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/RatesChainItem.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/RatesChainItem.cxx
index f673f47208311ed90a64e4ecd639841a0812371a..fec2e48721af9deca4b14074d85588af6cf178e6 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/RatesChainItem.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/RatesChainItem.cxx
@@ -27,15 +27,15 @@ namespace TrigCostRootAnalysis {
   /**
    * Construct new RatesChainItem with a given prescale.
    */
-  RatesChainItem::RatesChainItem(std::string _name, Int_t _level, Double_t _PS, Double_t _PSExpress) :
-    m_name(_name),
-    m_level(_level),
-    m_PS(_PS), // Integer prescale
+  RatesChainItem::RatesChainItem(std::string name, Int_t level, Double_t PS, Double_t PSExpress) :
+    m_name(name),
+    m_level(level),
+    m_PS(PS), // Integer prescale
     m_PSWeight(1. / m_PS), // Reciprocal of the prescale - this is the basic weight quantity for this ChainItem
     m_PSReduced(1.),
     m_PSReducedWeight(1.),
-    m_PSExpress(_PSExpress),
-    m_PSExpressWeight(1. / _PSExpress),
+    m_PSExpress(PSExpress),
+    m_PSExpressWeight(1. / PSExpress),
     m_extraEfficiency(1.),
     m_R(++s_chainCount),
     m_ID(s_chainCount),
@@ -68,24 +68,24 @@ namespace TrigCostRootAnalysis {
    * Look at myself and classify from their name what type of BG I trigger on
    */
   void RatesChainItem::classifyBunchGroup() {
-    RatesChainItem* _toCheck = this;
+    RatesChainItem* toCheck = this;
 
-    if (m_level > 1 && m_lower.size() == 1) _toCheck = *(m_lower.begin());
+    if (m_level > 1 && m_lower.size() == 1) toCheck = *(m_lower.begin());
 
-    if (_toCheck->getName().find("_BPTX") != std::string::npos ||
-        _toCheck->getName().find("_BGRP") != std::string::npos) { // Ignore the beam pickup & specialist triggers
+    if (toCheck->getName().find("_BPTX") != std::string::npos ||
+        toCheck->getName().find("_BGRP") != std::string::npos) { // Ignore the beam pickup & specialist triggers
       m_bunchGroupType = kBG_NONE;
-    } else if (_toCheck->getName().find("_FIRSTEMPTY") != std::string::npos) {
+    } else if (toCheck->getName().find("_FIRSTEMPTY") != std::string::npos) {
       m_bunchGroupType = kBG_FIRSTEMPTY;
-    } else if (_toCheck->getName().find("_EMPTY") != std::string::npos) {
+    } else if (toCheck->getName().find("_EMPTY") != std::string::npos) {
       m_bunchGroupType = kBG_EMPTY;
-    } else if (_toCheck->getName().find("_UNPAIRED_ISO") != std::string::npos) {
+    } else if (toCheck->getName().find("_UNPAIRED_ISO") != std::string::npos) {
       m_bunchGroupType = kBG_UNPAIRED_ISO;
-    } else if (_toCheck->getName().find("_UNPAIRED_NONISO") != std::string::npos) {
+    } else if (toCheck->getName().find("_UNPAIRED_NONISO") != std::string::npos) {
       m_bunchGroupType = kBG_UNPAIRED_NONISO;
-    } else if (_toCheck->getName().find("_ABORTGAPNOTCALIB") != std::string::npos) {
+    } else if (toCheck->getName().find("_ABORTGAPNOTCALIB") != std::string::npos) {
       m_bunchGroupType = kBG_ABORTGAPNOTCALIB;
-    } else if (_toCheck->getName().find("_CALREQ") != std::string::npos) {
+    } else if (toCheck->getName().find("_CALREQ") != std::string::npos) {
       m_bunchGroupType = kBG_CALREQ;
     } else {
       m_bunchGroupType = kBG_FILLED;
@@ -106,17 +106,17 @@ namespace TrigCostRootAnalysis {
   void RatesChainItem::classifyLumiAndRandom() {
     classifyBunchGroup();
 
-    RatesChainItem* _toCheck = this;
-    if (m_level > 1 && m_lower.size() == 1) _toCheck = *(m_lower.begin());
-
-    if (_toCheck->getName().find("_RD0") != std::string::npos ||
-        _toCheck->getName().find("_RD1") != std::string::npos ||
-        _toCheck->getName().find("_RD2") != std::string::npos ||
-        _toCheck->getName().find("_RD3") != std::string::npos ||
-        _toCheck->getName().find("_L1RD0") != std::string::npos ||
-        _toCheck->getName().find("_L1RD1") != std::string::npos ||
-        _toCheck->getName().find("_L1RD2") != std::string::npos ||
-        _toCheck->getName().find("_L1RD3") != std::string::npos) {
+    RatesChainItem* toCheck = this;
+    if (m_level > 1 && m_lower.size() == 1) toCheck = *(m_lower.begin());
+
+    if (toCheck->getName().find("_RD0") != std::string::npos ||
+        toCheck->getName().find("_RD1") != std::string::npos ||
+        toCheck->getName().find("_RD2") != std::string::npos ||
+        toCheck->getName().find("_RD3") != std::string::npos ||
+        toCheck->getName().find("_L1RD0") != std::string::npos ||
+        toCheck->getName().find("_L1RD1") != std::string::npos ||
+        toCheck->getName().find("_L1RD2") != std::string::npos ||
+        toCheck->getName().find("_L1RD3") != std::string::npos) {
       m_iAmRandom = kTRUE;
       if (Config::config().debug()) Info("RatesChainItem::classifyLumiAndRandom", "Item %s classified as random",
                                          getName().c_str());
@@ -128,18 +128,18 @@ namespace TrigCostRootAnalysis {
       m_lumiExtrapolationMap = &(TrigXMLService::trigXMLService().m_lumiScalingFactorLinear); // Linear (including
                                                                                               // deadtime)
     } else { // m_advancedLumiScaling == kTRUE. Chains can have different extrapolation
-      Bool_t _specialCase1 = kFALSE, _specialCase3 = kFALSE;
+      Bool_t specialCase1 = kFALSE, specialCase3 = kFALSE;
 
-      if (m_iAmRandom == kTRUE && m_level == 1) _specialCase1 = kTRUE;
-      else if (m_iAmRandom == kTRUE && m_level > 1) _specialCase3 = kTRUE;
+      if (m_iAmRandom == kTRUE && m_level == 1) specialCase1 = kTRUE;
+      else if (m_iAmRandom == kTRUE && m_level > 1) specialCase3 = kTRUE;
 
-      if (checkPatternNoLumiWeight(getName()) || _specialCase1) { // SPECIAL CASE #1
+      if (checkPatternNoLumiWeight(getName()) || specialCase1) { // SPECIAL CASE #1
         m_lumiExtrapolationMap = &(TrigXMLService::trigXMLService().m_lumiScalingFactorDeadtimeOnly);
         Config::config().addVecEntry(kListOfNoLumiWeightChains, getName());
       } else if (checkPatternNoMuLumiWeight(getName())) { // SPECIAL CASE #2
         m_lumiExtrapolationMap = &(TrigXMLService::trigXMLService().m_lumiScalingFactorBunchOnly);
         Config::config().addVecEntry(kListOfNoMuLumiWeightChains, getName());
-      } else if (checkPatternNoBunchLumiWeight(getName()) || _specialCase3) { // SPECIAL CASE #3
+      } else if (checkPatternNoBunchLumiWeight(getName()) || specialCase3) { // SPECIAL CASE #3
         m_lumiExtrapolationMap = &(TrigXMLService::trigXMLService().m_lumiScalingFactorMuOnly);
         Config::config().addVecEntry(kListOfNoBunchLumiWeightChains, getName());
       } else if (checkPatternExponentialWithMu(getName())) { // SPECIAL CASE #4
@@ -170,60 +170,60 @@ namespace TrigCostRootAnalysis {
   /**
    * @return What this item needs to be scaled by to extrapolate its lumi to the target
    * @see RatesChainItem::classifyRandom
-   * @param _lb The Lumi Block to return the extrapolation weight for
-   * @param _disableEventLumiExtrapolation if extrapolation is disabled e.g. for UpgradeRatesMonitor which does this via
+   * @param lb The Lumi Block to return the extrapolation weight for
+   * @param disableEventLumiExtrapolation if extrapolation is disabled e.g. for UpgradeRatesMonitor which does this via
    *overlay
    */
-  Double_t RatesChainItem::getLumiExtrapolationFactor(UInt_t _lb, Bool_t _disableEventLumiExtrapolation) {
-    if (_disableEventLumiExtrapolation) return 1.;
+  Double_t RatesChainItem::getLumiExtrapolationFactor(UInt_t lb, Bool_t disableEventLumiExtrapolation) {
+    if (disableEventLumiExtrapolation) return 1.;
 
-    return m_lumiExtrapolationMap->at(_lb); //  Simple. One number per run | Advanced. Different strategies per chain,
+    return m_lumiExtrapolationMap->at(lb); //  Simple. One number per run | Advanced. Different strategies per chain,
                                             // varying per lumi block
   }
 
   /**
    * User can supply additional scaling factors which will alter the effective efficiency of this chain and hence the
    *rate
-   * @param _extraEfficiency Additional scaling factor which will scale the rate when the item fires
+   * @param extraEfficiency Additional scaling factor which will scale the rate when the item fires
    */
-  void RatesChainItem::setExtraEfficiency(Double_t _extraEfficiency) {
-    m_extraEfficiency *= _extraEfficiency;
+  void RatesChainItem::setExtraEfficiency(Double_t extraEfficiency) {
+    m_extraEfficiency *= extraEfficiency;
   }
 
   /**
    * Equiv to reciprocal of @see RatesChainItem::setExtraEfficiency
-   * @param _reductionFactor Scale rate down by this factor
+   * @param reductionFactor Scale rate down by this factor
    */
-  void RatesChainItem::setRateReductionFactor(Double_t _reductionFactor) {
-    m_extraEfficiency *= 1. / _reductionFactor;
+  void RatesChainItem::setRateReductionFactor(Double_t reductionFactor) {
+    m_extraEfficiency *= 1. / reductionFactor;
   }
 
   /**
    * For HLT items, each seeding L1 item should be linked here by passing its pointer.
    * Note we do not own the lower chainItem
-   * @param _lower The pointer to another RatesChainItem which seeds this instance.
+   * @param lower The pointer to another RatesChainItem which seeds this instance.
    */
-  void RatesChainItem::addLower(RatesChainItem* _lower) {
-    m_lower.insert(_lower);
+  void RatesChainItem::addLower(RatesChainItem* lower) {
+    m_lower.insert(lower);
   }
 
   /**
    * For L1 items a link to any HLT chanins seeded should be added here
-   * @param _lower The pointer to another RatesChainItem which is seeded by this instance.
+   * @param lower The pointer to another RatesChainItem which is seeded by this instance.
    */
-  void RatesChainItem::addUpper(RatesChainItem* _upper) {
-    m_upper.insert(_upper);
+  void RatesChainItem::addUpper(RatesChainItem* upper) {
+    m_upper.insert(upper);
   }
 
   /**
    * Registers that a rates counter makes use of this ChainItem. We can use this info to speed up
    * execution by only processing the counters which we need to.
    * Note we do not own the CounterRates object
-   * @param _clinet The pointer to a CounterRates object which makes use of this ChainItem to calculate the event
+   * @param client The pointer to a CounterRates object which makes use of this ChainItem to calculate the event
    *weight.
    */
-  void RatesChainItem::addCounter(CounterBaseRates* _client) {
-    m_clients.insert(_client);
+  void RatesChainItem::addCounter(CounterBaseRates* client) {
+    m_clients.insert(client);
   }
 
   /**
@@ -269,39 +269,39 @@ namespace TrigCostRootAnalysis {
   }
 
   /**
-   * @param _find A chain item pointer to find in this chain item's set of seeding triggers.
+   * @param find A chain item pointer to find in this chain item's set of seeding triggers.
    * @return kTRUE if this ChainItem has the supplied ChainItem listed as one of its lower, seeding items.
    */
-  Bool_t RatesChainItem::getLowerContains(RatesChainItem* _find) {
-    return static_cast<Bool_t>(m_lower.count(_find));
+  Bool_t RatesChainItem::getLowerContains(RatesChainItem* find) {
+    return static_cast<Bool_t>(m_lower.count(find));
   }
 
   /**
-   * @param _set Reference to a set of chain item pointers to test against.
-   * @return kTRUE if *all* of the ChainItems supplied in _set are also listed as lower items of this ChainItem
+   * @param set Reference to a set of chain item pointers to test against.
+   * @return kTRUE if *all* of the ChainItems supplied in set are also listed as lower items of this ChainItem
    */
-  Bool_t RatesChainItem::getLowerContainsAll(std::set<RatesChainItem*>& _set) {
-    for (ChainItemSetIt_t _it = _set.begin(); _it != _set.end(); ++_it) { // Check we contain all these
-      if (getLowerContains((*_it)) == kFALSE) return kFALSE;
+  Bool_t RatesChainItem::getLowerContainsAll(std::set<RatesChainItem*>& set) {
+    for (ChainItemSetIt_t it = set.begin(); it != set.end(); ++it) { // Check we contain all these
+      if (getLowerContains((*it)) == kFALSE) return kFALSE;
     }
     return kTRUE;
   }
 
   /**
-   * @param _find A chain item pointer to find in this chain item's set of seeded triggers.
+   * @param find A chain item pointer to find in this chain item's set of seeded triggers.
    * @return kTRUE if this ChainItem has the supplied ChainItem listed as one of its upper, seeded items.
    */
-  Bool_t RatesChainItem::getUpperContains(RatesChainItem* _find) {
-    return static_cast<Bool_t>(m_upper.count(_find));
+  Bool_t RatesChainItem::getUpperContains(RatesChainItem* find) {
+    return static_cast<Bool_t>(m_upper.count(find));
   }
 
   /**
-   * @param _set Reference to a set of chain item pointers to test against.
-   * @return kTRUE if *all* of the ChainItems supplied in _set are also listed as upper items of this ChainItem
+   * @param set Reference to a set of chain item pointers to test against.
+   * @return kTRUE if *all* of the ChainItems supplied in set are also listed as upper items of this ChainItem
    */
-  Bool_t RatesChainItem::getUpperContainsAll(std::set<RatesChainItem*>& _set) {
-    for (ChainItemSetIt_t _it = _set.begin(); _it != _set.end(); ++_it) { // Check we contain all these
-      if (getUpperContains((*_it)) == kFALSE) return kFALSE;
+  Bool_t RatesChainItem::getUpperContainsAll(std::set<RatesChainItem*>& set) {
+    for (ChainItemSetIt_t it = set.begin(); it != set.end(); ++it) { // Check we contain all these
+      if (getUpperContains((*it)) == kFALSE) return kFALSE;
     }
     return kTRUE;
   }
@@ -316,8 +316,8 @@ namespace TrigCostRootAnalysis {
   /**
    * Sets a new prescale value
    */
-  void RatesChainItem::setPS(Double_t _PS) {
-    m_PS = _PS;
+  void RatesChainItem::setPS(Double_t PS) {
+    m_PS = PS;
     m_PSWeight = 1. / m_PS;
     if (m_PS <= 0.) m_PSWeight = 0.;
   }
@@ -326,8 +326,8 @@ namespace TrigCostRootAnalysis {
    * Sets a reduced PS value. This is the component of the prescale which is not coherent with other chains in the CPS
    *group
    */
-  void RatesChainItem::setPSReduced(Double_t _PSReduced) {
-    m_PSReduced = _PSReduced;
+  void RatesChainItem::setPSReduced(Double_t PSReduced) {
+    m_PSReduced = PSReduced;
     m_PSReducedWeight = 1. / m_PSReduced;
     if (m_PSReduced <= 0.) m_PSReducedWeight = 0.;
   }
@@ -347,14 +347,14 @@ namespace TrigCostRootAnalysis {
   }
 
   /**
-   * @param _passRaw If this ChainItem passed raw in this event.
-   * @param _counterSet Set of counters we will process, add to it counters that I influence. This is pass-by-reference
+   * @param passRaw If this ChainItem passed raw in this event.
+   * @param counterSet Set of counters we will process, add to it counters that I influence. This is pass-by-reference
    *and is modified.
    */
-  void RatesChainItem::beginEvent(Bool_t _passRaw, CounterBaseRatesSet_t& _counterSet) {
-    m_passRaw = _passRaw;
+  void RatesChainItem::beginEvent(Bool_t passRaw, CounterBaseRatesSet_t& counterSet) {
+    m_passRaw = passRaw;
     m_inEvent = kTRUE;
-    _counterSet.insert(m_clients.begin(), m_clients.end());
+    counterSet.insert(m_clients.begin(), m_clients.end());
 
     if (m_doDirectPS) newRandomPS(); //TODO - check this is only used for DirectPS application. Saves many calls to
                                      // TRandom3
@@ -374,9 +374,9 @@ namespace TrigCostRootAnalysis {
    * Note - this function call requires a TriggerLogic pointer to be set, this logic will be used against the set of
    *TOBs
    */
-  void RatesChainItem::beginEvent(TOBAccumulator* _eventTOBs) {
+  void RatesChainItem::beginEvent(TOBAccumulator* eventTOBs) {
     m_inEvent = kTRUE;
-    static Bool_t _largeJetWindow = Config::config().getInt(kUpgradeJetLargeWindow);
+    static Bool_t largeJetWindow = Config::config().getInt(kUpgradeJetLargeWindow);
 
     // For random seeded triggers where the HLT was re-run, we need to check that we only run over unbiased events in
     // the sample
@@ -388,65 +388,65 @@ namespace TrigCostRootAnalysis {
       }
     }
 
-    m_bufferMu = _eventTOBs->mu();
+    m_bufferMu = eventTOBs->mu();
 
     // Loop over logic
     m_passRaw = kTRUE; // Assume we passed, see if we didn't
-    for (const TriggerCondition& _condition : getTriggerLogic()->conditions()) {
-      if (_condition.m_type == kMissingEnergyString) {
-        if (_eventTOBs->METOverflow() == kFALSE && _eventTOBs->MET() <= _condition.m_thresh) {
+    for (const TriggerCondition& condition : getTriggerLogic()->conditions()) {
+      if (condition.m_type == kMissingEnergyString) {
+        if (eventTOBs->METOverflow() == kFALSE && eventTOBs->MET() <= condition.m_thresh) {
           m_passRaw = kFALSE;
           break;
         }
-      } else if (_condition.m_type == kEnergyString) {
-        if (_eventTOBs->TEOverflow() == kFALSE && _eventTOBs->TE() <= _condition.m_thresh) {
+      } else if (condition.m_type == kEnergyString) {
+        if (eventTOBs->TEOverflow() == kFALSE && eventTOBs->TE() <= condition.m_thresh) {
           m_passRaw = kFALSE;
           break;
         }
-      } else if (_condition.m_type == kHTString) {
-        if (_eventTOBs->HT() <= _condition.m_thresh) {
+      } else if (condition.m_type == kHTString) {
+        if (eventTOBs->HT() <= condition.m_thresh) {
           m_passRaw = kFALSE;
           break;
         }
-      } else if (_condition.m_type == kMHTString) {
-        if (_eventTOBs->MHT() <= _condition.m_thresh) {
+      } else if (condition.m_type == kMHTString) {
+        if (eventTOBs->MHT() <= condition.m_thresh) {
           m_passRaw = kFALSE;
           break;
         }
       } else {  // For EM/JET/TAU/MU
-        UInt_t _tobsPassingCondition = 0;
-        for (const auto& _tob : _eventTOBs->TOBs()) {
-          if (_tob.m_type != _condition.m_type) continue; // Incorrect type (EM/TAU/MU etc.). Don't discriminate on this
+        UInt_t tobsPassingCondition = 0;
+        for (const auto& tob : eventTOBs->TOBs()) {
+          if (tob.m_type != condition.m_type) continue; // Incorrect type (EM/TAU/MU etc.). Don't discriminate on this
                                                           // one
-          Float_t _et = _tob.m_et;
-          if (_tob.m_type == kJetString && _largeJetWindow == kTRUE) _et = _tob.m_etLarge;
+          Float_t et = tob.m_et;
+          if (tob.m_type == kJetString && largeJetWindow == kTRUE) et = tob.m_etLarge;
           // Energy too low ?
-          if (_tob.m_type == kMuonString) {
-            if (_et < _condition.m_thresh) continue; // Muons are at set thresholds so should be <
+          if (tob.m_type == kMuonString) {
+            if (et < condition.m_thresh) continue; // Muons are at set thresholds so should be <
           } else {
-            if (_et <= _condition.m_thresh) continue; // From testing on jets, really does seem to be <=
+            if (et <= condition.m_thresh) continue; // From testing on jets, really does seem to be <=
           }
-          if (TMath::Abs(_tob.m_eta) * 10 < _condition.m_min) continue; // eta too low
-          if (TMath::Abs(_tob.m_eta) * 10 > _condition.m_max) continue; // eta too high
-          if (_condition.m_iso != 0) { // Check isolation bits (if conditions require isolation)
-            std::bitset<5> _tobIso = _tob.m_iso;
-            std::bitset<5> _conditionIso = _condition.m_iso;
-            Bool_t _pass = kTRUE;
-            for (UInt_t _b = 0; _b < 5; ++_b) {
-              if (_conditionIso.test(_b) == kTRUE && _tobIso.test(_b) == kFALSE) _pass = kFALSE;
+          if (TMath::Abs(tob.m_eta) * 10 < condition.m_min) continue; // eta too low
+          if (TMath::Abs(tob.m_eta) * 10 > condition.m_max) continue; // eta too high
+          if (condition.m_iso != 0) { // Check isolation bits (if conditions require isolation)
+            std::bitset<5> tobIso = tob.m_iso;
+            std::bitset<5> conditionIso = condition.m_iso;
+            Bool_t pass = kTRUE;
+            for (UInt_t b = 0; b < 5; ++b) {
+              if (conditionIso.test(b) == kTRUE && tobIso.test(b) == kFALSE) pass = kFALSE;
             }
-            if (_pass == kFALSE) continue; // A required isolation bit was not found
+            if (pass == kFALSE) continue; // A required isolation bit was not found
           }
-          ++_tobsPassingCondition; // All requirements met
+          ++tobsPassingCondition; // All requirements met
           // Histogram
-          if (_tob.m_type == kJetString) m_bufferJetRoIEta.push_back(_tob.m_eta);
-          else if (_tob.m_type == kMuonString) m_bufferMuRoIEta.push_back(_tob.m_eta);
-          else if (_tob.m_type == kEmString) m_bufferEmRoIEta.push_back(_tob.m_eta);
-          else if (_tob.m_type == kTauString) m_bufferTauRoIEta.push_back(_tob.m_eta);
-          //if (_tobsPassingCondition == _condition.m_multi) break; // Do we have enough TOBs passing this condition?
+          if (tob.m_type == kJetString) m_bufferJetRoIEta.push_back(tob.m_eta);
+          else if (tob.m_type == kMuonString) m_bufferMuRoIEta.push_back(tob.m_eta);
+          else if (tob.m_type == kEmString) m_bufferEmRoIEta.push_back(tob.m_eta);
+          else if (tob.m_type == kTauString) m_bufferTauRoIEta.push_back(tob.m_eta);
+          //if (tobsPassingCondition == condition.m_multi) break; // Do we have enough TOBs passing this condition?
           // Bail out if so, don't need more
         }
-        if (_tobsPassingCondition < _condition.m_multi) {
+        if (tobsPassingCondition < condition.m_multi) {
           m_passRaw = kFALSE; // A condition was not satisfied :( all must be satisfied. We cannot accept this event.
           break;
         }
@@ -454,25 +454,25 @@ namespace TrigCostRootAnalysis {
     }
 
     //Info("RatesChainItem::beginEvent","%s applying logic to %i TOBs (passed - %i) MET is %f TE is %f",
-    // getName().c_str(), _eventTOBs->TOBs().size(), (Int_t)m_passRaw, _eventTOBs->MET(), _eventTOBs->TE());
+    // getName().c_str(), eventTOBs->TOBs().size(), (Int_t)m_passRaw, eventTOBs->MET(), eventTOBs->TE());
   }
 
   /**
    * Used in Upgrade Rates mode - we plot the eta distribution of the thresholds we pass and the multiplicity
    */
-  void RatesChainItem::fillHistograms(DataStore& _dataStore, Float_t _weight, Float_t _bunchWeight) {
-    for (const Float_t _value : m_bufferJetRoIEta) _dataStore.store(kVarJetEta, _value, _weight);
-    for (const Float_t _value : m_bufferMuRoIEta) _dataStore.store(kVarMuEta, _value, _weight);
-    for (const Float_t _value : m_bufferEmRoIEta) _dataStore.store(kVarEmEta, _value, _weight);
-    for (const Float_t _value : m_bufferTauRoIEta) _dataStore.store(kVarTauEta, _value, _weight);
+  void RatesChainItem::fillHistograms(DataStore& dataStore, Float_t weight, Float_t bunchWeight) {
+    for (const Float_t value : m_bufferJetRoIEta) dataStore.store(kVarJetEta, value, weight);
+    for (const Float_t value : m_bufferMuRoIEta) dataStore.store(kVarMuEta, value, weight);
+    for (const Float_t value : m_bufferEmRoIEta) dataStore.store(kVarEmEta, value, weight);
+    for (const Float_t value : m_bufferTauRoIEta) dataStore.store(kVarTauEta, value, weight);
 
-    if (m_bufferJetRoIEta.size() > 0) _dataStore.store(kVarJetNThresh, m_bufferJetRoIEta.size(), _weight);
-    if (m_bufferMuRoIEta.size() > 0) _dataStore.store(kVarMuNThresh, m_bufferMuRoIEta.size(), _weight);
-    if (m_bufferEmRoIEta.size() > 0) _dataStore.store(kVarEmNThresh, m_bufferEmRoIEta.size(), _weight);
-    if (m_bufferTauRoIEta.size() > 0) _dataStore.store(kVarTauNThresh, m_bufferTauRoIEta.size(), _weight);
+    if (m_bufferJetRoIEta.size() > 0) dataStore.store(kVarJetNThresh, m_bufferJetRoIEta.size(), weight);
+    if (m_bufferMuRoIEta.size() > 0) dataStore.store(kVarMuNThresh, m_bufferMuRoIEta.size(), weight);
+    if (m_bufferEmRoIEta.size() > 0) dataStore.store(kVarEmNThresh, m_bufferEmRoIEta.size(), weight);
+    if (m_bufferTauRoIEta.size() > 0) dataStore.store(kVarTauNThresh, m_bufferTauRoIEta.size(), weight);
 
-    _dataStore.store(kVarMu, m_bufferMu, _weight);
-    _dataStore.store(kVarBunchWeight, _bunchWeight, _weight); // What part of the extrapolation was explicitly due to
+    dataStore.store(kVarMu, m_bufferMu, weight);
+    dataStore.store(kVarBunchWeight, bunchWeight, weight); // What part of the extrapolation was explicitly due to
                                                               // change in number of bunches
   }
 
@@ -538,10 +538,10 @@ namespace TrigCostRootAnalysis {
    * @return 1/Prescale weighting factor for this event. This is scaled by an optional user supplied extra efficiency
    *factor which can modulate the rate
    */
-  Double_t RatesChainItem::getPSWeight(Bool_t _includeExpress) {
+  Double_t RatesChainItem::getPSWeight(Bool_t includeExpress) {
     if (m_proxy != nullptr) return m_proxy->getLastWeight();
 
-    if (_includeExpress == kTRUE) return m_PSWeight * m_PSExpressWeight * m_extraEfficiency;
+    if (includeExpress == kTRUE) return m_PSWeight * m_PSExpressWeight * m_extraEfficiency;
 
     return m_PSWeight * m_extraEfficiency;
   }
@@ -552,8 +552,8 @@ namespace TrigCostRootAnalysis {
    * @return 1/PrescaleReduced weighting factor for this event. This is scaled by an optional user supplied extra
    *efficiency factor which can modulate the rate
    */
-  Double_t RatesChainItem::getPSReducedWeight(Bool_t _includeExpress) {
-    if (_includeExpress == kTRUE) return m_PSReducedWeight * m_PSExpressWeight * m_extraEfficiency;
+  Double_t RatesChainItem::getPSReducedWeight(Bool_t includeExpress) {
+    if (includeExpress == kTRUE) return m_PSReducedWeight * m_PSExpressWeight * m_extraEfficiency;
 
     return m_PSReducedWeight * m_extraEfficiency;
   }
@@ -561,10 +561,10 @@ namespace TrigCostRootAnalysis {
   /**
    * @return Zero if this chain did not pass raw, else returns 1/Prescale
    */
-  Double_t RatesChainItem::getPassRawOverPS(Bool_t _includeExpress) {
+  Double_t RatesChainItem::getPassRawOverPS(Bool_t includeExpress) {
     if (getPassRaw() == kFALSE) return 0.;
 
-    return getPSWeight(_includeExpress);
+    return getPSWeight(includeExpress);
   }
 
   /**
@@ -572,10 +572,10 @@ namespace TrigCostRootAnalysis {
    * the same coherent prescale group.
    * @return Zero if this chain did not pass raw, else returns 1/PrescaleReduced
    */
-  Double_t RatesChainItem::getPassRawOverPSReduced(Bool_t _includeExpress) {
+  Double_t RatesChainItem::getPassRawOverPSReduced(Bool_t includeExpress) {
     if (getPassRaw() == kFALSE) return 0.;
 
-    return getPSReducedWeight(_includeExpress);
+    return getPSReducedWeight(includeExpress);
   }
 
   /**
@@ -586,12 +586,12 @@ namespace TrigCostRootAnalysis {
   }
 
   /**
-   * @param _tl Use a TriggerLogic to generate the pass/fail for this chain
-   * Note this is required to use void beginEvent(TOBAccumulator* _eventTOBs, CounterBaseRatesSet_t& _counterSet)
+   * @param tl Use a TriggerLogic to generate the pass/fail for this chain
+   * Note this is required to use void beginEvent(TOBAccumulator* eventTOBs, CounterBaseRatesSet_t& counterSet)
    * RatesChainItem object does not own the trigger logic.
    */
-  void RatesChainItem::setTriggerLogic(TriggerLogic* _tl) {
-    m_triggerLogic = _tl;
+  void RatesChainItem::setTriggerLogic(TriggerLogic* tl) {
+    m_triggerLogic = tl;
   }
 
   /**
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/TableValueFunctions.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/TableValueFunctions.cxx
index 2e7df2f2285a8b9341aaf04c3bb21e13868dc295..a4eefa5ef40d96ff70ae1367e2e55efe81ba64d9 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/TableValueFunctions.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/TableValueFunctions.cxx
@@ -40,45 +40,44 @@ namespace TrigCostRootAnalysis {
    * Global "table function" to caclulate a given value in a table column.
    * Buffer the total chain execution time for all chains in a counterMap.
    * Return a chains fractional time w.r.t. this total.
-   * @param _map Map of CounterBase pointers.
-   * @param _TCCB Pointer to the counter being assessed for this row.
+   * @param map Map of CounterBase pointers.
+   * @param TCCB Pointer to the counter being assessed for this row.
    * @returns The table column value.
    */
-  Float_t tableFnChainGetTotalFracTime(CounterMap_t* _map, CounterBase* _TCCB) {
-    static Float_t _bufferedTotalTime = 0.;
-    static CounterMap_t* _bufferedMap = 0;
+  Float_t tableFnChainGetTotalFracTime(CounterMap_t* map, CounterBase* TCCB) {
+    static Float_t bufferedTotalTime = 0.;
+    static CounterMap_t* bufferedMap = 0;
 
     // Get this chain's fraction of the total time.
     // We first need to get what the total time of all chains is for a given counterMap.
-    if (_bufferedMap != _map) {
-      _bufferedMap = _map;
-      _bufferedTotalTime = 0.;
-      CounterMapIt_t _counterMapIt = _map->begin();
-      for (; _counterMapIt != _map->end(); ++_counterMapIt) {
-        CounterBase* _counter = _counterMapIt->second;
-        _bufferedTotalTime += _counter->getValue(kVarTime, kSavePerEvent);
+    if (bufferedMap != map) {
+      bufferedMap = map;
+      bufferedTotalTime = 0.;
+      CounterMapIt_t counterMapIt = map->begin();
+      for (; counterMapIt != map->end(); ++counterMapIt) {
+        CounterBase* counter = counterMapIt->second;
+        bufferedTotalTime += counter->getValue(kVarTime, kSavePerEvent);
       }
     }
 
     // Now we can return a fractional value (check for /0)
-    if (isZero(_bufferedTotalTime)) return 0.;
+    if (isZero(bufferedTotalTime)) return 0.;
 
-    Float_t _thisChainTime = _TCCB->getValue(kVarTime, kSavePerEvent);
+    Float_t thisChainTime = TCCB->getValue(kVarTime, kSavePerEvent);
 
-    return (_thisChainTime / _bufferedTotalTime) * 100; // In %
+    return (thisChainTime / bufferedTotalTime) * 100; // In %
   }
 
   /**
    * Returns the fractional statistical error of the kVarTime variable (kSavePerEvent)
-   * @param _map Unused
-   * @param _TCCB Pointer to the counter being assessed.
+   * @param map Unused
+   * @param TCCB Pointer to the counter being assessed.
    * @returns The % error.
    */
-  Float_t tableFnChainGetTotalTimeErr(CounterMap_t* _map, CounterBase* _TCCB) {
-    UNUSED(_map);
-    const Float_t _val = _TCCB->getValue(kVarTime, kSavePerEvent); 
-    const Float_t _err = _TCCB->getValueError(kVarTime, kSavePerEvent); 
-    return 100. * (_err / _val);
+  Float_t tableFnChainGetTotalTimeErr(CounterMap_t* /*map*/, CounterBase* TCCB) {
+    const Float_t val = TCCB->getValue(kVarTime, kSavePerEvent); 
+    const Float_t err = TCCB->getValueError(kVarTime, kSavePerEvent); 
+    return 100. * (err / val);
   }
 
   ///////////////////////////////////
@@ -93,74 +92,64 @@ namespace TrigCostRootAnalysis {
   /// BEGIN GLOBAL MONITOR FUNCTIONS ///
   //////////////////////////////////////
 
-  Float_t tableFnGlobalGetSteeringFarmUse(CounterMap_t* _map, CounterBase* _TCCB) {
-    UNUSED(_map);
-
-    UInt_t _nPUs = _TCCB->getValue(kVarHLTPUs, kSavePerCall); //Filled with '1' for every unique processing unit seen by
+  Float_t tableFnGlobalGetSteeringFarmUse(CounterMap_t* /*map*/, CounterBase* TCCB) {
+    UInt_t nPUs = TCCB->getValue(kVarHLTPUs, kSavePerCall); //Filled with '1' for every unique processing unit seen by
                                                               // this counter
-    Float_t _lbTime = _TCCB->getDecoration(kDecLbLength); //Time in s of this counter's LB
-    Float_t _steeringTime = _TCCB->getValue(kVarSteeringTime, kSavePerEvent) / 1000.; // Total steering time, convert to
+    Float_t lbTime = TCCB->getDecoration(kDecLbLength); //Time in s of this counter's LB
+    Float_t steeringTime = TCCB->getValue(kVarSteeringTime, kSavePerEvent) / 1000.; // Total steering time, convert to
                                                                                       // seconds
-    return 100. * (_steeringTime / static_cast<Float_t>(_nPUs * _lbTime)); // Convert to %
+    return 100. * (steeringTime / static_cast<Float_t>(nPUs * lbTime)); // Convert to %
   }
 
-  Float_t tableFnGlobalGetHLTNodePrediction(CounterMap_t* _map, CounterBase* _TCCB) {
-    UNUSED(_map);
-
-    Float_t _lbTime = _TCCB->getDecoration(kDecLbLength); //Time in s of this counter's LB - taking into account how
+  Float_t tableFnGlobalGetHLTNodePrediction(CounterMap_t* /*map*/, CounterBase* TCCB) {
+    Float_t lbTime = TCCB->getDecoration(kDecLbLength); //Time in s of this counter's LB - taking into account how
                                                           // much of the run we've seen
-    Float_t _algTime = _TCCB->getValue(kVarAlgTime, kSavePerEvent) / 1000.; // Total alg wall time, convert to seconds
-    if (isZero(_lbTime) == kTRUE) return 0.;
+    Float_t algTime = TCCB->getValue(kVarAlgTime, kSavePerEvent) / 1000.; // Total alg wall time, convert to seconds
+    if (isZero(lbTime) == kTRUE) return 0.;
 
     // We enough HLT XPUs to process algTime amount of info in lbTime.
-    return _algTime / _lbTime;
+    return algTime / lbTime;
   }
 
-  Float_t tableFnGlobalGetHLTNodePredictionErr(CounterMap_t* _map, CounterBase* _TCCB) {
+  Float_t tableFnGlobalGetHLTNodePredictionErr(CounterMap_t* /*map*/, CounterBase* TCCB) {
     // err = sqrt(events in time T)/T = sqrt(rate*T/T^2) = sqrt(rate/T)
-    UNUSED(_map);
-    Float_t _algTimeErr = _TCCB->getValueError(kVarAlgTime, kSavePerCall); // Get sqrt(sumW2)
-    Float_t _walltime = _TCCB->getDecoration(kDecLbLength);
-    return _algTimeErr / _walltime;
+    Float_t algTimeErr = TCCB->getValueError(kVarAlgTime, kSavePerCall); // Get sqrt(sumW2)
+    Float_t walltime = TCCB->getDecoration(kDecLbLength);
+    return algTimeErr / walltime;
   }
 
-  Float_t tableFnGlobalGetHLTNodePredictionSteering(CounterMap_t* _map, CounterBase* _TCCB) {
-    UNUSED(_map);
-
-    Float_t _lbTime = _TCCB->getDecoration(kDecLbLength); //Time in s of this counter's LB - taking into account how
+  Float_t tableFnGlobalGetHLTNodePredictionSteering(CounterMap_t* /*map*/, CounterBase* TCCB) {
+    Float_t lbTime = TCCB->getDecoration(kDecLbLength); //Time in s of this counter's LB - taking into account how
                                                           // much of the run we've seen
-    Float_t _algTime = _TCCB->getValue(kVarSteeringTime, kSavePerEvent) / 1000.; // Total alg wall time, convert to
+    Float_t algTime = TCCB->getValue(kVarSteeringTime, kSavePerEvent) / 1000.; // Total alg wall time, convert to
                                                                                  // seconds
-    if (isZero(_lbTime) == kTRUE) return 0.;
+    if (isZero(lbTime) == kTRUE) return 0.;
 
     // We enough HLT XPUs to process algTime amount of info in lbTime.
-    return _algTime / _lbTime;
+    return algTime / lbTime;
   }
 
-  Float_t tableFnGlobalGetHLTNodePredictionErrSteering(CounterMap_t* _map, CounterBase* _TCCB) {
+Float_t tableFnGlobalGetHLTNodePredictionErrSteering(CounterMap_t* /*map*/, CounterBase* TCCB) {
     // err = sqrt(events in time T)/T = sqrt(rate*T/T^2) = sqrt(rate/T)
-    UNUSED(_map);
-    Float_t _algTimeErr = _TCCB->getValueError(kVarSteeringTime, kSavePerEvent); // Get sqrt(sumW2)
-    Float_t _walltime = _TCCB->getDecoration(kDecLbLength);
-    return _algTimeErr / _walltime;
+    Float_t algTimeErr = TCCB->getValueError(kVarSteeringTime, kSavePerEvent); // Get sqrt(sumW2)
+    Float_t walltime = TCCB->getDecoration(kDecLbLength);
+    return algTimeErr / walltime;
   }
 
   /////////////////////////////////////
   /// BEGIN RATES MONITOR FUNCTIONS ///
   /////////////////////////////////////
 
-  Float_t tableFnRateGetWeightedRateErr(CounterMap_t* _map, CounterBase* _TCCB) {
+  Float_t tableFnRateGetWeightedRateErr(CounterMap_t* /*map*/, CounterBase* TCCB) {
     // err = sqrt(events in time T)/T = sqrt(rate*T/T^2) = sqrt(rate/T)
-    UNUSED(_map);
-    Float_t _evPassErr = _TCCB->getValueError(kVarEventsPassed, kSavePerCall); // Get sqrt(sumW2)
-    Float_t _walltime = _TCCB->getDecoration(kDecLbLength);
-    return _evPassErr / _walltime;
+    Float_t evPassErr = TCCB->getValueError(kVarEventsPassed, kSavePerCall); // Get sqrt(sumW2)
+    Float_t walltime = TCCB->getDecoration(kDecLbLength);
+    return evPassErr / walltime;
   }
 
-  Float_t tableFnRateGetDirectRateErr(CounterMap_t* _map, CounterBase* _TCCB) {
-    UNUSED(_map);
-    Float_t _evPassErr = _TCCB->getValueError(kVarEventsPassedDP, kSavePerCall); // Get sqrt(sumW2)
-    Float_t _walltime = _TCCB->getDecoration(kDecLbLength);
-    return _evPassErr / _walltime;
+  Float_t tableFnRateGetDirectRateErr(CounterMap_t* /*map*/, CounterBase* TCCB) {
+    Float_t evPassErr = TCCB->getValueError(kVarEventsPassedDP, kSavePerCall); // Get sqrt(sumW2)
+    Float_t walltime = TCCB->getDecoration(kDecLbLength);
+    return evPassErr / walltime;
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/Timer.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/Timer.cxx
index e6a2b2db053fdcd6caef52a97f26c9e3d8ebf9e1..c5ca640d2b87db044c642bda0a4f7c82a97d4701 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/Timer.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/Timer.cxx
@@ -25,7 +25,7 @@ namespace TrigCostRootAnalysis {
   /**
    * Base class constructor. Sets name and ID.
    */
-  Timer::Timer(std::string _type, std::string _name) : m_type(_type), m_name(_name), m_startTime(0), m_time(0), m_calls(
+  Timer::Timer(std::string type, std::string name) : m_type(type), m_name(name), m_startTime(0), m_time(0), m_calls(
       0) {
     s_timers.push_back(this);
   }
@@ -45,14 +45,14 @@ namespace TrigCostRootAnalysis {
   void Timer::print() {
     if (m_calls == 0) return;
 
-    Float_t _avTime = m_time / m_calls;
+    Float_t avTime = m_time / m_calls;
     Info("Timer::print", "%s timer used\t %.3f ms per call over %i call(s) in '%s'",
-         m_type.c_str(), _avTime, m_calls, m_name.c_str());
+         m_type.c_str(), avTime, m_calls, m_name.c_str());
   }
 
   void Timer::printAll() {
-    for (UInt_t _t = 0; _t < s_timers.size(); ++_t) {
-      s_timers.at(_t)->print();
+    for (UInt_t t = 0; t < s_timers.size(); ++t) {
+      s_timers.at(t)->print();
     }
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/TrigConfInterface.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/TrigConfInterface.cxx
index 28f097312e7ad63589ec322f8745e77a5c188a3e..5c1bc1f8a939a5481c6300a57fab1abde933a945 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/TrigConfInterface.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/TrigConfInterface.cxx
@@ -45,25 +45,25 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Link tool to trigger meta data. Call once per chain.
-   * @param _inputChain TChain pointer to input files
+   * @param inputChain TChain pointer to input files
    * @return Returns kTRUE upon successful configuration.
    */
-  Bool_t TrigConfInterface::configure(TChain* _inputChain) {
-    TFile* _file = 0;
-    TChain* _chain = dynamic_cast< TChain* >(_inputChain);
+  Bool_t TrigConfInterface::configure(TChain* inputChain) {
+    TFile* file = 0;
+    TChain* chain = dynamic_cast< TChain* >(inputChain);
 
-    if (_chain) {
+    if (chain) {
       // We are running locally...
       Info("TrigConfInterface::configure", "Opening a new file locally...");
-      _file = _chain->GetFile();
+      file = chain->GetFile();
     } else {
       // We are running on PROOF:
       Info("TrigConfInterface::configure", "Opening a new file on PROOF...");
-      _file = _inputChain->GetCurrentFile();
+      file = inputChain->GetCurrentFile();
     }
 
-    TTree* _confTree = dynamic_cast< TTree* >(_file->Get(Config::config().getStr(kConfigPrefix).c_str()));
-    if (!_confTree) {
+    TTree* confTree = dynamic_cast< TTree* >(file->Get(Config::config().getStr(kConfigPrefix).c_str()));
+    if (!confTree) {
       Error("TrigConfInterface::configure", "Couldn't retrieve configuration metadata tree!");
       m_isConfigured = kFALSE;
       return kFALSE;
@@ -72,12 +72,12 @@ namespace TrigCostRootAnalysis {
     if (m_tdt) delete m_tdt;
     m_tdt = new D3PD::TrigDecisionToolD3PD();
 
-    if (!m_tdt->SetEventTree(_inputChain)) {
+    if (!m_tdt->SetEventTree(inputChain)) {
       Error("TrigConfInterface::configure", "Problems with setting the event tree to the TrigDecisionTool.");
       m_isConfigured = kFALSE;
       return kFALSE;
     }
-    if (!m_tdt->SetConfigTree(_confTree)) {
+    if (!m_tdt->SetConfigTree(confTree)) {
       Error("TrigConfInterface::configure", "Problems setting the trigger config tree to the TrigDecisionTool.");
       m_isConfigured = kFALSE;
       return kFALSE;
@@ -97,10 +97,10 @@ namespace TrigCostRootAnalysis {
    */
   Int_t TrigConfInterface::getCurrentSMK() {
     // XXX this is temporary
-    Int_t _smk = getTDT()->GetSMK();
+    Int_t smk = getTDT()->GetSMK();
 
-    //if (_smk == 65535) return 0;
-    return _smk;
+    //if (smk == 65535) return 0;
+    return smk;
   }
 
   /**
@@ -128,11 +128,11 @@ namespace TrigCostRootAnalysis {
   /**
    * Check if we have seen this configuration before - and if we need to dump it
    */
-  void TrigConfInterface::newEvent(UInt_t _lb) {
-    Bool_t _seen = (m_seenKeys.count(getCurrentDBKey()) == 1);
+  void TrigConfInterface::newEvent(UInt_t lb) {
+    Bool_t seen = (m_seenKeys.count(getCurrentDBKey()) == 1);
 
-    if (m_lumiToKeyMap.count(_lb) == 0) m_lumiToKeyMap[ _lb ] = getCurrentDBKey();
-    if (_seen) return;
+    if (m_lumiToKeyMap.count(lb) == 0) m_lumiToKeyMap[ lb ] = getCurrentDBKey();
+    if (seen) return;
 
     m_seenKeys.insert(getCurrentDBKey());
     if (Config::config().getInt(kOutputMenus) == kTRUE) {
@@ -146,107 +146,106 @@ namespace TrigCostRootAnalysis {
    * Look at which LB each keyset was being used in
    */
   void TrigConfInterface::populateLBPerKeysetStrings() {
-    for (const auto _keyset : m_seenKeys) {
+    for (const auto keyset : m_seenKeys) {
       // Set of my LB
-      std::set<UInt_t> _myLB;
-      for (const auto _it : m_lumiToKeyMap) {
-        if (_it.second == _keyset) {
-          _myLB.insert(_it.first);
+      std::set<UInt_t> myLB;
+      for (const auto it : m_lumiToKeyMap) {
+        if (it.second == keyset) {
+          myLB.insert(it.first);
         }
       }
       // Now have a set of all LB, need to make a nice string
-      std::stringstream _ss;
-      _ss << _keyset.name() << ":";
-      Int_t _previous = -1;
-      Bool_t _chainInProgress = kFALSE;
-      for (const auto _lumiBlock : _myLB) {
-        if (_lumiBlock == (UInt_t) (_previous + 1)) { // Chain
-          _chainInProgress = kTRUE;
-        } else if (_chainInProgress == kTRUE) { // Chain has just ended
-          _chainInProgress = kFALSE;
-          _ss << "-" << _previous << ", " << _lumiBlock;
+      std::stringstream ss;
+      ss << keyset.name() << ":";
+      Int_t previous = -1;
+      Bool_t chainInProgress = kFALSE;
+      for (const auto lumiBlock : myLB) {
+        if (lumiBlock == (UInt_t) (previous + 1)) { // Chain
+          chainInProgress = kTRUE;
+        } else if (chainInProgress == kTRUE) { // Chain has just ended
+          chainInProgress = kFALSE;
+          ss << "-" << previous << ", " << lumiBlock;
         } else {
-          if (_previous != -1) _ss << ", ";
-          _ss << _lumiBlock;
+          if (previous != -1) ss << ", ";
+          ss << lumiBlock;
         }
-        _previous = _lumiBlock;
+        previous = lumiBlock;
       }
-      if (_chainInProgress == kTRUE) _ss << "-" << _previous;
-      Config::config().addVecEntry(kLBPerKeyset, _ss.str());
+      if (chainInProgress == kTRUE) ss << "-" << previous;
+      Config::config().addVecEntry(kLBPerKeyset, ss.str());
     }
     return;
   }
 
   /**
    * Fetch the ID of L1 item from name.
-   * @param _name Const reference to name of L1 chain.
+   * @param name Const reference to name of L1 chain.
    * @return Integer CTPID for L1 chain.
    */
-  Int_t TrigConfInterface::getCtpId(const std::string& _name) {
-    if (_name == "NO_SEED") return -1;
+  Int_t TrigConfInterface::getCtpId(const std::string& name) {
+    if (name == "NO_SEED") return -1;
 
-    return getTCT()->GetCTPId(_name);
+    return getTCT()->GetCTPId(name);
   }
 
   /**
    * Fetch the name of a L1 item from its ID
-   * @param _name CPT ID of L1 chain.
+   * @param name CPT ID of L1 chain.
    * @return Name of the L1 chain.
    */
-  const std::string& TrigConfInterface::getNameFromCtpId(Int_t _ctpId) {
-    return getTCT()->GetNameFromCTPId(_ctpId);
+  const std::string& TrigConfInterface::getNameFromCtpId(Int_t ctpId) {
+    return getTCT()->GetNameFromCTPId(ctpId);
   }
 
   /**
    * Fetch the low chain name of a given chain, EF->L2, L2->L1, HLT->L1.
-   * @param _name Const reference to higher chain name.
+   * @param name Const reference to higher chain name.
    * @return Const reference to lower chain name.
    */
-  const std::string& TrigConfInterface::getLowerChainName(const std::string& _name) {
-    return getTCT()->GetLowerChainName(_name);
+  const std::string& TrigConfInterface::getLowerChainName(const std::string& name) {
+    return getTCT()->GetLowerChainName(name);
   }
 
   /**
    * Fetch the current passtrhough PS value for a given chain
-   * @param _name Const reference to higher chain name.
+   * @param name Const reference to higher chain name.
    * @return Passthrough value
    */
-  Float_t TrigConfInterface::getPassthrough(const std::string& _name) {
-    return getTCT()->GetPassthrough(_name);
+  Float_t TrigConfInterface::getPassthrough(const std::string& name) {
+    return getTCT()->GetPassthrough(name);
   }
 
   /**
    * Explicitly load given entry in tree. This should not be needed.
-   * @param _entry Entry in tree to load.
+   * @param entry Entry in tree to load.
    */
-  void TrigConfInterface::getEntry(Long64_t _entry) {
-    UNUSED(_entry);
+  void TrigConfInterface::getEntry(Long64_t /*entry*/) {
     assert(m_isConfigured);
     // This is not, it appears, needed.
     Warning("TrigConfInterface::getEntry", "This does not need to be called"); //TODO Remove this func
     return;
-    //m_tdt->GetEntry( _entry );
+    //m_tdt->GetEntry( entry );
   }
 
   /**
    * Fetch HLT string name using currently configured access method. Supplying level helps but is not needed.
-   * @param _chainID HLT ID number of chain
-   * @param _level Chain level (2 for L2 or HLT, 3 for EF)
+   * @param chainID HLT ID number of chain
+   * @param level Chain level (2 for L2 or HLT, 3 for EF)
    * @return Const reference to chain name. Empty string if invalid ID or if using unsupported access mode.
    */
-  const std::string TrigConfInterface::getHLTNameFromChainID(Int_t _chainID, Int_t _level) {
+  const std::string TrigConfInterface::getHLTNameFromChainID(Int_t chainID, Int_t level) {
     if (getUsingNtupleMetadata() == kTRUE) {
       // Currently split into L2 and EF
-      if (_level == 2 || _level == 0) { // If L2 (HLT responds as L2) or unspecified
-        if (getTCT()->GetL2NameFromChainId(_chainID) != "" && getTCT()->GetL2NameFromChainId(_chainID) != "0") {
-          //std::cout << _chainID << ", THE NAME IS " << getTCT()->GetL2NameFromChainId( _chainID ) << std::endl;
-          return getTCT()->GetL2NameFromChainId(_chainID);
+      if (level == 2 || level == 0) { // If L2 (HLT responds as L2) or unspecified
+        if (getTCT()->GetL2NameFromChainId(chainID) != "" && getTCT()->GetL2NameFromChainId(chainID) != "0") {
+          //std::cout << chainID << ", THE NAME IS " << getTCT()->GetL2NameFromChainId( chainID ) << std::endl;
+          return getTCT()->GetL2NameFromChainId(chainID);
         }
       }
       // Else try EF, unless we're running on HLT as there is no EF any more, then we can just return cannot find.
       if (Config::config().getInt(kDoHLT) == kTRUE) return Config::config().getStr(kBlankString);
 
-      return getTCT()->GetEFNameFromChainId(_chainID);
+      return getTCT()->GetEFNameFromChainId(chainID);
     } else {
       Error("TrigConfInterface::getHLTNameFromChainID", "XML based menu navigation not yet included.");
     }
@@ -256,18 +255,18 @@ namespace TrigCostRootAnalysis {
   /**
    * Fetch the number of groups a chain is registered under.
    * TODO check that we don't need to add extra code for L2 and EF here?
-   * @param _chainID HLT ID number of chain
+   * @param chainID HLT ID number of chain
    * @return Number of groups this chain belongs to
    */
-  UInt_t TrigConfInterface::getNHLTGroupNamesFromChainID(Int_t _chainID) {
+  UInt_t TrigConfInterface::getNHLTGroupNamesFromChainID(Int_t chainID) {
     if (getUsingNtupleMetadata() == kTRUE) {
-      UInt_t _index = getTCT()->GetChainIndexFromCounter(_chainID);
-      if (_index == UINT_MAX) {
+      UInt_t index = getTCT()->GetChainIndexFromCounter(chainID);
+      if (index == UINT_MAX) {
         Warning("TrigConfInterface::getNHLTGroupNamesFromChainID", "Chain with Counter %i is not in the configuration.",
-                _chainID);
+                chainID);
         return 0;
       }
-      return getTCT()->GetChainGroupNameSize(_index);
+      return getTCT()->GetChainGroupNameSize(index);
     } else {
       Error("TrigConfInterface::getNHLTGroupNamesFromChainID", "XML based menu navigation not yet included.");
     }
@@ -277,24 +276,24 @@ namespace TrigCostRootAnalysis {
   /**
    * Fetch the name of one of the groups this chain is registered under.
    * TODO check that we don't need to add extra code for L2 and EF here?
-   * @param _chainID HLT ID number of chain
-   * @param _group the index of the group to fetch (0 to getNHLTGroupNamesFromChainID() -1)
+   * @param chainID HLT ID number of chain
+   * @param group the index of the group to fetch (0 to getNHLTGroupNamesFromChainID() -1)
    * @return New'd string of the group name.
    */
-  const std::string TrigConfInterface::getHLTGroupNameFromChainID(Int_t _chainID, UInt_t _group) {
+  const std::string TrigConfInterface::getHLTGroupNameFromChainID(Int_t chainID, UInt_t group) {
     if (getUsingNtupleMetadata() == kTRUE) {
-      UInt_t _index = getTCT()->GetChainIndexFromCounter(_chainID);
-      if (_index == UINT_MAX) {
+      UInt_t index = getTCT()->GetChainIndexFromCounter(chainID);
+      if (index == UINT_MAX) {
         Warning("TrigConfInterface::getHLTGroupNameFromChainID", "Chain with Counter %i is not in the configuration.",
-                _chainID);
+                chainID);
         return Config::config().getStr(kBlankString);
       }
-      if (_group >= getNHLTGroupNamesFromChainID(_chainID)) {
-        Warning("TrigConfInterface::getHLTGroupNameFromChainID", "Requested group %i out of range, size is %i.", _group, getNHLTGroupNamesFromChainID(
-                  _chainID));
+      if (group >= getNHLTGroupNamesFromChainID(chainID)) {
+        Warning("TrigConfInterface::getHLTGroupNameFromChainID", "Requested group %i out of range, size is %i.", group, getNHLTGroupNamesFromChainID(
+                  chainID));
         return Config::config().getStr(kBlankString);
       }
-      return getTCT()->GetChainGroupName(_index, _group);
+      return getTCT()->GetChainGroupName(index, group);
     } else {
       Error("TrigConfInterface::getHLTGroupNameFromChainID", "XML based menu navigation not yet included.");
     }
@@ -303,12 +302,12 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Fetch HLT sequence name from sequence index number. Uses advanced trigger configuration information.
-   * @param _index Index number of sequence.
+   * @param index Index number of sequence.
    * @return Const reference to sequence name. Empty string if invalid ID or if using unsupported access mode.
    */
-  const std::string& TrigConfInterface::getHLTSeqNameFromIndex(UInt_t _index) {
+  const std::string& TrigConfInterface::getHLTSeqNameFromIndex(UInt_t index) {
     if (getUsingNtupleMetadata() == kTRUE) {
-      return getTCT()->GetSequenceNameFromIndex(_index);
+      return getTCT()->GetSequenceNameFromIndex(index);
     } else {
       Error("TrigConfInterface::getHLTSeqNameFromIndex", "XML based menu navigation not yet included.");
     }
@@ -317,13 +316,13 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Fetch HLT algorithm name using the parents sequence index and position of algorithm within sequence.
-   * @param _index Index number of parent sequence.
-   * @param _position Position of algorithm within parent sequence.
+   * @param index Index number of parent sequence.
+   * @param position Position of algorithm within parent sequence.
    * @return Const reference to algorithm name. Empty string if invalid ID or if using unsupported access mode.
    */
-  const std::string& TrigConfInterface::getHLTAlgNameFromSeqIDAndAlgPos(UInt_t _index, UInt_t _position) {
+  const std::string& TrigConfInterface::getHLTAlgNameFromSeqIDAndAlgPos(UInt_t index, UInt_t position) {
     if (getUsingNtupleMetadata() == kTRUE) {
-      return getTCT()->GetAlgNameFromSeqIDAndAlgPos((int) _index, (int) _position);
+      return getTCT()->GetAlgNameFromSeqIDAndAlgPos((int) index, (int) position);
     } else {
       Error("TrigConfInterface::getHLTAlgNameFromSeqIDAndAlgPos", "XML based menu navigation not yet included.");
     }
@@ -332,13 +331,13 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Fetch hash of HLT algorithm name using the parents sequence index and position of algorithm within sequence.
-   * @param _index Index number of parent sequence.
-   * @param _position Position of algorithm within parent sequence.
+   * @param index Index number of parent sequence.
+   * @param position Position of algorithm within parent sequence.
    * @return Const reference to algorithm name. Empty string if invalid ID or if using unsupported access mode.
    */
-  UInt_t TrigConfInterface::getHLTAlgNameIDFromSeqIDAndAlgPos(UInt_t _index, UInt_t _position) {
+  UInt_t TrigConfInterface::getHLTAlgNameIDFromSeqIDAndAlgPos(UInt_t index, UInt_t position) {
     if (getUsingNtupleMetadata() == kTRUE) {
-      return getTCT()->GetAlgNameIDFromSeqIDAndAlgPos((int) _index, (int) _position);
+      return getTCT()->GetAlgNameIDFromSeqIDAndAlgPos((int) index, (int) position);
     } else {
       Error("TrigConfInterface::getHLTAlgNameIDFromSeqIDAndAlgPos", "XML based menu navigation not yet included.");
     }
@@ -347,14 +346,14 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Fetch HLT algorithm class type name using the parents sequence index and position of algorithm within sequence.
-   * @param _index Index number of parent sequence.
-   * @param _position Position of algorithm within parent sequence.
+   * @param index Index number of parent sequence.
+   * @param position Position of algorithm within parent sequence.
    * @return Const reference to algorithm class type name. Empty string if invalid ID or if using unsupported access
    *mode.
    */
-  const std::string& TrigConfInterface::getHLTAlgClassNameFromSeqIDAndAlgPos(UInt_t _index, UInt_t _position) {
+  const std::string& TrigConfInterface::getHLTAlgClassNameFromSeqIDAndAlgPos(UInt_t index, UInt_t position) {
     if (getUsingNtupleMetadata() == kTRUE) {
-      return getTCT()->GetAlgClassNameFromSeqIDAndAlgPos((Int_t) _index, (Int_t) _position);
+      return getTCT()->GetAlgClassNameFromSeqIDAndAlgPos((Int_t) index, (Int_t) position);
     } else {
       Error("TrigConfInterface::getHLTAlgClassNameFromSeqIDAndAlgPos", "XML based menu navigation not yet included.");
     }
@@ -364,13 +363,13 @@ namespace TrigCostRootAnalysis {
   /**
    * Fetch hash of HLT algorithm class type name using the parents sequence index and position of algorithm within
    *sequence.
-   * @param _index Index number of parent sequence.
-   * @param _position Position of algorithm within parent sequence.
+   * @param index Index number of parent sequence.
+   * @param position Position of algorithm within parent sequence.
    * @return Hash of algorithm class type name. 0 if invalid ID or if using unsupported access mode.
    */
-  UInt_t TrigConfInterface::getHLTAlgClassNameIDFromSeqIDAndAlgPos(UInt_t _index, UInt_t _position) {
+  UInt_t TrigConfInterface::getHLTAlgClassNameIDFromSeqIDAndAlgPos(UInt_t index, UInt_t position) {
     if (getUsingNtupleMetadata() == kTRUE) {
-      return getTCT()->GetAlgClassNameIDFromSeqIDAndAlgPos((Int_t) _index, (Int_t) _position);
+      return getTCT()->GetAlgClassNameIDFromSeqIDAndAlgPos((Int_t) index, (Int_t) position);
     } else {
       Error("TrigConfInterface::getHLTAlgClassNameIDFromSeqIDAndAlgPos", "XML based menu navigation not yet included.");
     }
@@ -379,14 +378,14 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Fetch prescale factor for given chain name.
-   * @param _chainName Name of chain to fetch prescale for.
+   * @param chainName Name of chain to fetch prescale for.
    * @return Floating point prescale factor for chain in current menu. 0 on fail.
    */
-  Float_t TrigConfInterface::getPrescale(std::string _chainName) {
+  Float_t TrigConfInterface::getPrescale(std::string chainName) {
     if (getUsingNtuplePrescales() == kTRUE) {
-      if (_chainName == Config::config().getStr(kAlwaysPassString)) return 1.;
+      if (chainName == Config::config().getStr(kAlwaysPassString)) return 1.;
 
-      return getTCT()->GetPrescale(_chainName);
+      return getTCT()->GetPrescale(chainName);
     } else {
       Error("TrigConfInterface::getPrescale", "XML based menu navigation not yet included.");
     }
@@ -406,37 +405,37 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Fetch a string key from the config metadata
-   * @param _m Which metadata to fetch.
+   * @param m Which metadata to fetch.
    * @return String key value for this metadata
    */
-  std::string TrigConfInterface::getMetaStringKey(UInt_t _m) {
+  std::string TrigConfInterface::getMetaStringKey(UInt_t m) {
     if (getUsingNtuplePrescales() == kTRUE) {
-      return getTCT()->GetMetaStringKey(_m);
+      return getTCT()->GetMetaStringKey(m);
     }
     return Config::config().getStr(kBlankString);
   }
 
   /**
    * Fetch a string payload from the config metadata
-   * @param _m Which metadata to fetch.
+   * @param m Which metadata to fetch.
    * @return String payload value for this metadata
    */
-  std::string TrigConfInterface::getMetaStringVal(UInt_t _m) {
+  std::string TrigConfInterface::getMetaStringVal(UInt_t m) {
     if (getUsingNtuplePrescales() == kTRUE) {
-      return getTCT()->GetMetaStringVal(_m);
+      return getTCT()->GetMetaStringVal(m);
     }
     return Config::config().getStr(kBlankString);
   }
 
   /**
    * Fetch a string payload from the config metadata
-   * @param _key String key to fetch
+   * @param key String key to fetch
    * @return String payload value for this metadata
    */
-  std::string TrigConfInterface::getMetaStringVal(std::string _key) {
+  std::string TrigConfInterface::getMetaStringVal(std::string key) {
     if (getUsingNtuplePrescales() == kTRUE) {
-      for (UInt_t _i = 0; _i < getMetaStringN(); ++_i) {
-        if (getMetaStringKey(_i) == _key) return getMetaStringVal(_i);
+      for (UInt_t i = 0; i < getMetaStringN(); ++i) {
+        if (getMetaStringKey(i) == key) return getMetaStringVal(i);
       }
     }
     return Config::config().getStr(kBlankString);
@@ -449,34 +448,34 @@ namespace TrigCostRootAnalysis {
    * @return Map of bunch group name -> number of BCIDs in bunch group
    */
   StringIntMap_t TrigConfInterface::getBunchGroupSetup() {
-    StringIntMap_t _BGDatabase, _BGCTPConf;
-    UInt_t _BCIDCountDB = 0, _BCIDCountCTPConf = 0;
+    StringIntMap_t BGDatabase, BGCTPConf;
+    UInt_t BCIDCountDB = 0, BCIDCountCTPConf = 0;
 
-    for (Int_t _bg = 0; _bg < Config::config().getInt(kNBunchGroups); ++_bg) {
-      std::stringstream _ss, _ssDB, _ssCTPName, _ssCTPSize;
+    for (Int_t bg = 0; bg < Config::config().getInt(kNBunchGroups); ++bg) {
+      std::stringstream ss, ssDB, ssCTPName, ssCTPSize;
       // Database
-      _ssDB << "DB:BGRP" << _bg;
-      std::string _BGDBVal = getMetaStringVal(_ssDB.str());
-      if (_BGDBVal != Config::config().getStr(kBlankString)) {
-        _ss << "BGRP" << _bg;
-        _BGDatabase[_ss.str()] = stringToInt(_BGDBVal);
-        _BCIDCountDB += stringToInt(_BGDBVal);
+      ssDB << "DB:BGRP" << bg;
+      std::string BGDBVal = getMetaStringVal(ssDB.str());
+      if (BGDBVal != Config::config().getStr(kBlankString)) {
+        ss << "BGRP" << bg;
+        BGDatabase[ss.str()] = stringToInt(BGDBVal);
+        BCIDCountDB += stringToInt(BGDBVal);
       }
       // CTP Config
-      _ssCTPName << "CTPConfig:NAME:BGRP" << _bg;
-      _ssCTPSize << "CTPConfig:SIZE:BGRP" << _bg;
-      std::string _CTPBGName = getMetaStringVal(_ssCTPName.str());
-      std::string _CTPBGSize = getMetaStringVal(_ssCTPSize.str());
-      if (_CTPBGName != Config::config().getStr(kBlankString) && _CTPBGSize != Config::config().getStr(kBlankString)) {
-        _BGCTPConf[_CTPBGName] = stringToInt(_CTPBGSize);
-        _BCIDCountCTPConf += stringToInt(_CTPBGSize);
+      ssCTPName << "CTPConfig:NAME:BGRP" << bg;
+      ssCTPSize << "CTPConfig:SIZE:BGRP" << bg;
+      std::string CTPBGName = getMetaStringVal(ssCTPName.str());
+      std::string CTPBGSize = getMetaStringVal(ssCTPSize.str());
+      if (CTPBGName != Config::config().getStr(kBlankString) && CTPBGSize != Config::config().getStr(kBlankString)) {
+        BGCTPConf[CTPBGName] = stringToInt(CTPBGSize);
+        BCIDCountCTPConf += stringToInt(CTPBGSize);
       }
     }
     // Hopefully these agree, but let's assume if not that the one with the most active BCIDs
-    if (_BCIDCountDB > _BCIDCountCTPConf) {
-      return _BGDatabase;
+    if (BCIDCountDB > BCIDCountCTPConf) {
+      return BGDatabase;
     } else {
-      return _BGCTPConf;
+      return BGCTPConf;
     }
   }
 
@@ -518,107 +517,107 @@ namespace TrigCostRootAnalysis {
   void TrigConfInterface::dump() {
     if (m_isConfigured == kFALSE) return;
 
-    const std::string _sm = intToString(getCurrentSMK());
+    const std::string sm = intToString(getCurrentSMK());
 
-    const std::string _fileName = std::string(Config::config().getStr(kOutputDirectory)
+    const std::string fileName = std::string(Config::config().getStr(kOutputDirectory)
                                               + "/TriggerConfiguration_"
                                               + getCurrentDBKey().name() + ".json");
     if (Config::config().debug()) Info("TrigConfInterface::dump", "Saving trigger configuration to %s",
-                                       _fileName.c_str());
+                                       fileName.c_str());
 
-    //std::ofstream _foutHtml( std::string(_fileName + ".htm").c_str() );
-    std::ofstream _foutJson(_fileName.c_str());
+    //std::ofstream _foutHtml( std::string(fileName + ".htm").c_str() );
+    std::ofstream foutJson(fileName.c_str());
 
-    JsonExport* _json = new JsonExport();
+    JsonExport* json = new JsonExport();
 
-    //_foutHtml << "<!DOCTYPE html><html><head><title>Menu Configuration</title></head><body>" << std::endl;
-    //_foutHtml << "<h1>Trigger Menu Configuration: " << getCurrentDBKey().name() << "</h1><p>" << std::endl;
-    //_foutHtml << "<ul>" << std::endl;
+    //foutHtml << "<!DOCTYPE html><html><head><title>Menu Configuration</title></head><body>" << std::endl;
+    //foutHtml << "<h1>Trigger Menu Configuration: " << getCurrentDBKey().name() << "</h1><p>" << std::endl;
+    //foutHtml << "<ul>" << std::endl;
 
-    _json->addNode(_foutJson, "Trigger", "TRG");
-    _json->addNode(_foutJson, "LVL1", "LV1");     // BEGIN
-    Bool_t _jsonDoingL1 = kTRUE;
+    json->addNode(foutJson, "Trigger", "TRG");
+    json->addNode(foutJson, "LVL1", "LV1");     // BEGIN
+    Bool_t jsonDoingL1 = kTRUE;
     // CHAIN
-    for (UInt_t _c = 0; _c < getTCT()->GetChainN(); ++_c) {
-      Bool_t _isL1 = kFALSE;
+    for (UInt_t c = 0; c < getTCT()->GetChainN(); ++c) {
+      Bool_t isL1 = kFALSE;
       //std::string _counter = "</b>, Counter:<i>";
-      if (getTCT()->GetChainLevel(_c) == 1) {
+      if (getTCT()->GetChainLevel(c) == 1) {
         //_counter = "</b>, CTPID:<i>";
-        _isL1 = kTRUE;
-      } else if (_jsonDoingL1 == kTRUE) {
+        isL1 = kTRUE;
+      } else if (jsonDoingL1 == kTRUE) {
         //switch over to HLT
-        _json->endNode(_foutJson); //END L1
-        _json->addNode(_foutJson, "HLT", "HLT");  // BEGINHLT
-        _jsonDoingL1 = kFALSE;
+        json->endNode(foutJson); //END L1
+        json->addNode(foutJson, "HLT", "HLT");  // BEGINHLT
+        jsonDoingL1 = kFALSE;
       }
-      //_foutHtml << "<hr>" << std::endl;
-      //_foutHtml << "<li>Trigger Chain: Name:<b>" << getTCT()->GetChainName(_c) << _counter <<
-      // getTCT()->GetChainCounter(_c) << "</i></li>" << std::endl;
-      std::string _chainName = getTCT()->GetChainName(_c);
-      _json->addNode(_foutJson, _chainName + " (PS:" + floatToString(getTCT()->GetPrescale(_chainName), 2) + ")", "C");
-      // _foutHtml << "<li>Prescale:<i>" << getPrescale( getTCT()->GetChainName(_c) ) << "</i></li>" << std::endl;
-      // if (getTCT()->GetChainGroupNameSize(_c)) {
-      //   _foutHtml << "<li>Groups:<i>";
-      //   for (UInt_t _g = 0; _g < getTCT()->GetChainGroupNameSize(_c); ++_g) {
-      //     _foutHtml << getTCT()->GetChainGroupName( _c, _g );
-      //     if (_g != getTCT()->GetChainGroupNameSize(_c) - 1) _foutHtml << ",";
+      //foutHtml << "<hr>" << std::endl;
+      //foutHtml << "<li>Trigger Chain: Name:<b>" << getTCT()->GetChainName(c) << _counter <<
+      // getTCT()->GetChainCounter(c) << "</i></li>" << std::endl;
+      std::string chainName = getTCT()->GetChainName(c);
+      json->addNode(foutJson, chainName + " (PS:" + floatToString(getTCT()->GetPrescale(chainName), 2) + ")", "C");
+      // foutHtml << "<li>Prescale:<i>" << getPrescale( getTCT()->GetChainName(c) ) << "</i></li>" << std::endl;
+      // if (getTCT()->GetChainGroupNameSize(c)) {
+      //   foutHtml << "<li>Groups:<i>";
+      //   for (UInt_t _g = 0; _g < getTCT()->GetChainGroupNameSize(c); ++_g) {
+      //     foutHtml << getTCT()->GetChainGroupName( c, _g );
+      //     if (_g != getTCT()->GetChainGroupNameSize(c) - 1) foutHtml << ",";
       //   }
-      //   _foutHtml << "</i></li>" << std::endl;
+      //   foutHtml << "</i></li>" << std::endl;
       // }
-      // if ( getTCT()->GetChainLevel(_c) > 1) {
-      //   _foutHtml << "<li>Lower Chain Name:" << getTCT()->GetLowerChainName( getTCT()->GetChainName(_c) ) << "</li>"
+      // if ( getTCT()->GetChainLevel(c) > 1) {
+      //   foutHtml << "<li>Lower Chain Name:" << getTCT()->GetLowerChainName( getTCT()->GetChainName(c) ) << "</li>"
       // << std::endl;
       // }
-      // if ( getTCT()->GetChainEBHypoNameSize(_c) > 0) {
+      // if ( getTCT()->GetChainEBHypoNameSize(c) > 0) {
       //   std::cout << "<li>Enhanced Bias Hypo Items:<i>";
-      //   _foutHtml << "<li>Enhanced Bias Hypo Items:<i>";
-      //   for (UInt_t _g = 0; _g < getTCT()->GetChainEBHypoNameSize(_c); ++_g) {
-      //     _foutHtml << getTCT()->GetChainEBHypoName( _c, _g );
-      //     if (_g != getTCT()->GetChainEBHypoNameSize(_c) - 1) _foutHtml << ",";
+      //   foutHtml << "<li>Enhanced Bias Hypo Items:<i>";
+      //   for (UInt_t g = 0; g < getTCT()->GetChainEBHypoNameSize(c); ++g) {
+      //     foutHtml << getTCT()->GetChainEBHypoName( c, g );
+      //     if (g != getTCT()->GetChainEBHypoNameSize(c) - 1) foutHtml << ",";
       //   }
-      //   _foutHtml << "</i></li>" << std::endl;
+      //   foutHtml << "</i></li>" << std::endl;
       // }
-      //_foutHtml << " <ol>" << std::endl;
+      //foutHtml << " <ol>" << std::endl;
       // SIGNATURE
-      for (UInt_t _s = 0; _s < getTCT()->GetSigN(_c); ++_s) {
-        UInt_t _nOutputTEs = getTCT()->GetSigNOutputTE(_c, _s);
-        if (!_isL1) _json->addNode(_foutJson, getTCT()->GetSigLabel(_c, _s), "SI"); // SIG STEP
-        //_foutHtml << " <li>Signature Step: Label:<b>" << getTCT()->GetSigLabel(_c, _s) << "</b>, Logic:<i>" <<
-        // getTCT()->GetSigLogic(_c, _s) << "</i></li>" << std::endl;
-        //_foutHtml << "  <ul>" << std::endl;
+      for (UInt_t s = 0; s < getTCT()->GetSigN(c); ++s) {
+        UInt_t nOutputTEs = getTCT()->GetSigNOutputTE(c, s);
+        if (!isL1) json->addNode(foutJson, getTCT()->GetSigLabel(c, s), "SI"); // SIG STEP
+        //foutHtml << " <li>Signature Step: Label:<b>" << getTCT()->GetSigLabel(c, s) << "</b>, Logic:<i>" <<
+        // getTCT()->GetSigLogic(c, s) << "</i></li>" << std::endl;
+        //foutHtml << "  <ul>" << std::endl;
         // SIG -> SEQ
-        for (Int_t _t = _nOutputTEs - 1; _t >= 0; --_t) {
-          UInt_t _outputTE = getTCT()->GetSigOutputTE(_c, _s, _t);
-          UInt_t _seq = getTCT()->GetSequenceIndex(_outputTE);
-          if (_seq != UINT_MAX) {
-            //_foutHtml << "  <li> Sequence: Name:<b>" << getTCT()->GetSeqName(_seq) << "</b>, Index:<i>" <<
-            // getTCT()->GetSeqIndex(_seq) << "</i></li>" << std::endl;
-            if (_isL1) _json->addLeaf(_foutJson, getTCT()->GetSeqName(_seq), "L1"); // L1 BG (does not need closing)
-            else _json->addNode(_foutJson, getTCT()->GetSeqName(_seq), "SE"); // SEQ STEP
-            //_foutHtml << "   <ol>" << std::endl;
+        for (Int_t t = nOutputTEs - 1; t >= 0; --t) {
+          UInt_t outputTE = getTCT()->GetSigOutputTE(c, s, t);
+          UInt_t seq = getTCT()->GetSequenceIndex(outputTE);
+          if (seq != UINT_MAX) {
+            //foutHtml << "  <li> Sequence: Name:<b>" << getTCT()->GetSeqName(seq) << "</b>, Index:<i>" <<
+            // getTCT()->GetSeqIndex(seq) << "</i></li>" << std::endl;
+            if (isL1) json->addLeaf(foutJson, getTCT()->GetSeqName(seq), "L1"); // L1 BG (does not need closing)
+            else json->addNode(foutJson, getTCT()->GetSeqName(seq), "SE"); // SEQ STEP
+            //foutHtml << "   <ol>" << std::endl;
             // ALG
-            for (UInt_t _a = 0; _a < getTCT()->GetAlgN(_seq); ++_a) {
-              _json->addLeaf(_foutJson, getTCT()->GetAlgName(_seq, _a), "A"); //ALG LEAF (does not need closing)
-              //_foutHtml << "   <li>Algorithm Instance/Class:<b>" << getTCT()->GetAlgName(_seq, _a) << " </b>/<b> " <<
-              // getTCT()->GetAlgTypeName(_seq, _a) << "</b></li>" << std::endl;
+            for (UInt_t a = 0; a < getTCT()->GetAlgN(seq); ++a) {
+              json->addLeaf(foutJson, getTCT()->GetAlgName(seq, a), "A"); //ALG LEAF (does not need closing)
+              //foutHtml << "   <li>Algorithm Instance/Class:<b>" << getTCT()->GetAlgName(seq, a) << " </b>/<b> " <<
+              // getTCT()->GetAlgTypeName(seq, a) << "</b></li>" << std::endl;
             }
-            //_foutHtml << "   </ol>" << std::endl;
-            if (!_isL1) _json->endNode(_foutJson); // SEQ STEP
+            //foutHtml << "   </ol>" << std::endl;
+            if (!isL1) json->endNode(foutJson); // SEQ STEP
           }
         }
-        //_foutHtml << "  </ul>" << std::endl;
-        if (!_isL1) _json->endNode(_foutJson); // SIG STEP
+        //foutHtml << "  </ul>" << std::endl;
+        if (!isL1) json->endNode(foutJson); // SIG STEP
       }
-      //_foutHtml << " </ol>" << std::endl;
-      _json->endNode(_foutJson); // CHAIN
+      //foutHtml << " </ol>" << std::endl;
+      json->endNode(foutJson); // CHAIN
     }
-    _json->endNode(_foutJson); //END HLT
-    _json->endNode(_foutJson); //END TRIGGER
-    _foutJson.close();
-    delete _json;
-    //_foutHtml << "</ul>" << std::endl;
-    //_foutHtml << "</p></body></html>" << std::endl;
-    //_foutHtml.close();
+    json->endNode(foutJson); //END HLT
+    json->endNode(foutJson); //END TRIGGER
+    foutJson.close();
+    delete json;
+    //foutHtml << "</ul>" << std::endl;
+    //foutHtml << "</p></body></html>" << std::endl;
+    //foutHtml.close();
   }
 
   /**
@@ -637,26 +636,26 @@ namespace TrigCostRootAnalysis {
    */
   void TrigConfInterface::debug() {
     Info("TrigConfInterface::debug", " Printing Full Trigger Menu");
-    for (UInt_t _s = 0; _s < getTCT()->GetSeqN(); ++_s) {
+    for (UInt_t s = 0; s < getTCT()->GetSeqN(); ++s) {
       Info("TrigConfInterface::debug", "Sequence: ID=%i\tIndex=%i\tNAlgs=%i\tNInputTEs=%i\tName=%s",
-           getTCT()->GetSeqID(_s),
-           getTCT()->GetSeqIndex(_s),
-           getTCT()->GetAlgN(_s),
-           getTCT()->GetSeqNInputTEs(_s),
-           getTCT()->GetSeqName(_s).c_str());
-      for (UInt_t _t = 0; _t < getTCT()->GetSeqNInputTEs(_s); ++_t) {
-        Info("TrigConfInterface::debug", "\tSequence Input TE #%i: %u", _t, getTCT()->GetSeqInputTE(_s, _t));
+           getTCT()->GetSeqID(s),
+           getTCT()->GetSeqIndex(s),
+           getTCT()->GetAlgN(s),
+           getTCT()->GetSeqNInputTEs(s),
+           getTCT()->GetSeqName(s).c_str());
+      for (UInt_t t = 0; t < getTCT()->GetSeqNInputTEs(s); ++t) {
+        Info("TrigConfInterface::debug", "\tSequence Input TE #%i: %u", t, getTCT()->GetSeqInputTE(s, t));
       }
       // Algorithm
-      for (UInt_t _a = 0; _a < getTCT()->GetAlgN(_s); ++_a) {
+      for (UInt_t a = 0; a < getTCT()->GetAlgN(s); ++a) {
         Info("TrigConfInterface::debug",
              "\tAlgorithm: Index=%i\tPosition=%i\tNameHash=%u\tTypeNameHash=%u\tName=%s\tTypeName=%s",
-             getTCT()->GetAlgIndex(_s, _a),
-             getTCT()->GetAlgPosition(_s, _a),
-             getTCT()->GetAlgNameID(_s, _a),
-             getTCT()->GetAlgTypeID(_s, _a),
-             getTCT()->GetAlgName(_s, _a).c_str(),
-             getTCT()->GetAlgTypeName(_s, _a).c_str());
+             getTCT()->GetAlgIndex(s, a),
+             getTCT()->GetAlgPosition(s, a),
+             getTCT()->GetAlgNameID(s, a),
+             getTCT()->GetAlgTypeID(s, a),
+             getTCT()->GetAlgName(s, a).c_str(),
+             getTCT()->GetAlgTypeName(s, a).c_str());
       }
     }
   }
@@ -665,94 +664,94 @@ namespace TrigCostRootAnalysis {
     return getTCT()->GetChainN();
   }
 
-  UInt_t TrigConfInterface::getChainLevel(UInt_t _c) {
-    return getTCT()->GetChainLevel(_c);
+  UInt_t TrigConfInterface::getChainLevel(UInt_t c) {
+    return getTCT()->GetChainLevel(c);
   }
 
-  UInt_t TrigConfInterface::getChainCounter(UInt_t _c) {
-    return getTCT()->GetChainCounter(_c);
+  UInt_t TrigConfInterface::getChainCounter(UInt_t c) {
+    return getTCT()->GetChainCounter(c);
   }
 
-  std::string TrigConfInterface::getChainName(UInt_t _c) {
-    return getTCT()->GetChainName(_c);
+  std::string TrigConfInterface::getChainName(UInt_t c) {
+    return getTCT()->GetChainName(c);
   }
 
-  UInt_t TrigConfInterface::getChainEBHypoNameSize(UInt_t _c) {
-    return getTCT()->GetChainEBHypoNameSize(_c);
+  UInt_t TrigConfInterface::getChainEBHypoNameSize(UInt_t c) {
+    return getTCT()->GetChainEBHypoNameSize(c);
   }
 
-  std::string TrigConfInterface::getChainEBHypoName(UInt_t _c, UInt_t _h) {
-    return getTCT()->GetChainEBHypoName(_c, _h);
+  std::string TrigConfInterface::getChainEBHypoName(UInt_t c, UInt_t h) {
+    return getTCT()->GetChainEBHypoName(c, h);
   }
 
-  UInt_t TrigConfInterface::getChainGroupsNameSize(UInt_t _c) {
-    return getTCT()->GetChainGroupNameSize(_c);
+  UInt_t TrigConfInterface::getChainGroupsNameSize(UInt_t c) {
+    return getTCT()->GetChainGroupNameSize(c);
   }
 
-  std::string TrigConfInterface::getChainGroupName(UInt_t _c, UInt_t _g) {
-    return getTCT()->GetChainGroupName(_c, _g);
+  std::string TrigConfInterface::getChainGroupName(UInt_t c, UInt_t g) {
+    return getTCT()->GetChainGroupName(c, g);
   }
 
-  UInt_t TrigConfInterface::getChainStreamNameSize(UInt_t _c) {
-    return getTCT()->GetChainStreamNameSize(_c);
+  UInt_t TrigConfInterface::getChainStreamNameSize(UInt_t c) {
+    return getTCT()->GetChainStreamNameSize(c);
   }
 
-  std::string TrigConfInterface::getChainStreamName(UInt_t _c, UInt_t _g) {
-    return getTCT()->GetChainStreamName(_c, _g);
+  std::string TrigConfInterface::getChainStreamName(UInt_t c, UInt_t g) {
+    return getTCT()->GetChainStreamName(c, g);
   }
 
-  const std::vector<std::string>& TrigConfInterface::getChainRatesGroupNames(UInt_t _c) { // Now with caching
-    static std::map<UInt_t, std::vector<std::string> > _groups;
-    static std::vector<std::string> _emptyVector;
+  const std::vector<std::string>& TrigConfInterface::getChainRatesGroupNames(UInt_t c) { // Now with caching
+    static std::map<UInt_t, std::vector<std::string> > groups;
+    static std::vector<std::string> emptyVector;
 
-    if (_groups.count(_c) == 0) { // Populate
-      _groups[_c] = std::vector<std::string>();
-      for (UInt_t _group = 0; _group < getTCT()->GetChainGroupNameSize(_c); ++_group) {
-        std::string _groupName = getTCT()->GetChainGroupName(_c, _group);
-        if (_groupName.find("Rate:") != std::string::npos || _groupName.find("RATE:") != std::string::npos) {
+    if (groups.count(c) == 0) { // Populate
+      groups[c] = std::vector<std::string>();
+      for (UInt_t group = 0; group < getTCT()->GetChainGroupNameSize(c); ++group) {
+        std::string groupName = getTCT()->GetChainGroupName(c, group);
+        if (groupName.find("Rate:") != std::string::npos || groupName.find("RATE:") != std::string::npos) {
           // Veto CPS groups - these have their own system
-          if (_groupName.find("CPS") != std::string::npos) continue;
-          std::replace(_groupName.begin(), _groupName.end(), ':', '_'); // A ":" can cause issues in TDirectory naming
+          if (groupName.find("CPS") != std::string::npos) continue;
+          std::replace(groupName.begin(), groupName.end(), ':', '_'); // A ":" can cause issues in TDirectory naming
                                                                         // structure. "_" is safe.
-          _groups[_c].push_back(_groupName);
+          groups[c].push_back(groupName);
         }
       }
     }
-    return _groups[_c];
+    return groups[c];
   }
 
-  std::vector<std::string> TrigConfInterface::getChainStreamNames(UInt_t _c) {
-    std::vector<std::string> _streams;
-    for (UInt_t _stream = 0; _stream < getTCT()->GetChainStreamNameSize(_c); ++_stream) {
-      if (getTCT()->GetChainStreamName(_c, _stream) == "Main") continue; // These are handled on their own
-      if (getTCT()->GetChainStreamName(_c, _stream) == "express") continue;
-      std::stringstream _streamName;
-      _streamName << "STREAM_" << getTCT()->GetChainStreamName(_c, _stream);
-      _streams.push_back(_streamName.str());
+  std::vector<std::string> TrigConfInterface::getChainStreamNames(UInt_t c) {
+    std::vector<std::string> streams;
+    for (UInt_t stream = 0; stream < getTCT()->GetChainStreamNameSize(c); ++stream) {
+      if (getTCT()->GetChainStreamName(c, stream) == "Main") continue; // These are handled on their own
+      if (getTCT()->GetChainStreamName(c, stream) == "express") continue;
+      std::stringstream streamName;
+      streamName << "STREAM_" << getTCT()->GetChainStreamName(c, stream);
+      streams.push_back(streamName.str());
     }
-    return _streams;
+    return streams;
   }
 
-  Bool_t TrigConfInterface::getChainIsMainStream(UInt_t _c) {
-    for (UInt_t _s = 0; _s < getChainStreamNameSize(_c); ++_s) {
-      if (getChainStreamName(_c, _s) == "Main") return kTRUE;
+  Bool_t TrigConfInterface::getChainIsMainStream(UInt_t c) {
+    for (UInt_t s = 0; s < getChainStreamNameSize(c); ++s) {
+      if (getChainStreamName(c, s) == "Main") return kTRUE;
     }
     return kFALSE;
   }
 
-  std::string TrigConfInterface::getChainCPSGroup(UInt_t _c) {
-    std::string _cpsGroup = "";
-    for (UInt_t _group = 0; _group < getTCT()->GetChainGroupNameSize(_c); ++_group) {
-      std::string _groupName = getTCT()->GetChainGroupName(_c, _group);
-      if (_groupName.find("CPS") != std::string::npos) {
-        std::replace(_groupName.begin(), _groupName.end(), ':', '_'); // A ":" can cause issues in TDirectory naming
+  std::string TrigConfInterface::getChainCPSGroup(UInt_t c) {
+    std::string cpsGroup = "";
+    for (UInt_t group = 0; group < getTCT()->GetChainGroupNameSize(c); ++group) {
+      std::string groupName = getTCT()->GetChainGroupName(c, group);
+      if (groupName.find("CPS") != std::string::npos) {
+        std::replace(groupName.begin(), groupName.end(), ':', '_'); // A ":" can cause issues in TDirectory naming
                                                                       // structure. "_" is safe.
-        if (_cpsGroup == "") _cpsGroup = _groupName;
+        if (cpsGroup == "") cpsGroup = groupName;
         else Warning("TrigConfInterface::getChainCPSGroup",
                      "Chain %s has more than one CPS group (%s, %s). This is not supported.", getChainName(
-                       _c).c_str(), _cpsGroup.c_str(), _groupName.c_str());
+                       c).c_str(), cpsGroup.c_str(), groupName.c_str());
       }
     }
-    return _cpsGroup;
+    return cpsGroup;
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/TrigCostData.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/TrigCostData.cxx
index 67d185a7c9a190e5fbf2610d712cd80c2899d421..5e0d964b7c96b23ecfde0520b8e04d44de1eb187 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/TrigCostData.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/TrigCostData.cxx
@@ -43,24 +43,24 @@ namespace TrigCostRootAnalysis {
    * It provides user-friendly access functions for all stored data types, abstracting away that the information
    * is stored in a series of nested std::vector objects.
    *
-   * @see setup(const Long64_t& _master, const char* _prefix, TTree* _tree)
-   * @param _master Reference to master event counter. This always holds the currently loaded event in the TTree.
-   * @param _prefix D3PDMaker prefix given to all branches.
-   * @param _tree Pointer to the TTree containing the data branches.
+   * @see setup(const Long64_t& master, const char* prefix, TTree* tree)
+   * @param master Reference to master event counter. This always holds the currently loaded event in the TTree.
+   * @param prefix D3PDMaker prefix given to all branches.
+   * @param tree Pointer to the TTree containing the data branches.
    */
-  TrigCostData::TrigCostData(const Long64_t& _master, const char* _prefix, TTree* _tree) :
+  TrigCostData::TrigCostData(const Long64_t& master, const char* prefix, TTree* tree) :
     m_parent(0),
     m_bufferEventNumber(-1),
     m_hasLumiData(kTRUE),
     m_emptySet(),
     m_trigCostObject(0) {
-    setup(_master, _prefix, _tree);
+    setup(master, prefix, tree);
   }
 
   /**
    * TrigCostData constructor. Empty constructor. Must subsiquently call setup()
-   * @see TrigCostData(const Long64_t& _master, const char* _prefix, TTree* _tree)
-   * @see setup(const Long64_t& _master, const char* _prefix, TTree* _tree)
+   * @see TrigCostData(const Long64_t& master, const char* prefix, TTree* tree)
+   * @see setup(const Long64_t& master, const char* prefix, TTree* tree)
    */
   TrigCostData::TrigCostData() :
     m_parent(0),
@@ -81,12 +81,12 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Setup underlying D3PDReader. Detailed description in costructor.
-   * @see TrigCostData(const Long64_t& _master, const char* _prefix, TTree* _tree)
+   * @see TrigCostData(const Long64_t& master, const char* prefix, TTree* tree)
    */
-  void TrigCostData::setup(const Long64_t& _master, const char* _prefix, TTree* _tree) {
-    // Very important: _master is pass by ref, used directly
-    m_trigCostObject = new D3PDReader::TrigCostD3PDObject(_master, _prefix);
-    m_trigCostObject->ReadFrom(_tree);
+  void TrigCostData::setup(const Long64_t& master, const char* prefix, TTree* tree) {
+    // Very important: master is pass by ref, used directly
+    m_trigCostObject = new D3PDReader::TrigCostD3PDObject(master, prefix);
+    m_trigCostObject->ReadFrom(tree);
 #ifdef MTHREAD
     m_trigCostObject->SetActive();
 #endif
@@ -95,33 +95,33 @@ namespace TrigCostRootAnalysis {
   }
 
   /**
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    * @return Float version of algorithm start time.
    */
-  Float_t TrigCostData::getSeqAlgTimeStart(UInt_t _n, UInt_t _a) const {
+  Float_t TrigCostData::getSeqAlgTimeStart(UInt_t n, UInt_t a) const {
     MUTEX_ON
-    Float_t _r =
-      (m_trigCostObject->seq_alg_timeStartMicroSec()->at(_n).at(_a) / 1e6 +
-       m_trigCostObject->seq_alg_timeStartSec()->at(_n).at(_a));
+    Float_t r =
+      (m_trigCostObject->seq_alg_timeStartMicroSec()->at(n).at(a) / 1e6 +
+       m_trigCostObject->seq_alg_timeStartSec()->at(n).at(a));
 
     MUTEX_OFF
-    return _r;
+    return r;
   }
 
   /**
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    * @return Float version of algorithm start time.
    */
-  Float_t TrigCostData::getSeqAlgTimeStop(UInt_t _n, UInt_t _a) const {
+  Float_t TrigCostData::getSeqAlgTimeStop(UInt_t n, UInt_t a) const {
     MUTEX_ON
-    Float_t _r =
-      (m_trigCostObject->seq_alg_timeStopMicroSec()->at(_n).at(_a) / 1e6 +
-       m_trigCostObject->seq_alg_timeStopSec()->at(_n).at(_a));
+    Float_t r =
+      (m_trigCostObject->seq_alg_timeStopMicroSec()->at(n).at(a) / 1e6 +
+       m_trigCostObject->seq_alg_timeStopSec()->at(n).at(a));
 
     MUTEX_OFF
-    return _r;
+    return r;
   }
 
   /**
@@ -129,10 +129,10 @@ namespace TrigCostRootAnalysis {
    */
   Int_t TrigCostData::getEventNumber() const {
     MUTEX_ON
-    Int_t _R = m_trigCostObject->eventNumber();
+    Int_t R = m_trigCostObject->eventNumber();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -140,10 +140,10 @@ namespace TrigCostRootAnalysis {
    */
   UInt_t TrigCostData::getBunchCrossingId() const {
     MUTEX_ON
-    Int_t _R = m_trigCostObject->bunchCrossingId();
+    Int_t R = m_trigCostObject->bunchCrossingId();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -153,10 +153,10 @@ namespace TrigCostRootAnalysis {
    */
   Float_t TrigCostData::getEBWeight() const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->ebWeight();
+    Float_t R = m_trigCostObject->ebWeight();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -167,10 +167,10 @@ namespace TrigCostRootAnalysis {
    */
   UInt_t TrigCostData::getEBWeightBG() const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->ebWeightBG();
+    UInt_t R = m_trigCostObject->ebWeightBG();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -179,10 +179,10 @@ namespace TrigCostRootAnalysis {
    */
   Bool_t TrigCostData::getEBUnbiased() const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->ebUnbiased();
+    Bool_t R = (Bool_t) m_trigCostObject->ebUnbiased();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -190,10 +190,10 @@ namespace TrigCostRootAnalysis {
    */
   Bool_t TrigCostData::getIsMonitoringEvent() const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->ranScaleTools();
+    Bool_t R = (Bool_t) m_trigCostObject->ranScaleTools();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -201,10 +201,10 @@ namespace TrigCostRootAnalysis {
    */
   Int_t TrigCostData::getRunNumber() const {
     MUTEX_ON
-    Int_t _R = m_trigCostObject ? m_trigCostObject->runNumber() : 0;
+    Int_t R = m_trigCostObject ? m_trigCostObject->runNumber() : 0;
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -212,10 +212,10 @@ namespace TrigCostRootAnalysis {
    */
   Int_t TrigCostData::getLumi() const {
     MUTEX_ON
-    Int_t _R = m_trigCostObject->lumi();
+    Int_t R = m_trigCostObject->lumi();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -224,13 +224,13 @@ namespace TrigCostRootAnalysis {
   Float_t TrigCostData::getLumiLength() const {
     if (m_hasLumiData) {
       MUTEX_ON
-      Float_t _lbl = m_trigCostObject->lumiLength();
+      Float_t lbl = m_trigCostObject->lumiLength();
       MUTEX_OFF
-      if (isZero(_lbl)) {
+      if (isZero(lbl)) {
         m_hasLumiData = kFALSE;
         return Config::config().getInt(kDefaultLBLength);
       }
-      return _lbl;
+      return lbl;
     }
     return Config::config().getInt(kDefaultLBLength);
   }
@@ -240,10 +240,10 @@ namespace TrigCostRootAnalysis {
    */
   UInt_t TrigCostData::getAppId() const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->appId();
+    UInt_t R = m_trigCostObject->appId();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -251,10 +251,10 @@ namespace TrigCostRootAnalysis {
    */
   Float_t TrigCostData::getCostEvent() const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->costEvent();
+    Float_t R = m_trigCostObject->costEvent();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -262,10 +262,10 @@ namespace TrigCostRootAnalysis {
    */
   UInt_t TrigCostData::getCostRunSec() const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->costRunSec();
+    UInt_t R = m_trigCostObject->costRunSec();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -273,10 +273,10 @@ namespace TrigCostRootAnalysis {
    */
   UInt_t TrigCostData::getCostRunNsec() const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->costRunNsec();
+    UInt_t R = m_trigCostObject->costRunNsec();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -284,10 +284,10 @@ namespace TrigCostRootAnalysis {
    */
   Float_t TrigCostData::getTimerTrigCost() const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->timerTrigCost();
+    Float_t R = m_trigCostObject->timerTrigCost();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -295,10 +295,10 @@ namespace TrigCostRootAnalysis {
    */
   Float_t TrigCostData::getTimerEndSteer() const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->timerEndSteer();
+    Float_t R = m_trigCostObject->timerEndSteer();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -306,10 +306,10 @@ namespace TrigCostRootAnalysis {
    */
   Float_t TrigCostData::getTimerChainProcessed() const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->timerChainProcess();
+    Float_t R = m_trigCostObject->timerChainProcess();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -317,10 +317,10 @@ namespace TrigCostRootAnalysis {
    */
   Float_t TrigCostData::getTimerResultBuilder() const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->timerResultBuilder();
+    Float_t R = m_trigCostObject->timerResultBuilder();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -328,10 +328,10 @@ namespace TrigCostRootAnalysis {
    */
   Float_t TrigCostData::getTimerMonitoring() const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->timerMon();
+    Float_t R = m_trigCostObject->timerMon();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -339,156 +339,156 @@ namespace TrigCostRootAnalysis {
    */
   UInt_t TrigCostData::getNChains() const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->chain_n();
+    UInt_t R = m_trigCostObject->chain_n();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return The ID of the chain.
    */
-  Int_t TrigCostData::getChainID(UInt_t _n) const {
+  Int_t TrigCostData::getChainID(UInt_t n) const {
     MUTEX_ON
-    Int_t _R = m_trigCostObject->chain_counter()->at(_n);
+    Int_t R = m_trigCostObject->chain_counter()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return Numeric level of this chain (1, 2, 3).
    */
-  Int_t TrigCostData::getChainLevel(UInt_t _n) const {
+  Int_t TrigCostData::getChainLevel(UInt_t n) const {
     MUTEX_ON
-    Int_t _R = m_trigCostObject->chain_level()->at(_n);
+    Int_t R = m_trigCostObject->chain_level()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return If the chain passed the physics trigger in this event.
    */
-  Bool_t TrigCostData::getIsChainPassed(UInt_t _n) const {
+  Bool_t TrigCostData::getIsChainPassed(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->chain_isPassed()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->chain_isPassed()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return If the chain passed raw (before any vetoes).
    */
-  Bool_t TrigCostData::getIsChainPassedRaw(UInt_t _n) const {
+  Bool_t TrigCostData::getIsChainPassedRaw(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->chain_isPassedRaw()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->chain_isPassedRaw()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return If the chain was accepted as passthrough.
    */
-  Bool_t TrigCostData::getIsChainPassthrough(UInt_t _n) const {
+  Bool_t TrigCostData::getIsChainPassthrough(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->chain_isPassthrough()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->chain_isPassthrough()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return If the chain was resurrected from re-running the HLT.
    */
-  Bool_t TrigCostData::getIsChainResurrected(UInt_t _n) const {
+  Bool_t TrigCostData::getIsChainResurrected(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->chain_isResurrected()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->chain_isResurrected()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return If the chain was prescaled. Use the trigger configuration classes to return the prescale value.
    */
-  Bool_t TrigCostData::getIsChainPrescaled(UInt_t _n) const {
+  Bool_t TrigCostData::getIsChainPrescaled(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->chain_isPrescaled()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->chain_isPrescaled()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return If the chain was in the express stream.
    */
-  Bool_t TrigCostData::getIsChainExpressStream(UInt_t _n) const {
+  Bool_t TrigCostData::getIsChainExpressStream(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->chain_isExpressStream()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->chain_isExpressStream()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return If the chain's L1 seeding item passed L1 prescales and deadtime requirements.
    */
-  Bool_t TrigCostData::getIfChainWasL1AfterVeto(UInt_t _n) const {
+  Bool_t TrigCostData::getIfChainWasL1AfterVeto(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->chain_wasL1AfterVeto()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->chain_wasL1AfterVeto()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return If the chain's L1 seeding item passed before L1 prescales were applied.
    */
-  Bool_t TrigCostData::getIfChainWasL1BeforePrescale(UInt_t _n) const {
+  Bool_t TrigCostData::getIfChainWasL1BeforePrescale(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->chain_wasL1BeforePrescale()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->chain_wasL1BeforePrescale()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return If the chain's L1 seeding item passed after L1 prescale was applied.
    */
-  Bool_t TrigCostData::getIfChainWasL1AfterPrescale(UInt_t _n) const {
+  Bool_t TrigCostData::getIfChainWasL1AfterPrescale(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->chain_wasL1AfterPrescale()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->chain_wasL1AfterPrescale()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
    * Get time taken to execute chain as stored by the chain itself. This may not be filled.
-   * @see getChainTimerFromSequences(UInt_t _n)
-   * @param _n Chain index in D3PD.
+   * @see getChainTimerFromSequences(UInt_t n)
+   * @param n Chain index in D3PD.
    * @return Time taken to execute the chain.
    */
-  Float_t TrigCostData::getChainTimer(UInt_t _n) const {
+  Float_t TrigCostData::getChainTimer(UInt_t n) const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->chain_timer()->at(_n);
+    Float_t R = m_trigCostObject->chain_timer()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -496,94 +496,94 @@ namespace TrigCostRootAnalysis {
    */
   UInt_t TrigCostData::getNL1() const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->l1_n();
+    UInt_t R = m_trigCostObject->l1_n();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n L1 chain index in D3PD.
+   * @param n L1 chain index in D3PD.
    * @return CTP ID number for L1 chain.
    */
-  UInt_t TrigCostData::getL1CtpId(UInt_t _n) const {
+  UInt_t TrigCostData::getL1CtpId(UInt_t n) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->l1_ctpId()->at(_n);
+    UInt_t R = m_trigCostObject->l1_ctpId()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n L1 chain index in D3PD.
+   * @param n L1 chain index in D3PD.
    * @return If chain was prescale (prescale != 1).
    */
-  Bool_t TrigCostData::getIsL1Prescaled(UInt_t _n) const {
+  Bool_t TrigCostData::getIsL1Prescaled(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->l1_isPrescaled()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->l1_isPrescaled()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n L1 chain index in D3PD.
+   * @param n L1 chain index in D3PD.
    * @return If chain was vetoed (due to deadtime).
    */
-  Bool_t TrigCostData::getIsL1Vetoed(UInt_t _n) const {
+  Bool_t TrigCostData::getIsL1Vetoed(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->l1_isVetoed()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->l1_isVetoed()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n L1 chain index in D3PD.
+   * @param n L1 chain index in D3PD.
    * @return If L1 chain passed (caused a L1 accept)
    */
-  Bool_t TrigCostData::getIsL1Passed(UInt_t _n) const {
+  Bool_t TrigCostData::getIsL1Passed(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->l1_passed()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->l1_passed()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n L1 chain index in D3PD.
+   * @param n L1 chain index in D3PD.
    * @return If chain passed after the application of the L1 prescale.
    */
-  Bool_t TrigCostData::getIsL1PassedAfterPrescale(UInt_t _n) const {
+  Bool_t TrigCostData::getIsL1PassedAfterPrescale(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->l1_passedAfterPrescale()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->l1_passedAfterPrescale()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n L1 chain index in D3PD.
+   * @param n L1 chain index in D3PD.
    * @return If chain passed before L1 prescale was applied.
    */
-  Bool_t TrigCostData::getIsL1PassedBeforePrescale(UInt_t _n) const {
+  Bool_t TrigCostData::getIsL1PassedBeforePrescale(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->l1_passedBeforePrescale()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->l1_passedBeforePrescale()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n L1 chain index in D3PD.
+   * @param n L1 chain index in D3PD.
    * @return If the chain passed after the L1 veto (deadtime) was applied.
    */
-  Bool_t TrigCostData::getIsL1PassedAfterVeto(UInt_t _n) const {
+  Bool_t TrigCostData::getIsL1PassedAfterVeto(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->l1_passedAfterVeto()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->l1_passedAfterVeto()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -591,251 +591,251 @@ namespace TrigCostRootAnalysis {
    */
   UInt_t TrigCostData::getNSequences() const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->seq_n();
+    UInt_t R = m_trigCostObject->seq_n();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
    * Note here the slight clash of nomenclature, the return is the HLT index. It is not related to the D3PD structure.
-   * @param _n Sequence index in D3PD.
+   * @param n Sequence index in D3PD.
    * @return The sequence index ID.
    */
-  Int_t TrigCostData::getSequenceIndex(UInt_t _n) const {
+  Int_t TrigCostData::getSequenceIndex(UInt_t n) const {
     MUTEX_ON
-    Int_t _R = m_trigCostObject->seq_index()->at(_n);
+    Int_t R = m_trigCostObject->seq_index()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Sequence index in D3PD.
+   * @param n Sequence index in D3PD.
    * @return The sequence's parent chain ID.
    */
-  Int_t TrigCostData::getSequenceChannelCounter(UInt_t _n) const {
+  Int_t TrigCostData::getSequenceChannelCounter(UInt_t n) const {
     MUTEX_ON
-    Int_t _R = m_trigCostObject->seq_channelCounter()->at(_n);
+    Int_t R = m_trigCostObject->seq_channelCounter()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Sequence index in D3PD.
+   * @param n Sequence index in D3PD.
    * @return Numeric level of this sequence (2 or 3).
    */
-  Int_t TrigCostData::getSequenceLevel(UInt_t _n) const {
+  Int_t TrigCostData::getSequenceLevel(UInt_t n) const {
     MUTEX_ON
-    Int_t _R = m_trigCostObject->seq_level()->at(_n);
+    Int_t R = m_trigCostObject->seq_level()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Sequence index in D3PD.
+   * @param n Sequence index in D3PD.
    * @return The total time of sequence execution based on the algorithms in the sequence.
    */
-  Float_t TrigCostData::getSequenceAlgTotalTime(UInt_t _n) const {
+  Float_t TrigCostData::getSequenceAlgTotalTime(UInt_t n) const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->seq_algTotalTime()->at(_n);
+    Float_t R = m_trigCostObject->seq_algTotalTime()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
    * This direct fetch may not be filled.
-   * @see getSequenceAlgTotalTime(UInt_t _n)
-   * @param _n Sequence index in D3PD.
+   * @see getSequenceAlgTotalTime(UInt_t n)
+   * @param n Sequence index in D3PD.
    * @return The total time of sequence execution.
    */
-  Float_t TrigCostData::getSequenceTime(UInt_t _n) const {
+  Float_t TrigCostData::getSequenceTime(UInt_t n) const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->seq_timer()->at(_n);
+    Float_t R = m_trigCostObject->seq_timer()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
    * Get if this sequence Trigger Element was cached.
-   * @param _n Sequence index in D3PD.
+   * @param n Sequence index in D3PD.
    * @return If the sequence was already executed in the event.
    */
-  Bool_t TrigCostData::getIsSequenceAlreadyExecuted(UInt_t _n) const {
+  Bool_t TrigCostData::getIsSequenceAlreadyExecuted(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->seq_isAlreadyExecuted()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->seq_isAlreadyExecuted()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Sequence index in D3PD.
+   * @param n Sequence index in D3PD.
    * @return If the sequence's algorithms were executed for its parent chain in this event.
    */
-  Bool_t TrigCostData::getIsSequenceExecuted(UInt_t _n) const {
+  Bool_t TrigCostData::getIsSequenceExecuted(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->seq_isExecuted()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->seq_isExecuted()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Sequence index in D3PD.
+   * @param n Sequence index in D3PD.
    * @return If was initialisation of sequence execution.
    */
-  Bool_t TrigCostData::getIsSequenceInitial(UInt_t _n) const {
+  Bool_t TrigCostData::getIsSequenceInitial(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->seq_isInitial()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->seq_isInitial()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Sequence index in D3PD.
+   * @param n Sequence index in D3PD.
    * @return If sequence was executed by other sequence.
    */
-  Bool_t TrigCostData::getIsSequencePrevious(UInt_t _n) const {
+  Bool_t TrigCostData::getIsSequencePrevious(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->seq_isPrevious()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->seq_isPrevious()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Sequence index in D3PD.
+   * @param n Sequence index in D3PD.
    * @return Number of algorithms in this sequence.
    */
-  UInt_t TrigCostData::getNSeqAlgs(UInt_t _n) const {
+  UInt_t TrigCostData::getNSeqAlgs(UInt_t n) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->seq_alg_n()->at(_n);
+    UInt_t R = m_trigCostObject->seq_alg_n()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    * @return Time of algorithm execution.
    */
-  Float_t TrigCostData::getSeqAlgTimer(UInt_t _n, UInt_t _a) const {
+  Float_t TrigCostData::getSeqAlgTimer(UInt_t n, UInt_t a) const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->seq_alg_timer()->at(_n).at(_a);
+    Float_t R = m_trigCostObject->seq_alg_timer()->at(n).at(a);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    * @return Algorithm start time seconds  (1 hour range, 0-3599).
    */
-  UInt_t TrigCostData::getSeqAlgTimeStartSec(UInt_t _n, UInt_t _a) const {
+  UInt_t TrigCostData::getSeqAlgTimeStartSec(UInt_t n, UInt_t a) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->seq_alg_timeStartSec()->at(_n).at(_a);
+    UInt_t R = m_trigCostObject->seq_alg_timeStartSec()->at(n).at(a);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    * @return Algorithm start time micro seconds .
    */
-  UInt_t TrigCostData::getSeqAlgTimeStartMicroSec(UInt_t _n, UInt_t _a) const {
+  UInt_t TrigCostData::getSeqAlgTimeStartMicroSec(UInt_t n, UInt_t a) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->seq_alg_timeStartMicroSec()->at(_n).at(_a);
+    UInt_t R = m_trigCostObject->seq_alg_timeStartMicroSec()->at(n).at(a);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    * @return Algorithm stop time seconds (1 hour range, 0-3599).
    */
-  UInt_t TrigCostData::getSeqAlgTimeStopSec(UInt_t _n, UInt_t _a) const {
+  UInt_t TrigCostData::getSeqAlgTimeStopSec(UInt_t n, UInt_t a) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->seq_alg_timeStopSec()->at(_n).at(_a);
+    UInt_t R = m_trigCostObject->seq_alg_timeStopSec()->at(n).at(a);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    * @return Algorithm stop time micro seconds .
    */
-  UInt_t TrigCostData::getSeqAlgTimeStopMicroSec(UInt_t _n, UInt_t _a) const {
+  UInt_t TrigCostData::getSeqAlgTimeStopMicroSec(UInt_t n, UInt_t a) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->seq_alg_timeStopMicroSec()->at(_n).at(_a);
+    UInt_t R = m_trigCostObject->seq_alg_timeStopMicroSec()->at(n).at(a);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    * @return Position of algorithm in sequence execution.
    */
-  Int_t TrigCostData::getSeqAlgPosition(UInt_t _n, UInt_t _a) const {
+  Int_t TrigCostData::getSeqAlgPosition(UInt_t n, UInt_t a) const {
     MUTEX_ON
-    Int_t _R = (Int_t) m_trigCostObject->seq_alg_position()->at(_n).at(_a);
+    Int_t R = (Int_t) m_trigCostObject->seq_alg_position()->at(n).at(a);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    * @return Number of algorithm attached regions of interest.
    */
-  Int_t TrigCostData::getSeqAlgNRoI(UInt_t _n, UInt_t _a) const {
+  Int_t TrigCostData::getSeqAlgNRoI(UInt_t n, UInt_t a) const {
     MUTEX_ON
-    Int_t _R = (Int_t) m_trigCostObject->seq_alg_roi_n()->at(_n).at(_a);
+    Int_t R = (Int_t) m_trigCostObject->seq_alg_roi_n()->at(n).at(a);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    * @return If the algorithm returned cached result.
    */
-  Bool_t TrigCostData::getSeqAlgIsCached(UInt_t _n, UInt_t _a) const {
+  Bool_t TrigCostData::getSeqAlgIsCached(UInt_t n, UInt_t a) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->seq_alg_isCached()->at(_n).at(_a);
+    Bool_t R = (Bool_t) m_trigCostObject->seq_alg_isCached()->at(n).at(a);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    * @return If the algorithm had to execute to return its result.
    */
-  Bool_t TrigCostData::getSeqAlgIsCalled(UInt_t _n, UInt_t _a) const {
+  Bool_t TrigCostData::getSeqAlgIsCalled(UInt_t n, UInt_t a) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->seq_alg_isCalled()->at(_n).at(_a);
+    Bool_t R = (Bool_t) m_trigCostObject->seq_alg_isCalled()->at(n).at(a);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -843,329 +843,329 @@ namespace TrigCostRootAnalysis {
    */
   UInt_t TrigCostData::getNROBs() const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->rob_n();
+    UInt_t R = m_trigCostObject->rob_n();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
+   * @param n ROB index in D3PD.
    * @return Hash of requesting algorithm's name.
    */
-  UInt_t TrigCostData::getROBReqID(UInt_t _n) const {
+  UInt_t TrigCostData::getROBReqID(UInt_t n) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->rob_requestorId()->at(_n);
+    UInt_t R = m_trigCostObject->rob_requestorId()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
+   * @param n ROB index in D3PD.
    * @return Time for total ROB data fetch execution.
    */
-  Float_t TrigCostData::getROBTimer(UInt_t _n) const {
+  Float_t TrigCostData::getROBTimer(UInt_t n) const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->rob_timer()->at(_n);
+    Float_t R = m_trigCostObject->rob_timer()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
+   * @param n ROB index in D3PD.
    * @return Second of request start (1 hour range, 0-3599)
    */
-  UInt_t TrigCostData::getROBTimeStartSec(UInt_t _n) const {
+  UInt_t TrigCostData::getROBTimeStartSec(UInt_t n) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->rob_timeStartSec()->at(_n);
+    UInt_t R = m_trigCostObject->rob_timeStartSec()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
+   * @param n ROB index in D3PD.
    * @return Micro second of request start.
    */
-  UInt_t TrigCostData::getROBTimeStartMicroSec(UInt_t _n) const {
+  UInt_t TrigCostData::getROBTimeStartMicroSec(UInt_t n) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->rob_timeStartMicroSec()->at(_n);
+    UInt_t R = m_trigCostObject->rob_timeStartMicroSec()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
+   * @param n ROB index in D3PD.
    * @return Second of request stop (1 hour range, 0-3599)
    */
-  UInt_t TrigCostData::getROBTimeStopSec(UInt_t _n) const {
+  UInt_t TrigCostData::getROBTimeStopSec(UInt_t n) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->rob_timeStopSec()->at(_n);
+    UInt_t R = m_trigCostObject->rob_timeStopSec()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
+   * @param n ROB index in D3PD.
    * @return Micro second of request stop.
    */
-  UInt_t TrigCostData::getROBTimeStopMicroSec(UInt_t _n) const {
+  UInt_t TrigCostData::getROBTimeStopMicroSec(UInt_t n) const {
     MUTEX_ON;
-    UInt_t _R = m_trigCostObject->rob_timeStopMicroSec()->at(_n);
+    UInt_t R = m_trigCostObject->rob_timeStopMicroSec()->at(n);
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
+   * @param n ROB index in D3PD.
    * @return Number of individual data requests.
    */
-  UInt_t TrigCostData::getROBDataN(UInt_t _n) const {
+  UInt_t TrigCostData::getROBDataN(UInt_t n) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->rob_data_n()->at(_n);
+    UInt_t R = m_trigCostObject->rob_data_n()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
-   * @param _r ROB Data index in ROB.
+   * @param n ROB index in D3PD.
+   * @param r ROB Data index in ROB.
    * @return ROB source ID.
    */
-  UInt_t TrigCostData::getROBDataID(UInt_t _n, UInt_t _r) const {
+  UInt_t TrigCostData::getROBDataID(UInt_t n, UInt_t r) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->rob_data_id()->at(_n).at(_r);
+    UInt_t R = m_trigCostObject->rob_data_id()->at(n).at(r);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
    * Get size of this ROB data in kilobytes.
-   * @param _n ROB index in D3PD.
-   * @param _r ROB Data index in ROB.
+   * @param n ROB index in D3PD.
+   * @param r ROB Data index in ROB.
    * @return ROB data size in kb.
    */
-  Float_t TrigCostData::getROBDataSize(UInt_t _n, UInt_t _r) const {
+  Float_t TrigCostData::getROBDataSize(UInt_t n, UInt_t r) const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->rob_data_size()->at(_n).at(_r) / 1024.;
+    Float_t R = m_trigCostObject->rob_data_size()->at(n).at(r) / 1024.;
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
-   * @param _r ROB Data index in ROB.
+   * @param n ROB index in D3PD.
+   * @param r ROB Data index in ROB.
    * @return If the request was cached.
    */
-  Bool_t TrigCostData::getIsROBDataCached(UInt_t _n, UInt_t _r) const {
+  Bool_t TrigCostData::getIsROBDataCached(UInt_t n, UInt_t r) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->rob_data_isCached()->at(_n).at(_r);
+    Bool_t R = (Bool_t) m_trigCostObject->rob_data_isCached()->at(n).at(r);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
-   * @param _r ROB Data index in ROB.
+   * @param n ROB index in D3PD.
+   * @param r ROB Data index in ROB.
    * @return If the ROB was disabled in OKS and therefore not retrieved.
    */
-  Bool_t TrigCostData::getIsROBDataDisabled(UInt_t _n, UInt_t _r) const {
+  Bool_t TrigCostData::getIsROBDataDisabled(UInt_t n, UInt_t r) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->rob_data_isDisabled()->at(_n).at(_r);
+    Bool_t R = (Bool_t) m_trigCostObject->rob_data_isDisabled()->at(n).at(r);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
-   * @param _r ROB Data index in ROB.
+   * @param n ROB index in D3PD.
+   * @param r ROB Data index in ROB.
    * @return If the ROB was on the "ignore list" and therefore not retrieved.
    */
-  Bool_t TrigCostData::getIsROBDataIgnored(UInt_t _n, UInt_t _r) const {
+  Bool_t TrigCostData::getIsROBDataIgnored(UInt_t n, UInt_t r) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->rob_data_isIgnored()->at(_n).at(_r);
+    Bool_t R = (Bool_t) m_trigCostObject->rob_data_isIgnored()->at(n).at(r);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
-   * @param _r ROB Data index in ROB.
+   * @param n ROB index in D3PD.
+   * @param r ROB Data index in ROB.
    * @return If the ROB was retrieved from ROS by DataCollector.
    */
-  Bool_t TrigCostData::getIsROBDataRetrieved(UInt_t _n, UInt_t _r) const {
+  Bool_t TrigCostData::getIsROBDataRetrieved(UInt_t n, UInt_t r) const {
     MUTEX_ON
-    //   std::cout << "_n    " << _n << " ||||   _r   " << _r << std::endl;
-    Bool_t _R = (Bool_t) m_trigCostObject->rob_data_isRetrieved()->at(_n).at(_r);
+    //   std::cout << "n    " << n << " ||||   r   " << r << std::endl;
+    Bool_t R = (Bool_t) m_trigCostObject->rob_data_isRetrieved()->at(n).at(r);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
-   * @param _r ROB Data index in ROB.
+   * @param n ROB index in D3PD.
+   * @param r ROB Data index in ROB.
    * @return If ROB is status OK.
    */
-  Bool_t TrigCostData::getIsROBDataStatusOK(UInt_t _n, UInt_t _r) const {
+  Bool_t TrigCostData::getIsROBDataStatusOK(UInt_t n, UInt_t r) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->rob_data_isStatusOk()->at(_n).at(_r);
+    Bool_t R = (Bool_t) m_trigCostObject->rob_data_isStatusOk()->at(n).at(r);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
-   * @param _r ROB Data index in ROB.
+   * @param n ROB index in D3PD.
+   * @param r ROB Data index in ROB.
    * @return If ROB is status pre-fetched.
    */
-  Bool_t TrigCostData::getIsROBDataStatusPrefetched(UInt_t _n, UInt_t _r) const {
+  Bool_t TrigCostData::getIsROBDataStatusPrefetched(UInt_t n, UInt_t r) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->rob_data_isStatusPrefetched()->at(_n).at(_r);
+    Bool_t R = (Bool_t) m_trigCostObject->rob_data_isStatusPrefetched()->at(n).at(r);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
-   * @param _r ROB Data index in ROB.
+   * @param n ROB index in D3PD.
+   * @param r ROB Data index in ROB.
    * @return If ROB was requested but never arrived at processor. History unknown.
    */
-  Bool_t TrigCostData::getIsROBDataUnclassified(UInt_t _n, UInt_t _r) const {
+  Bool_t TrigCostData::getIsROBDataUnclassified(UInt_t n, UInt_t r) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->rob_data_isUnclassified()->at(_n).at(_r);
+    Bool_t R = (Bool_t) m_trigCostObject->rob_data_isUnclassified()->at(n).at(r);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
+   * @param n ROB index in D3PD.
    * @return Number of ROB-sum data requests.
    */
-  UInt_t TrigCostData::getROBSumN(UInt_t _n) const {
+  UInt_t TrigCostData::getROBSumN(UInt_t n) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->rob_sum_n()->at(_n);
+    UInt_t R = m_trigCostObject->rob_sum_n()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
-   * @param _r ROB SumData index in ROB.
+   * @param n ROB index in D3PD.
+   * @param r ROB SumData index in ROB.
    * @return ROB Subdetector ID.
    */
-  UInt_t TrigCostData::getROBSumDetID(UInt_t _n, UInt_t _r) const {
+  UInt_t TrigCostData::getROBSumDetID(UInt_t n, UInt_t r) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->rob_sum_subDet()->at(_n).at(_r);
+    UInt_t R = m_trigCostObject->rob_sum_subDet()->at(n).at(r);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
-   * @param _r ROB SumData index in ROB.
+   * @param n ROB index in D3PD.
+   * @param r ROB SumData index in ROB.
    * @return Number of ROBs in the sum.
    */
-  UInt_t TrigCostData::getROBSumNROBs(UInt_t _n, UInt_t _r) const {
+  UInt_t TrigCostData::getROBSumNROBs(UInt_t n, UInt_t r) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->rob_sum_nRob()->at(_n).at(_r);
+    UInt_t R = m_trigCostObject->rob_sum_nRob()->at(n).at(r);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
    * Get size of this ROB data in kilobytes.
-   * @param _n ROB index in D3PD.
-   * @param _r ROB SumData index in ROB.
+   * @param n ROB index in D3PD.
+   * @param r ROB SumData index in ROB.
    * @return Size of ROBs in the sum, in kb.
    */
-  Float_t TrigCostData::getROBSumSize(UInt_t _n, UInt_t _r) const {
+  Float_t TrigCostData::getROBSumSize(UInt_t n, UInt_t r) const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->rob_sum_size()->at(_n).at(_r) / 1024.;
+    Float_t R = m_trigCostObject->rob_sum_size()->at(n).at(r) / 1024.;
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
-   * @param _r ROB SumData index in ROB.
+   * @param n ROB index in D3PD.
+   * @param r ROB SumData index in ROB.
    * @return If the request was cached.
    */
-  Bool_t TrigCostData::getIsROBSumCached(UInt_t _n, UInt_t _r) const {
+  Bool_t TrigCostData::getIsROBSumCached(UInt_t n, UInt_t r) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->rob_sum_isCached()->at(_n).at(_r);
+    Bool_t R = (Bool_t) m_trigCostObject->rob_sum_isCached()->at(n).at(r);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
-   * @param _r ROB SumData index in ROB.
+   * @param n ROB index in D3PD.
+   * @param r ROB SumData index in ROB.
    * @return If the ROB was disabled in OKS and therefore not retrieved.
    */
-  Bool_t TrigCostData::getIsROBSumDisabled(UInt_t _n, UInt_t _r) const {
+  Bool_t TrigCostData::getIsROBSumDisabled(UInt_t n, UInt_t r) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->rob_sum_isDisabled()->at(_n).at(_r);
+    Bool_t R = (Bool_t) m_trigCostObject->rob_sum_isDisabled()->at(n).at(r);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
-   * @param _r ROB SumData index in ROB.
+   * @param n ROB index in D3PD.
+   * @param r ROB SumData index in ROB.
    * @return If the ROB was on the "ignore list" and therefore not retrieved.
    */
-  Bool_t TrigCostData::getIsROBSumIgnored(UInt_t _n, UInt_t _r) const {
+  Bool_t TrigCostData::getIsROBSumIgnored(UInt_t n, UInt_t r) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->rob_sum_isIgnored()->at(_n).at(_r);
+    Bool_t R = (Bool_t) m_trigCostObject->rob_sum_isIgnored()->at(n).at(r);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
-   * @param _r ROB SumData index in ROB.
+   * @param n ROB index in D3PD.
+   * @param r ROB SumData index in ROB.
    * @return If the ROB was retrieved from ROS by DataCollector
    */
-  Bool_t TrigCostData::getIsROBSumRetrieved(UInt_t _n, UInt_t _r) const {
+  Bool_t TrigCostData::getIsROBSumRetrieved(UInt_t n, UInt_t r) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->rob_sum_isRetrieved()->at(_n).at(_r);
+    Bool_t R = (Bool_t) m_trigCostObject->rob_sum_isRetrieved()->at(n).at(r);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n ROB index in D3PD.
-   * @param _r ROB SumData index in ROB.
+   * @param n ROB index in D3PD.
+   * @param r ROB SumData index in ROB.
    * @return If ROB was requested but never arrived at processor. History unknown.
    */
-  Bool_t TrigCostData::getIsROBSumUnclassified(UInt_t _n, UInt_t _r) const {
+  Bool_t TrigCostData::getIsROBSumUnclassified(UInt_t n, UInt_t r) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->rob_sum_isUnclassified()->at(_n).at(_r);
+    Bool_t R = (Bool_t) m_trigCostObject->rob_sum_isUnclassified()->at(n).at(r);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -1173,230 +1173,230 @@ namespace TrigCostRootAnalysis {
    */
   UInt_t TrigCostData::getNRoIs() const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->roi_n();
+    UInt_t R = m_trigCostObject->roi_n();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n RoI index in D3PD.
+   * @param n RoI index in D3PD.
    * @return Region of Interest ID number.
    */
-  Int_t TrigCostData::getRoIID(Int_t _n) const {
+  Int_t TrigCostData::getRoIID(Int_t n) const {
     MUTEX_ON
-    Int_t _R = m_trigCostObject->roi_id()->at(_n);
+    Int_t R = m_trigCostObject->roi_id()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n RoI index in D3PD.
+   * @param n RoI index in D3PD.
    * @return Region of Interest area in (eta,phi) space.
    */
-  Float_t TrigCostData::getRoIArea(UInt_t _n) const {
+  Float_t TrigCostData::getRoIArea(UInt_t n) const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->roi_area()->at(_n);
+    Float_t R = m_trigCostObject->roi_area()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n RoI index in D3PD.
+   * @param n RoI index in D3PD.
    * @return Region of Interest pseudorapidity.
    */
-  Float_t TrigCostData::getRoIEta(UInt_t _n) const {
+  Float_t TrigCostData::getRoIEta(UInt_t n) const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->roi_eta()->at(_n);
+    Float_t R = m_trigCostObject->roi_eta()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n RoI index in D3PD.
+   * @param n RoI index in D3PD.
    * @return Region of Interest azimuthal angle.
    */
-  Float_t TrigCostData::getRoIPhi(UInt_t _n) const {
+  Float_t TrigCostData::getRoIPhi(UInt_t n) const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->roi_phi()->at(_n);
+    Float_t R = m_trigCostObject->roi_phi()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n RoI index in D3PD.
+   * @param n RoI index in D3PD.
    * @return Number of passed L1 thresholds for Region of Interest.
    */
-  Int_t TrigCostData::getRoINL1Thresh(UInt_t _n) const {
+  Int_t TrigCostData::getRoINL1Thresh(UInt_t n) const {
     MUTEX_ON
-    Int_t _R = (Int_t) m_trigCostObject->roi_nL1Thresholds()->at(_n);
+    Int_t R = (Int_t) m_trigCostObject->roi_nL1Thresholds()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n RoI index in D3PD.
+   * @param n RoI index in D3PD.
    * @return If Region of Interest is of type electromagnetic / tau.
    */
-  Bool_t TrigCostData::getIsRoIEmTau(UInt_t _n) const {
+  Bool_t TrigCostData::getIsRoIEmTau(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->roi_isTypeEmTau()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->roi_isTypeEmTau()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n RoI index in D3PD.
+   * @param n RoI index in D3PD.
    * @return Disambiguate EM and tau
    */
-  Bool_t TrigCostData::getIsRoITau(UInt_t _n) const {
+  Bool_t TrigCostData::getIsRoITau(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->roi_isTau()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->roi_isTau()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n RoI index in D3PD.
+   * @param n RoI index in D3PD.
    * @return If Region of Interest is of type energy (e.g. total, missing)
    */
-  Bool_t TrigCostData::getIsRoIEnergy(UInt_t _n) const {
+  Bool_t TrigCostData::getIsRoIEnergy(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->roi_isTypeEnergy()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->roi_isTypeEnergy()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n RoI index in D3PD.
+   * @param n RoI index in D3PD.
    * @return If Region of Interest is of type jet.
    */
-  Bool_t TrigCostData::getIsRoIJet(UInt_t _n) const {
+  Bool_t TrigCostData::getIsRoIJet(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->roi_isTypeJet()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->roi_isTypeJet()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n RoI index in D3PD.
+   * @param n RoI index in D3PD.
    * @return If Region of Interest is of type jet ET.
    */
-  Bool_t TrigCostData::getIsRoIJetEt(UInt_t _n) const {
+  Bool_t TrigCostData::getIsRoIJetEt(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->roi_isTypeJetEt()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->roi_isTypeJetEt()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n RoI index in D3PD.
+   * @param n RoI index in D3PD.
    * @return If Region of Interest is of type muon.
    */
-  Bool_t TrigCostData::getIsRoIMuon(UInt_t _n) const {
+  Bool_t TrigCostData::getIsRoIMuon(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->roi_isTypeMuon()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->roi_isTypeMuon()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n RoI index in D3PD.
+   * @param n RoI index in D3PD.
    * @return If Region of Interest is of type none.
    */
-  Bool_t TrigCostData::getIsRoINone(UInt_t _n) const {
+  Bool_t TrigCostData::getIsRoINone(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->roi_isTypeNone()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->roi_isTypeNone()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n RoI index in D3PD.
+   * @param n RoI index in D3PD.
    * @return ET or pT or total ET sum (depends on RoI type).
    */
-  Float_t TrigCostData::getRoIEt(UInt_t _n) const {
+  Float_t TrigCostData::getRoIEt(UInt_t n) const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->roi_et()->at(_n);
+    Float_t R = m_trigCostObject->roi_et()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
-  Float_t TrigCostData::getRoIEtLarge(UInt_t _n) const {
+  Float_t TrigCostData::getRoIEtLarge(UInt_t n) const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->roi_etLarge()->at(_n);
+    Float_t R = m_trigCostObject->roi_etLarge()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
-  Int_t TrigCostData::getRoIMuonCharge(UInt_t _n) const {
+  Int_t TrigCostData::getRoIMuonCharge(UInt_t n) const {
     MUTEX_ON
-    Int_t _R = m_trigCostObject->roi_muCharge()->at(_n);
+    Int_t R = m_trigCostObject->roi_muCharge()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
-  Int_t TrigCostData::getRoIEmTauIsoBits(UInt_t _n) const {
+  Int_t TrigCostData::getRoIEmTauIsoBits(UInt_t n) const {
     MUTEX_ON
-    Int_t _R = m_trigCostObject->roi_isoBits()->at(_n);
+    Int_t R = m_trigCostObject->roi_isoBits()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
-  Float_t TrigCostData::getRoIVectorEX(UInt_t _n) const {
+  Float_t TrigCostData::getRoIVectorEX(UInt_t n) const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->roi_vectorEX()->at(_n);
+    Float_t R = m_trigCostObject->roi_vectorEX()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
-  Float_t TrigCostData::getRoIVectorEY(UInt_t _n) const {
+  Float_t TrigCostData::getRoIVectorEY(UInt_t n) const {
     MUTEX_ON
-    Float_t _R = m_trigCostObject->roi_vectorEY()->at(_n);
+    Float_t R = m_trigCostObject->roi_vectorEY()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
-  Bool_t TrigCostData::getRoIOverflowEX(UInt_t _n) const {
+  Bool_t TrigCostData::getRoIOverflowEX(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->roi_overflowEX()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->roi_overflowEX()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
-  Bool_t TrigCostData::getRoIOverflowEY(UInt_t _n) const {
+  Bool_t TrigCostData::getRoIOverflowEY(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->roi_overflowEY()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->roi_overflowEY()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
-  Bool_t TrigCostData::getRoIOverflowET(UInt_t _n) const {
+  Bool_t TrigCostData::getRoIOverflowET(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->roi_overflowET()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->roi_overflowET()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -1404,254 +1404,254 @@ namespace TrigCostRootAnalysis {
    */
   UInt_t TrigCostData::getNTEs() const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->te_n();
+    UInt_t R = m_trigCostObject->te_n();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
+   * @param n TE index in D3PD.
    * @return Trigger element index.
    */
-  UInt_t TrigCostData::getTEIndex(UInt_t _n) const {
+  UInt_t TrigCostData::getTEIndex(UInt_t n) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->te_index()->at(_n);
+    UInt_t R = m_trigCostObject->te_index()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
+   * @param n TE index in D3PD.
    * @return Trigger element ID number.
    */
-  UInt_t TrigCostData::getTEID(UInt_t _n) const {
+  UInt_t TrigCostData::getTEID(UInt_t n) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->te_id()->at(_n);
+    UInt_t R = m_trigCostObject->te_id()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
-   * @param _c Child index in TE.
+   * @param n TE index in D3PD.
+   * @param c Child index in TE.
    * @return Trigger element index requested of child (successor).
    */
-  UInt_t TrigCostData::getTEChildIndex(UInt_t _n, UInt_t _c) const {
+  UInt_t TrigCostData::getTEChildIndex(UInt_t n, UInt_t c) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->te_childIndex()->at(_n).at(_c);
+    UInt_t R = m_trigCostObject->te_childIndex()->at(n).at(c);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
-   * @param _c Parent index in TE.
+   * @param n TE index in D3PD.
+   * @param c Parent index in TE.
    * @return Trigger element index of requested parent (predecessor).
    */
-  UInt_t TrigCostData::getTEParentIndex(UInt_t _n, UInt_t _c) const {
+  UInt_t TrigCostData::getTEParentIndex(UInt_t n, UInt_t c) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->te_parentIndex()->at(_n).at(_c);
+    UInt_t R = m_trigCostObject->te_parentIndex()->at(n).at(c);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
-   * @param _c CLID index in TE.
+   * @param n TE index in D3PD.
+   * @param c CLID index in TE.
    * @return CLID of requested attached feature.
    */
-  UInt_t TrigCostData::getTECLIDIndex(UInt_t _n, UInt_t _c) const {
+  UInt_t TrigCostData::getTECLIDIndex(UInt_t n, UInt_t c) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->te_clid()->at(_n).at(_c);
+    UInt_t R = m_trigCostObject->te_clid()->at(n).at(c);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
-   * @param _c RoI index in TE.
+   * @param n TE index in D3PD.
+   * @param c RoI index in TE.
    * @return RoI ID of requested seeding RoI
    */
-  UInt_t TrigCostData::getTERoIIDIndex(UInt_t _n, UInt_t _c) const {
+  UInt_t TrigCostData::getTERoIIDIndex(UInt_t n, UInt_t c) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->te_roiId()->at(_n).at(_c);
+    UInt_t R = m_trigCostObject->te_roiId()->at(n).at(c);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
+   * @param n TE index in D3PD.
    * @return Number of parent TEs.
    */
-  UInt_t TrigCostData::getTEChildSize(UInt_t _n) const {
+  UInt_t TrigCostData::getTEChildSize(UInt_t n) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->te_childIndex()->at(_n).size();
+    UInt_t R = m_trigCostObject->te_childIndex()->at(n).size();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
+   * @param n TE index in D3PD.
    * @return Number of child TEs.
    */
-  UInt_t TrigCostData::getTEParentSize(UInt_t _n) const {
+  UInt_t TrigCostData::getTEParentSize(UInt_t n) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->te_parentIndex()->at(_n).size();
+    UInt_t R = m_trigCostObject->te_parentIndex()->at(n).size();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
+   * @param n TE index in D3PD.
    * @return Number of attached CLIDs.
    */
-  UInt_t TrigCostData::getTECLIDSize(UInt_t _n) const {
+  UInt_t TrigCostData::getTECLIDSize(UInt_t n) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->te_clid()->at(_n).size();
+    UInt_t R = m_trigCostObject->te_clid()->at(n).size();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
+   * @param n TE index in D3PD.
    * @return Number of seeding RoIs.
    */
-  UInt_t TrigCostData::getTERoIIDSize(UInt_t _n) const {
+  UInt_t TrigCostData::getTERoIIDSize(UInt_t n) const {
     MUTEX_ON
-    UInt_t _R = m_trigCostObject->te_roiId()->at(_n).size();
+    UInt_t R = m_trigCostObject->te_roiId()->at(n).size();
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
+   * @param n TE index in D3PD.
    * @return If TE was of Active state.
    */
-  Bool_t TrigCostData::getIsTEActiveState(UInt_t _n) const {
+  Bool_t TrigCostData::getIsTEActiveState(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->te_isActiveState()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->te_isActiveState()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
+   * @param n TE index in D3PD.
    * @return If TE was of Error state.
    */
-  Bool_t TrigCostData::getIsTEErrorState(UInt_t _n) const {
+  Bool_t TrigCostData::getIsTEErrorState(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->te_isErrorState()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->te_isErrorState()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
+   * @param n TE index in D3PD.
    * @return If was initial TE.
    */
-  Bool_t TrigCostData::getIsTEInitial(UInt_t _n) const {
+  Bool_t TrigCostData::getIsTEInitial(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->te_isInitialTe()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->te_isInitialTe()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
+   * @param n TE index in D3PD.
    * @return If is L1 threshold TE attached to RoI TE.
    */
-  Bool_t TrigCostData::getIsTEL1Threshold(UInt_t _n) const {
+  Bool_t TrigCostData::getIsTEL1Threshold(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->te_isL1ThresholdTe()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->te_isL1ThresholdTe()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
+   * @param n TE index in D3PD.
    * @return If TE is output node of passed or passedRaw chain in EF.
    */
-  Bool_t TrigCostData::getIsTEOutputEFNode(UInt_t _n) const {
+  Bool_t TrigCostData::getIsTEOutputEFNode(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->te_isOutputEFNode()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->te_isOutputEFNode()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
+   * @param n TE index in D3PD.
    * @return If TE is output node of passed or passedRaw chain in L2.
    */
-  Bool_t TrigCostData::getIsTEOutputL2Node(UInt_t _n) const {
+  Bool_t TrigCostData::getIsTEOutputL2Node(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->te_isOutputL2Node()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->te_isOutputL2Node()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
+   * @param n TE index in D3PD.
    * @return If TE is regular TE in navigation tree.
    */
-  Bool_t TrigCostData::getIsTERegularTe(UInt_t _n) const {
+  Bool_t TrigCostData::getIsTERegularTe(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->te_isRegularTe()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->te_isRegularTe()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
+   * @param n TE index in D3PD.
    * @return If TE is RoI TE attached to initial TE.
    */
-  Bool_t TrigCostData::getIsTERoITe(UInt_t _n) const {
+  Bool_t TrigCostData::getIsTERoITe(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->te_isRoITe()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->te_isRoITe()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
+   * @param n TE index in D3PD.
    * @return If TE is terminal node, with no more TEs seeded from it.
    */
-  Bool_t TrigCostData::getIsTETerminalNode(UInt_t _n) const {
+  Bool_t TrigCostData::getIsTETerminalNode(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->te_isTerminalNode()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->te_isTerminalNode()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
-   * @param _n TE index in D3PD.
+   * @param n TE index in D3PD.
    * @return If TE is TopologicalTE (and therefore has > 1 parent)
    */
-  Bool_t TrigCostData::getIsTETopologicalTe(UInt_t _n) const {
+  Bool_t TrigCostData::getIsTETopologicalTe(UInt_t n) const {
     MUTEX_ON
-    Bool_t _R = (Bool_t) m_trigCostObject->te_isTopologicalTe()->at(_n);
+    Bool_t R = (Bool_t) m_trigCostObject->te_isTopologicalTe()->at(n);
 
     MUTEX_OFF
-    return _R;
+    return R;
   }
 
   /**
@@ -1664,7 +1664,7 @@ namespace TrigCostRootAnalysis {
   /**
    * Pointer to the process event object, for debug mostly
    */
-  void TrigCostData::setParent(ProcessEvent* _parent) const {
-    m_parent = _parent;
+  void TrigCostData::setParent(ProcessEvent* parent) const {
+    m_parent = parent;
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/TrigCostData_Calculations.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/TrigCostData_Calculations.cxx
index feb47e470c84f6adade2aa029d4e418417f350ab..27f170278938a1afb07ebce4c85e20e93f7a2bb2 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/TrigCostData_Calculations.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/TrigCostData_Calculations.cxx
@@ -68,35 +68,35 @@ namespace TrigCostRootAnalysis {
   /**
    * Figure out if the alg is part of a chain which was resurrected
    */
-  Bool_t TrigCostData::getSeqIsRerun(UInt_t _n) const {
-    Int_t _chainID = getSequenceChannelCounter(_n);
+  Bool_t TrigCostData::getSeqIsRerun(UInt_t n) const {
+    Int_t chainID = getSequenceChannelCounter(n);
 
-    return m_chainRerunStatus[ _chainID ];
+    return m_chainRerunStatus[ chainID ];
   }
 
   /**
    * Used when full chain (L1+HLT) prescale weights are needed outside of the Rates monitor.
    * Use the data store to distribute the information
-   * @param _name Const reference to the chain name.
-   * @param _value 1/total chain prescale
+   * @param name Const reference to the chain name.
+   * @param value 1/total chain prescale
    */
-  void TrigCostData::setChainPrescaleWeight(const std::string& _name, Double_t _value) const {
-    m_chainPSWeight[_name] = _value;
+  void TrigCostData::setChainPrescaleWeight(const std::string& name, Double_t value) const {
+    m_chainPSWeight[name] = value;
   }
 
   /**
    * Get the prescale weight for a chain - is filled by the Rates monitor
-   * @param _name Const reference to the chain name.
-   * @return _value 1/total chain prescale
+   * @param name Const reference to the chain name.
+   * @return value 1/total chain prescale
    */
-  Double_t TrigCostData::getChainPrescaleWeight(const std::string& _name) const {
-    StringDoubleMapIt_t _it = m_chainPSWeight.find(_name);
+  Double_t TrigCostData::getChainPrescaleWeight(const std::string& name) const {
+    StringDoubleMapIt_t it = m_chainPSWeight.find(name);
 
-    if (_it == m_chainPSWeight.end()) {
-      Error("TrigCostData::getChainPrescaleWeight", "Cannot find chain prescale weight for %s", _name.c_str());
+    if (it == m_chainPSWeight.end()) {
+      Error("TrigCostData::getChainPrescaleWeight", "Cannot find chain prescale weight for %s", name.c_str());
       return DBL_MIN;
     }
-    return _it->second;
+    return it->second;
   }
 
   /**
@@ -106,115 +106,115 @@ namespace TrigCostRootAnalysis {
    * In addition, calculates the number of sequence calls and buffers this too.
    **/
   void TrigCostData::bufferChainSeqTime() const {
-    for (UInt_t _c = 0; _c < this->getNChains(); ++_c) {
-      Int_t _chainID = this->getChainID(_c);
+    for (UInt_t c = 0; c < this->getNChains(); ++c) {
+      Int_t chainID = this->getChainID(c);
 
-      Float_t _timer = 0.;
-      UInt_t _nSeq = 0;
-      for (UInt_t _s = 0; _s < this->getNSequences(); ++_s) {
-        if (this->getSequenceChannelCounter(_s) != _chainID) continue; // If sequence does not belong to correct chain
+      Float_t timer = 0.;
+      UInt_t nSeq = 0;
+      for (UInt_t s = 0; s < this->getNSequences(); ++s) {
+        if (this->getSequenceChannelCounter(s) != chainID) continue; // If sequence does not belong to correct chain
 
-        if (this->getSequenceTime(_s) > 0.) {
-          _timer += this->getSequenceTime(_s);
+        if (this->getSequenceTime(s) > 0.) {
+          timer += this->getSequenceTime(s);
         } else {
-          _timer += this->getSequenceAlgTotalTime(_s);
+          timer += this->getSequenceAlgTotalTime(s);
         }
 
-        ++_nSeq;
+        ++nSeq;
       }
 
       // Buffer answer
-      m_chainSeqTimeMap[ _chainID ] = _timer;
-      m_chainSeqCallMap[ _chainID ] = _nSeq; // Also buffer this
+      m_chainSeqTimeMap[ chainID ] = timer;
+      m_chainSeqCallMap[ chainID ] = nSeq; // Also buffer this
     }
   }
 
   /**
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return Total chain execution time in the event as sum of all algorithm time associated to the chain.
    */
-  Float_t TrigCostData::getChainTimerFromSequences(UInt_t _n) const {
-    return m_chainSeqTimeMap[ this->getChainID(_n) ];
+  Float_t TrigCostData::getChainTimerFromSequences(UInt_t n) const {
+    return m_chainSeqTimeMap[ this->getChainID(n) ];
   }
 
   /**
    * Calculate the number of sequences which are called by a chain. This is buffered.
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return Total number of sequences called by the chain in the event.
    */
-  UInt_t TrigCostData::getChainSeqCalls(UInt_t _n) const {
-    return m_chainSeqCallMap[ this->getChainID(_n) ];
+  UInt_t TrigCostData::getChainSeqCalls(UInt_t n) const {
+    return m_chainSeqCallMap[ this->getChainID(n) ];
   }
 
   /**
    * Calculate the number of algorithms which are called by a chain. This is buffered, along with caches.
    * Also buffers the rerun status flag
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return Total number of algorithm calls by the chain in the event.
    **/
   void TrigCostData::bufferChainAlgCalls() const {
-    for (UInt_t _c = 0; _c < this->getNChains(); ++_c) {
-      Int_t _chainID = this->getChainID(_c);
+    for (UInt_t c = 0; c < this->getNChains(); ++c) {
+      Int_t chainID = this->getChainID(c);
 
-      m_chainRerunStatus[ _chainID ] = (Bool_t) getIsChainResurrected(_c);
+      m_chainRerunStatus[ chainID ] = (Bool_t) getIsChainResurrected(c);
 
-      UInt_t _called = 0;
-      UInt_t _cached = 0;
-      for (UInt_t _s = 0; _s < this->getNSequences(); ++_s) {
-        if (this->getSequenceChannelCounter(_s) != _chainID) continue; // If sequence does not belong to correct chain
-        _called += getSequenceAlgCalls(_s);
-        _cached += getSequenceAlgCaches(_s);
+      UInt_t called = 0;
+      UInt_t cached = 0;
+      for (UInt_t s = 0; s < this->getNSequences(); ++s) {
+        if (this->getSequenceChannelCounter(s) != chainID) continue; // If sequence does not belong to correct chain
+        called += getSequenceAlgCalls(s);
+        cached += getSequenceAlgCaches(s);
       }
 
-      m_chainAlgCallMap [ _chainID ] = _called;
-      m_chainAlgCacheMap[ _chainID ] = _cached; // Also buffer this
+      m_chainAlgCallMap [ chainID ] = called;
+      m_chainAlgCacheMap[ chainID ] = cached; // Also buffer this
     }
   }
 
   /**
    * Get the number of algorithms which are called by a chain. T Result is buffered.
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return Total number of algorithm calls by the chain in the event.
    */
-  UInt_t TrigCostData::getChainAlgCalls(UInt_t _n) const {
-    return m_chainAlgCallMap[ this->getChainID(_n) ];
+  UInt_t TrigCostData::getChainAlgCalls(UInt_t n) const {
+    return m_chainAlgCallMap[ this->getChainID(n) ];
   }
 
   /**
    * Get the number of algorithms whose cached results were used by a chain. Result is buffered.
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return Total number of cached algorithm calls by the chain in the event.
    */
-  UInt_t TrigCostData::getChainAlgCaches(UInt_t _n) const {
-    return m_chainAlgCacheMap[ this->getChainID(_n) ];
+  UInt_t TrigCostData::getChainAlgCaches(UInt_t n) const {
+    return m_chainAlgCacheMap[ this->getChainID(n) ];
   }
 
   /**
    * Get a set of D3PD locations of algorithms associated to a chain. Result is buffered.
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return Cont reference to set of pairs of <seqLocation,algLocation> identifiers of algorithms in the event.
    */
-  const std::set< std::pair<Int_t, Int_t> >& TrigCostData::getChainAlgs(UInt_t _n) const {
-    return m_chainAlgMap[ getChainID(_n) ];
+  const std::set< std::pair<Int_t, Int_t> >& TrigCostData::getChainAlgs(UInt_t n) const {
+    return m_chainAlgMap[ getChainID(n) ];
   }
 
   /**
    * Helper function to map a chain or sequence ID to a list of algs which ran.
    */
   void TrigCostData::mapChainAndSeqToAlg() const {
-    for (UInt_t _s = 0; _s < getNSequences(); ++_s) {
-      for (UInt_t _a = 0; _a < getNSeqAlgs(_s); ++_a) {
+    for (UInt_t s = 0; s < getNSequences(); ++s) {
+      for (UInt_t a = 0; a < getNSeqAlgs(s); ++a) {
         // Seq ID and chain ID, alg location
-        const UInt_t _seqId = getSequenceIndex(_s);
-        const UInt_t _chainId = getSequenceChannelCounter(_s);
-        const std::pair<Int_t, Int_t> _myAlgLocation(_s, _a);
+        const UInt_t seqId = getSequenceIndex(s);
+        const UInt_t chainId = getSequenceChannelCounter(s);
+        const std::pair<Int_t, Int_t> myAlgLocation(s, a);
 
-        m_chainAlgMap[ _chainId ].insert(_myAlgLocation);
-        m_seqAlgMap[ _seqId ].insert(_myAlgLocation);
+        m_chainAlgMap[ chainId ].insert(myAlgLocation);
+        m_seqAlgMap[ seqId ].insert(myAlgLocation);
 
         if (Config::config().debug()) {
           Info("TrigCostData::mapChainAndSeqToAlg", "Mapping Chain ID %i and sequence ID %i to alg location %i,%i",
-               _chainId, _seqId, _myAlgLocation.first, _myAlgLocation.second);
+               chainId, seqId, myAlgLocation.first, myAlgLocation.second);
         }
       }
     }
@@ -228,23 +228,23 @@ namespace TrigCostRootAnalysis {
       Error("TrigCostData::bufferChainPassed", "No chain data in this cost object.");
       return;
     }
-    for (UInt_t _c = 0; _c < this->getNChains(); ++_c) {
-      const Int_t _id = this->getChainID(_c);
-      const Int_t _level = this->getChainLevel(_c);
-      this->m_chainPassMap[ TrigConfInterface::getHLTNameFromChainID(_id, _level) ] = this->getIsChainPassed(_c);
+    for (UInt_t c = 0; c < this->getNChains(); ++c) {
+      const Int_t id = this->getChainID(c);
+      const Int_t level = this->getChainLevel(c);
+      this->m_chainPassMap[ TrigConfInterface::getHLTNameFromChainID(id, level) ] = this->getIsChainPassed(c);
     }
   }
 
   /**
    * Allows for a query if a particular chain passed the event where the chain is supplied by name.
    * A map of this information is formed on the first call and buffered for the event.
-   * @param _n Name of the chain.
+   * @param n Name of the chain.
    * @return If the chain passed the physics requirements in the event.
    */
-  Bool_t TrigCostData::getIsChainPassed(std::string& _n) const {
-    if (this->m_chainPassMap.count(_n) == 1) {
+  Bool_t TrigCostData::getIsChainPassed(std::string& n) const {
+    if (this->m_chainPassMap.count(n) == 1) {
       // If we have a record of this chain, return its reported PASS or FAIL
-      return this->m_chainPassMap[ _n ];
+      return this->m_chainPassMap[ n ];
     } else {
       // If the chain asked for was not in the event, it cannot have passed, return FAIL
       return kFALSE;
@@ -253,63 +253,63 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Get the number of ROBs requested (cached) by all algorithms run by a chain
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return Number of cached ROB requests
    */
-  UInt_t TrigCostData::getChainROBRequests(UInt_t _n) const {
-    return m_chainROBRequests[ _n ];
+  UInt_t TrigCostData::getChainROBRequests(UInt_t n) const {
+    return m_chainROBRequests[ n ];
   }
 
   /**
    * Get the size of all requested (cached) ROBs by all algorithms run by a chain
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return Size in kB of cached ROB requests
    */
-  Float_t TrigCostData::getChainROBRequestSize(UInt_t _n) const {
-    return m_chainROBRequestSize[ _n ];
+  Float_t TrigCostData::getChainROBRequestSize(UInt_t n) const {
+    return m_chainROBRequestSize[ n ];
   }
 
   /**
    * Get the number of ROBs retrieved by by all algorithms run by a chain
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return Number of ROB retrievals
    */
-  UInt_t TrigCostData::getChainROBRetrievals(UInt_t _n) const {
-    return m_chainROBRetrievals[ _n ];
+  UInt_t TrigCostData::getChainROBRetrievals(UInt_t n) const {
+    return m_chainROBRetrievals[ n ];
   }
 
   /**
    * Get the size of all ROBs retrieved by by all algorithms run by a chain
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    * @return Size in kB of ROB retrievals
    */
-  Float_t TrigCostData::getChainROBRetrievalSize(UInt_t _n) const {
-    return m_chainROBRetrievalSize[ _n ];
+  Float_t TrigCostData::getChainROBRetrievalSize(UInt_t n) const {
+    return m_chainROBRetrievalSize[ n ];
   }
 
   /**
    * Loop over the ROS info of all algs run under a given chain. Buffer the data.
-   * @param _n Chain index in D3PD.
+   * @param n Chain index in D3PD.
    */
   void TrigCostData::bufferChainRosInformation() const {
-    for (UInt_t _n = 0; _n < this->getNChains(); ++_n) {
-      std::set< std::pair<Int_t, Int_t> > _algs = getChainAlgs(_n);
+    for (UInt_t n = 0; n < this->getNChains(); ++n) {
+      std::set< std::pair<Int_t, Int_t> > algs = getChainAlgs(n);
 
-      UInt_t _req = 0, _ret = 0;
-      Float_t _reqSize = 0., _retSize = 0.;
+      UInt_t req = 0, ret = 0;
+      Float_t reqSize = 0., retSize = 0.;
       // Loop over all algorithms called by this chain
-      std::set< std::pair<Int_t, Int_t> >::iterator _it = _algs.begin();
-      for (; _it != _algs.end(); ++_it) {
-        _req += getSeqAlgROBRequests(_it->first, _it->second);
-        _ret += getSeqAlgROBRetrievals(_it->first, _it->second);
-        _reqSize += getSeqAlgROBRequestSize(_it->first, _it->second);
-        _retSize += getSeqAlgROBRetrievalSize(_it->first, _it->second);
+      std::set< std::pair<Int_t, Int_t> >::iterator it = algs.begin();
+      for (; it != algs.end(); ++it) {
+        req += getSeqAlgROBRequests(it->first, it->second);
+        ret += getSeqAlgROBRetrievals(it->first, it->second);
+        reqSize += getSeqAlgROBRequestSize(it->first, it->second);
+        retSize += getSeqAlgROBRetrievalSize(it->first, it->second);
       }
 
-      m_chainROBRequests[ _n ] = _req;
-      m_chainROBRetrievals[ _n ] = _ret;
-      m_chainROBRequestSize[ _n ] = _reqSize;
-      m_chainROBRetrievalSize[ _n ] = _retSize;
+      m_chainROBRequests[ n ] = req;
+      m_chainROBRetrievals[ n ] = ret;
+      m_chainROBRequestSize[ n ] = reqSize;
+      m_chainROBRetrievalSize[ n ] = retSize;
     }
   }
 
@@ -321,22 +321,22 @@ namespace TrigCostRootAnalysis {
       Error("TrigCostData::getIsL1PassedBeforePrescale", "No L1 data in this cost object.");
       return;
     }
-    for (UInt_t _c = 0; _c < this->getNL1(); ++_c) {
-      const Int_t _id = this->getL1CtpId(_c);
-      this->m_L1BeforePrescalePassMap[ TrigConfInterface::getNameFromCtpId(_id) ] =
-        this->getIsL1PassedBeforePrescale(_c);
+    for (UInt_t c = 0; c < this->getNL1(); ++c) {
+      const Int_t id = this->getL1CtpId(c);
+      this->m_L1BeforePrescalePassMap[ TrigConfInterface::getNameFromCtpId(id) ] =
+        this->getIsL1PassedBeforePrescale(c);
     }
   }
 
   /**
    * String based check for an event passing L1. On request, this is buffered for the event.
-   * @param _n Name of a chain in the current menu.
+   * @param n Name of a chain in the current menu.
    * @return If chain passed before L1 prescale was applied.
    */
-  Bool_t TrigCostData::getIsL1PassedBeforePrescale(std::string& _n) const {
-    if (this->m_L1BeforePrescalePassMap.count(_n) == 1) {
+  Bool_t TrigCostData::getIsL1PassedBeforePrescale(std::string& n) const {
+    if (this->m_L1BeforePrescalePassMap.count(n) == 1) {
       // If we have a record of this chain, return its reported PASS or FAIL
-      return this->m_L1BeforePrescalePassMap[ _n ];
+      return this->m_L1BeforePrescalePassMap[ n ];
     } else {
       // If the chain asked for was not in the event, it cannot have passed, return FAIL
       return kFALSE;
@@ -347,11 +347,11 @@ namespace TrigCostRootAnalysis {
    * Find the location of a L1 item in the D3PD
    * @return D3PD index or -1 if cannot be found
    */
-  Int_t TrigCostData::getL1Location(const std::string& _n) const {
-    const Int_t _CTIPD = TrigConfInterface::getCtpId(_n);
+  Int_t TrigCostData::getL1Location(const std::string& n) const {
+    const Int_t CTIPD = TrigConfInterface::getCtpId(n);
 
-    for (UInt_t _c = 0; _c < this->getNL1(); ++_c) {
-      if (_CTIPD == (Int_t) this->getL1CtpId(_c)) return _c;
+    for (UInt_t c = 0; c < this->getNL1(); ++c) {
+      if (CTIPD == (Int_t) this->getL1CtpId(c)) return c;
     }
     return -1;
   }
@@ -360,100 +360,100 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Gets the number of algorithms called by a sequence. Result is buffered.
-   * @param _n Sequence index in D3PD.
+   * @param n Sequence index in D3PD.
    * @return Total number of algorithm calls by the sequence.
    */
-  UInt_t TrigCostData::getSequenceAlgCalls(UInt_t _n) const {
-    return m_seqAlgCallMap[ _n ];
+  UInt_t TrigCostData::getSequenceAlgCalls(UInt_t n) const {
+    return m_seqAlgCallMap[ n ];
   }
 
   /**
    * Get the number of cached algorithm calls by a sequence. Result is buffered.
-   * @param _n Sequence index in D3PD.
+   * @param n Sequence index in D3PD.
    * @return Total number of cached algorithm calls by the sequence.
    */
-  UInt_t TrigCostData::getSequenceAlgCaches(UInt_t _n) const {
-    return m_seqAlgCacheMap[ _n ];
+  UInt_t TrigCostData::getSequenceAlgCaches(UInt_t n) const {
+    return m_seqAlgCacheMap[ n ];
   }
 
   /**
    * Calculate the number of algorithms called by a sequence.
    */
   void TrigCostData::bufferSequenceAlgCallsCaches() const {
-    for (UInt_t _n = 0; _n < this->getNSequences(); ++_n) {
-      UInt_t _called = 0;
-      UInt_t _cached = 0;
-      for (UInt_t _a = 0; _a < getNSeqAlgs(_n); ++_a) {
-        if (this->getSeqAlgIsCalled(_n, _a) == kTRUE) {
-          ++_called;
-        } else if (this->getSeqAlgIsCached(_n, _a) == kTRUE) {
-          ++_cached;
+    for (UInt_t n = 0; n < this->getNSequences(); ++n) {
+      UInt_t called = 0;
+      UInt_t cached = 0;
+      for (UInt_t a = 0; a < getNSeqAlgs(n); ++a) {
+        if (this->getSeqAlgIsCalled(n, a) == kTRUE) {
+          ++called;
+        } else if (this->getSeqAlgIsCached(n, a) == kTRUE) {
+          ++cached;
         }
         //Assert that I cannot be both cached and called
-        assert((this->getSeqAlgIsCached(_n, _a) == kTRUE && this->getSeqAlgIsCalled(_n, _a) == kTRUE) == kFALSE);
+        assert((this->getSeqAlgIsCached(n, a) == kTRUE && this->getSeqAlgIsCalled(n, a) == kTRUE) == kFALSE);
       }
 
-      m_seqAlgCallMap [ _n ] = _called;
-      m_seqAlgCacheMap[ _n ] = _cached; // Also buffer this
+      m_seqAlgCallMap [ n ] = called;
+      m_seqAlgCacheMap[ n ] = cached; // Also buffer this
     }
   }
 
   /////////////////////////////////
 
-  UInt_t TrigCostData::getSeqROSCalls(UInt_t _n) const {
-    return m_seqROSCallMap[_n];
+  UInt_t TrigCostData::getSeqROSCalls(UInt_t n) const {
+    return m_seqROSCallMap[n];
   }
 
-  Float_t TrigCostData::getSeqROSTime(UInt_t _n) const {
-    return m_seqROSTimeMap[_n];
+  Float_t TrigCostData::getSeqROSTime(UInt_t n) const {
+    return m_seqROSTimeMap[n];
   }
 
-  UInt_t TrigCostData::getSeqROBRequests(UInt_t _n) const {
-    return m_seqROBReqs[_n];
+  UInt_t TrigCostData::getSeqROBRequests(UInt_t n) const {
+    return m_seqROBReqs[n];
   }
 
-  Float_t TrigCostData::getSeqROBRequestSize(UInt_t _n) const {
-    return m_seqROBReqSize[_n];
+  Float_t TrigCostData::getSeqROBRequestSize(UInt_t n) const {
+    return m_seqROBReqSize[n];
   }
 
-  UInt_t TrigCostData::getSeqROBRetrievals(UInt_t _n) const {
-    return m_seqROBRets[_n];
+  UInt_t TrigCostData::getSeqROBRetrievals(UInt_t n) const {
+    return m_seqROBRets[n];
   }
 
-  Float_t TrigCostData::getSeqROBRetrievalSize(UInt_t _n) const {
-    return m_seqROBRetSize[_n];
+  Float_t TrigCostData::getSeqROBRetrievalSize(UInt_t n) const {
+    return m_seqROBRetSize[n];
   }
 
-  UInt_t TrigCostData::getSeqROBOthers(UInt_t _n) const {
-    return m_seqROBOther[_n];
+  UInt_t TrigCostData::getSeqROBOthers(UInt_t n) const {
+    return m_seqROBOther[n];
   }
 
   /**
    * Internal call to buffer the ROB data for a sequence from its algorithms
-   * @param _n Sequnce D3PD index to buffer
+   * @param n Sequnce D3PD index to buffer
    */
   void TrigCostData::bufferSeqROSInformation() const {
-    for (UInt_t _n = 0; _n < this->getNSequences(); ++_n) {
-      Float_t _rosTime = 0., _robReqSize = 0., _robRetSize = 0.;
-      Int_t _robReq = 0, _robRet = 0, _robOther = 0, _rosCalls = 0;
+    for (UInt_t n = 0; n < this->getNSequences(); ++n) {
+      Float_t rosTime = 0., robReqSize = 0., robRetSize = 0.;
+      Int_t robReq = 0, robRet = 0, robOther = 0, rosCalls = 0;
       // Loop over all algorithms in sequence
-      for (UInt_t _a = 0; _a < this->getNSeqAlgs(_n); ++_a) {
-        _rosCalls += this->getSeqAlgROSCalls(_n, _a);
-        _rosTime += this->getSeqAlgROSTime(_n, _a);
-        _robRet += this->getSeqAlgROBRetrievals(_n, _a);
-        _robReq += this->getSeqAlgROBRequests(_n, _a);
-        _robRetSize += this->getSeqAlgROBRetrievalSize(_n, _a);
-        _robReqSize += this->getSeqAlgROBRequestSize(_n, _a);
-        _robOther += this->getSeqAlgROBOthers(_n, _a);
+      for (UInt_t a = 0; a < this->getNSeqAlgs(n); ++a) {
+        rosCalls += this->getSeqAlgROSCalls(n, a);
+        rosTime += this->getSeqAlgROSTime(n, a);
+        robRet += this->getSeqAlgROBRetrievals(n, a);
+        robReq += this->getSeqAlgROBRequests(n, a);
+        robRetSize += this->getSeqAlgROBRetrievalSize(n, a);
+        robReqSize += this->getSeqAlgROBRequestSize(n, a);
+        robOther += this->getSeqAlgROBOthers(n, a);
       }
 
-      m_seqROSCallMap[_n] = _rosCalls;
-      m_seqROSTimeMap[_n] = _rosTime;
-      m_seqROBRets[_n] = _robRet;
-      m_seqROBReqs[_n] = _robReq;
-      m_seqROBRetSize[_n] = _robRetSize;
-      m_seqROBReqSize[_n] = _robReqSize;
-      m_seqROBOther[_n] = _robOther;
+      m_seqROSCallMap[n] = rosCalls;
+      m_seqROSTimeMap[n] = rosTime;
+      m_seqROBRets[n] = robRet;
+      m_seqROBReqs[n] = robReq;
+      m_seqROBRetSize[n] = robRetSize;
+      m_seqROBReqSize[n] = robReqSize;
+      m_seqROBOther[n] = robOther;
     }
   }
 
@@ -463,168 +463,168 @@ namespace TrigCostRootAnalysis {
    * Get the location in the D3PD of the ROS request from an algorithm.
    * Take a pair as input as this is the standard format from chain->alg lookup
    * Regular method also available,
-   * @see TrigCostData::getSeqAlgROBLocations(UInt_t _n, UInt_t _a) const
-   * @param _algLocation std::pair of <seqLocation,algLocation>
+   * @see TrigCostData::getSeqAlgROBLocations(UInt_t n, UInt_t a) const
+   * @param algLocation std::pair of <seqLocation,algLocation>
    * @return Location of ROS request, or -1 if none found.
    */
-  std::set<Int_t> TrigCostData::getSeqAlgROBLocations(const std::pair<Int_t, Int_t>& _algLocation) const {
-    if (m_algRosMap.count(_algLocation) == 0) return m_emptySet;
+  std::set<Int_t> TrigCostData::getSeqAlgROBLocations(const std::pair<Int_t, Int_t>& algLocation) const {
+    if (m_algRosMap.count(algLocation) == 0) return m_emptySet;
 
-    return m_algRosMap[ _algLocation ];
+    return m_algRosMap[ algLocation ];
   }
 
   /**
    * Get the location in the D3PD of the ROS request from an algorithm.
-   * @see TrigCostData::getSeqAlgROBLocations(const std::pair<Int_t,Int_t>& _algLocation) const
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @see TrigCostData::getSeqAlgROBLocations(const std::pair<Int_t,Int_t>& algLocation) const
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    * @return Location of ROS request, or -1 if none found.
    */
-  std::set<Int_t> TrigCostData::getSeqAlgROBLocations(UInt_t _n, UInt_t _a) const {
-    _recyclablePair.first = (Int_t) _n;
-    _recyclablePair.second = (Int_t) _a;
-    return getSeqAlgROBLocations(_recyclablePair);
+  std::set<Int_t> TrigCostData::getSeqAlgROBLocations(UInt_t n, UInt_t a) const {
+    m_recyclablePair.first = (Int_t) n;
+    m_recyclablePair.second = (Int_t) a;
+    return getSeqAlgROBLocations(m_recyclablePair);
   }
 
   /**
    * Calculates and buffers for the event statistics on ROS information for all algorithms
-   * @see TrigCostData::getSeqAlgROSCalls(UInt_t _n, UInt_t _a)
-   * @see TrigCostData::getSeqAlgROSTime(UInt_t _n, UInt_t _a)
-   * @see TrigCostData::getSeqAlgROBRequests(UInt_t _n, UInt_t _a)
-   * @see TrigCostData::getSeqAlgROBRequestSize(UInt_t _n, UInt_t _a)
-   * @see TrigCostData::getSeqAlgROBRetrievals(UInt_t _n, UInt_t _a)
-   * @see TrigCostData::getSeqAlgROBRetrievalSize(UInt_t _n, UInt_t _a)
-   * @see TrigCostData::getSeqAlgROBOthers(UInt_t _n, UInt_t _a)
+   * @see TrigCostData::getSeqAlgROSCalls(UInt_t n, UInt_t a)
+   * @see TrigCostData::getSeqAlgROSTime(UInt_t n, UInt_t a)
+   * @see TrigCostData::getSeqAlgROBRequests(UInt_t n, UInt_t a)
+   * @see TrigCostData::getSeqAlgROBRequestSize(UInt_t n, UInt_t a)
+   * @see TrigCostData::getSeqAlgROBRetrievals(UInt_t n, UInt_t a)
+   * @see TrigCostData::getSeqAlgROBRetrievalSize(UInt_t n, UInt_t a)
+   * @see TrigCostData::getSeqAlgROBOthers(UInt_t n, UInt_t a)
    */
   void TrigCostData::bufferAlgRosInformation() const {
-    for (UInt_t _s = 0; _s < getNSequences(); ++_s) {
-      for (UInt_t _a = 0; _a < getNSeqAlgs(_s); ++_a) {
+    for (UInt_t s = 0; s < getNSequences(); ++s) {
+      for (UInt_t a = 0; a < getNSeqAlgs(s); ++a) {
         // For this function - recyclable pair holds this algorithm's execution
-        _recyclablePair.first = (Int_t) _s;
-        _recyclablePair.second = (Int_t) _a;
+        m_recyclablePair.first = (Int_t) s;
+        m_recyclablePair.second = (Int_t) a;
 
         // Get the ROS requests I made
-        std::set<Int_t> _ros = getSeqAlgROBLocations(_recyclablePair);
+        std::set<Int_t> ros = getSeqAlgROBLocations(m_recyclablePair);
 
-        Float_t _rosTime = 0., _robReqSize = 0., _robRetSize = 0.;
-        Int_t _robReq = 0, _robRet = 0, _robOther = 0;
+        Float_t rosTime = 0., robReqSize = 0., robRetSize = 0.;
+        Int_t robReq = 0, robRet = 0, robOther = 0;
 
         // Loop over the request's ROS call's data
-        for (std::set<Int_t>::iterator _robIt = _ros.begin(); _robIt != _ros.end(); ++_robIt) {
-          Int_t _rob = (*_robIt);
-          _rosTime += getROBTimer(_rob);
-
-          Int_t _TEMP_REQ = 0, _TEMP_RET = 0;
-          for (UInt_t _robData = 0; _robData < getROBDataN(_rob); ++_robData) {
-            if (getIsROBDataRetrieved(_rob, _robData)) {
-              ++_robRet;
-              ++_TEMP_RET;
-              _robRetSize += getROBDataSize(_rob, _robData);
+        for (std::set<Int_t>::iterator robIt = ros.begin(); robIt != ros.end(); ++robIt) {
+          Int_t rob = (*robIt);
+          rosTime += getROBTimer(rob);
+
+          Int_t TEMP_REQ = 0, TEMP_RET = 0;
+          for (UInt_t robData = 0; robData < getROBDataN(rob); ++robData) {
+            if (getIsROBDataRetrieved(rob, robData)) {
+              ++robRet;
+              ++TEMP_RET;
+              robRetSize += getROBDataSize(rob, robData);
             }
-            if (getIsROBDataCached(_rob, _robData)) {
-              ++_robReq;
-              ++_TEMP_REQ;
-              _robReqSize += getROBDataSize(_rob, _robData);
+            if (getIsROBDataCached(rob, robData)) {
+              ++robReq;
+              ++TEMP_REQ;
+              robReqSize += getROBDataSize(rob, robData);
             }
-            if (getIsROBDataUnclassified(_rob, _robData)
-                || getIsROBDataDisabled(_rob, _robData)
-                || getIsROBDataIgnored(_rob, _robData)) {
-              ++_robOther;
+            if (getIsROBDataUnclassified(rob, robData)
+                || getIsROBDataDisabled(rob, robData)
+                || getIsROBDataIgnored(rob, robData)) {
+              ++robOther;
             }
           }
           // This can come out at some point.
           // as the CACHE flag applies only to a ROB, not the ROS request - I am checking here that there is never a
           // ROS request which is listed as both
-          assert((_TEMP_REQ == 0 && _TEMP_RET == 0) || (_TEMP_REQ > 0 && _TEMP_RET == 0) ||
-                 (_TEMP_REQ == 0 && _TEMP_RET > 0));
+          assert((TEMP_REQ == 0 && TEMP_RET == 0) || (TEMP_REQ > 0 && TEMP_RET == 0) ||
+                 (TEMP_REQ == 0 && TEMP_RET > 0));
         }
 
-        m_algRosCalls[ _recyclablePair ] = _ros.size();
-        m_algRosTime[ _recyclablePair ] = _rosTime;
-        m_algROBRequests[ _recyclablePair ] = _robReq;
-        m_algROBRetrievals[ _recyclablePair ] = _robRet;
-        m_algROBOther[ _recyclablePair ] = _robOther;
-        m_algROBRequestSize[ _recyclablePair ] = _robReqSize;
-        m_algROBRetrievalSize[ _recyclablePair ] = _robRetSize;
+        m_algRosCalls[ m_recyclablePair ] = ros.size();
+        m_algRosTime[ m_recyclablePair ] = rosTime;
+        m_algROBRequests[ m_recyclablePair ] = robReq;
+        m_algROBRetrievals[ m_recyclablePair ] = robRet;
+        m_algROBOther[ m_recyclablePair ] = robOther;
+        m_algROBRequestSize[ m_recyclablePair ] = robReqSize;
+        m_algROBRetrievalSize[ m_recyclablePair ] = robRetSize;
       }
     }
   }
 
   /**
    * Get the number of calls made to the ROS from an algorithm.
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    */
-  UInt_t TrigCostData::getSeqAlgROSCalls(UInt_t _n, UInt_t _a) const {
-    _recyclablePair.first = (Int_t) _n;
-    _recyclablePair.second = (Int_t) _a;
-    return m_algRosCalls[ _recyclablePair ];
+  UInt_t TrigCostData::getSeqAlgROSCalls(UInt_t n, UInt_t a) const {
+    m_recyclablePair.first = (Int_t) n;
+    m_recyclablePair.second = (Int_t) a;
+    return m_algRosCalls[ m_recyclablePair ];
   }
 
   /**
    * Get the total time spent on ROS access for all ROS requests from an algorithm
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    */
-  Float_t TrigCostData::getSeqAlgROSTime(UInt_t _n, UInt_t _a) const {
-    _recyclablePair.first = (Int_t) _n;
-    _recyclablePair.second = (Int_t) _a;
-    return m_algRosTime[ _recyclablePair ];
+  Float_t TrigCostData::getSeqAlgROSTime(UInt_t n, UInt_t a) const {
+    m_recyclablePair.first = (Int_t) n;
+    m_recyclablePair.second = (Int_t) a;
+    return m_algRosTime[ m_recyclablePair ];
   }
 
   /**
    * Get the number of ROBs requested (cached) by an algorithm
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    */
-  UInt_t TrigCostData::getSeqAlgROBRequests(UInt_t _n, UInt_t _a) const {
-    _recyclablePair.first = (Int_t) _n;
-    _recyclablePair.second = (Int_t) _a;
-    return m_algROBRequests[ _recyclablePair ];
+  UInt_t TrigCostData::getSeqAlgROBRequests(UInt_t n, UInt_t a) const {
+    m_recyclablePair.first = (Int_t) n;
+    m_recyclablePair.second = (Int_t) a;
+    return m_algROBRequests[ m_recyclablePair ];
   }
 
   /**
    * Get the size of all requested (cached) ROBs by an algorithm
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    */
-  Float_t TrigCostData::getSeqAlgROBRequestSize(UInt_t _n, UInt_t _a) const {
-    _recyclablePair.first = (Int_t) _n;
-    _recyclablePair.second = (Int_t) _a;
-    return m_algROBRequestSize[ _recyclablePair ];
+  Float_t TrigCostData::getSeqAlgROBRequestSize(UInt_t n, UInt_t a) const {
+    m_recyclablePair.first = (Int_t) n;
+    m_recyclablePair.second = (Int_t) a;
+    return m_algROBRequestSize[ m_recyclablePair ];
   }
 
   /**
    * Get the number of ROBs retrieved by an algorithm
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    */
-  UInt_t TrigCostData::getSeqAlgROBRetrievals(UInt_t _n, UInt_t _a) const {
-    _recyclablePair.first = (Int_t) _n;
-    _recyclablePair.second = (Int_t) _a;
-    return m_algROBRetrievals[ _recyclablePair ];
+  UInt_t TrigCostData::getSeqAlgROBRetrievals(UInt_t n, UInt_t a) const {
+    m_recyclablePair.first = (Int_t) n;
+    m_recyclablePair.second = (Int_t) a;
+    return m_algROBRetrievals[ m_recyclablePair ];
   }
 
   /**
    * Get the size of all ROBs retrieved by an algorithm
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    */
-  Float_t TrigCostData::getSeqAlgROBRetrievalSize(UInt_t _n, UInt_t _a) const {
-    _recyclablePair.first = (Int_t) _n;
-    _recyclablePair.second = (Int_t) _a;
-    return m_algROBRetrievalSize[ _recyclablePair ];
+  Float_t TrigCostData::getSeqAlgROBRetrievalSize(UInt_t n, UInt_t a) const {
+    m_recyclablePair.first = (Int_t) n;
+    m_recyclablePair.second = (Int_t) a;
+    return m_algROBRetrievalSize[ m_recyclablePair ];
   }
 
   /**
    * Get the number of ROBs requested by an algorithm which are marked as 'Ignored', 'Disabled' or 'Unclassified'
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
    */
-  UInt_t TrigCostData::getSeqAlgROBOthers(UInt_t _n, UInt_t _a) const {
-    _recyclablePair.first = (Int_t) _n;
-    _recyclablePair.second = (Int_t) _a;
-    return m_algROBOther[ _recyclablePair ];
+  UInt_t TrigCostData::getSeqAlgROBOthers(UInt_t n, UInt_t a) const {
+    m_recyclablePair.first = (Int_t) n;
+    m_recyclablePair.second = (Int_t) a;
+    return m_algROBOther[ m_recyclablePair ];
   }
 
   /////////////////////////////////
@@ -639,91 +639,91 @@ namespace TrigCostRootAnalysis {
    * Given this complexity, it is probably better to look at the example below.
    *
    * @see getRoIIndexFromId( _roiID )
-   * @param _n Sequence index in D3PD.
-   * @param _a Algorithm index in sequence.
-   * @param _roi Which ROI to get the ID for - this still needs to be mapped to the location in the D3PD using
+   * @param n Sequence index in D3PD.
+   * @param a Algorithm index in sequence.
+   * @param roi Which ROI to get the ID for - this still needs to be mapped to the location in the D3PD using
    *getRoIIndexFromId
-   * @return ID of _roi'th attached region of interest.
+   * @return ID of roi'th attached region of interest.
    */
-  Int_t TrigCostData::getSeqAlgRoIID(UInt_t _n, UInt_t _a, UInt_t _roi) const {
+  Int_t TrigCostData::getSeqAlgRoIID(UInt_t n, UInt_t a, UInt_t roi) const {
     // Info("TrigCostData::getSeqAlgRoIID"," ---   ---   --- " );
-    // Info("TrigCostData::getSeqAlgRoIID","Requested ROI #%i from alg. ", _roi );
+    // Info("TrigCostData::getSeqAlgRoIID","Requested ROI #%i from alg. ", roi );
 
-    UInt_t _nRoi = getSeqAlgNRoI(_n, _a);
+    UInt_t nRoi = getSeqAlgNRoI(n, a);
 
-    // Info("TrigCostData::getSeqAlgRoIID","This alg has %i ROIs. ", _nRoi );
+    // Info("TrigCostData::getSeqAlgRoIID","This alg has %i ROIs. ", nRoi );
 
-    if (_roi >= _nRoi) {
+    if (roi >= nRoi) {
       Warning("TrigCostData::getSeqAlgRoIID", "Requested RoI ID out-of-range");
       return 0;
     }
 
-    UInt_t _sizeOuter = m_trigCostObject->seq_alg_roi_index()->size(); // Range check
-    if (_sizeOuter <= _n) {
+    UInt_t sizeOuter = m_trigCostObject->seq_alg_roi_index()->size(); // Range check
+    if (sizeOuter <= n) {
       Warning("TrigCostData::getSeqAlgRoIID", "Cannot find any RoI lists for alg (out of range).");
       return 0;
     }
 
-    UInt_t _sizeInner = m_trigCostObject->seq_alg_roi_index()->at(_n).size(); // Range check
-    if (_sizeInner <= _a) {
+    UInt_t sizeInner = m_trigCostObject->seq_alg_roi_index()->at(n).size(); // Range check
+    if (sizeInner <= a) {
       Warning("TrigCostData::getSeqAlgRoIID", "Cannot find location of RoI list for alg (out of range).");
       return 0;
     }
 
-    UInt_t _algRoIs = (Int_t) m_trigCostObject->seq_alg_roi_index()->at(_n).at(_a);
-    // Info("TrigCostData::getSeqAlgRoIID"," The requested ROIs have index in the ALG-ROI container %i.", _algRoIs );
+    UInt_t algRoIs = (Int_t) m_trigCostObject->seq_alg_roi_index()->at(n).at(a);
+    // Info("TrigCostData::getSeqAlgRoIID"," The requested ROIs have index in the ALG-ROI container %i.", algRoIs );
 
     // Info("TrigCostData::getSeqAlgRoIID"," The ALG-ROI container is size %i",  (Int_t)
     // m_trigCostObject->seq_roi()->size() );
 
-    _sizeOuter = m_trigCostObject->seq_roi()->size(); // Range check
-    if (_sizeOuter <= _algRoIs) {
+    sizeOuter = m_trigCostObject->seq_roi()->size(); // Range check
+    if (sizeOuter <= algRoIs) {
       Warning("TrigCostData::getSeqAlgRoIID", "Cannot find RoI list for alg (out of range).");
       return 0;
     }
 
-    _sizeInner = m_trigCostObject->seq_roi()->at(_algRoIs).size(); // Range check
-    if (_sizeInner <= _roi) {
+    sizeInner = m_trigCostObject->seq_roi()->at(algRoIs).size(); // Range check
+    if (sizeInner <= roi) {
       if (Config::config().getDisplayMsg(kMsgRoISize) == kTRUE) {
         Warning("TrigCostData::getSeqAlgRoIID",
-                "Cannot find RoI #%u within the list for this alg (out of range [size:%u]).", _roi, _sizeInner);
+                "Cannot find RoI #%u within the list for this alg (out of range [size:%u]).", roi, sizeInner);
       }
       return 0;
     }
 
-    UInt_t _roiID = m_trigCostObject->seq_roi()->at(_algRoIs).at(_roi);
+    UInt_t roiID = m_trigCostObject->seq_roi()->at(algRoIs).at(roi);
     // Info("TrigCostData::getSeqAlgRoIID","   At location %i of the ALG-ROI container there are %i entries, the %i'th
     // has ROI-ID %i",
-    //  _algRoIs, (Int_t) m_trigCostObject->seq_roi()->at(_algRoIs).size(), _roi, _roiID  );
+    //  algRoIs, (Int_t) m_trigCostObject->seq_roi()->at(algRoIs).size(), roi, roiID  );
 
-    //UInt_t _roiLocation = getRoIIndexFromId( _roiID );
-    // Info("TrigCostData::getSeqAlgRoIID","    The location of ROI with index %i is %i ", _roiID, _roiLocation );
+    //UInt_t roiLocation = getRoIIndexFromId( roiID );
+    // Info("TrigCostData::getSeqAlgRoIID","    The location of ROI with index %i is %i ", roiID, roiLocation );
 
-    // const std::string _type = getRoITypeString( _roiLocation );
-    // Info("TrigCostData::getSeqAlgRoIID","     This ROI at location %i is type %s", _roiLocation, _type.c_str() );
-    return _roiID;
+    // const std::string type = getRoITypeString( roiLocation );
+    // Info("TrigCostData::getSeqAlgRoIID","     This ROI at location %i is type %s", roiLocation, type.c_str() );
+    return roiID;
   }
 
   /**
-   * @see TrigCostData::getSeqAlgRoIID(UInt_t _n, UInt_t _a, UInt_t _roi)
+   * @see TrigCostData::getSeqAlgRoIID(UInt_t n, UInt_t a, UInt_t roi)
    */
-  Int_t TrigCostData::getSeqAlgRoILocation(UInt_t _n, UInt_t _a, UInt_t _roi) const {
-    return getRoIIndexFromId(getSeqAlgRoIID(_n, _a, _roi));
+  Int_t TrigCostData::getSeqAlgRoILocation(UInt_t n, UInt_t a, UInt_t roi) const {
+    return getRoIIndexFromId(getSeqAlgRoIID(n, a, roi));
   }
 
   /**
    * Check if this ROB can be associated to an algorithm in the event, if so get the D3PD
    * location of the algorithm.
    * Association is done via checking the algorithm name hash and by time window.
-   * @param _n ROB index in D3PD.
+   * @param n ROB index in D3PD.
    * @return D3PD location in this event of associated algorithm, or (-1,-1) if not found.
    */
-  const std::pair< Int_t, Int_t >& TrigCostData::getROBAlgLocation(UInt_t _n) const {
-    const static std::pair<Int_t, Int_t> _noMatch(-1, -1);
+  const std::pair< Int_t, Int_t >& TrigCostData::getROBAlgLocation(UInt_t n) const {
+    const static std::pair<Int_t, Int_t> noMatch(-1, -1);
 
-    if (m_rosAlgMap.count(_n) == 0) return _noMatch;
+    if (m_rosAlgMap.count(n) == 0) return noMatch;
 
-    return m_rosAlgMap[ _n ];
+    return m_rosAlgMap[ n ];
   }
 
   /**
@@ -736,199 +736,199 @@ namespace TrigCostRootAnalysis {
     // Buffer this data for this event
 
     // First loop over algs - build map of which algs were processed this event, linked to the hash of their name.
-    for (UInt_t _s = 0; _s < getNSequences(); ++_s) {
+    for (UInt_t s = 0; s < getNSequences(); ++s) {
       // Loop over all algorithms in sequence
-      for (UInt_t _a = 0; _a < getNSeqAlgs(_s); ++_a) {
+      for (UInt_t a = 0; a < getNSeqAlgs(s); ++a) {
         // Map this location for easy access later (in next, ROS loop)
         // This prevents a nested loop in a per-event method which would be mighty slow
-        Int_t _seqIndex = getSequenceIndex(_s);
-        Int_t _seqAlgPos = getSeqAlgPosition(_s, _a);
-        UInt_t _algNameHash = TrigConfInterface::getHLTAlgNameIDFromSeqIDAndAlgPos(_seqIndex, _seqAlgPos);
+        Int_t seqIndex = getSequenceIndex(s);
+        Int_t seqAlgPos = getSeqAlgPosition(s, a);
+        UInt_t algNameHash = TrigConfInterface::getHLTAlgNameIDFromSeqIDAndAlgPos(seqIndex, seqAlgPos);
 
-        m_algExecMap[ _algNameHash ].insert(std::make_pair(_s, _a));
+        m_algExecMap[ algNameHash ].insert(std::make_pair(s, a));
 
         // if (Config::config().debug()) {
-        //   Info("TrigCostData::mapRosToAlgs","Mapped Alg Name Hash %u to Alg %i,%i", _algNameHash, _s, _a);
+        //   Info("TrigCostData::mapRosToAlgs","Mapped Alg Name Hash %u to Alg %i,%i", algNameHash, s, a);
         // }
       }
     }
 
     // Second loop over all ROS, map ROS requests to algorithms.
-    for (UInt_t _r = 0; _r < getNROBs(); ++_r) {
+    for (UInt_t r = 0; r < getNROBs(); ++r) {
       // * NOTE * If we have been told NOT to do ROB information. Here is a good place to break this loop and save on
       // execution time
       if (Config::config().getInt(kEnableROSToAlgMatching) == kFALSE) break;
 
-      UInt_t _rosAlgId = getROBReqID(_r);
+      UInt_t rosAlgId = getROBReqID(r);
 
       // Check if this alg's exec data is saved
-      if (m_algExecMap.count(_rosAlgId) == 0) {
+      if (m_algExecMap.count(rosAlgId) == 0) {
         if (Config::config().debug()) Info("TrigCostData::mapRosToAlgs", "No Mapped Alg with name hash %u for ROB # %i",
-                                           _rosAlgId, _r);
+                                           rosAlgId, r);
         continue;
       }
 
       if (Config::config().debug()) {
-        Info("TrigCostData::mapRosToAlgs", "Finding match for ROB %i", _r);
+        Info("TrigCostData::mapRosToAlgs", "Finding match for ROB %i", r);
       }
 
       // Loop over alg exec's and check timing to see if compatible
-      std::set< std::pair< UInt_t, UInt_t > >::iterator _it = m_algExecMap[ _rosAlgId ].begin();
-      for (; _it != m_algExecMap[ _rosAlgId ].end(); ++_it) {
-        if (getRosReqBelongsToAlg(_it->first, _it->second, _r) == kFALSE) {
-          if ((Config::config().debug()) && _it == --m_algExecMap[ _rosAlgId ].end()) {
-            Info("TrigCostData::mapRosToAlgs", "  Temporal match failed for Alg with hash %u and ROB # %u", _rosAlgId,
-                 _r);
+      std::set< std::pair< UInt_t, UInt_t > >::iterator it = m_algExecMap[ rosAlgId ].begin();
+      for (; it != m_algExecMap[ rosAlgId ].end(); ++it) {
+        if (getRosReqBelongsToAlg(it->first, it->second, r) == kFALSE) {
+          if ((Config::config().debug()) && it == --m_algExecMap[ rosAlgId ].end()) {
+            Info("TrigCostData::mapRosToAlgs", "  Temporal match failed for Alg with hash %u and ROB # %u", rosAlgId,
+                 r);
           }
           continue;
         }
         // We have a name hash and temporal match! This alg can be associated to this ROS request.
         // Should only get one match...
-        if (m_rosAlgMap.count(_r) == 1) {
+        if (m_rosAlgMap.count(r) == 1) {
           Warning("TrigCostData::mapRosToAlgs", "Found two matches for a ROS request. (%i->%i,%i and %i->%i,%i)",
-                  _r, _it->first, _it->second, _r, m_rosAlgMap[_r].first, m_rosAlgMap[_r].second);
+                  r, it->first, it->second, r, m_rosAlgMap[r].first, m_rosAlgMap[r].second);
         }
 
         //if (Config::config().debug()) {
-        //  Info("TrigCostData::mapRosToAlgs"," Mapped Alg %i,%i to ROB # %i", _it->first, _it->second, _r);
+        //  Info("TrigCostData::mapRosToAlgs"," Mapped Alg %i,%i to ROB # %i", it->first, it->second, r);
         //}
         // Each ROS Req is associated to only one Alg (1-to-1)
-        m_rosAlgMap[_r] = (*_it); // This dereferences to the pair
+        m_rosAlgMap[r] = (*it); // This dereferences to the pair
         // Each alg can have many ROS requests
-        if (m_algRosMap.count(*_it) == 0) {
-          m_algRosMap[ (*_it) ] = std::set<Int_t>();
+        if (m_algRosMap.count(*it) == 0) {
+          m_algRosMap[ (*it) ] = std::set<Int_t>();
         }
-        m_algRosMap[ (*_it) ].insert(_r); // Make the map go both ways (1-to-many)
+        m_algRosMap[ (*it) ].insert(r); // Make the map go both ways (1-to-many)
       }
-      if ((Config::config().debug()) && m_rosAlgMap.count(_r) == 0) {
-        Warning("TrigCostData::mapRosToAlgs", " Found zero matches for a ROS request. (%i)", _r);
+      if ((Config::config().debug()) && m_rosAlgMap.count(r) == 0) {
+        Warning("TrigCostData::mapRosToAlgs", " Found zero matches for a ROS request. (%i)", r);
       }
     }
   }
 
   /**
    * Helper function, returns if an algorithm requested a given ROS req based on the time of the request
-   * @param _seq D3PD index of sequence to test
-   * @param _alg D3PD index of algorithm in sequence to test
-   * @param _Ros D3PD index of ROS to test
+   * @param seq D3PD index of sequence to test
+   * @param alg D3PD index of algorithm in sequence to test
+   * @param Ros D3PD index of ROS to test
    * @returns kTRUE if the ROS request time falls within the algorithm execution time.
    */
-  Bool_t TrigCostData::getRosReqBelongsToAlg(UInt_t _seq, UInt_t _alg, UInt_t _ros) const {
-    if (isZero(getROBTimeStartSec(_ros)) || isZero(getSeqAlgTimeStartSec(_seq, _alg))) return kFALSE;
+  Bool_t TrigCostData::getRosReqBelongsToAlg(UInt_t seq, UInt_t alg, UInt_t ros) const {
+    if (isZero(getROBTimeStartSec(ros)) || isZero(getSeqAlgTimeStartSec(seq, alg))) return kFALSE;
 
-    Float_t _startTimeDif = ((Float_t) getROBTimeStartSec(_ros) - (Float_t) getSeqAlgTimeStartSec(_seq, _alg));
+    Float_t startTimeDif = ((Float_t) getROBTimeStartSec(ros) - (Float_t) getSeqAlgTimeStartSec(seq, alg));
     //Check that this did not go over an hour boundary
-    Bool_t _flagStartSpansHourBoundary = kFALSE;
-    if (_startTimeDif > 1800.) { //This is 30m
-      _startTimeDif = 3600. - _startTimeDif;
-      _flagStartSpansHourBoundary = kTRUE;
+    Bool_t flagStartSpansHourBoundary = kFALSE;
+    if (startTimeDif > 1800.) { //This is 30m
+      startTimeDif = 3600. - startTimeDif;
+      flagStartSpansHourBoundary = kTRUE;
       if (Config::config().getDisplayMsg(kMsgHourBoundary) == kTRUE) {
         Info("TrigCostData::getRosReqBelongsToAlg",
              "Hour Boundary in START AlgStart:%i.%i ROSStart:%i.%i - ROSEnd:%i.%i AlgEnd:%i.%i. TimeDifStart:%f",
-             getSeqAlgTimeStartSec(_seq, _alg),
-             getSeqAlgTimeStartMicroSec(_seq, _alg),
-             getROBTimeStartSec(_ros),
-             getROBTimeStartMicroSec(_ros),
-             getROBTimeStopSec(_ros),
-             getROBTimeStopMicroSec(_ros),
-             getSeqAlgTimeStopSec(_seq, _alg),
-             getSeqAlgTimeStopMicroSec(_seq, _alg),
-             _startTimeDif);
+             getSeqAlgTimeStartSec(seq, alg),
+             getSeqAlgTimeStartMicroSec(seq, alg),
+             getROBTimeStartSec(ros),
+             getROBTimeStartMicroSec(ros),
+             getROBTimeStopSec(ros),
+             getROBTimeStopMicroSec(ros),
+             getSeqAlgTimeStopSec(seq, alg),
+             getSeqAlgTimeStopMicroSec(seq, alg),
+             startTimeDif);
       }
     }
-    _startTimeDif += ((Float_t) getROBTimeStartMicroSec(_ros) - (Float_t) getSeqAlgTimeStartMicroSec(_seq, _alg)) / 1e6;
-    if (_startTimeDif < 0) {
-      if (_flagStartSpansHourBoundary == kTRUE && Config::config().getDisplayMsg(kMsgHourBoundary) == kTRUE) {
-        Info("TrigCostData::getRosReqBelongsToAlg", "Hour boundary in start, therefore modified _startTimeDif:%f"
+    startTimeDif += ((Float_t) getROBTimeStartMicroSec(ros) - (Float_t) getSeqAlgTimeStartMicroSec(seq, alg)) / 1e6;
+    if (startTimeDif < 0) {
+      if (flagStartSpansHourBoundary == kTRUE && Config::config().getDisplayMsg(kMsgHourBoundary) == kTRUE) {
+        Info("TrigCostData::getRosReqBelongsToAlg", "Hour boundary in start, therefore modified startTimeDif:%f"
                                                     " should be >= 0, but this is not the case it seems. Odd - this should be investigated. Failing this alg-ros match.",
-             _startTimeDif);
+             startTimeDif);
       }
       return kFALSE;
     }
 
     // Note we reverse the order here as we want to know if the ROS request is in the middle of the alg
-    Float_t _stopTimeDif = (Float_t) getSeqAlgTimeStopSec(_seq, _alg) - (Float_t) getROBTimeStopSec(_ros);
-    if (_stopTimeDif < -1800.) { //This is 30m
-      if (_flagStartSpansHourBoundary == kTRUE) {
+    Float_t stopTimeDif = (Float_t) getSeqAlgTimeStopSec(seq, alg) - (Float_t) getROBTimeStopSec(ros);
+    if (stopTimeDif < -1800.) { //This is 30m
+      if (flagStartSpansHourBoundary == kTRUE) {
         // If both the start and stop appear to span the hour-boundary then this ROS req cannot be contained within the
         // alg
         // Only if one of the two span the hour boundary is this possible
         if (Config::config().getDisplayMsg(kMsgHourBoundary) == kTRUE) {
           Info("TrigCostData::getRosReqBelongsToAlg",
-               "Hour Boundary in STOP, therefore ROS cannot be associated to this ALG. TimeDifStop:%f", _stopTimeDif);
+               "Hour Boundary in STOP, therefore ROS cannot be associated to this ALG. TimeDifStop:%f", stopTimeDif);
         }
         return kFALSE;
       }
-      _stopTimeDif = 3600. + _stopTimeDif;
+      stopTimeDif = 3600. + stopTimeDif;
       if (Config::config().getDisplayMsg(kMsgHourBoundary) == kTRUE) {
         Info("TrigCostData::getRosReqBelongsToAlg",
              "Hour Boundary in STOP AlgStart:%i.%i ROSStart:%i.%i - ROSEnd:%i.%i AlgEnd:%i.%i. TimeDifStop:%f",
-             getSeqAlgTimeStartSec(_seq, _alg),
-             getSeqAlgTimeStartMicroSec(_seq, _alg),
-             getROBTimeStartSec(_ros),
-             getROBTimeStartMicroSec(_ros),
-             getROBTimeStopSec(_ros),
-             getROBTimeStopMicroSec(_ros),
-             getSeqAlgTimeStopSec(_seq, _alg),
-             getSeqAlgTimeStopMicroSec(_seq, _alg),
-             _stopTimeDif);
+             getSeqAlgTimeStartSec(seq, alg),
+             getSeqAlgTimeStartMicroSec(seq, alg),
+             getROBTimeStartSec(ros),
+             getROBTimeStartMicroSec(ros),
+             getROBTimeStopSec(ros),
+             getROBTimeStopMicroSec(ros),
+             getSeqAlgTimeStopSec(seq, alg),
+             getSeqAlgTimeStopMicroSec(seq, alg),
+             stopTimeDif);
       }
     }
-    _stopTimeDif += ((Float_t) getSeqAlgTimeStopMicroSec(_seq, _alg) - (Float_t) getROBTimeStopMicroSec(_ros)) / 1e6;
-    if (_flagStartSpansHourBoundary == kTRUE && Config::config().getDisplayMsg(kMsgHourBoundary) == kTRUE) {
-      Info("TrigCostData::getRosReqBelongsToAlg", "Stop TimeDifStop:%f", _stopTimeDif);
+    stopTimeDif += ((Float_t) getSeqAlgTimeStopMicroSec(seq, alg) - (Float_t) getROBTimeStopMicroSec(ros)) / 1e6;
+    if (flagStartSpansHourBoundary == kTRUE && Config::config().getDisplayMsg(kMsgHourBoundary) == kTRUE) {
+      Info("TrigCostData::getRosReqBelongsToAlg", "Stop TimeDifStop:%f", stopTimeDif);
     }
 
     // One of the checks needs to have a veto on == 0 as we can get a ROS on the temporal border between two ALGS
     // e.g. Alg A: AlgStart:339.450639 ROSStart:339.453074 --- ROSEnd:339.453074 AlgEnd:339.453074
     // e.g. Alg B: AlgStart:339.453074 ROSStart:339.453074 --- ROSEnd:339.453074 AlgEnd:339.458076
     // Without this, this ROS req would be assigned to them both.
-    if (_stopTimeDif < 0 || isZero(_stopTimeDif)) {
-      if (_flagStartSpansHourBoundary == kTRUE && Config::config().getDisplayMsg(kMsgHourBoundary) == kTRUE) {
-        Info("TrigCostData::getRosReqBelongsToAlg", "Match failed due to _stopTimeDif <= 0 (%f)", _stopTimeDif);
+    if (stopTimeDif < 0 || isZero(stopTimeDif)) {
+      if (flagStartSpansHourBoundary == kTRUE && Config::config().getDisplayMsg(kMsgHourBoundary) == kTRUE) {
+        Info("TrigCostData::getRosReqBelongsToAlg", "Match failed due to stopTimeDif <= 0 (%f)", stopTimeDif);
       }
       return kFALSE;
     }
 
-    if (_flagStartSpansHourBoundary == kTRUE && Config::config().getDisplayMsg(kMsgHourBoundary) == kTRUE) {
-      Info("TrigCostData::getRosReqBelongsToAlg", "Match suceeded due to _stopTimeDif > 0 (%f)", _stopTimeDif);
+    if (flagStartSpansHourBoundary == kTRUE && Config::config().getDisplayMsg(kMsgHourBoundary) == kTRUE) {
+      Info("TrigCostData::getRosReqBelongsToAlg", "Match suceeded due to stopTimeDif > 0 (%f)", stopTimeDif);
     }
     return kTRUE;
   }
 
   /**
    * Get D3PD index location of a ROI in an event from its ID number.
-   * @param _id Read Out Buffer ID number.
+   * @param id Read Out Buffer ID number.
    * @return The index location of the ROI or -1 if it could not be found.
    */
-  Int_t TrigCostData::getRoIIndexFromId(Int_t _id) const {
+  Int_t TrigCostData::getRoIIndexFromId(Int_t id) const {
     //TODO buffer me.
-    for (UInt_t _i = 0; _i < getNRoIs(); ++_i) {
-      if (getRoIID(_i) == _id) return _i;
+    for (UInt_t i = 0; i < getNRoIs(); ++i) {
+      if (getRoIID(i) == id) return i;
     }
     // Can't find it? try the hack. Note this is a XXX TODO HACK
-    for (UInt_t _i = 0; _i < getNRoIs(); ++_i) {
-      if ((_id == 0 || _id == 255) && getRoIID(_i) == 253) {
+    for (UInt_t i = 0; i < getNRoIs(); ++i) {
+      if ((id == 0 || id == 255) && getRoIID(i) == 253) {
         if (Config::config().getDisplayMsg(kMsgRoIHack) == kTRUE) {
           Warning("TrigCostData::getRoIIndexFromId",
                   "Using RoI hack with %s RoI. NRoIs:%i. Requested RoI ID:%i, returning RoI #:%i with ID:%i",
-                  getRoITypeString(_i).c_str(),
+                  getRoITypeString(i).c_str(),
                   getNRoIs(),
-                  _id,
-                  _i,
-                  getRoIID(_i));
+                  id,
+                  i,
+                  getRoIID(i));
         }
-        return _i;
+        return i;
       }
     }
     if (Config::config().getDisplayMsg(kMsgCannotFindRoI) == kTRUE) {
       Warning("TrigCostData::getRoIIndexFromId",
-              "No RoI found with ID %i (going to return an invalid location, -1). The posibilities were:", _id);
-      for (UInt_t _i = 0; _i < getNRoIs(); ++_i) {
+              "No RoI found with ID %i (going to return an invalid location, -1). The posibilities were:", id);
+      for (UInt_t i = 0; i < getNRoIs(); ++i) {
         Warning("TrigCostData::getRoIIndexFromId", " -- RoI at location %i (%s) has ID %i",
-                _i,
-                this->getRoITypeString(_i).c_str(),
-                this->getRoIID(_i));
+                i,
+                this->getRoITypeString(i).c_str(),
+                this->getRoIID(i));
       }
     }
     return -1;
@@ -936,34 +936,34 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Return a string representing this ROI's name
-   * @param _n RoI ID number.
+   * @param n RoI ID number.
    * @return Const reference to ROI type string.
    */
-  const std::string& TrigCostData::getRoITypeString(Int_t _n) const {
-    if (_n >= 0 && _n < (Int_t) getNRoIs()) {
-      if (getIsRoINone(_n) == kTRUE) return Config::config().getStr(kNoneString);
-      else if (getIsRoIMuon(_n) == kTRUE) return Config::config().getStr(kMuonString);
-      else if (getIsRoIEmTau(_n) == kTRUE) {
+  const std::string& TrigCostData::getRoITypeString(Int_t n) const {
+    if (n >= 0 && n < (Int_t) getNRoIs()) {
+      if (getIsRoINone(n) == kTRUE) return Config::config().getStr(kNoneString);
+      else if (getIsRoIMuon(n) == kTRUE) return Config::config().getStr(kMuonString);
+      else if (getIsRoIEmTau(n) == kTRUE) {
         return Config::config().getStr(kEmTauString);
-        //if (getIsRoITau(_n))  return Config::config().getStr(kTauString); // For later
+        //if (getIsRoITau(n))  return Config::config().getStr(kTauString); // For later
         //else return Config::config().getStr(kEmString);
-      } else if (getIsRoIJet(_n) == kTRUE) return Config::config().getStr(kJetString);
-      else if (getIsRoIJetEt(_n) == kTRUE) return Config::config().getStr(kJetEtString);
-      else if (getIsRoIEnergy(_n) == kTRUE) return Config::config().getStr(kEnergyString);
+      } else if (getIsRoIJet(n) == kTRUE) return Config::config().getStr(kJetString);
+      else if (getIsRoIJetEt(n) == kTRUE) return Config::config().getStr(kJetEtString);
+      else if (getIsRoIEnergy(n) == kTRUE) return Config::config().getStr(kEnergyString);
     }
     if (Config::config().getDisplayMsg(kMsgUnknownRoIType) == kTRUE) {
-      Warning("TrigCostData::getRoITypeString", "Encountered an ROI at location:%i with no type.", _n);
+      Warning("TrigCostData::getRoITypeString", "Encountered an ROI at location:%i with no type.", n);
     }
     return Config::config().getStr(kUnknownString);
   }
 
   /**
-   * @param _n TE index in D3PD.
+   * @param n TE index in D3PD.
    * @return Find location in D3PD of TE with given index
    */
-  Int_t TrigCostData::getTEPositionFromTEIndex(UInt_t _n) const {
+  Int_t TrigCostData::getTEPositionFromTEIndex(UInt_t n) const {
     for (UInt_t i = 0; i < getNTEs(); ++i) {
-      if (getTEIndex(i) == _n) return _n;
+      if (getTEIndex(i) == n) return n;
     }
     return -1;
   }
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/TrigXMLService.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/TrigXMLService.cxx
index 7a6074bf471110534182ddebcbb2e719d68515a1..0e5ddf1d28f80313e126b594269be800d62a8beb 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/TrigXMLService.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/TrigXMLService.cxx
@@ -78,16 +78,16 @@ namespace TrigCostRootAnalysis {
     m_ignoreGRL = Config::config().getInt(kIgnoreGRL);
     parseRunXML(Config::config().getInt(kRunNumber), kTRUE);
     // Is this a "multi run"? If so - load details from the LB of the other runs
-    std::vector<Int_t> _multiRun = Config::config().getIntVec(kMultiRun);
-    for (Int_t _mr : _multiRun) {
-      if (_mr == Config::config().getInt(kRunNumber)) {
+    std::vector<Int_t> multiRun = Config::config().getIntVec(kMultiRun);
+    for (Int_t mr : multiRun) {
+      if (mr == Config::config().getInt(kRunNumber)) {
         Fatal("TrigXMLService::TrigXMLService",
               "If doing MultiRun, provide the 'primary' run's inputs first, followed by the additional runs whose run numbers were speificed to --multiRun");
         //Bool_t _primaryRunOpenedFirstBeforeMultiRunInputFiles = kFALSE;
         //assert(_primaryRunOpenedFirstBeforeMultiRunInputFiles);
         std::abort();
       }
-      parseRunXML(_mr, kFALSE);
+      parseRunXML(mr, kFALSE);
     }
 
     if (Config::config().getIsSet(kPrescaleXMLPath1) == kTRUE) parseXML(1);
@@ -99,22 +99,22 @@ namespace TrigCostRootAnalysis {
     }
   }
 
-  Double_t TrigXMLService::getPrescale(const std::string& _name) {
+  Double_t TrigXMLService::getPrescale(const std::string& name) {
     if (m_serviceEnabled == kFALSE) {
-      if (_name.substr(0, 3) == "L1_") {
+      if (name.substr(0, 3) == "L1_") {
         return (Double_t) Config::config().getFloat(kRateFallbackPrescaleL1);
       } else {
         return (Double_t) Config::config().getFloat(kRateFallbackPrescaleHLT);
       }
     }
 
-    StringDoubleMapIt_t _it = m_chainPS.find(_name);
-    if (_it == m_chainPS.end()) {
-      if (_name.substr(0, 3) == "L1_") {
+    StringDoubleMapIt_t it = m_chainPS.find(name);
+    if (it == m_chainPS.end()) {
+      if (name.substr(0, 3) == "L1_") {
         if (Config::config().getDisplayMsg(kMsgXMLPrescale) == kTRUE) {
           Warning("TrigXMLService::getPrescale",
                   "Cannot find rates prescale for chain %s in the supplied XML. Will return fallback L1 PS:%f.",
-                  _name.c_str(),
+                  name.c_str(),
                   Config::config().getFloat(kRateFallbackPrescaleL1));
         }
         return (Double_t) Config::config().getFloat(kRateFallbackPrescaleL1);
@@ -122,14 +122,14 @@ namespace TrigCostRootAnalysis {
         if (Config::config().getDisplayMsg(kMsgXMLPrescale) == kTRUE) {
           Warning("TrigXMLService::getPrescale",
                   "Cannot find rates prescale for chain %s in the supplied XML. Will return fallback HLT PS:%f.",
-                  _name.c_str(),
+                  name.c_str(),
                   Config::config().getFloat(kRateFallbackPrescaleHLT));
         }
         return (Double_t) Config::config().getFloat(kRateFallbackPrescaleHLT);
       }
     }
 
-    return _it->second;
+    return it->second;
   }
 
   /**
@@ -137,22 +137,22 @@ namespace TrigCostRootAnalysis {
    *account:
    * - All data should be scaled down by 1/PSL1 * 1/PSHLT
    * - If the HLT trigger or L1 trigger is disabled, the weight should be 0.
-   * @param _chainName Name of the chain to get the weighting factor for. Only makes sense to this fn for HLT chains
+   * @param chainName Name of the chain to get the weighting factor for. Only makes sense to this fn for HLT chains
    * @return the calculated multiplicitive weighting factor
    */
-  Double_t TrigXMLService::getHLTCostWeightingFactor(const std::string& _chainName) {
-    Double_t _prescaleHLT = getPrescale(_chainName);
+  Double_t TrigXMLService::getHLTCostWeightingFactor(const std::string& chainName) {
+    Double_t prescaleHLT = getPrescale(chainName);
 
-    if (_prescaleHLT < 0.) return 0.;
+    if (prescaleHLT < 0.) return 0.;
 
-    const std::string _myLowerChain = TrigConfInterface::getLowerChainName(_chainName);
+    const std::string myLowerChain = TrigConfInterface::getLowerChainName(chainName);
     // Check we're not multi-seeded
-    if (_myLowerChain.find(",") != std::string::npos) return 1. / _prescaleHLT; //What else could we do here?
+    if (myLowerChain.find(",") != std::string::npos) return 1. / prescaleHLT; //What else could we do here?
 
-    Double_t _lowerPS = getPrescale(_myLowerChain);
-    if (_lowerPS < 0.) return 0.;
+    Double_t lowerPS = getPrescale(myLowerChain);
+    if (lowerPS < 0.) return 0.;
 
-    return (1. / _prescaleHLT) * (1. / _lowerPS);
+    return (1. / prescaleHLT) * (1. / lowerPS);
   }
 
   /**
@@ -169,9 +169,9 @@ namespace TrigCostRootAnalysis {
       Warning("TrigXMLService::getLumiExtrapWeight", "No run lumi set. No extrapolation.");
       return 1.;
     }
-    Float_t _runLumi;
-    if (Config::config().getIsSet(kRunLumi)) _runLumi = Config::config().getFloat(kRunLumi); // Prefer user supplied
-    else _runLumi = Config::config().getFloat(kRunLumiXML); // Fallbac on XML
+    Float_t runLumi;
+    if (Config::config().getIsSet(kRunLumi)) runLumi = Config::config().getFloat(kRunLumi); // Prefer user supplied
+    else runLumi = Config::config().getFloat(kRunLumiXML); // Fallbac on XML
 
     // If prediction lumi was not set by user or XML, then return 1.
     if (!Config::config().getIsSet(kPredictionLumi)
@@ -193,327 +193,327 @@ namespace TrigCostRootAnalysis {
       return 1.;
     }
 
-    Float_t _predictionLumi, _onlineDeadtime = 0.;
-    std::string _predFrom;
+    Float_t predictionLumi, onlineDeadtime = 0.;
+    std::string predFrom;
     // Prefer the user CLI value, then the value from the prescale XML, then the default lumi point from the run XML
     if (Config::config().getIsSet(kPredictionLumi)) {
-      _predFrom = "command line";
-      _predictionLumi = Config::config().getFloat(kPredictionLumi);
+      predFrom = "command line";
+      predictionLumi = Config::config().getFloat(kPredictionLumi);
     } else if (Config::config().getIsSet(kPredictionLumiMenuXML)) {
-      _predFrom = "prescale XML";
-      _predictionLumi = Config::config().getFloat(kPredictionLumiMenuXML);
+      predFrom = "prescale XML";
+      predictionLumi = Config::config().getFloat(kPredictionLumiMenuXML);
     } else {
-      _predFrom = "run XML (the default target L point)";
-      _predictionLumi = Config::config().getFloat(kPredictionLumiRunXML);
+      predFrom = "run XML (the default target L point)";
+      predictionLumi = Config::config().getFloat(kPredictionLumiRunXML);
     }
 
     if (Config::config().getIsSet(kOnlineDeadtime) && Config::config().getInt(kNoOnlineDeadtimeCorrection) == kFALSE) {
-      _onlineDeadtime = Config::config().getFloat(kOnlineDeadtime);
+      onlineDeadtime = Config::config().getFloat(kOnlineDeadtime);
     }
 
     // This should not be zero, and if it is set then it's set explicitly. Still, check.
-    if (isZero(_predictionLumi) || isZero(_runLumi)) {
+    if (isZero(predictionLumi) || isZero(runLumi)) {
       Warning("TrigXMLService::getLumiExtrapWeight", "The prediction/run lumi of this run has been set to zero. "
                                                      "This is obviously wrong. No scaling will be perfomed.");
       return 1.;
     }
 
-    Float_t _scalingFactor = _predictionLumi / _runLumi;
-    _scalingFactor *= 1 + _onlineDeadtime;
+    Float_t scalingFactor = predictionLumi / runLumi;
+    scalingFactor *= 1 + onlineDeadtime;
 
-    Double_t _averageL = 0.;
-    Int_t _averageLN = 0;
+    Double_t averageL = 0.;
+    Int_t averageLN = 0;
 
     // Do we have a target mu?
     if (!isZero(Config::config().getFloat(kTargetPeakMuAverage)) && Config::config().getIsSet(kOnlinePeakMuAverage)) {
-      Bool_t _doExponentialMu = Config::config().getInt(kDoExponentialMu);
+      Bool_t doExponentialMu = Config::config().getInt(kDoExponentialMu);
 
-      Float_t _lumiScaling = _predictionLumi / _runLumi;
+      Float_t lumiScaling = predictionLumi / runLumi;
 
-      Float_t _targetMu = Config::config().getFloat(kTargetPeakMuAverage);
-      Float_t _onlineMu = Config::config().getFloat(kOnlinePeakMuAverage);
+      Float_t targetMu = Config::config().getFloat(kTargetPeakMuAverage);
+      Float_t onlineMu = Config::config().getFloat(kOnlinePeakMuAverage);
 
-      Float_t _expoRateScaleModifierL1 = Config::config().getFloat(kExpoRateScaleModifierL1);
-      Float_t _expoRateScaleModifierHLT = Config::config().getFloat(kExpoRateScaleModifierHLT);
+      Float_t expoRateScaleModifierL1 = Config::config().getFloat(kExpoRateScaleModifierL1);
+      Float_t expoRateScaleModifierHLT = Config::config().getFloat(kExpoRateScaleModifierHLT);
 
-      Float_t _lumiMuScaling = _targetMu / _onlineMu;
-      Float_t _lumiBunchScaling = _lumiScaling / _lumiMuScaling;
+      Float_t lumiMuScaling = targetMu / onlineMu;
+      Float_t lumiBunchScaling = lumiScaling / lumiMuScaling;
 
-      Float_t _lumiMuScalingExpoL1 = TMath::Exp((_targetMu - _onlineMu) * _expoRateScaleModifierL1);
-      Float_t _lumiMuScalingExpoHLT = TMath::Exp((_targetMu - _onlineMu) * _expoRateScaleModifierHLT);
+      Float_t lumiMuScalingExpoL1 = TMath::Exp((targetMu - onlineMu) * expoRateScaleModifierL1);
+      Float_t lumiMuScalingExpoHLT = TMath::Exp((targetMu - onlineMu) * expoRateScaleModifierHLT);
 
-      if (_doExponentialMu == kFALSE) {
-        _lumiMuScalingExpoL1 = _lumiMuScaling;
-        _lumiMuScalingExpoHLT = _lumiMuScaling;
+      if (doExponentialMu == kFALSE) {
+        lumiMuScalingExpoL1 = lumiMuScaling;
+        lumiMuScalingExpoHLT = lumiMuScaling;
       }
 
-      Float_t _lumiScalingExpoL1 = _lumiBunchScaling * _lumiMuScalingExpoL1 * (1 + _onlineDeadtime);
-      Float_t _lumiScalingExpoHLT = _lumiBunchScaling * _lumiMuScalingExpoHLT * (1 + _onlineDeadtime);
-      _lumiBunchScaling *= (1 + _onlineDeadtime);
-      _lumiMuScaling *= (1 + _onlineDeadtime);
+      Float_t lumiScalingExpoL1 = lumiBunchScaling * lumiMuScalingExpoL1 * (1 + onlineDeadtime);
+      Float_t lumiScalingExpoHLT = lumiBunchScaling * lumiMuScalingExpoHLT * (1 + onlineDeadtime);
+      lumiBunchScaling *= (1 + onlineDeadtime);
+      lumiMuScaling *= (1 + onlineDeadtime);
 
-      Int_t _maxBunches = Config::config().getInt(kMaxBunches);
-      Int_t _maxBCIDs = Config::config().getInt(kMaxBCIDs);
-      Int_t _targetBunches = (Int_t) std::round(m_bunchGroupXML[1].second * _lumiBunchScaling);
-      Info("TrigXMLService::getLumiExtrapWeight", "PredictionLumi taken from %s.", _predFrom.c_str());
+      Int_t maxBunches = Config::config().getInt(kMaxBunches);
+      Int_t maxBCIDs = Config::config().getInt(kMaxBCIDs);
+      Int_t targetBunches = (Int_t) std::round(m_bunchGroupXML[1].second * lumiBunchScaling);
+      Info("TrigXMLService::getLumiExtrapWeight", "PredictionLumi taken from %s.", predFrom.c_str());
       Info("TrigXMLService::getLumiExtrapWeight",
            "Using targetMu setting %.2f. <mu> scaling factor: %.2f->%.2f = %.2f. Expo. L1 = %.2f. Expo. HLT = %.2f",
-           _targetMu, _onlineMu, _targetMu, _lumiMuScaling, _lumiMuScalingExpoL1, _lumiMuScalingExpoHLT);
+           targetMu, onlineMu, targetMu, lumiMuScaling, lumiMuScalingExpoL1, lumiMuScalingExpoHLT);
       Info("TrigXMLService::getLumiExtrapWeight", "Bunch scaling factor: %i->%i = %.2f",
-           m_bunchGroupXML[1].second, _targetBunches, _lumiBunchScaling);
+           m_bunchGroupXML[1].second, targetBunches, lumiBunchScaling);
       Info("TrigXMLService::getLumiExtrapWeight",
            "Online deadtime was %.2f%%, including deadtime - the run averaged lumi scaling factors are: "
            "linear = %.2f, expo. in <mu> L1 = %.2f, expo. in <mu> HLT = %.2f, bunch only = %.2f, mu only = %.2f",
-           _onlineDeadtime * 100., _scalingFactor, _lumiScalingExpoL1, _lumiScalingExpoHLT, _lumiBunchScaling,
-           _lumiMuScaling);
-      if (_targetBunches > _maxBunches + 15 /*allow wiggle room*/ || _targetBunches < 1) {
+           onlineDeadtime * 100., scalingFactor, lumiScalingExpoL1, lumiScalingExpoHLT, lumiBunchScaling,
+           lumiMuScaling);
+      if (targetBunches > maxBunches + 15 /*allow wiggle room*/ || targetBunches < 1) {
         Warning("TrigXMLService::getLumiExtrapWeight",
                 "To get to L=%.2e with a --targetMu of %.2f requires %i bunches. A full ring is %i!",
-                _predictionLumi, _targetMu, _targetBunches, _maxBunches);
+                predictionLumi, targetMu, targetBunches, maxBunches);
       }
       // Can request exponential scaling in <mu>
 
       // Some extra calculations for EMPTY bunchgroup scaling
-      Int_t _currentEmptyBunches = std::max(0, _maxBCIDs - m_bunchGroupXML[1].second); // Filled
-      Int_t _targetEmptyBunches = std::max(0, _maxBCIDs - _targetBunches);
-      Float_t _emptyExtrap = 0.;
-      if (_currentEmptyBunches > 0) _emptyExtrap = _targetEmptyBunches / (Float_t) _currentEmptyBunches;
+      Int_t currentEmptyBunches = std::max(0, maxBCIDs - m_bunchGroupXML[1].second); // Filled
+      Int_t targetEmptyBunches = std::max(0, maxBCIDs - targetBunches);
+      Float_t emptyExtrap = 0.;
+      if (currentEmptyBunches > 0) emptyExtrap = targetEmptyBunches / (Float_t) currentEmptyBunches;
 
       // Write info
       Config::config().set(kDoAdvancedLumiScaling, 1, "DoAdvancedLumiScaling");
-      Config::config().setFloat(kPredictionLumiFinalMuComponent, _lumiMuScaling, "PredictionLumiFinalMuComponent");
-      Config::config().setFloat(kPredictionLumiFinalMuExpoL1Component, _lumiMuScalingExpoL1,
+      Config::config().setFloat(kPredictionLumiFinalMuComponent, lumiMuScaling, "PredictionLumiFinalMuComponent");
+      Config::config().setFloat(kPredictionLumiFinalMuExpoL1Component, lumiMuScalingExpoL1,
                                 "PredictionLumiFinalExponentialMuL1Component");
-      Config::config().setFloat(kPredictionLumiFinalMuExpoHLTComponent, _lumiMuScalingExpoHLT,
+      Config::config().setFloat(kPredictionLumiFinalMuExpoHLTComponent, lumiMuScalingExpoHLT,
                                 "PredictionLumiFinalExponentialMuHLTComponent");
-      Config::config().setFloat(kPredictionLumiFinalBunchComponent, _lumiBunchScaling,
+      Config::config().setFloat(kPredictionLumiFinalBunchComponent, lumiBunchScaling,
                                 "PredictionLumiFinalBunchComponent");
-      Config::config().setFloat(kPredictionLumiFinalExpoL1, _lumiScalingExpoL1, "PredictionLumiFinalExponentialMuL1");
-      Config::config().setFloat(kPredictionLumiFinalExpoHLT, _lumiScalingExpoHLT,
+      Config::config().setFloat(kPredictionLumiFinalExpoL1, lumiScalingExpoL1, "PredictionLumiFinalExponentialMuL1");
+      Config::config().setFloat(kPredictionLumiFinalExpoHLT, lumiScalingExpoHLT,
                                 "PredictionLumiFinalExponentialMuHLT");
-      Config::config().setFloat(kEmptyBunchgroupExtrapolaion, _emptyExtrap, "EmptyBunchgroupExtrapolation");
-      Config::config().set(kTargetPairedBunches, _targetBunches, "TargetPairedBunches");
+      Config::config().setFloat(kEmptyBunchgroupExtrapolaion, emptyExtrap, "EmptyBunchgroupExtrapolation");
+      Config::config().set(kTargetPairedBunches, targetBunches, "TargetPairedBunches");
 
       // Even more fancy is to split these details per LB
-      Float_t _thisLBLumi = _runLumi;
-      Float_t _thisLBMu = _onlineMu;
-      Float_t _thisLBDeadtime = _onlineDeadtime;
-      Int_t _thisLBEmptyBnch = _currentEmptyBunches;
-      for (Int_t _lb = m_minLB; _lb <= m_maxLB; ++_lb) {
+      Float_t thisLBLumi = runLumi;
+      Float_t thisLBMu = onlineMu;
+      Float_t thisLBDeadtime = onlineDeadtime;
+      Int_t thisLBEmptyBnch = currentEmptyBunches;
+      for (Int_t lb = m_minLB; lb <= m_maxLB; ++lb) {
         // If we miss data - then we take the previous LB's data or the run default
-        if (m_lumiPerLB.count(_lb) == 1) _thisLBLumi = m_lumiPerLB[_lb];
-        if (m_muPerLB.count(_lb) == 1) _thisLBMu = m_muPerLB[_lb];
-        if (m_deadtimePerLB.count(_lb) == 1) _thisLBDeadtime = m_deadtimePerLB[_lb];
-        if (m_pairedBunchesPerLB.count(_lb) == 1) _thisLBEmptyBnch = std::max(0, _maxBCIDs - m_pairedBunchesPerLB[_lb]);
+        if (m_lumiPerLB.count(lb) == 1) thisLBLumi = m_lumiPerLB[lb];
+        if (m_muPerLB.count(lb) == 1) thisLBMu = m_muPerLB[lb];
+        if (m_deadtimePerLB.count(lb) == 1) thisLBDeadtime = m_deadtimePerLB[lb];
+        if (m_pairedBunchesPerLB.count(lb) == 1) thisLBEmptyBnch = std::max(0, maxBCIDs - m_pairedBunchesPerLB[lb]);
 
 
-        Float_t _emptyExtrapPerLB = 0.;
-        if (_thisLBEmptyBnch > 0) _emptyExtrapPerLB = _targetEmptyBunches / (Float_t) _thisLBEmptyBnch;
+        Float_t emptyExtrapPerLB = 0.;
+        if (thisLBEmptyBnch > 0) emptyExtrapPerLB = targetEmptyBunches / (Float_t) thisLBEmptyBnch;
 
-        Float_t _lumiScalingPerLB = _predictionLumi / _thisLBLumi;
+        Float_t lumiScalingPerLB = predictionLumi / thisLBLumi;
 
-        Float_t _lumiMuScalingPerLB = _targetMu / _thisLBMu;
-        Float_t _lumiBunchScalingPerLB = _lumiScalingPerLB / _lumiMuScalingPerLB;
+        Float_t lumiMuScalingPerLB = targetMu / thisLBMu;
+        Float_t lumiBunchScalingPerLB = lumiScalingPerLB / lumiMuScalingPerLB;
 
-        Float_t _lumiMuScalingExpoL1PerLB = TMath::Exp((_targetMu - _thisLBMu) * _expoRateScaleModifierL1);
-        Float_t _lumiMuScalingExpoHLTPerLB = TMath::Exp((_targetMu - _thisLBMu) * _expoRateScaleModifierHLT);
+        Float_t lumiMuScalingExpoL1PerLB = TMath::Exp((targetMu - thisLBMu) * expoRateScaleModifierL1);
+        Float_t lumiMuScalingExpoHLTPerLB = TMath::Exp((targetMu - thisLBMu) * expoRateScaleModifierHLT);
 
-        if (_doExponentialMu == kFALSE) {
-          _lumiMuScalingExpoL1PerLB = _lumiMuScalingPerLB;
-          _lumiMuScalingExpoHLTPerLB = _lumiMuScalingPerLB;
+        if (doExponentialMu == kFALSE) {
+          lumiMuScalingExpoL1PerLB = lumiMuScalingPerLB;
+          lumiMuScalingExpoHLTPerLB = lumiMuScalingPerLB;
         }
 
-        Float_t _lumiScalingExpoL1PerLB = _lumiBunchScalingPerLB * _lumiMuScalingExpoL1PerLB;
-        Float_t _lumiScalingExpoHLTPerLB = _lumiBunchScalingPerLB * _lumiMuScalingExpoHLTPerLB;
+        Float_t lumiScalingExpoL1PerLB = lumiBunchScalingPerLB * lumiMuScalingExpoL1PerLB;
+        Float_t lumiScalingExpoHLTPerLB = lumiBunchScalingPerLB * lumiMuScalingExpoHLTPerLB;
 
         // Protect inf
-        if (isZero(_thisLBLumi)) {
-          _lumiScalingPerLB = 0;
-          _lumiScalingExpoL1PerLB = 0;
-          _lumiScalingExpoHLTPerLB = 0;
-          _lumiBunchScalingPerLB = 0;
-          _lumiMuScalingPerLB = 0;
+        if (isZero(thisLBLumi)) {
+          lumiScalingPerLB = 0;
+          lumiScalingExpoL1PerLB = 0;
+          lumiScalingExpoHLTPerLB = 0;
+          lumiBunchScalingPerLB = 0;
+          lumiMuScalingPerLB = 0;
         } else {
-          _averageL += _thisLBLumi;
-          ++_averageLN;
+          averageL += thisLBLumi;
+          ++averageLN;
         }
 
-        m_lumiScalingFactorExpoL1[_lb] = _lumiScalingExpoL1PerLB * (1 + _thisLBDeadtime);
-        m_lumiScalingFactorExpoHLT[_lb] = _lumiScalingExpoHLTPerLB * (1 + _thisLBDeadtime);
-        m_lumiScalingFactorLinear[_lb] = _lumiScalingPerLB * (1 + _thisLBDeadtime);
-        m_lumiScalingFactorBunchOnly[_lb] = _lumiBunchScalingPerLB * (1 + _thisLBDeadtime);
-        m_lumiScalingFactorMuOnly[_lb] = _lumiMuScalingPerLB * (1 + _thisLBDeadtime);
-        m_lumiScalingFactorDeadtimeOnly[_lb] = 1. * (1 + _thisLBDeadtime);
-        m_lumiScalingFactorEmpty[_lb] = _emptyExtrapPerLB;
-        m_lumiScalingFactorUnity[_lb] = 1.;
+        m_lumiScalingFactorExpoL1[lb] = lumiScalingExpoL1PerLB * (1 + thisLBDeadtime);
+        m_lumiScalingFactorExpoHLT[lb] = lumiScalingExpoHLTPerLB * (1 + thisLBDeadtime);
+        m_lumiScalingFactorLinear[lb] = lumiScalingPerLB * (1 + thisLBDeadtime);
+        m_lumiScalingFactorBunchOnly[lb] = lumiBunchScalingPerLB * (1 + thisLBDeadtime);
+        m_lumiScalingFactorMuOnly[lb] = lumiMuScalingPerLB * (1 + thisLBDeadtime);
+        m_lumiScalingFactorDeadtimeOnly[lb] = 1. * (1 + thisLBDeadtime);
+        m_lumiScalingFactorEmpty[lb] = emptyExtrapPerLB;
+        m_lumiScalingFactorUnity[lb] = 1.;
 
         Info("TrigXMLService::getLumiExtrapWeight",
              "  Per-LB scaling factors LB %i: Linear = %.2f | ExpInMuL1 = %.2f | ExpInMuHLT = %.2f | "
              "BunchOnly = %.2f | MuOnly = %.2f | DeadtimeOnly = %.2f | Empty = %.2f |",
-             _lb, m_lumiScalingFactorLinear[_lb], m_lumiScalingFactorExpoL1[_lb], m_lumiScalingFactorExpoHLT[_lb],
-             m_lumiScalingFactorBunchOnly[_lb], m_lumiScalingFactorMuOnly[_lb], m_lumiScalingFactorDeadtimeOnly[_lb],
-             m_lumiScalingFactorEmpty[_lb]);
+             lb, m_lumiScalingFactorLinear[lb], m_lumiScalingFactorExpoL1[lb], m_lumiScalingFactorExpoHLT[lb],
+             m_lumiScalingFactorBunchOnly[lb], m_lumiScalingFactorMuOnly[lb], m_lumiScalingFactorDeadtimeOnly[lb],
+             m_lumiScalingFactorEmpty[lb]);
       }
-      if (_averageLN) _averageL /= _averageLN;
+      if (averageLN) averageL /= averageLN;
     } else {
       // Build map per-LB
-      Float_t _thisLBLumi = _runLumi;
-      std::stringstream _perLBstr;
-      _perLBstr.precision(5);
+      Float_t thisLBLumi = runLumi;
+      std::stringstream perLBstr;
+      perLBstr.precision(5);
 
-      for (Int_t _lb = m_minLB; _lb <= m_maxLB; ++_lb) {
+      for (Int_t lb = m_minLB; lb <= m_maxLB; ++lb) {
         // If we miss data - then we take the previous LB's data or the run default
-        if (m_lumiPerLB.count(_lb) == 1) _thisLBLumi = m_lumiPerLB[_lb];
-        Float_t _lumiScalingPerLB = _predictionLumi / _thisLBLumi;
-        if (isZero(_thisLBLumi)) {
-          _lumiScalingPerLB = 0;
+        if (m_lumiPerLB.count(lb) == 1) thisLBLumi = m_lumiPerLB[lb];
+        Float_t lumiScalingPerLB = predictionLumi / thisLBLumi;
+        if (isZero(thisLBLumi)) {
+          lumiScalingPerLB = 0;
         } else {
-          _averageL += _thisLBLumi;
-          ++_averageLN;
+          averageL += thisLBLumi;
+          ++averageLN;
         }
-        m_lumiScalingFactorLinear[_lb] = _lumiScalingPerLB * (1 + _onlineDeadtime);
-        _averageL += _thisLBLumi;
-        ++_averageLN;
-        _perLBstr << "LB " << _lb << "=" << m_lumiScalingFactorLinear[_lb] << ", ";
+        m_lumiScalingFactorLinear[lb] = lumiScalingPerLB * (1 + onlineDeadtime);
+        averageL += thisLBLumi;
+        ++averageLN;
+        perLBstr << "LB " << lb << "=" << m_lumiScalingFactorLinear[lb] << ", ";
       }
-      if (_averageLN) _averageL /= _averageLN;
+      if (averageLN) averageL /= averageLN;
 
       // This is the old-style message, only show it now if doing basic extrapolation mode
       Info("TrigXMLService::getLumiExtrapWeight", "Predictions will be scaled on average by %.4f from EB RunLumi %.2e to "
                                                   "PredictionLumi %.2e. Including a %.2f%% correction for online deadtime. PredictionLumi taken from %s.", 
-                                                  _scalingFactor, _runLumi, _predictionLumi, _onlineDeadtime * 100., _predFrom.c_str());
-      Info("TrigXMLService::getLumiExtrapWeight", "Per-LB, the weights are: %s", _perLBstr.str().c_str());
+                                                  scalingFactor, runLumi, predictionLumi, onlineDeadtime * 100., predFrom.c_str());
+      Info("TrigXMLService::getLumiExtrapWeight", "Per-LB, the weights are: %s", perLBstr.str().c_str());
     }
 
     // Do we need to update the average lumi of this processing?
-    if (!isZero(_averageL)) {
-      if (fabs(1. - (_runLumi / _averageL)) > 0.05) { // If these numbers are off by more than 5% (arbitrary threshold)
+    if (!isZero(averageL)) {
+      if (fabs(1. - (runLumi / averageL)) > 0.05) { // If these numbers are off by more than 5% (arbitrary threshold)
         Warning("TrigXMLService::getLumiExtrapWeight",
                 "Discrepancy in XML EB average run Lumi (%.4e) and calculated (%.4e). Probably due to restricted LB range.",
-                _runLumi,
-                _averageL);
+                runLumi,
+                averageL);
       }
-      Config::config().setFloat(kRunLumiXML, _averageL, "EnhancedBiasOnlineLumi", kLocked);
+      Config::config().setFloat(kRunLumiXML, averageL, "EnhancedBiasOnlineLumi", kLocked);
     }
 
-    Config::config().setFloat(kLumiExtrapWeight, _scalingFactor, "FinalLumiExtrapWeight", kLocked); // Keep a note of
+    Config::config().setFloat(kLumiExtrapWeight, scalingFactor, "FinalLumiExtrapWeight", kLocked); // Keep a note of
                                                                                                     // this factor
-    Config::config().setFloat(kPredictionLumiFinal, _predictionLumi, "PredictionLumiFinal", kLocked);
-    Config::config().setFloat(kDeadtimeScalingFinal, (1. + _onlineDeadtime), "DeadtimeScalingFinal", kLocked);
-    return _scalingFactor;
+    Config::config().setFloat(kPredictionLumiFinal, predictionLumi, "PredictionLumiFinal", kLocked);
+    Config::config().setFloat(kDeadtimeScalingFinal, (1. + onlineDeadtime), "DeadtimeScalingFinal", kLocked);
+    return scalingFactor;
   }
 
   /**
    * Read XML structure, decide on format using (usually) the head node and pass to parser function
-   * @param _xmlID This program can take in two XMLs, if the L1 and HLT PS are split over them. This int says which we
+   * @param xmlID This program can take in two XMLs, if the L1 and HLT PS are split over them. This int says which we
    *want to process.
    */
-  void TrigXMLService::parseXML(UInt_t _xmlID) {
-    assert(_xmlID == 1 || _xmlID == 2);
-    std::string _psFilePath;
-    std::string _psFileName;
-    if (_xmlID == 1) {
-      _psFilePath = Config::config().getStr(kPrescaleXMLPath1);
-      _psFileName = Config::config().getStr(kPrescaleXMLName1);
-    } else if (_xmlID == 2) {
-      _psFilePath = Config::config().getStr(kPrescaleXMLPath2);
-      _psFileName = Config::config().getStr(kPrescaleXMLName2);
+  void TrigXMLService::parseXML(UInt_t xmlID) {
+    assert(xmlID == 1 || xmlID == 2);
+    std::string psFilePath;
+    std::string psFileName;
+    if (xmlID == 1) {
+      psFilePath = Config::config().getStr(kPrescaleXMLPath1);
+      psFileName = Config::config().getStr(kPrescaleXMLName1);
+    } else if (xmlID == 2) {
+      psFilePath = Config::config().getStr(kPrescaleXMLPath2);
+      psFileName = Config::config().getStr(kPrescaleXMLName2);
     }
 
     // Now try to parse xml file
     // Only file with restricted xml syntax are supported
-    TXMLEngine* _xml = new TXMLEngine();
-    XMLDocPointer_t _xmlDoc = _xml->ParseFile(_psFilePath.c_str());
-    if (_xmlDoc == 0) {
+    TXMLEngine* xml = new TXMLEngine();
+    XMLDocPointer_t xmlDoc = xml->ParseFile(psFilePath.c_str());
+    if (xmlDoc == 0) {
       Error("TrigXMLService::parseXML",
             "Unable to parse prescale XML %s!!! Fallback PS=%f L1, PS=%fi HLT will be used for rate calculations.",
-            _psFilePath.c_str(),
+            psFilePath.c_str(),
             Config::config().getFloat(kRateFallbackPrescaleL1),
             Config::config().getFloat(kRateFallbackPrescaleHLT));
-      delete _xml;
+      delete xml;
       return;
     }
 
     // Get access to main node
-    XMLNodePointer_t _mainNode = _xml->DocGetRootElement(_xmlDoc);
-    if (_xml->GetNodeName(_mainNode) == std::string("trigger")) {
-      parsePrescaleXML(_xml, _xmlDoc);
-    } else if (_xml->GetNodeName(_mainNode) == std::string("HLT_MENU")) {
-      parseMenuXML(_xml, _xmlDoc);
-    } else if (_xml->GetNodeName(_mainNode) == std::string("LVL1Config")) {
-      parseL1MenuXML(_xml, _xmlDoc);
+    XMLNodePointer_t mainNode = xml->DocGetRootElement(xmlDoc);
+    if (xml->GetNodeName(mainNode) == std::string("trigger")) {
+      parsePrescaleXML(xml, xmlDoc);
+    } else if (xml->GetNodeName(mainNode) == std::string("HLT_MENU")) {
+      parseMenuXML(xml, xmlDoc);
+    } else if (xml->GetNodeName(mainNode) == std::string("LVL1Config")) {
+      parseL1MenuXML(xml, xmlDoc);
     } else {
       Error("TrigXMLService::parseXML",
             "Supplied a prescale XML with root node '%s'. I do not know how to decode this!!! Fallback PS=%f L1, PS=%fi HLT will be used for rate calculations.",
-            _xml->GetNodeName(_mainNode),
+            xml->GetNodeName(mainNode),
             Config::config().getFloat(kRateFallbackPrescaleL1),
             Config::config().getFloat(kRateFallbackPrescaleHLT));
     }
 
-    delete _xml;
+    delete xml;
   }
 
   /**
    * Read details from a menu XML file. This allows the user to supply their own prescale set.
    * However this method does not supply L1 prescales.
    */
-  void TrigXMLService::parseMenuXML(TXMLEngine* _xml, XMLDocPointer_t _xmlDoc) {
+  void TrigXMLService::parseMenuXML(TXMLEngine* xml, XMLDocPointer_t xmlDoc) {
     // Get access to main node
-    XMLNodePointer_t _mainNode = _xml->DocGetRootElement(_xmlDoc);
+    XMLNodePointer_t mainNode = xml->DocGetRootElement(xmlDoc);
 
-    assert(_xml->GetNodeName(_mainNode) == std::string("HLT_MENU"));
-    XMLNodePointer_t _listNode = _xml->GetChild(_mainNode);
-    m_menuName = _xml->GetAttr(_mainNode, "menu_name");
-    m_prescalSetName = _xml->GetAttr(_mainNode, "prescale_set_name");
-    Int_t _chainsRead = 0;
+    assert(xml->GetNodeName(mainNode) == std::string("HLT_MENU"));
+    XMLNodePointer_t listNode = xml->GetChild(mainNode);
+    m_menuName = xml->GetAttr(mainNode, "menu_name");
+    m_prescalSetName = xml->GetAttr(mainNode, "prescale_set_name");
+    Int_t chainsRead = 0;
 
-    while (_listNode != 0) { // Loop over all menu elements
-      const std::string _listName = _xml->GetNodeName(_listNode);
+    while (listNode != 0) { // Loop over all menu elements
+      const std::string listName = xml->GetNodeName(listNode);
 
-      if (_listName != "CHAIN_LIST") {
-        _listNode = _xml->GetNext(_listNode);
+      if (listName != "CHAIN_LIST") {
+        listNode = xml->GetNext(listNode);
         continue;
       }
 
-      XMLNodePointer_t _chainNode = _xml->GetChild(_listNode);
-      while (_chainNode != 0) {
-        assert(_xml->GetNodeName(_chainNode) == std::string("CHAIN"));
-        const std::string _chainName = _xml->GetAttr(_chainNode, "chain_name");
-        if (_xml->GetAttr(_chainNode,
-                          "chain_counter")) m_chainCounter[_chainName] =
-          stringToInt(_xml->GetAttr(_chainNode, "chain_counter"));
-        if (_xml->GetAttr(_chainNode, "lower_chain_name")) m_chainLowerLvl[_chainName] = _xml->GetAttr(_chainNode,
+      XMLNodePointer_t chainNode = xml->GetChild(listNode);
+      while (chainNode != 0) {
+        assert(xml->GetNodeName(chainNode) == std::string("CHAIN"));
+        const std::string chainName = xml->GetAttr(chainNode, "chain_name");
+        if (xml->GetAttr(chainNode,
+                          "chain_counter")) m_chainCounter[chainName] =
+          stringToInt(xml->GetAttr(chainNode, "chain_counter"));
+        if (xml->GetAttr(chainNode, "lower_chain_name")) m_chainLowerLvl[chainName] = xml->GetAttr(chainNode,
                                                                                                        "lower_chain_name");
 
-        if (_xml->GetAttr(_chainNode, "prescale")) m_chainPS[_chainName] = stringToDouble(_xml->GetAttr(_chainNode, "prescale"));
-        if (_xml->GetAttr(_chainNode, "pass_through")) m_chainPT[_chainName] = stringToDouble(_xml->GetAttr(_chainNode, "pass_through"));
-        if (_xml->GetAttr(_chainNode, "rerun_prescale")) m_chainRerunPS[_chainName] = stringToDouble(_xml->GetAttr(_chainNode, "rerun_prescale"));
-        if (_xml->GetAttr(_chainNode, "express_prescale")) {
-          m_chainExpressPS[_chainName] = stringToDouble(_xml->GetAttr(_chainNode, "express_prescale"));
+        if (xml->GetAttr(chainNode, "prescale")) m_chainPS[chainName] = stringToDouble(xml->GetAttr(chainNode, "prescale"));
+        if (xml->GetAttr(chainNode, "pass_through")) m_chainPT[chainName] = stringToDouble(xml->GetAttr(chainNode, "pass_through"));
+        if (xml->GetAttr(chainNode, "rerun_prescale")) m_chainRerunPS[chainName] = stringToDouble(xml->GetAttr(chainNode, "rerun_prescale"));
+        if (xml->GetAttr(chainNode, "express_prescale")) {
+          m_chainExpressPS[chainName] = stringToDouble(xml->GetAttr(chainNode, "express_prescale"));
           m_hasExpressPrescaleInfo = kTRUE;
         }
-        ++_chainsRead;
+        ++chainsRead;
 
         if (Config::config().debug()) {
           Info("TrigXMLService::parseMenuXML", "Parsed Chain:%s, Counter:%i, LowerChain:%s, PS:%f, PT:%f, RerunPS:%f, Express:%f",
-               _chainName.c_str(),
-               m_chainCounter[_chainName],
-               m_chainLowerLvl[_chainName].c_str(),
-               m_chainPS[_chainName],
-               m_chainPT[_chainName],
-               m_chainRerunPS[_chainName],
-               m_chainExpressPS[_chainName]);
+               chainName.c_str(),
+               m_chainCounter[chainName],
+               m_chainLowerLvl[chainName].c_str(),
+               m_chainPS[chainName],
+               m_chainPT[chainName],
+               m_chainRerunPS[chainName],
+               m_chainExpressPS[chainName]);
         }
-        _chainNode = _xml->GetNext(_chainNode);
+        chainNode = xml->GetNext(chainNode);
       }
 
-      _listNode = _xml->GetNext(_listNode);
+      listNode = xml->GetNext(listNode);
     }
 
     Info("TrigXMLService::parseMenuXML", "Parsed prescale set %s of menu %s. Read %i chains.",
          m_prescalSetName.c_str(),
          m_menuName.c_str(),
-         _chainsRead);
+         chainsRead);
 
     Config::config().set(kPrescaleSetName, m_prescalSetName, "PrescaleSetName", kUnlocked);
     Config::config().set(kMenuName, m_menuName, "MenuName", kUnlocked);
@@ -525,165 +525,165 @@ namespace TrigCostRootAnalysis {
    * Read details from a L1 menu XML file. This allows the user to supply their own prescale set.
    * We first need to read the name-CTPID mappings, then can read in the PS
    */
-  void TrigXMLService::parseL1MenuXML(TXMLEngine* _xml, XMLDocPointer_t _xmlDoc) {
+  void TrigXMLService::parseL1MenuXML(TXMLEngine* xml, XMLDocPointer_t xmlDoc) {
     // Get access to main node
-    XMLNodePointer_t _mainNode = _xml->DocGetRootElement(_xmlDoc);
+    XMLNodePointer_t mainNode = xml->DocGetRootElement(xmlDoc);
 
-    assert(_xml->GetNodeName(_mainNode) == std::string("LVL1Config"));
-    XMLNodePointer_t _listNode = _xml->GetChild(_mainNode);
-    Int_t _chainsRead = 0;
+    assert(xml->GetNodeName(mainNode) == std::string("LVL1Config"));
+    XMLNodePointer_t listNode = xml->GetChild(mainNode);
+    Int_t chainsRead = 0;
 
-    while (_listNode != 0) { // Loop over all menu elements
-      const std::string _listName = _xml->GetNodeName(_listNode);
+    while (listNode != 0) { // Loop over all menu elements
+      const std::string listName = xml->GetNodeName(listNode);
 
       // TriggerMenu contains TriggerItems which hold the CTPID and names
-      if (_listName == "TriggerMenu") {
-        XMLNodePointer_t _chainNode = _xml->GetChild(_listNode);
-        while (_chainNode != 0) {
-          assert(_xml->GetNodeName(_chainNode) == std::string("TriggerItem"));
-          Int_t _ctpid = stringToInt(_xml->GetAttr(_chainNode, "ctpid"));
-          m_CTPIDToL1Name[_ctpid] = _xml->GetAttr(_chainNode, "name");
+      if (listName == "TriggerMenu") {
+        XMLNodePointer_t chainNode = xml->GetChild(listNode);
+        while (chainNode != 0) {
+          assert(xml->GetNodeName(chainNode) == std::string("TriggerItem"));
+          Int_t ctpid = stringToInt(xml->GetAttr(chainNode, "ctpid"));
+          m_CTPIDToL1Name[ctpid] = xml->GetAttr(chainNode, "name");
           if (Config::config().debug()) {
-            Info("TrigXMLService::parseL1MenuXML", "Step 1: CTPID %i = %s", _ctpid, m_CTPIDToL1Name[_ctpid].c_str());
+            Info("TrigXMLService::parseL1MenuXML", "Step 1: CTPID %i = %s", ctpid, m_CTPIDToL1Name[ctpid].c_str());
           }
-          _chainNode = _xml->GetNext(_chainNode);
+          chainNode = xml->GetNext(chainNode);
         }
 
         // PrescaleSet contains Prescale items which map these CTPIDs to their PS
         // The CTPID, and "n", "m" and "d" parameters are attributes, the prescale is content
-      } else if (_listName == "PrescaleSet") {
-        XMLNodePointer_t _chainNode = _xml->GetChild(_listNode);
-        while (_chainNode != 0) {
-          assert(_xml->GetNodeName(_chainNode) == std::string("Prescale"));
-          Int_t _ctpid = stringToInt(_xml->GetAttr(_chainNode, "ctpid"));
-          const std::string _L1Name = m_CTPIDToL1Name[ _ctpid ];
-          Double_t _prescale = stringToDouble(_xml->GetAttr(_chainNode, "value"));
-          if (_L1Name == Config::config().getStr(kBlankString) && _prescale >= 0) {
-            Error("TrigXMLService::parseL1MenuXML", "XML trying to set PS for CTPID %i, but no chain name was supplied by the file", _ctpid);
-            _chainNode = _xml->GetNext(_chainNode);
+      } else if (listName == "PrescaleSet") {
+        XMLNodePointer_t chainNode = xml->GetChild(listNode);
+        while (chainNode != 0) {
+          assert(xml->GetNodeName(chainNode) == std::string("Prescale"));
+          Int_t ctpid = stringToInt(xml->GetAttr(chainNode, "ctpid"));
+          const std::string L1Name = m_CTPIDToL1Name[ ctpid ];
+          Double_t prescale = stringToDouble(xml->GetAttr(chainNode, "value"));
+          if (L1Name == Config::config().getStr(kBlankString) && prescale >= 0) {
+            Error("TrigXMLService::parseL1MenuXML", "XML trying to set PS for CTPID %i, but no chain name was supplied by the file", ctpid);
+            chainNode = xml->GetNext(chainNode);
             continue;
-          } else if (_L1Name == Config::config().getStr(kBlankString)) { // Silent continue
-            _chainNode = _xml->GetNext(_chainNode);
+          } else if (L1Name == Config::config().getStr(kBlankString)) { // Silent continue
+            chainNode = xml->GetNext(chainNode);
             continue;
           }
-          m_chainCounter[_L1Name] = _ctpid;
-          m_chainPS[_L1Name] = _prescale;
-          ++_chainsRead;
+          m_chainCounter[L1Name] = ctpid;
+          m_chainPS[L1Name] = prescale;
+          ++chainsRead;
           if (Config::config().debug()) {
-            Info("TrigXMLService::parseL1MenuXML", "Step 2: L1 %s = PS %f", _L1Name.c_str(), _prescale);
+            Info("TrigXMLService::parseL1MenuXML", "Step 2: L1 %s = PS %f", L1Name.c_str(), prescale);
           }
-          _chainNode = _xml->GetNext(_chainNode);
+          chainNode = xml->GetNext(chainNode);
         }
       } else {
-        Info("TrigXMLService::parseL1MenuXML", "Ignoring an unknown L1 menu XML element %s", _listName.c_str());
+        Info("TrigXMLService::parseL1MenuXML", "Ignoring an unknown L1 menu XML element %s", listName.c_str());
       }
 
-      _listNode = _xml->GetNext(_listNode);
+      listNode = xml->GetNext(listNode);
     }
 
-    Info("TrigXMLService::parseL1MenuXML", "Parsed L1 prescale set. Read %i chains.", _chainsRead);
+    Info("TrigXMLService::parseL1MenuXML", "Parsed L1 prescale set. Read %i chains.", chainsRead);
     m_serviceEnabled = kTRUE;
   }
 
   /**
    * Alternate parser for prescale XML files, including the output of TrigCostPython
-   * @param _xml Pointer to XML document
+   * @param xml Pointer to XML document
    * @see TrigXMLService::parseMenuXML
    */
-  void TrigXMLService::parsePrescaleXML(TXMLEngine* _xml, XMLDocPointer_t _xmlDoc) {
+  void TrigXMLService::parsePrescaleXML(TXMLEngine* xml, XMLDocPointer_t xmlDoc) {
     // Get access to main node
-    XMLNodePointer_t _mainNode = _xml->DocGetRootElement(_xmlDoc);
+    XMLNodePointer_t mainNode = xml->DocGetRootElement(xmlDoc);
 
-    assert(_xml->GetNodeName(_mainNode) == std::string("trigger"));
-    XMLNodePointer_t _listNode = _xml->GetChild(_mainNode);
+    assert(xml->GetNodeName(mainNode) == std::string("trigger"));
+    XMLNodePointer_t listNode = xml->GetChild(mainNode);
 
 
-    while (_listNode != 0) { // Loop over all menu elements
-      const std::string _listName = _xml->GetNodeName(_listNode);
+    while (listNode != 0) { // Loop over all menu elements
+      const std::string listName = xml->GetNodeName(listNode);
 
-      if (_listName == "PredictionLumi") {
-        Float_t _predictionLumi = stringToFloat(_xml->GetNodeContent(_listNode));
-        Config::config().setFloat(kPredictionLumiMenuXML, _predictionLumi, "PredictionLumiMenuXML");
+      if (listName == "PredictionLumi") {
+        Float_t predictionLumi = stringToFloat(xml->GetNodeContent(listNode));
+        Config::config().setFloat(kPredictionLumiMenuXML, predictionLumi, "PredictionLumiMenuXML");
       }
 
-      if (_listName != "level") { // Find the "level" item
-        _listNode = _xml->GetNext(_listNode);
+      if (listName != "level") { // Find the "level" item
+        listNode = xml->GetNext(listNode);
         continue;
       }
 
-      XMLNodePointer_t _sigNode = _xml->GetChild(_listNode);
-      while (_sigNode != 0) {
-        if (_xml->GetNodeName(_sigNode) != std::string("signature")) { // Find the "signature" items
-          _sigNode = _xml->GetNext(_sigNode);
+      XMLNodePointer_t sigNode = xml->GetChild(listNode);
+      while (sigNode != 0) {
+        if (xml->GetNodeName(sigNode) != std::string("signature")) { // Find the "signature" items
+          sigNode = xml->GetNext(sigNode);
           continue;
         }
 
-        XMLNodePointer_t _sigDetailsNode = _xml->GetChild(_sigNode);
+        XMLNodePointer_t sigDetailsNode = xml->GetChild(sigNode);
 
-        std::string _chainName;
-        while (_sigDetailsNode != 0) {
-          if (_xml->GetNodeContent(_sigDetailsNode) == NULL) {
-            _sigDetailsNode = _xml->GetNext(_sigDetailsNode);
+        std::string chainName;
+        while (sigDetailsNode != 0) {
+          if (xml->GetNodeContent(sigDetailsNode) == NULL) {
+            sigDetailsNode = xml->GetNext(sigDetailsNode);
             continue;
           }
 
-          const std::string _detail = _xml->GetNodeName(_sigDetailsNode);
-          if (_detail == "sig_name") {
-            _chainName = _xml->GetNodeContent(_sigDetailsNode);
-          } else if (_detail == "sig_counter") {
-            m_chainCounter[_chainName] = stringToInt(_xml->GetNodeContent(_sigDetailsNode));
-          } else if (_detail == "prescale" || _detail == "chain_prescale") { // This is an alternate name
-            m_chainPS[_chainName] = stringToDouble(_xml->GetNodeContent(_sigDetailsNode));
-            //if ( isZero(m_chainPS[_chainName]) ) m_chainPS[_chainName] = -1.;
-          } else if (_detail == "lower_chain_name") {
+          const std::string detail = xml->GetNodeName(sigDetailsNode);
+          if (detail == "sig_name") {
+            chainName = xml->GetNodeContent(sigDetailsNode);
+          } else if (detail == "sig_counter") {
+            m_chainCounter[chainName] = stringToInt(xml->GetNodeContent(sigDetailsNode));
+          } else if (detail == "prescale" || detail == "chain_prescale") { // This is an alternate name
+            m_chainPS[chainName] = stringToDouble(xml->GetNodeContent(sigDetailsNode));
+            //if ( isZero(m_chainPS[chainName]) ) m_chainPS[chainName] = -1.;
+          } else if (detail == "lower_chain_name") {
             // Later processing here does not expect any spaces, so remove them now. Pure comma separated list
-            std::string _lower = _xml->GetNodeContent(_sigDetailsNode);
-            while (_lower.find(" ") != std::string::npos) {
-              _lower.replace(_lower.find(" "), 1, Config::config().getStr(kBlankString));
+            std::string lower = xml->GetNodeContent(sigDetailsNode);
+            while (lower.find(" ") != std::string::npos) {
+              lower.replace(lower.find(" "), 1, Config::config().getStr(kBlankString));
             }
-            m_chainLowerLvl[_chainName] = _lower;
-          } else if (_detail == "evts_passed") {
-            m_chainEvtPassed[_chainName] = stringToInt(_xml->GetNodeContent(_sigDetailsNode));
-          } else if (_detail == "evts_passed_weighted") {
-            m_chainEvtPassedWeighted[_chainName] = stringToFloat(_xml->GetNodeContent(_sigDetailsNode));
-          } else if (_detail == "rate") {
-            m_chainRate[_chainName] = stringToFloat(_xml->GetNodeContent(_sigDetailsNode));
-          } else if (_detail == "rate_err") {
-            m_chainRateErr[_chainName] = stringToFloat(_xml->GetNodeContent(_sigDetailsNode));
-          } else if (_detail == "passthrough") {
-            m_chainPT[_chainName] = stringToDouble(_xml->GetNodeContent(_sigDetailsNode));
-          } else if (_detail == "rerun_prescale") {
-            m_chainRerunPS[_chainName] = stringToDouble(_xml->GetNodeContent(_sigDetailsNode));
-          } else if (_detail == "express_prescale") {
-            m_chainExpressPS[_chainName] = stringToDouble(_xml->GetNodeContent(_sigDetailsNode));
+            m_chainLowerLvl[chainName] = lower;
+          } else if (detail == "evts_passed") {
+            m_chainEvtPassed[chainName] = stringToInt(xml->GetNodeContent(sigDetailsNode));
+          } else if (detail == "evts_passed_weighted") {
+            m_chainEvtPassedWeighted[chainName] = stringToFloat(xml->GetNodeContent(sigDetailsNode));
+          } else if (detail == "rate") {
+            m_chainRate[chainName] = stringToFloat(xml->GetNodeContent(sigDetailsNode));
+          } else if (detail == "rate_err") {
+            m_chainRateErr[chainName] = stringToFloat(xml->GetNodeContent(sigDetailsNode));
+          } else if (detail == "passthrough") {
+            m_chainPT[chainName] = stringToDouble(xml->GetNodeContent(sigDetailsNode));
+          } else if (detail == "rerun_prescale") {
+            m_chainRerunPS[chainName] = stringToDouble(xml->GetNodeContent(sigDetailsNode));
+          } else if (detail == "express_prescale") {
+            m_chainExpressPS[chainName] = stringToDouble(xml->GetNodeContent(sigDetailsNode));
             m_hasExpressPrescaleInfo = kTRUE;
-          } else if (_detail == "efficiency") {
-            m_chainEff[_chainName] = stringToFloat(_xml->GetNodeContent(_sigDetailsNode));
-          } else if (_detail == "efficiency_err") {
-            m_chainEffErr[_chainName] = stringToFloat(_xml->GetNodeContent(_sigDetailsNode));
-          } else if (_detail == "prescaled_efficiency") {
-            m_chainPSEff[_chainName] = stringToFloat(_xml->GetNodeContent(_sigDetailsNode));
-          } else if (_detail == "prescaled_efficiency_error") {
-            m_chainPSEffErr[_chainName] = stringToFloat(_xml->GetNodeContent(_sigDetailsNode));
-          } else if (_detail == "comment") {
-            m_chainComment[_chainName] = _xml->GetNodeContent(_sigDetailsNode);
+          } else if (detail == "efficiency") {
+            m_chainEff[chainName] = stringToFloat(xml->GetNodeContent(sigDetailsNode));
+          } else if (detail == "efficiency_err") {
+            m_chainEffErr[chainName] = stringToFloat(xml->GetNodeContent(sigDetailsNode));
+          } else if (detail == "prescaled_efficiency") {
+            m_chainPSEff[chainName] = stringToFloat(xml->GetNodeContent(sigDetailsNode));
+          } else if (detail == "prescaled_efficiency_error") {
+            m_chainPSEffErr[chainName] = stringToFloat(xml->GetNodeContent(sigDetailsNode));
+          } else if (detail == "comment") {
+            m_chainComment[chainName] = xml->GetNodeContent(sigDetailsNode);
             m_hasComments = kTRUE;
           }
 
-          _sigDetailsNode = _xml->GetNext(_sigDetailsNode);
+          sigDetailsNode = xml->GetNext(sigDetailsNode);
         }
 
         // Sanity check here. If the user is not doing EB weighting, and is not scaling up by the L1 PS, then != 1 PS at
         // L1 make no sense.
         if (Config::config().getInt(kDoEBWeighting) == 0
             && Config::config().getInt(kRatesScaleByPS) == 0
-            && _chainName.substr(0, 3) == "L1_"
-            && isZero(m_chainPS[_chainName] - 1.) == kFALSE) {
+            && chainName.substr(0, 3) == "L1_"
+            && isZero(m_chainPS[chainName] - 1.) == kFALSE) {
           Error("TrigXMLService::parsePrescaleXML", "You are setting a prescale PS=%f for an L1 item %s, but you are NOT using EnhancedBias data. "
                                                     "Nor are you using the --scaleRatesByPS option to weight up chains by their L1 prescale. "
                                                     "In order to simulate changes to the L1 prescale, you should be using EB weighting. "
                                                     "Otherwise the correlations between L1 items in the CTP "
-                                                    "will have been lost.", m_chainPS[_chainName], _chainName.c_str());
+                                                    "will have been lost.", m_chainPS[chainName], chainName.c_str());
         }
 
         if (Config::config().debug()) {
@@ -702,26 +702,26 @@ namespace TrigCostRootAnalysis {
                                                    "EffErr%.2f, "
                                                    "PSEff:%.2f, "
                                                    "PSEffErr:%.2f",
-               _chainName.c_str(),
-               m_chainCounter[_chainName],
-               m_chainEvtPassed[_chainName],
-               m_chainEvtPassedWeighted[_chainName],
-               m_chainRate[_chainName],
-               m_chainRateErr[_chainName],
-               m_chainPS[_chainName],
-               m_chainPT[_chainName],
-               m_chainRerunPS[_chainName],
-               m_chainExpressPS[_chainName],
-               m_chainLowerLvl[_chainName].c_str(),
-               m_chainEff[_chainName],
-               m_chainEffErr[_chainName],
-               m_chainPSEff[_chainName],
-               m_chainPSEffErr[_chainName]);
+               chainName.c_str(),
+               m_chainCounter[chainName],
+               m_chainEvtPassed[chainName],
+               m_chainEvtPassedWeighted[chainName],
+               m_chainRate[chainName],
+               m_chainRateErr[chainName],
+               m_chainPS[chainName],
+               m_chainPT[chainName],
+               m_chainRerunPS[chainName],
+               m_chainExpressPS[chainName],
+               m_chainLowerLvl[chainName].c_str(),
+               m_chainEff[chainName],
+               m_chainEffErr[chainName],
+               m_chainPSEff[chainName],
+               m_chainPSEffErr[chainName]);
         }
-        _sigNode = _xml->GetNext(_sigNode);
+        sigNode = xml->GetNext(sigNode);
       }
 
-      _listNode = _xml->GetNext(_listNode);
+      listNode = xml->GetNext(listNode);
     }
 
     Info("TrigXMLService::parsePrescaleXML", "Parsed prescale set from XML. Now know PS values for %i chains.", (Int_t) m_chainPS.size());
@@ -730,134 +730,134 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Try and parse the run XML if any - this contains EB run specifics
-   * @param _runNumber the run number of the XML to load
-   * @param _primaryRun if true, this is the primary & first input file's run. We take this run as the main set of
+   * @param runNumber the run number of the XML to load
+   * @param primaryRun if true, this is the primary & first input file's run. We take this run as the main set of
    *parameters
    */
-  void TrigXMLService::parseRunXML(const Int_t _runNumber, const Bool_t _primaryRun) {
-    const std::string _file = std::string("enhanced_bias_run_") + intToString(_runNumber) + std::string(".xml");
+  void TrigXMLService::parseRunXML(const Int_t runNumber, const Bool_t primaryRun) {
+    const std::string file = std::string("enhanced_bias_run_") + intToString(runNumber) + std::string(".xml");
 
-    std::string _path;
+    std::string path;
 
     if (Config::config().getInt(kIsRootCore) == kTRUE) {
-      _path = std::string(Config::config().getStr(kDataDir) + _file);
+      path = std::string(Config::config().getStr(kDataDir) + file);
     } else {
 // CAUTION - "ATHENA ONLY" CODE
 #ifndef ROOTCORE
-      _path = PathResolverFindDataFile(_file);
+      path = PathResolverFindDataFile(file);
 #endif // not ROOTCORE
     }
 
 
     // 2016 high-<mu> run
     // Here we account for the three v-high-mu-bunches: ~6% of the luminosity came from the three isolated fat bunches
-    Float_t _mod = 1.;
-    if (_runNumber == 310574) {
-      if (Config::config().getInt(kInvertHighMuRunVeto) == true) _mod = 0.06;
-      else _mod = 0.94;
+    Float_t mod = 1.;
+    if (runNumber == 310574) {
+      if (Config::config().getInt(kInvertHighMuRunVeto) == true) mod = 0.06;
+      else mod = 0.94;
     }
 
     // If file exists
-    TXMLEngine* _xml = new TXMLEngine();
-    XMLDocPointer_t _xmlDoc = 0;
+    TXMLEngine* xml = new TXMLEngine();
+    XMLDocPointer_t xmlDoc = 0;
 
-    if (_path != Config::config().getStr(kBlankString) && access(_path.c_str(), F_OK) != -1) {
-      _xmlDoc = _xml->ParseFile(_path.c_str());
+    if (path != Config::config().getStr(kBlankString) && access(path.c_str(), F_OK) != -1) {
+      xmlDoc = xml->ParseFile(path.c_str());
     }
 
-    if (_xmlDoc == 0) {
+    if (xmlDoc == 0) {
       Warning("TrigXMLService::parseRunXML", "Cannot find run XML %s, hence will not do advanced partial-run rate scaling.",
-              _file.c_str());
-      delete _xml;
+              file.c_str());
+      delete xml;
       return;
     }
 
-    XMLNodePointer_t _mainNode = _xml->DocGetRootElement(_xmlDoc);
-    assert(_xml->GetNodeName(_mainNode) == std::string("trigger"));
-    XMLNodePointer_t _listNode = _xml->GetChild(_mainNode);
+    XMLNodePointer_t mainNode = xml->DocGetRootElement(xmlDoc);
+    assert(xml->GetNodeName(mainNode) == std::string("trigger"));
+    XMLNodePointer_t listNode = xml->GetChild(mainNode);
 
-    while (_listNode != 0) { // Loop over all menu elements
-      const std::string _listName = _xml->GetNodeName(_listNode);
+    while (listNode != 0) { // Loop over all menu elements
+      const std::string listName = xml->GetNodeName(listNode);
 
-      if (_listName == "lb_list") {
-        XMLNodePointer_t _node = _xml->GetChild(_listNode);
-        while (_node != 0) {
-          assert(_xml->GetNodeName(_node) == std::string("lb"));
-          Int_t _lb = stringToInt(_xml->GetAttr(_node, "id"));
-          UInt_t _nEvents = stringToInt(_xml->GetNodeContent(_node));
+      if (listName == "lb_list") {
+        XMLNodePointer_t node = xml->GetChild(listNode);
+        while (node != 0) {
+          assert(xml->GetNodeName(node) == std::string("lb"));
+          Int_t lb = stringToInt(xml->GetAttr(node, "id"));
+          UInt_t nEvents = stringToInt(xml->GetNodeContent(node));
           // Is LB to be vetoed? (like a GRL)
-          std::string _flag;
-          if (_xml->HasAttr(_node, "flag")) {
-            _flag = _xml->GetAttr(_node, "flag");
+          std::string flag;
+          if (xml->HasAttr(node, "flag")) {
+            flag = xml->GetAttr(node, "flag");
           }
-          if (_flag == "bad") m_badLumiBlocks.insert(_lb);
+          if (flag == "bad") m_badLumiBlocks.insert(lb);
           // Some runs have higher granularity data
-          Float_t _lumi = 0.;
-          if (_xml->HasAttr(_node, "lumi")) _lumi = stringToFloat(_xml->GetAttr(_node, "lumi"));
-          else _lumi = Config::config().getFloat(kRunLumiXML);
-          if (_lumi < 1e20) _lumi *= 1e30;
+          Float_t lumi = 0.;
+          if (xml->HasAttr(node, "lumi")) lumi = stringToFloat(xml->GetAttr(node, "lumi"));
+          else lumi = Config::config().getFloat(kRunLumiXML);
+          if (lumi < 1e20) lumi *= 1e30;
           //
-          Float_t _mu = 0.;
-          if (_xml->HasAttr(_node, "mu")) _mu = stringToFloat(_xml->GetAttr(_node, "mu"));
-          else _mu = Config::config().getFloat(kOnlinePeakMuAverage);
+          Float_t mu = 0.;
+          if (xml->HasAttr(node, "mu")) mu = stringToFloat(xml->GetAttr(node, "mu"));
+          else mu = Config::config().getFloat(kOnlinePeakMuAverage);
           //
-          if (_lb < m_minLB) m_minLB = _lb;
-          if (_lb > m_maxLB) m_maxLB = _lb;
+          if (lb < m_minLB) m_minLB = lb;
+          if (lb > m_maxLB) m_maxLB = lb;
 
           // We can only deal with one LB per processing, a current limitation of MultiRun
-          assert(m_totalEventsPerLB.count(_lb) == 0);
-
-          m_totalEventsPerLB[_lb] = _nEvents;
-          m_lumiPerLB[_lb] = _lumi;
-          m_muPerLB[_lb] = _mu;
-          m_deadtimePerLB[_lb] = m_loadedDeadtime;
-          m_pairedBunchesPerLB[_lb] = m_loadedPairedBunches;
-          _node = _xml->GetNext(_node);
+          assert(m_totalEventsPerLB.count(lb) == 0);
+
+          m_totalEventsPerLB[lb] = nEvents;
+          m_lumiPerLB[lb] = lumi;
+          m_muPerLB[lb] = mu;
+          m_deadtimePerLB[lb] = m_loadedDeadtime;
+          m_pairedBunchesPerLB[lb] = m_loadedPairedBunches;
+          node = xml->GetNext(node);
         }
-      } else if (_listName == "lumivalues") {
-        XMLNodePointer_t _node = _xml->GetChild(_listNode);
-        while (_node != 0) {
-          if (_xml->GetNodeName(_node) == std::string("lumivalues_data")) {
-            if (_primaryRun) Config::config().setFloat(kRunLumiXML, stringToFloat(_xml->GetNodeContent(_node)) * _mod, "EnhancedBiasOnlineLumi", kUnlocked);
-          } else if (_xml->GetNodeName(_node) == std::string("lumivalues_pred")) {
-            if (_primaryRun) Config::config().setFloat(kPredictionLumiRunXML, stringToFloat(_xml->GetNodeContent(_node)), "PredictionLumiRunXML");
-          } else if (_xml->GetNodeName(_node) == std::string("deadtime")) {
-            m_loadedDeadtime = stringToFloat(_xml->GetNodeContent(_node));
-            if (_primaryRun) Config::config().setFloat(kOnlineDeadtime, m_loadedDeadtime, "OnlineDeadtime");
-          } else if (_xml->GetNodeName(_node) == std::string("peak_mu_av")) {
-            if (_primaryRun) Config::config().setFloat(kOnlinePeakMuAverage, stringToFloat(_xml->GetNodeContent(_node)) * _mod, "OnlinePeakMuAverage");
+      } else if (listName == "lumivalues") {
+        XMLNodePointer_t node = xml->GetChild(listNode);
+        while (node != 0) {
+          if (xml->GetNodeName(node) == std::string("lumivalues_data")) {
+            if (primaryRun) Config::config().setFloat(kRunLumiXML, stringToFloat(xml->GetNodeContent(node)) * mod, "EnhancedBiasOnlineLumi", kUnlocked);
+          } else if (xml->GetNodeName(node) == std::string("lumivalues_pred")) {
+            if (primaryRun) Config::config().setFloat(kPredictionLumiRunXML, stringToFloat(xml->GetNodeContent(node)), "PredictionLumiRunXML");
+          } else if (xml->GetNodeName(node) == std::string("deadtime")) {
+            m_loadedDeadtime = stringToFloat(xml->GetNodeContent(node));
+            if (primaryRun) Config::config().setFloat(kOnlineDeadtime, m_loadedDeadtime, "OnlineDeadtime");
+          } else if (xml->GetNodeName(node) == std::string("peak_mu_av")) {
+            if (primaryRun) Config::config().setFloat(kOnlinePeakMuAverage, stringToFloat(xml->GetNodeContent(node)) * mod, "OnlinePeakMuAverage");
           }
-          _node = _xml->GetNext(_node);
+          node = xml->GetNext(node);
         }
-      } else if (_listName == "bunchgroups") {
-        XMLNodePointer_t _node = _xml->GetChild(_listNode);
-        while (_node != 0) {
-          assert(_xml->GetNodeName(_node) == std::string("bunchgroup"));
-          Int_t _id = stringToInt(_xml->GetAttr(_node, "id"));
-          std::string _name = _xml->GetAttr(_node, "name");
-          Int_t _bunches = stringToInt(_xml->GetNodeContent(_node));
-          m_bunchGroupXML[ _id ] = std::pair<std::string, Int_t>(_name, _bunches);
-          _node = _xml->GetNext(_node);
+      } else if (listName == "bunchgroups") {
+        XMLNodePointer_t node = xml->GetChild(listNode);
+        while (node != 0) {
+          assert(xml->GetNodeName(node) == std::string("bunchgroup"));
+          Int_t id = stringToInt(xml->GetAttr(node, "id"));
+          std::string name = xml->GetAttr(node, "name");
+          Int_t bunches = stringToInt(xml->GetNodeContent(node));
+          m_bunchGroupXML[ id ] = std::pair<std::string, Int_t>(name, bunches);
+          node = xml->GetNext(node);
         }
         m_loadedPairedBunches = m_bunchGroupXML[1].second;
-        if (_runNumber == 310574) {
+        if (runNumber == 310574) {
           if (Config::config().getInt(kInvertHighMuRunVeto) == true) m_loadedPairedBunches = 3;
           else m_loadedPairedBunches -= 3;
         }
         if (Config::config().getIsSet(kPairedBunches) == false) Config::config().set(kPairedBunches, m_loadedPairedBunches, "PairedBunches");
       }
 
-      _listNode = _xml->GetNext(_listNode);
+      listNode = xml->GetNext(listNode);
     }
 
-    const Int_t _lbBegin = Config::config().getInt(kLumiStart);
-    const Int_t _lbEnd = Config::config().getInt(kLumiEnd);
+    const Int_t lbBegin = Config::config().getInt(kLumiStart);
+    const Int_t lbEnd = Config::config().getInt(kLumiEnd);
 
     // May want to restrict to a greater extent than in the run XML
-    if (_lbBegin != INT_MIN && _lbBegin > m_minLB && _lbBegin <= m_maxLB) m_minLB = _lbBegin;
-    if (_lbEnd != INT_MAX && _lbEnd < m_maxLB && _lbEnd >= m_minLB) m_maxLB = _lbEnd;
+    if (lbBegin != INT_MIN && lbBegin > m_minLB && lbBegin <= m_maxLB) m_minLB = lbBegin;
+    if (lbEnd != INT_MAX && lbEnd < m_maxLB && lbEnd >= m_minLB) m_maxLB = lbEnd;
 
-    delete _xml;
+    delete xml;
     m_parsedRunXML = kTRUE;
   }
 
@@ -865,13 +865,13 @@ namespace TrigCostRootAnalysis {
    * @return if a given LB was flagged bad in the Run XML by rates experts. Usually because of detector issues which
    *could affect rates prediction
    */
-  Bool_t TrigXMLService::getIsLBFlaggedBad(Int_t _lb) {
+  Bool_t TrigXMLService::getIsLBFlaggedBad(Int_t lb) {
     if (m_ignoreGRL) return kFALSE;
-    return (Bool_t) m_badLumiBlocks.count(_lb);
+    return (Bool_t) m_badLumiBlocks.count(lb);
   }
 
-  Float_t TrigXMLService::getLBMuValue(Int_t _lb){
-    Float_t mu=m_muPerLB[_lb];
+  Float_t TrigXMLService::getLBMuValue(Int_t lb){
+    Float_t mu=m_muPerLB[lb];
     return mu;
   }
 
@@ -904,219 +904,219 @@ namespace TrigCostRootAnalysis {
   /**
    * @return  the number of bunch groups loaded in XML
    */
-  Double_t TrigXMLService::getExpressPrescaleInfo(const std::string& _name) {
-    if (m_chainExpressPS.count(_name) == 0) return -1.;
+  Double_t TrigXMLService::getExpressPrescaleInfo(const std::string& name) {
+    if (m_chainExpressPS.count(name) == 0) return -1.;
 
-    return m_chainExpressPS[_name];
+    return m_chainExpressPS[name];
   }
 
   /**
    * @return  the comment on the chain, if any
    */
-  std::string TrigXMLService::getChainComment(const std::string& _name) {
-    if (m_chainComment.count(_name) == 0) return "-";
+  std::string TrigXMLService::getChainComment(const std::string& name) {
+    if (m_chainComment.count(name) == 0) return "-";
 
-    return m_chainComment[_name];
+    return m_chainComment[name];
   }
 
   /**
    * @return the name of a bunch group loaded from the run XML
    */
-  std::string TrigXMLService::getBunchGroupName(Int_t _id) {
-    return m_bunchGroupXML[ _id ].first;
+  std::string TrigXMLService::getBunchGroupName(Int_t id) {
+    return m_bunchGroupXML[ id ].first;
   }
 
   /**
    * @return the size of a bunch group loaded from the run XML
    */
-  Int_t TrigXMLService::getBunchGroupSize(Int_t _id) {
-    return m_bunchGroupXML[ _id ].second;
+  Int_t TrigXMLService::getBunchGroupSize(Int_t id) {
+    return m_bunchGroupXML[ id ].second;
   }
 
   /**
    * @return the total number of events to expect for a given LB, lets us know if we saw all the data
    */
-  Int_t TrigXMLService::getOnlineEventsInLB(Int_t _lb) {
-    return m_totalEventsPerLB[ _lb ];
+  Int_t TrigXMLService::getOnlineEventsInLB(Int_t lb) {
+    return m_totalEventsPerLB[ lb ];
   }
 
   /**
    * Load which PCs have which CPUs
    */
   void TrigXMLService::parseHLTFarmXML() {
-    TXMLEngine* _xml = new TXMLEngine();
+    TXMLEngine* xml = new TXMLEngine();
 
-    std::string _path;
+    std::string path;
     if (Config::config().getInt(kIsRootCore) == kTRUE) {
-      _path = std::string(Config::config().getStr(kDataDir) + Config::config().getStr(kFarmXML));
+      path = std::string(Config::config().getStr(kDataDir) + Config::config().getStr(kFarmXML));
     } else {
 // CAUTION - "ATHENA ONLY" CODE
 #ifndef ROOTCORE
-      _path = PathResolverFindDataFile(Config::config().getStr(kFarmXML));
+      path = PathResolverFindDataFile(Config::config().getStr(kFarmXML));
 #endif // not ROOTCORE
     }
 
-    XMLDocPointer_t _xmlDoc = _xml->ParseFile(_path.c_str());
+    XMLDocPointer_t xmlDoc = xml->ParseFile(path.c_str());
 
-    if (_xmlDoc == 0) {
+    if (xmlDoc == 0) {
       Error("TrigXMLService::parseHLTFarmXML", "Unable to load HLT farm XML %s.", Config::config().getStr(kFarmXML).c_str());
-      delete _xml;
+      delete xml;
       return;
     }
 
     // Navigate XML
-    XMLNodePointer_t _mainNode = _xml->DocGetRootElement(_xmlDoc);
-    assert(_xml->GetNodeName(_mainNode) == std::string("oks-data"));
-    XMLNodePointer_t _typesNode = _xml->GetChild(_mainNode);
-    XMLNodePointer_t _compsNode = _xml->GetNext(_typesNode);
-
-    XMLNodePointer_t _typeNode = _xml->GetChild(_typesNode);
-    XMLNodePointer_t _compNode = _xml->GetChild(_compsNode);
-
-    while (_typeNode != 0) { // Loop over all menu elements
-      assert(_xml->GetNodeName(_typeNode) == std::string("type"));
-      UInt_t _id = stringToInt(_xml->GetAttr(_typeNode, "code"));
-      std::string _name = _xml->GetAttr(_typeNode, "name");
-      m_computerTypeToNameMap[_id] = _name;
-      if (_name == "UNKNOWN CPU") m_computerUnknownID = _id;
-      _typeNode = _xml->GetNext(_typeNode);
+    XMLNodePointer_t mainNode = xml->DocGetRootElement(xmlDoc);
+    assert(xml->GetNodeName(mainNode) == std::string("oks-data"));
+    XMLNodePointer_t typesNode = xml->GetChild(mainNode);
+    XMLNodePointer_t compsNode = xml->GetNext(typesNode);
+
+    XMLNodePointer_t typeNode = xml->GetChild(typesNode);
+    XMLNodePointer_t compNode = xml->GetChild(compsNode);
+
+    while (typeNode != 0) { // Loop over all menu elements
+      assert(xml->GetNodeName(typeNode) == std::string("type"));
+      UInt_t id = stringToInt(xml->GetAttr(typeNode, "code"));
+      std::string name = xml->GetAttr(typeNode, "name");
+      m_computerTypeToNameMap[id] = name;
+      if (name == "UNKNOWN CPU") m_computerUnknownID = id;
+      typeNode = xml->GetNext(typeNode);
     }
 
-    std::map< std::pair<UInt_t, UInt_t>, UInt_t> _computerIDToTypeMap;
-    std::map< std::pair<UInt_t, UInt_t>, UInt_t>::const_iterator _compIt;
-    while (_compNode != 0) { // Loop over all menu elements
-      assert(_xml->GetNodeName(_compNode) == std::string("c"));
-      std::string _computer = _xml->GetAttr(_compNode, "i");
-      UInt_t _rack = stringToInt(_computer.substr(0, 2));
-      UInt_t _comp = stringToInt(_computer.substr(2, 3));
-      UInt_t _type = stringToInt(_xml->GetAttr(_compNode, "t"));
-      _computerIDToTypeMap[ std::make_pair(_rack, _comp) ] = _type;
-      _compNode = _xml->GetNext(_compNode);
+    std::map< std::pair<UInt_t, UInt_t>, UInt_t> computerIDToTypeMap;
+    std::map< std::pair<UInt_t, UInt_t>, UInt_t>::const_iterator compIt;
+    while (compNode != 0) { // Loop over all menu elements
+      assert(xml->GetNodeName(compNode) == std::string("c"));
+      std::string computer = xml->GetAttr(compNode, "i");
+      UInt_t rack = stringToInt(computer.substr(0, 2));
+      UInt_t comp = stringToInt(computer.substr(2, 3));
+      UInt_t type = stringToInt(xml->GetAttr(compNode, "t"));
+      computerIDToTypeMap[ std::make_pair(rack, comp) ] = type;
+      compNode = xml->GetNext(compNode);
     }
 
     // Now build a map of PU hash to computer type
-    const std::string _hltLevel = "HLT";
-    std::set<Int_t> _coreTypes = {
+    const std::string hltLevel = "HLT";
+    std::set<Int_t> coreTypes = {
       8, 12, 24
     };
-    Int_t _myCompType = -1;
-    for (Int_t _core : _coreTypes) {
-      for (Int_t _rack = 1; _rack <= 95; ++_rack) {
-        for (Int_t _pc = 1; _pc <= 40; ++_pc) {
-          _compIt = _computerIDToTypeMap.find(std::make_pair(_rack, _pc));
-          if (_compIt != _computerIDToTypeMap.end()) _myCompType = (*_compIt).second;
-          else _myCompType = m_computerUnknownID;
-          for (Int_t _pu = 1; _pu <= _core; ++_pu) {
-            std::stringstream _ss;
-            std::string _s;
-            _ss << std::setfill('0')
-                << "APP_" << _hltLevel
+    Int_t myCompType = -1;
+    for (Int_t core : coreTypes) {
+      for (Int_t rack = 1; rack <= 95; ++rack) {
+        for (Int_t pc = 1; pc <= 40; ++pc) {
+          compIt = computerIDToTypeMap.find(std::make_pair(rack, pc));
+          if (compIt != computerIDToTypeMap.end()) myCompType = (*compIt).second;
+          else myCompType = m_computerUnknownID;
+          for (Int_t pu = 1; pu <= core; ++pu) {
+            std::stringstream ss;
+            std::string s;
+            ss << std::setfill('0')
+                << "APP_" << hltLevel
                 << ":HLTMPPU-"
-                << _core
+                << core
                 << "-MTS:HLT-"
-                << _core
+                << core
                 << ":tpu-rack-"
-                << std::setw(2) << _rack
+                << std::setw(2) << rack
                 << ":pc-tdq-tpu-"
-                << std::setw(2) << _rack
-                << std::setw(3) << _pc
+                << std::setw(2) << rack
+                << std::setw(3) << pc
                 << "-"
-                << std::setw(2) << _pu;
-            _s = _ss.str();
-            m_PUHashToPUType[stringToIntHash(_s)] = _myCompType;
+                << std::setw(2) << pu;
+            s = ss.str();
+            m_PUHashToPUType[stringToIntHash(s)] = myCompType;
 
-            _ss.str(std::string());
-            _ss << std::setfill('0')
-                << "APP_" << _hltLevel
+            ss.str(std::string());
+            ss << std::setfill('0')
+                << "APP_" << hltLevel
                 << ":HLTMPPU-"
-                << _core
+                << core
                 << "-MTS:HLT-"
-                << _core
+                << core
                 << "-MTS:tpu-rack-"
-                << std::setw(2) << _rack
+                << std::setw(2) << rack
                 << ":pc-tdq-tpu-"
-                << std::setw(2) << _rack
-                << std::setw(3) << _pc
+                << std::setw(2) << rack
+                << std::setw(3) << pc
                 << "-"
-                << std::setw(2) << _pu;
-            _s = _ss.str();
-            m_PUHashToPUType[stringToIntHash(_s)] = _myCompType;
+                << std::setw(2) << pu;
+            s = ss.str();
+            m_PUHashToPUType[stringToIntHash(s)] = myCompType;
 
-            _ss.str(std::string());
-            _ss << std::setfill('0')
-                << "APP_" << _hltLevel
+            ss.str(std::string());
+            ss << std::setfill('0')
+                << "APP_" << hltLevel
                 << ":HLTMPPU-"
-                << _core
+                << core
                 << ":HLT-"
-                << _core
+                << core
                 << "-NoTS:tpu-rack-"
-                << std::setw(2) << _rack
+                << std::setw(2) << rack
                 << ":pc-tdq-tpu-"
-                << std::setw(2) << _rack
-                << std::setw(3) << _pc
+                << std::setw(2) << rack
+                << std::setw(3) << pc
                 << "-"
-                << std::setw(2) << _pu;
-            _s = _ss.str();
-            m_PUHashToPUType[stringToIntHash(_s)] = _myCompType;
+                << std::setw(2) << pu;
+            s = ss.str();
+            m_PUHashToPUType[stringToIntHash(s)] = myCompType;
           }
         }
       }
     }
 
-    delete _xml;
+    delete xml;
     return;
   }
 
-  UInt_t TrigXMLService::getComputerType(UInt_t _hash) {
-    UIntUIntMapIt_t _it = m_PUHashToPUType.find(_hash);
+  UInt_t TrigXMLService::getComputerType(UInt_t hash) {
+    UIntUIntMapIt_t it = m_PUHashToPUType.find(hash);
 
-    if (_it == m_PUHashToPUType.end()) return m_computerUnknownID;
+    if (it == m_PUHashToPUType.end()) return m_computerUnknownID;
 
-    return (*_it).second;
+    return (*it).second;
   }
 
   /**
    * Function to load into memory the enhanced bias weighting factors for a run.
    * These are calculated in advance for each EB run and stored in XML format with one entry for each event.
    * They are loaded into memory in a map which is used to fetch the weight.
-   * @param _runNumber Which run's XML to load into memory
+   * @param runNumber Which run's XML to load into memory
    */
-  void TrigXMLService::parseEnhancedBiasXML(Int_t _runNumber) {
-    TXMLEngine* _xml = new TXMLEngine();
+  void TrigXMLService::parseEnhancedBiasXML(Int_t runNumber) {
+    TXMLEngine* xml = new TXMLEngine();
 
-    static Int_t _runLoadNumber = -1;
+    static Int_t runLoadNumber = -1;
 
-    ++_runLoadNumber;
-    Info("TrigXMLService::parseEnhancedBiasXML", "Loading Enhanced Bias Weighting XML for %i. This could take a little time. (Run #%i)", _runNumber, _runLoadNumber);
+    ++runLoadNumber;
+    Info("TrigXMLService::parseEnhancedBiasXML", "Loading Enhanced Bias Weighting XML for %i. This could take a little time. (Run #%i)", runNumber, runLoadNumber);
 
     // Try one. Use the external (AFS) data path
-    Config::config().set(kEBXMLName, "/EnhancedBiasWeights_" + intToString(_runNumber) + ".xml", "EBXMLName", kUnlocked);
+    Config::config().set(kEBXMLName, "/EnhancedBiasWeights_" + intToString(runNumber) + ".xml", "EBXMLName", kUnlocked);
     Config::config().set(kEBXMLPath, Config::config().getStr(kAFSDataDir) + "/" + Config::config().getStr(kEBXMLName), "EBXMLPath", kUnlocked);
 
-    XMLDocPointer_t _xmlDoc = _xml->ParseFile(Config::config().getStr(kEBXMLPath).c_str());
+    XMLDocPointer_t xmlDoc = xml->ParseFile(Config::config().getStr(kEBXMLPath).c_str());
     // Could we load from AFS?
 
-    if (_xmlDoc == 0) {
+    if (xmlDoc == 0) {
       // No - then try loading locally
       if (Config::config().getInt(kIsRootCore) == kTRUE) {
         Config::config().set(kEBXMLPath, Config::config().getStr(kDataDir) + "/" + Config::config().getStr(kEBXMLName), "EBXMLPath", kUnlocked);
       } else {
 // CAUTION - "ATHENA ONLY" CODE
 #ifndef ROOTCORE
-        std::string _locAthena = PathResolverFindDataFile(Config::config().getStr(kEBXMLName));
-        if (_locAthena == Config::config().getStr(kBlankString)) {
+        std::string locAthena = PathResolverFindDataFile(Config::config().getStr(kEBXMLName));
+        if (locAthena == Config::config().getStr(kBlankString)) {
           Error("TrigXMLService::parseEnhancedBiasXML", "Athena cannot find Enhanced Bias weighting file %s. Critical error.", Config::config().getStr(kEBXMLName).c_str());
           abort();
         } else {
-          Config::config().set(kEBXMLName, _locAthena);
+          Config::config().set(kEBXMLName, locAthena);
           Info("TrigXMLService::parseEnhancedBiasXML", "Athena has found the file: %s", Config::config().getStr(kEBXMLName).c_str());
         }
 #endif // not ROOTCORE
       }
 
       // Load the file - try 2
-      _xmlDoc = _xml->ParseFile(Config::config().getStr(kEBXMLPath).c_str());
-      if (_xmlDoc == 0) {
+      xmlDoc = xml->ParseFile(Config::config().getStr(kEBXMLPath).c_str());
+      if (xmlDoc == 0) {
         Error("TrigXMLService::parseEnhancedBiasXML", "Unable to load EnhancedBias weighting factors from %s. Critical error.", Config::config().getStr(kEBXMLName).c_str());
         abort();
       }
@@ -1124,65 +1124,65 @@ namespace TrigCostRootAnalysis {
 
 
     // Navigate XML
-    XMLNodePointer_t _mainNode = _xml->DocGetRootElement(_xmlDoc);
-    assert(_xml->GetNodeName(_mainNode) == std::string("run"));
-    XMLNodePointer_t _weightsNode = _xml->GetChild(_mainNode);
-    XMLNodePointer_t _eventsNode = _xml->GetNext(_weightsNode);
+    XMLNodePointer_t mainNode = xml->DocGetRootElement(xmlDoc);
+    assert(xml->GetNodeName(mainNode) == std::string("run"));
+    XMLNodePointer_t weightsNode = xml->GetChild(mainNode);
+    XMLNodePointer_t eventsNode = xml->GetNext(weightsNode);
 
-    XMLNodePointer_t _weightNode = _xml->GetChild(_weightsNode);
-    XMLNodePointer_t _eventNode = _xml->GetChild(_eventsNode);
+    XMLNodePointer_t weightNode = xml->GetChild(weightsNode);
+    XMLNodePointer_t eventNode = xml->GetChild(eventsNode);
 
-    while (_weightNode != 0) { // Loop over all menu elements
-      assert(_xml->GetNodeName(_weightNode) == std::string("weight")); //Event
+    while (weightNode != 0) { // Loop over all menu elements
+      assert(xml->GetNodeName(weightNode) == std::string("weight")); //Event
 
-      UInt_t _id = stringToInt(_xml->GetAttr(_weightNode, "id")); //Number
+      UInt_t id = stringToInt(xml->GetAttr(weightNode, "id")); //Number
 
       // In MultiRun, we need to apply an offset here
-      _id += _runLoadNumber * 1000;
+      id += runLoadNumber * 1000;
 
-      Float_t _weight = stringToFloat(_xml->GetAttr(_weightNode, "value")); //Weight
-      std::string _bunchgroup = _xml->GetAttr(_weightNode, "bunchgroup"); //BG
-      Bool_t _unbiased = kFALSE;
-      if (_runNumber > 266000) _unbiased = stringToInt(_xml->GetAttr(_weightNode, "unbiased"));
+      Float_t weight = stringToFloat(xml->GetAttr(weightNode, "value")); //Weight
+      std::string bunchgroup = xml->GetAttr(weightNode, "bunchgroup"); //BG
+      Bool_t unbiased = kFALSE;
+      if (runNumber > 266000) unbiased = stringToInt(xml->GetAttr(weightNode, "unbiased"));
 
-      UInt_t _bunchgroupID = (UInt_t) kBG_UNSET;
-      for (UInt_t _i = 0; _i < kEBBunchGroupType_SIZE; ++_i) {
-        if (_bunchgroup == BunchGroupNameStr[_i]) {
-          _bunchgroupID = _i;
+      UInt_t bunchgroupID = (UInt_t) kBG_UNSET;
+      for (UInt_t i = 0; i < kEBBunchGroupType_SIZE; ++i) {
+        if (bunchgroup == BunchGroupNameStr[i]) {
+          bunchgroupID = i;
           break;
         }
       }
 
-      if (_bunchgroupID == (UInt_t) kBG_UNSET) {
-        Error("TrigXMLService::parseEnhancedBiasXML", "I don't know about this bunchgroup: %s", _bunchgroup.c_str());
+      if (bunchgroupID == (UInt_t) kBG_UNSET) {
+        Error("TrigXMLService::parseEnhancedBiasXML", "I don't know about this bunchgroup: %s", bunchgroup.c_str());
       }
 
-      m_idToWeightMap[_id] = _weight;
-      m_idToBGMap[_id] = _bunchgroupID;
-      m_idToUnbiased[_id] = _unbiased;
+      m_idToWeightMap[id] = weight;
+      m_idToBGMap[id] = bunchgroupID;
+      m_idToUnbiased[id] = unbiased;
 
       if (Config::config().debug()) {
         Info("TrigXMLService::parseEnhancedBiasXML", "Enhanced bias weight %.4f has ID %i and bunchgroup %s (%i)",
-             _weight, _id, _bunchgroup.c_str(), _bunchgroupID);
+             weight, id, bunchgroup.c_str(), bunchgroupID);
       }
 
-      _weightNode = _xml->GetNext(_weightNode);
+      weightNode = xml->GetNext(weightNode);
     }
 
-    while (_eventNode != 0) { // Loop over all menu elements
-      assert(_xml->GetNodeName(_eventNode) == std::string("e")); //Event
-      UInt_t _eventNumber = stringToInt(_xml->GetAttr(_eventNode, "n")); //Number
-      UInt_t _eventWeightID = stringToInt(_xml->GetAttr(_eventNode, "w")); //Weight ID
+    while (eventNode != 0) { // Loop over all menu elements
+      assert(xml->GetNodeName(eventNode) == std::string("e")); //Event
+      UInt_t eventNumber = stringToInt(xml->GetAttr(eventNode, "n")); //Number
+      UInt_t eventWeightID = stringToInt(xml->GetAttr(eventNode, "w")); //Weight ID
 
       // In MultiRun, we need to apply an offset here
-      _eventWeightID += _runLoadNumber * 1000;
+      eventWeightID += runLoadNumber * 1000;
 
-      assert(m_ebWeightingMap.count(_eventNumber) == 0); // Event numbers are unique
-      m_ebWeightingMap[_eventNumber] = _eventWeightID;
-      _eventNode = _xml->GetNext(_eventNode);
+      assert(m_ebWeightingMap.count(eventNumber) == 0); // Event numbers are unique
+      m_ebWeightingMap[eventNumber] = eventWeightID;
+      eventNode = xml->GetNext(eventNode);
     }
 
-    Info("TrigXMLService::parseEnhancedBiasXML", "Total of %i event weights loaded. Processed for run %i.", (Int_t) m_ebWeightingMap.size(), _runNumber);
+    Info("TrigXMLService::parseEnhancedBiasXML", "Total of %i event weights loaded. Processed for run %i.", (Int_t) m_ebWeightingMap.size(), runNumber);
     m_weightsServiceEnabled = kTRUE;
     return;
   }
@@ -1190,80 +1190,80 @@ namespace TrigCostRootAnalysis {
   /**
    * Read (if not already imported) the XML rates and bunch groups for this run.
    * Return the weight for this event and store the event's  bunch group setting using the config service.
-   * @param _pass Which pass through the file(s), only increment counters on first pass
+   * @param pass Which pass through the file(s), only increment counters on first pass
    * @param _bcid Current event BCID
    * @return The event weight from the EnhancedBias XML.
    */
-  Float_t TrigXMLService::getEventWeight(UInt_t _eventNumber, UInt_t _lb, UInt_t _pass) {
-    static const Int_t _runNum = Config::config().getInt(kRunNumber);
-    static const std::string _bgString = "BunchGroup";
-    static const std::string _ebString = "EventEBWeight";
-    static const std::string _rdString = "RandomOnline";
-    static const Bool_t _ignoreNonPhys = Config::config().getInt(kIgnoreNonPhysBunchGroups);
+  Float_t TrigXMLService::getEventWeight(UInt_t eventNumber, UInt_t lb, UInt_t pass) {
+    static const Int_t runNum = Config::config().getInt(kRunNumber);
+    static const std::string bgString = "BunchGroup";
+    static const std::string ebString = "EventEBWeight";
+    static const std::string rdString = "RandomOnline";
+    static const Bool_t ignoreNonPhys = Config::config().getInt(kIgnoreNonPhysBunchGroups);
 
     // Special case for pb-p
-    if (_runNum == 218048) {
-      Float_t _eventWeight = 0;
-
-      if (_lb >= 1016) _eventWeight = 7650.;
-      else if (_lb >= 874) _eventWeight = 9560.;
-      else if (_lb >= 753) _eventWeight = 11500.;
-      else if (_lb >= 620) _eventWeight = 15300.;
-      else if (_lb >= 560) _eventWeight = 19100.;
-      else if (_lb >= 558) _eventWeight = 28700.;
-      else if (_lb >= 557) _eventWeight = 19100.;
-      else if (_lb >= 529) _eventWeight = 28700.;
-
-      Config::config().set(kCurrentEventBunchGroupID, 1, _bgString, kUnlocked); // only filled
-      Config::config().setFloat(kCurrentEventEBWeight, _eventWeight, _ebString, kUnlocked);
-      Config::config().set(kCurrentEventWasRandomOnline, 1, _rdString, kUnlocked); // As "minbias"
-      return _eventWeight;
+    if (runNum == 218048) {
+      Float_t eventWeight = 0;
+
+      if (lb >= 1016) eventWeight = 7650.;
+      else if (lb >= 874) eventWeight = 9560.;
+      else if (lb >= 753) eventWeight = 11500.;
+      else if (lb >= 620) eventWeight = 15300.;
+      else if (lb >= 560) eventWeight = 19100.;
+      else if (lb >= 558) eventWeight = 28700.;
+      else if (lb >= 557) eventWeight = 19100.;
+      else if (lb >= 529) eventWeight = 28700.;
+
+      Config::config().set(kCurrentEventBunchGroupID, 1, bgString, kUnlocked); // only filled
+      Config::config().setFloat(kCurrentEventEBWeight, eventWeight, ebString, kUnlocked);
+      Config::config().set(kCurrentEventWasRandomOnline, 1, rdString, kUnlocked); // As "minbias"
+      return eventWeight;
     }
 
 
     // if (Config::config().getInt(kDoEBWeighting) == kFALSE) return 1.;
     if (m_weightsServiceEnabled == kFALSE) {
       parseEnhancedBiasXML(Config::config().getInt(kRunNumber));
-      std::vector<Int_t> _multiRun = Config::config().getIntVec(kMultiRun);
-      for (Int_t _mr : _multiRun) parseEnhancedBiasXML(_mr);
+      std::vector<Int_t> multiRun = Config::config().getIntVec(kMultiRun);
+      for (Int_t mr : multiRun) parseEnhancedBiasXML(mr);
     }
 
-    IntIntMapIt_t _ebIt = m_ebWeightingMap.find(_eventNumber);
-    Int_t _weightID = 0;
-    if (_ebIt == m_ebWeightingMap.end()) {
+    IntIntMapIt_t ebIt = m_ebWeightingMap.find(eventNumber);
+    Int_t weightID = 0;
+    if (ebIt == m_ebWeightingMap.end()) {
       if (Config::config().getDisplayMsg(kMsgXMLWeight) == kTRUE) {
-        Warning("TrigXMLService::getEventWeight", "Cannot find the weight for event %i in LB %i, will use weight = 0. !!", _eventNumber, _lb);
+        Warning("TrigXMLService::getEventWeight", "Cannot find the weight for event %i in LB %i, will use weight = 0. !!", eventNumber, lb);
       }
-      Config::config().set(kCurrentEventBunchGroupID, (Int_t) kBG_UNSET, _bgString, kUnlocked);
+      Config::config().set(kCurrentEventBunchGroupID, (Int_t) kBG_UNSET, bgString, kUnlocked);
       return 0.;
     } else {
-      _weightID = _ebIt->second;
+      weightID = ebIt->second;
     }
 
-    Float_t _eventWeight = m_idToWeightMap[_weightID];
-    UInt_t _eventBG = m_idToBGMap[_weightID];
+    Float_t eventWeight = m_idToWeightMap[weightID];
+    UInt_t eventBG = m_idToBGMap[weightID];
 
     // Option to disable (weight = 0) events if they're not physics collisions
-    if (_ignoreNonPhys == 1) {
-      if (_eventBG != 1) _eventWeight = 0.;
+    if (ignoreNonPhys == 1) {
+      if (eventBG != 1) eventWeight = 0.;
     }
 
     // Store the event BG
-    Config::config().set(kCurrentEventBunchGroupID, _eventBG, _bgString, kUnlocked);
-    Config::config().setFloat(kCurrentEventEBWeight, _eventWeight, _ebString, kUnlocked);
-    if (_pass == 1) m_eventsPerBGCounter[_eventBG] += 1;
+    Config::config().set(kCurrentEventBunchGroupID, eventBG, bgString, kUnlocked);
+    Config::config().setFloat(kCurrentEventEBWeight, eventWeight, ebString, kUnlocked);
+    if (pass == 1) m_eventsPerBGCounter[eventBG] += 1;
     // Store if the event was unbiased online (triggered by random).
     // In run 2 wedo something more fancy
-    Int_t _isRandom = 0;
-    if (_runNum > 266000) {
-      _isRandom = m_idToUnbiased[_weightID];
+    Int_t isRandom = 0;
+    if (runNum > 266000) {
+      isRandom = m_idToUnbiased[weightID];
     } else {
-      if (_eventWeight > Config::config().getFloat(kUnbiasedWeightThreshold)) _isRandom = 1;
+      if (eventWeight > Config::config().getFloat(kUnbiasedWeightThreshold)) isRandom = 1;
     }
-    if (_isRandom && _pass == 1) m_unbiasedPerBGCounter[_eventBG] += 1;
-    Config::config().set(kCurrentEventWasRandomOnline, _isRandom, _rdString, kUnlocked);
+    if (isRandom && pass == 1) m_unbiasedPerBGCounter[eventBG] += 1;
+    Config::config().set(kCurrentEventWasRandomOnline, isRandom, rdString, kUnlocked);
 
-    return _eventWeight;
+    return eventWeight;
   }
 
   /**
@@ -1289,63 +1289,63 @@ namespace TrigCostRootAnalysis {
    * weight is assigned a numeric ID and event numbers are matched to these IDs.
    * The XML should be coppied to a central accessible location, this is currently
    * /afs/cern.ch/user/a/attradm/public
-   * @param _eventNumber The current event number
-   * @param _weight The enhanced bias (un)weighting value for this event, based on the online prescale set and L1 pass
+   * @param eventNumber The current event number
+   * @param weight The enhanced bias (un)weighting value for this event, based on the online prescale set and L1 pass
    *before prescale bits.
    */
-  void TrigXMLService::exportEnhancedBiasXML(UInt_t _eventNumber, Float_t _weight, UInt_t _bunchGroup, Int_t _unbiased) {
-    static std::pair<std::string, Float_t> _recyclablePair;
+  void TrigXMLService::exportEnhancedBiasXML(UInt_t eventNumber, Float_t weight, UInt_t bunchGroup, Int_t unbiased) {
+    static std::pair<std::string, Float_t> recyclablePair;
 
-    _recyclablePair.first = BunchGroupNameStr[_bunchGroup];
-    _recyclablePair.second = _weight;
+    recyclablePair.first = BunchGroupNameStr[bunchGroup];
+    recyclablePair.second = weight;
 
-    m_ebWeightTypesCount[_recyclablePair] += 1;
+    m_ebWeightTypesCount[recyclablePair] += 1;
 
-    Int_t _location = -1;
-    std::vector< std::pair<std::string, Float_t> >::iterator _weightTypeIt = std::find(m_ebWeightTypes.begin(), m_ebWeightTypes.end(), _recyclablePair);
-    if (_weightTypeIt == m_ebWeightTypes.end()) {
+    Int_t location = -1;
+    std::vector< std::pair<std::string, Float_t> >::iterator weightTypeIt = std::find(m_ebWeightTypes.begin(), m_ebWeightTypes.end(), recyclablePair);
+    if (weightTypeIt == m_ebWeightTypes.end()) {
       //Add me
-      m_ebWeightTypes.push_back(_recyclablePair);
-      m_ebWeightUnbiased[_weight] = _unbiased;
-      _location = m_ebWeightTypes.size() - 1;
+      m_ebWeightTypes.push_back(recyclablePair);
+      m_ebWeightUnbiased[weight] = unbiased;
+      location = m_ebWeightTypes.size() - 1;
     } else {
-      _location = _weightTypeIt - m_ebWeightTypes.begin();
+      location = weightTypeIt - m_ebWeightTypes.begin();
     }
-    m_ebWeightingMapSave[_eventNumber] = _location;
+    m_ebWeightingMapSave[eventNumber] = location;
   }
 
   /**
    * Produce the actual XML output
-   * @see TrigXMLService::exportEnhancedBiasXML(UInt_t _eventNumber, Float_t _weight)
+   * @see TrigXMLService::exportEnhancedBiasXML(UInt_t eventNumber, Float_t weight)
    */
   void TrigXMLService::saveExportedEnhancedBiasXML() {
-    std::ofstream _ebOut;
-    const std::string _outputEBWeight = "EnhancedBiasWeights_"
+    std::ofstream ebOut;
+    const std::string outputEBWeight = "EnhancedBiasWeights_"
                                         + intToString(Config::config().getInt(kRunNumber))
                                         + ".xml";
-    _ebOut.open(_outputEBWeight.c_str());
-    XMLExport _ebXML(_ebOut);
-    _ebXML.setSpaces(0);
-    _ebXML.addNode(_ebOut, "run");
-    _ebXML.addNode(_ebOut, "weights");
-    for (UInt_t _i = 0; _i < m_ebWeightTypes.size(); ++_i) {
-      _ebXML.addNodeWProperty(_ebOut, "weight",
-                              "id", intToString(_i),
-                              "value", floatToString(m_ebWeightTypes.at(_i).second, 7),
-                              "bunchgroup", m_ebWeightTypes.at(_i).first,
-                              "unbiased", intToString(m_ebWeightUnbiased[ m_ebWeightTypes.at(_i).second ]));
-      Info("TrigXMLService::saveExportedEnhancedBiasXML", "Weight %f of BunchGroup %s has ID %i, Unbiased %i", m_ebWeightTypes.at(_i).second, m_ebWeightTypes.at(_i).first.c_str(), _i, m_ebWeightUnbiased[ m_ebWeightTypes.at(_i).second ]);
+    ebOut.open(outputEBWeight.c_str());
+    XMLExport ebXML(ebOut);
+    ebXML.setSpaces(0);
+    ebXML.addNode(ebOut, "run");
+    ebXML.addNode(ebOut, "weights");
+    for (UInt_t i = 0; i < m_ebWeightTypes.size(); ++i) {
+      ebXML.addNodeWProperty(ebOut, "weight",
+                              "id", intToString(i),
+                              "value", floatToString(m_ebWeightTypes.at(i).second, 7),
+                              "bunchgroup", m_ebWeightTypes.at(i).first,
+                              "unbiased", intToString(m_ebWeightUnbiased[ m_ebWeightTypes.at(i).second ]));
+      Info("TrigXMLService::saveExportedEnhancedBiasXML", "Weight %f of BunchGroup %s has ID %i, Unbiased %i", m_ebWeightTypes.at(i).second, m_ebWeightTypes.at(i).first.c_str(), i, m_ebWeightUnbiased[ m_ebWeightTypes.at(i).second ]);
     }
-    _ebXML.endNode(_ebOut);//weights
-    _ebXML.addNode(_ebOut, "events");
-    for (IntIntMapIt_t _it = m_ebWeightingMapSave.begin(); _it != m_ebWeightingMapSave.end(); ++_it) {
-      _ebXML.addNodeWProperty(_ebOut, "e", "n", intToString(_it->first), "w", intToString(_it->second));
+    ebXML.endNode(ebOut);//weights
+    ebXML.addNode(ebOut, "events");
+    for (IntIntMapIt_t it = m_ebWeightingMapSave.begin(); it != m_ebWeightingMapSave.end(); ++it) {
+      ebXML.addNodeWProperty(ebOut, "e", "n", intToString(it->first), "w", intToString(it->second));
     }
-    _ebXML.endNode(_ebOut);//events
-    _ebXML.endNode(_ebOut);//run
-    _ebOut.close();
-    for (PairStringFloat_Float_MapIt_t _it = m_ebWeightTypesCount.begin(); _it != m_ebWeightTypesCount.end(); ++_it) {
-      Info("TrigXMLService::saveExportedEnhancedBiasXML", "%i events with enhanced bias weight %f and BG %s", _it->second, _it->first.second, _it->first.first.c_str());
+    ebXML.endNode(ebOut);//events
+    ebXML.endNode(ebOut);//run
+    ebOut.close();
+    for (PairStringFloat_Float_MapIt_t it = m_ebWeightTypesCount.begin(); it != m_ebWeightTypesCount.end(); ++it) {
+      Info("TrigXMLService::saveExportedEnhancedBiasXML", "%i events with enhanced bias weight %f and BG %s", it->second, it->first.second, it->first.first.c_str());
     }
   }
 
@@ -1360,367 +1360,367 @@ namespace TrigCostRootAnalysis {
    * This is an alternative to getting the initial prescale set using the Rule Book.
    */
   void TrigXMLService::writePrescaleXML() {
-    const std::string _xmlName = Config::config().getStr(kOutputRootDirectory) + "/" + "Prescales.xml";
+    const std::string xmlName = Config::config().getStr(kOutputRootDirectory) + "/" + "Prescales.xml";
 
-    std::ofstream _fout;
-    _fout.open(_xmlName.c_str());
-    _fout << std::fixed; // Use fixed width output
+    std::ofstream fout;
+    fout.open(xmlName.c_str());
+    fout << std::fixed; // Use fixed width output
 
     Info("TrigXMLService::writePrescaleXML", "Writing a dummy file Prescales.xml with current menu.");
 
-    XMLExport _xml(_fout);
-    _xml.setSpaces(2);
-    _xml.addNode(_fout, "trigger");
+    XMLExport xml(fout);
+    xml.setSpaces(2);
+    xml.addNode(fout, "trigger");
 
     // Loop over all chains in metadata trigger config folder
-    Int_t _level = -1;
-    for (UInt_t _c = 0; _c < TrigConfInterface::getChainN(); ++_c) {
-      if (TrigConfInterface::getChainLevel(_c) == 1 && _level == -1) {
-        _level = 1;
-        _xml.addNode(_fout, "level");
-        _xml.addNode(_fout, "lvl_name", "L1");
-      } else if (TrigConfInterface::getChainLevel(_c) == 2 && _level == 1) {
+    Int_t level = -1;
+    for (UInt_t c = 0; c < TrigConfInterface::getChainN(); ++c) {
+      if (TrigConfInterface::getChainLevel(c) == 1 && level == -1) {
+        level = 1;
+        xml.addNode(fout, "level");
+        xml.addNode(fout, "lvl_name", "L1");
+      } else if (TrigConfInterface::getChainLevel(c) == 2 && level == 1) {
         //switch over to HLT
-        _level = 2;
-        _xml.endNode(_fout); //level
-        _xml.addNode(_fout, "level");
-        _xml.addNode(_fout, "lvl_name", "HLT");
+        level = 2;
+        xml.endNode(fout); //level
+        xml.addNode(fout, "level");
+        xml.addNode(fout, "lvl_name", "HLT");
       }
 
-      _xml.addNode(_fout, "signature");
-      std::string _name = TrigConfInterface::getChainName(_c);
-      _xml.addNode(_fout, "sig_name", _name);
-      _xml.addNode(_fout, "chain_prescale", floatToString(TrigConfInterface::getPrescale(_name)));
-      _xml.endNode(_fout); //signature
+      xml.addNode(fout, "signature");
+      std::string name = TrigConfInterface::getChainName(c);
+      xml.addNode(fout, "sig_name", name);
+      xml.addNode(fout, "chain_prescale", floatToString(TrigConfInterface::getPrescale(name)));
+      xml.endNode(fout); //signature
     }
-    _xml.endNode(_fout); //level
-    _xml.endNode(_fout); //Trigger
-    _fout.close();
+    xml.endNode(fout); //level
+    xml.endNode(fout); //Trigger
+    fout.close();
 
     Info("TrigXMLService::writePrescaleXML", "Exported XML with %i chains.", TrigConfInterface::getChainN());
   }
 
-  void TrigXMLService::saveRuleBookXML(CounterCollection_t& _counterCollections, std::string _levelStr) {
+  void TrigXMLService::saveRuleBookXML(CounterCollection_t& counterCollections, std::string levelStr) {
     if (Config::config().getInt(kOutputXML) == kFALSE) return;
 
     // Save tables. Loop over counter collections.
-    CounterCollectionIt_t _colIt = _counterCollections.begin();
-    for (; _colIt != _counterCollections.end(); ++_colIt) {
-      const std::string _counterCollectionName = _colIt->first;
-      const CounterMap_t* _counterMap = &(_colIt->second);
+    CounterCollectionIt_t colIt = counterCollections.begin();
+    for (; colIt != counterCollections.end(); ++colIt) {
+      const std::string counterCollectionName = colIt->first;
+      const CounterMap_t* counterMap = &(colIt->second);
       // Skip if there are no counters to process
-      if (_counterMap->size() == 0) continue;
+      if (counterMap->size() == 0) continue;
 
-      const std::string _outputFolder = Config::config().getStr(kOutputDirectory) + "/" + Config::config().getStr(kOutputXMLDirectory);
-      gSystem->mkdir(_outputFolder.c_str(), kTRUE);
+      const std::string outputFolder = Config::config().getStr(kOutputDirectory) + "/" + Config::config().getStr(kOutputXMLDirectory);
+      gSystem->mkdir(outputFolder.c_str(), kTRUE);
 
-      const std::string _xmlName = _outputFolder
+      const std::string xmlName = outputFolder
                                    + "/TrigRate_"
                                    + Config::config().getStr(kOutputTag) + "_"
-                                   + _levelStr + "_"
-                                   + _counterCollectionName
+                                   + levelStr + "_"
+                                   + counterCollectionName
                                    + ".xml";
-      std::ofstream _fout;
-      _fout.open(_xmlName.c_str());
-      _fout << std::fixed; // Use fixed width output
+      std::ofstream fout;
+      fout.open(xmlName.c_str());
+      fout << std::fixed; // Use fixed width output
 
       if (Config::config().debug()) {
-        Info("TrigXMLService::saveRuleBookXML", "Doing XML output with path %s.", _xmlName.c_str());
+        Info("TrigXMLService::saveRuleBookXML", "Doing XML output with path %s.", xmlName.c_str());
       }
 
-      XMLExport _xml(_fout);
-      _xml.setSpaces(2);
-      _xml.addNode(_fout, "trigger");
+      XMLExport xml(fout);
+      xml.setSpaces(2);
+      xml.addNode(fout, "trigger");
 
       // Do General Info
-      _xml.addNode(_fout, "Xsection", intToString(0)); // TODO
+      xml.addNode(fout, "Xsection", intToString(0)); // TODO
 
-      Float_t _runLumi = 0.;
-      if (Config::config().getIsSet(kRunLumi)) _runLumi = Config::config().getFloat(kRunLumi);
-      else if (Config::config().getIsSet(kRunLumiXML)) _runLumi = Config::config().getFloat(kRunLumiXML);
-      _xml.addNode(_fout, "Luminosity", floatToString(_runLumi));
+      Float_t runLumi = 0.;
+      if (Config::config().getIsSet(kRunLumi)) runLumi = Config::config().getFloat(kRunLumi);
+      else if (Config::config().getIsSet(kRunLumiXML)) runLumi = Config::config().getFloat(kRunLumiXML);
+      xml.addNode(fout, "Luminosity", floatToString(runLumi));
 
-      _xml.addNode(_fout, "GenEff", intToString(0)); // TODO
-      _xml.addNode(_fout, "n_evts", intToString(Config::config().getLong(kEventsProcessed)));
+      xml.addNode(fout, "GenEff", intToString(0)); // TODO
+      xml.addNode(fout, "n_evts", intToString(Config::config().getLong(kEventsProcessed)));
 
-      Float_t _predictionLumi = 0.;
-      if (Config::config().getIsSet(kPredictionLumi)) _predictionLumi = Config::config().getFloat(kPredictionLumi);
-      else if (Config::config().getIsSet(kPredictionLumiMenuXML)) _predictionLumi = Config::config().getFloat(kPredictionLumiMenuXML);
-      else if (Config::config().getIsSet(kPredictionLumiRunXML)) _predictionLumi = Config::config().getFloat(kPredictionLumiRunXML);
-      _xml.addNode(_fout, "PredictionLumi", floatToString(_predictionLumi));
+      Float_t predictionLumi = 0.;
+      if (Config::config().getIsSet(kPredictionLumi)) predictionLumi = Config::config().getFloat(kPredictionLumi);
+      else if (Config::config().getIsSet(kPredictionLumiMenuXML)) predictionLumi = Config::config().getFloat(kPredictionLumiMenuXML);
+      else if (Config::config().getIsSet(kPredictionLumiRunXML)) predictionLumi = Config::config().getFloat(kPredictionLumiRunXML);
+      xml.addNode(fout, "PredictionLumi", floatToString(predictionLumi));
 
-      for (UInt_t _f = 0; _f < Config::config().getVecSize(kInputFiles); ++_f) {
-        _xml.addNode(_fout, "Dataset", Config::config().getVecEntry(kInputFiles, _f));
+      for (UInt_t f = 0; f < Config::config().getVecSize(kInputFiles); ++f) {
+        xml.addNode(fout, "Dataset", Config::config().getVecEntry(kInputFiles, f));
       }
-      _xml.addNode(_fout, "AtlasProject", TrigConfInterface::getMetaStringVal("AtlasProject"));
-      _xml.addNode(_fout, "AtlasVersion", TrigConfInterface::getMetaStringVal("AtlasVersion"));
-      _xml.addNode(_fout, "triggerMenuSetup", TrigConfInterface::getMetaStringVal("triggerMenuSetup"));
-      _xml.addNode(_fout, "L1PrescaleSet", TrigConfInterface::getMetaStringVal("L1PrescaleSet"));
-      _xml.addNode(_fout, "HLTPrescaleSet", TrigConfInterface::getMetaStringVal("HLTPrescaleSet"));
-      _xml.addNode(_fout, "CMTPATH", TrigConfInterface::getMetaStringVal("CMTPATH"));
+      xml.addNode(fout, "AtlasProject", TrigConfInterface::getMetaStringVal("AtlasProject"));
+      xml.addNode(fout, "AtlasVersion", TrigConfInterface::getMetaStringVal("AtlasVersion"));
+      xml.addNode(fout, "triggerMenuSetup", TrigConfInterface::getMetaStringVal("triggerMenuSetup"));
+      xml.addNode(fout, "L1PrescaleSet", TrigConfInterface::getMetaStringVal("L1PrescaleSet"));
+      xml.addNode(fout, "HLTPrescaleSet", TrigConfInterface::getMetaStringVal("HLTPrescaleSet"));
+      xml.addNode(fout, "CMTPATH", TrigConfInterface::getMetaStringVal("CMTPATH"));
 
       // Do Bunch Group info
       // Currently we prefer XML
       if (TrigXMLService::trigXMLService().getParsedRunXML() == kTRUE) {
-        _xml.addNode(_fout, "bunchgroup");
-        for (Int_t _bg = 0; _bg < TrigXMLService::trigXMLService().getNBunchGroups(); ++_bg) {
-          _xml.addNode(_fout, "bunchgrouptype");
-          _xml.addNode(_fout, "bunchgroup_keynum", intToString(_bg));
-          _xml.addNode(_fout, "bunchgroup_key", TrigXMLService::trigXMLService().getBunchGroupName(_bg));
-          _xml.addNode(_fout, "bunchgroup_size", intToString(TrigXMLService::trigXMLService().getBunchGroupSize(_bg)));
-          _xml.endNode(_fout); // bunchgrouptype
+        xml.addNode(fout, "bunchgroup");
+        for (Int_t bg = 0; bg < TrigXMLService::trigXMLService().getNBunchGroups(); ++bg) {
+          xml.addNode(fout, "bunchgrouptype");
+          xml.addNode(fout, "bunchgroup_keynum", intToString(bg));
+          xml.addNode(fout, "bunchgroup_key", TrigXMLService::trigXMLService().getBunchGroupName(bg));
+          xml.addNode(fout, "bunchgroup_size", intToString(TrigXMLService::trigXMLService().getBunchGroupSize(bg)));
+          xml.endNode(fout); // bunchgrouptype
         }
-        _xml.endNode(_fout); //bunchgroup
+        xml.endNode(fout); //bunchgroup
       } else {
         // Otherwise try from ntuple (this is broken 06/15) TODO fix in athena
-        StringIntMap_t _bunchGroups = TrigConfInterface::getBunchGroupSetup();
-        UInt_t _bgCounter = 0;
-        _xml.addNode(_fout, "bunchgroup");
-        for (StringIntMapIt_t _it = _bunchGroups.begin(); _it != _bunchGroups.end(); ++_it) {
-          _xml.addNode(_fout, "bunchgrouptype");
-          _xml.addNode(_fout, "bunchgroup_keynum", intToString(_bgCounter++));
-          _xml.addNode(_fout, "bunchgroup_key", _it->first);
-          _xml.addNode(_fout, "bunchgroup_size", intToString(_it->second));
-          _xml.endNode(_fout); // bunchgrouptype
+        StringIntMap_t bunchGroups = TrigConfInterface::getBunchGroupSetup();
+        UInt_t bgCounter = 0;
+        xml.addNode(fout, "bunchgroup");
+        for (StringIntMapIt_t it = bunchGroups.begin(); it != bunchGroups.end(); ++it) {
+          xml.addNode(fout, "bunchgrouptype");
+          xml.addNode(fout, "bunchgroup_keynum", intToString(bgCounter++));
+          xml.addNode(fout, "bunchgroup_key", it->first);
+          xml.addNode(fout, "bunchgroup_size", intToString(it->second));
+          xml.endNode(fout); // bunchgrouptype
         }
-        _xml.endNode(_fout); //bunchgroup
+        xml.endNode(fout); //bunchgroup
       }
 
-      Bool_t _hasL1 = kFALSE, _hasL2 = kFALSE, _hasHLT = kFALSE;
-      for (CounterMapIt_t _counterMapIt = _colIt->second.begin(); _counterMapIt != _colIt->second.end(); ++_counterMapIt) {
-        CounterBaseRates* _counter = static_cast<CounterBaseRates*>(_counterMapIt->second);
-        if (_counter->getStrDecoration(kDecType) == "L1") _hasL1 = kTRUE;
-        else if (_counter->getStrDecoration(kDecType) == "L2") _hasL2 = kTRUE;
-        else if (_counter->getStrDecoration(kDecType) == "HLT" || _counter->getStrDecoration(kDecType) == "Chain") _hasHLT = kTRUE;
+      Bool_t hasL1 = kFALSE, hasL2 = kFALSE, hasHLT = kFALSE;
+      for (CounterMapIt_t counterMapIt = colIt->second.begin(); counterMapIt != colIt->second.end(); ++counterMapIt) {
+        CounterBaseRates* counter = static_cast<CounterBaseRates*>(counterMapIt->second);
+        if (counter->getStrDecoration(kDecType) == "L1") hasL1 = kTRUE;
+        else if (counter->getStrDecoration(kDecType) == "L2") hasL2 = kTRUE;
+        else if (counter->getStrDecoration(kDecType) == "HLT" || counter->getStrDecoration(kDecType) == "Chain") hasHLT = kTRUE;
       }
 
-      if (_hasL1) { //Add L1 data
-        _xml.addNode(_fout, "level");
-        _xml.addNode(_fout, "lvl_name", "L1");
-        for (CounterMapIt_t _counterMapIt = _colIt->second.begin(); _counterMapIt != _colIt->second.end(); ++_counterMapIt) {
-          CounterBaseRates* _counter = static_cast<CounterBaseRates*>(_counterMapIt->second);
-          if (_counter->getStrDecoration(kDecType) != "L1") continue;
-          saveXMLElement(_fout, _xml, _counter);
+      if (hasL1) { //Add L1 data
+        xml.addNode(fout, "level");
+        xml.addNode(fout, "lvl_name", "L1");
+        for (CounterMapIt_t counterMapIt = colIt->second.begin(); counterMapIt != colIt->second.end(); ++counterMapIt) {
+          CounterBaseRates* counter = static_cast<CounterBaseRates*>(counterMapIt->second);
+          if (counter->getStrDecoration(kDecType) != "L1") continue;
+          saveXMLElement(fout, xml, counter);
         }
-        _xml.endNode(_fout); //level
+        xml.endNode(fout); //level
       }
-      if (_hasL2) { //Add L2 data
-        _xml.addNode(_fout, "level");
-        _xml.addNode(_fout, "lvl_name", "L2");
-        for (CounterMapIt_t _counterMapIt = _colIt->second.begin(); _counterMapIt != _colIt->second.end(); ++_counterMapIt) {
-          CounterBaseRates* _counter = static_cast<CounterBaseRates*>(_counterMapIt->second);
-          if (_counter->getStrDecoration(kDecType) != "L2") continue;
-          saveXMLElement(_fout, _xml, _counter);
+      if (hasL2) { //Add L2 data
+        xml.addNode(fout, "level");
+        xml.addNode(fout, "lvl_name", "L2");
+        for (CounterMapIt_t counterMapIt = colIt->second.begin(); counterMapIt != colIt->second.end(); ++counterMapIt) {
+          CounterBaseRates* counter = static_cast<CounterBaseRates*>(counterMapIt->second);
+          if (counter->getStrDecoration(kDecType) != "L2") continue;
+          saveXMLElement(fout, xml, counter);
         }
-        _xml.endNode(_fout); //level
+        xml.endNode(fout); //level
       }
-      if (_hasHLT) { //Add HLT data
-        _xml.addNode(_fout, "level");
-        _xml.addNode(_fout, "lvl_name", "HLT");
-        for (CounterMapIt_t _counterMapIt = _colIt->second.begin(); _counterMapIt != _colIt->second.end(); ++_counterMapIt) {
-          CounterBaseRates* _counter = static_cast<CounterBaseRates*>(_counterMapIt->second);
-          if (_counter->getStrDecoration(kDecType) != "Chain") continue;
-          saveXMLElement(_fout, _xml, _counter);
+      if (hasHLT) { //Add HLT data
+        xml.addNode(fout, "level");
+        xml.addNode(fout, "lvl_name", "HLT");
+        for (CounterMapIt_t counterMapIt = colIt->second.begin(); counterMapIt != colIt->second.end(); ++counterMapIt) {
+          CounterBaseRates* counter = static_cast<CounterBaseRates*>(counterMapIt->second);
+          if (counter->getStrDecoration(kDecType) != "Chain") continue;
+          saveXMLElement(fout, xml, counter);
         }
-        _xml.endNode(_fout); //level
+        xml.endNode(fout); //level
       }
 
-      _xml.endNode(_fout); //trigger
+      xml.endNode(fout); //trigger
 
-      _fout.close();
+      fout.close();
     }
   }
 
   /**
    * Save all rate data for a single chain into an output XML stream
-   * @param _fout Reference to output stream.
-   * @param _xml Reference to XML export engine.
-   * @returns _counter Counter to export.
+   * @param fout Reference to output stream.
+   * @param xml Reference to XML export engine.
+   * @returns counter Counter to export.
    */
-  void TrigXMLService::saveXMLElement(std::ofstream& _fout, XMLExport& _xml, CounterBaseRates* _counter) {
-    const UInt_t _xmlPrecision = 7;
+  void TrigXMLService::saveXMLElement(std::ofstream& fout, XMLExport& xml, CounterBaseRates* counter) {
+    const UInt_t xmlPrecision = 7;
 
-    Float_t _evPassWeight = _counter->getValue(kVarEventsPassed, kSavePerCall);
-    Float_t _evPassWeightErr = _counter->getValueError(kVarEventsPassed, kSavePerCall); // Get sqrt(sumW2)
+    Float_t evPassWeight = counter->getValue(kVarEventsPassed, kSavePerCall);
+    Float_t evPassWeightErr = counter->getValueError(kVarEventsPassed, kSavePerCall); // Get sqrt(sumW2)
 
-    Float_t _evRun = _counter->getValue(kVarEventsRun, kSavePerCall); // EB Weighted
-    Float_t _evPassNoPS = _counter->getValue(kVarEventsPassedNoPS, kSavePerCall); // EB Weighted
+    Float_t evRun = counter->getValue(kVarEventsRun, kSavePerCall); // EB Weighted
+    Float_t evPassNoPS = counter->getValue(kVarEventsPassedNoPS, kSavePerCall); // EB Weighted
 
-    Float_t _evPassRawStat = _counter->getValue(kVarEventsPassRawStat, kSavePerCall); // Not EB Weighted
-    //Float_t _evRunRawStat  = _counter->getValue(kVarEventsRunRawStat,  kSavePerCall); // Not EB Weighted
+    Float_t evPassRawStat = counter->getValue(kVarEventsPassRawStat, kSavePerCall); // Not EB Weighted
+    //Float_t evRunRawStat  = counter->getValue(kVarEventsRunRawStat,  kSavePerCall); // Not EB Weighted
 
-    Float_t _walltime = _counter->getDecoration(kDecLbLength);
+    Float_t walltime = counter->getDecoration(kDecLbLength);
 
-    Float_t _rate = _evPassWeight / _walltime;
-    Float_t _rateErr = _evPassWeightErr / _walltime;    // err = sqrt(events in time T)/T = sqrt(rate*T/T^2) =
+    Float_t rate = evPassWeight / walltime;
+    Float_t rateErr = evPassWeightErr / walltime;    // err = sqrt(events in time T)/T = sqrt(rate*T/T^2) =
                                                         // sqrt(rate/T)
 
-    Float_t _uniqueRate = _counter->getDecoration(kDecUniqueRate);
-    Float_t _uniqueFraction = _counter->getDecoration(kDecUniqueFraction); // Was in percent, change back to 0-1
+    Float_t uniqueRate = counter->getDecoration(kDecUniqueRate);
+    Float_t uniqueFraction = counter->getDecoration(kDecUniqueFraction); // Was in percent, change back to 0-1
 
-    Bool_t _isL1 = kFALSE;
+    Bool_t isL1 = kFALSE;
 
-    if (_counter->getStrDecoration(kDecType) == "L1") _isL1 = kTRUE;
-    UNUSED(_isL1);
+    if (counter->getStrDecoration(kDecType) == "L1") isL1 = kTRUE;
+    UNUSED(isL1);
 
     // TODO - THIS IS WRONG FOR WEIGHTED EVENTS
-    Float_t _eff = 0., _effErr = 0., _psEff = 0., _psEffErr = 0.;
-    if (_evRun) {
-      _eff = _evPassNoPS / _evRun;
-      _effErr = (1. / _evRun) * TMath::Sqrt(_evPassNoPS * (1. - _eff)); // Binomal
-      _psEff = _evPassWeight / _evRun;
-      _psEffErr = (1. / _evRun) * TMath::Sqrt(_evPassWeight * (1. - _psEff)); // Binomal
+    Float_t eff = 0., effErr = 0., psEff = 0., psEffErr = 0.;
+    if (evRun) {
+      eff = evPassNoPS / evRun;
+      effErr = (1. / evRun) * TMath::Sqrt(evPassNoPS * (1. - eff)); // Binomal
+      psEff = evPassWeight / evRun;
+      psEffErr = (1. / evRun) * TMath::Sqrt(evPassWeight * (1. - psEff)); // Binomal
     }
 
-    UNUSED(_effErr);
-    UNUSED(_psEffErr);
-
-    _xml.addNode(_fout, "signature");
-    _xml.addNode(_fout, "sig_name", _counter->getName());
-    _xml.addNode(_fout, "express_stream", intToString(0)); // TODO add me!
-    _xml.addNode(_fout, "chain_prescale", floatToString(_counter->getBasicPrescale())); // This holds the *item* PS
-    _xml.addNode(_fout, "passthrough", "0");
-    _xml.addNode(_fout, "lower_chain_name", "");
-    _xml.addNode(_fout, "evts_passed", floatToString(_evPassRawStat, _xmlPrecision));
-    _xml.addNode(_fout, "evts_passed_weighted", floatToString(_evPassWeight, _xmlPrecision));
-    _xml.addNode(_fout, "efficiency", floatToString(_eff, _xmlPrecision));
-    //_xml.addNode(_fout, "efficiency_err", floatToString( _effErr, _xmlPrecision)); // TODO FIX ME
-    _xml.addNode(_fout, "efficiency_err", floatToString((Float_t) 0.));
-    _xml.addNode(_fout, "prescaled_efficiency", floatToString(_psEff, _xmlPrecision));
-    //_xml.addNode(_fout, "prescaled_efficiency_err", floatToString( _psEffErr, _xmlPrecision)); // TODO FIX ME
-    _xml.addNode(_fout, "prescaled_efficiency_err", floatToString((Float_t) 0.));
-    _xml.addNode(_fout, "rate", floatToString(_rate, _xmlPrecision));
-    _xml.addNode(_fout, "rate_err", floatToString(_rateErr, _xmlPrecision));
-    _xml.addNode(_fout, "unique_fraction", floatToString(_uniqueFraction, _xmlPrecision));
-    _xml.addNode(_fout, "unique_rate", floatToString(_uniqueRate, _xmlPrecision));
-    _xml.endNode(_fout); //signature
+    UNUSED(effErr);
+    UNUSED(psEffErr);
+
+    xml.addNode(fout, "signature");
+    xml.addNode(fout, "sig_name", counter->getName());
+    xml.addNode(fout, "express_stream", intToString(0)); // TODO add me!
+    xml.addNode(fout, "chain_prescale", floatToString(counter->getBasicPrescale())); // This holds the *item* PS
+    xml.addNode(fout, "passthrough", "0");
+    xml.addNode(fout, "lower_chain_name", "");
+    xml.addNode(fout, "evts_passed", floatToString(evPassRawStat, xmlPrecision));
+    xml.addNode(fout, "evts_passed_weighted", floatToString(evPassWeight, xmlPrecision));
+    xml.addNode(fout, "efficiency", floatToString(eff, xmlPrecision));
+    //xml.addNode(fout, "efficiency_err", floatToString( effErr, xmlPrecision)); // TODO FIX ME
+    xml.addNode(fout, "efficiency_err", floatToString((Float_t) 0.));
+    xml.addNode(fout, "prescaled_efficiency", floatToString(psEff, xmlPrecision));
+    //xml.addNode(fout, "prescaled_efficiency_err", floatToString( psEffErr, xmlPrecision)); // TODO FIX ME
+    xml.addNode(fout, "prescaled_efficiency_err", floatToString((Float_t) 0.));
+    xml.addNode(fout, "rate", floatToString(rate, xmlPrecision));
+    xml.addNode(fout, "rate_err", floatToString(rateErr, xmlPrecision));
+    xml.addNode(fout, "unique_fraction", floatToString(uniqueFraction, xmlPrecision));
+    xml.addNode(fout, "unique_rate", floatToString(uniqueRate, xmlPrecision));
+    xml.endNode(fout); //signature
   }
 
   /**
    * We need extra information which is kept in upgrade XMLs. These share similarity with standard rate XMLs but have
    *additional fields
-   * @param _isoBits Pass by reference to map of isolation ID string to isolation bits map, to read from XML
-   * @param _upgradeChains Pass by reference to set of ChainInfo objects containing all info needed to create chain
+   * @param isoBits Pass by reference to map of isolation ID string to isolation bits map, to read from XML
+   * @param upgradeChains Pass by reference to set of ChainInfo objects containing all info needed to create chain
    *counters, to read from XML
    */
-  void TrigXMLService::parseUpgradeXML(StringIntMap_t& _isoBits, std::multiset<ChainInfo>& _upgradeChains) {
-    const std::string _scenario = Config::config().getStr(kUpgradeScenario);
-    const std::string _file = std::string("upgrade_") + _scenario + std::string("_menu.xml");
+  void TrigXMLService::parseUpgradeXML(StringIntMap_t& isoBits, std::multiset<ChainInfo>& upgradeChains) {
+    const std::string scenario = Config::config().getStr(kUpgradeScenario);
+    const std::string file = std::string("upgrade_") + scenario + std::string("_menu.xml");
 
-    std::string _path;
+    std::string path;
 
     if (Config::config().getInt(kIsRootCore) == kTRUE) {
-      _path = std::string(Config::config().getStr(kDataDir) + _file);
+      path = std::string(Config::config().getStr(kDataDir) + file);
     } else {
 // CAUTION - "ATHENA ONLY" CODE
 #ifndef ROOTCORE
-      _path = PathResolverFindDataFile(_file);
+      path = PathResolverFindDataFile(file);
 #endif // not ROOTCORE
     }
 
     // If file exists
-    TXMLEngine* _xml = new TXMLEngine();
-    XMLDocPointer_t _xmlDoc = 0;
-    std::string _level = "none";
+    TXMLEngine* xml = new TXMLEngine();
+    XMLDocPointer_t xmlDoc = 0;
+    std::string level = "none";
 
-    if (_path != Config::config().getStr(kBlankString) && access(_path.c_str(), F_OK) != -1) {
-      _xmlDoc = _xml->ParseFile(_path.c_str());
+    if (path != Config::config().getStr(kBlankString) && access(path.c_str(), F_OK) != -1) {
+      xmlDoc = xml->ParseFile(path.c_str());
     }
 
-    if (_xmlDoc == 0) {
-      Error("MonitorRatesUpgrade::parseUpgradeXML", "Cannot find upgrade XML %s, critical error - must be supplied. Use --upgradeScenario.", _file.c_str());
-      delete _xml;
+    if (xmlDoc == 0) {
+      Error("MonitorRatesUpgrade::parseUpgradeXML", "Cannot find upgrade XML %s, critical error - must be supplied. Use --upgradeScenario.", file.c_str());
+      delete xml;
       abort();
     }
 
-    XMLNodePointer_t _mainNode = _xml->DocGetRootElement(_xmlDoc);
-    assert(_xml->GetNodeName(_mainNode) == std::string("trigger"));
-    XMLNodePointer_t _listNode = _xml->GetChild(_mainNode);
-
-    while (_listNode != 0) { // Loop over all menu elements
-      const std::string _listName = _xml->GetNodeName(_listNode);
-      XMLNodePointer_t _node = _xml->GetChild(_listNode);
-      if (_listName == "lumivalues") {
-        while (_node != 0) {
-          if (_xml->GetNodeName(_node) == std::string("target_paired_bcid")) {
-            Config::config().set(kTargetPairedBunches, stringToInt(_xml->GetNodeContent(_node)), "TargetPairedBunches");
-          } else if (_xml->GetNodeName(_node) == std::string("target_peak_mu_av")) {
-            Config::config().setFloat(kTargetPeakMuAverage, stringToFloat(_xml->GetNodeContent(_node)), "TargetPeakMuAverage");
+    XMLNodePointer_t mainNode = xml->DocGetRootElement(xmlDoc);
+    assert(xml->GetNodeName(mainNode) == std::string("trigger"));
+    XMLNodePointer_t listNode = xml->GetChild(mainNode);
+
+    while (listNode != 0) { // Loop over all menu elements
+      const std::string listName = xml->GetNodeName(listNode);
+      XMLNodePointer_t node = xml->GetChild(listNode);
+      if (listName == "lumivalues") {
+        while (node != 0) {
+          if (xml->GetNodeName(node) == std::string("target_paired_bcid")) {
+            Config::config().set(kTargetPairedBunches, stringToInt(xml->GetNodeContent(node)), "TargetPairedBunches");
+          } else if (xml->GetNodeName(node) == std::string("target_peak_mu_av")) {
+            Config::config().setFloat(kTargetPeakMuAverage, stringToFloat(xml->GetNodeContent(node)), "TargetPeakMuAverage");
           }
-          _node = _xml->GetNext(_node);
+          node = xml->GetNext(node);
         }
-      } else if (_listName == "iso_bits") {
-        while (_node != 0) {
-          if (_xml->GetNodeName(_node) == std::string("iso")) {
-            std::bitset<5> _bits(std::string(_xml->GetAttr(_node, "bits")));
-            _isoBits[ _xml->GetAttr(_node, "name") ] = _bits.to_ulong();
+      } else if (listName == "iso_bits") {
+        while (node != 0) {
+          if (xml->GetNodeName(node) == std::string("iso")) {
+            std::bitset<5> bits(std::string(xml->GetAttr(node, "bits")));
+            isoBits[ xml->GetAttr(node, "name") ] = bits.to_ulong();
             Info("MonitorRatesUpgrade::parseUpgradeXML", "Got isobits for %s = %s => %s = %i",
-                 _xml->GetAttr(_node, "name"), _xml->GetAttr(_node, "bits"), _bits.to_string().c_str(), _isoBits[_xml->GetAttr(_node, "name")]);
+                 xml->GetAttr(node, "name"), xml->GetAttr(node, "bits"), bits.to_string().c_str(), isoBits[xml->GetAttr(node, "name")]);
           }
-          _node = _xml->GetNext(_node);
+          node = xml->GetNext(node);
         }
-      } else if (_listName == "level") {
-        while (_node != 0) {
-          if (_xml->GetNodeName(_node) == std::string("lvl_name")) {
-            _level = _xml->GetNodeContent(_node);
-            _node = _xml->GetNext(_node);
-            if (_node == 0) break;
+      } else if (listName == "level") {
+        while (node != 0) {
+          if (xml->GetNodeName(node) == std::string("lvl_name")) {
+            level = xml->GetNodeContent(node);
+            node = xml->GetNext(node);
+            if (node == 0) break;
           }
-          assert(_xml->GetNodeName(_node) == std::string("signature"));
-          XMLNodePointer_t _detailsNode = _xml->GetChild(_node);
-          std::string _sigName = "", _group = "", _comment = "", _hltProxy = "", _lower = "";
-          Float_t _l1ReductionFactor = 1., _l2ReductionFactor = 1., _hltReductionFactor = 1.;
-          TriggerLogic _triggerLogic;
-
-          while (_detailsNode != 0) {
-            const std::string _detail = _xml->GetNodeName(_detailsNode);
-            if (_detail != "conditions" && _xml->GetNodeContent(_detailsNode) == nullptr) { // Avoid NULL except with
+          assert(xml->GetNodeName(node) == std::string("signature"));
+          XMLNodePointer_t detailsNode = xml->GetChild(node);
+          std::string sigName = "", group = "", comment = "", hltProxy = "", lower = "";
+          Float_t l1ReductionFactor = 1., l2ReductionFactor = 1., hltReductionFactor = 1.;
+          TriggerLogic triggerLogic;
+
+          while (detailsNode != 0) {
+            const std::string detail = xml->GetNodeName(detailsNode);
+            if (detail != "conditions" && xml->GetNodeContent(detailsNode) == nullptr) { // Avoid NULL except with
                                                                                             // conditions
-              _detailsNode = _xml->GetNext(_detailsNode);
+              detailsNode = xml->GetNext(detailsNode);
               continue;
             }
-            if (_detail == "sig_name") _sigName = _xml->GetNodeContent(_detailsNode);
-            else if (_detail == "hlt_proxy") _hltProxy = _xml->GetNodeContent(_detailsNode);
-            else if (_detail == "group") _group = _xml->GetNodeContent(_detailsNode);
-            else if (_detail == "comment") _comment = _xml->GetNodeContent(_detailsNode);
-            else if (_detail == "lower_chain_name") _lower = _xml->GetNodeContent(_detailsNode);
-            else if (_detail == "l1_reduction_factor") _l1ReductionFactor = stringToFloat(_xml->GetNodeContent(_detailsNode));
-            else if (_detail == "l2_reduction_factor") _l2ReductionFactor = stringToFloat(_xml->GetNodeContent(_detailsNode));
-            else if (_detail == "hlt_reduction_factor") _hltReductionFactor = stringToFloat(_xml->GetNodeContent(_detailsNode));
-            else if (_detail == "conditions") {
-              XMLNodePointer_t _requirement = _xml->GetChild(_detailsNode);
-              while (_requirement != 0) {
-                std::string _name = _xml->GetAttr(_requirement, "name");
-                UInt_t _multi = stringToInt(_xml->GetAttr(_requirement, "multi"));
-                UInt_t _thresh = stringToInt(_xml->GetAttr(_requirement, "triggerthreshold"));
-                Int_t _iso = _isoBits[ _xml->GetAttr(_requirement, "iso") ];
-                UInt_t _min = stringToInt(_xml->GetAttr(_requirement, "min"));
-                UInt_t _max = stringToInt(_xml->GetAttr(_requirement, "max"));
-                _triggerLogic.addCondition(_name, _multi, _thresh, _iso, _min, _max);
-                _requirement = _xml->GetNext(_requirement);
+            if (detail == "sig_name") sigName = xml->GetNodeContent(detailsNode);
+            else if (detail == "hlt_proxy") hltProxy = xml->GetNodeContent(detailsNode);
+            else if (detail == "group") group = xml->GetNodeContent(detailsNode);
+            else if (detail == "comment") comment = xml->GetNodeContent(detailsNode);
+            else if (detail == "lower_chain_name") lower = xml->GetNodeContent(detailsNode);
+            else if (detail == "l1_reduction_factor") l1ReductionFactor = stringToFloat(xml->GetNodeContent(detailsNode));
+            else if (detail == "l2_reduction_factor") l2ReductionFactor = stringToFloat(xml->GetNodeContent(detailsNode));
+            else if (detail == "hlt_reduction_factor") hltReductionFactor = stringToFloat(xml->GetNodeContent(detailsNode));
+            else if (detail == "conditions") {
+              XMLNodePointer_t requirement = xml->GetChild(detailsNode);
+              while (requirement != 0) {
+                std::string name = xml->GetAttr(requirement, "name");
+                UInt_t multi = stringToInt(xml->GetAttr(requirement, "multi"));
+                UInt_t thresh = stringToInt(xml->GetAttr(requirement, "triggerthreshold"));
+                Int_t iso = isoBits[ xml->GetAttr(requirement, "iso") ];
+                UInt_t min = stringToInt(xml->GetAttr(requirement, "min"));
+                UInt_t max = stringToInt(xml->GetAttr(requirement, "max"));
+                triggerLogic.addCondition(name, multi, thresh, iso, min, max);
+                requirement = xml->GetNext(requirement);
               }
-            } else if (_detail == "OR") {
+            } else if (detail == "OR") {
               Error("MonitorRatesUpgrade::parseUpgradeXML", "The OR of TOBs is currently unsupported");
             } else {
-              Error("MonitorRatesUpgrade::parseUpgradeXML", "Unknown XML detail: %s", _detail.c_str());
+              Error("MonitorRatesUpgrade::parseUpgradeXML", "Unknown XML detail: %s", detail.c_str());
             }
-            _detailsNode = _xml->GetNext(_detailsNode);
+            detailsNode = xml->GetNext(detailsNode);
           }
-          if (_level == "L1") {
-            Info("MonitorRatesUpgrade::parseUpgradeXML", "Will do L1->L2 chain: %s with logic: %s", _sigName.c_str(), _triggerLogic.print().c_str());
-            _upgradeChains.insert(ChainInfo(_sigName, 1, _triggerLogic, _group, _comment, _l1ReductionFactor, _l2ReductionFactor));
-          } else if (_level == "HLT") {
-            _upgradeChains.insert(ChainInfo(_sigName, 3, _hltProxy, _lower, _comment, _hltReductionFactor));
+          if (level == "L1") {
+            Info("MonitorRatesUpgrade::parseUpgradeXML", "Will do L1->L2 chain: %s with logic: %s", sigName.c_str(), triggerLogic.print().c_str());
+            upgradeChains.insert(ChainInfo(sigName, 1, triggerLogic, group, comment, l1ReductionFactor, l2ReductionFactor));
+          } else if (level == "HLT") {
+            upgradeChains.insert(ChainInfo(sigName, 3, hltProxy, lower, comment, hltReductionFactor));
           } else {
-            Error("MonitorRatesUpgrade::parseUpgradeXML", "Signatures from unknown trigger level: %s", _level.c_str());
+            Error("MonitorRatesUpgrade::parseUpgradeXML", "Signatures from unknown trigger level: %s", level.c_str());
           }
-          _node = _xml->GetNext(_node);
+          node = xml->GetNext(node);
         }
       }
 
-      _listNode = _xml->GetNext(_listNode);
+      listNode = xml->GetNext(listNode);
     }
 
-    delete _xml;
+    delete xml;
   }
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/Utility.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/Utility.cxx
index 7a28e226d3865035f8d0edac993d87be7549c169..1a8f3fc3dbcda297f4666cb36724ce48511d8b9c 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/Utility.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/Utility.cxx
@@ -28,199 +28,199 @@ namespace TrigCostRootAnalysis {
    * Check to see if a counter name has been specified by the user as one we're interested in.
    * Match it to the vector of chains to run over.
    * A check is made here to allow for the exlusion of rerun chains in events which failed the HLT
-   * @param _counterName Const reference to counter name to test.
-   * @param _invert if the results are to be inverted
+   * @param counterName Const reference to counter name to test.
+   * @param invert if the results are to be inverted
    * @result If the counter is in the list of counters to process in this run.
    */
-  Bool_t checkPatternNameMonitor(const std::string& _counterName, Bool_t _invert, Bool_t _isRerun) {
-    Bool_t _result = checkPatternInternal(_counterName, kPatternsMonitor, _invert);
-    static Bool_t _isPrediction = (Bool_t) Config::config().getInt(kIsCPUPrediction);
+  Bool_t checkPatternNameMonitor(const std::string& counterName, Bool_t invert, Bool_t isRerun) {
+    Bool_t result = checkPatternInternal(counterName, kPatternsMonitor, invert);
+    static Bool_t isPrediction = (Bool_t) Config::config().getInt(kIsCPUPrediction);
 
-    if (_isPrediction == kTRUE && _result == kTRUE) {
+    if (isPrediction == kTRUE && result == kTRUE) {
       // Check if this chain is rerun
-      Bool_t _ignoreRerun = (Bool_t) Config::config().getInt(kIgnoreRerun);
-      if (_ignoreRerun == kTRUE && _isRerun == kTRUE) return kFALSE;
+      Bool_t ignoreRerun = (Bool_t) Config::config().getInt(kIgnoreRerun);
+      if (ignoreRerun == kTRUE && isRerun == kTRUE) return kFALSE;
     }
-    return _result;
+    return result;
   }
 
   /**
    * Check to see if a chain is on the list of chains to NEVER lumi weight
-   * @param _counterName Const reference to counter name to test.
+   * @param counterName Const reference to counter name to test.
    * @result If the counter is on the list
    */
-  Bool_t checkPatternNoLumiWeight(const std::string& _counterName) {
-    return Config::config().getVecMatches(kPatternsNoLumiWeight, _counterName);
+  Bool_t checkPatternNoLumiWeight(const std::string& counterName) {
+    return Config::config().getVecMatches(kPatternsNoLumiWeight, counterName);
   }
 
   /**
    * Check to see if a chain is on the list of chains to not get the *mu* part of the lumi weight
    * Will still get the bunch part
-   * @param _counterName Const reference to counter name to test.
+   * @param counterName Const reference to counter name to test.
    * @result If the counter is on the list
    */
-  Bool_t checkPatternNoMuLumiWeight(const std::string& _counterName) {
-    return Config::config().getVecMatches(kPatternsNoMuLumiWeight, _counterName);
+  Bool_t checkPatternNoMuLumiWeight(const std::string& counterName) {
+    return Config::config().getVecMatches(kPatternsNoMuLumiWeight, counterName);
   }
 
   /**
    * Check to see if a chain is on the list of chains to not get the *bunch* part of the lumi weight
    * Will still get the mu part
-   * @param _counterName Const reference to counter name to test.
+   * @param counterName Const reference to counter name to test.
    * @result If the counter is on the list
    */
-  Bool_t checkPatternNoBunchLumiWeight(const std::string& _counterName) {
-    return Config::config().getVecMatches(kPatternsNoBunchLumiWeight, _counterName);
+  Bool_t checkPatternNoBunchLumiWeight(const std::string& counterName) {
+    return Config::config().getVecMatches(kPatternsNoBunchLumiWeight, counterName);
   }
 
   /**
    * Check to see if a chain is on the list of chains to get *exponential* scaling in \<mu\>
-   * @param _counterName Const reference to counter name to test.
+   * @param counterName Const reference to counter name to test.
    * @result If the counter is on the list
    */
-  Bool_t checkPatternExponentialWithMu(const std::string& _counterName) {
-    return Config::config().getVecMatches(kPatternsExpoMuLumiWeight, _counterName);
+  Bool_t checkPatternExponentialWithMu(const std::string& counterName) {
+    return Config::config().getVecMatches(kPatternsExpoMuLumiWeight, counterName);
   }
 
   /**
    * Check to see if a counter name has been specified by the user as one we're interested in saving.
    * Match it to the vector of chains to save.
-   * @param _counterName Const reference to counter name to test.
-   * @param _invert if the results are to be inverted
+   * @param counterName Const reference to counter name to test.
+   * @param invert if the results are to be inverted
    * @result If the counter is in the list of counters to output from this run.
    */
-  Bool_t checkPatternNameOutput(const std::string& _counterName, Bool_t _invert) {
-    return checkPatternInternal(_counterName, kPatternsOutput, _invert);
+  Bool_t checkPatternNameOutput(const std::string& counterName, Bool_t invert) {
+    return checkPatternInternal(counterName, kPatternsOutput, invert);
   }
 
   /**
    * Check to see if a counter name has been specified by the user as one we're interested in
    * doing unique rates for.
-   * @param _counterName Const reference to counter name to test.
+   * @param counterName Const reference to counter name to test.
    * @result If the counter is in the list of counters to output from this run.
    */
-  Bool_t checkPatternUnique(const std::string& _counterName, Bool_t _invert) {
-    return checkPatternInternal(_counterName, kPatternsUnique, _invert);
+  Bool_t checkPatternUnique(const std::string& counterName, Bool_t invert) {
+    return checkPatternInternal(counterName, kPatternsUnique, invert);
   }
 
   /**
    * Check to see if a counter name has been specified by the user as one we're interested in
    * doing overlap rates for.
-   * @param _counterName Const reference to counter name to test.
+   * @param counterName Const reference to counter name to test.
    * @result If the counter is in the list of counters to output from this run.
    */
-  Bool_t checkPatternOverlap(const std::string& _counterName, Bool_t _invert) {
-    return checkPatternInternal(_counterName, kPatternsOverlap, _invert);
+  Bool_t checkPatternOverlap(const std::string& counterName, Bool_t invert) {
+    return checkPatternInternal(counterName, kPatternsOverlap, invert);
   }
 
   /**
    * Code to actually perform the check if a counter is listed in a given vector
-   * @param _counterName Const reference to counter name to test.
-   * @param _list The key of the saved configuration vector to test in
+   * @param counterName Const reference to counter name to test.
+   * @param list The key of the saved configuration vector to test in
    * @result If the counter is in the list of counters to output from this run.
    */
-  Bool_t checkPatternInternal(const std::string& _counterName, ConfKey_t _list, Bool_t _invert) {
-    if (Config::config().getVecSize(_list) > 0) {
-      Bool_t _result = Config::config().getVecMatches(_list, _counterName);
-      if (_invert == kTRUE) return !_result;
+  Bool_t checkPatternInternal(const std::string& counterName, ConfKey_t list, Bool_t invert) {
+    if (Config::config().getVecSize(list) > 0) {
+      Bool_t result = Config::config().getVecMatches(list, counterName);
+      if (invert == kTRUE) return !result;
 
-      return _result;
+      return result;
     }
     return kTRUE;
   }
 
   /**
    * Helper function, converts string to signed int
-   * @param _i string to convert.
+   * @param i string to convert.
    * @returns Integer representation of string.
    */
-  Int_t stringToInt(const std::string& _i) {
-    Int_t _result = INT_MAX;
+  Int_t stringToInt(const std::string& i) {
+    Int_t result = INT_MAX;
 
-    std::istringstream(_i) >> _result;
-    return _result;
+    std::istringstream(i) >> result;
+    return result;
   }
 
   /**
    * Helper function, converts string to float
-   * @param _i string to convert.
+   * @param i string to convert.
    * @returns Floating point representation of string.
    */
-  Float_t stringToFloat(const std::string& _i) {
-    Float_t _result = FLT_MAX;
+  Float_t stringToFloat(const std::string& i) {
+    Float_t result = FLT_MAX;
 
-    std::istringstream(_i) >> _result;
-    return _result;
+    std::istringstream(i) >> result;
+    return result;
   }
 
   /**
    * Helper function, converts string to double
-   * @param _i string to convert.
+   * @param i string to convert.
    * @returns Double precision point representation of string.
    */
-  Double_t stringToDouble(const std::string& _i) {
-    Double_t _result = DBL_MAX;
+  Double_t stringToDouble(const std::string& i) {
+    Double_t result = DBL_MAX;
 
-    std::istringstream(_i) >> _result;
-    return _result;
+    std::istringstream(i) >> result;
+    return result;
   }
 
   /**
    * Helper function, converts unsigned integer to string.
-   * @param _i UInt_t to convert.
+   * @param i UInt_t to convert.
    * @returns String of integer.
    */
-  std::string intToString(UInt_t _i, UInt_t _pad) {
-    return intToString((Long64_t) _i, _pad);
+  std::string intToString(UInt_t i, UInt_t pad) {
+    return intToString((Long64_t) i, pad);
   }
 
   /**
    * Helper function, converts long integer to string.
-   * @param _i Long64_t to convert.
+   * @param i Long64_t to convert.
    * @returns String of integer.
    */
-  std::string intToString(Long64_t _i, UInt_t _pad) {
-    std::ostringstream _ss;
-    if (_pad) _ss << std::setfill('0') << std::setw(_pad);
-    _ss << std::fixed << _i;
-    return _ss.str();
+  std::string intToString(Long64_t i, UInt_t pad) {
+    std::ostringstream ss;
+    if (pad) ss << std::setfill('0') << std::setw(pad);
+    ss << std::fixed << i;
+    return ss.str();
   }
 
   /**
    * Helper function, converts integer to string.
-   * @param _i Int_t to convert.
+   * @param i Int_t to convert.
    * @returns String of integer.
    */
-  std::string intToString(Int_t _i, UInt_t _pad) {
-    return intToString((Long64_t) _i, _pad);
+  std::string intToString(Int_t i, UInt_t pad) {
+    return intToString((Long64_t) i, pad);
   }
 
   /**
    * Helper function, converts floating point to string.
-   * @param _f Float_t to convert.
-   * @param _precision Optional number of decimal places.
+   * @param f Float_t to convert.
+   * @param precision Optional number of decimal places.
    * @returns String of float.
    */
-  std::string floatToString(Float_t _f, Int_t _precision) {
+  std::string floatToString(Float_t f, Int_t precision) {
     // This is going to screen so internal precision doesn't matter
-    return doubleToString((Double_t) _f, _precision);
+    return doubleToString((Double_t) f, precision);
   }
 
   /**
    * Helper function, converts double precision floating point to string.
-   * @param _d Float_t to convert.
-   * @param _precision Optional number of decimal places.
+   * @param d Float_t to convert.
+   * @param precision Optional number of decimal places.
    * @returns String of double.
    */
-  std::string doubleToString(Double_t _d, Int_t _precision) {
+  std::string doubleToString(Double_t d, Int_t precision) {
     std::ostringstream ss;
-    ss.precision(_precision);
-    if (isZero(_d) == kTRUE) {
+    ss.precision(precision);
+    if (isZero(d) == kTRUE) {
       ss << "0";
-    } else if (TMath::Abs(_d) < 1e4) {
-      ss << std::fixed << _d;
+    } else if (TMath::Abs(d) < 1e4) {
+      ss << std::fixed << d;
     } else {
-      ss << std::scientific << _d;
+      ss << std::scientific << d;
     }
     return ss.str();
   }
@@ -228,17 +228,17 @@ namespace TrigCostRootAnalysis {
   /**
    * Helper function, calculate distance in eta and phi
    */
-  Float_t deltaR(Float_t _phi1, Float_t _phi2, Float_t _eta1, Float_t _eta2) {
-    if (_phi1 < 0) _phi1 += 2 * M_PI;
-    if (_phi2 < 0) _phi2 += 2 * M_PI;
-    assert(_phi1 >= 0 && _phi1 <= 2 * M_PI);
-    assert(_phi2 >= 0 && _phi2 <= 2 * M_PI);
-    const Float_t _phiDiff = _phi2 - _phi1;
-    Float_t _deltaPhi = _phiDiff;
-    if (_phiDiff > M_PI) _deltaPhi = -2 * M_PI + _phiDiff;
-    else if (_phiDiff < -M_PI) _deltaPhi = 2 * M_PI + _phiDiff;
-    Float_t _dE = _eta1 - _eta2;
-    return TMath::Sqrt(_deltaPhi * _deltaPhi + _dE * _dE);
+  Float_t deltaR(Float_t phi1, Float_t phi2, Float_t eta1, Float_t eta2) {
+    if (phi1 < 0) phi1 += 2 * M_PI;
+    if (phi2 < 0) phi2 += 2 * M_PI;
+    assert(phi1 >= 0 && phi1 <= 2 * M_PI);
+    assert(phi2 >= 0 && phi2 <= 2 * M_PI);
+    const Float_t phiDiff = phi2 - phi1;
+    Float_t deltaPhi = phiDiff;
+    if (phiDiff > M_PI) deltaPhi = -2 * M_PI + phiDiff;
+    else if (phiDiff < -M_PI) deltaPhi = 2 * M_PI + phiDiff;
+    Float_t dE = eta1 - eta2;
+    return TMath::Sqrt(deltaPhi * deltaPhi + dE * dE);
   }
 
   /**
@@ -256,82 +256,81 @@ namespace TrigCostRootAnalysis {
 
   /**
    * Helper function, plots histogram to current canvas.
-   * @param _h Pointer to histogram to plot.
-   * @param _isLogY Flag to specify if histogram is being plotted on a logarithmic canvas.
-   * @param _opt Drawing options to pass to the painter.
+   * @param h Pointer to histogram to plot.
+   * @param isLogY Flag to specify if histogram is being plotted on a logarithmic canvas.
+   * @param opt Drawing options to pass to the painter.
    */
-  void plotHistogram(TH1F* _h, Bool_t _isLogY, std::string _opt) {
-    UNUSED(_isLogY); //TODO remove me?
+  void plotHistogram(TH1F* h, Bool_t /*isLogY*/, std::string opt) {
     // Standard ROOT histogram stuff
-    // if (_isLogY == kTRUE) {
-    //   _h->GetYaxis()->SetRangeUser(.1, _h->GetMaximum() * 10.);
+    // if (isLogY == kTRUE) {
+    //   h->GetYaxis()->SetRangeUser(.1, h->GetMaximum() * 10.);
     // } else {
-    //   _h->GetYaxis()->SetRangeUser(0., _h->GetMaximum() * 1.1);
+    //   h->GetYaxis()->SetRangeUser(0., h->GetMaximum() * 1.1);
     // }
-    _h->Draw(_opt.c_str());
+    h->Draw(opt.c_str());
   }
 
   /**
    * Helper function, check if a floating point is compatible with zero.
-   * @param _float Value to test.
-   * @param _precision Optional level of precision required.
+   * @param floatval Value to test.
+   * @param precision Optional level of precision required.
    * @returns true if value is compatible with zero.
    */
-  Bool_t isZero(Float_t _float, Float_t _precision) {
-    if (TMath::Abs(_float) < _precision) return kTRUE;
+  Bool_t isZero(Float_t floatval, Float_t precision) {
+    if (TMath::Abs(floatval) < precision) return kTRUE;
 
     return kFALSE;
   }
 
   /**
    * Helper function, check if a floating point numbers are compatable.
-   * @param _float1 First value to test.
-   * @param _float2 Second value to test.
-   * @param _precision Optional level of precision required.
+   * @param float1 First value to test.
+   * @param float2 Second value to test.
+   * @param precision Optional level of precision required.
    * @returns true if value1 and value2 are equal to each other.
    */
-  Bool_t isEqual(Float_t _float1, Float_t _float2, Float_t _precision) {
-    if (TMath::Abs(_float1 - _float2) < _precision) return kTRUE;
+  Bool_t isEqual(Float_t float1, Float_t float2, Float_t precision) {
+    if (TMath::Abs(float1 - float2) < precision) return kTRUE;
 
     return kFALSE;
   }
 
   /**
    * Helper function, constructs a std::pair from a variable name and VariableOption.
-   * @param _name The name of the variable.
-   * @param _vo The desired VariableOption
+   * @param name The name of the variable.
+   * @param vo The desired VariableOption
    * @returns The supplied data wrapped in a pair.
    */
-  ConfVariableOptionPair_t makePair(ConfKey_t _name, VariableOption_t _vo) {
-    return std::make_pair(_name, _vo);
+  ConfVariableOptionPair_t makePair(ConfKey_t name, VariableOption_t vo) {
+    return std::make_pair(name, vo);
   }
 
   /**
    * Helper function, returns basic hash of string.
    * hash function (based on available elswhere ELF hash function)
-   * @param _s String to hash
+   * @param s String to hash
    * @returns Hash value.
    */
-  UInt_t stringToIntHash(std::string& _s) {
-    UInt_t _hash;
+  UInt_t stringToIntHash(std::string& s) {
+    UInt_t hash;
 
-    _hash = 0xd2d84a61;
+    hash = 0xd2d84a61;
     Int_t i;
 
-    for (i = (Int_t) _s.size() - 1; i >= 0; --i) _hash ^= (_hash >> 5) + _s[i] + (_hash << 7);
-    for (i = 0; i < (Int_t) _s.size(); ++i) _hash ^= (_hash >> 5) + _s[i] + (_hash << 7);
+    for (i = (Int_t) s.size() - 1; i >= 0; --i) hash ^= (hash >> 5) + s[i] + (hash << 7);
+    for (i = 0; i < (Int_t) s.size(); ++i) hash ^= (hash >> 5) + s[i] + (hash << 7);
 
-    return _hash;
+    return hash;
   }
 
-  const std::string& getLevelString(UInt_t _level) {
-    if (_level == 1) return Config::config().getStr(kL1String);
+  const std::string& getLevelString(UInt_t level) {
+    if (level == 1) return Config::config().getStr(kL1String);
 
-    if (_level == 2 && Config::config().getInt(kDoL2) == 1) return Config::config().getStr(kL2String);
+    if (level == 2 && Config::config().getInt(kDoL2) == 1) return Config::config().getStr(kL2String);
 
-    if (_level == 2 && Config::config().getInt(kDoHLT) == 1) return Config::config().getStr(kHLTString);
+    if (level == 2 && Config::config().getInt(kDoHLT) == 1) return Config::config().getStr(kHLTString);
 
-    if (_level == 3 && Config::config().getInt(kDoEF) == 1) return Config::config().getStr(kEFString);
+    if (level == 3 && Config::config().getInt(kDoEF) == 1) return Config::config().getStr(kEFString);
 
     return Config::config().getStr(kUnknownString);
   }
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/AutoMonControl.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/AutoMonControl.h
index 71cde727b98ddc7cf1b1c37890e6c7c94f58fc6f..b69b22ad3b7b5ebf070878e5eca226e645db8f4f 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/AutoMonControl.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/AutoMonControl.h
@@ -33,9 +33,9 @@ namespace TrigCostRootAnalysis {
     void split(const std::string& s, char delim, Out result) const;
     std::vector<std::string> split(const std::string& s, char delim) const;
 
-    void parseExamXml(TXMLEngine* _xml, XMLNodePointer_t _examNode);
-    void parseTestXml(TXMLEngine* _xml, XMLNodePointer_t _node);
-    void parseControlOptionsXml(TXMLEngine* _xml, XMLNodePointer_t _listNode);
+    void parseExamXml(TXMLEngine* xml, XMLNodePointer_t examNode);
+    void parseTestXml(TXMLEngine* xml, XMLNodePointer_t node);
+    void parseControlOptionsXml(TXMLEngine* xml, XMLNodePointer_t listNode);
     void loadXml();
 
     void bankTest(const AutoMonTest test);
@@ -55,4 +55,4 @@ namespace TrigCostRootAnalysis {
   };
 } //namespace TrigCostRootAnalysis
 
-#endif //TrigCostRootAnalysis_AutoMonControl_H
\ No newline at end of file
+#endif //TrigCostRootAnalysis_AutoMonControl_H
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/AutoMonResult.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/AutoMonResult.h
index 23938bb65cb8107ef5386189b5bfb7c19b540539..0a60d4f5974bb06c89e748db989a509eedee2a71 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/AutoMonResult.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/AutoMonResult.h
@@ -22,7 +22,7 @@ namespace TrigCostRootAnalysis {
     AutoMonResult(const AlertStatus& interest_level);
 
     void saveOutput() const;
-    void saveList(JsonExport _json, std::map < const CounterBase*, const AutoMonTest* > list, std::ofstream& _fout,
+    void saveList(JsonExport json, std::map < const CounterBase*, const AutoMonTest* > list, std::ofstream& fout,
                   const AlertStatus& alert) const;
     void printList(std::map < const CounterBase*, const AutoMonTest* > list, const AlertStatus& alert) const;
     void setInterestLevel(const AlertStatus& level) {m_interest_level = level;}
@@ -37,4 +37,4 @@ namespace TrigCostRootAnalysis {
   };
 } //namespace TrigCostRootAnalysis
 
-#endif //TrigCostRootAnalysis_AutoMonResult_H
\ No newline at end of file
+#endif //TrigCostRootAnalysis_AutoMonResult_H
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/Config.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/Config.h
index bc4e7386dcc68659fb04ccefa42a0e93c7b3429e..72cc0a86b0dda2d9241325601d245bb131c9425f 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/Config.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/Config.h
@@ -53,40 +53,40 @@ namespace TrigCostRootAnalysis {
     static Config& config(); //!< Use this method to get the singleton
 
     Bool_t parseCLI(int argc, char* argv[]);
-    const std::string& getStr(ConfKey_t _key);
-    const std::string& getName(ConfKey_t _key);
-    Int_t getInt(ConfKey_t _key);
-    Long64_t getLong(ConfKey_t _key);
-    Float_t getFloat(ConfKey_t _key);
-    const std::vector<Int_t>& getIntVec(ConfKey_t _key);
-    UInt_t getVecSize(ConfKey_t _key);
-    const std::string& getVecEntry(ConfKey_t _key, UInt_t);
-    Bool_t getVecMatches(ConfKey_t _key, const std::string& _entry);
-    Bool_t addVecEntry(ConfKey_t _key, const std::string& _toAdd);
-    Bool_t removeVecEntry(ConfKey_t _key, const std::string& _toRemove);
-    Bool_t clearVec(ConfKey_t _key);
-    Bool_t getIntVecMatches(ConfKey_t _key, const Int_t _entry);
-    Bool_t getIsSet(ConfKey_t _key);
-    Bool_t getDisplayMsg(ConfKey_t _key);
+    const std::string& getStr(ConfKey_t key);
+    const std::string& getName(ConfKey_t key);
+    Int_t getInt(ConfKey_t key);
+    Long64_t getLong(ConfKey_t key);
+    Float_t getFloat(ConfKey_t key);
+    const std::vector<Int_t>& getIntVec(ConfKey_t key);
+    UInt_t getVecSize(ConfKey_t key);
+    const std::string& getVecEntry(ConfKey_t key, UInt_t);
+    Bool_t getVecMatches(ConfKey_t key, const std::string& entry);
+    Bool_t addVecEntry(ConfKey_t key, const std::string& toAdd);
+    Bool_t removeVecEntry(ConfKey_t key, const std::string& toRemove);
+    Bool_t clearVec(ConfKey_t key);
+    Bool_t getIntVecMatches(ConfKey_t key, const Int_t entry);
+    Bool_t getIsSet(ConfKey_t key);
+    Bool_t getDisplayMsg(ConfKey_t key);
     Bool_t debug();
     void messageSuppressionReport();
-    void set(ConfKey_t _key, const Int_t _value, const std::string _name = "", LockStatus_t _lock = kLocked);
-    void set(ConfKey_t _key, const Int_t _value, LockStatus_t _lock = kLocked);
-    void setDisplayMsg(ConfKey_t _key, const Int_t _value, const std::string _name = "");
-    void setFloat(ConfKey_t _key, const Float_t _value, const std::string _name = "", LockStatus_t _lock = kLocked);
-    void setLong(ConfKey_t _key, const Long64_t _value, const std::string _name = "", LockStatus_t _lock = kLocked);
-    void set(ConfKey_t _key, const std::vector< std::string > _value, const std::string _name = "",
-             LockStatus_t _lock = kLocked);
-    void set(ConfKey_t _key, const std::vector< Int_t > _value, const std::string _name = "",
-             LockStatus_t _lock = kLocked);
-    void set(ConfKey_t _key, const std::string _value, const std::string _name = "", LockStatus_t _lock = kLocked);
-    void increment(ConfKey_t _key);
-    void decrement(ConfKey_t _key);
+    void set(ConfKey_t key, const Int_t value, const std::string name = "", LockStatus_t lock = kLocked);
+    void set(ConfKey_t key, const Int_t value, LockStatus_t lock = kLocked);
+    void setDisplayMsg(ConfKey_t key, const Int_t value, const std::string name = "");
+    void setFloat(ConfKey_t key, const Float_t value, const std::string name = "", LockStatus_t lock = kLocked);
+    void setLong(ConfKey_t key, const Long64_t value, const std::string name = "", LockStatus_t lock = kLocked);
+    void set(ConfKey_t key, const std::vector< std::string > value, const std::string name = "",
+             LockStatus_t lock = kLocked);
+    void set(ConfKey_t key, const std::vector< Int_t > value, const std::string name = "",
+             LockStatus_t lock = kLocked);
+    void set(ConfKey_t key, const std::string value, const std::string name = "", LockStatus_t lock = kLocked);
+    void increment(ConfKey_t key);
+    void decrement(ConfKey_t key);
     void dump();
-    void dumpToMeta(std::ofstream& _fout, JsonExport& _json);
+    void dumpToMeta(std::ofstream& fout, JsonExport& json);
     Bool_t getConfKeyNameFromString(const std::string& s, ConfKey_t& result);
   private:
-    Bool_t getIsLocked(ConfKey_t _key, Bool_t _printErrorMsg = kFALSE);
+    Bool_t getIsLocked(ConfKey_t key, Bool_t printErrorMsg = kFALSE);
 
     Bool_t m_debug;
     std::string m_blankString; //!< Instance of blank string to return ref to on failures.
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterAlgorithm.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterAlgorithm.h
index 4d47becf64ce93afb6da6f43f0e38d6c6f8763f3..333737e5c109b2c41036a37a60001360642d74c2 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterAlgorithm.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterAlgorithm.h
@@ -33,18 +33,18 @@ namespace TrigCostRootAnalysis {
    */
   class CounterAlgorithm: public CounterBase {
   public:
-    CounterAlgorithm(const TrigCostData* _costData, const std::string& _name, Int_t _ID, UInt_t _detailLevel = 10,
-                     MonitorBase* _parent = 0);
+    CounterAlgorithm(const TrigCostData* costData, const std::string& name, Int_t ID, UInt_t detailLevel = 10,
+                     MonitorBase* parent = 0);
     ~CounterAlgorithm();
     void startEvent();
-    void processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight = 1.);
-    void endEvent(Float_t _weight = 1);
-    void debug(UInt_t _e, UInt_t _a);
+    void processEventCounter(UInt_t e, UInt_t f, Float_t weight = 1.);
+    void endEvent(Float_t weight = 1);
+    void debug(UInt_t e, UInt_t a);
   private:
-    Double_t getPrescaleFactor(UInt_t _e = INT_MAX);
+    Double_t getPrescaleFactor(UInt_t e = INT_MAX);
 
-    void fullExecutionInformation(UInt_t _e, UInt_t _f, Float_t _weight);
-    Float_t getElapsedTime(UInt_t _e, UInt_t _f);
+    void fullExecutionInformation(UInt_t e, UInt_t f, Float_t weight);
+    Float_t getElapsedTime(UInt_t e, UInt_t f);
 
     static Float_t s_eventTimeExecute; //!< Static tabulation of execute time for all algorithms in an event.
     Float_t m_firstAlgStartTime; //!< Used to keep track of the earliest (first) execution of this counter in any one
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterBase.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterBase.h
index a7da3797afd59af78c0888821a0a6f3e0316c7da..72d784fa0cc3102aac6708adc2cbcd10961eb379 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterBase.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterBase.h
@@ -46,42 +46,42 @@ namespace TrigCostRootAnalysis {
    */
   class CounterBase {
   public:
-    CounterBase(const TrigCostData* _costData, const std::string& _name, Int_t _ID, UInt_t _detailLevel = 10,
-                MonitorBase* _parent = 0);
+    CounterBase(const TrigCostData* costData, const std::string& name, Int_t ID, UInt_t detailLevel = 10,
+                MonitorBase* parent = 0);
     virtual ~CounterBase();
 
     virtual void startEvent() = 0;
-    virtual void processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight = 1) = 0;
-    virtual void endEvent(Float_t _weight = 1) = 0;
+    virtual void processEventCounter(UInt_t e, UInt_t f, Float_t weight = 1) = 0;
+    virtual void endEvent(Float_t weight = 1) = 0;
 
-    Float_t getValue(ConfKey_t _name, VariableOption_t _vo) const;
-    Bool_t getValueExists(ConfKey_t _name, VariableOption_t _vo) const;
-    Float_t getValueError(ConfKey_t _name, VariableOption_t _vo) const;
-    Float_t getValueNormalised(ConfKey_t _name, VariableOption_t _vo) const;
-    Int_t getEntries(ConfKey_t _name, VariableOption_t _vo) const;
-    void setValue(ConfKey_t _name, VariableOption_t _vo, Float_t _val);
-    void setEntries(ConfKey_t _name, VariableOption_t _vo, UInt_t _val);
-    void setErrorSquared(ConfKey_t _name, VariableOption_t _vo, Float_t _val);
-    TH1F* getHist(ConfKey_t _name, VariableOption_t _vo);
-    TH1F* getHist(ConfVariableOptionPair_t _pair);
-    // TH2F* getHist2D(ConfKey_t _name, VariableOption_t _vo);
+    Float_t getValue(ConfKey_t name, VariableOption_t vo) const;
+    Bool_t getValueExists(ConfKey_t name, VariableOption_t vo) const;
+    Float_t getValueError(ConfKey_t name, VariableOption_t vo) const;
+    Float_t getValueNormalised(ConfKey_t name, VariableOption_t vo) const;
+    Int_t getEntries(ConfKey_t name, VariableOption_t vo) const;
+    void setValue(ConfKey_t name, VariableOption_t vo, Float_t val);
+    void setEntries(ConfKey_t name, VariableOption_t vo, UInt_t val);
+    void setErrorSquared(ConfKey_t name, VariableOption_t vo, Float_t val);
+    TH1F* getHist(ConfKey_t name, VariableOption_t vo);
+    TH1F* getHist(ConfVariableOptionPair_t pair);
+    // TH2F* getHist2D(ConfKey_t name, VariableOption_t vo);
     UInt_t getCalls() const;
     VariableOptionVector_t getAllHistograms();
     const std::string& getName() const;
     Int_t getID() const;
-    void addMultiID(UInt_t _multiId);
+    void addMultiID(UInt_t multiId);
     const std::set<UInt_t>& getMultiID() const;
-    void decorate(ConfKey_t _key, const std::string _value);
-    void decorate(ConfKey_t _key, const Float_t _value);
-    void decorate(ConfKey_t _key, const Int_t _value);
-    const std::string& getStrDecoration(ConfKey_t _key) const;
-    Int_t getIntDecoration(ConfKey_t _key) const;
-    Float_t getDecoration(ConfKey_t _key) const;
-    Bool_t hasDecoration(ConfKey_t _key) const;
+    void decorate(ConfKey_t key, const std::string value);
+    void decorate(ConfKey_t key, const Float_t value);
+    void decorate(ConfKey_t key, const Int_t value);
+    const std::string& getStrDecoration(ConfKey_t key) const;
+    Int_t getIntDecoration(ConfKey_t key) const;
+    Float_t getDecoration(ConfKey_t key) const;
+    Bool_t hasDecoration(ConfKey_t key) const;
     MonitorBase* getParent() const;
     const std::string getRange() const;
   protected:
-    virtual Double_t getPrescaleFactor(UInt_t _e = INT_MAX) = 0;
+    virtual Double_t getPrescaleFactor(UInt_t e = INT_MAX) = 0;
 
 
     const TrigCostData* m_costData; //!< The raw data
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterBaseRates.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterBaseRates.h
index 5c4d7138eb91d624f2b0a4ce16337535f4daf579..4aca83b8a354b636a714da855635b904eb3dd333 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterBaseRates.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterBaseRates.h
@@ -33,24 +33,24 @@ namespace TrigCostRootAnalysis {
    */
   class CounterBaseRates: public CounterBase {
   public:
-    CounterBaseRates(const TrigCostData* _costData, const std::string& _name, Int_t _ID, UInt_t _detailLevel = 10,
-                     MonitorBase* _parent = 0);
+    CounterBaseRates(const TrigCostData* costData, const std::string& name, Int_t ID, UInt_t detailLevel = 10,
+                     MonitorBase* parent = 0);
     ~CounterBaseRates();
 
     void startEvent();
-    void processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight = 0.);
-    void endEvent(Float_t _weight = 1);
+    void processEventCounter(UInt_t e, UInt_t f, Float_t weight = 0.);
+    void endEvent(Float_t weight = 1);
 
-    void addL1Item(RatesChainItem* _toAdd);
-    void addL2Item(RatesChainItem* _toAdd);
-    void addL2Items(ChainItemSet_t _toAdd);
-    void addL3Item(RatesChainItem* _toAdd);
-    void addL3Items(ChainItemSet_t _toAdd);
-    void addCPSItem(RatesCPSGroup* _toAdd, std::string _name);
-    void addOverlap(CounterBase* _overlap);
-    void setMyUniqueCounter(CounterBaseRates* _c) {m_myUniqueCounter = _c;}
-    void setGlobalRateCounter(CounterBaseRates* _c) {m_globalRates = _c;}
-    void setLowerRateCounter(CounterBaseRates* _c) {m_lowerRates = _c;}
+    void addL1Item(RatesChainItem* toAdd);
+    void addL2Item(RatesChainItem* toAdd);
+    void addL2Items(ChainItemSet_t toAdd);
+    void addL3Item(RatesChainItem* toAdd);
+    void addL3Items(ChainItemSet_t toAdd);
+    void addCPSItem(RatesCPSGroup* toAdd, std::string name);
+    void addOverlap(CounterBase* overlap);
+    void setMyUniqueCounter(CounterBaseRates* c) {m_myUniqueCounter = c;}
+    void setGlobalRateCounter(CounterBaseRates* c) {m_globalRates = c;}
+    void setLowerRateCounter(CounterBaseRates* c) {m_lowerRates = c;}
 
     Bool_t getInEvent();
 
@@ -64,13 +64,13 @@ namespace TrigCostRootAnalysis {
     Double_t getLastWeight();
 
     virtual void finalise();
-    virtual Float_t runDirect(Bool_t _usePrescale = kTRUE) = 0; // Pure virtual calls! Please override-me with
+    virtual Float_t runDirect(Bool_t usePrescale = kTRUE) = 0; // Pure virtual calls! Please override-me with
                                                                 // appropriate trigger logic
-    virtual Double_t runWeight(Bool_t _includeExpress = kFALSE) = 0;
+    virtual Double_t runWeight(Bool_t includeExpress = kFALSE) = 0;
   protected:
     void startRun();
-    Double_t getPrescaleFactor(UInt_t _e = INT_MAX); // Unused here
-    Bool_t checkMultiSeed(RatesChainItem* _toAdd);
+    Double_t getPrescaleFactor(UInt_t e = INT_MAX); // Unused here
+    Bool_t checkMultiSeed(RatesChainItem* toAdd);
 
     CounterSet_t m_ovelapCounters; //!< List of all counters to be queried at end of run to get my overlap with them
     CPSGroupSet_t m_cpsGroups;      //!< List of groups of L2 chains in this combination which are to be treated
@@ -85,7 +85,7 @@ namespace TrigCostRootAnalysis {
     CounterBaseRates* m_globalRates;    //!< Pointer to the global rates counter. Used currently by Unique
                                         // CounterRatesUnion derived counters.
     CounterBaseRates* m_lowerRates;     //!< Pointer to the rates counter at lower level, for getting "Input Rate"
-    Bool_t m_doSacleByPS;    //!< If we are configured to scale all rates by their PS
+    Bool_t m_doScaleByPS;    //!< If we are configured to scale all rates by their PS
     Bool_t m_doDirectPS;     //!< If we are applying prescales directly (not with weights)
     Double_t m_cachedWeight;   //!< Holds the most recently calculated weight. Used so other chains can get the global
                                // monitor's weight for the current event.
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterChain.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterChain.h
index cf0f14bf4e15774720ecc2563113a0902a168db6..5b4f1f304ae42a05a9ee796125bd7c27823121c0 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterChain.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterChain.h
@@ -33,15 +33,15 @@ namespace TrigCostRootAnalysis {
    */
   class CounterChain: public CounterBase {
   public:
-    CounterChain(const TrigCostData* _costData, const std::string& _name, Int_t _ID, UInt_t _detailLevel = 10,
-                 MonitorBase* _parent = 0);
+    CounterChain(const TrigCostData* costData, const std::string& name, Int_t ID, UInt_t detailLevel = 10,
+                 MonitorBase* parent = 0);
     ~CounterChain();
     void startEvent();
-    void processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight = 1.);
-    void endEvent(Float_t _weight = 1.);
-    void debug(UInt_t _e);
+    void processEventCounter(UInt_t e, UInt_t f, Float_t weight = 1.);
+    void endEvent(Float_t weight = 1.);
+    void debug(UInt_t e);
   private:
-    Double_t getPrescaleFactor(UInt_t _e = INT_MAX);
+    Double_t getPrescaleFactor(UInt_t e = INT_MAX);
 
     static Float_t s_eventTimeExecute; //<! Global tabulator of total chain time for all chains in an event
     Float_t m_prescaleWeight; //<! Chain's effective HLT*L1 prescale, cached
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterEventProfile.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterEventProfile.h
index a6b34d52818b695c3e94e2e1af6bf6f0808795c6..01a5dd75b2fdecb7f7f56bef9cb19ae1ba6b8714 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterEventProfile.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterEventProfile.h
@@ -31,15 +31,15 @@ namespace TrigCostRootAnalysis {
    */
   class CounterEventProfile: public CounterBase {
   public:
-    CounterEventProfile(const TrigCostData* _costData, const std::string& _name, Int_t _ID, UInt_t _detailLevel = 10,
-                        MonitorBase* _parent = 0);
+    CounterEventProfile(const TrigCostData* costData, const std::string& name, Int_t ID, UInt_t detailLevel = 10,
+                        MonitorBase* parent = 0);
     ~CounterEventProfile();
     void startEvent();
-    void processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight = 1.);
-    void endEvent(Float_t _weight = 1.);
-    void debug(UInt_t _e);
+    void processEventCounter(UInt_t e, UInt_t f, Float_t weight = 1.);
+    void endEvent(Float_t weight = 1.);
+    void debug(UInt_t e);
   private:
-    Double_t getPrescaleFactor(UInt_t _e = INT_MAX);
+    Double_t getPrescaleFactor(UInt_t e = INT_MAX);
   }; //class CounterEventProfile
 } // namespace TrigCostRootAnalysis
 
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterFullEvent.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterFullEvent.h
index 10ff73f5f797c664846c27d79fe549e0ad0e6163..5df7eae8925a1899fae941899d7eb68e219f1d06 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterFullEvent.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterFullEvent.h
@@ -32,16 +32,16 @@ namespace TrigCostRootAnalysis {
    */
   class CounterFullEvent: public CounterBase {
   public:
-    CounterFullEvent(const TrigCostData* _costData, const std::string& _name, Int_t _ID, UInt_t _detailLevel = 10,
-                     MonitorBase* _parent = 0);
+    CounterFullEvent(const TrigCostData* costData, const std::string& name, Int_t ID, UInt_t detailLevel = 10,
+                     MonitorBase* parent = 0);
     ~CounterFullEvent();
     void startEvent();
-    void processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight = 1.);
-    void endEvent(Float_t _weight = 1.);
-    void debug(UInt_t _e);
+    void processEventCounter(UInt_t e, UInt_t f, Float_t weight = 1.);
+    void endEvent(Float_t weight = 1.);
+    void debug(UInt_t e);
     const std::vector< CounterAlgorithm* >& getEventCounterAlgorithms() {return m_algCounters;}
   private:
-    Double_t getPrescaleFactor(UInt_t _e = INT_MAX);
+    Double_t getPrescaleFactor(UInt_t e = INT_MAX);
 
     Bool_t m_isRun; //!< Each of these counters is only designed to be run on a single event.
 
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterGlobals.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterGlobals.h
index 68eea272e963dd1feeb470e28dd06acb14ddcb16..aace62549fd69aad6c626f1015a21d5f0390e952 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterGlobals.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterGlobals.h
@@ -31,15 +31,15 @@ namespace TrigCostRootAnalysis {
    */
   class CounterGlobals: public CounterBase {
   public:
-    CounterGlobals(const TrigCostData* _costData, const std::string& _name, Int_t _ID, UInt_t _detailLevel = 10,
-                   MonitorBase* _parent = 0);
+    CounterGlobals(const TrigCostData* costData, const std::string& name, Int_t ID, UInt_t detailLevel = 10,
+                   MonitorBase* parent = 0);
     ~CounterGlobals();
     void startEvent();
-    void processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight = 1.);
-    void endEvent(Float_t _weight = 1.);
-    void debug(UInt_t _e);
+    void processEventCounter(UInt_t e, UInt_t f, Float_t weight = 1.);
+    void endEvent(Float_t weight = 1.);
+    void debug(UInt_t e);
   private:
-    Double_t getPrescaleFactor(UInt_t _e = INT_MAX);
+    Double_t getPrescaleFactor(UInt_t e = INT_MAX);
 
     Float_t m_earliestTimestamp; //!< Time of start first alg call in event
     Float_t m_latestTimestamp; //!< Time of end of last alg call in event
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterROB.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterROB.h
index 330c84ea3affce2ad9d8eef83c130d9b7c2390c6..8a0da261a3b1007182ab43fe6eb01d1785ca229a 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterROB.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterROB.h
@@ -31,15 +31,15 @@ namespace TrigCostRootAnalysis {
    */
   class CounterROB: public CounterBase {
   public:
-    CounterROB(const TrigCostData* _costData, const std::string& _name, Int_t _ID, UInt_t _detailLevel = 10,
-               MonitorBase* _parent = 0);
+    CounterROB(const TrigCostData* costData, const std::string& name, Int_t ID, UInt_t detailLevel = 10,
+               MonitorBase* parent = 0);
     ~CounterROB();
     void startEvent();
-    void processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight = 1.);
-    void endEvent(Float_t _weight = 1.);
-    void debug(UInt_t _e, UInt_t _f);
+    void processEventCounter(UInt_t e, UInt_t f, Float_t weight = 1.);
+    void endEvent(Float_t weight = 1.);
+    void debug(UInt_t e, UInt_t f);
   private:
-    Double_t getPrescaleFactor(UInt_t _e = INT_MAX);
+    Double_t getPrescaleFactor(UInt_t e = INT_MAX);
   }; //class CounterROB
 } // namespace TrigCostRootAnalysis
 
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterROI.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterROI.h
index ebeba5a9e8395da589caa1e548b3a528d232e821..15754389ce1d2ff01a45562e4a09bab914c23601 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterROI.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterROI.h
@@ -33,15 +33,15 @@ namespace TrigCostRootAnalysis {
    */
   class CounterROI: public CounterBase {
   public:
-    CounterROI(const TrigCostData* _costData, const std::string& _name, Int_t _ID, UInt_t _detailLevel = 10,
-               MonitorBase* _parent = 0);
+    CounterROI(const TrigCostData* costData, const std::string& name, Int_t ID, UInt_t detailLevel = 10,
+               MonitorBase* parent = 0);
     ~CounterROI();
     void startEvent();
-    void processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight = 1.);
-    void endEvent(Float_t _weight = 1.);
-    void debug(UInt_t _e);
+    void processEventCounter(UInt_t e, UInt_t f, Float_t weight = 1.);
+    void endEvent(Float_t weight = 1.);
+    void debug(UInt_t e);
   private:
-    Double_t getPrescaleFactor(UInt_t _e = INT_MAX);
+    Double_t getPrescaleFactor(UInt_t e = INT_MAX);
   }; //class CounterROI
 } // namespace TrigCostRootAnalysis
 
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterRatesChain.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterRatesChain.h
index 30795c927559520c548437ff6db3ae18b93d6fa7..474b0e78e93c64d65c0d1cbb621fe98d9f91f4a3 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterRatesChain.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterRatesChain.h
@@ -31,13 +31,13 @@ namespace TrigCostRootAnalysis {
    */
   class CounterRatesChain: public CounterBaseRates {
   public:
-    CounterRatesChain(const TrigCostData* _costData, const std::string& _name, Int_t _ID, UInt_t _detailLevel = 10,
-                      MonitorBase* _parent = 0);
+    CounterRatesChain(const TrigCostData* costData, const std::string& name, Int_t ID, UInt_t detailLevel = 10,
+                      MonitorBase* parent = 0);
     ~CounterRatesChain();
-    void debug(UInt_t _e);
+    void debug(UInt_t e);
 
-    Float_t runDirect(Bool_t _usePrescale = kTRUE);
-    Double_t runWeight(Bool_t _includeExpress = kFALSE);
+    Float_t runDirect(Bool_t usePrescale = kTRUE);
+    Double_t runWeight(Bool_t includeExpress = kFALSE);
   private:
   }; //class CounterRatesChain
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterRatesIntersection.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterRatesIntersection.h
index dc9454a279ae9ebc3388d23b4da6fb76f212df33..76b53384041b99be05ba975bdf026b35f41c3282 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterRatesIntersection.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterRatesIntersection.h
@@ -31,13 +31,13 @@ namespace TrigCostRootAnalysis {
    */
   class CounterRatesIntersection: public CounterBaseRates {
   public:
-    CounterRatesIntersection(const TrigCostData* _costData, const std::string& _name, Int_t _ID,
-                             UInt_t _detailLevel = 10, MonitorBase* _parent = 0);
+    CounterRatesIntersection(const TrigCostData* costData, const std::string& name, Int_t ID,
+                             UInt_t detailLevel = 10, MonitorBase* parent = 0);
     ~CounterRatesIntersection();
-    void debug(UInt_t _e);
+    void debug(UInt_t e);
 
-    Float_t runDirect(Bool_t _usePrescale = kTRUE);
-    Double_t runWeight(Bool_t _includeExpress = kFALSE);
+    Float_t runDirect(Bool_t usePrescale = kTRUE);
+    Double_t runWeight(Bool_t includeExpress = kFALSE);
   private:
     void removeRedundancies();
 
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterRatesUnion.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterRatesUnion.h
index f01de29d2ba7f10cdc74f0103430cdb5f66a7b3c..c9e330fe873f28d3dbf4090220fe70745b321e16 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterRatesUnion.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterRatesUnion.h
@@ -46,21 +46,21 @@ namespace TrigCostRootAnalysis {
    */
   class CounterRatesUnion: public CounterBaseRates {
   public:
-    CounterRatesUnion(const TrigCostData* _costData, const std::string& _name, Int_t _ID, UInt_t _detailLevel = 10,
-                      MonitorBase* _parent = 0);
+    CounterRatesUnion(const TrigCostData* costData, const std::string& name, Int_t ID, UInt_t detailLevel = 10,
+                      MonitorBase* parent = 0);
     ~CounterRatesUnion();
-    void debug(UInt_t _e);
+    void debug(UInt_t e);
 
     void finalise();
-    Float_t runDirect(Bool_t _usePrescale = kTRUE);
-    Double_t runWeight(Bool_t _includeExpress = kFALSE);
+    Float_t runDirect(Bool_t usePrescale = kTRUE);
+    Double_t runWeight(Bool_t includeExpress = kFALSE);
   protected:
     void classify();
     Double_t runWeight_OnlyL1();
-    Double_t runWeight_AllToAll(Bool_t _includeExpress = kFALSE);
-    Double_t runWeight_AllOneToOne(Bool_t _includeExpress = kFALSE);
-    Double_t runWeight_AllOneToMany(Bool_t _includeExpress = kFALSE);
-    Double_t runWeight_ManyToMany(Bool_t _includeExpress = kFALSE);
+    Double_t runWeight_AllToAll(Bool_t includeExpress = kFALSE);
+    Double_t runWeight_AllOneToOne(Bool_t includeExpress = kFALSE);
+    Double_t runWeight_AllOneToMany(Bool_t includeExpress = kFALSE);
+    Double_t runWeight_ManyToMany(Bool_t includeExpress = kFALSE);
 
     CombinationClassification m_combinationClassification; //!< Hold the classified topology of the set of chains in
                                                            // this Union.
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterSequence.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterSequence.h
index d2f9ba4a49a9e430d82b0b8f1586e2961720108d..e6b28432dcd13454f39f4420a197943051ab6acc 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterSequence.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterSequence.h
@@ -32,15 +32,15 @@ namespace TrigCostRootAnalysis {
    */
   class CounterSequence: public CounterBase {
   public:
-    CounterSequence(const TrigCostData* _costData, const std::string& _name, Int_t _ID, UInt_t _detailLevel = 10,
-                    MonitorBase* _parent = 0);
+    CounterSequence(const TrigCostData* costData, const std::string& name, Int_t ID, UInt_t detailLevel = 10,
+                    MonitorBase* parent = 0);
     ~CounterSequence();
     void startEvent();
-    void processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight = 1.);
-    void endEvent(Float_t _weight = 1.);
-    void debug(UInt_t _e);
+    void processEventCounter(UInt_t e, UInt_t f, Float_t weight = 1.);
+    void endEvent(Float_t weight = 1.);
+    void debug(UInt_t e);
   private:
-    Double_t getPrescaleFactor(UInt_t _e = INT_MAX);
+    Double_t getPrescaleFactor(UInt_t e = INT_MAX);
 
     static Float_t s_eventTimeExecute; //!< Global static tabulator of the total time for all sequences in an event.
 
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterSliceCPU.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterSliceCPU.h
index 9bdcc3539d56fd9ef39452af59d70724089c4792..5f9f97bc0358576b517c0b8797f062bb3690b91f 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterSliceCPU.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/CounterSliceCPU.h
@@ -30,14 +30,14 @@ namespace TrigCostRootAnalysis {
    */
   class CounterSliceCPU: public CounterBase {
   public:
-    CounterSliceCPU(const TrigCostData* _costData, const std::string& _name, Int_t _ID, UInt_t _detailLevel = 10,
-                    MonitorBase* _parent = 0);
+    CounterSliceCPU(const TrigCostData* costData, const std::string& name, Int_t ID, UInt_t detailLevel = 10,
+                    MonitorBase* parent = 0);
     ~CounterSliceCPU();
     void startEvent();
-    void processEventCounter(UInt_t _e, UInt_t _f, Float_t _weight = 1.);
-    void endEvent(Float_t _weight = 1);
+    void processEventCounter(UInt_t e, UInt_t f, Float_t weight = 1.);
+    void endEvent(Float_t weight = 1);
   private:
-    Double_t getPrescaleFactor(UInt_t _e = INT_MAX);
+    Double_t getPrescaleFactor(UInt_t e = INT_MAX);
   }; //class CounterSliceCPU
 } // namespace TrigCostRootAnalysis
 
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/DataStore.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/DataStore.h
index 09794f5718fcf936c89f4c71c7f330102ed112f0..58f0ae068d311b1fc9f3edf15d27fa07cff52242 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/DataStore.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/DataStore.h
@@ -47,36 +47,36 @@ namespace TrigCostRootAnalysis {
 
   class DataStore {
   public:
-    DataStore(CounterBase* _parent = 0);
+    DataStore(CounterBase* parent = 0);
     ~DataStore();
-    DataStore& newVariable(ConfKey_t _name);
-    void setSaveMode(ConfKey_t, VariableOption_t _vo, std::string _title = "");
-    DataStore& setSavePerCall(std::string _title = "");
-    DataStore& setSavePerEvent(std::string _title = "");
-    DataStore& setSavePerPeriod(std::string _title = "");
-    DataStore& setSavePerEventFraction(std::string _title = "");
-    void setHistogramming(Bool_t _histogrammingEnabled = kTRUE);
-    void setBinLabels(ConfKey_t _name, VariableOption_t _vo, std::vector<std::string> _titles);
+    DataStore& newVariable(ConfKey_t name);
+    void setSaveMode(ConfKey_t, VariableOption_t vo, std::string title = "");
+    DataStore& setSavePerCall(std::string title = "");
+    DataStore& setSavePerEvent(std::string title = "");
+    DataStore& setSavePerPeriod(std::string title = "");
+    DataStore& setSavePerEventFraction(std::string title = "");
+    void setHistogramming(Bool_t histogrammingEnabled = kTRUE);
+    void setBinLabels(ConfKey_t name, VariableOption_t vo, std::vector<std::string> titles);
     void endEvent();
-    void setVariableDenominator(ConfKey_t _name, Float_t _denominator);
-    void store(ConfKey_t _name, Float_t _value, Float_t _weight = 1.);
-    Float_t getValue(ConfKey_t _name, VariableOption_t _vo) const;
-    Bool_t getValueExists(ConfKey_t _name, VariableOption_t _vo) const;
-    Float_t getValueError(ConfKey_t _name, VariableOption_t _vo) const;
-    Int_t getEntries(ConfKey_t _name, VariableOption_t _vo) const;
-    void setValue(ConfKey_t _name, VariableOption_t _vo, Float_t _val);
-    void setEntries(ConfKey_t _name, VariableOption_t _vo, UInt_t _val);
-    void setErrorSquared(ConfKey_t _name, VariableOption_t _vo, Float_t _val);
-    TH1F* getHist(ConfKey_t _name, VariableOption_t _vo, Bool_t _silent = kFALSE);
-    void setHist(ConfKey_t _name, VariableOption_t _vo, TH1F* _hist);
-    // TH2F* getHist2D(ConfKey_t _name, VariableOption_t _vo);
+    void setVariableDenominator(ConfKey_t name, Float_t denominator);
+    void store(ConfKey_t name, Float_t value, Float_t weight = 1.);
+    Float_t getValue(ConfKey_t name, VariableOption_t vo) const;
+    Bool_t getValueExists(ConfKey_t name, VariableOption_t vo) const;
+    Float_t getValueError(ConfKey_t name, VariableOption_t vo) const;
+    Int_t getEntries(ConfKey_t name, VariableOption_t vo) const;
+    void setValue(ConfKey_t name, VariableOption_t vo, Float_t val);
+    void setEntries(ConfKey_t name, VariableOption_t vo, UInt_t val);
+    void setErrorSquared(ConfKey_t name, VariableOption_t vo, Float_t val);
+    TH1F* getHist(ConfKey_t name, VariableOption_t vo, Bool_t silent = kFALSE);
+    void setHist(ConfKey_t name, VariableOption_t vo, TH1F* hist);
+    // TH2F* getHist2D(ConfKey_t name, VariableOption_t vo);
     Bool_t getHistogramming() const {return m_histogrammingEnabled;}
     CounterBase* getParent() const {return m_parent;}
     VariableOptionVector_t getAllHistograms();
     const std::string& getNameOfMostRecentCall() const;
   private:
-    Bool_t checkRegistered(ConfKey_t _name, Bool_t _silent = kFALSE) const;
-    DataStore& setSaveInternal(VariableOption_t _vo, std::string& _title, ConfKey_t _name = kBlankString);
+    Bool_t checkRegistered(ConfKey_t name, Bool_t silent = kFALSE) const;
+    DataStore& setSaveInternal(VariableOption_t vo, std::string& title, ConfKey_t name = kBlankString);
     Bool_t m_histogrammingEnabled; //!< If histograming is to be unsed on newly created VariableOptions. Designed to be
                                    // toggled on and off.
     mutable DataVariable* m_mostRecent; //!< Pointer to most recently created/modified variable, used with the chaining
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/DataVariable.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/DataVariable.h
index ef1a13f0e520d33d5d80cf97f602bcdf22dcb3a9..50b8f035055c8b729082d4ab8e00f7da7d562129 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/DataVariable.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/DataVariable.h
@@ -31,25 +31,25 @@ namespace TrigCostRootAnalysis {
    */
   class DataVariable {
   public:
-    DataVariable(DataStore* _parent);
+    DataVariable(DataStore* parent);
     ~DataVariable();
-    void registerSaveState(VariableOption_t _vo, std::string& _title);
-    void store(Float_t _value, Float_t _weight = 1.);
-    void setVariableDenominator(Float_t _denominator);
-    void setBinLabels(VariableOption_t _vo, std::vector<std::string> _titles);
+    void registerSaveState(VariableOption_t vo, std::string& title);
+    void store(Float_t value, Float_t weight = 1.);
+    void setVariableDenominator(Float_t denominator);
+    void setBinLabels(VariableOption_t vo, std::vector<std::string> titles);
     void endEvent();
     void endPeriod();
-    Float_t getValue(VariableOption_t _vo) const;
-    Bool_t getValueExists(VariableOption_t _vo) const;
-    Float_t getValueError(VariableOption_t _vo) const;
-    Int_t getEntries(VariableOption_t _vo) const;
-    void setValue(VariableOption_t _vo, Float_t _val);
-    void setEntries(VariableOption_t _vo, UInt_t _val);
-    void setErrorSquared(VariableOption_t _vo, Float_t _val);
-    TH1F* getHist(VariableOption_t _vo, Bool_t _silent = kFALSE);
-    std::string* getHistTitle(VariableOption_t _vo) const;
-    void setHist(VariableOption_t _vo, TH1F* _hist);
-    // TH2F* getHist2D(VariableOption_t _vo);
+    Float_t getValue(VariableOption_t vo) const;
+    Bool_t getValueExists(VariableOption_t vo) const;
+    Float_t getValueError(VariableOption_t vo) const;
+    Int_t getEntries(VariableOption_t vo) const;
+    void setValue(VariableOption_t vo, Float_t val);
+    void setEntries(VariableOption_t vo, UInt_t val);
+    void setErrorSquared(VariableOption_t vo, Float_t val);
+    TH1F* getHist(VariableOption_t vo, Bool_t silent = kFALSE);
+    std::string* getHistTitle(VariableOption_t vo) const;
+    void setHist(VariableOption_t vo, TH1F* hist);
+    // TH2F* getHist2D(VariableOption_t vo);
 
     static UInt_t s_globalHistId;
   private:
@@ -76,13 +76,13 @@ namespace TrigCostRootAnalysis {
       ~Data();
     };
 
-    void makeHist(Data* _data);
-    void dataSave(Data* _data, Float_t _value, Float_t _weight);
-    void dataBuffer(Data* _data, Float_t _value, Float_t _weight);
-    void dataSaveBuffer(Data* _data);
-    void dataSaveFractionBuffer(Data* _data);
-    Bool_t checkRegistered(VariableOption_t _vo, Bool_t _silent = kFALSE) const;
-    DataVariable::Data* getData(VariableOption_t _vo);
+    void makeHist(Data* data);
+    void dataSave(Data* data, Float_t value, Float_t weight);
+    void dataBuffer(Data* data, Float_t value, Float_t weight);
+    void dataSaveBuffer(Data* data);
+    void dataSaveFractionBuffer(Data* data);
+    Bool_t checkRegistered(VariableOption_t vo, Bool_t silent = kFALSE) const;
+    DataVariable::Data* getData(VariableOption_t vo);
 
     std::map< VariableOption_t, Data* > m_dataMap; //!< Map of Data structs for each option
     DataStore* m_parentDataStore; //!< Pointer to my parent, used mostly for debug
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/EnergyExtrapolation.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/EnergyExtrapolation.h
index 56abf907e141824f9b794ef44600eeb13b81846b..3f5332227979d5ea9648c134e066f98aae0d113e 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/EnergyExtrapolation.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/EnergyExtrapolation.h
@@ -24,11 +24,11 @@ namespace TrigCostRootAnalysis {
   class EnergyExtrapolation {
   public:
     static EnergyExtrapolation& energyExtrapolation(); //!< Use this method to get the singleton
-    Float_t getEventWeight(const TrigCostData* _costData);
+    Float_t getEventWeight(const TrigCostData* costData);
   private:
     void load8To13();
     void loadMenuV5();
-    Float_t eval(Float_t _x);
+    Float_t eval(Float_t x);
 
     /**
      * Private constructor.
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/LumiCollector.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/LumiCollector.h
index 98a60d80898fda307208d73775a5cf69417c3041..9d662bb811f2a5320a2acd19ef47a3f3ad490e2c 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/LumiCollector.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/LumiCollector.h
@@ -29,8 +29,8 @@ namespace TrigCostRootAnalysis {
     LumiCollector();
     ~LumiCollector();
 
-    void recordEventLumi(Int_t _lumiBlock, Float_t _length);
-    Float_t getLumiBlockTime(Int_t _lumiBlock);
+    void recordEventLumi(Int_t lumiBlock, Float_t length);
+    Float_t getLumiBlockTime(Int_t lumiBlock);
     Float_t getTotalLumiBlockTime();
     UInt_t getNLumiBlocks();
     void saveOutput();
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithm.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithm.h
index 933673d63eaeca2d8467e915008adca1029afc47..29b975c521fcb56f6be926767158e0a63544becc 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithm.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithm.h
@@ -29,10 +29,10 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorAlgorithm: public MonitorBase, public MonitorAlgorithmCommon {
   public:
-    MonitorAlgorithm(const TrigCostData* _costData);
-    void newEvent(Float_t _weight = 1.);
-    CounterBase* newCounter(const std::string& _name, Int_t _ID);
-    Bool_t getIfActive(ConfKey_t _mode);
+    MonitorAlgorithm(const TrigCostData* costData);
+    void newEvent(Float_t weight = 1.);
+    CounterBase* newCounter(const std::string& name, Int_t ID);
+    Bool_t getIfActive(ConfKey_t mode);
     void saveOutput();
   }; //class MonitorAlgorithm
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithmChain.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithmChain.h
index 1ba293fe9ce324863ac3e410ea42cadb6354dcf2..37a1b6613ced906a965471ce6fcc6978d3b472e3 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithmChain.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithmChain.h
@@ -29,10 +29,10 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorAlgorithmChain: public MonitorBase, public MonitorAlgorithmCommon {
   public:
-    MonitorAlgorithmChain(const TrigCostData* _costData);
-    void newEvent(Float_t _weight = 1.);
-    CounterBase* newCounter(const std::string& _name, Int_t _ID);
-    Bool_t getIfActive(ConfKey_t _mode);
+    MonitorAlgorithmChain(const TrigCostData* costData);
+    void newEvent(Float_t weight = 1.);
+    CounterBase* newCounter(const std::string& name, Int_t ID);
+    Bool_t getIfActive(ConfKey_t mode);
     void saveOutput();
   }; //class MonitorAlgorithmChain
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithmClass.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithmClass.h
index 78878de8dd1970c7dc1a96f194be69200e7982f1..3866745979deae91b3adaab181bfc94d13390b9a 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithmClass.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithmClass.h
@@ -29,10 +29,10 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorAlgorithmClass: public MonitorBase, public MonitorAlgorithmCommon {
   public:
-    MonitorAlgorithmClass(const TrigCostData* _costData);
-    void newEvent(Float_t _weight = 1.);
-    CounterBase* newCounter(const std::string& _name, Int_t _ID);
-    Bool_t getIfActive(ConfKey_t _mode);
+    MonitorAlgorithmClass(const TrigCostData* costData);
+    void newEvent(Float_t weight = 1.);
+    CounterBase* newCounter(const std::string& name, Int_t ID);
+    Bool_t getIfActive(ConfKey_t mode);
     void saveOutput();
   }; //class MonitorAlgorithmClass
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithmCommon.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithmCommon.h
index c90e8cf5283f8576c7ecf5a66f2dcf5528f99231..2be5026f7cf5d7a727bce5073da03d291bdba41d 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithmCommon.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithmCommon.h
@@ -28,19 +28,19 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorAlgorithmCommon {
   public:
-    static void getAllAlgsInEvent(UInt_t _level, const TrigCostData* _costData);
+    static void getAllAlgsInEvent(UInt_t level, const TrigCostData* costData);
   protected:
-    void addCommonTableEntries(std::vector<MonitorBase::TableColumnFormatter>& _toSaveTable);
+    void addCommonTableEntries(std::vector<MonitorBase::TableColumnFormatter>& toSaveTable);
 
     struct AlgsInEvent {
-      AlgsInEvent(const std::string& _algName,
-                  const std::string& _algClassName,
-                  const std::string& _seqName,
-                  const std::string& _chainName,
-                  const std::string& _chainGroup,
-                  Int_t _algNameID,
-                  Int_t _seqD3PDIndex,
-                  Int_t _algD3PDIndex);
+      AlgsInEvent(const std::string& algName,
+                  const std::string& algClassName,
+                  const std::string& seqName,
+                  const std::string& chainName,
+                  const std::string& chainGroup,
+                  Int_t algNameID,
+                  Int_t seqD3PDIndex,
+                  Int_t algD3PDIndex);
       std::string m_algName; //!< Buffered algorithm name
       std::string m_algClassName; //!< Buffered algorithm class name
       std::string m_seqName; //!< Buffered algorithm sequence name
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithmSequence.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithmSequence.h
index f39833ab4341b694f47618747c8e3bc43a9de030..7c3c6ce7d2c66ad1adc373f4976bc4aa39e2e96d 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithmSequence.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorAlgorithmSequence.h
@@ -29,10 +29,10 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorAlgorithmSequence: public MonitorBase, public MonitorAlgorithmCommon {
   public:
-    MonitorAlgorithmSequence(const TrigCostData* _costData);
-    void newEvent(Float_t _weight = 1.);
-    CounterBase* newCounter(const std::string& _name, Int_t _ID);
-    Bool_t getIfActive(ConfKey_t _mode);
+    MonitorAlgorithmSequence(const TrigCostData* costData);
+    void newEvent(Float_t weight = 1.);
+    CounterBase* newCounter(const std::string& name, Int_t ID);
+    Bool_t getIfActive(ConfKey_t mode);
     void saveOutput();
   }; //class MonitorAlgorithmSequence
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorBase.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorBase.h
index 9642f2ae6eccc4932826af486b26ee9e511255ef..eb0b8373475845937c55a52a0a3c703878beb243 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorBase.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorBase.h
@@ -41,51 +41,51 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorBase {
   public:
-    MonitorBase(const TrigCostData* _costData, std::string _name);
+    MonitorBase(const TrigCostData* costData, std::string name);
     virtual ~MonitorBase();
-    virtual void newEvent(Float_t _weight = 1.) = 0;
-    virtual Bool_t getIfActive(ConfKey_t _mode);
+    virtual void newEvent(Float_t weight = 1.) = 0;
+    virtual Bool_t getIfActive(ConfKey_t mode);
     virtual void saveOutput();
     virtual Int_t getNCollectionsToProcess();
     virtual Bool_t isThreadable();
     const std::string& getName();
     UInt_t getLevel();
     const std::string& getLevelStr();
-    void setName(const std::string& _name);
-    void setLevel(UInt_t _l);
-    Bool_t doesCounterCollectionExist(const std::string& _identifier);
-    CounterMap_t* getCounterCollection(const std::string& _identifier, const ConfKey_t _type);
+    void setName(const std::string& name);
+    void setLevel(UInt_t l);
+    Bool_t doesCounterCollectionExist(const std::string& identifier);
+    CounterMap_t* getCounterCollection(const std::string& identifier, const ConfKey_t type);
     std::vector<std::string> getCounterCollectionKeys() const;
     ConfKey_t getCounterCollectionType(const std::string& identifier);
     UInt_t getNCounters();
-    void setPass(UInt_t _pass);
+    void setPass(UInt_t pass);
     UInt_t getPass();
 
     std::vector<std::string> getRanges();
     CounterCollection_t* getAllCounterCollections();
 
     struct TableColumnFormatter {
-      TableColumnFormatter(const std::string& _title,
-                           const std::string& _tooltip,
-                           ConfKey_t _dataVarialbe,
-                           VariableOption_t _vo,
-                           UInt_t _precision = 4,
-                           FormatterOption_t _fo = kFormatOptionNone);
-      TableColumnFormatter(const std::string& _title,
-                           const std::string& _tooltip,
-                           ConfKey_t _dataVarialbeNominator,
-                           VariableOption_t _voNominator,
-                           ConfKey_t _dataVarialbeDenominator,
-                           VariableOption_t _voDenominator,
-                           UInt_t _precision = 4,
-                           FormatterOption_t _fo = kFormatOptionNone);
-      TableColumnFormatter(const std::string& _title,
-                           const std::string& _tooltip,
-                           Float_t(*_functionPtr)(CounterMap_t*, CounterBase*),
-                           UInt_t _precision);
-      TableColumnFormatter(const std::string& _title,
-                           const std::string& _tooltip,
-                           std::string(*_functionPtr)(CounterMap_t*, CounterBase*));
+      TableColumnFormatter(const std::string& title,
+                           const std::string& tooltip,
+                           ConfKey_t dataVarialbe,
+                           VariableOption_t vo,
+                           UInt_t precision = 4,
+                           FormatterOption_t fo = kFormatOptionNone);
+      TableColumnFormatter(const std::string& title,
+                           const std::string& tooltip,
+                           ConfKey_t dataVarialbeNominator,
+                           VariableOption_t voNominator,
+                           ConfKey_t dataVarialbeDenominator,
+                           VariableOption_t voDenominator,
+                           UInt_t precision = 4,
+                           FormatterOption_t fo = kFormatOptionNone);
+      TableColumnFormatter(const std::string& title,
+                           const std::string& tooltip,
+                           Float_t(*functionPtr)(CounterMap_t*, CounterBase*),
+                           UInt_t precision);
+      TableColumnFormatter(const std::string& title,
+                           const std::string& tooltip,
+                           std::string(*functionPtr)(CounterMap_t*, CounterBase*));
       mutable std::string m_columnName; //!< The name of the column, mutable as this may need to be cleaned of illegal
                                         // characters
       mutable std::string m_tooltip; //!< The hover tooltip for the column, mutable as this may need to be cleaned of
@@ -107,28 +107,28 @@ namespace TrigCostRootAnalysis {
     };
   protected:
     const TrigCostData* m_costData; //!< Source of all data
-    virtual CounterBase* newCounter(const std::string& _name, Int_t _ID) = 0;
-    std::string constructPlotName(CounterBase* _counter, ConfVariableOptionPair_t _variable);
-    CounterBase* getCounter(CounterMap_t* _counterMap, const std::string& _name, Int_t _ID);
-    CounterBase* addCounter(CounterMap_t* _counterMap, const std::string& _name, Int_t _ID);
+    virtual CounterBase* newCounter(const std::string& name, Int_t ID) = 0;
+    std::string constructPlotName(CounterBase* counter, ConfVariableOptionPair_t variable);
+    CounterBase* getCounter(CounterMap_t* counterMap, const std::string& name, Int_t ID);
+    CounterBase* addCounter(CounterMap_t* counterMap, const std::string& name, Int_t ID);
     void collateCounterCollectionsForEvent();
-    void addToCollectionsToProcess(const std::string& _name, UInt_t _lumiBlockNumber, Float_t _lumiLength,
-                                   const ConfKey_t _type);
-    void recordLumi(const std::string& _name, UInt_t _lumiBlockNumber, Float_t _lumiLength);
-    void sharedHistogramOutputRoutine(VariableOptionVector_t& _toSave);
-    void sharedTableOutputRoutine(const std::vector<TableColumnFormatter>& _toSave);
-    void outputTableRow(CounterBase* _TCCB, std::ofstream& _fout, const std::vector<TableColumnFormatter>& _toSave,
-                        CounterMap_t* _counterMap, std::string& _counterCollectionName);
-    void setDetailLevel(UInt_t _detailLevel);
+    void addToCollectionsToProcess(const std::string& name, UInt_t lumiBlockNumber, Float_t lumiLength,
+                                   const ConfKey_t type);
+    void recordLumi(const std::string& name, UInt_t lumiBlockNumber, Float_t lumiLength);
+    void sharedHistogramOutputRoutine(VariableOptionVector_t& toSave);
+    void sharedTableOutputRoutine(const std::vector<TableColumnFormatter>& toSave);
+    void outputTableRow(CounterBase* TCCB, std::ofstream& fout, const std::vector<TableColumnFormatter>& toSave,
+                        CounterMap_t* counterMap, std::string& counterCollectionName);
+    void setDetailLevel(UInt_t detailLevel);
     void allowSameNamedCounters();
     void allowSameIDCounters();
-    void filterOutputOnStrDecoration(ConfKey_t _decoration, const std::string _value);
-    void startEvent(CounterMap_t* _counters = 0);
-    void endEvent(Float_t _weight = 1.);
+    void filterOutputOnStrDecoration(ConfKey_t decoration, const std::string value);
+    void startEvent(CounterMap_t* counters = 0);
+    void endEvent(Float_t weight = 1.);
     void enableROOTMsg();
     void disableROOTMsg();
-    void checkForIllegalCharacters(std::string& _toClean, Bool_t _checkComma = kTRUE, Bool_t _checkApostrophe = kTRUE,
-                                   Bool_t _checkColon = kTRUE);
+    void checkForIllegalCharacters(std::string& toClean, Bool_t checkComma = kTRUE, Bool_t checkApostrophe = kTRUE,
+                                   Bool_t checkColon = kTRUE);
 
     std::string m_name; //<! Name of this monitor, for use in output.
     UInt_t m_level; //<! Level of monitor (2 or 3)
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorChain.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorChain.h
index fbf6b8310b3ba4bc84935000ddf73755cc6a8847..c65a60d297836049c0a3ef57eabd76328047b340 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorChain.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorChain.h
@@ -29,10 +29,10 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorChain: public MonitorBase {
   public:
-    MonitorChain(const TrigCostData* _costData);
-    void newEvent(Float_t _weight = 1.);
-    CounterBase* newCounter(const std::string& _name, Int_t _ID);
-    Bool_t getIfActive(ConfKey_t _mode);
+    MonitorChain(const TrigCostData* costData);
+    void newEvent(Float_t weight = 1.);
+    CounterBase* newCounter(const std::string& name, Int_t ID);
+    Bool_t getIfActive(ConfKey_t mode);
     void saveOutput();
   }; //class MonitorChain
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorEventProfile.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorEventProfile.h
index ff1dc40035838fc8c17ba200afeec745f9ab83c7..e99b46d4736b78908e5bcee15821cd5f6177db96 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorEventProfile.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorEventProfile.h
@@ -29,10 +29,10 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorEventProfile: public MonitorBase {
   public:
-    MonitorEventProfile(const TrigCostData* _costData);
-    void newEvent(Float_t _weight = 1.);
-    CounterBase* newCounter(const std::string& _name, Int_t _ID);
-    Bool_t getIfActive(ConfKey_t _mode);
+    MonitorEventProfile(const TrigCostData* costData);
+    void newEvent(Float_t weight = 1.);
+    CounterBase* newCounter(const std::string& name, Int_t ID);
+    Bool_t getIfActive(ConfKey_t mode);
     void saveOutput();
   private:
     StringStringMap_t m_AlgToEventProfile; //!< Which algorithm names should be linked to monitored event types.
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorFullEvent.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorFullEvent.h
index af0de6dfc86c4a29c7abaa7ba8a0d3d8b9b83d46..72e45174caeca9d8bdb8a89458f7d40b67eae881 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorFullEvent.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorFullEvent.h
@@ -31,10 +31,10 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorFullEvent: public MonitorBase {
   public:
-    MonitorFullEvent(const TrigCostData* _costData);
-    void newEvent(Float_t _weight = 1.);
-    CounterBase* newCounter(const std::string& _name, Int_t _ID);
-    Bool_t getIfActive(ConfKey_t _mode);
+    MonitorFullEvent(const TrigCostData* costData);
+    void newEvent(Float_t weight = 1.);
+    CounterBase* newCounter(const std::string& name, Int_t ID);
+    Bool_t getIfActive(ConfKey_t mode);
     void saveOutput();
     Int_t getNCollectionsToProcess();
     Bool_t isThreadable();
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorGlobals.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorGlobals.h
index 5d6badfe9fdc21b1ba9a482ad07f98e6470618a4..5a41c0eb265e99c9b8610ddf48933fd1bd4ad47c 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorGlobals.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorGlobals.h
@@ -29,10 +29,10 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorGlobals: public MonitorBase {
   public:
-    MonitorGlobals(const TrigCostData* _costData);
-    void newEvent(Float_t _weight = 1.);
-    CounterBase* newCounter(const std::string& _name, Int_t _ID);
-    Bool_t getIfActive(ConfKey_t _mode);
+    MonitorGlobals(const TrigCostData* costData);
+    void newEvent(Float_t weight = 1.);
+    CounterBase* newCounter(const std::string& name, Int_t ID);
+    Bool_t getIfActive(ConfKey_t mode);
     void saveOutput();
   }; //class MonitorGlobals
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROBIN.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROBIN.h
index e2445332b0920e7604aeff088475a2cd2102974d..27a1775104ff5b1158c6d0425ba38ffc1490ad7a 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROBIN.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROBIN.h
@@ -30,13 +30,13 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorROBIN: public MonitorBase, public MonitorROSCommon {
   public:
-    // StringIntSetMap_t& getROBINMapping(UInt_t _robReq);
-    //static void collateROBINRequests(UInt_t _level, const TrigCostData* _costData);
+    // StringIntSetMap_t& getROBINMapping(UInt_t robReq);
+    //static void collateROBINRequests(UInt_t level, const TrigCostData* costData);
 
-    MonitorROBIN(const TrigCostData* _costData);
-    void newEvent(Float_t _weight = 1.);
-    CounterBase* newCounter(const std::string& _name, Int_t _ID);
-    Bool_t getIfActive(ConfKey_t _mode);
+    MonitorROBIN(const TrigCostData* costData);
+    void newEvent(Float_t weight = 1.);
+    CounterBase* newCounter(const std::string& name, Int_t ID);
+    Bool_t getIfActive(ConfKey_t mode);
     void saveOutput();
 
     /*
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROI.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROI.h
index 6360a3019a9fcd1c31f5059a314767fa20406377..9b4cbff3f4b32cd7cadd4a5431d36b92619b1020 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROI.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROI.h
@@ -29,10 +29,10 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorROI: public MonitorBase {
   public:
-    MonitorROI(const TrigCostData* _costData);
-    void newEvent(Float_t _weight = 1.);
-    CounterBase* newCounter(const std::string& _name, Int_t _ID);
-    Bool_t getIfActive(ConfKey_t _mode);
+    MonitorROI(const TrigCostData* costData);
+    void newEvent(Float_t weight = 1.);
+    CounterBase* newCounter(const std::string& name, Int_t ID);
+    Bool_t getIfActive(ConfKey_t mode);
     void saveOutput();
   }; //class MonitorROI
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROS.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROS.h
index bdfb71af6b1e920130110d2e4eddf70c159d233f..84a1870c0ac6229606a9119bd9acca4837a251f7 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROS.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROS.h
@@ -30,10 +30,10 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorROS: public MonitorBase, public MonitorROSCommon {
   public:
-    MonitorROS(const TrigCostData* _costData);
-    void newEvent(Float_t _weight = 1.);
-    CounterBase* newCounter(const std::string& _name, Int_t _ID);
-    Bool_t getIfActive(ConfKey_t _mode);
+    MonitorROS(const TrigCostData* costData);
+    void newEvent(Float_t weight = 1.);
+    CounterBase* newCounter(const std::string& name, Int_t ID);
+    Bool_t getIfActive(ConfKey_t mode);
     void saveOutput();
   private:
   }; //class MonitorROS
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROSAlgorithm.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROSAlgorithm.h
index 6cddf6f6d0107f2dbc8d4a1bb56ff56d6a5b7a6f..ee16d019c7be72e19cd2ae42ccc4ea12a3e1f932 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROSAlgorithm.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROSAlgorithm.h
@@ -30,10 +30,10 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorROSAlgorithm: public MonitorBase, public MonitorROSCommon {
   public:
-    MonitorROSAlgorithm(const TrigCostData* _costData);
-    void newEvent(Float_t _weight = 1.);
-    CounterBase* newCounter(const std::string& _name, Int_t _ID);
-    Bool_t getIfActive(ConfKey_t _mode);
+    MonitorROSAlgorithm(const TrigCostData* costData);
+    void newEvent(Float_t weight = 1.);
+    CounterBase* newCounter(const std::string& name, Int_t ID);
+    Bool_t getIfActive(ConfKey_t mode);
     void saveOutput();
   private:
   }; //class MonitorROSAlgorithm
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROSChain.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROSChain.h
index 125983626a66e43aeb9bcd08d43bd15f21459403..262604b1ae22cd9fa059671bc4b6fb4a242315a2 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROSChain.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROSChain.h
@@ -30,10 +30,10 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorROSChain: public MonitorBase, public MonitorROSCommon {
   public:
-    MonitorROSChain(const TrigCostData* _costData);
-    void newEvent(Float_t _weight = 1.);
-    CounterBase* newCounter(const std::string& _name, Int_t _ID);
-    Bool_t getIfActive(ConfKey_t _mode);
+    MonitorROSChain(const TrigCostData* costData);
+    void newEvent(Float_t weight = 1.);
+    CounterBase* newCounter(const std::string& name, Int_t ID);
+    Bool_t getIfActive(ConfKey_t mode);
     void saveOutput();
   private:
   }; //class MonitorROSChain
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROSCommon.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROSCommon.h
index f292bac5af7b6637db18ab1c2061b1da6852c0bd..9a2610ba8a3090835d02af53b6b744e9c0c5dfa5 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROSCommon.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorROSCommon.h
@@ -25,12 +25,12 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorROSCommon {
   public:
-    StringIntSetMap_t& getROSMapping(UInt_t _robReq);
-    StringIntSetMap_t& getROBINMapping(UInt_t _robReq);
+    StringIntSetMap_t& getROSMapping(UInt_t robReq);
+    StringIntSetMap_t& getROBINMapping(UInt_t robReq);
 
-    static void collateROSRequests(UInt_t _level, const TrigCostData* _costData);
+    static void collateROSRequests(UInt_t level, const TrigCostData* costData);
   protected:
-    void addCommonTableEntries(std::vector<MonitorBase::TableColumnFormatter>& _toSaveTable);
+    void addCommonTableEntries(std::vector<MonitorBase::TableColumnFormatter>& toSaveTable);
 
     static Int_t m_eventNumber; //!< Static event number which is buffered
     static UInt_t m_level; //!< Static level which is buffered
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorRates.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorRates.h
index a6ebd6fea1c8618d6a39c44439b1c88da05c2bb7..d4bf5101825c82737b227e593f33efe202faea60 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorRates.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorRates.h
@@ -33,24 +33,24 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorRates: public MonitorBase {
   public:
-    MonitorRates(const TrigCostData* _costData);
+    MonitorRates(const TrigCostData* costData);
     ~MonitorRates();
-    void newEvent(Float_t _weight = 1.);
-    CounterBase* newCounter(const std::string& _name, Int_t _ID);
-    Bool_t getIfActive(ConfKey_t _mode);
+    void newEvent(Float_t weight = 1.);
+    CounterBase* newCounter(const std::string& name, Int_t ID);
+    Bool_t getIfActive(ConfKey_t mode);
     void saveOutput();
   private:
-    void populateCounterMap(CounterMap_t* _counterMap);
+    void populateCounterMap(CounterMap_t* counterMap);
     void populateChainItemMaps();
     void saveRateGraphs();
 
 
-    void createGlobalCounters(CounterMap_t* _counterMap);
-    void createL1Counters(CounterMap_t* _counterMap);
-    void createHLTCounters(CounterMap_t* _counterMap);
-    void createOverlapCounters(CounterMap_t* _counterMap);
-    void createCPSGroupCounters(CounterMap_t* _counterMap);
-    void createGroupCounters(CounterMap_t* _counterMap);
+    void createGlobalCounters(CounterMap_t* counterMap);
+    void createL1Counters(CounterMap_t* counterMap);
+    void createHLTCounters(CounterMap_t* counterMap);
+    void createOverlapCounters(CounterMap_t* counterMap);
+    void createCPSGroupCounters(CounterMap_t* counterMap);
+    void createGroupCounters(CounterMap_t* counterMap);
 
     CounterRatesUnion* m_globalRateHLTCounter;
     CounterRatesUnion* m_globalRateL1Counter;
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorRatesUpgrade.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorRatesUpgrade.h
index 8923ee9a91ed98dcb508b3d5b575247d7141b19e..fada014afb4f909bf103982ebbc7acde62ef4e62 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorRatesUpgrade.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorRatesUpgrade.h
@@ -85,95 +85,95 @@ namespace TrigCostRootAnalysis {
     Float_t MET() {return TMath::Sqrt((m_vX * m_vX) + (m_vY * m_vY));}
     Float_t MHT() {return TMath::Sqrt((m_vHX * m_vHX) + (m_vHY * m_vHY));}
     Float_t mu() {return m_mu;}
-    void set(Float_t _mu, Float_t _vX, Float_t _vY, Float_t _TE, Bool_t _ofX, Bool_t _ofY, Bool_t _ofTE) {
-      m_mu = _mu;
-      m_vX = _vX;
-      m_vY = _vY;
-      m_TE = _TE;
-      m_overflowMET = (_ofX | _ofY);
-      m_overflowTE = _ofTE;
+    void set(Float_t mu, Float_t vX, Float_t vY, Float_t TE, Bool_t ofX, Bool_t ofY, Bool_t ofTE) {
+      m_mu = mu;
+      m_vX = vX;
+      m_vY = vY;
+      m_TE = TE;
+      m_overflowMET = (ofX | ofY);
+      m_overflowTE = ofTE;
     }
 
     std::set<TOB>& TOBs() {return m_TOBs;}
-    void add(const TOB _tob) {
-      static bool _merge = Config::config().getInt(kUpgradeMergeTOBOverlap);
+    void add(const TOB tob) {
+      static bool merge = Config::config().getInt(kUpgradeMergeTOBOverlap);
 
-      if (_merge) {
-        checkMerge(_tob);
+      if (merge) {
+        checkMerge(tob);
       } else {
-        m_TOBs.insert(_tob);
+        m_TOBs.insert(tob);
       }
-      addToMHT(_tob); // merged or not - still count me in the HT if I'm a jet
+      addToMHT(tob); // merged or not - still count me in the HT if I'm a jet
     }
 
-    void checkMerge(const TOB& _tob) {
-      bool _canMerge = false, _merged = false;
-      Float_t _minDR = 0.4;
+    void checkMerge(const TOB& tob) {
+      bool canMerge = false, merged = false;
+      Float_t minDR = 0.4;
 
-      if (_tob.m_type == kEmString || _tob.m_type == kTauString || _tob.m_type == kJetString) {
-        _canMerge = true;
-        if (_tob.m_type == kJetString) _minDR = 0.6;
+      if (tob.m_type == kEmString || tob.m_type == kTauString || tob.m_type == kJetString) {
+        canMerge = true;
+        if (tob.m_type == kJetString) minDR = 0.6;
       }
 
-      if (_canMerge) {
-        for (auto& _myTob : m_TOBs) {
-          if (_tob.m_type != _myTob.m_type) continue;
-          if (_tob.m_iso != _myTob.m_iso) continue;
-          if (deltaR(_tob.m_phi, _myTob.m_phi, _tob.m_eta, _myTob.m_eta) > _minDR) continue;
+      if (canMerge) {
+        for (auto& myTob : m_TOBs) {
+          if (tob.m_type != myTob.m_type) continue;
+          if (tob.m_iso != myTob.m_iso) continue;
+          if (deltaR(tob.m_phi, myTob.m_phi, tob.m_eta, myTob.m_eta) > minDR) continue;
 
           // Same type, and close - merge
           // I solemnly swear that I won't touch the weak ordering
-          //TOB* _nonConstTOB = const_cast<TOB*>(&_myTob);
-          _myTob.m_et += _tob.m_et;
-          _myTob.m_etLarge += _tob.m_etLarge;
-          _merged = true;
+          //TOB* nonConstTOB = const_cast<TOB*>(&myTob);
+          myTob.m_et += tob.m_et;
+          myTob.m_etLarge += tob.m_etLarge;
+          merged = true;
           //if (Config::config().getDisplayMsg(kMsgTOBMerge) == kTRUE) Info("TOBAccumulator::checkMerge", "Merged %s
-          // TOBs", Config::config().getStr(_tob.m_type).c_str());
+          // TOBs", Config::config().getStr(tob.m_type).c_str());
           break;
         }
       }
 
-      if (!_merged) m_TOBs.insert(_tob);
+      if (!merged) m_TOBs.insert(tob);
     }
 
     std::string print() {
-      std::stringstream _ss;
-      for (const auto& _tob : TOBs()) {
-        std::bitset<5> _iso = _tob.m_iso;
-        _ss << "-- " << Config::config().getName(_tob.m_type) << "\tET:" << _tob.m_et
-            << "\tiso:" << _iso.to_string() << "\teta:" << _tob.m_eta << " \tphi:" << _tob.m_phi;
-        if (_tob.m_type == kJetString) _ss << "\tETLarge:" << _tob.m_etLarge;
-        _ss << std::endl;
+      std::stringstream ss;
+      for (const auto& tob : TOBs()) {
+        std::bitset<5> iso = tob.m_iso;
+        ss << "-- " << Config::config().getName(tob.m_type) << "\tET:" << tob.m_et
+            << "\tiso:" << iso.to_string() << "\teta:" << tob.m_eta << " \tphi:" << tob.m_phi;
+        if (tob.m_type == kJetString) ss << "\tETLarge:" << tob.m_etLarge;
+        ss << std::endl;
       }
-      return _ss.str();
+      return ss.str();
     }
 
     /**
      * Add another accumulator's TOBs and MET
      **/
-    void add(const TOBAccumulator* _b) {
-      for (auto& _tob : _b->m_TOBs) add(_tob);
-      m_mu += _b->m_mu;
-      m_vX += _b->m_vX;
-      m_vY += _b->m_vY;
-      m_TE += _b->m_TE;
-      m_overflowTE |= _b->m_overflowTE;
-      m_overflowMET |= _b->m_overflowMET;
+    void add(const TOBAccumulator* b) {
+      for (auto& tob : b->m_TOBs) add(tob);
+      m_mu += b->m_mu;
+      m_vX += b->m_vX;
+      m_vY += b->m_vY;
+      m_TE += b->m_TE;
+      m_overflowTE |= b->m_overflowTE;
+      m_overflowMET |= b->m_overflowMET;
     }
 
-    void addToMHT(const TOB& _tob) {
-      static Bool_t _largeJetWindow = Config::config().getInt(kUpgradeJetLargeWindow);
+    void addToMHT(const TOB& tob) {
+      static Bool_t largeJetWindow = Config::config().getInt(kUpgradeJetLargeWindow);
 
-      if (_tob.m_type != kJetString) return;
+      if (tob.m_type != kJetString) return;
 
-      if (TMath::Abs(_tob.m_eta) * 10 > 31) return; // eta too high
+      if (TMath::Abs(tob.m_eta) * 10 > 31) return; // eta too high
 
-      Float_t _et = _tob.m_et;
-      if (_largeJetWindow == kTRUE) _et = _tob.m_etLarge;
+      Float_t et = tob.m_et;
+      if (largeJetWindow == kTRUE) et = tob.m_etLarge;
       else Warning("TOBAccumulator::addMHT", "Using small jet window size - really?");
-      m_vHX += _et * TMath::Cos(_tob.m_phi);
-      m_vHY += _et * TMath::Sin(_tob.m_phi);
-      m_HT += _et;
+      m_vHX += et * TMath::Cos(tob.m_phi);
+      m_vHY += et * TMath::Sin(tob.m_phi);
+      m_HT += et;
     }
   };
 
@@ -201,34 +201,34 @@ namespace TrigCostRootAnalysis {
     std::vector<TriggerCondition> m_conditions; //!< Set of TriggerConditions. All of these must pass
   public:
     TriggerLogic() {}
-    void addCondition(std::string _name, UInt_t _multi, UInt_t _thresh, Int_t _iso, UInt_t _min, UInt_t _max) {
-      TriggerCondition _c;
-
-      if (_name == "MU") _c.m_type = kMuonString;
-      else if (_name == "EM") _c.m_type = kEmString;
-      else if (_name == "TAU") _c.m_type = kTauString;
-      else if (_name == "JET" || _name == "J") _c.m_type = kJetString;
-      else if (_name == "XE") _c.m_type = kMissingEnergyString;
-      else if (_name == "TE") _c.m_type = kEnergyString;
-      else if (_name == "MHT") _c.m_type = kMHTString;
-      else if (_name == "HT") _c.m_type = kHTString;
-      else Error("TriggerLogic::addAND", "Unknown TriggerCondition name %s", _name.c_str());
-      _c.m_multi = _multi;
-      _c.m_iso = _iso;
-      _c.m_thresh = _thresh;
-      _c.m_min = _min;
-      _c.m_max = _max;
-      m_conditions.push_back(_c);
+    void addCondition(std::string name, UInt_t multi, UInt_t thresh, Int_t iso, UInt_t min, UInt_t max) {
+      TriggerCondition c;
+
+      if (name == "MU") c.m_type = kMuonString;
+      else if (name == "EM") c.m_type = kEmString;
+      else if (name == "TAU") c.m_type = kTauString;
+      else if (name == "JET" || name == "J") c.m_type = kJetString;
+      else if (name == "XE") c.m_type = kMissingEnergyString;
+      else if (name == "TE") c.m_type = kEnergyString;
+      else if (name == "MHT") c.m_type = kMHTString;
+      else if (name == "HT") c.m_type = kHTString;
+      else Error("TriggerLogic::addAND", "Unknown TriggerCondition name %s", name.c_str());
+      c.m_multi = multi;
+      c.m_iso = iso;
+      c.m_thresh = thresh;
+      c.m_min = min;
+      c.m_max = max;
+      m_conditions.push_back(c);
     }
 
     std::string print() {
-      std::stringstream _ss;
-      for (const auto _tc : m_conditions) {
-        _ss << "[" << Config::config().getName(_tc.m_type) << " N:" << _tc.m_multi << " E>=" << _tc.m_thresh <<
-        " ISO:" << _tc.m_iso
-            << " etaMin:" << _tc.m_min << " etaMax:" << _tc.m_max << "]";
+      std::stringstream ss;
+      for (const auto tc : m_conditions) {
+        ss << "[" << Config::config().getName(tc.m_type) << " N:" << tc.m_multi << " E>=" << tc.m_thresh <<
+        " ISO:" << tc.m_iso
+            << " etaMin:" << tc.m_min << " etaMax:" << tc.m_max << "]";
       }
-      return _ss.str();
+      return ss.str();
     }
 
     const std::vector<TriggerCondition>& conditions() {return m_conditions;}
@@ -240,32 +240,32 @@ namespace TrigCostRootAnalysis {
    */
   struct ChainInfo {
     ChainInfo() = default;
-    ChainInfo(std::string _name) : m_name(_name) {}
-    ChainInfo(std::string _name, Int_t _level, TriggerLogic _logic, std::string _group, std::string _comment,
-              Double_t _weight0, Double_t _weight1) :
-      m_name(_name),
-      m_l2name(_name),
-      m_triggerLogic(_logic),
-      m_level(_level),
+    ChainInfo(std::string name) : m_name(name) {}
+    ChainInfo(std::string name, Int_t level, TriggerLogic logic, std::string group, std::string comment,
+              Double_t weight0, Double_t weight1) :
+      m_name(name),
+      m_l2name(name),
+      m_triggerLogic(logic),
+      m_level(level),
       m_lower(),
-      m_group(_group),
-      m_comment(_comment),
-      m_weight0(_weight0),
-      m_weight1(_weight1) {
+      m_group(group),
+      m_comment(comment),
+      m_weight0(weight0),
+      m_weight1(weight1) {
       m_l2name.replace(0, 2, "L2");
       m_ID = m_instances++;
     }; // For L1/L2
-    ChainInfo(std::string _name, Int_t _level, std::string _proxy, std::string _lower, std::string _comment,
-              Double_t _weight) :
-      m_name(_name),
+    ChainInfo(std::string name, Int_t level, std::string proxy, std::string lower, std::string comment,
+              Double_t weight) :
+      m_name(name),
       m_l2name(),
       m_triggerLogic(),
-      m_level(_level),
-      m_proxy(_proxy),
-      m_lower(_lower),
+      m_level(level),
+      m_proxy(proxy),
+      m_lower(lower),
       m_group(),
-      m_comment(_comment),
-      m_weight0(_weight),
+      m_comment(comment),
+      m_weight0(weight),
       m_weight1(0) {
       m_ID = m_instances++;
     }; // For HLT
@@ -295,26 +295,26 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorRatesUpgrade: public MonitorBase {
   public:
-    MonitorRatesUpgrade(const TrigCostData* _costData);
+    MonitorRatesUpgrade(const TrigCostData* costData);
     ~MonitorRatesUpgrade();
-    void newEvent(Float_t _weight = 1.);
-    CounterBase* newCounter(const std::string& _name, Int_t _ID);
-    Bool_t getIfActive(ConfKey_t _mode);
+    void newEvent(Float_t weight = 1.);
+    CounterBase* newCounter(const std::string& name, Int_t ID);
+    Bool_t getIfActive(ConfKey_t mode);
     void saveOutput();
     Float_t getCollidingBunchFactor() {return m_collidingBunchFactor;}
   private:
     void parseUpgradeXML();
-    void populateCounterMap(CounterMap_t* _counterMap);
+    void populateCounterMap(CounterMap_t* counterMap);
     void populateChainItemMaps();
     void saveRateGraphs();
 
-    void createGlobalCounters(CounterMap_t* _counterMap);
-    void createL1Counters(CounterMap_t* _counterMap);
-    void createL2Counters(CounterMap_t* _counterMap);
-    void createL3Counters(CounterMap_t* _counterMap);
+    void createGlobalCounters(CounterMap_t* counterMap);
+    void createL1Counters(CounterMap_t* counterMap);
+    void createL2Counters(CounterMap_t* counterMap);
+    void createL3Counters(CounterMap_t* counterMap);
 
     TOBAccumulator* getEventTOBs();
-    void validateTriggerEmulation(CounterMap_t* _counterMap, TOBAccumulator* _this, Bool_t _print);
+    void validateTriggerEmulation(CounterMap_t* counterMap, TOBAccumulator* thisAccum, Bool_t print);
     void printEnergyTOBs();
 
     std::string m_scenario; //<! What scenario XML to load
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorSequence.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorSequence.h
index bbcfc85a506c09c3d74d7ef9bc2d4f0d74c0fca9..9b87918485b80091a80e43283cb5794079f2d484 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorSequence.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorSequence.h
@@ -28,10 +28,10 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorSequence: public MonitorBase {
   public:
-    MonitorSequence(const TrigCostData* _costData);
-    void newEvent(Float_t _weight = 1.);
-    CounterBase* newCounter(const std::string& _name, Int_t _ID);
-    Bool_t getIfActive(ConfKey_t _mode);
+    MonitorSequence(const TrigCostData* costData);
+    void newEvent(Float_t weight = 1.);
+    CounterBase* newCounter(const std::string& name, Int_t ID);
+    Bool_t getIfActive(ConfKey_t mode);
     void saveOutput();
   }; //class MonitorSequence
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorSliceCPU.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorSliceCPU.h
index 2dd6f552d1ad54d5639c028c1a666f2f367d7425..854d55892828600963b6a6ef51d5c17255d32825 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorSliceCPU.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/MonitorSliceCPU.h
@@ -28,10 +28,10 @@ namespace TrigCostRootAnalysis {
    */
   class MonitorSliceCPU: public MonitorBase {
   public:
-    MonitorSliceCPU(const TrigCostData* _costData);
-    void newEvent(Float_t _weight = 1.);
-    CounterBase* newCounter(const std::string& _name, Int_t _ID);
-    Bool_t getIfActive(ConfKey_t _mode);
+    MonitorSliceCPU(const TrigCostData* costData);
+    void newEvent(Float_t weight = 1.);
+    CounterBase* newCounter(const std::string& name, Int_t ID);
+    Bool_t getIfActive(ConfKey_t mode);
     void saveOutput();
   }; //class MonitorSliceCPU
 } // namespace TrigCostRootAnalysis
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/ProcessEvent.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/ProcessEvent.h
index d7234c113fe7a3894e01f186b6ff4b0d60273fbb..3e83165a60fec209737aca23ae3869131764df38 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/ProcessEvent.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/ProcessEvent.h
@@ -35,21 +35,21 @@ namespace TrigCostRootAnalysis {
    */
   class ProcessEvent {
   public:
-    ProcessEvent(const TrigCostData* _costData, UInt_t _level, const std::string& _name);
+    ProcessEvent(const TrigCostData* costData, UInt_t level, const std::string& name);
     ~ProcessEvent();
-    void setMonitoringMode(ConfKey_t _type, Bool_t _isActive);
-    Bool_t newEvent(Float_t _weight = 1.);
+    void setMonitoringMode(ConfKey_t type, Bool_t isActive);
+    Bool_t newEvent(Float_t weight = 1.);
     const monitorMap_t& getMonitors();
-    MonitorBase* getMonitor(ConfKey_t _type);
+    MonitorBase* getMonitor(ConfKey_t type);
     void saveOutput();
-    void setLevel(UInt_t _level);
-    void setPass(UInt_t _pass);
+    void setLevel(UInt_t level);
+    void setPass(UInt_t pass);
     UInt_t getLevel();
     UInt_t getPass();
     const std::string& getLevelStr();
     const std::string& getName() {return m_name;}
   private:
-    static void newEventThreaded(MonitorBase* _monitor, Float_t _weight);
+    static void newEventThreaded(MonitorBase* monitor, Float_t weight);
 
     void (* m_threadFnPtr)(MonitorBase*, Float_t); //<! Pointer to my static run function - used to spawn threads
     const TrigCostData* m_costData; //!< Provider of my data
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/ROSConfService.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/ROSConfService.h
index 69924cc48c91ae74ecad3fa518702fe5c5d3c171..efa0505dbc21d571284c71047d6df1f927a4b739 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/ROSConfService.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/ROSConfService.h
@@ -28,8 +28,8 @@ namespace TrigCostRootAnalysis {
   public:
     static ROSConfService& rosConfService(); //!< Use this method to get the singleton
 
-    const std::string& getRobinNameFromId(UInt_t _Id);
-    const std::string& getRosNameFromFromRobinName(const std::string& _robinName);
+    const std::string& getRobinNameFromId(UInt_t Id);
+    const std::string& getRosNameFromFromRobinName(const std::string& robinName);
   private:
     void parseRosXml();
 
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/RatesCPSGroup.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/RatesCPSGroup.h
index 4018b7f8cd792c70eb2c22374f90202504ff2bfd..0a7919c89b67c5b5efdf827e2bcbeb5d1695bd39 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/RatesCPSGroup.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/RatesCPSGroup.h
@@ -26,11 +26,11 @@ namespace TrigCostRootAnalysis {
    */
   class RatesCPSGroup {
   public:
-    RatesCPSGroup(std::string _name);
+    RatesCPSGroup(std::string name);
     const std::string& getName();
 
 
-    void add(RatesChainItem* _item);
+    void add(RatesChainItem* item);
     void calculateCPSFactor();
 
     RatesChainItem* getL1();
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/RatesChainItem.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/RatesChainItem.h
index 90fb1ddce1d877050301b376812d043fd1ed928f..c8d978fb777d35d3165589eeb6f59b616224a35c 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/RatesChainItem.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/RatesChainItem.h
@@ -34,29 +34,29 @@ namespace TrigCostRootAnalysis {
    */
   class RatesChainItem {
   public:
-    RatesChainItem(std::string _name, Int_t _level, Double_t _PS, Double_t _PSExpress = 1.);
+    RatesChainItem(std::string name, Int_t level, Double_t PS, Double_t PSExpress = 1.);
 
-    void addLower(RatesChainItem* _lower);
-    void addUpper(RatesChainItem* _upper);
-    void addCounter(CounterBaseRates* _client);
+    void addLower(RatesChainItem* lower);
+    void addUpper(RatesChainItem* upper);
+    void addCounter(CounterBaseRates* client);
     ChainItemSetIt_t getLowerStart();
     ChainItemSetIt_t getLowerEnd();
     ChainItemSet_t& getLower();
     ChainItemSetIt_t getUpperStart();
     ChainItemSetIt_t getUpperEnd();
     ChainItemSet_t& getUpper();
-    Bool_t getLowerContains(RatesChainItem* _find);
-    Bool_t getLowerContainsAll(std::set<RatesChainItem*>& _set);
-    Bool_t getUpperContains(RatesChainItem* _find);
-    Bool_t getUpperContainsAll(std::set<RatesChainItem*>& _set);
-    void setExtraEfficiency(Double_t _extraEfficiency);
-    void setRateReductionFactor(Double_t _reductionFactor);
-    void setTriggerLogic(TriggerLogic* _tl);
-    void setProxy(CounterBaseRates* _c) {m_proxy = _c;}
-    void fillHistograms(DataStore& _dataStore, Float_t _weight, Float_t _bunchWeight);
-
-    void beginEvent(Bool_t _passRaw, CounterBaseRatesSet_t& _counterSet);
-    void beginEvent(TOBAccumulator* _eventTOBs);
+    Bool_t getLowerContains(RatesChainItem* find);
+    Bool_t getLowerContainsAll(std::set<RatesChainItem*>& set);
+    Bool_t getUpperContains(RatesChainItem* find);
+    Bool_t getUpperContainsAll(std::set<RatesChainItem*>& set);
+    void setExtraEfficiency(Double_t extraEfficiency);
+    void setRateReductionFactor(Double_t reductionFactor);
+    void setTriggerLogic(TriggerLogic* tl);
+    void setProxy(CounterBaseRates* c) {m_proxy = c;}
+    void fillHistograms(DataStore& dataStore, Float_t weight, Float_t bunchWeight);
+
+    void beginEvent(Bool_t passRaw, CounterBaseRatesSet_t& counterSet);
+    void beginEvent(TOBAccumulator* eventTOBs );
 
     void endEvent();
     void newRandomPS();
@@ -68,18 +68,18 @@ namespace TrigCostRootAnalysis {
     Bool_t getPassRaw();
     Bool_t getPassPS();
     // Bool_t getIsNotPhysics();
-    Double_t getPSWeight(Bool_t _includeExpress = kFALSE);
-    Double_t getPSReducedWeight(Bool_t _includeExpress = kFALSE);
+    Double_t getPSWeight(Bool_t includeExpress = kFALSE);
+    Double_t getPSReducedWeight(Bool_t includeExpress = kFALSE);
     Double_t getPS();
-    void setPS(Double_t _PS);
-    void setPSReduced(Double_t _PSReduced);
-    Double_t getPassRawOverPS(Bool_t _includeExpress = kFALSE);
-    Double_t getPassRawOverPSReduced(Bool_t _includeExpress = kFALSE);
+    void setPS(Double_t PS);
+    void setPSReduced(Double_t PSReduced);
+    Double_t getPassRawOverPS(Bool_t includeExpress = kFALSE);
+    Double_t getPassRawOverPSReduced(Bool_t includeExpress = kFALSE);
     Bool_t getPassRawAndPS();
     const std::string& getName();
     UInt_t getID();
     TriggerLogic* getTriggerLogic();
-    Double_t getLumiExtrapolationFactor(UInt_t _lb, Bool_t _disableEventLumiExtrapolation);
+    Double_t getLumiExtrapolationFactor(UInt_t lb, Bool_t disableEventLumiExtrapolation);
   private:
     std::string m_name; //!< This chain item's name, more for debug
     Int_t m_level; //!> Which level this item's at
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TableValueFunctions.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TableValueFunctions.h
index 3efaedc17402c95da19bb831a17bc3dfd32b4a64..c9e0ff23b25c1836c82b6ca9d51fa163a1d69476 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TableValueFunctions.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TableValueFunctions.h
@@ -20,17 +20,17 @@ namespace TrigCostRootAnalysis {
   //Forward declaration
   class CounterBase;
 
-  Float_t tableFnChainGetTotalFracTime(CounterMap_t* _map, CounterBase* _TCCB);
-  Float_t tableFnChainGetTotalTimeErr(CounterMap_t* _map, CounterBase* _TCCB);
+  Float_t tableFnChainGetTotalFracTime(CounterMap_t* map, CounterBase* TCCB);
+  Float_t tableFnChainGetTotalTimeErr(CounterMap_t* map, CounterBase* TCCB);
 
-  Float_t tableFnGlobalGetSteeringFarmUse(CounterMap_t* _map, CounterBase* _TCCB);
-  Float_t tableFnGlobalGetHLTNodePrediction(CounterMap_t* _map, CounterBase* _TCCB);
-  Float_t tableFnGlobalGetHLTNodePredictionErr(CounterMap_t* _map, CounterBase* _TCCB);
-  Float_t tableFnGlobalGetHLTNodePredictionSteering(CounterMap_t* _map, CounterBase* _TCCB);
-  Float_t tableFnGlobalGetHLTNodePredictionErrSteering(CounterMap_t* _map, CounterBase* _TCCB);
+  Float_t tableFnGlobalGetSteeringFarmUse(CounterMap_t* map, CounterBase* TCCB);
+  Float_t tableFnGlobalGetHLTNodePrediction(CounterMap_t* map, CounterBase* TCCB);
+  Float_t tableFnGlobalGetHLTNodePredictionErr(CounterMap_t* map, CounterBase* TCCB);
+  Float_t tableFnGlobalGetHLTNodePredictionSteering(CounterMap_t* map, CounterBase* TCCB);
+  Float_t tableFnGlobalGetHLTNodePredictionErrSteering(CounterMap_t* map, CounterBase* TCCB);
 
-  Float_t tableFnRateGetWeightedRateErr(CounterMap_t* _map, CounterBase* _TCCB);
-  Float_t tableFnRateGetDirectRateErr(CounterMap_t* _map, CounterBase* _TCCB);
+  Float_t tableFnRateGetWeightedRateErr(CounterMap_t* map, CounterBase* TCCB);
+  Float_t tableFnRateGetDirectRateErr(CounterMap_t* map, CounterBase* TCCB);
 }
 
 #endif //TrigCostRootAnalysis_TableValueFunctions_H
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/Timer.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/Timer.h
index df3d1490e336c0da259db00e913886a4b91a55b8..97288d221c1a1c08a9b1db90607b553567d57d61 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/Timer.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/Timer.h
@@ -34,7 +34,7 @@ namespace TrigCostRootAnalysis {
    */
   class Timer {
   public:
-    Timer(std::string _type, std::string _name);
+    Timer(std::string type, std::string name);
     ~Timer();
     void start();
     void stop();
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TrigConfInterface.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TrigConfInterface.h
index 6b2add46ded3476b2311ec12e60dda3d610f1f2f..06d7b77b78ed7513d50be7fad9e16f284b34b200 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TrigConfInterface.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TrigConfInterface.h
@@ -35,20 +35,20 @@ namespace TrigCostRootAnalysis {
   class DBKey {
   public:
     DBKey() : m_SMK(-1), m_L1PSK(-1), m_HLTPSK(-1), m_keyString() {}
-    DBKey(Int_t _SMK, Int_t _L1PSK, Int_t _HLTPSK) : m_SMK(-1), m_L1PSK(-1), m_HLTPSK(-1), m_keyString() {
-      set(_SMK, _L1PSK, _HLTPSK);
+    DBKey(Int_t SMK, Int_t L1PSK, Int_t HLTPSK) : m_SMK(-1), m_L1PSK(-1), m_HLTPSK(-1), m_keyString() {
+      set(SMK, L1PSK, HLTPSK);
     }
 
     ~DBKey() {}
-    void set(Int_t _SMK, Int_t _L1PSK, Int_t _HLTPSK) {
-      if (m_SMK == _SMK && m_L1PSK == _L1PSK && m_HLTPSK == _HLTPSK) return;
-
-      m_SMK = _SMK;
-      m_L1PSK = _L1PSK;
-      m_HLTPSK = _HLTPSK;
-      std::stringstream _ss;
-      _ss << "SMK_" << _SMK << "_L1_" << _L1PSK << "_HLT_" << _HLTPSK;
-      _ss >> m_keyString;
+    void set(Int_t SMK, Int_t L1PSK, Int_t HLTPSK) {
+      if (m_SMK == SMK && m_L1PSK == L1PSK && m_HLTPSK == HLTPSK) return;
+
+      m_SMK = SMK;
+      m_L1PSK = L1PSK;
+      m_HLTPSK = HLTPSK;
+      std::stringstream ss;
+      ss << "SMK_" << SMK << "_L1_" << L1PSK << "_HLT_" << HLTPSK;
+      ss >> m_keyString;
     }
 
     Int_t SMK() const {
@@ -95,32 +95,32 @@ namespace TrigCostRootAnalysis {
    */
   class TrigConfInterface {
   public:
-    static Bool_t configure(TChain* _chain);
-    static void newEvent(UInt_t _lb);
+    static Bool_t configure(TChain* chain);
+    static void newEvent(UInt_t lb);
     static Int_t getCurrentSMK();
     static Int_t getCurrentL1PSK();
     static Int_t getCurrentHLTPSK();
     static const DBKey& getCurrentDBKey();
-    static void getEntry(Long64_t _entry); //TODO remove me
-    static const std::string getHLTNameFromChainID(Int_t _chainID, Int_t _level = 0); //Note - copy string here (origin
+    static void getEntry(Long64_t entry); //TODO remove me
+    static const std::string getHLTNameFromChainID(Int_t chainID, Int_t level = 0); //Note - copy string here (origin
                                                                                       // volatile)
-    static UInt_t getNHLTGroupNamesFromChainID(Int_t _chainID);
-    static const std::string getHLTGroupNameFromChainID(Int_t _chainID, UInt_t _group); //Note - copy string here
+    static UInt_t getNHLTGroupNamesFromChainID(Int_t chainID);
+    static const std::string getHLTGroupNameFromChainID(Int_t chainID, UInt_t group); //Note - copy string here
                                                                                         // (origin volatile)
-    static const std::string& getLowerChainName(const std::string& _name);
-    static const std::string& getHLTSeqNameFromIndex(const UInt_t _index);
-    static const std::string& getHLTAlgNameFromSeqIDAndAlgPos(const UInt_t _index, const UInt_t _position);
-    static UInt_t getHLTAlgNameIDFromSeqIDAndAlgPos(const UInt_t _index, const UInt_t _position);
-    static const std::string& getHLTAlgClassNameFromSeqIDAndAlgPos(const UInt_t _index, const UInt_t _position);
-    static UInt_t getHLTAlgClassNameIDFromSeqIDAndAlgPos(const UInt_t _index, const UInt_t _position);
-    static Int_t getCtpId(const std::string& _name);
-    static const std::string& getNameFromCtpId(Int_t _ctpId);
-    static Float_t getPrescale(std::string _chainName);
-    static Float_t getPassthrough(const std::string& _name);
+    static const std::string& getLowerChainName(const std::string& name);
+    static const std::string& getHLTSeqNameFromIndex(const UInt_t index);
+    static const std::string& getHLTAlgNameFromSeqIDAndAlgPos(const UInt_t index, const UInt_t position);
+    static UInt_t getHLTAlgNameIDFromSeqIDAndAlgPos(const UInt_t index, const UInt_t position);
+    static const std::string& getHLTAlgClassNameFromSeqIDAndAlgPos(const UInt_t index, const UInt_t position);
+    static UInt_t getHLTAlgClassNameIDFromSeqIDAndAlgPos(const UInt_t index, const UInt_t position);
+    static Int_t getCtpId(const std::string& name);
+    static const std::string& getNameFromCtpId(Int_t ctpId);
+    static Float_t getPrescale(std::string chainName);
+    static Float_t getPassthrough(const std::string& name);
     static UInt_t getMetaStringN();
-    static std::string getMetaStringKey(UInt_t _m);
-    static std::string getMetaStringVal(UInt_t _m);
-    static std::string getMetaStringVal(std::string _key);
+    static std::string getMetaStringKey(UInt_t m);
+    static std::string getMetaStringVal(UInt_t m);
+    static std::string getMetaStringVal(std::string key);
     static StringIntMap_t getBunchGroupSetup();
     static void populateLBPerKeysetStrings();
 
@@ -144,43 +144,43 @@ namespace TrigCostRootAnalysis {
     //Direct calls
     // Chain
     static UInt_t getChainN();
-    static UInt_t getChainLevel(UInt_t _c);
-    static UInt_t getChainCounter(UInt_t _c);
-    static std::string getChainName(UInt_t _c);
-    static UInt_t getChainEBHypoNameSize(UInt_t _c);
-    static std::string getChainEBHypoName(UInt_t _c, UInt_t _h);
-    static UInt_t getChainGroupsNameSize(UInt_t _c);
-    static std::string getChainGroupName(UInt_t _c, UInt_t _g);
-    static const std::vector<std::string>& getChainRatesGroupNames(UInt_t _c);
-    static std::string getChainCPSGroup(UInt_t _c);
-    static UInt_t getChainStreamNameSize(UInt_t _c);
-    static std::string getChainStreamName(UInt_t _c, UInt_t _g);
-    static std::vector<std::string> getChainStreamNames(UInt_t _c);
-    static Bool_t getChainIsMainStream(UInt_t _c);
+    static UInt_t getChainLevel(UInt_t c);
+    static UInt_t getChainCounter(UInt_t c);
+    static std::string getChainName(UInt_t c);
+    static UInt_t getChainEBHypoNameSize(UInt_t c);
+    static std::string getChainEBHypoName(UInt_t c, UInt_t h);
+    static UInt_t getChainGroupsNameSize(UInt_t c);
+    static std::string getChainGroupName(UInt_t c, UInt_t g);
+    static const std::vector<std::string>& getChainRatesGroupNames(UInt_t c);
+    static std::string getChainCPSGroup(UInt_t c);
+    static UInt_t getChainStreamNameSize(UInt_t c);
+    static std::string getChainStreamName(UInt_t c, UInt_t g);
+    static std::vector<std::string> getChainStreamNames(UInt_t c);
+    static Bool_t getChainIsMainStream(UInt_t c);
 
     // // Chain->Sig //todo gruntwork
-    // UInt_t      GetSigN(UInt_t _c) const;
-    // UInt_t      GetSigCounter(UInt_t _c, UInt_t _s) const;
-    // UInt_t      GetSigLogic(UInt_t _c, UInt_t _s) const;
-    // std::string GetSigLabel(UInt_t _c, UInt_t _s) const;
-    // UInt_t      GetSigNOutputTE(UInt_t _c, UInt_t _s) const;
-    // UInt_t      GetSigOutputTE(UInt_t _c, UInt_t _s, UInt_t _t) const;
+    // UInt_t      GetSigN(UInt_t c) const;
+    // UInt_t      GetSigCounter(UInt_t c, UInt_t s) const;
+    // UInt_t      GetSigLogic(UInt_t c, UInt_t s) const;
+    // std::string GetSigLabel(UInt_t c, UInt_t s) const;
+    // UInt_t      GetSigNOutputTE(UInt_t c, UInt_t s) const;
+    // UInt_t      GetSigOutputTE(UInt_t c, UInt_t s, UInt_t t) const;
 
     // // Seq
     // UInt_t       GetSeqN() const;
-    // UInt_t       GetSeqID(UInt_t _s) const;
-    // UInt_t       GetSeqIndex(UInt_t _s) const;
-    // std::string  GetSeqName(UInt_t _s) const;
-    // UInt_t       GetSeqNInputTEs(UInt_t _s) const;
-    // UInt_t       GetSeqInputTE(UInt_t _s, UInt_t _t) const;
+    // UInt_t       GetSeqID(UInt_t s) const;
+    // UInt_t       GetSeqIndex(UInt_t s) const;
+    // std::string  GetSeqName(UInt_t s) const;
+    // UInt_t       GetSeqNInputTEs(UInt_t s) const;
+    // UInt_t       GetSeqInputTE(UInt_t s, UInt_t t) const;
     // // Seq->Alg
-    // UInt_t      GetAlgN(UInt_t _s) const;
-    // UInt_t      GetAlgIndex(UInt_t _s, UInt_t _a) const;
-    // UInt_t      GetAlgPosition(UInt_t _s, UInt_t _a) const;
-    // UInt_t      GetAlgNameID(UInt_t _s, UInt_t _a) const;
-    // std::string GetAlgName(UInt_t _s, UInt_t _a) const;
-    // UInt_t      GetAlgTypeID(UInt_t _s, UInt_t _a) const;
-    // std::string GetAlgTypeName(UInt_t _s, UInt_t _a) const;
+    // UInt_t      GetAlgN(UInt_t s) const;
+    // UInt_t      GetAlgIndex(UInt_t s, UInt_t a) const;
+    // UInt_t      GetAlgPosition(UInt_t s, UInt_t a) const;
+    // UInt_t      GetAlgNameID(UInt_t s, UInt_t a) const;
+    // std::string GetAlgName(UInt_t s, UInt_t a) const;
+    // UInt_t      GetAlgTypeID(UInt_t s, UInt_t a) const;
+    // std::string GetAlgTypeName(UInt_t s, UInt_t a) const;
   private:
     // Not to be instanced, static use only
     TrigConfInterface();
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TrigCostAtlasStyle.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TrigCostAtlasStyle.h
index 45e753f4a61d4fdc0363f8decd46e104f4c976cf..452cbd2dba7f136229ae17c4188f530c11a88a2b 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TrigCostAtlasStyle.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TrigCostAtlasStyle.h
@@ -10,8 +10,8 @@
 //
 //   $Id: TrigCostAtlasStyle.h, v0.0   Thu 25 Mar 2010 10:34:20 CET $
 
-#ifndef  __TRIGCOSTATLASSTYLE_H
-#define __TRIGCOSTATLASSTYLE_H
+#ifndef TRIGCOSTROOTANALYSIS_TRIGCOSTATLASSTYLE_H
+#define TRIGCOSTROOTANALYSIS_TRIGCOSTATLASSTYLE_H
 
 // STL include(s):
 #include <string>
@@ -23,4 +23,4 @@ void SetTrigCostAtlasStyle();
 
 TStyle* TrigCostAtlasStyle();
 
-#endif // __TRIGCOSTATLASSTYLE_H
+#endif // TRIGCOSTROOTANALYSIS_TRIGCOSTATLASSTYLE_H
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TrigCostData.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TrigCostData.h
index cad5a13a0f99004bdec51b0864b446876dbef0dc..71cf8136cbd9118187e66fa5508d77c494b208d6 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TrigCostData.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TrigCostData.h
@@ -43,10 +43,10 @@ namespace TrigCostRootAnalysis {
    */
   class TrigCostData {
   public:
-    TrigCostData(const Long64_t& _master, const char* _prefix, TTree* _tree);
+    TrigCostData(const Long64_t& master, const char* prefix, TTree* tree);
     TrigCostData();
     ~TrigCostData();
-    void setup(const Long64_t& _master, const char* _prefix, TTree* _tree);
+    void setup(const Long64_t& master, const char* prefix, TTree* tree);
 
     Int_t getEventNumber() const;
     Float_t getEBWeight() const;
@@ -72,203 +72,203 @@ namespace TrigCostRootAnalysis {
     //
 
     UInt_t getNChains() const;
-    Int_t getChainID(UInt_t _n) const;
-    Int_t getChainLevel(UInt_t _n) const;
-    Bool_t getIsChainPassed(UInt_t _n) const;
-    Bool_t getIsChainPassedRaw(UInt_t _n) const;
-    Bool_t getIsChainPassthrough(UInt_t _n) const;
-    Bool_t getIsChainResurrected(UInt_t _n) const;
-    Bool_t getIsChainPrescaled(UInt_t _n) const;
-    Bool_t getIsChainExpressStream(UInt_t _n) const;
-    Bool_t getIfChainWasL1AfterVeto(UInt_t _n) const;
-    Bool_t getIfChainWasL1BeforePrescale(UInt_t _n) const;
-    Bool_t getIfChainWasL1AfterPrescale(UInt_t _n) const;
-    Float_t getChainTimer(UInt_t _n) const;
+    Int_t getChainID(UInt_t n) const;
+    Int_t getChainLevel(UInt_t n) const;
+    Bool_t getIsChainPassed(UInt_t n) const;
+    Bool_t getIsChainPassedRaw(UInt_t n) const;
+    Bool_t getIsChainPassthrough(UInt_t n) const;
+    Bool_t getIsChainResurrected(UInt_t n) const;
+    Bool_t getIsChainPrescaled(UInt_t n) const;
+    Bool_t getIsChainExpressStream(UInt_t n) const;
+    Bool_t getIfChainWasL1AfterVeto(UInt_t n) const;
+    Bool_t getIfChainWasL1BeforePrescale(UInt_t n) const;
+    Bool_t getIfChainWasL1AfterPrescale(UInt_t n) const;
+    Float_t getChainTimer(UInt_t n) const;
     // Cached
-    Float_t getChainTimerFromSequences(UInt_t _n) const; //TODO make this private and use only if ChainTimer == 0
-    UInt_t getChainAlgCalls(UInt_t _n) const;
-    UInt_t getChainAlgCaches(UInt_t _n) const;
-    const std::set< std::pair<Int_t, Int_t> >& getChainAlgs(UInt_t _n) const;
-    UInt_t getChainSeqCalls(UInt_t _n) const;
-    Bool_t getIsChainPassed(std::string& _n) const;
+    Float_t getChainTimerFromSequences(UInt_t n) const; //TODO make this private and use only if ChainTimer == 0
+    UInt_t getChainAlgCalls(UInt_t n) const;
+    UInt_t getChainAlgCaches(UInt_t n) const;
+    const std::set< std::pair<Int_t, Int_t> >& getChainAlgs(UInt_t n) const;
+    UInt_t getChainSeqCalls(UInt_t n) const;
+    Bool_t getIsChainPassed(std::string& n) const;
     // Cached ROS
-    UInt_t getChainROBRetrievals(UInt_t _n) const;
-    Float_t getChainROBRetrievalSize(UInt_t _n) const;
-    UInt_t getChainROBRequests(UInt_t _n) const;
-    Float_t getChainROBRequestSize(UInt_t _n) const;
+    UInt_t getChainROBRetrievals(UInt_t n) const;
+    Float_t getChainROBRetrievalSize(UInt_t n) const;
+    UInt_t getChainROBRequests(UInt_t n) const;
+    Float_t getChainROBRequestSize(UInt_t n) const;
 
     //
     // SEQUENCE VARIABLES
     //
 
     UInt_t getNSequences() const;
-    Int_t getSequenceIndex(UInt_t _n) const;
-    Int_t getSequenceChannelCounter(UInt_t _n) const;
-    Int_t getSequenceLevel(UInt_t _n) const;
-    Float_t getSequenceAlgTotalTime(UInt_t _n) const;
-    Float_t getSequenceTime(UInt_t _n) const;
-    Bool_t getIsSequenceAlreadyExecuted(UInt_t _n) const;
-    Bool_t getIsSequenceExecuted(UInt_t _n) const;
-    Bool_t getIsSequenceInitial(UInt_t _n) const;
-    Bool_t getIsSequencePrevious(UInt_t _n) const;
+    Int_t getSequenceIndex(UInt_t n) const;
+    Int_t getSequenceChannelCounter(UInt_t n) const;
+    Int_t getSequenceLevel(UInt_t n) const;
+    Float_t getSequenceAlgTotalTime(UInt_t n) const;
+    Float_t getSequenceTime(UInt_t n) const;
+    Bool_t getIsSequenceAlreadyExecuted(UInt_t n) const;
+    Bool_t getIsSequenceExecuted(UInt_t n) const;
+    Bool_t getIsSequenceInitial(UInt_t n) const;
+    Bool_t getIsSequencePrevious(UInt_t n) const;
     // Cached
-    UInt_t getSequenceAlgCalls(UInt_t _n) const;
-    UInt_t getSequenceAlgCaches(UInt_t _n) const;
+    UInt_t getSequenceAlgCalls(UInt_t n) const;
+    UInt_t getSequenceAlgCaches(UInt_t n) const;
     //
-    UInt_t getSeqROSCalls(UInt_t _n) const;
-    Float_t getSeqROSTime(UInt_t _n) const;
-    UInt_t getSeqROBRequests(UInt_t _n) const;
-    Float_t getSeqROBRequestSize(UInt_t _n) const;
-    UInt_t getSeqROBRetrievals(UInt_t _n) const;
-    Float_t getSeqROBRetrievalSize(UInt_t _n) const;
-    UInt_t getSeqROBOthers(UInt_t _n) const;
+    UInt_t getSeqROSCalls(UInt_t n) const;
+    Float_t getSeqROSTime(UInt_t n) const;
+    UInt_t getSeqROBRequests(UInt_t n) const;
+    Float_t getSeqROBRequestSize(UInt_t n) const;
+    UInt_t getSeqROBRetrievals(UInt_t n) const;
+    Float_t getSeqROBRetrievalSize(UInt_t n) const;
+    UInt_t getSeqROBOthers(UInt_t n) const;
     //
-    Bool_t getSeqIsRerun(UInt_t _n) const;
+    Bool_t getSeqIsRerun(UInt_t n) const;
 
 
     //
     // SEQUENCE ---> ALGORITHM VARIABLES
     //
 
-    UInt_t getNSeqAlgs(UInt_t _n) const;
-    Float_t getSeqAlgTimer(UInt_t _n, UInt_t _a) const;
-    Float_t getSeqAlgTimeStart(UInt_t _n, UInt_t _a) const;
-    UInt_t getSeqAlgTimeStartSec(UInt_t _n, UInt_t _a) const;
-    UInt_t getSeqAlgTimeStartMicroSec(UInt_t _n, UInt_t _a) const;
-    Float_t getSeqAlgTimeStop(UInt_t _n, UInt_t _a) const;
-    UInt_t getSeqAlgTimeStopSec(UInt_t _n, UInt_t _a) const;
-    UInt_t getSeqAlgTimeStopMicroSec(UInt_t _n, UInt_t _a) const;
-    Int_t getSeqAlgPosition(UInt_t _n, UInt_t _a) const;
-    Int_t getSeqAlgNRoI(UInt_t _n, UInt_t _a) const;
-    Bool_t getSeqAlgIsCached(UInt_t _n, UInt_t _a) const;
-    Bool_t getSeqAlgIsCalled(UInt_t _n, UInt_t _a) const;
-    Int_t getSeqAlgRoIID(UInt_t _n, UInt_t _a, UInt_t _roi) const;
-    Int_t getSeqAlgRoILocation(UInt_t _n, UInt_t _a, UInt_t _roi) const;
+    UInt_t getNSeqAlgs(UInt_t n) const;
+    Float_t getSeqAlgTimer(UInt_t n, UInt_t a) const;
+    Float_t getSeqAlgTimeStart(UInt_t n, UInt_t a) const;
+    UInt_t getSeqAlgTimeStartSec(UInt_t n, UInt_t a) const;
+    UInt_t getSeqAlgTimeStartMicroSec(UInt_t n, UInt_t a) const;
+    Float_t getSeqAlgTimeStop(UInt_t n, UInt_t a) const;
+    UInt_t getSeqAlgTimeStopSec(UInt_t n, UInt_t a) const;
+    UInt_t getSeqAlgTimeStopMicroSec(UInt_t n, UInt_t a) const;
+    Int_t getSeqAlgPosition(UInt_t n, UInt_t a) const;
+    Int_t getSeqAlgNRoI(UInt_t n, UInt_t a) const;
+    Bool_t getSeqAlgIsCached(UInt_t n, UInt_t a) const;
+    Bool_t getSeqAlgIsCalled(UInt_t n, UInt_t a) const;
+    Int_t getSeqAlgRoIID(UInt_t n, UInt_t a, UInt_t roi) const;
+    Int_t getSeqAlgRoILocation(UInt_t n, UInt_t a, UInt_t roi) const;
     // Cached
-    std::set<Int_t> getSeqAlgROBLocations(UInt_t _n, UInt_t _a) const;
-    std::set<Int_t> getSeqAlgROBLocations(const std::pair<Int_t, Int_t>& _algLocation) const;
-    UInt_t getSeqAlgROSCalls(UInt_t _n, UInt_t _a) const;
-    Float_t getSeqAlgROSTime(UInt_t _n, UInt_t _a) const;
-    UInt_t getSeqAlgROBRequests(UInt_t _n, UInt_t _a) const;
-    Float_t getSeqAlgROBRequestSize(UInt_t _n, UInt_t _a) const;
-    UInt_t getSeqAlgROBRetrievals(UInt_t _n, UInt_t _a) const;
-    Float_t getSeqAlgROBRetrievalSize(UInt_t _n, UInt_t _a) const;
-    UInt_t getSeqAlgROBOthers(UInt_t _n, UInt_t _a) const;
+    std::set<Int_t> getSeqAlgROBLocations(UInt_t n, UInt_t a) const;
+    std::set<Int_t> getSeqAlgROBLocations(const std::pair<Int_t, Int_t>& algLocation) const;
+    UInt_t getSeqAlgROSCalls(UInt_t n, UInt_t a) const;
+    Float_t getSeqAlgROSTime(UInt_t n, UInt_t a) const;
+    UInt_t getSeqAlgROBRequests(UInt_t n, UInt_t a) const;
+    Float_t getSeqAlgROBRequestSize(UInt_t n, UInt_t a) const;
+    UInt_t getSeqAlgROBRetrievals(UInt_t n, UInt_t a) const;
+    Float_t getSeqAlgROBRetrievalSize(UInt_t n, UInt_t a) const;
+    UInt_t getSeqAlgROBOthers(UInt_t n, UInt_t a) const;
 
     //
     // LEVEL 1 VARIABLES
     //
 
     UInt_t getNL1() const;
-    UInt_t getL1CtpId(UInt_t _n) const;
-    Bool_t getIsL1Prescaled(UInt_t _n) const;
-    Bool_t getIsL1Vetoed(UInt_t _n) const;
-    Bool_t getIsL1Passed(UInt_t _n) const;
-    Bool_t getIsL1PassedAfterPrescale(UInt_t _n) const;
-    Bool_t getIsL1PassedBeforePrescale(UInt_t _n) const;
-    Bool_t getIsL1PassedAfterVeto(UInt_t _n) const;
+    UInt_t getL1CtpId(UInt_t n) const;
+    Bool_t getIsL1Prescaled(UInt_t n) const;
+    Bool_t getIsL1Vetoed(UInt_t n) const;
+    Bool_t getIsL1Passed(UInt_t n) const;
+    Bool_t getIsL1PassedAfterPrescale(UInt_t n) const;
+    Bool_t getIsL1PassedBeforePrescale(UInt_t n) const;
+    Bool_t getIsL1PassedAfterVeto(UInt_t n) const;
     // Cached
-    Bool_t getIsL1PassedBeforePrescale(std::string& _n) const;
-    Int_t getL1Location(const std::string& _n) const;
+    Bool_t getIsL1PassedBeforePrescale(std::string& n) const;
+    Int_t getL1Location(const std::string& n) const;
 
     //
     // READ OUT BUFFER VARIABLES
     //
 
     UInt_t getNROBs() const;
-    UInt_t getROBReqID(UInt_t _n) const;
-    Float_t getROBTimer(UInt_t _n) const;
-    UInt_t getROBTimeStartSec(UInt_t _n) const;
-    UInt_t getROBTimeStartMicroSec(UInt_t _n) const;
-    UInt_t getROBTimeStopSec(UInt_t _n) const;
-    UInt_t getROBTimeStopMicroSec(UInt_t _n) const;
-    UInt_t getROBDataN(UInt_t _n) const;
-    UInt_t getROBDataID(UInt_t _n, UInt_t _r) const;
-    Float_t getROBDataSize(UInt_t _n, UInt_t _r) const;
-    Bool_t getIsROBDataCached(UInt_t _n, UInt_t _r) const;
-    Bool_t getIsROBDataDisabled(UInt_t _n, UInt_t _r) const;
-    Bool_t getIsROBDataIgnored(UInt_t _n, UInt_t _r) const;
-    Bool_t getIsROBDataRetrieved(UInt_t _n, UInt_t _r) const;
-    Bool_t getIsROBDataStatusOK(UInt_t _n, UInt_t _r) const;
-    Bool_t getIsROBDataStatusPrefetched(UInt_t _n, UInt_t _r) const;
-    Bool_t getIsROBDataUnclassified(UInt_t _n, UInt_t _r) const;
-    UInt_t getROBSumN(UInt_t _n) const;
-    UInt_t getROBSumDetID(UInt_t _n, UInt_t _r) const;
-    UInt_t getROBSumNROBs(UInt_t _n, UInt_t _r) const;
-    Float_t getROBSumSize(UInt_t _n, UInt_t _r) const;
-    Bool_t getIsROBSumCached(UInt_t _n, UInt_t _r) const;
-    Bool_t getIsROBSumDisabled(UInt_t _n, UInt_t _r) const;
-    Bool_t getIsROBSumIgnored(UInt_t _n, UInt_t _r) const;
-    Bool_t getIsROBSumRetrieved(UInt_t _n, UInt_t _r) const;
-    Bool_t getIsROBSumUnclassified(UInt_t _n, UInt_t _r) const;
+    UInt_t getROBReqID(UInt_t n) const;
+    Float_t getROBTimer(UInt_t n) const;
+    UInt_t getROBTimeStartSec(UInt_t n) const;
+    UInt_t getROBTimeStartMicroSec(UInt_t n) const;
+    UInt_t getROBTimeStopSec(UInt_t n) const;
+    UInt_t getROBTimeStopMicroSec(UInt_t n) const;
+    UInt_t getROBDataN(UInt_t n) const;
+    UInt_t getROBDataID(UInt_t n, UInt_t r) const;
+    Float_t getROBDataSize(UInt_t n, UInt_t r) const;
+    Bool_t getIsROBDataCached(UInt_t n, UInt_t r) const;
+    Bool_t getIsROBDataDisabled(UInt_t n, UInt_t r) const;
+    Bool_t getIsROBDataIgnored(UInt_t n, UInt_t r) const;
+    Bool_t getIsROBDataRetrieved(UInt_t n, UInt_t r) const;
+    Bool_t getIsROBDataStatusOK(UInt_t n, UInt_t r) const;
+    Bool_t getIsROBDataStatusPrefetched(UInt_t n, UInt_t r) const;
+    Bool_t getIsROBDataUnclassified(UInt_t n, UInt_t r) const;
+    UInt_t getROBSumN(UInt_t n) const;
+    UInt_t getROBSumDetID(UInt_t n, UInt_t r) const;
+    UInt_t getROBSumNROBs(UInt_t n, UInt_t r) const;
+    Float_t getROBSumSize(UInt_t n, UInt_t r) const;
+    Bool_t getIsROBSumCached(UInt_t n, UInt_t r) const;
+    Bool_t getIsROBSumDisabled(UInt_t n, UInt_t r) const;
+    Bool_t getIsROBSumIgnored(UInt_t n, UInt_t r) const;
+    Bool_t getIsROBSumRetrieved(UInt_t n, UInt_t r) const;
+    Bool_t getIsROBSumUnclassified(UInt_t n, UInt_t r) const;
     // Cached
-    const std::pair< Int_t, Int_t >& getROBAlgLocation(UInt_t _n) const;
+    const std::pair< Int_t, Int_t >& getROBAlgLocation(UInt_t n) const;
 
     //
     // RoI VARIABLES
     //
 
     UInt_t getNRoIs() const;
-    Int_t getRoIIndexFromId(Int_t _id) const;
-    Int_t getRoIID(Int_t _n) const;
-    Float_t getRoIArea(UInt_t _n) const;
-    Float_t getRoIEta(UInt_t _n) const;
-    Float_t getRoIPhi(UInt_t _n) const;
-    Float_t getRoIEt(UInt_t _n) const;
-    Int_t getRoINL1Thresh(UInt_t _n) const;
-    Bool_t getIsRoIEmTau(UInt_t _n) const;
-    Bool_t getIsRoITau(UInt_t _n) const;
-    Bool_t getIsRoIEnergy(UInt_t _n) const;
-    Bool_t getIsRoIJet(UInt_t _n) const;
-    Bool_t getIsRoIJetEt(UInt_t _n) const;
-    Bool_t getIsRoIMuon(UInt_t _n) const;
-    Bool_t getIsRoINone(UInt_t _n) const;
-    Float_t getRoIEtLarge(UInt_t _n) const;
-    Int_t getRoIMuonCharge(UInt_t _n) const;
-    Int_t getRoIEmTauIsoBits(UInt_t _n) const;
-    Float_t getRoIVectorEX(UInt_t _n) const;
-    Float_t getRoIVectorEY(UInt_t _n) const;
-    Bool_t getRoIOverflowEX(UInt_t _n) const;
-    Bool_t getRoIOverflowEY(UInt_t _n) const;
-    Bool_t getRoIOverflowET(UInt_t _n) const;
-    const std::string& getRoITypeString(Int_t _n) const;
+    Int_t getRoIIndexFromId(Int_t id) const;
+    Int_t getRoIID(Int_t n) const;
+    Float_t getRoIArea(UInt_t n) const;
+    Float_t getRoIEta(UInt_t n) const;
+    Float_t getRoIPhi(UInt_t n) const;
+    Float_t getRoIEt(UInt_t n) const;
+    Int_t getRoINL1Thresh(UInt_t n) const;
+    Bool_t getIsRoIEmTau(UInt_t n) const;
+    Bool_t getIsRoITau(UInt_t n) const;
+    Bool_t getIsRoIEnergy(UInt_t n) const;
+    Bool_t getIsRoIJet(UInt_t n) const;
+    Bool_t getIsRoIJetEt(UInt_t n) const;
+    Bool_t getIsRoIMuon(UInt_t n) const;
+    Bool_t getIsRoINone(UInt_t n) const;
+    Float_t getRoIEtLarge(UInt_t n) const;
+    Int_t getRoIMuonCharge(UInt_t n) const;
+    Int_t getRoIEmTauIsoBits(UInt_t n) const;
+    Float_t getRoIVectorEX(UInt_t n) const;
+    Float_t getRoIVectorEY(UInt_t n) const;
+    Bool_t getRoIOverflowEX(UInt_t n) const;
+    Bool_t getRoIOverflowEY(UInt_t n) const;
+    Bool_t getRoIOverflowET(UInt_t n) const;
+    const std::string& getRoITypeString(Int_t n) const;
 
     //
     // TRIGGER ELEMENT VARIABLES
     //
 
     UInt_t getNTEs() const;
-    UInt_t getTEIndex(UInt_t _n) const;
-    UInt_t getTEID(UInt_t _n) const;
-    UInt_t getTEChildIndex(UInt_t _n, UInt_t _c) const;
-    UInt_t getTEParentIndex(UInt_t _n, UInt_t _c) const;
-    UInt_t getTECLIDIndex(UInt_t _n, UInt_t _c) const;
-    UInt_t getTERoIIDIndex(UInt_t _n, UInt_t _c) const;
-    UInt_t getTEChildSize(UInt_t _n) const;
-    UInt_t getTEParentSize(UInt_t _n) const;
-    UInt_t getTECLIDSize(UInt_t _n) const;
-    UInt_t getTERoIIDSize(UInt_t _n) const;
-    Int_t getTEPositionFromTEIndex(UInt_t _n) const;
-    Bool_t getIsTEActiveState(UInt_t _n) const;
-    Bool_t getIsTEErrorState(UInt_t _n) const;
-    Bool_t getIsTEInitial(UInt_t _n) const;
-    Bool_t getIsTEL1Threshold(UInt_t _n) const;
-    Bool_t getIsTEOutputEFNode(UInt_t _n) const;
-    Bool_t getIsTEOutputL2Node(UInt_t _n) const;
-    Bool_t getIsTERegularTe(UInt_t _n) const;
-    Bool_t getIsTERoITe(UInt_t _n) const;
-    Bool_t getIsTETerminalNode(UInt_t _n) const;
-    Bool_t getIsTETopologicalTe(UInt_t _n) const;
+    UInt_t getTEIndex(UInt_t n) const;
+    UInt_t getTEID(UInt_t n) const;
+    UInt_t getTEChildIndex(UInt_t n, UInt_t c) const;
+    UInt_t getTEParentIndex(UInt_t n, UInt_t c) const;
+    UInt_t getTECLIDIndex(UInt_t n, UInt_t c) const;
+    UInt_t getTERoIIDIndex(UInt_t n, UInt_t c) const;
+    UInt_t getTEChildSize(UInt_t n) const;
+    UInt_t getTEParentSize(UInt_t n) const;
+    UInt_t getTECLIDSize(UInt_t n) const;
+    UInt_t getTERoIIDSize(UInt_t n) const;
+    Int_t getTEPositionFromTEIndex(UInt_t n) const;
+    Bool_t getIsTEActiveState(UInt_t n) const;
+    Bool_t getIsTEErrorState(UInt_t n) const;
+    Bool_t getIsTEInitial(UInt_t n) const;
+    Bool_t getIsTEL1Threshold(UInt_t n) const;
+    Bool_t getIsTEOutputEFNode(UInt_t n) const;
+    Bool_t getIsTEOutputL2Node(UInt_t n) const;
+    Bool_t getIsTERegularTe(UInt_t n) const;
+    Bool_t getIsTERoITe(UInt_t n) const;
+    Bool_t getIsTETerminalNode(UInt_t n) const;
+    Bool_t getIsTETopologicalTe(UInt_t n) const;
 
     //
     // RATES ANALYSIS CHAIN PRESCALE WEIGHTS
     //
-    void setChainPrescaleWeight(const std::string& _name, Double_t _value) const;
-    Double_t getChainPrescaleWeight(const std::string& _name) const;
+    void setChainPrescaleWeight(const std::string& name, Double_t value) const;
+    Double_t getChainPrescaleWeight(const std::string& name) const;
 
     // Debug
     ProcessEvent* getParent() const;
-    void setParent(ProcessEvent* _parent) const;
+    void setParent(ProcessEvent* parent) const;
 
     void bufferEvent() const;
   private:
@@ -289,7 +289,7 @@ namespace TrigCostRootAnalysis {
     void bufferChainRosInformation() const;
     void bufferSeqROSInformation() const;
     void bufferAlgRosInformation() const;
-    Bool_t getRosReqBelongsToAlg(UInt_t _seq, UInt_t _alg, UInt_t _ros) const;
+    Bool_t getRosReqBelongsToAlg(UInt_t seq, UInt_t alg, UInt_t ros) const;
 
     mutable ProcessEvent* m_parent;
     mutable std::mutex m_mutex;
@@ -359,7 +359,7 @@ namespace TrigCostRootAnalysis {
     mutable StringDoubleMap_t m_chainPSWeight; //!< Holds chain prescale weights for use in other monitors
 
     const std::set<Int_t> m_emptySet; //!< Returned for cases where an alg has no ROBs
-    mutable std::pair< Int_t, Int_t > _recyclablePair; // Re-usable pair object
+    mutable std::pair< Int_t, Int_t > m_recyclablePair; // Re-usable pair object
 
     mutable Bool_t m_rosMatching; //!< Match ROS to algorithms? Time consuming, only use when needed
 
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TrigXMLService.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TrigXMLService.h
index 327cf7f7d8f1783174f3af492503a0a26a16fc48..b5d1e57c509f817b61c550e09013566c6c1b6c66 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TrigXMLService.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/TrigXMLService.h
@@ -36,25 +36,25 @@ namespace TrigCostRootAnalysis {
     static TrigXMLService& trigXMLService(); //!< Use this method to get the singleton
     void init();
 
-    Double_t getPrescale(const std::string& _name);
-    Float_t getEventWeight(UInt_t _eventNumber, UInt_t _lb, UInt_t _pass);
-    Double_t getHLTCostWeightingFactor(const std::string& _chainName);
+    Double_t getPrescale(const std::string& name);
+    Float_t getEventWeight(UInt_t eventNumber, UInt_t lb, UInt_t pass);
+    Double_t getHLTCostWeightingFactor(const std::string& chainName);
     Float_t getLumiExtrapWeight();
     IntIntMap_t& getBGMap();
     IntIntMap_t& getBGUnbiasedMap();
-    Float_t getLBMuValue(Int_t _lb);
+    Float_t getLBMuValue(Int_t lb);
 
-    void saveRuleBookXML(CounterCollection_t& _counterCollections, std::string _levelStr);
-    void saveXMLElement(std::ofstream& _fout, XMLExport& _xml, CounterBaseRates* _counter);
-    void parseUpgradeXML(StringIntMap_t& _isoBits, std::multiset<ChainInfo>& _upgradeChains);
+    void saveRuleBookXML(CounterCollection_t& counterCollections, std::string levelStr);
+    void saveXMLElement(std::ofstream& fout, XMLExport& xml, CounterBaseRates* counter);
+    void parseUpgradeXML(StringIntMap_t& isoBits, std::multiset<ChainInfo>& upgradeChains);
 
     Bool_t hasExpressPrescaleInfo();
     Bool_t hasChainComments();
-    Double_t getExpressPrescaleInfo(const std::string& _name);
-    std::string getChainComment(const std::string& _name);
+    Double_t getExpressPrescaleInfo(const std::string& name);
+    std::string getChainComment(const std::string& name);
 
-    void parseEnhancedBiasXML(Int_t _runNumber);
-    void exportEnhancedBiasXML(UInt_t _eventNumber, Float_t _weight, UInt_t _bunchGroup, Int_t _unbiased);
+    void parseEnhancedBiasXML(Int_t runNumber);
+    void exportEnhancedBiasXML(UInt_t eventNumber, Float_t weight, UInt_t bunchGroup, Int_t unbiased);
     void saveExportedEnhancedBiasXML();
 
     void writePrescaleXML();
@@ -62,23 +62,23 @@ namespace TrigCostRootAnalysis {
     Bool_t getEnabled() {return m_serviceEnabled;}
 
     Bool_t getParsedRunXML();
-    Bool_t getIsLBFlaggedBad(Int_t _lb);
+    Bool_t getIsLBFlaggedBad(Int_t lb);
     Int_t getNBunchGroups();
-    std::string getBunchGroupName(Int_t _id);
-    Int_t getBunchGroupSize(Int_t _id);
-    Int_t getOnlineEventsInLB(Int_t _lb);
+    std::string getBunchGroupName(Int_t id);
+    Int_t getBunchGroupSize(Int_t id);
+    Int_t getOnlineEventsInLB(Int_t lb);
 
     void parseHLTFarmXML();
     const IntStringMap_t& getComputerTypeToNameMap() {return m_computerTypeToNameMap;}
-    UInt_t getComputerType(UInt_t _hash);
+    UInt_t getComputerType(UInt_t hash);
   private:
-    void parseRunXML(const Int_t _runNumber, const Bool_t _primaryRun);
+    void parseRunXML(const Int_t runNumber, const Bool_t primaryRun);
 
-    void parseXML(UInt_t _xmlID);
+    void parseXML(UInt_t xmlID);
 
-    void parseL1MenuXML(TXMLEngine* _xml, void* _xmlDoc);
-    void parseMenuXML(TXMLEngine* _xml, void* _xmlDoc);
-    void parsePrescaleXML(TXMLEngine* _xml, void* _xmlDoc);
+    void parseL1MenuXML(TXMLEngine* xml, void* xmlDoc);
+    void parseMenuXML(TXMLEngine* xml, void* xmlDoc);
+    void parsePrescaleXML(TXMLEngine* xml, void* xmlDoc);
 
     /**
      * Private constructor.
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/Utility.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/Utility.h
index 2f5f16d3ebdde1b5af2bff78e657007d64ecae24..cf27f5ee6203a1672247d880c3f38164177eaacd 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/Utility.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/Utility.h
@@ -593,94 +593,94 @@ namespace TrigCostRootAnalysis {
   // Helper functions
   // These need to find a more permanent home
 
-  Bool_t checkPatternNameMonitor(const std::string& _patternName, Bool_t _invert, Bool_t _isRerun = kFALSE);
-  Bool_t checkPatternNameOutput(const std::string& _patternName, Bool_t _invert);
-  Bool_t checkPatternUnique(const std::string& _patternName, Bool_t _invert);
-  Bool_t checkPatternOverlap(const std::string& _patternName, Bool_t _invert);
-  Bool_t checkPatternInternal(const std::string& _counterName, ConfKey_t _list, Bool_t _invert);
-  Bool_t checkPatternNoLumiWeight(const std::string& _counterName);
-  Bool_t checkPatternNoMuLumiWeight(const std::string& _counterName);
-  Bool_t checkPatternNoBunchLumiWeight(const std::string& _counterName);
-  Bool_t checkPatternExponentialWithMu(const std::string& _counterName);
-
-  Int_t stringToInt(const std::string& _i);
-  Float_t stringToFloat(const std::string& _i);
-  Double_t stringToDouble(const std::string& _i);
-  std::string intToString(Long64_t _i, UInt_t _pad = 0);
-  std::string intToString(Int_t _i, UInt_t _pad = 0);
-  std::string intToString(UInt_t _i, UInt_t _pad = 0);
-  std::string floatToString(Float_t _f, Int_t _precision = 4);
-  std::string doubleToString(Double_t _d, Int_t _precision = 4);
+  Bool_t checkPatternNameMonitor(const std::string& patternName, Bool_t invert, Bool_t isRerun = kFALSE);
+  Bool_t checkPatternNameOutput(const std::string& patternName, Bool_t invert);
+  Bool_t checkPatternUnique(const std::string& patternName, Bool_t invert);
+  Bool_t checkPatternOverlap(const std::string& patternName, Bool_t invert);
+  Bool_t checkPatternInternal(const std::string& counterName, ConfKey_t list, Bool_t invert);
+  Bool_t checkPatternNoLumiWeight(const std::string& counterName);
+  Bool_t checkPatternNoMuLumiWeight(const std::string& counterName);
+  Bool_t checkPatternNoBunchLumiWeight(const std::string& counterName);
+  Bool_t checkPatternExponentialWithMu(const std::string& counterName);
+
+  Int_t stringToInt(const std::string& i);
+  Float_t stringToFloat(const std::string& i);
+  Double_t stringToDouble(const std::string& i);
+  std::string intToString(Long64_t i, UInt_t pad = 0);
+  std::string intToString(Int_t i, UInt_t pad = 0);
+  std::string intToString(UInt_t i, UInt_t pad = 0);
+  std::string floatToString(Float_t f, Int_t precision = 4);
+  std::string doubleToString(Double_t d, Int_t precision = 4);
   void plotText(Double_t x, Double_t y, const char* text);
-  void plotHistogram(TH1F* _h, Bool_t _isLogY = kTRUE, std::string _opt = "");
-  Bool_t isZero(Float_t _float, Float_t _precision = 0.00000001);
-  Bool_t isEqual(Float_t _float1, Float_t _float2, Float_t _precision = 0.00000001);
-  ConfVariableOptionPair_t makePair(ConfKey_t _name, VariableOption_t _vo);
+  void plotHistogram(TH1F* h, Bool_t isLogY = kTRUE, std::string opt = "");
+  Bool_t isZero(Float_t float_, Float_t precision = 0.00000001);
+  Bool_t isEqual(Float_t float1, Float_t float2, Float_t precision = 0.00000001);
+  ConfVariableOptionPair_t makePair(ConfKey_t name, VariableOption_t vo);
   UInt_t stringToIntHash(std::string& s);
-  const std::string& getLevelString(UInt_t _level);
-  Float_t deltaR(Float_t _phi1, Float_t _phi2, Float_t _eta1, Float_t _eta2);
+  const std::string& getLevelString(UInt_t level);
+  Float_t deltaR(Float_t phi1, Float_t phi2, Float_t eta1, Float_t eta2);
 
   class JsonExport {
   public:
     JsonExport() : m_level(0), m_hasLeaves(kFALSE), m_justEnded(kFALSE), m_minimal(kFALSE) {
     }
 
-    void addNode(std::ostream& _fout, std::string _name, std::string _icon = "") {
-      if (!m_minimal) _fout << std::string(m_level * 2, ' ');
-      if (m_justEnded == kTRUE) _fout << ",";
-      _fout << "{";
-      if (!m_minimal) _fout << std::endl;
+    void addNode(std::ostream& fout, std::string name, std::string icon = "") {
+      if (!m_minimal) fout << std::string(m_level * 2, ' ');
+      if (m_justEnded == kTRUE) fout << ",";
+      fout << "{";
+      if (!m_minimal) fout << std::endl;
       m_justEnded = kFALSE;
 
       ++m_level;
 
-      if (!m_minimal) _fout << std::string(m_level * 2, ' ');
-      _fout << "\"text\": \"" << _name << "\",";
-      if (!m_minimal) _fout << std::endl << std::string(m_level * 2, ' ');
-      if (_icon != "") _fout << "\"icon\": \"images/" << _icon << ".png\",";
-      if (!m_minimal && _icon != "") _fout << std::endl << std::string(m_level * 2, ' ');
-      _fout << "\"children\": [";
+      if (!m_minimal) fout << std::string(m_level * 2, ' ');
+      fout << "\"text\": \"" << name << "\",";
+      if (!m_minimal) fout << std::endl << std::string(m_level * 2, ' ');
+      if (icon != "") fout << "\"icon\": \"images/" << icon << ".png\",";
+      if (!m_minimal && icon != "") fout << std::endl << std::string(m_level * 2, ' ');
+      fout << "\"children\": [";
       ++m_level;
-      if (!m_minimal) _fout << std::endl;
+      if (!m_minimal) fout << std::endl;
     }
 
-    void addLeaf(std::ostream& _fout, std::string _name, std::string _icon = "") {
-      if (m_hasLeaves != 0) _fout << "," << std::endl;
+    void addLeaf(std::ostream& fout, std::string name, std::string icon = "") {
+      if (m_hasLeaves != 0) fout << "," << std::endl;
       m_hasLeaves = kTRUE;
-      if (!m_minimal) _fout << std::string(m_level * 2, ' ');
-      _fout << "{\"text\": \"" << _name << "\"";
-      if (_icon != "") _fout << ", \"icon\": \"images/" << _icon << ".png\"";
-      _fout << "}";
+      if (!m_minimal) fout << std::string(m_level * 2, ' ');
+      fout << "{\"text\": \"" << name << "\"";
+      if (icon != "") fout << ", \"icon\": \"images/" << icon << ".png\"";
+      fout << "}";
     }
 
-    void addLeafCustom(std::ostream& _fout, std::string _name, std::string _value, std::string _name2 = "",
-                       std::string _value2 = "") {
-      if (m_hasLeaves != 0) _fout << "," << std::endl;
+    void addLeafCustom(std::ostream& fout, std::string name, std::string value, std::string name2 = "",
+                       std::string value2 = "") {
+      if (m_hasLeaves != 0) fout << "," << std::endl;
       m_hasLeaves = kTRUE;
-      if (!m_minimal) _fout << std::string(m_level * 2, ' ');
-      _fout << "{\"" << _name << "\": \"" << _value << "\"";
-      if (_name2 != "") {
-        _fout << ", \"" << _name2 << "\": \"" << _value2 << "\"}";
+      if (!m_minimal) fout << std::string(m_level * 2, ' ');
+      fout << "{\"" << name << "\": \"" << value << "\"";
+      if (name2 != "") {
+        fout << ", \"" << name2 << "\": \"" << value2 << "\"}";
       } else {
-        _fout << "}";
+        fout << "}";
       }
     }
 
-    void endNode(std::ostream& _fout) {
+    void endNode(std::ostream& fout) {
       if (m_hasLeaves != 0) {
-        _fout << std::endl;
+        fout << std::endl;
       }
       m_hasLeaves = kFALSE;
       m_justEnded = kTRUE;
 
 
-      if (!m_minimal) _fout << std::string(m_level * 2, ' ');
-      _fout << "]";
+      if (!m_minimal) fout << std::string(m_level * 2, ' ');
+      fout << "]";
       --m_level; // Leaves
 
 
-      if (!m_minimal) _fout << std::endl;
-      _fout << std::string(m_level * 2, ' ') << "}" << std::endl; //always do this endl to make the file not crazy
+      if (!m_minimal) fout << std::endl;
+      fout << std::string(m_level * 2, ' ') << "}" << std::endl; //always do this endl to make the file not crazy
       --m_level; // Node
     }
 
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/WriteXML_JSON.h b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/WriteXML_JSON.h
index 695982f6ed7fa9291fd5e1a60b2c196bc9bac781..bacddb45d735878fcc5965436ae58a792eebefaf 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/WriteXML_JSON.h
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/TrigCostRootAnalysis/WriteXML_JSON.h
@@ -35,61 +35,61 @@
 namespace TrigCostRootAnalysis {
   class XMLExport {
   public:
-    XMLExport(std::ostream& _fout) : m_level(0), m_spaces(2), m_minimal(kFALSE) {
-      writeHeader(_fout);
+    XMLExport(std::ostream& fout) : m_level(0), m_spaces(2), m_minimal(kFALSE) {
+      writeHeader(fout);
     }
 
     XMLExport() : m_level(0), m_spaces(2), m_minimal(kFALSE) {
     }
 
-    void setSpaces(UInt_t _n) {
-      m_spaces = _n;
+    void setSpaces(UInt_t n) {
+      m_spaces = n;
     }
 
-    void writeHeader(std::ostream& _fout) {
-      _fout << "<?xml version=\"1.0\" encoding=\"us-ascii\"?>" << std::endl;
+    void writeHeader(std::ostream& fout) {
+      fout << "<?xml version=\"1.0\" encoding=\"us-ascii\"?>" << std::endl;
     }
 
-    void addNode(std::ostream& _fout, std::string _name, std::string _nodeData = "_NONE") { // With or without node data
-      if (!m_minimal) _fout << std::string(m_level * m_spaces, ' ');
+    void addNode(std::ostream& fout, std::string name, std::string nodeData = "_NONE") { // With or without node data
+      if (!m_minimal) fout << std::string(m_level * m_spaces, ' ');
 
-      _fout << "<" << _name << ">";
+      fout << "<" << name << ">";
 
-      if (_nodeData != "_NONE") { // Have data, note that "" may be the 'data' we want to save
-        _fout << _nodeData;
-        _fout << "</" << _name << ">" << std::endl; // Don't have data
+      if (nodeData != "_NONE") { // Have data, note that "" may be the 'data' we want to save
+        fout << nodeData;
+        fout << "</" << name << ">" << std::endl; // Don't have data
       } else {
-        _fout << std::endl;
-        m_nodes.push_back(_name);
+        fout << std::endl;
+        m_nodes.push_back(name);
         ++m_level;
       }
     }
 
-    void addNodeWProperty(std::ostream& _fout, std::string _name,
-                          std::string _p1name, std::string _p1data,
-                          std::string _p2name = "", std::string _p2data = "",
-                          std::string _p3name = "", std::string _p3data = "",
-                          std::string _p4name = "", std::string _p4data = "") { // node with up to 3 properties
-      if (!m_minimal) _fout << std::string(m_level * m_spaces, ' ');
+    void addNodeWProperty(std::ostream& fout, std::string name,
+                          std::string p1name, std::string p1data,
+                          std::string p2name = "", std::string p2data = "",
+                          std::string p3name = "", std::string p3data = "",
+                          std::string p4name = "", std::string p4data = "") { // node with up to 3 properties
+      if (!m_minimal) fout << std::string(m_level * m_spaces, ' ');
 
-      _fout << "<" << _name << " ";
+      fout << "<" << name << " ";
 
-      if (_p1name != Config::config().getStr(kBlankString)) _fout << _p1name << "=\"" << _p1data << "\" ";
-      if (_p2name != Config::config().getStr(kBlankString)) _fout << _p2name << "=\"" << _p2data << "\" ";
-      if (_p3name != Config::config().getStr(kBlankString)) _fout << _p3name << "=\"" << _p3data << "\" ";
-      if (_p4name != Config::config().getStr(kBlankString)) _fout << _p4name << "=\"" << _p4data << "\"";
+      if (p1name != Config::config().getStr(kBlankString)) fout << p1name << "=\"" << p1data << "\" ";
+      if (p2name != Config::config().getStr(kBlankString)) fout << p2name << "=\"" << p2data << "\" ";
+      if (p3name != Config::config().getStr(kBlankString)) fout << p3name << "=\"" << p3data << "\" ";
+      if (p4name != Config::config().getStr(kBlankString)) fout << p4name << "=\"" << p4data << "\"";
 
-      _fout << "/>" << std::endl;
+      fout << "/>" << std::endl;
     }
 
-    void endNode(std::ostream& _fout) {
+    void endNode(std::ostream& fout) {
       if (m_nodes.size() == 0) {
         Error("XMLExporter::endNode", "Node list empty. All nodes already closed.");
         return;
       }
       --m_level;
-      if (!m_minimal) _fout << std::string(m_level * m_spaces, ' ');
-      _fout << "</" << m_nodes.back() << ">" << std::endl;
+      if (!m_minimal) fout << std::string(m_level * m_spaces, ' ');
+      fout << "</" << m_nodes.back() << ">" << std::endl;
       m_nodes.pop_back();
     }
 
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/util/RunTrigCostD3PD.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/util/RunTrigCostD3PD.cxx
index 24c747c770ed9257b0ea2435f0d19513e99d833d..8506cb60234be22befc64a6c50436c73e3f941d3 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/util/RunTrigCostD3PD.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/util/RunTrigCostD3PD.cxx
@@ -48,11 +48,11 @@
  */
 
 // This function is to intercept Ctrl-C
-UInt_t _terminateCalls = 0;
-void handlerFunctionTerm(Int_t _parameter) {
-  if (_parameter == 2 && _terminateCalls++ == 0) {
+UInt_t terminateCalls = 0;
+void handlerFunctionTerm(Int_t parameter) {
+  if (parameter == 2 && terminateCalls++ == 0) {
     Warning("TrigCostD3PD", "Received exit signal. Exiting event loop and writing output for events processed so far.");
-  } else if (_parameter == 2 && _terminateCalls++ > 0) {
+  } else if (parameter == 2 && terminateCalls++ > 0) {
     Fatal("TrigCostD3PD", "Received another exit signal. Aborting now.");
     abort();
   }
@@ -63,14 +63,14 @@ using namespace TrigCostRootAnalysis;
 int main(int argc, char* argv[]) {
   signal(SIGINT, handlerFunctionTerm);
 
-  Timer _timerSetup("Main", "Setup");
-  Timer _timerLoop("Main", "Event Loop");
-  Timer _timerFinalise("Main", "Finalise");
-  Timer _timerWrite("Main", "Writing");
+  Timer timerSetup("Main", "Setup");
+  Timer timerLoop("Main", "Event Loop");
+  Timer timerFinalise("Main", "Finalise");
+  Timer timerWrite("Main", "Writing");
 
-  clock_t _tStart, _tEnd, _tProgress;
-  _tStart = clock();
-  _timerSetup.start();
+  clock_t tStart, tEnd, tProgress;
+  tStart = clock();
+  timerSetup.start();
 
   SetTrigCostAtlasStyle();
 
@@ -79,10 +79,10 @@ int main(int argc, char* argv[]) {
 
   Info("TrigCostD3PD", "Execute RunTrigCostD3PD");
 
-  Config& _config = Config::config();
-  Bool_t _isConfigured = _config.parseCLI(argc, argv);
+  Config& config = Config::config();
+  Bool_t isConfigured = config.parseCLI(argc, argv);
 
-  if (_isConfigured) {
+  if (isConfigured) {
     Info("TrigCostD3PD", "All program options parsed, preparing event loop.");
   } else {
     Error("TrigCostD3PD", "There were issues configuring this cost execution. Try --help. Aborting.");
@@ -91,221 +91,225 @@ int main(int argc, char* argv[]) {
 
 
   // Master chain of all files to analyse
-  TChain _chain(_config.getStr(kTreeName).c_str());
+  TChain chain(config.getStr(kTreeName).c_str());
   // Configuration tree chain
 
   // Add files to chain
-  for (UInt_t _f = 0; _f < _config.getVecSize(kInputFiles); ++_f) {
-    _chain.Add(_config.getVecEntry(kInputFiles, _f).c_str());
+  for (UInt_t f = 0; f < config.getVecSize(kInputFiles); ++f) {
+    chain.Add(config.getVecEntry(kInputFiles, f).c_str());
   }
 
   // 'event' is very important, it's used pass-by-reference and dictates which entry in the tree we're reading from.
-  Long64_t _event = 0;
+  Long64_t event = 0;
 
   // Create readers for cost branches and attach them to the TChain
   // These readers are wrapped in a data access class which provides a more intuitive interface.
-  TrigCostData _L2Data;
-  TrigCostData _EFData;
-  TrigCostData _HLTData;
+  TrigCostData L2Data;
+  TrigCostData EFData;
+  TrigCostData HLTData; 
+  
+  if ( config.getInt(kDoL2) == kTRUE ) L2Data.setup( event, config.getStr(kL2Prefix).c_str(), &chain );
+  if ( config.getInt(kDoEF) == kTRUE ) EFData.setup( event, config.getStr(kEFPrefix).c_str(), &chain );
+  if ( config.getInt(kDoHLT) == kTRUE ) HLTData.setup( event, config.getStr(kHLTPrefix).c_str(), &chain );
 
   // Need to be explicit here else coverity pipes up
-  const Bool_t _doL2 = _config.getInt(kDoL2);
-  const Bool_t _doEF = _config.getInt(kDoEF);
-  const Bool_t _doHLT = _config.getInt(kDoHLT);
+  const Bool_t doL2 = config.getInt(kDoL2);
+  const Bool_t doEF = config.getInt(kDoEF);
+  const Bool_t doHLT = config.getInt(kDoHLT);
 
-  if (_doL2) _L2Data.setup(_event, _config.getStr(kL2Prefix).c_str(), &_chain);
-  if (_doEF) _EFData.setup(_event, _config.getStr(kEFPrefix).c_str(), &_chain);
-  if (_doHLT) _HLTData.setup(_event, _config.getStr(kHLTPrefix).c_str(), &_chain);
+  if (doL2) L2Data.setup(event, config.getStr(kL2Prefix).c_str(), &chain);
+  if (doEF) EFData.setup(event, config.getStr(kEFPrefix).c_str(), &chain);
+  if (doHLT) HLTData.setup(event, config.getStr(kHLTPrefix).c_str(), &chain);
 
   // Create event processors. These hold individual monitors and distribute data in the event loop.
-  ProcessEvent* _processEventL2 = new ProcessEvent(&_L2Data, 2, _config.getStr(kL2String));
-  ProcessEvent* _processEventEF = new ProcessEvent(&_EFData, 3, _config.getStr(kEFString));
-  ProcessEvent* _processEventHLT = new ProcessEvent(&_HLTData, 2, _config.getStr(kHLTString));
+  ProcessEvent* processEventL2 = new ProcessEvent(&L2Data, 2, config.getStr(kL2String));
+  ProcessEvent* processEventEF = new ProcessEvent(&EFData, 3, config.getStr(kEFString));
+  ProcessEvent* processEventHLT = new ProcessEvent(&HLTData, 2, config.getStr(kHLTString));
 
   // Setup the monitors we'll be using within the ProcessEvents
   // Start at kAllMonitors - this will fire an internal loop in ProcessEvent if true to enable all monitors in the enum
 
-  for (UInt_t _mon = kDoAllMonitor; _mon > kMonitorBegin; --_mon) {
-    ConfKey_t _monKey = static_cast<ConfKey_t>(_mon);
-    if (_doL2) _processEventL2->setMonitoringMode(_monKey, _config.getInt(_monKey));
-    if (_doEF) _processEventEF->setMonitoringMode(_monKey, _config.getInt(_monKey));
-    if (_doHLT) _processEventHLT->setMonitoringMode(_monKey, _config.getInt(_monKey));
+  for (UInt_t mon = kDoAllMonitor; mon > kMonitorBegin; --mon) {
+    ConfKey_t monKey = static_cast<ConfKey_t>(mon);
+    if (doL2) processEventL2->setMonitoringMode(monKey, config.getInt(monKey));
+    if (doEF) processEventEF->setMonitoringMode(monKey, config.getInt(monKey));
+    if (doHLT) processEventHLT->setMonitoringMode(monKey, config.getInt(monKey));
     // If kAllMonitors was true we can stop here
-    if (_monKey == kDoAllMonitor && _config.getInt(kDoAllMonitor) == kTRUE) break;
+    if (monKey == kDoAllMonitor && config.getInt(kDoAllMonitor) == kTRUE) break;
   }
 
-  Long64_t _eventsSinceLastPrint = 0, _messageNumber = 0;
-  UInt_t _reportAfter = CLOCKS_PER_SEC * _config.getInt(kMessageWait);
-  time_t _onlineTime = 0;
-  Float_t _effectivePrescale = 0.;
-  std::set<UInt_t> _lbProcessed;
-  std::string _onlineTimeStr;
-  struct rusage _resources;
-  std::string _outputProgressFile;
-  const Bool_t _writeEBWeightXML = _config.getInt(kWriteEBWeightXML);
-  const Int_t _LBStart = _config.getInt(kLumiStart);
-  const Int_t _LBEnd = _config.getInt(kLumiEnd);
+  Long64_t eventsSinceLastPrint = 0, messageNumber = 0;
+  UInt_t reportAfter = CLOCKS_PER_SEC * config.getInt(kMessageWait);
+  time_t onlineTime = 0;
+  Float_t effectivePrescale = 0.;
+  std::set<UInt_t> lbProcessed;
+  std::string onlineTimeStr;
+  struct rusage resources;
+  std::string outputProgressFile;
+  const Bool_t writeEBWeightXML = config.getInt(kWriteEBWeightXML);
+  const Int_t LBStart = config.getInt(kLumiStart);
+  const Int_t LBEnd = config.getInt(kLumiEnd);
   // Begin event loop
 
-  _config.setLong(kEventsInFiles, _chain.GetEntries(), "EventsInFiles");
-  Info("D3PD", "Events in files: %lli", _config.getLong(kEventsInFiles));
-  if (!_config.getLong(kEventsInFiles)) abort();
+  config.setLong(kEventsInFiles, chain.GetEntries(), "EventsInFiles");
+  Info("D3PD", "Events in files: %lli", config.getLong(kEventsInFiles));
+  if (!config.getLong(kEventsInFiles)) abort();
 
-  _tProgress = _tStart;
+  tProgress = tStart;
 
-  Int_t _nPasses = _config.getInt(kNPasses);
-  for (Int_t _pass = 1; _pass <= _nPasses; ++_pass) {
-    if (_nPasses > 1) Info("TrigCostD3PD",
+  Int_t nPasses = config.getInt(kNPasses);
+  for (Int_t pass = 1; pass <= nPasses; ++pass) {
+    if (nPasses > 1) Info("TrigCostD3PD",
                            "|----------|---PASS----|--NUMBER--|-----%i------|----OF----|-----%i------|--------------|",
-                           _pass, _nPasses);
-    _config.set(kCurrentPass, _pass, "CurrentPass", kUnlocked);
-    _processEventL2->setPass(_pass);
-    _processEventEF->setPass(_pass);
-    _processEventHLT->setPass(_pass);
-    _config.setLong(kEventsProcessed, 0, "EventsProcessed", kUnlocked);
-    _config.setLong(kEventsSkipped, 0, "EventsSkipped", kUnlocked);
-
-    for (Long64_t _masterEvent = 0; _masterEvent < _chain.GetEntries(); ++_masterEvent) {
+                           pass, nPasses);
+    config.set(kCurrentPass, pass, "CurrentPass", kUnlocked);
+    processEventL2->setPass(pass);
+    processEventEF->setPass(pass);
+    processEventHLT->setPass(pass);
+    config.setLong(kEventsProcessed, 0, "EventsProcessed", kUnlocked);
+    config.setLong(kEventsSkipped, 0, "EventsSkipped", kUnlocked);
+
+    for (Long64_t masterEvent = 0; masterEvent < chain.GetEntries(); ++masterEvent) {
       // Load correct tree in chain into memory
       // Returns the local entry number within the tree
       // (D3PD reader doesn't distinguish between TTree or TChain)
-      _event = _chain.LoadTree(_masterEvent);
-      if (_event == 0) {
-        Info("TrigCostD3PD", "Opening new file: %s", _chain.GetFile()->GetName());
+      event = chain.LoadTree(masterEvent);
+      if (event == 0) {
+        Info("TrigCostD3PD", "Opening new file: %s", chain.GetFile()->GetName());
       }
-      assert(_event >= 0); // -1=Empty, -2=OutOfRange, -3=FileIOProblem, -4=TTreeMissing
+      assert(event >= 0); // -1=Empty, -2=OutOfRange, -3=FileIOProblem, -4=TTreeMissing
 
       // If first event, perform configuration on loaded treesf
-      if (_masterEvent == 0 && _pass == 1 && _config.getInt(kWriteEBWeightXML) == kFALSE) {
+      if (masterEvent == 0 && pass == 1 && config.getInt(kWriteEBWeightXML) == kFALSE) {
         // Get the run number
-        if (_doL2 && _config.getIsSet(kRunNumber) == kFALSE) {
-          _config.set(kRunNumber, _L2Data.getRunNumber(), "RunNumber");
-          _onlineTime = _L2Data.getCostRunSec();
-        } else if (_doEF && _config.getIsSet(kRunNumber) == kFALSE) {
-          _config.set(kRunNumber, _EFData.getRunNumber(), "RunNumber");
-          _onlineTime = _EFData.getCostRunSec();
-        } else if (_doHLT && _config.getIsSet(kRunNumber) == kFALSE) {
-          _config.set(kRunNumber, _HLTData.getRunNumber(), "RunNumber");
-          _onlineTime = _HLTData.getCostRunSec();
+        if (doL2 && config.getIsSet(kRunNumber) == kFALSE) {
+          config.set(kRunNumber, L2Data.getRunNumber(), "RunNumber");
+          onlineTime = L2Data.getCostRunSec();
+        } else if (doEF && config.getIsSet(kRunNumber) == kFALSE) {
+          config.set(kRunNumber, EFData.getRunNumber(), "RunNumber");
+          onlineTime = EFData.getCostRunSec();
+        } else if (doHLT && config.getIsSet(kRunNumber) == kFALSE) {
+          config.set(kRunNumber, HLTData.getRunNumber(), "RunNumber");
+          onlineTime = HLTData.getCostRunSec();
         }
         TrigXMLService::trigXMLService().init();
-        struct tm* _timeinfo = gmtime(&_onlineTime);
-        char _buffer[80];
-        strftime(_buffer, 80, "%F %R UTC", _timeinfo);
-        _onlineTimeStr = std::string(_buffer);
-        std::string _outDirectory = _config.getStr(kOutputDirectory);
-        if (_outDirectory.find("%r") != std::string::npos) { //If this string is present, replace it with the run number
-          _outDirectory.replace(_outDirectory.find("%r"), 2, intToString(_config.getInt(kRunNumber)));
+        struct tm* timeinfo = gmtime(&onlineTime);
+        char buffer[80];
+        strftime(buffer, 80, "%F %R UTC", timeinfo);
+        onlineTimeStr = std::string(buffer);
+        std::string outDirectory = config.getStr(kOutputDirectory);
+        if (outDirectory.find("%r") != std::string::npos) { //If this string is present, replace it with the run number
+          outDirectory.replace(outDirectory.find("%r"), 2, intToString(config.getInt(kRunNumber)));
         }
-        if (_outDirectory.find("%t") != std::string::npos) { //If this string is present, replace it with the tag
-          _outDirectory.replace(_outDirectory.find("%t"), 2, _config.getStr(kOutputTag));
+        if (outDirectory.find("%t") != std::string::npos) { //If this string is present, replace it with the tag
+          outDirectory.replace(outDirectory.find("%t"), 2, config.getStr(kOutputTag));
         }
-        _config.set(kOutputDirectory, _outDirectory, "OutputDirectory", kLocked); // Lock this time
-        Info("TrigCostD3PD", "We are processing run %i, cost montioring has the timestamp %s", _config.getInt(
-               kRunNumber), _onlineTimeStr.c_str());
-        if (_config.getInt(kCleanAll)) { // send rm command to get rid of current output directory
-          std::string _toCall = std::string("rm -r ") + _config.getStr(kOutputDirectory) + std::string("/");
-          Info("TrigCostD3PD", "Cleaning up from before, executing the command: '%s'", _toCall.c_str());
-          gSystem->Exec(_toCall.c_str());
+        config.set(kOutputDirectory, outDirectory, "OutputDirectory", kLocked); // Lock this time
+        Info("TrigCostD3PD", "We are processing run %i, cost montioring has the timestamp %s", config.getInt(
+               kRunNumber), onlineTimeStr.c_str());
+        if (config.getInt(kCleanAll)) { // send rm command to get rid of current output directory
+          std::string toCall = std::string("rm -r ") + config.getStr(kOutputDirectory) + std::string("/");
+          Info("TrigCostD3PD", "Cleaning up from before, executing the command: '%s'", toCall.c_str());
+          gSystem->Exec(toCall.c_str());
         }
-        gSystem->mkdir(_config.getStr(kOutputDirectory).c_str(), kTRUE);
-        _outputProgressFile = _config.getStr(kOutputDirectory) + "/progress.json";
+        gSystem->mkdir(config.getStr(kOutputDirectory).c_str(), kTRUE);
+        outputProgressFile = config.getStr(kOutputDirectory) + "/progress.json";
         // Do symlink
-        if (_config.getInt(kLinkOutputDir) == kTRUE) {
-          std::string _toCall = std::string("ln -sfn ") + _config.getStr(kOutputDirectory) + std::string(" ") +
-                                _config.getStr(kLinkOutputDirName);
-          Info("TrigCostD3PD", "Soft linking the output dir, executing the command: '%s'", _toCall.c_str());
-          gSystem->Exec(_toCall.c_str());
+        if (config.getInt(kLinkOutputDir) == kTRUE) {
+          std::string toCall = std::string("ln -sfn ") + config.getStr(kOutputDirectory) + std::string(" ") +
+                                config.getStr(kLinkOutputDirName);
+          Info("TrigCostD3PD", "Soft linking the output dir, executing the command: '%s'", toCall.c_str());
+          gSystem->Exec(toCall.c_str());
         }
         // Setup the trigger configuration
-        TrigConfInterface::configure(&_chain);
-        if (_config.debug()) TrigConfInterface::debug();
-        if (_config.getInt(kWriteDummyPSXML) == kTRUE) {
+        TrigConfInterface::configure(&chain);
+        if (config.debug()) TrigConfInterface::debug();
+        if (config.getInt(kWriteDummyPSXML) == kTRUE) {
           // Here the user has asked us to simple dump out the menu to a prescale XML file
           TrigXMLService::trigXMLService().writePrescaleXML();
           Info("TrigCostD3PD", "Written dummy XML, program will now terminate.");
           abort();
         }
         // Load the effective "prescale" that CostMon was run with online.
-        Float_t _doOperationalInfo = 0, _execPrescale = 0.;
-        std::string _doOperationalInfoStr = TrigConfInterface::getMetaStringVal("doOperationalInfo");
-        std::string _execPrescaleStr = TrigConfInterface::getMetaStringVal("ExecPrescale");
-        if (_doOperationalInfoStr != _config.getStr(kBlankString)) _doOperationalInfo = stringToFloat(
-            _doOperationalInfoStr);
-        if (_execPrescaleStr != _config.getStr(kBlankString)) _execPrescale = stringToFloat(_execPrescaleStr);
-        _effectivePrescale = _doOperationalInfo * _execPrescale;
+        Float_t doOperationalInfo = 0, execPrescale = 0.;
+        std::string doOperationalInfoStr = TrigConfInterface::getMetaStringVal("doOperationalInfo");
+        std::string execPrescaleStr = TrigConfInterface::getMetaStringVal("ExecPrescale");
+        if (doOperationalInfoStr != config.getStr(kBlankString)) doOperationalInfo = stringToFloat(
+            doOperationalInfoStr);
+        if (execPrescaleStr != config.getStr(kBlankString)) execPrescale = stringToFloat(execPrescaleStr);
+        effectivePrescale = doOperationalInfo * execPrescale;
         // This is for backward compatability for files without these data
-        if (isZero(_effectivePrescale) == kTRUE) _effectivePrescale = 1.;
-        _config.setFloat(kEffectivePrescale, _effectivePrescale, "EffectivePrescale");
-        Float_t _basicWeight = _config.getFloat(kBasicEventWeight);
-        Float_t _lumiExtrapWeight = TrigXMLService::trigXMLService().getLumiExtrapWeight();
-        Float_t _eventWeight = _basicWeight * _effectivePrescale * _lumiExtrapWeight;
-        if (isZero(_eventWeight - 1.) == kTRUE) { // Info if weight == 1
+        if (isZero(effectivePrescale) == kTRUE) effectivePrescale = 1.;
+        config.setFloat(kEffectivePrescale, effectivePrescale, "EffectivePrescale");
+        Float_t basicWeight = config.getFloat(kBasicEventWeight);
+        Float_t lumiExtrapWeight = TrigXMLService::trigXMLService().getLumiExtrapWeight();
+        Float_t eventWeight = basicWeight * effectivePrescale * lumiExtrapWeight;
+        if (isZero(eventWeight - 1.) == kTRUE) { // Info if weight == 1
           Info("TrigCostD3PD",
                "Will apply global weight %f to all events (BasicWeight:%.2f, EffectiveCostPrescale:%.2f, LumiExtrapWeight:%.2f)",
-               _eventWeight, _basicWeight, _effectivePrescale, _lumiExtrapWeight);
+               eventWeight, basicWeight, effectivePrescale, lumiExtrapWeight);
         } else { // If weight != 1, this should be bumped up to a warning
           Warning("TrigCostD3PD",
                   "Will apply global weight %f to all events (BasicWeight:%.2f, EffectiveCostPrescale:%.2f, LumiExtrapWeight:%.2f)",
-                  _eventWeight, _basicWeight, _effectivePrescale, _lumiExtrapWeight);
+                  eventWeight, basicWeight, effectivePrescale, lumiExtrapWeight);
         }
-        _config.setFloat(kEventWeight, _eventWeight, "EventWeight");
-        _timerSetup.stop();
+        config.setFloat(kEventWeight, eventWeight, "EventWeight");
+        timerSetup.stop();
       }
 
       // Get trigger configuration for current event
-      //TrigConfInterface::getEntry( _event ); //not needed
+      //TrigConfInterface::getEntry( event ); //not needed
 
       // Skip N events at beginning
-      if (_config.getLong(kEventsSkipped) < _config.getLong(kNSkip)) {
-        _config.increment(kEventsSkipped);
+      if (config.getLong(kEventsSkipped) < config.getLong(kNSkip)) {
+        config.increment(kEventsSkipped);
         continue;
       }
 
-      _timerLoop.start();
+      timerLoop.start();
 
       // Get event weight
-      Float_t _weight = 1;
-      if (_writeEBWeightXML == kFALSE) {
-        _weight = _config.getFloat(kEventWeight); // This is our base weight that we can apply additional weights on top
+      Float_t weight = 1;
+      if (writeEBWeightXML == kFALSE) {
+        weight = config.getFloat(kEventWeight); // This is our base weight that we can apply additional weights on top
                                                   // of
-        TrigConfInterface::newEvent(_HLTData.getLumi());       // Check / get menu configuration
+        TrigConfInterface::newEvent(HLTData.getLumi());       // Check / get menu configuration
       }
 
-      Bool_t _eventAccepted = kFALSE;
+      Bool_t eventAccepted = kFALSE;
 
       // Execute L2 monitoring
-      if (_doL2 && !isZero(_weight)) {
+      if (doL2 && !isZero(weight)) {
         // Check lumi block
-        if (_L2Data.getLumi() >= _LBStart && _L2Data.getLumi() <= _LBEnd) {
-          _eventAccepted = _processEventL2->newEvent(_weight);
+        if (L2Data.getLumi() >= LBStart && L2Data.getLumi() <= LBEnd) {
+          eventAccepted = processEventL2->newEvent(weight);
         }
       }
 
       // Execute EF monitoring
-      if (_doEF && !isZero(_weight)) {
+      if (doEF && !isZero(weight)) {
         // Check lumi block
-        if (_EFData.getLumi() >= _LBStart && _EFData.getLumi() <= _LBEnd) {
-          _eventAccepted = _processEventEF->newEvent(_weight);
+        if (EFData.getLumi() >= LBStart && EFData.getLumi() <= LBEnd) {
+          eventAccepted = processEventEF->newEvent(weight);
         }
       }
 
       // Execute HLT monitoring
-      if (_doHLT && !isZero(_weight)) {
-        if (_writeEBWeightXML == kTRUE) {
-          TrigXMLService::trigXMLService().exportEnhancedBiasXML(_HLTData.getEventNumber(),
-                                                                 _HLTData.getEBWeight(),
-            _HLTData.getEBWeightBG(), _HLTData.getEBUnbiased());
-        } else if (_HLTData.getLumi() >= _LBStart && _HLTData.getLumi() <= _LBEnd &&
-                   TrigXMLService::trigXMLService().getIsLBFlaggedBad(_HLTData.getLumi()) == kFALSE) {
-          _lbProcessed.insert(_HLTData.getLumi());
-          _eventAccepted = _processEventHLT->newEvent(_weight);
+      if (doHLT && !isZero(weight)) {
+        if (writeEBWeightXML == kTRUE) {
+          TrigXMLService::trigXMLService().exportEnhancedBiasXML(HLTData.getEventNumber(),
+                                                                 HLTData.getEBWeight(),
+            HLTData.getEBWeightBG(), HLTData.getEBUnbiased());
+        } else if (HLTData.getLumi() >= LBStart && HLTData.getLumi() <= LBEnd &&
+                   TrigXMLService::trigXMLService().getIsLBFlaggedBad(HLTData.getLumi()) == kFALSE) {
+          lbProcessed.insert(HLTData.getLumi());
+          eventAccepted = processEventHLT->newEvent(weight);
         }
       }
 
-      if ((clock() - _tProgress) >= _reportAfter) {
-        _tProgress = clock();
-        if (_messageNumber++ % 20 == 0) {
+      if ((clock() - tProgress) >= reportAfter) {
+        tProgress = clock();
+        if (messageNumber++ % 20 == 0) {
           Info("TrigCostD3PD",
                "|----------|-----------|----------|------------|----------|------------|--------------|");
           Info("TrigCostD3PD",
@@ -315,164 +319,164 @@ int main(int argc, char* argv[]) {
           Info("TrigCostD3PD",
                "|----------|-----------|----------|------------|----------|------------|--------------|");
         }
-        getrusage(RUSAGE_SELF, &_resources);
-        Float_t _memoryUsage = (Float_t) _resources.ru_maxrss / 1024.;
-        Float_t _timeSoFar = (Float_t) (_tProgress - _tStart) / CLOCKS_PER_SEC;
-        Long64_t _nEventsProcessedOrSkipped = _config.getLong(kEventsProcessed) + _config.getLong(kEventsSkipped);
-        Long64_t _nEventsLeft =
+        getrusage(RUSAGE_SELF, &resources);
+        Float_t memoryUsage = (Float_t) resources.ru_maxrss / 1024.;
+        Float_t timeSoFar = (Float_t) (tProgress - tStart) / CLOCKS_PER_SEC;
+        Long64_t nEventsProcessedOrSkipped = config.getLong(kEventsProcessed) + config.getLong(kEventsSkipped);
+        Long64_t nEventsLeft =
           std::min(
-            _config.getLong(kNEvents) - _nEventsProcessedOrSkipped,
-            _config.getLong(kEventsInFiles) - _nEventsProcessedOrSkipped);
-        UInt_t _minsLeft = 0;
-        if (_nEventsProcessedOrSkipped) _minsLeft =
-          (_nEventsLeft * (_timeSoFar / (Float_t) _nEventsProcessedOrSkipped)) / 60.;
-        UInt_t _hoursLeft = _minsLeft / 60;
-        _minsLeft = _minsLeft % 60;
-        Float_t _timePerEventLastFewSecs = 0;
-        if (_nEventsProcessedOrSkipped - _eventsSinceLastPrint) {
-          _timePerEventLastFewSecs = (_reportAfter / CLOCKS_PER_SEC) /
-          (Float_t) (_nEventsProcessedOrSkipped - _eventsSinceLastPrint) * 1000.;
+            config.getLong(kNEvents) - nEventsProcessedOrSkipped,
+            config.getLong(kEventsInFiles) - nEventsProcessedOrSkipped);
+        UInt_t minsLeft = 0;
+        if (nEventsProcessedOrSkipped) minsLeft =
+          (nEventsLeft * (timeSoFar / (Float_t) nEventsProcessedOrSkipped)) / 60.;
+        UInt_t hoursLeft = minsLeft / 60;
+        minsLeft = minsLeft % 60;
+        Float_t timePerEventLastFewSecs = 0;
+        if (nEventsProcessedOrSkipped - eventsSinceLastPrint) {
+          timePerEventLastFewSecs = (reportAfter / CLOCKS_PER_SEC) /
+          (Float_t) (nEventsProcessedOrSkipped - eventsSinceLastPrint) * 1000.;
         }
         Info("TrigCostD3PD", "| %-*lli | %-*lli | %-*lli | %-*.2f | %-*.2f | %-*.2f | %*d:%-*d |",
-             8, _masterEvent,
-             9, _config.getLong(kEventsProcessed),
-             8, _config.getLong(kEventsSkipped),
-             10, _memoryUsage,
-             8, _timeSoFar,
-             10, _timePerEventLastFewSecs,
-             5, _hoursLeft, 6, _minsLeft);
-        _eventsSinceLastPrint = _nEventsProcessedOrSkipped;
+             8, masterEvent,
+             9, config.getLong(kEventsProcessed),
+             8, config.getLong(kEventsSkipped),
+             10, memoryUsage,
+             8, timeSoFar,
+             10, timePerEventLastFewSecs,
+             5, hoursLeft, 6, minsLeft);
+        eventsSinceLastPrint = nEventsProcessedOrSkipped;
         // Save partial result
-        std::ofstream _fout(_outputProgressFile.c_str());
-        JsonExport _json;
-        _json.addNode(_fout, "progress");
-        _json.addLeafCustom(_fout, "EventsProcessed", intToString(_config.getLong(kEventsProcessed)));
-        _json.addLeafCustom(_fout, "EventsInFiles", intToString(_config.getLong(kEventsInFiles)));
-        _json.addLeafCustom(_fout, "HoursLeft", intToString(_hoursLeft));
-        _json.addLeafCustom(_fout, "MinsLeft", intToString(_minsLeft));
-        _json.endNode(_fout);
-        _fout.close();
-        _config.set(kWroteProgressFile, 1, "WroteProgressFile", kUnlocked);
+        std::ofstream fout(outputProgressFile.c_str());
+        JsonExport json;
+        json.addNode(fout, "progress");
+        json.addLeafCustom(fout, "EventsProcessed", intToString(config.getLong(kEventsProcessed)));
+        json.addLeafCustom(fout, "EventsInFiles", intToString(config.getLong(kEventsInFiles)));
+        json.addLeafCustom(fout, "HoursLeft", intToString(hoursLeft));
+        json.addLeafCustom(fout, "MinsLeft", intToString(minsLeft));
+        json.endNode(fout);
+        fout.close();
+        config.set(kWroteProgressFile, 1, "WroteProgressFile", kUnlocked);
       }
 
-      if (_eventAccepted == kTRUE) {
-        _config.increment(kEventsProcessed);
+      if (eventAccepted == kTRUE) {
+        config.increment(kEventsProcessed);
       } else {
-        _config.increment(kEventsSkipped);
+        config.increment(kEventsSkipped);
       }
 
-      _timerLoop.stop();
+      timerLoop.stop();
 
       //Early exit from enough events or ctrl-C
-      if (_config.getLong(kEventsProcessed) >= _config.getLong(kNEvents) || _terminateCalls) {
+      if (config.getLong(kEventsProcessed) >= config.getLong(kNEvents) || terminateCalls) {
         break;
       }
-    } // MassterEvent loop
+    } // MasterEvent loop
   } // Pass loop
 
-  ++_terminateCalls; // Such that a press of Crtl-C from this point on will terminate on the first issue.
+  ++terminateCalls; // Such that a press of Crtl-C from this point on will terminate on the first issue.
   Info("TrigCostD3PD", "|----------|-----------|----------|------------|----------|------------|--------------|");
 
-  _tEnd = clock();
-  Float_t _time = ((Float_t) _tEnd - (Float_t) _tStart) / CLOCKS_PER_SEC;
-  getrusage(RUSAGE_SELF, &_resources);
-  Info("TrigCostD3PD", "End of Event Loop Processed:%lli Skipped:%lli", _config.getLong(
-    kEventsProcessed), _config.getLong(kEventsSkipped));
+  tEnd = clock();
+  Float_t time = ((Float_t) tEnd - (Float_t) tStart) / CLOCKS_PER_SEC;
+  getrusage(RUSAGE_SELF, &resources);
+  Info("TrigCostD3PD", "End of Event Loop Processed:%lli Skipped:%lli", config.getLong(
+    kEventsProcessed), config.getLong(kEventsSkipped));
   // Do breakdown?
-  if (_config.getInt(kDoEBWeighting) != 0) {
-    IntIntMap_t _bgMap = TrigXMLService::trigXMLService().getBGMap();
-    IntIntMap_t _bgUbMap = TrigXMLService::trigXMLService().getBGUnbiasedMap();
-    for (IntIntMapIt_t _it = _bgMap.begin(); _it != _bgMap.end(); ++_it) {
+  if (config.getInt(kDoEBWeighting) != 0) {
+    IntIntMap_t bgMap = TrigXMLService::trigXMLService().getBGMap();
+    IntIntMap_t bgUbMap = TrigXMLService::trigXMLService().getBGUnbiasedMap();
+    for (IntIntMapIt_t it = bgMap.begin(); it != bgMap.end(); ++it) {
       Info("TrigCostD3PD", "  Events from Bunch Group %s: %i (of which unbiased %i)",
-           BunchGroupNameStr[ (*_it).first ].c_str(),
-           (*_it).second,
-           _bgUbMap[ (*_it).first ]);
+           BunchGroupNameStr[ (*it).first ].c_str(),
+           (*it).second,
+           bgUbMap[ (*it).first ]);
     }
   }
-  if (_config.getLong(kEventsProcessed) != 0) {
-    Info("TrigCostD3PD", "Program execution CPU wall time:%.2f s, Per-Event:%.2f ms", _time,
-    (_time / (Float_t) _config.getLong(kEventsProcessed)) * 1000.);
+  if (config.getLong(kEventsProcessed) != 0) {
+    Info("TrigCostD3PD", "Program execution CPU wall time:%.2f s, Per-Event:%.2f ms", time,
+    (time / (Float_t) config.getLong(kEventsProcessed)) * 1000.);
   }
   Info("TrigCostD3PD", "Program execution final memory footprint: %.2f Mb with %u histograms.",
-       (Float_t) _resources.ru_maxrss / 1024.,
+       (Float_t) resources.ru_maxrss / 1024.,
        DataVariable::s_globalHistId);
 
   ///  --- OUTPUT SECTION ---  ///
-  _timerFinalise.start();
+  timerFinalise.start();
 
 
 
 
-  if (_writeEBWeightXML == kTRUE) TrigXMLService::trigXMLService().saveExportedEnhancedBiasXML();
+  if (writeEBWeightXML == kTRUE) TrigXMLService::trigXMLService().saveExportedEnhancedBiasXML();
 
-  TFile* _outFile = 0;
-  if (_config.getInt(kOutputRoot) == kTRUE) {
-    const std::string _outputFileName = _config.getStr(kOutputDirectory) + "/" + _config.getStr(kOutputRootFilename);
-    _outFile = new TFile(_outputFileName.c_str(), "UPDATE");
+  TFile* outFile = 0;
+  if (config.getInt(kOutputRoot) == kTRUE) {
+    const std::string outputFileName = config.getStr(kOutputDirectory) + "/" + config.getStr(kOutputRootFilename);
+    outFile = new TFile(outputFileName.c_str(), "UPDATE");
   }
 
   // Do output
-  if (_config.getInt(kDoHLT) == kTRUE) _processEventHLT->saveOutput();
-  if (_config.getInt(kDoEF) == kTRUE) _processEventEF->saveOutput();
-  if (_config.getInt(kDoL2) == kTRUE) _processEventL2->saveOutput();
+  if (config.getInt(kDoHLT) == kTRUE) processEventHLT->saveOutput();
+  if (config.getInt(kDoEF) == kTRUE) processEventEF->saveOutput();
+  if (config.getInt(kDoL2) == kTRUE) processEventL2->saveOutput();
 
   //LumiService::lumiService().saveOutput();
-  _timerFinalise.stop();
+  timerFinalise.stop();
 
-  if (_config.getInt(kOutputRoot) == kTRUE) {
-    _timerWrite.start();
+  if (config.getInt(kOutputRoot) == kTRUE) {
+    timerWrite.start();
     Info("TrigCostD3PD", "Closing output ROOT file. Now at the mercy of ROOT I/O. Hold tight.");
-    _outFile->Close();
-    _timerWrite.stop();
+    outFile->Close();
+    timerWrite.stop();
   }
 
   // Save metadata
-  if (_config.getInt(kDoNotWriteMetadata) == kFALSE) {
+  if (config.getInt(kDoNotWriteMetadata) == kFALSE) {
     // Update user details, fill in patterns
-    if (_config.getIsSet(kUserDetails) == kTRUE) {
-      std::string _userDetails = _config.getStr(kUserDetails);
-      if (_userDetails.find("%l") != std::string::npos) { //If this string is present, replace it with N LB
-        _userDetails.replace(_userDetails.find("%l"), 2, intToString((Int_t) _lbProcessed.size()));
+    if (config.getIsSet(kUserDetails) == kTRUE) {
+      std::string userDetails = config.getStr(kUserDetails);
+      if (userDetails.find("%l") != std::string::npos) { //If this string is present, replace it with N LB
+        userDetails.replace(userDetails.find("%l"), 2, intToString((Int_t) lbProcessed.size()));
       }
-      if (_userDetails.find("%e") != std::string::npos) { //If this string is present, replace it with n events
-        _userDetails.replace(_userDetails.find("%e"), 2,
-        floatToString(Float_t(_config.getLong(kEventsProcessed) * _effectivePrescale)));
+      if (userDetails.find("%e") != std::string::npos) { //If this string is present, replace it with n events
+        userDetails.replace(userDetails.find("%e"), 2,
+        floatToString(Float_t(config.getLong(kEventsProcessed) * effectivePrescale)));
       }
-      _config.set(kUserDetails, _userDetails, "Details", kLocked);
+      config.set(kUserDetails, userDetails, "Details", kLocked);
     }
     TrigConfInterface::populateLBPerKeysetStrings();
 
-    const std::string _outputMetadata = _config.getStr(kOutputDirectory) + "/metadata.json";
-    std::ofstream _fout(_outputMetadata.c_str());
-    JsonExport _json;
-    _json.addNode(_fout, "metadata");
-    _json.addLeafCustom(_fout, "Date of Processing", _onlineTimeStr);
-    Config::config().dumpToMeta(_fout, _json);
+    const std::string outputMetadata = config.getStr(kOutputDirectory) + "/metadata.json";
+    std::ofstream fout(outputMetadata.c_str());
+    JsonExport json;
+    json.addNode(fout, "metadata");
+    json.addLeafCustom(fout, "Date of Processing", onlineTimeStr);
+    Config::config().dumpToMeta(fout, json);
     // Get metadata from the last root file
-    if (_writeEBWeightXML == kFALSE) {
-      for (UInt_t _m = 0; _m < TrigConfInterface::getMetaStringN(); ++_m) {
-        std::string _metaKey = TrigConfInterface::getMetaStringKey(_m);
-        //Info("TrigCostD3PD","Exporting metadata %s = %s", _metaKey.c_str(),
-        // TrigConfInterface::getMetaStringVal(_m).c_str());
-        _json.addLeafCustom(_fout, _metaKey, TrigConfInterface::getMetaStringVal(_m));
+    if (writeEBWeightXML == kFALSE) {
+      for (UInt_t m = 0; m < TrigConfInterface::getMetaStringN(); ++m) {
+        std::string metaKey = TrigConfInterface::getMetaStringKey(m);
+        //Info("TrigCostD3PD","Exporting metadata %s = %s", metaKey.c_str(),
+        // TrigConfInterface::getMetaStringVal(m).c_str());
+        json.addLeafCustom(fout, metaKey, TrigConfInterface::getMetaStringVal(m));
       }
     }
     // Got metadata from the last root file
-    std::string _CLI;
-    for (Int_t _i = 0; _i < argc; ++_i) _CLI += std::string(argv[_i]) + std::string(" ");
-    while (_CLI.find("\"") != std::string::npos) _CLI.replace(_CLI.find("\""), 1, "'");                                                                                            // Only
+    std::string CLI;
+    for (Int_t i = 0; i < argc; ++i) CLI += std::string(argv[i]) + std::string(" ");
+    while (CLI.find("\"") != std::string::npos) CLI.replace(CLI.find("\""), 1, "'");                                                                                            // Only
                                                                                                                                                                                    // single
                                                                                                                                                                                    // quotes
-    _json.addLeafCustom(_fout, "Command", _CLI);
-    _json.endNode(_fout);
-    _fout.close();
+    json.addLeafCustom(fout, "Command", CLI);
+    json.endNode(fout);
+    fout.close();
   }
 
   // Remove progress file
-  if (_config.getIsSet(kWroteProgressFile) == kTRUE) {
-    const std::string _rmProg = std::string("rm ") + _outputProgressFile;
-    Info("TrigCostD3PD", "Remove progress file, execute: %s", _rmProg.c_str());
-    gSystem->Exec(_rmProg.c_str());
+  if (config.getIsSet(kWroteProgressFile) == kTRUE) {
+    const std::string rmProg = std::string("rm ") + outputProgressFile;
+    Info("TrigCostD3PD", "Remove progress file, execute: %s", rmProg.c_str());
+    gSystem->Exec(rmProg.c_str());
   }
 
 
@@ -487,7 +491,7 @@ int main(int argc, char* argv[]) {
 
     std::cout << "Beginning Automated Cost Monitoring" << '\n';
 
-    AutoMonControl auto_monitoring = AutoMonControl(Config::config().getStr(kAutoMonXMLPath).c_str(), _processEventHLT);
+    AutoMonControl auto_monitoring = AutoMonControl(Config::config().getStr(kAutoMonXMLPath).c_str(), processEventHLT);
     auto_monitoring.loadXml();
     auto_monitoring.runAutoMonitoring();
     std::cout << "Finished Automated Cost Monitoring" << '\n';
@@ -501,17 +505,17 @@ int main(int argc, char* argv[]) {
 
   Timer::printAll();
 
-  _config.messageSuppressionReport();
+  config.messageSuppressionReport();
 
   // Cleanup
   TrigConfInterface::reset();
 
-  if (_config.getInt(kSloppyExit) == kFALSE) {
+  if (config.getInt(kSloppyExit) == kFALSE) {
     Info("TrigCostD3PD",
          "Cleaning all counters and histograms from the heap before program terminates, this can be slow.");
-    delete _processEventL2;
-    delete _processEventEF;
-    delete _processEventHLT;
+    delete processEventL2;
+    delete processEventEF;
+    delete processEventHLT;
   } else {
     // This is very naughty, but the memory will be bulk-freed upon return. Saves lots of time.
   }
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/util/TrigCostD3PD_UserSkeleton.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/util/TrigCostD3PD_UserSkeleton.cxx
index c7d0967b1c85b78f0937509cf7a41cc27503ecae..4aefd400841cf5d83fcf0faf1e155cbd5389f9c3 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/util/TrigCostD3PD_UserSkeleton.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/util/TrigCostD3PD_UserSkeleton.cxx
@@ -33,27 +33,27 @@ using namespace TrigCostRootAnalysis;
 
 int main() {
   Info("TrigCostD3PD", "Execute UserSkeleton");
-  const std::string _treeName = "trig_cost";
+  const std::string treeName = "trig_cost";
 
   // Master chain of all files to analyse
-  TChain _chain(_treeName.c_str());
+  TChain chain(treeName.c_str());
 
-  std::vector< std::string > _inputFiles;
+  std::vector< std::string > inputFiles;
   // TODO - ADD YOUR FILES
-  _inputFiles.push_back("/afs/cern.ch/work/t/tamartin/public/NTUP_TRIGCOST.05385661._001604.pool.root");
+  inputFiles.push_back("/afs/cern.ch/work/t/tamartin/public/NTUP_TRIGCOST.05385661._001604.pool.root");
 
 
-  for (UInt_t f = 0; f < _inputFiles.size(); ++f) {
-    _chain.Add(_inputFiles.at(f).c_str());
-    Info("TrigCostD3PD", "Using Input File: %s", _inputFiles.at(f).c_str());
+  for (UInt_t f = 0; f < inputFiles.size(); ++f) {
+    chain.Add(inputFiles.at(f).c_str());
+    Info("TrigCostD3PD", "Using Input File: %s", inputFiles.at(f).c_str());
   }
 
   // 'event' is very important, it's used pass-by-reference and dictates which entry in the tree we're reading from.
-  Long64_t _event = 0;
+  Long64_t event = 0;
 
   // If you need L2 or EF data, add extra instances of TrigCostData
-  TrigCostData _HLTData;
-  _HLTData.setup(/*currentEvent*/ _event, /*branch prefix*/ "TrigCostHLT_", /*TTree (or TChain)*/ &_chain);
+  TrigCostData HLTData;
+  HLTData.setup(/*currentEvent*/ event, /*branch prefix*/ "TrigCostHLT_", /*TTree (or TChain)*/ &chain);
 
   // Set location of config tree
   Config::config().set(kConfigPrefix, "trig_costMeta/TrigConfTree", "ConfigPrefix");
@@ -61,9 +61,9 @@ int main() {
   // Set the name of the ROS mapping
   // This is the RootCore environment way.
   Config::config().set(kROSXMLName, "rob-ros-robin-2012.xml");
-  const Char_t* _env = std::getenv("ROOTCOREBIN");
-  if (_env != NULL) {
-    Config::config().set(kDataDir, std::string(_env) + std::string("/data/TrigCostRootAnalysis/"));
+  const Char_t* env = std::getenv("ROOTCOREBIN");
+  if (env != NULL) {
+    Config::config().set(kDataDir, std::string(env) + std::string("/data/TrigCostRootAnalysis/"));
     Config::config().set(kROSXMLPath, Config::config().getStr(kDataDir) + Config::config().getStr(kROSXMLName));
   }
 
@@ -71,10 +71,10 @@ int main() {
 #ifndef ROOTCORE
   Config::config().set(kIsRootCore, 0, "IsRootCore");
   if (Config::config().getIsSet(kROSXMLName)) {
-    std::string _locAthena = PathResolverFindDataFile(Config::config().getStr(kROSXMLName));
-    if (_locAthena == "") Error("Config::parseCLI", "Athena cannot find ROS mapping file %s", Config::config().getStr(kROSXMLName).c_str());
+    std::string locAthena = PathResolverFindDataFile(Config::config().getStr(kROSXMLName));
+    if (locAthena == "") Error("Config::parseCLI", "Athena cannot find ROS mapping file %s", Config::config().getStr(kROSXMLName).c_str());
     else {
-      Config::config().set(kROSXMLPath, _locAthena, "ROSXMLPath");
+      Config::config().set(kROSXMLPath, locAthena, "ROSXMLPath");
       Info("Config::parseCLI", "Athena has found the file: %s", Config::config().getStr(kROSXMLPath).c_str());
     }
   }
@@ -93,92 +93,92 @@ int main() {
 
   Info("TrigCostD3PD", "Doing some sample output, have a look at TrigCostData.h to see all accessible data calls.");
 
-  const UInt_t _maxEvents = 1;
+  const UInt_t maxEvents = 1;
 
   // Begin event loop
-  for (Long64_t _masterEvent = 0; _masterEvent < _chain.GetEntries(); ++_masterEvent) {
+  for (Long64_t masterEvent = 0; masterEvent < chain.GetEntries(); ++masterEvent) {
     // Load correct tree into memory in the chain
-    _event = _chain.LoadTree(_masterEvent);
-    assert(_event >= 0); // -1=Empty, -2=OutOfRange, -3=FileIOProblem, -4=TTreeMissing
+    event = chain.LoadTree(masterEvent);
+    assert(event >= 0); // -1=Empty, -2=OutOfRange, -3=FileIOProblem, -4=TTreeMissing
 
     //if start of file, config
-    if (_event == 0) {
+    if (event == 0) {
       TrigConfInterface::reset();
-      TrigConfInterface::configure(&_chain);
+      TrigConfInterface::configure(&chain);
     }
 
     /// CHAINS
-    Info("TrigCostD3PD::EventLoop", "Event %lli, Number of Chains: %i", _event, _HLTData.getNChains());
-    for (UInt_t _c = 0; _c < _HLTData.getNChains(); ++_c) {
+    Info("TrigCostD3PD::EventLoop", "Event %lli, Number of Chains: %i", event, HLTData.getNChains());
+    for (UInt_t c = 0; c < HLTData.getNChains(); ++c) {
       Info("TrigCostD3PD::EventLoop", " -- Chain:%s, PassedRaw:%s, Time:%.2f ms, Algs:%i",
-           TrigConfInterface::getHLTNameFromChainID(_HLTData.getChainID(_c), _HLTData.getChainLevel(_c)).c_str(),
-           (_HLTData.getIsChainPassedRaw(_c) ? "YES" : "NO"),
-           _HLTData.getChainTimerFromSequences(_c),
-           (_HLTData.getChainAlgCalls(_c) + _HLTData.getChainAlgCaches(_c)));
+           TrigConfInterface::getHLTNameFromChainID(HLTData.getChainID(c), HLTData.getChainLevel(c)).c_str(),
+           (HLTData.getIsChainPassedRaw(c) ? "YES" : "NO"),
+           HLTData.getChainTimerFromSequences(c),
+           (HLTData.getChainAlgCalls(c) + HLTData.getChainAlgCaches(c)));
     }
 
     /// SEQUENCES AND ALGS
-    for (UInt_t _s = 0; _s < _HLTData.getNSequences(); ++_s) {
+    for (UInt_t s = 0; s < HLTData.getNSequences(); ++s) {
       Info("TrigCostD3PD::EventLoop", " -- -- Sequence:%s/%s",
-           TrigConfInterface::getHLTNameFromChainID(_HLTData.getSequenceChannelCounter(_s), _HLTData.getSequenceLevel(_s)).c_str(),
-           TrigConfInterface::getHLTSeqNameFromIndex(_HLTData.getSequenceIndex(_s)).c_str());
+           TrigConfInterface::getHLTNameFromChainID(HLTData.getSequenceChannelCounter(s), HLTData.getSequenceLevel(s)).c_str(),
+           TrigConfInterface::getHLTSeqNameFromIndex(HLTData.getSequenceIndex(s)).c_str());
 
       // Loop over all algorithms in sequence
-      for (UInt_t _a = 0; _a < _HLTData.getNSeqAlgs(_s); ++_a) {
-        Int_t _seqIndex = _HLTData.getSequenceIndex(_s);
-        Int_t _seqAlgPos = _HLTData.getSeqAlgPosition(_s, _a);
+      for (UInt_t a = 0; a < HLTData.getNSeqAlgs(s); ++a) {
+        Int_t seqIndex = HLTData.getSequenceIndex(s);
+        Int_t seqAlgPos = HLTData.getSeqAlgPosition(s, a);
 
-        const std::string _algName = TrigConfInterface::getHLTAlgNameFromSeqIDAndAlgPos(_seqIndex, _seqAlgPos);
-        const std::string _algType = TrigConfInterface::getHLTAlgClassNameFromSeqIDAndAlgPos(_seqIndex, _seqAlgPos);
+        const std::string algName = TrigConfInterface::getHLTAlgNameFromSeqIDAndAlgPos(seqIndex, seqAlgPos);
+        const std::string algType = TrigConfInterface::getHLTAlgClassNameFromSeqIDAndAlgPos(seqIndex, seqAlgPos);
 
         Info("TrigCostD3PD::EventLoop", " -- -- -- Algorithm:%s::%s, Time:%.6f ms, Data:%.2f kB",
-             _algType.c_str(), _algName.c_str(),
-             _HLTData.getSeqAlgTimer(_s, _a),
-             (_HLTData.getSeqAlgROBRetrievalSize(_s, _a) + _HLTData.getSeqAlgROBRequestSize(_s, _a)));
+             algType.c_str(), algName.c_str(),
+             HLTData.getSeqAlgTimer(s, a),
+             (HLTData.getSeqAlgROBRetrievalSize(s, a) + HLTData.getSeqAlgROBRequestSize(s, a)));
       }
     }
 
     /// ROS
-    for (UInt_t _Rob = 0; _Rob < _HLTData.getNROBs(); ++_Rob) {
-      std::pair< Int_t, Int_t > _alg = _HLTData.getROBAlgLocation(_Rob);
-      std::string _requestingAlg = "NotFound";
-      if (_alg.first > -1 && _alg.second > -1) {
-        Int_t _seqIndex = _HLTData.getSequenceIndex(_alg.first);
-        Int_t _seqAlgPos = _HLTData.getSeqAlgPosition(_alg.first, _alg.second);
-        _requestingAlg = TrigConfInterface::getHLTAlgNameFromSeqIDAndAlgPos(_seqIndex, _seqAlgPos);
+    for (UInt_t Rob = 0; Rob < HLTData.getNROBs(); ++Rob) {
+      std::pair< Int_t, Int_t > alg = HLTData.getROBAlgLocation(Rob);
+      std::string requestingAlg = "NotFound";
+      if (alg.first > -1 && alg.second > -1) {
+        Int_t seqIndex = HLTData.getSequenceIndex(alg.first);
+        Int_t seqAlgPos = HLTData.getSeqAlgPosition(alg.first, alg.second);
+        requestingAlg = TrigConfInterface::getHLTAlgNameFromSeqIDAndAlgPos(seqIndex, seqAlgPos);
       }
       Info("TrigCostD3PD::EventLoop", " -- ROS Request by '%s': Start:%i.%i Stop:%i.%i Time:%.6f",
-           _requestingAlg.c_str(),
-           _HLTData.getROBTimeStartSec(_Rob),
-           _HLTData.getROBTimeStartMicroSec(_Rob),
-           _HLTData.getROBTimeStopSec(_Rob),
-           _HLTData.getROBTimeStopMicroSec(_Rob),
-           _HLTData.getROBTimer(_Rob));
-      for (UInt_t _RobData = 0; _RobData < _HLTData.getROBDataN(_Rob); ++_RobData) {
-        Int_t _RobId = _HLTData.getROBDataID(_Rob, _RobData);
-        const std::string _RobinName = ROSConfService::rosConfService().getRobinNameFromId((UInt_t) _RobId);
-        const std::string _RosName = ROSConfService::rosConfService().getRosNameFromFromRobinName(_RobinName);
-
-        Bool_t _cached = _HLTData.getIsROBDataCached(_Rob, _RobData);
+           requestingAlg.c_str(),
+           HLTData.getROBTimeStartSec(Rob),
+           HLTData.getROBTimeStartMicroSec(Rob),
+           HLTData.getROBTimeStopSec(Rob),
+           HLTData.getROBTimeStopMicroSec(Rob),
+           HLTData.getROBTimer(Rob));
+      for (UInt_t RobData = 0; RobData < HLTData.getROBDataN(Rob); ++RobData) {
+        Int_t RobId = HLTData.getROBDataID(Rob, RobData);
+        const std::string RobinName = ROSConfService::rosConfService().getRobinNameFromId((UInt_t) RobId);
+        const std::string RosName = ROSConfService::rosConfService().getRosNameFromFromRobinName(RobinName);
+
+        Bool_t cached = HLTData.getIsROBDataCached(Rob, RobData);
         Info("TrigCostD3PD::EventLoop", " -- -- ROB:(%s | %s) : Size:%.6f kb : %s",
-             _RosName.c_str(),
-             _RobinName.c_str(),
-             _HLTData.getROBDataSize(_Rob, _RobData),
-             (_cached ? "Cached" : "Retrieved"));
+             RosName.c_str(),
+             RobinName.c_str(),
+             HLTData.getROBDataSize(Rob, RobData),
+             (cached ? "Cached" : "Retrieved"));
       }
     }
 
     /// ROI
-    for (UInt_t _r = 0; _r < _HLTData.getNRoIs(); ++_r) {
-      std::string _ROIType = _HLTData.getRoITypeString(_r);
+    for (UInt_t r = 0; r < HLTData.getNRoIs(); ++r) {
+      std::string ROIType = HLTData.getRoITypeString(r);
       Info("TrigCostD3PD::EventLoop", " -- ROI ID:%i Type:%s at Eta:%.2f Phi:%.2f",
-           _HLTData.getRoIID(_r),
-           _ROIType.c_str(),
-           _HLTData.getRoIEta(_r),
-           _HLTData.getRoIPhi(_r));
+           HLTData.getRoIID(r),
+           ROIType.c_str(),
+           HLTData.getRoIEta(r),
+           HLTData.getRoIPhi(r));
     }
 
-    if (_masterEvent >= _maxEvents) break;
+    if (masterEvent >= maxEvents) break;
   }
 
   Info("TrigCostD3PD", "Terminating");
diff --git a/Trigger/TrigHypothesis/TrigMultiVarHypo/src/TrigL2CaloRingerFexMT.cxx b/Trigger/TrigHypothesis/TrigMultiVarHypo/src/TrigL2CaloRingerFexMT.cxx
index bd00744cdb005ad60a5830a5998c4bd22d87c153..5896ae68f69442dae308b081a1203ed182ac3487 100644
--- a/Trigger/TrigHypothesis/TrigMultiVarHypo/src/TrigL2CaloRingerFexMT.cxx
+++ b/Trigger/TrigHypothesis/TrigMultiVarHypo/src/TrigL2CaloRingerFexMT.cxx
@@ -69,7 +69,7 @@ StatusCode TrigL2CaloRingerFexMT::initialize(){
                                        m_etBins[i][0], m_etBins[i][1], m_etaBins[i][0],
                                        m_etaBins[i][1]);
     }
-    catch(std::bad_alloc xa){
+    catch(const std::bad_alloc& xa){
       ATH_MSG_ERROR( "Weight vector size is not compatible with nodes vector." );
       return StatusCode::FAILURE;
     }
@@ -101,7 +101,7 @@ StatusCode TrigL2CaloRingerFexMT::initialize(){
 
       preproc = new TrigRingerPreprocessor(nrings,normrings,sectionrings);
     }
-    catch(std::bad_alloc xa){
+    catch(const std::bad_alloc& xa){
      
       ATH_MSG_ERROR(  "Bad alloc for TrigRingerPrepoc." );
       return StatusCode::FAILURE;
diff --git a/Trigger/TrigT1/L1Topo/L1TopoAlgorithms/Root/EtaPhiWindow.cxx b/Trigger/TrigT1/L1Topo/L1TopoAlgorithms/Root/EtaPhiWindow.cxx
index 8203df9ed51b431e4ce0f041fb1d2ba46a6ca3c4..81aa63cbffd740f333dd829c42dd8012ee557675 100644
--- a/Trigger/TrigT1/L1Topo/L1TopoAlgorithms/Root/EtaPhiWindow.cxx
+++ b/Trigger/TrigT1/L1Topo/L1TopoAlgorithms/Root/EtaPhiWindow.cxx
@@ -53,8 +53,8 @@ TCS::EtaPhiWindow::initialize()
 
     TRG_MSG_INFO("MaxTob : "<<p_MaxTob);
     TRG_MSG_INFO("MinET    : "<<p_MinET);
-    TRG_MSG_INFO("EtaMin   : "<<p_EtaMin);
-    TRG_MSG_INFO("EtaMax   : "<<p_EtaMax);
+    TRG_MSG_INFO("EtaMin   : "<<(int)p_EtaMin);
+    TRG_MSG_INFO("EtaMax   : "<<(int)p_EtaMax);
     TRG_MSG_INFO("PhiMin   : "<<p_PhiMin);
     TRG_MSG_INFO("PhiMax   : "<<p_PhiMax);
     TRG_MSG_INFO("number of output bits : "<<numberOutputBits());
@@ -78,8 +78,8 @@ TCS::EtaPhiWindow::processBitCorrect(const std::vector<TCS::TOBArray const *> &i
             const std::ptrdiff_t iTob = distance( input[0]->begin(), tob1);
             if(nLeading!=0 and iTob>=nLeading) continue;
                 if( parType_t((*tob1)->Et()) <= p_MinET ) continue;
-                if( parType_t((*tob1)->eta()) <  p_EtaMin ) continue;
-                if( parType_t((*tob1)->eta()) >= p_EtaMax ) continue;
+                if( (int)parType_t((*tob1)->eta()) <  (int)p_EtaMin ) continue;
+                if( (int)parType_t((*tob1)->eta()) >= (int)p_EtaMax ) continue;
                 if( parType_t(abs((*tob1)->phi())) <  p_PhiMin ) continue;
                 if( parType_t(abs((*tob1)->phi())) >= p_PhiMax ) continue;
                 accept = true;
@@ -112,8 +112,8 @@ TCS::EtaPhiWindow::process(const std::vector<TCS::TOBArray const *> &input,
             const std::ptrdiff_t iTob = distance( input[0]->begin(), tob1);
             if(nLeading!=0 and iTob>=nLeading) continue;
             if( parType_t((*tob1)->Et()) <= p_MinET ) continue;
-            if( parType_t((*tob1)->eta()) <  p_EtaMin ) continue;
-            if( parType_t((*tob1)->eta()) >= p_EtaMax ) continue;
+            if( (int)parType_t((*tob1)->eta()) <  (int)p_EtaMin ) continue;
+            if( (int)parType_t((*tob1)->eta()) >= (int)p_EtaMax ) continue;
             if( parType_t(abs((*tob1)->phi())) <  p_PhiMin ) continue;
             if( parType_t(abs((*tob1)->phi())) >= p_PhiMax ) continue;
             accept = true;
diff --git a/Trigger/TrigT1/TrigT1CaloCalibConditions/share/L1CaloCalibConditionsMC_jobOptions.py b/Trigger/TrigT1/TrigT1CaloCalibConditions/share/L1CaloCalibConditionsMC_jobOptions.py
index 178b1e69fb313f5edbb6382f18f60960cd11fba8..f2e42db442778063d98f3c93ae3f059e308fcb1a 100644
--- a/Trigger/TrigT1/TrigT1CaloCalibConditions/share/L1CaloCalibConditionsMC_jobOptions.py
+++ b/Trigger/TrigT1/TrigT1CaloCalibConditions/share/L1CaloCalibConditionsMC_jobOptions.py
@@ -1,16 +1,16 @@
 include.block ( "TrigT1CaloCalibConditions/L1CaloCalibConditionsMC_jobOptions.py" )
-
-_L1CaloFolderList = [
+if globalflags.DataSource() is not "data":
+  _L1CaloFolderList = [
         "/TRIGGER/L1Calo/V2/Calibration/Physics/PprChanCalib",
         "/TRIGGER/L1Calo/V2/Calibration/PpmDeadChannels",
         "/TRIGGER/L1Calo/V2/Conditions/DisabledTowers",
         "/TRIGGER/L1Calo/V2/Configuration/PprChanDefaults",
-]
+  ]
 
-from IOVDbSvc.CondDB import conddb
-for k in _L1CaloFolderList:
-	conddb.addFolder("TRIGGER_OFL", folder=k)
-del _L1CaloFolderList
+  from IOVDbSvc.CondDB import conddb
+  for k in _L1CaloFolderList:
+    conddb.addFolder("TRIGGER_OFL", folder=k)
+  del _L1CaloFolderList
 
 # fix for ATR-XXXX necessary when writing database folders
 #_name_type_overrides = [
diff --git a/Trigger/TrigT1/TrigT1CaloCalibConditions/src/L1CaloPprChanCalibContainer.cxx b/Trigger/TrigT1/TrigT1CaloCalibConditions/src/L1CaloPprChanCalibContainer.cxx
index bb7da504351c65d465438e81ef3b7dd92f97d7a4..0686187079819bfb090b78cf9b772243d6c50300 100644
--- a/Trigger/TrigT1/TrigT1CaloCalibConditions/src/L1CaloPprChanCalibContainer.cxx
+++ b/Trigger/TrigT1/TrigT1CaloCalibConditions/src/L1CaloPprChanCalibContainer.cxx
@@ -122,6 +122,7 @@ void L1CaloPprChanCalibContainer::makeTransient(const std::map<std::string, Cond
   auto it = condAttrListCollectionMap.rbegin();  
 
   auto attrListCollection = it->second;
+
   for(const auto& item : *attrListCollection) {
     auto chanNum = item.first;
     const auto& attrList = item.second;
@@ -163,6 +164,8 @@ void L1CaloPprChanCalibContainer::makeTransient(const std::map<std::string, Cond
 
     addPprChanCalib(L1CaloPprChanCalib(chanNum, errorCode, pedMean, pedValue, pedFirSum, extBcidThreshold, satBcidThreshLow, satBcidThreshHigh, satBcidLevel, bcidEnergyRangeLow, bcidEnergyRangeHigh, firStartBit, firCoeff1, firCoeff2, firCoeff3, firCoeff4, firCoeff5, lutCpStrategy, lutCpOffset, lutCpNoiseCut, lutCpSlope, lutCpPar1, lutCpPar2, lutCpPar3, lutCpPar4, lutCpScale, lutJepStrategy, lutJepOffset, lutJepNoiseCut, lutJepSlope, lutJepPar1, lutJepPar2, lutJepPar3, lutJepPar4, lutJepScale));
   }
+  
+//   }
 }
 
 const L1CaloPprChanCalib* L1CaloPprChanCalibContainer::pprChanCalib(unsigned int channelId) const
diff --git a/Trigger/TrigT1/TrigT1CaloCondSvc/TrigT1CaloCondSvc/L1CaloCondSvc.icc b/Trigger/TrigT1/TrigT1CaloCondSvc/TrigT1CaloCondSvc/L1CaloCondSvc.icc
index 0b7f7cc66b8ab8e7a6b6cfce93efdec5f95bc661..8874cbdacc8d30b78e061a39629265ffb7535402 100755
--- a/Trigger/TrigT1/TrigT1CaloCondSvc/TrigT1CaloCondSvc/L1CaloCondSvc.icc
+++ b/Trigger/TrigT1/TrigT1CaloCondSvc/TrigT1CaloCondSvc/L1CaloCondSvc.icc
@@ -1,7 +1,7 @@
 // -*- C++ -*-
 
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef TRIGT1CALOCONDSVC_L1CALOCONDSVC_ICC
@@ -276,7 +276,7 @@ StatusCode L1CaloCondSvc::retrieveImpl( T*& pobj, const std::string& key) {
   //    }
    
   //sc = this->registerCondition(coolKey, pobj);
-  ATH_CHECK( this->registerCondition(pobj) );
+  ATH_CHECK( this->registerCondition(pobj,key) );
    
   //register object to storegate
   ATH_CHECK( m_detStore->record(pobj, key) );
@@ -287,7 +287,7 @@ StatusCode L1CaloCondSvc::retrieveImpl( T*& pobj, const std::string& key) {
 template <typename T>
 StatusCode L1CaloCondSvc::registerCondition(T*& pObj, const std::string& mykey) {
   ATH_MSG_DEBUG(  "L1CaloCondSvc::registerCondition(T*& pObj))" );
-
+  ATH_MSG_DEBUG(  " -> Specified key: "<< mykey );
   if(!pObj) {
     ATH_MSG_ERROR(  "IL1CaloPersistenceCapable* pObj is NULL in L1CaloCondSvc::registerCondition()" );
     return StatusCode::FAILURE;
@@ -335,6 +335,40 @@ StatusCode L1CaloCondSvc::registerCondition(T*& pObj, const std::string& mykey)
         vCoolInputKeys.clear(); vCoolInputKeys.push_back(mykey);
     }      
 
+    //Check if we specified some new key
+    
+    // Update for PprChanCalib
+    if (mykey!="" && mykey.find("PprChanCalib")!=std::string::npos){
+	ATH_MSG_INFO("Overriding default keys for PprChanCalib that were:");
+	for (auto it=vCoolInputKeys.begin();it!=vCoolInputKeys.end();++it) {ATH_MSG_INFO(*it);}
+        //Now set to specified key only
+	vCoolInputKeys.clear(); vCoolInputKeys.push_back(mykey);
+    }
+    
+    // Update for PprChanDefaults
+    if (mykey!="" && mykey.find("PprChanDefaults")!=std::string::npos){
+        ATH_MSG_INFO("Overriding default keys for PprChanDefaults that were:");
+        for (auto it=vCoolInputKeys.begin();it!=vCoolInputKeys.end();++it) {ATH_MSG_INFO(*it);}
+        //Now set to specified key only
+        vCoolInputKeys.clear(); vCoolInputKeys.push_back(mykey);
+    }    
+    
+    // Update for DisabledTowers
+    if (mykey!="" && mykey.find("DisabledTowers")!=std::string::npos){
+        ATH_MSG_INFO("Overriding default keys for DisabledTowers that were:");
+        for (auto it=vCoolInputKeys.begin();it!=vCoolInputKeys.end();++it) {ATH_MSG_INFO(*it);}
+        //Now set to specified key only
+        vCoolInputKeys.clear(); vCoolInputKeys.push_back(mykey);
+    } 
+    
+    // Update for PpmDeadChannels
+    if (mykey!="" && mykey.find("PpmDeadChannels")!=std::string::npos){
+        ATH_MSG_INFO("Overriding default keys for PpmDeadChannels that were:");
+        for (auto it=vCoolInputKeys.begin();it!=vCoolInputKeys.end();++it) {ATH_MSG_INFO(*it);}
+        //Now set to specified key only
+        vCoolInputKeys.clear(); vCoolInputKeys.push_back(mykey);
+    }     
+
     // this list is required to call updateConditions() later on
     std::list<std::string> lKeys;
 
@@ -344,6 +378,7 @@ StatusCode L1CaloCondSvc::registerCondition(T*& pObj, const std::string& mykey)
       std::string key = *it;
 
       lKeys.push_back(key);
+      ATH_MSG_DEBUG("Adding keys to maps: "<<key);
 
       m_mConditions[key].push_back(pObj);
       m_map_conditions2key[pObj].push_back(key);
@@ -358,6 +393,8 @@ StatusCode L1CaloCondSvc::registerCondition(T*& pObj, const std::string& mykey)
         // set the callback but do not trigger it immediately. updateConditions() is called only once all
         // the CondAttrListCollection the condition is depending on have been registered
         ATH_CHECK( m_detStore->regFcn(&L1CaloCondSvc::updateConditions, this, dh, key, false) );
+
+        ATH_MSG_DEBUG("Added "<<key<<" to m_mDataHandleAttrListColl");
       }
     }
 
diff --git a/Trigger/TrigT1/TrigT1CaloCondSvc/src/L1CaloCondSvc.cxx b/Trigger/TrigT1/TrigT1CaloCondSvc/src/L1CaloCondSvc.cxx
index d85e28ce4ebdf1efe449fa3c10a04c3a7d0b2902..556004f3d7e6ed2e1d8c81d35bc965203b457b7e 100755
--- a/Trigger/TrigT1/TrigT1CaloCondSvc/src/L1CaloCondSvc.cxx
+++ b/Trigger/TrigT1/TrigT1CaloCondSvc/src/L1CaloCondSvc.cxx
@@ -70,7 +70,8 @@ StatusCode L1CaloCondSvc::finalize()
 StatusCode L1CaloCondSvc::updateConditions(IOVSVC_CALLBACK_ARGS_K(keys)) {
 
 
-	ATH_MSG_VERBOSE("updateConditions()");
+// 	ATH_MSG_INFO("ACH updateConditions()");
+        ATH_MSG_VERBOSE("updateConditions()");
 
 	// set to store the list of objects to be updated.
 	std::set<IL1CaloPersistenceCapable*> vToBeUpdated;
@@ -79,7 +80,8 @@ StatusCode L1CaloCondSvc::updateConditions(IOVSVC_CALLBACK_ARGS_K(keys)) {
 	std::list<std::string>::const_iterator itr;
 	for(itr=keys.begin(); itr!=keys.end(); ++itr) {
 		std::string key = *itr;
-		ATH_MSG_VERBOSE("key = " << key);
+// 		ATH_MSG_INFO("ACH key = " << key);
+                ATH_MSG_VERBOSE("key = " << key);
 
 		// find the current key in the map
 		std::map<std::string, std::vector<IL1CaloPersistenceCapable*> >::const_iterator it_map = m_mConditions.find(key);
@@ -104,10 +106,11 @@ StatusCode L1CaloCondSvc::updateConditions(IOVSVC_CALLBACK_ARGS_K(keys)) {
 		// get the keys/folders required by current object
 		std::vector<std::string> vCoolInputKeys = pobj->coolInputKeys();
                 
-                std::vector<std::string> otherkeys = m_map_conditions2key[pobj];
-                vCoolInputKeys.insert(vCoolInputKeys.end(),otherkeys.begin(),otherkeys.end());
+    std::vector<std::string> otherkeys = m_map_conditions2key[pobj];
+    vCoolInputKeys.insert(vCoolInputKeys.end(),otherkeys.begin(),otherkeys.end());
                 
 		std::string conditionType = pobj->conditionType();
+//                 ATH_MSG_INFO("ACH conditionType = "<<conditionType);
 
 		if(conditionType=="CondAttrListCollection") {
 
@@ -118,13 +121,18 @@ StatusCode L1CaloCondSvc::updateConditions(IOVSVC_CALLBACK_ARGS_K(keys)) {
 			std::vector<std::string>::const_iterator it_coolInputKeys = vCoolInputKeys.begin();
 			for(;it_coolInputKeys!=vCoolInputKeys.end();++it_coolInputKeys) {
 				std::string key = *it_coolInputKeys;
+// 				ATH_MSG_INFO("ACH update key = " << key);
                                 std::map<std::string, const DataHandle<CondAttrListCollection>* >::iterator it = m_mDataHandleAttrListColl.find(key);
                                 if (it != m_mDataHandleAttrListColl.end()) {
 				   const DataHandle<CondAttrListCollection>& dh = *m_mDataHandleAttrListColl[key];
 				   const CondAttrListCollection* attrListCollection = &(*dh);
-				   if (attrListCollection) condAttrListCollectionMap[key] = (CondAttrListCollection*)attrListCollection;
+				   if (attrListCollection) {
+// 					ATH_MSG_INFO("ACH attrListCollection = "<<attrListCollection);
+					condAttrListCollectionMap[key] = (CondAttrListCollection*)attrListCollection;
+					}
                                 }
 			}
+// 			ATH_MSG_INFO("ACH condAttrListCollectionMap size is "<<condAttrListCollectionMap.size());
 			pobj->makeTransient(condAttrListCollectionMap);
 
 		} else if(conditionType=="AthenaAttributeList"){
diff --git a/Trigger/TrigT1/TrigT1CaloSim/TrigT1CaloSim/OverlayRun2TriggerTowerMaker.h b/Trigger/TrigT1/TrigT1CaloSim/TrigT1CaloSim/OverlayRun2TriggerTowerMaker.h
new file mode 100644
index 0000000000000000000000000000000000000000..7ccb68c0a5b4f88f29bc675baf96913008f853ab
--- /dev/null
+++ b/Trigger/TrigT1/TrigT1CaloSim/TrigT1CaloSim/OverlayRun2TriggerTowerMaker.h
@@ -0,0 +1,271 @@
+/*
+  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+*/
+// ================================================
+// OverlayRun2TriggerTowerMaker class description
+// ================================================
+//
+// THIS TEXT TO BE REPLACED BY ATLAS STANDARD FORMAT
+//
+//
+// class: OverlayRun2TriggerTowerMaker
+//
+// Description:
+//
+//The OverlayRun2TriggerTowerMaker class takes calorimeter cells from the TES and
+// forms Trigger Towers, which it then places back into the TES  The calorimeter
+// cells can be produced either by GEANT or other fast simulation packages
+// - this is defined by setting a parameter
+// CellType to 1 for CaloCells, 2 to reprocess TriggerTowers and 3 for LAr/Tile TTL1 input (a simulation of analogue towers);
+//
+// ................................................................
+//
+
+#ifndef TRIGT1CALOSIM_OVERLAYRUN2TRIGGERTOWERMAKER_H
+#define TRIGT1CALOSIM_OVERLAYRUN2TRIGGERTOWERMAKER_H
+
+// STL
+#include <array>
+#include <map>
+#include <string>
+#include <utility> // for std::pair, std::make_pair
+#include <vector>
+
+// Athena/Gaudi
+#include "AthenaBaseComps/AthAlgorithm.h"
+#include "GaudiKernel/ServiceHandle.h"
+#include "GaudiKernel/ToolHandle.h"
+#include "DataModel/DataVector.h"
+
+//Calorimeter tower includes
+#include "LArRawEvent/LArTTL1Container.h"
+#include "TileEvent/TileTTL1Container.h"
+
+//LVL1 Calo trigger includes
+#include "TrigT1CaloCalibConditions/L1CaloCoolChannelId.h"
+#include "TrigT1CaloCalibConditions/L1CaloPprChanDefaults.h"
+
+// EDM include(s)
+#include "xAODTrigL1Calo/TriggerTowerContainer.h"
+#include "xAODTrigL1Calo/TriggerTowerAuxContainer.h"
+
+// forward decl(s)
+class IAtRndmGenSvc;
+class ILumiBlockMuTool;
+class CaloLVL1_ID;
+class CaloTriggerTowerService;
+class L1CaloCondSvc;
+class L1CaloPprChanCalibContainer;
+class L1CaloPprChanCalib;
+class L1CaloPprChanDefaults;
+class L1CaloDisabledTowersContainer;
+class L1CaloDisabledTowers;
+class L1CaloPpmDeadChannelsContainer;
+class L1CaloPpmDeadChannels;
+
+namespace CLHEP { class HepRandomEngine; }
+namespace TrigConf { class ILVL1ConfigSvc; }
+
+namespace LVL1BS {
+   class ITrigT1CaloDataAccessV2;
+}
+
+namespace LVL1
+{
+class IL1TriggerTowerTool;
+class IL1CaloMappingTool;
+class InternalTriggerTower;
+class TriggerTower;
+
+class OverlayRun2TriggerTowerMaker : public AthAlgorithm, virtual public IIncidentListener
+{
+public:
+  //-------------------------
+  // Constructors/Destructors
+  //-------------------------
+  OverlayRun2TriggerTowerMaker(const std::string& name, ISvcLocator* pSvcLocator);
+  virtual ~OverlayRun2TriggerTowerMaker();
+
+  // These are disallowed
+  OverlayRun2TriggerTowerMaker(const OverlayRun2TriggerTowerMaker&) = delete;
+  OverlayRun2TriggerTowerMaker& operator=(const OverlayRun2TriggerTowerMaker&) = delete;
+
+  //------------------------------------------------------
+  // Methods used by Athena to run the algorithm
+  //------------------------------------------------------
+  StatusCode initialize();
+  StatusCode execute();
+  StatusCode finalize();
+
+  void handle(const Incident&);
+
+private:
+  // constants
+  constexpr static int s_FIRLENGTH = 5; // number of FIR coefficients
+  constexpr static int s_MEV = 1000; // scale for converting ET -> counts
+  constexpr static unsigned int m_maxIetaBins = 51;   // max numbers of eta regions if we choose a granularity of 0.1 in eta
+
+  // enums  -- SIZE must be the last entry in each enum
+  enum CellTypes{CELL=1, TRIGGERTOWERS=2, TTL1=3, SIZE=4};
+
+  // properties
+  // user-defined names for random number engines - keep streams distinct
+  std::string m_digiEngine;
+
+  // Input for this Algorithm, meaning in enum CellTypes 
+  int m_cellType;
+
+  // pedestal uncertainty and ADC noise
+  double m_adcVar;
+
+  // digitisation, FIR, LUT calibration parameters
+  double m_adcStep;
+  double m_gainCorr;
+  bool m_decorateFIR;
+
+  //Flag to enable zero suppression (makes algorithm simulation much faster
+  bool m_ZeroSuppress;
+
+  // locations within the TES to store collections of Trigger Towers
+  std::string m_outputLocation;
+
+  //  location of input TriggerTowers (for reprocessing)
+  std::string m_inputTTLocation;
+
+  // location of LAr TTL1 data
+  std::string m_EmTTL1ContainerName;
+  std::string m_HadTTL1ContainerName;
+  std::string m_TileTTL1ContainerName;
+
+  // require all calorimeters, or allow running with some missing?
+  bool m_requireAllCalos;
+
+  // database keys for the variousfolders
+  std::string m_chanCalibKey;
+  std::string m_chanDefaultsKey;
+  std::string m_disabledTowersKey;
+  std::string m_deadChannelsKey;
+  std::string m_chanCalibKeyoverlay;
+  std::string m_chanDefaultsKeyoverlay;
+  std::string m_disabledTowersKeyoverlay;
+  std::string m_deadChannelsKeyoverlay;
+
+  // Tools/Services
+  ServiceHandle<TrigConf::ILVL1ConfigSvc> m_configSvc;
+  ServiceHandle<IAtRndmGenSvc> m_rndGenSvc;
+  ServiceHandle<L1CaloCondSvc> m_condSvc;
+  CLHEP::HepRandomEngine* m_rndmADCs; // non owning ptr
+
+  ToolHandle<IL1TriggerTowerTool> m_TTtool;
+  ToolHandle<IL1CaloMappingTool> m_mappingTool;
+  ToolHandle<ILumiBlockMuTool> m_lumiBlockMuTool;
+  ToolHandle<LVL1BS::ITrigT1CaloDataAccessV2> m_bstowertool;
+
+  const CaloLVL1_ID* m_caloId; //non-owning ptr
+
+  // Global calibration scale (MeV/count, to optimise performance)
+  double m_digitScale;
+  // Global LUT scales
+  double m_cpLutScale;
+  double m_jepLutScale;
+  // conversion factor from tile amplitude to MeV
+  double m_TileToMeV;
+  // TileTTL1 may come with a pedestal - need to subtract if so
+  double m_TileTTL1Ped;
+
+  // flag whether we reprocess data
+  // if yes, special treatment of the pedestal correction is necessary
+  bool m_isDataReprocessing;
+  // Do overlay?
+  bool m_doOverlay;
+  bool m_isReco;
+
+  // non-owning pointers
+  L1CaloPprChanCalibContainer* m_chanCalibContainer = nullptr;
+  L1CaloDisabledTowersContainer* m_disabledTowersContainer = nullptr;
+  L1CaloPpmDeadChannelsContainer* m_deadChannelsContainer = nullptr;
+  L1CaloPprChanDefaults m_chanDefaults;
+  L1CaloPprChanCalibContainer* m_chanCalibContaineroverlay = nullptr;
+  L1CaloDisabledTowersContainer* m_disabledTowersContaineroverlay = nullptr;
+  L1CaloPpmDeadChannelsContainer* m_deadChannelsContaineroverlay = nullptr;
+  L1CaloPprChanDefaults m_chanDefaultsoverlay;
+
+  std::unique_ptr<xAOD::TriggerTowerContainer> m_xaodTowers;
+  std::unique_ptr<xAOD::TriggerTowerAuxContainer> m_xaodTowersAux;
+  std::vector<std::vector<double>> m_xaodTowersAmps; // stores the Amps (vector<double>) for each xaodTower
+  std::size_t m_curIndex = 0u;
+
+  /**
+     instead of calculating the expression:
+     double theta =2.*atan(exp(-fabs(cell_eta)));
+     cell_energy=sin(theta)*cell_energy;
+     for each em and had TT again, we will use a hash table
+  */
+  std::array<double, m_maxIetaBins> m_sinThetaHash;
+
+  /** Compute L1CaloCoolChannelId (including support for old geometries) */
+  L1CaloCoolChannelId channelId(double eta, double phi, int layer);
+
+
+  /** gets collection of input TriggerTowers for reprocessing */
+  StatusCode getTriggerTowers();
+  /** fetch Calorimeter Towers */
+  StatusCode getCaloTowers();
+
+  /** Convert analogue pulses to digits */
+  void digitize();
+
+  /** Simulate PreProcessing on analogue amplitudes */
+  StatusCode preProcess(const int eventBCID);
+  StatusCode preProcessTower(const int eventBCID,xAOD::TriggerTower* tower);
+  
+  /** Add overlay data **/
+  virtual StatusCode addOverlay(const int eventBCID);
+  virtual StatusCode addOverlay(const int eventBCID,xAOD::TriggerTower* sigTT,xAOD::TriggerTower* ovTT);
+  
+  /** PreProcess up to LUT in **/
+  StatusCode preProcessTower_getLutIn(const int eventBCID,xAOD::TriggerTower* tower,const L1CaloPprChanCalib* db,const std::vector<int>& digits,std::vector<int>& output);
+  
+  /** calculate LUT out **/
+  StatusCode calcLutOutCP(const std::vector<int>& sigLutIn,const L1CaloPprChanCalib* sigDB,const std::vector<int>& ovLutIn,const L1CaloPprChanCalib* ovDB,std::vector<int>& output);
+  StatusCode calcLutOutJEP(const std::vector<int>& sigLutIn,const L1CaloPprChanCalib* sigDB,const std::vector<int>& ovLutIn,const L1CaloPprChanCalib* ovDB,std::vector<int>& output);
+  void calcCombinedLUT(const std::vector<int>& sigIN,const int sigSlope,const int sigOffset,
+                       const std::vector<int>& ovIN,const int ovSlope,const int ovOffset,const int ovNoiseCut,std::vector<int>& output);  
+  
+  /** Database helper functions for dead and disabled towers **/
+  bool IsDeadChannel(const L1CaloPpmDeadChannels* db) const;
+  bool IsDisabledChannel(const L1CaloDisabledTowers* db) const;
+  bool IsGoodTower(const xAOD::TriggerTower* tt,const L1CaloPpmDeadChannelsContainer* dead,const L1CaloDisabledTowersContainer* disabled) const;
+
+  
+  /** normalise the number of ADC digits for overlay **/
+  void normaliseDigits(const std::vector<int>& sigDigits,const std::vector<int>& ovDigits,std::vector<int>& normDigits);
+
+  /** Stores Trigger Towers in the TES, at a
+      location defined in m_outputLocation.<p>
+      Returns FAILURE if the towers could not be saved. **/
+  StatusCode store();
+
+  /** extract amplitudes from TTL1 */
+  void processLArTowers(const LArTTL1Container * );
+  void processTileTowers(const TileTTL1Container *);
+
+  /** functions to extract eta, phi coordinates from calo tower identifiers **/
+  double IDeta(const Identifier& id, const CaloLVL1_ID* caloId);
+  double IDphi(const Identifier& id, const CaloLVL1_ID* caloId);
+
+  /** Functions to simulate processing of tower signals **/
+  std::vector<int> ADC(L1CaloCoolChannelId channel, const std::vector<double>& amps) const;
+  int EtRange(int et, unsigned short bcidEnergyRangeLow, unsigned short bcidEnergyRangeHigh) const;
+
+  // void preProcessLayer(int layer, int m_eventBCID, InternalTriggerTower* tower, std::vector<int>& etResultVector, std::vector<int>& bcidResultVector);
+  
+
+  int etaToElement(float feta, int layer) const;
+  
+  // non-linear LUT 
+  int non_linear_lut(int lutin, unsigned short offset, unsigned short slope, unsigned short noiseCut, unsigned short scale, short par1, short par2, short par3, short par4);  
+};
+
+} // namespace LVL1
+#endif
diff --git a/Trigger/TrigT1/TrigT1CaloSim/share/TrigT1CaloSimJobOptions_Run2.py b/Trigger/TrigT1/TrigT1CaloSim/share/TrigT1CaloSimJobOptions_Run2.py
index 765432532333d184afd3fc478c93cb974a202fbb..77a4e2bb8dafc224301a453f34b8e69a238a5a49 100755
--- a/Trigger/TrigT1/TrigT1CaloSim/share/TrigT1CaloSimJobOptions_Run2.py
+++ b/Trigger/TrigT1/TrigT1CaloSim/share/TrigT1CaloSimJobOptions_Run2.py
@@ -31,15 +31,16 @@ if not 'inputFileSummary' in dir():
         from RecExConfig.InputFilePeeker import inputFileSummary
     except ImportError:
         pass
-
-from AthenaCommon.DetFlags import DetFlags
-if DetFlags.overlay.LVL1_on() is True:
+      
+from AthenaCommon.GlobalFlags import globalflags
+if globalflags.isOverlay() is True:
     _doPC = False
     from AthenaCommon import CfgMgr
     from AthenaCommon.AppMgr import ToolSvc
     if not hasattr(ToolSvc, "LumiBlockMuTool"):
-        ToolSvc += CfgMgr.LumiBlockMuTool("LumiBlockMuTool")  
-    job += LVL1__Run2TriggerTowerMaker('Run2TriggerTowerMaker', 
+        ToolSvc += CfgMgr.LumiBlockMuTool("LumiBlockMuTool")
+    from TrigT1CaloSim.TrigT1CaloSimConf import LVL1__OverlayRun2TriggerTowerMaker
+    job += LVL1__OverlayRun2TriggerTowerMaker('Run2TriggerTowerMaker', 
                                       CellType = 3, 
                                       ZeroSuppress = True, 
                                       DoOverlay = True )
@@ -81,7 +82,7 @@ job += LVL1__CPCMX( 'CPCMX' )
 job += LVL1__JetCMX( 'JetCMX' )
 job += LVL1__EnergyCMX( 'EnergyCMX' )
 job += LVL1__RoIROD( 'RoIROD' )
-job += LVL1__Tester( 'Tester' )
+#job += LVL1__Tester( 'Tester' )
 
 from AthenaCommon import CfgMgr
 from AthenaCommon.AppMgr import ToolSvc
diff --git a/Trigger/TrigT1/TrigT1CaloSim/src/OverlayRun2TriggerTowerMaker.cxx b/Trigger/TrigT1/TrigT1CaloSim/src/OverlayRun2TriggerTowerMaker.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..9298d606bfca8c3dc0363acd204777e028e1598a
--- /dev/null
+++ b/Trigger/TrigT1/TrigT1CaloSim/src/OverlayRun2TriggerTowerMaker.cxx
@@ -0,0 +1,1259 @@
+/*
+  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+*/
+// ================================================
+// OverlayRun2TriggerTowerMaker class Implementation
+// ================================================
+
+#include "TrigT1CaloSim/OverlayRun2TriggerTowerMaker.h"
+
+// trigger include(s)
+#include "TrigT1CaloCalibConditions/L1CaloModuleType.h"
+#include "TrigT1CaloCalibConditions/L1CaloPprChanCalibContainer.h"
+#include "TrigT1CaloCalibConditions/L1CaloPprChanDefaultsContainer.h"
+#include "TrigT1CaloCalibConditions/L1CaloDisabledTowersContainer.h"
+#include "TrigT1CaloCalibConditions/L1CaloPpmDeadChannelsContainer.h"
+#include "TrigT1CaloCondSvc/L1CaloCondSvc.h"
+#include "TrigT1CaloMappingToolInterfaces/IL1CaloMappingTool.h"
+#include "TrigT1CaloToolInterfaces/IL1TriggerTowerTool.h"
+#include "TrigT1Interfaces/TrigT1CaloDefs.h"
+#include "TrigConfL1Data/ThresholdConfig.h"
+#include "TrigConfInterfaces/ILVL1ConfigSvc.h"
+
+// calorimeter include(s)
+#include "CaloIdentifier/CaloLVL1_ID.h"
+#include "TileConditions/TileInfo.h"
+
+#include "LumiBlockComps/ILumiBlockMuTool.h"
+#include "EventInfo/EventIncident.h"
+#include "EventInfo/EventInfo.h"
+#include "EventInfo/EventType.h"
+#include "xAODEventInfo/EventInfo.h"
+
+//For getting TriggerTowers from BS
+#include "TrigT1CaloByteStream/ITrigT1CaloDataAccessV2.h"
+
+// For the Athena-based random numbers.
+#include "PathResolver/PathResolver.h"
+#include "AthenaKernel/IAtRndmGenSvc.h"
+#include "GaudiKernel/IIncidentSvc.h"
+
+#include "CLHEP/Random/RandGaussZiggurat.h"
+#include "CLHEP/Random/Randomize.h"
+#include "CLHEP/Random/RandomEngine.h"
+
+#include <cassert>
+#include <cmath>
+#include <fstream>
+#include <limits> // for std::numeric_limits<std::streamsize>
+#include <utility> // for std::move
+#include <stdexcept>
+#include <sys/types.h>
+#include <unordered_map>
+
+#include <iostream>
+using std::cout;
+using std::endl;
+
+namespace {
+  template <typename MSG, typename T>
+  void printVec(MSG& msg, const std::vector<T>& v) {
+    for(auto x : v) msg << (int)x << endmsg;
+  }
+
+  template <typename MSG, typename T, std::size_t N>
+  void printVec(MSG& msg, const std::array<T, N>& v) {
+    for(auto x : v) msg << (int)x << endmsg;
+  }
+  
+  constexpr static int ADCMAX = 1023;
+  constexpr static int SATURATIONVALUE = 255;
+
+  // keep these local to this compilation unit
+  xAOD::TriggerTower::Decorator<int> firDecorator("fir");  
+} // namespace
+
+namespace LVL1 {
+
+  OverlayRun2TriggerTowerMaker::OverlayRun2TriggerTowerMaker(const std::string& name, ISvcLocator* pSvcLocator)
+    : AthAlgorithm(name, pSvcLocator),
+      m_configSvc("TrigConf::LVL1ConfigSvc/LVL1ConfigSvc", name),
+      m_rndGenSvc("AtRndmGenSvc", name),
+      m_condSvc("L1CaloCondSvc", name), 
+      m_rndmADCs(0),
+      m_TTtool("LVL1::L1TriggerTowerTool/L1TriggerTowerTool"),
+      m_mappingTool("LVL1::PpmMappingTool/PpmMappingTool"),
+      m_lumiBlockMuTool("LumiBlockMuTool/LumiBlockMuTool"),
+      m_bstowertool("LVL1BS__TrigT1CaloDataAccessV2/TrigT1CaloDataAccessV2",0), //ACH
+      m_caloId(0),
+      m_digitScale(250.),
+      m_cpLutScale(1.),
+      m_jepLutScale(1.),
+      m_TileToMeV(s_MEV/4.1), // Scale for converting ET -> counts
+      m_TileTTL1Ped(0.), // TileTTL1 pedestal value - need to subtract if set non-zero
+      m_isDataReprocessing(false),
+      m_doOverlay(false), m_isReco(false)
+  {
+    declareProperty("RndmSvc", m_rndGenSvc, "Random number service");
+    declareProperty("DigiEngine", m_digiEngine = "TrigT1CaloSim_Digitization");
+
+    declareProperty("LVL1ConfigSvc", m_configSvc, "LVL1 Config Service");
+    declareProperty("PpmMappingTool", m_mappingTool);
+    declareProperty("LumiBlockMuTool", m_lumiBlockMuTool);
+
+    declareProperty("inputTTLocation", m_inputTTLocation=TrigT1CaloDefs::xAODTriggerTowerLocation);
+    declareProperty("EmTTL1ContainerName",m_EmTTL1ContainerName= "LArTTL1EM");
+    declareProperty("HadTTL1ContainerName",m_HadTTL1ContainerName= "LArTTL1HAD");
+    declareProperty("TileTTL1ContainerName",m_TileTTL1ContainerName= "TileTTL1Cnt");
+    declareProperty("RequireAllCalos",m_requireAllCalos=true,"Should EM,Had and Tile all be available?");
+
+    declareProperty("TriggerTowerLocation", m_outputLocation= TrigT1CaloDefs::xAODTriggerTowerLocation);
+    declareProperty("CellType", m_cellType = TTL1);
+
+    // ADC simulation
+    declareProperty("ADCStep", m_adcStep=250.);
+    declareProperty("ADCNoise", m_adcVar=0.65);
+    declareProperty("CalibrationUncertainty", m_gainCorr=0.);
+    
+    declareProperty("DoOverlay",m_doOverlay = false);
+    declareProperty("IsReco",m_isReco = false);
+
+    declareProperty("DecorateFIR", m_decorateFIR = false, "Add FIR values to the xAOD::TriggerTowers");
+
+    declareProperty("ZeroSuppress", m_ZeroSuppress = true, "Do not save towers with 0 energy");
+
+
+    declareProperty("ChanCalibFolderKey",m_chanCalibKey = "/TRIGGER/L1Calo/V2/Calibration/Physics/PprChanCalib","PprChanCalib key");
+    declareProperty("ChanDefaultsFolderKey",m_chanDefaultsKey = "/TRIGGER/L1Calo/V2/Configuration/PprChanDefaults","PprChanDefaults key");
+    declareProperty("DisabledTowersFolderKey",m_disabledTowersKey = "/TRIGGER/L1Calo/V2/Conditions/DisabledTowers","DisabledTowers key");
+    declareProperty("DeadChannelsFolderKey",m_deadChannelsKey = "/TRIGGER/L1Calo/V2/Calibration/PpmDeadChannels","PpmDeadChannels key");
+    
+    declareProperty("ChanCalibFolderKeyoverlay",m_chanCalibKeyoverlay = "/TRIGGER/L1Calo/V2overlay/Calibration/Physics/PprChanCalib","PprChanCalib key for overlay");
+    declareProperty("ChanDefaultsFolderKeyoverlay",m_chanDefaultsKeyoverlay = "/TRIGGER/L1Calo/V2overlay/Configuration/PprChanDefaults","PprChanDefaults key for overlay");
+    declareProperty("DisabledTowersFolderKeyoverlay",m_disabledTowersKeyoverlay = "/TRIGGER/L1Calo/V2overlay/Conditions/DisabledTowers","DisabledTowers key for overlay");
+    declareProperty("DeadChannelsFolderKeyoverlay",m_deadChannelsKeyoverlay = "/TRIGGER/L1Calo/V2overlay/Calibration/PpmDeadChannels","PpmDeadChannels key for overlay");   
+
+    // Create hash table for E->ET conversions
+    /* Fill table with dummy values */
+    m_sinThetaHash.fill(-1.);
+
+    /* set values for barrel region with granularity of 0.1*/
+    for(unsigned int i = 0; i < 25; i++) {
+      m_sinThetaHash[i] = 1.0/cosh((i+0.5)* 0.1);
+    }
+
+    /* set values for EndCap with granularity of 0.2 except tt by |3.2|
+      eta values are are: 2.6, 2.8, 3.0, 3.15 */
+    m_sinThetaHash[26] = 1.0/cosh(2.6);
+    m_sinThetaHash[28] = 1.0/cosh(2.8);
+    m_sinThetaHash[30] = 1.0/cosh(3.0);
+    m_sinThetaHash[31] = 1.0/cosh(3.15);
+
+    /* fcal granularity is 0.425 */
+    m_sinThetaHash[ (unsigned int)(32 + (0.5*0.425)*10.) ] = 1.0/cosh(3.2 + 0.5*0.425);
+    m_sinThetaHash[ (unsigned int)(32 + (1.5*0.425)*10.) ] = 1.0/cosh(3.2 + 1.5*0.425);
+    m_sinThetaHash[ (unsigned int)(32 + (2.5*0.425)*10.) ] = 1.0/cosh(3.2 + 2.5*0.425);
+    m_sinThetaHash[ (unsigned int)(32 + (3.5*0.425)*10.) ] = 1.0/cosh(3.2 + 3.5*0.425);
+  }
+
+  OverlayRun2TriggerTowerMaker::~OverlayRun2TriggerTowerMaker() {}
+
+  StatusCode OverlayRun2TriggerTowerMaker::initialize()
+  {
+    ATH_MSG_INFO("ACH445: Initialising");
+
+    CHECK(detStore()->retrieve(m_caloId).isSuccess());
+    CHECK(m_configSvc.retrieve());
+    CHECK(m_mappingTool.retrieve());
+    CHECK(m_TTtool.retrieve());
+    CHECK(m_rndGenSvc.retrieve());
+    CHECK(m_lumiBlockMuTool.retrieve());
+    CHECK(m_condSvc.retrieve());
+    CHECK(m_bstowertool.retrieve());
+
+    m_rndmADCs = m_rndGenSvc->GetEngine(m_digiEngine);
+    if(!m_rndmADCs) {
+      ATH_MSG_ERROR("Failed to retrieve random engine");
+      return StatusCode::FAILURE;
+    }
+
+    // Listen for BeginRun
+    ServiceHandle<IIncidentSvc> incSvc("IncidentSvc",name());
+    CHECK(incSvc.retrieve());
+    incSvc->addListener(this, "BeginRun");
+
+    // reserve enough storage for the amps
+    m_xaodTowersAmps.assign(7168, std::vector<double>());
+
+    return StatusCode::SUCCESS;
+  }
+
+  /** Best if initialisation which uses COOL-derived values is done here
+      rather than in initialize() */
+  void OverlayRun2TriggerTowerMaker::handle(const Incident& inc)
+  {
+    if(inc.type() != "BeginRun") return;
+    /// Get global scales from configSvc
+    double globalScale = m_configSvc->thresholdConfig()->caloInfo().globalScale();
+    m_cpLutScale = m_configSvc->thresholdConfig()->caloInfo().globalEmScale();
+    m_jepLutScale = m_configSvc->thresholdConfig()->caloInfo().globalJetScale();
+
+    ATH_MSG_INFO("doOverlay: "<<m_doOverlay<<", isReco: "<<m_isReco);
+    if (m_doOverlay && m_isReco) {
+      ATH_MSG_INFO("ACH555: doing nuttin");
+      return;
+    }
+
+    ATH_MSG_INFO("REGTEST Digit scale = " << globalScale << " GeV/count");
+    ATH_MSG_INFO("REGTEST CP scale = " << m_cpLutScale << " count/GeV");
+    ATH_MSG_INFO("REGTEST JEP scale = " << m_jepLutScale << " count/GeV");
+
+    /// globalScale is number of GeV/count. As code is already written to use
+    /// MeV/count, safest thing here is to convert:
+    m_digitScale = 1000.*globalScale;
+
+    // retrieve conditions
+    if (! m_condSvc->retrieve(m_chanCalibContainer, m_chanCalibKey).isSuccess()){ATH_MSG_ERROR("failed!");}
+    ATH_MSG_INFO("Loading "<<m_chanCalibKey<<" into m_chanCalibContainer");
+    if (! m_condSvc->retrieve(m_disabledTowersContainer, m_disabledTowersKey).isSuccess()){ATH_MSG_ERROR("failed!");}
+    if (! m_condSvc->retrieve(m_deadChannelsContainer, m_deadChannelsKey).isSuccess()){ATH_MSG_ERROR("failed!");}
+    L1CaloPprChanDefaultsContainer *cDC = nullptr;
+    if (! m_condSvc->retrieve(cDC, m_chanDefaultsKey).isSuccess()){ATH_MSG_ERROR("failed!");}
+    if(!m_chanCalibContainer || !cDC ||
+      !m_disabledTowersContainer || !m_deadChannelsContainer) {
+      ATH_MSG_ERROR("Could not retrieve database containers. Aborting ...");
+      throw std::runtime_error("OverlayRun2TriggerTowerMaker: database container not accesible");
+    }
+    
+    auto* defaults = cDC->pprChanDefaults(0); // non-owning ptr
+    if(!defaults) {
+      ATH_MSG_ERROR("Could not retrieve channel 0 PprChanDefaults folder. Aborting ...");
+      throw std::runtime_error("OverlayRun2TriggerTowerMaker: channel 0 of PprChanDefaults not accesible");
+    }
+    m_chanDefaults = *defaults;    
+    
+    
+    if (m_doOverlay) {
+    
+      if (! m_condSvc->retrieve(m_chanCalibContaineroverlay, m_chanCalibKeyoverlay).isSuccess()){ATH_MSG_ERROR("failed!");}
+      ATH_MSG_INFO("Loading "<<m_chanCalibKeyoverlay<<" into m_chanCalibContaineroverlay");
+      if (! m_condSvc->retrieve(m_disabledTowersContaineroverlay, m_disabledTowersKeyoverlay).isSuccess()){ATH_MSG_ERROR("failed!");}
+      if (! m_condSvc->retrieve(m_deadChannelsContaineroverlay, m_deadChannelsKeyoverlay).isSuccess()){ATH_MSG_ERROR("failed!");}
+      L1CaloPprChanDefaultsContainer *cDCoverlay = nullptr;
+      if (! m_condSvc->retrieve(cDCoverlay, m_chanDefaultsKeyoverlay).isSuccess()){ATH_MSG_ERROR("failed!");}
+      if(!m_chanCalibContaineroverlay || !cDCoverlay ||
+        !m_disabledTowersContaineroverlay || !m_deadChannelsContaineroverlay) {
+        ATH_MSG_ERROR("Could not retrieve database containers for overlay. Aborting ...");
+        throw std::runtime_error("OverlayRun2TriggerTowerMaker: database container for overlay not accesible");
+      }
+    
+      auto* defaultsoverlay = cDCoverlay->pprChanDefaults(0); // non-owning ptr
+      if(!defaultsoverlay) {
+        ATH_MSG_ERROR("Could not retrieve channel 0 PprChanDefaults folder for overlay. Aborting ...");
+        throw std::runtime_error("OverlayRun2TriggerTowerMaker: channel 0 of PprChanDefaults for overlay not accesible");
+      }
+      m_chanDefaultsoverlay = *defaultsoverlay;
+    
+    }
+
+    const TileInfo* tileInfo = nullptr;
+    if(detStore()->retrieve(tileInfo, "TileInfo").isFailure()) {
+      ATH_MSG_ERROR("Failed to find TileInfo");
+      m_TileToMeV = s_MEV/4.1;
+    }
+
+    m_TileToMeV = s_MEV/tileInfo->TTL1Calib({});
+    ATH_MSG_DEBUG("Tile TTL1 calibration scale = " << tileInfo->TTL1Calib({}));
+    m_TileTTL1Ped = tileInfo->TTL1Ped({});
+    ATH_MSG_DEBUG("Tile TTL1 pedestal value = " << m_TileTTL1Ped);
+
+    // try to determine wheter we run on data or on simulation
+    auto ei = dynamic_cast<const EventIncident*>(&inc);
+    if(!ei) {
+      ATH_MSG_WARNING("Could not determine if input file is data or simulation. Will assume simulation.");
+    } else {
+      bool isData = !(ei->eventInfo().event_type()->test(EventType::IS_SIMULATION));
+      m_isDataReprocessing = isData;
+      if(m_isDataReprocessing) {
+        ATH_MSG_INFO("Detected data reprocessing. Will take pedestal correction values from input trigger towers.");
+      } else {
+        ATH_MSG_VERBOSE("No data reprocessing - running normal simulation.");
+      }
+    }
+    
+    // If this is an overlay job, we will handle this in a different way
+    if (m_doOverlay) {
+      m_isDataReprocessing = false;
+      ATH_MSG_INFO("L1Calo overlay job - setting m_isDataReprocessing to false");
+    }
+    
+    
+  }
+
+  StatusCode OverlayRun2TriggerTowerMaker::finalize() {
+    ATH_MSG_DEBUG("Finalizing");
+    return StatusCode::SUCCESS;
+  }
+
+  /** Checks that the Cell Type is supported (terminates with errors if not)
+      and calls relevant routine to look for the cells.
+  */
+  StatusCode OverlayRun2TriggerTowerMaker::execute() {
+    ATH_MSG_VERBOSE("Executing");
+
+    if (m_isReco && m_doOverlay) return StatusCode::SUCCESS; // nothing to to, since we did overlay and made towers during digi
+
+    m_xaodTowers.reset(new xAOD::TriggerTowerContainer);
+    m_xaodTowersAux.reset(new xAOD::TriggerTowerAuxContainer);
+    m_xaodTowers->setStore(m_xaodTowersAux.get());
+    m_xaodTowers->resize(7168); // avoid frequent reallocations
+    m_curIndex = 0u;
+
+    ATH_MSG_INFO("ACH555: inputTTLocation is "<<m_inputTTLocation);
+    if ("NoneForOverlay"==m_inputTTLocation) return StatusCode::SUCCESS; // ACH - do nothin for overlay during reco
+
+    switch(m_cellType) {
+    case TRIGGERTOWERS:
+      ATH_MSG_VERBOSE("Looking for TriggerTower input");
+      CHECK(getTriggerTowers());
+      break;
+    case TTL1:
+      ATH_MSG_VERBOSE("Looking for calo towers");
+      CHECK(getCaloTowers());
+      digitize(); // digitisation
+      break;
+    default:
+      ATH_MSG_ERROR("Unsupported Cell Type!!!!!!"); return StatusCode::FAILURE;
+    }
+    
+    // Pedestal Correction: Get the BCID number
+    const xAOD::EventInfo* evt = nullptr;
+    CHECK(evtStore()->retrieve(evt));
+    int eventBCID = evt->bcid();    
+    
+    CHECK(preProcess(eventBCID)); // FIR, BCID etc
+    
+    if (m_doOverlay) {         
+      CHECK( addOverlay(eventBCID) );
+    }
+
+    // store them thar trigger towers
+    CHECK(store());
+
+    return StatusCode::SUCCESS;
+  }
+  
+  /** Database helper functions for dead and disabled towers **/
+  bool OverlayRun2TriggerTowerMaker::IsDeadChannel(const L1CaloPpmDeadChannels* db) const
+  {
+    if (!db) return false; // No DB entry - assume that this is not a dead channel
+    if (db->errorCode() > 0 || db->noiseCut() > 0) return true; // We do not want these 
+    return false;
+  }
+  
+  bool OverlayRun2TriggerTowerMaker::IsDisabledChannel(const L1CaloDisabledTowers* db) const
+  {
+    if (!db) return false; // No DB entry - assume that this is not a disabled channel
+    if (db->disabledBits() > 0) return true; // We do not want these
+    return false;
+  }
+  
+  bool OverlayRun2TriggerTowerMaker::IsGoodTower(const xAOD::TriggerTower* tt,const L1CaloPpmDeadChannelsContainer* dead,const L1CaloDisabledTowersContainer* disabled) const
+  {
+    bool isDead = IsDeadChannel(dead->ppmDeadChannels(tt->coolId()));
+    bool isDisabled = IsDisabledChannel(disabled->disabledTowers(tt->coolId()));
+    if (!isDead && !isDisabled) return true;
+    return false;
+  }
+
+  StatusCode OverlayRun2TriggerTowerMaker::addOverlay(const int eventBCID)
+  {
+    // Get the overlay data TTs from Bytestream
+    xAOD::TriggerTowerContainer* overlayDataTTs = new xAOD::TriggerTowerContainer();
+    xAOD::TriggerTowerAuxContainer overlayDataTTsAux;
+    overlayDataTTs->setStore( &overlayDataTTsAux );
+    CHECK( m_bstowertool->loadTriggerTowers(*overlayDataTTs) ); // use L1Calo tool to fill xAOD::TriggerTowerContainer from BS
+
+    // put the overlay data TTs into a map 
+    std::unordered_map<uint32_t,xAOD::TriggerTower*> overlayMap;
+    typedef std::unordered_map<uint32_t,xAOD::TriggerTower*>::iterator Itr;
+    
+    // decorate the overlay TTs to indicate if they have been used or not 
+    char decor_ttNotUsedInOverlay = 0;
+    char decor_ttUsedInOverlay = 1;
+    std::string decor_name = "addedToSignal";
+    for (auto tt:*overlayDataTTs) {
+      // Let's exclude all dead and disabled towers
+      if (IsGoodTower(tt,m_deadChannelsContaineroverlay,m_disabledTowersContaineroverlay)) {
+        tt->auxdecor<char>(decor_name) = decor_ttNotUsedInOverlay;
+        overlayMap.insert( std::make_pair( tt->coolId() , tt ) );
+      }
+    }
+    
+    // What is the size of the primary LUT readout?
+    bool findSizeOfPrimaryLUT(true);
+    unsigned int sizeOfPrimaryLUT(0);
+    uint8_t peakOfPrimary(0);
+      
+    // Loop over primary TTs, match overlay TTs, and add LUT values
+    for (auto tt:*m_xaodTowers) {
+      
+      // find size of primary LUT readout for first TT
+      if (findSizeOfPrimaryLUT) {
+        findSizeOfPrimaryLUT = false;
+        sizeOfPrimaryLUT = tt->lut_cp().size();
+        peakOfPrimary = tt->peak();
+      }
+          
+      // Do we have a matching overlay tower?
+      Itr match = overlayMap.find( tt->coolId() );
+      if (match != overlayMap.end()) {
+        
+        CHECK( addOverlay(eventBCID,tt,(*match).second) );
+        
+        // Let the overlay TT know that it has been used
+        (*match).second->auxdecor<char>(decor_name) = decor_ttUsedInOverlay;
+        
+      } // end of match
+    } // end of loop over primary TTs 
+    
+    // Now we need to add all overlay TTs that have not been used so far
+    for (Itr i=overlayMap.begin();i!=overlayMap.end();++i) {
+      xAOD::TriggerTower* tt = (*i).second;
+      if (tt->auxdataConst<char>(decor_name) == decor_ttNotUsedInOverlay) {
+        // Ensure that LUT vectors are the same size as the primary TTs 
+        std::vector<uint8_t> overlay_lut_cp(sizeOfPrimaryLUT,0.);
+        std::vector<uint8_t> overlay_lut_jep(sizeOfPrimaryLUT,0.);
+        
+        // Fill the LUT vectors
+        overlay_lut_cp.at(peakOfPrimary) = tt->cpET();
+        overlay_lut_jep.at(peakOfPrimary) = tt->jepET();
+        
+        // Set the LUT vectors and peak 
+        tt->setPeak( peakOfPrimary );
+        tt->setLut_cp( overlay_lut_cp );
+        tt->setLut_jep( overlay_lut_jep );
+        
+        // add the overlay TT to the primary TT 
+        m_xaodTowers->push_back( tt );
+      }
+    }
+    
+    // Should be done!!!   
+    return StatusCode::SUCCESS;  
+  }
+  
+  /** Add the overlay TriggerTower to the signal TriggerTower **/
+  StatusCode OverlayRun2TriggerTowerMaker::addOverlay(const int eventBCID,xAOD::TriggerTower* sigTT,xAOD::TriggerTower* ovTT)
+  {
+    // Get the relevant databases 
+    const L1CaloPprChanCalib* sigDB = m_chanCalibContainer->pprChanCalib(sigTT->coolId());
+    const L1CaloPprChanCalib* ovDB  = m_chanCalibContaineroverlay->pprChanCalib(ovTT->coolId());
+    
+    if (!sigDB) {
+      ATH_MSG_ERROR("Cannot find signal DB for tower 0x"<<std::hex<<sigTT->coolId()<<std::dec<<"  Aborting...");
+      return StatusCode::FAILURE;
+    }
+    
+    if (!ovDB) {
+      ATH_MSG_ERROR("Cannot find overlay DB for tower 0x"<<std::hex<<ovTT->coolId()<<std::dec<<"  Aborting...");
+      return StatusCode::FAILURE;
+    }  
+       
+    // Let's begin with the same number of ADC samples
+    // retrieve signal and overlay digits
+    std::vector<int> sigDigits( std::begin(sigTT->adc()) , std::end(sigTT->adc()) );
+    std::vector<int> ovDigits( std::begin(ovTT->adc()) , std::end(ovTT->adc()) );
+    std::vector<int> normOverlayDigits; 
+    normaliseDigits(sigDigits,ovDigits,normOverlayDigits);
+    
+    // Get LUT input
+    std::vector<int> sigLutIn,ovLutIn;
+    CHECK( preProcessTower_getLutIn(eventBCID,sigTT,sigDB,sigDigits,sigLutIn) );
+    CHECK( preProcessTower_getLutIn(eventBCID,ovTT,ovDB,normOverlayDigits,ovLutIn) );
+       
+    // LUT ouput
+    std::vector<int> lutOut_cp,lutOut_jep;
+    CHECK( calcLutOutCP(sigLutIn,sigDB,ovLutIn,ovDB,lutOut_cp) );
+    CHECK( calcLutOutJEP(sigLutIn,sigDB,ovLutIn,ovDB,lutOut_jep) );
+    
+    // Not doing BCID yet.. can be added at a later date
+    
+    std::size_t peak = lutOut_jep.size()/2; // both cp & jep have the same length
+    std::vector<uint_least8_t> etResultVectorCp { uint8_t(lutOut_cp[peak]) };
+    std::vector<uint_least8_t> etResultVectorJep { uint8_t(lutOut_jep[peak]) }; 
+    
+    sigTT->setLut_cp(std::move(etResultVectorCp));
+    sigTT->setLut_jep(std::move(etResultVectorJep));    
+    
+    return StatusCode::SUCCESS;
+  }
+  
+  StatusCode OverlayRun2TriggerTowerMaker::calcLutOutCP(const std::vector<int>& sigLutIn,const L1CaloPprChanCalib* sigDB,const std::vector<int>& ovLutIn,const L1CaloPprChanCalib* ovDB,std::vector<int>& output)
+  {
+    if (sigDB->lutCpStrategy() > 2 || ovDB->lutCpStrategy() > 2) {
+      ATH_MSG_ERROR("Cannot process calcLutOutCP as lutCpStrategy > 2");
+      return StatusCode::FAILURE;
+    }
+    
+    double sigScale = (sigDB->lutCpStrategy() == 0) ? 1. : m_cpLutScale;    
+    double sigSlope = sigScale * sigDB->lutCpSlope();
+    double sigOffset = sigScale * sigDB->lutCpOffset();
+    
+    double ovScale  = (ovDB->lutCpStrategy() == 0)  ? 1. : m_cpLutScale;
+    double ovSlope = ovScale * ovDB->lutCpSlope();
+    double ovOffset = ovScale * ovDB->lutCpOffset();
+    double ovNoiseCut = ovScale * ovDB->lutCpNoiseCut();
+    
+    calcCombinedLUT(sigLutIn,sigSlope,sigOffset,ovLutIn,ovSlope,ovOffset,ovNoiseCut,output);
+    
+    return StatusCode::SUCCESS;
+  }
+  
+  StatusCode OverlayRun2TriggerTowerMaker::calcLutOutJEP(const std::vector<int>& sigLutIn,const L1CaloPprChanCalib* sigDB,const std::vector<int>& ovLutIn,const L1CaloPprChanCalib* ovDB,std::vector<int>& output)
+  {
+    if (sigDB->lutJepStrategy() > 2 || ovDB->lutJepStrategy() > 2) {
+      ATH_MSG_ERROR("Cannot process calcLutOutJEP as lutJepStrategy > 2");
+      return StatusCode::FAILURE;
+    }
+    
+    double sigScale = (sigDB->lutJepStrategy() == 0) ? 1. : m_jepLutScale;    
+    double sigSlope = sigScale * sigDB->lutJepSlope();
+    double sigOffset = sigScale * sigDB->lutJepOffset();
+    
+    double ovScale  = (ovDB->lutCpStrategy() == 0)  ? 1. : m_jepLutScale;
+    double ovSlope = ovScale * ovDB->lutJepSlope();
+    double ovOffset = ovScale * ovDB->lutJepOffset();
+    double ovNoiseCut = ovScale * ovDB->lutJepNoiseCut();
+    
+    calcCombinedLUT(sigLutIn,sigSlope,sigOffset,ovLutIn,ovSlope,ovOffset,ovNoiseCut,output);
+    
+    return StatusCode::SUCCESS;
+  }  
+  
+  void OverlayRun2TriggerTowerMaker::calcCombinedLUT(const std::vector<int>& sigIN,const int sigSlope,const int sigOffset,
+                              const std::vector<int>& ovIN,const int ovSlope,const int ovOffset,const int ovNoiseCut,std::vector<int>& output)
+  {
+    // Modified version of TrigT1CaloTools/src/L1TriggerTowerTool
+    
+    // (1) Calculate the Et conversion for the signal and the overlay
+    // (2) Combine the Et's 
+    // (3) apply noise cut on combined Et sum 
+    // (4) apply bitshift
+    
+    output.clear();
+    output.reserve(sigIN.size()); // avoid frequent reallocations
+
+    for (unsigned int i=0;i<sigIN.size();++i) {
+      int out(0);
+      int signal = sigIN[i];
+      int overlay = ovIN[i];
+      
+      int outSig = signal*sigSlope - sigOffset; // Et conversion for signal
+      int outOv  = overlay*ovSlope - ovOffset;  // Et conversion for overlay
+      int outTmp = outSig + outOv;  // Combined Et
+      
+      // Noise cut from overlay
+      if (outTmp >= ovNoiseCut) {
+        out = (outSig + outOv + 2048)>>12; // pedestal and bitshift
+      }
+
+      // keep things in range
+      if (out < 0) out = 0;
+      if (out > 255) out = 255;
+      
+      output.push_back( out );
+    }     
+  }
+  
+  StatusCode OverlayRun2TriggerTowerMaker::preProcessTower_getLutIn(const int eventBCID,xAOD::TriggerTower* tower,const L1CaloPprChanCalib* db,const std::vector<int>& digits,std::vector<int>& output)
+  {
+    // factorised version of OverlayRun2TriggerTowerMaker::preProcessTower 
+    
+    // process tower -- digital filter
+    std::vector<int> fir;
+    m_TTtool->fir(digits,
+                  {db->firCoeff5(),db->firCoeff4(),db->firCoeff3(),db->firCoeff2(),db->firCoeff1()}, // reverse order in database
+                  fir);
+    
+     // pedestal correction
+    int pedCorrectionStrategy = db->lutCpStrategy();
+    std::vector<int16_t> correction;
+    
+    // 1.) simulation and pedestal correction enabled
+    if (pedCorrectionStrategy == 1) {
+//       cout<<"Using Simulation pedCorrectionStrategy"<<endl;
+      // case 1.) (database "abuses" pedFirSum to steer pedestal correction)
+      // apply the parameterized pedestal correction
+      int firPed = (db->firCoeff5() + db->firCoeff4() + db->firCoeff3() +
+                    db->firCoeff2() + db->firCoeff1()) * int(db->pedMean() + 0.5);
+      m_TTtool->pedestalCorrection(fir,
+                                  firPed,
+                                  etaToElement(tower->eta(), tower->layer()),
+                                  tower->layer(),
+                                  eventBCID,
+                                  m_lumiBlockMuTool->actualInteractionsPerCrossing(),
+                                  correction);
+    }
+    
+    // 2.) data reprocessing and pedestal correction enabled
+    if (pedCorrectionStrategy == 2) {
+//       cout<<"Using data pedCorrectionStrategy"<<endl;
+      // case 2.) (database "abuses" pedFirSum to steer pedestal correction)
+      // apply the recorded pedestal correction
+      if(!tower->correctionEnabled().empty() && tower->correctionEnabled().front()) {
+        std::size_t offset = (fir.size() - tower->correction().size())/2;
+
+        for(std::size_t i = offset, e = fir.size() - offset; i != e; ++i) {
+          correction.push_back(tower->correction()[i-offset]);
+          fir[i] -= tower->correction()[i-offset];
+        }
+      } 
+    }
+    
+    m_TTtool->dropBits(fir, db->firStartBit(), output);   
+    
+    return StatusCode::SUCCESS; 
+  }
+  
+  void OverlayRun2TriggerTowerMaker::normaliseDigits(const std::vector<int>& sigDigits,const std::vector<int>& ovDigits,std::vector<int>& normDigits)
+  {
+
+    // 3 possible cases:
+    // Case 1.) Signal MC and overlay data have same number of digits - easy peasy lemon squeezy
+    // Case 2.) Signal MC is larger - pad the overlay digits
+    // Case 3.) Signal MC is smaller - crop the overlay digits
+    
+    // Case 1.)
+    if (sigDigits.size() == ovDigits.size()) {
+      for (auto x:ovDigits) normDigits.push_back( x );
+    }
+    
+    // Case 2.)
+    if (sigDigits.size() > ovDigits.size()) {
+      unsigned int pad = (sigDigits.size() - ovDigits.size()) / 2;
+      for (unsigned int x=0;x<pad;++x) normDigits.push_back( 32 );
+      for (auto x:ovDigits) normDigits.push_back( x );
+      for (unsigned int x=0;x<pad;++x) normDigits.push_back( 32 );
+    }
+    
+    
+    // Case 3.)
+    if (sigDigits.size() < ovDigits.size()) {
+      unsigned int offset = (ovDigits.size() - sigDigits.size()) / 2;
+      for (unsigned int x=0;x<sigDigits.size();++x) {
+        unsigned int pos = x + offset;
+        normDigits.push_back( ovDigits[pos] );
+      }    
+    }
+   
+  }  
+
+
+  /** Emulate FIR filter, bunch-crossing identification & LUT, and create & fill
+      TriggerTowers. */
+  StatusCode OverlayRun2TriggerTowerMaker::preProcess(const int eventBCID)
+  {
+    // Loop over all existing towers and simulate preprocessor functions
+    for(auto tower : *m_xaodTowers) {
+      CHECK(preProcessTower(eventBCID,tower));
+    }
+    return StatusCode::SUCCESS;
+  }
+
+  StatusCode OverlayRun2TriggerTowerMaker::preProcessTower(const int eventBCID,xAOD::TriggerTower *tower)
+  {
+    
+    const L1CaloPprChanCalib* chanCalib =  m_chanCalibContainer->pprChanCalib(tower->coolId());
+
+    if (!chanCalib) {
+      ATH_MSG_ERROR("Tower with coolId 0x"<<std::hex<<tower->coolId()<<std::dec<<" Not in database! Aborting ...");
+      return StatusCode::FAILURE;
+    }
+    
+    // pedestal correction
+    int pedCorrectionStrategy(0);
+    // Regular job - no overlay
+    if (!m_doOverlay) {
+      if (chanCalib->pedFirSum() && !m_isDataReprocessing) pedCorrectionStrategy = 1; // simulation
+      if (chanCalib->pedFirSum() && m_isDataReprocessing) pedCorrectionStrategy = 2; // data reprocessing
+    }
+    if (m_doOverlay) {
+      pedCorrectionStrategy = chanCalib->lutCpStrategy();
+    }
+
+    /// retrieve digits
+    std::vector<int> digits(std::begin(tower->adc()), std::end(tower->adc()));
+
+    /// process tower -- digitial filter
+    std::vector<int> fir;
+    m_TTtool->fir(digits,
+                  { chanCalib->firCoeff5(), chanCalib->firCoeff4(), chanCalib->firCoeff3(),
+                      chanCalib->firCoeff2(), chanCalib->firCoeff1() }, // reverse order in database
+                  fir);
+
+    /// dynamic pedestal correction
+    std::vector<int16_t> correction;
+    // a few cases follow
+    // 1.) simulation and pedestal correction enabled
+    // 2.) data reprocessing and pedestal correction enabled
+    // 3.) pedestal correction disabled
+    
+    // old method - now deprecated
+//     if(chanCalib->pedFirSum() && !m_isDataReprocessing) {
+    
+    // new method
+    if (pedCorrectionStrategy == 1) {
+      // case 1.) (database "abuses" pedFirSum to steer pedestal correction)
+      // apply the parameterized pedestal correction
+      int firPed = (chanCalib->firCoeff5() + chanCalib->firCoeff4() + chanCalib->firCoeff3() +
+                    chanCalib->firCoeff2() + chanCalib->firCoeff1()) * int(chanCalib->pedMean() + 0.5);
+      m_TTtool->pedestalCorrection(fir,
+                                  firPed,
+                                  etaToElement(tower->eta(), tower->layer()),
+                                  tower->layer(),
+                                  eventBCID,
+                                  m_lumiBlockMuTool->actualInteractionsPerCrossing(),
+                                  correction);
+    } 
+    
+    // old method - now deprecated
+    //else if(chanCalib->pedFirSum() && m_isDataReprocessing) {
+    if (pedCorrectionStrategy == 2) {
+    
+      // case 2.) (database "abuses" pedFirSum to steer pedestal correction)
+      // apply the recorded pedestal correction
+      if(!tower->correctionEnabled().empty() && tower->correctionEnabled().front()) {
+        std::size_t offset = (fir.size() - tower->correction().size())/2;
+
+        for(std::size_t i = offset, e = fir.size() - offset; i != e; ++i) {
+          correction.push_back(tower->correction()[i-offset]);
+          fir[i] -= tower->correction()[i-offset];
+        }
+        ATH_MSG_VERBOSE("::correction: (from data");
+        printVec(this->msg(MSG::VERBOSE), correction);
+      } // in case the correction wasn't enabled in the readout nothing has to be done
+    } 
+    
+    // Case 3.) not yet implemented (will it ever be....??)
+
+    std::vector<int> lutIn;
+    m_TTtool->dropBits(fir, chanCalib->firStartBit(), lutIn);
+
+    // linear LUTs - CP
+    std::vector<int> lutOut_cp;
+    ATH_MSG_VERBOSE("::cp-lut: strategy: " << chanCalib->lutCpStrategy());
+    if(chanCalib->lutCpStrategy() < 3) {
+      // for new strategy lutSlope, lutOffset and lutNoiseCut are in units of LUTOut
+      // and need to be multiplied by the scale factor
+      double scale = (chanCalib->lutCpStrategy() == 0) ? 1. : m_cpLutScale;
+
+      m_TTtool->lut(lutIn,
+                    scale * chanCalib->lutCpSlope(),
+                    scale * chanCalib->lutCpOffset(),
+                    scale * chanCalib->lutCpNoiseCut(),
+                    32 /* unused */,
+                    chanCalib->lutCpStrategy() > 0,
+                    false, // TODO - disabled?
+                    lutOut_cp);
+    } else if(chanCalib->lutCpStrategy() == 3) {
+      for(auto l : lutIn) lutOut_cp.push_back(non_linear_lut(l, chanCalib->lutCpOffset(), chanCalib->lutCpSlope(), chanCalib->lutCpNoiseCut(), chanCalib->lutCpScale(), chanCalib->lutCpPar1(), chanCalib->lutCpPar2(), chanCalib->lutCpPar3(), chanCalib->lutCpPar4()));
+    }
+    ATH_MSG_VERBOSE("::cp-lut: lut:");
+    printVec(this->msg(MSG::VERBOSE), lutOut_cp);
+
+
+    // linear LUTs - JEP
+    std::vector<int> lutOut_jep;
+    ATH_MSG_VERBOSE("::jep-lut: strategy: " << chanCalib->lutJepStrategy());
+    if(chanCalib->lutJepStrategy() < 3) {
+      // for new strategy lutSlope, lutOffset and lutNoiseCut are in units of LUTOut
+      // and need to be multiplied by the scale factor
+      double scale = (chanCalib->lutJepStrategy() == 0) ? 1. : m_jepLutScale;
+
+      m_TTtool->lut(lutIn,
+                    scale * chanCalib->lutJepSlope(),
+                    scale * chanCalib->lutJepOffset(),
+                    scale * chanCalib->lutJepNoiseCut(),
+                    32 /* unused */,
+                    chanCalib->lutJepStrategy() > 0,
+                    false, // TODO - disabled?
+                    lutOut_jep);
+    } else if(chanCalib->lutJepStrategy() == 3) {
+      for(auto l : lutIn) lutOut_jep.push_back(non_linear_lut(l, chanCalib->lutJepOffset(), chanCalib->lutJepSlope(), chanCalib->lutJepNoiseCut(), chanCalib->lutJepScale(), chanCalib->lutJepPar1(), chanCalib->lutJepPar2(), chanCalib->lutJepPar3(), chanCalib->lutJepPar4()));
+    }
+    ATH_MSG_VERBOSE("::jep-lut: lut:");
+    printVec(this->msg(MSG::VERBOSE), lutOut_jep);
+
+
+    /// BCID algorithms (only possible if 7 slices readout)
+    std::vector<int> BCIDOut;
+    if(!m_isDataReprocessing || tower->adc().size() >= 7) {
+      m_TTtool->bcid(fir, digits,
+                    m_chanDefaults.peakFinderCond(),
+                    chanCalib->satBcidThreshLow(),
+                    chanCalib->satBcidThreshHigh(),
+                    chanCalib->satBcidLevel(),
+                    BCIDOut);
+    } else {
+      // in data reprocessing with less than 7 slices take decision from data
+      BCIDOut.assign(tower->bcidVec().begin(), tower->bcidVec().end());
+      ATH_MSG_VERBOSE("::bcidOut: (from data):");
+      printVec(this->msg(MSG::VERBOSE), BCIDOut);
+    }
+
+    std::size_t peak = lutOut_jep.size()/2; // both cp & jep have the same length
+    std::vector<uint_least8_t> etResultVectorCp { uint8_t(lutOut_cp[peak]) };
+    ATH_MSG_VERBOSE("::etResultVector: cp:");
+    printVec(this->msg(MSG::VERBOSE), etResultVectorCp);
+    std::vector<uint_least8_t> etResultVectorJep { uint8_t(lutOut_jep[peak]) };
+    ATH_MSG_VERBOSE("::etResultVector: jep:");
+    printVec(this->msg(MSG::VERBOSE), etResultVectorJep);
+
+    // identify BCID range
+    int range;
+    if(!(m_chanDefaults.decisionSource() & 0x1)) {
+      range = EtRange(digits[digits.size()/2], chanCalib->bcidEnergyRangeLow(), chanCalib->bcidEnergyRangeHigh());
+    } else {
+      range = EtRange(fir[fir.size()/2], chanCalib->bcidEnergyRangeLow(), chanCalib->bcidEnergyRangeHigh());
+    }
+    ATH_MSG_VERBOSE("::range: " << range);
+
+    // correct BCID for this range?
+    std::array<int, 3> bcidDecision {
+      {m_chanDefaults.bcidDecision1(), m_chanDefaults.bcidDecision2(), m_chanDefaults.bcidDecision3()}
+    };
+    ATH_MSG_VERBOSE("::bcidDecision:");
+    printVec(this->msg(MSG::VERBOSE), bcidDecision);
+
+    std::array<int, 3> satOverride {
+      {m_chanDefaults.satOverride1(), m_chanDefaults.satOverride2(), m_chanDefaults.satOverride3()}
+    };
+    ATH_MSG_VERBOSE("::satOverride:");
+    printVec(this->msg(MSG::VERBOSE), satOverride);
+
+    if((bcidDecision[range]) & (0x1 << (BCIDOut[BCIDOut.size()/2]))) {
+      if((satOverride[range]) & 0x1) {
+        // return saturation if set
+        etResultVectorCp[0] = SATURATIONVALUE;
+        etResultVectorJep[0] = SATURATIONVALUE;
+      }
+    } else {
+      // zero if fail BCID
+      etResultVectorCp[0] = 0;
+      etResultVectorJep[0] = 0;
+    }
+
+    tower->setLut_cp(std::move(etResultVectorCp));
+    tower->setLut_jep(std::move(etResultVectorJep));
+    tower->setBcidVec({uint8_t(BCIDOut[BCIDOut.size()/2])});
+    ATH_MSG_VERBOSE("::set bcidVec:");
+    printVec(this->msg(MSG::VERBOSE), tower->bcidVec());
+    tower->setPeak(0u); // we only added one item to etResultVector
+    if(m_decorateFIR) firDecorator(*tower) = fir[fir.size()/2];
+
+    /// In simulation external BCID is always zero, but for consistency with
+    /// data we need to add it to the TriggerTower objects
+    tower->setBcidExt(std::vector<uint8_t>(tower->adc().size(), 0u));
+
+    // fill the pedestal correction
+    if(chanCalib->pedFirSum()) {
+      // online database abuses pedFirSum to steer pedestal correction
+      tower->setCorrectionEnabled(std::vector<uint8_t>(tower->lut_cp().size(), 1u));
+      tower->setCorrection(std::vector<int16_t>(tower->lut_cp().size(),
+                                                correction[correction.size()/2]));
+      ATH_MSG_VERBOSE("::set correction:");
+      printVec(this->msg(MSG::VERBOSE), tower->correction());
+    } else {
+      tower->setCorrectionEnabled(std::vector<uint8_t>(tower->lut_cp().size(), 0u));
+      tower->setCorrection(std::vector<int16_t>(tower->lut_cp().size(), 0u));
+    }
+    return StatusCode::SUCCESS;
+  }
+
+  /** Stores Trigger Towers in the TES, at a
+      location defined in m_outputLocation.
+
+      Returns FAILURE if the towers could not be saved.
+  */
+  StatusCode OverlayRun2TriggerTowerMaker::store()
+  {
+    ATH_MSG_DEBUG("Storing TTs in DataVector");
+    if(m_outputLocation.empty()) return StatusCode::SUCCESS;
+
+    if(m_ZeroSuppress) {
+      // remove trigger towers whose energy is 0
+      m_xaodTowers->erase(std::remove_if(m_xaodTowers->begin(), m_xaodTowers->end(),
+                                        [](const xAOD::TriggerTower* tt){
+                                          return tt->cpET() == 0 && tt->jepET() == 0;
+                                        }),
+                          m_xaodTowers->end());
+    }
+
+    CHECK(evtStore()->record(m_xaodTowers.release(), m_outputLocation));
+    CHECK(evtStore()->record(m_xaodTowersAux.release(), m_outputLocation+"Aux."));
+
+    return StatusCode::SUCCESS;
+  } // end of LVL1::OverlayRun2TriggerTowerMaker::store(){
+
+
+  /** gets TriggerTowers from input collection and copies ADC digits into
+      xAOD::TriggerTowers for reprocessing */
+  StatusCode OverlayRun2TriggerTowerMaker::getTriggerTowers()
+  {
+    const xAOD::TriggerTowerContainer* inputTTs = nullptr;
+    ATH_MSG_INFO("Retrieve input TriggerTowers " << m_inputTTLocation);
+    CHECK(evtStore()->retrieve(inputTTs, m_inputTTLocation));
+    ATH_MSG_INFO("Found " << inputTTs->size() << " input TriggerTowers");
+
+    for(const auto& tower : *inputTTs) {
+      auto t = (*m_xaodTowers)[m_curIndex++] = new xAOD::TriggerTower;
+      *t = *tower;
+    }
+
+    /// If < 7168 towers in input data will be unallocated pointers in vector.
+    //  /// So clean-up m_xaodTowers before these cause problems later.
+    m_xaodTowers->erase(std::remove_if(m_xaodTowers->begin(), m_xaodTowers->end(),
+                        [](const xAOD::TriggerTower* tt){return (tt == 0);}),
+                        m_xaodTowers->end());
+    
+    // Remove dead and disabled towers
+    m_xaodTowers->erase(std::remove_if(m_xaodTowers->begin(), m_xaodTowers->end(),
+                                       [this](const xAOD::TriggerTower* tt){return !IsGoodTower(tt,m_deadChannelsContainer,m_disabledTowersContainer);}),
+                                       m_xaodTowers->end());     
+
+    return StatusCode::SUCCESS;
+  } // end of getTriggerTowers()
+
+  /** fetches LAr & Tile calorimeter towers */
+  StatusCode OverlayRun2TriggerTowerMaker::getCaloTowers()
+  {
+    // Find LAr towers in TES
+    StatusCode sc1;
+    const DataHandle<LArTTL1Container> EMTowers;
+    if(!evtStore()->contains<LArTTL1Container>(m_EmTTL1ContainerName)) {
+      ATH_MSG_WARNING("EM LArTTL1Container not found");
+      sc1 = StatusCode::FAILURE;
+    } else {
+      sc1 = evtStore()->retrieve(EMTowers, m_EmTTL1ContainerName);
+    }
+
+    StatusCode sc2;
+    const DataHandle<LArTTL1Container> HECTowers;
+    if(!evtStore()->contains<LArTTL1Container>(m_HadTTL1ContainerName)) {
+      ATH_MSG_WARNING("Had LArTTL1Container not found");
+      sc2 = StatusCode::FAILURE;
+    } else {
+      sc2 = evtStore()->retrieve(HECTowers, m_HadTTL1ContainerName);
+    }
+
+    // Find Tile towers in TES
+    StatusCode sc3;
+    const DataHandle<TileTTL1Container> TileTowers;
+    if(!evtStore()->contains<TileTTL1Container>(m_TileTTL1ContainerName)) {
+      ATH_MSG_WARNING("Tile TTL1Container not found");
+      sc3 = StatusCode::FAILURE;
+    } else {
+      sc3 = evtStore()->retrieve(TileTowers, m_TileTTL1ContainerName);
+    }
+
+    if(m_requireAllCalos && ((sc1==StatusCode::FAILURE) ||
+                            (sc2==StatusCode::FAILURE) ||
+                            (sc3==StatusCode::FAILURE))) {
+      ATH_MSG_ERROR("Can't find calo towers - stopping processing" << endmsg
+                    << "Found Em  LArTTL1 : "<<sc1 << endmsg
+                    << "Found Had LArTTL1 : "<<sc2 << endmsg
+                    << "Found TileTTL1    : "<<sc3<< endmsg
+                    );
+      return StatusCode::FAILURE;
+    }
+
+    // lets now try to create some trigger towers
+    if(sc1 == StatusCode::SUCCESS) {
+      processLArTowers(EMTowers);
+    }
+    if(sc2 == StatusCode::SUCCESS) {
+      processLArTowers(HECTowers);
+    }
+    if(sc3 == StatusCode::SUCCESS) {
+      processTileTowers(TileTowers);
+    }
+
+    /// If < 7168 towers in input data will be unallocated pointers in vector.
+    //  /// So clean-up m_xaodTowers before these cause problems later.
+    m_xaodTowers->erase(std::remove_if(m_xaodTowers->begin(), m_xaodTowers->end(),
+                        [](const xAOD::TriggerTower* tt){return (tt == 0);}),
+                        m_xaodTowers->end());
+    
+    // Remove dead and disabled towers
+    m_xaodTowers->erase(std::remove_if(m_xaodTowers->begin(), m_xaodTowers->end(),
+                                       [this](const xAOD::TriggerTower* tt){return !IsGoodTower(tt,m_deadChannelsContainer,m_disabledTowersContainer);}),
+                                       m_xaodTowers->end()); 
+
+    return StatusCode::SUCCESS;
+  }
+
+  /** steps over Calo towers and creates/fills trigger towers */
+  void OverlayRun2TriggerTowerMaker::processLArTowers(const LArTTL1Container * towers)
+  {
+    int towerNumber=0;
+    for(const auto& tower : *towers){
+      ATH_MSG_VERBOSE("Looking at retrieved tower number "<<towerNumber++<<" ***********");
+
+      // Obtain identifier
+      Identifier id = tower->ttOfflineID();
+      double eta = IDeta(id, m_caloId);
+      double phi = IDphi(id, m_caloId);
+      int layer = int(m_caloId->sampling(id) != 0);
+      L1CaloCoolChannelId coolId = channelId(eta, phi, layer);
+
+      // Tower amplitudes and type
+      int nsamples = tower->nsamples();
+      std::vector<float> tower_amps = tower->samples();
+
+      // Now calibrate tower_amps then fill TriggerTower amplitude vector
+      // TTL1 should have 7 samples, but this little kludge handles other
+      // eventualities, provided peak is in centre of the pulse
+      int offset = (nsamples - (s_FIRLENGTH+2))/2;
+      std::vector<double> amps(s_FIRLENGTH+2);
+
+      ATH_MSG_VERBOSE("nsamples = " << nsamples << " offset = " << offset);
+
+      for(int i = 0; i < s_FIRLENGTH+2; i++) {
+        int j = i + offset;
+        if(j >= 0 && j < nsamples) {
+          amps[i] = tower_amps[j];
+        }
+        else {
+          amps[i] = 0.;
+        }
+        ATH_MSG_VERBOSE("amps[" << i << "] = " << amps[i]);
+      }
+
+      // Create TriggerTower
+      auto t = (*m_xaodTowers)[m_curIndex++] = new xAOD::TriggerTower;
+      t->setCoolId(coolId.id());
+      t->setEta(eta);
+      t->setPhi(phi);
+      m_xaodTowersAmps[t->index()] = std::move(amps);
+    } // end for loop
+  }
+
+  void OverlayRun2TriggerTowerMaker::processTileTowers(const TileTTL1Container * towers)
+  {
+    // Step over all towers
+    int towerNumber=0;
+    for(const auto& tower : *towers) {
+      ATH_MSG_VERBOSE("Looking at retrieved tower number "<<towerNumber++<<" ***********");
+
+      // Obtain identifier
+      Identifier id = tower->TTL1_ID();
+      double cal = m_TileToMeV;//calib(id, m_caloId)*m_TileToMeV;
+
+      // Check this tower is used by the trigger
+      // don't use gap or mbias scinitllators
+      if(m_caloId->is_tile(id)) {
+        double tower_eta = IDeta(id, m_caloId);
+        double tower_phi = IDphi(id, m_caloId);
+
+        // need to convert tower energy to E_t later
+        unsigned Ieta = unsigned(fabs(tower_eta)*10.0);
+        if(Ieta >= m_maxIetaBins){
+          ATH_MSG_WARNING("TileTTL1 with invalid index for m_sinThetaHash: Ieta = " << Ieta);
+          Ieta = 0u;
+        }
+
+        /* Extract amplitudes and rescale according to tower eta */
+        int nsamples = tower->nsamples();
+        std::vector<float> tower_amps = tower->fsamples();
+
+        /* Debug message */
+        ATH_MSG_VERBOSE(" nsamples = " << nsamples);
+
+        // Want 7 samples, but this little kludge allows us to accept other
+        // numbers, provided peak is in centre of the pulse
+        int offset = (nsamples - (s_FIRLENGTH+2))/2;
+        std::vector<double> amps(s_FIRLENGTH+2);
+        for(int i = 0; i < 7; i++) {
+          int j = i + offset;
+          if(j >= 0 && j < nsamples) {
+            amps[i] = (tower_amps[j]-m_TileTTL1Ped)*m_sinThetaHash[Ieta]*cal; // rescale to MeV
+          }
+          else {
+            amps[i] = 0.;
+          }
+          /* Debug message */
+          ATH_MSG_VERBOSE("amps[" << i << "] = " << amps[i]);
+        }
+
+        // Create TriggerTower
+        // m_xaodTowers->push_back(new xAOD::TriggerTower);
+        // auto t = m_xaodTowers->back();
+        auto t = (*m_xaodTowers)[m_curIndex++] = new xAOD::TriggerTower;
+        t->setCoolId(channelId(tower_eta, tower_phi, 1).id());
+        t->setEta(tower_eta);
+        t->setPhi(tower_phi);
+        m_xaodTowersAmps[t->index()] = std::move(amps);
+      } // end check on whether tower is used
+    } // end for loop
+
+    return;
+  }
+
+  /** Digitize pulses and store results back in xAOD::TriggerTowers */
+  void OverlayRun2TriggerTowerMaker::digitize()
+  {
+    // Loop over all existing towers and digitize pulses
+    for(auto tower : *m_xaodTowers) {
+      // First process EM layer
+      L1CaloCoolChannelId id(tower->coolId());
+      std::vector<int> digits = ADC(id, m_xaodTowersAmps[tower->index()]); // ADC simulation
+      tower->setAdc(std::vector<uint16_t>(std::begin(digits), std::end(digits)));
+      tower->setAdcPeak(digits.size()/2);
+    }
+  }
+
+  std::vector<int> OverlayRun2TriggerTowerMaker::ADC(L1CaloCoolChannelId channel, const std::vector<double>& amps) const
+  {
+    auto* chanCalib = m_chanCalibContainer->pprChanCalib(channel);
+    if(!chanCalib) { ATH_MSG_WARNING("No database entry for tower " << channel.id()); return {}; }
+    double ped = chanCalib->pedMean();
+
+    // dice the calibration uncertainty if requested
+    double adcCal = (m_gainCorr > 0.) ? CLHEP::RandGaussZiggurat::shoot(m_rndmADCs, 1., m_gainCorr) : 1.;  
+
+    std::vector<int> digits;
+    const int nSamples = amps.size();
+    digits.reserve(nSamples);
+    for(int i = 0; i < nSamples; ++i) {
+      // dice the adc noise if requested
+      double adcNoise = (m_adcVar > 0.) ? CLHEP::RandGaussZiggurat::shoot(m_rndmADCs,0.,m_adcVar) : 0.;
+
+      int digit = int((amps[i]*adcCal/m_adcStep) + ped + adcNoise);
+      if(digit > ADCMAX) digit = ADCMAX;
+      if(digit < 0) digit = 0;
+      digits.push_back(digit);
+    }
+    return digits;
+  }
+
+  int OverlayRun2TriggerTowerMaker::EtRange(int et, unsigned short bcidEnergyRangeLow, unsigned short bcidEnergyRangeHigh) const
+  {
+    if(et < bcidEnergyRangeLow)  return 0;
+    if(et < bcidEnergyRangeHigh) return 1;
+    return 2;
+  }
+
+  double OverlayRun2TriggerTowerMaker::IDeta(const Identifier& id, const CaloLVL1_ID* l1id)
+  {
+    int region = l1id->region(id);
+    int ieta = l1id->eta(id);
+    int sign = l1id->pos_neg_z(id);
+
+    double gran[4] = {0.1, 0.2, 0.1, 0.425};
+    double offset[4] = {0., 2.5, 3.1, 3.2};
+    double eta;
+
+    if(region>=0 && region<=3) {
+      eta = sign* (((ieta+0.5) * gran[region]) + offset[region]);
+    }
+    else {
+      eta = 0.;
+    }
+
+    return eta;
+  }
+
+
+  double OverlayRun2TriggerTowerMaker::IDphi(const Identifier& id, const CaloLVL1_ID* l1id)
+  {
+    Identifier regId = l1id->region_id(id);
+
+    double phiMax = l1id->phi_max(regId);
+    int iphi = l1id->phi(id);
+    double phi = (iphi+0.5)*2*M_PI/(phiMax+1);
+
+    return phi;
+  }
+
+  /** Function to compute L1CaloCoolChannelId from eta/phi/layer.
+      Unlike L1TriggerTowerTool::channelID this function can cope with old geometries (hence
+      the hard-coded numbers). So don't remove this until all ATLAS-CSC datasets are irrevokably
+      deprecated */
+  L1CaloCoolChannelId OverlayRun2TriggerTowerMaker::channelId(double eta, double phi, int layer)
+  {
+    int crate, module, channel;
+    m_mappingTool->mapping(eta, phi, layer, crate, module, channel);
+    int slot = module + 5;
+    int pin = channel % 16;
+    int asic = channel / 16;
+    return L1CaloCoolChannelId(crate, L1CaloModuleType::Ppm, slot, pin, asic, false);
+  }
+
+  int OverlayRun2TriggerTowerMaker::etaToElement(float feta, int layer) const
+  {
+    constexpr static int NELEMENTS = 33;
+    /// Get integer eta bin
+    float shiftedEta = feta + 4.9;
+    uint eta = (uint)floor(shiftedEta*10.0);
+    if(fabs(shiftedEta*10.0 - (uint)(eta+1)) < 0.01) eta++;
+    if(fabs(shiftedEta) < 0.01) eta = 0;
+
+    constexpr int nBins = 16;
+    constexpr uint map[nBins] = {2,6,10,14,17,19,21,23,75,77,79,80,83,87,91,95};
+    int element = -1;
+    if(eta > 23 && eta < 74) {
+      element = eta - 16;
+    } else {
+      for(int i = 0; i < nBins; i++) {
+        if(eta == map[i]) {
+          if(i < 8) element = i;
+          else element = i + 50;
+          break;
+        }
+      }
+    }
+    if      (layer == 1 && (element == 0 || element == 64)) element = 1; // FCal2-2
+    else if (layer == 1 && (element == 1 || element == 65)) element = 0; // FCal3-2
+    else if (layer == 1 && (element == 2 || element == 62)) element = 3; // FCal2-1
+    else if (layer == 1 && (element == 3 || element == 63)) element = 2; // FCal3-1
+    else if (element > 32) element = 65-element;
+
+    // element 29 = FCal2-1, element 30 = FCal3-1, element 31 = FCal2-2, element 32 = FCal3-2
+    element = NELEMENTS-element-1;
+
+    return element;
+  }
+
+  // This is the non-linear LUT function corresponding to strategy 3.
+  // This should actually go into LVL1::L1TriggerTowerTools (TrigT1CaloTools)
+  // but for now we keep it here to keep the number of touched packages small
+  // and make it easier to change some parts of the definition later on.
+  int OverlayRun2TriggerTowerMaker::non_linear_lut(int lutin, unsigned short offset, unsigned short slope, unsigned short noiseCut, unsigned short scale, short par1, short par2, short par3, short par4) {
+    // turn shorts into double (database fields are shorts ... )
+
+    // turn shorts into double
+    double nll_slope = 0.001 * scale;
+    double nll_offset = 0.001 * par1;
+    double nll_ampl = 0.001 * par2;
+    double nll_expo = 0.;
+    if(par3) {
+      nll_expo = -1. / (4096 * 0.001*par3);
+    } else {
+      nll_ampl = 0.;
+    }
+    double nll_noise = 0.001 * par4;
+
+    // noise cut
+    if (lutin * slope < offset + nll_noise * noiseCut) {
+      return 0;
+    }
+
+    // actual calculation
+    int output = int((((int)(2048 + nll_slope * (lutin * slope - offset)))>>12) + nll_offset + nll_ampl * std::exp(nll_expo * (lutin * slope - offset)));
+    if(output >= 255) return 255;
+    if(output < 0) return 0;
+    return output;
+  }
+
+} // end of namespace bracket
diff --git a/Trigger/TrigT1/TrigT1CaloSim/src/Run2TriggerTowerMaker.cxx b/Trigger/TrigT1/TrigT1CaloSim/src/Run2TriggerTowerMaker.cxx
index 1758a6032e8bf635b82df42743376cc9074f0095..3733892c927822a1a208196790a8170bb7f33615 100755
--- a/Trigger/TrigT1/TrigT1CaloSim/src/Run2TriggerTowerMaker.cxx
+++ b/Trigger/TrigT1/TrigT1CaloSim/src/Run2TriggerTowerMaker.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
 */
 
 // ================================================
@@ -849,6 +849,9 @@ namespace LVL1 {
       etResultVectorJep[0] = 0;
     }
 
+    // Overlay protection
+    if (m_inputTTLocation == "NoneForOverlay") return StatusCode::SUCCESS;
+
     tower->setLut_cp(std::move(etResultVectorCp));
     tower->setLut_jep(std::move(etResultVectorJep));
     tower->setBcidVec({uint8_t(BCIDOut[BCIDOut.size()/2])});
@@ -1148,7 +1151,7 @@ namespace LVL1 {
     if(et < bcidEnergyRangeHigh) return 1;
     return 2;
   }
-
+  
   double Run2TriggerTowerMaker::IDeta(const Identifier& id, const CaloLVL1_ID* l1id)
   {
     int region = l1id->region(id);
diff --git a/Trigger/TrigT1/TrigT1CaloSim/src/components/TrigT1CaloSim_entries.cxx b/Trigger/TrigT1/TrigT1CaloSim/src/components/TrigT1CaloSim_entries.cxx
index a3665698f97e757c30459b4e8bbbda165326b518..c67110e751c8bac4949df4e6214d584d481d2af2 100644
--- a/Trigger/TrigT1/TrigT1CaloSim/src/components/TrigT1CaloSim_entries.cxx
+++ b/Trigger/TrigT1/TrigT1CaloSim/src/components/TrigT1CaloSim_entries.cxx
@@ -14,6 +14,7 @@
 #include "TrigT1CaloSim/CPCMX.h"
 #include "TrigT1CaloSim/JetCMX.h"
 #include "TrigT1CaloSim/EnergyCMX.h"
+#include "TrigT1CaloSim/OverlayRun2TriggerTowerMaker.h"
 #include "TrigT1CaloSim/TransientDatabaseOverride.h"
 
 
@@ -36,4 +37,5 @@ DECLARE_COMPONENT( CPCMX )
 DECLARE_COMPONENT( JetCMX )
 DECLARE_COMPONENT( EnergyCMX )
 DECLARE_COMPONENT( TransientDatabaseOverride )
+DECLARE_COMPONENT( OverlayRun2TriggerTowerMaker )
 
diff --git a/Trigger/TriggerCommon/TriggerMenu/CMakeLists.txt b/Trigger/TriggerCommon/TriggerMenu/CMakeLists.txt
index 1bb20e31841e45489afdf60f1faf12b5046bc072..fc51828e1caae475f2a8382f48fc8f8fdfe55ccd 100644
--- a/Trigger/TriggerCommon/TriggerMenu/CMakeLists.txt
+++ b/Trigger/TriggerCommon/TriggerMenu/CMakeLists.txt
@@ -16,7 +16,7 @@ atlas_install_scripts( scripts/generate*Menu.py scripts/menuTestTMC.sh )
 atlas_install_xmls( data/*.dtd data/*.xml )
 
 atlas_add_test( generateMenu SCRIPT scripts/testMenu.sh 
-                PROPERTIES TIMEOUT 500 
+                PROPERTIES TIMEOUT 1000 
                 POST_EXEC_SCRIPT "check_log.pl --config checklogTriggerTest.conf generateMenu.log"
               )
 
diff --git a/graphics/VP1/VP1Algs/CMakeLists.txt b/graphics/VP1/VP1Algs/CMakeLists.txt
index 1f0043a8f6a9fc9c531c4bd2bd0900bfe7d49740..fd39e831faa7ab5b662a061d4d6ce8509f5500c5 100644
--- a/graphics/VP1/VP1Algs/CMakeLists.txt
+++ b/graphics/VP1/VP1Algs/CMakeLists.txt
@@ -18,6 +18,7 @@ atlas_depends_on_subdirs( PUBLIC
 # "Externals" dependencies - They are needed at runtime, only
 find_package( libxkbcommon ) 
 find_package( glib ) 
+find_package( libffi )
 
 # Component(s) in the package:
 atlas_add_component( VP1Algs