diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/render/wlr_texture.h | 15 | ||||
-rw-r--r-- | include/wlr/render/interface.h | 2 |
2 files changed, 17 insertions, 0 deletions
diff --git a/include/render/wlr_texture.h b/include/render/wlr_texture.h new file mode 100644 index 00000000..eb94824f --- /dev/null +++ b/include/render/wlr_texture.h @@ -0,0 +1,15 @@ +#ifndef RENDER_WLR_TEXTURE_H +#define RENDER_WLR_TEXTURE_H + +#include <wlr/render/wlr_texture.h> + +/** + * Create a new texture from a buffer. + * + * Should not be called in a rendering block like renderer_begin()/end() or + * between attaching a renderer to an output and committing it. + */ +struct wlr_texture *wlr_texture_from_buffer(struct wlr_renderer *renderer, + struct wlr_buffer *buffer); + +#endif diff --git a/include/wlr/render/interface.h b/include/wlr/render/interface.h index f280852c..251154d8 100644 --- a/include/wlr/render/interface.h +++ b/include/wlr/render/interface.h @@ -57,6 +57,8 @@ struct wlr_renderer_impl { struct wl_display *wl_display); int (*get_drm_fd)(struct wlr_renderer *renderer); uint32_t (*get_render_buffer_caps)(void); + struct wlr_texture *(*texture_from_buffer)(struct wlr_renderer *renderer, + struct wlr_buffer *buffer); }; void wlr_renderer_init(struct wlr_renderer *renderer, |