135 maybeMissingRobs = []
140 if not flags.Trigger.doLVL1:
143 flags, name=
"RoIBResultBSDecoderTool", writeBS=
False))
144 decoderTools += [roibResultTool]
146 for module_id
in roibResultTool.L1TopoModuleIds:
147 maybeMissingRobs.append(
int(SourceIdentifier(SubDetector.TDAQ_CALO_TOPO_PROC, module_id)))
148 if flags.Trigger.EDMVersion == 2
and not flags.Trigger.doHLT:
150 for module_id
in roibResultTool.JetModuleIds:
151 maybeMissingRobs.append(
int(SourceIdentifier(SubDetector.TDAQ_CALO_JET_PROC_ROI, module_id)))
152 for module_id
in roibResultTool.EMModuleIds:
153 maybeMissingRobs.append(
int(SourceIdentifier(SubDetector.TDAQ_CALO_CLUSTER_PROC_ROI, module_id)))
158 if flags.Trigger.L1.doMuon
and flags.Trigger.enableL1MuonPhase1
and flags.Trigger.doHLT:
160 flags, name=
"L1MuonBSDecoderTool", writeBS=
False))
161 decoderTools += [muonRoiTool]
166 if flags.Trigger.L1.doCalo
and flags.Trigger.enableL1CaloPhase1:
170 if flags.Trigger.L1.doeFex:
172 if flags.Trigger.doHLT:
190 decodeInputs=flags.Trigger.L1.doCaloInputs
192 decoderTools += [eFexByteStreamTool]
195 if not flags.Trigger.doHLT:
196 maybeMissingRobs += eFexByteStreamTool.ROBIDs
201 if flags.Trigger.L1.dojFex:
203 if flags.Trigger.doHLT:
217 decoderTools += [jFexRoiByteStreamTool]
218 maybeMissingRobs += jFexRoiByteStreamTool.ROBIDs
221 if flags.Trigger.L1.doCaloInputs:
224 'jFexInputBSDecoderTool',
227 decoderTools += [jFexInputByteStreamTool]
228 maybeMissingRobs += jFexInputByteStreamTool.ROBIDs
234 if flags.Trigger.L1.dogFex:
236 if flags.Trigger.doHLT:
242 decoderTools += [gFexByteStreamTool]
243 maybeMissingRobs += gFexByteStreamTool.ROBIDs
246 if flags.Trigger.L1.doCaloInputs:
249 'gFexInputBSDecoderTool',
252 decoderTools += [gFexInputByteStreamTool]
253 maybeMissingRobs += gFexInputByteStreamTool.ROBIDs
258 if flags.Trigger.L1.doTopo
and flags.Trigger.enableL1CaloPhase1
and flags.Trigger.L1.doTopoPhase1:
261 "L1TopoBSDecoderTool",
264 decoderTools += [topoByteStreamTool]
265 maybeMissingRobs += topoByteStreamTool.ROBIDs
267 decoderAlg = CompFactory.L1TriggerByteStreamDecoderAlg(name=
"L1TriggerByteStreamDecoder",
268 DecoderTools=decoderTools,
269 MaybeMissingROBs=
list(
set(maybeMissingRobs)))
271 if flags.Trigger.doHLT
or flags.DQ.Steering.doHLTMon:
272 from TrigT1ResultByteStream.TrigT1ResultByteStreamMonitoringConfig
import L1TriggerByteStreamDecoderMonitoringCfg
275 acc.addEventAlgo(decoderAlg, primary=
True)
278 from TriggerJobOpts.TriggerByteStreamConfig
import ByteStreamReadCfg
280 readBSAcc.getEventAlgo(
'SGInputLoader').Load.add(
281 (
'ByteStreamMetadataContainer',
'InputMetaDataStore+ByteStreamMetadata'))
285 if not flags.Trigger.doHLT:
286 from OutputStreamAthenaPool.OutputStreamConfig
import addToESD, addToAOD
288 _log.info(
'Adding the following output EDM to ItemList: %s', outputEDM)
289 acc.merge(
addToESD(flags, outputEDM))
290 acc.merge(
addToAOD(flags, outputEDM))
296 return acc, outputEDM