diff options
Diffstat (limited to 'mesalib/src/mesa/main/dd.h')
-rw-r--r-- | mesalib/src/mesa/main/dd.h | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/mesalib/src/mesa/main/dd.h b/mesalib/src/mesa/main/dd.h index fcf40ecf1..d918b1e31 100644 --- a/mesalib/src/mesa/main/dd.h +++ b/mesalib/src/mesa/main/dd.h @@ -479,7 +479,26 @@ struct dd_function_table { /** * Called to free tImage->Data. */ - void (*FreeTexImageData)( struct gl_context *ctx, struct gl_texture_image *tImage ); + 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 ); |