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