class BufferCollection

Defined at line 2872 of file fidling/gen/sdk/fidl/fuchsia.sysmem2/fuchsia.sysmem2/cpp/fidl/fuchsia.sysmem2/cpp/markers.h

[`fuchsia.sysmem2/BufferCollection`] is a connection directly from a

participant to sysmem re. a buffer collection; often the buffer collection

is shared with other participants which have their own `BufferCollection`

client end(s) associated with the same buffer collection. In other words,

an instance of the `BufferCollection` interface is a view of a buffer

collection, not the buffer collection itself.

The `BufferCollection` connection exists to facilitate async indication of

when the buffer collection has been populated with buffers.

Also, the channel's closure by the sysmem server is an indication to the

client that the client should close all VMO handles that were obtained from

the `BufferCollection` ASAP.

Some buffer collections can use enough memory that it can be worth avoiding

allocation overlap (in time) using

[`fuchsia.sysmem2/BufferCollection.AttachLifetimeTracking`] so that the

initiator can tell when enough buffers of the buffer collection have been

fully deallocated prior to the initiator allocating a new buffer collection.

Epitaphs are not used in this protocol.

Public Members

static Openness kOpenness

Records