9def FourLeptonVertexerCfg(flags, name="FourLeptonVertexAlg", **kwargs):
10 result = ComponentAccumulator()
11
12 from MuonSelectorTools.MuonSelectorToolsConfig import MuonLoosenedNonCalibratedSelectionToolCfg
13 kwargs.setdefault("MuonSelectionTool", result.popToolsAndMerge(MuonLoosenedNonCalibratedSelectionToolCfg(flags,
14 MaxEta=2.7,
15 MuQuality=2,
16 )) )
17
18
19 from ElectronPhotonSelectorTools.AsgElectronLikelihoodToolsConfig import AsgElectronLikelihoodToolCfg
20 from ElectronPhotonSelectorTools.ElectronLikelihoodToolMapping import electronLHmenu
21 from ElectronPhotonSelectorTools.LikelihoodEnums import LikeEnum
22 from AthenaConfiguration.Enums import LHCPeriod
23 kwargs.setdefault("ElectronSelectionTool", result.popToolsAndMerge(AsgElectronLikelihoodToolCfg(flags,
24 name= "ElectronSelTool",
25 quality = LikeEnum.VeryLoose,
26 menu=electronLHmenu.offlineMC21 if flags.GeoModel.Run >= LHCPeriod.Run3 else electronLHmenu.offlineMC20)))
27
28 from TrkConfig.TrkVKalVrtFitterConfig import TrkVKalVrtFitterCfg
29 kwargs.setdefault("VertexFitter", result.popToolsAndMerge(
30 TrkVKalVrtFitterCfg(flags, FirstMeasuredPoint = False)))
31 kwargs.setdefault("MinMuonPt", 4000)
32 kwargs.setdefault("MinElecPt", 6000)
33 vtx_tool = CompFactory.DerivationFramework.FourLeptonVertexingAlgorithm(name , **kwargs)
34 result.addEventAlgo(vtx_tool, primary = True)
35 return result
36