[Mesa-dev] [PATCH v2 12/23] mesa: Add a _mesa_is_format_color_format helper
Iago Toral Quiroga
itoral at igalia.com
Mon Dec 1 03:04:21 PST 2014
From: Jason Ekstrand <jason.ekstrand at intel.com>
---
src/mesa/main/formats.c | 19 +++++++++++++++++++
src/mesa/main/formats.h | 3 +++
2 files changed, 22 insertions(+)
diff --git a/src/mesa/main/formats.c b/src/mesa/main/formats.c
index 05b6aea..8eb1838 100644
--- a/src/mesa/main/formats.c
+++ b/src/mesa/main/formats.c
@@ -462,6 +462,25 @@ _mesa_is_format_integer(mesa_format format)
return (info->DataType == GL_INT || info->DataType == GL_UNSIGNED_INT);
}
+
+/**
+ * Return true if the given format is a color format.
+ */
+GLenum
+_mesa_is_format_color_format(mesa_format format)
+{
+ const struct gl_format_info *info = _mesa_get_format_info(format);
+ switch (info->BaseFormat) {
+ case GL_DEPTH_COMPONENT:
+ case GL_STENCIL_INDEX:
+ case GL_DEPTH_STENCIL:
+ return false;
+ default:
+ return true;
+ }
+}
+
+
/**
* Return color encoding for given format.
* \return GL_LINEAR or GL_SRGB
diff --git a/src/mesa/main/formats.h b/src/mesa/main/formats.h
index cba12dc..072b486 100644
--- a/src/mesa/main/formats.h
+++ b/src/mesa/main/formats.h
@@ -552,6 +552,9 @@ _mesa_is_format_integer(mesa_format format);
extern bool
_mesa_is_format_etc2(mesa_format format);
+GLenum
+_mesa_is_format_color_format(mesa_format format);
+
extern GLenum
_mesa_get_format_color_encoding(mesa_format format);
--
1.9.1
More information about the mesa-dev
mailing list