42 useMinZ0Vertex=True):
43
44 acc=ComponentAccumulator()
45 jetcol = JetCollection
46 name=(jetcol + "_" + OutputParticleDecoration).lower()
47 if useMinZ0Vertex:
48 decorName="_" + str(dzCut) + "_exclusive_assoc"
49 else:
50 decorName="_" + str(dzCut) + "_inclusive_assoc"
51 if MinimumJetPt is None:
52 MinimumJetPt = ConfigFlags.BTagging.minimumJetPtForTrackAssociation
53 if MinimumJetPt > 0.0 and MinimumJetPtFlag is None:
54 ptflag = f'{OutputParticleDecoration}OverPtThreshold'
55 elif MinimumJetPtFlag is not None:
56 ptflag = MinimumJetPtFlag
57 else:
58 ptflag = ''
59
60
61 acc.addEventAlgo(CompFactory.JetDecorationAlg(
62 name=name+decorName,
63 JetContainer=jetcol,
64 Decorators=[
65 acc.popToolsAndMerge(
66 JetParticleAssociationByVertexCfg(
67 ConfigFlags,
68 jetcol,
69 InputParticleCollection,
70 OutputParticleDecoration+decorName,
71 MinimumJetPt=MinimumJetPt,
72 PassPtFlag=ptflag+decorName,
73 dzCut=dzCut,
74 useMinZ0Vertex=useMinZ0Vertex,
75 ))
76 ]
77 ))
78
79 return acc