Module: Mesa Branch: master Commit: 8f378d1083179ea9e760688582faf95aea880b94 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=8f378d1083179ea9e760688582faf95aea880b94
Author: Nanley Chery <nanley.g.ch...@intel.com> Date: Tue May 19 09:58:17 2015 -0700 mesa/formats: store whether or not a format is sRGB in gl_format_info v2: remove extra newline. v3: use bool instead of GLboolean. Reviewed-by: Anuj Phogat <anuj.pho...@gmail.com> Signed-off-by: Nanley Chery <nanley.g.ch...@intel.com> --- src/mesa/main/format_info.py | 2 ++ src/mesa/main/formats.c | 28 ++++------------------------ 2 files changed, 6 insertions(+), 24 deletions(-) diff --git a/src/mesa/main/format_info.py b/src/mesa/main/format_info.py index c249e73..839d407 100644 --- a/src/mesa/main/format_info.py +++ b/src/mesa/main/format_info.py @@ -180,6 +180,8 @@ for fmat in formats: bits = [ get_channel_bits(fmat, name) for name in ['l', 'i', 'z', 's']] print ' {0},'.format(', '.join(map(str, bits))) + print ' {0:d},'.format(fmat.colorspace == 'srgb') + print ' {0}, {1}, {2},'.format(fmat.block_width, fmat.block_height, int(fmat.block_size() / 8)) diff --git a/src/mesa/main/formats.c b/src/mesa/main/formats.c index 673c6b9..5e1d9a6 100644 --- a/src/mesa/main/formats.c +++ b/src/mesa/main/formats.c @@ -65,6 +65,8 @@ struct gl_format_info GLubyte DepthBits; GLubyte StencilBits; + bool IsSRGBFormat; + /** * To describe compressed formats. If not compressed, Width=Height=1. */ @@ -568,30 +570,8 @@ _mesa_is_format_color_format(mesa_format format) GLenum _mesa_get_format_color_encoding(mesa_format format) { - /* XXX this info should be encoded in gl_format_info */ - switch (format) { - case MESA_FORMAT_BGR_SRGB8: - case MESA_FORMAT_A8B8G8R8_SRGB: - case MESA_FORMAT_B8G8R8A8_SRGB: - case MESA_FORMAT_A8R8G8B8_SRGB: - case MESA_FORMAT_R8G8B8A8_SRGB: - case MESA_FORMAT_L_SRGB8: - case MESA_FORMAT_L8A8_SRGB: - case MESA_FORMAT_A8L8_SRGB: - case MESA_FORMAT_SRGB_DXT1: - case MESA_FORMAT_SRGBA_DXT1: - case MESA_FORMAT_SRGBA_DXT3: - case MESA_FORMAT_SRGBA_DXT5: - case MESA_FORMAT_R8G8B8X8_SRGB: - case MESA_FORMAT_ETC2_SRGB8: - case MESA_FORMAT_ETC2_SRGB8_ALPHA8_EAC: - case MESA_FORMAT_ETC2_SRGB8_PUNCHTHROUGH_ALPHA1: - case MESA_FORMAT_B8G8R8X8_SRGB: - case MESA_FORMAT_BPTC_SRGB_ALPHA_UNORM: - return GL_SRGB; - default: - return GL_LINEAR; - } + const struct gl_format_info *info = _mesa_get_format_info(format); + return info->IsSRGBFormat ? GL_SRGB : GL_LINEAR; } _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-commit