class RegisterBufferCollectionArgs

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

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

fields below are REQUIRED.

Public Methods

void RegisterBufferCollectionArgs (Storage_ storage)
bool IsEmpty ()
void RegisterBufferCollectionArgs ()

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

void RegisterBufferCollectionArgs (RegisterBufferCollectionArgs && )

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

const std::optional< ::fuchsia_ui_composition::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.

::std::optional< ::fuchsia_ui_composition::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.

RegisterBufferCollectionArgs & export_token (std::optional< ::fuchsia_ui_composition::BufferCollectionExportToken> value)

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.

const std::optional< ::fidl::ClientEnd< ::fuchsia_sysmem::BufferCollectionToken>> & buffer_collection_token ()
::std::optional< ::fidl::ClientEnd< ::fuchsia_sysmem::BufferCollectionToken>> & buffer_collection_token ()
RegisterBufferCollectionArgs & buffer_collection_token (std::optional< ::fidl::ClientEnd< ::fuchsia_sysmem::BufferCollectionToken>> value)

Setter for buffer_collection_token.

RegisterBufferCollectionArgs & operator= (RegisterBufferCollectionArgs && )

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

const std::optional< ::fuchsia_ui_composition::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.

::std::optional< ::fuchsia_ui_composition::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.

RegisterBufferCollectionArgs & usage (std::optional< ::fuchsia_ui_composition::RegisterBufferCollectionUsage> value)

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.

const std::optional< ::fuchsia_ui_composition::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.

::std::optional< ::fuchsia_ui_composition::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.

RegisterBufferCollectionArgs & usages (std::optional< ::fuchsia_ui_composition::RegisterBufferCollectionUsages> value)

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.

const std::optional< ::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.

::std::optional< ::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.

RegisterBufferCollectionArgs & buffer_collection_token2 (std::optional< ::fidl::ClientEnd< ::fuchsia_sysmem2::BufferCollectionToken>> value)

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.

void RegisterBufferCollectionArgs (::fidl::internal::DefaultConstructPossiblyInvalidObjectTag )

Friends

class MemberVisitor
class NaturalTableCodingTraits