aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/types/wlr_buffer.h15
-rw-r--r--include/wlr/types/wlr_buffer.h2
2 files changed, 17 insertions, 0 deletions
diff --git a/include/types/wlr_buffer.h b/include/types/wlr_buffer.h
new file mode 100644
index 00000000..8f62179a
--- /dev/null
+++ b/include/types/wlr_buffer.h
@@ -0,0 +1,15 @@
+#ifndef TYPES_WLR_BUFFER
+#define TYPES_WLR_BUFFER
+
+#include <wlr/types/wlr_buffer.h>
+/**
+ * Access a pointer to the allocated data from the underlying implementation,
+ * and its stride.
+ *
+ * The returned pointer should be pointing to a valid memory location for read
+ * and write operations.
+ */
+bool buffer_get_data_ptr(struct wlr_buffer *buffer, void **data,
+ size_t *stride);
+
+#endif
diff --git a/include/wlr/types/wlr_buffer.h b/include/wlr/types/wlr_buffer.h
index 84555899..59996fce 100644
--- a/include/wlr/types/wlr_buffer.h
+++ b/include/wlr/types/wlr_buffer.h
@@ -19,6 +19,8 @@ struct wlr_buffer_impl {
void (*destroy)(struct wlr_buffer *buffer);
bool (*get_dmabuf)(struct wlr_buffer *buffer,
struct wlr_dmabuf_attributes *attribs);
+ bool (*get_data_ptr)(struct wlr_buffer *buffer, void **data,
+ size_t *stride);
};
/**