diff options
author | Jason Ekstrand <[email protected]> | 2014-07-25 14:08:59 -0700 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2014-08-11 11:26:00 -0700 |
commit | 8ad7c1903d0f77d3b76e5431f3164323ac48adea (patch) | |
tree | 7ff56c3e74331144f7379727351b20f058d7ee6a /src/mesa/drivers/common/meta.h | |
parent | 80a8b020c02356ec59b0948b87bce9e97d1e14bd (diff) |
mesa/meta: Add a partial implementation of CopyImageSubData
This provides an implementation of CopyImageSubData that works if both
textures are uncompressed. This implementation works by using a
combination of texture views and BlitFramebuffer. If one of the textures
is compressed, it returns false and the driver is expected to provide a
fallback.
v2: Don't leak fbo's
Signed-off-by: Jason Ekstrand <[email protected]>
Reviewed-by: Juha-Pekka Heikkila <[email protected]>
Reviewed-by: Neil Roberts <[email protected]>
v3: Change glGen/DeleteTextures to _mesa_Gen/DeleteTextures
Diffstat (limited to 'src/mesa/drivers/common/meta.h')
-rw-r--r-- | src/mesa/drivers/common/meta.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/mesa/drivers/common/meta.h b/src/mesa/drivers/common/meta.h index f12dc65d2a7..e2da2f4278c 100644 --- a/src/mesa/drivers/common/meta.h +++ b/src/mesa/drivers/common/meta.h @@ -440,6 +440,14 @@ _mesa_meta_and_swrast_BlitFramebuffer(struct gl_context *ctx, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +bool +_mesa_meta_CopyImageSubData_uncompressed(struct gl_context *ctx, + struct gl_texture_image *src_tex_image, + int src_x, int src_y, int src_z, + struct gl_texture_image *dst_tex_image, + int dst_x, int dst_y, int dst_z, + int src_width, int src_height); + extern void _mesa_meta_Clear(struct gl_context *ctx, GLbitfield buffers); |