Man page - wayland_server_buffer_t(3)
Packages contas this manual
- wayland_server_zwp_text_input_v3_content_hint(3)
- wayland_subsurface_t(3)
- wayland_zwp_primary_selection_source_v1_t(3)
- wayland_zwp_linux_buffer_release_v1_t(3)
- wayland_zwp_tablet_manager_v2_t(3)
- wayland_shell_t(3)
- wayland_xdg_surface_t(3)
- wayland_server_zxdg_output_v1_t(3)
- wayland_zwp_tablet_seat_v2_t(3)
- wayland_zwp_linux_surface_synchronization_v1_t(3)
- wayland_viewporter_t(3)
- wayland_server_zwp_tablet_tool_v2_t(3)
- wayland_compositor_t(3)
- wayland_zxdg_output_manager_v1_t(3)
- wayland_server_output_mode(3)
- wayland_server_seat_t(3)
- wayland_server_shell_surface_resize(3)
- wayland-client.hpp(3)
- wayland_zwp_primary_selection_offer_v1_t(3)
- wayland_zwp_pointer_gesture_pinch_v1_t(3)
- wayland_zwp_linux_dmabuf_v1_t(3)
- wayland_server_xdg_surface_t(3)
- wayland_xdg_toplevel_resize_edge(3)
- wayland_zxdg_toplevel_v6_t(3)
- wayland_zxdg_exporter_v1_t(3)
- wayland_server_zwp_linux_surface_synchronization_v1_t(3)
- wayland_zwp_text_input_v3_t(3)
- wayland_server_data_offer_t(3)
- wayland_server_zxdg_surface_v6_t(3)
- wayland_zwp_relative_pointer_v1_t(3)
- wayland_server_data_device_manager_t(3)
- wayland_zxdg_importer_v1_t(3)
- wayland_zwp_idle_inhibit_manager_v1_t(3)
- wayland_server_data_device_manager_dnd_action(3)
- wayland_zwp_tablet_manager_v1_t(3)
- wayland_zwp_input_timestamps_v1_t(3)
- wayland_server_zwp_input_panel_v1_t(3)
- wayland_server_zwp_text_input_v1_content_hint(3)
- wayland_server_zwp_text_input_manager_v1_t(3)
- wayland_server_region_t(3)
- wayland_server_zxdg_imported_v1_t(3)
- wayland_xdg_toplevel_t(3)
- wayland_zxdg_exported_v2_t(3)
- wayland_zwp_tablet_tool_v2_t(3)
- wayland_zwp_keyboard_shortcuts_inhibit_manager_v1_t(3)
- wayland-server.hpp(3)
- wayland_server_zxdg_exporter_v1_t(3)
- wayland_server_zxdg_popup_v6_t(3)
- wayland_xdg_activation_token_v1_t(3)
- wayland_read_intent(3)
- wayland_server_zwp_idle_inhibit_manager_v1_t(3)
- wayland_server_zwp_linux_explicit_synchronization_v1_t(3)
- wayland_server_shm_pool_t(3)
- wayland_server_zxdg_shell_v6_t(3)
- wayland_server_zxdg_importer_v2_t(3)
- wayland_xdg_wm_base_t(3)
- wayland_touch_t(3)
- wayland_zxdg_positioner_v6_t(3)
- wayland_data_offer_t(3)
- wayland_server_zwp_tablet_v2_t(3)
- wayland_server_zwp_linux_buffer_release_v1_t(3)
- wayland_server_xdg_toplevel_t(3)
- wayland_xdg_popup_t(3)
- wayland_server_viewporter_t(3)
- wayland_server_zwp_tablet_manager_v1_t(3)
- wayland_zwp_text_input_v1_t(3)
- wayland_keyboard_t(3)
- wayland_server_zwp_tablet_pad_ring_v2_t(3)
- wayland_server_zwp_pointer_gestures_v1_t(3)
- wayland_xdg_activation_v1_t(3)
- wayland_server_zwp_pointer_constraints_v1_t(3)
- wayland_zwp_idle_inhibitor_v1_t(3)
- wayland_server_zxdg_positioner_v6_constraint_adjustment(3)
- wayland_server_zwp_xwayland_keyboard_grab_manager_v1_t(3)
- wayland_zwp_tablet_v1_t(3)
- wayland_zwp_input_panel_v1_t(3)
- wayland_pointer_t(3)
- wayland_zwp_tablet_seat_v1_t(3)
- wayland_egl_window_t(3)
- wayland_server_zwp_pointer_gesture_pinch_v1_t(3)
- wayland_server_buffer_t(3)
- wayland_server_viewport_t(3)
- wayland_detail_refcounted_wrapper(3)
- wayland_zwp_primary_selection_device_manager_v1_t(3)
- wayland_server_presentation_feedback_t(3)
- wayland_data_device_manager_t(3)
- wayland_zwp_input_method_v1_t(3)
- wayland_zwp_pointer_gestures_v1_t(3)
- wayland_zwp_pointer_constraints_v1_t(3)
- wayland_server_zwp_tablet_seat_v2_t(3)
- wayland_zwp_linux_buffer_params_v1_t(3)
- wayland_server_xdg_popup_t(3)
- wayland_zwp_tablet_pad_strip_v2_t(3)
- wayland_presentation_feedback_kind(3)
- wayland_server_surface_t(3)
- wayland_presentation_t(3)
- wayland_server_zxdg_toplevel_v6_t(3)
- wayland_server_zwp_input_timestamps_v1_t(3)
- wayland_zwp_keyboard_shortcuts_inhibitor_v1_t(3)
- wayland_server_shell_surface_transient(3)
- wayland_zxdg_toplevel_v6_resize_edge(3)
- wayland_server_zwp_input_method_v1_t(3)
- wayland_event_queue_t(3)
- wayland_zxdg_popup_v6_t(3)
- wayland_zwp_locked_pointer_v1_t(3)
- wayland_output_t(3)
- wayland_zwp_tablet_v2_t(3)
- wayland_zxdg_output_v1_t(3)
- wayland_xdg_positioner_constraint_adjustment(3)
- wayland_zwp_tablet_pad_ring_v2_t(3)
- wayland_data_device_manager_dnd_action(3)
- wayland_server_zwp_pointer_gesture_swipe_v1_t(3)
- wayland_server_zwp_text_input_v1_t(3)
- wayland_server_xdg_activation_token_v1_t(3)
- wayland_server_zwp_linux_dmabuf_v1_t(3)
- wayland_zxdg_shell_v6_t(3)
- wayland_server_seat_capability(3)
- wayland_server_zwp_tablet_pad_strip_v2_t(3)
- wayland_server_zxdg_exported_v1_t(3)
- wayland_server_compositor_t(3)
- wayland_server_zwp_tablet_pad_v2_t(3)
- wayland_server_zwp_primary_selection_device_manager_v1_t(3)
- wayland_data_device_t(3)
- wayland_server_zwp_keyboard_shortcuts_inhibitor_v1_t(3)
- wayland_server_subcompositor_t(3)
- wayland_server_presentation_feedback_kind(3)
- wayland_zwp_input_timestamps_manager_v1_t(3)
- wayland_server_zwp_linux_buffer_params_v1_t(3)
- wayland_server_zwp_linux_dmabuf_feedback_v1_t(3)
- wayland_zwp_fullscreen_shell_v1_t(3)
- wayland_zwp_tablet_pad_group_v2_t(3)
- wayland_server_zwp_tablet_v1_t(3)
- wayland_server_zwp_xwayland_keyboard_grab_v1_t(3)
- wayland_zxdg_exporter_v2_t(3)
- wayland_server_zwp_primary_selection_source_v1_t(3)
- wayland_server_zwp_text_input_v3_t(3)
- wayland_proxy_t(3)
- wayland_server_zwp_primary_selection_offer_v1_t(3)
- wayland_server_zwp_tablet_seat_v1_t(3)
- wayland_surface_t(3)
- wayland_detail_basic_wrapper(3)
- wayland_server_zxdg_imported_v2_t(3)
- wayland_server_zwp_input_timestamps_manager_v1_t(3)
- wayland_zwp_text_input_v3_content_hint(3)
- wayland_zxdg_toplevel_decoration_v1_t(3)
- wayland_server_zwp_idle_inhibitor_v1_t(3)
- wayland_server_data_device_t(3)
- wayland_server_zxdg_importer_v1_t(3)
- wayland_zwp_linux_dmabuf_feedback_v1_t(3)
- wayland_zwp_relative_pointer_manager_v1_t(3)
- wayland_server_xdg_positioner_t(3)
- wayland_server_zwp_input_method_context_v1_t(3)
- wayland_server_zxdg_exported_v2_t(3)
- wayland_zxdg_exported_v1_t(3)
- wayland_zxdg_importer_v2_t(3)
- wayland_zwp_linux_explicit_synchronization_v1_t(3)
- wayland_server_zwp_relative_pointer_v1_t(3)
- wayland_shell_surface_transient(3)
- wayland_server_zwp_tablet_tool_v1_t(3)
- wayland_zwp_pointer_gesture_hold_v1_t(3)
- wayland_server_shm_t(3)
- wayland_server_zwp_keyboard_shortcuts_inhibit_manager_v1_t(3)
- wayland_server_callback_t(3)
- wayland_server_registry_t(3)
- wayland_server_zxdg_positioner_v6_t(3)
- wayland_xdg_positioner_t(3)
- wayland_seat_capability(3)
- wayland_server_zxdg_exporter_v2_t(3)
- wayland_subcompositor_t(3)
- wayland_server_shell_t(3)
- wayland_seat_t(3)
- wayland_zwp_pointer_gesture_swipe_v1_t(3)
- wayland_server_zwp_locked_pointer_v1_t(3)
- wayland_server_zwp_fullscreen_shell_v1_t(3)
- wayland_zwp_text_input_v1_content_hint(3)
- wayland_server_keyboard_t(3)
- wayland_server_zwp_pointer_gesture_hold_v1_t(3)
- wayland_zwp_text_input_manager_v3_t(3)
- wayland_server_pointer_t(3)
- wayland_server_zxdg_output_manager_v1_t(3)
- wayland_server_touch_t(3)
- wayland_server_output_t(3)
- wayland_server_output_transform(3)
- wayland_buffer_t(3)
- wayland_server_presentation_t(3)
- wayland_output_mode(3)
- wayland_server_zxdg_decoration_manager_v1_t(3)
- wayland_server_subsurface_t(3)
- wayland_server_zxdg_toplevel_decoration_v1_t(3)
- wayland_zwp_confined_pointer_v1_t(3)
- wayland_server_shell_surface_t(3)
- wayland_zxdg_surface_v6_t(3)
- wayland_server_zxdg_toplevel_v6_resize_edge(3)
- wayland_registry_t(3)
- wayland_zwp_xwayland_keyboard_grab_v1_t(3)
- wayland_callback_t(3)
- wayland_zxdg_imported_v1_t(3)
- wayland_server_global_base_t(3)
- wayland_server_zwp_tablet_manager_v2_t(3)
- wayland_presentation_feedback_t(3)
- wayland_shell_surface_t(3)
- wayland_display_t(3)
- wayland_shm_pool_t(3)
- wayland_server_zwp_tablet_pad_group_v2_t(3)
- wayland_data_source_t(3)
- wayland_server_data_source_t(3)
- wayland_server_xdg_toplevel_resize_edge(3)
- wayland_server_zwp_confined_pointer_v1_t(3)
- wayland_viewport_t(3)
- wayland_region_t(3)
- wayland_output_transform(3)
- wayland_zwp_input_method_context_v1_t(3)
- wayland_zwp_tablet_tool_v1_t(3)
- wayland_server_global_t(3)
- wayland_zwp_text_input_manager_v1_t(3)
- wayland_shell_surface_resize(3)
- wayland_zxdg_imported_v2_t(3)
- wayland_server_xdg_wm_base_t(3)
- wayland_zwp_xwayland_keyboard_grab_manager_v1_t(3)
- wayland_shm_t(3)
- wayland_server_zwp_relative_pointer_manager_v1_t(3)
- wayland_zwp_tablet_pad_v2_t(3)
- wayland_server_xdg_activation_v1_t(3)
- wayland_zxdg_positioner_v6_constraint_adjustment(3)
- wayland_server_zwp_text_input_manager_v3_t(3)
- wayland_zxdg_decoration_manager_v1_t(3)
- wayland_server_xdg_positioner_constraint_adjustment(3)
apt-get install waylandpp-dev
Manual
| wayland::server::buffer_t(3) | Wayland++ | wayland::server::buffer_t(3) |
NAME
wayland::server::buffer_t - content for a wl_surface
SYNOPSIS
#include <wayland-server-protocol.hpp>
Inherits wayland::server::resource_t.
Public Member Functions
std::function< void()> & on_destroy ()
destroy a buffer void release (bool post=true)
compositor releases buffer 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 release_since_version = 1
Minimum protocol version required for the release function.
Detailed Description
content for a wl_surface
A buffer provides the content for a wl_surface. Buffers are created through factory interfaces such as wl_shm, wp_linux_buffer_params (from the linux-dmabuf protocol extension) or similar. It has a width and a height and can be attached to a wl_surface, but the mechanism by which a client provides and updates the contents is defined by the buffer factory interface.
If the buffer uses a format that has an alpha channel, the alpha channel is assumed to be premultiplied in the color channels unless otherwise specified.
Definition at line 748 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
client_t wayland::server::resource_t::get_client () const [inherited]
Get the associated client
Returns
uint32_t wayland::server::resource_t::get_id () const [inherited]
Get the internal ID of the resource
Returns
unsigned int wayland::server::resource_t::get_version () const [inherited]
Get interface version
Returns
std::function< void()> & buffer_t::on_destroy ()
destroy a buffer Destroy a buffer. If and how you need to release the backing storage is defined by the buffer factory interface.
For possible side-effects to a surface, see wl_surface.attach.
Definition at line 1806 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
void buffer_t::release (bool post = true)
compositor releases buffer Sent when this wl_buffer is no longer used by the compositor. The client is now free to reuse or destroy this buffer and its backing storage.
If a client receives a release event before the frame callback requested in the same wl_surface.commit that attaches this wl_buffer to a surface, then the client is immediately free to reuse the buffer and its backing storage, and does not need a second buffer for the next surface content update. Typically this is possible, when the compositor maintains a copy of the wl_surface contents, e.g. as a GL texture. This is an important optimization for GL(ES) compositors with wl_shm clients.
Definition at line 1812 of file wayland-server-protocol.cpp.
Member Data Documentation
constexpr std::uint32_t wayland::server::buffer_t::release_since_version = 1 [static], [constexpr]
Minimum protocol version required for the release function.
Definition at line 804 of file wayland-server-protocol.hpp.
Author
Generated automatically by Doxygen for Wayland++ from the source code.
| Sat Feb 1 2025 21:28:29 | Version 1.0.0 |