class RegisterBufferCollectionArgs
Defined at line 842 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
The table of arguments for [`RegisterBufferCollection`]. Note that some
fields below are REQUIRED.
Public Members
static const fidl_type_t * FidlType
Public Methods
bool IsEmpty ()
Returns whether no field is set.
RegisterBufferCollectionArgs & set_export_token (::fuchsia::ui::composition::BufferCollectionExportToken _value)
RegisterBufferCollectionArgs & set_buffer_collection_token (::fidl::InterfaceHandle< ::fuchsia::sysmem::BufferCollectionToken> _value)
RegisterBufferCollectionArgs & set_usage (::fuchsia::ui::composition::RegisterBufferCollectionUsage _value)
RegisterBufferCollectionArgs & set_usages (::fuchsia::ui::composition::RegisterBufferCollectionUsages _value)
RegisterBufferCollectionArgs & set_buffer_collection_token2 (::fidl::InterfaceHandle< ::fuchsia::sysmem2::BufferCollectionToken> _value)
void RegisterBufferCollectionArgs ()
void RegisterBufferCollectionArgs (RegisterBufferCollectionArgs && other)
void ~RegisterBufferCollectionArgs ()
RegisterBufferCollectionArgs & operator= (RegisterBufferCollectionArgs && other)
::std::unique_ptr<RegisterBufferCollectionArgs> New ()
void Encode (::fidl::Encoder * _encoder, size_t _offset, std::optional< ::fidl::HandleInformation> maybe_handle_info)
void Decode (::fidl::Decoder * _decoder, RegisterBufferCollectionArgs * _value, size_t _offset)
zx_status_t Clone (RegisterBufferCollectionArgs * _result)
const ::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.
Defined at line 859 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
bool has_export_token ()
Defined at line 863 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
::fuchsia::ui::composition::BufferCollectionExportToken * mutable_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.
Defined at line 878 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
void clear_export_token ()
Defined at line 886 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
const ::fidl::InterfaceHandle< ::fuchsia::sysmem::BufferCollectionToken> & buffer_collection_token ()
Defined at line 894 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
bool has_buffer_collection_token ()
Defined at line 898 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
::fidl::InterfaceHandle< ::fuchsia::sysmem::BufferCollectionToken> * mutable_buffer_collection_token ()
Defined at line 902 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
void clear_buffer_collection_token ()
Defined at line 910 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
const ::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.
Defined at line 930 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
bool has_usage ()
Defined at line 934 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
::fuchsia::ui::composition::RegisterBufferCollectionUsage * mutable_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.
Defined at line 950 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
void clear_usage ()
Defined at line 958 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
const ::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.
Defined at line 971 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
bool has_usages ()
Defined at line 975 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
::fuchsia::ui::composition::RegisterBufferCollectionUsages * mutable_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.
Defined at line 984 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
void clear_usages ()
Defined at line 992 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
const ::fidl::InterfaceHandle< ::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.
Defined at line 1010 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
bool has_buffer_collection_token2 ()
Defined at line 1014 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
::fidl::InterfaceHandle< ::fuchsia::sysmem2::BufferCollectionToken> * mutable_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.
Defined at line 1028 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h
void clear_buffer_collection_token2 ()
Defined at line 1036 of file fidling/gen/sdk/fidl/fuchsia.ui.composition/fuchsia.ui.composition/hlcpp/fuchsia/ui/composition/cpp/fidl.h