summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Romanick <ian.d.romanick@intel.com>2011-09-12 11:45:43 -0500
committerIan Romanick <ian.d.romanick@intel.com>2011-10-25 18:41:29 -0700
commit9b242a03d5df517f0dae61a1b9572147fba33310 (patch)
tree1c66779a4af687ff66a8b5aeb0cddc1f8cc1ad3c
parent8317a43a752fe3468c95452e03415f7ba9961653 (diff)
mesa: Add _mesa_cpal_compressed_format_type
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Brian Paul <brianp@vmware.com> Tested-by: Jin Yang <jin.a.yang@intel.com> (cherry picked from commit b433e7ba073c66d974dfd8a180ab3970acf18105)
-rw-r--r--src/mesa/main/texpal.c16
-rw-r--r--src/mesa/main/texpal.h4
2 files changed, 20 insertions, 0 deletions
diff --git a/src/mesa/main/texpal.c b/src/mesa/main/texpal.c
index 7608087f43b..0684638f19e 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 e1809995468..acfaa313ec5 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 */