1//
2// Copyright (c) 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 0x93A8
24typedef void (GL_APIENTRYP PFNGLREQUESTEXTENSIONANGLEPROC) (const GLchar *name);
25#ifdef GL_GLEXT_PROTOTYPES
26GL_APICALL void GL_APIENTRY glRequestExtensionANGLE (const GLchar *name);
27#endif
28#endif /* GL_ANGLE_webgl_compatibility */
29
30#ifndef GL_ANGLE_robust_resource_initialization
31#define GL_ANGLE_robust_resource_initialization 1
32#define GL_ROBUST_RESOURCE_INITIALIZATION_ANGLE 0x93AB
33#endif /* GL_ANGLE_robust_resource_initialization */
34
35#ifndef GL_ANGLE_provoking_vertex
36#define GL_ANGLE_provoking_vertex 1
37#define GL_FIRST_VERTEX_CONVENTION 0x8E4D
38#define GL_LAST_VERTEX_CONVENTION 0x8E4E
39#define GL_PROVOKING_VERTEX 0x8E4F
40typedef void (GL_APIENTRYP PFNGLPROVOKINGVERTEXANGLEPROC) (GLenum);
41#ifdef GL_GLEXT_PROTOTYPES
42GL_APICALL void GL_APIENTRY glProvokingVertexANGLE(GLenum mode);
43#endif
44#endif /* GL_ANGLE_provoking_vertex */
45
46#ifndef GL_CHROMIUM_framebuffer_mixed_samples
47#define GL_CHROMIUM_frambuffer_mixed_samples 1
48#define GL_COVERAGE_MODULATION_CHROMIUM 0x9332
49typedef void (GL_APIENTRYP PFNGLCOVERAGEMODULATIONCHROMIUMPROC) (GLenum components);
50#ifdef GL_GLEXT_PROTOTYPES
51GL_APICALL void GL_APIENTRY glCoverageModulationCHROMIUM(GLenum components);
52#endif
53#endif /* GL_CHROMIUM_framebuffer_mixed_samples */
54
55#ifndef GL_CHROMIUM_bind_generates_resource
56#define GL_CHROMIUM_bind_generates_resource 1
57#define GL_BIND_GENERATES_RESOURCE_CHROMIUM 0x9244
58#endif /* GL_CHROMIUM_bind_generates_resource */
59
60#ifndef GL_ANGLE_memory_size
61#define GL_ANGLE_memory_size
62#define GL_MEMORY_SIZE_ANGLE 0x93AD
63#endif /* GL_ANGLE_memory_size */
64
65// needed by NV_path_rendering (and thus CHROMIUM_path_rendering)
66// but CHROMIUM_path_rendering only needs MatrixLoadfEXT, MatrixLoadIdentityEXT
67#ifndef GL_EXT_direct_state_access
68#define GL_EXT_direct_state_access 1
69typedef void(GL_APIENTRYP PFNGLMATRIXLOADFEXTPROC)(GLenum matrixMode, const GLfloat *m);
70typedef void(GL_APIENTRYP PFNGLMATRIXLOADIDENTITYEXTPROC)(GLenum matrixMode);
71#ifdef GL_GLEXT_PROTOTYPES
72GL_APICALL void GL_APIENTRY glMatrixLoadfEXT(GLenum matrixMode, const GLfloat *m);
73GL_APICALL void GL_APIENTRY glMatrixLoadIdentityEXT(GLenum matrixMode);
74#endif
75#endif /* GL_EXT_direct_state_access */
76
77#ifndef GL_CHROMIUM_path_rendering
78#define GL_CHROMIUM_path_rendering 1
79#define GL_PATH_MODELVIEW_CHROMIUM 0x1700
80#define GL_PATH_PROJECTION_CHROMIUM 0x1701
81#define GL_CLOSE_PATH_CHROMIUM 0x00
82#define GL_MOVE_TO_CHROMIUM 0x02
83#define GL_LINE_TO_CHROMIUM 0x04
84#define GL_QUADRATIC_CURVE_TO_CHROMIUM 0x0A
85#define GL_CUBIC_CURVE_TO_CHROMIUM 0x0C
86#define GL_CONIC_CURVE_TO_CHROMIUM 0x1A
87#define GL_PATH_MODELVIEW_MATRIX_CHROMIUM 0x0BA6
88#define GL_PATH_PROJECTION_MATRIX_CHROMIUM 0x0BA7
89#define GL_PATH_STROKE_WIDTH_CHROMIUM 0x9075
90#define GL_PATH_END_CAPS_CHROMIUM 0x9076
91#define GL_PATH_JOIN_STYLE_CHROMIUM 0x9079
92#define GL_PATH_MITER_LIMIT_CHROMIUM 0x907a
93#define GL_PATH_STROKE_BOUND_CHROMIUM 0x9086
94#define GL_FLAT_CHROMIUM 0x1D00
95#define GL_SQUARE_CHROMIUM 0x90a3
96#define GL_ROUND_CHROMIUM 0x90a4
97#define GL_BEVEL_CHROMIUM 0x90A6
98#define GL_MITER_REVERT_CHROMIUM 0x90A7
99#define GL_COUNT_UP_CHROMIUM 0x9088
100#define GL_COUNT_DOWN_CHROMIUM 0x9089
101#define GL_CONVEX_HULL_CHROMIUM 0x908B
102#define GL_BOUNDING_BOX_CHROMIUM 0x908D
103#define GL_BOUNDING_BOX_OF_BOUNDING_BOXES_CHROMIUM 0x909C
104#define GL_EYE_LINEAR_CHROMIUM 0x2400
105#define GL_OBJECT_LINEAR_CHROMIUM 0x2401
106#define GL_CONSTANT_CHROMIUM 0x8576
107#define GL_TRANSLATE_X_CHROMIUM 0x908E
108#define GL_TRANSLATE_Y_CHROMIUM 0x908F
109#define GL_TRANSLATE_2D_CHROMIUM 0x9090
110#define GL_TRANSLATE_3D_CHROMIUM 0x9091
111#define GL_AFFINE_2D_CHROMIUM 0x9092
112#define GL_AFFINE_3D_CHROMIUM 0x9094
113#define GL_TRANSPOSE_AFFINE_2D_CHROMIUM 0x9096
114#define GL_TRANSPOSE_AFFINE_3D_CHROMIUM 0x9098
115typedef void(GL_APIENTRYP PFNGLMATRIXLOADFCHROMIUMPROC)(GLenum matrixMode, const GLfloat *m);
116typedef void(GL_APIENTRYP PFNGLMATRIXLOADIDENTITYCHROMIUMPROC)(GLenum matrixMode);
117typedef GLuint(GL_APIENTRYP PFNGLGENPATHSCHROMIUMPROC)(GLsizei range);
118typedef void(GL_APIENTRYP PFNGLDELETEPATHSCHROMIUMPROC)(GLuint path, GLsizei range);
119typedef GLboolean(GL_APIENTRYP PFNGLISPATHCHROMIUMPROC)(GLuint path);
120typedef void(GL_APIENTRYP PFNGLPATHCOMMANDSCHROMIUMPROC)(GLuint path,
121 GLsizei numCommands,
122 const GLubyte *commands,
123 GLsizei numCoords,
124 GLenum coordType,
125 const void *coords);
126typedef void(GL_APIENTRYP PFNGLPATHPARAMETERICHROMIUMPROC)(GLuint path, GLenum pname, GLint value);
127typedef void(GL_APIENTRYP PFNGLPATHPARAMETERFCHROMIUMPROC)(GLuint path,
128 GLenum pname,
129 GLfloat value);
130typedef void(GL_APIENTRYP PFNGLGETPATHPARAMETERIVCHROMIUMPROC)(GLuint path,
131 GLenum pname,
132 GLint *value);
133typedef void(GL_APIENTRYP PFNGLGETPATHPARAMETERFVCHROMIUMPROC)(GLuint path,
134 GLenum pname,
135 GLfloat *value);
136typedef void(GL_APIENTRYP PFNGLPATHSTENCILFUNCCHROMIUMPROC)(GLenum func, GLint ref, GLuint mask);
137typedef void(GL_APIENTRYP PFNGLSTENCILFILLPATHCHROMIUMPROC)(GLuint path,
138 GLenum fillMode,
139 GLuint mask);
140typedef void(GL_APIENTRYP PFNGLSTENCILSTROKEPATHCHROMIUMPROC)(GLuint path,
141 GLint reference,
142 GLuint mask);
143typedef void(GL_APIENTRYP PFNGLCOVERFILLPATHCHROMIUMPROC)(GLuint path, GLenum coverMode);
144typedef void(GL_APIENTRYP PFNGLCOVERSTROKEPATHCHROMIUMPROC)(GLuint path, GLenum coverMode);
145typedef void(GL_APIENTRYP PFNGLSTENCILTHENCOVERFILLPATHCHROMIUMPROC)(GLuint path,
146 GLenum fillMode,
147 GLuint mask,
148 GLenum coverMode);
149typedef void(GL_APIENTRYP PFNGLSTENCILTHENCOVERSTROKEPATHCHROMIUMPROC)(GLuint path,
150 GLint reference,
151 GLuint mask,
152 GLenum coverMode);
153typedef void(GL_APIENTRYP PFNGLCOVERFILLPATHINSTANCEDCHROMIUMPROC)(GLsizei numPaths,
154 GLenum pathNameType,
155 const void *paths,
156 GLuint pathBase,
157 GLenum coverMode,
158 GLenum transformType,
159 const GLfloat *transformValues);
160typedef void(GL_APIENTRYP PFNGLCOVERSTROKEPATHINSTANCEDCHROMIUMPROC)(
161 GLsizei numPaths,
162 GLenum pathNameType,
163 const void *paths,
164 GLuint pathBase,
165 GLenum coverMode,
166 GLenum transformType,
167 const GLfloat *transformValues);
168typedef void(GL_APIENTRYP PFNGLSTENCILFILLPATHINSTANCEDCHROMIUMPROC)(
169 GLsizei numPaths,
170 GLenum pathNameType,
171 const void *paths,
172 GLuint pathBase,
173 GLenum fillMode,
174 GLuint mask,
175 GLenum transformType,
176 const GLfloat *transformValues);
177typedef void(GL_APIENTRYP PFNGLSTENCILSTROKEPATHINSTANCEDCHROMIUMPROC)(
178 GLsizei numPaths,
179 GLenum pathNameType,
180 const void *paths,
181 GLuint pathBase,
182 GLint reference,
183 GLuint mask,
184 GLenum transformType,
185 const GLfloat *transformValues);
186typedef void(GL_APIENTRYP PFNGLSTENCILTHENCOVERFILLPATHINSTANCEDCHROMIUMPROC)(
187 GLsizei numPaths,
188 GLenum pathNameType,
189 const void *paths,
190 GLuint pathBase,
191 GLenum fillMode,
192 GLuint mask,
193 GLenum coverMode,
194 GLenum transformType,
195 const GLfloat *transformValues);
196typedef void(GL_APIENTRYP PFNGLSTENCILTHENCOVERSTROKEPATHINSTANCEDCHROMIUMPROC)(
197 GLsizei numPaths,
198 GLenum pathNameType,
199 const void *paths,
200 GLuint pathBase,
201 GLint reference,
202 GLuint mask,
203 GLenum coverMode,
204 GLenum transformType,
205 const GLfloat *transformValues);
206
207typedef void(GL_APIENTRYP PFNGLBINDFRAGMENTINPUTLOCATIONCHROMIUMPROC)(GLuint program,
208 GLint location,
209 const GLchar *name);
210typedef void(GL_APIENTRYP PFNGLPROGRAMPATHFRAGMENTINPUTGENCHROMIUMPROC)(GLuint program,
211 GLint location,
212 GLenum genMode,
213 GLint components,
214 const GLfloat *coeffs);
215#ifdef GL_GLEXT_PROTOTYPES
216GL_APICALL void GL_APIENTRY glMatrixLoadfCHROMIUM(GLenum matrixMode, const GLfloat *m);
217GL_APICALL void GL_APIENTRY glMatrixLoadIdentityCHROMIUM(GLenum matrixMode);
218GL_APICALL GLuint GL_APIENTRY glGenPathsCHROMIUM(GLsizei range);
219GL_APICALL void GL_APIENTRY glDeletePathsCHROMIUM(GLuint path, GLsizei range);
220GL_APICALL GLboolean GL_APIENTRY glIsPathCHROMIUM(GLuint path);
221GL_APICALL void GL_APIENTRY glPathCommandsCHROMIUM(GLuint path,
222 GLsizei numCommands,
223 const GLubyte *commands,
224 GLsizei numCoords,
225 GLenum coordType,
226 const void *coords);
227GL_APICALL void GL_APIENTRY glPathParameteriCHROMIUM(GLuint path, GLenum pname, GLint value);
228GL_APICALL void GL_APIENTRY glPathParameterfCHROMIUM(GLuint path, GLenum pname, GLfloat value);
229GL_APICALL void GL_APIENTRY glGetPathParameterivCHROMIUM(GLuint path, GLenum pname, GLint *value);
230GL_APICALL void GL_APIENTRY glGetPathParameterfvCHROMIUM(GLuint path, GLenum pname, GLfloat *value);
231GL_APICALL void GL_APIENTRY glPathStencilFuncCHROMIUM(GLenum func, GLint ref, GLuint mask);
232GL_APICALL void GL_APIENTRY glStencilFillPathCHROMIUM(GLuint path, GLenum fillMode, GLuint mask);
233GL_APICALL void GL_APIENTRY glStencilStrokePathCHROMIUM(GLuint path, GLint reference, GLuint mask);
234GL_APICALL void GL_APIENTRY glCoverFillPathCHROMIUM(GLuint path, GLenum coverMode);
235GL_APICALL void GL_APIENTRY glCoverStrokePathCHROMIUM(GLuint path, GLenum coverMode);
236GL_APICALL void GL_APIENTRY glStencilThenCoverFillPathCHROMIUM(GLuint path,
237 GLenum fillMode,
238 GLuint mask,
239 GLenum coverMode);
240GL_APICALL void GL_APIENTRY glStencilThenCoverStrokePathCHROMIUM(GLuint path,
241 GLint reference,
242 GLuint mask,
243 GLenum coverMode);
244GL_APICALL void GL_APIENTRY glCoverFillPathInstancedCHROMIUM(GLsizei numPaths,
245 GLenum pathNameType,
246 const void *paths,
247 GLuint pathBase,
248 GLenum coverMode,
249 GLenum transformType,
250 const GLfloat *transformValues);
251GL_APICALL void GL_APIENTRY glCoverStrokePathInstancedCHROMIUM(GLsizei numPaths,
252 GLenum pathNameType,
253 const void *paths,
254 GLuint pathBase,
255 GLenum coverMode,
256 GLenum transformType,
257 const GLfloat *transformValues);
258GL_APICALL void GL_APIENTRY glStencilFillPathInstancedCHROMIUM(GLsizei numPaths,
259 GLenum pathNameType,
260 const void *paths,
261 GLuint pathBase,
262 GLenum fillMode,
263 GLuint mask,
264 GLenum transformType,
265 const GLfloat *transformValues);
266GL_APICALL void GL_APIENTRY glStencilStrokePathInstancedCHROMIUM(GLsizei numPaths,
267 GLenum pathNameType,
268 const void *paths,
269 GLuint pathBase,
270 GLint reference,
271 GLuint mask,
272 GLenum transformType,
273 const GLfloat *transformValues);
274GL_APICALL void GL_APIENTRY
275glStencilThenCoverFillPathInstancedCHROMIUM(GLsizei numPaths,
276 GLenum pathNameType,
277 const void *paths,
278 GLuint pathBase,
279 GLenum fillMode,
280 GLuint mask,
281 GLenum coverMode,
282 GLenum transformType,
283 const GLfloat *transformValues);
284
285GL_APICALL void GL_APIENTRY
286glStencilThenCoverStrokePathInstancedCHROMIUM(GLsizei numPaths,
287 GLenum pathNameType,
288 const void *paths,
289 GLuint pathBase,
290 GLint reference,
291 GLuint mask,
292 GLenum coverMode,
293 GLenum transformType,
294 const GLfloat *transformValues);
295
296GL_APICALL void GL_APIENTRY glBindFragmentInputLocationCHROMIUM(GLuint program,
297 GLint location,
298 const GLchar *name);
299GL_APICALL void GL_APIENTRY glProgramPathFragmentInputGenCHROMIUM(GLuint program,
300 GLint location,
301 GLenum genMode,
302 GLint components,
303 const GLfloat *coeffs);
304
305#endif
306#endif /* GL_CHROMIUM_path_rendering */
307
308#ifndef GL_CHROMIUM_copy_texture
309#define GL_CHROMIUM_copy_texture 1
310typedef void(GL_APIENTRYP PFNGLCOPYTEXTURECHROMIUMPROC)(GLuint sourceId,
311 GLint sourceLevel,
312 GLenum destTarget,
313 GLuint destId,
314 GLint destLevel,
315 GLint internalFormat,
316 GLenum destType,
317 GLboolean unpackFlipY,
318 GLboolean unpackPremultiplyAlpha,
319 GLboolean unpackUnmultiplyAlpha);
320typedef void(GL_APIENTRYP PFNGLCOPYSUBTEXTURECHROMIUMPROC)(GLuint sourceId,
321 GLint sourceLevel,
322 GLenum destTarget,
323 GLuint destId,
324 GLint destLevel,
325 GLint xoffset,
326 GLint yoffset,
327 GLint x,
328 GLint y,
329 GLsizei width,
330 GLsizei height,
331 GLboolean unpackFlipY,
332 GLboolean unpackPremultiplyAlpha,
333 GLboolean unpackUnmultiplyAlpha);
334#ifdef GL_GLEXT_PROTOTYPES
335GL_APICALL void GL_APIENTRY glCopyTextureCHROMIUM(GLuint sourceId,
336 GLint sourceLevel,
337 GLenum destTarget,
338 GLuint destId,
339 GLint destLevel,
340 GLint internalFormat,
341 GLenum destType,
342 GLboolean unpackFlipY,
343 GLboolean unpackPremultiplyAlpha,
344 GLboolean unpackUnmultiplyAlpha);
345GL_APICALL void GL_APIENTRY glCopySubTextureCHROMIUM(GLuint sourceId,
346 GLint sourceLevel,
347 GLenum destTarget,
348 GLuint destId,
349 GLint destLevel,
350 GLint xoffset,
351 GLint yoffset,
352 GLint x,
353 GLint y,
354 GLsizei width,
355 GLsizei height,
356 GLboolean unpackFlipY,
357 GLboolean unpackPremultiplyAlpha,
358 GLboolean unpackUnmultiplyAlpha);
359#endif
360#endif /* GL_CHROMIUM_copy_texture */
361
362#ifndef GL_CHROMIUM_compressed_copy_texture
363#define GL_CHROMIUM_compressed_copy_texture 1
364typedef void(GL_APIENTRYP PFNGLCOMPRESSEDCOPYTEXTURECHROMIUMPROC)(GLuint sourceId, GLuint destId);
365#ifdef GL_GLEXT_PROTOTYPES
366GL_APICALL void GL_APIENTRY glCompressedCopyTextureCHROMIUM(GLuint sourceId, GLuint destId);
367#endif
368#endif /* GL_CHROMIUM_compressed_copy_texture */
369
370
371#ifndef GL_ANGLE_copy_texture_3d
372#define GL_ANGLE_copy_texture_3d 1
373typedef void(GL_APIENTRYP PFNGLCOPYTEXTURE3DANGLEPROC)(GLuint sourceId,
374 GLint sourceLevel,
375 GLenum destTarget,
376 GLuint destId,
377 GLint destLevel,
378 GLint internalFormat,
379 GLenum destType,
380 GLboolean unpackFlipY,
381 GLboolean unpackPremultiplyAlpha,
382 GLboolean unpackUnmultiplyAlpha);
383typedef void(GL_APIENTRYP PFNGLCOPYSUBTEXTURE3DANGLEPROC)(GLuint sourceId,
384 GLint sourceLevel,
385 GLenum destTarget,
386 GLuint destId,
387 GLint destLevel,
388 GLint xoffset,
389 GLint yoffset,
390 GLint zoffset,
391 GLint x,
392 GLint y,
393 GLint z,
394 GLsizei width,
395 GLsizei height,
396 GLsizei depth,
397 GLboolean unpackFlipY,
398 GLboolean unpackPremultiplyAlpha,
399 GLboolean unpackUnmultiplyAlpha);
400#ifdef GL_GLEXT_PROTOTYPES
401GL_APICALL void GL_APIENTRY glCopyTexture3DANGLE(GLuint sourceId,
402 GLint sourceLevel,
403 GLenum destTarget,
404 GLuint destId,
405 GLint destLevel,
406 GLint internalFormat,
407 GLenum destType,
408 GLboolean unpackFlipY,
409 GLboolean unpackPremultiplyAlpha,
410 GLboolean unpackUnmultiplyAlpha);
411GL_APICALL void GL_APIENTRY glCopySubTexture3DANGLE(GLuint sourceId,
412 GLint sourceLevel,
413 GLenum destTarget,
414 GLuint destId,
415 GLint destLevel,
416 GLint xoffset,
417 GLint yoffset,
418 GLint zoffset,
419 GLint x,
420 GLint y,
421 GLint z,
422 GLsizei width,
423 GLsizei height,
424 GLsizei depth,
425 GLboolean unpackFlipY,
426 GLboolean unpackPremultiplyAlpha,
427 GLboolean unpackUnmultiplyAlpha);
428#endif
429#endif /* GL_ANGLE_copy_texture_3d */
430
431#ifndef GL_CHROMIUM_sync_query
432#define GL_CHROMIUM_sync_query 1
433#define GL_COMMANDS_COMPLETED_CHROMIUM 0x84F7
434#endif /* GL_CHROMIUM_sync_query */
435
436#ifndef GL_EXT_texture_compression_s3tc_srgb
437#define GL_EXT_texture_compression_s3tc_srgb 1
438#define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8C4C
439#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8C4D
440#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E
441#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F
442#endif /* GL_EXT_texture_compression_s3tc_srgb */
443
444#ifndef GL_ANGLE_lossy_etc_decode
445#define GL_ANGLE_lossy_etc_decode 1
446#define GL_ETC1_RGB8_LOSSY_DECODE_ANGLE 0x9690
447#define GL_COMPRESSED_R11_LOSSY_DECODE_EAC_ANGLE 0x9691
448#define GL_COMPRESSED_SIGNED_R11_LOSSY_DECODE_EAC_ANGLE 0x9692
449#define GL_COMPRESSED_RG11_LOSSY_DECODE_EAC_ANGLE 0x9693
450#define GL_COMPRESSED_SIGNED_RG11_LOSSY_DECODE_EAC_ANGLE 0x9694
451#define GL_COMPRESSED_RGB8_LOSSY_DECODE_ETC2_ANGLE 0x9695
452#define GL_COMPRESSED_SRGB8_LOSSY_DECODE_ETC2_ANGLE 0x9696
453#define GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_LOSSY_DECODE_ETC2_ANGLE 0x9697
454#define GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_LOSSY_DECODE_ETC2_ANGLE 0x9698
455#define GL_COMPRESSED_RGBA8_LOSSY_DECODE_ETC2_EAC_ANGLE 0x9699
456#define GL_COMPRESSED_SRGB8_ALPHA8_LOSSY_DECODE_ETC2_EAC_ANGLE 0x969A
457#endif /* GL_ANGLE_lossy_etc_decode */
458
459#ifndef GL_ANGLE_robust_client_memory
460#define GL_ANGLE_robust_client_memory 1
461typedef void (GL_APIENTRYP PFNGLGETBOOLEANVROBUSTANGLEPROC) (GLenum pname, GLsizei bufSize, GLsizei *length, GLboolean *data);
462typedef void (GL_APIENTRYP PFNGLGETBUFFERPARAMETERIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
463typedef void (GL_APIENTRYP PFNGLGETFLOATVROBUSTANGLEPROC) (GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *data);
464typedef void (GL_APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVROBUSTANGLEPROC) (GLenum target, GLenum attachment, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
465typedef void (GL_APIENTRYP PFNGLGETINTEGERVROBUSTANGLEPROC) (GLenum pname, GLsizei bufSize, GLsizei *length, GLint *data);
466typedef void (GL_APIENTRYP PFNGLGETPROGRAMIVROBUSTANGLEPROC) (GLuint program, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
467typedef void (GL_APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
468typedef void (GL_APIENTRYP PFNGLGETSHADERIVROBUSTANGLEPROC) (GLuint shader, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
469typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERFVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params);
470typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
471typedef void (GL_APIENTRYP PFNGLGETUNIFORMFVROBUSTANGLEPROC) (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLfloat *params);
472typedef void (GL_APIENTRYP PFNGLGETUNIFORMIVROBUSTANGLEPROC) (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLint *params);
473typedef void (GL_APIENTRYP PFNGLGETVERTEXATTRIBFVROBUSTANGLEPROC) (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params);
474typedef void (GL_APIENTRYP PFNGLGETVERTEXATTRIBIVROBUSTANGLEPROC) (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
475typedef void (GL_APIENTRYP PFNGLGETVERTEXATTRIBPOINTERVROBUSTANGLEPROC) (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, void **pointer);
476typedef 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);
477typedef 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);
478typedef void (GL_APIENTRYP PFNGLTEXPARAMETERFVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, const GLfloat *params);
479typedef void (GL_APIENTRYP PFNGLTEXPARAMETERIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, const GLint *params);
480typedef 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);
481typedef 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);
482typedef 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);
483typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DROBUSTANGLEPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, GLsizei bufSize, const void *data);
484typedef 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);
485typedef 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);
486typedef 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);
487typedef void (GL_APIENTRYP PFNGLGETQUERYIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
488typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTUIVROBUSTANGLEPROC) (GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint *params);
489typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, void **params);
490typedef void (GL_APIENTRYP PFNGLGETINTEGERI_VROBUSTANGLEPROC) (GLenum target, GLuint index, GLsizei bufSize, GLsizei *length, GLint *data);
491typedef void (GL_APIENTRYP PFNGLGETINTERNALFORMATIVROBUSTANGLEPROC) (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
492typedef void (GL_APIENTRYP PFNGLGETVERTEXATTRIBIIVROBUSTANGLEPROC) (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
493typedef void (GL_APIENTRYP PFNGLGETVERTEXATTRIBIUIVROBUSTANGLEPROC) (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint *params);
494typedef void (GL_APIENTRYP PFNGLGETUNIFORMUIVROBUSTANGLEPROC) (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLuint *params);
495typedef void (GL_APIENTRYP PFNGLGETACTIVEUNIFORMBLOCKIVROBUSTANGLEPROC) (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
496typedef void (GL_APIENTRYP PFNGLGETINTEGER64VROBUSTANGLEPROC) (GLenum pname, GLsizei bufSize, GLsizei *length, GLint64 *data);
497typedef void (GL_APIENTRYP PFNGLGETINTEGER64I_VROBUSTANGLEPROC) (GLenum target, GLuint index, GLsizei bufSize, GLsizei *length, GLint64 *data);
498typedef void (GL_APIENTRYP PFNGLGETBUFFERPARAMETERI64VROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint64 *params);
499typedef void (GL_APIENTRYP PFNGLSAMPLERPARAMETERIVROBUSTANGLEPROC) (GLuint sampler, GLenum pname, GLsizei bufSize, const GLint *param);
500typedef void (GL_APIENTRYP PFNGLSAMPLERPARAMETERFVROBUSTANGLEPROC) (GLuint sampler, GLenum pname, GLsizei bufSize, const GLfloat *param);
501typedef void (GL_APIENTRYP PFNGLGETSAMPLERPARAMETERIVROBUSTANGLEPROC) (GLuint sampler, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
502typedef void (GL_APIENTRYP PFNGLGETSAMPLERPARAMETERFVROBUSTANGLEPROC) (GLuint sampler, GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params);
503typedef void (GL_APIENTRYP PFNGLGETFRAMEBUFFERPARAMETERIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
504typedef void (GL_APIENTRYP PFNGLGETPROGRAMINTERFACEIVROBUSTANGLEPROC) (GLuint program, GLenum programInterface, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
505typedef void (GL_APIENTRYP PFNGLGETBOOLEANI_VROBUSTANGLEPROC) (GLenum target, GLuint index, GLsizei bufSize, GLsizei *length, GLboolean *data);
506typedef void (GL_APIENTRYP PFNGLGETMULTISAMPLEFVROBUSTANGLEPROC) (GLenum pname, GLuint index, GLsizei bufSize, GLsizei *length, GLfloat *val);
507typedef void (GL_APIENTRYP PFNGLGETTEXLEVELPARAMETERIVROBUSTANGLEPROC) (GLenum target, GLint level, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
508typedef void (GL_APIENTRYP PFNGLGETTEXLEVELPARAMETERFVROBUSTANGLEPROC) (GLenum target, GLint level, GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params);
509typedef void (GL_APIENTRYP PFNGLGETPOINTERVROBUSTANGLEROBUSTANGLEPROC) (GLenum pname, GLsizei bufSize, GLsizei *length, void **params);
510typedef 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);
511typedef void (GL_APIENTRYP PFNGLGETNUNIFORMFVROBUSTANGLEPROC) (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLfloat *params);
512typedef void (GL_APIENTRYP PFNGLGETNUNIFORMIVROBUSTANGLEPROC) (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLint *params);
513typedef void (GL_APIENTRYP PFNGLGETNUNIFORMUIVROBUSTANGLEPROC) (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLuint *params);
514typedef void (GL_APIENTRYP PFNGLTEXPARAMETERIIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, const GLint *params);
515typedef void (GL_APIENTRYP PFNGLTEXPARAMETERIUIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, const GLuint *params);
516typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERIIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
517typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERIUIVROBUSTANGLEPROC) (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint *params);
518typedef void (GL_APIENTRYP PFNGLSAMPLERPARAMETERIIVROBUSTANGLEPROC) (GLuint sampler, GLenum pname, GLsizei bufSize, const GLint *param);
519typedef void (GL_APIENTRYP PFNGLSAMPLERPARAMETERIUIVROBUSTANGLEPROC) (GLuint sampler, GLenum pname, GLsizei bufSize, const GLuint *param);
520typedef void (GL_APIENTRYP PFNGLGETSAMPLERPARAMETERIIVROBUSTANGLEPROC) (GLuint sampler, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
521typedef void (GL_APIENTRYP PFNGLGETSAMPLERPARAMETERIUIVROBUSTANGLEPROC) (GLuint sampler, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint *params);
522typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTIVROBUSTANGLEPROC)(GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
523typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTI64VROBUSTANGLEPROC)(GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, GLint64 *params);
524typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTUI64VROBUSTANGLEPROC)(GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint64 *params);
525#ifdef GL_GLEXT_PROTOTYPES
526GL_APICALL void GL_APIENTRY glGetBooleanvRobustANGLE (GLenum pname, GLsizei bufSize, GLsizei *length, GLboolean *data);
527GL_APICALL void GL_APIENTRY glGetBufferParameterivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
528GL_APICALL void GL_APIENTRY glGetFloatvRobustANGLE (GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *data);
529GL_APICALL void GL_APIENTRY glGetFramebufferAttachmentParameterivRobustANGLE (GLenum target, GLenum attachment, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
530GL_APICALL void GL_APIENTRY glGetIntegervRobustANGLE (GLenum pname, GLsizei bufSize, GLsizei *length, GLint *data);
531GL_APICALL void GL_APIENTRY glGetProgramivRobustANGLE (GLuint program, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
532GL_APICALL void GL_APIENTRY glGetRenderbufferParameterivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
533GL_APICALL void GL_APIENTRY glGetShaderivRobustANGLE (GLuint shader, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
534GL_APICALL void GL_APIENTRY glGetTexParameterfvRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params);
535GL_APICALL void GL_APIENTRY glGetTexParameterivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
536GL_APICALL void GL_APIENTRY glGetUniformfvRobustANGLE (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLfloat *params);
537GL_APICALL void GL_APIENTRY glGetUniformivRobustANGLE (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLint *params);
538GL_APICALL void GL_APIENTRY glGetVertexAttribfvRobustANGLE (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params);
539GL_APICALL void GL_APIENTRY glGetVertexAttribivRobustANGLE (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
540GL_APICALL void GL_APIENTRY glGetVertexAttribPointervRobustANGLE (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, void **pointer);
541GL_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);
542GL_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);
543GL_APICALL void GL_APIENTRY glTexParameterfvRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, const GLfloat *params);
544GL_APICALL void GL_APIENTRY glTexParameterivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, const GLint *params);
545GL_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);
546GL_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);
547GL_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);
548GL_APICALL void GL_APIENTRY glCompressedTexImage2DRobustANGLE(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, GLsizei bufSize, const void *data);
549GL_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);
550GL_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);
551GL_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);
552GL_APICALL void GL_APIENTRY glGetQueryivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
553GL_APICALL void GL_APIENTRY glGetQueryObjectuivRobustANGLE (GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint *params);
554GL_APICALL void GL_APIENTRY glGetBufferPointervRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, void **params);
555GL_APICALL void GL_APIENTRY glGetIntegeri_vRobustANGLE (GLenum target, GLuint index, GLsizei bufSize, GLsizei *length, GLint *data);
556GL_APICALL void GL_APIENTRY glGetInternalformativRobustANGLE (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
557GL_APICALL void GL_APIENTRY glGetVertexAttribIivRobustANGLE (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
558GL_APICALL void GL_APIENTRY glGetVertexAttribIuivRobustANGLE (GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint *params);
559GL_APICALL void GL_APIENTRY glGetUniformuivRobustANGLE (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLuint *params);
560GL_APICALL void GL_APIENTRY glGetActiveUniformBlockivRobustANGLE (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
561GL_APICALL void GL_APIENTRY glGetInteger64vRobustANGLE (GLenum pname, GLsizei bufSize, GLsizei *length, GLint64 *data);
562GL_APICALL void GL_APIENTRY glGetInteger64i_vRobustANGLE (GLenum target, GLuint index, GLsizei bufSize, GLsizei *length, GLint64 *data);
563GL_APICALL void GL_APIENTRY glGetBufferParameteri64vRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint64 *params);
564GL_APICALL void GL_APIENTRY glSamplerParameterivRobustANGLE (GLuint sampler, GLenum pname, GLsizei bufSize, const GLint *param);
565GL_APICALL void GL_APIENTRY glSamplerParameterfvRobustANGLE (GLuint sampler, GLenum pname, GLsizei bufSize, const GLfloat *param);
566GL_APICALL void GL_APIENTRY glGetSamplerParameterivRobustANGLE (GLuint sampler, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
567GL_APICALL void GL_APIENTRY glGetSamplerParameterfvRobustANGLE (GLuint sampler, GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params);
568GL_APICALL void GL_APIENTRY glGetFramebufferParameterivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
569GL_APICALL void GL_APIENTRY glGetProgramInterfaceivRobustANGLE (GLuint program, GLenum programInterface, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
570GL_APICALL void GL_APIENTRY glGetBooleani_vRobustANGLE (GLenum target, GLuint index, GLsizei bufSize, GLsizei *length, GLboolean *data);
571GL_APICALL void GL_APIENTRY glGetMultisamplefvRobustANGLE (GLenum pname, GLuint index, GLsizei bufSize, GLsizei *length, GLfloat *val);
572GL_APICALL void GL_APIENTRY glGetTexLevelParameterivRobustANGLE (GLenum target, GLint level, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
573GL_APICALL void GL_APIENTRY glGetTexLevelParameterfvRobustANGLE (GLenum target, GLint level, GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params);
574GL_APICALL void GL_APIENTRY glGetPointervRobustANGLERobustANGLE (GLenum pname, GLsizei bufSize, GLsizei *length, void **params);
575GL_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);
576GL_APICALL void GL_APIENTRY glGetnUniformfvRobustANGLE (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLfloat *params);
577GL_APICALL void GL_APIENTRY glGetnUniformivRobustANGLE (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLint *params);
578GL_APICALL void GL_APIENTRY glGetnUniformuivRobustANGLE (GLuint program, GLint location, GLsizei bufSize, GLsizei *length, GLuint *params);
579GL_APICALL void GL_APIENTRY glTexParameterIivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, const GLint *params);
580GL_APICALL void GL_APIENTRY glTexParameterIuivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, const GLuint *params);
581GL_APICALL void GL_APIENTRY glGetTexParameterIivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
582GL_APICALL void GL_APIENTRY glGetTexParameterIuivRobustANGLE (GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint *params);
583GL_APICALL void GL_APIENTRY glSamplerParameterIivRobustANGLE (GLuint sampler, GLenum pname, GLsizei bufSize, const GLint *param);
584GL_APICALL void GL_APIENTRY glSamplerParameterIuivRobustANGLE (GLuint sampler, GLenum pname, GLsizei bufSize, const GLuint *param);
585GL_APICALL void GL_APIENTRY glGetSamplerParameterIivRobustANGLE (GLuint sampler, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
586GL_APICALL void GL_APIENTRY glGetSamplerParameterIuivRobustANGLE (GLuint sampler, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint *params);
587GL_APICALL void GL_APIENTRY glGetQueryObjectivRobustANGLE(GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
588GL_APICALL void GL_APIENTRY glGetQueryObjecti64vRobustANGLE(GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, GLint64 *params);
589GL_APICALL void GL_APIENTRY glGetQueryObjectui64vRobustANGLE(GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, GLuint64 *params);
590#endif
591#endif /* GL_ANGLE_robust_client_memory */
592
593#ifndef GL_ANGLE_program_cache_control
594#define GL_ANGLE_program_cache_control 1
595#define GL_PROGRAM_CACHE_ENABLED_ANGLE 0x93AC
596#endif /* GL_ANGLE_program_cache_control */
597
598#ifndef GL_ANGLE_texture_rectangle
599#define GL_ANGLE_texture_rectangle 1
600#define GL_MAX_RECTANGLE_TEXTURE_SIZE_ANGLE 0x84F8
601#define GL_TEXTURE_RECTANGLE_ANGLE 0x84F5
602#define GL_TEXTURE_BINDING_RECTANGLE_ANGLE 0x84F6
603#define GL_SAMPLER_2D_RECT_ANGLE 0x8B63
604#endif /* GL_ANGLE_texture_rectangle */
605
606#ifndef GL_ANGLE_texture_multisample
607#define GL_ANGLE_texture_multisample 1
608#define GL_SAMPLE_POSITION_ANGLE 0x8E50
609#define GL_SAMPLE_MASK_ANGLE 0x8E51
610#define GL_SAMPLE_MASK_VALUE_ANGLE 0x8E52
611#define GL_TEXTURE_2D_MULTISAMPLE_ANGLE 0x9100
612#define GL_MAX_SAMPLE_MASK_WORDS_ANGLE 0x8E59
613#define GL_MAX_COLOR_TEXTURE_SAMPLES_ANGLE 0x910E
614#define GL_MAX_DEPTH_TEXTURE_SAMPLES_ANGLE 0x910F
615#define GL_MAX_INTEGER_SAMPLES_ANGLE 0x9110
616#define GL_TEXTURE_BINDING_2D_MULTISAMPLE_ANGLE 0x9104
617#define GL_TEXTURE_SAMPLES_ANGLE 0x9106
618#define GL_TEXTURE_FIXED_SAMPLE_LOCATIONS_ANGLE 0x9107
619typedef void(GL_APIENTRYP PFNGLTEXSTORAGE2DMULTISAMPLEANGLEPROC)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
620typedef void(GL_APIENTRYP PFNGLGETTEXLEVELPARAMETERFVANGLEPROC)(GLenum target, GLint level, GLenum pname, GLfloat *params);
621typedef void(GL_APIENTRYP PFNGLGETTEXLEVELPARAMETERIVANGLEPROC)(GLenum target, GLint level, GLenum pname, GLint *params);
622typedef void (GL_APIENTRYP PFNGLGETMULTISAMPLEFVANGLEPROC)(GLenum pname, GLuint index, GLfloat *val);
623typedef void (GL_APIENTRYP PFNGLSAMPLEMASKIANGLEPROC)(GLuint maskNumber, GLbitfield mask);
624#ifdef GL_GLEXT_PROTOTYPES
625GL_APICALL void GL_APIENTRY glTexStorage2DMultisampleANGLE(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
626GL_APICALL void GL_APIENTRY glGetTexLevelParameterfvANGLE(GLenum target, GLint level, GLenum pname, GLfloat *params);
627GL_APICALL void GL_APIENTRY glGetTexLevelParameterivANGLE(GLenum target, GLint level, GLenum pname, GLint *params);
628GL_APICALL void GL_APIENTRY glGetMultisamplefvANGLE(GLenum pname, GLuint index, GLfloat *val);
629GL_APICALL void GL_APIENTRY glSampleMaskiANGLE(GLuint maskNumber, GLbitfield mask);
630#endif
631#endif // !GL_ANGLE_texture_multisample
632
633#ifndef GL_ANGLE_explicit_context
634#define GL_ANGLE_explicit_context
635typedef void *GLeglContext;
636#include "gl2ext_explicit_context_autogen.inc"
637#include "../GLES3/gl3ext_explicit_context_autogen.inc"
638#include "../GLES3/gl31ext_explicit_context_autogen.inc"
639#endif /* GL_ANGLE_explicit_context */
640
641#ifndef GL_ANGLE_multi_draw
642#define GL_ANGLE_multi_draw 1
643typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSANGLEPROC) (GLenum mode, const GLint *firsts, const GLsizei *counts, GLsizei drawcount);
644typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSINSTANCEDANGLEPROC) (GLenum mode, const GLint *firsts, const GLsizei *counts, const GLsizei *instanceCounts, GLsizei drawcount);
645typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSANGLEPROC) (GLenum mode, const GLsizei *counts, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
646typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSINSTANCEDANGLEPROC) (GLenum mode, const GLsizei *counts, GLenum type, const GLvoid* const *indices, const GLsizei *instanceCounts, GLsizei drawcount);
647#ifdef GL_GLEXT_PROTOTYPES
648GL_APICALL void GL_APIENTRY glMultiDrawArraysANGLE (GLenum mode, const GLint *firsts, const GLsizei *counts, GLsizei drawcount);
649GL_APICALL void GL_APIENTRY glMultiDrawArraysInstancedANGLE (GLenum mode, const GLint *firsts, const GLsizei *counts, const GLsizei *instanceCounts, GLsizei drawcount);
650GL_APICALL void GL_APIENTRY glMultiDrawElementsANGLE (GLenum mode, const GLsizei *counts, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
651GL_APICALL void GL_APIENTRY glMultiDrawElementsInstancedANGLE (GLenum mode, const GLsizei *counts, GLenum type, const GLvoid* const *indices, const GLsizei *instanceCounts, GLsizei drawcount);
652#endif
653#endif /* GL_ANGLE_multi_draw */
654
655#ifndef GL_CHROMIUM_bind_uniform_location
656#define GL_CHROMIUM_bind_uniform_location 1
657typedef void (GL_APIENTRYP PFNGLBINDUNIFORMLOCATIONCHROMIUMPROC)(GLuint program, GLint location, const GLchar *name);
658#ifdef GL_GLEXT_PROTOTYPES
659GL_APICALL void GL_APIENTRY glBindUniformLocationCHROMIUM(GLuint program, GLint location, const GLchar *name);
660#endif
661#endif /* GL_CHROMIUM_bind_uniform_location */
662
663/* GL_CHROMIUM_lose_context */
664#ifndef GL_CHROMIUM_lose_context
665#define GL_CHROMIUM_lose_context 1
666#ifdef GL_GLEXT_PROTOTYPES
667GL_APICALL void GL_APIENTRY glLoseContextCHROMIUM(GLenum current, GLenum other);
668#endif
669typedef void (GL_APIENTRYP PFNGLLOSECONTEXTCHROMIUMPROC) (GLenum current, GLenum other);
670#endif /* GL_CHROMIUM_lose_context */
671
672// clang-format on
673
674#endif // INCLUDE_GLES2_GL2EXT_ANGLE_H_
675