diff options
Diffstat (limited to 'include/wlr/render')
-rw-r--r-- | include/wlr/render/interface.h | 3 | ||||
-rw-r--r-- | include/wlr/render/wlr_renderer.h | 6 |
2 files changed, 9 insertions, 0 deletions
diff --git a/include/wlr/render/interface.h b/include/wlr/render/interface.h index 48ef4286..6eb6c22f 100644 --- a/include/wlr/render/interface.h +++ b/include/wlr/render/interface.h @@ -64,6 +64,9 @@ struct wlr_renderer_impl { void (*destroy)(struct wlr_renderer *renderer); bool (*init_wl_display)(struct wlr_renderer *renderer, struct wl_display *wl_display); + bool (*blit_dmabuf)(struct wlr_renderer *renderer, + struct wlr_dmabuf_attributes *dst, + struct wlr_dmabuf_attributes *src); }; void wlr_renderer_init(struct wlr_renderer *renderer, diff --git a/include/wlr/render/wlr_renderer.h b/include/wlr/render/wlr_renderer.h index db543bef..e6140f3e 100644 --- a/include/wlr/render/wlr_renderer.h +++ b/include/wlr/render/wlr_renderer.h @@ -104,6 +104,12 @@ const struct wlr_drm_format_set *wlr_renderer_get_dmabuf_formats( bool wlr_renderer_read_pixels(struct wlr_renderer *r, enum wl_shm_format fmt, uint32_t *flags, uint32_t stride, uint32_t width, uint32_t height, uint32_t src_x, uint32_t src_y, uint32_t dst_x, uint32_t dst_y, void *data); + +/** + * Blits the dmabuf in src onto the one in dst. + */ +bool wlr_renderer_blit_dmabuf(struct wlr_renderer *r, + struct wlr_dmabuf_attributes *dst, struct wlr_dmabuf_attributes *src); /** * Checks if a format is supported. */ |