diff options
Diffstat (limited to 'include/wlr/render')
-rw-r--r-- | include/wlr/render/interface.h | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/include/wlr/render/interface.h b/include/wlr/render/interface.h index a9c86f2c..ed804bb4 100644 --- a/include/wlr/render/interface.h +++ b/include/wlr/render/interface.h @@ -20,9 +20,11 @@ struct wlr_renderer_impl { bool (*render_with_matrix)(struct wlr_renderer_state *state, struct wlr_surface *surface, const float (*matrix)[16]); void (*render_quad)(struct wlr_renderer_state *state, - const float (*color)[4], const float (*matrix)[16]); + const float (*color)[4], const float (*matrix)[16]); void (*render_ellipse)(struct wlr_renderer_state *state, - const float (*color)[4], const float (*matrix)[16]); + const float (*color)[4], const float (*matrix)[16]); + const enum wl_shm_format *(*formats)( + struct wlr_renderer_state *state, size_t *len); void (*destroy)(struct wlr_renderer_state *state); }; @@ -30,13 +32,14 @@ struct wlr_renderer *wlr_renderer_init(struct wlr_renderer_state *state, struct wlr_renderer_impl *impl); struct wlr_surface_impl { - bool (*attach_pixels)(struct wlr_surface_state *state, uint32_t format, - int stride, int width, int height, const unsigned char *pixels); + bool (*attach_pixels)(struct wlr_surface_state *state, + enum wl_shm_format format, int stride, int width, int height, + const unsigned char *pixels); bool (*attach_shm)(struct wlr_surface_state *state, uint32_t format, struct wl_shm_buffer *shm); // TODO: egl void (*get_matrix)(struct wlr_surface_state *state, - float (*matrix)[16], const float (*projection)[16], int x, int y); + float (*matrix)[16], const float (*projection)[16], int x, int y); void (*bind)(struct wlr_surface_state *state); void (*destroy)(struct wlr_surface_state *state); }; |