mesa: Add a helper function _mesa_is_enum_format_unsized()

Function is utilized by next patch in the series.

V2: Add missing formats.

Cc: <mesa-stable@lists.freedesktop.org>
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
(cherry picked from commit e0fe00eeac)
This commit is contained in:
Anuj Phogat 2014-06-05 11:13:16 -07:00 committed by Carl Worth
parent 4c02b3d90e
commit 8829b3c37a
2 changed files with 59 additions and 0 deletions

View file

@ -355,6 +355,62 @@ _mesa_bytes_per_vertex_attrib(GLint comps, GLenum type)
}
}
/**
* Test if the given format is unsized.
*/
GLboolean
_mesa_is_enum_format_unsized(GLenum format)
{
switch (format) {
case GL_RGBA:
case GL_BGRA:
case GL_ABGR_EXT:
case GL_RGB:
case GL_BGR:
case GL_RG:
case GL_RED:
case GL_GREEN:
case GL_BLUE:
case GL_ALPHA:
case GL_INTENSITY:
case GL_LUMINANCE:
case GL_LUMINANCE_ALPHA:
case GL_SRGB:
case GL_SRGB_ALPHA:
case GL_SLUMINANCE:
case GL_SLUMINANCE_ALPHA:
case GL_RGBA_SNORM:
case GL_RGB_SNORM:
case GL_RG_SNORM:
case GL_RED_SNORM:
case GL_ALPHA_SNORM:
case GL_INTENSITY_SNORM:
case GL_LUMINANCE_SNORM:
case GL_LUMINANCE_ALPHA_SNORM:
case GL_RED_INTEGER:
case GL_GREEN_INTEGER:
case GL_BLUE_INTEGER:
case GL_ALPHA_INTEGER:
case GL_RGB_INTEGER:
case GL_RGBA_INTEGER:
case GL_BGR_INTEGER:
case GL_BGRA_INTEGER:
case GL_RG_INTEGER:
case GL_LUMINANCE_INTEGER_EXT:
case GL_LUMINANCE_ALPHA_INTEGER_EXT:
case GL_DEPTH_COMPONENT:
case GL_DEPTH_STENCIL:
case GL_STENCIL_INDEX:
return GL_TRUE;
default:
return GL_FALSE;
}
}
/**
* Test if the given format is a SNORM (signed-normalized) format.
*/

View file

@ -59,6 +59,9 @@ _mesa_is_type_integer(GLenum type);
extern GLboolean
_mesa_is_type_unsigned(GLenum type);
extern GLboolean
_mesa_is_enum_format_unsized(GLenum format);
extern GLboolean
_mesa_is_enum_format_snorm(GLenum format);