diff --git a/InnerDetector/InDetConfig/python/SiliconPreProcessing.py b/InnerDetector/InDetConfig/python/SiliconPreProcessing.py
index 99e8c801659487013a3ee067df7da9296f1e441b..292e6fcbcf4fb6672b6c12cf64f7885267a9d47a 100644
--- a/InnerDetector/InDetConfig/python/SiliconPreProcessing.py
+++ b/InnerDetector/InDetConfig/python/SiliconPreProcessing.py
@@ -115,9 +115,9 @@ def ITkRecPreProcessingSiliconCfg(flags):
         
     if flags.Tracking.ActiveConfig.doActsCluster:
         # If ACTS clusterization is activated, then schedule RoI creator
-        from ActsConfig.ActsViewConfig import ActsEventViewCreatorAlgCfg
-        acc.merge(ActsEventViewCreatorAlgCfg(flags,
-                                             name=f"{flags.Tracking.ActiveConfig.extension}EventViewCreatorAlg"))
+        from ActsConfig.ActsRegionsOfInterestConfig import ActsRegionsOfInterestCreatorAlgCfg
+        acc.merge(ActsRegionsOfInterestCreatorAlgCfg(flags,
+                                                     name=f"{flags.Tracking.ActiveConfig.extension}RegionsOfInterestCreatorAlg"))
 
         from ActsConfig.ActsClusterizationConfig import ActsClusterizationCfg
         acc.merge(ActsClusterizationCfg(flags))
diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_run4_acts_ttbar_PU200.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_run4_acts_ttbar_PU200.sh
index 50537358495c64a94057c865822fa12b988a65ff..b6e348bbb405d26fb46bfed8b83208b46ac41891 100755
--- a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_run4_acts_ttbar_PU200.sh
+++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_run4_acts_ttbar_PU200.sh
@@ -43,7 +43,7 @@ run "Reconstruction" \
     --outputAODFile AOD.root \
     --steering doRAWtoALL \
     --preInclude "InDetConfig.ConfigurationHelpers.OnlyTrackingPreInclude" \
-    --postInclude "ActsConfig.ActsViewConfig.ActsGlobalEventViewCreatorAlgCfg,ActsConfig.ActsClusterizationConfig.ActsMainClusterizationCfg,ActsConfig.ActsSpacePointFormationConfig.ActsMainSpacePointFormationCfg,ActsConfig.ActsPostIncludes.PersistifyActsEDMCfg" \
+    --postInclude "ActsConfig.ActsRegionsOfInterestConfig.ActsMainRegionsOfInterestCreatorAlgCfg,ActsConfig.ActsClusterizationConfig.ActsMainClusterizationCfg,ActsConfig.ActsSpacePointFormationConfig.ActsMainSpacePointFormationCfg,ActsConfig.ActsPostIncludes.PersistifyActsEDMCfg" \
     --preExec "flags.Reco.EnableHGTDExtension=False;flags.Acts.EDM.PersistifyClusters=True;flags.Acts.EDM.PersistifySpacePoints=True;" \
     --ignorePatterns "${ignore_pattern}" \
     --maxEvents 20 \
diff --git a/Tracking/Acts/ActsConfig/python/ActsClusterizationConfig.py b/Tracking/Acts/ActsConfig/python/ActsClusterizationConfig.py
index 8a455c5e096be911f914f429e16c2609a52a7853..17dd5165a7b113957d93da5f0cca2cc55e0c8fd5 100644
--- a/Tracking/Acts/ActsConfig/python/ActsClusterizationConfig.py
+++ b/Tracking/Acts/ActsConfig/python/ActsClusterizationConfig.py
@@ -67,7 +67,7 @@ def ActsPixelClusterizationAlgCfg(flags,
     kwargs.setdefault("RDOContainerKey", "ITkPixelRDOs")
     kwargs.setdefault("ClustersKey", "ITkPixelClusters")
     # Regional selection
-    kwargs.setdefault('RoIs', 'OfflineFullScanRegion')
+    kwargs.setdefault('RoIs', 'ActsRegionOfInterest')
 
     kwargs.setdefault('EnableCache', flags.Acts.useCache)
     kwargs.setdefault('ClusterCacheBackend', 'ActsPixelClusterCache_Back')
@@ -97,7 +97,7 @@ def ActsStripClusterizationAlgCfg(flags,
     kwargs.setdefault("expectedClustersPerRDO", 6)
     kwargs.setdefault("IDHelper", "SCT_ID")
     # Regional selection
-    kwargs.setdefault('RoIs', 'OfflineFullScanRegion')
+    kwargs.setdefault('RoIs', 'ActsRegionOfInterest')
 
     kwargs.setdefault('EnableCache', flags.Acts.useCache)
     kwargs.setdefault('ClusterCacheBackend', 'ActsStripClusterCache_Back')
@@ -132,7 +132,7 @@ def ActsPixelClustersViewFillerAlgCfg(flags,
     acc = ComponentAccumulator()
     kwargs.setdefault("InputIDC", "ActsPixelClustersCache")
     kwargs.setdefault("Output", "ITkPixelClusters_InView")
-    kwargs.setdefault('RoIs', 'OfflineFullScanRegion')
+    kwargs.setdefault('RoIs', 'ActsRegionOfInterest')
 
     if 'RegSelTool' not in kwargs:
         from RegionSelector.RegSelToolConfig import regSelTool_ITkPixel_Cfg
@@ -147,7 +147,7 @@ def ActsStripClustersViewFillerAlgCfg(flags,
     acc = ComponentAccumulator()
     kwargs.setdefault("InputIDC", "ActsStripClustersCache")
     kwargs.setdefault("Output", "ITkStripClusters_InView")
-    kwargs.setdefault('RoIs', 'OfflineFullScanRegion')
+    kwargs.setdefault('RoIs', 'ActsRegionOfInterest')
 
     if 'RegSelTool' not in kwargs:
         from RegionSelector.RegSelToolConfig import regSelTool_ITkStrip_Cfg
@@ -157,22 +157,27 @@ def ActsStripClustersViewFillerAlgCfg(flags,
     return acc
 
 
-def ActsMainClusterizationCfg(flags) -> ComponentAccumulator:
+def ActsMainClusterizationCfg(flags,
+                              RoIs: str = "ActsRegionOfInterest") -> ComponentAccumulator:
     acc = ComponentAccumulator()
 
     if flags.Acts.useCache:
         acc.merge(ActsClusterCacheCreatorAlgCfg(flags))
 
     if flags.Detector.EnableITkPixel:
-        acc.merge(ActsPixelClusterizationAlgCfg(flags))
+        acc.merge(ActsPixelClusterizationAlgCfg(flags,
+                                                RoIs=RoIs))
     if flags.Detector.EnableITkStrip:
-        acc.merge(ActsStripClusterizationAlgCfg(flags))
+        acc.merge(ActsStripClusterizationAlgCfg(flags,
+                                                RoIs=RoIs))
 
     if flags.Acts.useCache:
         if flags.Detector.EnableITkPixel:
-            acc.merge(ActsPixelClustersViewFillerAlgCfg(flags))
+            acc.merge(ActsPixelClustersViewFillerAlgCfg(flags,
+                                                        RoIs=RoIs))
         if flags.Detector.EnableITkStrip:
-            acc.merge(ActsStripClustersViewFillerAlgCfg(flags))
+            acc.merge(ActsStripClustersViewFillerAlgCfg(flags,
+                                                        RoIs=RoIs))
             
     # Analysis extensions
     if flags.Acts.doAnalysis:
@@ -193,14 +198,14 @@ def ActsConversionClusterizationCfg(flags) -> ComponentAccumulator:
                                                 name="ActsConversionStripClusterizationAlg",
                                                 ClustersKey="ITkConversionStripClusters",
                                                 EnableCache=False,
-                                                RoIs="OfflineCaloBasedRegion"))
+                                                RoIs="ActsConversionRegionOfInterest"))
 
     if flags.Acts.useCache:
         if flags.Detector.EnableITkStrip:
             acc.merge(ActsStripClustersViewFillerAlgCfg(flags,
                                                         name="ActsConversionStripClustersViewFiller",
                                                         Output="ITkConversionStripClusters_InView",
-                                                        RoIs="OfflineCaloBasedRegion"))
+                                                        RoIs="ActsConversionRegionOfInterest"))
     
     # Analysis extensions
     if flags.Acts.doAnalysis:
@@ -225,6 +230,7 @@ def ActsClusterizationCfg(flags) -> ComponentAccumulator:
         acc.merge(ActsConversionClusterizationCfg(flags))
     # Any other pass -> Validation mainly
     else:
-        acc.merge(ActsMainClusterizationCfg(flags))
+        acc.merge(ActsMainClusterizationCfg(flags,
+                                            RoIs = f"{flags.Tracking.ActiveConfig.extension}RegionOfInterest"))
 
     return acc
diff --git a/Tracking/Acts/ActsConfig/python/ActsRegionsOfInterestConfig.py b/Tracking/Acts/ActsConfig/python/ActsRegionsOfInterestConfig.py
new file mode 100644
index 0000000000000000000000000000000000000000..6bb93e3634fae65b00633e8e8bd7e85d71d4085b
--- /dev/null
+++ b/Tracking/Acts/ActsConfig/python/ActsRegionsOfInterestConfig.py
@@ -0,0 +1,52 @@
+# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
+
+from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
+from AthenaConfiguration.ComponentFactory import CompFactory
+
+def ActsFullScanRoICreatorToolCfg(flags,
+                                  name: str = "ActsFullScanRoICreatorTool",
+                                  **kwargs) -> ComponentAccumulator:
+    acc = ComponentAccumulator()
+    acc.setPrivateTools(CompFactory.ActsTrk.FullScanRoICreatorTool(name, **kwargs))
+    return acc
+
+def CaloBasedRoICreatorToolCfg(flags,
+                               name : str = "ActsCaloBasedRoICreatorTool",
+                               **kwargs) -> ComponentAccumulator:
+    acc = ComponentAccumulator()
+    kwargs.setdefault('CaloClusterRoIContainer', 'ITkCaloClusterROIPhiRZ15GeVUnordered')
+    acc.setPrivateTools(CompFactory.ActsTrk.CaloBasedRoICreatorTool(name, **kwargs))
+    return acc
+
+def ActsMainRegionsOfInterestCreatorAlgCfg(flags,
+                                           name: str = "ActsMainRegionsOfInterestCreatorAlg",
+                                           **kwargs) -> ComponentAccumulator:
+    acc = ComponentAccumulator()
+    
+    if 'RoICreatorTool' not in kwargs:
+        kwargs.setdefault('RoICreatorTool', acc.popToolsAndMerge(ActsFullScanRoICreatorToolCfg(flags)))
+
+    kwargs.setdefault('RoIs', 'ActsRegionOfInterest')
+    acc.addEventAlgo(CompFactory.ActsTrk.RegionsOfInterestCreatorAlg(name, **kwargs))    
+    return acc
+
+def ActsRegionsOfInterestCreatorAlgCfg(flags,
+                                       name: str = "ActsRegionsOfInterestCreatorAlg",
+                                       **kwargs) -> ComponentAccumulator:
+    acc = ComponentAccumulator()
+
+    # Conversion tracking pass requirements
+    if flags.Tracking.ActiveConfig.extension == "ActsConversion":
+        from InDetConfig.InDetCaloClusterROISelectorConfig import ITkCaloClusterROIPhiRZContainerMakerCfg
+        acc.merge(ITkCaloClusterROIPhiRZContainerMakerCfg(flags))
+
+    # Set proper RoI creation tool
+    if 'RoICreatorTool' not in kwargs:
+        if flags.Tracking.ActiveConfig.extension == "ActsConversion":
+            kwargs.setdefault('RoICreatorTool', acc.popToolsAndMerge(CaloBasedRoICreatorToolCfg(flags)))
+        else:
+            kwargs.setdefault('RoICreatorTool', acc.popToolsAndMerge(ActsFullScanRoICreatorToolCfg(flags)))
+
+    kwargs.setdefault('RoIs', f"{flags.Tracking.ActiveConfig.extension}RegionOfInterest")
+    acc.merge(ActsMainRegionsOfInterestCreatorAlgCfg(flags, name, **kwargs))
+    return acc
diff --git a/Tracking/Acts/ActsConfig/python/ActsViewConfig.py b/Tracking/Acts/ActsConfig/python/ActsViewConfig.py
deleted file mode 100644
index e82997994b6985a8e49546942b3cd21bf910c769..0000000000000000000000000000000000000000
--- a/Tracking/Acts/ActsConfig/python/ActsViewConfig.py
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
-
-from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
-from AthenaConfiguration.ComponentFactory import CompFactory
-
-def ActsFullScanRoICreatorToolCfg(flags,
-                                  name: str = "ActsFullScanRoICreatorTool",
-                                  **kwargs) -> ComponentAccumulator:
-    acc = ComponentAccumulator()
-    kwargs.setdefault('RoIs', 'OfflineFullScanRegion')
-    acc.setPrivateTools(CompFactory.FullScanRoICreatorTool(name, **kwargs))
-    return acc
-
-def ActsConversionRoICreatorToolCfg(flags,
-                                    name : str = "ActsConversionRoICreatorTool",
-                                    **kwargs) -> ComponentAccumulator:
-    acc = ComponentAccumulator()
-    kwargs.setdefault('RoIs', 'OfflineCaloBasedRegion')
-    kwargs.setdefault('CaloClusterRoIContainer', 'ITkCaloClusterROIPhiRZ15GeVUnordered')
-    acc.setPrivateTools(CompFactory.CaloBasedRoICreatorTool(name, **kwargs))
-    return acc
-
-def ActsGlobalEventViewCreatorAlgCfg(flags,
-                                     name: str = "ActsGlobalEventViewCreatorAlg",
-                                     **kwargs) -> ComponentAccumulator:
-    acc = ComponentAccumulator()
-    if 'RoICreatorTool' not in kwargs:
-        kwargs.setdefault('RoICreatorTool', acc.popToolsAndMerge(ActsFullScanRoICreatorToolCfg(flags)))
-
-    kwargs.setdefault('Views', 'OfflineFullScanEventView')
-    kwargs.setdefault('InViewRoIs', 'OfflineFullScanInViewRegion')
-    acc.addEventAlgo(CompFactory.EventViewCreatorAlg(name, **kwargs))
-    return acc
-
-def ActsCaloBasedEventViewCreatorAlgCfg(flags,
-                                        name: str = "ActsCaloBasedEventViewCreatorAlg",
-                                        **kwargs) -> ComponentAccumulator:
-    acc = ComponentAccumulator()
-    if 'RoICreatorTool' not in kwargs:
-         kwargs.setdefault('RoICreatorTool', acc.popToolsAndMerge(ActsConversionRoICreatorToolCfg(flags)))
-
-    kwargs.setdefault('Views', 'OfflineCaloBasedEventView')
-    kwargs.setdefault('InViewRoIs', 'OfflineCaloBasedInViewRegion')
-    acc.addEventAlgo(CompFactory.EventViewCreatorAlg(name, **kwargs))
-    return acc
-
-def ActsEventViewCreatorAlgCfg(flags,
-                               name: str = "ActsEventViewCreatorAlg",
-                               **kwargs) -> ComponentAccumulator:
-    acc = ComponentAccumulator()
-    # Acts main pass
-    if flags.Tracking.ActiveConfig.extension == "Acts":
-        acc.merge(ActsGlobalEventViewCreatorAlgCfg(flags, name, **kwargs))
-    # Acts conversion pass
-    elif flags.Tracking.ActiveConfig.extension == "ActsConversion":
-        from InDetConfig.InDetCaloClusterROISelectorConfig import ITkCaloClusterROIPhiRZContainerMakerCfg
-        acc.merge(ITkCaloClusterROIPhiRZContainerMakerCfg(flags))
-        acc.merge(ActsCaloBasedEventViewCreatorAlgCfg(flags, name, **kwargs))
-    # Any other Acts pass, that means validation passes
-    else:
-        acc.merge(ActsGlobalEventViewCreatorAlgCfg(flags, name, **kwargs))
-
-    return acc
diff --git a/Tracking/Acts/ActsDataPreparation/test/runCompositeRoICode.py b/Tracking/Acts/ActsDataPreparation/test/runCompositeRoICode.py
index 2ce41dc9325ff929fc37d50db1e1178a7402502a..81789a3944317aec140d816860e1d6d0aba3f55a 100755
--- a/Tracking/Acts/ActsDataPreparation/test/runCompositeRoICode.py
+++ b/Tracking/Acts/ActsDataPreparation/test/runCompositeRoICode.py
@@ -8,7 +8,6 @@ def TestCompositeRoIToolCfg(flags,
                             **kwargs) -> ComponentAccumulator:
     acc = ComponentAccumulator()
 
-    kwargs.setdefault('RoIs', 'TestCompositeRoI')
     kwargs.setdefault('EtaCenters', [-1.2, 2.3, 3.8])
     kwargs.setdefault('PhiCenters', [0, 1, 2])
     kwargs.setdefault('HalfEtaWidths', [0.3, 0.1, 0.05])
@@ -19,7 +18,7 @@ def TestCompositeRoIToolCfg(flags,
 
     kwargs.setdefault('OutputLevel', 2)
 
-    acc.setPrivateTools(CompFactory.TestRoICreatorTool(name, **kwargs))
+    acc.setPrivateTools(CompFactory.ActsTrk.TestRoICreatorTool(name, **kwargs))
     return acc
     
 if __name__ == "__main__":
@@ -50,9 +49,10 @@ if __name__ == "__main__":
     acc.merge(PoolReadCfg(flags))
 
     # RoI creator
-    from ActsConfig.ActsViewConfig import ActsEventViewCreatorAlgCfg
-    acc.merge(ActsEventViewCreatorAlgCfg(flags,
-                                         RoICreatorTool=acc.popToolsAndMerge(TestCompositeRoIToolCfg(flags))))
+    from ActsConfig.ActsRegionsOfInterestConfig import ActsMainRegionsOfInterestCreatorAlgCfg
+    acc.merge(ActsMainRegionsOfInterestCreatorAlgCfg(flags,
+                                                     RoIs='TestCompositeRoI',
+                                                     RoICreatorTool=acc.popToolsAndMerge(TestCompositeRoIToolCfg(flags))))
 
     # Data Preparation - Clustering
     from ActsConfig.ActsClusterizationConfig import ActsPixelClusterizationAlgCfg
diff --git a/Tracking/Acts/ActsDataPreparation/test/runFullScanRoICode.py b/Tracking/Acts/ActsDataPreparation/test/runFullScanRoICode.py
index f5e519427831f99265b0fad5cd42f5c0e1a76016..e8c58de16c69374356251c2acb01d8280f771b25 100755
--- a/Tracking/Acts/ActsDataPreparation/test/runFullScanRoICode.py
+++ b/Tracking/Acts/ActsDataPreparation/test/runFullScanRoICode.py
@@ -29,8 +29,8 @@ if __name__ == "__main__":
     acc.merge(PoolReadCfg(flags))
 
     # RoI creator
-    from ActsConfig.ActsViewConfig import ActsEventViewCreatorAlgCfg
-    acc.merge(ActsEventViewCreatorAlgCfg(flags))
+    from ActsConfig.ActsRegionsOfInterestConfig import ActsMainRegionsOfInterestCreatorAlgCfg
+    acc.merge(ActsMainRegionsOfInterestCreatorAlgCfg(flags))
 
     # Data Preparation - Clustering
     from ActsConfig.ActsClusterizationConfig import ActsPixelClusterizationAlgCfg
diff --git a/Tracking/Acts/ActsDataPreparation/test/runSingleRoICode.py b/Tracking/Acts/ActsDataPreparation/test/runSingleRoICode.py
index 37e5f6da0ab3e2693cd24df9ad3690645ca5bf84..9d5db189be783124cb0a28f5549f400418c06061 100755
--- a/Tracking/Acts/ActsDataPreparation/test/runSingleRoICode.py
+++ b/Tracking/Acts/ActsDataPreparation/test/runSingleRoICode.py
@@ -8,13 +8,12 @@ def TestSingleRoIToolCfg(flags,
                          **kwargs) -> ComponentAccumulator:
     acc = ComponentAccumulator()
 
-    kwargs.setdefault('RoIs', 'TestSingleRoI')
     kwargs.setdefault('EtaCenters', [2.3])
     kwargs.setdefault('PhiCenters', [0])
     kwargs.setdefault('HalfEtaWidths', [0.05])
     kwargs.setdefault('HalfPhiWidths', [0.1])
 
-    acc.setPrivateTools(CompFactory.TestRoICreatorTool(name, **kwargs))
+    acc.setPrivateTools(CompFactory.ActsTrk.TestRoICreatorTool(name, **kwargs))
     return acc
     
 if __name__ == "__main__":
@@ -45,9 +44,10 @@ if __name__ == "__main__":
     acc.merge(PoolReadCfg(flags))
 
     # RoI creator
-    from ActsConfig.ActsViewConfig import ActsEventViewCreatorAlgCfg
-    acc.merge(ActsEventViewCreatorAlgCfg(flags,
-                                         RoICreatorTool=acc.popToolsAndMerge(TestSingleRoIToolCfg(flags))))
+    from ActsConfig.ActsRegionsOfInterestConfig import ActsMainRegionsOfInterestCreatorAlgCfg
+    acc.merge(ActsMainRegionsOfInterestCreatorAlgCfg(flags,
+                                                     RoIs='TestSingleRoI',
+                                                     RoICreatorTool=acc.popToolsAndMerge(TestSingleRoIToolCfg(flags))))
 
     # Data Preparation - Clustering
     from ActsConfig.ActsClusterizationConfig import ActsPixelClusterizationAlgCfg
diff --git a/Tracking/Acts/ActsRegionsOfInterest/ATLAS_CHECK_THREAD_SAFETY b/Tracking/Acts/ActsRegionsOfInterest/ATLAS_CHECK_THREAD_SAFETY
new file mode 100644
index 0000000000000000000000000000000000000000..eb53471e5988f8168dfe5fd2d0dd391a68b9e48b
--- /dev/null
+++ b/Tracking/Acts/ActsRegionsOfInterest/ATLAS_CHECK_THREAD_SAFETY
@@ -0,0 +1 @@
+Tracking/Acts/ActsRegionsOfInterest
diff --git a/Tracking/Acts/ActsRegionsOfInterest/CMakeLists.txt b/Tracking/Acts/ActsRegionsOfInterest/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..36714f2812a2a08dc2f663a3470bcf81236703cc
--- /dev/null
+++ b/Tracking/Acts/ActsRegionsOfInterest/CMakeLists.txt
@@ -0,0 +1,18 @@
+# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
+
+# Declare the package name:
+atlas_subdir(ActsRegionsOfInterest)
+
+atlas_add_component( ActsRegionsOfInterest
+                     src/*.h src/*.cxx
+                     src/components/*.cxx
+                     LINK_LIBRARIES
+		       GaudiKernel
+		       ActsToolInterfacesLib
+		       AthContainers
+		       AthViews
+		       AthenaBaseComps
+		       BeamSpotConditionsData
+		       StoreGateLib
+		       TrigSteeringEvent
+		       TrkCaloClusterROI )
diff --git a/Tracking/Acts/ActsView/src/CaloBasedRoICreatorTool.cxx b/Tracking/Acts/ActsRegionsOfInterest/src/CaloBasedRoICreatorTool.cxx
similarity index 63%
rename from Tracking/Acts/ActsView/src/CaloBasedRoICreatorTool.cxx
rename to Tracking/Acts/ActsRegionsOfInterest/src/CaloBasedRoICreatorTool.cxx
index bd95a7a56e58e5b2dabe14c7d4668c71f712be60..95cffad4fff20b86930532066526bbb0d9f9ff35 100644
--- a/Tracking/Acts/ActsView/src/CaloBasedRoICreatorTool.cxx
+++ b/Tracking/Acts/ActsRegionsOfInterest/src/CaloBasedRoICreatorTool.cxx
@@ -4,6 +4,8 @@
 
 #include "src/CaloBasedRoICreatorTool.h"
 
+namespace ActsTrk {
+
 CaloBasedRoICreatorTool::CaloBasedRoICreatorTool(const std::string& type,
 						 const std::string& name,
 						 const IInterface* parent)
@@ -15,22 +17,18 @@ StatusCode CaloBasedRoICreatorTool::initialize()
   ATH_MSG_DEBUG("Inizializing " << name() << " ..." );
 
   ATH_CHECK(m_caloClusterROIKey.initialize());
-  ATH_CHECK(m_roiCollectionKey.initialize());
   ATH_CHECK(m_beamSpotKey.initialize());
   
   return StatusCode::SUCCESS;
 }
 
 StatusCode CaloBasedRoICreatorTool::defineRegionsOfInterest(const EventContext& ctx,
-							   std::vector< ElementLink< TrigRoiDescriptorCollection > >& ELs) const 
+							    TrigRoiDescriptorCollection& collectionRoI) const
 {
-  // RoI collection gets stored in the SG
-  ATH_MSG_DEBUG("Storing ROI with ket " << m_roiCollectionKey.key());
-  SG::WriteHandle< TrigRoiDescriptorCollection > roiCollectionHandle = SG::makeHandle( m_roiCollectionKey, ctx );
-  ATH_CHECK( roiCollectionHandle.record( std::make_unique< TrigRoiDescriptorCollection >() ) );
-  TrigRoiDescriptorCollection *collectionRoI = roiCollectionHandle.ptr();
-  collectionRoI->push_back( new TrigRoiDescriptor(false) );
-  collectionRoI->back()->setComposite(true);
+  // Define RoI as not a FS RoI
+  collectionRoI.push_back( new TrigRoiDescriptor(false) );
+  // Define RoI as composite RoI
+  collectionRoI.back()->setComposite(true);
 
   // Retrieve Beam Spot data
   SG::ReadCondHandle< InDet::BeamSpotData > beamSpotHandle{ m_beamSpotKey, ctx };
@@ -45,7 +43,7 @@ StatusCode CaloBasedRoICreatorTool::defineRegionsOfInterest(const EventContext&
   ATH_MSG_DEBUG("   \\__ Retrived " << caloClusters->size() << " elements");
 
   // Add component RoIs
-  collectionRoI->back()->reserve(caloClusters->size());
+  collectionRoI.back()->reserve(caloClusters->size());
   double beamZ = beamSpotData->beamVtx().position().z();
   for (const ROIPhiRZ& calo_roi : *caloClusters) {
     double phi = calo_roi.phi();
@@ -62,16 +60,13 @@ StatusCode CaloBasedRoICreatorTool::defineRegionsOfInterest(const EventContext&
     double roiZMin = beamZ - m_deltaZ;
     double roiZMax = beamZ + m_deltaZ;
     
-    collectionRoI->back()->push_back( new TrigRoiDescriptor(eta, roiEtaMin, roiEtaMax,
-							    phi, roiPhiMin ,roiPhiMax,
-							    z, roiZMin, roiZMax ) );
+    collectionRoI.back()->push_back( new TrigRoiDescriptor(eta, roiEtaMin, roiEtaMax,
+							   phi, roiPhiMin ,roiPhiMax,
+							   z, roiZMin, roiZMax ) );
   }
 
-  ATH_MSG_DEBUG("Created composite RoI from Calo with " << collectionRoI->back()->size() << " RoIs");
-  
-  // Return element links to the created RoIs so that they can be used from the outside
-  ELs.push_back( ElementLink< TrigRoiDescriptorCollection >( *collectionRoI, 0ul ) );
-  ATH_CHECK( ELs.back().isValid() );
-
+  ATH_MSG_DEBUG("Created composite RoI from Calo with " << collectionRoI.back()->size() << " RoIs"); 
   return StatusCode::SUCCESS;
 }
+
+}
diff --git a/Tracking/Acts/ActsView/src/CaloBasedRoICreatorTool.h b/Tracking/Acts/ActsRegionsOfInterest/src/CaloBasedRoICreatorTool.h
similarity index 80%
rename from Tracking/Acts/ActsView/src/CaloBasedRoICreatorTool.h
rename to Tracking/Acts/ActsRegionsOfInterest/src/CaloBasedRoICreatorTool.h
index 0bce6c9094bd18dda363470e94bdd4c39cab27ff..57c92c725aaa3a380e8bf82b34bc531f6e478051 100644
--- a/Tracking/Acts/ActsView/src/CaloBasedRoICreatorTool.h
+++ b/Tracking/Acts/ActsRegionsOfInterest/src/CaloBasedRoICreatorTool.h
@@ -1,3 +1,4 @@
+
 /* 
    Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
@@ -6,13 +7,15 @@
 #define CALO_BASED_ROI_CREATOR_TOOL_H
 
 #include "AthenaBaseComps/AthAlgTool.h"
-#include "ActsView/IRoICreatorTool.h"
+#include "ActsToolInterfaces/IRoICreatorTool.h"
 #include "TrkCaloClusterROI/ROIPhiRZContainer.h"
 #include "BeamSpotConditionsData/BeamSpotData.h"
 
+namespace ActsTrk {
+
 class
 CaloBasedRoICreatorTool
-  : public extends<AthAlgTool, ::IRoICreatorTool> {
+  : public extends<AthAlgTool, ActsTrk::IRoICreatorTool> {
  public:
   CaloBasedRoICreatorTool(const std::string& type,
 			  const std::string& name,
@@ -24,16 +27,13 @@ CaloBasedRoICreatorTool
 
    virtual
    StatusCode defineRegionsOfInterest(const EventContext& ctx,
-				      std::vector< ElementLink< TrigRoiDescriptorCollection > >& ELs) const override;
+				      TrigRoiDescriptorCollection& collectionRoI) const override;
   
 private:
   SG::ReadHandleKey< ROIPhiRZContainer > m_caloClusterROIKey
     {this, "CaloClusterRoIContainer", "",
 	"Name of the calo cluster ROIs in Phi,R,Z parameterization"};
   
-  SG::WriteHandleKey< TrigRoiDescriptorCollection > m_roiCollectionKey
-    {this, "RoIs", ""};
-
   SG::ReadCondHandleKey< InDet::BeamSpotData > m_beamSpotKey
     {this, "BeamSpotKey", "BeamSpotData",
 	"SG key for beam spot"};
@@ -46,4 +46,6 @@ private:
     {this, "DeltaZCaloRoI", 300.};
 };
 
+}
+
 #endif
diff --git a/Tracking/Acts/ActsRegionsOfInterest/src/FullScanRoICreatorTool.cxx b/Tracking/Acts/ActsRegionsOfInterest/src/FullScanRoICreatorTool.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..6955b1c4b827a49a780d7b846d6ef6745b0797aa
--- /dev/null
+++ b/Tracking/Acts/ActsRegionsOfInterest/src/FullScanRoICreatorTool.cxx
@@ -0,0 +1,23 @@
+/*
+   Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+*/
+
+#include "src/FullScanRoICreatorTool.h"
+
+namespace ActsTrk {
+  
+FullScanRoICreatorTool::FullScanRoICreatorTool(const std::string& type,
+					       const std::string& name,
+					       const IInterface* parent)
+  : base_class(type, name, parent) 
+{}
+
+StatusCode FullScanRoICreatorTool::defineRegionsOfInterest(const EventContext& /*ctx*/,
+							   TrigRoiDescriptorCollection& collectionRoI) const
+{
+  // Add a Full Scan RoI
+  collectionRoI.push_back( new TrigRoiDescriptor(true) );
+  return StatusCode::SUCCESS;
+}
+
+}
diff --git a/Tracking/Acts/ActsRegionsOfInterest/src/FullScanRoICreatorTool.h b/Tracking/Acts/ActsRegionsOfInterest/src/FullScanRoICreatorTool.h
new file mode 100644
index 0000000000000000000000000000000000000000..ad8721c1bcb9cb19a0eae7bde3e12ed970653a07
--- /dev/null
+++ b/Tracking/Acts/ActsRegionsOfInterest/src/FullScanRoICreatorTool.h
@@ -0,0 +1,26 @@
+/* 
+   Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
+*/
+
+#ifndef FULL_SCAN_ROI_CREATOR_TOOL_H
+#define FULL_SCAN_ROI_CREATOR_TOOL_H
+
+#include "AthenaBaseComps/AthAlgTool.h"
+#include "ActsToolInterfaces/IRoICreatorTool.h"
+
+namespace ActsTrk {
+
+class FullScanRoICreatorTool : public extends<AthAlgTool, ActsTrk::IRoICreatorTool> {
+ public:
+  FullScanRoICreatorTool(const std::string& type,
+			 const std::string& name,
+			 const IInterface* parent);
+  virtual ~FullScanRoICreatorTool() = default;
+
+   virtual
+     StatusCode defineRegionsOfInterest(const EventContext& ctx,
+					TrigRoiDescriptorCollection& collectionRoI) const override;
+};
+
+}
+#endif
diff --git a/Tracking/Acts/ActsRegionsOfInterest/src/RegionsOfInterestCreatorAlg.cxx b/Tracking/Acts/ActsRegionsOfInterest/src/RegionsOfInterestCreatorAlg.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..73ab6267f0918c230a03366fc62e5778634f40ae
--- /dev/null
+++ b/Tracking/Acts/ActsRegionsOfInterest/src/RegionsOfInterestCreatorAlg.cxx
@@ -0,0 +1,38 @@
+/*
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
+*/
+
+#include "src/RegionsOfInterestCreatorAlg.h"
+
+namespace ActsTrk {
+
+RegionsOfInterestCreatorAlg::RegionsOfInterestCreatorAlg(const std::string& name, 
+							 ISvcLocator* pSvcLocator)
+  : AthReentrantAlgorithm(name, pSvcLocator)
+{}
+
+StatusCode RegionsOfInterestCreatorAlg::initialize() 
+{
+  ATH_MSG_DEBUG("Initialising " << name() << " ...");
+
+  ATH_CHECK(m_roiCollectionKey.initialize());
+  ATH_CHECK(m_roiTool.retrieve());
+
+  return StatusCode::SUCCESS;
+}
+
+StatusCode RegionsOfInterestCreatorAlg::execute(const EventContext& ctx) const
+{
+  ATH_MSG_DEBUG("Executing " << name() << " ...");
+
+  ATH_MSG_DEBUG("Creating ROI with key " << m_roiCollectionKey.key());
+  SG::WriteHandle< TrigRoiDescriptorCollection > roiCollectionHandle = SG::makeHandle( m_roiCollectionKey, ctx );
+  ATH_CHECK( roiCollectionHandle.record( std::make_unique< TrigRoiDescriptorCollection >() ) );
+  TrigRoiDescriptorCollection *collectionRoI = roiCollectionHandle.ptr();
+  ATH_CHECK(collectionRoI != nullptr);
+  
+  ATH_CHECK( m_roiTool->defineRegionsOfInterest(ctx, *collectionRoI) );
+  return StatusCode::SUCCESS;
+}
+
+}
diff --git a/Tracking/Acts/ActsRegionsOfInterest/src/RegionsOfInterestCreatorAlg.h b/Tracking/Acts/ActsRegionsOfInterest/src/RegionsOfInterestCreatorAlg.h
new file mode 100644
index 0000000000000000000000000000000000000000..b5d510f69bdc32b2a7baf8e34a3464f07c1231f4
--- /dev/null
+++ b/Tracking/Acts/ActsRegionsOfInterest/src/RegionsOfInterestCreatorAlg.h
@@ -0,0 +1,33 @@
+/*
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
+*/
+
+#ifndef ROI_CREATOR_ALG_H
+#define ROI_CREATOR_ALG_H
+
+#include "AthenaBaseComps/AthReentrantAlgorithm.h"
+#include "ActsToolInterfaces/IRoICreatorTool.h"
+#include "TrigSteeringEvent/TrigRoiDescriptorCollection.h"
+#include "StoreGate/WriteHandleKey.h"
+
+namespace ActsTrk {
+  
+class RegionsOfInterestCreatorAlg
+  : public AthReentrantAlgorithm {
+ public:
+  RegionsOfInterestCreatorAlg(const std::string& name, ISvcLocator* pSvcLocator);
+  virtual ~RegionsOfInterestCreatorAlg() = default;
+
+  virtual StatusCode initialize() override;
+  virtual StatusCode execute(const EventContext& ctx) const override;
+
+ private:
+  ToolHandle< ActsTrk::IRoICreatorTool > m_roiTool {this, "RoICreatorTool", "",
+      "Tool for creating RoIs"};
+  
+  SG::WriteHandleKey< TrigRoiDescriptorCollection > m_roiCollectionKey {this, "RoIs", "",
+    "The created RoI"};
+};
+
+}
+#endif
diff --git a/Tracking/Acts/ActsView/src/TestRoICreatorTool.cxx b/Tracking/Acts/ActsRegionsOfInterest/src/TestRoICreatorTool.cxx
similarity index 72%
rename from Tracking/Acts/ActsView/src/TestRoICreatorTool.cxx
rename to Tracking/Acts/ActsRegionsOfInterest/src/TestRoICreatorTool.cxx
index f6a93b1aa1d724bec567d3a630acc9c6b3e3e3ec..75382bcee2df2808de6ba71d2664114fd44bc259 100644
--- a/Tracking/Acts/ActsView/src/TestRoICreatorTool.cxx
+++ b/Tracking/Acts/ActsRegionsOfInterest/src/TestRoICreatorTool.cxx
@@ -1,9 +1,11 @@
 /*
-   Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
+   Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "src/TestRoICreatorTool.h"
 
+namespace ActsTrk {
+
 TestRoICreatorTool::TestRoICreatorTool(const std::string& type,
 				       const std::string& name,
 				       const IInterface* parent)
@@ -14,8 +16,6 @@ StatusCode TestRoICreatorTool::initialize()
 {
   ATH_MSG_DEBUG("Inizializing " << name() << " ..." );
 
-  ATH_CHECK(m_roiCollectionKey.initialize());
-
   // Check consistency
   // We need at least one entry
   if (m_eta_center_rois.size() == 0) {
@@ -45,19 +45,14 @@ StatusCode TestRoICreatorTool::initialize()
   return StatusCode::SUCCESS;
 }
 
-StatusCode TestRoICreatorTool::defineRegionsOfInterest(const EventContext& ctx,
-						       std::vector< ElementLink< TrigRoiDescriptorCollection > >& ELs) const 
+StatusCode TestRoICreatorTool::defineRegionsOfInterest(const EventContext& /*ctx*/,
+						       TrigRoiDescriptorCollection& collectionRoI) const
 {
-  // RoI collection gets stored in the SG
-  SG::WriteHandle< TrigRoiDescriptorCollection > roiCollectionHandle = SG::makeHandle( m_roiCollectionKey, ctx );
-  ATH_CHECK( roiCollectionHandle.record( std::make_unique< TrigRoiDescriptorCollection >() ) );
-  TrigRoiDescriptorCollection *collectionRoI = roiCollectionHandle.ptr();
-
   bool isComposite = m_eta_center_rois.size() > 1;
   // Add a composite RoI
   if (isComposite) {
-    collectionRoI->push_back( new TrigRoiDescriptor() );
-    collectionRoI->back()->setComposite(true);
+    collectionRoI.push_back( new TrigRoiDescriptor() );
+    collectionRoI.back()->setComposite(true);
   }
 
   bool useZconstraint = m_z_center_rois.size() != 0;
@@ -83,20 +78,19 @@ StatusCode TestRoICreatorTool::defineRegionsOfInterest(const EventContext& ctx,
     // if composite roi, add the consituent to it (already in the collection)
     // if not, the collection is empty and we have to add this one to it
     if (isComposite) {
-      collectionRoI->back()->push_back( std::move(toAdd) );
+      collectionRoI.back()->push_back( std::move(toAdd) );
     } else {
-      collectionRoI->push_back( std::move(toAdd) );
+      collectionRoI.push_back( std::move(toAdd) );
     }
   }
 
-  ATH_MSG_DEBUG("RoI collection size: " << collectionRoI->size());
+  ATH_MSG_DEBUG("RoI collection size: " << collectionRoI.size());
   ATH_MSG_DEBUG("Created a test RoI");
-  if (collectionRoI->back()->composite()) {
-    ATH_MSG_DEBUG("This is a composite RoI made from " << collectionRoI->back()->size() << " constituents");
+  if (collectionRoI.back()->composite()) {
+    ATH_MSG_DEBUG("This is a composite RoI made from " << collectionRoI.back()->size() << " constituents");
   }
 
-  // Return element links to the created RoIs so that they can be used from the outside
-  ELs.push_back( ElementLink< TrigRoiDescriptorCollection >( *collectionRoI, 0 ) );
-  ATH_CHECK( ELs.back().isValid() );
   return StatusCode::SUCCESS;
 }
+
+}
diff --git a/Tracking/Acts/ActsView/src/TestRoICreatorTool.h b/Tracking/Acts/ActsRegionsOfInterest/src/TestRoICreatorTool.h
similarity index 81%
rename from Tracking/Acts/ActsView/src/TestRoICreatorTool.h
rename to Tracking/Acts/ActsRegionsOfInterest/src/TestRoICreatorTool.h
index ec77236157752a5d8dd991705184554048e0bad4..295a075b38c1853eee667ce7b84138c16d2cabb9 100644
--- a/Tracking/Acts/ActsView/src/TestRoICreatorTool.h
+++ b/Tracking/Acts/ActsRegionsOfInterest/src/TestRoICreatorTool.h
@@ -6,12 +6,12 @@
 #define TEST_ROI_CREATOR_TOOL_H
 
 #include "AthenaBaseComps/AthAlgTool.h"
-#include "ActsView/IRoICreatorTool.h"
-
-#include <vector>
+#include "ActsToolInterfaces/IRoICreatorTool.h"
 
+namespace ActsTrk {
+  
 class TestRoICreatorTool
-: public extends<AthAlgTool, ::IRoICreatorTool> {
+: public extends<AthAlgTool, ActsTrk::IRoICreatorTool> {
  public:
   TestRoICreatorTool(const std::string& type,
 		     const std::string& name,
@@ -23,11 +23,9 @@ class TestRoICreatorTool
 
    virtual
      StatusCode defineRegionsOfInterest(const EventContext& ctx,
-					std::vector< ElementLink< TrigRoiDescriptorCollection > >& ELs) const override;
+					TrigRoiDescriptorCollection& collectionRoI) const override;
    
  private:
-    SG::WriteHandleKey< TrigRoiDescriptorCollection > m_roiCollectionKey {this, "RoIs", ""};
-
    Gaudi::Property< std::vector<double> > m_eta_center_rois {this, "EtaCenters", {}, "Center of the RoI - eta coordinate"};
    Gaudi::Property< std::vector<double> > m_phi_center_rois {this, "PhiCenters", {}, "Center of the RoI - phi coordinate"};
    Gaudi::Property< std::vector<double> > m_z_center_rois {this, "ZCenters", {}, "Center of the RoI - z coordinate"};
@@ -37,4 +35,5 @@ class TestRoICreatorTool
    Gaudi::Property< std::vector<double> > m_half_z_width_rois {this, "HalfZWidths", {}, "Half width of the RoI - z coordinate"};
 };
 
+}
 #endif
diff --git a/Tracking/Acts/ActsRegionsOfInterest/src/components/ActsRegionsOnInterest_entries.cxx b/Tracking/Acts/ActsRegionsOfInterest/src/components/ActsRegionsOnInterest_entries.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..ee5531b83e1776ce04c19ae94cd7cc9abef6e5bc
--- /dev/null
+++ b/Tracking/Acts/ActsRegionsOfInterest/src/components/ActsRegionsOnInterest_entries.cxx
@@ -0,0 +1,14 @@
+/*
+  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
+*/
+
+#include "src/RegionsOfInterestCreatorAlg.h"
+#include "src/FullScanRoICreatorTool.h"
+#include "src/CaloBasedRoICreatorTool.h"
+#include "src/TestRoICreatorTool.h"
+
+DECLARE_COMPONENT( ActsTrk::RegionsOfInterestCreatorAlg )
+DECLARE_COMPONENT( ActsTrk::FullScanRoICreatorTool )
+DECLARE_COMPONENT( ActsTrk::CaloBasedRoICreatorTool )
+DECLARE_COMPONENT( ActsTrk::TestRoICreatorTool )
+
diff --git a/Tracking/Acts/ActsView/ActsView/IRoICreatorTool.h b/Tracking/Acts/ActsToolInterfaces/ActsToolInterfaces/IRoICreatorTool.h
similarity index 84%
rename from Tracking/Acts/ActsView/ActsView/IRoICreatorTool.h
rename to Tracking/Acts/ActsToolInterfaces/ActsToolInterfaces/IRoICreatorTool.h
index 99294c5c4c39e3f105f0984554b0a888a13860f9..e3b6152fc1e85ef9dbf58d163bd594422a375973 100644
--- a/Tracking/Acts/ActsView/ActsView/IRoICreatorTool.h
+++ b/Tracking/Acts/ActsToolInterfaces/ActsToolInterfaces/IRoICreatorTool.h
@@ -11,6 +11,8 @@
 
 #include <vector>
 
+namespace ActsTrk {
+  
 class IRoICreatorTool 
 : virtual public IAlgTool {
  public:
@@ -19,7 +21,8 @@ class IRoICreatorTool
   virtual
     StatusCode
     defineRegionsOfInterest(const EventContext& ctx,
-			    std::vector< ElementLink< TrigRoiDescriptorCollection > >& ELs) const = 0;
+			    TrigRoiDescriptorCollection& collectionRoI) const = 0;
 };
 
+}
 #endif
diff --git a/Tracking/Acts/ActsView/CMakeLists.txt b/Tracking/Acts/ActsView/CMakeLists.txt
deleted file mode 100644
index ac6b4a3a6c0ecb21580a048bdde21b9809458bfe..0000000000000000000000000000000000000000
--- a/Tracking/Acts/ActsView/CMakeLists.txt
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
-
-# Declare the package name:
-atlas_subdir(ActsView)
-
-atlas_add_library( ActsViewLib
-                   ActsView/*.h
-                   INTERFACE
-                   PUBLIC_HEADERS ActsView
-                   LINK_LIBRARIES
-		     AthLinks
-		     GaudiKernel
-		     TrigSteeringEvent )
-
-atlas_add_component( ActsView
-                     src/*.h src/*.cxx
-                     src/components/*.cxx
-                     LINK_LIBRARIES
-		       ActsViewLib
-		       AthContainers
-		       AthViews
-		       AthenaBaseComps
-		       BeamSpotConditionsData
-		       StoreGateLib
-		       TrigSteeringEvent
-		       TrkCaloClusterROI )
diff --git a/Tracking/Acts/ActsView/src/EventViewCreatorAlg.cxx b/Tracking/Acts/ActsView/src/EventViewCreatorAlg.cxx
deleted file mode 100644
index e7e96e4855d268813f26302a6e27503761863dc4..0000000000000000000000000000000000000000
--- a/Tracking/Acts/ActsView/src/EventViewCreatorAlg.cxx
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
-*/
-
-#include "EventViewCreatorAlg.h"
-#include "AthViews/ViewHelper.h"
-
-EventViewCreatorAlg::EventViewCreatorAlg(const std::string& name, 
-					 ISvcLocator* pSvcLocator)
-  : AthReentrantAlgorithm(name, pSvcLocator)
-{}
-
-StatusCode EventViewCreatorAlg::initialize() 
-{
-  ATH_MSG_DEBUG("Initialising " << name() << " ...");
-
-  ATH_CHECK(m_viewsKey.initialize());
-  ATH_CHECK(m_inViewRoIs.initialize());
-
-  ATH_CHECK(m_roiTool.retrieve());
-
-  return StatusCode::SUCCESS;
-}
-
-StatusCode EventViewCreatorAlg::execute(const EventContext& ctx) const
-{
-  ATH_MSG_DEBUG("Executing " << name() << " ...");
-
-  SG::WriteHandle< ViewContainer > viewsHandle = SG::makeHandle( m_viewsKey, ctx ); 
-  ATH_CHECK( viewsHandle.record( std::make_unique<ViewContainer>() ) );
-  ViewContainer *viewVector = viewsHandle.ptr();
-
-  std::vector< ElementLink< TrigRoiDescriptorCollection > > roiELs;
-  ATH_CHECK( m_roiTool->defineRegionsOfInterest(ctx, roiELs) );
-
-  // Make the Event Views
-  for (const ElementLink< TrigRoiDescriptorCollection >& roiEL : roiELs) {
-    SG::View* newView = ViewHelper::makeView( name()+"_view", viewVector->size(), true);
-    viewVector->push_back( newView );
-
-    ATH_CHECK( placeRoIInView( roiEL, newView, ctx ) );
-  }
-
-  return StatusCode::SUCCESS;
-}
-
-StatusCode EventViewCreatorAlg::placeRoIInView( const ElementLink<TrigRoiDescriptorCollection>& roiEL, SG::View* view, const EventContext& ctx ) const {
-  // fill the RoI output collection
-  auto oneRoIColl = std::make_unique< ConstDataVector< TrigRoiDescriptorCollection > >(SG::VIEW_ELEMENTS);
-  oneRoIColl->push_back( *roiEL );
-  view->setROI(roiEL);
-
-  //store the RoI in the view
-  auto handle = SG::makeHandle( m_inViewRoIs, ctx );
-  ATH_CHECK( handle.setProxyDict( view ) );
-  ATH_CHECK( handle.record( std::move( oneRoIColl ) ) );
-  return StatusCode::SUCCESS;
-}
-
-
diff --git a/Tracking/Acts/ActsView/src/EventViewCreatorAlg.h b/Tracking/Acts/ActsView/src/EventViewCreatorAlg.h
deleted file mode 100644
index f20925f2447bc875bed1769ca39a848bf19baa6b..0000000000000000000000000000000000000000
--- a/Tracking/Acts/ActsView/src/EventViewCreatorAlg.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
-*/
-
-#ifndef EVENT_VIEW_CREATOR_ALG_H
-#define EVENT_VIEW_CREATOR_ALG_H
-
-#include "AthenaBaseComps/AthReentrantAlgorithm.h"
-#include "ActsView/IRoICreatorTool.h"
-#include "TrigSteeringEvent/TrigRoiDescriptorCollection.h"
-#include "StoreGate/WriteHandleKey.h"
-#include "AthContainers/ConstDataVector.h"
-#include "AthLinks/ElementLink.h"
-#include "AthViews/View.h"
-
-class EventViewCreatorAlg : public AthReentrantAlgorithm {
- public:
-  EventViewCreatorAlg(const std::string& name, ISvcLocator* pSvcLocator);
-  virtual ~EventViewCreatorAlg() = default;
-
-  virtual StatusCode initialize() override;
-  virtual StatusCode execute(const EventContext& ctx) const override;
-
- private:
-  StatusCode placeRoIInView( const ElementLink<TrigRoiDescriptorCollection>& roiEL, 
-			     SG::View* view, 
-			     const EventContext& ctx ) const;
-
- private:
-  ToolHandle< IRoICreatorTool > m_roiTool {this, "RoICreatorTool", "", "Tool for creating RoIs"};
-
-  SG::WriteHandleKey< ViewContainer > m_viewsKey {this, "Views", "",
-      "The key of views collection produced" };
-  SG::WriteHandleKey< ConstDataVector< TrigRoiDescriptorCollection > > m_inViewRoIs {this, "InViewRoIs", "",
-      "RoIs in the View"};
-};
-
-#endif
diff --git a/Tracking/Acts/ActsView/src/FullScanRoICreatorTool.cxx b/Tracking/Acts/ActsView/src/FullScanRoICreatorTool.cxx
deleted file mode 100644
index 379b162ebb65e2145d6de6db255883cc1b25b969..0000000000000000000000000000000000000000
--- a/Tracking/Acts/ActsView/src/FullScanRoICreatorTool.cxx
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
-   Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
-*/
-
-#include "src/FullScanRoICreatorTool.h"
-
-
-FullScanRoICreatorTool::FullScanRoICreatorTool(const std::string& type,
-					       const std::string& name,
-					       const IInterface* parent)
-  : base_class(type, name, parent) 
-{}
-
-StatusCode FullScanRoICreatorTool::initialize()
-{
-  ATH_MSG_DEBUG("Inizializing " << name() << " ..." );
-
-  ATH_CHECK(m_roiCollectionKey.initialize());
-
-  return StatusCode::SUCCESS;
-}
-
-StatusCode FullScanRoICreatorTool::defineRegionsOfInterest(const EventContext& ctx,
-							   std::vector< ElementLink< TrigRoiDescriptorCollection > >& ELs) const 
-{
-  // RoI collection gets stored in the SG
-  SG::WriteHandle< TrigRoiDescriptorCollection > roiCollectionHandle = SG::makeHandle( m_roiCollectionKey, ctx );
-  ATH_CHECK( roiCollectionHandle.record( std::make_unique< TrigRoiDescriptorCollection >() ) );
-  TrigRoiDescriptorCollection *collectionRoI = roiCollectionHandle.ptr();
-
-  // Add a Full Scan RoI
-  collectionRoI->push_back( new TrigRoiDescriptor(true) );
-
-  // Return element links to the created RoIs so that they can be used from the outside
-  ELs.push_back( ElementLink< TrigRoiDescriptorCollection >( *collectionRoI, 0 ) );
-  ATH_CHECK( ELs.back().isValid() );
-  return StatusCode::SUCCESS;
-}
diff --git a/Tracking/Acts/ActsView/src/FullScanRoICreatorTool.h b/Tracking/Acts/ActsView/src/FullScanRoICreatorTool.h
deleted file mode 100644
index 9e0efb11723038d3ea3ba8233f9bd02eb1ae7664..0000000000000000000000000000000000000000
--- a/Tracking/Acts/ActsView/src/FullScanRoICreatorTool.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/* 
-   Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
-*/
-
-#ifndef FULL_SCAN_ROI_CREATOR_TOOL_H
-#define FULL_SCAN_ROI_CREATOR_TOOL_H
-
-#include "AthenaBaseComps/AthAlgTool.h"
-#include "ActsView/IRoICreatorTool.h"
-
-class FullScanRoICreatorTool : public extends<AthAlgTool, ::IRoICreatorTool> {
- public:
-  FullScanRoICreatorTool(const std::string& type,
-			 const std::string& name,
-			 const IInterface* parent);
-  virtual ~FullScanRoICreatorTool() = default;
-
-  virtual 
-    StatusCode initialize() override;
-
-   virtual
-     StatusCode defineRegionsOfInterest(const EventContext& ctx,
-					std::vector< ElementLink< TrigRoiDescriptorCollection > >& ELs) const override;
-   
- private:
-  SG::WriteHandleKey< TrigRoiDescriptorCollection > m_roiCollectionKey {this, "RoIs", ""};
-};
-
-#endif
diff --git a/Tracking/Acts/ActsView/src/components/ActsView_entries.cxx b/Tracking/Acts/ActsView/src/components/ActsView_entries.cxx
deleted file mode 100644
index fa908c451b73fd7a8c42c755a291a458b77ed61d..0000000000000000000000000000000000000000
--- a/Tracking/Acts/ActsView/src/components/ActsView_entries.cxx
+++ /dev/null
@@ -1,14 +0,0 @@
-/*
-  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
-*/
-
-#include "src/EventViewCreatorAlg.h"
-#include "src/FullScanRoICreatorTool.h"
-#include "src/CaloBasedRoICreatorTool.h"
-#include "src/TestRoICreatorTool.h"
-
-DECLARE_COMPONENT( ::EventViewCreatorAlg )
-DECLARE_COMPONENT( ::FullScanRoICreatorTool )
-DECLARE_COMPONENT( ::CaloBasedRoICreatorTool )
-DECLARE_COMPONENT( ::TestRoICreatorTool )
-