[Mesa-dev] [PATCH 3/4] mesa: make memcpy_texture() non-static
Sinclair Yeh
syeh at vmware.com
Fri Oct 16 17:14:13 PDT 2015
Reviewed-by: Sinclair Yeh <syeh at vmware.com>
On Thu, Oct 15, 2015 at 01:01:42PM -0600, Brian Paul wrote:
> So that we can use it directly from the mesa/gallium state tracker.
> ---
> src/mesa/main/texstore.c | 40 ++++++++++++++++++++--------------------
> src/mesa/main/texstore.h | 11 +++++++++++
> 2 files changed, 31 insertions(+), 20 deletions(-)
>
> diff --git a/src/mesa/main/texstore.c b/src/mesa/main/texstore.c
> index e50964e..4b13c42 100644
> --- a/src/mesa/main/texstore.c
> +++ b/src/mesa/main/texstore.c
> @@ -97,16 +97,16 @@ static const GLubyte map_1032[6] = { 1, 0, 3, 2, ZERO, ONE };
> * No pixel transfer operations or special texel encodings allowed.
> * 1D, 2D and 3D images supported.
> */
> -static void
> -memcpy_texture(struct gl_context *ctx,
> - GLuint dimensions,
> - mesa_format dstFormat,
> - GLint dstRowStride,
> - GLubyte **dstSlices,
> - GLint srcWidth, GLint srcHeight, GLint srcDepth,
> - GLenum srcFormat, GLenum srcType,
> - const GLvoid *srcAddr,
> - const struct gl_pixelstore_attrib *srcPacking)
> +void
> +_mesa_memcpy_texture(struct gl_context *ctx,
> + GLuint dimensions,
> + mesa_format dstFormat,
> + GLint dstRowStride,
> + GLubyte **dstSlices,
> + GLint srcWidth, GLint srcHeight, GLint srcDepth,
> + GLenum srcFormat, GLenum srcType,
> + const GLvoid *srcAddr,
> + const struct gl_pixelstore_attrib *srcPacking)
> {
> const GLint srcRowStride = _mesa_image_row_stride(srcPacking, srcWidth,
> srcFormat, srcType);
> @@ -296,11 +296,11 @@ _mesa_texstore_ycbcr(TEXSTORE_PARAMS)
> assert(baseInternalFormat == GL_YCBCR_MESA);
>
> /* always just memcpy since no pixel transfer ops apply */
> - memcpy_texture(ctx, dims,
> - dstFormat,
> - dstRowStride, dstSlices,
> - srcWidth, srcHeight, srcDepth, srcFormat, srcType,
> - srcAddr, srcPacking);
> + _mesa_memcpy_texture(ctx, dims,
> + dstFormat,
> + dstRowStride, dstSlices,
> + srcWidth, srcHeight, srcDepth, srcFormat, srcType,
> + srcAddr, srcPacking);
>
> /* Check if we need byte swapping */
> /* XXX the logic here _might_ be wrong */
> @@ -899,11 +899,11 @@ _mesa_texstore_memcpy(TEXSTORE_PARAMS)
> return GL_FALSE;
> }
>
> - memcpy_texture(ctx, dims,
> - dstFormat,
> - dstRowStride, dstSlices,
> - srcWidth, srcHeight, srcDepth, srcFormat, srcType,
> - srcAddr, srcPacking);
> + _mesa_memcpy_texture(ctx, dims,
> + dstFormat,
> + dstRowStride, dstSlices,
> + srcWidth, srcHeight, srcDepth, srcFormat, srcType,
> + srcAddr, srcPacking);
> return GL_TRUE;
> }
> /**
> diff --git a/src/mesa/main/texstore.h b/src/mesa/main/texstore.h
> index 2c974f7..f08dc08 100644
> --- a/src/mesa/main/texstore.h
> +++ b/src/mesa/main/texstore.h
> @@ -74,6 +74,17 @@ _mesa_texstore_needs_transfer_ops(struct gl_context *ctx,
> GLenum baseInternalFormat,
> mesa_format dstFormat);
>
> +extern void
> +_mesa_memcpy_texture(struct gl_context *ctx,
> + GLuint dimensions,
> + mesa_format dstFormat,
> + GLint dstRowStride,
> + GLubyte **dstSlices,
> + GLint srcWidth, GLint srcHeight, GLint srcDepth,
> + GLenum srcFormat, GLenum srcType,
> + const GLvoid *srcAddr,
> + const struct gl_pixelstore_attrib *srcPacking);
> +
> extern GLboolean
> _mesa_texstore_can_use_memcpy(struct gl_context *ctx,
> GLenum baseInternalFormat, mesa_format dstFormat,
> --
> 1.9.1
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list