aboutsummaryrefslogtreecommitdiff
path: root/include/wlr/render
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2017-08-10 22:20:21 -0400
committerGitHub <noreply@github.com>2017-08-10 22:20:21 -0400
commit6569c2b62614384b268eb20feb7818f3c0cf606c (patch)
tree4be63a8f4e2edfcecd228f23e9846403ddf39281 /include/wlr/render
parentfe2fbd0fad96624ab64a86b0b8eb8ead769908f2 (diff)
parentc24351681f672a2ce561b9cb6d73172dfc36c45c (diff)
Merge pull request #53 from nyorain/drm_buffer
Implement drm (egl) buffer attaching
Diffstat (limited to 'include/wlr/render')
-rw-r--r--include/wlr/render/gles2.h4
-rw-r--r--include/wlr/render/interface.h5
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);