Mesa (master): mesa/dd: Add a function for creating a texture from a buffer object

Jason Ekstrand jekstrand at kemper.freedesktop.org
Thu Jan 22 19:37:06 UTC 2015


Module: Mesa
Branch: master
Commit: 3298b1235a303ad1fa261c52b22174430b2e90ff
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=3298b1235a303ad1fa261c52b22174430b2e90ff

Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date:   Wed Jan  7 21:13:15 2015 -0800

mesa/dd: Add a function for creating a texture from a buffer object

Reviewed-by: Neil Roberts <neil at linux.intel.com>

---

 src/mesa/main/dd.h |   16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/src/mesa/main/dd.h b/src/mesa/main/dd.h
index 2f40915..6883e18 100644
--- a/src/mesa/main/dd.h
+++ b/src/mesa/main/dd.h
@@ -415,6 +415,22 @@ struct dd_function_table {
                             struct gl_texture_object *texObj,
                             struct gl_texture_object *origTexObj);
 
+   /** Sets the given buffer object as the texture's storage.  The given
+    * texture must have target GL_TEXTURE_1D, GL_TEXTURE_2D,
+    * GL_TEXTURE_RECTANGLE, and GL_TEXTURE_2D_ARRAY; have only a single
+    * mipmap level; be immutable; and must not have any assigned storage.
+    * The format and dimensions of the gl_texture_object will already be
+    * initialized.
+    *
+    * This function is used by the meta PBO texture upload path.
+    */
+   bool (*SetTextureStorageForBufferObject)(struct gl_context *ctx,
+                                            struct gl_texture_object *texObj,
+                                            struct gl_buffer_object *bufferObj,
+                                            uint32_t buffer_offset,
+                                            uint32_t row_stride,
+                                            bool read_only);
+
    /**
     * Map a renderbuffer into user space.
     * \param mode  bitmask of GL_MAP_READ_BIT, GL_MAP_WRITE_BIT and




More information about the mesa-commit mailing list