[Mesa-dev] [PATCH 4/7] mesa: Add _mesa_cpal_compressed_format_type

Ian Romanick idr at freedesktop.org
Tue Sep 13 15:40:06 PDT 2011


From: Ian Romanick <ian.d.romanick at intel.com>

Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
---
 src/mesa/main/texpal.c |   16 ++++++++++++++++
 src/mesa/main/texpal.h |    4 ++++
 2 files changed, 20 insertions(+), 0 deletions(-)

diff --git a/src/mesa/main/texpal.c b/src/mesa/main/texpal.c
index 7608087..0684638 100644
--- a/src/mesa/main/texpal.c
+++ b/src/mesa/main/texpal.c
@@ -152,6 +152,22 @@ cpal_get_info(GLint level, GLenum internalFormat,
    return info;
 }
 
+void
+_mesa_cpal_compressed_format_type(GLenum internalFormat, GLenum *format,
+				  GLenum *type)
+{
+   const struct cpal_format_info *info;
+
+   if (internalFormat < GL_PALETTE4_RGB8_OES
+       || internalFormat > GL_PALETTE8_RGB5_A1_OES) {
+      return;
+   }
+
+   info = &formats[internalFormat - GL_PALETTE4_RGB8_OES];
+   *format = info->format;
+   *type = info->type;
+}
+
 /**
  * Convert a call to glCompressedTexImage2D() where internalFormat is a
  *  compressed palette format into a regular GLubyte/RGBA glTexImage2D() call.
diff --git a/src/mesa/main/texpal.h b/src/mesa/main/texpal.h
index e180999..acfaa31 100644
--- a/src/mesa/main/texpal.h
+++ b/src/mesa/main/texpal.h
@@ -38,4 +38,8 @@ extern unsigned
 _mesa_cpal_compressed_size(int level, GLenum internalFormat,
 			   unsigned width, unsigned height);
 
+extern void
+_mesa_cpal_compressed_format_type(GLenum internalFormat, GLenum *format,
+				  GLenum *type);
+
 #endif /* TEXPAL_H */
-- 
1.7.6



More information about the mesa-dev mailing list