11def EMPIDBuilderElectronCfg(flags, name='EMPIDBuilderElectron', **kwargs):
12
13 mlog = logging.getLogger(name)
14 mlog.debug('Start configuration')
15
16 acc = ComponentAccumulator()
17
18
19
20 from ROOT import LikeEnum
21 from ElectronPhotonSelectorTools.AsgElectronIsEMSelectorsConfig import (
22 AsgElectronIsEMSelectorCfg)
23 if "electronIsEMselectors" not in kwargs:
24 LooseElectronSelectorAcc = AsgElectronIsEMSelectorCfg(
25 flags, "LooseElectronSelector", egammaPID.ElectronIDLoosePP)
26 MediumElectronSelectorAcc = AsgElectronIsEMSelectorCfg(
27 flags, "MediumElectronSelector", egammaPID.ElectronIDMediumPP)
28 TightElectronSelectorAcc = AsgElectronIsEMSelectorCfg(
29 flags, "TightElectronSelector", egammaPID.ElectronIDTightPP)
30
31 kwargs["electronIsEMselectors"] = [
32 LooseElectronSelectorAcc.popPrivateTools(),
33 MediumElectronSelectorAcc.popPrivateTools(),
34 TightElectronSelectorAcc.popPrivateTools()]
35 kwargs["electronIsEMselectorResultNames"] = [
36 "Loose", "Medium", "Tight"]
37 acc.merge(LooseElectronSelectorAcc)
38 acc.merge(MediumElectronSelectorAcc)
39 acc.merge(TightElectronSelectorAcc)
40
41
42 from ElectronPhotonSelectorTools.AsgElectronLikelihoodToolsConfig import (
43 AsgElectronLikelihoodToolCfg)
44 if "electronLHselectors" not in kwargs:
45 LooseLHSelectorAcc = AsgElectronLikelihoodToolCfg(
46 flags, "LooseLHSelector", LikeEnum.Loose)
47 LooseLHSelectorAcc.primaryVertexContainer = "PrimaryVertices"
48 MediumLHSelectorAcc = AsgElectronLikelihoodToolCfg(
49 flags, "MediumLHSelector", LikeEnum.Medium)
50 MediumLHSelectorAcc.primaryVertexContainer = "PrimaryVertices"
51 TightLHSelectorAcc = AsgElectronLikelihoodToolCfg(
52 flags, "TightLHSelector", LikeEnum.Tight)
53 TightLHSelectorAcc.primaryVertexContainer = "PrimaryVertices"
54 kwargs["electronLHselectors"] = [LooseLHSelectorAcc.popPrivateTools(),
55 MediumLHSelectorAcc.popPrivateTools(),
56 TightLHSelectorAcc.popPrivateTools()]
57 kwargs["electronLHselectorResultNames"] = [
58 "LHLoose", "LHMedium", "LHTight"]
59 acc.merge(LooseLHSelectorAcc)
60 acc.merge(MediumLHSelectorAcc)
61 acc.merge(TightLHSelectorAcc)
62
63 tool = CompFactory.EMPIDBuilder(name, **kwargs)
64
65 acc.setPrivateTools(tool)
66 return acc
67
68