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 ) -