gallium: add z24s8_as_r8g8b8a8 format
[mesa.git] / src / gallium / include / pipe / p_format.h
index b007229a2156b69c9985d76d3a213e610f60d16a..42908e9a720bf6185916dfb9ce6d1305f901edd0 100644 (file)
 #ifndef PIPE_FORMAT_H
 #define PIPE_FORMAT_H
 
+#include "p_config.h"
+
 #ifdef __cplusplus
 extern "C" {
 #endif
 
-#include "p_config.h"
-
 /**
- * Texture/surface image formats (preliminary)
+ * Formats for textures, surfaces and vertex data
  */
-
-/* KW: Added lots of surface formats to support vertex element layout
- * definitions, and eventually render-to-vertex-buffer.
- */
-
 enum pipe_format {
    PIPE_FORMAT_NONE                    = 0,
    PIPE_FORMAT_B8G8R8A8_UNORM          = 1,
@@ -353,6 +348,67 @@ enum pipe_format {
    PIPE_FORMAT_A8B8G8R8_SNORM          = 267,
    PIPE_FORMAT_X8B8G8R8_SNORM          = 268,
 
+   PIPE_FORMAT_ETC2_RGB8               = 269,
+   PIPE_FORMAT_ETC2_SRGB8              = 270,
+   PIPE_FORMAT_ETC2_RGB8A1             = 271,
+   PIPE_FORMAT_ETC2_SRGB8A1            = 272,
+   PIPE_FORMAT_ETC2_RGBA8              = 273,
+   PIPE_FORMAT_ETC2_SRGBA8             = 274,
+   PIPE_FORMAT_ETC2_R11_UNORM          = 275,
+   PIPE_FORMAT_ETC2_R11_SNORM          = 276,
+   PIPE_FORMAT_ETC2_RG11_UNORM         = 277,
+   PIPE_FORMAT_ETC2_RG11_SNORM         = 278,
+
+   PIPE_FORMAT_ASTC_4x4                = 279,
+   PIPE_FORMAT_ASTC_5x4                = 280,
+   PIPE_FORMAT_ASTC_5x5                = 281,
+   PIPE_FORMAT_ASTC_6x5                = 282,
+   PIPE_FORMAT_ASTC_6x6                = 283,
+   PIPE_FORMAT_ASTC_8x5                = 284,
+   PIPE_FORMAT_ASTC_8x6                = 285,
+   PIPE_FORMAT_ASTC_8x8                = 286,
+   PIPE_FORMAT_ASTC_10x5               = 287,
+   PIPE_FORMAT_ASTC_10x6               = 288,
+   PIPE_FORMAT_ASTC_10x8               = 289,
+   PIPE_FORMAT_ASTC_10x10              = 290,
+   PIPE_FORMAT_ASTC_12x10              = 291,
+   PIPE_FORMAT_ASTC_12x12              = 292,
+
+   PIPE_FORMAT_ASTC_4x4_SRGB           = 293,
+   PIPE_FORMAT_ASTC_5x4_SRGB           = 294,
+   PIPE_FORMAT_ASTC_5x5_SRGB           = 295,
+   PIPE_FORMAT_ASTC_6x5_SRGB           = 296,
+   PIPE_FORMAT_ASTC_6x6_SRGB           = 297,
+   PIPE_FORMAT_ASTC_8x5_SRGB           = 298,
+   PIPE_FORMAT_ASTC_8x6_SRGB           = 299,
+   PIPE_FORMAT_ASTC_8x8_SRGB           = 300,
+   PIPE_FORMAT_ASTC_10x5_SRGB          = 301,
+   PIPE_FORMAT_ASTC_10x6_SRGB          = 302,
+   PIPE_FORMAT_ASTC_10x8_SRGB          = 303,
+   PIPE_FORMAT_ASTC_10x10_SRGB         = 304,
+   PIPE_FORMAT_ASTC_12x10_SRGB         = 305,
+   PIPE_FORMAT_ASTC_12x12_SRGB         = 306,
+
+   PIPE_FORMAT_P016                    = 307,
+
+   PIPE_FORMAT_R10G10B10X2_UNORM       = 308,
+   PIPE_FORMAT_A1B5G5R5_UNORM          = 309,
+   PIPE_FORMAT_X1B5G5R5_UNORM          = 310,
+   PIPE_FORMAT_A4B4G4R4_UNORM          = 311,
+
+   PIPE_FORMAT_R8_SRGB                 = 312,
+
+   PIPE_FORMAT_A8L8_SINT               = 313,
+   PIPE_FORMAT_G8R8_SINT               = 314,
+   PIPE_FORMAT_A8B8G8R8_SINT           = 315,
+   PIPE_FORMAT_X8B8G8R8_SINT           = 316,
+
+   PIPE_FORMAT_ATC_RGB                 = 317,
+   PIPE_FORMAT_ATC_RGBA_EXPLICIT       = 318,
+   PIPE_FORMAT_ATC_RGBA_INTERPOLATED   = 319,
+
+   PIPE_FORMAT_Z24_UNORM_S8_UINT_AS_R8G8B8A8 = 320,
+
    PIPE_FORMAT_COUNT
 };
 
@@ -396,7 +452,6 @@ enum pipe_format {
 #elif defined(PIPE_ARCH_BIG_ENDIAN)
 #define PIPE_FORMAT_ABGR8888_UNORM PIPE_FORMAT_R8G8B8A8_UNORM
 #define PIPE_FORMAT_XBGR8888_UNORM PIPE_FORMAT_R8G8B8X8_UNORM
-#define PIPE_FORMAT_XRGB8888_UNORM PIPE_FORMAT_B8G8R8X8_UNORM
 #define PIPE_FORMAT_ARGB8888_UNORM PIPE_FORMAT_B8G8R8A8_UNORM
 #define PIPE_FORMAT_XRGB8888_UNORM PIPE_FORMAT_B8G8R8X8_UNORM
 #define PIPE_FORMAT_BGRA8888_UNORM PIPE_FORMAT_A8R8G8B8_UNORM
@@ -438,7 +493,8 @@ enum pipe_video_chroma_format
    PIPE_VIDEO_CHROMA_FORMAT_400,
    PIPE_VIDEO_CHROMA_FORMAT_420,
    PIPE_VIDEO_CHROMA_FORMAT_422,
-   PIPE_VIDEO_CHROMA_FORMAT_444
+   PIPE_VIDEO_CHROMA_FORMAT_444,
+   PIPE_VIDEO_CHROMA_FORMAT_NONE
 };
 
 #ifdef __cplusplus