14 acc = ComponentAccumulator()
15 from InDetTrackSelectionTool.InDetTrackSelectionToolConfig
import (
16 InDetTrackSelectionTool_TrackTools_Cfg)
17 kwargs.setdefault(
"TrackSelectionTool",acc.popToolsAndMerge(InDetTrackSelectionTool_TrackTools_Cfg(ConfigFlags,
22 TrackIsoTool = CompFactory.xAOD.TrackIsolationTool(name, **kwargs)
23 acc.setPrivateTools(TrackIsoTool)
28 ConfigFlags, name="MuonTrackIsolationDecorator",
29 ttvaWP = "Nonprompt_All_MaxWeight", trackPt=500., **kwargs):
31 result = ComponentAccumulator()
32 from TrackVertexAssociationTool.TrackVertexAssociationToolConfig
import isoTTVAToolCfg
33 ttvaTool = result.popToolsAndMerge(
34 isoTTVAToolCfg(ConfigFlags, WorkingPoint=ttvaWP))
35 from InDetTrackSelectionTool.InDetTrackSelectionToolConfig
import isoTrackSelectionToolCfg
36 trackSelTool = result.popToolsAndMerge(
37 isoTrackSelectionToolCfg(ConfigFlags, minPt=trackPt))
39 wpName =
"{WP}TTVA_pt{ptCut}".format(WP = ttvaWP, ptCut = trackPt)
40 kwargs.setdefault(
"customName", wpName)
42 kwargs.setdefault(
"PtMin", 2500.)
43 from IsolationAlgs.IsoToolsConfig
import TrackIsolationToolCfg
44 kwargs.setdefault(
"IsolationTool", result.popToolsAndMerge(
47 TrackSelectionTool=trackSelTool)))
48 theAlg = CompFactory.DerivationFramework.TrackIsolationDecorAlg(name = name, **kwargs)
49 result.addEventAlgo(theAlg, primary =
True)
54 from IsolationAlgs.IsoToolsConfig
import MuonCaloIsolationToolCfg
55 result = ComponentAccumulator()
56 kwargs.setdefault(
"PtMin", 2500.)
57 kwargs.setdefault(
"IsolationTool", result.getPrimaryAndMerge(MuonCaloIsolationToolCfg(ConfigFlags,
58 saveOnlyRequestedCorrections=
True)))
59 the_alg = CompFactory.DerivationFramework.CaloIsolationDecorAlg(name, **kwargs)
60 result.addEventAlgo(the_alg, primary=
True)
64 from IsolationAlgs.IsoToolsConfig
import MuonCaloIsolationToolCfg
65 result = ComponentAccumulator()
66 kwargs.setdefault(
"PtMin", 2500.)
67 kwargs.setdefault(
"IsolationTool", result.getPrimaryAndMerge(MuonCaloIsolationToolCfg(ConfigFlags,
68 saveOnlyRequestedCorrections=
True)))
69 the_alg = CompFactory.DerivationFramework.PflowIsolationDecorAlg(name, **kwargs)
70 result.addEventAlgo(the_alg, primary=
True)
74def TrackIsolationCfg(ConfigFlags, TrackCollection="InDetTrackParticles", TrackSelections = []):
75 result = ComponentAccumulator()
76 for WP
in [
'Nonprompt_All_MaxWeight',
'Tight']:
77 for trackPt
in 500, 1000:
79 name = f
"TrackIsoDecorAlg{TrackCollection}{WP}{trackPt}",
82 TrackCollection = TrackCollection,
83 TrackSelections = TrackSelections))
85 name = f
"CaloIsoDecorAlg{TrackCollection}",
86 TrackCollection = TrackCollection,
87 TrackSelections = TrackSelections))
89 name = f
"PflowIsoDecorAlg{TrackCollection}",
90 TrackCollection = TrackCollection,
91 TrackSelections = TrackSelections))