15def AddJPsiVertexingFitterCfg(flags, prefix='', IdTrkContainer = "InDetTrackParticles", MuonContainer = "Muons"):
16 result = ComponentAccumulator()
17 from JpsiUpsilonTools.JpsiUpsilonToolsConfig import JpsiFinderCfg
18 jpsi_finder_tool = result.popToolsAndMerge(JpsiFinderCfg(flags,
19 muAndMu = False,
20 muAndTrack = False,
21 TrackAndTrack = True,
22 assumeDiMuons = True,
23 invMassUpper = 3500.0,
24 invMassLower = 2700.0,
25 Chi2Cut = 2000.,
26 allChargeCombinations = True,
27 oppChargesOnly = False,
28 sameChargesOnly= False,
29 trackThresholdPt = 2500,
30 muonThresholdPt= 4000,
31 atLeastOneComb = False,
32 useCombinedMeasurement = False,
33 muonCollectionKey = MuonContainer,
34 TrackParticleCollection = IdTrkContainer,
35 useV0Fitter = False,
36 useMCPCuts = True))
37
38
39
40 MuonTP_Reco_mumu = result.getPrimaryAndMerge(AddRecoMumuToolCfg(flags,
41 name = prefix+"MuonTP_Reco_mumu",
42 JpsiFinder = jpsi_finder_tool,
43 OutputVtxContainerName = prefix+"JpsiCandidates",
44 PVContainerName = "PrimaryVertices",
45 RefPVContainerName = prefix+"RefittedPrimaryVertices",
46 RefitPV = True,
47 MaxPVrefit = 100000,
48 DoVertexType = 7))
49 result.addPublicTool(MuonTP_Reco_mumu)
50 the_alg = CompFactory.DerivationFramework.DerivationKernel(prefix +"JPsiVertexFitKernel",
51 AugmentationTools = [MuonTP_Reco_mumu])
52 result.addEventAlgo(the_alg, primary = True)
53 return result
54