wayland::serve...onization_v1_t(3)
π
wayland::serve...onization_v1_t(3) β Wayland++ girlie edition π¦
okay so bestie, you're looking at the Wayland++ manual page for wayland::server::zwp_linux_explicit_synchronization_v1_t, and honestly? she's a whole factory interface. let's get into it β¨
πΈ NAME πΈ
wayland::server::zwp_linux_explicit_synchronization_v1_t β the protocol for providing explicit synchronization. that's her. that's the whole vibe. π
β¨ SYNOPSIS β¨
first thing, you gotta pull her in:
#include <wayland-server-protocol-unstable.hpp>
π Public Member Functions π
std::function< void()> & on_destroy ()β destroy explicit synchronization factory objectstd::function< void(zwp_linux_surface_synchronization_v1_t, surface_t)> & on_get_synchronization ()β extend surface interface for explicit synchronizationvoid post_synchronization_exists (std::string const &msg)β Post error: the surface already has a synchronization object associated.bool proxy_has_object () constβ Check whether this wrapper actually wraps an object.void post_no_memory () constuint32_t get_id () constclient_t get_client () constunsigned int get_version () conststd::string get_class ()
π«Ά Detailed Description π«Ά
protocol for providing explicit synchronization β say it with me π
so this global is literally a factory interface, allowing clients to request explicit synchronization for buffers on a per-surface basis. iconic behavior.
- see
zwp_linux_surface_synchronization_v1for more info, iykyk π
this interface is derived from Chromium's zcr_linux_explicit_synchronization_v1. no cap.
Warning! β οΈ the protocol described in this file is experimental and backward incompatible changes may be made. backward compatible changes may be added together with the corresponding interface version bump. backward incompatible changes are done by bumping the version number in the protocol and interface names and resetting the interface version. once the protocol is to be declared stable, the 'z' prefix and the version number in the protocol and interface names are removed and the interface version number is reset. so likeβ¦ don't get attached to the exact name, bestie π
Definition at line 2349 of file wayland-server-protocol-unstable.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, obviously π«Ά
Returns
- the client that owns the resource.
π uint32_t wayland::server::resource_t::get_id () const [inherited]
get the internal ID of the resource β her little secret identifier π
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()> & zwp_linux_explicit_synchronization_v1_t::on_destroy ()
destroy explicit synchronization factory object. destroy this explicit synchronization factory object.
and hear me when i say: other objects, including zwp_linux_surface_synchronization_v1 objects created by this factory, shall not be affected by this request. she leaves, they stay. main character exits, cast remains. π
Definition at line 5198 of file wayland-server-protocol-unstable.cpp.
π std::function< void(zwp_linux_surface_synchronization_v1_t, surface_t)> & zwp_linux_explicit_synchronization_v1_t::on_get_synchronization ()
extend surface interface for explicit synchronization β¨
Parameters
idβ the new synchronization interface idsurfaceβ the surface
instantiate an interface extension for the given wl_surface to provide explicit synchronization. it's giving extension energy.
if the givenwl_surfacealready has an explicit synchronization object associated, thesynchronization_existsprotocol error is raised. like, she already has one. don't. π
graphics APIs, like EGL or Vulkan, that manage the buffer queue and commits of a wl_surface themselves, are likely to be using this extension internally. and if a client is using such an API for a wl_surface, it should not directly use this extension on that surface, to avoid raising a synchronization_exists protocol error. fr fr, hands off that one π
Definition at line 5204 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 request of the client (the source says "certail", but we know what she means), this function can be called to notify the client of this circumstance. communique: there is no memory. slay.
π void zwp_linux_explicit_synchronization_v1_t::post_synchronization_exists (std::string const & msg)
post error: the surface already has a synchronization object associated. π«
Definition at line 5210 of file wayland-server-protocol-unstable.cpp.
π bool wayland::server::resource_t::proxy_has_object () const [inherited]
check whether this wrapper actually wraps an object. vibe check on the wrapper herself π
Returns
trueif there is an underlying object,falseif this wrapper is empty
π Author π
generated automatically by Doxygen for Wayland++ from the source code. she was built by the machines, bestie π€π
π the cute sign-off π
this was Version 1.0.1, dated Fri Mar 27 2026 β and the original header was wayland::serve...onization_v1_t(3) from the Wayland++ manual, in case you were wondering where we came from. bye bestie, go synchronize explicitly, and remember: per-surface basis, always ππ
π¦ where this page comes from
- ubuntu stonking: waylandpp-dev 1.0.1-2 Β· BSD-2-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms