Documentation for <wlr/types/wlr_linux_drm_syncobj_v1.h>
Table of contents
struct wlr_linux_drm_syncobj_manager_v1 ¶
struct wlr_linux_drm_syncobj_manager_v1 { struct wl_global *global; struct { int drm_fd; struct wl_listener display_destroy; } WLR_PRIVATE; };
wlr_linux_drm_syncobj_manager_v1_create() ¶
struct wlr_linux_drm_syncobj_manager_v1 *wlr_linux_drm_syncobj_manager_v1_create(struct wl_display *display, uint32_t version, int drm_fd);
Advertise explicit synchronization support to clients.
The compositor must be prepared to handle fences coming from clients and to send release fences correctly. In particular, both the renderer and the backend need to support explicit synchronization.
struct wlr_linux_drm_syncobj_surface_v1_state ¶
struct wlr_linux_drm_syncobj_surface_v1_state { struct wlr_drm_syncobj_timeline *acquire_timeline; uint64_t acquire_point; struct wlr_drm_syncobj_timeline *release_timeline; uint64_t release_point; };
wlr_linux_drm_syncobj_v1_get_surface_state() ¶
struct wlr_linux_drm_syncobj_surface_v1_state *wlr_linux_drm_syncobj_v1_get_surface_state(struct wlr_surface *surface);
wlr_linux_drm_syncobj_v1_state_signal_release_with_buffer() ¶
bool wlr_linux_drm_syncobj_v1_state_signal_release_with_buffer(struct wlr_linux_drm_syncobj_surface_v1_state *state, struct wlr_buffer *buffer);