summaryrefslogtreecommitdiffstats
path: root/video/out/vulkan/ra_vk.h
diff options
context:
space:
mode:
Diffstat (limited to 'video/out/vulkan/ra_vk.h')
-rw-r--r--video/out/vulkan/ra_vk.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/video/out/vulkan/ra_vk.h b/video/out/vulkan/ra_vk.h
index da613c7f5b..393c01a3c1 100644
--- a/video/out/vulkan/ra_vk.h
+++ b/video/out/vulkan/ra_vk.h
@@ -29,3 +29,23 @@ struct vk_cmd *ra_vk_submit(struct ra *ra, struct ra_tex *tex);
// May be called on a struct ra of any type. Returns NULL if the ra is not
// a vulkan ra.
struct mpvk_ctx *ra_vk_get(struct ra *ra);
+
+struct vk_external_mem {
+#if HAVE_WIN32_DESKTOP
+ HANDLE mem_handle;
+#else
+ int mem_fd;
+#endif
+ size_t mem_size;
+ size_t size;
+ size_t offset;
+};
+
+// Export an ra_buf for importing by another api.
+bool ra_vk_buf_get_external_info(struct ra *ra, struct ra_buf *buf, struct vk_external_mem *ret);
+
+// Set the buffer user data
+void ra_vk_buf_set_user_data(struct ra_buf *buf, void *priv);
+
+// Get the buffer user data
+void *ra_vk_buf_get_user_data(struct ra_buf *buf);