diff --git a/InnerDetector/InDetConfig/python/ITkTrackRecoConfig.py b/InnerDetector/InDetConfig/python/ITkTrackRecoConfig.py index 9d1783fb90c5f5b6bb5977f84e4c6bd6b7c0fa30..cc15b16ff40079ec79dcb8ef339aa9b1359b8e49 100644 --- a/InnerDetector/InDetConfig/python/ITkTrackRecoConfig.py +++ b/InnerDetector/InDetConfig/python/ITkTrackRecoConfig.py @@ -6,9 +6,14 @@ from AthenaConfiguration.Enums import Format from InDetConfig.TrackRecoConfig import FTAG_AUXDATA +_flags_set = [] # For caching def CombinedTrackingPassFlagSets(flags): + global _flags_set + if _flags_set: + return _flags_set + flags_set = [] # Primary Pass @@ -30,10 +35,11 @@ def CombinedTrackingPassFlagSets(flags): flagsConv = flags.cloneAndReplace("ITk.Tracking.ActivePass", "ITk.Tracking.ConversionFindingPass") flags_set += [flagsConv] + _flags_set = flags_set # Put into cache + return flags_set def ITkClusterSplitProbabilityContainerName(flags): - flags_set = CombinedTrackingPassFlagSets(flags) extension = flags_set[-1].ITk.Tracking.ActivePass.extension ClusterSplitProbContainer = "ITkAmbiguityProcessorSplitProb" + extension @@ -45,7 +51,7 @@ def ITkTrackRecoCfg(flags): if flags.Input.Format is Format.BS: # TODO: ITk BS providers - raise RuntimeError("BS imputs not supported") + raise RuntimeError("ByteStream inputs not supported") from InDetConfig.SiliconPreProcessing import ITkRecPreProcessingSiliconCfg result.merge(ITkRecPreProcessingSiliconCfg(flags)) @@ -91,7 +97,7 @@ def ITkTrackRecoCfg(flags): from TrkConfig.TrkTrackCollectionMergerConfig import ITkTrackCollectionMergerAlgCfg result.merge(ITkTrackCollectionMergerAlgCfg(flags, InputCombinedTracks = InputCombinedITkTracks, - CombinedITkClusterSplitProbContainer = ITkClusterSplitProbabilityContainerName(flags))) + CombinedITkClusterSplitProbContainer = ITkClusterSplitProbabilityContainerName(flags) if not flags.ITk.Tracking.doFastTracking else "")) if flags.ITk.Tracking.doTruth: result.merge(ITkTrackTruthCfg(flags)) diff --git a/InnerDetector/InDetConfig/python/ITkTrackingSiPatternConfig.py b/InnerDetector/InDetConfig/python/ITkTrackingSiPatternConfig.py index 6168f961524d092d556a195772edb7e043066b97..6ff8617dfe05c40de4ff32960eafd1b69c1ed379 100644 --- a/InnerDetector/InDetConfig/python/ITkTrackingSiPatternConfig.py +++ b/InnerDetector/InDetConfig/python/ITkTrackingSiPatternConfig.py @@ -1,79 +1,5 @@ # Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator -from AthenaConfiguration.ComponentFactory import CompFactory - -def ITkSiSPSeededTrackFinderCfg(flags, name="ITkSiSpTrackFinder", **kwargs) : - acc = ComponentAccumulator() - - from InDetConfig.SiTrackMakerConfig import ITkSiTrackMaker_xkCfg - ITkSiTrackMaker = acc.popToolsAndMerge(ITkSiTrackMaker_xkCfg(flags)) - from TrkConfig.TrkExRungeKuttaPropagatorConfig import ITkPropagatorCfg - ITkPropagator = acc.popToolsAndMerge(ITkPropagatorCfg(flags)) - acc.addPublicTool(ITkPropagator) - from TrkConfig.TrkTrackSummaryToolConfig import ITkTrackSummaryToolNoHoleSearchCfg - ITkTrackSummaryToolNoHoleSearch = acc.getPrimaryAndMerge(ITkTrackSummaryToolNoHoleSearchCfg(flags)) - - if "SeedsTool" not in kwargs: - ITkSiSpacePointsSeedMaker = None - - if flags.ITk.Tracking.ActivePass.extension != "ConversionFinding" and flags.Acts.TrackFinding.useSiSpacePointSeedMaker: - from ActsTrkSeedingTool.ActsTrkSeedingToolConfig import ActsTrkSiSpacePointsSeedMakerCfg - ITkSiSpacePointsSeedMaker = acc.popToolsAndMerge(ActsTrkSiSpacePointsSeedMakerCfg(flags)) - else: - from InDetConfig.SiSpacePointsSeedToolConfig import ITkSiSpacePointsSeedMakerCfg - ITkSiSpacePointsSeedMaker = acc.popToolsAndMerge(ITkSiSpacePointsSeedMakerCfg(flags)) - - kwargs.setdefault("SeedsTool", ITkSiSpacePointsSeedMaker) - - # - # --- Setup Track finder using space points seeds - # - kwargs.setdefault("TrackTool", ITkSiTrackMaker) - kwargs.setdefault("PropagatorTool", ITkPropagator) - if flags.ITk.Tracking.ActivePass.usePrdAssociationTool: - # not all classes have that property !!! - kwargs.setdefault("PRDtoTrackMap", 'ITkPRDtoTrackMap'+ flags.ITk.Tracking.ActivePass.extension) - kwargs.setdefault("TrackSummaryTool", ITkTrackSummaryToolNoHoleSearch) - kwargs.setdefault("useZvertexTool", False) - kwargs.setdefault("useZBoundFinding", flags.ITk.Tracking.ActivePass.doZBoundary) - kwargs.setdefault("ITKGeometry", True) - kwargs.setdefault("SpacePointsSCTName", "ITkStripSpacePoints") - kwargs.setdefault("SpacePointsPixelName", "ITkPixelSpacePoints") - - if flags.ITk.Tracking.doFastTracking : - kwargs.setdefault("doFastTracking", True) - - if 'InDetEtaDependentCutsSvc' not in kwargs : - from InDet.InDetEtaDependentCutsConfig import ITkEtaDependentCutsSvcCfg - acc.merge(ITkEtaDependentCutsSvcCfg(flags)) - kwargs.setdefault("InDetEtaDependentCutsSvc", acc.getService("ITkEtaDependentCutsSvc"+flags.ITk.Tracking.ActivePass.extension)) - - ITkSiSPSeededTrackFinder = CompFactory.InDet.SiSPSeededTrackFinder(name = name+flags.ITk.Tracking.ActivePass.extension, **kwargs) - acc.addEventAlgo(ITkSiSPSeededTrackFinder) - return acc - -def ITkSiSPSeededTrackFinderROIConvCfg(flags, name="ITkSiSpTrackFinderROIConv", **kwargs) : - from InDetConfig.InDetCaloClusterROISelectorConfig import ITkCaloClusterROIPhiRZContainerMakerCfg - acc = ITkCaloClusterROIPhiRZContainerMakerCfg(flags) - - from RegionSelector.RegSelToolConfig import regSelTool_ITkStrip_Cfg - RegSelTool_ITkStrip = acc.popToolsAndMerge(regSelTool_ITkStrip_Cfg(flags)) - - kwargs.setdefault("RegSelTool_Strip", RegSelTool_ITkStrip) - kwargs.setdefault("useITkConvSeeded", True) - kwargs.setdefault("EMROIPhiRZContainer", "ITkCaloClusterROIPhiRZ15GeVUnordered") - - acc.merge(ITkSiSPSeededTrackFinderCfg(flags, name, **kwargs)) - return acc - -def ITkCopyAlgForAmbiCfg(flags, name="ITkCopyAlgForAmbi", InputTrackCollection = None, OutputTrackCollection = None, **kwargs) : - acc = ComponentAccumulator() - - kwargs.setdefault("CollectionName", InputTrackCollection) - kwargs.setdefault("AliasName", OutputTrackCollection) - ITkCopyAlgForAmbi = CompFactory.Trk.TrkCollectionAliasAlg (name = name+flags.ITk.Tracking.ActivePass.extension, **kwargs) - acc.addEventAlgo(ITkCopyAlgForAmbi) - return acc # ------------------------------------------------------------ # @@ -101,27 +27,29 @@ def ITkTrackingSiPatternCfg(flags, # # ------------------------------------------------------------ + from InDetConfig.SiSPSeededTrackFinderConfig import ITkSiSPSeededTrackFinderCfg SiSPSeededTrackFinderCfg = ITkSiSPSeededTrackFinderCfg if flags.ITk.Tracking.ActivePass.extension == "ConversionFinding": + from InDetConfig.SiSPSeededTrackFinderConfig import ITkSiSPSeededTrackFinderROIConvCfg SiSPSeededTrackFinderCfg = ITkSiSPSeededTrackFinderROIConvCfg - acc.merge(SiSPSeededTrackFinderCfg( flags, - TracksLocation = SiSPSeededTrackCollectionKey)) + acc.merge(SiSPSeededTrackFinderCfg(flags, + TracksLocation = SiSPSeededTrackCollectionKey)) # ------------------------------------------------------------ # # ---------- Ambiguity solving # # ------------------------------------------------------------ - if flags.ITk.Tracking.doFastTracking: - acc.merge(ITkCopyAlgForAmbiCfg( flags, - InputTrackCollection = SiSPSeededTrackCollectionKey, - OutputTrackCollection = ResolvedTrackCollectionKey )) + from TrkConfig.TrkCollectionAliasAlgConfig import ITkCopyAlgForAmbiCfg + acc.merge(ITkCopyAlgForAmbiCfg(flags, "ITkCopyAlgForAmbi"+flags.ITk.Tracking.ActivePass.extension, + CollectionName = SiSPSeededTrackCollectionKey, # Input + AliasName = ResolvedTrackCollectionKey)) # Output else: from TrkConfig.TrkAmbiguitySolverConfig import ITkTrkAmbiguityScoreCfg, ITkTrkAmbiguitySolverCfg - acc.merge(ITkTrkAmbiguityScoreCfg( flags, - SiSPSeededTrackCollectionKey = SiSPSeededTrackCollectionKey, - ClusterSplitProbContainer = ClusterSplitProbContainer)) + acc.merge(ITkTrkAmbiguityScoreCfg(flags, + SiSPSeededTrackCollectionKey = SiSPSeededTrackCollectionKey, + ClusterSplitProbContainer = ClusterSplitProbContainer)) acc.merge(ITkTrkAmbiguitySolverCfg(flags, ResolvedTrackCollectionKey = ResolvedTrackCollectionKey)) diff --git a/InnerDetector/InDetConfig/python/SiSPSeededTrackFinderConfig.py b/InnerDetector/InDetConfig/python/SiSPSeededTrackFinderConfig.py new file mode 100644 index 0000000000000000000000000000000000000000..0bebaeef2e9ab7e2c1d7680dd2b09985e9bd589a --- /dev/null +++ b/InnerDetector/InDetConfig/python/SiSPSeededTrackFinderConfig.py @@ -0,0 +1,121 @@ +# Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration +# Configuration of SiSPSeededTrackFinder package +from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator +from AthenaConfiguration.ComponentFactory import CompFactory + +def SiSPSeededTrackFinderCfg(flags, name="InDetSiSpTrackFinder", **kwargs) : + acc = ComponentAccumulator() + + if "TrackTool" not in kwargs: + from InDetConfig.SiTrackMakerConfig import SiTrackMaker_xkCfg + kwargs.setdefault("TrackTool", acc.popToolsAndMerge( + SiTrackMaker_xkCfg(flags))) + + if "PropagatorTool" not in kwargs: + from TrkConfig.TrkExRungeKuttaPropagatorConfig import InDetPropagatorCfg + InDetPropagator = acc.popToolsAndMerge(InDetPropagatorCfg(flags)) + acc.addPublicTool(InDetPropagator) + kwargs.setdefault("PropagatorTool", InDetPropagator) + + if "TrackSummaryTool" not in kwargs: + from TrkConfig.TrkTrackSummaryToolConfig import InDetTrackSummaryToolNoHoleSearchCfg + kwargs.setdefault("TrackSummaryTool", acc.popToolsAndMerge( + InDetTrackSummaryToolNoHoleSearchCfg(flags))) + + if "SeedsTool" not in kwargs: + from InDetConfig.SiSpacePointsSeedToolConfig import SiSpacePointsSeedMakerCfg + kwargs.setdefault("SeedsTool", acc.popToolsAndMerge( + SiSpacePointsSeedMakerCfg(flags))) + + kwargs.setdefault("useMBTSTimeDiff", flags.Reco.EnableHI) # Heavy-ion config + + if flags.InDet.Tracking.ActivePass.usePrdAssociationTool: + # not all classes have that property !!! + kwargs.setdefault("PRDtoTrackMap", 'InDetPRDtoTrackMap'+ flags.InDet.Tracking.ActivePass.extension) + + if flags.InDet.Tracking.ActivePass.extension == "Forward": + kwargs.setdefault("useZvertexTool", flags.Reco.EnableHI) # For heavy-ion + kwargs.setdefault("useZBoundFinding", False) + else: + kwargs.setdefault("useZvertexTool", flags.Reco.EnableHI) # For heavy-ion + kwargs.setdefault("useZBoundFinding", flags.InDet.Tracking.ActivePass.doZBoundary) + + # + # --- Z-coordinates primary vertices finder (only for collisions) + # + if kwargs["useZvertexTool"] and "ZvertexTool" not in kwargs: + from InDetConfig.SiZvertexToolConfig import SiZvertexMaker_xkCfg + kwargs.setdefault("ZvertexTool", acc.popToolsAndMerge( + SiZvertexMaker_xkCfg(flags))) + + if flags.Reco.EnableHI: + kwargs.setdefault("FreeClustersCut",2) #Heavy Ion optimization from Igor + + acc.addEventAlgo(CompFactory.InDet.SiSPSeededTrackFinder(name+flags.InDet.Tracking.ActivePass.extension, **kwargs)) + return acc + +def ITkSiSPSeededTrackFinderCfg(flags, name="ITkSiSpTrackFinder", **kwargs) : + acc = ComponentAccumulator() + + if "TrackTool" not in kwargs: + from InDetConfig.SiTrackMakerConfig import ITkSiTrackMaker_xkCfg + kwargs.setdefault("TrackTool", acc.popToolsAndMerge( + ITkSiTrackMaker_xkCfg(flags))) + + if "PropagatorTool" not in kwargs: + from TrkConfig.TrkExRungeKuttaPropagatorConfig import ITkPropagatorCfg + ITkPropagator = acc.popToolsAndMerge(ITkPropagatorCfg(flags)) + acc.addPublicTool(ITkPropagator) + kwargs.setdefault("PropagatorTool", ITkPropagator) + + if "TrackSummaryTool" not in kwargs: + from TrkConfig.TrkTrackSummaryToolConfig import ITkTrackSummaryToolNoHoleSearchCfg + kwargs.setdefault("TrackSummaryTool", acc.popToolsAndMerge( + ITkTrackSummaryToolNoHoleSearchCfg(flags))) + + if "SeedsTool" not in kwargs: + ITkSiSpacePointsSeedMaker = None + if flags.ITk.Tracking.ActivePass.extension != "ConversionFinding" and flags.Acts.TrackFinding.useSiSpacePointSeedMaker: + from ActsTrkSeedingTool.ActsTrkSeedingToolConfig import ActsTrkSiSpacePointsSeedMakerCfg + ITkSiSpacePointsSeedMaker = acc.popToolsAndMerge(ActsTrkSiSpacePointsSeedMakerCfg(flags)) + else: + from InDetConfig.SiSpacePointsSeedToolConfig import ITkSiSpacePointsSeedMakerCfg + ITkSiSpacePointsSeedMaker = acc.popToolsAndMerge(ITkSiSpacePointsSeedMakerCfg(flags)) + + kwargs.setdefault("SeedsTool", ITkSiSpacePointsSeedMaker) + + if flags.ITk.Tracking.ActivePass.usePrdAssociationTool: + # not all classes have that property !!! + kwargs.setdefault("PRDtoTrackMap", 'ITkPRDtoTrackMap'+ flags.ITk.Tracking.ActivePass.extension) + + kwargs.setdefault("useZvertexTool", False) + kwargs.setdefault("useZBoundFinding", flags.ITk.Tracking.ActivePass.doZBoundary) + kwargs.setdefault("ITKGeometry", True) + kwargs.setdefault("SpacePointsSCTName", "ITkStripSpacePoints") + kwargs.setdefault("SpacePointsPixelName", "ITkPixelSpacePoints") + + if flags.ITk.Tracking.doFastTracking : + kwargs.setdefault("doFastTracking", True) + + if 'InDetEtaDependentCutsSvc' not in kwargs : + from InDetConfig.InDetEtaDependentCutsConfig import ITkEtaDependentCutsSvcCfg + acc.merge(ITkEtaDependentCutsSvcCfg(flags)) + kwargs.setdefault("InDetEtaDependentCutsSvc", acc.getService("ITkEtaDependentCutsSvc"+flags.ITk.Tracking.ActivePass.extension)) + + acc.addEventAlgo(CompFactory.InDet.SiSPSeededTrackFinder(name+flags.ITk.Tracking.ActivePass.extension, **kwargs)) + return acc + +def ITkSiSPSeededTrackFinderROIConvCfg(flags, name="ITkSiSpTrackFinderROIConv", **kwargs) : + from InDetConfig.InDetCaloClusterROISelectorConfig import ITkCaloClusterROIPhiRZContainerMakerCfg + acc = ITkCaloClusterROIPhiRZContainerMakerCfg(flags) + + if "RegSelTool_Strip" not in kwargs: + from RegionSelector.RegSelToolConfig import regSelTool_ITkStrip_Cfg + kwargs.setdefault("RegSelTool_Strip", acc.popToolsAndMerge( + regSelTool_ITkStrip_Cfg(flags))) + + kwargs.setdefault("useITkConvSeeded", True) + kwargs.setdefault("EMROIPhiRZContainer", "ITkCaloClusterROIPhiRZ15GeVUnordered") + + acc.merge(ITkSiSPSeededTrackFinderCfg(flags, name, **kwargs)) + return acc diff --git a/InnerDetector/InDetConfig/python/TrackRecoConfig.py b/InnerDetector/InDetConfig/python/TrackRecoConfig.py index 7ef3729152050c708cea0613a293f2a3e6011e28..638230d376e42162b46a516780cd9262cebefb6a 100644 --- a/InnerDetector/InDetConfig/python/TrackRecoConfig.py +++ b/InnerDetector/InDetConfig/python/TrackRecoConfig.py @@ -4,8 +4,14 @@ from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory from AthenaConfiguration.Enums import BeamType, Format +_flags_set = [] # For caching + def CombinedTrackingPassFlagSets(flags): + global _flags_set + if _flags_set: + return _flags_set + flags_set = [] # Primary Pass @@ -70,6 +76,8 @@ def CombinedTrackingPassFlagSets(flags): flagsBeamGas = flags.cloneAndReplace("InDet.Tracking.ActivePass", "InDet.Tracking.BeamGasPass") flags_set += [flagsBeamGas] + _flags_set = flags_set # Put into cache + return flags_set def ClusterSplitProbabilityContainerName(flags): diff --git a/InnerDetector/InDetConfig/python/TrackingSiPatternConfig.py b/InnerDetector/InDetConfig/python/TrackingSiPatternConfig.py index fc18bd5b8a5526a066cbf414e19e146bcd27ab50..bde776eaa0cc0ad99afd6d635ef0445a9529c978 100644 --- a/InnerDetector/InDetConfig/python/TrackingSiPatternConfig.py +++ b/InnerDetector/InDetConfig/python/TrackingSiPatternConfig.py @@ -1,55 +1,5 @@ # Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator -from AthenaConfiguration.ComponentFactory import CompFactory - -def SiSPSeededTrackFinderCfg(flags, name="InDetSiSpTrackFinder", **kwargs) : - acc = ComponentAccumulator() - - from TrkConfig.TrkExRungeKuttaPropagatorConfig import InDetPropagatorCfg - InDetPropagator = acc.popToolsAndMerge(InDetPropagatorCfg(flags)) - acc.addPublicTool(InDetPropagator) - - # - # --- Setup Track finder using space points seeds - # - from InDetConfig.SiTrackMakerConfig import SiTrackMaker_xkCfg - kwargs.setdefault("TrackTool", acc.popToolsAndMerge(SiTrackMaker_xkCfg(flags))) - kwargs.setdefault("PropagatorTool", InDetPropagator) - from TrkConfig.TrkTrackSummaryToolConfig import InDetTrackSummaryToolNoHoleSearchCfg - kwargs.setdefault("TrackSummaryTool", acc.popToolsAndMerge(InDetTrackSummaryToolNoHoleSearchCfg(flags))) - - if "SeedsTool" not in kwargs: - from InDetConfig.SiSpacePointsSeedToolConfig import SiSpacePointsSeedMakerCfg - kwargs.setdefault("SeedsTool", acc.popToolsAndMerge( - SiSpacePointsSeedMakerCfg(flags))) - - kwargs.setdefault("useMBTSTimeDiff", flags.Reco.EnableHI) # Heavy-ion config - - if flags.InDet.Tracking.ActivePass.usePrdAssociationTool: - # not all classes have that property !!! - kwargs.setdefault("PRDtoTrackMap", 'InDetPRDtoTrackMap'+ flags.InDet.Tracking.ActivePass.extension) - - if flags.InDet.Tracking.ActivePass.extension == "Forward": - kwargs.setdefault("useZvertexTool", flags.Reco.EnableHI) # For heavy-ion - kwargs.setdefault("useZBoundFinding", False) - else: - kwargs.setdefault("useZvertexTool", flags.Reco.EnableHI) # For heavy-ion - kwargs.setdefault("useZBoundFinding", flags.InDet.Tracking.ActivePass.doZBoundary) - - # - # --- Z-coordinates primary vertices finder (only for collisions) - # - if kwargs["useZvertexTool"] and "ZvertexTool" not in kwargs: - from InDetConfig.SiZvertexToolConfig import SiZvertexMaker_xkCfg - kwargs.setdefault("ZvertexTool", acc.popToolsAndMerge( - SiZvertexMaker_xkCfg(flags))) - - if flags.Reco.EnableHI: - kwargs.setdefault("FreeClustersCut",2) #Heavy Ion optimization from Igor - - InDetSiSPSeededTrackFinder = CompFactory.InDet.SiSPSeededTrackFinder(name = name+flags.InDet.Tracking.ActivePass.extension, **kwargs) - acc.addEventAlgo(InDetSiSPSeededTrackFinder) - return acc # ------------------------------------------------------------ # @@ -77,8 +27,9 @@ def TrackingSiPatternCfg(flags, # # ------------------------------------------------------------ - acc.merge(SiSPSeededTrackFinderCfg( flags, - TracksLocation = SiSPSeededTrackCollectionKey)) + from InDetConfig.SiSPSeededTrackFinderConfig import SiSPSeededTrackFinderCfg + acc.merge(SiSPSeededTrackFinderCfg(flags, + TracksLocation = SiSPSeededTrackCollectionKey)) # ------------------------------------------------------------ # @@ -87,9 +38,9 @@ def TrackingSiPatternCfg(flags, # ------------------------------------------------------------ from TrkConfig.TrkAmbiguitySolverConfig import TrkAmbiguityScoreCfg, TrkAmbiguitySolverCfg - acc.merge(TrkAmbiguityScoreCfg( flags, - SiSPSeededTrackCollectionKey = SiSPSeededTrackCollectionKey, - ClusterSplitProbContainer = ClusterSplitProbContainer)) + acc.merge(TrkAmbiguityScoreCfg(flags, + SiSPSeededTrackCollectionKey = SiSPSeededTrackCollectionKey, + ClusterSplitProbContainer = ClusterSplitProbContainer)) acc.merge(TrkAmbiguitySolverCfg(flags, ResolvedTrackCollectionKey = ResolvedTrackCollectionKey, diff --git a/Tracking/TrkConfig/python/TrkCollectionAliasAlgConfig.py b/Tracking/TrkConfig/python/TrkCollectionAliasAlgConfig.py new file mode 100644 index 0000000000000000000000000000000000000000..b5d77f5d7703a61ce933843820257e773a88f161 --- /dev/null +++ b/Tracking/TrkConfig/python/TrkCollectionAliasAlgConfig.py @@ -0,0 +1,9 @@ +# Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration +# Configuration of TrkCollectionAliasAlg package +from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator +from AthenaConfiguration.ComponentFactory import CompFactory + +def CopyAlgForAmbiCfg(flags, name="CopyAlgForAmbi", **kwargs) : + acc = ComponentAccumulator() + acc.addEventAlgo(CompFactory.Trk.TrkCollectionAliasAlg(name, **kwargs)) + return acc