ATLAS Offline Software
HLTSeedingConfig.py
Go to the documentation of this file.
1 #
2 # Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 #
4 
5 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
6 from AthenaConfiguration.ComponentFactory import CompFactory
7 from AthenaCommon.Logging import logging
8 from TrigEDMConfig.TriggerEDM import recordable
9 
10 import math
11 
12 log = logging.getLogger('HLTSeedingConfig')
13 
14 _mapL1ThresholdToDecisionCollection = {
15  # Full-scan
16  "FSNOSEED": "HLTNav_L1FSNOSEED",
17  # Muon
18  "MU" : "HLTNav_L1MU",
19  "PROBEMU" : "HLTNav_L1PROBEMU",
20  # Phase-1 L1Calo
21  "eEM": "HLTNav_L1eEM",
22  "eTAU": "HLTNav_L1eTAU",
23  "jEM": "HLTNav_L1jEM",
24  "jTAU": "HLTNav_L1jTAU",
25  "cTAU": "HLTNav_L1cTAU",
26  "jJ": "HLTNav_L1jJ",
27  "jLJ": "HLTNav_L1jLJ",
28  "gJ": "HLTNav_L1gJ",
29  "gLJ": "HLTNav_L1gLJ",
30  "PROBEeEM" : "HLTNav_L1PROBEeEM",
31  "PROBEjEM" : "HLTNav_L1PROBEjEM",
32  "PROBEeTAU" : "HLTNav_L1PROBEeTAU",
33  "PROBEjTAU" : "HLTNav_L1PROBEjTAU",
34  "PROBEcTAU" : "HLTNav_L1PROBEcTAU",
35  # Run-2 L1Calo
36  "EM" : "HLTNav_L1EM",
37  "J" : "HLTNav_L1J",
38  "TAU": "HLTNav_L1TAU",
39  "XE" : "HLTNav_L1MET",
40  "XS" : "HLTNav_L1MET",
41  "TE" : "HLTNav_L1MET",
42  "PROBEEM" : "HLTNav_L1PROBEEM",
43  "PROBETAU" : "HLTNav_L1PROBETAU",
44 }
45 
46 _mapL1ThresholdToRoICollection = {
47  # Full-scan
48  "FSNOSEED": "HLT_FSRoI",
49  # Muon
50  "MU" : "HLT_MURoIs",
51  "PROBEMU" : "HLT_MURoIs",
52  # Phase-1 L1Calo
53  "eEM": "HLT_eEMRoIs",
54  "eTAU": "HLT_eTAURoIs",
55  "jEM": "HLT_jEMRoIs",
56  "jTAU": "HLT_jTAURoIs",
57  "cTAU": "HLT_cTAURoIs",
58  "jJ": "HLT_jJRoIs",
59  "jLJ": "HLT_jLJRoIs",
60  "gJ": "HLT_gJRoIs",
61  "gLJ": "HLT_gLJRoIs",
62  "PROBEeEM" : "HLT_eEMRoIs",
63  "PROBEeTAU": "HLT_eTAURoIs",
64  "PROBEjEM": "HLT_jEMRoIs",
65  "PROBEjTAU": "HLT_jTAURoIs",
66  "PROBEcTAU": "HLT_cTAURoIs",
67  # Run-2 L1Calo
68  "EM" : "HLT_EMRoIs",
69  "J" : "HLT_JETRoI",
70  "TAU": "HLT_TAURoI",
71  "XE" : "HLT_FSRoI",
72  "XS" : "HLT_FSRoI",
73  "TE" : "HLT_FSRoI",
74  "PROBEEM" : "HLT_EMRoIs",
75  "PROBETAU" : "HLT_TAURoI",
76 }
77 
78 
80  """
81  Translates L1 threshold name of the DecisionsContainer name in the HLTSeeding unpacking tools
82  """
83  # remove actual threshold value from L1 threshold string
84  for (thresholdType, l1Collection) in _mapL1ThresholdToDecisionCollection.items():
85  if threshold.startswith( thresholdType ):
86  return l1Collection
87 
88  log.error("Threshold \""+ threshold + "\" not mapped to any Decision collection! Available are: " + str(_mapL1ThresholdToDecisionCollection.values()))
89 
90 
92  """
93  Translates L1 threshold name of the RoIDescriptor name in the HLTSeeding unpacking tools
94  """
95  # remove actual threshold value from L1 threshold string
96  for (thresholdType, l1Collection) in _mapL1ThresholdToRoICollection.items():
97  if threshold.startswith( thresholdType ):
98  return l1Collection
99 
100  log.error("Threshold \""+ threshold + "\" not mapped to any ROI collection! Available are: " + str(_mapL1ThresholdToRoICollection.values()))
101 
102 
104  from HLTSeeding.HLTSeedingMonitoring import RoIsUnpackingMonitoring
105  emUnpacker = CompFactory.EMRoIsUnpackingTool(Decisions = mapThresholdToL1DecisionCollection("EM"),
106  DecisionsProbe = mapThresholdToL1DecisionCollection("PROBEEM"),
107  OutputTrigRoIs = recordable(mapThresholdToL1RoICollection("EM")),
108  MonTool = RoIsUnpackingMonitoring( flags, prefix="EM", maxCount=30, etaOffset=0.05, phiOffset=math.pi/64., maxEta=2.5 ))
109 
110  metUnpacker = CompFactory.METRoIsUnpackingTool(Decisions = mapThresholdToL1DecisionCollection("XE"))
111 
112 
113  tauUnpacker = CompFactory.TAURoIsUnpackingTool(Decisions = mapThresholdToL1DecisionCollection("TAU"),
114  DecisionsProbe = mapThresholdToL1DecisionCollection("PROBETAU"),
115  OutputTrigRoIs = recordable("HLT_TAURoI"))
116 
117  tauUnpacker.MonTool = RoIsUnpackingMonitoring( flags, prefix="TAU", maxCount=30, etaOffset=0.05, phiOffset=math.pi/64., maxEta=2.5 )
118 
119  jUnpacker = CompFactory.JRoIsUnpackingTool(Decisions = mapThresholdToL1DecisionCollection("J"),
120  OutputTrigRoIs = recordable(mapThresholdToL1RoICollection("J")) )
121 
122  jUnpacker.MonTool = RoIsUnpackingMonitoring( flags, prefix="J", maxCount=30, maxEta=5 )
123 
124  return [emUnpacker, metUnpacker, tauUnpacker, jUnpacker ]
125 
127  from HLTSeeding.HLTSeedingMonitoring import RoIsUnpackingMonitoring
128  tools = []
129 
130  if flags.Trigger.L1.doeFex:
131  maxRoICount_eFex = 150 # used for histogram range, 144 is the hardware limit
132  eFexEMUnpacker = CompFactory.eFexEMRoIsUnpackingTool(
133  Decisions = mapThresholdToL1DecisionCollection("eEM"),
134  DecisionsProbe = mapThresholdToL1DecisionCollection("PROBEeEM"),
135  OutputTrigRoIs = recordable(mapThresholdToL1RoICollection("eEM")),
136  RoIHalfWidthEta = 0.2,
137  RoIHalfWidthPhi = 0.2,
138  MonTool = RoIsUnpackingMonitoring(flags, prefix="eEM", maxCount=maxRoICount_eFex, maxEta=2.5))
139  eFexTauUnpacker = CompFactory.eFexTauRoIsUnpackingTool(
140  Decisions = mapThresholdToL1DecisionCollection("eTAU"),
141  DecisionsProbe = mapThresholdToL1DecisionCollection("PROBEeTAU"),
142  OutputTrigRoIs = recordable(mapThresholdToL1RoICollection("eTAU")),
143  RoIHalfWidthEta = 0.4,
144  RoIHalfWidthPhi = math.pi/8,
145  MonTool = RoIsUnpackingMonitoring(flags, prefix="eTAU", maxCount=maxRoICount_eFex, maxEta=2.5))
146  tools += [eFexEMUnpacker, eFexTauUnpacker]
147 
148  if flags.Trigger.L1.dojFex:
149  maxRoICount_jFex = 200 # used for histogram range
150  jFexEMUnpacker = CompFactory.jFexFwdElRoIsUnpackingTool(
151  Decisions = mapThresholdToL1DecisionCollection("jEM"),
152  DecisionsProbe = mapThresholdToL1DecisionCollection("PROBEjEM"),
153  OutputTrigRoIs = recordable(mapThresholdToL1RoICollection("jEM")),
154  RoIHalfWidthEta = 0.4,
155  RoIHalfWidthPhi = math.pi/8,
156  MonTool = RoIsUnpackingMonitoring(flags, prefix="jEM", maxCount=maxRoICount_jFex))
157  jFexTauUnpacker = CompFactory.jFexTauRoIsUnpackingTool(
158  Decisions = mapThresholdToL1DecisionCollection("jTAU"),
159  DecisionsProbe = mapThresholdToL1DecisionCollection("PROBEjTAU"),
160  OutputTrigRoIs = recordable(mapThresholdToL1RoICollection("jTAU")),
161  RoIHalfWidthEta = 0.4,
162  RoIHalfWidthPhi = math.pi/8,
163  MonTool = RoIsUnpackingMonitoring(flags, prefix="jTAU", maxCount=maxRoICount_jFex))
164  jFexSRJetUnpacker = CompFactory.jFexSRJetRoIsUnpackingTool(
165  Decisions = mapThresholdToL1DecisionCollection("jJ"),
166  OutputTrigRoIs = recordable(mapThresholdToL1RoICollection("jJ")),
167  RoIHalfWidthEta = 0.1,
168  RoIHalfWidthPhi = 0.1,
169  MonTool = RoIsUnpackingMonitoring(flags, prefix="jJ", maxCount=maxRoICount_jFex, maxEta=5))
170  jFexLRJetUnpacker = CompFactory.jFexLRJetRoIsUnpackingTool(
171  Decisions = mapThresholdToL1DecisionCollection("jLJ"),
172  OutputTrigRoIs = recordable(mapThresholdToL1RoICollection("jLJ")),
173  RoIHalfWidthEta = 0.1,
174  RoIHalfWidthPhi = 0.1,
175  MonTool = RoIsUnpackingMonitoring(flags, prefix="jLJ", maxCount=maxRoICount_jFex, maxEta=5))
176  tools += [jFexEMUnpacker, jFexTauUnpacker, jFexSRJetUnpacker, jFexLRJetUnpacker]
177 
178  if flags.Trigger.L1.dogFex:
179  maxRoICount_gFex = 100 # used for histogram range
180  gFexSRJetUnpacker = CompFactory.gFexSRJetRoIsUnpackingTool(
181  Decisions = mapThresholdToL1DecisionCollection("gJ"),
182  OutputTrigRoIs = recordable(mapThresholdToL1RoICollection("gJ")),
183  RoIHalfWidthEta = 0.1,
184  RoIHalfWidthPhi = 0.1,
185  MonTool = RoIsUnpackingMonitoring(flags, prefix="gJ", maxCount=maxRoICount_gFex, maxEta=5))
186  gFexLRJetUnpacker = CompFactory.gFexLRJetRoIsUnpackingTool(
187  Decisions = mapThresholdToL1DecisionCollection("gLJ"),
188  OutputTrigRoIs = recordable(mapThresholdToL1RoICollection("gLJ")),
189  RoIHalfWidthEta = 0.1,
190  RoIHalfWidthPhi = 0.1,
191  MonTool = RoIsUnpackingMonitoring(flags, prefix="gLJ", maxCount=maxRoICount_gFex, maxEta=5))
192  tools += [gFexSRJetUnpacker, gFexLRJetUnpacker]
193 
194  # Need both eFex and jFex for cTAU
195  if flags.Trigger.L1.doeFex and flags.Trigger.L1.dojFex:
196  maxRoICount_eFex = 150 # used for histogram range
197  cTauUnpacker = CompFactory.cTauRoIsUnpackingTool(
198  Decisions = mapThresholdToL1DecisionCollection("cTAU"),
199  DecisionsProbe = mapThresholdToL1DecisionCollection("PROBEcTAU"),
200  OutputTrigRoIs = recordable(mapThresholdToL1RoICollection("cTAU")),
201  RoIHalfWidthEta = 0.4,
202  RoIHalfWidthPhi = math.pi/8,
203  MonTool = RoIsUnpackingMonitoring(flags, prefix="cTAU", maxCount=maxRoICount_eFex))
204  tools += [cTauUnpacker]
205 
206  return tools
207 
209  from HLTSeeding.HLTSeedingMonitoring import RoIsUnpackingMonitoring
210  muUnpacker = CompFactory.MURoIsUnpackingTool(
211  Decisions = mapThresholdToL1DecisionCollection("MU"),
212  DecisionsProbe = mapThresholdToL1DecisionCollection("PROBEMU"),
213  OutputTrigRoIs = recordable(mapThresholdToL1RoICollection("MU")),
214  MonTool = RoIsUnpackingMonitoring(flags, prefix="MU", maxCount=20))
215 
216  return [muUnpacker]
217 
219  from HLTSeeding.HLTSeedingMonitoring import RoIsUnpackingMonitoring
220  muUnpacker = CompFactory.MuonRoIsUnpackingTool(
221  Decisions = mapThresholdToL1DecisionCollection("MU"),
222  DecisionsProbe = mapThresholdToL1DecisionCollection("PROBEMU"),
223  OutputTrigRoIs = recordable(mapThresholdToL1RoICollection("MU")),
224  RoIHalfWidthEta = 0.1,
225  RoIHalfWidthPhi = 0.1,
226  MonTool = RoIsUnpackingMonitoring(flags, prefix="MU", maxCount=20))
227  return [muUnpacker]
228 
230  from HLTSeeding.HLTSeedingMonitoring import PrescalingMonitoring
231 
232  prescaler = CompFactory.PrescalingTool(MonTool = PrescalingMonitoring(flags))
233  return prescaler
234 
236  keyWriter = CompFactory.getComp('TrigConf::KeyWriterTool')('KeyWriterToolOnline')
237  keyWriter.ConfKeys = 'TrigConfKeysOnline'
238  keyWriter.IncludeL1PrescaleKey = False
239  keyWriter.IncludeBunchgroupKey = False
240  return keyWriter
241 
243  acc = ComponentAccumulator()
244 
245  # Reset properties to empty by default and fill based on flags below
246  l1trMaker = CompFactory.L1TriggerResultMaker(
247  MuRoIKey = "",
248  eFexEMRoIKey = "",
249  eFexTauRoIKey = "",
250  jFexFwdElRoIKey = "",
251  jFexTauRoIKey = "",
252  jFexSRJetRoIKey = "",
253  jFexLRJetRoIKey = "",
254  gFexSRJetRoIKey = "",
255  gFexLRJetRoIKey = "",
256  cTauRoIKey = "",
257  cjTauLinkKey = "",
258  ThresholdPatternTools = [] )
259 
260  # Muon RoIs
261  if flags.Trigger.L1.doMuon and flags.Trigger.enableL1MuonPhase1:
262  l1trMaker.MuRoIKey = "LVL1MuonRoIs"
263  from TrigT1MuctpiPhase1.TrigT1MuctpiPhase1Config import TrigThresholdDecisionToolCfg
264  l1trMaker.ThresholdPatternTools += [acc.popToolsAndMerge(TrigThresholdDecisionToolCfg(flags))]
265  elif flags.Trigger.L1.doMuon and flags.Trigger.enableL0Muon: # Run-4+
266  l1trMaker.MuRoIKey = "LVL1MuonRoIs"
267  l1trMaker.ThresholdPatternTools += [CompFactory.MURoIThresholdsTool()]
268 
269  # L1Calo RoIs
270  if flags.Trigger.L1.doCalo and flags.Trigger.enableL1CaloPhase1:
271  if flags.Trigger.L1.doeFex:
272  l1trMaker.eFexEMRoIKey = "L1_eEMRoI"
273  l1trMaker.eFexTauRoIKey = "L1_eTauRoI"
274  l1trMaker.ThresholdPatternTools += [
275  CompFactory.eFexEMRoIThresholdsTool(),
276  CompFactory.eFexTauRoIThresholdsTool(),
277  ]
278  if flags.Trigger.L1.dojFex:
279  l1trMaker.jFexFwdElRoIKey = "L1_jFexFwdElRoI"
280  l1trMaker.jFexTauRoIKey = "L1_jFexTauRoI"
281  l1trMaker.jFexSRJetRoIKey = "L1_jFexSRJetRoI"
282  l1trMaker.jFexLRJetRoIKey = "L1_jFexLRJetRoI"
283  l1trMaker.ThresholdPatternTools += [
284  CompFactory.jFexFwdElRoIThresholdsTool(),
285  CompFactory.jFexTauRoIThresholdsTool(),
286  CompFactory.jFexSRJetRoIThresholdsTool(),
287  CompFactory.jFexLRJetRoIThresholdsTool(),
288  ]
289  if flags.Trigger.L1.dogFex:
290  l1trMaker.gFexSRJetRoIKey = "L1_gFexSRJetRoI"
291  l1trMaker.gFexLRJetRoIKey = "L1_gFexLRJetRoI"
292  l1trMaker.ThresholdPatternTools += [
293  CompFactory.gFexSRJetRoIThresholdsTool(),
294  CompFactory.gFexLRJetRoIThresholdsTool(),
295  ]
296  # Need both eFex and jFex for cTAU
297  if flags.Trigger.L1.doeFex and flags.Trigger.L1.dojFex:
298  l1trMaker.cTauRoIKey = "L1_cTauRoI" # Note: WriteHandle
299  l1trMaker.cjTauLinkKey = "L1_cTauRoI.jTauLink" # Note: WriteDecorHandle
300  l1trMaker.ThresholdPatternTools += [
301  CompFactory.cTauRoIThresholdsTool(),
302  ]
303 
304  # Placeholder for other L1 xAOD outputs:
305  # - CTP result
306  # - L1Topo result
307 
308  acc.addEventAlgo(l1trMaker, primary=True)
309  return acc
310 
311 
312 def HLTSeedingCfg(flags, seqName = None):
313  if seqName:
314  from AthenaCommon.CFElements import parOR
315  acc = ComponentAccumulator(sequence=parOR(seqName)) # TODO - once rec-ex-common JO are phased out this can also be dropped
316  else:
317  acc = ComponentAccumulator()
318 
319  from HLTSeeding.HLTSeedingMonitoring import CTPUnpackingMonitoring, L1DataConsistencyMonitoring
320  decoderAlg = CompFactory.HLTSeeding(
321  RoIBResult = "RoIBResult", # Not yet ready to disable, see ATR-29954
322  L1TriggerResult = "L1TriggerResult" if flags.Trigger.enableL1MuonPhase1 or flags.Trigger.enableL1CaloPhase1 else "",
323  HLTSeedingSummaryKey = "HLTSeedingSummary", # Transient, consumed by DecisionSummaryMakerAlg
324  ctpUnpacker = CompFactory.CTPUnpackingTool( ForceEnableAllChains = flags.Trigger.forceEnableAllChains,
325  MonTool = CTPUnpackingMonitoring(flags, 512, 400) )
326  )
327 
328  # Add L1DataConsistencyChecker unless we forceEnableAllChains which always results in missing TOBs
329  if not (flags.Trigger.forceEnableAllChains or flags.Trigger.disableL1ConsistencyChecker):
330  def checkConsistency(thrName):
331  '''Filter out threshold types for which HLT doesn't read TOBs from L1 readout'''
332  return thrName not in ['FSNOSEED','TE','XE','XS'] and not thrName.startswith('PROBE')
333 
334  decoderAlg.L1DataConsistencyChecker = CompFactory.L1DataConsistencyChecker(
335  ThresholdToDecisionMap = dict([(k,v) for k,v in _mapL1ThresholdToDecisionCollection.items() if checkConsistency(k)]),
336  MonTool = L1DataConsistencyMonitoring(flags),
337  ErrorOnMissingTOB = flags.Trigger.L1.errorOnMissingTOB )
338 
339  #Transient bytestream
340  from AthenaConfiguration.Enums import Format
341  if flags.Input.Format is Format.POOL:
342  transTypeKey = ("TransientBSOutType","StoreGateSvc+TransientBSOutKey")
343  decoderAlg.ExtraInputs.add(transTypeKey)
344 
345  decoderAlg.RoIBRoIUnpackers += [
346  CompFactory.FSRoIsUnpackingTool("FSRoIsUnpackingTool", Decisions=mapThresholdToL1DecisionCollection("FSNOSEED"),
347  OutputTrigRoIs = recordable(mapThresholdToL1RoICollection("FSNOSEED")) ) ]
348 
349  if flags.Trigger.L1.doCalo:
350  if flags.Trigger.enableL1CaloPhase1:
351  decoderAlg.xAODRoIUnpackers += createCaloRoIUnpackers(flags)
352  if flags.Trigger.enableL1CaloLegacy:
353  decoderAlg.RoIBRoIUnpackers += createLegacyCaloRoIUnpackers(flags)
354 
355  if flags.Trigger.L1.doMuon:
356  if flags.Trigger.enableL1MuonPhase1:
357  decoderAlg.xAODRoIUnpackers += createMuonRoIUnpackers(flags)
358  else:
359  decoderAlg.RoIBRoIUnpackers += createLegacyMuonRoIUnpackers(flags)
360 
361  decoderAlg.prescaler = createPrescalingTool(flags)
362  decoderAlg.KeyWriterTool = createKeyWriterTool()
363  decoderAlg.DoCostMonitoring = flags.Trigger.CostMonitoring.doCostMonitoring
364  decoderAlg.CostMonitoringChain = flags.Trigger.CostMonitoring.chain
365  decoderAlg.RoiZedWidthDefault = flags.Trigger.InDetTracking.RoiZedWidthDefault
366 
367  if flags.Input.Format is Format.BS and not flags.Trigger.doLVL1:
368  # Add the algorithm decoding ByteStream into xAOD (Run-3 L1) and/or RoIBResult (legacy L1)
369  from TrigT1ResultByteStream.TrigT1ResultByteStreamConfig import L1TriggerByteStreamDecoderCfg
370  acc.merge( L1TriggerByteStreamDecoderCfg(flags), sequenceName = seqName )
371 
372  # Add the algorithm creating L1TriggerResult which is the input to HLTSeeding (Run-3 L1)
373  if flags.Trigger.enableL1MuonPhase1 or flags.Trigger.enableL1CaloPhase1:
374  acc.merge( L1TriggerResultMakerCfg(flags), sequenceName = seqName )
375 
376  acc.addEventAlgo( decoderAlg, sequenceName = seqName )
377 
378  from TrigConfigSvc.TrigConfigSvcCfg import TrigConfigSvcCfg, HLTPrescaleCondAlgCfg
379  acc.merge( TrigConfigSvcCfg( flags ) )
380  acc.merge( HLTPrescaleCondAlgCfg( flags ) )
381 
382  # Configure ROB prefetching from initial RoIs
383  from TriggerJobOpts.TriggerConfigFlags import ROBPrefetching
384  if ROBPrefetching.InitialRoI in flags.Trigger.ROBPrefetchingOptions:
385  allDecisionsSet = set()
386  for roiUnpacker in decoderAlg.RoIBRoIUnpackers + decoderAlg.xAODRoIUnpackers:
387  dec = str(roiUnpacker.Decisions)
388  if dec:
389  allDecisionsSet.add(dec)
390  allDecisions = sorted(list(allDecisionsSet))
391  from TrigGenericAlgs.TrigGenericAlgsConfig import ROBPrefetchingAlgCfg_Si, ROBPrefetchingAlgCfg_Calo, ROBPrefetchingAlgCfg_Muon
392  acc.merge(ROBPrefetchingAlgCfg_Si(flags, "initialRoI", RoILinkName="initialRoI", ROBPrefetchingInputDecisions=allDecisions), sequenceName=seqName)
393  acc.merge(ROBPrefetchingAlgCfg_Calo(flags,"initialRoI", RoILinkName="initialRoI", ROBPrefetchingInputDecisions=allDecisions), sequenceName=seqName)
394  acc.merge(ROBPrefetchingAlgCfg_Muon(flags,"initialRoI", RoILinkName="initialRoI", ROBPrefetchingInputDecisions=allDecisions), sequenceName=seqName)
395 
396  return acc
397 
398 
399 if __name__ == "__main__":
400  from AthenaConfiguration.AllConfigFlags import initConfigFlags
401  from AthenaConfiguration.TestDefaults import defaultTestFiles, defaultGeometryTags
402 
403  flags = initConfigFlags()
404  flags.Trigger.forceEnableAllChains= True
405  flags.Input.Files = defaultTestFiles.RAW_RUN2
406  flags.GeoModel.AtlasVersion = defaultGeometryTags.RUN2
407  flags.lock()
408  acc = HLTSeedingCfg( flags )
409  acc.wasMerged()
HLTSeedingConfig.createCaloRoIUnpackers
def createCaloRoIUnpackers(flags)
Definition: HLTSeedingConfig.py:126
python.TrigConfigSvcCfg.TrigConfigSvcCfg
def TrigConfigSvcCfg(flags)
Definition: TrigConfigSvcCfg.py:268
DerivationFramework::TriggerMatchingUtils::sorted
std::vector< typename R::value_type > sorted(const R &r, PROJ proj={})
Helper function to create a sorted vector from an unsorted range.
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
HLTSeedingMonitoring.RoIsUnpackingMonitoring
def RoIsUnpackingMonitoring(flags, prefix, maxCount, maxEta=3., phiOffset=0., etaOffset=0.)
Definition: HLTSeedingMonitoring.py:18
python.TrigGenericAlgsConfig.ROBPrefetchingAlgCfg_Muon
def ROBPrefetchingAlgCfg_Muon(flags, nameSuffix, **kwargs)
Definition: TrigGenericAlgsConfig.py:63
HLTSeedingMonitoring.L1DataConsistencyMonitoring
def L1DataConsistencyMonitoring(flags)
Definition: HLTSeedingMonitoring.py:46
HLTSeedingMonitoring.PrescalingMonitoring
def PrescalingMonitoring(flags)
Definition: HLTSeedingMonitoring.py:34
python.TrigGenericAlgsConfig.ROBPrefetchingAlgCfg_Calo
def ROBPrefetchingAlgCfg_Calo(flags, nameSuffix, **kwargs)
Definition: TrigGenericAlgsConfig.py:60
python.TrigConfigSvcCfg.HLTPrescaleCondAlgCfg
def HLTPrescaleCondAlgCfg(flags)
Definition: TrigConfigSvcCfg.py:334
python.TrigT1MuctpiPhase1Config.TrigThresholdDecisionToolCfg
def TrigThresholdDecisionToolCfg(flags, name="TrigThresholdDecisionTool", AODinput=False)
Definition: TrigT1MuctpiPhase1Config.py:9
python.JetAnalysisCommon.parOR
parOR
Definition: JetAnalysisCommon.py:271
HLTSeedingConfig.createLegacyCaloRoIUnpackers
def createLegacyCaloRoIUnpackers(flags)
Definition: HLTSeedingConfig.py:103
histSizes.list
def list(name, path='/')
Definition: histSizes.py:38
HLTSeedingConfig.createLegacyMuonRoIUnpackers
def createLegacyMuonRoIUnpackers(flags)
Definition: HLTSeedingConfig.py:208
CxxUtils::set
constexpr std::enable_if_t< is_bitmask_v< E >, E & > set(E &lhs, E rhs)
Convenience function to set bits in a class enum bitmask.
Definition: bitmask.h:232
HLTSeedingMonitoring.CTPUnpackingMonitoring
def CTPUnpackingMonitoring(flags, maxItems, maxChains)
Definition: HLTSeedingMonitoring.py:8
python.TrigGenericAlgsConfig.ROBPrefetchingAlgCfg_Si
def ROBPrefetchingAlgCfg_Si(flags, nameSuffix, **kwargs)
Definition: TrigGenericAlgsConfig.py:57
HLTSeedingConfig.L1TriggerResultMakerCfg
def L1TriggerResultMakerCfg(flags)
Definition: HLTSeedingConfig.py:242
HLTSeedingConfig.createKeyWriterTool
def createKeyWriterTool()
Definition: HLTSeedingConfig.py:235
python.AllConfigFlags.initConfigFlags
def initConfigFlags()
Definition: AllConfigFlags.py:19
HLTSeedingConfig.createMuonRoIUnpackers
def createMuonRoIUnpackers(flags)
Definition: HLTSeedingConfig.py:218
HLTSeedingConfig.mapThresholdToL1RoICollection
def mapThresholdToL1RoICollection(threshold)
Definition: HLTSeedingConfig.py:91
python.TriggerEDM.recordable
def recordable(arg, runVersion=3)
Definition: TriggerEDM.py:37
str
Definition: BTagTrackIpAccessor.cxx:11
TrigT1ResultByteStreamConfig.L1TriggerByteStreamDecoderCfg
def L1TriggerByteStreamDecoderCfg(flags, returnEDM=False)
Definition: TrigT1ResultByteStreamConfig.py:133
HLTSeedingConfig.createPrescalingTool
def createPrescalingTool(flags)
Definition: HLTSeedingConfig.py:229
HLTSeedingConfig.mapThresholdToL1DecisionCollection
def mapThresholdToL1DecisionCollection(threshold)
Definition: HLTSeedingConfig.py:79
HLTSeedingConfig.HLTSeedingCfg
def HLTSeedingCfg(flags, seqName=None)
Definition: HLTSeedingConfig.py:312