aboutsummaryrefslogtreecommitdiff
path: root/include/backend/drm/fb.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/backend/drm/fb.h')
-rw-r--r--include/backend/drm/fb.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/include/backend/drm/fb.h b/include/backend/drm/fb.h
new file mode 100644
index 00000000..7d451bc6
--- /dev/null
+++ b/include/backend/drm/fb.h
@@ -0,0 +1,23 @@
+#ifndef BACKEND_DRM_FB_H
+#define BACKEND_DRM_FB_H
+
+#include <stdbool.h>
+
+struct wlr_drm_fb {
+ struct wlr_buffer *wlr_buf;
+ struct wlr_addon addon;
+ struct wlr_drm_backend *backend;
+ struct wl_list link; // wlr_drm_backend.fbs
+
+ uint32_t id;
+};
+
+bool drm_fb_import(struct wlr_drm_fb **fb, struct wlr_drm_backend *drm,
+ struct wlr_buffer *buf, const struct wlr_drm_format_set *formats);
+void drm_fb_destroy(struct wlr_drm_fb *fb);
+
+void drm_fb_clear(struct wlr_drm_fb **fb);
+void drm_fb_move(struct wlr_drm_fb **new, struct wlr_drm_fb **old);
+struct wlr_drm_fb *drm_fb_lock(struct wlr_drm_fb *fb);
+
+#endif