Implement rewriteLVL1 and L1 ByteStream encoder example
Changes
- Update the
IL1TriggerByteStreamTool
interface to fully support concrete implementations of xAOD -> ByteStream conversion for Level-1 Trigger objects. - Implement an example of such conversion based on
xAOD::MuonRoI
in theExampleL1TriggerByteStreamTool
- Implement a Gaudi Converter for
xAOD::TrigCompositeContainer#L1TriggerResult
which calls the above tool(s) - Implement a hook to call the L1 xAOD->BS conversion in
HltEventLoopMgr
- Implement the corresponding python configuration
- Change the
rewriteLVL1
Trigger Modifier to use the new infrastructure
Jira
ATR-19542 for the conversion infrastructure and configuration
ATR-20745 for the encoding interface and example
Tests
Tested with:
athenaHLT.py -o output -l DEBUG -c "decodePhaseIL1=True;rewriteLVL1=True" -n 50 -f /cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/TrigP1Test/data18_13TeV.00360026.physics_EnhancedBias.merge.RAW._lb0151._SFO-1._0001.1 TriggerJobOpts/runHLT_standalone.py
Additionally tested that the conversion works by hard-coding the raw data words to 123456, running the above command and checking the output ByteStream data with dump-eformat-in-data.py
. The output data look correct:
0x0008b3c3 0x00760001 7733249 sourceid: TDAQ_MUON_CTP_INTERFACE, module=1 (opt=0)
0x0008b3c4 0x00057e5a 360026 run number
0x0008b3c5 0x257f4137 629096759 lvl1 identifier
0x0008b3c6 0x000008ac 2220 bunch crossing identifier
0x0008b3c7 0x00000088 136 lvl1 trigger type
0x0008b3c8 0x00000000 0 detector event type
0x0008b3c9 0x0001e240 123456 data[0]
0x0008b3ca 0x0001e240 123456 data[1]
0x0008b3cb 0x00000000 0 status[0]
0x0008b3cc 0x00000001 1 number of status words
0x0008b3cd 0x00000002 2 number of data words
0x0008b3ce 0x00000001 1 status position
Edited by Rafal Bielski