mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 05:18:08 +02:00
mesa: Add driver hooks for texture image mapping/unmapping.
ctx->Driver.MapTextureImage() / UnmapTextureImage() will be called by the glTex[Sub]Image(), glGetTexImage() functions, etc. when we're accessing texture data, and also for software rendering when accessing texture data. Reviewed-by: Brian Paul <brianp@vmware.com>
This commit is contained in:
parent
68f8cf7263
commit
570016cef2
1 changed files with 19 additions and 0 deletions
|
|
@ -481,6 +481,25 @@ struct dd_function_table {
|
|||
*/
|
||||
void (*FreeTextureImageBuffer)( struct gl_context *ctx, struct gl_texture_image *tImage );
|
||||
|
||||
/** Map a slice of a texture image into user space.
|
||||
* \param texImage the texture image
|
||||
* \param slice the 3D image slice or array texture slice
|
||||
* \param x, y, w, h region of interest
|
||||
* \param mode bitmask of GL_MAP_READ_BIT, GL_MAP_WRITE_BIT
|
||||
* \param mapOut returns start of mapping of region of interest
|
||||
* \param rowStrideOut returns row stride (in bytes)
|
||||
*/
|
||||
void (*MapTextureImage)(struct gl_context *ctx,
|
||||
struct gl_texture_image *texImage,
|
||||
GLuint slice,
|
||||
GLuint x, GLuint y, GLuint w, GLuint h,
|
||||
GLbitfield mode,
|
||||
GLubyte **mapOut, GLint *rowStrideOut);
|
||||
|
||||
void (*UnmapTextureImage)(struct gl_context *ctx,
|
||||
struct gl_texture_image *texImage,
|
||||
GLuint slice);
|
||||
|
||||
/** Map texture image data into user space */
|
||||
void (*MapTexture)( struct gl_context *ctx, struct gl_texture_object *tObj );
|
||||
/** Unmap texture images from user space */
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue