mesa: reorder and document the tokens in glheader.h
[mesa.git] / src / mesa / main / glheader.h
index 35a442a77bee880b957decab7872d76b3df6dde4..e95fc9fb4fe5a31b3e829a1f891a6c3b05a5c022 100644 (file)
@@ -43,13 +43,13 @@ extern "C" {
 #endif
 
 
-typedef int GLclampx;
-
-
-#ifndef GL_OES_EGL_image
-typedef void *GLeglImageOES;
-#endif
+/* Custom Mesa types to save space. */
+typedef unsigned short GLenum16;
+typedef unsigned char GLbitfield8;
+typedef unsigned short GLbitfield16;
+typedef GLuint64 GLbitfield64;
 
+/* Common GLES 1.0 and 2.0 tokens */
 
 #ifndef GL_OES_EGL_image_external
 #define GL_TEXTURE_EXTERNAL_OES                                 0x8D65
@@ -58,6 +58,14 @@ typedef void *GLeglImageOES;
 #define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES                     0x8D68
 #endif
 
+#ifndef GL_OES_compressed_ETC1_RGB8_texture
+#define GL_ETC1_RGB8_OES                                        0x8D64
+#endif
+
+
+/* GLES 1.0 only tokens */
+
+typedef int GLclampx;
 
 #ifndef GL_OES_point_size_array
 #define GL_POINT_SIZE_ARRAY_OES                                 0x8B9C
@@ -72,31 +80,15 @@ typedef void *GLeglImageOES;
 #define GL_TEXTURE_CROP_RECT_OES                                0x8B9D
 #endif
 
-
-#ifndef GL_PROGRAM_BINARY_LENGTH_OES
-#define GL_PROGRAM_BINARY_LENGTH_OES                            0x8741
-#endif
-
-/* GLES 2.0 tokens */
-#ifndef GL_RGB565
-#define GL_RGB565                                               0x8D62
-#endif
-
 #ifndef GL_TEXTURE_GEN_STR_OES
 #define GL_TEXTURE_GEN_STR_OES                                  0x8D60
 #endif
 
-#ifndef GL_OES_compressed_paletted_texture
-#define GL_PALETTE4_RGB8_OES                                    0x8B90
-#define GL_PALETTE4_RGBA8_OES                                   0x8B91
-#define GL_PALETTE4_R5_G6_B5_OES                                0x8B92
-#define GL_PALETTE4_RGBA4_OES                                   0x8B93
-#define GL_PALETTE4_RGB5_A1_OES                                 0x8B94
-#define GL_PALETTE8_RGB8_OES                                    0x8B95
-#define GL_PALETTE8_RGBA8_OES                                   0x8B96
-#define GL_PALETTE8_R5_G6_B5_OES                                0x8B97
-#define GL_PALETTE8_RGBA4_OES                                   0x8B98
-#define GL_PALETTE8_RGB5_A1_OES                                 0x8B99
+
+/* GLES 2.0 only tokens */
+
+#ifndef GL_PROGRAM_BINARY_LENGTH_OES
+#define GL_PROGRAM_BINARY_LENGTH_OES                            0x8741
 #endif
 
 #ifndef GL_OES_texture_compression_astc
@@ -122,24 +114,6 @@ typedef void *GLeglImageOES;
 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x6_OES               0x93E9
 #endif
 
-#ifndef GL_ES_VERSION_2_0
-#define GL_SHADER_BINARY_FORMATS                                0x8DF8
-#define GL_NUM_SHADER_BINARY_FORMATS                            0x8DF9
-#define GL_SHADER_COMPILER                                      0x8DFA
-#define GL_MAX_VERTEX_UNIFORM_VECTORS                           0x8DFB
-#define GL_MAX_VARYING_VECTORS                                  0x8DFC
-#define GL_MAX_FRAGMENT_UNIFORM_VECTORS                         0x8DFD
-#endif
-
-#ifndef GL_ATI_texture_compression_3dc
-#define GL_ATI_texture_compression_3dc                          1
-#define GL_COMPRESSED_LUMINANCE_ALPHA_3DC_ATI                   0x8837
-#endif
-
-#ifndef GL_OES_compressed_ETC1_RGB8_texture
-#define GL_ETC1_RGB8_OES                                        0x8D64
-#endif
-
 #ifndef GL_EXT_shader_framebuffer_fetch
 #define GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT                 0x8A52
 #endif
@@ -154,6 +128,16 @@ typedef void *GLeglImageOES;
 #define GL_HALF_FLOAT_OES                                       0x8D61
 #endif
 
+#ifndef GL_MESA_framebuffer_flip_y
+#define GL_FRAMEBUFFER_FLIP_Y_MESA                              0x8BBB
+#endif
+
+/* There is no formal spec for the following extension. */
+#ifndef GL_ATI_texture_compression_3dc
+#define GL_ATI_texture_compression_3dc                          1
+#define GL_COMPRESSED_LUMINANCE_ALPHA_3DC_ATI                   0x8837
+#endif
+
 
 /**
  * Internal token to represent a GLSL shader program (a collection of
@@ -165,28 +149,6 @@ typedef void *GLeglImageOES;
 #define GL_SHADER_PROGRAM_MESA                                  0x9999
 
 
-/* Several fields of struct gl_config can take these as values.  Since
- * GLX header files may not be available everywhere they need to be used,
- * redefine them here.
- */
-#define GLX_NONE                                                0x8000
-#define GLX_SLOW_CONFIG                                         0x8001
-#define GLX_TRUE_COLOR                                          0x8002
-#define GLX_DIRECT_COLOR                                        0x8003
-#define GLX_PSEUDO_COLOR                                        0x8004
-#define GLX_STATIC_COLOR                                        0x8005
-#define GLX_GRAY_SCALE                                          0x8006
-#define GLX_STATIC_GRAY                                         0x8007
-#define GLX_TRANSPARENT_RGB                                     0x8008
-#define GLX_TRANSPARENT_INDEX                                   0x8009
-#define GLX_NON_CONFORMANT_CONFIG                               0x800D
-#define GLX_SWAP_EXCHANGE_OML                                   0x8061
-#define GLX_SWAP_COPY_OML                                       0x8062
-#define GLX_SWAP_UNDEFINED_OML                                  0x8063
-
-#define GLX_DONT_CARE                                           0xFFFFFFFF
-
-
 #ifdef __cplusplus
 }
 #endif