LibQuicR
quicr::messages::ObjectDatagram Struct Reference

Payload-bearing object datagram. More...

#include <message_serialisation.h>

Public Member Functions

std::uint8_t GetType () const
 
DatagramHeaderProperties GetProperties () const
 

Public Attributes

std::uint64_t track_alias
 Track alias encoded as UintVar. More...
 
std::uint64_t group_id
 Group identifier encoded as UintVar. More...
 
std::uint64_t object_id
 Object identifier; omitted on wire when zero. More...
 
std::optional< std::uint8_t > priority
 Explicit publisher priority, or absent to inherit the track default. More...
 
std::optional< Extensions > extensions
 Mutable object extensions. More...
 
std::optional< Extensions > immutable_extensions
 Immutable extensions nested in the immutable container. More...
 
uint64_t payload_len { 0 }
 Decoder-observed payload length; not serialized as a datagram field. More...
 
ObjectStatus object_status
 Not serialized by ObjectDatagram; payload datagrams imply available data. More...
 
Bytes payload
 Bytes occupying the remainder of this datagram. More...
 
bool end_of_group { false }
 Whether the header marks this as the final object in its group. More...
 

Detailed Description

Payload-bearing object datagram.

Member Function Documentation

◆ GetProperties()

DatagramHeaderProperties quicr::messages::ObjectDatagram::GetProperties ( ) const
inline

Determine the properties of this datagram header based on its fields.

Returns
The DatagramHeaderProperties corresponding to this datagram object.

◆ GetType()

std::uint8_t quicr::messages::ObjectDatagram::GetType ( ) const
inline

Determine the type of this datagram header based on its properties.

Returns
The DatagramHeaderType corresponding to this datagram header.

Member Data Documentation

◆ end_of_group

bool quicr::messages::ObjectDatagram::end_of_group { false }

Whether the header marks this as the final object in its group.

◆ extensions

std::optional<Extensions> quicr::messages::ObjectDatagram::extensions

Mutable object extensions.

◆ group_id

std::uint64_t quicr::messages::ObjectDatagram::group_id

Group identifier encoded as UintVar.

◆ immutable_extensions

std::optional<Extensions> quicr::messages::ObjectDatagram::immutable_extensions

Immutable extensions nested in the immutable container.

◆ object_id

std::uint64_t quicr::messages::ObjectDatagram::object_id

Object identifier; omitted on wire when zero.

◆ object_status

ObjectStatus quicr::messages::ObjectDatagram::object_status

Not serialized by ObjectDatagram; payload datagrams imply available data.

◆ payload

Bytes quicr::messages::ObjectDatagram::payload

Bytes occupying the remainder of this datagram.

◆ payload_len

uint64_t quicr::messages::ObjectDatagram::payload_len { 0 }

Decoder-observed payload length; not serialized as a datagram field.

◆ priority

std::optional<std::uint8_t> quicr::messages::ObjectDatagram::priority

Explicit publisher priority, or absent to inherit the track default.

◆ track_alias

std::uint64_t quicr::messages::ObjectDatagram::track_alias

Track alias encoded as UintVar.


The documentation for this struct was generated from the following file: