diff options
Diffstat (limited to 'include/wlr/render')
-rw-r--r-- | include/wlr/render/gles2.h | 4 | ||||
-rw-r--r-- | include/wlr/render/interface.h | 5 |
2 files changed, 7 insertions, 2 deletions
diff --git a/include/wlr/render/gles2.h b/include/wlr/render/gles2.h index a779ffff..b368d6e1 100644 --- a/include/wlr/render/gles2.h +++ b/include/wlr/render/gles2.h @@ -1,7 +1,9 @@ #ifndef _WLR_GLES2_RENDERER_H #define _WLR_GLES2_RENDERER_H #include <wlr/render.h> +#include <wlr/backend.h> -struct wlr_renderer *wlr_gles2_renderer_init(); +struct wlr_egl; +struct wlr_renderer *wlr_gles2_renderer_init(struct wlr_backend *backend); #endif diff --git a/include/wlr/render/interface.h b/include/wlr/render/interface.h index be9ffe7a..69485e21 100644 --- a/include/wlr/render/interface.h +++ b/include/wlr/render/interface.h @@ -25,6 +25,8 @@ struct wlr_renderer_impl { const float (*color)[4], const float (*matrix)[16]); const enum wl_shm_format *(*formats)( struct wlr_renderer_state *state, size_t *len); + bool (*buffer_is_drm)(struct wlr_renderer_state *state, + struct wl_resource *buffer); void (*destroy)(struct wlr_renderer_state *state); }; @@ -42,7 +44,8 @@ struct wlr_texture_impl { struct wl_shm_buffer *shm); bool (*update_shm)(struct wlr_texture_state *surf, uint32_t format, int x, int y, int width, int height, struct wl_shm_buffer *shm); - // TODO: egl + bool (*upload_drm)(struct wlr_texture_state *state, + struct wl_resource *drm_buf); void (*get_matrix)(struct wlr_texture_state *state, float (*matrix)[16], const float (*projection)[16], int x, int y); void (*bind)(struct wlr_texture_state *state); |