1 //
2 // Copyright 2017 The ANGLE Project Authors. All rights reserved.
3 // Use of this source code is governed by a BSD-style license that can be
4 // found in the LICENSE file.
5 //
6 // gl2ext_angle.h: ANGLE modifications to the gl2ext.h header file.
7 //   Currently we don't include this file directly, we patch gl2ext.h
8 //   to include it implicitly so it is visible throughout our code.
9 
10 #ifndef INCLUDE_GLES2_GL2EXT_ANGLE_H_
11 #define INCLUDE_GLES2_GL2EXT_ANGLE_H_
12 
13 // clang-format off
14 
15 #ifndef GL_ANGLE_client_arrays
16 #define GL_ANGLE_client_arrays 1
17 #define GL_CLIENT_ARRAYS_ANGLE 0x93AA
18 #endif /* GL_ANGLE_client_arrays */
19 
20 #ifndef GL_ANGLE_request_extension
21 #define GL_ANGLE_request_extension 1
22 #define GL_REQUESTABLE_EXTENSIONS_ANGLE   0x93A8
23 #define GL_NUM_REQUESTABLE_EXTENSIONS_ANGLE 0x93A9
24 typedef void (GL_APIENTRYP PFNGLREQUESTEXTENSIONANGLEPROC) (const GLchar *name);
25 typedef void (GL_APIENTRYP PFNGLDISABLEEXTENSIONANGLEPROC) (const GLchar *name);
26 #ifdef GL_GLEXT_PROTOTYPES
27 GL_APICALL void GL_APIENTRY glRequestExtensionANGLE (const GLchar *name);
28 #endif
29 #endif /* GL_ANGLE_webgl_compatibility */
30 
31 #ifndef GL_ANGLE_robust_resource_initialization
32 #define GL_ANGLE_robust_resource_initialization 1
33 #define GL_ROBUST_RESOURCE_INITIALIZATION_ANGLE 0x93AB
34 #endif /* GL_ANGLE_robust_resource_initialization */
35 
36 #ifndef GL_ANGLE_provoking_vertex
37 #define GL_ANGLE_provoking_vertex 1
38 #define GL_FIRST_VERTEX_CONVENTION                   0x8E4D
39 #define GL_LAST_VERTEX_CONVENTION                    0x8E4E
40 #define GL_PROVOKING_VERTEX                          0x8E4F
41 typedef void (GL_APIENTRYP PFNGLPROVOKINGVERTEXANGLEPROC) (GLenum);
42 #ifdef GL_GLEXT_PROTOTYPES
43 GL_APICALL void GL_APIENTRY glProvokingVertexANGLE(GLenum mode);
44 #endif
45 #endif /* GL_ANGLE_provoking_vertex */
46 
47 #ifndef GL_CHROMIUM_framebuffer_mixed_samples
48 #define GL_CHROMIUM_frambuffer_mixed_samples 1
49 #define GL_COVERAGE_MODULATION_CHROMIUM 0x9332
50 typedef void (GL_APIENTRYP PFNGLCOVERAGEMODULATIONCHROMIUMPROC) (GLenum components);
51 #ifdef GL_GLEXT_PROTOTYPES
52 GL_APICALL void GL_APIENTRY glCoverageModulationCHROMIUM(GLenum components);
53 #endif
54 #endif /* GL_CHROMIUM_framebuffer_mixed_samples */
55 
56 #ifndef GL_CHROMIUM_bind_generates_resource
57 #define GL_CHROMIUM_bind_generates_resource 1
58 #define GL_BIND_GENERATES_RESOURCE_CHROMIUM 0x9244
59 #endif /* GL_CHROMIUM_bind_generates_resource */
60 
61 #ifndef GL_ANGLE_memory_size
62 #define GL_ANGLE_memory_size
63 #define GL_MEMORY_SIZE_ANGLE 0x93AD
64 #endif /* GL_ANGLE_memory_size */
65 
66 // needed by NV_path_rendering (and thus CHROMIUM_path_rendering)
67 // but CHROMIUM_path_rendering only needs MatrixLoadfEXT, MatrixLoadIdentityEXT
68 #ifndef GL_EXT_direct_state_access
69 #define GL_EXT_direct_state_access 1
70 typedef void(GL_APIENTRYP PFNGLMATRIXLOADFEXTPROC)(GLenum matrixMode, const GLfloat *m);
71 typedef void(GL_APIENTRYP PFNGLMATRIXLOADIDENTITYEXTPROC)(GLenum matrixMode);
72 #ifdef GL_GLEXT_PROTOTYPES
73 GL_APICALL void GL_APIENTRY glMatrixLoadfEXT(GLenum matrixMode, const GLfloat *m);
74 GL_APICALL void GL_APIENTRY glMatrixLoadIdentityEXT(GLenum matrixMode);
75 #endif
76 #endif /* GL_EXT_direct_state_access */
77 
78 #ifndef GL_CHROMIUM_copy_texture
79 #define GL_CHROMIUM_copy_texture 1
80 typedef void(GL_APIENTRYP PFNGLCOPYTEXTURECHROMIUMPROC)(GLuint sourceId,
81                                                         GLint sourceLevel,
82                                                         GLenum destTarget,
83                                                         GLuint destId,
84                                                         GLint destLevel,
85                                                         GLint internalFormat,
86                                                         GLenum destType,
87                                                         GLboolean unpackFlipY,
88                                                         GLboolean unpackPremultiplyAlpha,
89                                                         GLboolean unpackUnmultiplyAlpha);
90 typedef void(GL_APIENTRYP PFNGLCOPYSUBTEXTURECHROMIUMPROC)(GLuint sourceId,
91                                                            GLint sourceLevel,
92                                                            GLenum destTarget,
93                                                            GLuint destId,
94                                                            GLint destLevel,
95                                                            GLint xoffset,
96                                                            GLint yoffset,
97                                                            GLint x,
98                                                            GLint y,
99                                                            GLsizei width,
100                                                            GLsizei height,
101                                                            GLboolean unpackFlipY,
102                                                            GLboolean unpackPremultiplyAlpha,
103                                                            GLboolean unpackUnmultiplyAlpha);
104 #ifdef GL_GLEXT_PROTOTYPES
105 GL_APICALL void GL_APIENTRY glCopyTextureCHROMIUM(GLuint sourceId,
106                                                   GLint sourceLevel,
107                                                   GLenum destTarget,
108                                                   GLuint destId,
109                                                   GLint destLevel,
110                                                   GLint internalFormat,
111                                                   GLenum destType,
112                                                   GLboolean unpackFlipY,
113                                                   GLboolean unpackPremultiplyAlpha,
114                                                   GLboolean unpackUnmultiplyAlpha);
115 GL_APICALL void GL_APIENTRY glCopySubTextureCHROMIUM(GLuint sourceId,
116                                                      GLint sourceLevel,
117                                                      GLenum destTarget,
118                                                      GLuint destId,
119                                                      GLint destLevel,
120                                                      GLint xoffset,
121                                                      GLint yoffset,
122                                                      GLint x,
123                                                      GLint y,
124                                                      GLsizei width,
125                                                      GLsizei height,
126                                                      GLboolean unpackFlipY,
127                                                      GLboolean unpackPremultiplyAlpha,
128                                                      GLboolean unpackUnmultiplyAlpha);
129 #endif
130 #endif /* GL_CHROMIUM_copy_texture */
131 
132 #ifndef GL_CHROMIUM_compressed_copy_texture
133 #define GL_CHROMIUM_compressed_copy_texture 1
134 typedef void(GL_APIENTRYP PFNGLCOMPRESSEDCOPYTEXTURECHROMIUMPROC)(GLuint sourceId, GLuint destId);
135 #ifdef GL_GLEXT_PROTOTYPES
136 GL_APICALL void GL_APIENTRY glCompressedCopyTextureCHROMIUM(GLuint sourceId, GLuint destId);
137 #endif
138 #endif /* GL_CHROMIUM_compressed_copy_texture */
139 
140 
141 #ifndef GL_ANGLE_copy_texture_3d
142 #define GL_ANGLE_copy_texture_3d 1
143 typedef void(GL_APIENTRYP PFNGLCOPYTEXTURE3DANGLEPROC)(GLuint sourceId,
144                                                         GLint sourceLevel,
145                                                         GLenum destTarget,
146                                                         GLuint destId,
147                                                         GLint destLevel,
148                                                         GLint internalFormat,
149                                                         GLenum destType,
150                                                         GLboolean unpackFlipY,
151                                                         GLboolean unpackPremultiplyAlpha,
152                                                         GLboolean unpackUnmultiplyAlpha);
153 typedef void(GL_APIENTRYP PFNGLCOPYSUBTEXTURE3DANGLEPROC)(GLuint sourceId,
154                                                            GLint sourceLevel,
155                                                            GLenum destTarget,
156                                                            GLuint destId,
157                                                            GLint destLevel,
158                                                            GLint xoffset,
159                                                            GLint yoffset,
160                                                            GLint zoffset,
161                                                            GLint x,
162                                                            GLint y,
163                                                            GLint z,
164                                                            GLsizei width,
165                                                            GLsizei height,
166                                                            GLsizei depth,
167                                                            GLboolean unpackFlipY,
168                                                            GLboolean unpackPremultiplyAlpha,
169                                                            GLboolean unpackUnmultiplyAlpha);
170 #ifdef GL_GLEXT_PROTOTYPES
171 GL_APICALL void GL_APIENTRY glCopyTexture3DANGLE(GLuint sourceId,
172                                                   GLint sourceLevel,
173                                                   GLenum destTarget,
174                                                   GLuint destId,
175                                                   GLint destLevel,
176                                                   GLint internalFormat,
177                                                   GLenum destType,
178                                                   GLboolean unpackFlipY,
179                                                   GLboolean unpackPremultiplyAlpha,
180                                                   GLboolean unpackUnmultiplyAlpha);
181 GL_APICALL void GL_APIENTRY glCopySubTexture3DANGLE(GLuint sourceId,
182                                                      GLint sourceLevel,
183                                                      GLenum destTarget,
184                                                      GLuint destId,
185                                                      GLint destLevel,
186                                                      GLint xoffset,
187                                                      GLint yoffset,
188                                                      GLint zoffset,
189                                                      GLint x,
190                                                      GLint y,
191                                                      GLint z,
192                                                      GLsizei width,
193                                                      GLsizei height,
194                                                      GLsizei depth,
195                                                      GLboolean unpackFlipY,
196                                                      GLboolean unpackPremultiplyAlpha,
197                                                      GLboolean unpackUnmultiplyAlpha);
198 #endif
199 #endif /* GL_ANGLE_copy_texture_3d */
200 
201 #ifndef GL_CHROMIUM_sync_query
202 #define GL_CHROMIUM_sync_query 1
203 #define GL_COMMANDS_COMPLETED_CHROMIUM    0x84F7
204 #endif  /* GL_CHROMIUM_sync_query */
205 
206 #ifndef GL_EXT_texture_compression_s3tc_srgb
207 #define GL_EXT_texture_compression_s3tc_srgb 1
208 #define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT  0x8C4C
209 #define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8C4D
210 #define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E
211 #define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F
212 #endif /* GL_EXT_texture_compression_s3tc_srgb */
213 
214 #ifndef GL_ANGLE_lossy_etc_decode
215 #define GL_ANGLE_lossy_etc_decode 1
216 #define GL_ETC1_RGB8_LOSSY_DECODE_ANGLE                                  0x9690
217 #define GL_COMPRESSED_R11_LOSSY_DECODE_EAC_ANGLE                         0x9691
218 #define GL_COMPRESSED_SIGNED_R11_LOSSY_DECODE_EAC_ANGLE                  0x9692
219 #define GL_COMPRESSED_RG11_LOSSY_DECODE_EAC_ANGLE                        0x9693
220 #define GL_COMPRESSED_SIGNED_RG11_LOSSY_DECODE_EAC_ANGLE                 0x9694
221 #define GL_COMPRESSED_RGB8_LOSSY_DECODE_ETC2_ANGLE                       0x9695
222 #define GL_COMPRESSED_SRGB8_LOSSY_DECODE_ETC2_ANGLE                      0x9696
223 #define GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_LOSSY_DECODE_ETC2_ANGLE   0x9697
224 #define GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_LOSSY_DECODE_ETC2_ANGLE  0x9698
225 #define GL_COMPRESSED_RGBA8_LOSSY_DECODE_ETC2_EAC_ANGLE                  0x9699
226 #define GL_COMPRESSED_SRGB8_ALPHA8_LOSSY_DECODE_ETC2_EAC_ANGLE           0x969A
227 #endif /* GL_ANGLE_lossy_etc_decode */
228 
229 #ifndef GL_ANGLE_robust_client_memory
230 #define GL_ANGLE_robust_client_memory 1
231 typedef void (GL_APIENTRYP PFNGLGETBOOLEANVROBUSTANGLEPROC) (GLenum pname, GLsizei bufSize, GLsizei *length, GLboolean *data);
232 typedef void (GL_APIENTRYP PFNGLGETBUFFERPARAMETERIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
233 typedef void (GL_APIENTRYP PFNGLGETFLOATVROBUSTANGLEPROC) (GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *data);
234 typedef void (GL_APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVROBUSTANGLEPROC) (GLenum target, GLenum attachment, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
235 typedef void (GL_APIENTRYP PFNGLGETINTEGERVROBUSTANGLEPROC) (GLenum pname, GLsizei bufSize, GLsizei *length, GLint *data);
236 typedef void (GL_APIENTRYP PFNGLGETPROGRAMIVROBUSTANGLEPROC) (GLuint program, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
237 typedef void (GL_APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
238 typedef void (GL_APIENTRYP PFNGLGETSHADERIVROBUSTANGLEPROC) (GLuint shader, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
239 typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERFVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params);
240 typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
241 typedef void (GL_APIENTRYP PFNGLGETUNIFORMFVROBUSTANGLEPROC) (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLfloat *params);
242 typedef void (GL_APIENTRYP PFNGLGETUNIFORMIVROBUSTANGLEPROC) (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLint *params);
243 typedef void (GL_APIENTRYP PFNGLGETVERTEXATTRIBFVROBUSTANGLEPROC) (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params);
244 typedef void (GL_APIENTRYP PFNGLGETVERTEXATTRIBIVROBUSTANGLEPROC) (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
245 typedef void (GL_APIENTRYP PFNGLGETVERTEXATTRIBPOINTERVROBUSTANGLEPROC) (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, void **pointer);
246 typedef void (GL_APIENTRYP PFNGLREADPIXELSROBUSTANGLEPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLsizei *length, GLsizei *columns, GLsizei *rows, void *pixels);
247 typedef void (GL_APIENTRYP PFNGLTEXIMAGE2DROBUSTANGLEPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, GLsizei bufSize, const void *pixels);
248 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERFVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, const GLfloat *params);
249 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, const GLint *params);
250 typedef void (GL_APIENTRYP PFNGLTEXSUBIMAGE2DROBUSTANGLEPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, const void *pixels);
251 typedef void (GL_APIENTRYP PFNGLTEXIMAGE3DROBUSTANGLEPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, GLsizei bufSize, const void *pixels);
252 typedef void (GL_APIENTRYP PFNGLTEXSUBIMAGE3DROBUSTANGLEPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLsizei bufSize, const void *pixels);
253 typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DROBUSTANGLEPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, GLsizei bufSize, const void *data);
254 typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE2DROBUSTANGLEPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, GLsizei bufSize, const void *data);
255 typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DROBUSTANGLEPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, GLsizei bufSize, const void *data);
256 typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DROBUSTANGLEPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, GLsizei bufSize, const void *data);
257 typedef void (GL_APIENTRYP PFNGLGETQUERYIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
258 typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTUIVROBUSTANGLEPROC) (GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint *params);
259 typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, void **params);
260 typedef void (GL_APIENTRYP PFNGLGETINTEGERI_VROBUSTANGLEPROC) (GLenum target, GLuint index, GLsizei bufSize, GLsizei *length, GLint *data);
261 typedef void (GL_APIENTRYP PFNGLGETINTERNALFORMATIVROBUSTANGLEPROC) (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
262 typedef void (GL_APIENTRYP PFNGLGETVERTEXATTRIBIIVROBUSTANGLEPROC) (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
263 typedef void (GL_APIENTRYP PFNGLGETVERTEXATTRIBIUIVROBUSTANGLEPROC) (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint *params);
264 typedef void (GL_APIENTRYP PFNGLGETUNIFORMUIVROBUSTANGLEPROC) (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLuint *params);
265 typedef void (GL_APIENTRYP PFNGLGETACTIVEUNIFORMBLOCKIVROBUSTANGLEPROC) (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
266 typedef void (GL_APIENTRYP PFNGLGETINTEGER64VROBUSTANGLEPROC) (GLenum pname, GLsizei bufSize, GLsizei *length, GLint64 *data);
267 typedef void (GL_APIENTRYP PFNGLGETINTEGER64I_VROBUSTANGLEPROC) (GLenum target, GLuint index, GLsizei bufSize, GLsizei *length, GLint64 *data);
268 typedef void (GL_APIENTRYP PFNGLGETBUFFERPARAMETERI64VROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint64 *params);
269 typedef void (GL_APIENTRYP PFNGLSAMPLERPARAMETERIVROBUSTANGLEPROC) (GLuint sampler, GLenum pname, GLsizei bufSize, const GLint *param);
270 typedef void (GL_APIENTRYP PFNGLSAMPLERPARAMETERFVROBUSTANGLEPROC) (GLuint sampler, GLenum pname, GLsizei bufSize, const GLfloat *param);
271 typedef void (GL_APIENTRYP PFNGLGETSAMPLERPARAMETERIVROBUSTANGLEPROC) (GLuint sampler, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
272 typedef void (GL_APIENTRYP PFNGLGETSAMPLERPARAMETERFVROBUSTANGLEPROC) (GLuint sampler, GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params);
273 typedef void (GL_APIENTRYP PFNGLGETFRAMEBUFFERPARAMETERIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
274 typedef void (GL_APIENTRYP PFNGLGETPROGRAMINTERFACEIVROBUSTANGLEPROC) (GLuint program, GLenum programInterface, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
275 typedef void (GL_APIENTRYP PFNGLGETBOOLEANI_VROBUSTANGLEPROC) (GLenum target, GLuint index, GLsizei bufSize, GLsizei *length, GLboolean *data);
276 typedef void (GL_APIENTRYP PFNGLGETMULTISAMPLEFVROBUSTANGLEPROC) (GLenum pname, GLuint index, GLsizei bufSize, GLsizei *length, GLfloat *val);
277 typedef void (GL_APIENTRYP PFNGLGETTEXLEVELPARAMETERIVROBUSTANGLEPROC) (GLenum target, GLint level, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
278 typedef void (GL_APIENTRYP PFNGLGETTEXLEVELPARAMETERFVROBUSTANGLEPROC) (GLenum target, GLint level, GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params);
279 typedef void (GL_APIENTRYP PFNGLGETPOINTERVROBUSTANGLEROBUSTANGLEPROC) (GLenum pname, GLsizei bufSize, GLsizei *length, void **params);
280 typedef void (GL_APIENTRYP PFNGLREADNPIXELSROBUSTANGLEPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLsizei *length, GLsizei *columns, GLsizei *rows, void *data);
281 typedef void (GL_APIENTRYP PFNGLGETNUNIFORMFVROBUSTANGLEPROC) (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLfloat *params);
282 typedef void (GL_APIENTRYP PFNGLGETNUNIFORMIVROBUSTANGLEPROC) (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLint *params);
283 typedef void (GL_APIENTRYP PFNGLGETNUNIFORMUIVROBUSTANGLEPROC) (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLuint *params);
284 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERIIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, const GLint *params);
285 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERIUIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, const GLuint *params);
286 typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERIIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
287 typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERIUIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint *params);
288 typedef void (GL_APIENTRYP PFNGLSAMPLERPARAMETERIIVROBUSTANGLEPROC) (GLuint sampler, GLenum pname, GLsizei bufSize, const GLint *param);
289 typedef void (GL_APIENTRYP PFNGLSAMPLERPARAMETERIUIVROBUSTANGLEPROC) (GLuint sampler, GLenum pname, GLsizei bufSize, const GLuint *param);
290 typedef void (GL_APIENTRYP PFNGLGETSAMPLERPARAMETERIIVROBUSTANGLEPROC) (GLuint sampler, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
291 typedef void (GL_APIENTRYP PFNGLGETSAMPLERPARAMETERIUIVROBUSTANGLEPROC) (GLuint sampler, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint *params);
292 typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTIVROBUSTANGLEPROC)(GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
293 typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTI64VROBUSTANGLEPROC)(GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, GLint64 *params);
294 typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTUI64VROBUSTANGLEPROC)(GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint64 *params);
295 #ifdef GL_GLEXT_PROTOTYPES
296 GL_APICALL void GL_APIENTRY glGetBooleanvRobustANGLE (GLenum pname, GLsizei bufSize, GLsizei *length, GLboolean *data);
297 GL_APICALL void GL_APIENTRY glGetBufferParameterivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
298 GL_APICALL void GL_APIENTRY glGetFloatvRobustANGLE (GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *data);
299 GL_APICALL void GL_APIENTRY glGetFramebufferAttachmentParameterivRobustANGLE (GLenum target, GLenum attachment, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
300 GL_APICALL void GL_APIENTRY glGetIntegervRobustANGLE (GLenum pname, GLsizei bufSize, GLsizei *length, GLint *data);
301 GL_APICALL void GL_APIENTRY glGetProgramivRobustANGLE (GLuint program, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
302 GL_APICALL void GL_APIENTRY glGetRenderbufferParameterivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
303 GL_APICALL void GL_APIENTRY glGetShaderivRobustANGLE (GLuint shader, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
304 GL_APICALL void GL_APIENTRY glGetTexParameterfvRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params);
305 GL_APICALL void GL_APIENTRY glGetTexParameterivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
306 GL_APICALL void GL_APIENTRY glGetUniformfvRobustANGLE (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLfloat *params);
307 GL_APICALL void GL_APIENTRY glGetUniformivRobustANGLE (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLint *params);
308 GL_APICALL void GL_APIENTRY glGetVertexAttribfvRobustANGLE (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params);
309 GL_APICALL void GL_APIENTRY glGetVertexAttribivRobustANGLE (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
310 GL_APICALL void GL_APIENTRY glGetVertexAttribPointervRobustANGLE (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, void **pointer);
311 GL_APICALL void GL_APIENTRY glReadPixelsRobustANGLE (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLsizei *length, GLsizei *columns, GLsizei *rows, void *pixels);
312 GL_APICALL void GL_APIENTRY glTexImage2DRobustANGLE (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, GLsizei bufSize, const void *pixels);
313 GL_APICALL void GL_APIENTRY glTexParameterfvRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, const GLfloat *params);
314 GL_APICALL void GL_APIENTRY glTexParameterivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, const GLint *params);
315 GL_APICALL void GL_APIENTRY glTexSubImage2DRobustANGLE (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, const void *pixels);
316 GL_APICALL void GL_APIENTRY glTexImage3DRobustANGLE (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, GLsizei bufSize, const void *pixels);
317 GL_APICALL void GL_APIENTRY glTexSubImage3DRobustANGLE (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLsizei bufSize, const void *pixels);
318 GL_APICALL void GL_APIENTRY glCompressedTexImage2DRobustANGLE(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, GLsizei bufSize, const void *data);
319 GL_APICALL void GL_APIENTRY glCompressedTexSubImage2DRobustANGLE(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, GLsizei bufSize, const void *data);
320 GL_APICALL void GL_APIENTRY glCompressedTexImage3DRobustANGLE(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, GLsizei bufSize, const void *data);
321 GL_APICALL void GL_APIENTRY glCompressedTexSubImage3DRobustANGLE(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, GLsizei bufSize, const void *data);
322 GL_APICALL void GL_APIENTRY glGetQueryivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
323 GL_APICALL void GL_APIENTRY glGetQueryObjectuivRobustANGLE (GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint *params);
324 GL_APICALL void GL_APIENTRY glGetBufferPointervRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, void **params);
325 GL_APICALL void GL_APIENTRY glGetIntegeri_vRobustANGLE (GLenum target, GLuint index, GLsizei bufSize, GLsizei *length, GLint *data);
326 GL_APICALL void GL_APIENTRY glGetInternalformativRobustANGLE (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
327 GL_APICALL void GL_APIENTRY glGetVertexAttribIivRobustANGLE (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
328 GL_APICALL void GL_APIENTRY glGetVertexAttribIuivRobustANGLE (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint *params);
329 GL_APICALL void GL_APIENTRY glGetUniformuivRobustANGLE (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLuint *params);
330 GL_APICALL void GL_APIENTRY glGetActiveUniformBlockivRobustANGLE (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
331 GL_APICALL void GL_APIENTRY glGetInteger64vRobustANGLE (GLenum pname, GLsizei bufSize, GLsizei *length, GLint64 *data);
332 GL_APICALL void GL_APIENTRY glGetInteger64i_vRobustANGLE (GLenum target, GLuint index, GLsizei bufSize, GLsizei *length, GLint64 *data);
333 GL_APICALL void GL_APIENTRY glGetBufferParameteri64vRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint64 *params);
334 GL_APICALL void GL_APIENTRY glSamplerParameterivRobustANGLE (GLuint sampler, GLenum pname, GLsizei bufSize, const GLint *param);
335 GL_APICALL void GL_APIENTRY glSamplerParameterfvRobustANGLE (GLuint sampler, GLenum pname, GLsizei bufSize, const GLfloat *param);
336 GL_APICALL void GL_APIENTRY glGetSamplerParameterivRobustANGLE (GLuint sampler, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
337 GL_APICALL void GL_APIENTRY glGetSamplerParameterfvRobustANGLE (GLuint sampler, GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params);
338 GL_APICALL void GL_APIENTRY glGetFramebufferParameterivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
339 GL_APICALL void GL_APIENTRY glGetProgramInterfaceivRobustANGLE (GLuint program, GLenum programInterface, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
340 GL_APICALL void GL_APIENTRY glGetBooleani_vRobustANGLE (GLenum target, GLuint index, GLsizei bufSize, GLsizei *length, GLboolean *data);
341 GL_APICALL void GL_APIENTRY glGetMultisamplefvRobustANGLE (GLenum pname, GLuint index, GLsizei bufSize, GLsizei *length, GLfloat *val);
342 GL_APICALL void GL_APIENTRY glGetTexLevelParameterivRobustANGLE (GLenum target, GLint level, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
343 GL_APICALL void GL_APIENTRY glGetTexLevelParameterfvRobustANGLE (GLenum target, GLint level, GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params);
344 GL_APICALL void GL_APIENTRY glGetPointervRobustANGLERobustANGLE (GLenum pname, GLsizei bufSize, GLsizei *length, void **params);
345 GL_APICALL void GL_APIENTRY glReadnPixelsRobustANGLE (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLsizei *length, GLsizei *columns, GLsizei *rows, void *data);
346 GL_APICALL void GL_APIENTRY glGetnUniformfvRobustANGLE (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLfloat *params);
347 GL_APICALL void GL_APIENTRY glGetnUniformivRobustANGLE (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLint *params);
348 GL_APICALL void GL_APIENTRY glGetnUniformuivRobustANGLE (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLuint *params);
349 GL_APICALL void GL_APIENTRY glTexParameterIivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, const GLint *params);
350 GL_APICALL void GL_APIENTRY glTexParameterIuivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, const GLuint *params);
351 GL_APICALL void GL_APIENTRY glGetTexParameterIivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
352 GL_APICALL void GL_APIENTRY glGetTexParameterIuivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint *params);
353 GL_APICALL void GL_APIENTRY glSamplerParameterIivRobustANGLE (GLuint sampler, GLenum pname, GLsizei bufSize, const GLint *param);
354 GL_APICALL void GL_APIENTRY glSamplerParameterIuivRobustANGLE (GLuint sampler, GLenum pname, GLsizei bufSize, const GLuint *param);
355 GL_APICALL void GL_APIENTRY glGetSamplerParameterIivRobustANGLE (GLuint sampler, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
356 GL_APICALL void GL_APIENTRY glGetSamplerParameterIuivRobustANGLE (GLuint sampler, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint *params);
357 GL_APICALL void GL_APIENTRY glGetQueryObjectivRobustANGLE(GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
358 GL_APICALL void GL_APIENTRY glGetQueryObjecti64vRobustANGLE(GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, GLint64 *params);
359 GL_APICALL void GL_APIENTRY glGetQueryObjectui64vRobustANGLE(GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint64 *params);
360 #endif
361 #endif /* GL_ANGLE_robust_client_memory */
362 
363 #ifndef GL_ANGLE_program_cache_control
364 #define GL_ANGLE_program_cache_control 1
365 #define GL_PROGRAM_CACHE_ENABLED_ANGLE 0x93AC
366 #endif  /* GL_ANGLE_program_cache_control */
367 
368 #ifndef GL_ANGLE_texture_rectangle
369 #define GL_ANGLE_texture_rectangle 1
370 #define GL_MAX_RECTANGLE_TEXTURE_SIZE_ANGLE 0x84F8
371 #define GL_TEXTURE_RECTANGLE_ANGLE 0x84F5
372 #define GL_TEXTURE_BINDING_RECTANGLE_ANGLE 0x84F6
373 #define GL_SAMPLER_2D_RECT_ANGLE 0x8B63
374 #endif /* GL_ANGLE_texture_rectangle */
375 
376 #ifndef GL_ANGLE_texture_multisample
377 #define GL_ANGLE_texture_multisample 1
378 #define GL_SAMPLE_POSITION_ANGLE 0x8E50
379 #define GL_SAMPLE_MASK_ANGLE 0x8E51
380 #define GL_SAMPLE_MASK_VALUE_ANGLE 0x8E52
381 #define GL_TEXTURE_2D_MULTISAMPLE_ANGLE 0x9100
382 #define GL_MAX_SAMPLE_MASK_WORDS_ANGLE 0x8E59
383 #define GL_MAX_COLOR_TEXTURE_SAMPLES_ANGLE 0x910E
384 #define GL_MAX_DEPTH_TEXTURE_SAMPLES_ANGLE 0x910F
385 #define GL_MAX_INTEGER_SAMPLES_ANGLE 0x9110
386 #define GL_TEXTURE_BINDING_2D_MULTISAMPLE_ANGLE 0x9104
387 #define GL_TEXTURE_SAMPLES_ANGLE 0x9106
388 #define GL_TEXTURE_FIXED_SAMPLE_LOCATIONS_ANGLE 0x9107
389 typedef void(GL_APIENTRYP PFNGLTEXSTORAGE2DMULTISAMPLEANGLEPROC)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
390 typedef void(GL_APIENTRYP PFNGLGETTEXLEVELPARAMETERFVANGLEPROC)(GLenum target, GLint level, GLenum pname, GLfloat *params);
391 typedef void(GL_APIENTRYP PFNGLGETTEXLEVELPARAMETERIVANGLEPROC)(GLenum target, GLint level, GLenum pname, GLint *params);
392 typedef void (GL_APIENTRYP PFNGLGETMULTISAMPLEFVANGLEPROC)(GLenum pname, GLuint index, GLfloat *val);
393 typedef void (GL_APIENTRYP PFNGLSAMPLEMASKIANGLEPROC)(GLuint maskNumber, GLbitfield mask);
394 #ifdef GL_GLEXT_PROTOTYPES
395 GL_APICALL void GL_APIENTRY glTexStorage2DMultisampleANGLE(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
396 GL_APICALL void GL_APIENTRY glGetTexLevelParameterfvANGLE(GLenum target, GLint level, GLenum pname, GLfloat *params);
397 GL_APICALL void GL_APIENTRY glGetTexLevelParameterivANGLE(GLenum target, GLint level, GLenum pname, GLint *params);
398 GL_APICALL void GL_APIENTRY glGetMultisamplefvANGLE(GLenum pname, GLuint index, GLfloat *val);
399 GL_APICALL void GL_APIENTRY glSampleMaskiANGLE(GLuint maskNumber, GLbitfield mask);
400 #endif
401 #endif  // !GL_ANGLE_texture_multisample
402 
403 #ifndef GL_ANGLE_explicit_context
404 #define GL_ANGLE_explicit_context
405 typedef void *GLeglContext;
406 #include "gl2ext_explicit_context_autogen.inc"
407 #include "../GLES3/gl3ext_explicit_context_autogen.inc"
408 #include "../GLES3/gl31ext_explicit_context_autogen.inc"
409 #include "../GLES3/gl32.h"
410 #include "../GLES3/gl32ext_explicit_context_autogen.inc"
411 #endif /* GL_ANGLE_explicit_context */
412 
413 #ifndef GL_ANGLE_multi_draw
414 #define GL_ANGLE_multi_draw 1
415 typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSANGLEPROC) (GLenum mode, const GLint *firsts, const GLsizei *counts, GLsizei drawcount);
416 typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSINSTANCEDANGLEPROC) (GLenum mode, const GLint *firsts, const GLsizei *counts, const GLsizei *instanceCounts, GLsizei drawcount);
417 typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSANGLEPROC) (GLenum mode, const GLsizei *counts, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
418 typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSINSTANCEDANGLEPROC) (GLenum mode, const GLsizei *counts, GLenum type, const GLvoid* const *indices, const GLsizei *instanceCounts, GLsizei drawcount);
419 #ifdef GL_GLEXT_PROTOTYPES
420 GL_APICALL void GL_APIENTRY glMultiDrawArraysANGLE (GLenum mode, const GLint *firsts, const GLsizei *counts, GLsizei drawcount);
421 GL_APICALL void GL_APIENTRY glMultiDrawArraysInstancedANGLE (GLenum mode, const GLint *firsts, const GLsizei *counts, const GLsizei *instanceCounts, GLsizei drawcount);
422 GL_APICALL void GL_APIENTRY glMultiDrawElementsANGLE (GLenum mode, const GLsizei *counts, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
423 GL_APICALL void GL_APIENTRY glMultiDrawElementsInstancedANGLE (GLenum mode, const GLsizei *counts, GLenum type, const GLvoid* const *indices, const GLsizei *instanceCounts, GLsizei drawcount);
424 #endif
425 #endif /* GL_ANGLE_multi_draw */
426 
427 #ifndef GL_ANGLE_base_vertex_base_instance
428 #define GL_ANGLE_base_vertex_base_instance 1
429 typedef void (GL_APIENTRYP PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEANGLEPROC) (GLenum mode, GLint first, GLsizei count, GLsizei instanceCount, GLuint baseInstance);
430 typedef void (GL_APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEANGLEPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instanceCount, GLint baseVertex, GLuint baseInstance);
431 typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSINSTANCEDBASEINSTANCEANGLEPROC) (GLenum mode, const GLsizei *firsts, const GLsizei *counts, const GLsizei *instanceCounts, const GLuint *baseInstances, GLsizei drawCount);
432 typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEANGLEPROC) (GLenum mode, const GLsizei *counts, GLenum type, const GLvoid* const *indices, const GLsizei *instanceCounts, const GLint *baseVertices, const GLuint *baseInstances, GLsizei drawCount);
433 #ifdef GL_GLEXT_PROTOTYPES
434 GL_APICALL void GL_APIENTRY glDrawArraysInstancedBaseInstanceANGLE (GLenum mode, GLint first, GLsizei count, GLsizei instanceCount, GLuint baseInstance);
435 GL_APICALL void GL_APIENTRY glDrawElementsInstancedBaseVertexBaseInstanceANGLE (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instanceCount, GLint baseVertex, GLuint baseInstance);
436 GL_APICALL void GL_APIENTRY glMultiDrawArraysInstancedBaseInstanceANGLE (GLenum mode, const GLsizei *firsts, const GLsizei *counts, const GLsizei *instanceCounts, const GLuint *baseInstances, GLsizei drawCount);
437 GL_APICALL void GL_APIENTRY glMultiDrawElementsInstancedBaseVertexBaseInstanceANGLE (GLenum mode, const GLsizei *counts, GLenum type, const GLvoid* const *indices, const GLsizei *instanceCounts, const GLint *baseVertices, const GLuint *baseInstances, GLsizei drawCount);
438 #endif
439 #endif
440 
441 #ifndef GL_CHROMIUM_bind_uniform_location
442 #define GL_CHROMIUM_bind_uniform_location 1
443 typedef void (GL_APIENTRYP PFNGLBINDUNIFORMLOCATIONCHROMIUMPROC)(GLuint program, GLint location, const GLchar *name);
444 #ifdef GL_GLEXT_PROTOTYPES
445 GL_APICALL void GL_APIENTRY glBindUniformLocationCHROMIUM(GLuint program, GLint location, const GLchar *name);
446 #endif
447 #endif /* GL_CHROMIUM_bind_uniform_location */
448 
449 /* GL_CHROMIUM_lose_context */
450 #ifndef GL_CHROMIUM_lose_context
451 #define GL_CHROMIUM_lose_context 1
452 #ifdef GL_GLEXT_PROTOTYPES
453 GL_APICALL void GL_APIENTRY glLoseContextCHROMIUM(GLenum current, GLenum other);
454 #endif
455 typedef void (GL_APIENTRYP PFNGLLOSECONTEXTCHROMIUMPROC) (GLenum current, GLenum other);
456 #endif  /* GL_CHROMIUM_lose_context */
457 
458 #ifndef GL_ANGLE_texture_external_update
459 #define GL_ANGLE_texture_external_update 1
460 #define GL_TEXTURE_NATIVE_ID_ANGLE 0x3481
461 typedef void (GL_APIENTRYP PFNGLTEXIMAGE2DEXTERNALANGLEPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type);
462 typedef void (GL_APIENTRYP PFNGLINVALIDATETEXTUREANGLEPROC) (GLenum target);
463 #ifdef GL_GLEXT_PROTOTYPES
464 GL_APICALL void GL_APIENTRY glTexImage2DExternalANGLE (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type);
465 GL_APICALL void GL_APIENTRY glInvalidateTextureANGLE (GLenum target);
466 #endif
467 #endif /* GL_ANGLE_texture_external_update */
468 
469 #ifndef GL_ANGLE_get_image
470 #define GL_ANGLE_get_image
471 typedef void (GL_APIENTRYP PFNGLGETTEXIMAGEANGLEPROC) (GLenum target, GLint level, GLenum format, GLenum type, void *pixels);
472 typedef void (GL_APIENTRYP PFNGLGETRENDERBUFFERIMAGEANGLEPROC) (GLenum target, GLenum format, GLenum type, void *pixels);
473 #ifdef GL_GLEXT_PROTOTYPES
474 GL_APICALL void GL_APIENTRY glGetTexImageANGLE (GLenum target, GLint level, GLenum format, GLenum type, void *pixels);
475 GL_APICALL void GL_APIENTRY glGetRenderbufferImageANGLE (GLenum target, GLenum format, GLenum type, void *pixels);
476 #endif
477 #endif /* GL_ANGLE_texture_external_update */
478 
479 #ifndef GL_WEBGL_video_texture
480 #define GL_WEBGL_video_texture 1
481 #define GL_TEXTURE_VIDEO_IMAGE_WEBGL 0x9248
482 #define GL_SAMPLER_VIDEO_IMAGE_WEBGL 0x9249
483 #endif /* GL_WEBGL_video_texture */
484 
485 #ifndef GL_ANGLE_memory_object_fuchsia
486 #define GL_ANGLE_memory_object_fuchsia 1
487 #define GL_HANDLE_TYPE_ZIRCON_VMO_ANGLE 0x93AE
488 typedef void(GL_APIENTRYP PFNGLIMPORTMEMORYZIRCONHANDLEANGLEPROC)(GLuint memory,
489                                                                   GLuint64 size,
490                                                                   GLenum handleType,
491                                                                   GLuint handle);
492 #ifdef GL_GLEXT_PROTOTYPES
493 GL_APICALL void GL_APIENTRY glImportMemoryZirconHandleANGLE(GLuint memory,
494                                                             GLuint64 size,
495                                                             GLenum handleType,
496                                                             GLuint handle);
497 #endif
498 #endif /* GL_ANGLE_memory_object_fuchsia */
499 
500 #ifndef GL_ANGLE_semaphore_fuchsia
501 #define GL_ANGLE_semaphore_fuchsia 1
502 #define GL_HANDLE_TYPE_ZIRCON_EVENT_ANGLE 0x93AF
503 typedef void(GL_APIENTRYP PFNGLIMPORTSEMAPHOREZIRCONHANDLEANGLEPROC)(GLuint semaphore,
504                                                                      GLenum handleType,
505                                                                      GLuint handle);
506 #ifdef GL_GLEXT_PROTOTYPES
507 GL_APICALL void GL_APIENTRY glImportSemaphoreZirconHandleANGLE(GLuint memory,
508                                                                GLenum handleType,
509                                                                GLuint handle);
510 #endif
511 #endif /* GL_ANGLE_semaphore_fuchsia */
512 
513 // clang-format on
514 
515 #endif  // INCLUDE_GLES2_GL2EXT_ANGLE_H_
516