blob: 6c9c9d2c70ceac75f6e421cb8364d32e1e588ac6 [file] [log] [blame]
Nicolas Capens11e06a92018-03-21 13:55:23 -04001#ifndef __gles1_glext_h_
2#define __gles1_glext_h_ 1
Nicolas Capense8139402014-10-23 14:13:35 -04003
4#ifdef __cplusplus
5extern "C" {
6#endif
7
8/*
Nicolas Capens9337db42018-05-30 09:46:45 -04009** Copyright (c) 2013-2018 The Khronos Group Inc.
Nicolas Capens11e06a92018-03-21 13:55:23 -040010**
11** Permission is hereby granted, free of charge, to any person obtaining a
12** copy of this software and/or associated documentation files (the
13** "Materials"), to deal in the Materials without restriction, including
14** without limitation the rights to use, copy, modify, merge, publish,
15** distribute, sublicense, and/or sell copies of the Materials, and to
16** permit persons to whom the Materials are furnished to do so, subject to
17** the following conditions:
18**
19** The above copyright notice and this permission notice shall be included
20** in all copies or substantial portions of the Materials.
21**
22** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
23** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
24** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
25** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
26** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
27** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
28** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
29*/
30/*
31** This header is generated from the Khronos OpenGL / OpenGL ES XML
32** API Registry. The current version of the Registry, generator scripts
33** used to make the header, and the header can be found at
34** https://github.com/KhronosGroup/OpenGL-Registry
35*/
Nicolas Capense8139402014-10-23 14:13:35 -040036
37#ifndef GL_APIENTRYP
Nicolas Capens11e06a92018-03-21 13:55:23 -040038#define GL_APIENTRYP GL_APIENTRY*
Nicolas Capense8139402014-10-23 14:13:35 -040039#endif
40
Nicolas Capens9337db42018-05-30 09:46:45 -040041/* Generated on date 20180525 */
Nicolas Capense8139402014-10-23 14:13:35 -040042
Nicolas Capens11e06a92018-03-21 13:55:23 -040043/* Generated C header for:
44 * API: gles1
45 * Profile: common
46 * Versions considered: .*
47 * Versions emitted: _nomatch_^
48 * Default extensions included: gles1
49 * Additional extensions included: _nomatch_^
50 * Extensions removed: ^(GL_OES_read_format|GL_OES_compressed_paletted_texture|GL_OES_point_size_array|GL_OES_point_sprite)$
Nicolas Capense8139402014-10-23 14:13:35 -040051 */
Nicolas Capense8139402014-10-23 14:13:35 -040052
Nicolas Capens11e06a92018-03-21 13:55:23 -040053#ifndef GL_KHR_debug
54#define GL_KHR_debug 1
55#endif /* GL_KHR_debug */
56
57#ifndef GL_OES_EGL_image
58#define GL_OES_EGL_image 1
59typedef void *GLeglImageOES;
60typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image);
61typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image);
62#ifdef GL_GLEXT_PROTOTYPES
63GL_API void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image);
64GL_API void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image);
Nicolas Capense8139402014-10-23 14:13:35 -040065#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -040066#endif /* GL_OES_EGL_image */
Nicolas Capense8139402014-10-23 14:13:35 -040067
Nicolas Capens11e06a92018-03-21 13:55:23 -040068#ifndef GL_OES_EGL_image_external
69#define GL_OES_EGL_image_external 1
70#define GL_TEXTURE_EXTERNAL_OES 0x8D65
71#define GL_TEXTURE_BINDING_EXTERNAL_OES 0x8D67
72#define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES 0x8D68
73#endif /* GL_OES_EGL_image_external */
Nicolas Capense8139402014-10-23 14:13:35 -040074
Nicolas Capense8139402014-10-23 14:13:35 -040075#ifndef GL_OES_blend_equation_separate
76#define GL_OES_blend_equation_separate 1
Nicolas Capens11e06a92018-03-21 13:55:23 -040077#define GL_BLEND_EQUATION_RGB_OES 0x8009
78#define GL_BLEND_EQUATION_ALPHA_OES 0x883D
79typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONSEPARATEOESPROC) (GLenum modeRGB, GLenum modeAlpha);
Nicolas Capense8139402014-10-23 14:13:35 -040080#ifdef GL_GLEXT_PROTOTYPES
81GL_API void GL_APIENTRY glBlendEquationSeparateOES (GLenum modeRGB, GLenum modeAlpha);
82#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -040083#endif /* GL_OES_blend_equation_separate */
Nicolas Capense8139402014-10-23 14:13:35 -040084
Nicolas Capense8139402014-10-23 14:13:35 -040085#ifndef GL_OES_blend_func_separate
86#define GL_OES_blend_func_separate 1
Nicolas Capens11e06a92018-03-21 13:55:23 -040087#define GL_BLEND_DST_RGB_OES 0x80C8
88#define GL_BLEND_SRC_RGB_OES 0x80C9
89#define GL_BLEND_DST_ALPHA_OES 0x80CA
90#define GL_BLEND_SRC_ALPHA_OES 0x80CB
91typedef void (GL_APIENTRYP PFNGLBLENDFUNCSEPARATEOESPROC) (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
Nicolas Capense8139402014-10-23 14:13:35 -040092#ifdef GL_GLEXT_PROTOTYPES
93GL_API void GL_APIENTRY glBlendFuncSeparateOES (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
94#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -040095#endif /* GL_OES_blend_func_separate */
Nicolas Capense8139402014-10-23 14:13:35 -040096
Nicolas Capense8139402014-10-23 14:13:35 -040097#ifndef GL_OES_blend_subtract
98#define GL_OES_blend_subtract 1
Nicolas Capens11e06a92018-03-21 13:55:23 -040099#define GL_BLEND_EQUATION_OES 0x8009
100#define GL_FUNC_ADD_OES 0x8006
101#define GL_FUNC_SUBTRACT_OES 0x800A
102#define GL_FUNC_REVERSE_SUBTRACT_OES 0x800B
103typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONOESPROC) (GLenum mode);
Nicolas Capense8139402014-10-23 14:13:35 -0400104#ifdef GL_GLEXT_PROTOTYPES
105GL_API void GL_APIENTRY glBlendEquationOES (GLenum mode);
106#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400107#endif /* GL_OES_blend_subtract */
Nicolas Capense8139402014-10-23 14:13:35 -0400108
Nicolas Capense8139402014-10-23 14:13:35 -0400109#ifndef GL_OES_byte_coordinates
110#define GL_OES_byte_coordinates 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400111#endif /* GL_OES_byte_coordinates */
Nicolas Capense8139402014-10-23 14:13:35 -0400112
Nicolas Capens11e06a92018-03-21 13:55:23 -0400113#ifndef GL_OES_compressed_ETC1_RGB8_sub_texture
114#define GL_OES_compressed_ETC1_RGB8_sub_texture 1
115#endif /* GL_OES_compressed_ETC1_RGB8_sub_texture */
116
Nicolas Capense8139402014-10-23 14:13:35 -0400117#ifndef GL_OES_compressed_ETC1_RGB8_texture
118#define GL_OES_compressed_ETC1_RGB8_texture 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400119#define GL_ETC1_RGB8_OES 0x8D64
120#endif /* GL_OES_compressed_ETC1_RGB8_texture */
Nicolas Capense8139402014-10-23 14:13:35 -0400121
Nicolas Capense8139402014-10-23 14:13:35 -0400122#ifndef GL_OES_depth24
123#define GL_OES_depth24 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400124#define GL_DEPTH_COMPONENT24_OES 0x81A6
125#endif /* GL_OES_depth24 */
Nicolas Capense8139402014-10-23 14:13:35 -0400126
Nicolas Capense8139402014-10-23 14:13:35 -0400127#ifndef GL_OES_depth32
128#define GL_OES_depth32 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400129#define GL_DEPTH_COMPONENT32_OES 0x81A7
130#endif /* GL_OES_depth32 */
Nicolas Capense8139402014-10-23 14:13:35 -0400131
Nicolas Capense8139402014-10-23 14:13:35 -0400132#ifndef GL_OES_draw_texture
133#define GL_OES_draw_texture 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400134#define GL_TEXTURE_CROP_RECT_OES 0x8B9D
135typedef void (GL_APIENTRYP PFNGLDRAWTEXSOESPROC) (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height);
136typedef void (GL_APIENTRYP PFNGLDRAWTEXIOESPROC) (GLint x, GLint y, GLint z, GLint width, GLint height);
137typedef void (GL_APIENTRYP PFNGLDRAWTEXXOESPROC) (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height);
138typedef void (GL_APIENTRYP PFNGLDRAWTEXSVOESPROC) (const GLshort *coords);
139typedef void (GL_APIENTRYP PFNGLDRAWTEXIVOESPROC) (const GLint *coords);
140typedef void (GL_APIENTRYP PFNGLDRAWTEXXVOESPROC) (const GLfixed *coords);
141typedef void (GL_APIENTRYP PFNGLDRAWTEXFOESPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height);
142typedef void (GL_APIENTRYP PFNGLDRAWTEXFVOESPROC) (const GLfloat *coords);
Nicolas Capense8139402014-10-23 14:13:35 -0400143#ifdef GL_GLEXT_PROTOTYPES
144GL_API void GL_APIENTRY glDrawTexsOES (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height);
145GL_API void GL_APIENTRY glDrawTexiOES (GLint x, GLint y, GLint z, GLint width, GLint height);
146GL_API void GL_APIENTRY glDrawTexxOES (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height);
147GL_API void GL_APIENTRY glDrawTexsvOES (const GLshort *coords);
148GL_API void GL_APIENTRY glDrawTexivOES (const GLint *coords);
149GL_API void GL_APIENTRY glDrawTexxvOES (const GLfixed *coords);
150GL_API void GL_APIENTRY glDrawTexfOES (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height);
151GL_API void GL_APIENTRY glDrawTexfvOES (const GLfloat *coords);
152#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400153#endif /* GL_OES_draw_texture */
Nicolas Capense8139402014-10-23 14:13:35 -0400154
Nicolas Capense8139402014-10-23 14:13:35 -0400155#ifndef GL_OES_element_index_uint
156#define GL_OES_element_index_uint 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400157#define GL_UNSIGNED_INT 0x1405
158#endif /* GL_OES_element_index_uint */
Nicolas Capense8139402014-10-23 14:13:35 -0400159
Nicolas Capense8139402014-10-23 14:13:35 -0400160#ifndef GL_OES_extended_matrix_palette
161#define GL_OES_extended_matrix_palette 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400162#endif /* GL_OES_extended_matrix_palette */
Nicolas Capense8139402014-10-23 14:13:35 -0400163
Nicolas Capense8139402014-10-23 14:13:35 -0400164#ifndef GL_OES_fbo_render_mipmap
165#define GL_OES_fbo_render_mipmap 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400166#endif /* GL_OES_fbo_render_mipmap */
Nicolas Capense8139402014-10-23 14:13:35 -0400167
Nicolas Capense8139402014-10-23 14:13:35 -0400168#ifndef GL_OES_fixed_point
169#define GL_OES_fixed_point 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400170#define GL_FIXED_OES 0x140C
171typedef void (GL_APIENTRYP PFNGLALPHAFUNCXOESPROC) (GLenum func, GLfixed ref);
172typedef void (GL_APIENTRYP PFNGLCLEARCOLORXOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
173typedef void (GL_APIENTRYP PFNGLCLEARDEPTHXOESPROC) (GLfixed depth);
Nicolas Capense8139402014-10-23 14:13:35 -0400174typedef void (GL_APIENTRYP PFNGLCLIPPLANEXOESPROC) (GLenum plane, const GLfixed *equation);
175typedef void (GL_APIENTRYP PFNGLCOLOR4XOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400176typedef void (GL_APIENTRYP PFNGLDEPTHRANGEXOESPROC) (GLfixed n, GLfixed f);
Nicolas Capense8139402014-10-23 14:13:35 -0400177typedef void (GL_APIENTRYP PFNGLFOGXOESPROC) (GLenum pname, GLfixed param);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400178typedef void (GL_APIENTRYP PFNGLFOGXVOESPROC) (GLenum pname, const GLfixed *param);
179typedef void (GL_APIENTRYP PFNGLFRUSTUMXOESPROC) (GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f);
180typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEXOESPROC) (GLenum plane, GLfixed *equation);
Nicolas Capense8139402014-10-23 14:13:35 -0400181typedef void (GL_APIENTRYP PFNGLGETFIXEDVOESPROC) (GLenum pname, GLfixed *params);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400182typedef void (GL_APIENTRYP PFNGLGETTEXENVXVOESPROC) (GLenum target, GLenum pname, GLfixed *params);
Nicolas Capense8139402014-10-23 14:13:35 -0400183typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, GLfixed *params);
184typedef void (GL_APIENTRYP PFNGLLIGHTMODELXOESPROC) (GLenum pname, GLfixed param);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400185typedef void (GL_APIENTRYP PFNGLLIGHTMODELXVOESPROC) (GLenum pname, const GLfixed *param);
Nicolas Capense8139402014-10-23 14:13:35 -0400186typedef void (GL_APIENTRYP PFNGLLIGHTXOESPROC) (GLenum light, GLenum pname, GLfixed param);
187typedef void (GL_APIENTRYP PFNGLLIGHTXVOESPROC) (GLenum light, GLenum pname, const GLfixed *params);
188typedef void (GL_APIENTRYP PFNGLLINEWIDTHXOESPROC) (GLfixed width);
189typedef void (GL_APIENTRYP PFNGLLOADMATRIXXOESPROC) (const GLfixed *m);
190typedef void (GL_APIENTRYP PFNGLMATERIALXOESPROC) (GLenum face, GLenum pname, GLfixed param);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400191typedef void (GL_APIENTRYP PFNGLMATERIALXVOESPROC) (GLenum face, GLenum pname, const GLfixed *param);
Nicolas Capense8139402014-10-23 14:13:35 -0400192typedef void (GL_APIENTRYP PFNGLMULTMATRIXXOESPROC) (const GLfixed *m);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400193typedef void (GL_APIENTRYP PFNGLMULTITEXCOORD4XOESPROC) (GLenum texture, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
Nicolas Capense8139402014-10-23 14:13:35 -0400194typedef void (GL_APIENTRYP PFNGLNORMAL3XOESPROC) (GLfixed nx, GLfixed ny, GLfixed nz);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400195typedef void (GL_APIENTRYP PFNGLORTHOXOESPROC) (GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f);
Nicolas Capense8139402014-10-23 14:13:35 -0400196typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXVOESPROC) (GLenum pname, const GLfixed *params);
197typedef void (GL_APIENTRYP PFNGLPOINTSIZEXOESPROC) (GLfixed size);
198typedef void (GL_APIENTRYP PFNGLPOLYGONOFFSETXOESPROC) (GLfixed factor, GLfixed units);
199typedef void (GL_APIENTRYP PFNGLROTATEXOESPROC) (GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
Nicolas Capense8139402014-10-23 14:13:35 -0400200typedef void (GL_APIENTRYP PFNGLSCALEXOESPROC) (GLfixed x, GLfixed y, GLfixed z);
201typedef void (GL_APIENTRYP PFNGLTEXENVXOESPROC) (GLenum target, GLenum pname, GLfixed param);
202typedef void (GL_APIENTRYP PFNGLTEXENVXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params);
203typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXOESPROC) (GLenum target, GLenum pname, GLfixed param);
204typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params);
205typedef void (GL_APIENTRYP PFNGLTRANSLATEXOESPROC) (GLfixed x, GLfixed y, GLfixed z);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400206typedef void (GL_APIENTRYP PFNGLGETLIGHTXVOESPROC) (GLenum light, GLenum pname, GLfixed *params);
207typedef void (GL_APIENTRYP PFNGLGETMATERIALXVOESPROC) (GLenum face, GLenum pname, GLfixed *params);
208typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXOESPROC) (GLenum pname, GLfixed param);
209typedef void (GL_APIENTRYP PFNGLSAMPLECOVERAGEXOESPROC) (GLclampx value, GLboolean invert);
210typedef void (GL_APIENTRYP PFNGLGETTEXGENXVOESPROC) (GLenum coord, GLenum pname, GLfixed *params);
211typedef void (GL_APIENTRYP PFNGLTEXGENXOESPROC) (GLenum coord, GLenum pname, GLfixed param);
212typedef void (GL_APIENTRYP PFNGLTEXGENXVOESPROC) (GLenum coord, GLenum pname, const GLfixed *params);
213#ifdef GL_GLEXT_PROTOTYPES
214GL_API void GL_APIENTRY glAlphaFuncxOES (GLenum func, GLfixed ref);
215GL_API void GL_APIENTRY glClearColorxOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
216GL_API void GL_APIENTRY glClearDepthxOES (GLfixed depth);
217GL_API void GL_APIENTRY glClipPlanexOES (GLenum plane, const GLfixed *equation);
218GL_API void GL_APIENTRY glColor4xOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
219GL_API void GL_APIENTRY glDepthRangexOES (GLfixed n, GLfixed f);
220GL_API void GL_APIENTRY glFogxOES (GLenum pname, GLfixed param);
221GL_API void GL_APIENTRY glFogxvOES (GLenum pname, const GLfixed *param);
222GL_API void GL_APIENTRY glFrustumxOES (GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f);
223GL_API void GL_APIENTRY glGetClipPlanexOES (GLenum plane, GLfixed *equation);
224GL_API void GL_APIENTRY glGetFixedvOES (GLenum pname, GLfixed *params);
225GL_API void GL_APIENTRY glGetTexEnvxvOES (GLenum target, GLenum pname, GLfixed *params);
226GL_API void GL_APIENTRY glGetTexParameterxvOES (GLenum target, GLenum pname, GLfixed *params);
227GL_API void GL_APIENTRY glLightModelxOES (GLenum pname, GLfixed param);
228GL_API void GL_APIENTRY glLightModelxvOES (GLenum pname, const GLfixed *param);
229GL_API void GL_APIENTRY glLightxOES (GLenum light, GLenum pname, GLfixed param);
230GL_API void GL_APIENTRY glLightxvOES (GLenum light, GLenum pname, const GLfixed *params);
231GL_API void GL_APIENTRY glLineWidthxOES (GLfixed width);
232GL_API void GL_APIENTRY glLoadMatrixxOES (const GLfixed *m);
233GL_API void GL_APIENTRY glMaterialxOES (GLenum face, GLenum pname, GLfixed param);
234GL_API void GL_APIENTRY glMaterialxvOES (GLenum face, GLenum pname, const GLfixed *param);
235GL_API void GL_APIENTRY glMultMatrixxOES (const GLfixed *m);
236GL_API void GL_APIENTRY glMultiTexCoord4xOES (GLenum texture, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
237GL_API void GL_APIENTRY glNormal3xOES (GLfixed nx, GLfixed ny, GLfixed nz);
238GL_API void GL_APIENTRY glOrthoxOES (GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f);
239GL_API void GL_APIENTRY glPointParameterxvOES (GLenum pname, const GLfixed *params);
240GL_API void GL_APIENTRY glPointSizexOES (GLfixed size);
241GL_API void GL_APIENTRY glPolygonOffsetxOES (GLfixed factor, GLfixed units);
242GL_API void GL_APIENTRY glRotatexOES (GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
243GL_API void GL_APIENTRY glScalexOES (GLfixed x, GLfixed y, GLfixed z);
244GL_API void GL_APIENTRY glTexEnvxOES (GLenum target, GLenum pname, GLfixed param);
245GL_API void GL_APIENTRY glTexEnvxvOES (GLenum target, GLenum pname, const GLfixed *params);
246GL_API void GL_APIENTRY glTexParameterxOES (GLenum target, GLenum pname, GLfixed param);
247GL_API void GL_APIENTRY glTexParameterxvOES (GLenum target, GLenum pname, const GLfixed *params);
248GL_API void GL_APIENTRY glTranslatexOES (GLfixed x, GLfixed y, GLfixed z);
249GL_API void GL_APIENTRY glGetLightxvOES (GLenum light, GLenum pname, GLfixed *params);
250GL_API void GL_APIENTRY glGetMaterialxvOES (GLenum face, GLenum pname, GLfixed *params);
251GL_API void GL_APIENTRY glPointParameterxOES (GLenum pname, GLfixed param);
252GL_API void GL_APIENTRY glSampleCoveragexOES (GLclampx value, GLboolean invert);
253GL_API void GL_APIENTRY glGetTexGenxvOES (GLenum coord, GLenum pname, GLfixed *params);
254GL_API void GL_APIENTRY glTexGenxOES (GLenum coord, GLenum pname, GLfixed param);
255GL_API void GL_APIENTRY glTexGenxvOES (GLenum coord, GLenum pname, const GLfixed *params);
Nicolas Capense8139402014-10-23 14:13:35 -0400256#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400257#endif /* GL_OES_fixed_point */
Nicolas Capense8139402014-10-23 14:13:35 -0400258
Nicolas Capense8139402014-10-23 14:13:35 -0400259#ifndef GL_OES_framebuffer_object
260#define GL_OES_framebuffer_object 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400261#define GL_NONE_OES 0
262#define GL_FRAMEBUFFER_OES 0x8D40
263#define GL_RENDERBUFFER_OES 0x8D41
264#define GL_RGBA4_OES 0x8056
265#define GL_RGB5_A1_OES 0x8057
266#define GL_RGB565_OES 0x8D62
267#define GL_DEPTH_COMPONENT16_OES 0x81A5
268#define GL_RENDERBUFFER_WIDTH_OES 0x8D42
269#define GL_RENDERBUFFER_HEIGHT_OES 0x8D43
270#define GL_RENDERBUFFER_INTERNAL_FORMAT_OES 0x8D44
271#define GL_RENDERBUFFER_RED_SIZE_OES 0x8D50
272#define GL_RENDERBUFFER_GREEN_SIZE_OES 0x8D51
273#define GL_RENDERBUFFER_BLUE_SIZE_OES 0x8D52
274#define GL_RENDERBUFFER_ALPHA_SIZE_OES 0x8D53
275#define GL_RENDERBUFFER_DEPTH_SIZE_OES 0x8D54
276#define GL_RENDERBUFFER_STENCIL_SIZE_OES 0x8D55
277#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES 0x8CD0
278#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES 0x8CD1
279#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES 0x8CD2
280#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES 0x8CD3
281#define GL_COLOR_ATTACHMENT0_OES 0x8CE0
282#define GL_DEPTH_ATTACHMENT_OES 0x8D00
283#define GL_STENCIL_ATTACHMENT_OES 0x8D20
284#define GL_FRAMEBUFFER_COMPLETE_OES 0x8CD5
285#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES 0x8CD6
286#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES 0x8CD7
287#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES 0x8CD9
288#define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES 0x8CDA
289#define GL_FRAMEBUFFER_UNSUPPORTED_OES 0x8CDD
290#define GL_FRAMEBUFFER_BINDING_OES 0x8CA6
291#define GL_RENDERBUFFER_BINDING_OES 0x8CA7
292#define GL_MAX_RENDERBUFFER_SIZE_OES 0x84E8
293#define GL_INVALID_FRAMEBUFFER_OPERATION_OES 0x0506
Nicolas Capense8139402014-10-23 14:13:35 -0400294typedef GLboolean (GL_APIENTRYP PFNGLISRENDERBUFFEROESPROC) (GLuint renderbuffer);
295typedef void (GL_APIENTRYP PFNGLBINDRENDERBUFFEROESPROC) (GLenum target, GLuint renderbuffer);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400296typedef void (GL_APIENTRYP PFNGLDELETERENDERBUFFERSOESPROC) (GLsizei n, const GLuint *renderbuffers);
297typedef void (GL_APIENTRYP PFNGLGENRENDERBUFFERSOESPROC) (GLsizei n, GLuint *renderbuffers);
Nicolas Capense8139402014-10-23 14:13:35 -0400298typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400299typedef void (GL_APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVOESPROC) (GLenum target, GLenum pname, GLint *params);
Nicolas Capense8139402014-10-23 14:13:35 -0400300typedef GLboolean (GL_APIENTRYP PFNGLISFRAMEBUFFEROESPROC) (GLuint framebuffer);
301typedef void (GL_APIENTRYP PFNGLBINDFRAMEBUFFEROESPROC) (GLenum target, GLuint framebuffer);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400302typedef void (GL_APIENTRYP PFNGLDELETEFRAMEBUFFERSOESPROC) (GLsizei n, const GLuint *framebuffers);
303typedef void (GL_APIENTRYP PFNGLGENFRAMEBUFFERSOESPROC) (GLsizei n, GLuint *framebuffers);
Nicolas Capense8139402014-10-23 14:13:35 -0400304typedef GLenum (GL_APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSOESPROC) (GLenum target);
305typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFEROESPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
306typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DOESPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400307typedef void (GL_APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVOESPROC) (GLenum target, GLenum attachment, GLenum pname, GLint *params);
Nicolas Capense8139402014-10-23 14:13:35 -0400308typedef void (GL_APIENTRYP PFNGLGENERATEMIPMAPOESPROC) (GLenum target);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400309#ifdef GL_GLEXT_PROTOTYPES
310GL_API GLboolean GL_APIENTRY glIsRenderbufferOES (GLuint renderbuffer);
311GL_API void GL_APIENTRY glBindRenderbufferOES (GLenum target, GLuint renderbuffer);
312GL_API void GL_APIENTRY glDeleteRenderbuffersOES (GLsizei n, const GLuint *renderbuffers);
313GL_API void GL_APIENTRY glGenRenderbuffersOES (GLsizei n, GLuint *renderbuffers);
314GL_API void GL_APIENTRY glRenderbufferStorageOES (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
315GL_API void GL_APIENTRY glGetRenderbufferParameterivOES (GLenum target, GLenum pname, GLint *params);
316GL_API GLboolean GL_APIENTRY glIsFramebufferOES (GLuint framebuffer);
317GL_API void GL_APIENTRY glBindFramebufferOES (GLenum target, GLuint framebuffer);
318GL_API void GL_APIENTRY glDeleteFramebuffersOES (GLsizei n, const GLuint *framebuffers);
319GL_API void GL_APIENTRY glGenFramebuffersOES (GLsizei n, GLuint *framebuffers);
320GL_API GLenum GL_APIENTRY glCheckFramebufferStatusOES (GLenum target);
321GL_API void GL_APIENTRY glFramebufferRenderbufferOES (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
322GL_API void GL_APIENTRY glFramebufferTexture2DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
323GL_API void GL_APIENTRY glGetFramebufferAttachmentParameterivOES (GLenum target, GLenum attachment, GLenum pname, GLint *params);
324GL_API void GL_APIENTRY glGenerateMipmapOES (GLenum target);
Nicolas Capense8139402014-10-23 14:13:35 -0400325#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400326#endif /* GL_OES_framebuffer_object */
Nicolas Capense8139402014-10-23 14:13:35 -0400327
Nicolas Capense8139402014-10-23 14:13:35 -0400328#ifndef GL_OES_mapbuffer
329#define GL_OES_mapbuffer 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400330#define GL_WRITE_ONLY_OES 0x88B9
331#define GL_BUFFER_ACCESS_OES 0x88BB
332#define GL_BUFFER_MAPPED_OES 0x88BC
333#define GL_BUFFER_MAP_POINTER_OES 0x88BD
334typedef void *(GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access);
Nicolas Capense8139402014-10-23 14:13:35 -0400335typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400336typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, void **params);
337#ifdef GL_GLEXT_PROTOTYPES
338GL_API void *GL_APIENTRY glMapBufferOES (GLenum target, GLenum access);
339GL_API GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target);
340GL_API void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, void **params);
Nicolas Capense8139402014-10-23 14:13:35 -0400341#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400342#endif /* GL_OES_mapbuffer */
Nicolas Capense8139402014-10-23 14:13:35 -0400343
Nicolas Capense8139402014-10-23 14:13:35 -0400344#ifndef GL_OES_matrix_get
345#define GL_OES_matrix_get 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400346#define GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES 0x898D
347#define GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES 0x898E
348#define GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES 0x898F
349#endif /* GL_OES_matrix_get */
Nicolas Capense8139402014-10-23 14:13:35 -0400350
Nicolas Capense8139402014-10-23 14:13:35 -0400351#ifndef GL_OES_matrix_palette
352#define GL_OES_matrix_palette 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400353#define GL_MAX_VERTEX_UNITS_OES 0x86A4
354#define GL_MAX_PALETTE_MATRICES_OES 0x8842
355#define GL_MATRIX_PALETTE_OES 0x8840
356#define GL_MATRIX_INDEX_ARRAY_OES 0x8844
357#define GL_WEIGHT_ARRAY_OES 0x86AD
358#define GL_CURRENT_PALETTE_MATRIX_OES 0x8843
359#define GL_MATRIX_INDEX_ARRAY_SIZE_OES 0x8846
360#define GL_MATRIX_INDEX_ARRAY_TYPE_OES 0x8847
361#define GL_MATRIX_INDEX_ARRAY_STRIDE_OES 0x8848
362#define GL_MATRIX_INDEX_ARRAY_POINTER_OES 0x8849
363#define GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES 0x8B9E
364#define GL_WEIGHT_ARRAY_SIZE_OES 0x86AB
365#define GL_WEIGHT_ARRAY_TYPE_OES 0x86A9
366#define GL_WEIGHT_ARRAY_STRIDE_OES 0x86AA
367#define GL_WEIGHT_ARRAY_POINTER_OES 0x86AC
368#define GL_WEIGHT_ARRAY_BUFFER_BINDING_OES 0x889E
369typedef void (GL_APIENTRYP PFNGLCURRENTPALETTEMATRIXOESPROC) (GLuint matrixpaletteindex);
370typedef void (GL_APIENTRYP PFNGLLOADPALETTEFROMMODELVIEWMATRIXOESPROC) (void);
371typedef void (GL_APIENTRYP PFNGLMATRIXINDEXPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const void *pointer);
372typedef void (GL_APIENTRYP PFNGLWEIGHTPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const void *pointer);
Nicolas Capense8139402014-10-23 14:13:35 -0400373#ifdef GL_GLEXT_PROTOTYPES
374GL_API void GL_APIENTRY glCurrentPaletteMatrixOES (GLuint matrixpaletteindex);
375GL_API void GL_APIENTRY glLoadPaletteFromModelViewMatrixOES (void);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400376GL_API void GL_APIENTRY glMatrixIndexPointerOES (GLint size, GLenum type, GLsizei stride, const void *pointer);
377GL_API void GL_APIENTRY glWeightPointerOES (GLint size, GLenum type, GLsizei stride, const void *pointer);
Nicolas Capense8139402014-10-23 14:13:35 -0400378#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400379#endif /* GL_OES_matrix_palette */
Nicolas Capense8139402014-10-23 14:13:35 -0400380
Nicolas Capense8139402014-10-23 14:13:35 -0400381#ifndef GL_OES_packed_depth_stencil
382#define GL_OES_packed_depth_stencil 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400383#define GL_DEPTH_STENCIL_OES 0x84F9
384#define GL_UNSIGNED_INT_24_8_OES 0x84FA
385#define GL_DEPTH24_STENCIL8_OES 0x88F0
386#endif /* GL_OES_packed_depth_stencil */
Nicolas Capense8139402014-10-23 14:13:35 -0400387
Nicolas Capense8139402014-10-23 14:13:35 -0400388#ifndef GL_OES_query_matrix
389#define GL_OES_query_matrix 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400390typedef GLbitfield (GL_APIENTRYP PFNGLQUERYMATRIXXOESPROC) (GLfixed *mantissa, GLint *exponent);
Nicolas Capense8139402014-10-23 14:13:35 -0400391#ifdef GL_GLEXT_PROTOTYPES
Nicolas Capens11e06a92018-03-21 13:55:23 -0400392GL_API GLbitfield GL_APIENTRY glQueryMatrixxOES (GLfixed *mantissa, GLint *exponent);
Nicolas Capense8139402014-10-23 14:13:35 -0400393#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400394#endif /* GL_OES_query_matrix */
Nicolas Capense8139402014-10-23 14:13:35 -0400395
Nicolas Capens11e06a92018-03-21 13:55:23 -0400396#ifndef GL_OES_required_internalformat
397#define GL_OES_required_internalformat 1
398#define GL_ALPHA8_OES 0x803C
399#define GL_LUMINANCE4_ALPHA4_OES 0x8043
400#define GL_LUMINANCE8_ALPHA8_OES 0x8045
401#define GL_LUMINANCE8_OES 0x8040
402#define GL_RGB8_OES 0x8051
403#define GL_RGBA8_OES 0x8058
404#define GL_RGB10_EXT 0x8052
405#define GL_RGB10_A2_EXT 0x8059
406#endif /* GL_OES_required_internalformat */
407
Nicolas Capense8139402014-10-23 14:13:35 -0400408#ifndef GL_OES_rgb8_rgba8
409#define GL_OES_rgb8_rgba8 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400410#endif /* GL_OES_rgb8_rgba8 */
Nicolas Capense8139402014-10-23 14:13:35 -0400411
Nicolas Capense8139402014-10-23 14:13:35 -0400412#ifndef GL_OES_single_precision
413#define GL_OES_single_precision 1
Nicolas Capense8139402014-10-23 14:13:35 -0400414typedef void (GL_APIENTRYP PFNGLCLEARDEPTHFOESPROC) (GLclampf depth);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400415typedef void (GL_APIENTRYP PFNGLCLIPPLANEFOESPROC) (GLenum plane, const GLfloat *equation);
416typedef void (GL_APIENTRYP PFNGLDEPTHRANGEFOESPROC) (GLclampf n, GLclampf f);
417typedef void (GL_APIENTRYP PFNGLFRUSTUMFOESPROC) (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);
418typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEFOESPROC) (GLenum plane, GLfloat *equation);
419typedef void (GL_APIENTRYP PFNGLORTHOFOESPROC) (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);
420#ifdef GL_GLEXT_PROTOTYPES
421GL_API void GL_APIENTRY glClearDepthfOES (GLclampf depth);
422GL_API void GL_APIENTRY glClipPlanefOES (GLenum plane, const GLfloat *equation);
423GL_API void GL_APIENTRY glDepthRangefOES (GLclampf n, GLclampf f);
424GL_API void GL_APIENTRY glFrustumfOES (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);
425GL_API void GL_APIENTRY glGetClipPlanefOES (GLenum plane, GLfloat *equation);
426GL_API void GL_APIENTRY glOrthofOES (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);
Nicolas Capense8139402014-10-23 14:13:35 -0400427#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400428#endif /* GL_OES_single_precision */
Nicolas Capense8139402014-10-23 14:13:35 -0400429
Nicolas Capense8139402014-10-23 14:13:35 -0400430#ifndef GL_OES_stencil1
431#define GL_OES_stencil1 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400432#define GL_STENCIL_INDEX1_OES 0x8D46
433#endif /* GL_OES_stencil1 */
Nicolas Capense8139402014-10-23 14:13:35 -0400434
Nicolas Capense8139402014-10-23 14:13:35 -0400435#ifndef GL_OES_stencil4
436#define GL_OES_stencil4 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400437#define GL_STENCIL_INDEX4_OES 0x8D47
438#endif /* GL_OES_stencil4 */
Nicolas Capense8139402014-10-23 14:13:35 -0400439
Nicolas Capense8139402014-10-23 14:13:35 -0400440#ifndef GL_OES_stencil8
441#define GL_OES_stencil8 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400442#define GL_STENCIL_INDEX8_OES 0x8D48
443#endif /* GL_OES_stencil8 */
Nicolas Capense8139402014-10-23 14:13:35 -0400444
Nicolas Capense8139402014-10-23 14:13:35 -0400445#ifndef GL_OES_stencil_wrap
446#define GL_OES_stencil_wrap 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400447#define GL_INCR_WRAP_OES 0x8507
448#define GL_DECR_WRAP_OES 0x8508
449#endif /* GL_OES_stencil_wrap */
Nicolas Capense8139402014-10-23 14:13:35 -0400450
Nicolas Capens11e06a92018-03-21 13:55:23 -0400451#ifndef GL_OES_surfaceless_context
452#define GL_OES_surfaceless_context 1
453#define GL_FRAMEBUFFER_UNDEFINED_OES 0x8219
454#endif /* GL_OES_surfaceless_context */
455
Nicolas Capense8139402014-10-23 14:13:35 -0400456#ifndef GL_OES_texture_cube_map
457#define GL_OES_texture_cube_map 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400458#define GL_NORMAL_MAP_OES 0x8511
459#define GL_REFLECTION_MAP_OES 0x8512
460#define GL_TEXTURE_CUBE_MAP_OES 0x8513
461#define GL_TEXTURE_BINDING_CUBE_MAP_OES 0x8514
462#define GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES 0x8515
463#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES 0x8516
464#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES 0x8517
465#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES 0x8518
466#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES 0x8519
467#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES 0x851A
468#define GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES 0x851C
469#define GL_TEXTURE_GEN_MODE_OES 0x2500
470#define GL_TEXTURE_GEN_STR_OES 0x8D60
471typedef void (GL_APIENTRYP PFNGLTEXGENFOESPROC) (GLenum coord, GLenum pname, GLfloat param);
472typedef void (GL_APIENTRYP PFNGLTEXGENFVOESPROC) (GLenum coord, GLenum pname, const GLfloat *params);
473typedef void (GL_APIENTRYP PFNGLTEXGENIOESPROC) (GLenum coord, GLenum pname, GLint param);
474typedef void (GL_APIENTRYP PFNGLTEXGENIVOESPROC) (GLenum coord, GLenum pname, const GLint *params);
475typedef void (GL_APIENTRYP PFNGLGETTEXGENFVOESPROC) (GLenum coord, GLenum pname, GLfloat *params);
476typedef void (GL_APIENTRYP PFNGLGETTEXGENIVOESPROC) (GLenum coord, GLenum pname, GLint *params);
Nicolas Capense8139402014-10-23 14:13:35 -0400477#ifdef GL_GLEXT_PROTOTYPES
478GL_API void GL_APIENTRY glTexGenfOES (GLenum coord, GLenum pname, GLfloat param);
479GL_API void GL_APIENTRY glTexGenfvOES (GLenum coord, GLenum pname, const GLfloat *params);
480GL_API void GL_APIENTRY glTexGeniOES (GLenum coord, GLenum pname, GLint param);
481GL_API void GL_APIENTRY glTexGenivOES (GLenum coord, GLenum pname, const GLint *params);
Nicolas Capense8139402014-10-23 14:13:35 -0400482GL_API void GL_APIENTRY glGetTexGenfvOES (GLenum coord, GLenum pname, GLfloat *params);
483GL_API void GL_APIENTRY glGetTexGenivOES (GLenum coord, GLenum pname, GLint *params);
Nicolas Capense8139402014-10-23 14:13:35 -0400484#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400485#endif /* GL_OES_texture_cube_map */
Nicolas Capense8139402014-10-23 14:13:35 -0400486
Nicolas Capense8139402014-10-23 14:13:35 -0400487#ifndef GL_OES_texture_env_crossbar
488#define GL_OES_texture_env_crossbar 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400489#endif /* GL_OES_texture_env_crossbar */
Nicolas Capense8139402014-10-23 14:13:35 -0400490
Nicolas Capense8139402014-10-23 14:13:35 -0400491#ifndef GL_OES_texture_mirrored_repeat
492#define GL_OES_texture_mirrored_repeat 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400493#define GL_MIRRORED_REPEAT_OES 0x8370
494#endif /* GL_OES_texture_mirrored_repeat */
Nicolas Capense8139402014-10-23 14:13:35 -0400495
Nicolas Capens11e06a92018-03-21 13:55:23 -0400496#ifndef GL_OES_texture_npot
497#define GL_OES_texture_npot 1
498#endif /* GL_OES_texture_npot */
499
Nicolas Capense8139402014-10-23 14:13:35 -0400500#ifndef GL_OES_vertex_array_object
501#define GL_OES_vertex_array_object 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400502#define GL_VERTEX_ARRAY_BINDING_OES 0x85B5
503typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array);
504typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays);
505typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays);
506typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array);
Nicolas Capense8139402014-10-23 14:13:35 -0400507#ifdef GL_GLEXT_PROTOTYPES
508GL_API void GL_APIENTRY glBindVertexArrayOES (GLuint array);
509GL_API void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays);
510GL_API void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays);
511GL_API GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array);
512#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400513#endif /* GL_OES_vertex_array_object */
Nicolas Capense8139402014-10-23 14:13:35 -0400514
Nicolas Capense8139402014-10-23 14:13:35 -0400515#ifndef GL_AMD_compressed_3DC_texture
516#define GL_AMD_compressed_3DC_texture 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400517#define GL_3DC_X_AMD 0x87F9
518#define GL_3DC_XY_AMD 0x87FA
519#endif /* GL_AMD_compressed_3DC_texture */
Nicolas Capense8139402014-10-23 14:13:35 -0400520
Nicolas Capense8139402014-10-23 14:13:35 -0400521#ifndef GL_AMD_compressed_ATC_texture
522#define GL_AMD_compressed_ATC_texture 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400523#define GL_ATC_RGB_AMD 0x8C92
524#define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93
525#define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE
526#endif /* GL_AMD_compressed_ATC_texture */
Nicolas Capense8139402014-10-23 14:13:35 -0400527
Nicolas Capense8139402014-10-23 14:13:35 -0400528#ifndef GL_APPLE_copy_texture_levels
529#define GL_APPLE_copy_texture_levels 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400530typedef void (GL_APIENTRYP PFNGLCOPYTEXTURELEVELSAPPLEPROC) (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount);
Nicolas Capense8139402014-10-23 14:13:35 -0400531#ifdef GL_GLEXT_PROTOTYPES
532GL_API void GL_APIENTRY glCopyTextureLevelsAPPLE (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount);
533#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400534#endif /* GL_APPLE_copy_texture_levels */
Nicolas Capense8139402014-10-23 14:13:35 -0400535
Nicolas Capense8139402014-10-23 14:13:35 -0400536#ifndef GL_APPLE_framebuffer_multisample
537#define GL_APPLE_framebuffer_multisample 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400538#define GL_RENDERBUFFER_SAMPLES_APPLE 0x8CAB
539#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE 0x8D56
540#define GL_MAX_SAMPLES_APPLE 0x8D57
541#define GL_READ_FRAMEBUFFER_APPLE 0x8CA8
542#define GL_DRAW_FRAMEBUFFER_APPLE 0x8CA9
543#define GL_DRAW_FRAMEBUFFER_BINDING_APPLE 0x8CA6
544#define GL_READ_FRAMEBUFFER_BINDING_APPLE 0x8CAA
Nicolas Capense8139402014-10-23 14:13:35 -0400545typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
546typedef void (GL_APIENTRYP PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC) (void);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400547#ifdef GL_GLEXT_PROTOTYPES
548GL_API void GL_APIENTRY glRenderbufferStorageMultisampleAPPLE (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
549GL_API void GL_APIENTRY glResolveMultisampleFramebufferAPPLE (void);
Nicolas Capense8139402014-10-23 14:13:35 -0400550#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400551#endif /* GL_APPLE_framebuffer_multisample */
Nicolas Capense8139402014-10-23 14:13:35 -0400552
Nicolas Capense8139402014-10-23 14:13:35 -0400553#ifndef GL_APPLE_sync
554#define GL_APPLE_sync 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400555typedef struct __GLsync *GLsync;
556typedef khronos_uint64_t GLuint64;
557typedef khronos_int64_t GLint64;
558#define GL_SYNC_OBJECT_APPLE 0x8A53
559#define GL_MAX_SERVER_WAIT_TIMEOUT_APPLE 0x9111
560#define GL_OBJECT_TYPE_APPLE 0x9112
561#define GL_SYNC_CONDITION_APPLE 0x9113
562#define GL_SYNC_STATUS_APPLE 0x9114
563#define GL_SYNC_FLAGS_APPLE 0x9115
564#define GL_SYNC_FENCE_APPLE 0x9116
565#define GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE 0x9117
566#define GL_UNSIGNALED_APPLE 0x9118
567#define GL_SIGNALED_APPLE 0x9119
568#define GL_ALREADY_SIGNALED_APPLE 0x911A
569#define GL_TIMEOUT_EXPIRED_APPLE 0x911B
570#define GL_CONDITION_SATISFIED_APPLE 0x911C
571#define GL_WAIT_FAILED_APPLE 0x911D
572#define GL_SYNC_FLUSH_COMMANDS_BIT_APPLE 0x00000001
573#define GL_TIMEOUT_IGNORED_APPLE 0xFFFFFFFFFFFFFFFFull
574typedef GLsync (GL_APIENTRYP PFNGLFENCESYNCAPPLEPROC) (GLenum condition, GLbitfield flags);
575typedef GLboolean (GL_APIENTRYP PFNGLISSYNCAPPLEPROC) (GLsync sync);
576typedef void (GL_APIENTRYP PFNGLDELETESYNCAPPLEPROC) (GLsync sync);
577typedef GLenum (GL_APIENTRYP PFNGLCLIENTWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
578typedef void (GL_APIENTRYP PFNGLWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
579typedef void (GL_APIENTRYP PFNGLGETINTEGER64VAPPLEPROC) (GLenum pname, GLint64 *params);
580typedef void (GL_APIENTRYP PFNGLGETSYNCIVAPPLEPROC) (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
Nicolas Capense8139402014-10-23 14:13:35 -0400581#ifdef GL_GLEXT_PROTOTYPES
582GL_API GLsync GL_APIENTRY glFenceSyncAPPLE (GLenum condition, GLbitfield flags);
583GL_API GLboolean GL_APIENTRY glIsSyncAPPLE (GLsync sync);
584GL_API void GL_APIENTRY glDeleteSyncAPPLE (GLsync sync);
585GL_API GLenum GL_APIENTRY glClientWaitSyncAPPLE (GLsync sync, GLbitfield flags, GLuint64 timeout);
586GL_API void GL_APIENTRY glWaitSyncAPPLE (GLsync sync, GLbitfield flags, GLuint64 timeout);
587GL_API void GL_APIENTRY glGetInteger64vAPPLE (GLenum pname, GLint64 *params);
588GL_API void GL_APIENTRY glGetSyncivAPPLE (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
589#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400590#endif /* GL_APPLE_sync */
Nicolas Capense8139402014-10-23 14:13:35 -0400591
Nicolas Capense8139402014-10-23 14:13:35 -0400592#ifndef GL_APPLE_texture_2D_limited_npot
593#define GL_APPLE_texture_2D_limited_npot 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400594#endif /* GL_APPLE_texture_2D_limited_npot */
Nicolas Capense8139402014-10-23 14:13:35 -0400595
Nicolas Capense8139402014-10-23 14:13:35 -0400596#ifndef GL_APPLE_texture_format_BGRA8888
597#define GL_APPLE_texture_format_BGRA8888 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400598#define GL_BGRA_EXT 0x80E1
599#define GL_BGRA8_EXT 0x93A1
600#endif /* GL_APPLE_texture_format_BGRA8888 */
Nicolas Capense8139402014-10-23 14:13:35 -0400601
Nicolas Capense8139402014-10-23 14:13:35 -0400602#ifndef GL_APPLE_texture_max_level
603#define GL_APPLE_texture_max_level 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400604#define GL_TEXTURE_MAX_LEVEL_APPLE 0x813D
605#endif /* GL_APPLE_texture_max_level */
Nicolas Capense8139402014-10-23 14:13:35 -0400606
Nicolas Capense8139402014-10-23 14:13:35 -0400607#ifndef GL_ARM_rgba8
608#define GL_ARM_rgba8 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400609#endif /* GL_ARM_rgba8 */
Nicolas Capense8139402014-10-23 14:13:35 -0400610
Nicolas Capense8139402014-10-23 14:13:35 -0400611#ifndef GL_EXT_blend_minmax
612#define GL_EXT_blend_minmax 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400613#define GL_MIN_EXT 0x8007
614#define GL_MAX_EXT 0x8008
615#endif /* GL_EXT_blend_minmax */
Nicolas Capense8139402014-10-23 14:13:35 -0400616
Nicolas Capens11e06a92018-03-21 13:55:23 -0400617#ifndef GL_EXT_debug_marker
618#define GL_EXT_debug_marker 1
619typedef char GLchar;
620typedef void (GL_APIENTRYP PFNGLINSERTEVENTMARKEREXTPROC) (GLsizei length, const GLchar *marker);
621typedef void (GL_APIENTRYP PFNGLPUSHGROUPMARKEREXTPROC) (GLsizei length, const GLchar *marker);
622typedef void (GL_APIENTRYP PFNGLPOPGROUPMARKEREXTPROC) (void);
623#ifdef GL_GLEXT_PROTOTYPES
624GL_API void GL_APIENTRY glInsertEventMarkerEXT (GLsizei length, const GLchar *marker);
625GL_API void GL_APIENTRY glPushGroupMarkerEXT (GLsizei length, const GLchar *marker);
626GL_API void GL_APIENTRY glPopGroupMarkerEXT (void);
627#endif
628#endif /* GL_EXT_debug_marker */
629
Nicolas Capense8139402014-10-23 14:13:35 -0400630#ifndef GL_EXT_discard_framebuffer
631#define GL_EXT_discard_framebuffer 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400632#define GL_COLOR_EXT 0x1800
633#define GL_DEPTH_EXT 0x1801
634#define GL_STENCIL_EXT 0x1802
635typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments);
Nicolas Capense8139402014-10-23 14:13:35 -0400636#ifdef GL_GLEXT_PROTOTYPES
637GL_API void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments);
638#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400639#endif /* GL_EXT_discard_framebuffer */
Nicolas Capense8139402014-10-23 14:13:35 -0400640
Nicolas Capense8139402014-10-23 14:13:35 -0400641#ifndef GL_EXT_map_buffer_range
642#define GL_EXT_map_buffer_range 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400643#define GL_MAP_READ_BIT_EXT 0x0001
644#define GL_MAP_WRITE_BIT_EXT 0x0002
645#define GL_MAP_INVALIDATE_RANGE_BIT_EXT 0x0004
646#define GL_MAP_INVALIDATE_BUFFER_BIT_EXT 0x0008
647#define GL_MAP_FLUSH_EXPLICIT_BIT_EXT 0x0010
648#define GL_MAP_UNSYNCHRONIZED_BIT_EXT 0x0020
649typedef void *(GL_APIENTRYP PFNGLMAPBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
650typedef void (GL_APIENTRYP PFNGLFLUSHMAPPEDBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length);
Nicolas Capense8139402014-10-23 14:13:35 -0400651#ifdef GL_GLEXT_PROTOTYPES
Nicolas Capens11e06a92018-03-21 13:55:23 -0400652GL_API void *GL_APIENTRY glMapBufferRangeEXT (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
Nicolas Capense8139402014-10-23 14:13:35 -0400653GL_API void GL_APIENTRY glFlushMappedBufferRangeEXT (GLenum target, GLintptr offset, GLsizeiptr length);
654#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400655#endif /* GL_EXT_map_buffer_range */
Nicolas Capense8139402014-10-23 14:13:35 -0400656
Nicolas Capense8139402014-10-23 14:13:35 -0400657#ifndef GL_EXT_multi_draw_arrays
658#define GL_EXT_multi_draw_arrays 1
Nicolas Capense8139402014-10-23 14:13:35 -0400659typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400660typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei primcount);
661#ifdef GL_GLEXT_PROTOTYPES
662GL_API void GL_APIENTRY glMultiDrawArraysEXT (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
663GL_API void GL_APIENTRY glMultiDrawElementsEXT (GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei primcount);
Nicolas Capense8139402014-10-23 14:13:35 -0400664#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400665#endif /* GL_EXT_multi_draw_arrays */
Nicolas Capense8139402014-10-23 14:13:35 -0400666
Nicolas Capens11e06a92018-03-21 13:55:23 -0400667#ifndef GL_EXT_multisampled_render_to_texture
668#define GL_EXT_multisampled_render_to_texture 1
669#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT 0x8D6C
670#define GL_RENDERBUFFER_SAMPLES_EXT 0x8CAB
671#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56
672#define GL_MAX_SAMPLES_EXT 0x8D57
673typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
674typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
675#ifdef GL_GLEXT_PROTOTYPES
676GL_API void GL_APIENTRY glRenderbufferStorageMultisampleEXT (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
677GL_API void GL_APIENTRY glFramebufferTexture2DMultisampleEXT (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
678#endif
679#endif /* GL_EXT_multisampled_render_to_texture */
680
Nicolas Capense8139402014-10-23 14:13:35 -0400681#ifndef GL_EXT_read_format_bgra
682#define GL_EXT_read_format_bgra 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400683#define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT 0x8365
684#define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT 0x8366
685#endif /* GL_EXT_read_format_bgra */
Nicolas Capense8139402014-10-23 14:13:35 -0400686
Nicolas Capense8139402014-10-23 14:13:35 -0400687#ifndef GL_EXT_robustness
688#define GL_EXT_robustness 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400689#define GL_GUILTY_CONTEXT_RESET_EXT 0x8253
690#define GL_INNOCENT_CONTEXT_RESET_EXT 0x8254
691#define GL_UNKNOWN_CONTEXT_RESET_EXT 0x8255
692#define GL_CONTEXT_ROBUST_ACCESS_EXT 0x90F3
693#define GL_RESET_NOTIFICATION_STRATEGY_EXT 0x8256
694#define GL_LOSE_CONTEXT_ON_RESET_EXT 0x8252
695#define GL_NO_RESET_NOTIFICATION_EXT 0x8261
696typedef GLenum (GL_APIENTRYP PFNGLGETGRAPHICSRESETSTATUSEXTPROC) (void);
697typedef void (GL_APIENTRYP PFNGLREADNPIXELSEXTPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
698typedef void (GL_APIENTRYP PFNGLGETNUNIFORMFVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
699typedef void (GL_APIENTRYP PFNGLGETNUNIFORMIVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, GLint *params);
Nicolas Capense8139402014-10-23 14:13:35 -0400700#ifdef GL_GLEXT_PROTOTYPES
701GL_API GLenum GL_APIENTRY glGetGraphicsResetStatusEXT (void);
702GL_API void GL_APIENTRY glReadnPixelsEXT (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400703GL_API void GL_APIENTRY glGetnUniformfvEXT (GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
Nicolas Capense8139402014-10-23 14:13:35 -0400704GL_API void GL_APIENTRY glGetnUniformivEXT (GLuint program, GLint location, GLsizei bufSize, GLint *params);
705#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400706#endif /* GL_EXT_robustness */
Nicolas Capense8139402014-10-23 14:13:35 -0400707
Nicolas Capense8139402014-10-23 14:13:35 -0400708#ifndef GL_EXT_sRGB
709#define GL_EXT_sRGB 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400710#define GL_SRGB_EXT 0x8C40
711#define GL_SRGB_ALPHA_EXT 0x8C42
712#define GL_SRGB8_ALPHA8_EXT 0x8C43
713#define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT 0x8210
714#endif /* GL_EXT_sRGB */
Nicolas Capense8139402014-10-23 14:13:35 -0400715
Nicolas Capense8139402014-10-23 14:13:35 -0400716#ifndef GL_EXT_texture_compression_dxt1
717#define GL_EXT_texture_compression_dxt1 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400718#define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0
719#define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1
720#endif /* GL_EXT_texture_compression_dxt1 */
Nicolas Capense8139402014-10-23 14:13:35 -0400721
Nicolas Capense8139402014-10-23 14:13:35 -0400722#ifndef GL_EXT_texture_filter_anisotropic
723#define GL_EXT_texture_filter_anisotropic 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400724#define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE
725#define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF
726#endif /* GL_EXT_texture_filter_anisotropic */
Nicolas Capense8139402014-10-23 14:13:35 -0400727
Nicolas Capense8139402014-10-23 14:13:35 -0400728#ifndef GL_EXT_texture_format_BGRA8888
729#define GL_EXT_texture_format_BGRA8888 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400730#endif /* GL_EXT_texture_format_BGRA8888 */
Nicolas Capense8139402014-10-23 14:13:35 -0400731
Nicolas Capense8139402014-10-23 14:13:35 -0400732#ifndef GL_EXT_texture_lod_bias
733#define GL_EXT_texture_lod_bias 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400734#define GL_MAX_TEXTURE_LOD_BIAS_EXT 0x84FD
735#define GL_TEXTURE_FILTER_CONTROL_EXT 0x8500
736#define GL_TEXTURE_LOD_BIAS_EXT 0x8501
737#endif /* GL_EXT_texture_lod_bias */
Nicolas Capense8139402014-10-23 14:13:35 -0400738
Nicolas Capense8139402014-10-23 14:13:35 -0400739#ifndef GL_EXT_texture_storage
740#define GL_EXT_texture_storage 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400741#define GL_TEXTURE_IMMUTABLE_FORMAT_EXT 0x912F
742#define GL_ALPHA8_EXT 0x803C
743#define GL_LUMINANCE8_EXT 0x8040
744#define GL_LUMINANCE8_ALPHA8_EXT 0x8045
745#define GL_RGBA32F_EXT 0x8814
746#define GL_RGB32F_EXT 0x8815
747#define GL_ALPHA32F_EXT 0x8816
748#define GL_LUMINANCE32F_EXT 0x8818
749#define GL_LUMINANCE_ALPHA32F_EXT 0x8819
750#define GL_RGBA16F_EXT 0x881A
751#define GL_RGB16F_EXT 0x881B
752#define GL_ALPHA16F_EXT 0x881C
753#define GL_LUMINANCE16F_EXT 0x881E
754#define GL_LUMINANCE_ALPHA16F_EXT 0x881F
755#define GL_R8_EXT 0x8229
756#define GL_RG8_EXT 0x822B
757#define GL_R32F_EXT 0x822E
758#define GL_RG32F_EXT 0x8230
759#define GL_R16F_EXT 0x822D
760#define GL_RG16F_EXT 0x822F
761typedef void (GL_APIENTRYP PFNGLTEXSTORAGE1DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
762typedef void (GL_APIENTRYP PFNGLTEXSTORAGE2DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
763typedef void (GL_APIENTRYP PFNGLTEXSTORAGE3DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
764typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE1DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
765typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE2DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
766typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE3DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
Nicolas Capense8139402014-10-23 14:13:35 -0400767#ifdef GL_GLEXT_PROTOTYPES
768GL_API void GL_APIENTRY glTexStorage1DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
769GL_API void GL_APIENTRY glTexStorage2DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
770GL_API void GL_APIENTRY glTexStorage3DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
771GL_API void GL_APIENTRY glTextureStorage1DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
772GL_API void GL_APIENTRY glTextureStorage2DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
773GL_API void GL_APIENTRY glTextureStorage3DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
774#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400775#endif /* GL_EXT_texture_storage */
Nicolas Capense8139402014-10-23 14:13:35 -0400776
Nicolas Capense8139402014-10-23 14:13:35 -0400777#ifndef GL_IMG_multisampled_render_to_texture
778#define GL_IMG_multisampled_render_to_texture 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400779#define GL_RENDERBUFFER_SAMPLES_IMG 0x9133
780#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG 0x9134
781#define GL_MAX_SAMPLES_IMG 0x9135
782#define GL_TEXTURE_SAMPLES_IMG 0x9136
Nicolas Capense8139402014-10-23 14:13:35 -0400783typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
784typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400785#ifdef GL_GLEXT_PROTOTYPES
786GL_API void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
787GL_API void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
Nicolas Capense8139402014-10-23 14:13:35 -0400788#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400789#endif /* GL_IMG_multisampled_render_to_texture */
Nicolas Capense8139402014-10-23 14:13:35 -0400790
Nicolas Capens11e06a92018-03-21 13:55:23 -0400791#ifndef GL_IMG_read_format
792#define GL_IMG_read_format 1
793#define GL_BGRA_IMG 0x80E1
794#define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG 0x8365
795#endif /* GL_IMG_read_format */
Nicolas Capense8139402014-10-23 14:13:35 -0400796
Nicolas Capens11e06a92018-03-21 13:55:23 -0400797#ifndef GL_IMG_texture_compression_pvrtc
798#define GL_IMG_texture_compression_pvrtc 1
799#define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00
800#define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01
801#define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02
802#define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03
803#endif /* GL_IMG_texture_compression_pvrtc */
804
805#ifndef GL_IMG_texture_env_enhanced_fixed_function
806#define GL_IMG_texture_env_enhanced_fixed_function 1
807#define GL_MODULATE_COLOR_IMG 0x8C04
808#define GL_RECIP_ADD_SIGNED_ALPHA_IMG 0x8C05
809#define GL_TEXTURE_ALPHA_MODULATE_IMG 0x8C06
810#define GL_FACTOR_ALPHA_MODULATE_IMG 0x8C07
811#define GL_FRAGMENT_ALPHA_MODULATE_IMG 0x8C08
812#define GL_ADD_BLEND_IMG 0x8C09
813#define GL_DOT3_RGBA_IMG 0x86AF
814#endif /* GL_IMG_texture_env_enhanced_fixed_function */
815
816#ifndef GL_IMG_user_clip_plane
817#define GL_IMG_user_clip_plane 1
818#define GL_CLIP_PLANE0_IMG 0x3000
819#define GL_CLIP_PLANE1_IMG 0x3001
820#define GL_CLIP_PLANE2_IMG 0x3002
821#define GL_CLIP_PLANE3_IMG 0x3003
822#define GL_CLIP_PLANE4_IMG 0x3004
823#define GL_CLIP_PLANE5_IMG 0x3005
824#define GL_MAX_CLIP_PLANES_IMG 0x0D32
825typedef void (GL_APIENTRYP PFNGLCLIPPLANEFIMGPROC) (GLenum p, const GLfloat *eqn);
826typedef void (GL_APIENTRYP PFNGLCLIPPLANEXIMGPROC) (GLenum p, const GLfixed *eqn);
827#ifdef GL_GLEXT_PROTOTYPES
828GL_API void GL_APIENTRY glClipPlanefIMG (GLenum p, const GLfloat *eqn);
829GL_API void GL_APIENTRY glClipPlanexIMG (GLenum p, const GLfixed *eqn);
830#endif
831#endif /* GL_IMG_user_clip_plane */
832
Nicolas Capense8139402014-10-23 14:13:35 -0400833#ifndef GL_NV_fence
834#define GL_NV_fence 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400835#define GL_ALL_COMPLETED_NV 0x84F2
836#define GL_FENCE_STATUS_NV 0x84F3
837#define GL_FENCE_CONDITION_NV 0x84F4
Nicolas Capense8139402014-10-23 14:13:35 -0400838typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences);
839typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences);
840typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence);
841typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence);
842typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params);
843typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence);
844typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400845#ifdef GL_GLEXT_PROTOTYPES
846GL_API void GL_APIENTRY glDeleteFencesNV (GLsizei n, const GLuint *fences);
847GL_API void GL_APIENTRY glGenFencesNV (GLsizei n, GLuint *fences);
848GL_API GLboolean GL_APIENTRY glIsFenceNV (GLuint fence);
849GL_API GLboolean GL_APIENTRY glTestFenceNV (GLuint fence);
850GL_API void GL_APIENTRY glGetFenceivNV (GLuint fence, GLenum pname, GLint *params);
851GL_API void GL_APIENTRY glFinishFenceNV (GLuint fence);
852GL_API void GL_APIENTRY glSetFenceNV (GLuint fence, GLenum condition);
Nicolas Capense8139402014-10-23 14:13:35 -0400853#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400854#endif /* GL_NV_fence */
Nicolas Capense8139402014-10-23 14:13:35 -0400855
Nicolas Capense8139402014-10-23 14:13:35 -0400856#ifndef GL_QCOM_driver_control
857#define GL_QCOM_driver_control 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400858typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls);
859typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
860typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
861typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
Nicolas Capense8139402014-10-23 14:13:35 -0400862#ifdef GL_GLEXT_PROTOTYPES
863GL_API void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls);
864GL_API void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
865GL_API void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl);
866GL_API void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl);
867#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400868#endif /* GL_QCOM_driver_control */
Nicolas Capense8139402014-10-23 14:13:35 -0400869
Nicolas Capense8139402014-10-23 14:13:35 -0400870#ifndef GL_QCOM_extended_get
871#define GL_QCOM_extended_get 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400872#define GL_TEXTURE_WIDTH_QCOM 0x8BD2
873#define GL_TEXTURE_HEIGHT_QCOM 0x8BD3
874#define GL_TEXTURE_DEPTH_QCOM 0x8BD4
875#define GL_TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5
876#define GL_TEXTURE_FORMAT_QCOM 0x8BD6
877#define GL_TEXTURE_TYPE_QCOM 0x8BD7
878#define GL_TEXTURE_IMAGE_VALID_QCOM 0x8BD8
879#define GL_TEXTURE_NUM_LEVELS_QCOM 0x8BD9
880#define GL_TEXTURE_TARGET_QCOM 0x8BDA
881#define GL_TEXTURE_OBJECT_VALID_QCOM 0x8BDB
882#define GL_STATE_RESTORE 0x8BDC
883typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures);
884typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
885typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
886typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
887typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
888typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param);
889typedef void (GL_APIENTRYP PFNGLEXTGETTEXSUBIMAGEQCOMPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, void *texels);
890typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, void **params);
Nicolas Capense8139402014-10-23 14:13:35 -0400891#ifdef GL_GLEXT_PROTOTYPES
892GL_API void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures);
893GL_API void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
894GL_API void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
895GL_API void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
896GL_API void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
897GL_API void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param);
Nicolas Capens11e06a92018-03-21 13:55:23 -0400898GL_API void GL_APIENTRY glExtGetTexSubImageQCOM (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, void *texels);
899GL_API void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, void **params);
Nicolas Capense8139402014-10-23 14:13:35 -0400900#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400901#endif /* GL_QCOM_extended_get */
Nicolas Capense8139402014-10-23 14:13:35 -0400902
Nicolas Capense8139402014-10-23 14:13:35 -0400903#ifndef GL_QCOM_extended_get2
904#define GL_QCOM_extended_get2 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400905typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders);
906typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
907typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program);
908typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
Nicolas Capense8139402014-10-23 14:13:35 -0400909#ifdef GL_GLEXT_PROTOTYPES
910GL_API void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders);
911GL_API void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
912GL_API GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program);
913GL_API void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
914#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400915#endif /* GL_QCOM_extended_get2 */
Nicolas Capense8139402014-10-23 14:13:35 -0400916
Nicolas Capense8139402014-10-23 14:13:35 -0400917#ifndef GL_QCOM_perfmon_global_mode
918#define GL_QCOM_perfmon_global_mode 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400919#define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0
920#endif /* GL_QCOM_perfmon_global_mode */
Nicolas Capense8139402014-10-23 14:13:35 -0400921
Nicolas Capense8139402014-10-23 14:13:35 -0400922#ifndef GL_QCOM_tiled_rendering
923#define GL_QCOM_tiled_rendering 1
Nicolas Capens11e06a92018-03-21 13:55:23 -0400924#define GL_COLOR_BUFFER_BIT0_QCOM 0x00000001
925#define GL_COLOR_BUFFER_BIT1_QCOM 0x00000002
926#define GL_COLOR_BUFFER_BIT2_QCOM 0x00000004
927#define GL_COLOR_BUFFER_BIT3_QCOM 0x00000008
928#define GL_COLOR_BUFFER_BIT4_QCOM 0x00000010
929#define GL_COLOR_BUFFER_BIT5_QCOM 0x00000020
930#define GL_COLOR_BUFFER_BIT6_QCOM 0x00000040
931#define GL_COLOR_BUFFER_BIT7_QCOM 0x00000080
932#define GL_DEPTH_BUFFER_BIT0_QCOM 0x00000100
933#define GL_DEPTH_BUFFER_BIT1_QCOM 0x00000200
934#define GL_DEPTH_BUFFER_BIT2_QCOM 0x00000400
935#define GL_DEPTH_BUFFER_BIT3_QCOM 0x00000800
936#define GL_DEPTH_BUFFER_BIT4_QCOM 0x00001000
937#define GL_DEPTH_BUFFER_BIT5_QCOM 0x00002000
938#define GL_DEPTH_BUFFER_BIT6_QCOM 0x00004000
939#define GL_DEPTH_BUFFER_BIT7_QCOM 0x00008000
940#define GL_STENCIL_BUFFER_BIT0_QCOM 0x00010000
941#define GL_STENCIL_BUFFER_BIT1_QCOM 0x00020000
942#define GL_STENCIL_BUFFER_BIT2_QCOM 0x00040000
943#define GL_STENCIL_BUFFER_BIT3_QCOM 0x00080000
944#define GL_STENCIL_BUFFER_BIT4_QCOM 0x00100000
945#define GL_STENCIL_BUFFER_BIT5_QCOM 0x00200000
946#define GL_STENCIL_BUFFER_BIT6_QCOM 0x00400000
947#define GL_STENCIL_BUFFER_BIT7_QCOM 0x00800000
948#define GL_MULTISAMPLE_BUFFER_BIT0_QCOM 0x01000000
949#define GL_MULTISAMPLE_BUFFER_BIT1_QCOM 0x02000000
950#define GL_MULTISAMPLE_BUFFER_BIT2_QCOM 0x04000000
951#define GL_MULTISAMPLE_BUFFER_BIT3_QCOM 0x08000000
952#define GL_MULTISAMPLE_BUFFER_BIT4_QCOM 0x10000000
953#define GL_MULTISAMPLE_BUFFER_BIT5_QCOM 0x20000000
954#define GL_MULTISAMPLE_BUFFER_BIT6_QCOM 0x40000000
955#define GL_MULTISAMPLE_BUFFER_BIT7_QCOM 0x80000000
956typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
957typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask);
Nicolas Capense8139402014-10-23 14:13:35 -0400958#ifdef GL_GLEXT_PROTOTYPES
959GL_API void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
960GL_API void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask);
961#endif
Nicolas Capens11e06a92018-03-21 13:55:23 -0400962#endif /* GL_QCOM_tiled_rendering */
963
964#ifndef GL_QCOM_writeonly_rendering
965#define GL_QCOM_writeonly_rendering 1
966#define GL_WRITEONLY_RENDERING_QCOM 0x8823
967#endif /* GL_QCOM_writeonly_rendering */
Nicolas Capense8139402014-10-23 14:13:35 -0400968
969#ifdef __cplusplus
970}
971#endif
972
Nicolas Capens11e06a92018-03-21 13:55:23 -0400973#endif