diff --git a/MuonSpectrometer/MuonCalib/MuonCalibTools/src/IdToFixedIdTool.cxx b/MuonSpectrometer/MuonCalib/MuonCalibTools/src/IdToFixedIdTool.cxx
index 3b80f4cf81f98156a1b5c64d81cb31c4a818c134..c909e0027ce64b84e44a65283dc1b6aab419ddfa 100644
--- a/MuonSpectrometer/MuonCalib/MuonCalibTools/src/IdToFixedIdTool.cxx
+++ b/MuonSpectrometer/MuonCalib/MuonCalibTools/src/IdToFixedIdTool.cxx
@@ -130,7 +130,7 @@ Identifier IdToFixedIdTool::fixedIdToId(const MuonFixedId& fid) const
 		     fid.rpcGasGap(),
 		     fid.rpcMeasuresPhi(),
 		     fid.rpcStrip() );
-  } else if((&(m_idHelperTool->cscIdHelper())) && fid.is_csc()){ 
+  } else if( m_idHelperTool->hasCscIdHelper() && fid.is_csc()){ 
      tmp = m_idHelperTool->cscIdHelper().channelID( fid.stationNumberToFixedStationString( fid.stationName() ) ,
 		      fid.eta(),
 		      fid.phi(),
diff --git a/MuonSpectrometer/MuonCnv/MuonPrepRawDataProviderTools/src/MuonLayerHashProviderTool.cxx b/MuonSpectrometer/MuonCnv/MuonPrepRawDataProviderTools/src/MuonLayerHashProviderTool.cxx
index 90ed9599bfa15b43d7aedcf7194c5612acf7d81e..96f9014932616a9fbc9404e9b9f00807535f678c 100644
--- a/MuonSpectrometer/MuonCnv/MuonPrepRawDataProviderTools/src/MuonLayerHashProviderTool.cxx
+++ b/MuonSpectrometer/MuonCnv/MuonPrepRawDataProviderTools/src/MuonLayerHashProviderTool.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "MuonPrepRawDataProviderTools/MuonLayerHashProviderTool.h"
@@ -130,11 +130,11 @@ namespace Muon {
                   << " technologies " << m_ntechnologies << " sectorLayers " << MuonStationIndex::sectorLayerHashMax() );
 
     // add technologies
-    if (&(m_idHelper->mdtIdHelper())) insertTechnology(m_idHelper->mdtIdHelper());
-    if (&(m_idHelper->rpcIdHelper())) insertTechnology(m_idHelper->rpcIdHelper());
-    if (&(m_idHelper->cscIdHelper())) insertTechnology(m_idHelper->cscIdHelper());
-    if (&(m_idHelper->mmIdHelper())) insertTechnology(m_idHelper->mmIdHelper());
-    if (&(m_idHelper->stgcIdHelper())) insertTechnology(m_idHelper->stgcIdHelper());
+    if (m_idHelper->hasMdtIdHelper()) insertTechnology(m_idHelper->mdtIdHelper());
+    if (m_idHelper->hasRpcIdHelper()) insertTechnology(m_idHelper->rpcIdHelper());
+    if (m_idHelper->hasCscIdHelper()) insertTechnology(m_idHelper->cscIdHelper());
+    if (m_idHelper->hasMmIdHelper()) insertTechnology(m_idHelper->mmIdHelper());
+    if (m_idHelper->hasSTgcIdHelper()) insertTechnology(m_idHelper->stgcIdHelper());
 
     if( !insertTgcs() ) return false;
 
diff --git a/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonSegmentRegionRecoveryTool.cxx b/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonSegmentRegionRecoveryTool.cxx
index b868f3d5a0f6a15c70897714f8ef142df607a5ad..be411787bba544de81c4a0391edb4b7f15afe66c 100644
--- a/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonSegmentRegionRecoveryTool.cxx
+++ b/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackFinderTools/src/MuonSegmentRegionRecoveryTool.cxx
@@ -365,12 +365,12 @@ void MuonSegmentRegionRecoveryTool::collectCrossedChambers( const Trk::Track& tr
 
   RoiDescriptor roi( etamin, etamax, phimin, phimax );
 
-  if ((&(m_idHelperTool->mdtIdHelper())) && (m_idHelperTool->mdtIdHelper().isInitialized())) addHashes(MDT, roi, data.mdt, data.mdtTrack);
-  if ((&(m_idHelperTool->rpcIdHelper())) && (m_idHelperTool->rpcIdHelper().isInitialized())) addHashes(RPC, roi, data.rpc, data.rpcTrack);
-  if ((&(m_idHelperTool->tgcIdHelper())) && (m_idHelperTool->tgcIdHelper().isInitialized())) addHashes(TGC, roi, data.tgc, data.tgcTrack);
-  if ((&(m_idHelperTool->cscIdHelper())) && (m_idHelperTool->cscIdHelper().isInitialized())) addHashes(CSC, roi, data.csc, data.cscTrack);
-  if ((&(m_idHelperTool->stgcIdHelper())) && (m_idHelperTool->stgcIdHelper().isInitialized())) addHashes(STGC, roi, data.stgc, data.stgcTrack);
-  if ((&(m_idHelperTool->mmIdHelper())) && (m_idHelperTool->mmIdHelper().isInitialized())) addHashes(MM, roi, data.mm, data.mmTrack);
+  if (m_idHelperTool->hasMdtIdHelper() && (m_idHelperTool->mdtIdHelper().isInitialized())) addHashes(MDT, roi, data.mdt, data.mdtTrack);
+  if (m_idHelperTool->hasRpcIdHelper() && (m_idHelperTool->rpcIdHelper().isInitialized())) addHashes(RPC, roi, data.rpc, data.rpcTrack);
+  if (m_idHelperTool->hasTgcIdHelper() && (m_idHelperTool->tgcIdHelper().isInitialized())) addHashes(TGC, roi, data.tgc, data.tgcTrack);
+  if (m_idHelperTool->hasCscIdHelper() && (m_idHelperTool->cscIdHelper().isInitialized())) addHashes(CSC, roi, data.csc, data.cscTrack);
+  if (m_idHelperTool->hasSTgcIdHelper() && (m_idHelperTool->stgcIdHelper().isInitialized())) addHashes(STGC, roi, data.stgc, data.stgcTrack);
+  if (m_idHelperTool->hasMmIdHelper() && (m_idHelperTool->mmIdHelper().isInitialized())) addHashes(MM, roi, data.mm, data.mmTrack);
 
   std::set<IdentifierHash>::iterator hsit = data.mdt.begin();
   std::set<IdentifierHash>::iterator hsit_end = data.mdt.end();
@@ -990,7 +990,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::addMissingChambers( const Trk::
     }
     data.tgcCols = newtcols;
 
-    if ((&(m_idHelperTool->cscIdHelper())) && (m_idHelperTool->cscIdHelper().isInitialized())) {
+    if (m_idHelperTool->hasCscIdHelper() && (m_idHelperTool->cscIdHelper().isInitialized())) {
       m_seededSegmentFinder->extractCscPrdCols( data.csc, data.cscCols );
       std::vector<const CscPrepDataCollection*>::const_iterator cit = data.cscCols.begin();
       std::vector<const CscPrepDataCollection*>::const_iterator cit_end = data.cscCols.end();
@@ -1015,7 +1015,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::addMissingChambers( const Trk::
   }
 
   unsigned int nstates = states.size();
-  if ((&(m_idHelperTool->stgcIdHelper())) && (m_idHelperTool->stgcIdHelper().isInitialized())) {
+  if (m_idHelperTool->hasSTgcIdHelper() && (m_idHelperTool->stgcIdHelper().isInitialized())) {
     m_seededSegmentFinder->extractsTgcPrdCols( data.stgc, data.stgcCols );
     std::vector<const sTgcPrepDataCollection*>::const_iterator stit = data.stgcCols.begin();
     std::vector<const sTgcPrepDataCollection*>::const_iterator stit_end = data.stgcCols.end();
@@ -1040,7 +1040,7 @@ const Trk::Track* MuonSegmentRegionRecoveryTool::addMissingChambers( const Trk::
     data.stgcCols = newstcols;
   }
 
-  if ((&(m_idHelperTool->mmIdHelper())) && (m_idHelperTool->mmIdHelper().isInitialized())) {
+  if (m_idHelperTool->hasMmIdHelper() && (m_idHelperTool->mmIdHelper().isInitialized())) {
     m_seededSegmentFinder->extractMMPrdCols( data.mm, data.mmCols );
     ATH_MSG_DEBUG(" extractMMPrdCols data.mmCols.size() " << data.mmCols.size());
     std::vector<const MMPrepDataCollection*>::const_iterator mit = data.mmCols.begin();