class RegisterBufferCollectionArgs

Defined at line 351 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/cpp/fidl/fuchsia.ui.composition/cpp/wire_types.h

The table of arguments for [`RegisterBufferCollection`]. Note that some

fields below are REQUIRED.

Public Methods

bool IsEmpty ()

Returns whether no field is set.

bool HasUnknownData ()

Returns whether the table references unknown fields.

::fidl::WireTableExternalBuilder< ::fuchsia_ui_composition::wire::RegisterBufferCollectionArgs> ExternalBuilder (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_ui_composition::wire::RegisterBufferCollectionArgs>> frame)

Return a builder that relies on explicitly allocating |fidl::ObjectView|s.

void RegisterBufferCollectionArgs ()

Defined at line 353 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/cpp/fidl/fuchsia.ui.composition/cpp/wire_types.h

void RegisterBufferCollectionArgs (const RegisterBufferCollectionArgs & other)

Defined at line 354 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/cpp/fidl/fuchsia.ui.composition/cpp/wire_types.h

void _CloseHandles ()
::fidl::WireTableBuilder< ::fuchsia_ui_composition::wire::RegisterBufferCollectionArgs> Builder (::fidl::AnyArena & arena)

Return a builder that by defaults allocates of an arena.

::fuchsia_ui_composition::wire::BufferCollectionExportToken & export_token ()

Clients can send [`export_token`] to register buffer collections with Allocator to be used

later in [`fuchsia.ui.composition/Flatland`] instances or other Scenic APIs, such as

Screenshot.

For example, by passing a [`BufferCollectionImportToken`] containing the matching peer of

[`BufferCollectionExportToken`], they can create image resources via

[`fuchsia.ui.composition/Flatland.CreateImage`].

Clients should wait for the response before using `import_token`.

This field is REQUIRED.

bool has_export_token ()
::fidl::ClientEnd< ::fuchsia_sysmem::BufferCollectionToken> & buffer_collection_token ()
bool has_buffer_collection_token ()
RegisterBufferCollectionArgs & operator= (const RegisterBufferCollectionArgs & other)

Defined at line 355 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/cpp/fidl/fuchsia.ui.composition/cpp/wire_types.h

void RegisterBufferCollectionArgs (RegisterBufferCollectionArgs && other)

Defined at line 356 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/cpp/fidl/fuchsia.ui.composition/cpp/wire_types.h

RegisterBufferCollectionArgs & operator= (RegisterBufferCollectionArgs && other)

Defined at line 357 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/cpp/fidl/fuchsia.ui.composition/cpp/wire_types.h

::fuchsia_ui_composition::wire::RegisterBufferCollectionUsage & usage ()

The client can register a buffer collection for various uses, each

coming with their own unique constraints.

This field is OPTIONAL. If `usage` is omitted it will be treated as if

it has the DEFAULT option.

# Deprecation

This arg is deprecated at API version 9 with addition of |usages|.

If both the `usages` and `usage` fields are set, `usages` takes precedence and `usage` is

ignored.

bool has_usage ()
::fuchsia_ui_composition::wire::RegisterBufferCollectionUsages & usages ()

The client can register a buffer collection for various uses and has the ability to

combine usages if multiple are needed.

This field is OPTIONAL. If `usages` is omitted it will be treated as if

it has only the DEFAULT option.

bool has_usages ()
::fidl::ClientEnd< ::fuchsia_sysmem2::BufferCollectionToken> & buffer_collection_token2 ()

Flatland participates in the allocation of buffers by setting constraints on the

BufferCollection referenced by `buffer_collection_token`. It will not block on buffers

being allocated until the client creates content using the BufferCollection.

The buffer collection registered with `export_token` is available and kept alive as long

as the client holds a valid [`BufferCollectionImportToken`]. They will be garbage collected

when all [`BufferCollectionImportToken`]s are closed and all the associated Image resources

are released.

Exactly one of `buffer_collection_token2` / `buffer_collection_token` must be set.

bool has_buffer_collection_token2 ()
void ~RegisterBufferCollectionArgs ()

Defined at line 359 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/cpp/fidl/fuchsia.ui.composition/cpp/wire_types.h

Friends

class WireTableBaseBuilder
class WireTableBaseBuilder