34def getBJetTriggerContent(flags):
35 if flags.Trigger.EDMVersion == 2:
36 triggerContent = [
37 "HLT_xAOD__BTaggingContainer_HLTBjetFex",
38 "HLT_xAOD__BTaggingContainer_HLTBjetFexAux.MV2c00_discriminant.MV2c10_discriminant.MV2c20_discriminant.BTagBtagToJetAssociator",
39 ]
40 jetCollections = {
41 2016: [
42
43 "HLT_xAOD__JetContainer_a4tcemsubjesFS",
44 "HLT_xAOD__JetContainer_a4tcemsubjesFSAux.pt.eta.phi.m",
45
46 "HLT_xAOD__JetContainer_EFJet",
47 "HLT_xAOD__JetContainer_EFJetAux.pt.eta.phi.m",
48 "HLT_xAOD__JetContainer_SplitJet",
49 "HLT_xAOD__JetContainer_SplitJetAux.pt.eta.phi.m",
50 ],
51 2017: [
52
53 "HLT_xAOD__JetContainer_a4tcemsubjesISFS",
54 "HLT_xAOD__JetContainer_a4tcemsubjesISFSAux.pt.eta.phi.m",
55
56 "HLT_xAOD__JetContainer_SplitJet",
57 "HLT_xAOD__JetContainer_SplitJetAux.pt.eta.phi.m",
58 "HLT_xAOD__JetContainer_GSCJet",
59 "HLT_xAOD__JetContainer_GSCJetAux.pt.eta.phi.m",
60 ],
61 }
62 jetCollections[2015] = jetCollections[2016]
63 jetCollections[2018] = jetCollections[2017]
64
65 year = getDataYear(flags)
66 msg.debug(f'Configured b-jet trigger content for {year}')
67
68 triggerContent += jetCollections[year]
69 return triggerContent
70 elif flags.Trigger.EDMVersion >= 3:
71 year = getDataYear(flags)
72 msg.debug(f'Configured Run 3 / Run 4 b-jet trigger content for {year}')
73
74 ftagstrs = []
75 ftaggers = run3_tagger_deco_map.get(run3_year_tagger_map[year])
76 for ftagger in ftaggers:
77 ftagstrs.append('.'.join([f'{ftagger}_{p}' for p in ['pb','pc','pu']]))
78 jetstrs = ftagstrs + ['pt', 'eta', 'phi', 'm']
79 jetvars = '.'.join(jetstrs)
80 triggerContent = [
81 "HLT_AntiKt4EMPFlowJets_subresjesgscIS_ftf_bJets",
82 f"HLT_AntiKt4EMPFlowJets_subresjesgscIS_ftf_bJetsAux.{jetvars}",
83 ]
84 return triggerContent
85
86 elif flags.Trigger.EDMVersion == -1:
87
88 msg.debug('Received EDMVersion=-1: no trigger info available. Returning empty b-jet trigger content')
89 return []
90
91 raise ValueError(f"Unsupported EDM version {flags.Trigger.EDMVersion} determined")