aboutsummaryrefslogtreecommitdiff
path: root/include/wlr/render
diff options
context:
space:
mode:
Diffstat (limited to 'include/wlr/render')
-rw-r--r--include/wlr/render/interface.h3
-rw-r--r--include/wlr/render/wlr_renderer.h6
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.
*/