|
LibQuicR
|
#include <message_serialisation.h>
Public Member Functions | |
| constexpr | StreamHeaderProperties (const std::uint64_t type) |
| constexpr | StreamHeaderProperties (const bool extensions, const SubgroupIdType subgroup_id_mode, const bool end_of_group, const bool default_priority, const bool first_object) |
| constexpr std::uint64_t | GetType () const |
Static Public Member Functions | |
| static constexpr bool | IsValid (const std::uint64_t type) noexcept |
Public Attributes | |
| const bool | extensions |
| Whether every subgroup object carries an extension-block length, possibly zero. More... | |
| const SubgroupIdType | subgroup_id_mode |
| Subgroup-ID omission/serialization mode. More... | |
| const bool | end_of_group |
| Whether this subgroup contains the largest object in its group. More... | |
| const bool | default_priority |
| Whether priority is omitted and inherited from the publisher. More... | |
| const bool | first_object |
| Whether this is the subgroup's original first object rather than a resumed stream. More... | |
Static Public Attributes | |
| static constexpr std::uint8_t | kExtensionsBit = 0x01 |
| Bit indicating extension lengths are present. More... | |
| static constexpr std::uint8_t | kSubgroupIdMask = 0x06 |
| Two-bit subgroup-ID mode mask. More... | |
| static constexpr std::uint8_t | kEndOfGroupBit = 0x08 |
| Bit indicating end of group. More... | |
| static constexpr std::uint8_t | kTypeBit = 0x10 |
| Required subgroup-stream type bit. More... | |
| static constexpr std::uint8_t | kDefaultPriorityBit = 0x20 |
| Bit indicating inherited publisher priority. More... | |
| static constexpr std::uint8_t | kFirstObjectBit = 0x40 |
| Bit indicating the original first object. More... | |
| static constexpr std::uint64_t | kAllowedBitsMask |
| Mask of all recognized stream-header bits. More... | |
Describes the properties of a stream header type.
|
inlineexplicitconstexpr |
Decodes properties from a wire type.
| type | Wire-format stream-header bitfield. |
| ProtocolViolationException | if reserved bits, the type bit, or subgroup mode are invalid. |
|
inlineconstexpr |
Constructs properties from fields.
| extensions | Whether an extension block is present. |
| subgroup_id_mode | Subgroup-ID omission/serialization mode. |
| end_of_group | Whether this subgroup contains the group's largest object. |
| default_priority | Whether publisher priority is inherited. |
| first_object | Whether this is the subgroup's original first object. |
| ProtocolViolationException | if subgroup_id_mode is kReserved. |
|
inlineconstexpr |
|
inlinestaticconstexprnoexcept |
| type | Stream-header type bitfield to validate. |
type uses only allowed bits, has the type bit, and has a nonreserved subgroup mode. | const bool quicr::messages::StreamHeaderProperties::default_priority |
Whether priority is omitted and inherited from the publisher.
| const bool quicr::messages::StreamHeaderProperties::end_of_group |
Whether this subgroup contains the largest object in its group.
| const bool quicr::messages::StreamHeaderProperties::extensions |
Whether every subgroup object carries an extension-block length, possibly zero.
| const bool quicr::messages::StreamHeaderProperties::first_object |
Whether this is the subgroup's original first object rather than a resumed stream.
|
staticconstexpr |
Mask of all recognized stream-header bits.
|
staticconstexpr |
Bit indicating inherited publisher priority.
|
staticconstexpr |
Bit indicating end of group.
|
staticconstexpr |
Bit indicating extension lengths are present.
|
staticconstexpr |
Bit indicating the original first object.
|
staticconstexpr |
Two-bit subgroup-ID mode mask.
|
staticconstexpr |
Required subgroup-stream type bit.
| const SubgroupIdType quicr::messages::StreamHeaderProperties::subgroup_id_mode |
Subgroup-ID omission/serialization mode.