mesa: Add utility function _mesa_is_enum_format_snorm()

Cc: <mesa-stable@lists.freedesktop.org>
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
This commit is contained in:
Anuj Phogat
2014-06-06 14:47:52 -07:00
parent 3c7a0c690a
commit 845b5ec89f
2 changed files with 40 additions and 0 deletions
+37
View File
@@ -353,6 +353,43 @@ _mesa_bytes_per_vertex_attrib(GLint comps, GLenum type)
}
}
/**
* Test if the given format is a SNORM (signed-normalized) format.
*/
GLboolean
_mesa_is_enum_format_snorm(GLenum format)
{
switch (format) {
/* signed, normalized texture formats */
case GL_RED_SNORM:
case GL_R8_SNORM:
case GL_R16_SNORM:
case GL_RG_SNORM:
case GL_RG8_SNORM:
case GL_RG16_SNORM:
case GL_RGB_SNORM:
case GL_RGB8_SNORM:
case GL_RGB16_SNORM:
case GL_RGBA_SNORM:
case GL_RGBA8_SNORM:
case GL_RGBA16_SNORM:
case GL_ALPHA_SNORM:
case GL_ALPHA8_SNORM:
case GL_ALPHA16_SNORM:
case GL_LUMINANCE_SNORM:
case GL_LUMINANCE8_SNORM:
case GL_LUMINANCE16_SNORM:
case GL_LUMINANCE_ALPHA_SNORM:
case GL_LUMINANCE8_ALPHA8_SNORM:
case GL_LUMINANCE16_ALPHA16_SNORM:
case GL_INTENSITY_SNORM:
case GL_INTENSITY8_SNORM:
case GL_INTENSITY16_SNORM:
return GL_TRUE;
default:
return GL_FALSE;
}
}
/**
* Test if the given format is an integer (non-normalized) format.
+3
View File
@@ -56,6 +56,9 @@ _mesa_bytes_per_vertex_attrib(GLint comps, GLenum type);
extern GLboolean
_mesa_is_type_unsigned(GLenum type);
extern GLboolean
_mesa_is_enum_format_snorm(GLenum format);
extern GLboolean
_mesa_is_enum_format_integer(GLenum format);