diff --git a/AtlasGeometryCommon/BeamPipeGeoModel/src/BeamPipeDetectorFactory.cxx b/AtlasGeometryCommon/BeamPipeGeoModel/src/BeamPipeDetectorFactory.cxx
index b0f8a6fe120147f9b4ba5cf46884bd84fe16d70e..002ac41b95013c323e45388e07af2267bbcce6c2 100755
--- a/AtlasGeometryCommon/BeamPipeGeoModel/src/BeamPipeDetectorFactory.cxx
+++ b/AtlasGeometryCommon/BeamPipeGeoModel/src/BeamPipeDetectorFactory.cxx
@@ -1,10 +1,10 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "BeamPipeDetectorFactory.h"
 
-#include "GeoModelInterfaces/AbsMaterialManager.h"
+#include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelKernel/GeoMaterial.h"  
 #include "GeoModelKernel/GeoPcon.h"  
 #include "GeoModelKernel/GeoTube.h"  
@@ -18,8 +18,6 @@
 
 #include "StoreGate/StoreGateSvc.h"
 
-#include "GeoModelInterfaces/StoredMaterialManager.h"
-
 #include "RDBAccessSvc/IRDBRecord.h"
 #include "RDBAccessSvc/IRDBRecordset.h"
 #include "RDBAccessSvc/IRDBAccessSvc.h"
@@ -33,7 +31,7 @@
 
 
 BeamPipeDetectorFactory::BeamPipeDetectorFactory(StoreGateSvc *detStore,
-				       IRDBAccessSvc *pAccess)
+						 IRDBAccessSvc *pAccess)
   :m_detectorManager(0),
    m_materialManager(0),
    m_detectorStore(detStore),
@@ -49,11 +47,9 @@ void BeamPipeDetectorFactory::create(GeoPhysVol *world)
 {
   m_detectorManager=new BeamPipeDetectorManager();
 
-  const StoredMaterialManager * materialManagerTmp = 0;
-  if (StatusCode::SUCCESS != m_detectorStore->retrieve(materialManagerTmp, std::string("MATERIALS"))) {
+  if (StatusCode::SUCCESS != m_detectorStore->retrieve(m_materialManager, std::string("MATERIALS"))) {
     return; 
   } 
-  m_materialManager = materialManagerTmp;
   
   IRDBRecordset_ptr atlasMother = m_access->getRecordsetPtr("AtlasMother",m_versionTag,m_versionNode);
   IRDBRecordset_ptr bpipeGeneral = m_access->getRecordsetPtr("BPipeGeneral",m_versionTag,m_versionNode);
diff --git a/AtlasGeometryCommon/BeamPipeGeoModel/src/BeamPipeDetectorFactory.h b/AtlasGeometryCommon/BeamPipeGeoModel/src/BeamPipeDetectorFactory.h
index b9bf16ebcd42f9274562b51f049abb4f9c483a86..fcf1233e7b810c34619b33a39ceb709d22b1cbfc 100755
--- a/AtlasGeometryCommon/BeamPipeGeoModel/src/BeamPipeDetectorFactory.h
+++ b/AtlasGeometryCommon/BeamPipeGeoModel/src/BeamPipeDetectorFactory.h
@@ -1,9 +1,9 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
-#ifndef BeamPipeDetectorFactory_h
-#define BeamPipeDetectorFactory_h 1
+#ifndef BEAMPIPEGEOMODEL_BEAMPIPEDETECTORFACTORY_H
+#define BEAMPIPEGEOMODEL_BEAMPIPEDETECTORFACTORY_H
 
 #include "GeoModelKernel/GeoVDetectorFactory.h"
 #include "BeamPipeGeoModel/BeamPipeDetectorManager.h"
@@ -11,10 +11,10 @@
 #include <string>
 
 class StoreGateSvc;
-class AbsMaterialManager;
+class StoredMaterialManager;
 class GeoShape;
 
-class BeamPipeDetectorFactory : public GeoVDetectorFactory  
+class BeamPipeDetectorFactory final : public GeoVDetectorFactory  
 {
  public:
   
@@ -26,10 +26,10 @@ class BeamPipeDetectorFactory : public GeoVDetectorFactory
   ~BeamPipeDetectorFactory();
   
   // Creation of geometry:
-  virtual void create(GeoPhysVol *world);
+  virtual void create(GeoPhysVol *world) override;
   
   // Access to the results:
-  virtual const BeamPipeDetectorManager * getDetectorManager() const;
+  virtual const BeamPipeDetectorManager * getDetectorManager() const override;
   
   // Set version Tag and Node
   void setTagNode(std::string tag, std::string node);
@@ -69,7 +69,7 @@ class BeamPipeDetectorFactory : public GeoVDetectorFactory
   // The manager:
   BeamPipeDetectorManager     * m_detectorManager;
    
-  const AbsMaterialManager * m_materialManager;
+  const StoredMaterialManager * m_materialManager;
 
   StoreGateSvc             * m_detectorStore;
   IRDBAccessSvc            * m_access;
diff --git a/AtlasGeometryCommon/CavernInfraGeoModel/src/CavernInfraDetectorFactory.cxx b/AtlasGeometryCommon/CavernInfraGeoModel/src/CavernInfraDetectorFactory.cxx
index 9899eaf07210010a905e3dcfb37c91657113d30f..6d0fa1c764183976ce77fc7e099f7ea842f1b238 100755
--- a/AtlasGeometryCommon/CavernInfraGeoModel/src/CavernInfraDetectorFactory.cxx
+++ b/AtlasGeometryCommon/CavernInfraGeoModel/src/CavernInfraDetectorFactory.cxx
@@ -4,7 +4,6 @@
 
 #include "CavernInfraDetectorFactory.h"
 
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 
 #include "GeoModelKernel/GeoMaterial.h"  
diff --git a/AtlasGeometryCommon/CavernInfraGeoModel/src/CavernInfraDetectorFactory01.cxx b/AtlasGeometryCommon/CavernInfraGeoModel/src/CavernInfraDetectorFactory01.cxx
index 3e5158b2f53251cdf2d84fd88972bad0f36ae5a3..869fc6f699a24f50d7ec4663f6d964de3f661daa 100755
--- a/AtlasGeometryCommon/CavernInfraGeoModel/src/CavernInfraDetectorFactory01.cxx
+++ b/AtlasGeometryCommon/CavernInfraGeoModel/src/CavernInfraDetectorFactory01.cxx
@@ -5,7 +5,6 @@
 #include "CavernInfraDetectorFactory01.h"
 
 
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelKernel/GeoMaterial.h"  
 #include "GeoModelKernel/GeoPcon.h"  
 #include "GeoModelKernel/GeoTube.h"  
diff --git a/AtlasGeometryCommon/GeoModelEnvelopes/src/ForDetEnvelopeFactory.cxx b/AtlasGeometryCommon/GeoModelEnvelopes/src/ForDetEnvelopeFactory.cxx
index 9f4e12dab61ce534cea41d8a774b4feb072b9f8b..350ff7c83085522ac69742146ab2a44e0f0bfa57 100755
--- a/AtlasGeometryCommon/GeoModelEnvelopes/src/ForDetEnvelopeFactory.cxx
+++ b/AtlasGeometryCommon/GeoModelEnvelopes/src/ForDetEnvelopeFactory.cxx
@@ -4,7 +4,7 @@
 
 #include "ForDetEnvelopeFactory.h"
 
-#include "GeoModelInterfaces/AbsMaterialManager.h"
+#include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelKernel/GeoMaterial.h"  
 #include "GeoModelKernel/GeoTube.h"  
 #include "GeoModelKernel/GeoLogVol.h"  
@@ -16,8 +16,6 @@
 #include "StoreGate/StoreGateSvc.h"
 #include "GaudiKernel/SystemOfUnits.h"
 
-#include "GeoModelInterfaces/StoredMaterialManager.h"
-
 #include <vector>
 
 
@@ -34,11 +32,9 @@ ForDetEnvelopeFactory::~ForDetEnvelopeFactory()
 
 void ForDetEnvelopeFactory::create(GeoPhysVol *world)
 {
-  const StoredMaterialManager * materialManagerTmp = 0;
-  if (StatusCode::SUCCESS != m_detectorStore->retrieve(materialManagerTmp, std::string("MATERIALS"))) {
+  if (StatusCode::SUCCESS != m_detectorStore->retrieve(m_materialManager, std::string("MATERIALS"))) {
     return; 
   } 
-  m_materialManager = materialManagerTmp;
   
   // Get the materials  
   const GeoMaterial* air = m_materialManager->getMaterial("std::Air");
diff --git a/AtlasGeometryCommon/GeoModelEnvelopes/src/ForDetEnvelopeFactory.h b/AtlasGeometryCommon/GeoModelEnvelopes/src/ForDetEnvelopeFactory.h
index 3821dd264da27af2d4a819401a4ff7a943380cc0..ac7b7f7af732e11bcb9d3bf8ce71446f5096ea9b 100755
--- a/AtlasGeometryCommon/GeoModelEnvelopes/src/ForDetEnvelopeFactory.h
+++ b/AtlasGeometryCommon/GeoModelEnvelopes/src/ForDetEnvelopeFactory.h
@@ -1,18 +1,18 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
-#ifndef ForDetEnvelopeFactory_h
-#define ForDetEnvelopeFactory_h 1
+#ifndef GEOMODELENVELOPES_FORDETENVELOPEFACTORY_H
+#define GEOMODELENVELOPES_FORDETENVELOPEFACTORY_H
 
 #include "GeoModelKernel/GeoVDetectorFactory.h"
 #include "GeoModelEnvelopes/ForDetEnvelopeManager.h"
 
 class StoreGateSvc;
-class AbsMaterialManager;
+class StoredMaterialManager;
 class GeoShape;
 
-class ForDetEnvelopeFactory : public GeoVDetectorFactory  
+class ForDetEnvelopeFactory final : public GeoVDetectorFactory  
 {
  public:
   
@@ -23,10 +23,10 @@ class ForDetEnvelopeFactory : public GeoVDetectorFactory
   ~ForDetEnvelopeFactory();
   
   // Creation of geometry:
-  virtual void create(GeoPhysVol *world);
+  virtual void create(GeoPhysVol *world) override;
   
   // Access to the results:
-  virtual const ForDetEnvelopeManager * getDetectorManager() const;
+  virtual const ForDetEnvelopeManager * getDetectorManager() const override;
   
  private:  
 
@@ -37,7 +37,7 @@ class ForDetEnvelopeFactory : public GeoVDetectorFactory
   // The manager:
   ForDetEnvelopeManager*   m_detectorManager;
    
-  const AbsMaterialManager* m_materialManager;
+  const StoredMaterialManager* m_materialManager;
   StoreGateSvc*             m_detectorStore;
 };
 
diff --git a/DetectorDescription/GeoModel/GeoModelExamples/src/ToyDetectorFactory.cxx b/DetectorDescription/GeoModel/GeoModelExamples/src/ToyDetectorFactory.cxx
index aa3d3d00903963ca91f6cc8f502d1daa265829c8..b9ae5f233bb07c379ce7cb5b1d3aac6d0b15edb8 100755
--- a/DetectorDescription/GeoModel/GeoModelExamples/src/ToyDetectorFactory.cxx
+++ b/DetectorDescription/GeoModel/GeoModelExamples/src/ToyDetectorFactory.cxx
@@ -6,7 +6,6 @@
 #include "CentralScrutinizer.h"  
 
 #ifndef BUILDVP1LIGHT
-    #include "GeoModelInterfaces/AbsMaterialManager.h"
     #include "StoreGate/StoreGateSvc.h"
     #include "StoreGate/DataHandle.h"
     #include "GeoModelInterfaces/StoredMaterialManager.h"
diff --git a/DetectorDescription/GeoModel/GeoModelInterfaces/GeoModelInterfaces/AbsMaterialManager.h b/DetectorDescription/GeoModel/GeoModelInterfaces/GeoModelInterfaces/AbsMaterialManager.h
deleted file mode 100755
index 5d32183e356749b771e19c7b59cecb242bbe2526..0000000000000000000000000000000000000000
--- a/DetectorDescription/GeoModel/GeoModelInterfaces/GeoModelInterfaces/AbsMaterialManager.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
-*/
-
-#ifndef GEOMODELINTERFACES_ABSMATERIALMANAGER_H
-#define GEOMODELINTERFACES_ABSMATERIALMANAGER_H
-//---------------------------------------------------------//
-//                                                         //
-// class AbsMaterialManager  abstract base class for a     //
-// material manager.                                       //
-//                                                         //
-// Joe Boudreau March 2003                                 //
-//                                                         //
-//---------------------------------------------------------//
-#include <string>
-#include <iostream>
-#include <iosfwd>
-
-class GeoMaterial;
-class GeoElement;
-class AbsMaterialManager {
-
- public:
-
-  // Constructor:
-  AbsMaterialManager() {};
-  
-  // Destructor:
-  virtual ~AbsMaterialManager() {};
-
-  // Query the material:
-  virtual       GeoMaterial *getMaterial(const std::string & name)       =0;
-  virtual const GeoMaterial *getMaterial(const std::string & name) const =0;
-
-  // Query the elements:
-  virtual       GeoElement *getElement(const std::string & name)       = 0;
-  virtual const GeoElement *getElement(const std::string & name) const = 0;
-
-  // Query the elements (by atomic number):
-  virtual       GeoElement *getElement(unsigned int atomicNumber)       = 0;
-  virtual const GeoElement *getElement(unsigned int atomicNumber) const = 0;
-
-  virtual std::ostream & printAll(std::ostream & o=std::cout) const = 0;
-
-
-};
-
-
-#endif
diff --git a/DetectorDescription/GeoModel/GeoModelInterfaces/GeoModelInterfaces/StoredMaterialManager.h b/DetectorDescription/GeoModel/GeoModelInterfaces/GeoModelInterfaces/StoredMaterialManager.h
index f988dacd2aa970502408fb39dfa3e31224987042..bebbbba8bdf763e1fba06940d75b6daf327dd9f8 100755
--- a/DetectorDescription/GeoModel/GeoModelInterfaces/GeoModelInterfaces/StoredMaterialManager.h
+++ b/DetectorDescription/GeoModel/GeoModelInterfaces/GeoModelInterfaces/StoredMaterialManager.h
@@ -1,22 +1,26 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef GEOMODELINTERFACES_STOREDMATERIALMANAGER_H
 #define GEOMODELINTERFACES_STOREDMATERIALMANAGER_H
-//---------------------------------------------------------//
-//                                                         //
-// class StoredMaterialManager  This class hold one or more//
-// material managers and makes them storeable, under       //
-// storegate:                                              //
-//                                                         //
-// Joe Boudreau March 2003                                 //
-//                                                         //
-//---------------------------------------------------------//
-#include "GeoModelInterfaces/AbsMaterialManager.h"
+
+/**
+ * @class StoredMaterialManager
+ *
+ * @brief This class holds one or more material managers and makes 
+ *        them storeable, under StoreGate
+ *
+ * @author Joe Boudreau, March 2003
+ */
+
 #include "AthenaKernel/CLASS_DEF.h"
 #include <map>
-class StoredMaterialManager:public AbsMaterialManager 
+
+class GeoMaterial;
+class GeoElement;
+
+class StoredMaterialManager
 {
  public:
   typedef std::map<std::string, GeoMaterial* > MaterialMap;
@@ -29,27 +33,25 @@ class StoredMaterialManager:public AbsMaterialManager
   virtual ~StoredMaterialManager() {};
 
   // Query the material:
-  virtual       GeoMaterial* getMaterial(const std::string& name)       = 0;
   virtual const GeoMaterial* getMaterial(const std::string& name) const = 0;
 
   // Query the elements:
-  virtual       GeoElement* getElement(const std::string& name)       = 0;
   virtual const GeoElement* getElement(const std::string& name) const = 0;
 
   // Query the elements (by atomic number):
-  virtual       GeoElement* getElement(unsigned int atomicNumber)       = 0;
   virtual const GeoElement* getElement(unsigned int atomicNumber) const = 0;
 
   // Add new material
-  virtual void addMaterial(const std::string& space, GeoMaterial* material)       = 0;
   virtual void addMaterial(const std::string& space, GeoMaterial* material) const = 0;
 
+  // Return iterators
   virtual MaterialMapIterator begin() const = 0;
   virtual MaterialMapIterator end() const = 0;
 
   // Number of materials in the manager
   virtual size_t size() = 0;
 
+  // Dump the contents
   virtual std::ostream& printAll(std::ostream & o=std::cout) const = 0;
 };
 
diff --git a/DetectorDescription/GeoModel/GeoModelSvc/src/RDBMaterialManager.cxx b/DetectorDescription/GeoModel/GeoModelSvc/src/RDBMaterialManager.cxx
index ba1388f44f17c8d1730363bc626e615e78045196..78c92b83a5f9fcc09de090a9eb824e3199968c31 100755
--- a/DetectorDescription/GeoModel/GeoModelSvc/src/RDBMaterialManager.cxx
+++ b/DetectorDescription/GeoModel/GeoModelSvc/src/RDBMaterialManager.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "RDBMaterialManager.h"
@@ -330,25 +330,6 @@ RDBMaterialManager::~RDBMaterialManager() {
 	
 }
 
-GeoMaterial* RDBMaterialManager::searchMaterialMap(const std::string & name)  
-{
-  MsgStream log(Athena::getMessageSvc(), "GeoModelSvc::RDBMaterialManager"); 
-	
-  std::map< std::string, GeoMaterial * >::const_iterator m   = m_materialMap.find(std::string(name));
-  std::map< std::string, GeoMaterial * >::const_iterator end = m_materialMap.end();
-  	
-  if (m!=end) {
-    if(log.level()==MSG::VERBOSE)
-      log << MSG::VERBOSE << " ***** in searchMaterialMap(): search sucess "  << endmsg;	
-    return (*m).second;
-  }
-  else {
-    if(log.level()==MSG::VERBOSE)
-      log << MSG::VERBOSE << " ***** in searchMaterialMap(): search fail "  << endmsg;	
-    return NULL;
-  }
-}
-
 GeoMaterial* RDBMaterialManager::searchMaterialMap(const std::string & name) const
 {
   MsgStream log(Athena::getMessageSvc(), "GeoModelSvc::RDBMaterialManager"); 
@@ -368,26 +349,6 @@ GeoMaterial* RDBMaterialManager::searchMaterialMap(const std::string & name) con
 }
 
 
-GeoElement *RDBMaterialManager::searchElementVector(const std::string & name)  
-{ 
-  MsgStream log(Athena::getMessageSvc(), "GeoModelSvc::RDBMaterialManager"); 
-	
-  NameEquals matchByName(name);
-  std::vector<GeoElement *>::const_iterator e=std::find_if(m_elementVector.begin(), m_elementVector.end(),matchByName);
-  	
-  if (e!=m_elementVector.end()) {	
-    if(log.level()==MSG::VERBOSE)
-      log << MSG::VERBOSE << " ***** in searchElementVector() search succes "  << endmsg;	
-    return *e;
-  }
-  else {
-    if(log.level()==MSG::VERBOSE)
-      log << MSG::VERBOSE << " ***** in searchElementVector() search fail "  << endmsg;	
-    return NULL;
-  }
-}
-
-
 GeoElement *RDBMaterialManager::searchElementVector(const std::string & name)  const
 { 
   MsgStream log(Athena::getMessageSvc(), "GeoModelSvc::RDBMaterialManager"); 
@@ -408,25 +369,6 @@ GeoElement *RDBMaterialManager::searchElementVector(const std::string & name)  c
 }
 
 
-GeoElement *RDBMaterialManager::searchElementVector(const unsigned int atomicNumber)  
-{ 
-  MsgStream log(Athena::getMessageSvc(), "GeoModelSvc::RDBMaterialManager"); 
-	
-  NumberEquals matchByNumber(atomicNumber);
-  std::vector<GeoElement *>::const_iterator e=std::find_if(m_elementVector.begin(), m_elementVector.end(), matchByNumber);
-  	
-  if (e!=m_elementVector.end()) {
-    if(log.level()==MSG::VERBOSE)  		
-      log << MSG::VERBOSE << " ***** in searchElementVector(atomicNumber) search succes "  << endmsg;
-    return *e;
-  }
-  else {
-    if(log.level()==MSG::VERBOSE)
-      log << MSG::VERBOSE << " ***** in searchElementVector(atomicNumber) search succes "  << endmsg;
-    return NULL;
-  }
-}
-
 GeoElement *RDBMaterialManager::searchElementVector(const unsigned int atomicNumber) const
 { 
   MsgStream log(Athena::getMessageSvc(), "GeoModelSvc::RDBMaterialManager"); 
@@ -446,221 +388,6 @@ GeoElement *RDBMaterialManager::searchElementVector(const unsigned int atomicNum
   }
 }
 
-GeoMaterial* RDBMaterialManager::getMaterial(const std::string & name) {
-	
-  unsigned int  ind, com_ind;
-	
-  std::string material_name;
-  std::string tmp_name;
-  long 	    material_id = 0;
-  double      material_density = 0;
-	
-	
-  std::string component_name;
-  double      component_fraction;
-  int 	    component_id;
-		
-  std::string detector;
-  std::string tmp_det;
-  std::string data_id;
-	
-	
-  std::string matcomponents_table;
-
-  if(!s_specialMaterials)
-  {
-    buildSpecialMaterials();
-    s_specialMaterials = true;
-  }
-	
-  GeoMaterial* pmaterial;
-	
-  GeoMaterial* p_com_material;
-  GeoElement*  p_com_element;
-	
-  IRDBRecordset_ptr tmp_materials;
-  IRDBRecordset_ptr tmp_matcomponents;
-	
-  MsgStream log(Athena::getMessageSvc(), "GeoModelSvc::RDBMaterialManager"); 
-  if(log.level()<=MSG::DEBUG) 
-    log << MSG::DEBUG  << " ***** getMaterial( ): "  << name << endmsg;	
- 
-
-  pmaterial = NULL;
-  pmaterial = searchMaterialMap( name);
-  if (pmaterial!= NULL) 
-      return pmaterial;
-		
-  if(name.find("std",0) == 0)
-    {
-      detector = "std";
-      tmp_materials = m_stdmaterials;
-      tmp_matcomponents = m_stdmatcomponents;
-      data_id = "STDMATERIALS_DATA_ID";
-    }
-  else if(name.find("trt",0) == 0)
-    {
-      detector = "trt";
-      tmp_materials = m_trtmaterials;
-      tmp_matcomponents = m_trtmatcomponents;
-      data_id = "TRTMATERIALS_DATA_ID";
-    }
-  else if(name.find("LAr",0) == 0)
-    {
-      detector = "LAr";
-      tmp_materials = m_larmaterials;
-      tmp_matcomponents = m_larmatcomponents;
-      data_id = "LARMATERIALS_DATA_ID";
-    }
-  else if(name.find("muo",0) == 0)
-    {
-      detector = "muo";
-      tmp_materials = m_muomaterials;
-      tmp_matcomponents = m_muomatcomponents;
-      data_id = "MUOMATERIALS_DATA_ID";
-    }
-  else if(name.find("pixtb",0) == 0)
-    {
-      detector = "pixtb";
-      tmp_materials = m_pixtbmaterials;
-      tmp_matcomponents = m_pixtbmatcomponents;
-      data_id = "PIXELTBMATERIALS_DATA_ID";
-    }
-  else if(name.find("pix",0) == 0)
-    {
-      detector = "pix";
-      tmp_materials = m_pixmaterials;
-      tmp_matcomponents = m_pixmatcomponents;
-      data_id = "PIXMATERIALS_DATA_ID";
-    }
-  else if(name.find("sct",0) == 0)
-    {
-      detector = "sct";
-      tmp_materials = m_sctmaterials;
-      tmp_matcomponents = m_sctmatcomponents;
-      data_id = "SCTMATERIALS_DATA_ID";
-    }
-  else if(name.find("indet",0) == 0)
-    {
-      detector = "indet";
-      tmp_materials = m_indetmaterials;
-      tmp_matcomponents = m_indetmatcomponents;
-      data_id = "INDETMATERIALS_DATA_ID";
-    }
-  else if(name.find("shield",0) == 0)
-    {
-      detector = "shield";
-      tmp_materials = m_shieldmaterials;
-      tmp_matcomponents = m_shieldmatcomponents;
-      data_id = "SHIELDMATERIALS_DATA_ID";
-    }
-  else if(name.find("tile",0) == 0)
-    {
-      detector = "tile";
-      tmp_materials = m_tilematerials;
-      tmp_matcomponents = m_tilematcomponents;
-      data_id = "TILEMATERIALS_DATA_ID";
-    }
-  else if(name.find("toro",0) == 0)
-    {
-      detector = "toro";
-      tmp_materials = m_toromaterials;
-      tmp_matcomponents = m_toromatcomponents;
-      data_id = "TOROMATERIALS_DATA_ID";
-    }
-  else {return 0 ;}
-	
-  for( ind = 0; ind < tmp_materials->size(); ind++)
-    {
-      const IRDBRecord* rec = (*tmp_materials)[ind];
-      tmp_name = detector+"::"+rec->getString("NAME");
-		
-      if( name == tmp_name){
-
-	material_name  = detector+"::"+rec->getString("NAME");
-	material_id = rec->getLong(data_id);
-	material_density = rec->getDouble("DENSITY");
-        		
-	if(log.level()<=MSG::DEBUG)
-	  log << MSG::DEBUG  << " ***** Material: name id density: "  << material_name <<" " << material_id <<" "<< material_density << endmsg;	
-	break;
-      }
-    }
-		
-  if (ind == tmp_materials->size()) 
-      return NULL;
-
-  pmaterial = new GeoMaterial( material_name,material_density * (GeoModelKernelUnits::gram / Gaudi::Units::cm3));
-
-
-  bool firstComponent = true;
-  bool hasSubMaterial = false;
-  bool calculateFraction = false;
-  double totalFraction = 0.;
-  std::vector < GeoElement* > elementComponents;
-  std::vector <double>        elementFractions;
-
-  for(  com_ind = 0; com_ind <tmp_matcomponents->size(); com_ind++)
-    {
-      const IRDBRecord* com_rec = (*tmp_matcomponents)[com_ind];
-		
-      component_id = com_rec->getLong("MATERIAL_ID");
-      if( component_id == material_id)
-	{
-	  component_name = com_rec->getString("COMPNAME");
-	  component_fraction = com_rec->getDouble("FRACTION");
-			
-	  if(firstComponent)
-	  {
-	    firstComponent = false;
-	    if(component_fraction>=1.)
-	      calculateFraction = true;
-	  }
-
-	  if( CheckElement( component_name) == 1)
-	    {
-	      p_com_element = getElement(component_name);
-
-	      if(calculateFraction)
-	      {
-		totalFraction += component_fraction*p_com_element->getA();
-		elementComponents.push_back(p_com_element);
-		elementFractions.push_back(component_fraction);
-	      }
-	      else
-		pmaterial->add( p_com_element, component_fraction);
-										
-	    }
-	  else{
-	    hasSubMaterial = true;
-	    p_com_material = getMaterial(component_name);
-
-	    pmaterial->add(p_com_material, component_fraction);
-			
-	  }		
-	}
-    }    
-
-  if(calculateFraction && hasSubMaterial && elementComponents.size()>0)
-    std::cerr << material_name << " description should be changed. Please indicate the exact fraction for elements\n";
-
-  if(calculateFraction && !elementComponents.empty()) {
-    const double inv_totalFraction = 1. / totalFraction;
-    for(unsigned i=0; i<elementComponents.size(); i++)
-      pmaterial->add(elementComponents[i],elementFractions[i]*elementComponents[i]->getA() * inv_totalFraction);
-  }
-	
-  // a table to keep the memory allocation, and easy for delete 
-  addMaterial(detector,pmaterial);
-	
-  /*	{
-	printFullMaterial ( pmaterial);
-	printAll( std:: cout);
-	}
-  */	
-  return pmaterial;
-}
-
 const GeoMaterial*  RDBMaterialManager:: getMaterial(const std::string &name) const{
 
   unsigned int  ind, com_ind;
@@ -962,115 +689,6 @@ const GeoElement *RDBMaterialManager::getElement(unsigned int atomicNumber) cons
   return pelement;
 }
 
-
-GeoElement *RDBMaterialManager::getElement(const std::string & name)  {
-
-  unsigned int ind;
-
-  std::string element_name;
-  std::string element_symbol;
-  std::string tmp_name;
-	
-  double      element_a;
-  double      element_z;
-	
-  GeoElement *pelement;
-
-  MsgStream log(Athena::getMessageSvc(), "GeoModelSvc::RDBMaterialManager"); 
-  if(log.level()==MSG::VERBOSE)
-    log << MSG::VERBOSE << " ***** getElement(): " << element_name  <<endmsg;
-	
-  pelement = NULL;
-  pelement = searchElementVector( name);
-  if (pelement != NULL) 
-      return pelement;
-
-  for(ind = 0; ind < m_elements->size(); ind++)
-    {
-      const IRDBRecord* rec = (*m_elements)[ind];
-		
-      tmp_name = rec->getString("NAME");
-	
-      if( name == tmp_name)
-	{ 
-	  element_name   = rec->getString("NAME");
-	  element_symbol = rec->getString("SYMBOL");
-	  element_a = rec->getDouble("A");
-	  element_z = rec->getDouble("Z");
-                	
-	  pelement = new GeoElement( element_name , element_symbol  ,element_z , element_a *(GeoModelKernelUnits::gram/Gaudi::Units::mole));
-
-	  // a table to keep the memory allocation, and easy for delete 
-	  pelement->ref();
-	  m_elementVector.push_back( pelement);
-	  break;
-			
-	}
-    }
-  if (ind == m_elements->size()) 		return NULL;
-	
-  return pelement;
-}
-
-
-GeoElement *RDBMaterialManager::getElement(unsigned int atomicNumber) {
-  
-  unsigned int ind;
-
-  std::string element_name;
-  std::string element_symbol;
-	
-  double      element_a;
-  double      element_z;
-	
-  GeoElement* pelement(0);
-
-  MsgStream log(Athena::getMessageSvc(), "GeoModelSvc::RDBMaterialManager"); 
-  if(log.level()==MSG::VERBOSE)
-    log << MSG::VERBOSE << " ***** getElement(atomicNumber): " << element_name  <<endmsg;	
-	
-  for(ind = 0; ind < m_elements->size(); ind++)
-    {
-      const IRDBRecord* rec = (*m_elements)[ind];
-		
-      if(atomicNumber == rec->getDouble("A"))
-	{ 
-	  element_name   = rec->getString("NAME");
-	  element_symbol = rec->getString("SYMBOL");
-	  element_a = rec->getDouble("A");
-	  element_z = rec->getDouble("Z");
-                	
-	  pelement = new GeoElement( element_name , element_symbol  ,element_z , element_a *(GeoModelKernelUnits::gram/Gaudi::Units::mole));
-
-	  // a table to keep the memory allocation, and easy for delete 
-	  pelement->ref();
-	  m_elementVector.push_back( pelement);
-			
-	  break;
-	}
-    }
-  if (ind == m_elements->size()) 	return NULL;
-	
-  return pelement;
-}
-
-void RDBMaterialManager::addMaterial(const std::string & /*space*/, GeoMaterial *material) {
-
-  MsgStream log(Athena::getMessageSvc(), "GeoModelSvc::RDBMaterialManager"); 
-  if(log.level()==MSG::VERBOSE)
-    log << MSG::VERBOSE << " ***** RDBMaterialManager::addMaterial() "<<endmsg;
-	
-  std::string key = std::string(material->getName());
-  // Check whether we already have materials with the same space::name defined
-  if(m_materialMap.find(key)!=m_materialMap.end())
-    log << MSG::WARNING << " Attempt to redefine material " << key << "!. The existing instance is kept. Please choose another name for new material" << endmsg;
-  else {
-    material->lock();             
-    material->ref();
-    m_materialMap[key]=material;
-  }
-}
-
 void RDBMaterialManager::addMaterial(const std::string & /*space*/, GeoMaterial *material) const {
 	
   MsgStream log(Athena::getMessageSvc(), "GeoModelSvc::RDBMaterialManager"); 
@@ -1125,21 +743,6 @@ std::ostream &  RDBMaterialManager::printAll(std::ostream & o) const
   return o;
 }
 
-void RDBMaterialManager::buildSpecialMaterials()
-{
-  // Create special materials
-  GeoElement* ethElement = new GeoElement("Ether","ET",500.0,0.0);
-  ethElement->ref();
-  m_elementVector.push_back(ethElement);
-  GeoMaterial* ether = new GeoMaterial("special::Ether",0.0);	
-  ether->add(ethElement,1.);
-  addMaterial("special",ether);
-  // "Alternative" assembly material
-  GeoMaterial* hu = new GeoMaterial("special::HyperUranium",0.0);	
-  hu->add(ethElement,1.);
-  addMaterial("special",hu);
-}
-
 void RDBMaterialManager::buildSpecialMaterials() const
 {
   // Create special materials
diff --git a/DetectorDescription/GeoModel/GeoModelSvc/src/RDBMaterialManager.h b/DetectorDescription/GeoModel/GeoModelSvc/src/RDBMaterialManager.h
index 1e0e4d72127c6362d8824e5e423ea24ed9cd7ef7..7bef78be71f80ad9dffbae302a7da435f6b46b4c 100755
--- a/DetectorDescription/GeoModel/GeoModelSvc/src/RDBMaterialManager.h
+++ b/DetectorDescription/GeoModel/GeoModelSvc/src/RDBMaterialManager.h
@@ -1,9 +1,10 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
-#ifndef _RDBMATERIALMANAGER_H_
-#define _RDBMATERIALMANAGER_H_
+#ifndef GEOMODELSVC_RDBMATERIALMANAGER_H
+#define GEOMODELSVC_RDBMATERIALMANAGER_H
+
 //---------------------------------------------------------//
 //                                                         //
 // class RDBMaterialManager  This is a material manager   //
@@ -23,8 +24,7 @@
 class GeoMaterial;
 class ISvcLocator;
 
-
-class RDBMaterialManager: public StoredMaterialManager {
+class RDBMaterialManager final : public StoredMaterialManager {
 
  public:
 
@@ -35,45 +35,34 @@ class RDBMaterialManager: public StoredMaterialManager {
   virtual ~RDBMaterialManager();
 
   // Query the material:
-  virtual       GeoMaterial *getMaterial(const std::string &name) ;
-  virtual const GeoMaterial *getMaterial(const std::string &name) const;
+  virtual const GeoMaterial *getMaterial(const std::string &name) const override;
  
-
   // Query the elements:
-  virtual const GeoElement *getElement(const std::string & name) const;
-  virtual       GeoElement *getElement(const std::string & name);
+  virtual const GeoElement *getElement(const std::string & name) const override;
 
   // Query the elements (by atomic number):
-  virtual const GeoElement *getElement(unsigned int atomicNumber) const;
-  virtual       GeoElement *getElement(unsigned int atomicNumber);
+  virtual const GeoElement *getElement(unsigned int atomicNumber) const override;
 
   // Add new material
-  virtual void addMaterial(const std::string& space, GeoMaterial* material);
-  virtual void addMaterial(const std::string& space, GeoMaterial* material) const;
+  virtual void addMaterial(const std::string& space, GeoMaterial* material) const override;
 
-  virtual StoredMaterialManager::MaterialMapIterator begin() const;
-  virtual StoredMaterialManager::MaterialMapIterator end() const;
+  virtual StoredMaterialManager::MaterialMapIterator begin() const override;
+  virtual StoredMaterialManager::MaterialMapIterator end() const override;
 
   // Number of materials in the manager
-  virtual size_t size();
+  virtual size_t size() override;
 
-  virtual std::ostream & printAll(std::ostream & o=std::cout) const;
+  virtual std::ostream & printAll(std::ostream & o=std::cout) const override;
 
  private:
   static bool s_specialMaterials;
 
   StatusCode readMaterialsFromDB(ISvcLocator* pSvcLocator);
 
-  void buildSpecialMaterials();
   void buildSpecialMaterials() const;
 
-  GeoElement *searchElementVector (const std::string & name);
   GeoElement *searchElementVector (const std::string & name) const;
-  
-  GeoElement *searchElementVector (const unsigned int atomicNumber);
   GeoElement *searchElementVector (const unsigned int atomicNumber) const;
-  
-  GeoMaterial *searchMaterialMap (const std::string & name);
   GeoMaterial *searchMaterialMap (const std::string & name) const;
   
   // For DataBase connection and Query
diff --git a/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelFactory.cxx b/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelFactory.cxx
index 682fd3512575b1bda215d95f2f1ebfed1ab7d60a..2369c9555e40c5692bea1c2a507d8fbdf86f53e5 100755
--- a/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelFactory.cxx
+++ b/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelFactory.cxx
@@ -3,7 +3,6 @@
 */
 
 #include "AFP_GeoModelFactory.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelKernel/GeoMaterial.h"
 #include "GeoModelKernel/GeoBox.h"
 #include "GeoModelKernel/GeoLogVol.h"  
diff --git a/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelHP.cxx b/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelHP.cxx
index 8ca2d8b4e90ab0b577a77c4a21ab132dc5e4657e..c14f19eeec92798da2925efcd461c7054fb31458 100644
--- a/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelHP.cxx
+++ b/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelHP.cxx
@@ -3,7 +3,6 @@
 */
 
 #include "AFP_GeoModelFactory.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelKernel/GeoMaterial.h"
 #include "GeoModelKernel/GeoBox.h"
 #include "GeoModelKernel/GeoTube.h"
diff --git a/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelRP.cxx b/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelRP.cxx
index eec0dff0d6acdaabb29b3ea14616a0061a10848e..e531e03b94f3fbdb273941fad80cf2e8aa8c2f3b 100644
--- a/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelRP.cxx
+++ b/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelRP.cxx
@@ -3,7 +3,6 @@
 */
 
 #include "AFP_GeoModelFactory.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelKernel/GeoMaterial.h"
 #include "GeoModelKernel/GeoBox.h"
 #include "GeoModelKernel/GeoTube.h"
diff --git a/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelSID.cxx b/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelSID.cxx
index 46fd4fbdc5cf58a69b75b5a8802fc32bc753e297..624092cf6dac48f886de69b1c5cd2c27a45cfa53 100644
--- a/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelSID.cxx
+++ b/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelSID.cxx
@@ -3,7 +3,6 @@
 */
 
 #include "AFP_GeoModelFactory.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelKernel/GeoMaterial.h"
 #include "GeoModelKernel/GeoBox.h"
 #include "GeoModelKernel/GeoTube.h"
diff --git a/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelTD.cxx b/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelTD.cxx
index 974d5d13f8958fe15eec6bd3f00890e2bd2fd40e..f3bb94f04e39925f23f455b79b744f2b2d96377a 100644
--- a/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelTD.cxx
+++ b/ForwardDetectors/AFP/AFP_GeoModel/src/AFP_GeoModelTD.cxx
@@ -4,7 +4,6 @@
 
 
 #include "AFP_GeoModelFactory.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelKernel/GeoMaterial.h"
 #include "GeoModelKernel/GeoBox.h"
 #include "GeoModelKernel/GeoTube.h"
diff --git a/ForwardDetectors/ALFA/ALFA_GeoModel/src/ALFA_DetectorFactory.cxx b/ForwardDetectors/ALFA/ALFA_GeoModel/src/ALFA_DetectorFactory.cxx
index e2c6f1d75ef3a32d3fa1c16961a65a30228ec912..c87041ffd4fcf0345d1a8e4dc807d182453b6734 100755
--- a/ForwardDetectors/ALFA/ALFA_GeoModel/src/ALFA_DetectorFactory.cxx
+++ b/ForwardDetectors/ALFA/ALFA_GeoModel/src/ALFA_DetectorFactory.cxx
@@ -1,8 +1,7 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
-//#include "GeoModelSvc/AbsMaterialManager.h"
 #include "GeoModelKernel/GeoMaterial.h"  
 
 #include "GeoModelKernel/GeoBox.h"
@@ -21,6 +20,7 @@
 #include "GeoModelKernel/GeoTransform.h"
 #include "GeoModelUtilities/StoredAlignX.h"
 #include "GeoModelUtilities/StoredPhysVol.h"
+#include "GeoModelInterfaces/StoredMaterialManager.h"
 
 #include "GeoPrimitives/CLHEPtoEigenConverter.h"
 
@@ -710,10 +710,6 @@ void ALFA_DetectorFactory::create(GeoPhysVol* pWorld)
 		LogStream<<MSG::INFO<<"Could not load material manager"<<endmsg;
 		return;
 	}
-	else{
-		//ostream* outmat=new ofstream("materials.txt",ios_base::out);
-		//pMaterialManager->printAll(cout);
-	}
 
 	//define materials
 	DefineMaterials (pMaterialManager);
diff --git a/ForwardDetectors/ALFA/ALFA_GeoModel/src/ALFA_DetectorFactory.h b/ForwardDetectors/ALFA/ALFA_GeoModel/src/ALFA_DetectorFactory.h
index bc7656d2078587215c3603850b5eb9ea96b90fd6..f803b446d4c4251f04a6c41df906ca95fa3ba18c 100755
--- a/ForwardDetectors/ALFA/ALFA_GeoModel/src/ALFA_DetectorFactory.h
+++ b/ForwardDetectors/ALFA/ALFA_GeoModel/src/ALFA_DetectorFactory.h
@@ -1,26 +1,23 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
-#ifndef ALFA_DetectorFactory_h
-#define ALFA_DetectorFactory_h 1
+#ifndef ALFAGEOMODEL_ALFADETECTORFACTORY_H
+#define ALFAGEOMODEL_ALFADETECTORFACTORY_H
 
 #include "ALFA_Geometry/ALFA_constants.h"
 #include "ALFA_Geometry/ALFA_GeometryReader.h"
-//#include "ALFA_GeoModel/ALFA_DetectorTool.h"
 #include "GeoModelKernel/GeoAlignableTransform.h"
 
 #include "GeoModelKernel/GeoVDetectorFactory.h"
 #include "ALFA_GeoModel/ALFA_DetectorManager.h"
 #include "RDBAccessSvc/IRDBAccessSvc.h"
-//#include "GeoModelSvc/StoredMaterialManager.h"
-#include "GeoModelInterfaces/StoredMaterialManager.h"
 
 #include <string>
 #include <vector>
 
 class StoreGateSvc;
-class AbsMaterialManager;
+class StoredMaterialManager;
 class IRDBRecordset;
 class GeoShape;
 class GeoPhysVol;
diff --git a/ForwardDetectors/LUCID/LUCID_GeoModel/src/LUCID_DetectorFactory.cxx b/ForwardDetectors/LUCID/LUCID_GeoModel/src/LUCID_DetectorFactory.cxx
index 45ce8be3bb3e728a971b3570ac289d07c8173b97..4f8bccb20708bd1a393954a0e07febbb25be0a30 100755
--- a/ForwardDetectors/LUCID/LUCID_GeoModel/src/LUCID_DetectorFactory.cxx
+++ b/ForwardDetectors/LUCID/LUCID_GeoModel/src/LUCID_DetectorFactory.cxx
@@ -1,8 +1,7 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelKernel/GeoMaterial.h"
 #include "GeoModelKernel/GeoElement.h"
@@ -72,9 +71,7 @@ void LUCID_DetectorFactory::create(GeoPhysVol* world) {
 
   m_detectorManager = new LUCID_DetectorManager();
   
-  const StoredMaterialManager* materialManagerTmp = 0;
-  if (StatusCode::SUCCESS != m_detectorStore->retrieve(materialManagerTmp, std::string("MATERIALS"))) return; 
-  m_materialManager = materialManagerTmp;
+  if (StatusCode::SUCCESS != m_detectorStore->retrieve(m_materialManager, std::string("MATERIALS"))) return; 
   
   buildMaterials(); 
   calcTubeParams();
diff --git a/ForwardDetectors/LUCID/LUCID_GeoModel/src/LUCID_DetectorFactory.h b/ForwardDetectors/LUCID/LUCID_GeoModel/src/LUCID_DetectorFactory.h
index faf4c9decc56134a8330dd733e3b1643af58729c..fc37ab98c13d89e8209342658ab1093feff8ac90 100755
--- a/ForwardDetectors/LUCID/LUCID_GeoModel/src/LUCID_DetectorFactory.h
+++ b/ForwardDetectors/LUCID/LUCID_GeoModel/src/LUCID_DetectorFactory.h
@@ -1,9 +1,9 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
-#ifndef LUCID_DetectorFactory_h
-#define LUCID_DetectorFactory_h 1
+#ifndef LUCIDGEOMODEL_LUCIDDETECTORFACTORY_H
+#define LUCIDGEOMODEL_LUCIDDETECTORFACTORY_H
 
 #include "GeoModelKernel/GeoVDetectorFactory.h"
 #include "GeoModelUtilities/GeoExtendedMaterial.h"
@@ -13,7 +13,7 @@
 #include "LUCID_GeoModel/LUCID_Constants.h"
 
 class StoreGateSvc;
-class AbsMaterialManager;
+class StoredMaterialManager;
 class GeoShape;
 class GeoPhysVol;
 class GeoFullPhysVol;
@@ -46,11 +46,11 @@ class LUCID_DetectorFactory : public GeoVDetectorFactory {
   const LUCID_DetectorFactory& operator=(const LUCID_DetectorFactory &right);
   LUCID_DetectorFactory(const LUCID_DetectorFactory &right);
   
-  LUCID_DetectorManager*    m_detectorManager;   
-  const AbsMaterialManager* m_materialManager;
-  StoreGateSvc*             m_detectorStore;
-  IRDBAccessSvc*            m_access;
-  LUCID_RDBAccess*          m_lp;
+  LUCID_DetectorManager*       m_detectorManager;   
+  const StoredMaterialManager* m_materialManager;
+  StoreGateSvc*                m_detectorStore;
+  IRDBAccessSvc*               m_access;
+  LUCID_RDBAccess*             m_lp;
 
   const GeoMaterial*        m_air;
   const GeoMaterial*        m_alu;
diff --git a/ForwardDetectors/ZDC/ZDC_GeoM/src/ZDC_DetFactory.cxx b/ForwardDetectors/ZDC/ZDC_GeoM/src/ZDC_DetFactory.cxx
index ad61d075284779fcc25a2659591cc2f35a0351a3..1adc77e9e1cb78c128d7def9473d37b80e5cd6e2 100644
--- a/ForwardDetectors/ZDC/ZDC_GeoM/src/ZDC_DetFactory.cxx
+++ b/ForwardDetectors/ZDC/ZDC_GeoM/src/ZDC_DetFactory.cxx
@@ -4,7 +4,6 @@
 
 #include "ZDC_DetFactory.h"
 
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelKernel/GeoMaterial.h"  
 #include "GeoModelKernel/GeoElement.h"  
 #include "GeoModelKernel/GeoBox.h"  
diff --git a/InnerDetector/InDetDetDescr/BCM_GeoModel/BCM_GeoModel/BCM_Module.h b/InnerDetector/InDetDetDescr/BCM_GeoModel/BCM_GeoModel/BCM_Module.h
index 4bd91c747b4ca5a30f7c794a653a6dfcb64b65a7..e8cbeb920c7a5fe7318341688dae6837b1bcdb2c 100755
--- a/InnerDetector/InDetDetDescr/BCM_GeoModel/BCM_GeoModel/BCM_Module.h
+++ b/InnerDetector/InDetDetDescr/BCM_GeoModel/BCM_GeoModel/BCM_Module.h
@@ -5,15 +5,15 @@
 ///////////////////////////////////////////////////////////////////
 // BCM_Module.h, (c) ATLAS Detector software
 ///////////////////////////////////////////////////////////////////
-#ifndef BCMMODULE_H
-#define BCMMODULE_H
+#ifndef BCMGEOMODEL_BCMMODULE_H
+#define BCMGEOMODEL_BCMMODULE_H
 
 #include "BCM_GeoModel/BCM_Wall.h"
 #include "BCM_GeoModel/BCM_ModuleParameters.h"
 #include "GaudiKernel/MsgStream.h"
 #include <iostream>
 
-class AbsMaterialManager;
+class StoredMaterialManager;
 
   /** @class BCM_Module 
 
@@ -24,7 +24,7 @@ class AbsMaterialManager;
 class BCM_Module
 {
  public:
-  GeoPhysVol* Build(const AbsMaterialManager* mat_mgr, const BCM_ModuleParameters* parameters, MsgStream* msg);
+  GeoPhysVol* Build(const StoredMaterialManager* mat_mgr, const BCM_ModuleParameters* parameters, MsgStream* msg);
 };
 
 #endif
diff --git a/InnerDetector/InDetDetDescr/BCM_GeoModel/BCM_GeoModel/BCM_Wall.h b/InnerDetector/InDetDetDescr/BCM_GeoModel/BCM_GeoModel/BCM_Wall.h
index af4b261c35c5a1611ddde4c31decc66912ea539c..c0321489a790920507f732966691d45c7136465a 100755
--- a/InnerDetector/InDetDetDescr/BCM_GeoModel/BCM_GeoModel/BCM_Wall.h
+++ b/InnerDetector/InDetDetDescr/BCM_GeoModel/BCM_GeoModel/BCM_Wall.h
@@ -1,17 +1,17 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
 ///////////////////////////////////////////////////////////////////
 // BCM_Wall.h, (c) ATLAS Detector software
 ///////////////////////////////////////////////////////////////////
-#ifndef BCMWALL_H
-#define BCMWALL_H
+#ifndef BCMGEOMODEL_BCMWALL_H
+#define BCMGEOMODEL_BCMWALL_H
 
 #include "GeoModelKernel/GeoMaterial.h"
 #include "GeoModelKernel/GeoPhysVol.h"
 
-class AbsMaterialManager;
+class StoredMaterialManager;
 
   /** @class BCM_Wall
 
@@ -23,8 +23,8 @@ class BCM_Wall
 {
  public:
   GeoPhysVol* Build(double halfX, double halfY, double thick, std::string logname, const GeoMaterial* material);
-  GeoPhysVol* Build(double halfX, double halfY, double thick_one, double thick_two, const GeoMaterial* material_one, const GeoMaterial* material_two, const AbsMaterialManager* mat_mgr);
-  GeoPhysVol* Build(double halfX, double halfY, double thick_one, double thick_two, double thick_three, const GeoMaterial* material_one, const GeoMaterial* material_two, const GeoMaterial* material_three, const AbsMaterialManager* mat_mgr);
+  GeoPhysVol* Build(double halfX, double halfY, double thick_one, double thick_two, const GeoMaterial* material_one, const GeoMaterial* material_two, const StoredMaterialManager* mat_mgr);
+  GeoPhysVol* Build(double halfX, double halfY, double thick_one, double thick_two, double thick_three, const GeoMaterial* material_one, const GeoMaterial* material_two, const GeoMaterial* material_three, const StoredMaterialManager* mat_mgr);
 };
 
 #endif
diff --git a/InnerDetector/InDetDetDescr/BCM_GeoModel/src/BCM_Builder.cxx b/InnerDetector/InDetDetDescr/BCM_GeoModel/src/BCM_Builder.cxx
index 98be47f59a3f3851d4236e71b276609abd03128e..1e6f9c0b2e123ec46513807c425f0fc9af305ff1 100755
--- a/InnerDetector/InDetDetDescr/BCM_GeoModel/src/BCM_Builder.cxx
+++ b/InnerDetector/InDetDetDescr/BCM_GeoModel/src/BCM_Builder.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "BCM_GeoModel/BCM_Builder.h"
@@ -12,7 +12,6 @@
 #include "GeoModelKernel/GeoIdentifierTag.h"
 
 #include "GeoModelInterfaces/StoredMaterialManager.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelUtilities/DecodeVersionKey.h"
 
 #include "RDBAccessSvc/IRDBAccessSvc.h"
@@ -103,9 +102,9 @@ StatusCode InDetDD::BCM_Builder::build(GeoVPhysVol* pv)
 //  ATH_MSG_INFO("BCMBuilder building...");  //commented out by D.Dobos on request by M.Elsing
   
   const StoredMaterialManager * materialManager;
-  const AbsMaterialManager * mat_mgr = 0;
-  if (StatusCode::SUCCESS == detStore()->retrieve(materialManager, std::string("MATERIALS"))) {
-    mat_mgr = materialManager;
+  if (StatusCode::SUCCESS != detStore()->retrieve(materialManager, std::string("MATERIALS"))) {
+    ATH_MSG_ERROR("Failed to retrieve Material Manager");
+    return StatusCode::FAILURE;
   }
 
   //create geometry manager
@@ -248,8 +247,8 @@ StatusCode InDetDD::BCM_Builder::build(GeoVPhysVol* pv)
       
       GeoNameTag* tag = new GeoNameTag("BCM Module"); 
       tag->ref();
-      if (mat_mgr){
-        GeoVPhysVol* bcmModPhys = bcm.Build(mat_mgr, parameters, (msgLvl(MSG::INFO) ? &msg(MSG::INFO) : NULL));
+      if (materialManager){
+        GeoVPhysVol* bcmModPhys = bcm.Build(materialManager, parameters, (msgLvl(MSG::INFO) ? &msg(MSG::INFO) : NULL));
         Phys->add(tag);
         Phys->add(new GeoIdentifierTag(k));
         Phys->add(xform);
diff --git a/InnerDetector/InDetDetDescr/BCM_GeoModel/src/BCM_Module.cxx b/InnerDetector/InDetDetDescr/BCM_GeoModel/src/BCM_Module.cxx
index b06e3b3ad9d816fff558cbca9d5e791ec0c558b5..4f87dc1acebb730cfa5eec5f635fd80e629fc469 100755
--- a/InnerDetector/InDetDetDescr/BCM_GeoModel/src/BCM_Module.cxx
+++ b/InnerDetector/InDetDetDescr/BCM_GeoModel/src/BCM_Module.cxx
@@ -4,7 +4,7 @@
 
 #include "BCM_GeoModel/BCM_Module.h"
 
-#include "GeoModelInterfaces/AbsMaterialManager.h"
+#include "GeoModelInterfaces/StoredMaterialManager.h"
 
 #include "GeoModelKernel/GeoBox.h"
 #include "GeoModelKernel/GeoLogVol.h"
@@ -15,7 +15,7 @@
 
 #include "GaudiKernel/SystemOfUnits.h"
 
-GeoPhysVol* BCM_Module::Build(const AbsMaterialManager* mat_mgr, const BCM_ModuleParameters* parameters, MsgStream* /*msg*/)
+GeoPhysVol* BCM_Module::Build(const StoredMaterialManager* mat_mgr, const BCM_ModuleParameters* parameters, MsgStream* /*msg*/)
 {
   //module outside dimensions
   
diff --git a/InnerDetector/InDetDetDescr/BCM_GeoModel/src/BCM_Wall.cxx b/InnerDetector/InDetDetDescr/BCM_GeoModel/src/BCM_Wall.cxx
index c9cdb3954e63c7e3e902b1620ad2df25373cdbb8..1d54f83aeac178bd884362a1345adef8aa2c977a 100755
--- a/InnerDetector/InDetDetDescr/BCM_GeoModel/src/BCM_Wall.cxx
+++ b/InnerDetector/InDetDetDescr/BCM_GeoModel/src/BCM_Wall.cxx
@@ -4,7 +4,7 @@
 
 #include "BCM_GeoModel/BCM_Wall.h"
 
-#include "GeoModelInterfaces/AbsMaterialManager.h"
+#include "GeoModelInterfaces/StoredMaterialManager.h"
 
 #include "GeoModelKernel/GeoBox.h"
 #include "GeoModelKernel/GeoLogVol.h"
@@ -21,7 +21,7 @@ GeoPhysVol* BCM_Wall::Build(double halfX, double halfY, double thick, std::strin
   return bcmWallPhys;
 }
 
-GeoPhysVol* BCM_Wall::Build(double halfX, double halfY, double thick_one, double thick_two, const GeoMaterial* material_one, const GeoMaterial* material_two, const AbsMaterialManager* mat_mgr)
+GeoPhysVol* BCM_Wall::Build(double halfX, double halfY, double thick_one, double thick_two, const GeoMaterial* material_one, const GeoMaterial* material_two, const StoredMaterialManager* mat_mgr)
 {
   double wallthick = thick_one + thick_two;
   
@@ -56,7 +56,7 @@ GeoPhysVol* BCM_Wall::Build(double halfX, double halfY, double thick_one, double
   return bcmWallPhys;
 }
 
-GeoPhysVol* BCM_Wall::Build(double halfX, double halfY, double thick_one, double thick_two, double thick_three, const GeoMaterial* material_one, const GeoMaterial* material_two, const GeoMaterial* material_three, const AbsMaterialManager* mat_mgr)
+GeoPhysVol* BCM_Wall::Build(double halfX, double halfY, double thick_one, double thick_two, double thick_three, const GeoMaterial* material_one, const GeoMaterial* material_two, const GeoMaterial* material_three, const StoredMaterialManager* mat_mgr)
 {
   double wallthick = thick_one + thick_two + thick_three;
   
diff --git a/InnerDetector/InDetDetDescr/BLM_GeoModel/BLM_GeoModel/BLM_Module.h b/InnerDetector/InDetDetDescr/BLM_GeoModel/BLM_GeoModel/BLM_Module.h
index 8e74312227e49fe162f6f7f2fe6fb5aca73e0742..8fb2b053adf6a52c126929a04790a049fc4e3d6f 100755
--- a/InnerDetector/InDetDetDescr/BLM_GeoModel/BLM_GeoModel/BLM_Module.h
+++ b/InnerDetector/InDetDetDescr/BLM_GeoModel/BLM_GeoModel/BLM_Module.h
@@ -1,19 +1,19 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
 ///////////////////////////////////////////////////////////////////
 // BLM_Module.h, (c) ATLAS Detector software
 ///////////////////////////////////////////////////////////////////
-#ifndef BLMMODULE_H
-#define BLMMODULE_H
+#ifndef BLMGEOMODEL_BLMMODULE_H
+#define BLMGEOMODEL_BLMMODULE_H
 
 #include "BLM_GeoModel/BLM_Wall.h"
 #include "BLM_GeoModel/BLM_ModuleParameters.h"
 #include "GaudiKernel/MsgStream.h"
 #include <iostream>
 
-class AbsMaterialManager;
+class StoredMaterialManager;
 
   /** @class BLM_Module
 
@@ -24,7 +24,7 @@ class AbsMaterialManager;
 class BLM_Module
 {
  public:
-  GeoPhysVol* Build(const AbsMaterialManager* mat_mgr, const BLM_ModuleParameters* parameters, MsgStream* msg);
+  GeoPhysVol* Build(const StoredMaterialManager* mat_mgr, const BLM_ModuleParameters* parameters, MsgStream* msg);
 
 };
 
diff --git a/InnerDetector/InDetDetDescr/BLM_GeoModel/src/BLM_Builder.cxx b/InnerDetector/InDetDetDescr/BLM_GeoModel/src/BLM_Builder.cxx
index 96c4d38c10398491ebdf896a3d68ac2e139fe628..2b5eb1226bdaedd62d9cf1c578029aa7f2007a6c 100644
--- a/InnerDetector/InDetDetDescr/BLM_GeoModel/src/BLM_Builder.cxx
+++ b/InnerDetector/InDetDetDescr/BLM_GeoModel/src/BLM_Builder.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "BLM_GeoModel/BLM_Builder.h"
@@ -8,7 +8,6 @@
 
 #include "GeoModelUtilities/DecodeVersionKey.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 
 #include "GeoModelKernel/GeoNameTag.h"
 #include "GeoModelKernel/GeoIdentifierTag.h"
@@ -112,9 +111,9 @@ StatusCode InDetDD::BLM_Builder::build(GeoVPhysVol* pv)
 //  ATH_MSG_INFO("BLMBuilder building..."); //commented out by D.Dobos on request by M.Elsing
  
   const StoredMaterialManager * materialManager;
-  const AbsMaterialManager * mat_mgr = 0;
-  if (StatusCode::SUCCESS == detStore()->retrieve(materialManager, std::string("MATERIALS"))) {
-    mat_mgr = materialManager;
+  if (StatusCode::SUCCESS != detStore()->retrieve(materialManager, std::string("MATERIALS"))) {
+    ATH_MSG_ERROR("Failed to retrieve Material Manager");
+    return StatusCode::FAILURE;
   }
 
   //create geometry manager
@@ -253,8 +252,8 @@ StatusCode InDetDD::BLM_Builder::build(GeoVPhysVol* pv)
 
       GeoNameTag* tag = new GeoNameTag("BLM Module");
       tag->ref();
-      if (mat_mgr){
-        GeoVPhysVol* blmModPhys = blm.Build(mat_mgr, parameters, (msgLvl(MSG::INFO) ? &msg(MSG::INFO) : NULL));
+      if (materialManager){
+        GeoVPhysVol* blmModPhys = blm.Build(materialManager, parameters, (msgLvl(MSG::INFO) ? &msg(MSG::INFO) : NULL));
         Phys->add(tag);
         Phys->add(new GeoIdentifierTag(k));
         Phys->add(xform);
diff --git a/InnerDetector/InDetDetDescr/BLM_GeoModel/src/BLM_Module.cxx b/InnerDetector/InDetDetDescr/BLM_GeoModel/src/BLM_Module.cxx
index c16ec7a1be8f433a425a91a90bee7ece2db03f34..e25113ccb5b9676a58f3f365fea57641cd64e3ce 100755
--- a/InnerDetector/InDetDetDescr/BLM_GeoModel/src/BLM_Module.cxx
+++ b/InnerDetector/InDetDetDescr/BLM_GeoModel/src/BLM_Module.cxx
@@ -4,7 +4,7 @@
 
 #include "BLM_GeoModel/BLM_Module.h"
 
-#include "GeoModelInterfaces/AbsMaterialManager.h"
+#include "GeoModelInterfaces/StoredMaterialManager.h"
 
 #include "GeoModelKernel/GeoBox.h"
 #include "GeoModelKernel/GeoLogVol.h"
@@ -15,7 +15,7 @@
 #include "GeoModelKernel/Units.h"
 #include "GaudiKernel/SystemOfUnits.h"
 
-GeoPhysVol* BLM_Module::Build(const AbsMaterialManager* mat_mgr, const BLM_ModuleParameters* parameters, MsgStream* msg)
+GeoPhysVol* BLM_Module::Build(const StoredMaterialManager* mat_mgr, const BLM_ModuleParameters* parameters, MsgStream* msg)
 {
   double CuThick = 0.015;
   double LamelThick15 = 1;
diff --git a/InnerDetector/InDetDetDescr/InDetGeoModelUtils/InDetGeoModelUtils/DistortedMaterialManager.h b/InnerDetector/InDetDetDescr/InDetGeoModelUtils/InDetGeoModelUtils/DistortedMaterialManager.h
index 8be4c86094d3aca22696d7a2664ca9d24423776f..cc6a8ec87bfefad634ea41780f37fd40417ef075 100755
--- a/InnerDetector/InDetDetDescr/InDetGeoModelUtils/InDetGeoModelUtils/DistortedMaterialManager.h
+++ b/InnerDetector/InDetDetDescr/InDetGeoModelUtils/InDetGeoModelUtils/DistortedMaterialManager.h
@@ -1,11 +1,11 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
-#ifndef InDetGeoModelUtils_DistortedMaterialManager_h
-#define InDetGeoModelUtils_DistortedMaterialManager_h
+#ifndef INDETGEOMODELUTILS_DISTORTEDMATERIALMANAGER_H
+#define INDETGEOMODELUTILS_DISTORTEDMATERIALMANAGER_H
 
-class AbsMaterialManager;
+class StoredMaterialManager;
 #include "RDBAccessSvc/IRDBAccessSvc.h"
 
 namespace InDetDD {
@@ -15,10 +15,10 @@ class DistortedMaterialManager
 public:
   DistortedMaterialManager();  
   IRDBRecordset_ptr  extraMaterialTable() const {return  m_xMatTable;}
-  const AbsMaterialManager * materialManager() const {return  m_materialManager;}
+  const StoredMaterialManager * materialManager() const {return  m_materialManager;}
 
 private:
-  const AbsMaterialManager * m_materialManager;
+  const StoredMaterialManager * m_materialManager;
   IRDBRecordset_ptr  m_xMatTable;
 };
 
diff --git a/InnerDetector/InDetDetDescr/InDetGeoModelUtils/InDetGeoModelUtils/ExtraMaterial.h b/InnerDetector/InDetDetDescr/InDetGeoModelUtils/InDetGeoModelUtils/ExtraMaterial.h
index 8550097760ea09fff3868b33e86734791da3af8e..8a7d6983feb48ce5ab41b3c3fd43517a7f4c4196 100755
--- a/InnerDetector/InDetDetDescr/InDetGeoModelUtils/InDetGeoModelUtils/ExtraMaterial.h
+++ b/InnerDetector/InDetDetDescr/InDetGeoModelUtils/InDetGeoModelUtils/ExtraMaterial.h
@@ -1,9 +1,9 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
-#ifndef InDetGeoModelUtils_ExtraMaterial
-#define InDetGeoModelUtils_ExtraMaterial
+#ifndef INDETGEOMODELUTILS_EXTRAMATERIAL
+#define INDETGEOMODELUTILS_EXTRAMATERIAL
 
 #include <cmath>
 #include <string>
@@ -12,7 +12,7 @@
 
 class GeoPhysVol;
 class GeoFullPhysVol;
-class AbsMaterialManager;
+class StoredMaterialManager;
 
 namespace InDetDD {
 
@@ -21,7 +21,7 @@ class DistortedMaterialManager;
 class ExtraMaterial
 {
 public:
-  ExtraMaterial(IRDBRecordset_ptr xMatTable, const AbsMaterialManager * matManager);
+  ExtraMaterial(IRDBRecordset_ptr xMatTable, const StoredMaterialManager * matManager);
   ExtraMaterial(const InDetDD::DistortedMaterialManager * manager);
   void add(GeoPhysVol * parent, const std::string & parentName, double zPos = 0);
   void add(GeoFullPhysVol * parent, const std::string & parentName, double zPos = 0);
@@ -29,7 +29,7 @@ public:
 private:
   void add(GeoPhysVol * parent, GeoFullPhysVol * fullparent, const std::string & parentName, double zPos);
   IRDBRecordset_ptr  m_xMatTable;
-  const AbsMaterialManager * m_matManager;
+  const StoredMaterialManager * m_matManager;
 };
 
 } // end namespace
diff --git a/InnerDetector/InDetDetDescr/InDetGeoModelUtils/InDetGeoModelUtils/InDetMaterialManager.h b/InnerDetector/InDetDetDescr/InDetGeoModelUtils/InDetGeoModelUtils/InDetMaterialManager.h
index 701107f6f543632f9c3cc47e1746be3689670dc6..33bd2ada2b50bf52763c0975a929c8c9cc6b5393 100755
--- a/InnerDetector/InDetDetDescr/InDetGeoModelUtils/InDetGeoModelUtils/InDetMaterialManager.h
+++ b/InnerDetector/InDetDetDescr/InDetGeoModelUtils/InDetGeoModelUtils/InDetMaterialManager.h
@@ -13,7 +13,7 @@
 
 class GeoMaterial;
 class GeoElement;
-class AbsMaterialManager;
+class StoredMaterialManager;
 class StoreGateSvc;
 class IGeometryDBSvc;
 
@@ -186,7 +186,7 @@ private:
   };
   
   
-  const AbsMaterialManager * retrieveManager(const StoreGateSvc* detStore);
+  const StoredMaterialManager * retrieveManager(const StoreGateSvc* detStore);
   const GeoMaterial* getAdditionalMaterial(const std::string & materialName) const; 
   bool compareDensity(double d1, double d2) const;
   void addWeightTableOld(IRDBRecordset_ptr weightTable, const std::string & space);
@@ -217,7 +217,7 @@ private:
   void createMaterial(const MaterialDef & material);
   double getExtraScaleFactor(const std::string & materialName);
 
-  const AbsMaterialManager *m_materialManager;
+  const StoredMaterialManager *m_materialManager;
   std::string m_managerName;
 
   typedef std::map<std::string, const GeoMaterial *> MaterialStore;
diff --git a/InnerDetector/InDetDetDescr/InDetGeoModelUtils/src/ExtraMaterial.cxx b/InnerDetector/InDetDetDescr/InDetGeoModelUtils/src/ExtraMaterial.cxx
index 9814c6b2f93a2993ddfa2e1c2a1c894c508cf88f..e1bcdf5209690e6f7acbca201a7ee8880e0e07d4 100755
--- a/InnerDetector/InDetDetDescr/InDetGeoModelUtils/src/ExtraMaterial.cxx
+++ b/InnerDetector/InDetDetDescr/InDetGeoModelUtils/src/ExtraMaterial.cxx
@@ -6,7 +6,6 @@
 #include "InDetGeoModelUtils/GenericTubeMaker.h"
 #include "InDetGeoModelUtils/TubeVolData.h"
 #include "InDetGeoModelUtils/DistortedMaterialManager.h"
-//#include "InDetGeoModelUtils/InDetMaterialManager.h"
 #include "RDBAccessSvc/IRDBRecordset.h"
 #include "RDBAccessSvc/IRDBRecord.h"
 #include "GeoPrimitives/GeoPrimitives.h"
@@ -18,14 +17,14 @@
 #include "GeoModelKernel/GeoLogVol.h"
 #include "GeoModelKernel/GeoMaterial.h"
 
-#include "GeoModelInterfaces/AbsMaterialManager.h"
+#include "GeoModelInterfaces/StoredMaterialManager.h"
 
 #include <string>
 #include <sstream>
 #include <iostream>
 
 namespace InDetDD {
-  ExtraMaterial::ExtraMaterial(IRDBRecordset_ptr xMatTable, const AbsMaterialManager* matManager)
+  ExtraMaterial::ExtraMaterial(IRDBRecordset_ptr xMatTable, const StoredMaterialManager* matManager)
     : m_xMatTable(xMatTable),
     m_matManager(matManager)
   {}
diff --git a/InnerDetector/InDetDetDescr/InDetGeoModelUtils/src/InDetMaterialManager.cxx b/InnerDetector/InDetDetDescr/InDetGeoModelUtils/src/InDetMaterialManager.cxx
index 71394b1ec6e4a7fcf64433de358997c85601429d..286b443389e0ad18ae365fe30f2c71db58124a19 100755
--- a/InnerDetector/InDetDetDescr/InDetGeoModelUtils/src/InDetMaterialManager.cxx
+++ b/InnerDetector/InDetDetDescr/InDetGeoModelUtils/src/InDetMaterialManager.cxx
@@ -4,7 +4,6 @@
 
 #include "InDetGeoModelUtils/InDetMaterialManager.h"
 #include "InDetGeoModelUtils/InDetDDAthenaComps.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelKernel/GeoMaterial.h"
 #include "GeoModelKernel/GeoElement.h"
@@ -83,7 +82,7 @@ InDetMaterialManager::~InDetMaterialManager() {
   }
 }
 
-const AbsMaterialManager*
+const StoredMaterialManager*
 InDetMaterialManager::retrieveManager(const StoreGateSvc* detStore) {
   const StoredMaterialManager* theGeoMaterialManager = nullptr;
 
diff --git a/InnerDetector/InDetSimUtils/TRT_TR_Process/src/TRTTransitionRadiation.cxx b/InnerDetector/InDetSimUtils/TRT_TR_Process/src/TRTTransitionRadiation.cxx
index 3699ebc5889876d68b9185cb75a87b337ef3e7dc..8b76c6e907fabb71812791d98c025de883919880 100644
--- a/InnerDetector/InDetSimUtils/TRT_TR_Process/src/TRTTransitionRadiation.cxx
+++ b/InnerDetector/InDetSimUtils/TRT_TR_Process/src/TRTTransitionRadiation.cxx
@@ -14,7 +14,6 @@
 // Athena includes
 #include "CLHEP/Random/RandGaussZiggurat.h"
 #include "AthenaBaseComps/AthMsgStreamMacros.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"//Material Manager
 #include "GeoModelInterfaces/StoredMaterialManager.h"//Material Manager
 #include "GeoMaterial2G4/Geo2G4MaterialFactory.h" //Converting GeoMaterial -> G4Material
 #include "PathResolver/PathResolver.h"
@@ -112,12 +111,11 @@ void TRTTransitionRadiation::Initialize() {
     ATH_MSG_FATAL ( "Can not access Detector Store " );
     return;
   };
-  const StoredMaterialManager* sMaterialManager = nullptr;
-  if (StatusCode::SUCCESS != detStore->retrieve(sMaterialManager, std::string("MATERIALS"))) {
+  const StoredMaterialManager* materialManager = nullptr;
+  if (StatusCode::SUCCESS != detStore->retrieve(materialManager, std::string("MATERIALS"))) {
     ATH_MSG_FATAL ( "Could not retrieve material manager from Detector Store" );
     return;
   };
-  const AbsMaterialManager *materialManager = &*sMaterialManager;//TK: figure out why &* (overloaded * ?)
 
   Geo2G4MaterialFactory geo2g4_material_fact;//Note - this is a very lightweight class!
   G4Material *g4mat_Gas(geo2g4_material_fact.Build(materialManager->getMaterial("trt::CO2")));
diff --git a/LArCalorimeter/LArGeoModel/LArGeoBarrel/src/BarrelConstruction.cxx b/LArCalorimeter/LArGeoModel/LArGeoBarrel/src/BarrelConstruction.cxx
index 7d4c3146179ab5715d72d00c25b0d5a4f4f8aa95..3e8528b6574def568bf7a208286d3998f08df705 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoBarrel/src/BarrelConstruction.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoBarrel/src/BarrelConstruction.cxx
@@ -35,7 +35,6 @@
 #include "GeoModelKernel/GeoBox.h"
 #include "GeoModelKernel/GeoTrap.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelUtilities/StoredPhysVol.h"
 // For transforms:
diff --git a/LArCalorimeter/LArGeoModel/LArGeoBarrel/src/BarrelCryostatConstruction.cxx b/LArCalorimeter/LArGeoModel/LArGeoBarrel/src/BarrelCryostatConstruction.cxx
index 2ea800381bc51865aa36a4b099ad90705390e01d..51de94fa4827e46dae149e5f29cebfe2f91a35cf 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoBarrel/src/BarrelCryostatConstruction.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoBarrel/src/BarrelCryostatConstruction.cxx
@@ -34,7 +34,6 @@
 #include "GeoModelKernel/GeoSerialTransformer.h"
 #include "GeoModelInterfaces/IGeoModelSvc.h"
 #include "GeoModelUtilities/DecodeVersionKey.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelUtilities/StoredPhysVol.h"
 #include "GeoModelUtilities/StoredAlignX.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoBarrel/src/BarrelDMConstruction.cxx b/LArCalorimeter/LArGeoModel/LArGeoBarrel/src/BarrelDMConstruction.cxx
index 29e401fd547e271f6e881479fb1c99b40d3625f3..b8acf8c745c69602d89fc02cb95ca6247de225e0 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoBarrel/src/BarrelDMConstruction.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoBarrel/src/BarrelDMConstruction.cxx
@@ -32,7 +32,6 @@
 #include "GeoModelKernel/GeoShapeSubtraction.h"
 #include "GeoModelKernel/Units.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelInterfaces/IGeoModelSvc.h"
 #include "GeoModelUtilities/DecodeVersionKey.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoBarrel/src/BarrelPresamplerConstruction.cxx b/LArCalorimeter/LArGeoModel/LArGeoBarrel/src/BarrelPresamplerConstruction.cxx
index 06c574fc72603ea8f9958f5ddf994ac4b88224cd..a3e4deeeda5893e6bb43215a07f15eb185b9b85f 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoBarrel/src/BarrelPresamplerConstruction.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoBarrel/src/BarrelPresamplerConstruction.cxx
@@ -26,7 +26,6 @@
 #include "GeoModelKernel/GeoTrap.h"
 #include "GeoModelKernel/GeoTrd.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 
 // For transforms:
diff --git a/LArCalorimeter/LArGeoModel/LArGeoCode/LArGeoCode/LArMaterialManager.h b/LArCalorimeter/LArGeoModel/LArGeoCode/LArGeoCode/LArMaterialManager.h
index 5ff9e83f1524b0e135164e1d990b11fd5d48ff8c..b4955bc9dbf049c7ab4ed0f62b1c888620f1720c 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoCode/LArGeoCode/LArMaterialManager.h
+++ b/LArCalorimeter/LArGeoModel/LArGeoCode/LArGeoCode/LArMaterialManager.h
@@ -21,8 +21,7 @@
 //                                                          //
 // LArMaterialManager class switched to the new interface   //
 // of StoredMaterialManager.                                //
-// As of now it does need to be subclassed from             //
-// AbsMaterialManager and the only thing it has to do is    //
+// Te only thing it has to do now is                        //
 // to build LAr specific materials and store them into      //
 // central Stored Material manager                          //
 //                                                          //
diff --git a/LArCalorimeter/LArGeoModel/LArGeoCode/src/LArMaterialManager.cxx b/LArCalorimeter/LArGeoModel/LArGeoCode/src/LArMaterialManager.cxx
index ac251936358a518fd82475b053c3bc8bd3dd9dc5..7380b7d0dc80379d39a0723ed0226502f58f1e45 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoCode/src/LArMaterialManager.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoCode/src/LArMaterialManager.cxx
@@ -508,15 +508,15 @@ void LArMaterialManager::buildMaterials()
 
   // Materials for Barrel and Endcap Signal Feedthroughs
   {
-    GeoMaterial* myIron   = m_storedManager->getMaterial("std::Iron");
-    GeoMaterial* myCopper = m_storedManager->getMaterial("std::Copper");
-    GeoMaterial* myKapton = m_storedManager->getMaterial("std::Kapton");
-    GeoMaterial* myAlu    = m_storedManager->getMaterial("std::Aluminium");
-    GeoMaterial* myLAr    = m_storedManager->getMaterial("std::LiquidArgon");
-    GeoElement* O  = m_storedManager->getElement("Oxygen");
-    GeoElement* Na = m_storedManager->getElement("Potassium");
-    GeoElement* Si = m_storedManager->getElement("Silicon");
-    GeoElement* Ca = m_storedManager->getElement("Calcium");
+    const GeoMaterial* myIron   = m_storedManager->getMaterial("std::Iron");
+    const GeoMaterial* myCopper = m_storedManager->getMaterial("std::Copper");
+    const GeoMaterial* myKapton = m_storedManager->getMaterial("std::Kapton");
+    const GeoMaterial* myAlu    = m_storedManager->getMaterial("std::Aluminium");
+    const GeoMaterial* myLAr    = m_storedManager->getMaterial("std::LiquidArgon");
+    const GeoElement* O  = m_storedManager->getElement("Oxygen");
+    const GeoElement* Na = m_storedManager->getElement("Potassium");
+    const GeoElement* Si = m_storedManager->getElement("Silicon");
+    const GeoElement* Ca = m_storedManager->getElement("Calcium");
 
     GeoMaterial* myGlass = new GeoMaterial("LAr::PinCarrierGlas",2.40*Gaudi::Units::g/Gaudi::Units::cm3);
     myGlass->add(O ,0.459800);
diff --git a/LArCalorimeter/LArGeoModel/LArGeoEndcap/src/EMECSupportConstruction.cxx b/LArCalorimeter/LArGeoModel/LArGeoEndcap/src/EMECSupportConstruction.cxx
index 141b858d15c2d9022e380e06e61952027f1d9032..407143c2ce7da8c4e2d206c62fad96e1b32e3c87 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoEndcap/src/EMECSupportConstruction.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoEndcap/src/EMECSupportConstruction.cxx
@@ -73,7 +73,6 @@
 #include "GeoModelKernel/GeoIdentifierTag.h"
 #include "GeoModelKernel/GeoDefinitions.h"
 
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelInterfaces/IGeoModelSvc.h"
 #include "StoreGate/StoreGateSvc.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoEndcap/src/EndcapCryostatConstruction.cxx b/LArCalorimeter/LArGeoModel/LArGeoEndcap/src/EndcapCryostatConstruction.cxx
index df7728fca43acc5c3ae7abd0f04452eeb5bcd11f..4d82b7f0bf0b3c264a14153991a52f246db2b021 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoEndcap/src/EndcapCryostatConstruction.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoEndcap/src/EndcapCryostatConstruction.cxx
@@ -34,7 +34,6 @@
 #include "GeoModelKernel/GeoShapeSubtraction.h"
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelUtilities/StoredPhysVol.h"
 #include "GeoModelUtilities/GeoDBUtils.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoEndcap/src/EndcapPresamplerConstruction.cxx b/LArCalorimeter/LArGeoModel/LArGeoEndcap/src/EndcapPresamplerConstruction.cxx
index 2ca1d36710a0e5e4052edd739f07356fb13a929a..20efcce207efab2f85998bf6b20b443a1249650b 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoEndcap/src/EndcapPresamplerConstruction.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoEndcap/src/EndcapPresamplerConstruction.cxx
@@ -14,7 +14,6 @@
 #include "GeoModelKernel/GeoIdentifierTag.h"  
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelKernel/GeoShapeUnion.h"
 #include "GeoModelKernel/GeoShapeShift.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/ExcluderConstruction.cxx b/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/ExcluderConstruction.cxx
index c3b1585acc0d3f43a30ab206bf5c5507fe530849..e086f3288b939b1aceb604291c5413caa6392a59 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/ExcluderConstruction.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/ExcluderConstruction.cxx
@@ -26,7 +26,6 @@
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "GeoModelKernel/Units.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelKernel/GeoShapeUnion.h"
 #include "GeoModelKernel/GeoShapeShift.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/FrontBeamConstructionH62002.cxx b/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/FrontBeamConstructionH62002.cxx
index c1dcd455ee21422d9375b6b16502ee0d099aab7b..8208804a06736914088f57d0d11e8dc53385f67f 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/FrontBeamConstructionH62002.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/FrontBeamConstructionH62002.cxx
@@ -25,7 +25,6 @@
 #include "GeoModelKernel/GeoSerialDenominator.h"
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelKernel/GeoShapeUnion.h"
 #include "GeoModelKernel/GeoShapeShift.h" 
diff --git a/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/HECConstructionH62002.cxx b/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/HECConstructionH62002.cxx
index 71dabd2d398c52d99b5c97db6f92321fe349191a..631356827b8a165e22d346539c7f666cb1a462c8 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/HECConstructionH62002.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/HECConstructionH62002.cxx
@@ -4,7 +4,6 @@
 
 #include "HECConstructionH62002.h"
 
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelKernel/GeoMaterial.h"  
 #include "GeoModelKernel/GeoBox.h"  
 #include "GeoModelKernel/GeoPcon.h"  
diff --git a/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/LArDetectorFactoryH62002.cxx b/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/LArDetectorFactoryH62002.cxx
index 511d9307ffd29b603cdc2f9c53fb1307ce21a616..7033ed990505d47c155eebf106ec360661cc586e 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/LArDetectorFactoryH62002.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/LArDetectorFactoryH62002.cxx
@@ -10,7 +10,6 @@
 #include "LArGeoH6Cryostats/H6CryostatConstruction.h"
 #include "LArGeoH6Cryostats/WallsConstruction.h"
 
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelUtilities/StoredPhysVol.h"
 
diff --git a/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/TableConstructionH62002.cxx b/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/TableConstructionH62002.cxx
index 01a526d4a6e511c1b5103a06dfaeae00c31e4321..36e89b222a1e02ebca7f3802862b4cc2df6602c6 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/TableConstructionH62002.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoH62002Algs/src/TableConstructionH62002.cxx
@@ -25,7 +25,6 @@
 #include "GeoModelKernel/GeoSerialDenominator.h"
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelKernel/GeoShapeUnion.h"
 #include "GeoModelKernel/GeoShapeShift.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoH62003Algs/src/LArDetectorConstructionH62003.cxx b/LArCalorimeter/LArGeoModel/LArGeoH62003Algs/src/LArDetectorConstructionH62003.cxx
index bf21a7d3bb9173c3015cc1cf27b9ab7c0d3fe9e5..4d971bafe1bf147061240c8e9b23b695b5309fd8 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoH62003Algs/src/LArDetectorConstructionH62003.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoH62003Algs/src/LArDetectorConstructionH62003.cxx
@@ -29,7 +29,6 @@
 #include "GeoModelKernel/Units.h"
 #include "GeoModelKernel/GeoXF.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 
 
diff --git a/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/ExcluderConstructionH62004.cxx b/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/ExcluderConstructionH62004.cxx
index 8f7f0914e60b1d69e93b1b20e60d55df7df204dd..6e87ce6855a39df68877c61ed3a2a13e64a0ac78 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/ExcluderConstructionH62004.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/ExcluderConstructionH62004.cxx
@@ -4,7 +4,6 @@
 
 #include "ExcluderConstructionH62004.h"
 
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelKernel/GeoMaterial.h"
 #include "GeoModelKernel/GeoBox.h"
 #include "GeoModelKernel/GeoPcon.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/FCALConstructionH62004.cxx b/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/FCALConstructionH62004.cxx
index 776fb65461abd217361ec3d6bd4b9c69a0e19c75..066462edba78593681179ea83ab297875a66dd4a 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/FCALConstructionH62004.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/FCALConstructionH62004.cxx
@@ -29,7 +29,6 @@
 #include "GeoModelKernel/GeoBox.h"
 #include "GeoModelKernel/GeoTrap.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelUtilities/DecodeVersionKey.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelUtilities/StoredPhysVol.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/FrontBeamConstructionH62004.cxx b/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/FrontBeamConstructionH62004.cxx
index 0a61111efd353160515d833c3cd8281c63d61908..6274d5143068ef09e5d2e936052f760c3a82900f 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/FrontBeamConstructionH62004.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/FrontBeamConstructionH62004.cxx
@@ -25,7 +25,6 @@
 #include "GeoModelKernel/GeoIdentifierTag.h"  
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelKernel/GeoShapeUnion.h"
 #include "GeoModelKernel/GeoShapeShift.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/HECConstructionH62004.cxx b/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/HECConstructionH62004.cxx
index ad4fdaa39c1a3da4f7a3e6b16662580af1ac0470..c3446bbcda49cfb794521869e9140f819f597a7c 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/HECConstructionH62004.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/HECConstructionH62004.cxx
@@ -4,7 +4,6 @@
 
 #include "HECConstructionH62004.h"
 
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelKernel/GeoMaterial.h"  
 #include "GeoModelKernel/GeoBox.h"  
 #include "GeoModelKernel/GeoPcon.h"  
diff --git a/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/MiddleBeamConstructionH62004.cxx b/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/MiddleBeamConstructionH62004.cxx
index c366cd57b988435f183ffa07a5b8b0411d75a1e8..c972caa449c6ebc2956f13e8c09c485162864a3c 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/MiddleBeamConstructionH62004.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/MiddleBeamConstructionH62004.cxx
@@ -25,7 +25,6 @@
 #include "GeoModelKernel/GeoSerialDenominator.h"
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelKernel/GeoShapeUnion.h"
 #include "GeoModelKernel/GeoShapeShift.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/ModulesConstructionH62004.cxx b/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/ModulesConstructionH62004.cxx
index 4efe197bc3cad60c6ba97c70e7484b28f2380434..178fb693b08a84ed41a17ca1af55a068c0fcc9d6 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/ModulesConstructionH62004.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/ModulesConstructionH62004.cxx
@@ -10,9 +10,7 @@
 
 // need if we want to use EMEC from LArGeoTBEC:
 #include "LArGeoTBEC/EMECModuleConstruction.h"
-//#include "LArGeoEndcap/EMECConstruction.h"
 
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelKernel/GeoMaterial.h"
 #include "GeoModelKernel/GeoBox.h"
 #include "GeoModelKernel/GeoPcon.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/MovableTableConstructionH62004.cxx b/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/MovableTableConstructionH62004.cxx
index cb5d2f9a3d2459a7de0572565eef7eb5d6365e2a..c7c64cadeee3c1147e3e66da75284b7989787ae8 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/MovableTableConstructionH62004.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/MovableTableConstructionH62004.cxx
@@ -26,7 +26,6 @@
 #include "GeoModelKernel/GeoSerialDenominator.h"
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelKernel/GeoShapeSubtraction.h"
 #include "GeoModelKernel/GeoShapeShift.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/WarmTCConstructionH62004.cxx b/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/WarmTCConstructionH62004.cxx
index a47ed3f53c3c20313900042fa2b5e0d1c0194c83..4f583c3d1a88a6a3d7fc20781f04f35794c31edf 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/WarmTCConstructionH62004.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoH62004Algs/src/WarmTCConstructionH62004.cxx
@@ -4,7 +4,6 @@
 
 #include "WarmTCConstructionH62004.h"
 
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelKernel/GeoMaterial.h"
 #include "GeoModelKernel/GeoBox.h"
 #include "GeoModelKernel/GeoPcon.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoH6Cryostats/src/BPCConstruction.cxx b/LArCalorimeter/LArGeoModel/LArGeoH6Cryostats/src/BPCConstruction.cxx
index acc19f08b1940888d3847be3c3ece1c603de31b8..47b9c16c98908747e4e4ae97e4dbedb5a05e190e 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoH6Cryostats/src/BPCConstruction.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoH6Cryostats/src/BPCConstruction.cxx
@@ -27,7 +27,6 @@
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "GeoModelKernel/Units.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelKernel/GeoShapeUnion.h"
 #include "GeoModelKernel/GeoShapeShift.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoH6Cryostats/src/H6CryostatConstruction.cxx b/LArCalorimeter/LArGeoModel/LArGeoH6Cryostats/src/H6CryostatConstruction.cxx
index c24e85b1d8e4636120385176297565bcab213e5d..6b3b210c43e59aeafb59dcd8b1bf800f665bc2fe 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoH6Cryostats/src/H6CryostatConstruction.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoH6Cryostats/src/H6CryostatConstruction.cxx
@@ -24,7 +24,6 @@
 #include "GeoModelKernel/GeoIdentifierTag.h"  
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelKernel/GeoShapeUnion.h"
 #include "GeoModelKernel/GeoShapeShift.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoH6Cryostats/src/MWPCConstruction.cxx b/LArCalorimeter/LArGeoModel/LArGeoH6Cryostats/src/MWPCConstruction.cxx
index 55873f17fb77c30e362976c29492aacbb2e03b5a..53f04814e7533c8eb5722b45c0bc9dfe13bc1ce7 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoH6Cryostats/src/MWPCConstruction.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoH6Cryostats/src/MWPCConstruction.cxx
@@ -29,7 +29,6 @@
 #include "GeoModelKernel/GeoSerialDenominator.h"
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelKernel/GeoShapeUnion.h"
 #include "GeoModelKernel/GeoShapeShift.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoH6Cryostats/src/WallsConstruction.cxx b/LArCalorimeter/LArGeoModel/LArGeoH6Cryostats/src/WallsConstruction.cxx
index bfc208cedffa17b9522585553b14f1312e79a57d..c05eff61fb7b9ad4c195a99706c8ac709f412f4a 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoH6Cryostats/src/WallsConstruction.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoH6Cryostats/src/WallsConstruction.cxx
@@ -24,7 +24,6 @@
 #include "GeoModelKernel/GeoSerialDenominator.h"
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelKernel/GeoShapeUnion.h"
 #include "GeoModelKernel/GeoShapeShift.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoHec/src/HEC2WheelConstruction.cxx b/LArCalorimeter/LArGeoModel/LArGeoHec/src/HEC2WheelConstruction.cxx
index 6cd88171bc277213123f9652f3b731d1ea1481f9..3802f85920aeeee616bdfe414ce786267304dbf1 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoHec/src/HEC2WheelConstruction.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoHec/src/HEC2WheelConstruction.cxx
@@ -46,7 +46,6 @@
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "GeoGenericFunctions/Variable.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelUtilities/StoredPhysVol.h"
 #include "GeoModelUtilities/StoredAlignX.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoHec/src/HECClampConstruction.cxx b/LArCalorimeter/LArGeoModel/LArGeoHec/src/HECClampConstruction.cxx
index 07c7e1c66cdbd3d7611f17cdcbd2a3bcb8d01435..9777b1b6c9050402a39dcdde4947a446e2e8b528 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoHec/src/HECClampConstruction.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoHec/src/HECClampConstruction.cxx
@@ -34,7 +34,6 @@
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "GeoGenericFunctions/Variable.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GaudiKernel/MsgStream.h"
 #include "GaudiKernel/Bootstrap.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoHec/src/HECModuleConstruction.cxx b/LArCalorimeter/LArGeoModel/LArGeoHec/src/HECModuleConstruction.cxx
index 40491b326d1ea122667a8055f4d871c37f8abe69..756e88e098bcd9e819b081215c1923cb4197e1ef 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoHec/src/HECModuleConstruction.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoHec/src/HECModuleConstruction.cxx
@@ -25,7 +25,6 @@
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "GeoGenericFunctions/Variable.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GaudiKernel/MsgStream.h"
 #include "GaudiKernel/Bootstrap.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoHec/src/HECWheelConstruction.cxx b/LArCalorimeter/LArGeoModel/LArGeoHec/src/HECWheelConstruction.cxx
index 24892c99b1e65b263538b0a61b1103218726ff71..0f4d7f40665cb5d1cec506ca7e5d8884d7047807 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoHec/src/HECWheelConstruction.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoHec/src/HECWheelConstruction.cxx
@@ -35,7 +35,6 @@
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "GeoGenericFunctions/Variable.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GaudiKernel/MsgStream.h"
 #include "GaudiKernel/Bootstrap.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoTBBarrel/src/TBBarrelCryostatConstruction.cxx b/LArCalorimeter/LArGeoModel/LArGeoTBBarrel/src/TBBarrelCryostatConstruction.cxx
index 3e9aa5ea9bf2db966fb5245e30da9e5d1f26e626..40938c4191dd627ec87967565a4f3436696119a8 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoTBBarrel/src/TBBarrelCryostatConstruction.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoTBBarrel/src/TBBarrelCryostatConstruction.cxx
@@ -22,7 +22,6 @@
 #include "GeoModelKernel/GeoTransform.h"  
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "GeoModelKernel/Units.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "StoreGate/StoreGateSvc.h"
 #include "GaudiKernel/MsgStream.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoTBEC/src/CryostatConstructionTBEC.cxx b/LArCalorimeter/LArGeoModel/LArGeoTBEC/src/CryostatConstructionTBEC.cxx
index 71b88f6326cd6eb0b0e7a3395bdf8a9448efe051..303628b82f321f01768e6ca464b929f9ce7fe35c 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoTBEC/src/CryostatConstructionTBEC.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoTBEC/src/CryostatConstructionTBEC.cxx
@@ -24,7 +24,6 @@
 #include "GeoModelKernel/GeoIdentifierTag.h"  
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelKernel/GeoShapeUnion.h"
 #include "GeoModelKernel/GeoShapeShift.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoTBEC/src/EMECModuleConstruction.cxx b/LArCalorimeter/LArGeoModel/LArGeoTBEC/src/EMECModuleConstruction.cxx
index 48727168904b6b1a86571bf31168ee21630cdd82..db61c79597534791cb17adab034c3148f35c9beb 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoTBEC/src/EMECModuleConstruction.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoTBEC/src/EMECModuleConstruction.cxx
@@ -42,7 +42,6 @@
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "GeoModelKernel/Units.h"
 #include "GeoModelUtilities/StoredPhysVol.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "StoreGate/StoreGateSvc.h"
 #include "GaudiKernel/MsgStream.h"
diff --git a/LArCalorimeter/LArGeoModel/LArGeoTBEC/src/LArDetectorConstructionTBEC.cxx b/LArCalorimeter/LArGeoModel/LArGeoTBEC/src/LArDetectorConstructionTBEC.cxx
index 820254ad36aa6fe76880d15cff8756454af1fad8..997ec1276aa9b88faf88a2286902880136b25251 100755
--- a/LArCalorimeter/LArGeoModel/LArGeoTBEC/src/LArDetectorConstructionTBEC.cxx
+++ b/LArCalorimeter/LArGeoModel/LArGeoTBEC/src/LArDetectorConstructionTBEC.cxx
@@ -23,7 +23,6 @@
 #include "GeoModelKernel/GeoIdentifierTag.h"  
 #include "GeoModelKernel/GeoDefinitions.h"
 #include "StoreGate/StoreGateSvc.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
 #include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GeoModelUtilities/StoredPhysVol.h"
 #include "GeoModelUtilities/DecodeVersionKey.h"
diff --git a/MuonSpectrometer/MuonGeoModel/CMakeLists.txt b/MuonSpectrometer/MuonGeoModel/CMakeLists.txt
index 9686f3767c2581fa904235214f4b903793431aa4..60291bf4cd65a74ce7edb8fe0514955a8176cdc3 100644
--- a/MuonSpectrometer/MuonGeoModel/CMakeLists.txt
+++ b/MuonSpectrometer/MuonGeoModel/CMakeLists.txt
@@ -6,8 +6,6 @@
 atlas_subdir( MuonGeoModel )
 
 # External dependencies:
-find_package( Boost COMPONENTS filesystem thread system )
-find_package( CORAL COMPONENTS CoralBase CoralKernel RelationalAccess )
 find_package( Eigen )
 find_package( GeoModelCore )
 
@@ -15,14 +13,12 @@ find_package( GeoModelCore )
 atlas_add_library( MuonGeoModelLib
                    src/*.cxx
                    PUBLIC_HEADERS MuonGeoModel
-                   PRIVATE_INCLUDE_DIRS ${Boost_INCLUDE_DIRS} ${CORAL_INCLUDE_DIRS}
                    LINK_LIBRARIES ${GEOMODELCORE_LIBRARIES} AthenaKernel GeoModelUtilities GaudiKernel MuonCondInterface MuonReadoutGeometry MuonGMdbObjects StoreGateLib SGtests MuonIdHelpersLib MuonAGDDDescription AGDDKernel AmdcDbLib
-                   PRIVATE_LINK_LIBRARIES ${Boost_LIBRARIES} ${CORAL_LIBRARIES} AthenaPoolUtilities IdDictDetDescr MuonDetDescrUtils )
+                   PRIVATE_LINK_LIBRARIES AthenaPoolUtilities IdDictDetDescr MuonDetDescrUtils )
 
 atlas_add_component( MuonGeoModel
                      src/components/*.cxx
-                     INCLUDE_DIRS ${Boost_INCLUDE_DIRS} ${CORAL_INCLUDE_DIRS} 
-                     LINK_LIBRARIES ${Boost_LIBRARIES} ${CORAL_LIBRARIES} ${GEOMODELCORE_LIBRARIES} AthenaKernel StoreGateLib SGtests GeoModelUtilities GaudiKernel MuonCondInterface MuonReadoutGeometry MuonGMdbObjects AthenaPoolUtilities AGDDKernel IdDictDetDescr MuonAGDDDescription MuonDetDescrUtils MuonIdHelpersLib MuonGeoModelLib AmdcDbLib )
+                     LINK_LIBRARIES ${GEOMODELCORE_LIBRARIES} AthenaKernel StoreGateLib SGtests GeoModelUtilities GaudiKernel MuonCondInterface MuonReadoutGeometry MuonGMdbObjects AthenaPoolUtilities AGDDKernel IdDictDetDescr MuonAGDDDescription MuonDetDescrUtils MuonIdHelpersLib MuonGeoModelLib AmdcDbLib )
 
 # Install files from the package:
 atlas_install_joboptions( share/*.py )
diff --git a/MuonSpectrometer/MuonGeoModel/MuonGeoModel/DetectorElement.h b/MuonSpectrometer/MuonGeoModel/MuonGeoModel/DetectorElement.h
index 0b0ad8ad9cb8ad059f6991f47b0558831e59d8f1..37f5e83298073d4ccaf23c62ea4b5b5733b14648 100755
--- a/MuonSpectrometer/MuonGeoModel/MuonGeoModel/DetectorElement.h
+++ b/MuonSpectrometer/MuonGeoModel/MuonGeoModel/DetectorElement.h
@@ -6,7 +6,7 @@
 #define DetectorElement_H
 
 #include "CxxUtils/checker_macros.h"
-#include "GeoModelInterfaces/AbsMaterialManager.h"
+#include "GeoModelInterfaces/StoredMaterialManager.h"
 #include "GaudiKernel/MsgStream.h"
 #include "AthenaKernel/getMessageSvc.h"
 
@@ -45,11 +45,11 @@ namespace MuonGM {
     //! Set Material Manager for all childs of this class
     //! MUST BE CALLED BEFORE ANY THREADS TRY TO CALL @ref getMaterialManager
     //!
-    static void setMaterialManager(const AbsMaterialManager & matMan) {
+    static void setMaterialManager(const StoredMaterialManager & matMan) {
       s_matManager = &matMan;
     }
 
-    const AbsMaterialManager * getMaterialManager() const {
+    const StoredMaterialManager * getMaterialManager() const {
       return s_matManager;
     }
 
@@ -58,7 +58,7 @@ namespace MuonGM {
     //! Actually, it haves thread-safe access only when @ref getMaterialManager
     //! is called before any @ref getMaterialManager.
     //!
-    static const AbsMaterialManager *s_matManager ATLAS_THREAD_SAFE;
+    static const StoredMaterialManager *s_matManager ATLAS_THREAD_SAFE;
 
   }; // class DetectorElement
 
diff --git a/MuonSpectrometer/MuonGeoModel/src/DetectorElement.cxx b/MuonSpectrometer/MuonGeoModel/src/DetectorElement.cxx
index 3d8cf883f105b2315113c11a5d4da0397bd7cef4..f02480adcfd3abd8249ace85bef68a0a00ea6311 100755
--- a/MuonSpectrometer/MuonGeoModel/src/DetectorElement.cxx
+++ b/MuonSpectrometer/MuonGeoModel/src/DetectorElement.cxx
@@ -6,6 +6,6 @@
 
 namespace MuonGM {
 
-  const AbsMaterialManager * DetectorElement::s_matManager = nullptr;
+  const StoredMaterialManager * DetectorElement::s_matManager = nullptr;
 
 } // namespace MuonGM