diff src/video/SDL_pixels.c @ 4982:660d3a432102

Added some missing pixel formats and SDL_GetPixelFormatName()
author Sam Lantinga <slouken@libsdl.org>
date Wed, 12 Jan 2011 14:53:23 -0800
parents f7b03b6838cb
children b49d3869ebd2
line wrap: on
line diff
--- a/src/video/SDL_pixels.c	Wed Jan 12 14:29:01 2011 -0800
+++ b/src/video/SDL_pixels.c	Wed Jan 12 14:53:23 2011 -0800
@@ -39,6 +39,50 @@
 
 /* Helper functions */
 
+const char*
+SDL_GetPixelFormatName(Uint32 format)
+{
+    switch (format) {
+#define CASE(X) case X: return #X;
+    CASE(SDL_PIXELFORMAT_INDEX1LSB)
+    CASE(SDL_PIXELFORMAT_INDEX1MSB)
+    CASE(SDL_PIXELFORMAT_INDEX4LSB)
+    CASE(SDL_PIXELFORMAT_INDEX4MSB)
+    CASE(SDL_PIXELFORMAT_INDEX8)
+    CASE(SDL_PIXELFORMAT_RGB332)
+    CASE(SDL_PIXELFORMAT_RGB444)
+    CASE(SDL_PIXELFORMAT_RGB555)
+    CASE(SDL_PIXELFORMAT_BGR555)
+    CASE(SDL_PIXELFORMAT_ARGB4444)
+    CASE(SDL_PIXELFORMAT_RGBA4444)
+    CASE(SDL_PIXELFORMAT_ABGR4444)
+    CASE(SDL_PIXELFORMAT_BGRA4444)
+    CASE(SDL_PIXELFORMAT_ARGB1555)
+    CASE(SDL_PIXELFORMAT_RGBA5551)
+    CASE(SDL_PIXELFORMAT_ABGR1555)
+    CASE(SDL_PIXELFORMAT_BGRA5551)
+    CASE(SDL_PIXELFORMAT_RGB565)
+    CASE(SDL_PIXELFORMAT_BGR565)
+    CASE(SDL_PIXELFORMAT_RGB24)
+    CASE(SDL_PIXELFORMAT_BGR24)
+    CASE(SDL_PIXELFORMAT_RGB888)
+    CASE(SDL_PIXELFORMAT_BGR888)
+    CASE(SDL_PIXELFORMAT_ARGB8888)
+    CASE(SDL_PIXELFORMAT_RGBA8888)
+    CASE(SDL_PIXELFORMAT_ABGR8888)
+    CASE(SDL_PIXELFORMAT_BGRA8888)
+    CASE(SDL_PIXELFORMAT_ARGB2101010)
+    CASE(SDL_PIXELFORMAT_YV12)
+    CASE(SDL_PIXELFORMAT_IYUV)
+    CASE(SDL_PIXELFORMAT_YUY2)
+    CASE(SDL_PIXELFORMAT_UYVY)
+    CASE(SDL_PIXELFORMAT_YVYU)
+#undef CASE
+    default:
+        return "SDL_PIXELFORMAT_UNKNOWN";
+    }
+}
+
 SDL_bool
 SDL_PixelFormatEnumToMasks(Uint32 format, int *bpp, Uint32 * Rmask,
                            Uint32 * Gmask, Uint32 * Bmask, Uint32 * Amask)