JLAB SRO Output
The jlabsro format writes packed binary frame records in the Jefferson Lab Streaming
Readout (SRO) format. It is used when GEMC simulates time-ordered frame snapshots rather
than individual events.
Configuration
gstreamer:
- format: jlabsro
filename: myrun
type: stream
The type: stream sub-key is required; this format only supports frame-stream output.
Produces one .ev file per plugin instance:
myrun.ev
Frame record structure
Each frame record is a contiguous binary block consisting of:
-
A packed
DataFrameHeader(56 bytes):Field Type Description source_iduint32 Source identifier total_lengthuint32 Total frame length in bytes payload_lengthuint32 Payload length in bytes compressed_lengthuint32 Compressed length (0 = uncompressed) magicuint32 Format magic number format_versionuint32 Format version flagsuint32 Status flags record_counteruint64 Frame sequence number ts_secuint64 Timestamp seconds ts_nsecuint64 Timestamp nanoseconds -
The frame payload: the integral payload words from the active sensitive detectors.
All fields are written in the byte order native to the host platform.
When to use JLAB SRO
Use this format when:
- Simulating the JLab streaming readout DAQ pipeline.
- The downstream software expects
.evbinary frames produced by JLab SRO hardware. - Your digitization plugin produces
GIntegralPayloadobjects via a stream-mode sensitive detector.
For standard event-based simulation, use csv,
root, or hipo instead.