Merge remote branch 'origin/master' into glsl2
[mesa.git] / src / mesa / main / formats.h
index eba28a69bee5fa29d1e494af4d517ecfc1b653b9..aa14185628f108f7fdaad7b1a689ed8988979bda 100644 (file)
@@ -130,17 +130,42 @@ typedef enum
    MESA_FORMAT_INTENSITY_FLOAT16,
    /*@}*/
 
+   /**
+    * \name Non-normalized signed integer formats.
+    * XXX Note: these are just stand-ins for some better hardware
+    * formats TBD such as BGRA or ARGB.
+    */
+   MESA_FORMAT_RGBA_INT8,
+   MESA_FORMAT_RGBA_INT16,
+   MESA_FORMAT_RGBA_INT32,
+
+   /**
+    * \name Non-normalized unsigned integer formats.
+    */
+   MESA_FORMAT_RGBA_UINT8,
+   MESA_FORMAT_RGBA_UINT16,
+   MESA_FORMAT_RGBA_UINT32,
+
+                                  /* msb <------ TEXEL BITS -----------> lsb */
+                                  /* ---- ---- ---- ---- ---- ---- ---- ---- */
    /**
     * \name Signed fixed point texture formats.
     */
    /*@{*/
-   MESA_FORMAT_DUDV8,
-   MESA_FORMAT_SIGNED_RGBA8888,
-   MESA_FORMAT_SIGNED_RGBA8888_REV,
-   MESA_FORMAT_SIGNED_RGBA_16,
+   MESA_FORMAT_DUDV8,             /*                     DUDU DUDU DVDV DVDV */
+   MESA_FORMAT_SIGNED_R8,         /*                               RRRR RRRR */
+   MESA_FORMAT_SIGNED_RG88,       /*                     RRRR RRRR GGGG GGGG */
+   MESA_FORMAT_SIGNED_RGBX8888,   /* RRRR RRRR GGGG GGGG BBBB BBBB xxxx xxxx */
+   MESA_FORMAT_SIGNED_RGBA8888,   /* RRRR RRRR GGGG GGGG BBBB BBBB AAAA AAAA */
+   MESA_FORMAT_SIGNED_RGBA8888_REV,/*AAAA AAAA BBBB BBBB GGGG GGGG RRRR RRRR */
+   MESA_FORMAT_SIGNED_R_16,       /* ushort[0]=R */
+   MESA_FORMAT_SIGNED_RG_16,      /* ushort[0]=R, ushort[1]=G */
+   MESA_FORMAT_SIGNED_RGB_16,     /* ushort[0]=R, ushort[1]=G, ushort[2]=B */
+   MESA_FORMAT_SIGNED_RGBA_16,    /* ... */
+   MESA_FORMAT_RGBA_16,           /* ... */
    /*@}*/
 
-   MESA_FORMAT_COUNT,
+   MESA_FORMAT_COUNT
 } gl_format;