From dae765059a7c647d2ec8f23f97285e91e2e0eab3 Mon Sep 17 00:00:00 2001
From: sutt <sutt@cern.ch>
Date: Sun, 4 Oct 2020 14:42:14 +0200
Subject: [PATCH] Remaining changes to remove the RegSelSvc ID use

These changes (hopefully) finish the change needed to remove the use of the RegSelSvc
for the ID sub-systems.

In addition, there are changes to the RegSelSvc code and the IDRegionSelector
code to remove the generation of the lookup tables using the old code, and remove
the RS functionality for the Pixel, SCT and TRT from the old RegSe;Svc.

In addition, to get round an issue with the PixelCablingCondAlg which seems to
report an unusable EventIDRange, there is a hack to get it to return a range
which should (mostly) work.

This hack should be replaced by a proper impementation of the PixelCablingCondAlg
which no longer needs to set up during the initialise (at least for the RegionSelector)

If the pixel cabling still needs to be configured during initialize() for some
other reason, then this range should be fixed such that it provides a valid range
for the subseuqnet use, or overwridden properly in the execute method.
---
 .../RegionSelector/src/RegSelSvc.cxx          | 487 ++----------------
 .../src/PixelCablingCondAlg.cxx               |   6 +-
 .../src/InDetRegionSelectorLUT.cxx            |  59 +--
 .../src/SiRegSelCondAlg.cxx                   |  14 +-
 .../src/SiRegionSelectorTable.cxx             | 170 +-----
 .../src/RegSelCondAlg_LAr.cxx                 |  11 +-
 .../TrigGenericAlgs/SeededSuperRoiAllTEAlgo.h |   5 -
 .../src/SeededSuperRoiAllTEAlgo.cxx           |  21 +-
 .../TrigT2MinBias/CMakeLists.txt              |   2 +-
 .../python/TrigT2MinBiasConfig.py             |   6 +
 .../src/TrigCountSpacePoints.cxx              |  20 +-
 .../TrigT2MinBias/src/TrigCountSpacePoints.h  |   6 +-
 .../TrigLongLivedParticlesHypo/CMakeLists.txt |   2 +-
 .../TrigLLPInnerDetectorHypo.h                |   9 +-
 .../src/TrigLLPInnerDetectorHypo.cxx          |  28 +-
 .../TrigInDetConf/python/RoiManipulators.py   |   6 -
 16 files changed, 116 insertions(+), 736 deletions(-)

diff --git a/DetectorDescription/RegionSelector/src/RegSelSvc.cxx b/DetectorDescription/RegionSelector/src/RegSelSvc.cxx
index 0ad022d9fb1..564a5ba1ec9 100755
--- a/DetectorDescription/RegionSelector/src/RegSelSvc.cxx
+++ b/DetectorDescription/RegionSelector/src/RegSelSvc.cxx
@@ -175,20 +175,6 @@ StatusCode RegSelSvc::initialize() {
   ATH_MSG_INFO( "DeltaZ = " << m_DeltaZ );
 
 
-  
-  std::string sctflag("enabled");
-  std::string pixelflag("enabled");
-  std::string trtflag("enabled");
-
-  if ( m_initOnlyID.value() ) { 
-    if ( !m_initSCT.value() )   sctflag   = "disabled"; 
-    else ATH_CHECK(m_SCTCablingToolInc.retrieve()); // SCT_CablingToolInc has to be retrieved now.
-    // Otherwise, SCT_RegionSelectorTable cannot use ready SCT_CablingToolInc.
-
-    if ( !m_initPixel.value() ) pixelflag = "disabled"; 
-    if ( !m_initTRT.value() )   trtflag   = "disabled"; 
-  }
-   
   std::string rpcflag("enabled");
   std::string mdtflag("enabled");
   std::string tgcflag("enabled");
@@ -209,8 +195,6 @@ StatusCode RegSelSvc::initialize() {
   
   msg(MSG::INFO) << "detector switches:" 
                  << " indet=" << (m_initOnlyID.value() ? "enabled":"disabled");
-  if( m_initOnlyID.value() )
-    msg() << " ( sct=" << sctflag << " pixel=" << pixelflag << " trt=" << trtflag << " )"; 
 
   msg() << " calo="  << (m_initOnlyCalo.value() ? "enabled":"disabled") 
         << " muon="  << (m_initOnlyMuon.value() ? "enabled":"disabled");
@@ -301,7 +285,6 @@ void RegSelSvc::handle(const Incident& incident) {
     initialised = true;
 
     // call Innr detector, Calo and Muon handlers 
-    if ( m_initOnlyID )    handleID();
     if ( m_initOnlyMuon )  handleMuon();
     //    if ( m_initOnlyCalo )  handleCalo();
 
@@ -312,122 +295,16 @@ void RegSelSvc::handle(const Incident& incident) {
         msg() << " " << *d;
       msg() << " detectors have been initialized" << endmsg; // " with Region Type " << m_regionType << endmsg;
     }
-    
-    if ( m_dumpTable ) { 
-      RegSelSiLUT* tables[7] = { m_newpixel, m_newsct, m_newtrt, m_newrpc, m_newmdt, m_newtgc, m_newcsc };
-      for ( int it=0 ; it<7 ; it++ ) { 
-	if ( tables[it] ) { 
-	  char table[64];
-	  std::sprintf( table, "table-%d.map", it ); 
-	  ATH_MSG_INFO( "dumping table " << it << " to file: " << table );
-	  tables[it]->write(table);
-	}
-      }
-    }
-    
-    //  if ( m_errorFlag ) return StatusCode::FAILURE;
-    //  else               return StatusCode::SUCCESS;
-  }
-
-}
-
-
-
-
-
-void RegSelSvc::disableIDFromConditions(RegSelSiLUT* detector, const std::string& serviceName) { 
 
-  ATH_MSG_INFO( " reading detector conditions from " << serviceName );
-
-  if (serviceName.empty()){
-    ATH_MSG_INFO( "Unspecified conditions summary service, skipping disableIDFromConditions" );
-    return;
   }
 
-  if ( detector ) { 
-
-    // get list of all detector elements for this detector
-
-    std::vector<IdentifierHash> IDList;
+}
 
-    if ( detector==m_newpixel )  DetHashIDList(PIXEL, IDList);
-    if ( detector==m_newsct )    DetHashIDList(SCT,   IDList);
-    if ( detector==m_newtrt )    DetHashIDList(TRT,   IDList);
-    
-    // there must be a nicer way to do this.
-    // basically, I have to enable all modules, 
-    // then go through them getting the list of 
-    // modules to enable and the list to disable, 
-    // then I have to enable and disable them 
-    // appropriately. hmmm 
-
-    // get lists of modules to enable and disable
-    std::vector<IdentifierHash> DisableList;
-    std::vector<IdentifierHash> EnableList;
-
-    int active_modules   = 0;
-    int disabled_modules = 0;
-
-    std::vector<IdentifierHash>::iterator mitr(IDList.begin());
-    std::vector<IdentifierHash>::iterator mend(IDList.end());
-    
-    if ( detector==m_newpixel or detector==m_newsct ) {
-      // get ConditionsSummaryTool
-      ToolHandle<IInDetConditionsTool> condsummary(serviceName, this);
-      if ( condsummary.retrieve().isFailure() ) {
-        ATH_MSG_ERROR( "failed to get " << serviceName );
-        return;
-      }
 
-      while ( mitr!=mend ) {
-        if ( condsummary->isActive(*mitr) )  {
-          EnableList.push_back(*mitr);
-          active_modules++;
-        }
-        else {
-          DisableList.push_back(*mitr);
-          disabled_modules++;
-        }
-        ATH_MSG_VERBOSE( serviceName << " module 0x" << std::hex << *mitr << std::dec
-                         << " isActive()=" << condsummary->isActive(*mitr) );
-        mitr++;
-      }
-    } else {
-      // get ConditionsSummarySvc
-      ServiceHandle<IInDetConditionsSvc> condsummary(serviceName, name());
-      if ( condsummary.retrieve().isFailure() ) {
-        ATH_MSG_ERROR( "failed to get " << serviceName );
-        return;
-      }
 
-      while ( mitr!=mend ) {
-        if ( condsummary->isActive(*mitr) )  {
-          EnableList.push_back(*mitr);
-          active_modules++;
-        }
-        else {
-          DisableList.push_back(*mitr);
-          disabled_modules++;
-        }
-        ATH_MSG_VERBOSE( serviceName << " module 0x" << std::hex << *mitr << std::dec
-                         << " isActive()=" << condsummary->isActive(*mitr) );
-        mitr++;
-      }
-    }
 
-    ATH_MSG_INFO( serviceName << " Number of modules active   " << active_modules );
-    ATH_MSG_INFO( serviceName << " Number of modules disabled " << disabled_modules );
-    
-    // these methods have to be tidied up, since they 
-    // each rebuild the Disabled module maps, I need 
-    // methods to enable/disable, and *after* to rebuild 
-    // the disabled module map 
-    
-    detector->disableModuleList(DisableList);
-    //    detector->enableModuleList(EnableList);
-	
-  }
 
+void RegSelSvc::disableIDFromConditions(RegSelSiLUT* /* detector */, const std::string& /* serviceName */ ) { 
 }
 
 
@@ -437,87 +314,8 @@ void RegSelSvc::disableIDFromConditions(RegSelSiLUT* detector, const std::string
 
 
 bool RegSelSvc::handleID() { 
-
-  bool errorFlag = false;
-
-  ATH_MSG_INFO( " Initialising Inner Detector maps" );
-
-  // new region selector code, we make the (reasonably simple) 
-  // structures in the SiRegionSelectorTable so we don't need to 
-  // do any more than just extract the tables.
-  
-
-  //! Read PIXEL data from Detector Store
-  if ( m_initPixel.value() ) { 
-    StatusCode sc = readFromSG(m_lutCreatorToolPixel, m_newpixel);
-    //     sc = m_detStore->retrieve(m_newpixel, "PixelRegSelSiLUT");
-    if (sc.isFailure()){
-      ATH_MSG_WARNING( "Failed to initialize pixel data" );
-      errorFlag = true;
-    } 
-    else { 
-      if ( m_newpixel ) { 
-        ATH_MSG_INFO( "retrieved new pixel RegSelSiLUT map " << m_newpixel->getName() );
-      }
-      else { 
-        ATH_MSG_ERROR( "retrieved new pixel RegSelSiLUT map is NULL" );
-	errorFlag = true;
-      }
-    }      
-  }
-  
-  //! Read SCT data from Detector Store
-  if ( m_initSCT.value() ) {  
-    StatusCode sc = readFromSG(m_lutCreatorToolSCT, m_newsct);
-    //     sc = m_detStore->retrieve(m_newsct, "SCTRegSelSiLUT");
-    if (sc.isFailure()){
-      ATH_MSG_WARNING( "Failed to initialize SCT data" );
-      errorFlag = true;
-    }
-    else { 
-      if ( m_newsct ) 
-	ATH_MSG_INFO( "retrieved new sct RegSelSiLUT map " << m_newsct->getName() );
-      else {
-	ATH_MSG_ERROR( "retrieved new sct RegSelSiLUT map is NULL" );
-	errorFlag = true;
-      }
-    }
-  }
-  
-  
-  //! Read TRT data from Detector Store
-  
-  if ( m_initTRT.value() ) { 
-    StatusCode sc = readFromSG(m_lutCreatorToolTRT, m_newtrt);
-    //     sc = m_detStore->retrieve(m_newtrt, "TRTRegSelSiLUT");
-    if (sc.isFailure()){
-      ATH_MSG_WARNING( "Failed to initialize TRT data" );
-      errorFlag = true;
-    }
-    else { 
-      if ( m_newtrt ) 
-	ATH_MSG_INFO( "retrieved new trt RegSelSiLUT map " << m_newtrt->getName() );
-      else {  
-	ATH_MSG_ERROR( "retrieved new trt RegSelSiLUT is NULL" );
-	errorFlag = true;
-      }
-    }    
-  }      
-
-  // now enable/disable requested robs and modules from OKS 
-  if ( !reinitialiseInternalFromOKS() )  { 
-    ATH_MSG_WARNING( " could not enable robs from OKS " );
-  }
-  
-  if ( !reinitialiseInternal() )  {
-    ATH_MSG_WARNING( " could not disable requested detector elements " );
-  }
-
-  m_enabledDetectors.emplace_back("Inner");
-  
-  m_errorFlag |= errorFlag; 
-
-  return errorFlag; 
+  ATH_MSG_INFO( " Initialising Inner Detector maps - no longer used" );
+  return true;
 }
 
 
@@ -823,22 +621,14 @@ void RegSelSvc::getRoIData(DETID detectorID,
   } 
   modules.clear();
 
-  //  std::cout << "RegSelSvc::getRoIData()" << detectorID << std::endl; 
-
 
   RegSelRoI selroi( roi.zedMinus(), roi.zedPlus(), roi.phiMinus(), roi.phiPlus(), roi.etaMinus(), roi.etaPlus() );
 
   switch(detectorID){
-  case PIXEL: { // Pixel
-    if ( m_newpixel) m_newpixel->getRoIData( selroi, modules );
-    break;    
-  }
-  case SCT:  { // Semiconductor Tracker
-    if ( m_newsct ) m_newsct->getRoIData( selroi, modules );    
-    break;
-  }
-  case TRT:  { // TRT
-    if ( m_newtrt ) m_newtrt->getRoIData( selroi, modules );    
+  case PIXEL: 
+  case SCT:  
+  case TRT:  { 
+    ATH_MSG_ERROR( "RegSelSvc: should no longer be called for ID" << detectorID );
     break;
   }
   case RPC: { // RPC (obviously)
@@ -883,12 +673,11 @@ void RegSelSvc::DetHashIDList(DETID detectorID,
 			      const IRoiDescriptor& roi,
 			      std::vector<IdentifierHash>& IDList) 
 {
-  //  std::cout << "RegSelSvc::DetHashIDList() new map " << detectorID << std::endl; 
 
   if ( roi.composite() ) { 
     for ( unsigned iroi=roi.size() ; iroi-- ;  ) {
       DetHashIDList( detectorID, *(roi.at(iroi)), IDList );
-      // std::cout << "DetHashIDList:: SuperRoi memeber " << iroi << " IDList.size() " << IDList.size() << *roi.at(iroi) << std::endl;
+
     }  
     if ( roi.size()>1 ) RegSelSiLUT::removeDuplicates( IDList );
     return;
@@ -911,19 +700,10 @@ void RegSelSvc::DetHashIDList(DETID detectorID,
 
 
   switch(detectorID){
-  case PIXEL: { // Pixel    
-    RegSelRoI selroi( roi.zedMinus(), roi.zedPlus(), roi.phiMinus(), roi.phiPlus(), roi.etaMinus(), roi.etaPlus() );
-    if ( m_newpixel ) m_newpixel->getHashList(selroi, IDList); 
-    break;
-  }
-  case SCT: { // Semiconductor Tracker (and pixel)
-    RegSelRoI selroi( roi.zedMinus(), roi.zedPlus(), roi.phiMinus(), roi.phiPlus(), roi.etaMinus(), roi.etaPlus() );
-    if ( m_newsct ) m_newsct->getHashList(selroi, IDList); 
-    break;
-  }
+  case PIXEL:
+  case SCT:
   case TRT: { // TRT (obviously)
-    RegSelRoI selroi( roi.zedMinus(), roi.zedPlus(), roi.phiMinus(), roi.phiPlus(), roi.etaMinus(), roi.etaPlus() );
-    if ( m_newtrt ) m_newtrt->getHashList(selroi, IDList); 
+    ATH_MSG_ERROR( "RegSelSvc: should no longer be called for ID" << detectorID );
     break;
   }
   case MDT: { // etc
@@ -994,8 +774,6 @@ void RegSelSvc::DetHashIDList(DETID detectorID, long layer,
 			      const IRoiDescriptor& roi,
 			      std::vector<IdentifierHash>& IDList) 
 {
-  //  std::cout << "RegSelSvc::DetHashIDList() new map " << detectorID << std::endl; 
-
   if ( roi.composite() ) { 
     for ( unsigned iroi=roi.size() ; iroi-- ;  ) {
       DetHashIDList( detectorID, layer, *(roi.at(iroi)), IDList );
@@ -1022,19 +800,10 @@ void RegSelSvc::DetHashIDList(DETID detectorID, long layer,
   long sampling = layer; 
 
   switch(detectorID){
-  case PIXEL: { // Pixel    
-    RegSelRoI selroi( roi.zedMinus(), roi.zedPlus(), roi.phiMinus(), roi.phiPlus(), roi.etaMinus(), roi.etaPlus() );
-    if ( m_newpixel ) m_newpixel->getHashList(selroi, layer, IDList); 
-    break;
-  }
-  case SCT: { // Semiconductor Tracker 
-    RegSelRoI selroi( roi.zedMinus(), roi.zedPlus(), roi.phiMinus(), roi.phiPlus(), roi.etaMinus(), roi.etaPlus() );
-    if ( m_newsct ) m_newsct->getHashList(selroi, layer, IDList); 
-    break;
-  }
+  case PIXEL: 
+  case SCT: 
   case TRT: { // TRT (obviously)
-    RegSelRoI selroi( roi.zedMinus(), roi.zedPlus(), roi.phiMinus(), roi.phiPlus(), roi.etaMinus(), roi.etaPlus() );
-    if ( m_newtrt ) m_newtrt->getHashList(selroi, layer, IDList); 
+    ATH_MSG_ERROR( "RegSelSvc: should no longer be called for ID" << detectorID );
     break;
   }
   case MDT: { 
@@ -1106,7 +875,6 @@ void RegSelSvc::DetHashIDList(DETID detectorID, long layer,
 void RegSelSvc::DetHashIDList(DETID detectorID, 
 			      std::vector<IdentifierHash>& IDList ) 
 { 
-  //  std::cout << "RegSelSvc::DetHashIDList() new map " << detectorID << std::endl;   
   
   if(IDList.size()!=0 ){
     ATH_MSG_VERBOSE( " input IDList vector not empty for RegSelSvc call for detectorID " << detectorID );
@@ -1115,16 +883,10 @@ void RegSelSvc::DetHashIDList(DETID detectorID,
   IDList.clear();
 
   switch(detectorID){
-  case PIXEL: { // Pixel    
-    if ( m_newpixel ) m_newpixel->getHashList(IDList); 
-    break;
-  }
-  case SCT: { // Semiconductor Tracker (and pixel)
-    if ( m_newsct ) m_newsct->getHashList(IDList); 
-    break;
-  }
+  case PIXEL:
+  case SCT:
   case TRT: { // TRT (obviously)
-    if ( m_newtrt ) m_newtrt->getHashList(IDList); 
+    ATH_MSG_ERROR( "RegSelSvc: should no longer be called for ID" << detectorID );
     break;
   }
   case MDT: { 
@@ -1194,7 +956,6 @@ void RegSelSvc::DetHashIDList(DETID detectorID,
 void RegSelSvc::DetHashIDList(DETID detectorID, long layer,
 			      std::vector<IdentifierHash>& IDList) 
 {
-  //  std::cout << "RegSelSvc::DetHashIDList() new map " << detectorID << std::endl; 
 
   if(IDList.size()!=0 ){
     ATH_MSG_VERBOSE( " input IDList vector not empty for RegSelSvc call for detectorID " << detectorID );
@@ -1205,16 +966,10 @@ void RegSelSvc::DetHashIDList(DETID detectorID, long layer,
   long sampling = layer; 
 
   switch(detectorID){
-  case PIXEL: { // Pixel    
-    if ( m_newpixel ) m_newpixel->getHashList( layer, IDList); 
-    break;
-  }
-  case SCT: { // Semiconductor Tracker 
-    if ( m_newsct ) m_newsct->getHashList( layer, IDList); 
-    break;
-  }
+  case PIXEL:
+  case SCT:
   case TRT: { // TRT (obviously)
-    if ( m_newtrt ) m_newtrt->getHashList( layer, IDList); 
+    ATH_MSG_ERROR( "RegSelSvc: should no longer be called for ID" << detectorID );
     break;
   }
   case MDT: { 
@@ -1284,7 +1039,6 @@ void RegSelSvc::DetROBIDListUint(DETID detectorID,
     setDuplicateRemoval( false );
     for ( unsigned iroi=roi.size() ; iroi-- ;  ) {
       DetROBIDListUint( detectorID, *(roi.at(iroi)), outputROBIDList );
-      // std::cout << "DetROBIDListUint:: SuperRoi memeber " << iroi << " outputROBIDList.size() " << outputROBIDList.size() << std::endl;
     }  
     RegSelSiLUT::removeDuplicates( outputROBIDList );
     setDuplicateRemoval( true );
@@ -1293,8 +1047,6 @@ void RegSelSvc::DetROBIDListUint(DETID detectorID,
 
   if ( roi.isFullscan() ) return DetROBIDListUint( detectorID, outputROBIDList );
 
-  //  std::cout << "RegSelSvc::DetROBIDListUint() new map " << detectorID << std::endl; 
-
   if(outputROBIDList.size()!=0 ){
     ATH_MSG_VERBOSE( " input outputROBIDList vector not empty for RegSelSvc call for detectorID " << detectorID );
   }
@@ -1313,19 +1065,10 @@ void RegSelSvc::DetROBIDListUint(DETID detectorID,
 
 
   switch (detectorID) {
-  case PIXEL: { // Pixel
-    RegSelRoI selroi( roi.zedMinus(), roi.zedPlus(), roi.phiMinus(), roi.phiPlus(), roi.etaMinus(), roi.etaPlus() );
-    if ( m_newpixel ) m_newpixel->getRobList(selroi, outputROBIDList, m_duplicateRemoval ); 
-    break;
-  }
-  case SCT: {  // SCT
-    RegSelRoI selroi( roi.zedMinus(), roi.zedPlus(), roi.phiMinus(), roi.phiPlus(), roi.etaMinus(), roi.etaPlus() );
-    if ( m_newsct ) m_newsct->getRobList(selroi, outputROBIDList, m_duplicateRemoval ); 
-    break;
-  }
+  case PIXEL: 
+  case SCT:
   case TRT: {  // TRT
-    RegSelRoI selroi( roi.zedMinus(), roi.zedPlus(), roi.phiMinus(), roi.phiPlus(), roi.etaMinus(), roi.etaPlus() );
-    if ( m_newtrt ) m_newtrt->getRobList(selroi, outputROBIDList, m_duplicateRemoval ); 
+    ATH_MSG_ERROR( "RegSelSvc: should no longer be called for ID" << detectorID );
     break;
   }
   case MDT: { 
@@ -1395,8 +1138,6 @@ void RegSelSvc::DetROBIDListUint(DETID detectorID, long layer,
 				 const IRoiDescriptor& roi, 
 				 std::vector<uint32_t>& outputROBIDList) 
 {
-  //  std::cout << "RegSelSvc::DetROBIDListUint() new map " << detectorID << std::endl; 
-
   if ( roi.composite() ) { 
     setDuplicateRemoval(false);
     for ( unsigned iroi=roi.size() ; iroi-- ;  ) {
@@ -1425,19 +1166,10 @@ void RegSelSvc::DetROBIDListUint(DETID detectorID, long layer,
   long sampling = layer; 
 
   switch (detectorID) {
-  case PIXEL: { // Pixel
-    RegSelRoI selroi( roi.zedMinus(), roi.zedPlus(), roi.phiMinus(), roi.phiPlus(), roi.etaMinus(), roi.etaPlus() );
-    if ( m_newpixel ) m_newpixel->getRobList(selroi, layer, outputROBIDList, m_duplicateRemoval );
-    break;
-  }
-  case SCT: {  // SCT
-    RegSelRoI selroi( roi.zedMinus(), roi.zedPlus(), roi.phiMinus(), roi.phiPlus(), roi.etaMinus(), roi.etaPlus() );
-    if ( m_newsct ) m_newsct->getRobList(selroi, layer, outputROBIDList, m_duplicateRemoval ); 
-    break;
-  }
+  case PIXEL: 
+  case SCT: 
   case TRT: { // TRT
-    RegSelRoI selroi( roi.zedMinus(), roi.zedPlus(), roi.phiMinus(), roi.phiPlus(), roi.etaMinus(), roi.etaPlus() );
-    if ( m_newtrt ) m_newtrt->getRobList(selroi, layer, outputROBIDList, m_duplicateRemoval ); 
+    ATH_MSG_ERROR( "RegSelSvc: should no longer be called for ID" << detectorID );
     break;
   }
   case MDT: { 
@@ -1510,16 +1242,10 @@ void RegSelSvc::DetROBIDListUint(DETID detectorID,
   outputROBIDList.clear();
 
   switch (detectorID) {
-  case PIXEL: { // Pixel
-    if ( m_newpixel ) m_newpixel->getRobList(outputROBIDList); 
-    break;
-  }
-  case SCT: {  // SCT
-    if ( m_newsct ) m_newsct->getRobList(outputROBIDList); 
-    break;
-  }
+  case PIXEL: 
+  case SCT:
   case TRT: {  // TRT
-    if ( m_newtrt ) m_newtrt->getRobList(outputROBIDList); 
+    ATH_MSG_ERROR( "RegSelSvc: should no longer be called for ID" << detectorID );
     break;
   }
   case MDT: { 
@@ -1577,8 +1303,6 @@ void RegSelSvc::DetROBIDListUint(DETID detectorID,
 void RegSelSvc::DetROBIDListUint(DETID detectorID, long layer,
 				 std::vector<uint32_t>& outputROBIDList) 
 {
-  //  std::cout << "RegSelSvc::DetROBIDListUint() new map " << detectorID << std::endl; 
-
   if(outputROBIDList.size()!=0 ){
     ATH_MSG_VERBOSE( " input outputROBIDList vector not empty for RegSelSvc call for detectorID " << detectorID );
   }
@@ -1587,16 +1311,11 @@ void RegSelSvc::DetROBIDListUint(DETID detectorID, long layer,
   long sampling = layer;
 
   switch (detectorID) {
-  case PIXEL: { // Pixel
-    if ( m_newpixel ) m_newpixel->getRobList( layer, outputROBIDList ); 
-    break;
-  }
-  case SCT: {  // SCT
-    if ( m_newsct ) m_newsct->getRobList( layer, outputROBIDList ); 
-    break;
-  }
+  case PIXEL: 
+  case SCT: 
   case TRT: { // TRT
     if ( m_newtrt ) m_newtrt->getRobList( layer, outputROBIDList ); 
+    ATH_MSG_ERROR( "RegSelSvc: should no longer be called for ID" << detectorID );
     break;
   }
   case MDT: { 
@@ -2168,63 +1887,21 @@ void RegSelSvc::printTable(const RegionSelectorLUT * lut){
   }
 }
 
-void RegSelSvc::DisableSiRobList(const std::vector<uint32_t>& RobIdList) { 
-  // if the list of robs to disable is not empty... 
-  if ( RobIdList.size()>0 ) { 
-    // check the look up tables actually already exist before
-    // trying to disable the robs from them
-    if ( m_newpixel ) m_newpixel->disableRobList(RobIdList);
-    if ( m_newsct )   m_newsct->disableRobList(RobIdList);
-    if ( m_newtrt )   m_newtrt->disableRobList(RobIdList);
-  } 
+void RegSelSvc::DisableSiRobList(const std::vector<uint32_t>& /* RobIdList */ ) { 
 }
 
-void RegSelSvc::DisablePixelHashList(const std::vector<unsigned int>& HashList) { 
-  // if the list of hashids to disable is not empty... 
-  if ( HashList.size()>0 ) { 
-    // check the look up tables actually already exist before
-    // trying to disable the modules from them
-    
-    std::vector<IdentifierHash> hashlist;
-    for ( std::vector<unsigned int>::const_iterator hptr(HashList.begin()) ; 
-	  hptr!=HashList.end() ; hptr ++ ) hashlist.emplace_back(*hptr);
-
-    if ( m_newpixel ) m_newpixel->disableModuleList(hashlist);
-  } 
+void RegSelSvc::DisablePixelHashList(const std::vector<unsigned int>& /* HashList */ ) { 
 }
 
-void RegSelSvc::DisableSCTHashList(const std::vector<unsigned int>& HashList) { 
-  // if the list of hashids to disable is not empty... 
-  if ( HashList.size()>0 ) { 
-    // check the look up tables actually already exist before
-    // trying to disable the modules from them
-    std::vector<IdentifierHash> hashlist;
-    for ( std::vector<unsigned int>::const_iterator hptr(HashList.begin()) ; 
-	  hptr!=HashList.end() ; hptr ++ ) hashlist.emplace_back(*hptr);
-    if ( m_newsct )   m_newsct->disableModuleList(hashlist);
-  } 
+void RegSelSvc::DisableSCTHashList(const std::vector<unsigned int>& /* HashList */ ) { 
 }
 
 
-void RegSelSvc::DisableTRTHashList(const std::vector<unsigned int>& HashList) { 
-  // if the list of hashids to disable is not empty... 
-  if ( HashList.size()>0 ) { 
-    // check the look up tables actually already exist before
-    // trying to disable the modules from them
-    std::vector<IdentifierHash> hashlist;
-    for ( std::vector<unsigned int>::const_iterator hptr(HashList.begin()) ; 
-	  hptr!=HashList.end() ; hptr ++ ) hashlist.emplace_back(*hptr);
-    if ( m_newtrt )   m_newtrt->disableModuleList(hashlist);
-  } 
+void RegSelSvc::DisableTRTHashList(const std::vector<unsigned int>& /* HashList*/ ) { 
 }
 
 
 void RegSelSvc::RestoreSiRobList() {
-  // check the look up tables actually already exist before
-  // trying to disable the robs from them
-  if ( m_newpixel ) m_newpixel->enableRobs();
-  if ( m_newsct )   m_newsct->enableRobs();
-  if ( m_newtrt )   m_newtrt->enableRobs();
 }
 
 
@@ -2240,33 +1917,6 @@ StatusCode RegSelSvc::reinitialize() {
 // ids from oks and enable the modules corresponding to the 
 // specified robs
 bool RegSelSvc::reinitialiseInternalFromOKS() { 
-
-  // don't disable anything if not initialising from oks
-  if ( m_readSiROBListFromOKS.value()==false ) return true;
-
-  if ( m_initPixel.value() )  {   
-    // disable everything
-    m_newpixel->disableRobs();
-    
-    // enable the robs from OKS
-    m_newpixel->enableRobList(m_enabledROBs.value());
-  }
-
-  if ( m_initSCT.value() ) { 
-    m_newsct->disableRobs();
-    
-    // enable robs from list for pixel and sct
-    m_newsct->enableRobList(m_enabledROBs.value());
-  }
-  
-  if ( m_initTRT.value() )  {   
-    // disable everything
-    m_newtrt->disableRobs();
-    
-    // enable the robs from OKS
-    m_newtrt->enableRobList(m_enabledROBs.value());
-  }
-
   return true;
 }
 
@@ -2275,69 +1925,6 @@ bool RegSelSvc::reinitialiseInternalFromOKS() {
 
 
 bool RegSelSvc::reinitialiseInternal() { 
-
-  // NB: the conditions summary service names, and probably the services 
-  //     themselves should be setable from a job option, but why make
-  //     life even more complicated with configurability that may never
-  //     be used. If it needs it, it can easily be added  
-
-  // now handle all the disabling for the pixel ... 
-  if ( m_initPixel.value() )  { 
-
-    // first disable modules from the conditions summary services
-    //    if ( m_disableFromConditions ) disableIDFromConditions(m_newpixel, "PixelConditionsSummarySvc");
-    if ( m_disableFromConditions && m_disablePixelFromConditions ) disableIDFromConditions(m_newpixel, m_PixConditionsTool);
-
-    // now *disable* the modules from robs the user has flagged
-    if ( m_deleteRobList.size() ) m_newpixel->disableRobList(m_deleteRobList);
-
-    // and disable any other modules from the module list
-    // have to convert the std::vector<unsigned int> into std::vector<IdentifierHash>  
-    std::vector<IdentifierHash> hashlist;
-    for ( std::vector<unsigned int>::const_iterator hptr(m_deletePixelHashList.begin()) ; 
-	  hptr!=m_deletePixelHashList.end() ; hptr ++ ) hashlist.emplace_back(*hptr);
-    
-    if ( m_deletePixelHashList.size() ) m_newpixel->disableModuleList(hashlist);    
-  }
-  
-  // and now handle all the disabling for the sct ... 
-  if ( m_initSCT.value() ) { 
-    
-    // first disable modules from the conditions summary tool
-    if ( m_disableFromConditions  && m_disableSCTFromConditions ) disableIDFromConditions(m_newsct, m_SCTConditionsTool);
-
-    // now *disable* the modules from robs the user has flagged
-    if ( m_deleteRobList.size() ) m_newsct->disableRobList(m_deleteRobList);
-    
-    // and disable any other modules from the module list
-    // have to convert the std::vector<unsigned int> into std::vector<IdentifierHash>  
-    std::vector<IdentifierHash> hashlist;
-    for ( std::vector<unsigned int>::const_iterator hptr(m_deleteSCTHashList.begin()) ; 
-	  hptr!=m_deleteSCTHashList.end() ; hptr ++ ) hashlist.emplace_back(*hptr);
-    
-    if ( m_deleteSCTHashList.size() ) m_newsct->disableModuleList(hashlist);
-  }
-
-  // and now handle all the disabling for the trt ... 
-  if ( m_initTRT.value() ) { 
-
-    // first disable modules from the conditions summary services
-    //    if ( m_disableFromConditions ) disableIDFromConditions(m_newtrt, "TRT_ConditionsSummarySvc");
-    if ( m_disableFromConditions  && m_disableTRTFromConditions ) disableIDFromConditions(m_newtrt, m_TRTConditionsSvc);
-    
-    // now *disable* the modules from robs the user has flagged
-    if ( m_deleteRobList.size() ) m_newtrt->disableRobList(m_deleteRobList);
-
-    // and disable any other modules from the module list
-    // have to convert the std::vector<unsigned int> into std::vector<IdentifierHash>  
-    std::vector<IdentifierHash> hashlist;
-    for ( std::vector<unsigned int>::const_iterator hptr(m_deleteTRTHashList.begin()) ; 
-	  hptr!=m_deleteTRTHashList.end() ; hptr ++ ) hashlist.emplace_back(*hptr);
-    
-    if ( m_deleteTRTHashList.size() ) m_newtrt->disableModuleList(hashlist);
-  }
-
-
   return true;
 }
 
diff --git a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelCablingCondAlg.cxx b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelCablingCondAlg.cxx
index ef10e7d4be3..26aa988b7a0 100644
--- a/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelCablingCondAlg.cxx
+++ b/InnerDetector/InDetConditions/PixelConditionsAlgorithms/src/PixelCablingCondAlg.cxx
@@ -52,8 +52,12 @@ StatusCode PixelCablingCondAlg::initialize() {
   std::unique_ptr<PixelCablingCondData> writeCdo(std::make_unique<PixelCablingCondData>());
   const EventIDBase::number_type UNDEFNUM = EventIDBase::UNDEFNUM;
   const EventIDBase::event_number_t UNDEFEVT = EventIDBase::UNDEFEVT;
+
+  /// FIXME: this is a hack to get the code to work - the comfiguration should be 
+  ///        such that the cabling is now only configured with a proper IoV and not 
+  ///        in the initialise method
   EventIDRange rangeW (EventIDBase (0, UNDEFEVT, UNDEFNUM, 0, 0),
-                       EventIDBase (1, UNDEFEVT, UNDEFNUM, 0, 0));
+                       EventIDBase (9999999, UNDEFEVT, UNDEFNUM, 0, 0));
 
   // Signed values
   int barrel_ec, eta_module;
diff --git a/InnerDetector/InDetDetDescr/InDetRegionSelector/src/InDetRegionSelectorLUT.cxx b/InnerDetector/InDetDetDescr/InDetRegionSelector/src/InDetRegionSelectorLUT.cxx
index 1fdd7bb66e9..ac581221fab 100755
--- a/InnerDetector/InDetDetDescr/InDetRegionSelector/src/InDetRegionSelectorLUT.cxx
+++ b/InnerDetector/InDetDetDescr/InDetRegionSelector/src/InDetRegionSelectorLUT.cxx
@@ -42,65 +42,8 @@ StatusCode InDetRegionSelectorLUT::initialize(){
   // get tools
   //
 
-  msg(MSG::INFO) << "InDetRegionSelectorLUT::initialize() " << name() << "\t" << m_lutCreatorToolPixel << endmsg;
+  ATH_MSG_INFO( "InDetRegionSelectorLUT::initialize() " << name() << " no longer used" );
   
-  // Pixel
-  if (!m_lutCreatorToolPixel) {  
-    msg(MSG::INFO) << "Pixel LUT Creator not configured " << m_lutCreatorToolPixel << endmsg;
-  } else {
-    if ( m_lutCreatorToolPixel.retrieve().isFailure() ) {
-      msg(MSG::FATAL) << "Failed to retrieve tool " << m_lutCreatorToolPixel << endmsg;
-      return StatusCode::FAILURE;
-    } else {
-      msg(MSG::INFO) << "Retrieved tool " << m_lutCreatorToolPixel << endmsg;
-      // compute LUT
-      const RegSelSiLUT* pixellut = m_lutCreatorToolPixel->getLUT();
-      if (!pixellut) { 
-		msg(MSG::ERROR) << "Pixel table missing" << endmsg;
-      } else if (m_doTests) {
-	msg(MSG::DEBUG) << "Test Pixel" << endmsg;
-	printTable(pixellut);
-      }
-    }
-  }
-  // SCT
-  if (!m_lutCreatorToolSCT) {  
-    msg(MSG::INFO) << "SCT LUT Creator not configured " << m_lutCreatorToolSCT << endmsg;
-  } else {
-    if ( m_lutCreatorToolSCT.retrieve().isFailure() ) {
-      msg(MSG::FATAL) << "Failed to retrieve tool " << m_lutCreatorToolSCT << endmsg;
-      return StatusCode::FAILURE;
-    } else {
-      msg(MSG::INFO) << "Retrieved tool " << m_lutCreatorToolSCT << endmsg;
-      // compute LUT
-      const RegSelSiLUT* sctlut = m_lutCreatorToolSCT->getLUT();
-      if (!sctlut) { 
-	msg(MSG::ERROR) << "SCT table missing" << endmsg;
-      } else if (m_doTests) {
-	msg(MSG::DEBUG) << "Test SCT" << endmsg;
-	printTable(sctlut);
-      }
-    }
-  }
-  // Pixel
-  if (!m_lutCreatorToolTRT) {  
-    msg(MSG::INFO) << "TRT LUT Creator not configured " << m_lutCreatorToolTRT << endmsg;
-  } else {
-    if ( m_lutCreatorToolTRT.retrieve().isFailure() ) {
-      msg(MSG::FATAL) << "Failed to retrieve tool " << m_lutCreatorToolSCT << endmsg;
-      return StatusCode::FAILURE;
-    } else {
-      msg(MSG::INFO) << "Retrieved tool " << m_lutCreatorToolSCT << endmsg;
-      // compute LUT
-      const RegSelSiLUT* trtlut = m_lutCreatorToolTRT->getLUT();
-      if (!trtlut) { 
-	msg(MSG::ERROR) << "TRT table missing" << endmsg;
-      } else if (m_doTests) {
-	msg(MSG::DEBUG) << "Test TRT" << endmsg;
-	printTable(trtlut);
-      }
-    }
-  }
   return StatusCode::SUCCESS;
 }
   
diff --git a/InnerDetector/InDetDetDescr/InDetRegionSelector/src/SiRegSelCondAlg.cxx b/InnerDetector/InDetDetDescr/InDetRegionSelector/src/SiRegSelCondAlg.cxx
index e11efe88f9d..cf624941498 100644
--- a/InnerDetector/InDetDetDescr/InDetRegionSelector/src/SiRegSelCondAlg.cxx
+++ b/InnerDetector/InDetDetDescr/InDetRegionSelector/src/SiRegSelCondAlg.cxx
@@ -81,6 +81,8 @@ StatusCode SiRegSelCondAlg::execute(const EventContext& ctx)  const
   std::unique_ptr<SG::ReadCondHandle<SCT_CablingData> >      sctCabling;
 
   EventIDRange id_range;
+
+  ATH_MSG_DEBUG( "RegSelCondAlg:" << name() );
   
   if (m_managerName=="SCT") { // SCT
     sctCabling = std::make_unique<SG::ReadCondHandle<SCT_CablingData> >( m_sctCablingKey, ctx );
@@ -90,13 +92,23 @@ StatusCode SiRegSelCondAlg::execute(const EventContext& ctx)  const
     }   
   }
   else { // PIXEL 
+
+    ATH_MSG_DEBUG( "RegSelCondAlg: " << name() << "\t" << m_pixCablingKey );
+    ATH_MSG_DEBUG( "RegSelCondAlg: " << ctx );
+    ATH_MSG_DEBUG( "RegSelCondAlg: " << id_range << "( initial range )" );
+
     pixCabling = std::make_unique<SG::ReadCondHandle<PixelCablingCondData> >( m_pixCablingKey, ctx );
     if( !pixCabling->range( id_range ) ) {
-      ATH_MSG_ERROR("Failed to retrieve validity range for " << pixCabling->key());
+      ATH_MSG_ERROR("Failed to retrieve validity range for " << pixCabling->key() << " : " << id_range );
       return StatusCode::FAILURE;
     }   
+    ATH_MSG_DEBUG( "RegSelCondAlg: " << id_range << "( final range )" );
+
   }
 
+  ATH_MSG_DEBUG( "RegSelCondAlg:" << name() << " done" );
+
+
   std::unique_ptr<RegSelSiLUT> rd;
 
   if   ( m_managerName=="Pixel" ) rd = std::make_unique<RegSelSiLUT>(RegSelSiLUT::PIXEL);
diff --git a/InnerDetector/InDetDetDescr/InDetRegionSelector/src/SiRegionSelectorTable.cxx b/InnerDetector/InDetDetDescr/InDetRegionSelector/src/SiRegionSelectorTable.cxx
index a67fd227535..4e1d64da481 100755
--- a/InnerDetector/InDetDetDescr/InDetRegionSelector/src/SiRegionSelectorTable.cxx
+++ b/InnerDetector/InDetDetDescr/InDetRegionSelector/src/SiRegionSelectorTable.cxx
@@ -73,18 +73,11 @@ SiRegionSelectorTable::initialize(){
 
   if (m_managerName.empty()) {
     msg(MSG::WARNING) << "Tool disabled." << endmsg;
-    return StatusCode::FAILURE;
   } 
  
-  ATH_CHECK(m_condCablingKey.initialize());
+  //  ATH_CHECK(m_condCablingKey.initialize());
 
   ATH_MSG_WARNING("So far, this prevents the conditions migration!! The createTable() should NOT be used in the initilization step...");
-  const EventIDBase::number_type UNDEFNUM = EventIDBase::UNDEFNUM;
-  const EventIDBase::event_number_t UNDEFEVT = EventIDBase::UNDEFEVT;
-  EventContext ctx = Gaudi::Hive::currentContext();
-  ctx.setEventID (EventIDBase (0, UNDEFEVT, UNDEFNUM, 0, 0));
-  Atlas::getExtendedEventContext(ctx).setConditionsRun (0);
-  ATH_CHECK(createTable (ctx));
 
   return StatusCode::SUCCESS;
 }
@@ -92,10 +85,6 @@ SiRegionSelectorTable::initialize(){
 
 SiRegionSelectorTable::~SiRegionSelectorTable()
 {
-  // table is stored in storegate so nothing to delete.
-#ifndef USE_STOREGATE
-  if ( m_regionLUT ) delete m_regionLUT;
-#endif
 }
 
 
@@ -109,162 +98,9 @@ RegSelSiLUT* SiRegionSelectorTable::getLUT()
 
 
 StatusCode 
-SiRegionSelectorTable::createTable (const EventContext& ctx)
+SiRegionSelectorTable::createTable (const EventContext& /* ctx */ )
 {
-
-  if ( msgLvl(MSG::DEBUG) )  msg(MSG::DEBUG) << "Creating region selector table"  << endmsg;
-
-  StatusCode sc;
-
-  // Retrieve manager
-  const SiDetectorManager * manager;
-  sc=detStore()->retrieve(manager, m_managerName);
-
-  if (sc.isFailure()) {
-    msg(MSG::FATAL) << "Could not find the Manager: "
-	<< m_managerName << " !" << endmsg;
-    return StatusCode::FAILURE;
-  } else {
-    if ( msgLvl(MSG::DEBUG) )  msg(MSG::DEBUG) << "Manager found" << endmsg;
-  }
-
-  ATH_CHECK(m_sctCablingToolInc.retrieve( DisableTool{manager->isPixel()} ));
-
-  // Create RegionSelectorLUT pointers for Pixel or Sct
-  //  RegionSelectorLUT*  rslut = new RegionSelectorLUT;
-  
-  RegSelSiLUT* rd;
-
-  if   ( manager->isPixel() ) rd = new RegSelSiLUT(RegSelSiLUT::PIXEL);
-  else                        rd = new RegSelSiLUT(RegSelSiLUT::SCT);
-
-
-  SG::ReadCondHandle<PixelCablingCondData> pixCabling(m_condCablingKey, ctx);
-
-  SiDetectorElementCollection::const_iterator iter;
-  for (iter = manager->getDetectorElementBegin(); iter != manager->getDetectorElementEnd(); ++iter){
-
-    const SiDetectorElement* element = *iter; 
-
-    if (element) {
-
-      IdentifierHash hashId = element->identifyHash();    
-      
-      if ( msgLvl(MSG::VERBOSE) ) msg(MSG::VERBOSE) << "Found element with HashId = " << hashId << endmsg;
-   
-      // new region selector detector element extent.
-      double rMin, rMax, zMin, zMax, phiMin, phiMax;
-
-      rMin    = element->rMin();
-      rMax    = element->rMax();
-      zMin    = element->zMin();
-      zMax    = element->zMax();
-      phiMin  = element->phiMin();
-      phiMax  = element->phiMax();
-
-
-      int barrelEC = 0; 
-      int layerDisk = 0;
-      uint32_t robId = 0;
-
-      if (element->isPixel()) {
-
-	const PixelID* pixelId = dynamic_cast<const PixelID*>(element->getIdHelper());
-	if ( pixelId!=0 ) { 
-	  barrelEC  = pixelId->barrel_ec(element->identify());
-
-	  if ( m_noDBM && std::fabs(barrelEC)>3 ) continue; // skip DBM modules
-
-	  layerDisk = pixelId->layer_disk(element->identify());
-    robId=pixCabling->find_entry_offrob(element->identify());
-	}
-	else { 
-	  msg(MSG::ERROR) << " could not get PixelID for " << element->getIdHelper() << endmsg;
-	}
-      } else { // Its an SCT.
-
-	const SCT_ID* sctId = dynamic_cast<const SCT_ID*>(element->getIdHelper());
-	if ( sctId!=0 ) {      
-	  barrelEC  = sctId->barrel_ec(element->identify());
-	  layerDisk = sctId->layer_disk(element->identify());
-	  robId=m_sctCablingToolInc->getRobIdFromOfflineId(element->identify());
-	}
-	else { 
-	  msg(MSG::ERROR) << " could not get SCT_ID for " << element->getIdHelper() << endmsg;
-	}
-      }
-
-      // write in new Region Selector Si LUT
-      // create module      
-      RegSelModule smod(zMin,zMax,rMin,rMax,phiMin,phiMax,layerDisk,barrelEC,robId,hashId);
-	
-      // if ( robId ) {
-      // add to the new RegionSelector map     
-      rd->addModule(smod);
-      // }
-      // else { 
-      //	msg(MSG::WARNING) << "module with RobID=0x0 - not added to look up table " << smod << endmsg;
-      // }
-      
-      if ( msgLvl(MSG::DEBUG) ) msg(MSG::DEBUG) << smod << endmsg;
-	
-      if ( msgLvl(MSG::VERBOSE) ) msg(MSG::VERBOSE) << "      " 
-						    << " robId = " << robId
-						    << " barrelEC = " << barrelEC 
-						    << ", layerDisk = " << layerDisk 
-						    << ", phiMin, phiMax = " << phiMin/CLHEP::degree << " " << phiMax/CLHEP::degree
-						    << ", rMin = " << rMin/CLHEP::mm << " mm, rMax = " << rMax/CLHEP::mm << " mm"  
-						    << endmsg;
-
-    }
-  }
-
-  msg(MSG::INFO) << " initialising new map " << endmsg;
-
-  rd->initialise();
-
-  // write out new new LUT to a file if need be
-  if ( m_printTable ) {
-    if ( manager->isPixel() ) rd->write("NewPixel"+m_roiFileName);
-    else                      rd->write("NewSCT"+m_roiFileName);
-  }
-
-  //  std::string key;
-  std::string detName;
-
-  std::string newkey;
-
-  if (manager->isPixel()) {
-    newkey = "PixelRegSelSiLUT";
-    detName = "Pixel";
-  } else {
-    newkey = "SCTRegSelSiLUT";
-    detName = "SCT";
-  }
-
-#ifndef USE_STOREGATE
-  if ( m_regionLUT ) delete m_regionLUT;
-#endif
-  m_regionLUT = rd;
-
-#ifdef USE_STOREGATE
-  // save new map in StoreGate RegSelSiLUT
-  if ( detStore()->contains< RegSelSiLUT >(newkey) ) {
-    msg(MSG::FATAL) << " RegSelSiLUT " << newkey << " already exists " << endmsg;
-  } else {
-    // create and store LUT
-    // needs to be modifiable so we can enable/disable modules 
-    // from the RegSelSvc
-    sc = detStore()->record(rd, newkey, true);
-    if ( sc.isFailure() ) {
-      msg(MSG::ERROR) << " could not register " << detName << " RegSelSiLUT" << endmsg;
-      return( StatusCode::FAILURE );
-    } else {
-      msg(MSG::INFO) << detName << " RegSelSiLUT successfully saved in detector Store" << endmsg;
-    }
-  }
-#endif
- 
+  ATH_MSG_INFO( "SiRegionSelectorTable::createTable() - no longer in use" );
   return StatusCode::SUCCESS;
 }
 
diff --git a/LArCalorimeter/LArRegionSelector/src/RegSelCondAlg_LAr.cxx b/LArCalorimeter/LArRegionSelector/src/RegSelCondAlg_LAr.cxx
index 80f83619e65..755a015b96b 100644
--- a/LArCalorimeter/LArRegionSelector/src/RegSelCondAlg_LAr.cxx
+++ b/LArCalorimeter/LArRegionSelector/src/RegSelCondAlg_LAr.cxx
@@ -56,9 +56,9 @@ StatusCode RegSelCondAlg_LAr::initialize() {
 
 StatusCode RegSelCondAlg_LAr::execute(const EventContext& ctx)  const {
 
-  ATH_MSG_DEBUG("RegSelCondAlg_LAr::execute() -- enter -- ");
-
-   /// do stuff here ...  
+  ATH_MSG_INFO( "RegSelConfAlg_LAr:execute() " << name() );
+   
+  /// do stuff here ...  
   ATH_MSG_DEBUG( "Creating region selector table " << m_tableKey );
 
   SG::WriteCondHandle<IRegSelLUTCondData> lutCondData( m_tableKey, ctx );
@@ -72,7 +72,7 @@ StatusCode RegSelCondAlg_LAr::execute(const EventContext& ctx)  const {
     return StatusCode::SUCCESS;
   }
 
-   
+
   /// annoyingly take the pixel cabling to determine whether to build this
   /// calorimeter table using the EventIDRange.
   /// Once the calorimeter has it own conditions data cabling, then we can
@@ -87,7 +87,8 @@ StatusCode RegSelCondAlg_LAr::execute(const EventContext& ctx)  const {
     return StatusCode::FAILURE;
   }   
 
-  
+  ATH_MSG_DEBUG( "RegSelConfAlg_LAr: " << name() << " found range: " << id_range );
+
   ATH_MSG_INFO( "creating new LAr table" );
 
   /// create the new lookup table
diff --git a/Trigger/TrigAlgorithms/TrigGenericAlgs/TrigGenericAlgs/SeededSuperRoiAllTEAlgo.h b/Trigger/TrigAlgorithms/TrigGenericAlgs/TrigGenericAlgs/SeededSuperRoiAllTEAlgo.h
index e92833f1941..05a84106872 100755
--- a/Trigger/TrigAlgorithms/TrigGenericAlgs/TrigGenericAlgs/SeededSuperRoiAllTEAlgo.h
+++ b/Trigger/TrigAlgorithms/TrigGenericAlgs/TrigGenericAlgs/SeededSuperRoiAllTEAlgo.h
@@ -25,7 +25,6 @@
 #include "TrigInterfaces/AllTEAlgo.h"
 
 
-class IRegSelSvc;
 
 namespace HLT {
   class TriggerElement;
@@ -69,10 +68,6 @@ namespace PESA
     double m_etaHalfWidth;
     double m_phiHalfWidth;
 
-
-    std::string       m_regionSelectorName;
-    IRegSelSvc*       m_regionSelector;
-
   };
 } // end of namespace
 
diff --git a/Trigger/TrigAlgorithms/TrigGenericAlgs/src/SeededSuperRoiAllTEAlgo.cxx b/Trigger/TrigAlgorithms/TrigGenericAlgs/src/SeededSuperRoiAllTEAlgo.cxx
index 027e31b9ff0..0981eb37e10 100755
--- a/Trigger/TrigAlgorithms/TrigGenericAlgs/src/SeededSuperRoiAllTEAlgo.cxx
+++ b/Trigger/TrigAlgorithms/TrigGenericAlgs/src/SeededSuperRoiAllTEAlgo.cxx
@@ -5,7 +5,6 @@
 
 #include "TrigGenericAlgs/SeededSuperRoiAllTEAlgo.h"
 #include "TrigNavigation/TriggerElement.h"
-#include "IRegionSelector/IRegSelSvc.h"
 
 #include "TrigSteeringEvent/TrigRoiDescriptor.h"
 #include "CxxUtils/phihelper.h"
@@ -16,8 +15,7 @@ SeededSuperRoiAllTEAlgo::SeededSuperRoiAllTEAlgo(const std::string& name, ISvcLo
   : HLT::AllTEAlgo(name, pSvcLocator),
     m_runOncePerEvent(true),
     m_was_run(false),
-    m_useRoiSizes(true),
-    m_regionSelector(0)
+    m_useRoiSizes(true)
 {
   declareProperty("NumberOfOutputTEs", m_numberOfOutputTEs = 1, "configure the number of output TEs this algorithm will create");
   declareProperty("createRoIDescriptors",  m_createRoIDescriptors=true, "create SuperRoi descriptor if set true");
@@ -27,7 +25,6 @@ SeededSuperRoiAllTEAlgo::SeededSuperRoiAllTEAlgo(const std::string& name, ISvcLo
   declareProperty("UseRoiSizes",  m_useRoiSizes=true, "User RoI sizes rather than width parameters");
   declareProperty("EtaHalfWidth",  m_etaHalfWidth=0.1, "RoI eta half width");
   declareProperty("PhiHalfWidth",  m_phiHalfWidth=0.1, "RoI phi half width");
-  declareProperty("RegionSelectorTool",    m_regionSelectorName = "RegSelSvc", "instance of the RegionSelector service");
 }
 
 
@@ -35,12 +32,6 @@ HLT::ErrorCode SeededSuperRoiAllTEAlgo::hltInitialize(){
 
   m_was_run=false; 
 
-  if ( (serviceLocator()->service( m_regionSelectorName, m_regionSelector)).isFailure() ) {
-    msg() << MSG::FATAL 
-	  << "Unable to retrieve RegionSelector Service  " << m_regionSelectorName << endmsg;
-    return HLT::BAD_JOB_SETUP;
-  };
-
   return HLT::OK; 
 }
 
@@ -159,16 +150,6 @@ HLT::ErrorCode SeededSuperRoiAllTEAlgo::hltEndEvent() {
 
 HLT::ErrorCode SeededSuperRoiAllTEAlgo::prepareRobRequests(const std::vector<HLT::TEConstVec>& /* inputTE */){
 
-  std::vector<unsigned int> uIntListOfRobs;
-
-  if (m_prefetchPIX){
-    m_regionSelector->DetROBIDListUint( PIXEL, uIntListOfRobs);
-  }
-  if (m_prefetchSCT){
-    m_regionSelector->DetROBIDListUint( SCT, uIntListOfRobs);
-  }
-
-  config()->robRequestInfo()->addRequestScheduledRobIDs(uIntListOfRobs); 	
 
   return HLT::OK;
 } 
diff --git a/Trigger/TrigAlgorithms/TrigT2MinBias/CMakeLists.txt b/Trigger/TrigAlgorithms/TrigT2MinBias/CMakeLists.txt
index b5617482676..e4353a7b87d 100644
--- a/Trigger/TrigAlgorithms/TrigT2MinBias/CMakeLists.txt
+++ b/Trigger/TrigAlgorithms/TrigT2MinBias/CMakeLists.txt
@@ -10,7 +10,7 @@ find_package( tdaq-common )
 atlas_add_component( TrigT2MinBias
                      src/*.cxx src/components/*.cxx
                      INCLUDE_DIRS ${TDAQ-COMMON_INCLUDE_DIRS}
-                     LINK_LIBRARIES ${TDAQ-COMMON_LIBRARIES} AthViews AthenaBaseComps AthenaMonitoringKernelLib CaloEvent CaloIdentifier DecisionHandlingLib GaudiKernel IRegionSelector InDetIdentifier InDetPrepRawData InDetRawData StoreGateLib TileByteStreamLib TileConditionsLib TileEvent TileIdentifier TrigCaloEvent TrigCompositeUtilsLib TrigInDetEvent TrigInDetToolInterfacesLib TrigInterfacesLib TrigSteeringEvent TrigT2CaloCommonLib TrigTimeAlgsLib TrkSpacePoint ZdcConditions ZdcEvent ZdcIdentifier xAODEventInfo xAODTrigMinBias xAODTrigger )
+                     LINK_LIBRARIES ${TDAQ-COMMON_LIBRARIES} AthViews AthenaBaseComps AthenaMonitoringKernelLib CaloEvent CaloIdentifier DecisionHandlingLib GaudiKernel IRegionSelector RoiDescriptor InDetIdentifier InDetPrepRawData InDetRawData StoreGateLib TileByteStreamLib TileConditionsLib TileEvent TileIdentifier TrigCaloEvent TrigCompositeUtilsLib TrigInDetEvent TrigInDetToolInterfacesLib TrigInterfacesLib TrigSteeringEvent TrigT2CaloCommonLib TrigTimeAlgsLib TrkSpacePoint ZdcConditions ZdcEvent ZdcIdentifier xAODEventInfo xAODTrigMinBias xAODTrigger )
 
 # Install files from the package:
 atlas_install_python_modules( python/*.py POST_BUILD_CMD ${ATLAS_FLAKE8} --extend-extensions=ATL900,ATL901 )
diff --git a/Trigger/TrigAlgorithms/TrigT2MinBias/python/TrigT2MinBiasConfig.py b/Trigger/TrigAlgorithms/TrigT2MinBias/python/TrigT2MinBiasConfig.py
index f72969c45a8..9a628e21429 100644
--- a/Trigger/TrigAlgorithms/TrigT2MinBias/python/TrigT2MinBiasConfig.py
+++ b/Trigger/TrigAlgorithms/TrigT2MinBias/python/TrigT2MinBiasConfig.py
@@ -416,6 +416,12 @@ class MbSpFex ( TrigCountSpacePoints ) :
         self.PixelClusSizeMin = trigT2MinBiasProperties.pixelClusSizeMin()
         self.PixelClusSizeMax = trigT2MinBiasProperties.pixelClusSizeMax()
 
+        from RegionSelector.RegSelToolConfig import makeRegSelTool_Pixel
+        from RegionSelector.RegSelToolConfig import makeRegSelTool_SCT
+
+        self.RegSelTool_Pixel = makeRegSelTool_Pixel()
+        self.RegSelTool_SCT   = makeRegSelTool_SCT()
+
         #self.SpacePointProviderTool = ospTool
         time = TrigTimeHistToolConfig("MbSpFexTimers")
         time.NumberOfHistBins = 100
diff --git a/Trigger/TrigAlgorithms/TrigT2MinBias/src/TrigCountSpacePoints.cxx b/Trigger/TrigAlgorithms/TrigT2MinBias/src/TrigCountSpacePoints.cxx
index d5ffe2de289..e0a280de66a 100644
--- a/Trigger/TrigAlgorithms/TrigT2MinBias/src/TrigCountSpacePoints.cxx
+++ b/Trigger/TrigAlgorithms/TrigT2MinBias/src/TrigCountSpacePoints.cxx
@@ -12,7 +12,8 @@
 #include "InDetIdentifier/SCT_ID.h"
 #include "InDetIdentifier/PixelID.h"
 
-#include "IRegionSelector/IRegSelSvc.h"
+#include "RoiDescriptor/RoiDescriptor.h"
+#include "IRegionSelector/IRegSelTool.h"
 
 #include "InDetPrepRawData/SiClusterContainer.h"
 #include "InDetPrepRawData/PixelClusterContainer.h"
@@ -33,7 +34,6 @@
 TrigCountSpacePoints::TrigCountSpacePoints(const std::string& name, ISvcLocator* pSvcLocator)
   : HLT::AllTEAlgo(name, pSvcLocator),
     m_hltExecuteInitialisationRun(kFALSE),
-    m_regionSelector("RegSelSvc", name),
     m_doPixelSp(true),
     m_doSctSp(true),
     m_doOnlyBLayer(false),
@@ -55,7 +55,6 @@ TrigCountSpacePoints::TrigCountSpacePoints(const std::string& name, ISvcLocator*
 
   declareProperty( "PixelSP_ContainerName",                   m_pixelSpName = "PixelTrigSpacePoints"  );
   declareProperty( "SCT_SP_ContainerName",                    m_sctSpName = "SCT_TrigSpacePoints"     );
-  declareProperty("RegionSelectorTool",                       m_regionSelector);
   declareProperty( "ReadPixelSp",                             m_doPixelSp = true );
   declareProperty( "ReadSctSp",                               m_doSctSp = true );
   declareProperty( "OnlyCountBLayer",                         m_doOnlyBLayer = false );
@@ -171,8 +170,15 @@ HLT::ErrorCode TrigCountSpacePoints::hltInitialize() {
   ATH_MSG_DEBUG("Initialize this TrigCountSpacePoints: " << name());
 
   // Retrieving Region Selector Tool
-  if ( m_regionSelector.retrieve().isFailure() ) {
-    ATH_MSG_FATAL("Unable to retrieve RegionSelector tool " << m_regionSelector.type());
+  if ( m_regionSelector_pix.retrieve().isFailure() ) {
+    ATH_MSG_FATAL("Unable to retrieve RegionSelector tool " << m_regionSelector_pix.type());
+    return HLT::ErrorCode(HLT::Action::ABORT_JOB, HLT::Reason::BAD_JOB_SETUP);
+  }
+
+
+  // Retrieving Region Selector Tool
+  if ( m_regionSelector_sct.retrieve().isFailure() ) {
+    ATH_MSG_FATAL("Unable to retrieve RegionSelector tool " << m_regionSelector_sct.type());
     return HLT::ErrorCode(HLT::Action::ABORT_JOB, HLT::Reason::BAD_JOB_SETUP);
   }
 
@@ -392,7 +398,7 @@ HLT::ErrorCode TrigCountSpacePoints::hltExecute(std::vector<std::vector<HLT::Tri
       //sc = StatusCode::FAILURE;
     }
 
-    m_regionSelector->DetHashIDList(PIXEL, m_listOfPixIds );
+    m_regionSelector_pix->HashIDList( RoiDescriptor(true), m_listOfPixIds );
     m_pixListSize = m_listOfPixIds.size();//.....................................................................
 
     if( m_pixListSize != 0 ){
@@ -612,7 +618,7 @@ HLT::ErrorCode TrigCountSpacePoints::hltExecute(std::vector<std::vector<HLT::Tri
     }
 
 
-    m_regionSelector->DetHashIDList(SCT, m_listOfSctIds );
+    m_regionSelector_sct->HashIDList( RoiDescriptor(true), m_listOfSctIds );
     m_sctListSize = m_listOfSctIds.size();
 
     if( m_sctListSize !=0 ){
diff --git a/Trigger/TrigAlgorithms/TrigT2MinBias/src/TrigCountSpacePoints.h b/Trigger/TrigAlgorithms/TrigT2MinBias/src/TrigCountSpacePoints.h
index e1ae048b3b8..2e6ab53235a 100644
--- a/Trigger/TrigAlgorithms/TrigT2MinBias/src/TrigCountSpacePoints.h
+++ b/Trigger/TrigAlgorithms/TrigT2MinBias/src/TrigCountSpacePoints.h
@@ -11,11 +11,12 @@
 
 #include "xAODTrigMinBias/TrigSpacePointCounts.h"
 #include "xAODTrigMinBias/TrigHisto2D.h"
+#include "IRegionSelector/IRegSelTool.h"
 
 class SCT_ID;
 class PixelID;
 class TrigSpacePointCounts;
-class IRegSelSvc;
+
 
 /** @class TrigCountSpacePoints
 
@@ -47,7 +48,8 @@ class TrigCountSpacePoints: public HLT::AllTEAlgo {
   HLT::ErrorCode checkDetectorMask();
   
   Bool_t                        m_hltExecuteInitialisationRun; //!< Flag to run extra initialisation on the first event when xAOD::EventInfo is present
-  ServiceHandle<IRegSelSvc>     m_regionSelector;      //!< region selector service
+  ToolHandle<IRegSelTool>     m_regionSelector_pix{ this, "RegSelTool_Pixel", "RegSelTool/RegSelTool_Pixel" };      //!< region selector service
+  ToolHandle<IRegSelTool>     m_regionSelector_sct{ this, "RegSelTool_SCT",   "RegSelTool/RegSelTool_SCT"   };      //!< region selector service
   
   bool m_doPixelSp; //!< Flag to switch on or off Pixel space point retrieval 
   bool m_doSctSp; //!< Flag to switch on or off SCT space point retrieval 
diff --git a/Trigger/TrigHypothesis/TrigLongLivedParticlesHypo/CMakeLists.txt b/Trigger/TrigHypothesis/TrigLongLivedParticlesHypo/CMakeLists.txt
index 7b1dcb88186..acc336c8781 100644
--- a/Trigger/TrigHypothesis/TrigLongLivedParticlesHypo/CMakeLists.txt
+++ b/Trigger/TrigHypothesis/TrigLongLivedParticlesHypo/CMakeLists.txt
@@ -11,7 +11,7 @@ atlas_add_component( TrigLongLivedParticlesHypo
                      src/*.cxx
                      src/components/*.cxx
                      INCLUDE_DIRS ${TDAQ-COMMON_INCLUDE_DIRS}
-                     LINK_LIBRARIES ${TDAQ-COMMON_LIBRARIES} CaloEvent CxxUtils GaudiKernel IRegionSelector InDetIdentifier InDetPrepRawData TrigCaloEvent TrigInDetEvent TrigInterfacesLib TrigParticle TrigSteeringEvent TrigTimeAlgsLib TrkSpacePoint xAODEventInfo xAODJet xAODTracking xAODTrigger )
+                     LINK_LIBRARIES ${TDAQ-COMMON_LIBRARIES} CaloEvent CxxUtils GaudiKernel IRegionSelector RoiDescriptor InDetIdentifier InDetPrepRawData TrigCaloEvent TrigInDetEvent TrigInterfacesLib TrigParticle TrigSteeringEvent TrigTimeAlgsLib TrkSpacePoint xAODEventInfo xAODJet xAODTracking xAODTrigger )
 
 # Install files from the package:
 atlas_install_python_modules( python/*.py POST_BUILD_CMD ${ATLAS_FLAKE8} --extend-extensions=ATL900,ATL901 )
diff --git a/Trigger/TrigHypothesis/TrigLongLivedParticlesHypo/TrigLongLivedParticlesHypo/TrigLLPInnerDetectorHypo.h b/Trigger/TrigHypothesis/TrigLongLivedParticlesHypo/TrigLongLivedParticlesHypo/TrigLLPInnerDetectorHypo.h
index 649d897c9c5..a97558a9b8c 100644
--- a/Trigger/TrigHypothesis/TrigLongLivedParticlesHypo/TrigLongLivedParticlesHypo/TrigLLPInnerDetectorHypo.h
+++ b/Trigger/TrigHypothesis/TrigLongLivedParticlesHypo/TrigLongLivedParticlesHypo/TrigLLPInnerDetectorHypo.h
@@ -18,10 +18,13 @@
 #include "GaudiKernel/ToolHandle.h"
 #include "TrigInterfaces/HypoAlgo.h"
 
+#include "IRegionSelector/IRegSelTool.h"
+
+
 class StoreGateSvc;
 class SCT_ID;
 class PixelID;
-class IRegSelSvc;
+
 
 
 class TrigLLPInnerDetectorHypo: public HLT::HypoAlgo {
@@ -40,7 +43,9 @@ class TrigLLPInnerDetectorHypo: public HLT::HypoAlgo {
   HLT::ErrorCode checkDetectorMask();
   
   Bool_t                        m_hltExecuteInitialisationRun; //!< Flag to run extra initialisation on the first event when xAOD::EventInfo is present
-  ServiceHandle<IRegSelSvc>     m_regionSelector;      //!< region selector service
+
+  ToolHandle<IRegSelTool>  m_regionSelector_pix { this, "RegSelTool_Pixel", "RegSelTool/RegSelTool_Pixel" };      //!< region selector tool
+  ToolHandle<IRegSelTool>  m_regionSelector_sct { this, "RegSelTool_SCT",   "RegSelTool/RegSelTool_SCT"   };      //!< region selector tool
   
   const PixelID* m_pixHelper;   
   const SCT_ID* m_sctHelper;
diff --git a/Trigger/TrigHypothesis/TrigLongLivedParticlesHypo/src/TrigLLPInnerDetectorHypo.cxx b/Trigger/TrigHypothesis/TrigLongLivedParticlesHypo/src/TrigLLPInnerDetectorHypo.cxx
index 2482c6ff75b..a2a2094b472 100644
--- a/Trigger/TrigHypothesis/TrigLongLivedParticlesHypo/src/TrigLLPInnerDetectorHypo.cxx
+++ b/Trigger/TrigHypothesis/TrigLongLivedParticlesHypo/src/TrigLLPInnerDetectorHypo.cxx
@@ -8,12 +8,12 @@
 #include "eformat/DetectorMask.h"
 #include "eformat/SourceIdentifier.h"
 
+#include "RoiDescriptor/RoiDescriptor.h"
+
 #include "InDetPrepRawData/PixelCluster.h"
 #include "InDetIdentifier/SCT_ID.h"
 #include "InDetIdentifier/PixelID.h"
 
-#include "IRegionSelector/IRegSelSvc.h"
-
 #include "InDetPrepRawData/SiClusterContainer.h"
 #include "InDetPrepRawData/PixelClusterContainer.h"
 #include "InDetPrepRawData/SCT_ClusterContainer.h"
@@ -31,14 +31,12 @@
 TrigLLPInnerDetectorHypo::TrigLLPInnerDetectorHypo(const std::string& name, ISvcLocator* pSvcLocator)
   : HLT::HypoAlgo(name, pSvcLocator), 
     m_hltExecuteInitialisationRun(kFALSE),
-    m_regionSelector("RegSelSvc", name),
     m_pixHelper(0),
     m_sctHelper(0)
     {
 
       declareProperty("PixelSP_ContainerName",                   m_pixelSpName = "PixelTrigSpacePoints"  );
       declareProperty("SCT_SP_ContainerName",                    m_sctSpName = "SCT_TrigSpacePoints"     );
-      declareProperty("RegionSelectorTool",                      m_regionSelector);
       
       declareProperty("MaxNModIdentifier",                       m_maxnid = 100 );
       declareProperty("PixelModuleThreshold",                    m_pixModuleThreshold = 50 );
@@ -102,11 +100,21 @@ HLT::ErrorCode TrigLLPInnerDetectorHypo::hltInitialize() {
 
   ATH_MSG_DEBUG( "Initialize: " << name()  );
 
-  if ( m_regionSelector.retrieve().isFailure() ) {
-    ATH_MSG_FATAL( "Unable to retrieve RegionSelector tool " << m_regionSelector.type()  );
+  if ( m_regionSelector_pix.retrieve().isFailure() ) {
+    ATH_MSG_FATAL( "Unable to retrieve RegionSelector tool " << m_regionSelector_pix.type()  );
     return HLT::ErrorCode(HLT::Action::ABORT_JOB, HLT::Reason::BAD_JOB_SETUP);
-  } else
-    ATH_MSG_INFO( "Successfully initialised RegionSelector tool !"  );
+  } else { 
+    ATH_MSG_INFO( "Successfully initialised Pixel RegionSelector tool !"  );
+  }
+
+
+  if ( m_regionSelector_sct.retrieve().isFailure() ) {
+    ATH_MSG_FATAL( "Unable to retrieve RegionSelector tool " << m_regionSelector_sct.type()  );
+    return HLT::ErrorCode(HLT::Action::ABORT_JOB, HLT::Reason::BAD_JOB_SETUP);
+  } else { 
+    ATH_MSG_INFO( "Successfully initialised SCT RegionSelector tool !"  );
+  }
+
 
   StatusCode sc_pixH = detStore()->retrieve(m_pixHelper, "PixelID");
   if( sc_pixH.isFailure() ){
@@ -227,7 +235,7 @@ HLT::ErrorCode TrigLLPInnerDetectorHypo::hltExecute(const HLT::TriggerElement* /
     ATH_MSG_DEBUG( "Successfully retrieved pixel SP container!"  );
   }
   
-  m_regionSelector->DetHashIDList(PIXEL, m_listOfPixIds );
+  m_regionSelector_pix->HashIDList( RoiDescriptor(true), m_listOfPixIds );
   m_pixListSize = m_listOfPixIds.size();
   
   if( m_pixListSize != 0 ){
@@ -304,7 +312,7 @@ HLT::ErrorCode TrigLLPInnerDetectorHypo::hltExecute(const HLT::TriggerElement* /
     return HLT::TOOL_FAILURE;
   }
   
-  m_regionSelector->DetHashIDList(SCT, m_listOfSctIds );
+  m_regionSelector_sct->HashIDList( RoiDescriptor(true), m_listOfSctIds );
   m_sctListSize = m_listOfSctIds.size();
   
   if( m_sctListSize !=0 ){
diff --git a/Trigger/TrigTools/TrigInDetConf/python/RoiManipulators.py b/Trigger/TrigTools/TrigInDetConf/python/RoiManipulators.py
index d2bc90f67ff..1f111e49f8d 100644
--- a/Trigger/TrigTools/TrigInDetConf/python/RoiManipulators.py
+++ b/Trigger/TrigTools/TrigInDetConf/python/RoiManipulators.py
@@ -7,18 +7,12 @@ class IDTrigRoiUpdater ( PESA__TrigRoiUpdater ):
   def __init__(self, name="IDTrigRoiUpdater_Electron_IDT", type="electron"):
     super ( PESA__TrigRoiUpdater, self ).__init__(name)
 
-    print( "\n\n\n\nRoiUpdater:: ", name ) 
-    
-
     from RegionSelector.RegSelToolConfig import makeRegSelTool_Pixel
     from RegionSelector.RegSelToolConfig import makeRegSelTool_SCT
 
     self.RegSelTool_Pixel = makeRegSelTool_Pixel()
     self.RegSelTool_SCT   = makeRegSelTool_SCT()
 
-    print( "added RegSelTools\n\n\n\n" ) 
-
-
     from InDetTrigRecExample.InDetTrigSliceSettings import InDetTrigSliceSettings
     self.EtaHalfWidth = InDetTrigSliceSettings[('etaHalfWidth',type)]
     self.PhiHalfWidth = InDetTrigSliceSettings[('phiHalfWidth',type)]
-- 
GitLab