[Mesa-dev] [PATCH 2/6] mesa: add a common function returning transfer ops for ReadPixels

Brian Paul brianp at vmware.com
Thu Mar 14 12:27:01 PDT 2013


On 03/14/2013 12:45 PM, Marek Olšák wrote:
> I'll need both new functions for later. For now, it consolidates the code
> for determining what the transfer ops should be and makes it a little bit
> smarter.
> ---
>   src/mesa/main/readpix.c |   94 +++++++++++++++++++++++++++++++++++++----------
>   1 file changed, 74 insertions(+), 20 deletions(-)
>
> diff --git a/src/mesa/main/readpix.c b/src/mesa/main/readpix.c
> index 2f130ae..e6d0ecd 100644
> --- a/src/mesa/main/readpix.c
> +++ b/src/mesa/main/readpix.c
> @@ -41,6 +41,73 @@
>
>
>   /**
> + * Return true if the conversion L=R+G+B is needed.
> + */
> +static GLboolean
> +need_rgb_to_luminance_conversion(gl_format texFormat, GLenum format)
> +{
> +   GLenum baseTexFormat = _mesa_get_format_base_format(texFormat);
> +
> +   return (baseTexFormat == GL_RG ||
> +           baseTexFormat == GL_RGB ||
> +           baseTexFormat == GL_RGBA)&&
> +          (format == GL_LUMINANCE || format == GL_LUMINANCE_ALPHA);
> +}
> +
> +
> +/**
> + * Return transfer op flags for this ReadPixels operation.
> + */
> +static GLbitfield
> +get_readpixels_transfer_ops(struct gl_context *ctx, gl_format texFormat,

const *ctx?


[...]


Reviewed-by: Brian Paul <brianp at vmware.com>


More information about the mesa-dev mailing list