diff --git a/InnerDetector/InDetConfig/python/BackTrackingConfig.py b/InnerDetector/InDetConfig/python/BackTrackingConfig.py index da02f0a0e613993604f52c2b6b0d84af698bbb3d..3e7e06697607d7344d319ee81ce30cf12fc6da9d 100644 --- a/InnerDetector/InDetConfig/python/BackTrackingConfig.py +++ b/InnerDetector/InDetConfig/python/BackTrackingConfig.py @@ -152,8 +152,7 @@ def TRT_SeededTrackFinderCfg(flags, name='InDetTRT_SeededTrackFinder', InputColl InDetTrackFitterBT = acc.popToolsAndMerge(TC.InDetTrackFitterBTCfg(flags)) acc.addPublicTool(InDetTrackFitterBT) - InDetTrackSummaryToolNoHoleSearch = acc.popToolsAndMerge(TC.InDetTrackSummaryToolNoHoleSearchCfg(flags)) - acc.addPublicTool(InDetTrackSummaryToolNoHoleSearch) + InDetTrackSummaryToolNoHoleSearch = acc.getPrimaryAndMerge(TC.InDetTrackSummaryToolNoHoleSearchCfg(flags)) InDetTRTExtensionTool = acc.popToolsAndMerge(TC.InDetTRT_ExtensionToolCfg(flags)) acc.addPublicTool(InDetTRTExtensionTool) @@ -258,8 +257,7 @@ def SimpleAmbiguityProcessorToolCfg(flags, name='InDetTRT_SeededAmbiguityProcess else: InDetTRT_SeededScoringTool = acc.popToolsAndMerge(TC.InDetTRT_SeededScoringToolCfg(flags)) acc.addPublicTool(InDetTRT_SeededScoringTool) - InDetTRT_SeededSummaryTool = acc.popToolsAndMerge(TC.InDetTrackSummaryToolCfg(flags)) - acc.addPublicTool(InDetTRT_SeededSummaryTool) + InDetTRT_SeededSummaryTool = acc.getPrimaryAndMerge(TC.InDetTrackSummaryToolCfg(flags)) InDetTRT_SeededAmbiTrackSelectionTool = acc.popToolsAndMerge(InDetAmbiTrackSelectionToolCfg(flags)) acc.addPublicTool(InDetTRT_SeededAmbiTrackSelectionTool) diff --git a/InnerDetector/InDetConfig/python/ITkRecToolConfig.py b/InnerDetector/InDetConfig/python/ITkRecToolConfig.py index 6db17f79c5a2b15a45e6e34a93ba7ab5d1729870..c14d8b3d21e037fef7a74938a3871e1f79ad07f8 100644 --- a/InnerDetector/InDetConfig/python/ITkRecToolConfig.py +++ b/InnerDetector/InDetConfig/python/ITkRecToolConfig.py @@ -37,12 +37,12 @@ def ITkTrackSummaryHelperToolCfg(flags, name='ITkSummaryHelper', **kwargs): isHLT=kwargs.pop("isHLT",False) if 'AssoTool' not in kwargs : + assoTool = None if not isHLT: - ITkPrdAssociationTool_setup = result.getPrimaryAndMerge(ITkPrdAssociationTool_setupCfg(flags)) - kwargs.setdefault("AssoTool", ITkPrdAssociationTool_setup) + assoTool = result.getPrimaryAndMerge(ITkPrdAssociationTool_setupCfg(flags)) else: - ITkTrigPrdAssociationTool = result.getPrimaryAndMerge(ITkTrigPrdAssociationToolCfg(flags)) - kwargs.setdefault("AssoTool", ITkTrigPrdAssociationTool) + assoTool = result.getPrimaryAndMerge(ITkTrigPrdAssociationToolCfg(flags)) + kwargs.setdefault("AssoTool", assoTool) if "HoleSearch" not in kwargs: ITkTrackHoleSearchTool = result.getPrimaryAndMerge(ITkTrackHoleSearchToolCfg(flags)) @@ -74,7 +74,7 @@ def ITkBoundaryCheckToolCfg(flags, name='ITkBoundaryCheckTool', **kwargs): kwargs.setdefault("SctSummaryTool", None) if 'PixelLayerTool' not in kwargs : - kwargs.setdefault("PixelLayerTool", result.getPrimaryAndMerge(ITkTestPixelLayerToolCfg(flags))) + kwargs.setdefault("PixelLayerTool", result.popToolsAndMerge(ITkTestPixelLayerToolCfg(flags))) kwargs.setdefault("UsePixel", flags.Detector.EnableITkPixel) kwargs.setdefault("UseSCT", flags.Detector.EnableITkStrip) @@ -119,7 +119,7 @@ def ITkTestPixelLayerToolCfg(flags, name = "ITkTestPixelLayerTool", **kwargs): kwargs.setdefault("CheckDisabledFEs", flags.ITk.checkDeadElementsOnTrack) tool = CompFactory.InDet.InDetTestPixelLayerTool( name = the_name, **kwargs) - result.addPublicTool( tool, primary=True ) + result.setPrivateTools( tool ) return result def ITkPatternPropagatorCfg(flags, name='ITkPatternPropagator', **kwargs): diff --git a/InnerDetector/InDetConfig/python/ITkSiliconPreProcessing.py b/InnerDetector/InDetConfig/python/ITkSiliconPreProcessing.py index 79e052ca0196bf3211c4cf225f4903c587c32c04..4a6792755e5e5d74db76da8665daf4dfdd2b4188 100644 --- a/InnerDetector/InDetConfig/python/ITkSiliconPreProcessing.py +++ b/InnerDetector/InDetConfig/python/ITkSiliconPreProcessing.py @@ -156,7 +156,7 @@ def ITkNnPixelClusterSplitProbToolCfg(flags, name="ITkNnPixelClusterSplitProbToo ITkNnPixelClusterSplitProbTool = CompFactory.InDet.TruthPixelClusterSplitProbTool(name=name,**kwargs) #Truth-based for ITk for now - acc.addPublicTool(ITkNnPixelClusterSplitProbTool, primary=True) + acc.setPrivateTools(ITkNnPixelClusterSplitProbTool) return acc def ITkNnPixelClusterSplitterCfg(flags, name="ITkNnPixelClusterSplitter", **kwargs): diff --git a/InnerDetector/InDetConfig/python/ITkTrackRecoConfig.py b/InnerDetector/InDetConfig/python/ITkTrackRecoConfig.py index d8cb567adb8a2c06d2d0f8fb00d66643ed41d110..2a43dcfbd215028a5078bba25dabc8ef62b382e2 100644 --- a/InnerDetector/InDetConfig/python/ITkTrackRecoConfig.py +++ b/InnerDetector/InDetConfig/python/ITkTrackRecoConfig.py @@ -14,8 +14,8 @@ def ITk_BCM_ZeroSuppressionCfg(flags, name="ITk_BCM_ZeroSuppression", **kwargs): ##------------------------------------------------------------------------------ def ITkPixelClusterizationCfg(flags, name = "ITkPixelClusterization", **kwargs) : acc = ComponentAccumulator() - merged_pixels_tool = acc.getPrimaryAndMerge(ITkMergedPixelsToolCfg(flags, **kwargs)) - ambi_finder = acc.getPrimaryAndMerge(ITkPixelGangedAmbiguitiesFinderCfg(flags, **kwargs)) + merged_pixels_tool = acc.popToolsAndMerge(ITkMergedPixelsToolCfg(flags, **kwargs)) + ambi_finder = acc.popToolsAndMerge(ITkPixelGangedAmbiguitiesFinderCfg(flags, **kwargs)) kwargs.setdefault("clusteringTool", merged_pixels_tool) kwargs.setdefault("gangedAmbiguitiesFinder", ambi_finder) @@ -46,7 +46,7 @@ def ITkStripClusterizationCfg(flags, name="ITkStripClusterization", **kwargs) : ITkStripLorentzAngleTool = acc.popToolsAndMerge( ITkStripLorentzAngleCfg(flags) ) #### Clustering tool ###### - ITkClusterMakerTool = acc.getPrimaryAndMerge(ITkClusterMakerToolCfg(flags)) + ITkClusterMakerTool = acc.popToolsAndMerge(ITkClusterMakerToolCfg(flags)) ITkStripClusteringTool = CompFactory.InDet.SCT_ClusteringTool( name = "ITkStripClusteringTool", globalPosAlg = ITkClusterMakerTool, conditionsTool = ITkStripConditionsSummaryTool, @@ -83,14 +83,14 @@ def ITkPixelGangedAmbiguitiesFinderCfg(flags, **kwargs) : kwargs.setdefault("PixelDetEleCollKey", "ITkPixelDetectorElementCollection") ITkPixelGangedAmbiguitiesFinder = CompFactory.InDet.PixelGangedAmbiguitiesFinder( name = "ITkPixelGangedAmbiguitiesFinder", **kwargs) - acc.addPublicTool( ITkPixelGangedAmbiguitiesFinder, primary=True ) + acc.setPrivateTools( ITkPixelGangedAmbiguitiesFinder ) return acc ##------------------------------------------------------------------------------ def ITkMergedPixelsToolCfg(flags, **kwargs) : acc = ComponentAccumulator() # --- now load the framework for the clustering - kwargs.setdefault("globalPosAlg", acc.getPrimaryAndMerge(ITkClusterMakerToolCfg(flags))) + kwargs.setdefault("globalPosAlg", acc.popToolsAndMerge(ITkClusterMakerToolCfg(flags))) # PixelClusteringToolBase uses PixelConditionsSummaryTool from PixelConditionsTools.ITkPixelConditionsSummaryConfig import ITkPixelConditionsSummaryCfg @@ -100,27 +100,21 @@ def ITkMergedPixelsToolCfg(flags, **kwargs) : kwargs.setdefault("PixelDetEleCollKey","ITkPixelDetectorElementCollection") ITkMergedPixelsTool = CompFactory.InDet.MergedPixelsTool( name = "ITkMergedPixelsTool", **kwargs) - acc.addPublicTool(ITkMergedPixelsTool, primary=True) + acc.setPrivateTools(ITkMergedPixelsTool) return acc ##------------------------------------------------------------------------------ def ITkClusterMakerToolCfg(flags, name="ITkClusterMakerTool", **kwargs) : acc = ComponentAccumulator() - from PixelConditionsAlgorithms.ITkPixelConditionsConfig import (ITkPixelChargeCalibCondAlgCfg, ITkPixelConfigCondAlgCfg, ITkPixelDeadMapCondAlgCfg, - ITkPixelOfflineCalibCondAlgCfg) + from PixelConditionsAlgorithms.ITkPixelConditionsConfig import ITkPixelChargeCalibCondAlgCfg from PixelReadoutGeometry.PixelReadoutGeometryConfig import ITkPixelReadoutManagerCfg #ITkPixelCablingCondAlgCfg + ITkPixelReadoutSpeedAlgCfg needed? # This directly needs the following Conditions data: # PixelModuleData & PixelChargeCalibCondData - acc.merge(ITkPixelConfigCondAlgCfg(flags)) - acc.merge(ITkPixelDeadMapCondAlgCfg(flags)) acc.merge(ITkPixelChargeCalibCondAlgCfg(flags)) - acc.merge(ITkPixelOfflineCalibCondAlgCfg(flags)) acc.merge(ITkPixelReadoutManagerCfg(flags)) - #acc.merge(PixelCablingCondAlgCfg(flags)) - #acc.merge(PixelReadoutSpeedAlgCfg(flags)) from SiLorentzAngleTool.ITkPixelLorentzAngleConfig import ITkPixelLorentzAngleCfg ITkPixelLorentzAngleTool = acc.popToolsAndMerge(ITkPixelLorentzAngleCfg(flags)) @@ -134,7 +128,7 @@ def ITkClusterMakerToolCfg(flags, name="ITkClusterMakerTool", **kwargs) : kwargs.setdefault("PixelOfflineCalibData", "") ITkClusterMakerTool = CompFactory.InDet.ClusterMakerTool(name = name, **kwargs) - acc.addPublicTool(ITkClusterMakerTool, primary=True) + acc.setPrivateTools(ITkClusterMakerTool) return acc @@ -156,8 +150,7 @@ def ITkTrackParticleCreatorToolCfg(flags, name="ITkTrackParticleCreatorTool", ** kwargs["TrackToVertex"] = result.popToolsAndMerge(ITkTrackToVertexCfg(flags)) if "TrackSummaryTool" not in kwargs: from InDetConfig.ITkTrackingCommonConfig import ITkTrackSummaryToolSharedHitsCfg - TrackSummaryTool = result.popToolsAndMerge(ITkTrackSummaryToolSharedHitsCfg(flags)) - result.addPublicTool(TrackSummaryTool) + TrackSummaryTool = result.getPrimaryAndMerge(ITkTrackSummaryToolSharedHitsCfg(flags)) kwargs["TrackSummaryTool"] = TrackSummaryTool p_expr = flags.ITk.perigeeExpression kwargs.setdefault("BadClusterID", flags.ITk.pixelClusterBadClusterID) @@ -190,7 +183,7 @@ def ITkTrackCollectionMergerAlgCfg(flags, name="ITkTrackCollectionMerger", Input kwargs.setdefault("UpdateSharedHits", True) kwargs.setdefault("UpdateAdditionalInfo", True) from InDetConfig.ITkTrackingCommonConfig import ITkTrackSummaryToolSharedHitsCfg - TrackSummaryTool = result.popToolsAndMerge(ITkTrackSummaryToolSharedHitsCfg(flags)) + TrackSummaryTool = result.getPrimaryAndMerge(ITkTrackSummaryToolSharedHitsCfg(flags)) kwargs.setdefault("SummaryTool", TrackSummaryTool) result.addEventAlgo(CompFactory.Trk.TrackCollectionMerger(name, **kwargs)) @@ -230,29 +223,6 @@ def ITkTrackRecoCfg(flags): """Configures complete ID tracking """ result = ComponentAccumulator() - from BeamPipeGeoModel.BeamPipeGMConfig import BeamPipeGeometryCfg - result.merge(BeamPipeGeometryCfg(flags)) - - #TODO move these to a more appropriate place - - from BeamSpotConditions.BeamSpotConditionsConfig import BeamSpotCondAlgCfg - result.merge(BeamSpotCondAlgCfg(flags)) - - from PixelConditionsAlgorithms.ITkPixelConditionsConfig import (ITkPixelChargeCalibCondAlgCfg, ITkPixelOfflineCalibCondAlgCfg, ITkPixelDistortionAlgCfg) - result.merge(ITkPixelChargeCalibCondAlgCfg(flags)) - result.merge(ITkPixelOfflineCalibCondAlgCfg(flags)) - result.merge(ITkPixelDistortionAlgCfg(flags)) - - from SiLorentzAngleTool.ITkPixelLorentzAngleConfig import ITkPixelLorentzAngleTool, ITkPixelLorentzAngleCfg - result.addPublicTool(ITkPixelLorentzAngleTool(flags)) - result.addPublicTool(result.popToolsAndMerge(ITkPixelLorentzAngleCfg(flags))) - - from SiLorentzAngleTool.ITkStripLorentzAngleConfig import ITkStripLorentzAngleCfg - result.addPublicTool(result.popToolsAndMerge(ITkStripLorentzAngleCfg(flags))) - - #Needed for ITk? - #from PixelConditionsAlgorithms.PixelConditionsConfig import PixelHitDiscCnfgAlgCfg - #result.merge(PixelHitDiscCnfgAlgCfg(flags)) if flags.Input.Format == "BS": from PixelRawDataByteStreamCnv.PixelRawDataByteStreamCnvConfig import PixelRawDataProviderAlgCfg result.merge(PixelRawDataProviderAlgCfg(flags)) diff --git a/InnerDetector/InDetConfig/python/ITkTrackTruthConfig.py b/InnerDetector/InDetConfig/python/ITkTrackTruthConfig.py index 545207a37bfd401e44ac598ff3eb59bcf27d9387..9c37fa534b55201363e52e3dd635af8f64ac0ea3 100644 --- a/InnerDetector/InDetConfig/python/ITkTrackTruthConfig.py +++ b/InnerDetector/InDetConfig/python/ITkTrackTruthConfig.py @@ -43,7 +43,6 @@ def ITkTrackTruthSimilaritySelectorCfg(flags, DetailedTruth, TracksTruth, name=' acc = ComponentAccumulator() ITkTruthMatchSimilarityTool = acc.popToolsAndMerge(ITkTruthMatchToolCfg(flags)) - acc.addPublicTool(ITkTruthMatchSimilarityTool) kwargs.setdefault("DetailedTrackTruthName", DetailedTruth) kwargs.setdefault("OutputName", TracksTruth) diff --git a/InnerDetector/InDetConfig/python/ITkTrackingCommonConfig.py b/InnerDetector/InDetConfig/python/ITkTrackingCommonConfig.py index 64128d11cfcda75c1f053b6e200660c30ed05992..0238dd31b43de713edd532ab8910ab4cc6dc3021 100644 --- a/InnerDetector/InDetConfig/python/ITkTrackingCommonConfig.py +++ b/InnerDetector/InDetConfig/python/ITkTrackingCommonConfig.py @@ -68,6 +68,9 @@ def ITkPixelClusterOnTrackToolBaseCfg(flags, name="ITkPixelClusterOnTrackTool", acc = ComponentAccumulator() the_name = makeName(name, kwargs) + from PixelConditionsAlgorithms.ITkPixelConditionsConfig import ITkPixelOfflineCalibCondAlgCfg + acc.merge(ITkPixelOfflineCalibCondAlgCfg(flags)) + split_cluster_map_extension = kwargs.pop('SplitClusterMapExtension','') if (flags.Beam.Type == "cosmics"): kwargs.setdefault("ErrorStrategy", 0) @@ -238,13 +241,10 @@ def ITkTrackPRD_AssociationCfg(flags, name='ITkTrackPRD_Association', **kwargs): return acc def ITkSummaryHelperNoHoleSearchCfg(flags, name='ITkSummaryHelperNoHoleSearch', **kwargs): - acc = ComponentAccumulator() if 'HoleSearch' not in kwargs : kwargs.setdefault("HoleSearch", None) from InDetConfig.ITkRecToolConfig import ITkTrackSummaryHelperToolCfg - ITkTrackSummaryHelperTool = acc.getPrimaryAndMerge(ITkTrackSummaryHelperToolCfg(flags, name = name, **kwargs)) - acc.setPrivateTools(ITkTrackSummaryHelperTool) - return acc + return ITkTrackSummaryHelperToolCfg(flags, name = name, **kwargs) def ITkTrackSummaryToolCfg(flags, name='ITkTrackSummaryTool', **kwargs): acc = ComponentAccumulator() @@ -263,7 +263,7 @@ def ITkTrackSummaryToolCfg(flags, name='ITkTrackSummaryTool', **kwargs): from InDetConfig.ITkRecToolConfig import ITkTrackSummaryHelperToolCfg ITkSummaryHelperTool = acc.getPrimaryAndMerge(ITkTrackSummaryHelperToolCfg(flags, **id_helper_args)) else: - ITkSummaryHelperTool = acc.popToolsAndMerge(ITkSummaryHelperNoHoleSearchCfg(flags, **id_helper_args)) + ITkSummaryHelperTool = acc.getPrimaryAndMerge(ITkSummaryHelperNoHoleSearchCfg(flags, **id_helper_args)) kwargs.setdefault("InDetSummaryHelperTool", ITkSummaryHelperTool) # @@ -273,20 +273,16 @@ def ITkTrackSummaryToolCfg(flags, name='ITkTrackSummaryTool', **kwargs): kwargs.setdefault("doHolesInDet", do_holes) kwargs.setdefault("TRT_ElectronPidTool", None) # we don't want to use those tools during pattern kwargs.setdefault("PixelToTPIDTool", None) # we don't want to use those tools during pattern - acc.setPrivateTools(CompFactory.Trk.TrackSummaryTool(name = the_name, **kwargs)) + acc.addPublicTool(CompFactory.Trk.TrackSummaryTool(name = the_name, **kwargs), primary=True) return acc def ITkSummaryHelperSharedHitsCfg(flags, name='ITkSummaryHelperSharedHits', **kwargs): - acc = ComponentAccumulator() - kwargs.setdefault("PixelToTPIDTool", None) kwargs.setdefault("TestBLayerTool", None) kwargs.setdefault("DoSharedHits", flags.ITk.doSharedHits) from InDetConfig.ITkRecToolConfig import ITkTrackSummaryHelperToolCfg - ITkTrackSummaryHelperTool = acc.getPrimaryAndMerge(ITkTrackSummaryHelperToolCfg(flags, name = name, **kwargs)) - acc.setPrivateTools(ITkTrackSummaryHelperTool) - return acc + return ITkTrackSummaryHelperToolCfg(flags, name = name, **kwargs) def ITkTrackSummaryToolSharedHitsCfg(flags, name='ITkTrackSummaryToolSharedHits',**kwargs): acc = ComponentAccumulator() @@ -298,14 +294,14 @@ def ITkTrackSummaryToolSharedHitsCfg(flags, name='ITkTrackSummaryToolSharedHits' id_helper_args = copyArgs(kwargs,copy_args) if 'ClusterSplitProbabilityName' in kwargs else {} kwargs.pop('ClusterSplitProbabilityName',None) - ITkSummaryHelperSharedHits = acc.popToolsAndMerge(ITkSummaryHelperSharedHitsCfg(flags, **id_helper_args)) + ITkSummaryHelperSharedHits = acc.getPrimaryAndMerge(ITkSummaryHelperSharedHitsCfg(flags, **id_helper_args)) kwargs.setdefault("InDetSummaryHelperTool", ITkSummaryHelperSharedHits) kwargs.setdefault( "PixelToTPIDTool", None) kwargs.setdefault( "doSharedHits", flags.ITk.doSharedHits) - ITkTrackSummaryTool = acc.popToolsAndMerge(ITkTrackSummaryToolCfg(flags, name, **kwargs)) - acc.setPrivateTools(ITkTrackSummaryTool) + ITkTrackSummaryTool = acc.getPrimaryAndMerge(ITkTrackSummaryToolCfg(flags, name, **kwargs)) + acc.addPublicTool(ITkTrackSummaryTool, primary=True) return acc def ITkMultipleScatteringUpdatorCfg(flags, name = "ITkMultipleScatteringUpdator", **kwargs): @@ -503,7 +499,7 @@ def ITkKalmanFitterCfg(flags, name='ITkKalmanFitter',**kwargs) : kwargs.setdefault('InternalDAFHandle', ITkKalmanInternalDAF) ITkKalmanTrackFitter = acc.popToolsAndMerge(ITkKalmanTrackFitterBaseCfg(flags, name=name, **kwargs)) - acc.addPublicTool(ITkKalmanTrackFitter, primary=True) + acc.setPrivateTools(ITkKalmanTrackFitter) return acc def ITkKalmanDNAFitterCfg(flags, name='ITkKalmanDNAFitter',**kwargs) : @@ -520,7 +516,7 @@ def ITkKalmanDNAFitterCfg(flags, name='ITkKalmanDNAFitter',**kwargs) : kwargs.setdefault('InternalDAFHandle', ITkKalmanInternalDAF) ITkKalmanTrackFitter = acc.popToolsAndMerge(ITkKalmanTrackFitterBaseCfg(flags, name=name, **kwargs)) - acc.addPublicTool(ITkKalmanTrackFitter, primary=True) + acc.setPrivateTools(ITkKalmanTrackFitter) return acc def ITkReferenceKalmanFitterCfg(flags, name='ITkReferenceKalmanFitter',**kwargs) : @@ -533,7 +529,7 @@ def ITkReferenceKalmanFitterCfg(flags, name='ITkReferenceKalmanFitter',**kwargs) kwargs.setdefault('InternalDAFHandle', ITkKalmanInternalDAFRef) ITkKalmanTrackFitter = acc.popToolsAndMerge(ITkKalmanTrackFitterBaseCfg(flags, name=name, **kwargs)) - acc.addPublicTool(ITkKalmanTrackFitter, primary=True) + acc.setPrivateTools(ITkKalmanTrackFitter) return acc def ITkDistributedKalmanFilterCfg(flags, name="ITkDistributedKalmanFilter", **kwargs) : @@ -550,7 +546,7 @@ def ITkDistributedKalmanFilterCfg(flags, name="ITkDistributedKalmanFilter", **kw kwargs.setdefault('ROTcreator', ITkRotCreator) DistributedKalmanFilter = CompFactory.Trk.DistributedKalmanFilter(name = name, **kwargs) - acc.addPublicTool(DistributedKalmanFilter, primary=True) + acc.setPrivateTools(DistributedKalmanFilter) return acc def ITkGlobalChi2FitterCfg(flags, name='ITkGlobalChi2Fitter', **kwargs) : @@ -592,7 +588,7 @@ def ITkGlobalChi2FitterCfg(flags, name='ITkGlobalChi2Fitter', **kwargs) : kwargs.setdefault('Momentum', 1000.*Units.MeV) ITkGlobalChi2Fitter = acc.popToolsAndMerge(ITkGlobalChi2FitterBaseCfg(flags, name=name, **kwargs)) - acc.addPublicTool(ITkGlobalChi2Fitter, primary=True) + acc.setPrivateTools(ITkGlobalChi2Fitter) return acc def ITkGsfMaterialUpdatorCfg(flags, name='ITkGsfMaterialUpdator', **kwargs) : @@ -651,7 +647,7 @@ def ITkGaussianSumFitterCfg(flags, name='ITkGaussianSumFitter', **kwargs) : kwargs.setdefault('DoHitSorting', True) GaussianSumFitter = CompFactory.Trk.GaussianSumFitter(name = name, **kwargs) - acc.addPublicTool(GaussianSumFitter, primary=True) + acc.setPrivateTools(GaussianSumFitter) return acc def ITkTrackFitterCfg(flags, name='ITkTrackFitter', **kwargs) : @@ -803,11 +799,8 @@ def ITkRotCreatorDigitalCfg(flags, name='ITkRotCreatorDigital', **kwargs) : return acc def ITkTrackSummaryToolNoHoleSearchCfg(flags, name='ITkTrackSummaryToolNoHoleSearch',**kwargs) : - acc = ComponentAccumulator() kwargs.setdefault('doHolesInDet', False) - ITkTrackSummaryTool = acc.popToolsAndMerge(ITkTrackSummaryToolCfg(flags, name=name, **kwargs)) - acc.setPrivateTools(ITkTrackSummaryTool) - return acc + return ITkTrackSummaryToolCfg(flags, name=name, **kwargs) def ITkROIInfoVecCondAlgCfg(flags, name='ITkROIInfoVecCondAlg', **kwargs) : acc = ComponentAccumulator() @@ -823,7 +816,7 @@ def ITkAmbiScoringToolBaseCfg(flags, name='ITkAmbiScoringTool', **kwargs) : from TrkConfig.AtlasUpgradeExtrapolatorConfig import AtlasUpgradeExtrapolatorCfg kwargs.setdefault("Extrapolator", acc.getPrimaryAndMerge(AtlasUpgradeExtrapolatorCfg(flags))) - ITkTrackSummaryTool = acc.popToolsAndMerge(ITkTrackSummaryToolCfg(flags)) + ITkTrackSummaryTool = acc.getPrimaryAndMerge(ITkTrackSummaryToolCfg(flags)) from AthenaCommon.DetFlags import DetFlags have_calo_rois = flags.ITk.doBremRecovery and flags.ITk.doCaloSeededBrem and DetFlags.detdescr.Calo_allOn() @@ -847,20 +840,20 @@ def ITkAmbiScoringToolBaseCfg(flags, name='ITkAmbiScoringTool', **kwargs) : kwargs.setdefault("InDetEtaDependentCutsSvc", acc.getService("ITkEtaDependentCutsSvc"+flags.ITk.Tracking.extension)) the_name = name + flags.ITk.Tracking.extension - acc.addPublicTool(CompFactory.InDet.InDetAmbiScoringTool(name = the_name, **kwargs), primary=True) + acc.setPrivateTools(CompFactory.InDet.InDetAmbiScoringTool(name = the_name, **kwargs)) return acc def ITkCosmicsScoringToolBaseCfg(flags, name='ITkCosmicsScoringTool', **kwargs) : acc = ComponentAccumulator() the_name=makeName(name, kwargs) - ITkTrackSummaryTool = acc.popToolsAndMerge(ITkTrackSummaryToolCfg(flags)) + ITkTrackSummaryTool = acc.getPrimaryAndMerge(ITkTrackSummaryToolCfg(flags)) kwargs.setdefault("nWeightedClustersMin", flags.ITk.Tracking.nWeightedClustersMin ) kwargs.setdefault("minTRTHits", 0 ) kwargs.setdefault("SummaryTool", ITkTrackSummaryTool ) - acc.addPublicTool(CompFactory.InDet.InDetCosmicScoringTool(name = the_name, **kwargs ), primary=True) + acc.setPrivateTools( CompFactory.InDet.InDetCosmicScoringTool(name = the_name, **kwargs ) ) return acc def ITkCosmicExtenScoringToolCfg(flags, name='ITkCosmicExtenScoringTool',**kwargs) : @@ -894,7 +887,7 @@ def ITkNNScoringToolBaseCfg(flags, name='ITkNNScoringTool', **kwargs) : from TrkConfig.AtlasUpgradeExtrapolatorConfig import AtlasUpgradeExtrapolatorCfg Extrapolator = acc.getPrimaryAndMerge(AtlasUpgradeExtrapolatorCfg(flags)) - ITkTrackSummaryTool = acc.popToolsAndMerge(ITkTrackSummaryToolCfg(flags)) + ITkTrackSummaryTool = acc.getPrimaryAndMerge(ITkTrackSummaryToolCfg(flags)) kwargs.setdefault("nnCutConfig", "dev/TrackingCP/LRTAmbiNetwork/20200727_225401/nn-config.json" ) kwargs.setdefault("nnCutThreshold", flags.ITk.nnCutLargeD0Threshold ) diff --git a/InnerDetector/InDetConfig/python/ITkTrackingSiPatternConfig.py b/InnerDetector/InDetConfig/python/ITkTrackingSiPatternConfig.py index 361bad19a4b6dac1002e3c60c327450dd7e4c28e..480ab7402f8b09d7551fbb7120ac51b0b7cc03ac 100644 --- a/InnerDetector/InDetConfig/python/ITkTrackingSiPatternConfig.py +++ b/InnerDetector/InDetConfig/python/ITkTrackingSiPatternConfig.py @@ -257,7 +257,7 @@ def ITkSiSPSeededTrackFinderCfg(flags, name="ITkSiSpTrackFinder", InputCollectio InputCollections = InputCollections )) from TrkConfig.AtlasExtrapolatorToolsConfig import ITkPropagatorCfg ITkPropagator = acc.getPrimaryAndMerge(ITkPropagatorCfg(flags)) - ITkTrackSummaryToolNoHoleSearch = acc.popToolsAndMerge(TC.ITkTrackSummaryToolNoHoleSearchCfg(flags)) + ITkTrackSummaryToolNoHoleSearch = acc.getPrimaryAndMerge(TC.ITkTrackSummaryToolNoHoleSearchCfg(flags)) ITkSiSpacePointsSeedMaker = acc.popToolsAndMerge(ITkSiSpacePointsSeedMakerCfg(flags, InputCollections = InputCollections )) @@ -307,7 +307,6 @@ def ITkSiSPSeededTrackFinderROIConvCfg(flags, name="ITkSiSpTrackFinderROIConv", from RegionSelector.RegSelToolConfig import regSelTool_ITkStrip_Cfg RegSelTool_ITkStrip = acc.popToolsAndMerge(regSelTool_ITkStrip_Cfg(flags)) - acc.addPublicTool(RegSelTool_ITkStrip) kwargs.setdefault("RegSelTool_Strip", RegSelTool_ITkStrip) kwargs.setdefault("useITkConvSeeded", True) @@ -386,7 +385,7 @@ def ITkAmbiTrackSelectionToolCfg(flags, name="ITkAmbiTrackSelectionTool", **kwar AmbiTrackSelectionTool = CompFactory.InDet.InDetAmbiTrackSelectionTool ITkAmbiTrackSelectionTool = AmbiTrackSelectionTool(name = name+flags.ITk.Tracking.extension, **kwargs) - acc.addPublicTool(ITkAmbiTrackSelectionTool, primary=True) + acc.setPrivateTools(ITkAmbiTrackSelectionTool) return acc def ITkDenseEnvironmentsAmbiguityScoreProcessorToolCfg(flags, name = "ITkAmbiguityScoreProcessor", ClusterSplitProbContainer='', **kwargs) : @@ -395,12 +394,12 @@ def ITkDenseEnvironmentsAmbiguityScoreProcessorToolCfg(flags, name = "ITkAmbigui # --- set up different Scoring Tool for collisions and cosmics # if flags.Beam.Type == 'cosmics': - ITkAmbiScoringTool = acc.getPrimaryAndMerge(TC.ITkCosmicsScoringToolCfg(flags)) + ITkAmbiScoringTool = acc.popToolsAndMerge(TC.ITkCosmicsScoringToolCfg(flags)) else: - ITkAmbiScoringTool = acc.getPrimaryAndMerge(TC.ITkAmbiScoringToolCfg(flags)) + ITkAmbiScoringTool = acc.popToolsAndMerge(TC.ITkAmbiScoringToolCfg(flags)) from InDetConfig.ITkSiliconPreProcessing import ITkNnPixelClusterSplitProbToolCfg - ITkNnPixelClusterSplitProbTool = acc.getPrimaryAndMerge(ITkNnPixelClusterSplitProbToolCfg(flags)) + ITkNnPixelClusterSplitProbTool = acc.popToolsAndMerge(ITkNnPixelClusterSplitProbToolCfg(flags)) ITkPRDtoTrackMapToolGangedPixels = acc.popToolsAndMerge(TC.ITkPRDtoTrackMapToolGangedPixelsCfg(flags)) ITkPRDtoTrackMapTool = acc.popToolsAndMerge(TC.ITkPRDtoTrackMapToolCfg(flags)) @@ -440,9 +439,9 @@ def ITkDenseEnvironmentsAmbiguityProcessorToolCfg(flags, name = "ITkAmbiguityPro # --- set up different Scoring Tool for collisions and cosmics # if flags.Beam.Type == 'cosmics': - ITkAmbiScoringTool = acc.getPrimaryAndMerge(TC.ITkCosmicsScoringToolCfg(flags)) + ITkAmbiScoringTool = acc.popToolsAndMerge(TC.ITkCosmicsScoringToolCfg(flags)) else: - ITkAmbiScoringTool = acc.getPrimaryAndMerge(TC.ITkAmbiScoringToolCfg(flags)) + ITkAmbiScoringTool = acc.popToolsAndMerge(TC.ITkAmbiScoringToolCfg(flags)) fitter_args = {} fitter_args.setdefault("nameSuffix", 'Ambi'+flags.ITk.Tracking.extension) @@ -476,12 +475,12 @@ def ITkDenseEnvironmentsAmbiguityProcessorToolCfg(flags, name = "ITkAmbiguityPro ITkPRDtoTrackMapToolGangedPixels = acc.popToolsAndMerge(TC.ITkPRDtoTrackMapToolGangedPixelsCfg(flags)) - ambi_track_summary_tool = acc.popToolsAndMerge(TC.ITkTrackSummaryToolCfg( flags, - namePrefix = 'ITkAmbiguityProcessorSplitProb', - nameSuffix = flags.ITk.Tracking.extension, - ClusterSplitProbabilityName = 'ITkAmbiguityProcessorSplitProb'+flags.ITk.Tracking.extension)) + ambi_track_summary_tool = acc.getPrimaryAndMerge(TC.ITkTrackSummaryToolCfg( flags, + namePrefix = 'ITkAmbiguityProcessorSplitProb', + nameSuffix = flags.ITk.Tracking.extension, + ClusterSplitProbabilityName = 'ITkAmbiguityProcessorSplitProb'+flags.ITk.Tracking.extension)) - ITkAmbiTrackSelectionTool = acc.getPrimaryAndMerge(ITkAmbiTrackSelectionToolCfg(flags)) + ITkAmbiTrackSelectionTool = acc.popToolsAndMerge(ITkAmbiTrackSelectionToolCfg(flags)) from TrkConfig.AtlasUpgradeExtrapolatorConfig import AtlasUpgradeExtrapolatorCfg Extrapolator = acc.getPrimaryAndMerge(AtlasUpgradeExtrapolatorCfg(flags)) @@ -523,12 +522,12 @@ def ITkSimpleAmbiguityProcessorToolCfg(flags, name = "ITkAmbiguityProcessor", Cl ITkTrackFitter = acc.popToolsAndMerge(TC.ITkTrackFitterCfg(flags)) ITkPRDtoTrackMapToolGangedPixels = TC.ITkPRDtoTrackMapToolGangedPixelsCfg(flags) - ambi_track_summary_tool = acc.popToolsAndMerge(TC.ITkTrackSummaryToolCfg( flags, - namePrefix = 'ITkAmbiguityProcessorSplitProb', - nameSuffix = flags.ITk.Tracking.extension, - ClusterSplitProbabilityName = 'ITkAmbiguityProcessorSplitProb'+flags.ITk.Tracking.extension)) + ambi_track_summary_tool = acc.getPrimaryAndMerge(TC.ITkTrackSummaryToolCfg( flags, + namePrefix = 'ITkAmbiguityProcessorSplitProb', + nameSuffix = flags.ITk.Tracking.extension, + ClusterSplitProbabilityName = 'ITkAmbiguityProcessorSplitProb'+flags.ITk.Tracking.extension)) - ITkAmbiTrackSelectionTool = acc.getPrimaryAndMerge(ITkAmbiTrackSelectionToolCfg(flags)) + ITkAmbiTrackSelectionTool = acc.popToolsAndMerge(ITkAmbiTrackSelectionToolCfg(flags)) kwargs.setdefault("Fitter", ITkTrackFitter) kwargs.setdefault("AssociationTool", ITkPRDtoTrackMapToolGangedPixels) diff --git a/InnerDetector/InDetConfig/python/InDetRecToolConfig.py b/InnerDetector/InDetConfig/python/InDetRecToolConfig.py index 9d97c52e294ee89f702d2e2a7aa2694661c88436..a262b30104b1af6267325a2c1d420b42319f34db 100644 --- a/InnerDetector/InDetConfig/python/InDetRecToolConfig.py +++ b/InnerDetector/InDetConfig/python/InDetRecToolConfig.py @@ -79,7 +79,7 @@ def InDetBoundaryCheckToolCfg(flags, name='InDetBoundaryCheckTool', **kwargs): kwargs.setdefault("SctSummaryTool", None) if 'PixelLayerTool' not in kwargs : - kwargs.setdefault("PixelLayerTool", result.getPrimaryAndMerge(InDetTestPixelLayerToolCfg(flags))) + kwargs.setdefault("PixelLayerTool", result.popToolsAndMerge(InDetTestPixelLayerToolCfg(flags))) kwargs.setdefault("UsePixel", flags.Detector.EnablePixel) kwargs.setdefault("UseSCT", flags.Detector.EnableSCT) @@ -127,7 +127,7 @@ def InDetTestPixelLayerToolCfg(flags, name = "InDetTestPixelLayerTool", **kwargs kwargs.setdefault("CheckDisabledFEs", flags.InDet.checkDeadElementsOnTrack) tool = CompFactory.InDet.InDetTestPixelLayerTool( name = the_name, **kwargs) - result.addPublicTool( tool, primary=True ) + result.setPrivateTools( tool ) return result def splitDefaultPrefix(name) : diff --git a/InnerDetector/InDetConfig/python/SiliconPreProcessing.py b/InnerDetector/InDetConfig/python/SiliconPreProcessing.py index a1c4700b3adea25deb5c6217c1e334ba6dd0a8d7..dd1a1decf0d33ea4d4a2d4b12cddc6797c3effc9 100644 --- a/InnerDetector/InDetConfig/python/SiliconPreProcessing.py +++ b/InnerDetector/InDetConfig/python/SiliconPreProcessing.py @@ -35,7 +35,6 @@ def InDetSiTrackerSpacePointFinderCfg(flags, name = "InDetSiTrackerSpacePointFin acc = SCT_ReadoutGeometryCfg(flags) InDetSiSpacePointMakerTool = acc.popToolsAndMerge(SiSpacePointMakerToolCfg(flags)) - acc.addPublicTool(InDetSiSpacePointMakerTool) ## I decided to merge it kwargs.setdefault("SiSpacePointMakerTool", InDetSiSpacePointMakerTool) kwargs.setdefault("PixelsClustersName", 'PixelClusters') # InDetKeys.PixelClusters @@ -187,47 +186,11 @@ def InDetRecPreProcessingSiliconCfg(flags, **kwargs): from InDetConfig.TrackRecoConfig import BCM_ZeroSuppressionCfg acc.merge(BCM_ZeroSuppressionCfg(flags)) - if flags.Detector.EnablePixel or flags.Detector.EnableSCT: - # - # --- SiLorentzAngleTool - # - from SiLorentzAngleTool.PixelLorentzAngleConfig import PixelLorentzAngleCfg - PixelLorentzAngleTool = acc.popToolsAndMerge(PixelLorentzAngleCfg(flags)) - acc.addPublicTool(PixelLorentzAngleTool) - - from SiLorentzAngleTool.SCT_LorentzAngleConfig import SCT_LorentzAngleCfg - SCTLorentzAngleTool = acc.popToolsAndMerge( SCT_LorentzAngleCfg(flags) ) - acc.addPublicTool(SCTLorentzAngleTool) - # - # --- ClusterMakerTool (public), needed by Pixel and SCT Clusterization - # - from InDetConfig.TrackRecoConfig import ClusterMakerToolCfg - acc.merge(ClusterMakerToolCfg(flags, PixelLorentzAngleTool=PixelLorentzAngleTool, SCTLorentzAngleTool=SCTLorentzAngleTool)) # # -- Pixel Clusterization # if (flags.Detector.EnablePixel and flags.InDet.doPixelPRDFormation) or redoPatternRecoAndTracking: # - # --- do we use new splittig or not ? - # - if flags.InDet.doPixelClusterSplitting: - # - # --- Neutral Network version ? - # - if flags.InDet.pixelClusterSplittingType == 'NeuralNet': - NnPixelClusterSplitProbTool = acc.popToolsAndMerge(NnPixelClusterSplitProbToolCfg(flags)) - acc.addPublicTool(NnPixelClusterSplitProbTool) - - NnPixelClusterSplitter = acc.popToolsAndMerge(NnPixelClusterSplitterCfg(flags)) - acc.addPublicTool(NnPixelClusterSplitter) - # - # --- Neutral Network version ? - # - elif flags.InDet.pixelClusterSplittingType == 'AnalogClus': - # new splitter tool - TotPixelClusterSplitter=CompFactory.InDet.TotPixelClusterSplitter (name="TotPixelClusterSplitter") - acc.addPublicTool(TotPixelClusterSplitter) - # # --- PixelClusterization algorithm # from InDetConfig.TrackRecoConfig import PixelClusterizationCfg diff --git a/InnerDetector/InDetConfig/python/TRTExtensionConfig.py b/InnerDetector/InDetConfig/python/TRTExtensionConfig.py index 7a4834f3f7df31a5f39ef3b48f666d6e9f44b096..d750ce310b27004bed4302f75c4244245905eee0 100644 --- a/InnerDetector/InDetConfig/python/TRTExtensionConfig.py +++ b/InnerDetector/InDetConfig/python/TRTExtensionConfig.py @@ -89,8 +89,7 @@ def InDetExtensionProcessorCfg(flags, SiTrackCollection=None, ExtendedTrackColle # # --- get configured track extension processor # - InDetTrackSummaryTool = acc.popToolsAndMerge(TC.InDetTrackSummaryToolCfg(flags)) - acc.addPublicTool(InDetTrackSummaryTool) + InDetTrackSummaryTool = acc.getPrimaryAndMerge(TC.InDetTrackSummaryToolCfg(flags)) if flags.InDet.materialInteractions: kwargs.setdefault("matEffects", flags.InDet.materialInteractionsType) diff --git a/InnerDetector/InDetConfig/python/TRTPhaseConfig.py b/InnerDetector/InDetConfig/python/TRTPhaseConfig.py index 1b2d247c03f0f54cbaebb61f7650c3f4455d8bdd..387249dabdbb12a437ffd43f4003e7380c20a012 100644 --- a/InnerDetector/InDetConfig/python/TRTPhaseConfig.py +++ b/InnerDetector/InDetConfig/python/TRTPhaseConfig.py @@ -98,8 +98,7 @@ def InDetCosmicsEventPhaseCfg(flags, InputTrackCollections, name = 'InDetCosmics InDetFixedWindowTrackTimeTool = acc.popToolsAndMerge(InDetFixedWindowTrackTimeToolCfg(flags)) acc.addPublicTool(InDetFixedWindowTrackTimeTool ) - InDetTrackSummaryTool = acc.popToolsAndMerge(TC.InDetTrackSummaryToolCfg(flags)) - acc.addPublicTool(InDetTrackSummaryTool) + InDetTrackSummaryTool = acc.getPrimaryAndMerge(TC.InDetTrackSummaryToolCfg(flags)) # CalDb tool from TRT_ConditionsServices.TRT_ConditionsServicesConfig import TRT_CalDbToolCfg diff --git a/InnerDetector/InDetConfig/python/TRTStandaloneConfig.py b/InnerDetector/InDetConfig/python/TRTStandaloneConfig.py index 6c633dc256d8a4f37410de5c211d1e61da5d5a71..282cce021eff8ad1a16f6b29652ee6d3c994ede2 100644 --- a/InnerDetector/InDetConfig/python/TRTStandaloneConfig.py +++ b/InnerDetector/InDetConfig/python/TRTStandaloneConfig.py @@ -9,8 +9,7 @@ def InDetTrtTrackScoringToolCfg(flags, name ='InDetTRT_StandaloneScoringTool', e # # --- set up special Scoring Tool for standalone TRT tracks # - InDetTrackSummaryTool = acc.popToolsAndMerge(TC.InDetTrackSummaryToolCfg(flags)) - acc.addPublicTool(InDetTrackSummaryTool) + InDetTrackSummaryTool = acc.getPrimaryAndMerge(TC.InDetTrackSummaryToolCfg(flags)) InDetTRTDriftCircleCut = TC.InDetTRTDriftCircleCutForPatternRecoCfg(flags) acc.addPublicTool(InDetTRTDriftCircleCut) @@ -55,8 +54,7 @@ def TRT_SegmentToTrackToolCfg(flags, name ='InDetTRT_SegmentToTrackTool', extens InDetTrackFitterTRT = acc.popToolsAndMerge(TC.InDetTrackFitterTRTCfg(flags)) acc.addPublicTool(InDetTrackFitterTRT) - InDetTrackSummaryTool = acc.popToolsAndMerge(TC.InDetTrackSummaryToolCfg(flags)) - acc.addPublicTool(InDetTrackSummaryTool) + InDetTrackSummaryTool = acc.getPrimaryAndMerge(TC.InDetTrackSummaryToolCfg(flags)) from TrkConfig.AtlasExtrapolatorConfig import InDetExtrapolatorCfg InDetExtrapolator = acc.getPrimaryAndMerge(InDetExtrapolatorCfg(flags)) diff --git a/InnerDetector/InDetConfig/python/TrackRecoConfig.py b/InnerDetector/InDetConfig/python/TrackRecoConfig.py index 41785e9080ec9587ff615b3f2698307bcca34add..579c38eae30f19cd006523326b53a2aff488153c 100644 --- a/InnerDetector/InDetConfig/python/TrackRecoConfig.py +++ b/InnerDetector/InDetConfig/python/TrackRecoConfig.py @@ -14,8 +14,8 @@ def BCM_ZeroSuppressionCfg(flags, name="InDetBCM_ZeroSuppression", **kwargs): ##------------------------------------------------------------------------------ def PixelClusterizationCfg(flags, name = "InDetPixelClusterization", **kwargs) : acc = ComponentAccumulator() - merged_pixels_tool = acc.getPrimaryAndMerge(MergedPixelsToolCfg(flags, **kwargs)) - ambi_finder = acc.getPrimaryAndMerge(PixelGangedAmbiguitiesFinderCfg(flags)) + merged_pixels_tool = acc.popToolsAndMerge(MergedPixelsToolCfg(flags, **kwargs)) + ambi_finder = acc.popToolsAndMerge(PixelGangedAmbiguitiesFinderCfg(flags)) # Region selector tools for Pixel from RegionSelector.RegSelToolConfig import regSelTool_Pixel_Cfg @@ -47,7 +47,7 @@ def SCTClusterizationCfg(flags, name="InDetSCT_Clusterization", **kwargs) : InDetSCT_ConditionsSummaryToolWithoutFlagged = acc.popToolsAndMerge(SCT_ConditionsSummaryToolCfg(flags, withFlaggedCondTool=False)) #### Clustering tool ###### - InDetClusterMakerTool = acc.getPrimaryAndMerge(ClusterMakerToolCfg(flags)) + InDetClusterMakerTool = acc.popToolsAndMerge(ClusterMakerToolCfg(flags)) InDetSCT_ClusteringTool = CompFactory.InDet.SCT_ClusteringTool( name = "InDetSCT_ClusteringTool", globalPosAlg = InDetClusterMakerTool, conditionsTool = InDetSCT_ConditionsSummaryToolWithoutFlagged) @@ -81,14 +81,14 @@ def PixelGangedAmbiguitiesFinderCfg(flags) : acc = PixelReadoutGeometryCfg(flags) InDetPixelGangedAmbiguitiesFinder = CompFactory.InDet.PixelGangedAmbiguitiesFinder( name = "InDetPixelGangedAmbiguitiesFinder") - acc.addPublicTool( InDetPixelGangedAmbiguitiesFinder, primary=True) + acc.setPrivateTools( InDetPixelGangedAmbiguitiesFinder ) return acc ##------------------------------------------------------------------------------ def MergedPixelsToolCfg(flags, **kwargs) : acc = ComponentAccumulator() # --- now load the framework for the clustering - kwargs.setdefault("globalPosAlg", acc.getPrimaryAndMerge(ClusterMakerToolCfg(flags)) ) + kwargs.setdefault("globalPosAlg", acc.popToolsAndMerge(ClusterMakerToolCfg(flags)) ) # PixelClusteringToolBase uses PixelConditionsSummaryTool from PixelConditionsTools.PixelConditionsSummaryConfig import PixelConditionsSummaryCfg @@ -100,30 +100,32 @@ def MergedPixelsToolCfg(flags, **kwargs) : InDetMergedPixelsTool = CompFactory.InDet.MergedPixelsTool( name = "InDetMergedPixelsTool", **kwargs) - acc.addPublicTool(InDetMergedPixelsTool, primary=True) + acc.setPrivateTools(InDetMergedPixelsTool) return acc ##------------------------------------------------------------------------------ def ClusterMakerToolCfg(flags, name="InDetClusterMakerTool", **kwargs) : - from PixelConditionsAlgorithms.PixelConditionsConfig import (PixelChargeCalibCondAlgCfg, PixelConfigCondAlgCfg, PixelDeadMapCondAlgCfg, - PixelOfflineCalibCondAlgCfg, PixelCablingCondAlgCfg, PixelReadoutSpeedAlgCfg) - acc = ComponentAccumulator() + # This directly needs the following Conditions data: - # PixelModuleData & PixelChargeCalibCondData - acc.merge( PixelConfigCondAlgCfg(flags)) - acc.merge(PixelDeadMapCondAlgCfg(flags)) - acc.merge( PixelChargeCalibCondAlgCfg(flags)) + # PixelChargeCalibCondData & PixelOfflineCalibData + from PixelConditionsAlgorithms.PixelConditionsConfig import PixelChargeCalibCondAlgCfg, PixelOfflineCalibCondAlgCfg + acc.merge(PixelChargeCalibCondAlgCfg(flags)) acc.merge(PixelOfflineCalibCondAlgCfg(flags)) - acc.merge(PixelCablingCondAlgCfg(flags)) - acc.merge(PixelReadoutSpeedAlgCfg(flags)) - InDetClusterMakerTool = CompFactory.InDet.ClusterMakerTool(name = name, **kwargs) + from PixelReadoutGeometry.PixelReadoutGeometryConfig import PixelReadoutManagerCfg + acc.merge(PixelReadoutManagerCfg(flags)) + from SiLorentzAngleTool.PixelLorentzAngleConfig import PixelLorentzAngleCfg + PixelLorentzAngleTool = acc.popToolsAndMerge(PixelLorentzAngleCfg(flags)) from SiLorentzAngleTool.SCT_LorentzAngleConfig import SCT_LorentzAngleCfg SCTLorentzAngleTool = acc.popToolsAndMerge( SCT_LorentzAngleCfg(flags) ) - acc.addPublicTool(SCTLorentzAngleTool) - acc.addPublicTool(InDetClusterMakerTool, primary=True) + + kwargs.setdefault("PixelLorentzAngleTool", PixelLorentzAngleTool) + kwargs.setdefault("SCTLorentzAngleTool", SCTLorentzAngleTool) + + InDetClusterMakerTool = CompFactory.InDet.ClusterMakerTool(name = name, **kwargs) + acc.setPrivateTools(InDetClusterMakerTool) return acc @@ -144,8 +146,7 @@ def TrackParticleCreatorToolCfg(flags, name="TrackParticleCreatorTool", **kwargs kwargs["TrackToVertex"] = result.popToolsAndMerge(TrackToVertexCfg(flags)) if "TrackSummaryTool" not in kwargs: from InDetConfig.TrackingCommonConfig import InDetTrackSummaryToolSharedHitsCfg - TrackSummaryTool = result.popToolsAndMerge(InDetTrackSummaryToolSharedHitsCfg(flags)) - result.addPublicTool(TrackSummaryTool) + TrackSummaryTool = result.getPrimaryAndMerge(InDetTrackSummaryToolSharedHitsCfg(flags)) kwargs["TrackSummaryTool"] = TrackSummaryTool p_expr = flags.InDet.perigeeExpression kwargs.setdefault("BadClusterID", flags.InDet.pixelClusterBadClusterID) @@ -199,38 +200,15 @@ def TrackRecoCfg(flags): """Configures complete ID tracking """ result = ComponentAccumulator() - from PixelGeoModel.PixelGeoModelConfig import PixelReadoutGeometryCfg - result.merge( PixelReadoutGeometryCfg(flags)) - - from SCT_GeoModel.SCT_GeoModelConfig import SCT_ReadoutGeometryCfg - result.merge( SCT_ReadoutGeometryCfg(flags)) - - from TRT_GeoModel.TRT_GeoModelConfig import TRT_ReadoutGeometryCfg - result.merge(TRT_ReadoutGeometryCfg(flags)) - - from BeamPipeGeoModel.BeamPipeGMConfig import BeamPipeGeometryCfg - result.merge(BeamPipeGeometryCfg(flags)) - - #TODO move these to a more appropriate place - - from BeamSpotConditions.BeamSpotConditionsConfig import BeamSpotCondAlgCfg - result.merge(BeamSpotCondAlgCfg(flags)) - from PixelConditionsAlgorithms.PixelConditionsConfig import (PixelChargeCalibCondAlgCfg, PixelOfflineCalibCondAlgCfg, PixelDistortionAlgCfg) result.merge(PixelChargeCalibCondAlgCfg(flags)) result.merge(PixelOfflineCalibCondAlgCfg(flags)) result.merge(PixelDistortionAlgCfg(flags)) + from InDetConfig.TrackingCommonConfig import PixelClusterNnCondAlgCfg, PixelClusterNnWithTrackCondAlgCfg result.merge(PixelClusterNnCondAlgCfg(flags)) result.merge(PixelClusterNnWithTrackCondAlgCfg(flags)) - from SiLorentzAngleTool.PixelLorentzAngleConfig import PixelLorentzAngleTool, PixelLorentzAngleCfg - result.addPublicTool(PixelLorentzAngleTool(flags)) - result.addPublicTool(result.popToolsAndMerge(PixelLorentzAngleCfg(flags))) - - from SiLorentzAngleTool.SCT_LorentzAngleConfig import SCT_LorentzAngleCfg - result.addPublicTool(result.popToolsAndMerge(SCT_LorentzAngleCfg(flags))) - from PixelConditionsAlgorithms.PixelConditionsConfig import PixelHitDiscCnfgAlgCfg result.merge(PixelHitDiscCnfgAlgCfg(flags)) if flags.Input.Format == "BS": @@ -269,7 +247,7 @@ def TrackRecoCfg(flags): if flags.InDet.doTruth: from InDetConfig.TrackTruthConfig import InDetTrackTruthCfg - result.merge(InDetTrackTruthCfg(flags, Tracks = "ExtendTracks", DetailedTruth = "ExtendTracksDetailedTruth", TracksTruth = "ExtendTracksTruthCollection")) + result.merge(InDetTrackTruthCfg(flags, Tracks = "ExtendedTracks", DetailedTruth = "ExtendedTracksDetailedTruth", TracksTruth = "ExtendedTracksTruthCollection")) # TODO add followup algs result.merge(TrackParticleCnvAlgCfg(flags, TrackContainerName="ExtendedTracks")) @@ -320,6 +298,9 @@ if __name__ == "__main__": from xAODEventInfoCnv.xAODEventInfoCnvConfig import EventInfoCnvAlgCfg top_acc.merge(EventInfoCnvAlgCfg(ConfigFlags)) + if ConfigFlags.Input.isMC: + from xAODTruthCnv.xAODTruthCnvConfigNew import GEN_AOD2xAODCfg + top_acc.merge(GEN_AOD2xAODCfg(ConfigFlags)) top_acc.merge(TrackRecoCfg(ConfigFlags)) from AthenaCommon.Constants import DEBUG diff --git a/InnerDetector/InDetConfig/python/TrackTruthConfig.py b/InnerDetector/InDetConfig/python/TrackTruthConfig.py index 327464e4210e58b832399584a8b723725f93433d..8e7b8b544bb36c420ecdf0d279b876965c6ed94d 100644 --- a/InnerDetector/InDetConfig/python/TrackTruthConfig.py +++ b/InnerDetector/InDetConfig/python/TrackTruthConfig.py @@ -1,4 +1,4 @@ -# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration +# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator from AthenaConfiguration.ComponentFactory import CompFactory # ------------------------------------------------------------------------- @@ -47,7 +47,6 @@ def TrackTruthSimilaritySelectorCfg(flags, DetailedTruth, TracksTruth, name='Sel acc = ComponentAccumulator() InDetTruthMatchSimilarityTool = acc.popToolsAndMerge(InDetTruthMatchToolCfg(flags)) - acc.addPublicTool(InDetTruthMatchSimilarityTool) kwargs.setdefault("DetailedTrackTruthName", DetailedTruth) kwargs.setdefault("OutputName", TracksTruth) @@ -100,28 +99,11 @@ if __name__ == "__main__": ####################### Aditional Configurations ######################### - from PixelGeoModel.PixelGeoModelConfig import PixelReadoutGeometryCfg - top_acc.merge( PixelReadoutGeometryCfg(ConfigFlags) ) - - from SCT_GeoModel.SCT_GeoModelConfig import SCT_ReadoutGeometryCfg - top_acc.merge(SCT_ReadoutGeometryCfg(ConfigFlags)) - - from TRT_GeoModel.TRT_GeoModelConfig import TRT_ReadoutGeometryCfg - top_acc.merge(TRT_ReadoutGeometryCfg( ConfigFlags )) - from BeamSpotConditions.BeamSpotConditionsConfig import BeamSpotCondAlgCfg top_acc.merge(BeamSpotCondAlgCfg(ConfigFlags)) - from PixelConditionsAlgorithms.PixelConditionsConfig import PixelDistortionAlgCfg, PixelHitDiscCnfgAlgCfg + from PixelConditionsAlgorithms.PixelConditionsConfig import PixelDistortionAlgCfg top_acc.merge(PixelDistortionAlgCfg(ConfigFlags)) - top_acc.merge(PixelHitDiscCnfgAlgCfg(ConfigFlags)) - - from SiLorentzAngleTool.PixelLorentzAngleConfig import PixelLorentzAngleTool, PixelLorentzAngleCfg - top_acc.addPublicTool(PixelLorentzAngleTool(ConfigFlags)) - top_acc.addPublicTool(top_acc.popToolsAndMerge(PixelLorentzAngleCfg(ConfigFlags))) - - from PixelRawDataByteStreamCnv.PixelRawDataByteStreamCnvConfig import PixelRawDataProviderAlgCfg - top_acc.merge(PixelRawDataProviderAlgCfg(ConfigFlags)) ################## SiliconPreProcessing Configurations ################### from InDetConfig.SiliconPreProcessing import InDetRecPreProcessingSiliconCfg diff --git a/InnerDetector/InDetConfig/python/TrackingCommonConfig.py b/InnerDetector/InDetConfig/python/TrackingCommonConfig.py index 24e4ec9124eaedfa6f1d47b011b3965e6760f51f..87c304b376e12477965772ffc53a4914087454bb 100644 --- a/InnerDetector/InDetConfig/python/TrackingCommonConfig.py +++ b/InnerDetector/InDetConfig/python/TrackingCommonConfig.py @@ -52,7 +52,6 @@ def PixelClusterNnCondAlgCfg(flags, **kwargs): if 'NetworkToHistoTool' not in kwargs : NeuralNetworkToHistoTool = acc.popToolsAndMerge(NeuralNetworkToHistoToolCfg(name = "NeuralNetworkToHistoTool")) kwargs.setdefault("NetworkToHistoTool", NeuralNetworkToHistoTool) - acc.addPublicTool(NeuralNetworkToHistoTool) acc.addCondAlgo(CompFactory.InDet.TTrainedNetworkCondAlg(kwargs.pop("name", 'PixelClusterNnCondAlg'), **kwargs)) return acc @@ -82,7 +81,6 @@ def NnClusterizationFactoryCfg(flags, name = 'NnClusterizationFactory', **kwargs if 'PixelLorentzAngleTool' not in kwargs : from SiLorentzAngleTool.PixelLorentzAngleConfig import PixelLorentzAngleTool PixelLorentzAngleTool = PixelLorentzAngleTool(flags, name="PixelLorentzAngleTool", **kwargs) - acc.addPublicTool(PixelLorentzAngleTool) kwargs.setdefault("PixelLorentzAngleTool", PixelLorentzAngleTool) useTTrainedNetworks = flags.InDet.useNNTTrainedNetworks @@ -107,13 +105,16 @@ def NnClusterizationFactoryCfg(flags, name = 'NnClusterizationFactory', **kwargs kwargs.setdefault("NnCollectionJSONReadKey", '' if useTTrainedNetworks else 'PixelClusterNNJSON') NnClusterizationFactory = CompFactory.InDet.NnClusterizationFactory( name = the_name, **kwargs ) - acc.addPublicTool( NnClusterizationFactory, primary=True) + acc.setPrivateTools( NnClusterizationFactory ) return acc def InDetPixelClusterOnTrackToolBaseCfg(flags, name="PixelClusterOnTrackTool", **kwargs): acc = ComponentAccumulator() the_name = makeName(name, kwargs) + from PixelConditionsAlgorithms.PixelConditionsConfig import PixelOfflineCalibCondAlgCfg + acc.merge(PixelOfflineCalibCondAlgCfg(flags)) + split_cluster_map_extension = kwargs.pop('SplitClusterMapExtension','') if (flags.Beam.Type == "cosmics") or flags.InDet.doDBMstandalone: kwargs.setdefault("ErrorStrategy", 0) @@ -154,7 +155,7 @@ def InDetPixelClusterOnTrackToolNNSplittingCfg(flags, name='InDetPixelClusterOnT if flags.InDet.doPixelClusterSplitting and flags.InDet.pixelClusterSplittingType == 'NeuralNet': if 'NnClusterizationFactory' not in kwargs : - NnClusterizationFactory = acc.getPrimaryAndMerge(NnClusterizationFactoryCfg(flags)) + NnClusterizationFactory = acc.popToolsAndMerge(NnClusterizationFactoryCfg(flags)) kwargs.setdefault("NnClusterizationFactory", NnClusterizationFactory) tool = acc.popToolsAndMerge(InDetPixelClusterOnTrackToolBaseCfg(flags, name=name, **kwargs)) @@ -250,13 +251,13 @@ def InDetTRT_DriftCircleOnTrackToolCfg(flags, name='TRT_DriftCircleOnTrackTool', tmpAcc, LuminosityOutputKey = LumiCondDataKeyForTRTMuScalingCfg(flags) acc.merge(tmpAcc) kwargs.setdefault("LumiDataKey", LuminosityOutputKey) - acc.addPublicTool(CompFactory.InDet.TRT_DriftCircleOnTrackTool(name = the_name, **kwargs), primary = True) + acc.setPrivateTools(CompFactory.InDet.TRT_DriftCircleOnTrackTool(name = the_name, **kwargs)) return acc def InDetBroadTRT_DriftCircleOnTrackToolCfg(name='InDetBroadTRT_DriftCircleOnTrackTool', **kwargs): acc = ComponentAccumulator() the_name = makeName( name, kwargs) - acc.addPublicTool(CompFactory.InDet.TRT_DriftCircleOnTrackNoDriftTimeTool(the_name, **kwargs), primary = True) + acc.setPrivateTools(CompFactory.InDet.TRT_DriftCircleOnTrackNoDriftTimeTool(the_name, **kwargs)) return acc def InDetRotCreatorCfg(flags, name='InDetRotCreator', **kwargs): @@ -276,7 +277,6 @@ def InDetRotCreatorCfg(flags, name='InDetRotCreator', **kwargs): ToolPixelCluster= acc.popToolsAndMerge(InDetBroadPixelClusterOnTrackToolCfg(flags, **pix_cluster_on_track_args)) else: ToolPixelCluster= acc.popToolsAndMerge(InDetPixelClusterOnTrackToolCfg(flags, **pix_cluster_on_track_args)) - acc.addPublicTool(ToolPixelCluster) kwargs.setdefault("ToolPixelCluster", ToolPixelCluster) if 'ToolSCT_Cluster' not in kwargs : @@ -285,10 +285,9 @@ def InDetRotCreatorCfg(flags, name='InDetRotCreator', **kwargs): else : ToolSCT_Cluster = acc.popToolsAndMerge(InDetSCT_ClusterOnTrackToolCfg(flags)) kwargs.setdefault("ToolSCT_Cluster", ToolSCT_Cluster) - acc.addPublicTool(ToolSCT_Cluster) if 'ToolTRT_DriftCircle' not in kwargs : - kwargs.setdefault("ToolTRT_DriftCircle", acc.getPrimaryAndMerge(InDetTRT_DriftCircleOnTrackToolCfg(flags))) + kwargs.setdefault("ToolTRT_DriftCircle", acc.popToolsAndMerge(InDetTRT_DriftCircleOnTrackToolCfg(flags))) kwargs.setdefault('Mode', 'indet') acc.setPrivateTools(CompFactory.Trk.RIO_OnTrackCreator(name=the_name, **kwargs)) @@ -300,10 +299,10 @@ def InDetTRT_DriftCircleOnTrackUniversalToolCfg(name='InDetTRT_RefitRotCreator', default_ScaleHitUncertainty = 2.5 if 'RIOonTrackToolDrift' not in kwargs : - RIOonTrackToolDrift = acc.getPrimaryAndMerge(InDetBroadTRT_DriftCircleOnTrackToolCfg()) + RIOonTrackToolDrift = acc.popToolsAndMerge(InDetBroadTRT_DriftCircleOnTrackToolCfg()) kwargs.setdefault("RIOonTrackToolDrift", RIOonTrackToolDrift) if 'RIOonTrackToolTube' not in kwargs : - RIOonTrackToolTube = acc.getPrimaryAndMerge(InDetBroadTRT_DriftCircleOnTrackToolCfg()) + RIOonTrackToolTube = acc.popToolsAndMerge(InDetBroadTRT_DriftCircleOnTrackToolCfg()) kwargs.setdefault("RIOonTrackToolTube", RIOonTrackToolTube) kwargs.setdefault("ScaleHitUncertainty", default_ScaleHitUncertainty) acc.setPrivateTools(CompFactory.InDet.TRT_DriftCircleOnTrackUniversalTool(name = the_name, **kwargs)) @@ -317,7 +316,6 @@ def InDetRefitRotCreatorCfg(flags, name='InDetRefitRotCreator', **kwargs): if 'ToolTRT_DriftCircle' not in kwargs : ToolTRT_DriftCircle = acc.popToolsAndMerge(InDetTRT_DriftCircleOnTrackUniversalToolCfg(ScaleHitUncertainty = ScaleHitUncertainty)) kwargs.setdefault("ToolTRT_DriftCircle", ToolTRT_DriftCircle) - acc.addPublicTool(ToolTRT_DriftCircle) InDetRotCreator = acc.popToolsAndMerge(InDetRotCreatorCfg(flags, name = name, **kwargs)) acc.setPrivateTools(InDetRotCreator) return acc @@ -356,13 +354,10 @@ def InDetTRTDriftCircleCutForPatternRecoCfg(flags, name='InDetTRTDriftCircleCutF return result def InDetSummaryHelperNoHoleSearchCfg(flags, name='InDetSummaryHelperNoHoleSearch', **kwargs): - acc = ComponentAccumulator() if 'HoleSearch' not in kwargs : kwargs.setdefault("HoleSearch", None) from InDetConfig.InDetRecToolConfig import InDetTrackSummaryHelperToolCfg - InDetSummaryHelper = acc.getPrimaryAndMerge(InDetTrackSummaryHelperToolCfg(flags, name = name, **kwargs)) - acc.setPrivateTools( InDetSummaryHelper) - return acc + return InDetTrackSummaryHelperToolCfg(flags, name = name, **kwargs) def InDetTrackSummaryToolCfg(flags, name='InDetTrackSummaryTool', **kwargs): acc = ComponentAccumulator() @@ -381,8 +376,7 @@ def InDetTrackSummaryToolCfg(flags, name='InDetTrackSummaryTool', **kwargs): from InDetConfig.InDetRecToolConfig import InDetTrackSummaryHelperToolCfg InDetSummaryHelperTool = acc.getPrimaryAndMerge(InDetTrackSummaryHelperToolCfg(flags, **id_helper_args)) else: - InDetSummaryHelperTool = acc.popToolsAndMerge(InDetSummaryHelperNoHoleSearchCfg(flags, **id_helper_args)) - acc.addPublicTool(InDetSummaryHelperTool) + InDetSummaryHelperTool = acc.getPrimaryAndMerge(InDetSummaryHelperNoHoleSearchCfg(flags, **id_helper_args)) kwargs.setdefault("InDetSummaryHelperTool", InDetSummaryHelperTool) # @@ -392,7 +386,7 @@ def InDetTrackSummaryToolCfg(flags, name='InDetTrackSummaryTool', **kwargs): kwargs.setdefault("doHolesInDet", do_holes) kwargs.setdefault("TRT_ElectronPidTool", None) # we don't want to use those tools during pattern kwargs.setdefault("PixelToTPIDTool", None) # we don't want to use those tools during pattern - acc.setPrivateTools(CompFactory.Trk.TrackSummaryTool(name = the_name, **kwargs)) + acc.addPublicTool(CompFactory.Trk.TrackSummaryTool(name = the_name, **kwargs), primary=True) return acc def PixeldEdxAlg(flags, name = "PixeldEdxAlg", **kwargs): @@ -436,14 +430,12 @@ def InDetSummaryHelperSharedHitsCfg(flags, name='InDetSummaryHelperSharedHits', acc = ComponentAccumulator() if 'PixelToTPIDTool' not in kwargs : InDetPixelToTPIDTool = acc.popToolsAndMerge(InDetPixelToTPIDToolCfg(flags)) - acc.addPublicTool(InDetPixelToTPIDTool) kwargs.setdefault("PixelToTPIDTool", InDetPixelToTPIDTool) if 'TestBLayerTool' not in kwargs : testBLayerToolAcc = InDetRecTestBLayerToolCfg(flags) if testBLayerToolAcc is not None: InDetRecTestBLayerTool = acc.popToolsAndMerge(testBLayerToolAcc) - acc.addPublicTool(InDetRecTestBLayerTool) else: InDetRecTestBLayerTool = None kwargs.setdefault("TestBLayerTool", InDetRecTestBLayerTool) @@ -471,7 +463,6 @@ def InDetTrackSummaryToolSharedHitsCfg(flags, name='InDetTrackSummaryToolSharedH kwargs.pop('ClusterSplitProbabilityName',None) InDetSummaryHelperSharedHits = acc.popToolsAndMerge(InDetSummaryHelperSharedHitsCfg(flags, **id_helper_args)) - acc.addPublicTool(InDetSummaryHelperSharedHits) kwargs.setdefault("InDetSummaryHelperTool", InDetSummaryHelperSharedHits) if 'TRT_ElectronPidTool' not in kwargs: @@ -484,13 +475,12 @@ def InDetTrackSummaryToolSharedHitsCfg(flags, name='InDetTrackSummaryToolSharedH if 'PixelToTPIDTool' not in kwargs : InDetPixelToTPIDTool = acc.popToolsAndMerge(InDetPixelToTPIDToolCfg(flags)) - acc.addPublicTool(InDetPixelToTPIDTool) kwargs.setdefault( "PixelToTPIDTool", InDetPixelToTPIDTool) kwargs.setdefault( "doSharedHits", flags.InDet.doSharedHits) - InDetTrackSummaryTool = acc.popToolsAndMerge(InDetTrackSummaryToolCfg(flags, name, **kwargs)) - acc.setPrivateTools(InDetTrackSummaryTool) + InDetTrackSummaryTool = acc.getPrimaryAndMerge(InDetTrackSummaryToolCfg(flags, name, **kwargs)) + acc.addPublicTool(InDetTrackSummaryTool, primary=True) return acc def InDetUpdatorCfg(flags, name = 'InDetUpdator', **kwargs): @@ -509,7 +499,7 @@ def InDetUpdatorCfg(flags, name = 'InDetUpdator', **kwargs): else : tool = CompFactory.Trk.KalmanUpdator(name = the_name, **kwargs) - acc.addPublicTool(tool, primary = True) + acc.setPrivateTools(tool) return acc def InDetMultipleScatteringUpdatorCfg(name = "InDetMultipleScatteringUpdator", **kwargs): @@ -530,14 +520,11 @@ def InDetMeasRecalibSTCfg(flags, name='InDetMeasRecalibST', **kwargs) : if 'BroadPixelClusterOnTrackTool' not in kwargs : InDetBroadPixelClusterOnTrackTool = acc.popToolsAndMerge(InDetBroadPixelClusterOnTrackToolCfg(flags, **pix_cluster_on_track_args)) kwargs.setdefault('BroadPixelClusterOnTrackTool', InDetBroadPixelClusterOnTrackTool) - acc.addPublicTool(InDetBroadPixelClusterOnTrackTool) if 'BroadSCT_ClusterOnTrackTool' not in kwargs : InDetBroadSCT_ClusterOnTrackTool = acc.popToolsAndMerge(InDetBroadSCT_ClusterOnTrackToolCfg(flags)) - acc.addPublicTool(InDetBroadSCT_ClusterOnTrackTool) kwargs.setdefault('BroadSCT_ClusterOnTrackTool', InDetBroadSCT_ClusterOnTrackTool) if 'CommonRotCreator' not in kwargs : InDetRefitRotCreator = acc.popToolsAndMerge(InDetRefitRotCreatorCfg(flags, **pix_cluster_on_track_args)) - acc.addPublicTool(InDetRefitRotCreator) kwargs.setdefault('CommonRotCreator', InDetRefitRotCreator) MeasRecalibSteeringTool = CompFactory.Trk.MeasRecalibSteeringTool(name, **kwargs) @@ -556,10 +543,9 @@ def InDetKalmanTrackFitterBaseCfg(flags, name='InDetKalmanTrackFitterBase',**kwa if 'RIO_OnTrackCreatorHandle' not in kwargs : InDetRefitRotCreator = acc.popToolsAndMerge(InDetRefitRotCreatorCfg(flags, **pix_cluster_on_track_args)) - acc.addPublicTool(InDetRefitRotCreator) kwargs.setdefault("RIO_OnTrackCreatorHandle", InDetRefitRotCreator) - InDetUpdator = acc.getPrimaryAndMerge(InDetUpdatorCfg(flags)) + InDetUpdator = acc.popToolsAndMerge(InDetUpdatorCfg(flags)) kwargs.setdefault('MeasurementUpdatorHandle', InDetUpdator) kwargs.setdefault('KalmanSmootherHandle', InDetBKS()) kwargs.setdefault('KalmanOutlierLogicHandle', InDetKOL()) @@ -571,11 +557,9 @@ def InDetKalmanTrackFitterBaseCfg(flags, name='InDetKalmanTrackFitterBase',**kwa if 'RecalibratorHandle' not in kwargs : the_tool_name = 'InDetMeasRecalibST' InDetMeasRecalibST = acc.popToolsAndMerge(InDetMeasRecalibSTCfg(flags, name=the_tool_name+nameSuffix, **pix_cluster_on_track_args)) - acc.addPublicTool(InDetMeasRecalibST) kwargs.setdefault('RecalibratorHandle', InDetMeasRecalibST) else : InDetMeasRecalibST = acc.popToolsAndMerge(InDetMeasRecalibSTCfg(flags)) - acc.addPublicTool(InDetMeasRecalibST) kwargs.setdefault('RecalibratorHandle', InDetMeasRecalibST) KalmanFitter = CompFactory.Trk.KalmanFitter(name=name, **kwargs) @@ -630,17 +614,15 @@ def InDetBroadRotCreatorCfg(flags, name='InDetBroadInDetRotCreator', **kwargs) : if 'ToolPixelCluster' not in kwargs : pix_cluster_on_track_args = copyArgs(kwargs,['SplitClusterMapExtension','ClusterSplitProbabilityName','nameSuffix']) InDetBroadPixelClusterOnTrackTool = acc.popToolsAndMerge(InDetBroadPixelClusterOnTrackToolCfg(flags, **pix_cluster_on_track_args)) - acc.addPublicTool(InDetBroadPixelClusterOnTrackTool) kwargs.setdefault('ToolPixelCluster', InDetBroadPixelClusterOnTrackTool) if 'ToolSCT_Cluster' not in kwargs : InDetBroadSCT_ClusterOnTrackTool = acc.popToolsAndMerge(InDetBroadSCT_ClusterOnTrackToolCfg(flags)) - acc.addPublicTool(InDetBroadSCT_ClusterOnTrackTool) kwargs.setdefault('ToolSCT_Cluster', InDetBroadSCT_ClusterOnTrackTool) if flags.Detector.EnableTRT: if 'ToolTRT_DriftCircle' not in kwargs : - InDetBroadTRT_DriftCircleOnTrackTool = acc.getPrimaryAndMerge(InDetBroadTRT_DriftCircleOnTrackToolCfg()) + InDetBroadTRT_DriftCircleOnTrackTool = acc.popToolsAndMerge(InDetBroadTRT_DriftCircleOnTrackToolCfg()) kwargs.setdefault('ToolTRT_DriftCircle', InDetBroadTRT_DriftCircleOnTrackTool) InDetRotCreator = acc.popToolsAndMerge(InDetRotCreatorCfg(flags, name = name, **kwargs)) @@ -698,7 +680,6 @@ def DistributedKalmanFilterCfg(flags, name="DistributedKalmanFilter", **kwargs) if 'ROTcreator' not in kwargs : InDetRotCreator = acc.popToolsAndMerge(InDetRotCreatorCfg(flags, **pix_cluster_on_track_args)) - acc.addPublicTool(InDetRotCreator) kwargs.setdefault('ROTcreator', InDetRotCreator) DistributedKalmanFilter = CompFactory.Trk.DistributedKalmanFilter(name = name, **kwargs) @@ -714,14 +695,12 @@ def InDetGlobalChi2FitterCfg(flags, name='InDetGlobalChi2Fitter', **kwargs) : if 'RotCreatorTool' not in kwargs : InDetRotCreator = acc.popToolsAndMerge(InDetRotCreatorCfg(flags, **pix_cluster_on_track_args)) - acc.addPublicTool(InDetRotCreator) kwargs.setdefault('RotCreatorTool', InDetRotCreator) use_broad_cluster_any = flags.InDet.useBroadClusterErrors and (not flags.InDet.doDBMstandalone) if 'BroadRotCreatorTool' not in kwargs and not flags.InDet.doRefit: InDetBroadRotCreator = acc.popToolsAndMerge(InDetBroadRotCreatorCfg(flags, **pix_cluster_on_track_args)) - acc.addPublicTool(InDetBroadRotCreator) kwargs.setdefault('BroadRotCreatorTool', InDetBroadRotCreator) if flags.InDet.doDBMstandalone: @@ -797,12 +776,10 @@ def GaussianSumFitterCfg(flags, name='GaussianSumFitter', **kwargs) : if 'ToolForROTCreation' not in kwargs : InDetRotCreator = acc.popToolsAndMerge(InDetRotCreatorCfg(flags, **pix_cluster_on_track_args)) - acc.addPublicTool(InDetRotCreator) kwargs.setdefault('ToolForROTCreation', InDetRotCreator) if 'ToolForExtrapolation' not in kwargs : InDetGsfExtrapolator = acc.popToolsAndMerge(InDetGsfExtrapolatorCfg(flags)) - acc.addPublicTool(InDetGsfExtrapolator) kwargs.setdefault('ToolForExtrapolation', InDetGsfExtrapolator) kwargs.setdefault('ReintegrateOutliers', False) @@ -847,7 +824,6 @@ def InDetGlobalChi2FitterBaseCfg(flags, name='GlobalChi2FitterBase', **kwargs): InDetMultipleScatteringUpdator = acc.popToolsAndMerge( InDetMultipleScatteringUpdatorCfg()) - acc.addPublicTool(InDetMultipleScatteringUpdator) InDetMaterialEffectsUpdator = acc.getPrimaryAndMerge( InDetMaterialEffectsUpdatorCfg(flags)) @@ -885,7 +861,6 @@ def InDetGlobalChi2FitterTRTCfg(flags, name='InDetGlobalChi2FitterTRT', **kwargs if 'RotCreatorTool' not in kwargs : InDetRefitRotCreator = acc.popToolsAndMerge(InDetRefitRotCreatorCfg(flags, **pix_cluster_on_track_args)) - acc.addPublicTool(InDetRefitRotCreator) kwargs.setdefault("RotCreatorTool", InDetRefitRotCreator) kwargs.setdefault("MaterialUpdateTool", '') @@ -928,12 +903,10 @@ def InDetGlobalChi2FitterLowPtCfg(flags, name='InDetGlobalChi2FitterLowPt', **kw if 'RotCreatorTool' not in kwargs : InDetRotCreator = acc.popToolsAndMerge(InDetRotCreatorCfg(flags, **pix_cluster_on_track_args)) - acc.addPublicTool(InDetRotCreator) kwargs.setdefault('RotCreatorTool', InDetRotCreator) if 'BroadRotCreatorTool' not in kwargs and not flags.InDet.doRefit: InDetBroadRotCreator = acc.popToolsAndMerge(InDetBroadRotCreatorCfg(flags, **pix_cluster_on_track_args)) - acc.addPublicTool(InDetBroadRotCreator) kwargs.setdefault('BroadRotCreatorTool', InDetBroadRotCreator) kwargs.setdefault('OutlierCut', 5.0) @@ -1020,8 +993,7 @@ def InDetTRT_ExtensionToolCosmicsCfg(flags, name='InDetTRT_ExtensionToolCosmics' if 'Propagator' not in kwargs : from TrkConfig.AtlasExtrapolatorToolsConfig import InDetPropagatorCfg - InDetPropagator = acc.popToolsAndMerge(InDetPropagatorCfg(flags)) - acc.addPublicTool(InDetPropagator) + InDetPropagator = acc.getPrimaryAndMerge(InDetPropagatorCfg(flags)) kwargs.setdefault("Propagator", InDetPropagator) if 'Extrapolator' not in kwargs : @@ -1030,12 +1002,10 @@ def InDetTRT_ExtensionToolCosmicsCfg(flags, name='InDetTRT_ExtensionToolCosmics' if 'RIOonTrackToolYesDr' not in kwargs : InDetTRT_DriftCircleOnTrackUniversalToolCosmics = acc.popToolsAndMerge(InDetTRT_DriftCircleOnTrackUniversalToolCosmicsCfg()) - acc.addPublicTool(InDetTRT_DriftCircleOnTrackUniversalToolCosmics) kwargs.setdefault("RIOonTrackToolYesDr", InDetTRT_DriftCircleOnTrackUniversalToolCosmics) if 'RIOonTrackToolNoDr' not in kwargs : - InDetBroadTRT_DriftCircleOnTrackTool = acc.getPrimaryAndMerge(InDetBroadTRT_DriftCircleOnTrackToolCfg()) - acc.addPublicTool(InDetBroadTRT_DriftCircleOnTrackTool) + InDetBroadTRT_DriftCircleOnTrackTool = acc.popToolsAndMerge(InDetBroadTRT_DriftCircleOnTrackToolCfg()) kwargs.setdefault("RIOonTrackToolNoDr", InDetBroadTRT_DriftCircleOnTrackTool) kwargs.setdefault("TRT_ClustersContainer", 'TRT_DriftCircles') # InDetKeys.TRT_DriftCircles() @@ -1068,11 +1038,10 @@ def InDetTRT_TrackExtensionTool_xkCfg(flags, name='InDetTRT_ExtensionTool', **kw kwargs.setdefault("DriftCircleCutTool", InDetTRTDriftCircleCutForPatternReco) if 'RIOonTrackToolYesDr' not in kwargs : - kwargs.setdefault("RIOonTrackToolYesDr", acc.getPrimaryAndMerge(InDetTRT_DriftCircleOnTrackToolCfg(flags))) + kwargs.setdefault("RIOonTrackToolYesDr", acc.popToolsAndMerge(InDetTRT_DriftCircleOnTrackToolCfg(flags))) if 'RoadTool' not in kwargs : InDetTRT_RoadMaker = acc.popToolsAndMerge(InDetTRT_RoadMakerCfg(flags)) - acc.addPublicTool(InDetTRT_RoadMaker) kwargs.setdefault("RoadTool", InDetTRT_RoadMaker) kwargs.setdefault("TRT_ClustersContainer", 'TRT_DriftCircles') # InDetKeys.TRT_DriftCircles() @@ -1096,7 +1065,7 @@ def InDetTRT_TrackExtensionTool_xkCfg(flags, name='InDetTRT_ExtensionTool', **kw def InDetWeightCalculatorCfg(name='InDetWeightCalculator', **kwargs): acc = ComponentAccumulator() the_name = makeName( name, kwargs) - acc.addPublicTool(CompFactory.Trk.DAF_SimpleWeightCalculator(name = the_name, **kwargs), primary = True) + acc.setPrivateTools(CompFactory.Trk.DAF_SimpleWeightCalculator(name = the_name, **kwargs)) return acc def InDetCompetingTRT_DC_ToolCfg(flags, name='InDetCompetingTRT_DC_Tool', **kwargs): @@ -1108,11 +1077,11 @@ def InDetCompetingTRT_DC_ToolCfg(flags, name='InDetCompetingTRT_DC_Tool', **kwar kwargs.setdefault("Extrapolator", acc.getPrimaryAndMerge(InDetExtrapolatorCfg(flags))) if 'ToolForWeightCalculation' not in kwargs : - InDetWeightCalculator = acc.getPrimaryAndMerge(InDetWeightCalculatorCfg()) + InDetWeightCalculator = acc.popToolsAndMerge(InDetWeightCalculatorCfg()) kwargs.setdefault("ToolForWeightCalculation", InDetWeightCalculator) if 'ToolForTRT_DriftCircleOnTrackCreation' not in kwargs : - kwargs.setdefault("ToolForTRT_DriftCircleOnTrackCreation", acc.getPrimaryAndMerge(InDetTRT_DriftCircleOnTrackToolCfg(flags))) + kwargs.setdefault("ToolForTRT_DriftCircleOnTrackCreation", acc.popToolsAndMerge(InDetTRT_DriftCircleOnTrackToolCfg(flags))) acc.setPrivateTools(CompFactory.InDet.CompetingTRT_DriftCirclesOnTrackTool( the_name, **kwargs)) return acc @@ -1133,7 +1102,6 @@ def InDetTRT_TrackExtensionTool_DAFCfg(flags, name='TRT_TrackExtensionTool_DAF', if 'CompetingDriftCircleTool' not in kwargs : InDetCompetingTRT_DC_Tool = acc.popToolsAndMerge(InDetCompetingTRT_DC_ToolCfg(flags)) - acc.addPublicTool(InDetCompetingTRT_DC_Tool) kwargs.setdefault("CompetingDriftCircleTool", InDetCompetingTRT_DC_Tool) if 'PropagatorTool' not in kwargs : @@ -1142,7 +1110,6 @@ def InDetTRT_TrackExtensionTool_DAFCfg(flags, name='TRT_TrackExtensionTool_DAF', if 'RoadTool' not in kwargs : InDetTRT_RoadMaker = acc.popToolsAndMerge(InDetTRT_RoadMakerCfg(flags)) - acc.addPublicTool(InDetTRT_RoadMaker) kwargs.setdefault("RoadTool", InDetTRT_RoadMaker) kwargs.setdefault("TRT_DriftCircleContainer", 'TRT_DriftCircles') # InDetKeys.TRT_DriftCircles() @@ -1176,7 +1143,6 @@ def InDetRotCreatorDigitalCfg(flags, name='InDetRotCreatorDigital', **kwargs) : ToolPixelCluster = acc.popToolsAndMerge(InDetPixelClusterOnTrackToolDigitalCfg(flags, **pix_cluster_on_track_args)) kwargs.setdefault('ToolPixelCluster', ToolPixelCluster) - acc.addPublicTool(ToolPixelCluster) acc.setPrivateTools(acc.popToolsAndMerge(InDetRotCreatorCfg(flags, name=name, **kwargs))) return acc @@ -1184,7 +1150,7 @@ def InDetRotCreatorDigitalCfg(flags, name='InDetRotCreatorDigital', **kwargs) : def InDetTrackSummaryToolNoHoleSearchCfg(flags, name='InDetTrackSummaryToolNoHoleSearch',**kwargs) : acc = ComponentAccumulator() kwargs.setdefault('doHolesInDet', False) - InDetTrackSummaryTool = acc.popToolsAndMerge(InDetTrackSummaryToolCfg(flags, name=name, **kwargs)) + InDetTrackSummaryTool = acc.getPrimaryAndMerge(InDetTrackSummaryToolCfg(flags, name=name, **kwargs)) acc.setPrivateTools(InDetTrackSummaryTool) return acc @@ -1202,8 +1168,7 @@ def InDetAmbiScoringToolBaseCfg(flags, name='InDetAmbiScoringTool', **kwargs) : from TrkConfig.AtlasExtrapolatorConfig import InDetExtrapolatorCfg kwargs.setdefault("Extrapolator", acc.getPrimaryAndMerge(InDetExtrapolatorCfg(flags))) - InDetTrackSummaryTool = acc.popToolsAndMerge(InDetTrackSummaryToolCfg(flags)) - acc.addPublicTool(InDetTrackSummaryTool) + InDetTrackSummaryTool = acc.getPrimaryAndMerge(InDetTrackSummaryToolCfg(flags)) if 'DriftCircleCutTool' not in kwargs : InDetTRTDriftCircleCutForPatternReco = acc.getPrimaryAndMerge(InDetTRTDriftCircleCutForPatternRecoCfg(flags)) @@ -1229,8 +1194,7 @@ def InDetCosmicsScoringToolBaseCfg(flags, name='InDetCosmicsScoringTool', **kwar acc = ComponentAccumulator() the_name=makeName(name, kwargs) - InDetTrackSummaryTool = acc.popToolsAndMerge(InDetTrackSummaryToolCfg(flags)) - acc.setPrivateTools(InDetTrackSummaryTool) + InDetTrackSummaryTool = acc.getPrimaryAndMerge(InDetTrackSummaryToolCfg(flags)) kwargs.setdefault("nWeightedClustersMin", flags.InDet.Tracking.nWeightedClustersMin ) kwargs.setdefault("minTRTHits", 0 ) @@ -1242,7 +1206,6 @@ def InDetCosmicsScoringToolBaseCfg(flags, name='InDetCosmicsScoringTool', **kwar def InDetTRT_ExtensionToolPhaseCfg(flags, name='InDetTRT_ExtensionToolPhase', **kwargs) : acc = ComponentAccumulator() InDetTRT_DriftCircleOnTrackUniversalTool = acc.popToolsAndMerge(InDetTRT_DriftCircleOnTrackUniversalToolCfg()) - acc.addPublicTool(InDetTRT_DriftCircleOnTrackUniversalTool) if 'RIOonTrackToolYesDr' not in kwargs : kwargs.setdefault("RIOonTrackToolYesDr", InDetTRT_DriftCircleOnTrackUniversalTool) @@ -1269,7 +1232,6 @@ def SiCombinatorialTrackFinder_xkCfg(flags, name='InDetSiComTrackFinder', **kwar from InDetConfig.InDetRecToolConfig import InDetBoundaryCheckToolCfg InDetBoundaryCheckTool = acc.popToolsAndMerge(InDetBoundaryCheckToolCfg(flags)) - acc.addPublicTool(InDetBoundaryCheckTool) kwargs.setdefault("PropagatorTool", InDetPatternPropagator) kwargs.setdefault("UpdatorTool", InDetPatternUpdator) @@ -1287,7 +1249,6 @@ def SiCombinatorialTrackFinder_xkCfg(flags, name='InDetSiComTrackFinder', **kwar def InDetCosmicScoringTool_TRTCfg(flags, name='InDetCosmicExtenScoringTool',**kwargs) : acc = ComponentAccumulator() InDetTrackSummaryToolNoHoleSearch = acc.popToolsAndMerge(InDetTrackSummaryToolNoHoleSearchCfg(flags)) - acc.addPublicTool(InDetTrackSummaryToolNoHoleSearch) kwargs.setdefault("minTRTHits", flags.InDet.Tracking.minSecondaryTRTonTrk) kwargs.setdefault("SummaryTool", InDetTrackSummaryToolNoHoleSearch) @@ -1368,11 +1329,9 @@ def InDetRotCreatorDBMCfg(flags, name='InDetRotCreatorDBM', **kwargs) : if flags.Detector.EnablePixel and flags.InDet.loadRotCreator: ToolPixelCluster = InDetPixelClusterOnTrackToolDBMCfg(flags, pix_cluster_on_track_args) - acc.addPublicTool(ToolPixelCluster) kwargs.setdefault('ToolPixelCluster', ToolPixelCluster) else : ToolPixelCluster= InDetPixelClusterOnTrackToolCfg(flags, **pix_cluster_on_track_args) - acc.addPublicTool(ToolPixelCluster) kwargs.setdefault('ToolPixelCluster', ToolPixelCluster) acc.setPrivateTools(acc.popToolsAndMerge(InDetRotCreatorCfg(flags, name=name, **kwargs))) @@ -1381,7 +1340,7 @@ def InDetRotCreatorDBMCfg(flags, name='InDetRotCreatorDBM', **kwargs) : def PRDtoTrackMapToolCfg(name='PRDtoTrackMapTool',**kwargs) : acc = ComponentAccumulator() the_name = makeName( name, kwargs) - acc.addPublicTool(CompFactory.Trk.PRDtoTrackMapTool( name=the_name, **kwargs), primary=True) + acc.setPrivateTools(CompFactory.Trk.PRDtoTrackMapTool( name=the_name, **kwargs)) return acc def InDetNNScoringToolBaseCfg(flags, name='InDetNNScoringTool', **kwargs) : @@ -1396,9 +1355,7 @@ def InDetNNScoringToolBaseCfg(flags, name='InDetNNScoringTool', **kwargs) : from TrkConfig.AtlasExtrapolatorConfig import InDetExtrapolatorCfg InDetExtrapolator = acc.getPrimaryAndMerge(InDetExtrapolatorCfg(flags)) - - InDetTrackSummaryTool = acc.popToolsAndMerge(InDetTrackSummaryToolCfg(flags)) - acc.addPublicTool(InDetTrackSummaryTool) + InDetTrackSummaryTool = acc.getPrimaryAndMerge(InDetTrackSummaryToolCfg(flags)) if 'DriftCircleCutTool' not in kwargs : InDetTRTDriftCircleCutForPatternReco = acc.getPrimaryAndMerge(InDetTRTDriftCircleCutForPatternRecoCfg(flags)) diff --git a/InnerDetector/InDetConfig/python/TrackingSiPatternConfig.py b/InnerDetector/InDetConfig/python/TrackingSiPatternConfig.py index 78636d0e78893bbc47822c18e8ac0be85492719b..18f8620154e392a96cafd20893d39bcd2187f3e4 100644 --- a/InnerDetector/InDetConfig/python/TrackingSiPatternConfig.py +++ b/InnerDetector/InDetConfig/python/TrackingSiPatternConfig.py @@ -112,7 +112,6 @@ def SiZvertexMaker_xkCfg(flags, name="InDetZvertexMaker", InputCollections = Non InDetSiSpacePointsSeedMaker = acc.popToolsAndMerge(SiSpacePointsSeedMakerCfg(flags, InputCollections = InputCollections )) - acc.addPublicTool(InDetSiSpacePointsSeedMaker) kwargs.setdefault("SeedMakerTool", InDetSiSpacePointsSeedMaker) if flags.InDet.doHeavyIon: @@ -160,7 +159,6 @@ def SiCombinatorialTrackFinder_xkCfg(flags, name="InDetSiComTrackFinder", **kwar from InDetConfig.InDetRecToolConfig import InDetBoundaryCheckToolCfg boundary_check_tool = acc.popToolsAndMerge(InDetBoundaryCheckToolCfg(flags)) - acc.addPublicTool(boundary_check_tool) kwargs.setdefault("PropagatorTool", InDetPatternPropagator) kwargs.setdefault("UpdatorTool", InDetPatternUpdator) @@ -180,7 +178,6 @@ def SiCombinatorialTrackFinder_xkCfg(flags, name="InDetSiComTrackFinder", **kwar if flags.Detector.EnableSCT: InDetSCT_ConditionsSummaryTool = CompFactory.SCT_ConditionsSummaryTool(name = 'InDetSCT_ConditionsSummaryTool') - acc.addPublicTool(InDetSCT_ConditionsSummaryTool) kwargs.setdefault("SctSummaryTool", InDetSCT_ConditionsSummaryTool) else: kwargs.setdefault("SctSummaryTool", None) @@ -193,7 +190,6 @@ def SiTrackMaker_xkCfg(flags, name="InDetSiTrackMaker", InputCollections = None, acc = ComponentAccumulator() useBremMode = flags.InDet.Tracking.extension == "Offline" or flags.InDet.Tracking.extension == "DBM" InDetSiDetElementsRoadMaker = acc.popToolsAndMerge(SiDetElementsRoadMaker_xkCfg(flags)) - acc.addPublicTool(InDetSiDetElementsRoadMaker) if flags.InDet.Tracking.usePixel: acc.addCondAlgo( CompFactory.InDet.SiDetElementBoundaryLinksCondAlg_xk( name = "InDetSiDetElementBoundaryLinksPixelCondAlg", @@ -207,7 +203,6 @@ def SiTrackMaker_xkCfg(flags, name="InDetSiTrackMaker", InputCollections = None, WriteKey = "SCT_DetElementBoundaryLinks_xk") ) track_finder = acc.popToolsAndMerge(SiCombinatorialTrackFinder_xkCfg(flags)) - acc.addPublicTool(track_finder) # # --- decide if use the association tool @@ -282,7 +277,7 @@ def SiTrackMaker_xkCfg(flags, name="InDetSiTrackMaker", InputCollections = None, if flags.InDet.doStoreTrackSeeds: InDet_SeedToTrackConversion = CompFactory.InDet.SeedToTrackConversionTool( name = "InDet_SeedToTrackConversion", OutputName = 'SiSPSeedSegments' + flags.InDet.Tracking.extension) - acc.addPublicTool(InDet_SeedToTrackConversion) + acc.setPrivateTools(InDet_SeedToTrackConversion) kwargs.setdefault("SeedToTrackConversion", InDet_SeedToTrackConversion) kwargs.setdefault("SeedSegmentsWrite", True) @@ -312,14 +307,11 @@ def SiSPSeededTrackFinderCfg(flags, name="InDetSiSpTrackFinder", InputCollection InDetSiTrackMaker = acc.popToolsAndMerge(SiTrackMaker_xkCfg(flags, InputCollections = InputCollections )) - acc.addPublicTool(InDetSiTrackMaker) - InDetTrackSummaryToolNoHoleSearch = acc.popToolsAndMerge(TC.InDetTrackSummaryToolNoHoleSearchCfg(flags)) - acc.addPublicTool(InDetTrackSummaryToolNoHoleSearch) + InDetTrackSummaryToolNoHoleSearch = acc.getPrimaryAndMerge(TC.InDetTrackSummaryToolNoHoleSearchCfg(flags)) InDetSiSpacePointsSeedMaker = acc.popToolsAndMerge(SiSpacePointsSeedMakerCfg(flags, InputCollections = InputCollections )) - acc.addPublicTool(InDetSiSpacePointsSeedMaker) # # --- Z-coordinates primary vertices finder (only for collisions) @@ -327,7 +319,6 @@ def SiSPSeededTrackFinderCfg(flags, name="InDetSiSpTrackFinder", InputCollection if flags.InDet.useZvertexTool and flags.InDet.Tracking.extension != "DBM": InDetZvertexMaker = acc.popToolsAndMerge(SiZvertexMaker_xkCfg(flags, InputCollections = InputCollections)) - acc.addPublicTool(InDetZvertexMaker) else: InDetZvertexMaker = None @@ -394,7 +385,6 @@ def InDetAmbiTrackSelectionToolCfg(flags, name="InDetAmbiTrackSelectionTool", ** kwargs.setdefault("DriftCircleCutTool", InDetTRTDriftCircleCut) InDetPRDtoTrackMapToolGangedPixels = acc.popToolsAndMerge(TC.InDetPRDtoTrackMapToolGangedPixelsCfg(flags)) - acc.addPublicTool(InDetPRDtoTrackMapToolGangedPixels) kwargs.setdefault("AssociationTool" , InDetPRDtoTrackMapToolGangedPixels) kwargs.setdefault("minHits" , flags.InDet.Tracking.minClusters) @@ -454,17 +444,13 @@ def DenseEnvironmentsAmbiguityScoreProcessorToolCfg(flags, name = "InDetAmbiguit InDetAmbiScoringTool = acc.popToolsAndMerge(TC.InDetNNScoringToolSiCfg(flags)) else: InDetAmbiScoringTool = acc.popToolsAndMerge(TC.InDetAmbiScoringToolSiCfg(flags)) - acc.addPublicTool(InDetAmbiScoringTool) - from InDetConfig.SiliconPreProcessing import NnPixelClusterSplitProbToolCfg NnPixelClusterSplitProbTool = acc.popToolsAndMerge(NnPixelClusterSplitProbToolCfg(flags)) - acc.addPublicTool(NnPixelClusterSplitProbTool) InDetPRDtoTrackMapToolGangedPixels = acc.popToolsAndMerge(TC.InDetPRDtoTrackMapToolGangedPixelsCfg(flags)) - acc.addPublicTool(InDetPRDtoTrackMapToolGangedPixels) - PRDtoTrackMapTool = acc.getPrimaryAndMerge(TC.PRDtoTrackMapToolCfg()) + PRDtoTrackMapTool = acc.popToolsAndMerge(TC.PRDtoTrackMapToolCfg()) prob1 = flags.InDet.pixelClusterSplitProb1 prob2 = flags.InDet.pixelClusterSplitProb2 @@ -513,7 +499,6 @@ def DenseEnvironmentsAmbiguityProcessorToolCfg(flags, name = "InDetAmbiguityProc InDetAmbiScoringTool = acc.popToolsAndMerge(TC.InDetNNScoringToolSiCfg(flags)) else: InDetAmbiScoringTool = acc.popToolsAndMerge(TC.InDetAmbiScoringToolSiCfg(flags)) - acc.addPublicTool(InDetAmbiScoringTool) use_low_pt_fitter = True if flags.InDet.Tracking.extension == "LowPt" or flags.InDet.Tracking.extension == "VeryLowPt" or (flags.InDet.Tracking.extension == "Pixel" and flags.InDet.doMinBias) else False @@ -526,17 +511,14 @@ def DenseEnvironmentsAmbiguityProcessorToolCfg(flags, name = "InDetAmbiguityProc fitter_args.setdefault("DoHoleSearch", True) from InDetConfig.InDetRecToolConfig import InDetBoundaryCheckToolCfg InDetBoundaryCheckTool = acc.popToolsAndMerge(InDetBoundaryCheckToolCfg(flags)) - acc.addPublicTool(InDetBoundaryCheckTool) fitter_args.setdefault("BoundaryCheckTool", InDetBoundaryCheckTool) fitter_list=[] if not use_low_pt_fitter: InDetTrackFitterAmbi = acc.popToolsAndMerge(TC.InDetTrackFitterCfg(flags, name='InDetTrackFitter'+'Ambi'+flags.InDet.Tracking.extension, **fitter_args)) - acc.addPublicTool(InDetTrackFitterAmbi) fitter_list.append(InDetTrackFitterAmbi) else: InDetTrackFitterLowPt = acc.popToolsAndMerge(TC.InDetTrackFitterLowPt(flags, name='InDetTrackFitterLowPt'+flags.InDet.Tracking.extension, **fitter_args)) - acc.addPublicTool(InDetTrackFitterLowPt) fitter_list.append(InDetTrackFitterLowPt) if flags.InDet.doRefitInvalidCov: @@ -544,32 +526,25 @@ def DenseEnvironmentsAmbiguityProcessorToolCfg(flags, name = "InDetAmbiguityProc fitter_args = {} fitter_args.setdefault("SplitClusterMapExtension", flags.InDet.Tracking.extension) KalmanFitter = acc.popToolsAndMerge(TC.KalmanFitterCfg(flags, name='KalmanFitter'+flags.InDet.Tracking.extension, **fitter_args)) - acc.addPublicTool(KalmanFitter) fitter_list.append(KalmanFitter) ReferenceKalmanFitter = acc.popToolsAndMerge(TC.ReferenceKalmanFitterCfg(flags, name='ReferenceKalmanFitter'+flags.InDet.Tracking.extension, **fitter_args)) - acc.addPublicTool(ReferenceKalmanFitter) fitter_list.append(ReferenceKalmanFitter) else: KalmanFitter = acc.popToolsAndMerge(TC.KalmanFitterCfg(flags)) - acc.addPublicTool(KalmanFitter) fitter_list.append(KalmanFitter) ReferenceKalmanFitter = acc.popToolsAndMerge(TC.ReferenceKalmanFitterCfg(flags)) - acc.addPublicTool(ReferenceKalmanFitter) fitter_list.append(ReferenceKalmanFitter) InDetPRDtoTrackMapToolGangedPixels = acc.popToolsAndMerge(TC.InDetPRDtoTrackMapToolGangedPixelsCfg(flags)) - acc.addPublicTool(InDetPRDtoTrackMapToolGangedPixels) - ambi_track_summary_tool = acc.popToolsAndMerge(TC.InDetTrackSummaryToolCfg( flags, - namePrefix = 'InDetAmbiguityProcessorSplitProb', - nameSuffix = flags.InDet.Tracking.extension, - ClusterSplitProbabilityName = 'InDetAmbiguityProcessorSplitProb'+flags.InDet.Tracking.extension)) - acc.addPublicTool(ambi_track_summary_tool) + ambi_track_summary_tool = acc.getPrimaryAndMerge(TC.InDetTrackSummaryToolCfg( flags, + namePrefix = 'InDetAmbiguityProcessorSplitProb', + nameSuffix = flags.InDet.Tracking.extension, + ClusterSplitProbabilityName = 'InDetAmbiguityProcessorSplitProb'+flags.InDet.Tracking.extension)) InDetAmbiTrackSelectionTool = acc.popToolsAndMerge(InDetAmbiTrackSelectionToolCfg(flags)) - acc.addPublicTool(InDetAmbiTrackSelectionTool) kwargs.setdefault("Fitter", fitter_list) kwargs.setdefault("AssociationTool", InDetPRDtoTrackMapToolGangedPixels) @@ -606,22 +581,17 @@ def SimpleAmbiguityProcessorToolCfg(flags, name = "InDetAmbiguityProcessor", Clu InDetAmbiScoringTool = acc.popToolsAndMerge(TC.InDetNNScoringToolSiCfg(flags)) else: InDetAmbiScoringTool = acc.popToolsAndMerge(TC.InDetAmbiScoringToolSiCfg(flags)) - acc.addPublicTool(InDetAmbiScoringTool) InDetTrackFitter = acc.popToolsAndMerge(TC.InDetTrackFitterCfg(flags)) - acc.addPublicTool(InDetTrackFitter) InDetPRDtoTrackMapToolGangedPixels = acc.popToolsAndMerge(TC.InDetPRDtoTrackMapToolGangedPixelsCfg(flags)) - acc.addPublicTool(InDetPRDtoTrackMapToolGangedPixels) - ambi_track_summary_tool = acc.popToolsAndMerge(TC.InDetTrackSummaryToolCfg( flags, + ambi_track_summary_tool = acc.getPrimaryAndMerge(TC.InDetTrackSummaryToolCfg( flags, namePrefix = 'InDetAmbiguityProcessorSplitProb', nameSuffix = flags.InDet.Tracking.extension, ClusterSplitProbabilityName = 'InDetAmbiguityProcessorSplitProb'+flags.InDet.Tracking.extension)) - acc.addPublicTool(ambi_track_summary_tool) InDetAmbiTrackSelectionTool = acc.popToolsAndMerge(InDetAmbiTrackSelectionToolCfg(flags)) - acc.addPublicTool(InDetAmbiTrackSelectionTool) kwargs.setdefault("Fitter", InDetTrackFitter) kwargs.setdefault("AssociationTool", InDetPRDtoTrackMapToolGangedPixels) @@ -646,7 +616,6 @@ def SimpleAmbiguityProcessorToolCfg(flags, name = "InDetAmbiguityProcessor", Clu pass else: InDetTrackFitterLowPt = acc.popToolsAndMerge(TC.InDetTrackFitterLowPt(flags)) - acc.addPublicTool(InDetTrackFitterLowPt) kwargs.setdefault("Fitter", InDetTrackFitterLowPt) if flags.InDet.materialInteractions: @@ -667,7 +636,6 @@ def TrkAmbiguityScoreCfg(flags, name="InDetAmbiguityScore", SiSPSeededTrackColle if flags.InDet.doTIDE_Ambi and not (flags.InDet.Tracking.extension == "ForwardTracks" or flags.InDet.Tracking.extension == "DBM"): InDetAmbiguityScoreProcessor = acc.popToolsAndMerge(DenseEnvironmentsAmbiguityScoreProcessorToolCfg(flags)) - acc.addPublicTool(InDetAmbiguityScoreProcessor) else: InDetAmbiguityScoreProcessor = None @@ -690,11 +658,9 @@ def TrkAmbiguitySolverCfg(flags, name="InDetAmbiguitySolver", ResolvedTrackColle # DenseEnvironmentsAmbiguityProcessorTool InDetAmbiguityProcessor = acc.popToolsAndMerge(DenseEnvironmentsAmbiguityProcessorToolCfg( flags, ClusterSplitProbContainer=ClusterSplitProbContainer)) - acc.addPublicTool(InDetAmbiguityProcessor) else: InDetAmbiguityProcessor = acc.popToolsAndMerge(SimpleAmbiguityProcessorToolCfg( flags, ClusterSplitProbContainer=ClusterSplitProbContainer)) - acc.addPublicTool(InDetAmbiguityProcessor) # # --- configure Ambiguity solver diff --git a/InnerDetector/InDetConfig/python/VertexFindingConfig.py b/InnerDetector/InDetConfig/python/VertexFindingConfig.py index 2072cd78b116e8ba0f6b2e95283e7144d25199b7..bbe12511c263033a9389e83fdbed499b83fa8b48 100644 --- a/InnerDetector/InDetConfig/python/VertexFindingConfig.py +++ b/InnerDetector/InDetConfig/python/VertexFindingConfig.py @@ -23,8 +23,7 @@ def primaryVertexFindingCfg(flags): acc.merge(actsGeoAcc) trackExtrapolator = acc.getPrimaryAndMerge(ActsExtrapolationToolCfg(flags)) - - trackSummaryTool = acc.popToolsAndMerge(InDetTrackSummaryToolCfg(flags)) + trackSummaryTool = acc.getPrimaryAndMerge(InDetTrackSummaryToolCfg(flags)) # TODO find out which of the settings below need to be picked from flags trackSelector = CompFactory.InDet.InDetTrackSelectionTool( diff --git a/InnerDetector/InDetMonitoring/InDetGlobalMonitoringRun3Test/python/InDetGlobalMonitoringRun3TestConfig.py b/InnerDetector/InDetMonitoring/InDetGlobalMonitoringRun3Test/python/InDetGlobalMonitoringRun3TestConfig.py index b5759b35013d24f05e7559e8b6bd13f9211bf8c2..98efaaf9956675d57fdd58e4ed4fa788ec52bb7f 100644 --- a/InnerDetector/InDetMonitoring/InDetGlobalMonitoringRun3Test/python/InDetGlobalMonitoringRun3TestConfig.py +++ b/InnerDetector/InDetMonitoring/InDetGlobalMonitoringRun3Test/python/InDetGlobalMonitoringRun3TestConfig.py @@ -48,10 +48,8 @@ def InDetGlobalMonitoringRun3TestConfig(flags): inDetGlobalTrackMonAlg.Tight_TrackSelectionTool.CutLevel = "TightPrimary" inDetGlobalTrackMonAlg.Tight_TrackSelectionTool.minPt = 5000 - - # Run 3 configs - stolen from SCT - from SCT_Monitoring.TrackSummaryToolWorkaround import TrackSummaryToolWorkaround - InDetTrackSummaryTool = acc.popToolsAndMerge(TrackSummaryToolWorkaround(flags)) + from InDetConfig.TrackingCommonConfig import InDetTrackSummaryToolCfg + InDetTrackSummaryTool = acc.getPrimaryAndMerge(InDetTrackSummaryToolCfg(flags)) inDetGlobalTrackMonAlg.TrackSummaryTool = InDetTrackSummaryTool inDetGlobalTrackMonAlg.TrackSelectionTool.TrackSummaryTool = InDetTrackSummaryTool inDetGlobalTrackMonAlg.TrackSelectionTool.Extrapolator = acc.getPublicTool("InDetExtrapolator") @@ -84,10 +82,8 @@ def InDetGlobalMonitoringRun3TestConfig(flags): inDetGlobalLRTMonAlg.TrackSelectionTool.maxNPixelHoles = 1 inDetGlobalLRTMonAlg.TrackSelectionTool.minPt = 5000 - - # Run 3 configs - stolen from SCT - from SCT_Monitoring.TrackSummaryToolWorkaround import TrackSummaryToolWorkaround - InDetTrackSummaryTool = acc.popToolsAndMerge(TrackSummaryToolWorkaround(flags)) + from InDetConfig.TrackingCommonConfig import InDetTrackSummaryToolCfg + InDetTrackSummaryTool = acc.getPrimaryAndMerge(InDetTrackSummaryToolCfg(flags)) inDetGlobalLRTMonAlg.TrackSummaryTool = InDetTrackSummaryTool inDetGlobalLRTMonAlg.TrackSelectionTool.TrackSummaryTool = InDetTrackSummaryTool inDetGlobalLRTMonAlg.TrackSelectionTool.Extrapolator = acc.getPublicTool("InDetExtrapolator") diff --git a/InnerDetector/InDetMonitoring/PixelMonitoring/python/PixelMonitoringConfig.py b/InnerDetector/InDetMonitoring/PixelMonitoring/python/PixelMonitoringConfig.py index a851454434c74c9e06df3b175fe4f798573997c0..2f5de62a66b641b54d8260c485321f82080413fe 100644 --- a/InnerDetector/InDetMonitoring/PixelMonitoring/python/PixelMonitoringConfig.py +++ b/InnerDetector/InDetMonitoring/PixelMonitoring/python/PixelMonitoringConfig.py @@ -52,9 +52,8 @@ def PixelMonitoringConfig(flags): pixelAthClusterMonAlg.TrackSelectionTool.maxD0 = 2 pixelAthClusterMonAlg.TrackSelectionTool.maxZ0 = 150 - # Run 3 configs - stolen from SCT - from SCT_Monitoring.TrackSummaryToolWorkaround import TrackSummaryToolWorkaround - pixelAthClusterMonAlg.TrackSelectionTool.TrackSummaryTool = acc.popToolsAndMerge(TrackSummaryToolWorkaround(flags)) + from InDetConfig.TrackingCommonConfig import InDetTrackSummaryToolCfg + pixelAthClusterMonAlg.TrackSelectionTool.TrackSummaryTool = acc.getPrimaryAndMerge(InDetTrackSummaryToolCfg(flags)) pixelAthClusterMonAlg.TrackSelectionTool.Extrapolator = acc.getPublicTool("InDetExtrapolator") diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/python/SCTLorentzMonAlg.py b/InnerDetector/InDetMonitoring/SCT_Monitoring/python/SCTLorentzMonAlg.py index 71b4c2175a239fd3b393f22a892c4e66c59cfce8..7dc2155ecbc7b4e70c193b69edd6f9b039fd79f8 100644 --- a/InnerDetector/InDetMonitoring/SCT_Monitoring/python/SCTLorentzMonAlg.py +++ b/InnerDetector/InDetMonitoring/SCT_Monitoring/python/SCTLorentzMonAlg.py @@ -46,8 +46,8 @@ def SCTLorentzMonAlgConfig(inputFlags): # myMonAlg.RandomHist = True # Set InDetTrackSummaryTool to TrackSummaryTool of SCTLorentzMonAlg - from .TrackSummaryToolWorkaround import TrackSummaryToolWorkaround - myMonAlg.TrackSummaryTool = result.popToolsAndMerge(TrackSummaryToolWorkaround(inputFlags)) + from InDetConfig.TrackingCommonConfig import InDetTrackSummaryToolCfg + myMonAlg.TrackSummaryTool = result.getPrimaryAndMerge(InDetTrackSummaryToolCfg(inputFlags)) ### STEP 4 ### # Add some tools. N.B. Do not use your own trigger decion tool. Use the diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/python/SCTTracksMonAlg.py b/InnerDetector/InDetMonitoring/SCT_Monitoring/python/SCTTracksMonAlg.py index 327e5736d23c1ca5a3406aa8e0a66fe839fb5262..90132c5a100779bc548272d8d6b0f1f75945443e 100644 --- a/InnerDetector/InDetMonitoring/SCT_Monitoring/python/SCTTracksMonAlg.py +++ b/InnerDetector/InDetMonitoring/SCT_Monitoring/python/SCTTracksMonAlg.py @@ -51,9 +51,8 @@ def SCTTracksMonAlgConfig(inputFlags): myMonAlg.TriggerChain = '' # myMonAlg.RandomHist = True - # Set InDetTrackSummaryTool to TrackSummaryTool of SCTLorentzMonAlg - from SCT_Monitoring.TrackSummaryToolWorkaround import TrackSummaryToolWorkaround - myMonAlg.TrackSummaryTool = result.popToolsAndMerge(TrackSummaryToolWorkaround(inputFlags)) + from InDetConfig.TrackingCommonConfig import InDetTrackSummaryToolCfg + myMonAlg.TrackSummaryTool = result.getPrimaryAndMerge(InDetTrackSummaryToolCfg(inputFlags)) ### STEP 4 ### # Add some tools. N.B. Do not use your own trigger decion tool. Use the diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/python/TrackSummaryToolWorkaround.py b/InnerDetector/InDetMonitoring/SCT_Monitoring/python/TrackSummaryToolWorkaround.py deleted file mode 100644 index e88e0e5a7595b5857885e8caecb94e83f194cb8b..0000000000000000000000000000000000000000 --- a/InnerDetector/InDetMonitoring/SCT_Monitoring/python/TrackSummaryToolWorkaround.py +++ /dev/null @@ -1,25 +0,0 @@ -# -# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration -# - -'''@file TrackingConfigurationWorkaround.py -@author Peter Onyisi -@date 2019-12-17 -@brief Centralize the DQ workarounds for setting up ID tracking tools in new-style config, until this is provided centrally -''' -from AthenaConfiguration.ComponentFactory import CompFactory -from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator -from InDetConfig import TrackingCommonConfig - -def TrackSummaryToolWorkaround(flags): - result = ComponentAccumulator() - result.setPrivateTools( result.popToolsAndMerge(TrackingCommonConfig.InDetTrackSummaryToolCfg(flags) ) ) - - # To run job only with ID - if hasattr(flags, "Detector") and hasattr(flags.Detector, "GeometryMuon") and hasattr(flags.Detector, "GeometryID"): - TrkEventCnvSuperTool = CompFactory.Trk.EventCnvSuperTool(name = "EventCnvSuperTool", - DoMuons = flags.Detector.GeometryMuon, - DoID = flags.Detector.GeometryID) - result.addPublicTool(TrkEventCnvSuperTool) - - return result diff --git a/InnerDetector/InDetMonitoring/TRTMonitoringRun3/python/TRTMonitoringRun3ESD_Alg.py b/InnerDetector/InDetMonitoring/TRTMonitoringRun3/python/TRTMonitoringRun3ESD_Alg.py index 2232280a3ad2a3a13ee9f6ba560c340e3beafa08..07f9f30bbdf46a5fefabf717275e9dab5fa39148 100644 --- a/InnerDetector/InDetMonitoring/TRTMonitoringRun3/python/TRTMonitoringRun3ESD_Alg.py +++ b/InnerDetector/InDetMonitoring/TRTMonitoringRun3/python/TRTMonitoringRun3ESD_Alg.py @@ -35,10 +35,8 @@ def TRTMonitoringRun3ESD_AlgConfig(inputFlags): result.merge(addFoldersSplitOnline(inputFlags, "TRT","/TRT/Onl/Calib/RT","/TRT/Calib/RT",className="TRTCond::RtRelationMultChanContainer")) result.merge(addFoldersSplitOnline(inputFlags, "TRT","/TRT/Onl/Calib/T0","/TRT/Calib/T0",className="TRTCond::StrawT0MultChanContainer")) - ############################## WORKAROUND (START) ########################## - from SCT_Monitoring.TrackSummaryToolWorkaround import TrackSummaryToolWorkaround - algTRTMonitoringRun3ESD.TrackSummaryTool = result.popToolsAndMerge(TrackSummaryToolWorkaround(inputFlags)) - ############################## WORKAROUND (END) ############################ + from InDetConfig.TrackingCommonConfig import InDetTrackSummaryToolCfg + algTRTMonitoringRun3ESD.TrackSummaryTool = result.getPrimaryAndMerge(InDetTrackSummaryToolCfg(inputFlags)) # # To run job only with ID # if hasattr(inputFlags, "Detector") and hasattr(inputFlags.Detector, "GeometryMuon") and hasattr(inputFlags.Detector, "GeometryID"): diff --git a/InnerDetector/InDetMonitoring/TRTMonitoringRun3/python/TRTMonitoringRun3RAW_Alg.py b/InnerDetector/InDetMonitoring/TRTMonitoringRun3/python/TRTMonitoringRun3RAW_Alg.py index 394ffb603e7698f437c5ed9787c73bf62921b465..25dd54b10d2957346c7f592c31f3cbc5c5cf9abb 100644 --- a/InnerDetector/InDetMonitoring/TRTMonitoringRun3/python/TRTMonitoringRun3RAW_Alg.py +++ b/InnerDetector/InDetMonitoring/TRTMonitoringRun3/python/TRTMonitoringRun3RAW_Alg.py @@ -48,8 +48,8 @@ def TRTMonitoringRun3RAW_AlgConfig(inputFlags): # @TODO really run the TRT hole search ? Hole search still seems to use a condition service if isRun3Cfg(): - from SCT_Monitoring.TrackSummaryToolWorkaround import TrackSummaryToolWorkaround - algTRTMonitoringRun3RAW.TrackSummaryTool = rv.popToolsAndMerge(TrackSummaryToolWorkaround(inputFlags)) + from InDetConfig.TrackingCommonConfig import InDetTrackSummaryToolCfg + algTRTMonitoringRun3RAW.TrackSummaryTool = rv.getPrimaryAndMerge(InDetTrackSummaryToolCfg(inputFlags)) algTRTMonitoringRun3RAW.trt_hole_search= rv.popToolsAndMerge( TRTHoleSearchCfg(inputFlags) ) else : algTRTMonitoringRun3RAW.trt_hole_search=TRTHoleSearch() diff --git a/InnerDetector/InDetMonitoring/TRTMonitoringRun3/python/TrackSummaryToolWorkaround.py b/InnerDetector/InDetMonitoring/TRTMonitoringRun3/python/TrackSummaryToolWorkaround.py deleted file mode 100644 index 85b0035e06528072fccc0b60f95613f70af91534..0000000000000000000000000000000000000000 --- a/InnerDetector/InDetMonitoring/TRTMonitoringRun3/python/TrackSummaryToolWorkaround.py +++ /dev/null @@ -1,16 +0,0 @@ -# -# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration -# - -'''@file TrackingConfigurationWorkaround.py -@author Peter Onyisi -@date 2019-12-17 -@brief Centralize the DQ workarounds for setting up ID tracking tools in new-style config, until this is provided centrally -''' -from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator -from InDetConfig import TrackingCommonConfig - -def TrackSummaryToolWorkaround(flags): - result = ComponentAccumulator() - result.setPrivateTools( result.popToolsAndMerge(TrackingCommonConfig.InDetTrackSummaryToolCfg(flags) ) ) - return result diff --git a/InnerDetector/InDetRecTools/InDetBoundaryCheckTool/InDetBoundaryCheckTool/InDetBoundaryCheckTool.h b/InnerDetector/InDetRecTools/InDetBoundaryCheckTool/InDetBoundaryCheckTool/InDetBoundaryCheckTool.h index 4ca60caf55505839a7a05a3519b14fe8565f238b..72b8f3ab22faa75999d49b703e8f9d6ee3828493 100644 --- a/InnerDetector/InDetRecTools/InDetBoundaryCheckTool/InDetBoundaryCheckTool/InDetBoundaryCheckTool.h +++ b/InnerDetector/InDetRecTools/InDetBoundaryCheckTool/InDetBoundaryCheckTool/InDetBoundaryCheckTool.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration + * Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration */ #ifndef ATHENA_INNERDETECTOR_TOOLS_BOUNDARYCHECKTOOL @@ -61,7 +61,13 @@ namespace InDet { "SCT_ConditionsSummaryTool/InDetSCT_ConditionsSummaryTool", "Tool to retrieve SCT Conditions summary" }; - ToolHandle<IInDetTestPixelLayerTool> m_pixelLayerTool; + + ToolHandle<IInDetTestPixelLayerTool> m_pixelLayerTool{ + this, + "PixelLayerTool", + "InDet::InDetTestPixelLayerTool", + "Tool to retrieve pixel conditions summary" + }; const AtlasDetectorID *m_atlasId; diff --git a/InnerDetector/InDetRecTools/InDetBoundaryCheckTool/src/InDetBoundaryCheckTool.cxx b/InnerDetector/InDetRecTools/InDetBoundaryCheckTool/src/InDetBoundaryCheckTool.cxx index 4d71c8d5fa1e0eb441e86efb9aed491c01ef18e9..f34cf63e67e5d6663ca6bf3d9ae4f54479fa31b6 100644 --- a/InnerDetector/InDetRecTools/InDetBoundaryCheckTool/src/InDetBoundaryCheckTool.cxx +++ b/InnerDetector/InDetRecTools/InDetBoundaryCheckTool/src/InDetBoundaryCheckTool.cxx @@ -1,5 +1,5 @@ /* - * Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration + * Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration */ #include "TrkToolInterfaces/IBoundaryCheckTool.h" @@ -14,12 +14,10 @@ InDet::InDetBoundaryCheckTool::InDetBoundaryCheckTool( ): AthAlgTool(t, n, p), m_geoModelSvc("GeoModelSvc", n), - m_pixelLayerTool("InDet::InDetTestPixelLayerTool"), m_atlasId(nullptr) { declareInterface<IBoundaryCheckTool>(this); declareProperty("GeoModelService", m_geoModelSvc); - declareProperty("PixelLayerTool", m_pixelLayerTool); } StatusCode InDet::InDetBoundaryCheckTool::initialize() { diff --git a/InnerDetector/InDetRecTools/InDetCompetingRIOsOnTrackTool/InDetCompetingRIOsOnTrackTool/CompetingTRT_DriftCirclesOnTrackTool.h b/InnerDetector/InDetRecTools/InDetCompetingRIOsOnTrackTool/InDetCompetingRIOsOnTrackTool/CompetingTRT_DriftCirclesOnTrackTool.h index 77b327196b487753a5489c38e7520dc3b1ea901f..cb7ddb87ec2cda5deab291ecd5edc1df23324171 100755 --- a/InnerDetector/InDetRecTools/InDetCompetingRIOsOnTrackTool/InDetCompetingRIOsOnTrackTool/CompetingTRT_DriftCirclesOnTrackTool.h +++ b/InnerDetector/InDetRecTools/InDetCompetingRIOsOnTrackTool/InDetCompetingRIOsOnTrackTool/CompetingTRT_DriftCirclesOnTrackTool.h @@ -30,13 +30,15 @@ #include "EventPrimitives/EventPrimitives.h" #include "GeoPrimitives/GeoPrimitives.h" +// interfaces +#include "TrkExInterfaces/IExtrapolator.h" +#include "TrkToolInterfaces/IRIO_OnTrackCreator.h" +#include "TrkToolInterfaces/IWeightCalculator.h" + namespace Trk { class LocalParameters; class Surface; class PrepRawData; - class IRIO_OnTrackCreator; - class IWeightCalculator; - class IExtrapolator; } @@ -129,14 +131,17 @@ private: // Private data: /////////////////////////////////////////////////////////////////// - ToolHandle< Trk::IRIO_OnTrackCreator > m_TRT_ROTCreator; //!< Det-specific ROT creation for TRT + ToolHandle< Trk::IRIO_OnTrackCreator > m_TRT_ROTCreator + {this, "ToolForTRT_DriftCircleOnTrackCreation", "InDet::TRT_DriftCircleOnTrackTool/TRT_DriftCircleOnTrackTool", "TRT_DriftCircleOnTrackCreator needed for the creation of CompetingPixelClustersOnTrack"}; //!< Det-specific ROT creation for TRT - ToolHandle< Trk::IWeightCalculator > m_weightCalculator; //!< Weight calculator tool for assignment probabilities + ToolHandle< Trk::IWeightCalculator > m_weightCalculator + {this, "ToolForWeightCalculation", "Trk::DAF_SimpleWeightCalculator/DAF_WeightCalculator", "Tool for weight (assignment probability) calculation"}; //!< Weight calculator tool for assignment probabilities double m_jo_EndCapCutValue; //!< job option set cutValue of assignment probabilities for TRT end-cap double m_jo_BarrelCutValue; //!< job option set cutValue of assignment probabilities for barrel TRT - ToolHandle< Trk::IExtrapolator > m_extrapolator; //!< the Extrapolator tool + PublicToolHandle< Trk::IExtrapolator > m_extrapolator + {this, "Extrapolator", "Trk::Extrapolator/AtlasExtrapolator", "Extrapolator tool"}; //!< the Extrapolator tool /////////////////////////////////////////////////////////////////// // Private functions: diff --git a/InnerDetector/InDetRecTools/InDetCompetingRIOsOnTrackTool/src/CompetingTRT_DriftCirclesOnTrackTool.cxx b/InnerDetector/InDetRecTools/InDetCompetingRIOsOnTrackTool/src/CompetingTRT_DriftCirclesOnTrackTool.cxx index 1c0f018dabcbf01f3932dee8fc0708e289a6cd8f..cef6454ee6df9ba4d2e979f27c967edb91c8b2a5 100755 --- a/InnerDetector/InDetRecTools/InDetCompetingRIOsOnTrackTool/src/CompetingTRT_DriftCirclesOnTrackTool.cxx +++ b/InnerDetector/InDetRecTools/InDetCompetingRIOsOnTrackTool/src/CompetingTRT_DriftCirclesOnTrackTool.cxx @@ -23,11 +23,6 @@ #include "InDetPrepRawData/TRT_DriftCircle.h" #include "InDetCompetingRIOsOnTrack/CompetingTRT_DriftCirclesOnTrack.h" -// interfaces -#include "TrkExInterfaces/IExtrapolator.h" -#include "TrkToolInterfaces/IRIO_OnTrackCreator.h" -#include "TrkToolInterfaces/IWeightCalculator.h" - // #include <cmath> @@ -39,18 +34,12 @@ InDet::CompetingTRT_DriftCirclesOnTrackTool::CompetingTRT_DriftCirclesOnTrackToo const std::string& ty, const std::string& na, const IInterface* pa ) : - AthAlgTool(ty,na,pa), - m_TRT_ROTCreator("InDet::TRT_DriftCircleOnTrackTool/TRT_DriftCircleOnTrackTool"), - m_weightCalculator("Trk::DAF_SimpleWeightCalculator/DAF_WeightCalculator"), - m_extrapolator("Trk::Extrapolator/AtlasExtrapolator") + AthAlgTool(ty,na,pa) { declareInterface<ICompetingTRT_DriftCirclesOnTrackCreator>(this); declareInterface<ICompetingRIOsOnTrackTool>(this); - declareProperty("ToolForTRT_DriftCircleOnTrackCreation",m_TRT_ROTCreator, "TRT_DriftCircleOnTrackCreator needed for the creation of CompetingPixelClustersOnTrack"); - declareProperty("ToolForWeightCalculation", m_weightCalculator, "Tool for weight (assignment probability) calculation"); declareProperty("WeightCutValueBarrel", m_jo_BarrelCutValue=6.66, "lambda parameter (intrinsic roadwidth) for measurements in the Barrel part"); declareProperty("WeightCutValueEndCap", m_jo_EndCapCutValue=6.66, "lambda parameter (intrinsic roadwidth) for measurements in the EndCap part"); - declareProperty("Extrapolator", m_extrapolator, "Extrapolator tool"); } /////////////////////////////////////////////////////////////////// diff --git a/InnerDetector/InDetRecTools/TRT_DriftCircleOnTrackTool/TRT_DriftCircleOnTrackTool/TRT_DriftCircleOnTrackUniversalTool.h b/InnerDetector/InDetRecTools/TRT_DriftCircleOnTrackTool/TRT_DriftCircleOnTrackTool/TRT_DriftCircleOnTrackUniversalTool.h index 704461ee04d5b40b77e55160b9eb31b8db1cced5..9e144dbcc8d9ab5b05b0da15b113453ffe371a8a 100755 --- a/InnerDetector/InDetRecTools/TRT_DriftCircleOnTrackTool/TRT_DriftCircleOnTrackTool/TRT_DriftCircleOnTrackUniversalTool.h +++ b/InnerDetector/InDetRecTools/TRT_DriftCircleOnTrackTool/TRT_DriftCircleOnTrackTool/TRT_DriftCircleOnTrackUniversalTool.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration */ /////////////////////////////////////////////////////////////////// @@ -50,8 +50,10 @@ public: // Private data: /////////////////////////////////////////////////////////////////// - ToolHandle<Trk::IRIO_OnTrackCreator> m_riontrackDrift ; - ToolHandle<Trk::IRIO_OnTrackCreator> m_riontrackTube ; + ToolHandle<Trk::IRIO_OnTrackCreator> m_riontrackDrift + {this, "RIOonTrackToolDrift", "InDet::TRT_DriftCircleOnTrackTool/TRT_DriftCircleOnTrackTool"}; + ToolHandle<Trk::IRIO_OnTrackCreator> m_riontrackTube + {this, "RIOonTrackToolTube", "InDet::TRT_DriftCircleOnTrackNoDriftTimeTool/TRT_DriftCircleOnTrackNoDriftTimeTool"}; double m_scalefactor; //scale factor for hit uncertainty }; diff --git a/InnerDetector/InDetRecTools/TRT_DriftCircleOnTrackTool/src/TRT_DriftCircleOnTrackUniversalTool.cxx b/InnerDetector/InDetRecTools/TRT_DriftCircleOnTrackTool/src/TRT_DriftCircleOnTrackUniversalTool.cxx index c0075098ef2aea46b38b0c3ab49be8a2fbc34dc7..44386a14493a24fe6d4d2da1cb5c55ea069f2f79 100755 --- a/InnerDetector/InDetRecTools/TRT_DriftCircleOnTrackTool/src/TRT_DriftCircleOnTrackUniversalTool.cxx +++ b/InnerDetector/InDetRecTools/TRT_DriftCircleOnTrackTool/src/TRT_DriftCircleOnTrackUniversalTool.cxx @@ -21,13 +21,9 @@ InDet::TRT_DriftCircleOnTrackUniversalTool::TRT_DriftCircleOnTrackUniversalTool (const std::string& ty,const std::string& na,const IInterface* pa) : AthAlgTool(ty,na,pa), - m_riontrackDrift("InDet::TRT_DriftCircleOnTrackTool/TRT_DriftCircleOnTrackTool" ), - m_riontrackTube("InDet::TRT_DriftCircleOnTrackNoDriftTimeTool/TRT_DriftCircleOnTrackNoDriftTimeTool"), m_scalefactor(2.) { declareInterface<IRIO_OnTrackCreator>(this); - declareProperty("RIOonTrackToolDrift" ,m_riontrackDrift ); - declareProperty("RIOonTrackToolTube" ,m_riontrackTube ); declareProperty("ScaleHitUncertainty" ,m_scalefactor ); } diff --git a/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_DAF/TRT_TrackExtensionTool_DAF/TRT_TrackExtensionTool_DAF.h b/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_DAF/TRT_TrackExtensionTool_DAF/TRT_TrackExtensionTool_DAF.h index e988846479d25a5b257679635c958406b43b7c3e..c0c7c3a83e5e9d5ad8dc370ed44d2efc71d1b201 100755 --- a/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_DAF/TRT_TrackExtensionTool_DAF/TRT_TrackExtensionTool_DAF.h +++ b/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_DAF/TRT_TrackExtensionTool_DAF/TRT_TrackExtensionTool_DAF.h @@ -32,18 +32,19 @@ #include "MagFieldConditions/AtlasFieldCacheCondObj.h" #include "MagFieldElements/AtlasFieldCache.h" +// tools: +#include "TrkExInterfaces/IPropagator.h" +#include "InDetRecToolInterfaces/ITRT_DetElementsRoadMaker.h" +#include "InDetCompetingRIOsOnTrackTool/ICompetingTRT_DriftCirclesOnTrackCreator.h" + class MsgStream; class TRT_ID; namespace Trk { class Surface; - //class MagneticFieldProperties; - class IPropagator; } namespace InDet { - class ITRT_DetElementsRoadMaker; - class ICompetingTRT_DriftCirclesOnTrackCreator; /** @class TRT_TrackExtensionTool_DAF @@ -141,12 +142,24 @@ protected: /////////////////////////////////////////// // the different tools and their jobOptions /////////////////////////////////////////// - ToolHandle< InDet::ICompetingTRT_DriftCirclesOnTrackCreator > m_compROTcreator; //!< the instance of the CompetingTRT_DriftCirclesOnTrackCreator tool + ToolHandle< InDet::ICompetingTRT_DriftCirclesOnTrackCreator > m_compROTcreator + {this, + "CompetingDriftCircleTool", + "InDet::CompetingTRT_DriftCirclesOnTrackTool/CompetingTRT_DriftCirclesOnTrackTool", + "Tool for the creation of CompetingTRT_DriftCirclesOnTrack"}; //!< the instance of the CompetingTRT_DriftCirclesOnTrackCreator tool double m_jo_annealingFactor; //!< jobOption: The annealing factor used for Trk::CompetingRIOsOnTrack creation - ToolHandle< InDet::ITRT_DetElementsRoadMaker > m_roadtool; //!< instance of the TRT road maker tool - - ToolHandle< Trk::IPropagator > m_propagator; //!< the Propagator tool + ToolHandle< InDet::ITRT_DetElementsRoadMaker > m_roadtool + {this, + "RoadTool", + "InDet::TRT_DetElementsRoadMaker_xk/TRT_DetElementsRoadMaker", + "TRT Road Tool for the search of Detector Elements"}; //!< instance of the TRT road maker tool + + PublicToolHandle< Trk::IPropagator > m_propagator + {this, + "PropagatorTool", + "Trk::RungeKuttaPropagator/Propagator", + "Propagator tool"}; //!< the Propagator tool SG::ReadCondHandleKey<AtlasFieldCacheCondObj> m_fieldCondObjInputKey {this, "AtlasFieldCacheCondObj", "fieldCondObj", "Name of the Magnetic Field conditions object key"}; diff --git a/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_DAF/src/TRT_TrackExtensionTool_DAF.cxx b/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_DAF/src/TRT_TrackExtensionTool_DAF.cxx index 6c3f92550a6d76ae463f07d0dca4b21aeaebc61c..1a1bd2c32b1a29d2388f5de1907b13db6b68f8e2 100755 --- a/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_DAF/src/TRT_TrackExtensionTool_DAF.cxx +++ b/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_DAF/src/TRT_TrackExtensionTool_DAF.cxx @@ -14,12 +14,6 @@ #include "TrkParameters/TrackParameters.h" -// tools: -#include "TrkToolInterfaces/IRIO_OnTrackCreator.h" -#include "TrkExInterfaces/IPropagator.h" -#include "InDetRecToolInterfaces/ITRT_DetElementsRoadMaker.h" -#include "InDetCompetingRIOsOnTrackTool/ICompetingTRT_DriftCirclesOnTrackCreator.h" - #include "TrkTrack/Track.h" #include "TrkMeasurementBase/MeasurementBase.h" @@ -56,10 +50,7 @@ InDet::TRT_TrackExtensionTool_DAF::TRT_TrackExtensionTool_DAF m_jo_simpleExtension(true), m_jo_maxGroupDistance(5.), m_jo_minGroupDistance(1.), - m_compROTcreator("InDet::CompetingTRT_DriftCirclesOnTrackTool/CompetingTRT_DriftCirclesOnTrackTool"), m_jo_annealingFactor(81.), - m_roadtool("InDet::TRT_DetElementsRoadMaker_xk/TRT_DetElementsRoadMaker"), - m_propagator("Trk::RungeKuttaPropagator/Propagator"), m_fieldmode("MapSolenoid"), m_trtID(nullptr) { @@ -67,9 +58,6 @@ InDet::TRT_TrackExtensionTool_DAF::TRT_TrackExtensionTool_DAF declareInterface<ITRT_TrackExtensionTool>(this); declareProperty("MagneticFieldMode", m_fieldmode, "field mode of the field tool"); - declareProperty("PropagatorTool", m_propagator, "Propagator tool"); - declareProperty("CompetingDriftCircleTool", m_compROTcreator, "Tool for the creation of CompetingTRT_DriftCirclesOnTrack"); - declareProperty("RoadTool", m_roadtool, "TRT Road Tool for the search of Detector Elements"); declareProperty("TRT_DriftCircleContainer", m_jo_trtcontainername, "Name of the container of TRT measurements (TRT_DriftCircles)"); declareProperty("InitialAnnealingFactor", m_jo_annealingFactor, "Annealing factor (temperature) used to calculate the initial assignment probabilities of a group of competing TRT measurements. Should be choosen identical to the first entry of the annealing schedule of the Deterministic Annealing Filter"); declareProperty("SimpleElementWiseExtension", m_jo_simpleExtension, "Do simple element wise extension or do sophisticated grouping of measurements?"); diff --git a/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_xk/TRT_TrackExtensionTool_xk/TRT_TrackExtensionToolCosmics.h b/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_xk/TRT_TrackExtensionTool_xk/TRT_TrackExtensionToolCosmics.h index f55246aad26cfc05b55fe29b6a2314e0ee2fb3a1..fc3d082fb553fa955ac9296399e430235815b1e5 100755 --- a/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_xk/TRT_TrackExtensionTool_xk/TRT_TrackExtensionToolCosmics.h +++ b/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_xk/TRT_TrackExtensionTool_xk/TRT_TrackExtensionToolCosmics.h @@ -22,6 +22,8 @@ #include "InDetRecToolInterfaces/ITRT_TrackExtensionTool.h" #include "InDetPrepRawData/TRT_DriftCircleContainer.h" #include "TrkEventUtils/EventDataBase.h" +#include "TrkExInterfaces/IPropagator.h" +#include "TrkExInterfaces/IExtrapolator.h" #include "StoreGate/ReadHandleKey.h" #include <iosfwd> @@ -33,10 +35,7 @@ class AtlasDetectorID; class PropDirection; namespace Trk{ - class Surface; - class IExtrapolator; - class IPropagator; } namespace InDet { @@ -106,10 +105,14 @@ namespace InDet { // Protected Data /////////////////////////////////////////////////////////////////// - ToolHandle<Trk::IExtrapolator> m_extrapolator; - ToolHandle<Trk::IPropagator> m_propagator ; - ToolHandle<Trk::IRIO_OnTrackCreator> m_riontrackD ; // - ToolHandle<Trk::IRIO_OnTrackCreator> m_riontrackN ; // + PublicToolHandle<Trk::IExtrapolator> m_extrapolator + {this, "Extrapolator", "Trk::Extrapolator/InDetExtrapolator"}; + PublicToolHandle<Trk::IPropagator> m_propagator + {this, "Propagator", "Trk::RungeKuttaPropagator"}; + ToolHandle<Trk::IRIO_OnTrackCreator> m_riontrackD + {this, "RIOonTrackToolYesDr", "InDet::TRT_DriftCircleOnTrackTool/TRT_DriftCircleOnTrackToolUniversal"}; + ToolHandle<Trk::IRIO_OnTrackCreator> m_riontrackN + {this, "RIOonTrackToolNoDr", "InDet::TRT_DriftCircleOnTrackNoDriftTimeTool/TRT_DriftCircleOnTrackNoDriftTimeTool"}; // int m_outputlevel{} ; // Print level int m_nprint{} ; // Kind of print diff --git a/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_xk/TRT_TrackExtensionTool_xk/TRT_TrackExtensionTool_xk.h b/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_xk/TRT_TrackExtensionTool_xk/TRT_TrackExtensionTool_xk.h index c82fce24f67a8e18d8b605b77e67f6d73807125b..5f2c6276bbeca31cfedba038f78593bce11634df 100755 --- a/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_xk/TRT_TrackExtensionTool_xk/TRT_TrackExtensionTool_xk.h +++ b/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_xk/TRT_TrackExtensionTool_xk/TRT_TrackExtensionTool_xk.h @@ -21,6 +21,8 @@ #include "GaudiKernel/ToolHandle.h" #include "AthenaBaseComps/AthAlgTool.h" #include "InDetRecToolInterfaces/ITRT_TrackExtensionTool.h" +#include "InDetRecToolInterfaces/ITrtDriftCircleCutTool.h" +#include "InDetRecToolInterfaces/ITRT_DetElementsRoadMaker.h" #include "TrkEventUtils/EventDataBase.h" #include "TRT_TrackExtensionTool_xk/TRT_Trajectory_xk.h" #include "InDetPrepRawData/TRT_DriftCircleContainer.h" @@ -37,9 +39,6 @@ class TRT_ID; namespace InDet{ - class ITrtDriftCircleCutTool; - class ITRT_DetElementsRoadMaker; - /** @class TRT_TrackExtensionTool_xk @@ -119,12 +118,18 @@ namespace InDet{ /////////////////////////////////////////////////////////////////// const TRT_ID *m_trtid{}; - ToolHandle<ITRT_DetElementsRoadMaker> m_roadtool ; // TRT road maker tool - ToolHandle<Trk::IPatternParametersPropagator> m_proptool ; // - ToolHandle<Trk::IPatternParametersUpdator> m_updatortool; // - ToolHandle<ITrtDriftCircleCutTool> m_selectortool;// Segment selector tool - ToolHandle<Trk::IRIO_OnTrackCreator> m_riontrackD ; // - ToolHandle<Trk::IRIO_OnTrackCreator> m_riontrackN ; // + ToolHandle<ITRT_DetElementsRoadMaker> m_roadtool + {this, "RoadTool", "InDet::TRT_DetElementsRoadMaker_xk"}; // TRT road maker tool + PublicToolHandle<Trk::IPatternParametersPropagator> m_proptool + {this, "PropagatorTool", "Trk::RungeKuttaPropagator"}; + PublicToolHandle<Trk::IPatternParametersUpdator> m_updatortool + {this, "UpdatorTool", "Trk::KalmanUpdator_xk"}; + PublicToolHandle<ITrtDriftCircleCutTool> m_selectortool + {this, "DriftCircleCutTool", "InDet::InDetTrtDriftCircleCutTool"};// Segment selector tool + ToolHandle<Trk::IRIO_OnTrackCreator> m_riontrackD + {this, "RIOonTrackToolYesDr", "InDet::TRT_DriftCircleOnTrackTool/TRT_DriftCircleOnTrackTool"}; + ToolHandle<Trk::IRIO_OnTrackCreator> m_riontrackN + {this, "RIOonTrackToolNoDr", "InDet::TRT_DriftCircleOnTrackNoDriftTimeTool/TRT_DriftCircleOnTrackNoDriftTimeTool"}; SG::ReadCondHandleKey<AtlasFieldCacheCondObj> m_fieldCondObjInputKey {this, "AtlasFieldCacheCondObj", "fieldCondObj", "Name of the Magnetic Field conditions object key"}; diff --git a/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_xk/src/TRT_TrackExtensionToolCosmics.cxx b/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_xk/src/TRT_TrackExtensionToolCosmics.cxx index b0f3d03bc1943529ec8fe5e5571b377e3ec7f73c..6a6398a1b2de9e65ed3b65a5f2ddbc4f1b6f747f 100755 --- a/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_xk/src/TRT_TrackExtensionToolCosmics.cxx +++ b/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_xk/src/TRT_TrackExtensionToolCosmics.cxx @@ -14,8 +14,6 @@ #include "TrkToolInterfaces/IRIO_OnTrackCreator.h" #include "TRT_TrackExtensionTool_xk/TRT_TrackExtensionToolCosmics.h" -#include "TrkExInterfaces/IExtrapolator.h" -#include "TrkExInterfaces/IPropagator.h" #include "TrkSurfaces/CylinderSurface.h" #include "TrkSurfaces/DiscSurface.h" #include "TrkRIO_OnTrack/RIO_OnTrack.h" @@ -32,9 +30,7 @@ InDet::TRT_TrackExtensionToolCosmics::TRT_TrackExtensionToolCosmics (const std::string& t,const std::string& n,const IInterface* p) - : AthAlgTool(t,n,p), - m_riontrackD("InDet::TRT_DriftCircleOnTrackTool/TRT_DriftCircleOnTrackToolUniversal" ), - m_riontrackN("InDet::TRT_DriftCircleOnTrackNoDriftTimeTool/TRT_DriftCircleOnTrackNoDriftTimeTool") + : AthAlgTool(t,n,p) { m_trtmanager = "TRT" ; m_minNumberDCs = 9 ; @@ -43,11 +39,6 @@ InDet::TRT_TrackExtensionToolCosmics::TRT_TrackExtensionToolCosmics declareInterface<ITRT_TrackExtensionTool>(this); - declareProperty("RIOonTrackToolYesDr" ,m_riontrackD ); - declareProperty("RIOonTrackToolNoDr" ,m_riontrackN ); - declareProperty("Extrapolator" ,m_extrapolator ); - declareProperty("Propagator" ,m_propagator ); - declareProperty("TrtManagerLocation" ,m_trtmanager ); declareProperty("RoadWidth" ,m_roadwidth ); declareProperty("BoundaryLocZTolerance",m_roadwidth_locz ); diff --git a/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_xk/src/TRT_TrackExtensionTool_xk.cxx b/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_xk/src/TRT_TrackExtensionTool_xk.cxx index df6e5113a0e167d61f5767820b46cb13f3d35c08..725348f72874ac6d0e74bc75586c47f8c3d9e0fc 100755 --- a/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_xk/src/TRT_TrackExtensionTool_xk.cxx +++ b/InnerDetector/InDetRecTools/TRT_TrackExtensionTool_xk/src/TRT_TrackExtensionTool_xk.cxx @@ -13,9 +13,7 @@ #include "AthenaPoolUtilities/CondAttrListCollection.h" -#include "InDetRecToolInterfaces/ITRT_DetElementsRoadMaker.h" #include "TRT_TrackExtensionTool_xk/TRT_TrackExtensionTool_xk.h" -#include "InDetRecToolInterfaces/ITrtDriftCircleCutTool.h" #include "TrkRIO_OnTrack/RIO_OnTrack.h" #include "InDetPrepRawData/SCT_Cluster.h" #include "TrkTrack/Track.h" @@ -46,13 +44,7 @@ namespace{ InDet::TRT_TrackExtensionTool_xk::TRT_TrackExtensionTool_xk (const std::string& t,const std::string& n,const IInterface* p) - : AthAlgTool(t,n,p), - m_roadtool ("InDet::TRT_DetElementsRoadMaker_xk" ), - m_proptool ("Trk::RungeKuttaPropagator" ), - m_updatortool ("Trk::KalmanUpdator_xk" ), - m_selectortool("InDet::InDetTrtDriftCircleCutTool" ), - m_riontrackD("InDet::TRT_DriftCircleOnTrackTool/TRT_DriftCircleOnTrackTool" ), - m_riontrackN("InDet::TRT_DriftCircleOnTrackNoDriftTimeTool/TRT_DriftCircleOnTrackNoDriftTimeTool") + : AthAlgTool(t,n,p) { m_fieldmode = "MapSolenoid" ; m_trtmanager = "TRT" ; @@ -68,12 +60,6 @@ InDet::TRT_TrackExtensionTool_xk::TRT_TrackExtensionTool_xk m_parameterization= true ; m_scale_error = 2. ; declareInterface<ITRT_TrackExtensionTool>(this); - declareProperty("RoadTool" ,m_roadtool ); - declareProperty("PropagatorTool" ,m_proptool ); - declareProperty("UpdatorTool" ,m_updatortool ); - declareProperty("DriftCircleCutTool" ,m_selectortool ); - declareProperty("RIOonTrackToolYesDr" ,m_riontrackD ); - declareProperty("RIOonTrackToolNoDr" ,m_riontrackN ); declareProperty("TrtManagerLocation" ,m_trtmanager ); declareProperty("RoadWidth" ,m_roadwidth ); declareProperty("ZVertexHalfWidth" ,m_zVertexWidth ); diff --git a/Tracking/TrkAlgorithms/TrkTruthAlgs/TrkTruthAlgs/TrackTruthSimilaritySelector.h b/Tracking/TrkAlgorithms/TrkTruthAlgs/TrkTruthAlgs/TrackTruthSimilaritySelector.h index 957e20d582489c0d65290b1c43050a082648caaf..02365722cb116204793ee1c14dbb72fb3bbd2114 100644 --- a/Tracking/TrkAlgorithms/TrkTruthAlgs/TrkTruthAlgs/TrackTruthSimilaritySelector.h +++ b/Tracking/TrkAlgorithms/TrkTruthAlgs/TrkTruthAlgs/TrackTruthSimilaritySelector.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration */ #ifndef TRACKTRUTHSIMILARITYSELECTOR_H @@ -30,7 +30,8 @@ private: SG::WriteHandle<TrackTruthCollection> m_out; //std::string m_outputName; // Match quality tool - ToolHandle<Trk::IDetailedTrackTruthSimilarity> m_matchTool; + ToolHandle<Trk::IDetailedTrackTruthSimilarity> m_matchTool + {this, "TrackTruthSimilarityTool", "Trk::TruthMatchRatio", "Track-truth similarity tool"}; void fillOutput(TrackTruthCollection *out, const DetailedTrackTruthCollection *in); }; diff --git a/Tracking/TrkAlgorithms/TrkTruthAlgs/src/TrackTruthSimilaritySelector.cxx b/Tracking/TrkAlgorithms/TrkTruthAlgs/src/TrackTruthSimilaritySelector.cxx index 5ff36fefd34052b79bb9de3356a2668fe5903874..10697a6392c2016dae78da8284cb7d1132f4e381 100644 --- a/Tracking/TrkAlgorithms/TrkTruthAlgs/src/TrackTruthSimilaritySelector.cxx +++ b/Tracking/TrkAlgorithms/TrkTruthAlgs/src/TrackTruthSimilaritySelector.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration */ #include <memory> @@ -12,9 +12,7 @@ TrackTruthSimilaritySelector::TrackTruthSimilaritySelector(const std::string &name,ISvcLocator *pSvcLocator) : AthAlgorithm(name,pSvcLocator), m_detailed("DetailedTrackTruth"), m_out("TrackTruthNew") - , m_matchTool("Trk::TruthMatchRatio") { - declareProperty("TrackTruthSimilarityTool", m_matchTool, "Track-truth similarity tool"); declareProperty("DetailedTrackTruthName", m_detailed); declareProperty("OutputName", m_out); } diff --git a/Tracking/TrkFitter/TrkKalmanFitter/TrkKalmanFitter/KalmanFitter.h b/Tracking/TrkFitter/TrkKalmanFitter/TrkKalmanFitter/KalmanFitter.h index 91a6991ce9acf49c6e38c92d7109b3714ad74daf..dcbbdf3fb7e7cd9e87dcd4e23e9f95dd72c5c75f 100755 --- a/Tracking/TrkFitter/TrkKalmanFitter/TrkKalmanFitter/KalmanFitter.h +++ b/Tracking/TrkFitter/TrkKalmanFitter/TrkKalmanFitter/KalmanFitter.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration */ ////////////////////////////////////////////////////////////////// @@ -33,6 +33,13 @@ #include "TrkFitterInterfaces/ITrackBreakpointAnalyser.h" #include "TrkFitterInterfaces/IKalmanPiecewiseAnnealingFilter.h" +#include "TrkValInterfaces/IValidationNtupleTool.h" +#include "TrkDetDescrInterfaces/IAlignableSurfaceProvider.h" +#include "TrkExInterfaces/IExtrapolator.h" +#include "TrkToolInterfaces/IRIO_OnTrackCreator.h" +#include "TrkToolInterfaces/IUpdator.h" +#include "TrkFitterInterfaces/IMeasurementRecalibrator.h" + #include "GeoPrimitives/GeoPrimitives.h" #include <array> #include <memory> @@ -46,14 +53,7 @@ namespace Trk { class PerigeeSurface; class FitQuality; - class IValidationNtupleTool; // validation tool to write intermediate results to ntuple - class IAlignableSurfaceProvider; // tool to enable Kalman-alignment - - class IExtrapolator; // Extrapolation Tool - class IUpdator; // If class for Estimator updating - class IRIO_OnTrackCreator; // Interface for creation of ROT class ProtoTrajectoryUtility; // helper to analyse current trajectory - class IMeasurementRecalibrator;// steering if and which ROTs to re-do class TrackFitInputPreparator; // helper to fill internal trajectories typedef std::vector<Trk::ProtoTrackStateOnSurface> Trajectory; typedef DataVector<const TrackStateOnSurface>::const_iterator TS_iterator; @@ -201,31 +201,44 @@ private: mutable MsgStream m_log; //!< msgstream as private member (-> speed) //! extrapolation tool: does propagation and applies material effects - ToolHandle< IExtrapolator > m_extrapolator; + PublicToolHandle< IExtrapolator > m_extrapolator + {this, "ExtrapolatorHandle", "Trk::Extrapolator/AtlasExtrapolator", "Extrapolation tool for transporting track pars and handling material effects"}; //! measurement updator: implements the Kalman filtering formulae - ToolHandle< IUpdator > m_updator; + ToolHandle< IUpdator > m_updator + {this, "MeasurementUpdatorHandle", "Trk::KalmanUpdator/KalmanUpdator", "Tool to perform measurement update and chi2 calculation"}; //! Trk::RIO_OnTrack creation: re-calibrates hits (special interface/option only) - ToolHandle< IRIO_OnTrackCreator > m_ROTcreator; + ToolHandle< IRIO_OnTrackCreator > m_ROTcreator + {this, "RIO_OnTrackCreatorHandle", "Trk::RIO_OnTrackCreator/RIO_OnTrackCreator", "Tool to create RIO_OnTrack out of PrepRawData input"}; //! dynamic noise adjustment tool: adds momentum noise for electron brem - ToolHandle< IDynamicNoiseAdjustor > m_dynamicNoiseAdjustor; + ToolHandle< IDynamicNoiseAdjustor > m_dynamicNoiseAdjustor + {this, "DynamicNoiseAdjustorHandle", "", "Tool to handle brem as dynamically adjusted q/p noise"}; //! dynamic noise adjustment tool: confirm brem breakpoint or not - ToolHandle< ITrackBreakpointAnalyser > m_brempointAnalyser; + ToolHandle< ITrackBreakpointAnalyser > m_brempointAnalyser + {this, "BrempointAnalyserHandle", "", "Tool to confirm if DNA activity is due to brem or not"}; //! tool to extend KF to be Kalman-Alignment-Fitter - ToolHandle< IAlignableSurfaceProvider > m_alignableSfProvider; + ToolHandle< IAlignableSurfaceProvider > m_alignableSfProvider + {this, "AlignableSurfaceProviderHandle", "", "Tool to replace measurement surface by an alignable one"}; //! tool to remake ROTs if configured - ToolHandle< IMeasurementRecalibrator > m_recalibrator; + ToolHandle< IMeasurementRecalibrator > m_recalibrator + {this, "RecalibratorHandle", ""}; //! tool to do L/R driftcircle solving - ToolHandle< IKalmanPiecewiseAnnealingFilter > m_internalDAF; + ToolHandle< IKalmanPiecewiseAnnealingFilter > m_internalDAF + {this, "InternalDAFHandle", ""}; //! forward filtering tool: code structuring - ToolHandle< IForwardKalmanFitter > m_forwardFitter; + ToolHandle< IForwardKalmanFitter > m_forwardFitter + {this, "ForwardKalmanFitterHandle", "Trk::ForwardKalmanFitter/FKF", "Tool for running the forward filter along the internal trajectory"}; //! backward filtering and smoothing tool: code structuring - ToolHandle< IKalmanSmoother > m_smoother; + ToolHandle< IKalmanSmoother > m_smoother + {this, "KalmanSmootherHandle", "Trk::KalmanSmoother/BKS", "Tool for performing the backward smoothing on the internal trajectory"}; //! outlier logic tool: track quality and cleaning - ToolHandle< IKalmanOutlierLogic > m_outlierLogic; + ToolHandle< IKalmanOutlierLogic > m_outlierLogic + {this, "KalmanOutlierLogicHandle", "Trk::KalmanOutlierLogic/KOL", "Tool for fit quality analysis and outlier flagging"}; //! outlier logic tool: outlier recovery and tuning - ToolHandle< IKalmanOutlierLogic > m_outlierRecovery; + ToolHandle< IKalmanOutlierLogic > m_outlierRecovery + {this, "KalmanOutlierRecoveryHandle", "Trk::KalmanOutlierRecovery_InDet/KOL_RecoveryID", "Tool for fit quality analysis and outlier recovery"}; //! performance/error validation tool - ToolHandle< IValidationNtupleTool > m_FitterValidationTool; + ToolHandle< IValidationNtupleTool > m_FitterValidationTool + {this, "FitterValidationToolHandle", "", "Tool for fitter validation (writes intermediate results to ntuple)"}; // the settable job options bool m_option_enforceSorting; diff --git a/Tracking/TrkFitter/TrkKalmanFitter/TrkKalmanFitter/MeasRecalibSteeringTool.h b/Tracking/TrkFitter/TrkKalmanFitter/TrkKalmanFitter/MeasRecalibSteeringTool.h index 79f3dea90b3722d13e1aca88f92ed73b7238f7b7..a5b9255441eda4a9d5e6d690b5c1e96bd8edcbb9 100644 --- a/Tracking/TrkFitter/TrkKalmanFitter/TrkKalmanFitter/MeasRecalibSteeringTool.h +++ b/Tracking/TrkFitter/TrkKalmanFitter/TrkKalmanFitter/MeasRecalibSteeringTool.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration */ /////////////////////////////////////////////////////////////////// @@ -13,6 +13,7 @@ #include "GaudiKernel/ToolHandle.h" #include "TrkFitterInterfaces/IMeasurementRecalibrator.h" #include "TrkParameters/TrackParameters.h" +#include "TrkToolInterfaces/IRIO_OnTrackCreator.h" namespace Trk { @@ -20,7 +21,6 @@ namespace Trk class MeasurementBase; class RIO_OnTrack; class MeasurementTypeID; - class IRIO_OnTrackCreator; /** @class MeasRecalibSteeringTool @brief tool to repeat the calibration PrepRawData to RIO_OnTrack on an @@ -59,13 +59,17 @@ namespace Trk private: // tool handles for a whole zoo of ROT creators - ToolHandle< IRIO_OnTrackCreator > m_rotCreator; - ToolHandle< IRIO_OnTrackCreator > m_broadPixelClusterCreator; - ToolHandle< IRIO_OnTrackCreator > m_broadSctClusterCreator; - ToolHandle< IRIO_OnTrackCreator > m_trtDriftCircleCreator; - ToolHandle< IRIO_OnTrackCreator > m_trtTubeHitCreator; + ToolHandle< IRIO_OnTrackCreator > m_rotCreator + {this, "CommonRotCreator", "Trk::RIO_OnTrackCreator/InDetRefitRotCreator"}; + ToolHandle< IRIO_OnTrackCreator > m_broadPixelClusterCreator + {this, "BroadPixelClusterOnTrackTool", "InDet::PixelClusterOnTrackTool/InDetBroadPixelClusterOnTrackTool"}; + ToolHandle< IRIO_OnTrackCreator > m_broadSctClusterCreator + {this, "BroadSCT_ClusterOnTrackTool", "InDet::SCT_ClusterOnTrackTool/InDetBroadSCT_ClusterOnTrackTool"}; + ToolHandle< IRIO_OnTrackCreator > m_trtDriftCircleCreator + {this, "TRT_DriftCircleOnTrackTool", "InDet::TRT_DriftCircleOnTrackTool/TRT_DriftCircleOnTrackTool"}; + ToolHandle< IRIO_OnTrackCreator > m_trtTubeHitCreator + {this, "TRT_StrawTubeOnTrackTool", "InDet::TRT_DriftCircleOnTrackNoDriftTimeTool/TRT_StrawTubeOnTrackTool"}; bool m_haveInDetTools; - //bool m_haveMuonTools; //! Helper to detect type of sub-detector const AtlasDetectorID* m_idHelper; diff --git a/Tracking/TrkFitter/TrkKalmanFitter/src/KalmanFitter.cxx b/Tracking/TrkFitter/TrkKalmanFitter/src/KalmanFitter.cxx index 8e789008fccea0e364bbc305843195c710154cb9..0e3c49736f9e2edcad640ed077833cc404bab4df 100755 --- a/Tracking/TrkFitter/TrkKalmanFitter/src/KalmanFitter.cxx +++ b/Tracking/TrkFitter/TrkKalmanFitter/src/KalmanFitter.cxx @@ -27,12 +27,6 @@ #include "TrkTrack/TrackInfo.h" #include "TrkParameters/TrackParameters.h" -#include "TrkValInterfaces/IValidationNtupleTool.h" -#include "TrkDetDescrInterfaces/IAlignableSurfaceProvider.h" -#include "TrkExInterfaces/IExtrapolator.h" -#include "TrkToolInterfaces/IRIO_OnTrackCreator.h" -#include "TrkToolInterfaces/IUpdator.h" -#include "TrkFitterInterfaces/IMeasurementRecalibrator.h" #include "TrkEventUtils/PrepRawDataComparisonFunction.h" #include "TrkEventUtils/MeasurementBaseComparisonFunction.h" #include "TrkEventUtils/IdentifierExtractor.h" @@ -52,19 +46,6 @@ Trk::KalmanFitter::KalmanFitter(const std::string& t,const std::string& n, const IInterface* p) : AthAlgTool (t,n,p), m_log(msgSvc(), n), - m_extrapolator("Trk::Extrapolator/AtlasExtrapolator"), - m_updator("Trk::KalmanUpdator/KalmanUpdator"), - m_ROTcreator("Trk::RIO_OnTrackCreator/RIO_OnTrackCreator"), - m_dynamicNoiseAdjustor(""), - m_brempointAnalyser(""), - m_alignableSfProvider(""), - m_recalibrator(""), - m_internalDAF(), // or "Trk::KalmanPiecewiseAnnealingFilter/KalmanInternalDAF" - m_forwardFitter("Trk::ForwardKalmanFitter/FKF"), - m_smoother("Trk::KalmanSmoother/BKS"), - m_outlierLogic("Trk::KalmanOutlierLogic/KOL"), - m_outlierRecovery("Trk::KalmanOutlierRecovery_InDet/KOL_RecoveryID"), - m_FitterValidationTool(""), m_option_callValidationToolForFailedFitsOnly(false), m_option_sortingRefPoint{0.,0.,0.}, m_callValidationTool(false), @@ -85,32 +66,6 @@ Trk::KalmanFitter::KalmanFitter(const std::string& t,const std::string& n, m_trajectory.reserve(100); - // --- tools used by KalmanFitter, passed as ToolHandles - declareProperty("ExtrapolatorHandle",m_extrapolator, - "Extrapolation tool for transporting track pars and handling material effects"); - declareProperty("RIO_OnTrackCreatorHandle",m_ROTcreator, - "Tool to create RIO_OnTrack out of PrepRawData input"); - declareProperty("MeasurementUpdatorHandle",m_updator, - "Tool to perform measurement update and chi2 calculation"); - declareProperty("DynamicNoiseAdjustorHandle",m_dynamicNoiseAdjustor, - "Tool to handle brem as dynamically adjusted q/p noise"); - declareProperty("BrempointAnalyserHandle",m_brempointAnalyser, - "Tool to confirm if DNA activity is due to brem or not"); - declareProperty("AlignableSurfaceProviderHandle",m_alignableSfProvider, - "Tool to replace measurement surface by an alignable one"); - declareProperty("RecalibratorHandle", m_recalibrator); - declareProperty("InternalDAFHandle", m_internalDAF); - declareProperty("ForwardKalmanFitterHandle",m_forwardFitter, - "Tool for running the forward filter along the internal trajectory"); - declareProperty("KalmanSmootherHandle",m_smoother, - "Tool for performing the backward smoothing on the internal trajectory"); - declareProperty("KalmanOutlierLogicHandle",m_outlierLogic, - "Tool for fit quality analysis and outlier flagging"); - declareProperty("KalmanOutlierRecoveryHandle",m_outlierRecovery, - "Tool for fit quality analysis and outlier recovery"); - declareProperty("FitterValidationToolHandle", m_FitterValidationTool, - "Tool for fitter validation (writes intermediate results to ntuple)"); - // -- job options - do NOT modify defaults to achieve detector-specific tuning! declareProperty("DoDNAForElectronsOnly",m_doDNAForElectronsOnly, "for new ID bremfit: DNA active only for tracks with particleHypothesis electron"); diff --git a/Tracking/TrkFitter/TrkKalmanFitter/src/MeasRecalibSteeringTool.cxx b/Tracking/TrkFitter/TrkKalmanFitter/src/MeasRecalibSteeringTool.cxx index 85ae0bd130a3196594e86f975e59a1ac2c8d8102..c6e29b85d285c365352961a5e0f65da722d47bab 100644 --- a/Tracking/TrkFitter/TrkKalmanFitter/src/MeasRecalibSteeringTool.cxx +++ b/Tracking/TrkFitter/TrkKalmanFitter/src/MeasRecalibSteeringTool.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration */ /////////////////////////////////////////////////////////////////// @@ -14,7 +14,6 @@ #include "TrkEventUtils/RoT_Extractor.h" #include "TrkEventUtils/MeasurementTypeID.h" #include "TrkMeasurementBase/MeasurementBase.h" -#include "TrkToolInterfaces/IRIO_OnTrackCreator.h" using namespace Trk; using namespace Trk::TrackState; @@ -26,24 +25,11 @@ Trk::MeasRecalibSteeringTool::MeasRecalibSteeringTool(const std::string& t, const IInterface* p ) : AthAlgTool(t,n,p), - m_rotCreator("Trk::RIO_OnTrackCreator/InDetRefitRotCreator"), - m_broadPixelClusterCreator("InDet::PixelClusterOnTrackTool/InDetBroadPixelClusterOnTrackTool"), - m_broadSctClusterCreator("InDet::SCT_ClusterOnTrackTool/InDetBroadSCT_ClusterOnTrackTool"), - m_trtDriftCircleCreator("InDet::TRT_DriftCircleOnTrackTool/TRT_DriftCircleOnTrackTool"), - m_trtTubeHitCreator("InDet::TRT_DriftCircleOnTrackNoDriftTimeTool/TRT_StrawTubeOnTrackTool"), m_haveInDetTools(true), - //m_haveMuonTools(false), m_idHelper(nullptr), m_mbHelper(nullptr) { declareInterface<IMeasurementRecalibrator>(this); - - // template for property decalration - declareProperty("CommonRotCreator", m_rotCreator); - declareProperty("BroadPixelClusterOnTrackTool", m_broadPixelClusterCreator); - declareProperty("BroadSCT_ClusterOnTrackTool", m_broadSctClusterCreator); - declareProperty("TRT_DriftCircleOnTrackTool", m_trtDriftCircleCreator); - declareProperty("TRT_StrawTubeOnTrackTool", m_trtTubeHitCreator); } //================ Destructor ================================================= diff --git a/Tracking/TrkTools/TrkAmbiguityProcessor/src/AmbiguityProcessorBase.cxx b/Tracking/TrkTools/TrkAmbiguityProcessor/src/AmbiguityProcessorBase.cxx index fbe5865e984901d6c438d8ca51b357184e3453c4..55430402faf9628e76a92cc1541f32a193c89294 100644 --- a/Tracking/TrkTools/TrkAmbiguityProcessor/src/AmbiguityProcessorBase.cxx +++ b/Tracking/TrkTools/TrkAmbiguityProcessor/src/AmbiguityProcessorBase.cxx @@ -1,9 +1,8 @@ /* - Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration */ #include "AmbiguityProcessorBase.h" -#include "TrackScoringTool.h" #include "AmbiguityProcessorUtility.h" #include "GaudiKernel/ToolVisitor.h" @@ -13,8 +12,7 @@ namespace Trk { AmbiguityProcessorBase::AmbiguityProcessorBase(const std::string& t, const std::string& n, const IInterface* p ): AthAlgTool(t,n,p), m_etaBounds{0.8, 1.6, 2.5, 4.0}, - m_stat(m_etaBounds), - m_scoringTool("Trk::TrackScoringTool/TrackScoringTool"){ + m_stat(m_etaBounds){ declareProperty("ObserverTool", m_observerTool, "track observer tool"); } // diff --git a/Tracking/TrkTools/TrkAmbiguityProcessor/src/AmbiguityProcessorBase.h b/Tracking/TrkTools/TrkAmbiguityProcessor/src/AmbiguityProcessorBase.h index 7598c27a5c2da475da1c00418af018365d8e0668..6985c4200e3a9ffc485d6a37c9f7c7bb9f2d0e51 100644 --- a/Tracking/TrkTools/TrkAmbiguityProcessor/src/AmbiguityProcessorBase.h +++ b/Tracking/TrkTools/TrkAmbiguityProcessor/src/AmbiguityProcessorBase.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration */ #ifndef AmbiguityProcessorBase_h @@ -15,6 +15,7 @@ #include "TrkEventPrimitives/TrackScore.h" #include "TrkEventUtils/ClusterSplitProbabilityContainer.h" #include "TrkValInterfaces/ITrkObserverTool.h" +#include "TrackScoringTool.h" #include "AmbiguityProcessorUtility.h" #include <vector> @@ -26,7 +27,6 @@ namespace Trk { //fwd declare - class ITrackScoringTool; class Track; class PRDtoTrackMap; @@ -126,7 +126,7 @@ namespace Trk { /**Scoring tool This tool is used to 'score' the tracks, i.e. to quantify what a good track is. @todo The actual tool that is used should be configured through job options*/ - ToolHandle<ITrackScoringTool> m_scoringTool; + ToolHandle<ITrackScoringTool> m_scoringTool{this, "ScoringTool", "", "track scoring tool"}; /**Observer tool This tool is used to observe the tracks and their 'score' */ PublicToolHandle<Trk::ITrkObserverTool> m_observerTool{this, "TrackObserverTool", "", "track observer within ambiguity solver"}; ToolHandle<Trk::IExtendedTrackSummaryTool> m_trackSummaryTool{this, "TrackSummaryTool", "InDetTrackSummaryToolNoHoleSearch"}; diff --git a/Tracking/TrkTools/TrkAmbiguityProcessor/src/DenseEnvironmentsAmbiguityProcessorTool.cxx b/Tracking/TrkTools/TrkAmbiguityProcessor/src/DenseEnvironmentsAmbiguityProcessorTool.cxx index d01f2cb8ec9237e6ae9595c4c31dc3ad7ec9bd49..88f0714edea3f2577f4a4f005872e92b6c9ce45e 100644 --- a/Tracking/TrkTools/TrkAmbiguityProcessor/src/DenseEnvironmentsAmbiguityProcessorTool.cxx +++ b/Tracking/TrkTools/TrkAmbiguityProcessor/src/DenseEnvironmentsAmbiguityProcessorTool.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration */ #include "DenseEnvironmentsAmbiguityProcessorTool.h" @@ -39,12 +39,12 @@ Trk::DenseEnvironmentsAmbiguityProcessorTool::checkTrack( const Trk::Track *trac //================================================================================================== Trk::DenseEnvironmentsAmbiguityProcessorTool::DenseEnvironmentsAmbiguityProcessorTool(const std::string& t, - const std::string& n, - const IInterface* p ) + const std::string& n, + const IInterface* p ) : AmbiguityProcessorBase(t,n,p), - m_extrapolatorTool("Trk::Extrapolator/AtlasExtrapolator"), - m_selectionTool("InDet::InDetDenseEnvAmbiTrackSelectionTool/InDetAmbiTrackSelectionTool"){ + m_fitterTool(this), + m_extrapolatorTool("Trk::Extrapolator/AtlasExtrapolator"){ // statitics stuff m_fitterTool.push_back("Trk::KalmanFitter/InDetTrackFitter"); @@ -52,8 +52,6 @@ Trk::DenseEnvironmentsAmbiguityProcessorTool::DenseEnvironmentsAmbiguityProcesso declareInterface<ITrackAmbiguityProcessorTool>(this); declareProperty("RefitPrds" , m_refitPrds = true); // True to allow for updated NN information to be taken into account declareProperty("MatEffects" , m_matEffects = 3); // pion - declareProperty("ScoringTool" , m_scoringTool); - declareProperty("SelectionTool" , m_selectionTool); declareProperty("Fitter" , m_fitterTool ); declareProperty("TrackExtrapolator" , m_extrapolatorTool); declareProperty("SuppressHoleSearch" , m_suppressHoleSearch = false); diff --git a/Tracking/TrkTools/TrkAmbiguityProcessor/src/DenseEnvironmentsAmbiguityProcessorTool.h b/Tracking/TrkTools/TrkAmbiguityProcessor/src/DenseEnvironmentsAmbiguityProcessorTool.h index e656a2e43e6e9d670b10b1a83cd3394d4bca1ee7..e9b51ce2fc162fbaa89f5ac41ece92c37036e4be 100644 --- a/Tracking/TrkTools/TrkAmbiguityProcessor/src/DenseEnvironmentsAmbiguityProcessorTool.h +++ b/Tracking/TrkTools/TrkAmbiguityProcessor/src/DenseEnvironmentsAmbiguityProcessorTool.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration */ #ifndef DenseEnvironmentsAmbiguityProcessorTool_H @@ -105,7 +105,8 @@ namespace Trk { /** selection tool - here the decision which hits remain on a track and which are removed are made */ - ToolHandle<IAmbiTrackSelectionTool> m_selectionTool; + ToolHandle<IAmbiTrackSelectionTool> m_selectionTool + {this, "SelectionTool", "InDet::InDetDenseEnvAmbiTrackSelectionTool/InDetAmbiTrackSelectionTool"}; /**Observer tool This tool is used to observe the tracks and their 'score' */ PublicToolHandle<Trk::ITrkObserverTool> m_observerToolWriter{this, "TrackObserverToolWriter", "", "track observer writer within ambiguity solver"}; diff --git a/Tracking/TrkTools/TrkAmbiguityProcessor/src/DenseEnvironmentsAmbiguityScoreProcessorTool.cxx b/Tracking/TrkTools/TrkAmbiguityProcessor/src/DenseEnvironmentsAmbiguityScoreProcessorTool.cxx index dcb2217f0570abd6b3fe0fadb4ba6f790caea4fd..f6a571bc7b870f365cb2bef777326eeb0653dfec 100644 --- a/Tracking/TrkTools/TrkAmbiguityProcessor/src/DenseEnvironmentsAmbiguityScoreProcessorTool.cxx +++ b/Tracking/TrkTools/TrkAmbiguityProcessor/src/DenseEnvironmentsAmbiguityScoreProcessorTool.cxx @@ -9,7 +9,6 @@ #include "TrkParameters/TrackParameters.h" #include "TrkRIO_OnTrack/RIO_OnTrack.h" #include "TrkTrack/TrackInfo.h" -#include "InDetRecToolInterfaces/IPixelClusterSplitProbTool.h" #include "TrkTrackSummary/TrackSummary.h" #include <map> @@ -27,15 +26,11 @@ Trk::DenseEnvironmentsAmbiguityScoreProcessorTool::DenseEnvironmentsAmbiguitySco const IInterface* p ) : AthAlgTool(t,n,p), - m_scoringTool("Trk::TrackScoringTool/TrackScoringTool"), - m_splitProbTool("InDet::NnPixelClusterSplitProbTool/NnPixelClusterSplitProbTool"), m_etaBounds{0.8, 1.6, 2.5,4.0}, m_stat(m_etaBounds) { declareInterface<ITrackAmbiguityScoreProcessorTool>(this); - declareProperty("ScoringTool" , m_scoringTool); - declareProperty("SplitProbTool" , m_splitProbTool); declareProperty("SplitClusterMap_old" , m_splitClusterMapKey_last); declareProperty("SplitClusterMap_new" , m_splitClusterMapKey); declareProperty("sharedProbCut" , m_sharedProbCut = 0.3); diff --git a/Tracking/TrkTools/TrkAmbiguityProcessor/src/DenseEnvironmentsAmbiguityScoreProcessorTool.h b/Tracking/TrkTools/TrkAmbiguityProcessor/src/DenseEnvironmentsAmbiguityScoreProcessorTool.h index 8d96ef17461fd83baf5e71aea96b9eae66b5d496..a32fb1800f1cc1b302bdf2806e21d1699ddc3639 100644 --- a/Tracking/TrkTools/TrkAmbiguityProcessor/src/DenseEnvironmentsAmbiguityScoreProcessorTool.h +++ b/Tracking/TrkTools/TrkAmbiguityProcessor/src/DenseEnvironmentsAmbiguityScoreProcessorTool.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration */ #ifndef DenseEnvironmentsAmbiguityScoreProcessorTool_H @@ -21,6 +21,7 @@ #include "TrkToolInterfaces/IPRDtoTrackMapTool.h" #include "TrkEventUtils/PRDtoTrackMap.h" +#include "InDetRecToolInterfaces/IPixelClusterSplitProbTool.h" #include "TrkEventUtils/ClusterSplitProbabilityContainer.h" #include "AmbiCounter.icc" #include <map> @@ -28,7 +29,6 @@ #include <vector> namespace InDet{ - class IPixelClusterSplitProbTool; class PixelCluster; class SCT_Cluster; } @@ -92,7 +92,8 @@ namespace Trk { /**Scoring tool This tool is used to 'score' the tracks, i.e. to quantify what a good track is. @todo The actual tool that is used should be configured through job options*/ - ToolHandle<ITrackScoringTool> m_scoringTool; + ToolHandle<ITrackScoringTool> m_scoringTool + {this, "ScoringTool", "Trk::TrackScoringTool/TrackScoringTool" }; ToolHandle<Trk::IPRDtoTrackMapTool> m_assoTool {this, "AssociationTool", "InDet::InDetPRDtoTrackMapToolGangedPixels" }; @@ -101,7 +102,8 @@ namespace Trk { {this, "AssociationToolNotGanged", "Trk::PRDtoTrackMapTool" }; // @TODO why are ganged pixels ignored ? /** recalculate split prob tool **/ - ToolHandle<InDet::IPixelClusterSplitProbTool> m_splitProbTool; + ToolHandle<InDet::IPixelClusterSplitProbTool> m_splitProbTool + {this, "SplitProbTool", "InDet::NnPixelClusterSplitProbTool/NnPixelClusterSplitProbTool" }; /**Observer tool This tool is used to observe the tracks and their 'score' */ PublicToolHandle<Trk::ITrkObserverTool> m_observerTool{this, "TrackObserverTool", "", "track observer within ambiguity solver"}; diff --git a/Tracking/TrkTools/TrkAmbiguityProcessor/src/SimpleAmbiguityProcessorTool.cxx b/Tracking/TrkTools/TrkAmbiguityProcessor/src/SimpleAmbiguityProcessorTool.cxx index 5a6e9b354a845a9e4641ebed23d4dbd5bd44edf9..1014db5e0b8999d75e4bcc795ba0b449183133c4 100644 --- a/Tracking/TrkTools/TrkAmbiguityProcessor/src/SimpleAmbiguityProcessorTool.cxx +++ b/Tracking/TrkTools/TrkAmbiguityProcessor/src/SimpleAmbiguityProcessorTool.cxx @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration */ #include "SimpleAmbiguityProcessorTool.h" @@ -21,9 +21,7 @@ Trk::SimpleAmbiguityProcessorTool::SimpleAmbiguityProcessorTool(const std::strin const std::string& n, const IInterface* p ) : - AmbiguityProcessorBase(t,n,p), - m_fitterTool ("Trk::KalmanFitter/InDetTrackFitter"), - m_selectionTool("InDet::InDetAmbiTrackSelectionTool/InDetAmbiTrackSelectionTool"){ + AmbiguityProcessorBase(t,n,p){ // statistics stuff declareInterface<ITrackAmbiguityProcessorTool>(this); @@ -31,9 +29,6 @@ Trk::SimpleAmbiguityProcessorTool::SimpleAmbiguityProcessorTool(const std::strin declareProperty("ForceRefit" , m_forceRefit = true); declareProperty("RefitPrds" , m_refitPrds = false); declareProperty("MatEffects" , m_matEffects = 3); // pion - declareProperty("ScoringTool" , m_scoringTool); - declareProperty("SelectionTool" , m_selectionTool); - declareProperty("Fitter" , m_fitterTool ); declareProperty("SuppressHoleSearch" , m_suppressHoleSearch = false); declareProperty("SuppressTrackFit" , m_suppressTrackFit = false); declareProperty("tryBremFit" , m_tryBremFit = false); diff --git a/Tracking/TrkTools/TrkAmbiguityProcessor/src/SimpleAmbiguityProcessorTool.h b/Tracking/TrkTools/TrkAmbiguityProcessor/src/SimpleAmbiguityProcessorTool.h index 0dd677921d8e84b151781dbeba4995cdb2da1e41..e410c6978cf5a630500847bb02d54c22fd913183 100644 --- a/Tracking/TrkTools/TrkAmbiguityProcessor/src/SimpleAmbiguityProcessorTool.h +++ b/Tracking/TrkTools/TrkAmbiguityProcessor/src/SimpleAmbiguityProcessorTool.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration */ #ifndef SIMPLEAMBIGUITYPROCESSORTOOL_H @@ -113,11 +113,11 @@ namespace Trk { /** refitting tool - used to refit tracks once shared hits are removed. Refitting tool used is configured via jobOptions.*/ - ToolHandle<ITrackFitter> m_fitterTool; + ToolHandle<ITrackFitter> m_fitterTool{this, "Fitter", "Trk::KalmanFitter/InDetTrackFitter"}; /** association tool **/ ToolHandle<Trk::IPRDtoTrackMapTool> m_assoTool{this, "AssociationTool", "Trk::PRDtoTrackMapTool" }; /** selection tool - here the decision which hits remain on a track and which are removed are made */ - ToolHandle<IAmbiTrackSelectionTool> m_selectionTool; + ToolHandle<IAmbiTrackSelectionTool> m_selectionTool{this, "SelectionTool", "InDet::InDetAmbiTrackSelectionTool/InDetAmbiTrackSelectionTool"}; }; } //end ns diff --git a/Trigger/TrigTools/TrigInDetConfig/python/TrigInDetConfig.py b/Trigger/TrigTools/TrigInDetConfig/python/TrigInDetConfig.py index c0647616a0c9ddae090bff3a9f300c8aa2a2400f..5191179e5bc084a69ed149fc653338fde26614be 100644 --- a/Trigger/TrigTools/TrigInDetConfig/python/TrigInDetConfig.py +++ b/Trigger/TrigTools/TrigInDetConfig/python/TrigInDetConfig.py @@ -227,7 +227,7 @@ def InDetTrackSummaryHelperToolCfg(flags, name="InDetTrigSummaryHelper"): acc.addPublicTool( tool, primary=True ) return acc -def TrackSummaryToolCfg(flags, name="InDetTrackSummaryTool", summaryHelperTool=None, makePublic=True, useTRT=False): +def TrackSummaryToolCfg(flags, name="InDetTrigTrackSummaryTool", summaryHelperTool=None, makePublic=True, useTRT=False): acc = ComponentAccumulator() if not summaryHelperTool: summaryHelperTool = acc.getPrimaryAndMerge( InDetTrackSummaryHelperToolCfg( flags, "InDetTrigSummaryHelper") ) diff --git a/Trigger/TrigTools/TrigInDetConfig/python/TrigInDetPriVtxConfig.py b/Trigger/TrigTools/TrigInDetConfig/python/TrigInDetPriVtxConfig.py index 4c3ec8929422114987cbf20e7de97aaa4eaf536c..85850399447b0d24cfa8a7868e08f144508d9d7e 100644 --- a/Trigger/TrigTools/TrigInDetConfig/python/TrigInDetPriVtxConfig.py +++ b/Trigger/TrigTools/TrigInDetConfig/python/TrigInDetPriVtxConfig.py @@ -55,7 +55,7 @@ def iterativeVertexFinderCfg(flags, signature): acc = ComponentAccumulator() vtx_cuts = ConfiguredTrigVtxCuts() # TODO - should this have isHLT = True? This isn't set in the non-CA version - summary_tool = acc.popToolsAndMerge(InDetTrackSummaryToolCfg(flags)) + summary_tool = acc.getPrimaryAndMerge(InDetTrackSummaryToolCfg(flags)) extrapolator_acc = InDetExtrapolatorCfg(flags) extrapolator = extrapolator_acc.getPrimary() acc.merge(extrapolator_acc) @@ -107,7 +107,7 @@ def adaptiveMultiVertexFinderCfg(flags, signature): acc = ComponentAccumulator() # TODO - should this have isHLT = True? This isn't set in the non-CA version - summary_tool = acc.popToolsAndMerge(InDetTrackSummaryToolCfg(flags)) + summary_tool = acc.getPrimaryAndMerge(InDetTrackSummaryToolCfg(flags)) extrapolator_acc = InDetExtrapolatorCfg(flags) extrapolator = extrapolator_acc.getPrimary() acc.merge(extrapolator_acc)