On 19.05.2017 18:52, Samuel Pitoiset wrote:
Signed-off-by: Samuel Pitoiset <samuel.pitoi...@gmail.com>
---
  src/gallium/include/pipe/p_context.h | 16 ++++++++++++++++
  1 file changed, 16 insertions(+)

diff --git a/src/gallium/include/pipe/p_context.h 
b/src/gallium/include/pipe/p_context.h
index 4b75386a65..83eb1c9b08 100644
--- a/src/gallium/include/pipe/p_context.h
+++ b/src/gallium/include/pipe/p_context.h
@@ -766,6 +766,22 @@ struct pipe_context {
                                unsigned last_level,
                                unsigned first_layer,
                                unsigned last_layer);
+
+   /**
+    * Bindless texture/image handles interface.
+    */
+   uint64_t (*create_texture_handle)(struct pipe_context *ctx,
+                                     struct pipe_resource *res,
+                                     struct pipe_sampler_view *view,
+                                     const struct pipe_sampler_state *state);
+   void (*delete_texture_handle)(struct pipe_context *ctx, uint64_t handle);
+   void (*make_texture_handle_resident)(struct pipe_context *ctx,
+                                        uint64_t handle, bool resident);
+   uint64_t (*create_image_handle)(struct pipe_context *ctx,
+                                   const struct pipe_image_view *image);
+   void (*delete_image_handle)(struct pipe_context *ctx, uint64_t handle);
+   void (*make_image_handle_resident)(struct pipe_context *ctx, uint64_t 
handle,
+                                      unsigned access, bool resident);

Should the create/delete functions be pipe_screen functions? Handles are shared across a GL share group, so the current implementation with a per-context hash of handles is definitely wrong. I still need to go over it in detail.

Cheers,
Nicolai
--
Lerne, wie die Welt wirklich ist,
Aber vergiss niemals, wie sie sein sollte.
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to