class BufferCollectionInfo2

Defined at line 3085 of file fidling/gen/sdk/fidl/fuchsia.sysmem/fuchsia.sysmem/cpp/fidl/fuchsia.sysmem/cpp/natural_types.h

Information about a buffer collection and its buffers.

Public Methods

void BufferCollectionInfo2 (Storage_ storage)
void BufferCollectionInfo2 (uint32_t buffer_count, ::fuchsia_sysmem::SingleBufferSettings settings, ::std::array< ::fuchsia_sysmem::VmoBuffer, 64> buffers)
void BufferCollectionInfo2 ()

Default constructs a |BufferCollectionInfo2| only if all of its members are default constructible.

Defined at line 3095 of file fidling/gen/sdk/fidl/fuchsia.sysmem/fuchsia.sysmem/cpp/fidl/fuchsia.sysmem/cpp/natural_types.h

void BufferCollectionInfo2 (BufferCollectionInfo2 && )

Defined at line 3098 of file fidling/gen/sdk/fidl/fuchsia.sysmem/fuchsia.sysmem/cpp/fidl/fuchsia.sysmem/cpp/natural_types.h

uint32_t buffer_count ()

The total number of buffers.

uint32_t & buffer_count ()

The total number of buffers.

BufferCollectionInfo2 & buffer_count (uint32_t value)

The total number of buffers.

BufferCollectionInfo2 & operator= (BufferCollectionInfo2 && )

Defined at line 3099 of file fidling/gen/sdk/fidl/fuchsia.sysmem/fuchsia.sysmem/cpp/fidl/fuchsia.sysmem/cpp/natural_types.h

const ::fuchsia_sysmem::SingleBufferSettings & settings ()

These settings apply to all the buffers in the initial buffer allocation.

::fuchsia_sysmem::SingleBufferSettings & settings ()

These settings apply to all the buffers in the initial buffer allocation.

BufferCollectionInfo2 & settings (::fuchsia_sysmem::SingleBufferSettings value)

These settings apply to all the buffers in the initial buffer allocation.

const ::std::array< ::fuchsia_sysmem::VmoBuffer, 64> & buffers ()

VMO handles (and vmo_usable_start offset) for each buffer in the

collection.

If present, all the VMOs at or after index `buffer_count` are invalid

(0) handles.

All buffer VMO handles have identical size and access rights. The size

is in settings.buffer_settings.size_bytes.

The VMO access rights are determined based on the usages which the

client specified when allocating the buffer collection. For example,

a client which expressed a read-only usage will receive VMOs without

write rights. In addition, the rights can be attenuated by the

parameter to BufferCollectionToken.Duplicate() calls.

::std::array< ::fuchsia_sysmem::VmoBuffer, 64> & buffers ()

VMO handles (and vmo_usable_start offset) for each buffer in the

collection.

If present, all the VMOs at or after index `buffer_count` are invalid

(0) handles.

All buffer VMO handles have identical size and access rights. The size

is in settings.buffer_settings.size_bytes.

The VMO access rights are determined based on the usages which the

client specified when allocating the buffer collection. For example,

a client which expressed a read-only usage will receive VMOs without

write rights. In addition, the rights can be attenuated by the

parameter to BufferCollectionToken.Duplicate() calls.

BufferCollectionInfo2 & buffers (::std::array< ::fuchsia_sysmem::VmoBuffer, 64> value)

VMO handles (and vmo_usable_start offset) for each buffer in the

collection.

If present, all the VMOs at or after index `buffer_count` are invalid

(0) handles.

All buffer VMO handles have identical size and access rights. The size

is in settings.buffer_settings.size_bytes.

The VMO access rights are determined based on the usages which the

client specified when allocating the buffer collection. For example,

a client which expressed a read-only usage will receive VMOs without

write rights. In addition, the rights can be attenuated by the

parameter to BufferCollectionToken.Duplicate() calls.

void BufferCollectionInfo2 (::fidl::internal::DefaultConstructPossiblyInvalidObjectTag )

Friends

class MemberVisitor
class NaturalStructCodingTraits