class PacketHeader
Defined at line 4662 of file fidling/gen/sdk/fidl/fuchsia.media/fuchsia.media/cpp/fidl/fuchsia.media/cpp/wire_types.h
PacketHeader
When referring to a free packet, we use PacketHeader alone instead of
Packet, since while a packet is free it doesn't really have meaningful
offset or length etc.
A populated Packet also has a PacketHeader.
Public Methods
bool IsEmpty ()
Returns whether no field is set.
bool HasUnknownData ()
Returns whether the table references unknown fields.
::fidl::WireTableBuilder< ::fuchsia_media::wire::PacketHeader> Builder (::fidl::AnyArena & arena)
Return a builder that by defaults allocates of an arena.
::fidl::WireTableExternalBuilder< ::fuchsia_media::wire::PacketHeader> ExternalBuilder (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_media::wire::PacketHeader>> frame)
Return a builder that relies on explicitly allocating |fidl::ObjectView|s.
void PacketHeader ()
Defined at line 4664 of file fidling/gen/sdk/fidl/fuchsia.media/fuchsia.media/cpp/fidl/fuchsia.media/cpp/wire_types.h
void PacketHeader (const PacketHeader & other)
Defined at line 4665 of file fidling/gen/sdk/fidl/fuchsia.media/fuchsia.media/cpp/fidl/fuchsia.media/cpp/wire_types.h
PacketHeader & operator= (const PacketHeader & other)
Defined at line 4666 of file fidling/gen/sdk/fidl/fuchsia.media/fuchsia.media/cpp/fidl/fuchsia.media/cpp/wire_types.h
void PacketHeader (PacketHeader && other)
Defined at line 4667 of file fidling/gen/sdk/fidl/fuchsia.media/fuchsia.media/cpp/fidl/fuchsia.media/cpp/wire_types.h
uint64_t & buffer_lifetime_ordinal ()
This is which buffer configuration lifetime this header is referring to.
A packet_index is only really meaningful with respect to a particular
buffer_lifetime_ordinal.
See StreamBufferPartialSettings.buffer_lifetime_ordinal.
For QueueInputPacket(), a server receiving a buffer_lifetime_ordinal that
isn't the current input buffer_lifetime_ordinal will close the channel.
For OnFreeInputPacket() and RecycleOutputPacket(), the receiver (client
or server) must ignore a message with stale buffer_lifetime_ordinal.
bool has_buffer_lifetime_ordinal ()
PacketHeader & operator= (PacketHeader && other)
Defined at line 4668 of file fidling/gen/sdk/fidl/fuchsia.media/fuchsia.media/cpp/fidl/fuchsia.media/cpp/wire_types.h
uint32_t & packet_index ()
The overall set of packet_index values is densely packed from 0..count-1
for input and output separately. They can be queued in any order.
Both the client and server should validate the packet_index against the
known bound and disconnect if it's out of bounds.
When running in single-buffer mode, the buffer index is always 0.
The packet_index values don't imply anything about order of use of
packets. The client should not expect the ordering to remain the same
over time - the stream processor is free to hold on to an input or
output packet for a while during which other packet_index values may be
used multiple times.
For a given properly-functioning StreamProcessor instance, packet_index
values will be unique among concurrently-outstanding packets. Servers
should validate that a client isn't double-using a packet and clients
should validate as necessary to avoid undefined or unexpected client
behavior.
bool has_packet_index ()
void ~PacketHeader ()
Defined at line 4670 of file fidling/gen/sdk/fidl/fuchsia.media/fuchsia.media/cpp/fidl/fuchsia.media/cpp/wire_types.h
Friends
class WireTableBaseBuilder
class WireTableBaseBuilder