9def JetSecVtxFindingAlgCfg(flags, BTagVxSecVertexInfoName, SVAlgName, JetCollection, PrimaryVertexCollectionName="", SVFinder="", TracksToTag="", **options):
10 """Adds a SecVtxTool instance and registers it.
11
12 input: name: The tool's name.
13 JetCollection The name of the jet collections.
14 ToolSvc: The ToolSvc instance.
15 options: Python dictionary of options to be passed to the SecVtxTool.
16 output: The tool."""
17
18 acc = ComponentAccumulator()
19
20 if SVFinder == 'JetFitter':
21 secVtxFinder = acc.popToolsAndMerge(InDetImprovedJetFitterVxFinderCfg(flags, 'JFVxFinder'))
22 elif SVFinder == 'JetFitterFlip':
23 secVtxFinder = acc.popToolsAndMerge(InDetImprovedJetFitterVxFinderCfg(flags, 'JFVxFinderFlip', 'FLIP_SIGN'))
24 elif SVFinder == 'SV1':
25 secVtxFinder = acc.popToolsAndMerge(InDetVKalVxInJetToolCfg(flags, "IDVKalVxInJet"))
26 elif SVFinder == 'SV1Flip':
27 secVtxFinder = acc.popToolsAndMerge(InDetVKalVxInJetToolCfg(flags, "IDVKalVxInJetFlip"))
28 elif SVFinder == 'MSV':
29 secVtxFinder = acc.popToolsAndMerge(MSV_InDetVKalVxInJetToolCfg(flags, "IDVKalMultiVxInJet"))
30 else:
31 return acc
32
33 options = {}
34 options.setdefault('SecVtxFinder', secVtxFinder)
35 options.setdefault('vxPrimaryCollectionName', PrimaryVertexCollectionName)
36 options['JetCollectionName'] = JetCollection
37 options['TracksToTag'] = TracksToTag
38 options['BTagVxSecVertexInfoName'] = BTagVxSecVertexInfoName
39 options['name'] = SVAlgName
40
41
42 acc.addEventAlgo(CompFactory.Analysis.JetSecVtxFindingAlg(**options))
43
44 return acc