Expand description
Data stream headers (subgroup, datagram, fetch, object). Draft-16 data stream header encoding and decoding.
Draft-16 subgroup type-byte flag layout (differs from draft-15):
& 0x01: extensions present on objects& 0x02: subgroup_id_mode bit — when set, subgroup_id = first object_id& 0x04: explicit subgroup_id present on the wire& 0x08: end-of-group marker& 0x20: no publisher_priority (0x30+ types)
Draft-16 datagram type-byte flag layout:
0x01: extensions present (byte-length-prefixed blob)0x02: end-of-group0x04: no object_id (object_id = 0 implied)0x08: default priority (priority omitted, inherited)0x20: status datagram (carries object_status instead of payload)
Extension headers in draft-16 are byte-length-prefixed opaque blobs (not count-prefixed as in draft-14).
Structs§
- Datagram
Header - Fetch
Header - Subgroup
Header - Subgroup
Object - One object within a draft-16 subgroup stream with its Object ID
already resolved from the delta encoding. See
SubgroupObjectReaderfor stateful encode/decode. - Subgroup
Object Reader - Stateful reader/writer for draft-16 subgroup objects. Mirrors the draft-15 semantics (delta-encoded object IDs and header-typed extension presence).