Provided by: waylandpp-dev_1.0.0-3_amd64 bug

NAME

       wayland::server::zwp_linux_buffer_release_v1_t - buffer release explicit synchronization

SYNOPSIS

       #include <wayland-server-protocol-unstable.hpp>

       Inherits wayland::server::resource_t.

   Public Member Functions
       void fenced_release (int fence, bool post=true)
           release buffer with fence
       void immediate_release (bool post=true)
           release buffer immediately
       bool proxy_has_object () const
           Check whether this wrapper actually wraps an object.
       void post_no_memory () const
       uint32_t get_id () const
       client_t get_client () const
       unsigned int get_version () const
       std::string get_class ()

   Static Public Attributes
       static constexpr std::uint32_t fenced_release_since_version = 1
           Minimum protocol version required for the fenced_release function.
       static constexpr std::uint32_t immediate_release_since_version = 1
           Minimum protocol version required for the immediate_release function.

Detailed Description

       buffer release explicit synchronization

       This object is instantiated in response to a
       zwp_linux_surface_synchronization_v1.get_release request.

       It provides an alternative to wl_buffer.release events, providing a unique release from a
       single wl_surface.commit request. The release event also supports explicit
       synchronization, providing a fence FD for the client to synchronize against.

       Exactly one event, either a fenced_release or an immediate_release, will be emitted for
       the wl_surface.commit request. The compositor can choose release by release which event it
       uses.

       This event does not replace wl_buffer.release events; servers are still required to send
       those events.

       Once a buffer release object has delivered a 'fenced_release' or an 'immediate_release'
       event it is automatically destroyed.

       Definition at line 2620 of file wayland-server-protocol-unstable.hpp.

Member Function Documentation

   void zwp_linux_buffer_release_v1_t::fenced_release (int fence, bool post = true)
       release buffer with fence

       Parameters
           fence fence for last operation on buffer

       Sent when the compositor has finalised its usage of the associated buffer for the relevant
       commit, providing a dma_fence which will be signaled when all operations by the compositor
       on that buffer for that commit have finished.

       Once the fence has signaled, and assuming the associated buffer is not pending release
       from other wl_surface.commit requests, no additional explicit or implicit synchronization
       is required to safely reuse or destroy the buffer.

       This event destroys the zwp_linux_buffer_release_v1 object.

       Definition at line 5336 of file wayland-server-protocol-unstable.cpp.

   std::string wayland::server::resource_t::get_class () [inherited]
       Retrieve the interface name (class) of a resource object.

       Returns
           Interface name of the resource object.

   client_t wayland::server::resource_t::get_client () const [inherited]
       Get the associated client

       Returns
           the client that owns the resource.

   uint32_t wayland::server::resource_t::get_id () const [inherited]
       Get the internal ID of the resource

       Returns
           the internal ID of the resource

   unsigned int wayland::server::resource_t::get_version () const [inherited]
       Get interface version

       Returns
           Interface version this resource has been constructed with.

   void zwp_linux_buffer_release_v1_t::immediate_release (bool post = true)
       release buffer immediately Sent when the compositor has finalised its usage of the
       associated buffer for the relevant commit, and either performed no operations using it, or
       has a guarantee that all its operations on that buffer for that commit have finished.

       Once this event is received, and assuming the associated buffer is not pending release
       from other wl_surface.commit requests, no additional explicit or implicit synchronization
       is required to safely reuse or destroy the buffer.

       This event destroys the zwp_linux_buffer_release_v1 object.

       Definition at line 5341 of file wayland-server-protocol-unstable.cpp.

   void wayland::server::resource_t::post_no_memory () const [inherited]
       Post 'not enough memory' error to the client

       If the compositor has not enough memory to fulfill a certail request of the client, this
       function can be called to notify the client of this circumstance.

   bool wayland::server::resource_t::proxy_has_object () const [inherited]
       Check whether this wrapper actually wraps an object.

       Returns
           true if there is an underlying object, false if this wrapper is empty

Member Data Documentation

   constexpr std::uint32_t
       wayland::server::zwp_linux_buffer_release_v1_t::fenced_release_since_version = 1 [static],
       [constexpr]
       Minimum protocol version required for the fenced_release function.

       Definition at line 2665 of file wayland-server-protocol-unstable.hpp.

   constexpr std::uint32_t
       wayland::server::zwp_linux_buffer_release_v1_t::immediate_release_since_version = 1
       [static],  [constexpr]
       Minimum protocol version required for the immediate_release function.

       Definition at line 2686 of file wayland-server-protocol-unstable.hpp.

Author

       Generated automatically by Doxygen for Wayland++ from the source code.

Version 1.0.0                            Tue Maywayland::server::zwp_linux_buffer_release_v1_t(3)