mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2025-10-31 22:25:21 -04:00
render: add wlr_texture_to_dmabuf
This commit is contained in:
parent
bd430b8620
commit
5ba1a9af56
7 changed files with 92 additions and 3 deletions
|
|
@ -20,6 +20,7 @@ struct wlr_egl {
|
|||
bool swap_buffers_with_damage;
|
||||
bool dmabuf_import;
|
||||
bool dmabuf_import_modifiers;
|
||||
bool dmabuf_export;
|
||||
bool bind_wayland_display;
|
||||
} egl_exts;
|
||||
|
||||
|
|
@ -85,6 +86,10 @@ int wlr_egl_get_dmabuf_formats(struct wlr_egl *egl, int **formats);
|
|||
int wlr_egl_get_dmabuf_modifiers(struct wlr_egl *egl, int format,
|
||||
uint64_t **modifiers);
|
||||
|
||||
bool wlr_egl_export_image_to_dmabuf(struct wlr_egl *egl, EGLImageKHR image,
|
||||
int32_t width, int32_t height, uint32_t flags,
|
||||
struct wlr_dmabuf_buffer_attribs *attribs);
|
||||
|
||||
/**
|
||||
* Destroys an EGL image created with the given wlr_egl.
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -62,6 +62,8 @@ struct wlr_texture_impl {
|
|||
enum wl_shm_format wl_fmt, 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, const void *data);
|
||||
bool (*to_dmabuf)(struct wlr_texture *texture,
|
||||
struct wlr_dmabuf_buffer_attribs *attribs);
|
||||
void (*destroy)(struct wlr_texture *texture);
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -48,6 +48,9 @@ bool wlr_texture_write_pixels(struct wlr_texture *texture,
|
|||
uint32_t src_x, uint32_t src_y, uint32_t dst_x, uint32_t dst_y,
|
||||
const void *data);
|
||||
|
||||
bool wlr_texture_to_dmabuf(struct wlr_texture *texture,
|
||||
struct wlr_dmabuf_buffer_attribs *attribs);
|
||||
|
||||
/**
|
||||
* Destroys this wlr_texture.
|
||||
*/
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue