class VmoBuffer
Defined at line 5030 of file fidling/gen/sdk/fidl/fuchsia.sysmem2/fuchsia.sysmem2/cpp/fidl/fuchsia.sysmem2/cpp/natural_types.h
Public Methods
void VmoBuffer (Storage_ storage)
bool IsEmpty ()
void VmoBuffer ()
Defined at line 5035 of file fidling/gen/sdk/fidl/fuchsia.sysmem2/fuchsia.sysmem2/cpp/fidl/fuchsia.sysmem2/cpp/natural_types.h
void VmoBuffer (VmoBuffer && )
Defined at line 5036 of file fidling/gen/sdk/fidl/fuchsia.sysmem2/fuchsia.sysmem2/cpp/fidl/fuchsia.sysmem2/cpp/natural_types.h
VmoBuffer & operator= (VmoBuffer && )
Defined at line 5037 of file fidling/gen/sdk/fidl/fuchsia.sysmem2/fuchsia.sysmem2/cpp/fidl/fuchsia.sysmem2/cpp/natural_types.h
const std::optional< ::zx::vmo> & vmo ()
`vmo` can be un-set if a participant has only
[`fuchsia.sysmem2/BufferUsage.none`] set to `NONE_USAGE` (explicitly or
implicitly by [`fuchsia.sysmem2/BufferCollection.SetConstraints`]
without `constraints` set).
::std::optional< ::zx::vmo> & vmo ()
`vmo` can be un-set if a participant has only
[`fuchsia.sysmem2/BufferUsage.none`] set to `NONE_USAGE` (explicitly or
implicitly by [`fuchsia.sysmem2/BufferCollection.SetConstraints`]
without `constraints` set).
VmoBuffer & vmo (std::optional< ::zx::vmo> value)
`vmo` can be un-set if a participant has only
[`fuchsia.sysmem2/BufferUsage.none`] set to `NONE_USAGE` (explicitly or
implicitly by [`fuchsia.sysmem2/BufferCollection.SetConstraints`]
without `constraints` set).
const std::optional<uint64_t> & vmo_usable_start ()
Offset within the VMO of the first usable byte. Must be
<
the VMO's size
in bytes, and leave sufficient room for BufferMemorySettings.size_bytes
before the end of the VMO.
Currently sysmem will always set this field to 0, and in future, sysmem
won't set this field to a non-zero value unless all participants have
explicitly indicated support for non-zero vmo_usable_start (this
mechanism does not exist as of this comment). A participant that hasn't
explicitly indicated support for non-zero vmo_usable_start (all current
clients) should implicitly assume this field is set to 0 without
actually checking this field.
::std::optional<uint64_t> & vmo_usable_start ()
Offset within the VMO of the first usable byte. Must be
<
the VMO's size
in bytes, and leave sufficient room for BufferMemorySettings.size_bytes
before the end of the VMO.
Currently sysmem will always set this field to 0, and in future, sysmem
won't set this field to a non-zero value unless all participants have
explicitly indicated support for non-zero vmo_usable_start (this
mechanism does not exist as of this comment). A participant that hasn't
explicitly indicated support for non-zero vmo_usable_start (all current
clients) should implicitly assume this field is set to 0 without
actually checking this field.
VmoBuffer & vmo_usable_start (std::optional<uint64_t> value)
Offset within the VMO of the first usable byte. Must be
<
the VMO's size
in bytes, and leave sufficient room for BufferMemorySettings.size_bytes
before the end of the VMO.
Currently sysmem will always set this field to 0, and in future, sysmem
won't set this field to a non-zero value unless all participants have
explicitly indicated support for non-zero vmo_usable_start (this
mechanism does not exist as of this comment). A participant that hasn't
explicitly indicated support for non-zero vmo_usable_start (all current
clients) should implicitly assume this field is set to 0 without
actually checking this field.
const std::optional< ::zx::eventpair> & close_weak_asap ()
This field is set iff `vmo` is a sysmem weak VMO handle. The client must
keep `close_weak_asap` around for as long as `vmo`, and must notice
`ZX_EVENTPAIR_PEER_CLOSED`. If that signal occurs, the client must close
`vmo` asap. Not doing so is considered a VMO leak by the client and in
that case sysmem will eventually complain loudly via syslog (currently
5s later).
::std::optional< ::zx::eventpair> & close_weak_asap ()
This field is set iff `vmo` is a sysmem weak VMO handle. The client must
keep `close_weak_asap` around for as long as `vmo`, and must notice
`ZX_EVENTPAIR_PEER_CLOSED`. If that signal occurs, the client must close
`vmo` asap. Not doing so is considered a VMO leak by the client and in
that case sysmem will eventually complain loudly via syslog (currently
5s later).
VmoBuffer & close_weak_asap (std::optional< ::zx::eventpair> value)
This field is set iff `vmo` is a sysmem weak VMO handle. The client must
keep `close_weak_asap` around for as long as `vmo`, and must notice
`ZX_EVENTPAIR_PEER_CLOSED`. If that signal occurs, the client must close
`vmo` asap. Not doing so is considered a VMO leak by the client and in
that case sysmem will eventually complain loudly via syslog (currently
5s later).
void VmoBuffer (::fidl::internal::DefaultConstructPossiblyInvalidObjectTag )
Friends
class MemberVisitor
class NaturalTableCodingTraits