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

NAME

       wayland::server::subcompositor_t - sub-surface compositing

SYNOPSIS

       #include <wayland-server-protocol.hpp>

       Inherits wayland::server::resource_t.

   Public Member Functions
       std::function< void()> & on_destroy ()
           unbind from the subcompositor interface
       std::function< void(subsurface_t, surface_t, surface_t)> & on_get_subsurface ()
           give a surface the role sub-surface
       void post_bad_surface (std::string const &msg)
           Post error: the to-be sub-surface is invalid.
       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 ()

Detailed Description

       sub-surface compositing

       The global interface exposing sub-surface compositing capabilities. A wl_surface, that has
       sub-surfaces associated, is called the parent surface. Sub-surfaces can be arbitrarily
       nested and create a tree of sub-surfaces.

       The root surface in a tree of sub-surfaces is the main surface. The main surface cannot be
       a sub-surface, because sub-surfaces must always have a parent.

       A main surface with its sub-surfaces forms a (compound) window. For window management
       purposes, this set of wl_surface objects is to be considered as a single window, and it
       should also behave as such.

       The aim of sub-surfaces is to offload some of the compositing work within a window from
       clients to the compositor. A prime example is a video player with decorations and video in
       separate wl_surface objects. This should allow the compositor to pass YUV video buffer
       processing to dedicated overlay hardware when possible.

       Definition at line 4127 of file wayland-server-protocol.hpp.

Member Function Documentation

   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.

   std::function< void()> & subcompositor_t::on_destroy ()
       unbind from the subcompositor interface Informs the server that the client will not be
       using this protocol object anymore. This does not affect any other objects, wl_subsurface
       objects included.

       Definition at line 3097 of file wayland-server-protocol.cpp.

   std::function< void(subsurface_t, surface_t, surface_t)> & subcompositor_t::on_get_subsurface
       ()
       give a surface the role sub-surface

       Parameters
           id the new sub-surface object ID
           surface the surface to be turned into a sub-surface
           parent the parent surface

       Create a sub-surface interface for the given surface, and associate it with the given
       parent surface. This turns a plain wl_surface into a sub-surface.

       The to-be sub-surface must not already have another role, and it must not have an existing
       wl_subsurface object. Otherwise a protocol error is raised.

       Adding sub-surfaces to a parent is a double-buffered operation on the parent (see
       wl_surface.commit). The effect of adding a sub-surface becomes visible on the next time
       the state of the parent surface is applied.

       This request modifies the behaviour of wl_surface.commit request on the sub-surface, see
       the documentation on wl_subsurface interface.

       Definition at line 3103 of file wayland-server-protocol.cpp.

   void subcompositor_t::post_bad_surface (std::string const & msg)
       Post error: the to-be sub-surface is invalid.

       Definition at line 3109 of file wayland-server-protocol.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

Author

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