diff --git a/Trigger/TrigAlgorithms/TrigT2CaloCommon/TrigT2CaloCommon/IAlgToolCalo.h b/Trigger/TrigAlgorithms/TrigT2CaloCommon/TrigT2CaloCommon/IAlgToolCalo.h
index 4a256cd9044f453c41345a5876ae7eeb7145fd06..d08b19554ee42ed438fe24d942f5469cae38e88d 100755
--- a/Trigger/TrigAlgorithms/TrigT2CaloCommon/TrigT2CaloCommon/IAlgToolCalo.h
+++ b/Trigger/TrigAlgorithms/TrigT2CaloCommon/TrigT2CaloCommon/IAlgToolCalo.h
@@ -50,6 +50,9 @@
 
 #include "TrigSteeringEvent/Enums.h"
 
+#include "CxxUtils/checker_macros.h"
+ATLAS_NO_CHECK_FILE_THREAD_SAFETY;  // legacy trigger code
+
 //class TrigEMCluster;
 class TrigTauCluster;
 class T2CaloConfig;
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloCommon/TrigT2CaloCommon/IReAlgToolCalo.h b/Trigger/TrigAlgorithms/TrigT2CaloCommon/TrigT2CaloCommon/IReAlgToolCalo.h
index 5aed0c8b94b200290ade19bde04f26ed3a0a878b..632282cc5154a83fe44bb4e8ee405723cd6516a0 100755
--- a/Trigger/TrigAlgorithms/TrigT2CaloCommon/TrigT2CaloCommon/IReAlgToolCalo.h
+++ b/Trigger/TrigAlgorithms/TrigT2CaloCommon/TrigT2CaloCommon/IReAlgToolCalo.h
@@ -3,213 +3,105 @@
 */
 
 /********************************************************************
- 
+
  NAME:     IReAlgToolCalo.h
  PACKAGE:  Trigger/TrigAlgorithms/TrigT2CaloCommon
- 
+
  AUTHOR:   D. Oliveira Damazio based on P. Casado work
- 
+
  PURPOSE:  Serve as a basis for the TrigT2Calo Tools
-	   providing some commom framework basis, like
-	   data access via appropriated pointers and
-	   ByteStream converter objects. Also, time
-	   measurement items.
+           providing some commom framework basis, like
+           data access via appropriated pointers and
+           ByteStream converter objects. Also, time
+           measurement items.
  KNOWTOINHERIT : TrigT2CaloEgamma/EgammaReSamp2Fex,
-	   EgammaReSamp1Fex, EgammaReEmEnFex, EgammaReHadEnFex
+           EgammaReSamp1Fex, EgammaReEmEnFex, EgammaReHadEnFex
  *******************************************************************/
 
-#ifndef TRIGT2CALOCOMMON_IREALGTOOLCALO_H 
+#ifndef TRIGT2CALOCOMMON_IREALGTOOLCALO_H
 #define TRIGT2CALOCOMMON_IREALGTOOLCALO_H
 
-#include "GaudiKernel/IAlgTool.h"
 #include "AthenaBaseComps/AthAlgTool.h"
-#include "GaudiKernel/ToolHandle.h"
 #include "GaudiKernel/ServiceHandle.h"
+#include "GaudiKernel/ToolHandle.h"
 
-#include "StoreGate/DataHandle.h"
+#include "CaloGeoHelpers/CaloSampling.h"
 #include "CaloIdentifier/CaloIdManager.h"
-#include "TrigTimeAlgs/TrigTimerSvc.h"
-
-#include "TileByteStream/TileCellCont.h"
-#include "TrigT2CaloCommon/LArCellCont.h"
-#include "Identifier/IdentifierHash.h"
-#include "LArRawUtils/LArTT_Selector.h"
-
-#include "LArRecEvent/LArCellCollection.h"
-
+#include "StoreGate/DataHandle.h"
 #include "TileEvent/TileCell.h"
-
-#include "TrigT2CaloCommon/T2GeometryTool.h"
-#include "TrigT2CaloCommon/T2Calibration.h"
-#include "TrigT2CaloCommon/ITrigDataAccess.h"
 #include "TrigT2CaloCommon/ITrigCaloDataAccessSvc.h"
-#include "CaloGeoHelpers/CaloSampling.h"
+#include "TrigT2CaloCommon/T2Calibration.h"
+#include "TrigT2CaloCommon/T2GeometryTool.h"
+#include "TrigTimeAlgs/TrigTimerSvc.h"
 #include "xAODTrigCalo/TrigEMCluster.h"
 
-#include "TrigSteeringEvent/Enums.h"
-
-//class TrigEMCluster;
-class TrigTauCluster;
-class T2CaloConfig;
-class EventContext;
-
-static const InterfaceID IID_IReAlgToolCalo("IReAlgToolCalo",1,0);
-
-static const CaloDetDescrElement* caloReDDENull(nullptr);
-
-/** Base Class for Tools used for Egamma and Tau Feature
-	Extraction Algorithms */
-class IReAlgToolCalo: public virtual IAlgTool, 
-                       public AthAlgTool {
-  public:
-    /** Constructor */
-    IReAlgToolCalo(const std::string & type, const std::string & name,
-                 const IInterface* parent) : AthAlgTool(type,name,parent),
-		 m_timersvc("TrigTimerSvc","IReAlgToolCalo"),
-		 m_geometryTool("T2GeometryTool/T2GeometryTool", this ),
-		 m_dataSvc("TrigCaloDataAccessSvc/TrigCaloDataAccessSvc",name),
-                 m_caloDDE(0), m_cellkeepthr(1e5), m_context(nullptr) {
-	 declareInterface<IReAlgToolCalo>(this);
-         declareProperty("SaveCellsInContainer",m_saveCells=false,"Enables saving of the RoI Calorimeter Cells in StoreGate");
-         declareProperty("TrigTimerSvc",m_timersvc,"Trigger Timer Service for benchmarking algorithms");
-         declareProperty("T2GeometryTool",m_geometryTool,
-		"Tool to check that a cells are contained in a given cluster - for different cluster sizes");
-         declareProperty("trigDataAccessMT",m_dataSvc,"Data Access for LVL2 Calo Algorithms in MT");
-         declareProperty("ThresholdKeepCells",m_cellkeepthr,"Threshold to keep cells into container");
-	 if ( caloReDDENull != nullptr ) return;
-    }
-    /** Destructor */
-    virtual ~IReAlgToolCalo() { }
-    /** Interface ID for a virtual class */
-    static const InterfaceID& interfaceID();
-
-
-    /** The same function should initialize all Tools.
-    It will also provide stardard timers for all tools */
-    StatusCode initialize();
-    /** Finalize method */
-    StatusCode finalize();
-    /** @brief This is the execute method for Egamma Algorithms. These
-    * interface must be common to allow all tools to be called
-    * within T2CaloEgamma::hltExecute as a vector of IReAlgToolCalos. 
-    * @param[out] ptrigEMCluster : cluster to be filled with FEX results.
-    * @param[in] eta/phi-min/max : limits of RoI.
-    */
-
-    virtual StatusCode execute(xAOD::TrigEMCluster& /*ptrigEMCluster*/,
-			       const IRoiDescriptor& /*roi*/,
-			       const CaloDetDescrElement*& /*caloDDE*/,
-                               const EventContext* /*context*/
-			        ) const = 0;
-
-    /// obsolete 
-    virtual StatusCode execute(xAOD::TrigEMCluster& /*ptrigEMCluster*/
-		, double /*etamin*/, double /*etamax*/, double /*phimin*/
-		, double /*phimax*/){return StatusCode::SUCCESS;}
-    /** @brief This is the execute method for Tau Algorithms. These
-    * interface must be common to allow all tools to be called
-    * within T2CaloTau::hltExecute as a vector of IReAlgToolCalos. 
-    * @param[out] ptrigTauCluster : cluster to be filled with FEX results.
-    * @param[in] eta/phi-min/max : limits of RoI.
-    */
-    /** Expose error for a given IReAlgToolCalo */
-    uint32_t report_error() const { return m_error; };
-
-    /** enumerate tau-specific errors */
-    enum TAUCLUSTERROR{
-      FAILPRESEED=31,
-      FAILSEED=30,
-      HADS1E0=11,
-      HADS2E0=10,
-      HADS3E0=9,
-      EMS0E0=15,
-      EMS1E0=14,
-      EMS2E0=13,
-      EMS3E0=12
-    };
-
-    /** Sets the pointer of the cell container */
-    void setCellContainerPointer(CaloCellContainer** p )
-	{ m_CaloCellContPoint = p; }
-
-  protected:
-
-    /** methods to manage error bit inside the tools: general and tau-specific */
-    void SetClusterError(unsigned int bit) { m_error |= (0x1<<bit); }
-    void ClearClusterError(unsigned int bit) { m_error &= ~(0x1<<bit); }
-    void SetClusterError(TAUCLUSTERROR biterr) { SetClusterError((unsigned int)biterr); }
-    void ClearClusterError(TAUCLUSTERROR biterr) { ClearClusterError((unsigned int)biterr); }
-  
-
+/** Base Class for Tools used for Egamma and Tau Feature Extraction Algorithms */
+class IReAlgToolCalo : public AthAlgTool {
+public:
+  IReAlgToolCalo(const std::string& type, const std::string& name, const IInterface* parent);
+  virtual ~IReAlgToolCalo() {}
+
+  virtual StatusCode initialize() override;
+
+  /** @brief This is the execute method for Egamma Algorithms. These
+   * interface must be common to allow all tools to be called
+   * within T2CaloEgamma::hltExecute as a vector of IReAlgToolCalos.
+   * @param[out] ptrigEMCluster : cluster to be filled with FEX results.
+   * @param[in] eta/phi-min/max : limits of RoI.
+   */
+  virtual StatusCode execute(xAOD::TrigEMCluster& ptrigEMCluster, const IRoiDescriptor& roi,
+                             const CaloDetDescrElement*& caloDDE,
+                             const EventContext& context) const = 0;
+
+protected:
 #ifndef NDEBUG
-    /** Very useful function to check about the Cluster structure.
-    It prints out a grid of cells eta and phi positions and energies.
-    Only exist in DEBUG versions of the code. */
-    void PrintCluster(const double energyFromAlg, const int nCaloType,const int nCaloSamp,
-		const CaloSampling::CaloSample, const CaloSampling::CaloSample ) const;
+  /** Very useful function to check about the Cluster structure.
+  It prints out a grid of cells eta and phi positions and energies.
+  Only exist in DEBUG versions of the code. */
+  void PrintCluster(const double energyFromAlg, const int nCaloType, const int nCaloSamp,
+                    const CaloSampling::CaloSample, const CaloSampling::CaloSample) const
+  {}
 #endif
-         /** Store All Calorimeter Cells in RoI in an StoreGate Container. */
-         void storeCells(void);
-
-	/** iterators to TileCells. To be used when on/offline
-	TileCellCont/IDC (fast/slow ByteStream Decoder) are to be used.
-	Used as input for TrigDataAccess::LoadCollections 
-	TileCellCollection::const_iterator m_itBegin;
-	TileCellCollection::const_iterator m_itEnd;
-	TileCellCollection::const_iterator m_itt;
-	*/
-
-	/** DataHandle to TrigTimerSvc */
-	ServiceHandle<ITrigTimerSvc> m_timersvc;
-	/** Timing measure items in all IReAlgToolCalos. 
-	m_timer[0] is the complete exec timer. m_timer[1] is the
-	Region Selector timer, m_timer[2] is the LoadCollection
-	timer (Data Preparation), m_timer[3] is the real algorithmic
-	timer and m_timer[4] is the saving data (to TrigCaloEvent
-	object) timer. */
-	TrigTimer* m_timer[5];
-
-	/** Objects will need T2Calibration. So far, a given tool will
-	not need more than one of such objects. */
-	T2Calibration *m_calib;
-	/** Input objects to calibration. This will be changed in such
-	a way the the calibration tool will have to know alone about
-	such properties. */
-	std::vector<float> m_limit;
-	std::vector<int> m_dimension;
-	std::vector<float> m_correction;
-
-	/** Objects will need T2GeometryTool (maybe two instances 
-	for EmEn and three for HadEn - to be studied) */
-	ToolHandle<IT2GeometryTool> m_geometryTool;
-	/** Object  that provides data access in a Region of
-	Interest. See TrigCaloDataAccessSvc for more details. */
-	ServiceHandle<ITrigCaloDataAccessSvc> m_dataSvc;
-	/** Calorimeter Id Manager for calorimeter part
-	determination (Barrel versus EndCap) */
-	const DataHandle<CaloIdManager>        m_larMgr;
-	/** (don't by default) Save Calorimeter Cells in StoreGate
-	for a posteriori analysis */
-        bool m_saveCells;
-        /** Pointer of the cell container */
-        CaloCellContainer** m_CaloCellContPoint;
-        // Objects that the Tools should not worry about
-  protected:
-	bool m_lardecoded, m_tiledecoded;
-	/** error control (not really used for MT case) */
-        mutable uint32_t m_error;
-        /** caloDDE (of the cluster 2nd layer hottest cell) */
-        const CaloDetDescrElement* m_caloDDE;      
-        /** Threshold to keep cells  in RoI */
-	float m_cellkeepthr;
-        /** Pointer of the context */
-        const EventContext* m_context;
-  private:
-};
 
-inline const InterfaceID& IReAlgToolCalo::interfaceID()
-{
-        return IID_IReAlgToolCalo;
-}
+  /** Timing measure items in all IReAlgToolCalos.
+  m_timer[0] is the complete exec timer. m_timer[1] is the
+  Region Selector timer, m_timer[2] is the LoadCollection
+  timer (Data Preparation), m_timer[3] is the real algorithmic
+  timer and m_timer[4] is the saving data (to TrigCaloEvent
+  object) timer. */
+  TrigTimer* m_timer[5];
+
+  /** Objects will need T2Calibration. So far, a given tool will
+  not need more than one of such objects. */
+  T2Calibration* m_calib{nullptr};
+
+  /** Input objects to calibration. This will be changed in such
+  a way the the calibration tool will have to know alone about
+  such properties. */
+  std::vector<float> m_limit;
+  std::vector<int> m_dimension;
+  std::vector<float> m_correction;
+
+  /** Calorimeter Id Manager for calorimeter part determination (Barrel versus EndCap) */
+  const DataHandle<CaloIdManager> m_larMgr;
+
+  // Properties
+  Gaudi::Property<bool> m_saveCells{this, "SaveCellsInContainer", false,
+                                    "Enables saving of the RoI Calorimeter Cells in StoreGate"};
+
+  Gaudi::Property<float> m_cellkeepthr{this, "ThresholdKeepCells", 1e5,
+                                       "Threshold to keep cells incontainer"};
+
+  ServiceHandle<ITrigTimerSvc> m_timersvc{this, "TrigTimerSvc", "TrigTimerSvc/TrigTimerSvc",
+                                          "Trigger Timer Service for benchmarking algorithms"};
+
+  ToolHandle<IT2GeometryTool> m_geometryTool{
+      this, "T2GeometryTool", "T2GeometryTool/T2GeometryTool",
+      "Tool to check that a cells are contained in a given cluster"};
+
+  ServiceHandle<ITrigCaloDataAccessSvc> m_dataSvc{this, "trigDataAccessMT",
+                                                  "TrigCaloDataAccessSvc/TrigCaloDataAccessSvc",
+                                                  "Data Access for LVL2 Calo Algorithms in MT"};
+};
 
 #endif
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloCommon/TrigT2CaloCommon/ITrigCaloDataAccessSvc.h b/Trigger/TrigAlgorithms/TrigT2CaloCommon/TrigT2CaloCommon/ITrigCaloDataAccessSvc.h
index 6a1fa8ada2165c62165ad7a8ebb91a832b2b1af5..33a22a1bb84dce4346adb41461a42fd0e8a05579 100755
--- a/Trigger/TrigAlgorithms/TrigT2CaloCommon/TrigT2CaloCommon/ITrigCaloDataAccessSvc.h
+++ b/Trigger/TrigAlgorithms/TrigT2CaloCommon/TrigT2CaloCommon/ITrigCaloDataAccessSvc.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 #ifndef TrigT2CaloCommon_ITrigCaloDataAccessSvc_h
 #define TrigT2CaloCommon_ITrigCaloDataAccessSvc_h
@@ -10,6 +10,7 @@
 #include "LArRecEvent/LArFebEnergyCollection.h"
 #include "TileEvent/TileCellCollection.h"
 #include "TileEvent/TileL2Container.h"
+#include "IRegionSelector/IRoiDescriptor.h"
 #include "IRegionSelector/RegSelEnums.h"
 #include "CaloEvent/CaloCellContainer.h"
 #include "ZdcEvent/ZdcRawChannelCollection.h"
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloCommon/share/TriggerConfig_TrigT2Calo.py b/Trigger/TrigAlgorithms/TrigT2CaloCommon/share/TriggerConfig_TrigT2Calo.py
deleted file mode 100755
index 18b09a111bc534e4705e95f39b8731b1a65a6d1b..0000000000000000000000000000000000000000
--- a/Trigger/TrigAlgorithms/TrigT2CaloCommon/share/TriggerConfig_TrigT2Calo.py
+++ /dev/null
@@ -1,41 +0,0 @@
-include.block("TrigT2CaloCommon/TriggerConfig_TrigT2Calo.py")
-#
-# Configure a suitable TrigMoore Algorithm instance
-#
-# Constructor arguments:
-# level, type, threshold, isIsolated
-# 
-# e.g. level=L2, type=muon, threshold=30, isIsolated=None
-#      level=EF, type=egamma, threshold=20, isIsolated=isolated
-#
-# Methods:
-# instanceName() : returns name of algorithm instance
-# classAndInstanceName() : returns a list of strings to be entered in the sequence file. This string
-#              defines the class and instance name
-
-class TriggerConfig_TrigT2Calo:
-    
-    def __init__(self, level, type = None, threshold = None, isIsolated = None):
-
-        # **temp the only instance name possible at present is MooHLTEFAlgo_m1_EF
-
-        if type == "egamma":
-            self.__instname__ = "T2CaloEgamma_g4_"
-            self.__sequence__ = "T2CaloEgamma/T2CaloEgamma/g4"
-            include( "TrigT2CaloEgamma/jobOfragment_TrigT2CaloEgamma.py" )
-            include.block( "TrigT2CaloEgamma/jobOfragment_TrigT2CaloEgamma.py" )
-        if type == "jet":
-            self.__instname__ = "T2CaloJet_g4_"
-            self.__sequence__ = "T2CaloJet/T2CaloJet/g4"
-            include("TrigT2CaloJet/jobOfragment_TrigT2CaloJet.py")
-            include.block("TrigT2CaloJet/jobOfragment_TrigT2CaloJet.py")
-
-        self.__instname__ += level
-
-
-    def instanceName(self):
-        return self.__instname__
-
-    def classAndInstanceName(self):
-        return [ self.__sequence__ ]
-
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloCommon/src/IReAlgToolCalo.cxx b/Trigger/TrigAlgorithms/TrigT2CaloCommon/src/IReAlgToolCalo.cxx
index d08330d84d60ddaecb42a51387218fc31e1bd453..f532ce649dc136782988eb74337166868dfc940b 100755
--- a/Trigger/TrigAlgorithms/TrigT2CaloCommon/src/IReAlgToolCalo.cxx
+++ b/Trigger/TrigAlgorithms/TrigT2CaloCommon/src/IReAlgToolCalo.cxx
@@ -1,8 +1,7 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
-
 // ********************************************************************
 //
 // NAME:     IReAlgToolCalo.cxx
@@ -15,114 +14,24 @@
 //
 // ********************************************************************
 
-#include "GaudiKernel/MsgStream.h"
-#include "CaloIdentifier/LArEM_ID.h"
-#include "LArRecEvent/LArCell.h"
-
-#include "CaloIdentifier/LArEM_ID.h"
-//#include "TrigCaloEvent/TrigEMCluster.h"
-#include "xAODTrigCalo/TrigEMCluster.h"
-#include "CaloGeoHelpers/CaloSampling.h"
-#include "CaloEvent/CaloCellContainer.h"
-
 #include "TrigT2CaloCommon/IReAlgToolCalo.h"
-#include "TrigInterfaces/FexAlgo.h"
 
+/** Constructor */
+IReAlgToolCalo::IReAlgToolCalo(const std::string& type, const std::string& name,
+                               const IInterface* parent) :
+    AthAlgTool(type, name, parent)
+{}
 
-// Initialize method for all tools
-// Retrieval of all Tools to be used during run
 StatusCode IReAlgToolCalo::initialize()
 {
-        ATH_MSG_DEBUG("in initialize() by IReAlgToolCalo");
-
-        ATH_CHECK( detStore()->retrieve(m_larMgr) );
-	if ( !m_dataSvc.empty() ) ATH_CHECK( m_dataSvc.retrieve() );
-        ATH_CHECK( m_geometryTool.retrieve() );
+  ATH_CHECK(detStore()->retrieve(m_larMgr));
+  if (!m_dataSvc.empty()) ATH_CHECK(m_dataSvc.retrieve());
+  ATH_CHECK(m_geometryTool.retrieve());
 
-        // Initialize timing service in order to perform some measures
-        // of performance
-        if( !m_timersvc.empty() && m_timersvc.retrieve().isFailure() ) {
-          ATH_MSG_WARNING( name() <<
-                           ": Unable to locate TrigTimer Service" );
-	  // Does not need to fail the Algorithm if no timing service is found
-        } // End of if timing service
-        // Initialize four timers for RegionSelector, ByteStreamCnv,
-        // Algorithm time, Saving EMShowerMinimal
-        if (!m_timersvc.empty()) {
-		if ( name().find("Fex",0) == std::string::npos) 
-                  ATH_MSG_WARNING( " Name of Alg not found" );
-		else {
-                std::string basename(name().substr(6,1)+name().substr(name().find("Fex",0)-5,5));
-                //basename+=(name().substr(6,1)+name().substr(name().find("Fex",0)-5,5));
-                ATH_MSG_INFO( "BaseName is : " << basename );
-		HLT::FexAlgo *p = dynamic_cast<HLT::FexAlgo*>(const_cast<IInterface*>(parent()));
-		/*
-                m_timer[0] = m_timersvc->addItem(basename+"Total");
-                m_timer[1] = m_timersvc->addItem(basename+"RegSel");
-                m_timer[2] = m_timersvc->addItem(basename+"BSCnv");
-                m_timer[3] = m_timersvc->addItem(basename+"Algor");
-                m_timer[4] = m_timersvc->addItem(basename+"SaveEM");
-		*/
-		std::string Total((basename+"Total"));
-                m_timer[0] = p->addTimer(Total);
-		std::string RegSel((basename+"RegSel"));
-                m_timer[1] = p->addTimer(RegSel);
-		std::string BSCnv((basename+"BSCnv"));
-                m_timer[2] = p->addTimer(BSCnv);
-		std::string Algor((basename+"Algor"));
-                m_timer[3] = p->addTimer(Algor);
-		std::string SaveEM((basename+"SaveEM"));
-                m_timer[4] = p->addTimer(SaveEM);
-		} // End of check for Fex
-        } // End of if timing service
+  // Calibration object initialization
+  if (m_limit.size() != 0) {
+    m_calib->initialize(m_limit, m_dimension, m_correction);
+  }
 
-	// Calibration object initialization
-	if ( m_limit.size() != 0 ){
-		m_calib->initialize(m_limit,m_dimension,m_correction);
-	}
-        m_lardecoded=true;
-        m_tiledecoded=true;
-
-	return StatusCode::SUCCESS;
-} // End of initialize
-
-// Finalize method for all tools
-// nothing realy important done here
-StatusCode IReAlgToolCalo::finalize(){
-  ATH_MSG_DEBUG( "in finalize() by IReAlgToolCalo" );
   return StatusCode::SUCCESS;
-} // End of finalize
-
-#ifndef NDEBUG
-//#define EXTRADEBUG
-// Method designed by Tomek Kott. This method 
-// Loops over cells and try to find out about their energy
-// Then it prints out a cluster view for debugging purposes.
-#ifdef EXTRADEBUG
-# define ARG(x) x
-#else
-# define ARG(x)
-#endif
-
-void IReAlgToolCalo::PrintCluster(const double ARG(energyFromAlg),
-                                const int ARG(nCaloType),
-                                const int ARG(nCaloSamp),
-                                CaloSampling::CaloSample ARG(SAMP1), 
-                                CaloSampling::CaloSample ARG(SAMP2) ) const
-#undef ARG
-{
-#ifdef EXTRADEBUG
- // empty for now
-
-#endif // End of if EXTRADEBUG
-return;
-} // End of PrintCluster
-
-#endif
-
-// very loose implementation. No worry about time performance
-void IReAlgToolCalo::storeCells( void ) {
-
-	// empty for now
-	return;
 }
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/ATLAS_CHECK_THREAD_SAFETY b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/ATLAS_CHECK_THREAD_SAFETY
new file mode 100644
index 0000000000000000000000000000000000000000..7bbe5ba67bc422eef2e0d7017e450fa38fa2cd1b
--- /dev/null
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/ATLAS_CHECK_THREAD_SAFETY
@@ -0,0 +1 @@
+Trigger/TrigAlgorithms/TrigT2CaloEgamma
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/CMakeLists.txt b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/CMakeLists.txt
index f05cdf79bb13dc03b4cf3e64fe8f5b6704a3fc4d..bb3ad649f5bfbb78cc79e94172f2a6e0f68eb4eb 100644
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/CMakeLists.txt
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/CMakeLists.txt
@@ -26,17 +26,15 @@ atlas_depends_on_subdirs( PUBLIC
                           Trigger/TrigTools/TrigTimeAlgs )
 
 # Component(s) in the package:
-atlas_add_library( TrigT2CaloEgammaLib
-                   src/*.cxx
-                   PUBLIC_HEADERS TrigT2CaloEgamma
-                   LINK_LIBRARIES CaloEvent CaloGeoHelpers xAODTrigCalo xAODTrigRinger GaudiKernel TrigSteeringEvent TrigT2CaloCommonLib CaloDetDescrLib TrigT2CaloCalibrationLib TrigTimeAlgsLib
-                   PRIVATE_LINK_LIBRARIES CaloIdentifier AthLinks IRegionSelector TrigT1Interfaces )
-
 atlas_add_component( TrigT2CaloEgamma
+                     src/*.cxx
                      src/components/*.cxx
-                     LINK_LIBRARIES CaloEvent CaloGeoHelpers xAODTrigCalo xAODTrigRinger GaudiKernel TrigT2CaloCommonLib TrigSteeringEvent CaloDetDescrLib CaloIdentifier AthLinks IRegionSelector TrigT1Interfaces TrigT2CaloCalibrationLib TrigTimeAlgsLib TrigT2CaloEgammaLib )
+                     LINK_LIBRARIES CaloEvent CaloGeoHelpers xAODTrigCalo xAODTrigRinger GaudiKernel TrigT2CaloCommonLib TrigSteeringEvent CaloDetDescrLib CaloIdentifier AthLinks IRegionSelector TrigT1Interfaces TrigT2CaloCalibrationLib TrigTimeAlgsLib )
 
 # Install files from the package:
 atlas_install_python_modules( python/*.py )
-atlas_install_joboptions( share/*.py )
 
+# Python code checking:
+atlas_add_test( flake8
+   SCRIPT flake8 --select=F,E7,E9,W6 ${CMAKE_CURRENT_SOURCE_DIR}/python
+   POST_EXEC_SCRIPT nopost.sh )
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaReEmEnFex.h b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaReEmEnFex.h
deleted file mode 100755
index 97d846232d5ab27e0869cb9982533c82e9072349..0000000000000000000000000000000000000000
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaReEmEnFex.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
-  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
-*/
-
-/********************************************************************
- 
- NAME:     EgammaReEmEnFex.h
- PACKAGE:  Trigger/TrigAlgorithms/TrigT2CaloEgamma
- 
- AUTHOR:   M.P. Casado
- 
- PURPOSE:  Based on Cluster position defined in the second
-           EM Calorimeter layer, calculates total EM cluster
-	   energy.
- *******************************************************************/
-
-#ifndef TRIGT2CALOEGAMMA_EGAMMAEMENFEXRE_H 
-#define TRIGT2CALOEGAMMA_EGAMMAEMENFEXRE_H
-
-#include "TrigT2CaloCommon/IReAlgToolCalo.h"
-#include "TrigT2CaloCommon/phiutils.h"
-#include "TrigSteeringEvent/TrigRoiDescriptor.h"
-#include "GaudiKernel/AlgTool.h"
-
-/** Feature extraction Tool for LVL2 Calo. EM Presampler and
-	third EM Calorimeter sample. */
-class EgammaReEmEnFex: public IReAlgToolCalo {
-  public:
-    // to avoid compiler warning about hidden virtuals
-    using IReAlgToolCalo::execute;
-  
-    /** Constructor */
-    EgammaReEmEnFex(const std::string & type, const std::string & name, 
-                 const IInterface* parent);
-    /** Destructor */
-    virtual ~EgammaReEmEnFex();
-    /** @brief execute feature extraction for the EM Calorimeter
-    *   second layer 
-    *   @param[out] rtrigEmCluster is the output cluster.
-    *   @param[in] roi RoI definition.
-    */
-    StatusCode execute(xAOD::TrigEMCluster &rtrigEmCluster,
-		       const IRoiDescriptor& roi,
-		       const CaloDetDescrElement*& caloDDE = caloReDDENull,
-                       const EventContext* context = nullptr ) const;
-
-    /// OBSOLETE!! DO NOT USE
-
-    /** @brief execute feature extraction for the EM Calorimeter
-    *   second layer 
-    *   @param[out] rtrigEmCluster is the output cluster.
-    *   @param[in] eta/phi-min/max = RoI definition.
-    */
-    StatusCode execute(xAOD::TrigEMCluster &rtrigEmCluster,
-		       double etamin, double etamax, 
-		       double phimin, double phimax) {
-      TrigRoiDescriptor roi( 0.5*(etamin+etamax), etamin, etamax,
-			     HLT::phimean(phimin,phimax), phimin, phimax);
-      return execute( rtrigEmCluster, roi, caloReDDENull, nullptr );
-    }
-
-
-};
-
-
-#endif
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaReHadEnFex.h b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaReHadEnFex.h
deleted file mode 100755
index 19e3cf635ef24151ec854f394c4550c3086a5c12..0000000000000000000000000000000000000000
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaReHadEnFex.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
-*/
-
-/********************************************************************
- 
- NAME:     EgammaReHadEnFex.h
- PACKAGE:  Trigger/TrigAlgorithms/TrigT2CaloEgamma
- 
- AUTHOR:   M.P. Casado
- 
- PURPOSE:  Based on Cluster position defined in the second
-           EM Calorimeter layer, calculates total Had cluster
-           energy.
- *******************************************************************/
-
-#ifndef TRIGT2CALOEGAMMA_EGAMMAHADENFEXRE_H 
-#define TRIGT2CALOEGAMMA_EGAMMAHADENFEXRE_H
-
-#include "TrigT2CaloCommon/IReAlgToolCalo.h"
-#include "GaudiKernel/AlgTool.h"
-
-/** Feature extraction Tool for LVL2 Calo. Hadronic EndCaps
-	and Tile Calorimeter. All Samples */
-class EgammaReHadEnFex: public IReAlgToolCalo {
-  public:
-    // to avoid compiler warning about hidden virtuals
-    using IReAlgToolCalo::execute;
-  
-    /** Constructor */
-    EgammaReHadEnFex(const std::string & type, const std::string & name, 
-                 const IInterface* parent);
-    /** Destructor */
-    virtual ~EgammaReHadEnFex();
-    /** @brief execute feature extraction for the EM Calorimeter
-    *   second layer 
-    *   @param[out] rtrigEmCluster is the output cluster.
-    *   @param[in] eta/phi-min/max = RoI definition.
-    */
-    StatusCode execute(xAOD::TrigEMCluster &rtrigEmCluster,
-		       const IRoiDescriptor& roi,
-		       const CaloDetDescrElement*& caloDDE = caloReDDENull,
-                       const EventContext* context = nullptr ) const;
-
-    //    StatusCode execute(TrigEMCluster &rtrigEmCluster,double etamin,
-    //			double etamax, double phimin, double phimax);
-
-
-    StatusCode initialize() {
-                // Very important to call base class initialize
-                if ( IReAlgToolCalo::initialize().isFailure() ) {
-                        *(new MsgStream(AlgTool::msgSvc(), name()))
-                        << MSG::FATAL
-                        << "Could not init base class IReAlgTooCalo" << endmsg;
-                }
-                if (!m_timersvc.empty()) {
-                        m_timer[0]->propName("T2CaEm_NCells");
-                }
-                return StatusCode::SUCCESS;
-    }
-
-};
-
-
-#endif
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/T2CaloEgammaFastAlgo.h b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/T2CaloEgammaFastAlgo.h
deleted file mode 100755
index b2b9e37c5d21cfc5006beca277f5d37d1e577d0e..0000000000000000000000000000000000000000
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/T2CaloEgammaFastAlgo.h
+++ /dev/null
@@ -1,107 +0,0 @@
-/*
-  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
-*/
-
-/**
-
- NAME:     T2CaloEgammaFastAlgo.h
- PACKAGE:  Trigger/TrigAlgorithms/TrigT2CaloEgamma
-
- AUTHOR:   Denis Oliveira Damazio and Carlos Chavez Barajas
-
- PURPOSE:  New Algorithm to play with Future Framework
- **/
-
-#ifndef TRIGT2CALOEGAMMA_T2CALOEGAMMAFASTALGO_H
-#define TRIGT2CALOEGAMMA_T2CALOEGAMMAFASTALGO_H
-
-#include <string>
-#include "AthenaBaseComps/AthAlgorithm.h"
-#include "egammaInterfaces/Iegammaqweta2c.h"
-#include "xAODTrigCalo/TrigEMCluster.h"
-#include "GaudiKernel/ToolHandle.h"
-#include "GaudiKernel/ServiceHandle.h"
-
-#include "StoreGate/ReadHandleKey.h"
-#include "StoreGate/WriteHandleKey.h"
-#include "xAODTrigCalo/TrigEMClusterContainer.h"
-#include "TrigSteeringEvent/TrigRoiDescriptorCollection.h"
-#include "IRegionSelector/IRegSelSvc.h"
-
-class IAlgToolCalo;
-class IEgammaCalibration;
-class ITrigDataAccess;
-
-/** Main LVL2 Algorithm. Processes LVL1 information, call FEX
-    IAlgToolCalos and produces the TrigEMCluster output. */
-class T2CaloEgammaFastAlgo: public AthAlgorithm {
-
-
-  public:
-    T2CaloEgammaFastAlgo(const std::string & name, ISvcLocator* pSvcLocator);
-    virtual ~T2CaloEgammaFastAlgo();
-
-    virtual StatusCode execute() override;
-    virtual StatusCode initialize() override;
-
-  private:
-    /** To support new monitoring. Values must be copied to
-	this monitored Cluster for each RoI. */
-    const xAOD::TrigEMCluster* m_monitoredCluster;
-    /** To monitor rCore */
-    float m_rCore;
-    /** To monitor eRatio */
-    float m_eRatio;
-    /** To monitor r strips */
-    float m_stripRatio;
-    /** Forced LVL1 eta */
-    float m_l1eta;
-    /** Forced LVL1 phi */
-    float m_l1phi;
-    /** counter for conversion error */
-    unsigned int m_conversionError;
-    /** counter for algorithm error */
-    unsigned int m_algorithmError;
-    /** Monitored Eta and Phi */
-    float m_MonEta, m_MonPhi;
-
-    //int m_index;
-    /** Calibration tools for the Barrel*/
-    ToolHandleArray<IEgammaCalibration> m_calibsBarrel;
-    /** Calibration tools for the Endcap*/
-    ToolHandleArray<IEgammaCalibration> m_calibsEndcap;
-
-    // Properties:
-    std::string m_trigEmClusterKey;
-    /** Should or not storeCells into a cell container attached to output RoI */
-    bool m_storeCells;
-    /** container pointer */
-    //CaloCellContainer* m_Container;
-    /** Correction tool for the cluster width */
-    //ToolHandle<Iegammaqweta2c> m_egammaqweta2c;
-
-    /* Variables to calculate Z0 position */
-    //std::vector<float> m_rhoFirstLayer, m_rhoMiddleLayer, m_zFirstLayer, m_zMiddleLayer;
-    std::vector<float> m_rhoEta, m_zEta;/* Variables to calculate Z0 position */
-
-    // variables that were in T2CaloBase
-    /** Eta width of Region of Interest. Should be 0.2 for EGamma. */
-    double            m_etaWidth;
-    /** Phi width of Region of Interest. Should be 0.2 for EGamma. */
-    double            m_phiWidth;
-    ToolHandleArray<IAlgToolCalo>   m_emAlgTools;
-    ToolHandle<ITrigDataAccess>     m_data;
-    SG::ReadHandleKey<TrigRoiDescriptorCollection> m_roiCollectionKey;
-    SG::WriteHandleKey<xAOD::TrigEMClusterContainer> m_clusterContainerKey;
-    SG::ReadHandle<TrigRoiDescriptorCollection> m_roiCollection;
-    SG::WriteHandle<xAOD::TrigEMClusterContainer> m_trigEmClusterCollection;
-    SG::WriteHandle<xAOD::TrigEMClusterAuxContainer> m_trigEmClusterAuxCollection;
-    ServiceHandle<IRegSelSvc>     m_regionSelector; 
-
-
-
-    //    SG::WriteHandleKey<TrigEMClusterContainer> m_clusterContainerKey;
-
-};
-
-#endif
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/python/RingerConstants.py b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/python/RingerConstants.py
index bd90f26b902d8a7b7d55275fb3ee1afacea55f21..688163bd033ed866995c15dfb7037070f48f28f8 100644
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/python/RingerConstants.py
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/python/RingerConstants.py
@@ -1,50 +1,50 @@
-# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+# Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 
 
-class SectionClass:
+class SectionClass(object):
   def __init__(self):
-    self.EM = 0;
-    self.HAD = 1;
+    self.EM = 0
+    self.HAD = 1
 
-Section = SectionClass();
+Section = SectionClass()
 
-class NormalisationClass:
+class NormalisationClass(object):
   def __init__(self):
-    self.EVENT = 0;
-    self.SECTION = 1;
-    self.SET = 2;
-    self.SEQUENTIAL = 3;
-    self.NONE = 4;
+    self.EVENT = 0
+    self.SECTION = 1
+    self.SET = 2
+    self.SEQUENTIAL = 3
+    self.NONE = 4
     
-Normalisation = NormalisationClass();
+Normalisation = NormalisationClass()
 
-class LayerClass:
+class LayerClass(object):
   def __init__(self):
-    self.PreSamplerB = 0;
-    self.EMB1 = 1;
-    self.EMB2 = 2;
-    self.EMB3 = 3;
-    self.PreSamplerE = 4;
-    self.EME1 = 5;
-    self.EME2 = 6;
-    self.EME3 = 7;
-    self.HEC0 = 8;
-    self.HEC1 = 9;
-    self.HEC2 = 10;
-    self.HEC3 = 11;
-    self.TileBar0 = 12;
-    self.TileBar1 = 13;
-    self.TileBar2 = 14;
-    self.TileGap0 = 15;
-    self.TileGap1 = 16;
-    self.TileGap2 = 17;
-    self.TileExt0 = 18;
-    self.TileExt1 = 19;
-    self.TileExt2 = 20;
-    self.FCAL0 = 21;
-    self.FCAL1 = 22;
-    self.FCAL2 = 23;
-    self.Unknown = 24;
+    self.PreSamplerB = 0
+    self.EMB1 = 1
+    self.EMB2 = 2
+    self.EMB3 = 3
+    self.PreSamplerE = 4
+    self.EME1 = 5
+    self.EME2 = 6
+    self.EME3 = 7
+    self.HEC0 = 8
+    self.HEC1 = 9
+    self.HEC2 = 10
+    self.HEC3 = 11
+    self.TileBar0 = 12
+    self.TileBar1 = 13
+    self.TileBar2 = 14
+    self.TileGap0 = 15
+    self.TileGap1 = 16
+    self.TileGap2 = 17
+    self.TileExt0 = 18
+    self.TileExt1 = 19
+    self.TileExt2 = 20
+    self.FCAL0 = 21
+    self.FCAL1 = 22
+    self.FCAL2 = 23
+    self.Unknown = 24
 
 Layer = LayerClass()
 
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/python/TrigT2CaloEgammaConfig.py b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/python/TrigT2CaloEgammaConfig.py
index c43aeae39e83071a4af284b784b40c766b91e769..1dbe9923e67de2482f4904248a80541a0fa95817 100755
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/python/TrigT2CaloEgammaConfig.py
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/python/TrigT2CaloEgammaConfig.py
@@ -1,7 +1,5 @@
-# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+# Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 
-
-#from TrigT2CaloEgamma.TrigT2CaloEgammaConf import T2CaloSwCluster
 from TrigT2CaloEgamma.TrigT2CaloEgammaConf import EgammaSamp1Fex as _EgammaSamp1Fex 
 from TrigT2CaloEgamma.TrigT2CaloEgammaConf import EgammaSamp2Fex as _EgammaSamp2Fex
 from TrigT2CaloEgamma.TrigT2CaloEgammaConf import EgammaEmEnFex as _EgammaEmEnFex
@@ -13,20 +11,16 @@ from TrigT2CaloEgamma.TrigT2CaloEgammaConf import EgammaReSamp2Fex
 from TrigT2CaloEgamma.TrigT2CaloEgammaConf import EgammaReEmEnFex
 from TrigT2CaloEgamma.TrigT2CaloEgammaConf import EgammaReHadEnFex
 from TrigT2CaloEgamma.TrigT2CaloEgammaConf import T2CaloEgamma
-from TrigT2CaloEgamma.TrigT2CaloEgammaConf import T2CaloEgammaFastAlgo, T2CaloEgammaReFastAlgo
+from TrigT2CaloEgamma.TrigT2CaloEgammaConf import T2CaloEgammaReFastAlgo
 
 from TrigT2CaloCalibration.EgammaCalibrationConfig import EgammaHitsCalibrationBarrelConfig, EgammaHitsCalibrationEndcapConfig, EgammaGapCalibrationConfig
 from TrigT2CaloCalibration.EgammaCalibrationConfig import EgammaTransitionRegionsConfig
 
 from TrigT2CaloCalibration.EgammaCalibrationConfig import EgammaSshapeCalibrationBarrelConfig, EgammaSshapeCalibrationEndcapConfig
-from TrigT2CaloEgamma.TrigT2CaloEgammaMonitoring import TrigT2CaloEgammaValMonitoring, TrigT2CaloEgammaCosmicMonitoring, TrigT2CaloEgammaOnMonitoring, TrigT2CaloEgammaSwValMonitoring, TrigT2CaloEgammaSwOnMonitoring, TrigT2CaloEgammaSwCosMonitoring, TrigT2CaloEgammaTimeMonitoring, TrigT2CaloEgammaAllTimeMonitoring, TrigT2CaloEgammaRingerTimeMonitoring
+from TrigT2CaloEgamma.TrigT2CaloEgammaMonitoring import TrigT2CaloEgammaValMonitoring, TrigT2CaloEgammaCosmicMonitoring, TrigT2CaloEgammaOnMonitoring, TrigT2CaloEgammaTimeMonitoring, TrigT2CaloEgammaAllTimeMonitoring, TrigT2CaloEgammaRingerTimeMonitoring
 from TrigTimeMonitor.TrigTimeHistToolConfig import TrigTimeHistToolConfig
-#from TrigTimeMonitor.TrigTimeTreeToolConfig import TrigTimeTreeToolConfig
 
 t2catime = TrigTimeHistToolConfig("Time")
-#t2catime=TrigTimeTreeToolConfig("T2CaloEgammaTimer")
-
-from AthenaCommon.Constants import VERBOSE,DEBUG
 
 class EgammaAllFex (_EgammaAllFex):
    __slots__ = []
@@ -126,10 +120,7 @@ class T2CaloEgamma_eGamma (T2CaloEgamma):
        samp1 = EgammaSamp1Fex()
        sampe = EgammaEmEnFex()
        samph = EgammaHadEnFex()
-       self.IAlgToolList= [ samp2,
-			    samp1,
-			    sampe,
-			    samph]
+       self.IAlgToolList= [ samp2, samp1, sampe, samph ]
        self.EtaWidth = 0.2
        self.PhiWidth = 0.2
        self.EtaWidthForID = 0.1
@@ -138,15 +129,15 @@ class T2CaloEgamma_eGamma (T2CaloEgamma):
        self.TrigEMClusterKey="TrigT2CaloEgamma"
        #self.Monitoring=False
        #self.OutputLevel = 1
-	     # detailed timing
+       # detailed timing
        #t2catime=TrigTimeTreeToolConfig("T2CaloEgammaTimer")
        #t2catime=TrigTimeHistToolConfig("T2CaloEgammaTimer")
        #t2catime.Key = ["ESamp2.ESamp2Total","ESamp2.ESamp2RegSel","ESamp2.ESamp2BSCnv","ESamp2.ESamp2Algor","ESamp2.ESamp2SaveEM","ESamp2.ESamp2Eta","ESamp2.ESamp2Total:ESamp2Eta"]
        #t2catime.TimerHistLimits = [0,20]
        self.AthenaMonTools += [ TrigT2CaloEgammaValMonitoring(),
-                         TrigT2CaloEgammaCosmicMonitoring(),
-			 TrigT2CaloEgammaOnMonitoring(name="TrigT2CaloEgammaOnMonitoring_doTimeHist",doTimeHist=True),
- 			 TrigT2CaloEgammaTimeMonitoring()]
+                                TrigT2CaloEgammaCosmicMonitoring(),
+                                TrigT2CaloEgammaOnMonitoring(name="TrigT2CaloEgammaOnMonitoring_doTimeHist",doTimeHist=True),
+                                TrigT2CaloEgammaTimeMonitoring()]
        self.CalibListEndcap=[EgammaSshapeCalibrationEndcapConfig()]
        self.CalibListBarrel=[EgammaSshapeCalibrationBarrelConfig()]
        self.CalibListBarrel+=[EgammaHitsCalibrationBarrelConfig()]
@@ -161,31 +152,31 @@ class T2CaloEgamma_eGamma (T2CaloEgamma):
                              1538.55, 1536.49, 1535.31, 1535.93, 1536.14, # Eta range: 0.50 ~ 0.55 ~ 0.60 ~ 0.65 ~ 0.70 ~ 0.75
                              1535.93, 1524.32, 1524.82, 1525.86, 1523.97, # Eta range: 0.75 ~ 0.80 ~ 0.85 ~ 0.90 ~ 0.95 ~ 1.00
                              1526.66, 1524.73, 1524.00, 1522.18, 1520.65, # Eta range: 1.00 ~ 1.05 ~ 1.10 ~ 1.15 ~ 1.20 ~ 1.25
-                             1519.67, 1517.90];                           # Eta range: 1.25 ~ 1.30 ~ 1.37
+                             1519.67, 1517.90]                            # Eta range: 1.25 ~ 1.30 ~ 1.37
 
        self.RhoMiddleLayer= [1756.75, 1757.91, 1757.06, 1758.25, 1757.40, # Eta range: 0.00 ~ 0.05 ~ 0.10 ~ 0.15 ~ 0.20 ~ 0.25
                              1758.75, 1757.90, 1756.01, 1754.76, 1748.07, # Eta range: 0.25 ~ 0.30 ~ 0.35 ~ 0.40 ~ 0.45 ~ 0.50
                              1740.84, 1735.52, 1732.03, 1721.71, 1716.65, # Eta range: 0.50 ~ 0.55 ~ 0.60 ~ 0.65 ~ 0.70 ~ 0.75
                              1710.82, 1739.15, 1728.36, 1722.92, 1716.45, # Eta range: 0.75 ~ 0.80 ~ 0.85 ~ 0.90 ~ 0.95 ~ 1.00 
                              1707.56, 1697.96, 1689.75, 1684.23, 1671.07, # Eta range: 1.00 ~ 1.05 ~ 1.10 ~ 1.15 ~ 1.20 ~ 1.25
-                             1663.98, 1662.04];                           # Eta range: 1.25 ~ 1.30 ~ 1.37
+                             1663.98, 1662.04]                            # Eta range: 1.25 ~ 1.30 ~ 1.37
 
        self.RhoEta = [0,    0.05, 0.10, 0.15, 0.20, 0.25, 0.30, 0.35, 0.40, 0.45, 0.50, 0.55, # eta point
                       0.60, 0.65, 0.70, 0.75, 0.80, 0.85, 0.90, 0.95, 1.00, 1.05, 1.10, 1.15, # eta point
-                      1.20, 1.25, 1.30, 1.37];
+                      1.20, 1.25, 1.30, 1.37]
 
        self.ZFirstLayer = [3790.00, 3790.00, 3790.00, 3790.00, 3790.00,           # 1.52 - 1.55 ~ 1.60 - 1.65 ~ 1.70 - 1.75
                            3790.00, 3790.00, 3790.00, 3790.00, 3790.00,           # 1.75 - 1.80 ~ 1.85 - 1.90 ~ 1.95 - 2.00
                            3790.00, 3790.00, 3790.00, 3790.00, 3790.00,           # 2.00 - 2.05 ~ 2.10 - 2.15 ~ 2.20 - 2.25
-                           3790.00, 3781.74, 3778.00, 3778.00, 3778.00, 3778.00]; # 2.25 - 2.30 ~ 2.35 - 2.40 ~ 2.45 - 2.50 ~ 2.55
+                           3790.00, 3781.74, 3778.00, 3778.00, 3778.00, 3778.00]  # 2.25 - 2.30 ~ 2.35 - 2.40 ~ 2.45 - 2.50 ~ 2.55
 
        self.ZMiddleLayer= [4006.00, 4006.00, 4002.00, 4002.00, 4002.00,           # 1.52 - 1.55 ~ 1.60 - 1.65 ~ 1.70 - 1.75
                            3990.00, 3990.00, 3990.00, 3990.00, 3990.00,           # 1.75 - 1.80 ~ 1.85 - 1.90 ~ 1.95 - 2.00
                            3986.21, 3979.21, 3978.00, 3974.47, 3963.42,           # 2.00 - 2.05 ~ 2.10 - 2.15 ~ 2.20 - 2.25
-                           3962.00, 3952.39, 3940.42, 3934.71, 3934.00, 3934.00]; # 2.25 - 2.30 ~ 2.35 - 2.40 ~ 2.45 - 2.50 ~ 2.55
+                           3962.00, 3952.39, 3940.42, 3934.71, 3934.00, 3934.00]  # 2.25 - 2.30 ~ 2.35 - 2.40 ~ 2.45 - 2.50 ~ 2.55
 
        self.ZEta = [1.50, 1.55, 1.60, 1.65, 1.70, 1.75, 1.80, 1.85, 1.90, 1.95, 2.00,
-                    2.05, 2.10, 2.15, 2.20, 2.25, 2.30, 2.35, 2.40, 2.45, 2.50, 2.55];
+                    2.05, 2.10, 2.15, 2.20, 2.25, 2.30, 2.35, 2.40, 2.45, 2.50, 2.55]
 
 class EgammaAllFexHadConfig (EgammaAllFex):
    __slots__ = []
@@ -205,9 +196,9 @@ class T2CaloEgamma_All (T2CaloEgamma):
        self.PhiWidthForID = 0.1
        self.TrigEMClusterKey="TrigT2CaloAll"
        self.AthenaMonTools += [ TrigT2CaloEgammaValMonitoring(),
-                         TrigT2CaloEgammaCosmicMonitoring(),
-                         TrigT2CaloEgammaOnMonitoring(),
-                        TrigT2CaloEgammaAllTimeMonitoring()]
+                                TrigT2CaloEgammaCosmicMonitoring(),
+                                TrigT2CaloEgammaOnMonitoring(),
+                                TrigT2CaloEgammaAllTimeMonitoring()]
        self.doTiming=True
 
 class T2CaloEgamma_AllEm (T2CaloEgamma):
@@ -221,9 +212,9 @@ class T2CaloEgamma_AllEm (T2CaloEgamma):
        self.PhiWidthForID = 0.1
        self.TrigEMClusterKey="TrigT2CaloAll"
        self.AthenaMonTools += [ TrigT2CaloEgammaValMonitoring(),
-                         TrigT2CaloEgammaCosmicMonitoring(),
-                         TrigT2CaloEgammaOnMonitoring(),
-                        TrigT2CaloEgammaAllTimeMonitoring()]
+                                TrigT2CaloEgammaCosmicMonitoring(),
+                                TrigT2CaloEgammaOnMonitoring(),
+                                TrigT2CaloEgammaAllTimeMonitoring()]
        self.doTiming=True
 
 class T2CaloEgamma_cells (T2CaloEgamma):
@@ -251,9 +242,9 @@ class T2CaloEgamma_cells (T2CaloEgamma):
        #t2catime.TimerHistLimits = [0,20]
        #self.AthenaMonTools += [t2catime]
        self.AthenaMonTools += [ TrigT2CaloEgammaValMonitoring(),
-                         TrigT2CaloEgammaCosmicMonitoring(),
-                         TrigT2CaloEgammaOnMonitoring(),
-			 TrigT2CaloEgammaTimeMonitoring()]
+                                TrigT2CaloEgammaCosmicMonitoring(),
+                                TrigT2CaloEgammaOnMonitoring(),
+                                TrigT2CaloEgammaTimeMonitoring()]
        self.CalibListEndcap=[EgammaSshapeCalibrationEndcapConfig()]
        self.CalibListBarrel=[EgammaSshapeCalibrationBarrelConfig()]
        self.CalibListBarrel+=[EgammaHitsCalibrationBarrelConfig()]
@@ -270,8 +261,8 @@ class T2CaloEgamma_eGamma_NoHad (T2CaloEgamma):
        super(T2CaloEgamma_eGamma_NoHad, self).__init__(name)
        # here put your customizations
        self.IAlgToolList= [EgammaSamp2Fex(),
-			   EgammaSamp1Fex(),
-			   EgammaEmEnFex()]
+                           EgammaSamp1Fex(),
+                           EgammaEmEnFex()]
        self.EtaWidth = 0.2
        self.PhiWidth = 0.2
        self.EtaWidthForID = 0.1
@@ -282,8 +273,8 @@ class T2CaloEgamma_eGamma_NoHad (T2CaloEgamma):
        #self.OutputLevel = DEBUG
        #self.AthenaMonTools += [t2catime]
        self.AthenaMonTools = [ TrigT2CaloEgammaValMonitoring(),
-                         TrigT2CaloEgammaCosmicMonitoring(),
-			 TrigT2CaloEgammaOnMonitoring() ]
+                               TrigT2CaloEgammaCosmicMonitoring(),
+                               TrigT2CaloEgammaOnMonitoring() ]
        #self.CalibList=[]
        self.CalibListEndcap=[EgammaSshapeCalibrationEndcapConfig()]
        self.CalibListBarrel=[EgammaSshapeCalibrationBarrelConfig()]
@@ -300,9 +291,9 @@ class T2CaloEgamma_MBTSA (T2CaloEgamma):
        super(T2CaloEgamma_MBTSA, self).__init__(name)
        # here put your customizations
        self.IAlgToolList= [EgammaSamp2FexConfig(),
-			   EgammaSamp1Fex(),
-			   EgammaEmEnFex() ,
-			   EgammaHadEnFex()]
+                           EgammaSamp1Fex(),
+                           EgammaEmEnFex() ,
+                           EgammaHadEnFex()]
        self.L1ForceEta =-1.6
        self.L1ForcePhi =-1.5
        self.EtaWidth = 0.2
@@ -313,8 +304,8 @@ class T2CaloEgamma_MBTSA (T2CaloEgamma):
        self.TrigEMClusterKey="TrigT2CaloEgamma"
        #self.AthenaMonTools += [t2catime]
        self.AthenaMonTools += [ TrigT2CaloEgammaValMonitoring(),
-                         TrigT2CaloEgammaCosmicMonitoring(),
-			 TrigT2CaloEgammaOnMonitoring()]
+                                TrigT2CaloEgammaCosmicMonitoring(),
+                                TrigT2CaloEgammaOnMonitoring()]
 
 class T2CaloEgamma_MBTSC (T2CaloEgamma):
    __slots__ = []
@@ -322,9 +313,9 @@ class T2CaloEgamma_MBTSC (T2CaloEgamma):
        super(T2CaloEgamma_MBTSC, self).__init__(name)
        # here put your customizations
        self.IAlgToolList= [EgammaSamp2FexConfig(),
-			   EgammaSamp1Fex(),
-			   EgammaEmEnFex() ,
-			   EgammaHadEnFex()]
+                           EgammaSamp1Fex(),
+                           EgammaEmEnFex() ,
+                           EgammaHadEnFex()]
        self.L1ForceEta = 1.6
        self.L1ForcePhi =-1.5
        self.EtaWidth = 0.2
@@ -335,60 +326,9 @@ class T2CaloEgamma_MBTSC (T2CaloEgamma):
        self.TrigEMClusterKey="TrigT2CaloEgamma"
        #self.AthenaMonTools += [t2catime]
        self.AthenaMonTools += [ TrigT2CaloEgammaValMonitoring(),
-                         TrigT2CaloEgammaCosmicMonitoring(),
-			 TrigT2CaloEgammaOnMonitoring()]
-
-
-#class T2CaloEgamma_SwSeed (T2CaloSwSeed):
-#   __slots__ = []
-#   def __init__ (self, name="T2CaloEgamma_SwSeed"):
-#       super(T2CaloEgamma_SwSeed, self).__init__(name)
-#       self.NoCut = False
-#       self.EtaWidth = 0.2
-#       self.PhiWidth = 0.2
-#       self.EtaWidthForID = 0.1
-#       self.PhiWidthForID = 0.1
-#       self.NoiseThreshold = 0
-#       self.WindowThreshold = 1500
-#       self.OverlapDistance = 0.1
-#       self.TrigEMClusterKey="T2CaloTrigEMSwCluster"
-#       #self.AthenaMonTools += [t2catime]
-#       self.AthenaMonTools += [
-#         TrigT2CaloEgammaSwValMonitoring(),
-#         TrigT2CaloEgammaSwOnMonitoring(),
-#         TrigT2CaloEgammaSwCosMonitoring()]
-#       self.CalibList=[EgammaSshapeCalibrationEndcapConfig(),
-#                       EgammaSshapeCalibrationBarrelConfig()]
-#
-#class T2CaloEgamma_SwSeed_NoCut (T2CaloEgamma_SwSeed):
-#    __slots__ = []
-#    def __init__(self, name = "T2CaloEgamma_SwSeed_NoCut"):
-#        super( T2CaloEgamma_SwSeed_NoCut, self ).__init__( name )
-#        self.NoCut = True
-#
-
-#class T2CaloEgamma_SwCluster (T2CaloSwCluster):
-#   __slots__ = []
-#   def __init__ (self, name="T2CaloEgamma_SwCluster"):
-#       super(T2CaloEgamma_SwCluster, self).__init__(name)
-#       self.IAlgToolList= [
-#			   EgammaSamp1Fex(),
-#			   EgammaEmEnFex(),
-#			   EgammaHadEnFex()]
-#       self.EtaWidth = 0.2
-#       self.PhiWidth = 0.2
-#       self.EtaWidthForID = 0.1
-#       self.PhiWidthForID = 0.1
-#       #self.TimerNtuple="T2CaloEgamma.T2CaSwCluster"
-#       self.TrigEMClusterKey="T2CaloTrigEMSwCluster"
-#       #self.AthenaMonTools += [t2catime]
-#       self.AthenaMonTools += [
-#         TrigT2CaloEgammaValMonitoring(),
-#         TrigT2CaloEgammaCosmicMonitoring(),
-#			   TrigT2CaloEgammaOnMonitoring()]
-#       self.CalibList = [EgammaHitsCalibrationBarrelConfig(),
-#                         EgammaGapCalibrationConfig()]
-#       self.doTiming=True
+                                TrigT2CaloEgammaCosmicMonitoring(),
+                                TrigT2CaloEgammaOnMonitoring()]
+
 
 class RingerFexConfig( RingerFex ):
   __slots__ = []
@@ -398,26 +338,25 @@ class RingerFexConfig( RingerFex ):
     self.HltFeature = "HLT_TrigT2CaloEgamma"
     self.Feature = "TrigT2CaloEgamma"
     self.EtaBins = [0.0000, 2.5000] # bin pairs: min < eta <= max, PS,barrel,crack,endcap
-    self.GlobalCenter = False;
-    self.EtaSearchWindowSize = 0.1;
-    self.PhiSearchWindowSize = 0.1;
+    self.GlobalCenter = False
+    self.EtaSearchWindowSize = 0.1
+    self.PhiSearchWindowSize = 0.1
 
     from TrigT2CaloEgamma.RingerConstants import Layer
 
-    self.DEtaRings = [0.025, 0.003125, 0.025, 0.05, 0.1, 0.1, 0.1];
-    self.DPhiRings = [0.098174770424681, 0.098174770424681, 0.024543692606170, 0.024543692606170, 0.098174770424681, 0.098174770424681, 0.098174770424681];
-    self.NRings = [8, 64, 8, 8, 4, 4, 4];
-    self.LayersRings = [
-                        Layer.PreSamplerB,Layer.PreSamplerE,
+    self.DEtaRings = [0.025, 0.003125, 0.025, 0.05, 0.1, 0.1, 0.1]
+    self.DPhiRings = [0.098174770424681, 0.098174770424681, 0.024543692606170, 0.024543692606170, 0.098174770424681, 0.098174770424681, 0.098174770424681]
+    self.NRings = [8, 64, 8, 8, 4, 4, 4]
+    self.LayersRings = [Layer.PreSamplerB,Layer.PreSamplerE,
                         Layer.EMB1,       Layer.EME1,
                         Layer.EMB2,       Layer.EME2,
                         Layer.EMB3,       Layer.EME3,
                         Layer.HEC0,       Layer.TileBar0, Layer.TileGap2, Layer.TileExt0,
                         Layer.HEC1,       Layer.HEC2,     Layer.TileBar1, Layer.TileGap0, Layer.TileExt1,
-                        Layer.HEC3,       Layer.TileBar2, Layer.TileGap1, Layer.TileExt2
-                        ];
-    self.NLayersRings = [2, 2, 2, 2, 4, 5, 4];
-    self.NMaxCells = [320, 512, 272, 128, 128, 128, 128];
+                        Layer.HEC3,       Layer.TileBar2, Layer.TileGap1, Layer.TileExt2]
+
+    self.NLayersRings = [2, 2, 2, 2, 4, 5, 4]
+    self.NMaxCells = [320, 512, 272, 128, 128, 128, 128]
 
 
 class RingerFexEndCapConfig( RingerFex ):
@@ -428,19 +367,19 @@ class RingerFexEndCapConfig( RingerFex ):
     self.HltFeature = "HLT_TrigT2CaloEgamma"
     self.Feature = "TrigT2CaloEgamma"
     self.EtaBins = [1.54, 2.5] # bin pairs: min < eta <= max
-    self.GlobalCenter = False;
-    self.EtaSearchWindowSize = 0.1;
-    self.PhiSearchWindowSize = 0.1;
-    self.HistLabel = 'EndCap';
+    self.GlobalCenter = False
+    self.EtaSearchWindowSize = 0.1
+    self.PhiSearchWindowSize = 0.1
+    self.HistLabel = 'EndCap'
 
     from TrigT2CaloEgamma.RingerConstants import Layer
 
     # FIXME The EM1 from 1.8->2.5 granularity is 0.025/4=0.006250. However, from 1.57 to
     # 1.8 it should be 0.025/6
     # FIXME The HAD3 has segmentation of 0.1 x 0.1 from 1.8->2.5, whereas this is also not true from 1.57 to 1.8, being from 0.2 x 0.1
-    self.DEtaRings = [0.0, 0.006250, 0.025, 0.05, 0.1, 0.1, 0.1];
-    self.DPhiRings = [0.0,  0.098174770424681, 0.024543692606170, 0.024543692606170, 0.098174770424681, 0.098174770424681, 0.098174770424681];
-    self.NRings = [0, 32, 8, 8, 4, 4, 4];
+    self.DEtaRings = [0.0, 0.006250, 0.025, 0.05, 0.1, 0.1, 0.1]
+    self.DPhiRings = [0.0,  0.098174770424681, 0.024543692606170, 0.024543692606170, 0.098174770424681, 0.098174770424681, 0.098174770424681]
+    self.NRings = [0, 32, 8, 8, 4, 4, 4]
     self.LayersRings = [
                         #Layer.PreSamplerB,Layer.PreSamplerE,
                         Layer.EMB1,       Layer.EME1,
@@ -449,9 +388,9 @@ class RingerFexEndCapConfig( RingerFex ):
                         Layer.HEC0,       Layer.TileBar0, Layer.TileGap2, Layer.TileExt0,
                         Layer.HEC1,       Layer.HEC2,     Layer.TileBar1, Layer.TileGap0, Layer.TileExt1,
                         Layer.HEC3,       Layer.TileBar2, Layer.TileGap1, Layer.TileExt2
-                        ];
-    self.NLayersRings = [0, 2, 2, 2, 4, 5, 4];
-    self.NMaxCells = [0, 272, 128, 128, 128, 128];
+                        ]
+    self.NLayersRings = [0, 2, 2, 2, 4, 5, 4]
+    self.NMaxCells = [0, 272, 128, 128, 128, 128]
 
 
 class T2CaloEgamma_Ringer (T2CaloEgamma_eGamma):
@@ -464,46 +403,6 @@ class T2CaloEgamma_Ringer (T2CaloEgamma_eGamma):
        self.AthenaMonTools += [TrigT2CaloEgammaRingerTimeMonitoring()]
 
 
-class T2CaloEgamma_FastAlgo (T2CaloEgammaFastAlgo):
-   __slots__ = []
-   def __init__ (self, name="T2CaloEgamma_FastAlgo"):
-       super(T2CaloEgamma_FastAlgo, self).__init__(name)
-       # here put your customizations
-       from AthenaCommon.AppMgr import ToolSvc
-
-       samp2 = EgammaSamp2FexNoTimerConfig(name="FaAlgoSamp2FexConfig")
-       ToolSvc+=samp2
-       samp1 = EgammaSamp1FexNoTimerConfig("FaAlgoSamp1FexConfig")
-       ToolSvc+=samp1
-       sampe = EgammaEmEnFexNoTimerConfig("FaAlgoEmEnFexConfig")
-       ToolSvc+=sampe
-       samph = EgammaHadEnFexNoTimerConfig("FaAlgoHadEnFexConfig")
-       ToolSvc+=samph
-       ring = RingerFexConfig("RingsMaker")
-       ToolSvc+=ring
-
-       ring.OutputLevel=DEBUG
-       ring.RingsKey="CaloRings"
-       self.IAlgToolList = [ samp2 ]
-       self.IAlgToolList+= [ samp1 ]
-       self.IAlgToolList+= [ sampe ]
-       self.IAlgToolList+= [ samph ]
-       self.IAlgToolList+= [ ring ] 
-
-       self.EtaWidth = 0.2
-       self.PhiWidth = 0.2
-       #self.EtaWidthForID = 0.1
-       #self.PhiWidthForID = 0.1
-       #self.TrigEMClusterKey="TrigT2CaloEgamma"
-       #t2catime.TimerHistLimits = [0,20]
-       self.CalibListEndcap=[EgammaSshapeCalibrationEndcapConfig()]
-       self.CalibListBarrel=[EgammaSshapeCalibrationBarrelConfig()]
-       self.CalibListBarrel+=[EgammaHitsCalibrationBarrelConfig()]
-       self.CalibListBarrel+=[EgammaGapCalibrationConfig()]
-       self.CalibListBarrel+=[EgammaTransitionRegionsConfig()]
-       self.CalibListEndcap+=[EgammaHitsCalibrationEndcapConfig()]
-       self.CalibListEndcap+=[EgammaGapCalibrationConfig()]
-
 class T2CaloEgamma_ReFastAlgo (T2CaloEgammaReFastAlgo):
    __slots__ = []
    def __init__ (self, name="T2CaloEgamma_ReFastAlgo"):
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/python/TrigT2CaloEgammaMTConfig.py b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/python/TrigT2CaloEgammaMTConfig.py
index 6dd600a89afc2082dbed6f4ddd4cdfd5855f9f15..703df1b9a688ebde80fed4746c7d06b379924b0e 100644
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/python/TrigT2CaloEgammaMTConfig.py
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/python/TrigT2CaloEgammaMTConfig.py
@@ -22,7 +22,6 @@ def fastL2EgammaClusteringAlg( flags, roisKey="EMCaloRoIs"):
 
     # configure tools (this can be simplified further,
     from TrigT2CaloEgamma.TrigT2CaloEgammaConf import EgammaReEmEnFex, EgammaReHadEnFex, EgammaReSamp1Fex, EgammaReSamp2Fex
-    from TrigT2CaloEgamma.TrigT2CaloEgammaConfig import RingerFexConfig # use existing setup
 
     samp2 = EgammaReSamp2Fex(name='FaAlgoSamp2FexConfig', MaxDetaHotCell=0.15, MaxDphiHotCell=0.15)
     acc.addPublicTool( samp2 )
@@ -38,6 +37,7 @@ def fastL2EgammaClusteringAlg( flags, roisKey="EMCaloRoIs"):
     samph.ExtraInputs=[('TileEMScale','ConditionStore+TileEMScale'),('TileBadChannels','ConditionStore+TileBadChannels')]
     acc.addPublicTool( samph )
 
+    #from TrigT2CaloEgamma.TrigT2CaloEgammaConfig import RingerFexConfig
     #ring = RingerFexConfig('RingsMaker')
     #ring.OutputLevel=DEBUG
     #ring.RingsKey='CaloRings'
@@ -50,8 +50,7 @@ def fastL2EgammaClusteringAlg( flags, roisKey="EMCaloRoIs"):
         t.OutputLevel = DEBUG
 
     
-    from TrigT2CaloEgamma.TrigT2CaloEgammaConf import T2CaloEgammaReFastAlgo
-    alg = T2CaloEgammaReFastAlgo("FastEMCaloAlgo")    
+    alg = T2CaloEgammaReFastAlgo("FastEMCaloAlgo")
     from TrigEDMConfig.TriggerEDMRun3 import recordable
 
     alg.IReAlgToolList = __fex_tools
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/share/FFL2CaloEgamma.py b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/share/FFL2CaloEgamma.py
deleted file mode 100644
index 2cb7f7d508f070920cbcf2e5c86f9efdf6fa762a..0000000000000000000000000000000000000000
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/share/FFL2CaloEgamma.py
+++ /dev/null
@@ -1,279 +0,0 @@
-#
-#  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
-#
-
-
-from AthenaCommon.AppMgr import ServiceMgr as svcMgr
-from AthenaCommon.AlgScheduler import AlgScheduler
-AlgScheduler.CheckDependencies( True )
-#AlgScheduler.OutputLevel( VERBOSE )
-#AlgScheduler.ShowDataDependencies( True )
-AlgScheduler.setDataLoaderAlg( 'SGInputLoader' )
-
-from AthenaCommon.AlgSequence import AlgSequence
-topSequence = AlgSequence()
-
-from SGComps.SGCompsConf import SGInputLoader
-topSequence += SGInputLoader()
-
-
-#print topSequence
-#print kaboom
-
-
-
-from AthenaCommon.GlobalFlags import globalflags;
-globalflags.DataSource.set_Value_and_Lock("data");
-DetDescrVersion="ATLAS-R2-2015-03-01-00";
-ConditionsTag="CONDBR2-BLKPA-2015-16";
-globalflags.DetDescrVersion.set_Value_and_Lock(DetDescrVersion);
-globalflags.InputFormat.set_Value_and_Lock("bytestream");
-globalflags.ConditionsTag.set_Value_and_Lock(ConditionsTag)
-globalflags.DatabaseInstance.set_Value_and_Lock('CONDBR2')
-from AthenaCommon.AthenaCommonFlags import athenaCommonFlags;
-athenaCommonFlags.BSRDOInput = [ "/afs/cern.ch/atlas/project/trigger/pesa-sw/validation/atn-test/data15_13TeV.00266904.physics_EnhancedBias.merge.RAW._lb0452._SFO-1._0001.1" ]
-#FilesInput 
-
-#include ("RecExRecoTest/RecExRecoTest_RTT_common.py")
-
-#jp.AthenaCommonFlags.PoolESDOutput="id_ESD.pool.root"
-rec.doTrigger=False
-rec.doWriteESD=False # uncomment if do not write ESD
-rec.doAOD=False
-rec.doWriteAOD=False # uncomment if do not write AOD
-rec.doWriteTAG=False # uncomment if do not write TAG
-rec.doESD=False
-rec.doWritexAOD=False
-
-from RecExConfig.RecFlags import rec
-rec.doForwardDet=False
-rec.doInDet=False
-rec.doMuon=False
-rec.doCalo=True
-rec.doEgamma=False
-rec.doMuonCombined=False
-rec.doJetMissingETTag=False
-rec.doTau=False
-rec.doCaloRinger=False
-rec.doPerfMon=False
-#rec.readRDO=False
-
-from PerfMonComps.PerfMonFlags import jobproperties
-jobproperties.PerfMonFlags.doDsoMonitoring.set_Value_and_Lock(False)
-jobproperties.PerfMonFlags.doMonitoring.set_Value_and_Lock(False)
-jobproperties.PerfMonFlags.doPersistencyMonitoring.set_Value_and_Lock(False)
-
-from LArROD.LArRODFlags import larRODFlags
-larRODFlags.doLArFebErrorSummary.set_Value_and_Lock(False)
-#from AthenaCommon.DetFlags import DetFlags
-#DetFlags.makeRIO.Calo_setOff()
-#DetFlags.detdescr.Calo_setOn()
-#DetFlags.Print()
-
-# main jobOption
-
-
-#include ("RecExRecoTest/RecExRecoTest_RTT_common_postOptions.py")
-
-## get a handle on the ServiceManager
-
-topSequence.SGInputLoader.Load = [ ('ROIB::RoIBResult','StoreGateSvc+RoIBResult'), ('AthenaAttributeList','StoreGateSvc+Input') ]
-topSequence.SGInputLoader.FailIfNoProxy=False
-#topSequence.CondInputLoader.Load = [('AthenaAttributeList','ConditionStore+Input')]
-
-#from IOVSvc.IOVSvcConf import CondInputLoader
-#topSequence += CondInputLoader( "CondInputLoader", OutputLevel=DEBUG )
-
-include ("RecExCommon/RecExCommon_topOptions.py")
-
-#remove RecExCommon 
-# topSequence = AlgSequence()
-# for i in topSequence:
-#   log.info('removing '+ i.getName())
-#   if i.getName() not in [ "SGInputLoader", "CondInputLoader" ]: # list of what we want to keep
-#     topSequence.remove(i)
-
-
-
-## @file L1Topo_ReadBS_test.py
-## @brief Example job options file to read BS file to test a converter
-## $Id: decodeBS.parallel.py 717359 2016-01-12 14:40:21Z bwynne $
-###############################################################
-#
-# This Job option:
-# ----------------
-# 1. Read ByteStream test data file and decode the L1Topo part
-#
-#==============================================================
-
-## basic job configuration
-import AthenaCommon.AtlasUnixStandardJob
-#import AthenaCommon.AtlasThreadedJob
-
-include( "ByteStreamCnvSvc/BSEventStorageEventSelector_jobOptions.py" )
-
-## get a handle on the ServiceManager
-from AthenaCommon.AppMgr import ServiceMgr as svcMgr
-
-#Determine whether we're running in threaded mode (threads= >=1)
-from AthenaCommon.ConcurrencyFlags import jobproperties as jp
-nThreads = jp.ConcurrencyFlags.NumThreads()
-print ' nThreads : ',nThreads
-
-if nThreads >= 1:
-  ## get a handle on the Scheduler
-  from AthenaCommon.AlgScheduler import AlgScheduler
-  AlgScheduler.CheckDependencies( True )
-
-# Use McEventSelector so we can run with AthenaMP
-#import AthenaCommon.AtlasUnixGeneratorJob
-
-## get a handle on the default top-level algorithm sequence
-#svcMgr.ByteStreamInputSvc.FullFileName = 
-
-svcMgr.ByteStreamInputSvc.ValidateEvent = True
-svcMgr.EventSelector.ProcessBadEvent = True
-
-
-
-if not hasattr( svcMgr, "ByteStreamAddressProviderSvc" ):
-    from ByteStreamCnvSvcBase.ByteStreamCnvSvcBaseConf import ByteStreamAddressProviderSvc 
-    svcMgr += ByteStreamAddressProviderSvc()
-
-
-from TrigConfigSvc.TrigConfigSvcConf import TrigConf__LVL1ConfigSvc
-from TrigConfigSvc.TrigConfigSvcConfig import findFileInXMLPATH
-from TriggerJobOpts.TriggerFlags import TriggerFlags
-
-l1svc = TrigConf__LVL1ConfigSvc("LVL1ConfigSvc")
-l1svc.XMLMenuFile = findFileInXMLPATH(TriggerFlags.inputLVL1configFile())
-svcMgr += l1svc
-
-
-from TriggerJobOpts.TriggerFlags import TriggerFlags
-TriggerFlags.enableMonitoring = ['Validation', 'Time']
-
-if not hasattr(svcMgr, 'THistSvc'):
-  from GaudiSvc.GaudiSvcConf import THistSvc
-  svcMgr += THistSvc()
-svcMgr.THistSvc.Output = ["EXPERT DATAFILE='expert-monitoring.root', OPT='RECREATE'"]
-
-# This is the list of proxies to set up so that retrieval attempt will trigger the BS conversion
-svcMgr.ByteStreamAddressProviderSvc.TypeNames += [ "ROIB::RoIBResult/RoIBResult" ]
-
-#--------------------------------------------------------------
-# Private Application Configuration options
-#--------------------------------------------------------------
-# Load "user algorithm" top algorithms to be run, and the libraries that house them
-
-
-
-
-#from AthenaCommon.CFElements import parOR, seqAND
-#TopHLTSeq = seqAND("TopHLTSeq")
-#topSequence += TopHLTSeq
-
-
-from L1Decoder.L1DecoderMonitoring import CTPUnpackingMonitoring, RoIsUnpackingMonitoring
-from L1Decoder.L1DecoderConf import CTPUnpackingTool, EMRoIsUnpackingTool, L1Decoder, MURoIsUnpackingTool
-from L1Decoder.L1DecoderConf import CTPUnpackingEmulationTool, RoIsUnpackingEmulationTool
-l1Decoder = L1Decoder( OutputLevel=DEBUG )
-ctpUnpacker = CTPUnpackingTool( OutputLevel =  DEBUG, ForceEnableAllChains=True )
-
-allChains = [ "HLT_e5_perf", "HLT_e5_lhloose", "HLT_e5_tight", "HLT_e7_perf" ]
-
-l1Decoder.ctpUnpacker = ctpUnpacker
-l1Decoder.ctpUnpacker.MonTool = CTPUnpackingMonitoring(512, 200)
-#l1Decoder.ctpUnpacker.CTPToChainMapping = ["0:HLT_e3",  "0:HLT_g5", "1:HLT_e7", "2:HLT_2e3", "15:HLT_mu6", "33:HLT_2mu6", "15:HLT_mu6idperf", "42:HLT_e15mu4"] # this are real IDs of L1_* items in pp_v5 menu
-
-l1Decoder.ctpUnpacker.CTPToChainMapping = [ "0:"+c for c in allChains  ] # CAVEAT this needs real mapping from chain to CTP ID
-emUnpacker = EMRoIsUnpackingTool( OutputLevel=DEBUG, OutputTrigRoIs="StoreGateSvc+EMRoIs" )
-emUnpacker.ThresholdToChainMapping = ["EM3 : "+c for c in allChains ]  # CAVEAT this needs real mapping to from the chain to L1 threshold
-
-emUnpacker.MonTool = RoIsUnpackingMonitoring( prefix="EM", maxCount=30 )
-
-l1Decoder.roiUnpackers = [emUnpacker]
-l1Decoder.Chains="HLTChainsResult"
-
-topSequence += l1Decoder
-
-
-
-#Dumper
-#from ViewAlgs.ViewAlgsConf import DumpDecisions
-#dumper = DumpDecisions("L1CaloDecisions")
-#dumper.OutputLevel=VERBOSE
-#topSequence += dumper
-
-from RegionSelector.RegSelSvcDefault import RegSelSvcDefault
-svcMgr+=RegSelSvcDefault()
-svcMgr.RegSelSvc.enableCalo=True
-
-from TrigT2CaloCommon.TrigT2CaloCommonConfig import TrigDataAccess
-svcMgr.ToolSvc+=TrigDataAccess()
-svcMgr.ToolSvc.TrigDataAccess.ApplyOffsetCorrection=False
-
-from TrigT2CaloEgamma.TrigT2CaloEgammaConfig import T2CaloEgamma_FastAlgo
-algo=T2CaloEgamma_FastAlgo("testFastAlgo")
-algo.RoIs="StoreGateSvc+EMRoIs"
-algo.OutputLevel=VERBOSE
-#TopHLTSeq += algo
-topSequence += algo
-
-
-
-from TrigEgammaHypo.TrigEgammaHypoConf import TrigL2CaloHypoAlg
-from TrigEgammaHypo.TrigL2CaloHypoTool import TrigL2CaloHypoToolFromName
-hypoAlg = TrigL2CaloHypoAlg()
-hypoAlg.RoIs="StoreGateSvc+EMRoIs"
-hypoAlg.OutputLevel=VERBOSE
-topSequence += hypoAlg
-# this should come from the menu, but let's see if it falls apart wiht a full single electron menu
-hypoTools = [ TrigL2CaloHypoToolFromName(chain) for chain in allChains ] 
-
-hypoAlg.HypoTools = hypoTools
-hypoAlg += hypoTools
-
-
-#--------------------------------------------------------------
-# Set output level threshold (2=DEBUG, 3=INFO, 4=WARNING, 5=ERROR, 6=FATAL)
-#--------------------------------------------------------------
-svcMgr.MessageSvc.OutputLevel = INFO
-svcMgr.MessageSvc.Format = "% F%42W%S%7W%R%T %0W%M"
-svcMgr.MessageSvc.verboseLimit = 0
-svcMgr.StoreGateSvc.OutputLevel = INFO
-svcMgr.StoreGateSvc.Dump=False #This is required to avoid a bug in bytestream decoding in AthenaMT mode
-svcMgr.ByteStreamAddressProviderSvc.OutputLevel = INFO
-svcMgr.ByteStreamCnvSvc.OutputLevel = INFO
-svcMgr.ByteStreamInputSvc.OutputLevel = INFO
-svcMgr.AthDictLoaderSvc.OutputLevel = INFO
-svcMgr.EventPersistencySvc.OutputLevel = INFO
-svcMgr.ROBDataProviderSvc.OutputLevel = INFO
-
-from LArROD.LArRODConf import LArRawChannelBuilderDriver
-topSequence.remove(LArRawChannelBuilderDriver('LArRawChannelBuilder'))
-from LArROD.LArDigits import DefaultLArDigitThinner
-topSequence.remove(DefaultLArDigitThinner('LArDigitThinner'))
-from TileRecUtils.TileRecUtilsConf import TileRawChannelMaker
-topSequence.remove(TileRawChannelMaker('TileRChMaker'))
-from TileRecAlgs.TileRecAlgsConf import TileDigitsFilter
-topSequence.remove(TileDigitsFilter('TileDigitsFilter'))
-from CaloRec.CaloRecConf import CaloCellMaker 
-topSequence.remove(CaloCellMaker('CaloCellMaker'))
-from xAODCaloEventCnv.xAODCaloEventCnvConf import ClusterCreator
-topSequence.remove(ClusterCreator('CaloCluster2xAOD'))
-#topSequence.remove(CondInputLoader("CondInputLoader"))
-
-
-theApp.EvtMax = 100
-
-#print topSequence
-#print fail
-
-
-#
-# End of job options file
-#
-###############################################################
-
-
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/share/jobOfragment_TrigT2CaloEgamma.py b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/share/jobOfragment_TrigT2CaloEgamma.py
deleted file mode 100755
index 5f50c5174f7b60b7758777e0514809394605349d..0000000000000000000000000000000000000000
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/share/jobOfragment_TrigT2CaloEgamma.py
+++ /dev/null
@@ -1,25 +0,0 @@
-#----------------------------------------------------
-#  T2CaloEgamma options
-#----------------------------------------------------
-theApp.Dlls += [ "TrigT2CaloEgamma" ]
-
-include( "TrigT2CaloCommon/jobOfragment_TrigT2CaloCommon.py" )
-#from TrigT2CaloEgamma.TrigT2CaloEgammaConf import EgammaSamp2Fex
-#from TrigT2CaloEgamma.TrigT2CaloEgammaConf import EgammaSamp1Fex
-#from TrigT2CaloEgamma.TrigT2CaloEgammaConf import EgammaEmEnFex
-#from TrigT2CaloEgamma.TrigT2CaloEgammaConf import EgammaHadEnFex
-#from TrigT2CaloEgamma.TrigT2CaloEgammaConf import T2CaloEgamma_g4_L2
-
-#T2CaloEgamma_g4_L2 = Algorithm( "T2CaloEgamma_g4_L2" )
-#T2CaloEgamma_g4_L2.EtaWidth = 0.2
-#T2CaloEgamma_g4_L2.PhiWidth = 0.2
-#T2CaloEgamma_g4_L2.IAlgToolList=[EgammaSamp2Fex("1"),
-#				 EgammaSamp1Fex("2"),
-#				 EgammaEmEnFex("3") ,
-#				 EgammaHadEnFex("4")]
-#T2CaloEgamma_g4_L2.TimerNtuple="T2CaloEgamma.T2CaEgtTot"
-#T2CaloEgamma_g4_L2.TrigEMClusterKey="T2CaloTrigEMCluster"
-#T2CaloEgamma_g4_L2.Monitoring=False
-#T2CaloEgamma_g4_L2.OutputLevel = INFO
-
-#include( "TrigT2CaloEgamma/jobOfragment_TrigT2CaloEgamma_Calib.py")
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/share/jobOfragment_TrigT2CaloEgamma_4Algo.py b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/share/jobOfragment_TrigT2CaloEgamma_4Algo.py
deleted file mode 100755
index 1af292a7c2ca4b262125cfb51e13379eb3393f53..0000000000000000000000000000000000000000
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/share/jobOfragment_TrigT2CaloEgamma_4Algo.py
+++ /dev/null
@@ -1,30 +0,0 @@
-#----------------------------------------------------
-#  T2CaloEgamma options to run in four steps
-#----------------------------------------------------
-theApp.Dlls += [ "TrigT2CaloEgamma" ]
-
-include( "TrigT2CaloCommon/jobOfragment_TrigT2CaloCommon_4Algo.py" )
-
-T2CaloEgamma_g4_L2 = Algorithm( "T2CaloEgamma_g4_L2" )
-T2CaloEgamma_g4_L2.EtaWidth = 0.2
-T2CaloEgamma_g4_L2.PhiWidth = 0.2
-T2CaloEgamma_g4_L2.T2CaloTools=["CaloSamp2FexEgamma","T2CaloL1Sim"]
-T2CaloEgamma_g4_L2.TimerNtuple="T2Calo.T2CaEgSmp2"
-#T2CaloEgamma_g4_L2.T2CaloTools=["T2CaloL1Sim"]
-T2CaloSamp1En_1Egamma_L2 = Algorithm( "T2CaloSamp1En_1Egamma_L2" )
-T2CaloSamp1En_1Egamma_L2.T2CaloTools=["CaloSamp1FexEgamma"]
-T2CaloSamp1En_1Egamma_L2.TimerNtuple="T2Calo.T2CaEgSmp1"
-T2CaloSamp1En_1Egamma_L2.TriggerOn="Egamma"
-T2CaloSamp1En_2Egamma_L2 = Algorithm( "T2CaloSamp1En_2Egamma_L2" )
-T2CaloSamp1En_2Egamma_L2.T2CaloTools=["CaloEmEnFexEgamma"]
-T2CaloSamp1En_2Egamma_L2.TimerNtuple="T2Calo.T2CaEgEmEn"
-T2CaloSamp1En_2Egamma_L2.TriggerOn="Egamma"
-T2CaloSamp1En_3Egamma_L2 = Algorithm( "T2CaloSamp1En_3Egamma_L2" )
-T2CaloSamp1En_3Egamma_L2.T2CaloTools=["CaloHadEnFexEgamma"]
-T2CaloSamp1En_3Egamma_L2.TimerNtuple="T2Calo.T2CaEgHdEn"
-T2CaloSamp1En_3Egamma_L2.TriggerOn="Egamma"
-T2CaloEgamma_g4_L2.EMShowerMinsKey="T2CaloEMShowerMins"
-T2CaloEgamma_g4_L2.CaloClustersKey="T2CaloEgammaCaloClusters"
-T2CaloEgamma_g4_L2.OutputLevel = INFO
-
-
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/share/jobOfragment_TrigT2CaloEgamma_Calib.py b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/share/jobOfragment_TrigT2CaloEgamma_Calib.py
deleted file mode 100755
index 9ad2198c172d8eae1d17c2127d0014ba6bc0c29f..0000000000000000000000000000000000000000
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/share/jobOfragment_TrigT2CaloEgamma_Calib.py
+++ /dev/null
@@ -1,108 +0,0 @@
-#------------------------------------------------
-# T2CaloEgamma Calibration Options
-#------------------------------------------------
-# Calibration constants for cluster lateral loses
-T2CaloEgamma_g4_L2.EgammaEmEnFex.QlCorrectionLimit=[0.0,2.5]
-T2CaloEgamma_g4_L2.EgammaEmEnFex.QlCorrectionDimension=[2,100]
-T2CaloEgamma_g4_L2.EgammaEmEnFex.QlCorrection=[
-0.012500, 1.050621,
-0.037500, 1.033092,
-0.062500, 1.029960,
-0.087500, 1.028764,
-0.112500, 1.025790,
-0.137500, 1.025021,
-0.162500, 1.026142,
-0.187500, 1.024745,
-0.212500, 1.024634,
-0.237500, 1.024389,
-0.262500, 1.023316,
-0.287500, 1.023289,
-0.312500, 1.023398,
-0.337500, 1.022994,
-0.362500, 1.021465,
-0.387500, 1.022593,
-0.412500, 1.022636,
-0.437500, 1.023150,
-0.462500, 1.021140,
-0.487500, 1.022658,
-0.512500, 1.023595,
-0.537500, 1.024602,
-0.562500, 1.025860,
-0.587500, 1.024387,
-0.612500, 1.026307,
-0.637500, 1.029686,
-0.662500, 1.035484,
-0.687500, 1.039001,
-0.712500, 1.039284,
-0.737500, 1.040777,
-0.762500, 1.040902,
-0.787500, 1.063765,
-0.812500, 1.070050,
-0.837500, 1.056046,
-0.862500, 1.059867,
-0.887500, 1.060138,
-0.912500, 1.063053,
-0.937500, 1.062487,
-0.962500, 1.062367,
-0.987500, 1.063508,
-1.012500, 1.062834,
-1.037500, 1.063573,
-1.062500, 1.064223,
-1.087500, 1.066497,
-1.112500, 1.065750,
-1.137500, 1.064151,
-1.162500, 1.069473,
-1.187500, 1.066715,
-1.212500, 1.069402,
-1.237500, 1.072276,
-1.262500, 1.074131,
-1.287500, 1.076661,
-1.312500, 1.059972,
-1.337500, 1.056507,
-1.362500, 1.048957,
-1.387500, 1.153410,
-1.412500, 1.100139,
-1.437500, 1.110341,
-1.462500, 1.120638,
-1.487500, 1.156143,
-1.512500, 1.119004,
-1.537500, 1.182724,
-1.562500, 1.124959,
-1.587500, 1.147676,
-1.612500, 1.080720,
-1.637500, 1.086858,
-1.662500, 1.088204,
-1.687500, 1.103229,
-1.712500, 1.064293,
-1.737500, 1.061543,
-1.762500, 1.071896,
-1.787500, 1.073395,
-1.812500, 1.097101,
-1.837500, 1.106184,
-1.862500, 1.099924,
-1.887500, 1.091189,
-1.912500, 1.085963,
-1.937500, 1.081466,
-1.962500, 1.078320,
-1.987500, 1.076612,
-2.012500, 1.074725,
-2.037500, 1.082622,
-2.062500, 1.078303,
-2.087500, 1.081170,
-2.112500, 1.085947,
-2.137500, 1.086852,
-2.162500, 1.086800,
-2.187500, 1.089546,
-2.212500, 1.088566,
-2.237500, 1.087811,
-2.262500, 1.089465,
-2.287500, 1.092274,
-2.312500, 1.097847,
-2.337500, 1.097035,
-2.362500, 1.096554,
-2.387500, 1.094445,
-2.412500, 1.094718,
-2.437500, 1.098914,
-2.462500, 1.098906,
-2.487500, 1.163979]
-
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaAllFex.cxx b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaAllFex.cxx
old mode 100755
new mode 100644
index 5c5b79578b4e13f8bc0423a23c019542cc2182cd..ddc0c273b75168f8a4bd3829259cd9d1b4c5aafb
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaAllFex.cxx
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaAllFex.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 // ********************************************************************
@@ -18,7 +18,7 @@
 #include "xAODTrigCalo/TrigEMCluster.h"
 #include "CaloGeoHelpers/CaloSampling.h"
 
-#include "TrigT2CaloEgamma/EgammaAllFex.h"
+#include "EgammaAllFex.h"
 #include "TrigT2CaloCommon/Calo_Def.h"
 
 #include "TrigSteeringEvent/TrigRoiDescriptor.h"
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaAllFex.h b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaAllFex.h
similarity index 97%
rename from Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaAllFex.h
rename to Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaAllFex.h
index 49eafd5720f146a4abe4a7247e86f879b57b7f3e..1d414839e236abe2ce8aa34487e8618577d103e8 100755
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaAllFex.h
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaAllFex.h
@@ -25,6 +25,9 @@
 #include "TrigT2CaloCommon/Calo_Def.h"
 #include "TrigT2CaloCommon/phiutils.h"
 
+#include "CxxUtils/checker_macros.h"
+ATLAS_NO_CHECK_FILE_THREAD_SAFETY;  // legacy trigger code
+
 class IRoiDescriptor;
 
 /** Feature extraction Tool for LVL2 Calo. Second EM Calorimeter sample. */
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaEmEnFex.cxx b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaEmEnFex.cxx
old mode 100755
new mode 100644
index 529cd5a455994bd293f0368e62cf563d7d03f673..6f3b73f76cf2ebab0b6cc0947972ec5d2a61f4f0
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaEmEnFex.cxx
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaEmEnFex.cxx
@@ -15,9 +15,9 @@
 #include "xAODTrigCalo/TrigEMCluster.h"
 #include "CaloGeoHelpers/CaloSampling.h"
 
-#include "TrigT2CaloEgamma/EgammaEmEnFex.h"
+#include "EgammaEmEnFex.h"
 #include "TrigT2CaloCommon/Calo_Def.h"
-#include "TrigT2CaloEgamma/T2CalibrationEgamma.h"
+#include "T2CalibrationEgamma.h"
 
 
 EgammaEmEnFex::EgammaEmEnFex(const std::string & type, const std::string & name, 
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaEmEnFex.h b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaEmEnFex.h
similarity index 95%
rename from Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaEmEnFex.h
rename to Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaEmEnFex.h
index 50388f3414dd87f721555685985997427fa48c90..7dcf3d17c01274703cebda9e076fe07875cca754 100755
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaEmEnFex.h
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaEmEnFex.h
@@ -22,6 +22,9 @@
 #include "TrigSteeringEvent/TrigRoiDescriptor.h"
 #include "GaudiKernel/AlgTool.h"
 
+#include "CxxUtils/checker_macros.h"
+ATLAS_NO_CHECK_FILE_THREAD_SAFETY;  // legacy trigger code
+
 /** Feature extraction Tool for LVL2 Calo. EM Presampler and
 	third EM Calorimeter sample. */
 class EgammaEmEnFex: public IAlgToolCalo {
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaHadEnFex.cxx b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaHadEnFex.cxx
old mode 100755
new mode 100644
index 10d4497bb53a53aaa08881fe1356dee2bab6b402..f8dfd772b97ad3b484d7b83c1a0782f53ff9a40b
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaHadEnFex.cxx
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaHadEnFex.cxx
@@ -16,7 +16,7 @@
 //#include "TrigCaloEvent/TrigEMCluster.h"
 #include "CaloGeoHelpers/CaloSampling.h"
 
-#include "TrigT2CaloEgamma/EgammaHadEnFex.h"
+#include "EgammaHadEnFex.h"
 #include "TrigT2CaloCommon/Calo_Def.h"
 #include <math.h>
 
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaHadEnFex.h b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaHadEnFex.h
similarity index 92%
rename from Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaHadEnFex.h
rename to Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaHadEnFex.h
index bb0f94eab2e8a3a16a02ab3ca296fa10de8d84e5..6a4ee60b58818cfd0efa6a6d7859a221f5a07a75 100755
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaHadEnFex.h
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaHadEnFex.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 /********************************************************************
@@ -20,6 +20,9 @@
 #include "TrigT2CaloCommon/IAlgToolCalo.h"
 #include "GaudiKernel/AlgTool.h"
 
+#include "CxxUtils/checker_macros.h"
+ATLAS_NO_CHECK_FILE_THREAD_SAFETY;  // legacy trigger code
+
 /** Feature extraction Tool for LVL2 Calo. Hadronic EndCaps
 	and Tile Calorimeter. All Samples */
 class EgammaHadEnFex: public IAlgToolCalo {
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReEmEnFex.cxx b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReEmEnFex.cxx
old mode 100755
new mode 100644
index d4d1f127467b412bc54f7e9ac5a6257abf603444..4b2dae4a168ccad1a536025b185207c0ccdcabd8
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReEmEnFex.cxx
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReEmEnFex.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 // ********************************************************************
@@ -15,9 +15,9 @@
 #include "xAODTrigCalo/TrigEMCluster.h"
 #include "CaloGeoHelpers/CaloSampling.h"
 
-#include "TrigT2CaloEgamma/EgammaReEmEnFex.h"
+#include "EgammaReEmEnFex.h"
 #include "TrigT2CaloCommon/Calo_Def.h"
-#include "TrigT2CaloEgamma/T2CalibrationEgamma.h"
+#include "T2CalibrationEgamma.h"
 
 
 EgammaReEmEnFex::EgammaReEmEnFex(const std::string & type, const std::string & name, 
@@ -40,19 +40,16 @@ EgammaReEmEnFex::~EgammaReEmEnFex(){
 StatusCode EgammaReEmEnFex::execute(xAOD::TrigEMCluster &rtrigEmCluster,
 				  const IRoiDescriptor& roi,
 				  const CaloDetDescrElement*& caloDDE,
-                                  const EventContext* context ) const{
+                                  const EventContext& context ) const{
  
         // Time total AlgTool time
         if (!m_timersvc.empty()) m_timer[0]->start();
-        // reset error
-        m_error=0x0;
         bool cluster_in_barrel = true;
         if ( caloDDE )
           cluster_in_barrel = caloDDE->is_lar_em_barrel();
 
         // MsgStream log(msgSvc(), name());
         ATH_MSG_DEBUG( "in execute(TrigEMCluster &)" );
-	ATH_CHECK( context != nullptr );
 
         // Time to access RegionSelector
         if (!m_timersvc.empty()) m_timer[1]->start();
@@ -62,7 +59,7 @@ StatusCode EgammaReEmEnFex::execute(xAOD::TrigEMCluster &rtrigEmCluster,
 
         LArTT_Selector<LArCellCont> sel;
 	LArTT_Selector<LArCellCont>::const_iterator iBegin, iEnd, it;
-        m_dataSvc->loadCollections( *context, roi, TTEM, sampling, sel );
+        m_dataSvc->loadCollections( context, roi, TTEM, sampling, sel );
         iBegin = sel.begin();
         iEnd = sel.end();
         // Finished to access Collection
@@ -141,7 +138,7 @@ StatusCode EgammaReEmEnFex::execute(xAOD::TrigEMCluster &rtrigEmCluster,
         sampling = 3;
 
         LArTT_Selector<LArCellCont> sel3;
-        m_dataSvc->loadCollections( *context, roi, TTEM, sampling, sel3 );
+        m_dataSvc->loadCollections( context, roi, TTEM, sampling, sel3 );
         iBegin = sel3.begin();
         iEnd = sel3.end();
 /*
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReEmEnFex.h b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReEmEnFex.h
new file mode 100755
index 0000000000000000000000000000000000000000..5fa4d7c9309fef1219cc980e66b951dd2f063f6c
--- /dev/null
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReEmEnFex.h
@@ -0,0 +1,42 @@
+/*
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+*/
+
+/********************************************************************
+ 
+ NAME:     EgammaReEmEnFex.h
+ PACKAGE:  Trigger/TrigAlgorithms/TrigT2CaloEgamma
+ 
+ AUTHOR:   M.P. Casado
+ 
+ PURPOSE:  Based on Cluster position defined in the second
+           EM Calorimeter layer, calculates total EM cluster
+	   energy.
+ *******************************************************************/
+
+#ifndef TRIGT2CALOEGAMMA_EGAMMAEMENFEXRE_H 
+#define TRIGT2CALOEGAMMA_EGAMMAEMENFEXRE_H
+
+#include "TrigT2CaloCommon/IReAlgToolCalo.h"
+
+/** Feature extraction Tool for LVL2 Calo. EM Presampler and
+	third EM Calorimeter sample. */
+class EgammaReEmEnFex: public IReAlgToolCalo {
+  public:
+    EgammaReEmEnFex(const std::string & type, const std::string & name,
+                    const IInterface* parent);
+
+    virtual ~EgammaReEmEnFex();
+
+    /** @brief execute feature extraction for the EM Calorimeter
+    *   second layer 
+    *   @param[out] rtrigEmCluster is the output cluster.
+    *   @param[in] roi RoI definition.
+    */
+    virtual StatusCode execute(xAOD::TrigEMCluster &rtrigEmCluster,
+                               const IRoiDescriptor& roi,
+                               const CaloDetDescrElement*& caloDDE,
+                               const EventContext& context) const override;
+};
+
+#endif
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReHadEnFex.cxx b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReHadEnFex.cxx
old mode 100755
new mode 100644
index 3d96e975670d5732de8ffe756963a9789a7aac3e..ae0527d13d32fa827777fcadf6ad10a61d786a61
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReHadEnFex.cxx
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReHadEnFex.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 // ********************************************************************
@@ -16,7 +16,7 @@
 //#include "TrigCaloEvent/TrigEMCluster.h"
 #include "CaloGeoHelpers/CaloSampling.h"
 
-#include "TrigT2CaloEgamma/EgammaReHadEnFex.h"
+#include "EgammaReHadEnFex.h"
 #include "TrigT2CaloCommon/Calo_Def.h"
 #include <math.h>
 
@@ -42,22 +42,12 @@ EgammaReHadEnFex::EgammaReHadEnFex(const std::string & type, const std::string &
 		   {
 }
 
-EgammaReHadEnFex::~EgammaReHadEnFex(){
-}
-
 StatusCode EgammaReHadEnFex::execute(xAOD::TrigEMCluster &rtrigEmCluster,
 				   const IRoiDescriptor& roi,
 				   const CaloDetDescrElement*& /*caloDDE*/,
-                                   const EventContext* context ) const { 
+                                   const EventContext& context ) const {
         // Time total AlgTool time
         if (!m_timersvc.empty()) m_timer[0]->start();
-	m_error=0x0;
-
-#ifndef NDEBUG
-  if ( msg().level() <= MSG::DEBUG ) 
-        msg() << MSG::INFO << "in execute(TrigEMCluster &)" << endmsg;
-#endif
-  ATH_CHECK( context != nullptr );
 
   double deta = 0.;           // eta difference current cell - seed
   double dphi = 0.;           // phi difference current cell - seed
@@ -94,7 +84,7 @@ StatusCode EgammaReHadEnFex::execute(xAOD::TrigEMCluster &rtrigEmCluster,
 
         LArTT_Selector<LArCellCont> sel;
 	LArTT_Selector<LArCellCont>::const_iterator iBegin, iEnd, it;
-        m_dataSvc->loadCollections( *context, roi, TTHEC, sampling, sel );
+        m_dataSvc->loadCollections( context, roi, TTHEC, sampling, sel );
         iBegin = sel.begin();
         iEnd = sel.end();
         // Finished to access Collection
@@ -158,7 +148,7 @@ StatusCode EgammaReHadEnFex::execute(xAOD::TrigEMCluster &rtrigEmCluster,
 	
         TileCellCollection seltile;
 	TileCellCollection::const_iterator itBegin, itEnd, itt;
-        m_dataSvc->loadCollections( *context, roi, seltile );
+        m_dataSvc->loadCollections( context, roi, seltile );
         itBegin = seltile.begin();
         itt = itBegin;
         itEnd = seltile.end();
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReHadEnFex.h b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReHadEnFex.h
new file mode 100755
index 0000000000000000000000000000000000000000..0cc6b1fb83493bb2b94f496cfac326ea9e55ed7c
--- /dev/null
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReHadEnFex.h
@@ -0,0 +1,41 @@
+/*
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+*/
+
+/********************************************************************
+ 
+ NAME:     EgammaReHadEnFex.h
+ PACKAGE:  Trigger/TrigAlgorithms/TrigT2CaloEgamma
+ 
+ AUTHOR:   M.P. Casado
+ 
+ PURPOSE:  Based on Cluster position defined in the second
+           EM Calorimeter layer, calculates total Had cluster
+           energy.
+ *******************************************************************/
+
+#ifndef TRIGT2CALOEGAMMA_EGAMMAHADENFEXRE_H 
+#define TRIGT2CALOEGAMMA_EGAMMAHADENFEXRE_H
+
+#include "TrigT2CaloCommon/IReAlgToolCalo.h"
+
+/** Feature extraction Tool for LVL2 Calo. Hadronic EndCaps
+	and Tile Calorimeter. All Samples */
+class EgammaReHadEnFex: public IReAlgToolCalo {
+public:
+    EgammaReHadEnFex(const std::string & type, const std::string & name, 
+                     const IInterface* parent);
+
+    /** @brief execute feature extraction for the EM Calorimeter
+    *   second layer 
+    *   @param[out] rtrigEmCluster is the output cluster.
+    *   @param[in] eta/phi-min/max = RoI definition.
+    */
+    virtual StatusCode execute(xAOD::TrigEMCluster &rtrigEmCluster,
+                               const IRoiDescriptor& roi,
+                               const CaloDetDescrElement*& caloDDE,
+                               const EventContext& context) const override;
+};
+
+
+#endif
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReSamp1Fex.cxx b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReSamp1Fex.cxx
old mode 100755
new mode 100644
index 7bef656bc698371a10fbbab7f5e6929d133cde71..f9780cc2835b5d59bf007783c74775d81c02b2d2
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReSamp1Fex.cxx
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReSamp1Fex.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 // ********************************************************************
@@ -17,7 +17,7 @@
 //#include "TrigCaloEvent/TrigEMCluster.h"
 #include "CaloGeoHelpers/CaloSampling.h"
 
-#include "TrigT2CaloEgamma/EgammaReSamp1Fex.h"
+#include "EgammaReSamp1Fex.h"
 #include "TrigT2CaloCommon/Calo_Def.h"
 
 #include "IRegionSelector/IRoiDescriptor.h"
@@ -35,25 +35,19 @@ EgammaReSamp1Fex::EgammaReSamp1Fex(const std::string & type, const std::string &
 #endif
 }
 
-EgammaReSamp1Fex::~EgammaReSamp1Fex(){
-}
-
 StatusCode EgammaReSamp1Fex::execute(xAOD::TrigEMCluster &rtrigEmCluster,
 				   const IRoiDescriptor& roi,
 				   const CaloDetDescrElement*& caloDDE,
-                                   const EventContext* context ) const { 
+                                   const EventContext& context ) const {
   
 	// Time total AlgTool time 
 	if (!m_timersvc.empty()) m_timer[0]->start();      
-        // reset error
-        m_error=0x0;
 
         bool cluster_in_barrel = true;
         if ( caloDDE )
           cluster_in_barrel = caloDDE->is_lar_em_barrel();
 
         ATH_MSG_DEBUG( "in execute(TrigEMCluster &)" );
-	ATH_CHECK( context != nullptr );
 
         // Time to access RegionSelector
         if (!m_timersvc.empty()) m_timer[1]->start();
@@ -63,7 +57,7 @@ StatusCode EgammaReSamp1Fex::execute(xAOD::TrigEMCluster &rtrigEmCluster,
 
 	LArTT_Selector<LArCellCont> sel;
 	LArTT_Selector<LArCellCont>::const_iterator iBegin, iEnd, it;
-        m_dataSvc->loadCollections( *context, roi, TTEM, sampling, sel );
+        m_dataSvc->loadCollections( context, roi, TTEM, sampling, sel );
         iBegin = sel.begin();
         iEnd = sel.end();
         // Finished to access Collection
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaReSamp1Fex.h b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReSamp1Fex.h
similarity index 67%
rename from Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaReSamp1Fex.h
rename to Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReSamp1Fex.h
index 21174cffe7844b04091204c231616c73307d6abb..4b60e6f421a070c6206aff901f256cbadad1f92c 100755
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaReSamp1Fex.h
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReSamp1Fex.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 /********************************************************************
@@ -21,31 +21,24 @@
 #define TRIGT2CALOEGAMMA_CALOSAMP1FEXEGAMMARE_H
 
 #include "TrigT2CaloCommon/IReAlgToolCalo.h"
-#include "GaudiKernel/AlgTool.h"
 
 class IRoiDescriptor;
 
 /** Feature extraction Tool for LVL2 Calo. First EM Calorimeter sample. */
 class EgammaReSamp1Fex: public IReAlgToolCalo {
   public:
-    // to avoid compiler warning about hidden virtuals
-    using IReAlgToolCalo::execute;   
-  
-    /** Constructor */
-    EgammaReSamp1Fex(const std::string & type, const std::string & name, 
-                 const IInterface* parent);
-    /** Destructor */
-    virtual ~EgammaReSamp1Fex();
+    EgammaReSamp1Fex(const std::string & type, const std::string & name,
+                     const IInterface* parent);
+
     /** @brief execute feature extraction for the EM Calorimeter
     *   second layer 
     *   @param[out] rtrigEmCluster is the output cluster.
     *   @param[in] eta/phi-min/max = RoI definition.
     */
-    StatusCode execute(xAOD::TrigEMCluster &rtrigEmCluster,
-		       const IRoiDescriptor& roi,
-		       const CaloDetDescrElement*& caloDDE = caloReDDENull,
-                       const EventContext* context = nullptr ) const;
+    virtual StatusCode execute(xAOD::TrigEMCluster &rtrigEmCluster,
+                               const IRoiDescriptor& roi,
+                               const CaloDetDescrElement*& caloDDE,
+                               const EventContext& context ) const override;
 };
 
-
 #endif
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReSamp2Fex.cxx b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReSamp2Fex.cxx
old mode 100755
new mode 100644
index 874bfb4e802eb0b1b4173b98f188cd582a5187d0..9d89baedbafd704d6452020182b479d41a7eeac3
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReSamp2Fex.cxx
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReSamp2Fex.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 // ********************************************************************
@@ -18,7 +18,7 @@
 #include "xAODTrigCalo/TrigEMCluster.h"
 #include "CaloGeoHelpers/CaloSampling.h"
 
-#include "TrigT2CaloEgamma/EgammaReSamp2Fex.h"
+#include "EgammaReSamp2Fex.h"
 #include "TrigT2CaloCommon/Calo_Def.h"
 
 #include "IRegionSelector/IRoiDescriptor.h"
@@ -36,23 +36,16 @@ EgammaReSamp2Fex::EgammaReSamp2Fex(const std::string & type, const std::string &
 	declareProperty("MaxDphiHotCell",m_maxHotCellDphi=1.0);
 }
 
-EgammaReSamp2Fex::~EgammaReSamp2Fex(){
-}
-
 StatusCode EgammaReSamp2Fex::execute(xAOD::TrigEMCluster &rtrigEmCluster,
 				   const IRoiDescriptor& roi,
 				   const CaloDetDescrElement*& caloDDE,
-                                   const EventContext* context ) const { 
+                                   const EventContext& context ) const {
   
 	// Time total AlgTool time 
 	if (!m_timersvc.empty()) m_timer[0]->start();      
-	// reset error
-	m_error=0x0;
 
         ATH_MSG_DEBUG( "in execute(TrigEMCluster&)" );
 
-	ATH_CHECK( context != nullptr );
-
 	// Time to access RegionSelector
 	if (!m_timersvc.empty()) m_timer[1]->start();      
 
@@ -61,7 +54,7 @@ StatusCode EgammaReSamp2Fex::execute(xAOD::TrigEMCluster &rtrigEmCluster,
 
 	LArTT_Selector<LArCellCont> sel;
 	LArTT_Selector<LArCellCont>::const_iterator iBegin, iEnd, it;
-	m_dataSvc->loadCollections( *context, roi, TTEM, sampling, sel );
+	m_dataSvc->loadCollections( context, roi, TTEM, sampling, sel );
 	iBegin = sel.begin();
 	iEnd = sel.end();
 	// Finished to access Collection
@@ -126,8 +119,7 @@ StatusCode EgammaReSamp2Fex::execute(xAOD::TrigEMCluster &rtrigEmCluster,
   hotEta    = hotCell->eta();
   hotPhi    = hotCell->phi();
   } else { 
-	m_error|=0x80000000;
-	if (!m_timersvc.empty()) m_timer[3]->stop();      
+	if (!m_timersvc.empty()) m_timer[3]->stop();
 	return StatusCode::SUCCESS;
   }
 
@@ -204,7 +196,6 @@ StatusCode EgammaReSamp2Fex::execute(xAOD::TrigEMCluster &rtrigEmCluster,
   // For the S-shape correction, we store the caloDDE of the hottest cell
   caloDDE = (seedCell->caloDDE());
   } else {
-        m_error|=0x80000000;
         if (!m_timersvc.empty()) m_timer[3]->stop();
         return StatusCode::SUCCESS;
   }
@@ -397,7 +388,6 @@ StatusCode EgammaReSamp2Fex::execute(xAOD::TrigEMCluster &rtrigEmCluster,
   } else {
     energyEta = 99. ;
     energyPhi = 0. ;
-    m_error|=0x40000000;
   }
 
   for(it = iBegin;it != iEnd; ++it) {
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaReSamp2Fex.h b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReSamp2Fex.h
similarity index 59%
rename from Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaReSamp2Fex.h
rename to Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReSamp2Fex.h
index 8ae3a8ffce251578f4a8b4229d0b930f06deaa66..450221dd833cf2c83baeee7ff6ebb95ed7b240ba 100755
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaReSamp2Fex.h
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaReSamp2Fex.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 /********************************************************************
@@ -28,44 +28,17 @@ class IRoiDesciptor;
 /** Feature extraction Tool for LVL2 Calo. Second EM Calorimeter sample. */
 class EgammaReSamp2Fex: public IReAlgToolCalo {
   public:
-    // to avoid compiler warning about hidden virtuals
-    using IReAlgToolCalo::execute;
-  
-    /** Constructor */
-    EgammaReSamp2Fex(const std::string & type, const std::string & name, 
-                 const IInterface* parent);
-    /** Destructor */
-    virtual ~EgammaReSamp2Fex();
+    EgammaReSamp2Fex(const std::string & type, const std::string & name,
+                     const IInterface* parent);
+
     /** @brief execute feature extraction for the EM Calorimeter
     *	second layer 
     *   @param[out] rtrigEmCluster is the output cluster.
     *   @param[in] eta/phi-min/max = RoI definition.
     */
-    StatusCode execute(xAOD::TrigEMCluster &rtrigEmCluster, const IRoiDescriptor& roi,
-				const CaloDetDescrElement*& caloDDE = caloReDDENull,
-                                const EventContext* context = nullptr ) const;
-
-    /** Special initialize for Samp2 to include eta as a
-	trigger timer item monitored parameter. Important
-	to compare time performance as a function of cluster
-	position.
-    */
-    StatusCode initialize() {
-		// Very important to call base class initialize
-                if ( IReAlgToolCalo::initialize().isFailure() ) {
-                	*(new MsgStream(AlgTool::msgSvc(), name()))
-			<< MSG::FATAL 
-			<< "Could not init base class IReAlgTooCalo" << endmsg;
-			return StatusCode::FAILURE;
-                }
-                std::string basename(name().substr(25,5)+".");
-		//std::string basename(name().substr(6,1)+name().substr(name().find("Fex",0)-5,5));
-                //basename+=(name().substr(6,1)+name().substr(name().find("Fex",0)-5,5));
-		if (!m_timersvc.empty()) {
-                	m_timer[0]->propName(basename+"Eta");
-		}
-                return StatusCode::SUCCESS;
-    }
+    virtual StatusCode execute(xAOD::TrigEMCluster &rtrigEmCluster, const IRoiDescriptor& roi,
+                               const CaloDetDescrElement*& caloDDE,
+                               const EventContext& context) const override;
 
   private:
     inline double etaSizeLArEMSamp2(const double eta, const int calo) const;
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaSamp1Fex.cxx b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaSamp1Fex.cxx
old mode 100755
new mode 100644
index 89055547641bc5da2f767013fdc743fe329bbe53..9886a2a03fdc7abf709416612358a5352ae0eeb3
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaSamp1Fex.cxx
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaSamp1Fex.cxx
@@ -17,7 +17,7 @@
 //#include "TrigCaloEvent/TrigEMCluster.h"
 #include "CaloGeoHelpers/CaloSampling.h"
 
-#include "TrigT2CaloEgamma/EgammaSamp1Fex.h"
+#include "EgammaSamp1Fex.h"
 #include "TrigT2CaloCommon/Calo_Def.h"
 
 #include "IRegionSelector/IRoiDescriptor.h"
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaSamp1Fex.h b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaSamp1Fex.h
similarity index 90%
rename from Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaSamp1Fex.h
rename to Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaSamp1Fex.h
index f224cdfbcb6c802092ff3a0b5ac1b6fdbc269679..93d60eb1d08816f9a0af32e0dccf2e6f089a34b7 100755
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaSamp1Fex.h
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaSamp1Fex.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 /********************************************************************
@@ -23,6 +23,9 @@
 #include "TrigT2CaloCommon/IAlgToolCalo.h"
 #include "GaudiKernel/AlgTool.h"
 
+#include "CxxUtils/checker_macros.h"
+ATLAS_NO_CHECK_FILE_THREAD_SAFETY;  // legacy trigger code
+
 class IRoiDescriptor;
 
 /** Feature extraction Tool for LVL2 Calo. First EM Calorimeter sample. */
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaSamp2Fex.cxx b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaSamp2Fex.cxx
old mode 100755
new mode 100644
index a8f69cfcfeb9628cd82c59e60e296aec6f3e9d99..bc9be455f6718539d920e18a9d9da2183821cd6c
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaSamp2Fex.cxx
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaSamp2Fex.cxx
@@ -18,7 +18,7 @@
 #include "xAODTrigCalo/TrigEMCluster.h"
 #include "CaloGeoHelpers/CaloSampling.h"
 
-#include "TrigT2CaloEgamma/EgammaSamp2Fex.h"
+#include "EgammaSamp2Fex.h"
 #include "TrigT2CaloCommon/Calo_Def.h"
 
 #include "IRegionSelector/IRoiDescriptor.h"
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaSamp2Fex.h b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaSamp2Fex.h
similarity index 95%
rename from Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaSamp2Fex.h
rename to Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaSamp2Fex.h
index 4ef1a22cab475595d1fbcb746a27afc18b1af0ec..283e1a7ab607adc45b401afdf23f17c6c58e9764 100755
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/EgammaSamp2Fex.h
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/EgammaSamp2Fex.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 /********************************************************************
@@ -23,6 +23,9 @@
 #include "CaloGeoHelpers/CaloSampling.h"
 #include "TrigT2CaloCommon/Calo_Def.h"
 
+#include "CxxUtils/checker_macros.h"
+ATLAS_NO_CHECK_FILE_THREAD_SAFETY;  // legacy trigger code
+
 class IRoiDesciptor;
 
 /** Feature extraction Tool for LVL2 Calo. Second EM Calorimeter sample. */
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/RingerFex.cxx b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/RingerFex.cxx
old mode 100755
new mode 100644
index 7c1df053203bd04272ab613673549a69572b644b..6d747b63c78ae62b47ab521614f5e01744d34a04
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/RingerFex.cxx
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/RingerFex.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 /*******************************************************
@@ -14,7 +14,7 @@
 #include <map>
 #include <cmath>
 #include <numeric>
-#include "TrigT2CaloEgamma/RingerFex.h"
+#include "RingerFex.h"
 #include "TrigTimeAlgs/TrigTimer.h"
 #include "xAODTrigCalo/TrigEMCluster.h"
 #include "xAODTrigRinger/TrigRingerRings.h"
@@ -26,6 +26,9 @@
 #include "TrigT2CaloCommon/IAlgToolCalo.h"
 #include "GaudiKernel/ThreadLocalContext.h"
 #include "CaloDetDescr/CaloDetDescrElement.h"
+
+ATLAS_NO_CHECK_FILE_THREAD_SAFETY;  // legacy trigger code
+
 //!=================================================================================
 const double RingerFex::ENERGY_THRESHOLD = 0.001;
 const double RingerFex::PI_THRESHOLD = 1.0;
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/RingerFex.h b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/RingerFex.h
similarity index 97%
rename from Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/RingerFex.h
rename to Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/RingerFex.h
index 89150a958a540f114f7e57dc0e5f6e40d437d891..e8c7f4e24436bc065e59865674c113e123ea752e 100755
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/RingerFex.h
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/RingerFex.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 /**
@@ -18,7 +18,10 @@
 #include "CaloGeoHelpers/CaloSampling.h"
 #include "CaloEvent/CaloCell.h"
 #include "TrigT2CaloCommon/IAlgToolCalo.h"
-#include "TrigT2CaloEgamma/T2CaloEgamma.h"
+#include "T2CaloEgamma.h"
+
+#include "CxxUtils/checker_macros.h"
+ATLAS_NO_CHECK_FILE_THREAD_SAFETY;  // legacy trigger code
 
 class MsgStream;
 class TrigEMCluster; // I dont know if put the xAOD prefix here!
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/T2CalibrationEgamma.h b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/T2CalibrationEgamma.h
similarity index 100%
rename from Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/T2CalibrationEgamma.h
rename to Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/T2CalibrationEgamma.h
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/T2CaloEgamma.cxx b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/T2CaloEgamma.cxx
old mode 100755
new mode 100644
index 68bca35436c62136e418d4b99f720dfea945bb79..41cf461d6c9ae52d3156f922c2a68168d90629f3
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/T2CaloEgamma.cxx
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/T2CaloEgamma.cxx
@@ -28,7 +28,7 @@
 #include "xAODTrigRinger/TrigRingerRings.h"
 #include "xAODTrigRinger/TrigRingerRingsContainer.h"
 
-#include "TrigT2CaloEgamma/T2CaloEgamma.h"
+#include "T2CaloEgamma.h"
 #include "TrigT2CaloCommon/IAlgToolCalo.h"
 #include "TrigT2CaloCalibration/IEgammaCalibration.h"
 
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/T2CaloEgamma.h b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/T2CaloEgamma.h
similarity index 100%
rename from Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/T2CaloEgamma.h
rename to Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/T2CaloEgamma.h
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/T2CaloEgammaFastAlgo.cxx b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/T2CaloEgammaFastAlgo.cxx
deleted file mode 100755
index 669da637a3e2ef85ce4294eeee5f11675f0903b3..0000000000000000000000000000000000000000
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/T2CaloEgammaFastAlgo.cxx
+++ /dev/null
@@ -1,236 +0,0 @@
-/*
-  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
-*/
-
-/*
- NAME:     T2CaloEgammaFastAlgo.cxx
- PACKAGE:  Trigger/TrigAlgorithms/TrigT2CaloEgamma
-
- AUTHOR:   Denis Oliveira Damazio
-           Carlos Chavez Barajas
-*/
-
-#include "GaudiKernel/MsgStream.h"
-#include "GaudiKernel/IToolSvc.h"
-#include "GaudiKernel/StatusCode.h"
-#include "AthLinks/ElementLink.h"
-
-#include "xAODTrigCalo/TrigEMClusterContainer.h"
-#include "xAODTrigCalo/TrigEMClusterAuxContainer.h"
-
-#include "TrigT2CaloEgamma/T2CaloEgammaFastAlgo.h"
-#include "TrigT2CaloCommon/IAlgToolCalo.h"
-#include "TrigT2CaloCalibration/IEgammaCalibration.h"
-#include "TrigT2CaloCommon/ITrigDataAccess.h"
-
-#include "TrigT2CaloCommon/phiutils.h"
-
-class ISvcLocator;
-
-T2CaloEgammaFastAlgo::T2CaloEgammaFastAlgo(const std::string & name, ISvcLocator* pSvcLocator)
-  : AthAlgorithm(name, pSvcLocator), 
-    m_calibsBarrel(this),
-    m_calibsEndcap(this),
-    m_storeCells(false),
-    m_roiCollection("OutputRoIs"),
-    m_trigEmClusterCollection("CaloClusters"),
-    m_regionSelector("RegSelSvc", name)
-{
-    declareProperty("L1ForceEta",m_l1eta = -10.0);
-    declareProperty("L1ForcePhi",m_l1phi = -10.0);
-    declareProperty("EtaWidth", m_etaWidth = 0.1,"Eta Width of the Region of Interest");
-    declareProperty("PhiWidth", m_phiWidth = 0.1,"Phi Width of the Region of Interest"); 
-    declareProperty("CalibListBarrel",m_calibsBarrel,"list of calib tools for the Barrel clusters");
-    declareProperty("CalibListEndcap",m_calibsEndcap,"list of calib tools for the EndCap clusters");
-    declareProperty("StoreCells",m_storeCells,"store cells in container attached to RoI");
-    declareProperty("RhoEta",m_rhoEta);
-    declareProperty("ZEta",m_zEta);
-    declareProperty("IAlgToolList", m_emAlgTools,"list of AlgToolCalo. These tools perform FEX.");
-    declareProperty("RoIs", m_roiCollectionKey = std::string("OutputRoIs"), "RoIs to read in");
-    declareProperty("ClustersName", m_clusterContainerKey = std::string("CaloClusters"), "Calo cluster container");
-}
-
-T2CaloEgammaFastAlgo::~T2CaloEgammaFastAlgo()
-{
-}
-
-
-StatusCode T2CaloEgammaFastAlgo::initialize()
-{
-  m_emAlgTools.retrieve().ignore();
-  ATH_CHECK( m_regionSelector.retrieve());
-  ATH_CHECK( m_clusterContainerKey.initialize() );
-  ATH_CHECK( m_roiCollectionKey.initialize() );
-  CHECK( m_calibsBarrel.retrieve() );
-  CHECK( m_calibsEndcap.retrieve() );
-  return StatusCode::SUCCESS;
-}
-
-
-StatusCode T2CaloEgammaFastAlgo::execute()
-{
-  m_conversionError=0;
-  m_algorithmError=0;
-  m_monitoredCluster=0;
-
-  m_trigEmClusterCollection = SG::WriteHandle<xAOD::TrigEMClusterContainer>( m_clusterContainerKey, getContext() );
-  ATH_CHECK( m_trigEmClusterCollection.record( CxxUtils::make_unique<xAOD::TrigEMClusterContainer>(),
-                                               CxxUtils::make_unique<xAOD::TrigEMClusterAuxContainer>() ) );
-
-  auto roisHandle = SG::makeHandle( m_roiCollectionKey );
-  CHECK( roisHandle.isValid() );
-
-  const TrigRoiDescriptorCollection* roiCollection = roisHandle.cptr();
-  const TrigRoiDescriptor* roiDescriptor = 0;
-
-  // datahandle 
-  TrigRoiDescriptorCollection::const_iterator  roiCollectionIt  = roiCollection->begin(); 
-  for(; roiCollectionIt != roiCollection->end(); ++roiCollectionIt){
-	roiDescriptor = *roiCollectionIt;
-
-    float etaL1, phiL1;
-    // End LVL1 part
-    double etamin, etamax, phimin, phimax;
-    if ( (m_l1eta<-9.9)&&(m_l1phi<-9.9)){
-      etamin = std::max( -2.5, roiDescriptor->eta() - m_etaWidth );
-      etamax = std::min(  2.5, roiDescriptor->eta() + m_etaWidth );
-
-      phimin = HLT::wrap_phi( roiDescriptor->phi() - m_phiWidth );
-      phimax = HLT::wrap_phi( roiDescriptor->phi() + m_phiWidth );
-
-      etaL1 = roiDescriptor->eta();
-      phiL1 = roiDescriptor->phi();
-    }
-    else {
-      etamin = std::max( -2.5, m_l1eta-m_etaWidth );
-      etamax = std::min(  2.5, m_l1eta+m_etaWidth );
-
-      phimin = HLT::wrap_phi( m_l1phi-m_phiWidth );
-      phimax = HLT::wrap_phi( m_l1phi+m_phiWidth );
-
-      etaL1 =  m_l1eta;
-      phiL1 =  m_l1phi;
-    }
-
-    /// if we do ...
-    TrigRoiDescriptor newroi( roiDescriptor->eta(), etamin, etamax,
-                              roiDescriptor->phi(), phimin, phimax);
-
-    ATH_MSG_DEBUG(" etamin = "<< etamin << " etamax = "<< etamax <<
-                  " phimin = "<< phimin << " phimax = "<< phimax);
-
-    ATH_MSG_DEBUG(" Making TrigEMCluster");
-
-    xAOD::TrigEMCluster* ptrigEmCluster = new xAOD::TrigEMCluster();
-    m_trigEmClusterCollection->push_back( ptrigEmCluster );
-    ptrigEmCluster->setEnergy(0.0);
-    ptrigEmCluster->setEt(0.0);
-    ptrigEmCluster->setRawEnergy(0.0);
-    ptrigEmCluster->setRawEt(0.0);
-    ptrigEmCluster->setE277(0);
-    ptrigEmCluster->setEmaxs1(0);
-    ptrigEmCluster->setE2tsts1(0);
-    ptrigEmCluster->setEhad1(-999);
-    ptrigEmCluster->setWeta2(-999);
-    ptrigEmCluster->setFracs1(-999);
-    ptrigEmCluster->setE233(-999);
-    ptrigEmCluster->setE237(-999);
-    ptrigEmCluster->setWstot(-999);
-    ptrigEmCluster->setEta1(-999);
-    ptrigEmCluster->setNCells(0);
-    ptrigEmCluster->setRawEta(-999);
-    ptrigEmCluster->setRawPhi(-999);
-    m_monitoredCluster = ptrigEmCluster;
-    // It is a good idea to clear the energies
-    for(int i=0;i<CaloSampling::CaloSample::MINIFCAL0;i++){
-      ptrigEmCluster->setEnergy((CaloSampling::CaloSample )i,0.);
-      ptrigEmCluster->setRawEnergy((CaloSampling::CaloSample )i,0.);
-    }
-    // Initial cluster position is the LVL1 position
-    ptrigEmCluster->setEta(etaL1);
-    ptrigEmCluster->setPhi(phiL1);
-
-    // Add RoI word to TrigEMCluster
-    // Dangerous !!!! we need to define a *new* roiDescriptor if we want to
-    // change the size, so we should be careful about *which* roi descriptor
-    // we save, and *which* "roiWord" (if any) we store if we need to use it
-    // again
-    (*ptrigEmCluster).setRoIword(roiDescriptor->roiWord());
-    const CaloDetDescrElement * caloDDE = 0;
-
-    ToolHandleArray<IAlgToolCalo>::iterator it = m_emAlgTools.begin();
-    uint32_t error = 0;
-    for (; it < m_emAlgTools.end(); it++)  {
-      if ((*it)->execute(*ptrigEmCluster, newroi, caloDDE ).isFailure() ) {
-        ATH_MSG_WARNING("T2Calo AlgToolEgamma returned Failure");
-        return StatusCode::FAILURE;
-      }
-      //    uint32_t in_error = (*it)->report_error();
-      //    if ( 0x0FFFFFFF & in_error ) m_conversionError++;
-      //    if ( 0xF0000000 & in_error ) m_algorithmError++;
-      //    error|=in_error;
-    }
-    // support to new monitoring
-    m_rCore=0;
-    m_eRatio=0;
-    m_stripRatio=0;
-    m_MonEta=ptrigEmCluster->eta();
-    m_MonPhi=ptrigEmCluster->phi();
-    if ( ptrigEmCluster->e277()!=0 )
-      m_rCore =  ptrigEmCluster->e237()/ptrigEmCluster->e277();
-    if ( ptrigEmCluster->emaxs1()+ptrigEmCluster->e2tsts1() !=0){
-      m_eRatio  =  ptrigEmCluster->emaxs1()-ptrigEmCluster->e2tsts1();
-      m_eRatio /=  ptrigEmCluster->emaxs1()+ptrigEmCluster->e2tsts1();
-    }
-
-    // Cluster quality is a collection of possible errors
-    // No error quality=0
-    ptrigEmCluster->setClusterQuality(error);
-
-    if ( ( error & 0xC0000000 ) || ptrigEmCluster->phi() < -M_PI || ptrigEmCluster->phi() > +M_PI
-         || fabsf ( ptrigEmCluster->eta() ) > 10.0 ) {
-      // Clustering failed. Transmit ahead L1
-      ptrigEmCluster->setEta(etaL1);
-      ptrigEmCluster->setPhi(phiL1);
-      ptrigEmCluster->setEnergy(0.0);
-      ptrigEmCluster->setEt(0.0);
-    }
-
-    if ( caloDDE != 0 ){
-      if ( caloDDE->is_lar_em_barrel() ){
-        for( ToolHandleArray<IEgammaCalibration>::iterator
-               ical=m_calibsBarrel.begin();
-             ical != m_calibsBarrel.end(); ++ical )
-          (*ical)->makeCorrection(ptrigEmCluster,caloDDE);
-      }else{
-        for( ToolHandleArray<IEgammaCalibration>::iterator
-               ical=m_calibsEndcap.begin();
-             ical != m_calibsEndcap.end(); ++ical )
-          (*ical)->makeCorrection(ptrigEmCluster,caloDDE);
-      }
-    }
-    float calZ0 = 0;
-
-    // Print out Cluster produced
-    if ( msgLvl(MSG::DEBUG) ) {
-      ATH_MSG_DEBUG(" Values of Cluster produced: ");
-      ATH_MSG_DEBUG(" REGTEST: emEnergy = "<< (*ptrigEmCluster).energy());
-      ATH_MSG_DEBUG(" REGTEST: hadEnergy = "<< (*ptrigEmCluster).ehad1());
-      ATH_MSG_DEBUG(" REGTEST: e237= " << (*ptrigEmCluster).e237());
-      ATH_MSG_DEBUG(" REGTEST: e277= " << (*ptrigEmCluster).e277());
-      ATH_MSG_DEBUG(" REGTEST: clusterWidth = " << (*ptrigEmCluster).weta2());
-      ATH_MSG_DEBUG(" REGTEST: frac73 = " << (*ptrigEmCluster).fracs1());
-      ATH_MSG_DEBUG(" REGTEST: e233 = " << (*ptrigEmCluster).e233());
-      ATH_MSG_DEBUG(" REGTEST: wstot = " << (*ptrigEmCluster).wstot());
-      ATH_MSG_DEBUG(" REGTEST: eta = "<< (*ptrigEmCluster).eta());
-      ATH_MSG_DEBUG(" REGTEST: phi = "<< (*ptrigEmCluster).phi());
-      ATH_MSG_DEBUG(" REGTEST: Eta1 = "<< (*ptrigEmCluster).eta1());
-      ATH_MSG_DEBUG(" REGTEST: calZ0 = "<< calZ0);
-      ATH_MSG_DEBUG(" REGTEST: quality = "<< (*ptrigEmCluster).clusterQuality());
-      ATH_MSG_DEBUG(std::hex << " REGTEST: roiWord = 0x" << (*ptrigEmCluster).RoIword());
-    }
-
-  } // end of roiCollection iterator
-  
-  return StatusCode::SUCCESS;
-}
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/T2CaloEgammaReFastAlgo.cxx b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/T2CaloEgammaReFastAlgo.cxx
old mode 100755
new mode 100644
index aea2d56625cc20207836422e2e8d5c46337da861..a911e8a34bdb42ff92144cb3912b5563260351d9
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/T2CaloEgammaReFastAlgo.cxx
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/T2CaloEgammaReFastAlgo.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 /*
@@ -20,7 +20,7 @@
 #include "xAODTrigCalo/TrigEMClusterContainer.h"
 #include "xAODTrigCalo/TrigEMClusterAuxContainer.h"
 
-#include "TrigT2CaloEgamma/T2CaloEgammaReFastAlgo.h"
+#include "T2CaloEgammaReFastAlgo.h"
 #include "TrigT2CaloCommon/IReAlgToolCalo.h"
 #include "TrigT2CaloCalibration/IEgammaCalibration.h"
 #include "TrigT2CaloCommon/ITrigDataAccess.h"
@@ -201,7 +201,7 @@ StatusCode T2CaloEgammaReFastAlgo::execute(const EventContext& context) const
 ////  if ( m_timersvc ) m_timer[1]->start();
   uint32_t error = 0;
   for (; it < m_emAlgTools.end(); it++)  {
-    if ((*it)->execute(*ptrigEmCluster, newroi, caloDDE, &context ).isFailure() ) {
+    if ((*it)->execute(*ptrigEmCluster, newroi, caloDDE, context ).isFailure() ) {
       (*m_log) << MSG::WARNING << "T2Calo AlgToolEgamma returned Failure" << endmsg;
       return StatusCode::FAILURE;
     }
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/T2CaloEgammaReFastAlgo.h b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/T2CaloEgammaReFastAlgo.h
similarity index 100%
rename from Trigger/TrigAlgorithms/TrigT2CaloEgamma/TrigT2CaloEgamma/T2CaloEgammaReFastAlgo.h
rename to Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/T2CaloEgammaReFastAlgo.h
diff --git a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/components/TrigT2CaloEgamma_entries.cxx b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/components/TrigT2CaloEgamma_entries.cxx
index 7a5575add32d854f8e7a66d453cc9165392c574e..674603a49eccd22cbb9daaafc243a13df200e2d2 100644
--- a/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/components/TrigT2CaloEgamma_entries.cxx
+++ b/Trigger/TrigAlgorithms/TrigT2CaloEgamma/src/components/TrigT2CaloEgamma_entries.cxx
@@ -1,19 +1,17 @@
-#include "TrigT2CaloEgamma/T2CaloEgamma.h"
-#include "TrigT2CaloEgamma/T2CaloEgammaFastAlgo.h"
-#include "TrigT2CaloEgamma/T2CaloEgammaReFastAlgo.h"
-#include "TrigT2CaloEgamma/EgammaSamp2Fex.h"
-#include "TrigT2CaloEgamma/EgammaSamp1Fex.h"
-#include "TrigT2CaloEgamma/EgammaEmEnFex.h"
-#include "TrigT2CaloEgamma/EgammaHadEnFex.h"
-#include "TrigT2CaloEgamma/EgammaReSamp2Fex.h"
-#include "TrigT2CaloEgamma/EgammaReSamp1Fex.h"
-#include "TrigT2CaloEgamma/EgammaReEmEnFex.h"
-#include "TrigT2CaloEgamma/EgammaReHadEnFex.h"
-#include "TrigT2CaloEgamma/RingerFex.h"
-#include "TrigT2CaloEgamma/EgammaAllFex.h"
+#include "../T2CaloEgamma.h"
+#include "../T2CaloEgammaReFastAlgo.h"
+#include "../EgammaSamp2Fex.h"
+#include "../EgammaSamp1Fex.h"
+#include "../EgammaEmEnFex.h"
+#include "../EgammaHadEnFex.h"
+#include "../EgammaReSamp2Fex.h"
+#include "../EgammaReSamp1Fex.h"
+#include "../EgammaReEmEnFex.h"
+#include "../EgammaReHadEnFex.h"
+#include "../RingerFex.h"
+#include "../EgammaAllFex.h"
 
 DECLARE_COMPONENT( T2CaloEgamma )
-DECLARE_COMPONENT( T2CaloEgammaFastAlgo )
 DECLARE_COMPONENT( T2CaloEgammaReFastAlgo )
 DECLARE_COMPONENT( EgammaSamp2Fex )
 DECLARE_COMPONENT( EgammaSamp1Fex )