class AllocateSharedCollection

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

Creates a root [`fuchsia.sysmem2/BufferCollectionToken`].

The `BufferCollectionToken` can be "duplicated" for distribution to

participants by using

[`fuchsia.sysmem2/BufferCollectionToken.Duplicate`]. Each

`BufferCollectionToken` can be converted into a

[`fuchsia.sysmem2.BufferCollection`] using

[`fuchsia.sysmem2/Allocator.BindSharedCollection`].

Buffer constraints can be set via

[`fuchsia.sysmem2/BufferCollection.SetConstraints`].

Success/failure to populate the buffer collection with buffers can be

determined from

[`fuchsia.sysmem2/BufferCollection.WaitForAllBuffersAllocated`].

Closing the client end of a `BufferCollectionToken` or

`BufferCollection` (without `Release` first) will fail all client ends

in the same failure domain, which by default is all client ends of the

buffer collection. See

[`fuchsia.sysmem2/BufferCollection.SetDispensable`] and

[`fuchsia.sysmem2/BufferCollection.AttachToken`] for ways to create

separate failure domains within a buffer collection.

Public Members

static const bool kHasClientToServer
static const bool kHasClientToServerBody
static const bool kHasServerToClient
static const bool kHasServerToClientBody
static const bool kHasNonEmptyUserFacingResponse
static const bool kHasDomainError
static const bool kHasFrameworkError
static const uint64_t kOrdinal