render: add wlr_renderer_clear and wlr_renderer_scissor

This commit is contained in:
emersion 2018-01-22 16:42:22 +01:00
parent 3f1c4f5be7
commit 415a2b7c56
No known key found for this signature in database
GPG key ID: 0FDE7BE0E88F5E48
10 changed files with 67 additions and 23 deletions

View file

@ -72,7 +72,4 @@ const char *egl_error(void);
bool wlr_egl_make_current(struct wlr_egl *egl, EGLSurface surface,
int *buffer_age);
// TODO: remove
int wlr_egl_get_buffer_age(struct wlr_egl *egl, EGLSurface surface);
#endif

View file

@ -6,6 +6,7 @@
#include <EGL/eglext.h>
#include <stdbool.h>
#include <wlr/render.h>
#include <wlr/types/wlr_box.h>
#include <wlr/types/wlr_output.h>
struct wlr_renderer_impl;
@ -17,6 +18,9 @@ struct wlr_renderer {
struct wlr_renderer_impl {
void (*begin)(struct wlr_renderer *renderer, struct wlr_output *output);
void (*end)(struct wlr_renderer *renderer);
void (*clear)(struct wlr_renderer *renderer, float red, float green,
float blue, float alpha);
void (*scissor)(struct wlr_renderer *renderer, struct wlr_box *box);
struct wlr_texture *(*texture_create)(struct wlr_renderer *renderer);
bool (*render_with_matrix)(struct wlr_renderer *renderer,
struct wlr_texture *texture, const float (*matrix)[16]);