ATLAS Offline Software
Loading...
Searching...
No Matches
MuonBytestreamDecodeConfig.py
Go to the documentation of this file.
1# Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
2
3from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
4from AthenaConfiguration.ComponentFactory import CompFactory
5from AthenaConfiguration.Enums import ProductionStep
6
7
8class MuonCacheNames(object):
9 MdtCsmCache = "MdtCsmRdoCache"
10 CscCache = "CscRdoCache"
11 RpcCache = "RpcRdoCache"
12 TgcCache = "TgcRdoCache"
13
14
18def MuonCacheCfg(flags):
19
20
21 acc = ComponentAccumulator()
22
23 MuonCacheCreator=CompFactory.MuonCacheCreator
24 cacheCreator = MuonCacheCreator(MdtCsmCacheKey = MuonCacheNames.MdtCsmCache,
25 CscCacheKey = (MuonCacheNames.CscCache if flags.Detector.GeometryCSC else ""),
26 RpcCacheKey = MuonCacheNames.RpcCache,
27 TgcCacheKey = MuonCacheNames.TgcCache)
28
29 acc.addEventAlgo( cacheCreator, primary=True )
30 return acc
31
32
35def RpcBytestreamDecodeCfg(flags, name="MuonRpcRdoProvider", **kwargs):
36 acc = ComponentAccumulator()
37
38 # We need the RPC cabling to be setup
39 from MuonConfig.MuonCablingConfig import RPCCablingConfigCfg
40 acc.merge( RPCCablingConfigCfg(flags) )
41
42 # Make sure muon geometry is configured
43 from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg
44 acc.merge(MuonGeoModelCfg(flags))
45
46 # Setup the RPC ROD decoder
47 RPCRodDecoder = CompFactory.Muon.RpcROD_Decoder(name = "RpcROD_Decoder",NOBXS=flags.Trigger.L1MuonSim.RPCNBX)
48
49
50 # Setup the RAW data provider tool
51 keyName = f"{flags.Overlay.BkgPrefix}RPCPAD" if flags.Common.ProductionStep is ProductionStep.MinbiasPreprocessing else "RPCPAD"
52 MuonRpcRawDataProviderTool = CompFactory.Muon.RPC_RawDataProviderTool(name = "RPC_RawDataProviderTool",
53 Decoder = RPCRodDecoder,
54 RdoLocation = keyName )
55 if flags.Muon.MuonTrigger:
56 MuonRpcRawDataProviderTool.RpcContainerCacheKey = MuonCacheNames.RpcCache
57 MuonRpcRawDataProviderTool.WriteOutRpcSectorLogic = False
58
59
60 # Setup the RAW data provider algorithm
61 RpcRawDataProvider = CompFactory.Muon.MuonRawDataProvider(name = name,
62 ProviderTool = MuonRpcRawDataProviderTool, **kwargs )
63
64 if flags.Muon.MuonTrigger:
65 # add RegSelTool
66 from RegionSelector.RegSelToolConfig import regSelTool_RPC_Cfg
67 RpcRawDataProvider.RegionSelectionTool = acc.popToolsAndMerge( regSelTool_RPC_Cfg( flags ) )
68
69
70 acc.addEventAlgo(RpcRawDataProvider, primary=True)
71 return acc
72
73def NrpcBytestreamDecodeCfg(flags, name="MuonNRpcRdoProvider", **kwargs):
74 acc = ComponentAccumulator()
75
76 # We need the NRPC cabling to be setup
77 from MuonConfig.MuonCablingConfig import NRPCCablingConfigCfg
78 acc.merge( NRPCCablingConfigCfg(flags) )
79
80 # Make sure muon geometry is configured
81 from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg
82 acc.merge(MuonGeoModelCfg(flags))
83
84
85 # Setup the RAW data provider tool
86 keyName = flags.Overlay.BkgPrefix + "NRPCRDO" if flags.Common.isOverlay else "NRPCRDO"
87 MuonNrpcRawDataProviderTool = CompFactory.Muon.NRPC_RawDataProviderTool(name = "NRPC_RawDataProviderTool",
88 NrpcRdoKey = keyName )
89
90 # Setup the RAW data provider algorithm
91 NrpcRawDataProvider = CompFactory.Muon.MuonRawDataProvider(name = name,
92 ProviderTool = MuonNrpcRawDataProviderTool, **kwargs )
93
94 acc.addEventAlgo(NrpcRawDataProvider, primary=True)
95 return acc
96
97def TgcBytestreamDecodeCfg(flags, name="MuonTgcRdoProvider", **kwargs):
98 acc = ComponentAccumulator()
99
100 # We need the TGC cabling to be setup
101 from MuonConfig.MuonCablingConfig import TGCCablingConfigCfg
102 acc.merge( TGCCablingConfigCfg(flags) )
103
104 # Make sure muon geometry is configured
105 from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg
106 acc.merge(MuonGeoModelCfg(flags))
107
108 # Setup the TGC ROD decoder
109 Muon__TGC_RodDecoderReadout=CompFactory.Muon.TGC_RodDecoderReadout
110 TGCRodDecoder = Muon__TGC_RodDecoderReadout(name = "TgcROD_Decoder")
111
112
113 # Setup the RAW data provider tool
114 keyName = f"{flags.Overlay.BkgPrefix}TGCRDO" if flags.Common.ProductionStep is ProductionStep.MinbiasPreprocessing else "TGCRDO"
115 MuonTgcRawDataProviderTool = CompFactory.Muon.TGC_RawDataProviderTool(name = "TGC_RawDataProviderTool",
116 Decoder = TGCRodDecoder,
117 RdoLocation = keyName )
118
119 if flags.Muon.MuonTrigger:
120 MuonTgcRawDataProviderTool.TgcContainerCacheKey = MuonCacheNames.TgcCache
121
122
123 if flags.Muon.MuonTrigger:
124 kwargs.setdefault("UseHashIds", True)
125
126 # Setup the RAW data provider algorithm
127 TgcRawDataProvider = CompFactory.Muon.MuonRawDataProvider(name = name,
128 ProviderTool = MuonTgcRawDataProviderTool, **kwargs )
129 if flags.Muon.MuonTrigger:
130 # add RegSelTool
131 from RegionSelector.RegSelToolConfig import regSelTool_TGC_Cfg
132 TgcRawDataProvider.RegionSelectionTool = acc.popToolsAndMerge( regSelTool_TGC_Cfg( flags ) )
133
134
135 acc.addEventAlgo(TgcRawDataProvider,primary=True)
136
137 return acc
138
139def MdtBytestreamDecodeCfg(flags, name="MuonMdtRdoProvider", **kwargs):
140 acc = ComponentAccumulator()
141
142 # We need the MDT cabling to be setup
143 from MuonConfig.MuonCablingConfig import MDTCablingConfigCfg
144 acc.merge( MDTCablingConfigCfg(flags) )
145
146 # need the MagFieldSvc since MdtRdoToMdtPrepData.MdtRdoToMdtPrepDataTool.MdtCalibrationTool wants to retrieve it
147 from MagFieldServices.MagFieldServicesConfig import AtlasFieldCacheCondAlgCfg
148 acc.merge( AtlasFieldCacheCondAlgCfg(flags) )
149
150 # Make sure muon geometry is configured
151 from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg
152 acc.merge(MuonGeoModelCfg(flags))
153
154 # Setup the MDT ROD decoder
155 MdtROD_Decoder=CompFactory.MdtROD_Decoder
156 MDTRodDecoder = MdtROD_Decoder(name="MdtROD_Decoder")
157
158
159 # Setup the RAW data provider tool
160 keyName = f"{flags.Overlay.BkgPrefix}MDTCSM" if flags.Common.ProductionStep is ProductionStep.MinbiasPreprocessing else "MDTCSM"
161 MuonMdtRawDataProviderTool = CompFactory.Muon.MDT_RawDataProviderTool(name = "MDT_RawDataProviderTool",
162 Decoder = MDTRodDecoder,
163 RdoLocation = keyName)
164
165 if flags.Muon.MuonTrigger:
166 MuonMdtRawDataProviderTool.CsmContainerCacheKey = MuonCacheNames.MdtCsmCache
167
168 # Setup the RAW data provider algorithm
169 MdtRawDataProvider = CompFactory.Muon.MuonRawDataProvider(name = name,
170 ProviderTool = MuonMdtRawDataProviderTool, **kwargs )
171 if flags.Muon.MuonTrigger:
172 # add RegSelTool
173 from RegionSelector.RegSelToolConfig import regSelTool_MDT_Cfg
174 MdtRawDataProvider.RegionSelectionTool = acc.popToolsAndMerge( regSelTool_MDT_Cfg( flags ) )
175
176
177 acc.addEventAlgo(MdtRawDataProvider,primary=True)
178
179 return acc
180
181def CscBytestreamDecodeCfg(flags, name="CscRawDataProvider", **kwargs):
182 acc = ComponentAccumulator()
183
184 # We need the CSC cabling to be setup
185 from MuonConfig.MuonCablingConfig import CSCCablingConfigCfg # Not yet been prepared
186 acc.merge( CSCCablingConfigCfg(flags) )
187
188 # Make sure muon geometry is configured
189 from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg
190 acc.merge(MuonGeoModelCfg(flags))
191
192 # Setup the CSC ROD decoder
193 Muon__CscROD_Decoder=CompFactory.Muon.CscROD_Decoder
194 CSCRodDecoder = Muon__CscROD_Decoder(name = "CscROD_Decoder" )
195
196
197 # Setup the RAW data provider tool
198 keyName = f"{flags.Overlay.BkgPrefix}CSCRDO" if flags.Common.ProductionStep is ProductionStep.MinbiasPreprocessing else "CSCRDO"
199 MuonCscRawDataProviderTool = CompFactory.Muon.CSC_RawDataProviderTool(name = "CSC_RawDataProviderTool",
200 Decoder = CSCRodDecoder,
201 RdoLocation = keyName)
202 if flags.Muon.MuonTrigger:
203 MuonCscRawDataProviderTool.CscContainerCacheKey = MuonCacheNames.CscCache
204
205 # Setup the RAW data provider algorithm
206 CscRawDataProvider = CompFactory.Muon.MuonRawDataProvider(name = name,
207 ProviderTool = MuonCscRawDataProviderTool, **kwargs )
208 if flags.Muon.MuonTrigger:
209 # add RegSelTool
210 from RegionSelector.RegSelToolConfig import regSelTool_CSC_Cfg
211 CscRawDataProvider.RegionSelectionTool = acc.popToolsAndMerge( regSelTool_CSC_Cfg( flags ) )
212
213
214 acc.addEventAlgo(CscRawDataProvider,primary=True)
215
216 return acc
217
218
219def sTgcRODDecoderCfg(flags, name = "sTgcROD_Decoder", **kwargs):
220 result = ComponentAccumulator()
221
222 if False and not flags.Muon.MuonTrigger and not flags.Input.isMC:
223 from MuonConfig.MuonCondAlgConfig import NswDcsDbAlgCfg
224 result.merge(NswDcsDbAlgCfg(flags))
225 else:
226 kwargs.setdefault("DcsKey", "")
227
228 if flags.Input.isMC:
229 kwargs.setdefault("CablingMap","")
230 else:
231 # We need the sTGC cabling to be setup
232 from MuonConfig.MuonCablingConfig import sTgcCablingCfg
233 result.merge( sTgcCablingCfg(flags) )
234 kwargs.setdefault("CablingMap","stgcCablingMap")
235
236
237 # Setup the sTGC ROD decoder
238 STGCRodDecoder = CompFactory.Muon.STGC_ROD_Decoder(name = name, **kwargs)
239 result.setPrivateTools(STGCRodDecoder)
240 return result
241
242def sTgcBytestreamDecodeCfg(flags, name="MuonStgcRdoProvider", **kwargs):
243
244 acc = ComponentAccumulator()
245
246
247 # Make sure muon geometry is configured
248 from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg
249 acc.merge(MuonGeoModelCfg(flags))
250
251
252
253 # Setup the RAW data provider tool
254 keyName = f"{flags.Overlay.BkgPrefix}sTGCRDO" if flags.Common.ProductionStep is ProductionStep.MinbiasPreprocessing else "sTGCRDO"
255 MuonsTgcRawDataProviderTool = CompFactory.Muon.STGC_RawDataProviderTool(name = "sTgcRawDataProviderTool",
256 Decoder = acc.popToolsAndMerge(sTgcRODDecoderCfg(flags)),
257 RdoLocation = keyName,
258 SkipDecoding=flags.Muon.MuonTrigger and flags.Muon.runCommissioningChain )
259
260 #if flags.Muon.MuonTrigger:
261 # MuonsTgcRawDataProviderTool.sTgcContainerCacheKey = MuonCacheNames.sTgcCache
262
263 # Setup the RAW data provider algorithm
264 sTgcRawDataProvider = CompFactory.Muon.MuonRawDataProvider(name = name,
265 ProviderTool = MuonsTgcRawDataProviderTool, **kwargs )
266 if flags.Muon.MuonTrigger:
267 # add RegSelTool
268 from RegionSelector.RegSelToolConfig import regSelTool_STGC_Cfg
269 sTgcRawDataProvider.RegionSelectionTool = acc.popToolsAndMerge( regSelTool_STGC_Cfg( flags ) )
270
271
272 acc.addEventAlgo(sTgcRawDataProvider,primary=True)
273
274 return acc
275
276def NswTrigProcessorRodDecoderCfg(flags, name ="NswTrigProcessorDecoder", **kwargs):
277 result = ComponentAccumulator()
278 the_tool = CompFactory.Muon.NSWTP_ROD_Decoder(name = name, **kwargs)
279 result.setPrivateTools(the_tool)
280 return result
281def NswTrigProcessorRawDataProviderToolCfg(flags, name = "NswTrigProcessorRawDataTool", **kwargs ):
282 result = ComponentAccumulator()
283 kwargs.setdefault("Decoder", result.popToolsAndMerge(NswTrigProcessorRodDecoderCfg(flags)))
284 kwargs.setdefault( "RdoLocation", ( flags.Overlay.BkgPrefix if flags.Common.isOverlay else "") + "NSW_TrigProcessor_RDO" )
285 the_tool = CompFactory.Muon.NSWTP_RawDataProviderTool(name = name, **kwargs)
286 result.setPrivateTools(the_tool)
287 return result
288def NswTrigProcByteStreamDecodeCfg(flags, name = "NswProcByteStream"):
289 result = ComponentAccumulator()
290 # Make sure muon geometry is configured
291 from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg
292 result.merge(MuonGeoModelCfg(flags))
293 the_alg = CompFactory.Muon.MuonRawDataProvider(name = name,
294 ProviderTool = result.popToolsAndMerge(NswTrigProcessorRawDataProviderToolCfg(flags)) )
295 result.addEventAlgo(the_alg, primary = True)
296 return result
297
298def sTgcPadTriggerBytestreamDecodeCfg(flags, name="sTgcPadTriggerRawDataProvider", **kwargs):
299
300 acc = ComponentAccumulator()
301
302 # Make sure muon geometry is configured
303 from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg
304 acc.merge(MuonGeoModelCfg(flags))
305
306 # Setup the sTGC ROD decoder
307 Muon__PadTrig_ROD_Decoder = CompFactory.Muon.PadTrig_ROD_Decoder
308 STGCPadTriggerRodDecoder = Muon__PadTrig_ROD_Decoder(name = "sTgcPadTriggerROD_Decoder")
309
310
311 # Setup the RAW data provider tool
312 keyName = flags.Overlay.BkgPrefix + "NSW_PadTrigger_RDO" if flags.Common.isOverlay else "NSW_PadTrigger_RDO"
313 MuonsTgcPadTriggerRawDataProviderTool = CompFactory.Muon.PadTrig_RawDataProviderTool(name = "sTgcPadTriggerRawDataProviderTool",
314 Decoder = STGCPadTriggerRodDecoder,
315 RdoLocation = keyName)
316
317
318 # Setup the RAW data provider algorithm
319 the_alg = CompFactory.Muon.MuonRawDataProvider(name = name,
320 ProviderTool = MuonsTgcPadTriggerRawDataProviderTool, **kwargs )
321
322 acc.addEventAlgo(the_alg, primary = True)
323
324 return acc
325
326def MmRDODDecoderCfg(flags, name="MmROD_Decoder", **kwargs):
327 result = ComponentAccumulator()
328
329 if not flags.Muon.MuonTrigger and not flags.Input.isMC:
330 from MuonConfig.MuonCondAlgConfig import NswDcsDbAlgCfg
331 if False: result.merge(NswDcsDbAlgCfg(flags))
332 from MuonConfig.MuonCablingConfig import MmCablingCfg
333 result.merge(MmCablingCfg(flags))
334 else:
335 kwargs.setdefault("CablingMap", "")
336
337 kwargs.setdefault("DcsKey", "")
338
339 the_tool = CompFactory.Muon.MM_ROD_Decoder(name = name, **kwargs)
340 result.setPrivateTools(the_tool)
341 return result
342def MmBytestreamDecodeCfg(flags, name="MuonMmRdoProvider", **kwargs):
343 acc = ComponentAccumulator()
344
345 # We need the MM cabling to be setup
346 #from MuonConfig.MuonCablingConfig import MM_CablingConfigCfg
347 #acc.merge( MM_CablingConfigCfg(flags) )
348
349 # Make sure muon geometry is configured
350 from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg
351 acc.merge(MuonGeoModelCfg(flags))
352
353 # Setup the RAW data provider tool
354 keyName = f"{flags.Overlay.BkgPrefix}MMRDO" if flags.Common.ProductionStep is ProductionStep.MinbiasPreprocessing else "MMRDO"
355 MuonMmRawDataProviderTool = CompFactory.Muon.MM_RawDataProviderTool(name = "MM_RawDataProviderTool",
356 Decoder = acc.popToolsAndMerge(MmRDODDecoderCfg(flags)),
357 RdoLocation = keyName,
358 SkipDecoding=flags.Muon.MuonTrigger and flags.Muon.runCommissioningChain)
359
360 #if flags.Muon.MuonTrigger:
361 # MuonMmRawDataProviderTool.RawDataContainerCacheKey = MuonCacheNames.MicromegasCache
362
363 # Setup the RAW data provider algorithm
364 MmRawDataProvider = CompFactory.Muon.MuonRawDataProvider(name = name, ProviderTool = MuonMmRawDataProviderTool, **kwargs )
365 if flags.Muon.MuonTrigger:
366 # add RegSelTool
367 from RegionSelector.RegSelToolConfig import regSelTool_MM_Cfg
368 MmRawDataProvider.RegionSelectionTool = acc.popToolsAndMerge( regSelTool_MM_Cfg( flags ) )
369
370 acc.addEventAlgo(MmRawDataProvider,primary=True)
371
372 return acc
373
374def NswMMTPRodDecoderCfg(flags, name ="NswMMTPRodDecoder", **kwargs):
375 result = ComponentAccumulator()
376 the_tool = CompFactory.Muon.NSWMMTP_ROD_Decoder(name = name, **kwargs)
377 result.setPrivateTools(the_tool)
378 return result
379
380def NswMMTPRawDataProviderToolCfg(flags, name = "NswMMTPRawDataProviderTool", **kwargs ):
381 result = ComponentAccumulator()
382 kwargs.setdefault( "Decoder", result.popToolsAndMerge(NswMMTPRodDecoderCfg(flags)))
383 kwargs.setdefault( "RdoLocation", ( flags.Overlay.BkgPrefix if flags.Common.isOverlay else "") + "NSW_MMTrigProcessor_RDO" )
384 the_tool = CompFactory.Muon.NSWMMTP_RawDataProviderToolMT(name = name, **kwargs)
385 result.setPrivateTools(the_tool)
386 return result
387
388def NswMMTPByteStreamDecodeCfg(flags, name = "NswMMTPByteStreamDecode", **kwargs ):
389 result = ComponentAccumulator()
390 # Make sure muon geometry is configured
391 from MuonConfig.MuonGeometryConfig import MuonGeoModelCfg
392 result.merge(MuonGeoModelCfg(flags))
393
394 #recycling Pad data provider since not it's not doing anything
395 the_alg = CompFactory.Muon.MuonRawDataProvider(name = name, ProviderTool = result.popToolsAndMerge(NswMMTPRawDataProviderToolCfg(flags)), **kwargs )
396 result.addEventAlgo(the_alg, primary = True)
397 return result
398
399
401 cfg=ComponentAccumulator()
402
403 # Adds all services needed to read BS
404 from ByteStreamCnvSvc.ByteStreamConfig import ByteStreamReadCfg
405 cfg.merge(ByteStreamReadCfg(flags ))
406
407 # Schedule Rpc data decoding
408 if flags.Detector.EnableRPC:
409 cfg.merge(RpcBytestreamDecodeCfg(flags))
410
411 if flags.Muon.enableNRPC:
412 # Schedule Nrpc data decoding
413 cfg.merge(NrpcBytestreamDecodeCfg(flags))
414
415 # Schedule Tgc data decoding
416 if flags.Detector.EnableTGC:
417 cfg.merge(TgcBytestreamDecodeCfg(flags))
418
419 # Schedule Mdt data decoding
420 if flags.Detector.EnableMDT:
421 cfg.merge(MdtBytestreamDecodeCfg(flags))
422
423 # Schedule Csc data decoding
424 if flags.Detector.GeometryCSC:
425 cfg.merge(CscBytestreamDecodeCfg(flags))
426
427 if flags.Detector.GeometryMM:
428 # Schedule MM and MMTP data decoding
429 cfg.merge( MmBytestreamDecodeCfg( flags ) )
430 cfg.merge( NswMMTPByteStreamDecodeCfg(flags) )
431
432 # Schedule sTGC data decoding
433 if flags.Detector.GeometrysTGC:
434 cfg.merge(sTgcBytestreamDecodeCfg(flags))
435 # Schedule sTGC Pad Trigger data decoding
436 cfg.merge( sTgcPadTriggerBytestreamDecodeCfg(flags))
437
438 if flags.Detector.GeometrysTGC and flags.Detector.GeometryMM:
439 cfg.merge(NswTrigProcByteStreamDecodeCfg(flags))
440
441 return cfg
442
443
444if __name__=="__main__":
445 # To run this, do e.g.
446 # python -m MuonConfig.MuonBytestreamDecode [--config-only] flags...
447
448 from AthenaConfiguration.AllConfigFlags import initConfigFlags
449 from AthenaConfiguration.TestDefaults import defaultConditionsTags, defaultGeometryTags, defaultTestFiles
450 flags = initConfigFlags()
451 # Set some defaults (can be changed on command line)
452 flags.Input.Files = defaultTestFiles.RAW_RUN2
453 flags.IOVDb.GlobalTag = defaultConditionsTags.RUN2_DATA
454 flags.GeoModel.AtlasVersion = defaultGeometryTags.RUN2
455 flags.Concurrency.NumThreads = 1
456 flags.Exec.MaxEvents = 5
457
458 args = flags.fillFromArgs()
459 flags.lock()
460 flags.dump()
461 if not args.config_only:
462 from AthenaConfiguration.MainServicesConfig import MainServicesCfg
463 cfg = MainServicesCfg(flags)
464 else:
465 cfg = ComponentAccumulator()
466
467 cfg.merge( MuonByteStreamDecodersCfg(flags) )
468 cfg.printConfig(withDetails=True)
469
470 if not args.config_only:
471 import sys
472 sys.exit(not cfg.run().isSuccess())
473
Small class to hold the names for cache containers, should help to avoid copy / paste errors.
MmBytestreamDecodeCfg(flags, name="MuonMmRdoProvider", **kwargs)
NswTrigProcessorRodDecoderCfg(flags, name="NswTrigProcessorDecoder", **kwargs)
MdtBytestreamDecodeCfg(flags, name="MuonMdtRdoProvider", **kwargs)
sTgcPadTriggerBytestreamDecodeCfg(flags, name="sTgcPadTriggerRawDataProvider", **kwargs)
sTgcRODDecoderCfg(flags, name="sTgcROD_Decoder", **kwargs)
NswTrigProcessorRawDataProviderToolCfg(flags, name="NswTrigProcessorRawDataTool", **kwargs)
sTgcBytestreamDecodeCfg(flags, name="MuonStgcRdoProvider", **kwargs)
NswTrigProcByteStreamDecodeCfg(flags, name="NswProcByteStream")
MmRDODDecoderCfg(flags, name="MmROD_Decoder", **kwargs)
MuonCacheCfg(flags)
This configuration function creates the IdentifiableCaches for RDO.
NswMMTPByteStreamDecodeCfg(flags, name="NswMMTPByteStreamDecode", **kwargs)
NswMMTPRawDataProviderToolCfg(flags, name="NswMMTPRawDataProviderTool", **kwargs)
TgcBytestreamDecodeCfg(flags, name="MuonTgcRdoProvider", **kwargs)
CscBytestreamDecodeCfg(flags, name="CscRawDataProvider", **kwargs)
NrpcBytestreamDecodeCfg(flags, name="MuonNRpcRdoProvider", **kwargs)
RpcBytestreamDecodeCfg(flags, name="MuonRpcRdoProvider", **kwargs)
This configuration function sets up everything for decoding RPC bytestream data into RDOs.
NswMMTPRodDecoderCfg(flags, name="NswMMTPRodDecoder", **kwargs)