1 // GENERATED FILE - DO NOT EDIT.
2 // Generated by generate_entry_points.py using data from gl.xml.
3 //
4 // Copyright 2020 The ANGLE Project Authors. All rights reserved.
5 // Use of this source code is governed by a BSD-style license that can be
6 // found in the LICENSE file.
7 //
8 // entry_points_gl_4_autogen.h:
9 //   Defines the Desktop GL 4.x entry points.
10 
11 #ifndef LIBGL_ENTRY_POINTS_GL_4_AUTOGEN_H_
12 #define LIBGL_ENTRY_POINTS_GL_4_AUTOGEN_H_
13 
14 #include <export.h>
15 #include "angle_gl.h"
16 
17 extern "C" {
18 
19 // GL 4.0
20 ANGLE_EXPORT void GL_APIENTRY GL_BeginQueryIndexed(GLenum target, GLuint index, GLuint id);
21 ANGLE_EXPORT void GL_APIENTRY GL_BindTransformFeedback(GLenum target, GLuint id);
22 ANGLE_EXPORT void GL_APIENTRY GL_BlendEquationSeparatei(GLuint buf,
23                                                         GLenum modeRGB,
24                                                         GLenum modeAlpha);
25 ANGLE_EXPORT void GL_APIENTRY GL_BlendEquationi(GLuint buf, GLenum mode);
26 ANGLE_EXPORT void GL_APIENTRY
27 GL_BlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
28 ANGLE_EXPORT void GL_APIENTRY GL_BlendFunci(GLuint buf, GLenum src, GLenum dst);
29 ANGLE_EXPORT void GL_APIENTRY GL_DeleteTransformFeedbacks(GLsizei n, const GLuint *ids);
30 ANGLE_EXPORT void GL_APIENTRY GL_DrawArraysIndirect(GLenum mode, const void *indirect);
31 ANGLE_EXPORT void GL_APIENTRY GL_DrawElementsIndirect(GLenum mode,
32                                                       GLenum type,
33                                                       const void *indirect);
34 ANGLE_EXPORT void GL_APIENTRY GL_DrawTransformFeedback(GLenum mode, GLuint id);
35 ANGLE_EXPORT void GL_APIENTRY GL_DrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream);
36 ANGLE_EXPORT void GL_APIENTRY GL_EndQueryIndexed(GLenum target, GLuint index);
37 ANGLE_EXPORT void GL_APIENTRY GL_GenTransformFeedbacks(GLsizei n, GLuint *ids);
38 ANGLE_EXPORT void GL_APIENTRY GL_GetActiveSubroutineName(GLuint program,
39                                                          GLenum shadertype,
40                                                          GLuint index,
41                                                          GLsizei bufsize,
42                                                          GLsizei *length,
43                                                          GLchar *name);
44 ANGLE_EXPORT void GL_APIENTRY GL_GetActiveSubroutineUniformName(GLuint program,
45                                                                 GLenum shadertype,
46                                                                 GLuint index,
47                                                                 GLsizei bufsize,
48                                                                 GLsizei *length,
49                                                                 GLchar *name);
50 ANGLE_EXPORT void GL_APIENTRY GL_GetActiveSubroutineUniformiv(GLuint program,
51                                                               GLenum shadertype,
52                                                               GLuint index,
53                                                               GLenum pname,
54                                                               GLint *values);
55 ANGLE_EXPORT void GL_APIENTRY GL_GetProgramStageiv(GLuint program,
56                                                    GLenum shadertype,
57                                                    GLenum pname,
58                                                    GLint *values);
59 ANGLE_EXPORT void GL_APIENTRY GL_GetQueryIndexediv(GLenum target,
60                                                    GLuint index,
61                                                    GLenum pname,
62                                                    GLint *params);
63 ANGLE_EXPORT GLuint GL_APIENTRY GL_GetSubroutineIndex(GLuint program,
64                                                       GLenum shadertype,
65                                                       const GLchar *name);
66 ANGLE_EXPORT GLint GL_APIENTRY GL_GetSubroutineUniformLocation(GLuint program,
67                                                                GLenum shadertype,
68                                                                const GLchar *name);
69 ANGLE_EXPORT void GL_APIENTRY GL_GetUniformSubroutineuiv(GLenum shadertype,
70                                                          GLint location,
71                                                          GLuint *params);
72 ANGLE_EXPORT void GL_APIENTRY GL_GetUniformdv(GLuint program, GLint location, GLdouble *params);
73 ANGLE_EXPORT GLboolean GL_APIENTRY GL_IsTransformFeedback(GLuint id);
74 ANGLE_EXPORT void GL_APIENTRY GL_MinSampleShading(GLfloat value);
75 ANGLE_EXPORT void GL_APIENTRY GL_PatchParameterfv(GLenum pname, const GLfloat *values);
76 ANGLE_EXPORT void GL_APIENTRY GL_PatchParameteri(GLenum pname, GLint value);
77 ANGLE_EXPORT void GL_APIENTRY GL_PauseTransformFeedback();
78 ANGLE_EXPORT void GL_APIENTRY GL_ResumeTransformFeedback();
79 ANGLE_EXPORT void GL_APIENTRY GL_Uniform1d(GLint location, GLdouble x);
80 ANGLE_EXPORT void GL_APIENTRY GL_Uniform1dv(GLint location, GLsizei count, const GLdouble *value);
81 ANGLE_EXPORT void GL_APIENTRY GL_Uniform2d(GLint location, GLdouble x, GLdouble y);
82 ANGLE_EXPORT void GL_APIENTRY GL_Uniform2dv(GLint location, GLsizei count, const GLdouble *value);
83 ANGLE_EXPORT void GL_APIENTRY GL_Uniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z);
84 ANGLE_EXPORT void GL_APIENTRY GL_Uniform3dv(GLint location, GLsizei count, const GLdouble *value);
85 ANGLE_EXPORT void GL_APIENTRY
86 GL_Uniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
87 ANGLE_EXPORT void GL_APIENTRY GL_Uniform4dv(GLint location, GLsizei count, const GLdouble *value);
88 ANGLE_EXPORT void GL_APIENTRY GL_UniformMatrix2dv(GLint location,
89                                                   GLsizei count,
90                                                   GLboolean transpose,
91                                                   const GLdouble *value);
92 ANGLE_EXPORT void GL_APIENTRY GL_UniformMatrix2x3dv(GLint location,
93                                                     GLsizei count,
94                                                     GLboolean transpose,
95                                                     const GLdouble *value);
96 ANGLE_EXPORT void GL_APIENTRY GL_UniformMatrix2x4dv(GLint location,
97                                                     GLsizei count,
98                                                     GLboolean transpose,
99                                                     const GLdouble *value);
100 ANGLE_EXPORT void GL_APIENTRY GL_UniformMatrix3dv(GLint location,
101                                                   GLsizei count,
102                                                   GLboolean transpose,
103                                                   const GLdouble *value);
104 ANGLE_EXPORT void GL_APIENTRY GL_UniformMatrix3x2dv(GLint location,
105                                                     GLsizei count,
106                                                     GLboolean transpose,
107                                                     const GLdouble *value);
108 ANGLE_EXPORT void GL_APIENTRY GL_UniformMatrix3x4dv(GLint location,
109                                                     GLsizei count,
110                                                     GLboolean transpose,
111                                                     const GLdouble *value);
112 ANGLE_EXPORT void GL_APIENTRY GL_UniformMatrix4dv(GLint location,
113                                                   GLsizei count,
114                                                   GLboolean transpose,
115                                                   const GLdouble *value);
116 ANGLE_EXPORT void GL_APIENTRY GL_UniformMatrix4x2dv(GLint location,
117                                                     GLsizei count,
118                                                     GLboolean transpose,
119                                                     const GLdouble *value);
120 ANGLE_EXPORT void GL_APIENTRY GL_UniformMatrix4x3dv(GLint location,
121                                                     GLsizei count,
122                                                     GLboolean transpose,
123                                                     const GLdouble *value);
124 ANGLE_EXPORT void GL_APIENTRY GL_UniformSubroutinesuiv(GLenum shadertype,
125                                                        GLsizei count,
126                                                        const GLuint *indices);
127 
128 // GL 4.1
129 ANGLE_EXPORT void GL_APIENTRY GL_ActiveShaderProgram(GLuint pipeline, GLuint program);
130 ANGLE_EXPORT void GL_APIENTRY GL_BindProgramPipeline(GLuint pipeline);
131 ANGLE_EXPORT void GL_APIENTRY GL_ClearDepthf(GLfloat d);
132 ANGLE_EXPORT GLuint GL_APIENTRY GL_CreateShaderProgramv(GLenum type,
133                                                         GLsizei count,
134                                                         const GLchar *const *strings);
135 ANGLE_EXPORT void GL_APIENTRY GL_DeleteProgramPipelines(GLsizei n, const GLuint *pipelines);
136 ANGLE_EXPORT void GL_APIENTRY GL_DepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v);
137 ANGLE_EXPORT void GL_APIENTRY GL_DepthRangeIndexed(GLuint index, GLdouble n, GLdouble f);
138 ANGLE_EXPORT void GL_APIENTRY GL_DepthRangef(GLfloat n, GLfloat f);
139 ANGLE_EXPORT void GL_APIENTRY GL_GenProgramPipelines(GLsizei n, GLuint *pipelines);
140 ANGLE_EXPORT void GL_APIENTRY GL_GetDoublei_v(GLenum target, GLuint index, GLdouble *data);
141 ANGLE_EXPORT void GL_APIENTRY GL_GetFloati_v(GLenum target, GLuint index, GLfloat *data);
142 ANGLE_EXPORT void GL_APIENTRY GL_GetProgramBinary(GLuint program,
143                                                   GLsizei bufSize,
144                                                   GLsizei *length,
145                                                   GLenum *binaryFormat,
146                                                   void *binary);
147 ANGLE_EXPORT void GL_APIENTRY GL_GetProgramPipelineInfoLog(GLuint pipeline,
148                                                            GLsizei bufSize,
149                                                            GLsizei *length,
150                                                            GLchar *infoLog);
151 ANGLE_EXPORT void GL_APIENTRY GL_GetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params);
152 ANGLE_EXPORT void GL_APIENTRY GL_GetShaderPrecisionFormat(GLenum shadertype,
153                                                           GLenum precisiontype,
154                                                           GLint *range,
155                                                           GLint *precision);
156 ANGLE_EXPORT void GL_APIENTRY GL_GetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params);
157 ANGLE_EXPORT GLboolean GL_APIENTRY GL_IsProgramPipeline(GLuint pipeline);
158 ANGLE_EXPORT void GL_APIENTRY GL_ProgramBinary(GLuint program,
159                                                GLenum binaryFormat,
160                                                const void *binary,
161                                                GLsizei length);
162 ANGLE_EXPORT void GL_APIENTRY GL_ProgramParameteri(GLuint program, GLenum pname, GLint value);
163 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform1d(GLuint program, GLint location, GLdouble v0);
164 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform1dv(GLuint program,
165                                                    GLint location,
166                                                    GLsizei count,
167                                                    const GLdouble *value);
168 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform1f(GLuint program, GLint location, GLfloat v0);
169 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform1fv(GLuint program,
170                                                    GLint location,
171                                                    GLsizei count,
172                                                    const GLfloat *value);
173 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform1i(GLuint program, GLint location, GLint v0);
174 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform1iv(GLuint program,
175                                                    GLint location,
176                                                    GLsizei count,
177                                                    const GLint *value);
178 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform1ui(GLuint program, GLint location, GLuint v0);
179 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform1uiv(GLuint program,
180                                                     GLint location,
181                                                     GLsizei count,
182                                                     const GLuint *value);
183 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform2d(GLuint program,
184                                                   GLint location,
185                                                   GLdouble v0,
186                                                   GLdouble v1);
187 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform2dv(GLuint program,
188                                                    GLint location,
189                                                    GLsizei count,
190                                                    const GLdouble *value);
191 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform2f(GLuint program,
192                                                   GLint location,
193                                                   GLfloat v0,
194                                                   GLfloat v1);
195 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform2fv(GLuint program,
196                                                    GLint location,
197                                                    GLsizei count,
198                                                    const GLfloat *value);
199 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform2i(GLuint program,
200                                                   GLint location,
201                                                   GLint v0,
202                                                   GLint v1);
203 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform2iv(GLuint program,
204                                                    GLint location,
205                                                    GLsizei count,
206                                                    const GLint *value);
207 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform2ui(GLuint program,
208                                                    GLint location,
209                                                    GLuint v0,
210                                                    GLuint v1);
211 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform2uiv(GLuint program,
212                                                     GLint location,
213                                                     GLsizei count,
214                                                     const GLuint *value);
215 ANGLE_EXPORT void GL_APIENTRY
216 GL_ProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2);
217 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform3dv(GLuint program,
218                                                    GLint location,
219                                                    GLsizei count,
220                                                    const GLdouble *value);
221 ANGLE_EXPORT void GL_APIENTRY
222 GL_ProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
223 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform3fv(GLuint program,
224                                                    GLint location,
225                                                    GLsizei count,
226                                                    const GLfloat *value);
227 ANGLE_EXPORT void GL_APIENTRY
228 GL_ProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
229 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform3iv(GLuint program,
230                                                    GLint location,
231                                                    GLsizei count,
232                                                    const GLint *value);
233 ANGLE_EXPORT void GL_APIENTRY
234 GL_ProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
235 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform3uiv(GLuint program,
236                                                     GLint location,
237                                                     GLsizei count,
238                                                     const GLuint *value);
239 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform4d(GLuint program,
240                                                   GLint location,
241                                                   GLdouble v0,
242                                                   GLdouble v1,
243                                                   GLdouble v2,
244                                                   GLdouble v3);
245 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform4dv(GLuint program,
246                                                    GLint location,
247                                                    GLsizei count,
248                                                    const GLdouble *value);
249 ANGLE_EXPORT void GL_APIENTRY
250 GL_ProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
251 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform4fv(GLuint program,
252                                                    GLint location,
253                                                    GLsizei count,
254                                                    const GLfloat *value);
255 ANGLE_EXPORT void GL_APIENTRY
256 GL_ProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
257 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform4iv(GLuint program,
258                                                    GLint location,
259                                                    GLsizei count,
260                                                    const GLint *value);
261 ANGLE_EXPORT void GL_APIENTRY
262 GL_ProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
263 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniform4uiv(GLuint program,
264                                                     GLint location,
265                                                     GLsizei count,
266                                                     const GLuint *value);
267 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniformMatrix2dv(GLuint program,
268                                                          GLint location,
269                                                          GLsizei count,
270                                                          GLboolean transpose,
271                                                          const GLdouble *value);
272 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniformMatrix2fv(GLuint program,
273                                                          GLint location,
274                                                          GLsizei count,
275                                                          GLboolean transpose,
276                                                          const GLfloat *value);
277 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniformMatrix2x3dv(GLuint program,
278                                                            GLint location,
279                                                            GLsizei count,
280                                                            GLboolean transpose,
281                                                            const GLdouble *value);
282 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniformMatrix2x3fv(GLuint program,
283                                                            GLint location,
284                                                            GLsizei count,
285                                                            GLboolean transpose,
286                                                            const GLfloat *value);
287 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniformMatrix2x4dv(GLuint program,
288                                                            GLint location,
289                                                            GLsizei count,
290                                                            GLboolean transpose,
291                                                            const GLdouble *value);
292 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniformMatrix2x4fv(GLuint program,
293                                                            GLint location,
294                                                            GLsizei count,
295                                                            GLboolean transpose,
296                                                            const GLfloat *value);
297 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniformMatrix3dv(GLuint program,
298                                                          GLint location,
299                                                          GLsizei count,
300                                                          GLboolean transpose,
301                                                          const GLdouble *value);
302 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniformMatrix3fv(GLuint program,
303                                                          GLint location,
304                                                          GLsizei count,
305                                                          GLboolean transpose,
306                                                          const GLfloat *value);
307 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniformMatrix3x2dv(GLuint program,
308                                                            GLint location,
309                                                            GLsizei count,
310                                                            GLboolean transpose,
311                                                            const GLdouble *value);
312 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniformMatrix3x2fv(GLuint program,
313                                                            GLint location,
314                                                            GLsizei count,
315                                                            GLboolean transpose,
316                                                            const GLfloat *value);
317 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniformMatrix3x4dv(GLuint program,
318                                                            GLint location,
319                                                            GLsizei count,
320                                                            GLboolean transpose,
321                                                            const GLdouble *value);
322 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniformMatrix3x4fv(GLuint program,
323                                                            GLint location,
324                                                            GLsizei count,
325                                                            GLboolean transpose,
326                                                            const GLfloat *value);
327 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniformMatrix4dv(GLuint program,
328                                                          GLint location,
329                                                          GLsizei count,
330                                                          GLboolean transpose,
331                                                          const GLdouble *value);
332 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniformMatrix4fv(GLuint program,
333                                                          GLint location,
334                                                          GLsizei count,
335                                                          GLboolean transpose,
336                                                          const GLfloat *value);
337 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniformMatrix4x2dv(GLuint program,
338                                                            GLint location,
339                                                            GLsizei count,
340                                                            GLboolean transpose,
341                                                            const GLdouble *value);
342 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniformMatrix4x2fv(GLuint program,
343                                                            GLint location,
344                                                            GLsizei count,
345                                                            GLboolean transpose,
346                                                            const GLfloat *value);
347 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniformMatrix4x3dv(GLuint program,
348                                                            GLint location,
349                                                            GLsizei count,
350                                                            GLboolean transpose,
351                                                            const GLdouble *value);
352 ANGLE_EXPORT void GL_APIENTRY GL_ProgramUniformMatrix4x3fv(GLuint program,
353                                                            GLint location,
354                                                            GLsizei count,
355                                                            GLboolean transpose,
356                                                            const GLfloat *value);
357 ANGLE_EXPORT void GL_APIENTRY GL_ReleaseShaderCompiler();
358 ANGLE_EXPORT void GL_APIENTRY GL_ScissorArrayv(GLuint first, GLsizei count, const GLint *v);
359 ANGLE_EXPORT void GL_APIENTRY
360 GL_ScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
361 ANGLE_EXPORT void GL_APIENTRY GL_ScissorIndexedv(GLuint index, const GLint *v);
362 ANGLE_EXPORT void GL_APIENTRY GL_ShaderBinary(GLsizei count,
363                                               const GLuint *shaders,
364                                               GLenum binaryformat,
365                                               const void *binary,
366                                               GLsizei length);
367 ANGLE_EXPORT void GL_APIENTRY GL_UseProgramStages(GLuint pipeline,
368                                                   GLbitfield stages,
369                                                   GLuint program);
370 ANGLE_EXPORT void GL_APIENTRY GL_ValidateProgramPipeline(GLuint pipeline);
371 ANGLE_EXPORT void GL_APIENTRY GL_VertexAttribL1d(GLuint index, GLdouble x);
372 ANGLE_EXPORT void GL_APIENTRY GL_VertexAttribL1dv(GLuint index, const GLdouble *v);
373 ANGLE_EXPORT void GL_APIENTRY GL_VertexAttribL2d(GLuint index, GLdouble x, GLdouble y);
374 ANGLE_EXPORT void GL_APIENTRY GL_VertexAttribL2dv(GLuint index, const GLdouble *v);
375 ANGLE_EXPORT void GL_APIENTRY GL_VertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
376 ANGLE_EXPORT void GL_APIENTRY GL_VertexAttribL3dv(GLuint index, const GLdouble *v);
377 ANGLE_EXPORT void GL_APIENTRY
378 GL_VertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
379 ANGLE_EXPORT void GL_APIENTRY GL_VertexAttribL4dv(GLuint index, const GLdouble *v);
380 ANGLE_EXPORT void GL_APIENTRY
381 GL_VertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer);
382 ANGLE_EXPORT void GL_APIENTRY GL_ViewportArrayv(GLuint first, GLsizei count, const GLfloat *v);
383 ANGLE_EXPORT void GL_APIENTRY
384 GL_ViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
385 ANGLE_EXPORT void GL_APIENTRY GL_ViewportIndexedfv(GLuint index, const GLfloat *v);
386 
387 // GL 4.2
388 ANGLE_EXPORT void GL_APIENTRY GL_BindImageTexture(GLuint unit,
389                                                   GLuint texture,
390                                                   GLint level,
391                                                   GLboolean layered,
392                                                   GLint layer,
393                                                   GLenum access,
394                                                   GLenum format);
395 ANGLE_EXPORT void GL_APIENTRY GL_DrawArraysInstancedBaseInstance(GLenum mode,
396                                                                  GLint first,
397                                                                  GLsizei count,
398                                                                  GLsizei instancecount,
399                                                                  GLuint baseinstance);
400 ANGLE_EXPORT void GL_APIENTRY GL_DrawElementsInstancedBaseInstance(GLenum mode,
401                                                                    GLsizei count,
402                                                                    GLenum type,
403                                                                    const void *indices,
404                                                                    GLsizei instancecount,
405                                                                    GLuint baseinstance);
406 ANGLE_EXPORT void GL_APIENTRY GL_DrawElementsInstancedBaseVertexBaseInstance(GLenum mode,
407                                                                              GLsizei count,
408                                                                              GLenum type,
409                                                                              const void *indices,
410                                                                              GLsizei instancecount,
411                                                                              GLint basevertex,
412                                                                              GLuint baseinstance);
413 ANGLE_EXPORT void GL_APIENTRY GL_DrawTransformFeedbackInstanced(GLenum mode,
414                                                                 GLuint id,
415                                                                 GLsizei instancecount);
416 ANGLE_EXPORT void GL_APIENTRY GL_DrawTransformFeedbackStreamInstanced(GLenum mode,
417                                                                       GLuint id,
418                                                                       GLuint stream,
419                                                                       GLsizei instancecount);
420 ANGLE_EXPORT void GL_APIENTRY GL_GetActiveAtomicCounterBufferiv(GLuint program,
421                                                                 GLuint bufferIndex,
422                                                                 GLenum pname,
423                                                                 GLint *params);
424 ANGLE_EXPORT void GL_APIENTRY GL_GetInternalformativ(GLenum target,
425                                                      GLenum internalformat,
426                                                      GLenum pname,
427                                                      GLsizei bufSize,
428                                                      GLint *params);
429 ANGLE_EXPORT void GL_APIENTRY GL_MemoryBarrier(GLbitfield barriers);
430 ANGLE_EXPORT void GL_APIENTRY GL_TexStorage1D(GLenum target,
431                                               GLsizei levels,
432                                               GLenum internalformat,
433                                               GLsizei width);
434 ANGLE_EXPORT void GL_APIENTRY GL_TexStorage2D(GLenum target,
435                                               GLsizei levels,
436                                               GLenum internalformat,
437                                               GLsizei width,
438                                               GLsizei height);
439 ANGLE_EXPORT void GL_APIENTRY GL_TexStorage3D(GLenum target,
440                                               GLsizei levels,
441                                               GLenum internalformat,
442                                               GLsizei width,
443                                               GLsizei height,
444                                               GLsizei depth);
445 
446 // GL 4.3
447 ANGLE_EXPORT void GL_APIENTRY GL_BindVertexBuffer(GLuint bindingindex,
448                                                   GLuint buffer,
449                                                   GLintptr offset,
450                                                   GLsizei stride);
451 ANGLE_EXPORT void GL_APIENTRY GL_ClearBufferData(GLenum target,
452                                                  GLenum internalformat,
453                                                  GLenum format,
454                                                  GLenum type,
455                                                  const void *data);
456 ANGLE_EXPORT void GL_APIENTRY GL_ClearBufferSubData(GLenum target,
457                                                     GLenum internalformat,
458                                                     GLintptr offset,
459                                                     GLsizeiptr size,
460                                                     GLenum format,
461                                                     GLenum type,
462                                                     const void *data);
463 ANGLE_EXPORT void GL_APIENTRY GL_CopyImageSubData(GLuint srcName,
464                                                   GLenum srcTarget,
465                                                   GLint srcLevel,
466                                                   GLint srcX,
467                                                   GLint srcY,
468                                                   GLint srcZ,
469                                                   GLuint dstName,
470                                                   GLenum dstTarget,
471                                                   GLint dstLevel,
472                                                   GLint dstX,
473                                                   GLint dstY,
474                                                   GLint dstZ,
475                                                   GLsizei srcWidth,
476                                                   GLsizei srcHeight,
477                                                   GLsizei srcDepth);
478 ANGLE_EXPORT void GL_APIENTRY GL_DebugMessageCallback(GLDEBUGPROC callback, const void *userParam);
479 ANGLE_EXPORT void GL_APIENTRY GL_DebugMessageControl(GLenum source,
480                                                      GLenum type,
481                                                      GLenum severity,
482                                                      GLsizei count,
483                                                      const GLuint *ids,
484                                                      GLboolean enabled);
485 ANGLE_EXPORT void GL_APIENTRY GL_DebugMessageInsert(GLenum source,
486                                                     GLenum type,
487                                                     GLuint id,
488                                                     GLenum severity,
489                                                     GLsizei length,
490                                                     const GLchar *buf);
491 ANGLE_EXPORT void GL_APIENTRY GL_DispatchCompute(GLuint num_groups_x,
492                                                  GLuint num_groups_y,
493                                                  GLuint num_groups_z);
494 ANGLE_EXPORT void GL_APIENTRY GL_DispatchComputeIndirect(GLintptr indirect);
495 ANGLE_EXPORT void GL_APIENTRY GL_FramebufferParameteri(GLenum target, GLenum pname, GLint param);
496 ANGLE_EXPORT GLuint GL_APIENTRY GL_GetDebugMessageLog(GLuint count,
497                                                       GLsizei bufSize,
498                                                       GLenum *sources,
499                                                       GLenum *types,
500                                                       GLuint *ids,
501                                                       GLenum *severities,
502                                                       GLsizei *lengths,
503                                                       GLchar *messageLog);
504 ANGLE_EXPORT void GL_APIENTRY GL_GetFramebufferParameteriv(GLenum target,
505                                                            GLenum pname,
506                                                            GLint *params);
507 ANGLE_EXPORT void GL_APIENTRY GL_GetInternalformati64v(GLenum target,
508                                                        GLenum internalformat,
509                                                        GLenum pname,
510                                                        GLsizei bufSize,
511                                                        GLint64 *params);
512 ANGLE_EXPORT void GL_APIENTRY
513 GL_GetObjectLabel(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
514 ANGLE_EXPORT void GL_APIENTRY GL_GetObjectPtrLabel(const void *ptr,
515                                                    GLsizei bufSize,
516                                                    GLsizei *length,
517                                                    GLchar *label);
518 ANGLE_EXPORT void GL_APIENTRY GL_GetProgramInterfaceiv(GLuint program,
519                                                        GLenum programInterface,
520                                                        GLenum pname,
521                                                        GLint *params);
522 ANGLE_EXPORT GLuint GL_APIENTRY GL_GetProgramResourceIndex(GLuint program,
523                                                            GLenum programInterface,
524                                                            const GLchar *name);
525 ANGLE_EXPORT GLint GL_APIENTRY GL_GetProgramResourceLocation(GLuint program,
526                                                              GLenum programInterface,
527                                                              const GLchar *name);
528 ANGLE_EXPORT GLint GL_APIENTRY GL_GetProgramResourceLocationIndex(GLuint program,
529                                                                   GLenum programInterface,
530                                                                   const GLchar *name);
531 ANGLE_EXPORT void GL_APIENTRY GL_GetProgramResourceName(GLuint program,
532                                                         GLenum programInterface,
533                                                         GLuint index,
534                                                         GLsizei bufSize,
535                                                         GLsizei *length,
536                                                         GLchar *name);
537 ANGLE_EXPORT void GL_APIENTRY GL_GetProgramResourceiv(GLuint program,
538                                                       GLenum programInterface,
539                                                       GLuint index,
540                                                       GLsizei propCount,
541                                                       const GLenum *props,
542                                                       GLsizei bufSize,
543                                                       GLsizei *length,
544                                                       GLint *params);
545 ANGLE_EXPORT void GL_APIENTRY GL_InvalidateBufferData(GLuint buffer);
546 ANGLE_EXPORT void GL_APIENTRY GL_InvalidateBufferSubData(GLuint buffer,
547                                                          GLintptr offset,
548                                                          GLsizeiptr length);
549 ANGLE_EXPORT void GL_APIENTRY GL_InvalidateFramebuffer(GLenum target,
550                                                        GLsizei numAttachments,
551                                                        const GLenum *attachments);
552 ANGLE_EXPORT void GL_APIENTRY GL_InvalidateSubFramebuffer(GLenum target,
553                                                           GLsizei numAttachments,
554                                                           const GLenum *attachments,
555                                                           GLint x,
556                                                           GLint y,
557                                                           GLsizei width,
558                                                           GLsizei height);
559 ANGLE_EXPORT void GL_APIENTRY GL_InvalidateTexImage(GLuint texture, GLint level);
560 ANGLE_EXPORT void GL_APIENTRY GL_InvalidateTexSubImage(GLuint texture,
561                                                        GLint level,
562                                                        GLint xoffset,
563                                                        GLint yoffset,
564                                                        GLint zoffset,
565                                                        GLsizei width,
566                                                        GLsizei height,
567                                                        GLsizei depth);
568 ANGLE_EXPORT void GL_APIENTRY GL_MultiDrawArraysIndirect(GLenum mode,
569                                                          const void *indirect,
570                                                          GLsizei drawcount,
571                                                          GLsizei stride);
572 ANGLE_EXPORT void GL_APIENTRY GL_MultiDrawElementsIndirect(GLenum mode,
573                                                            GLenum type,
574                                                            const void *indirect,
575                                                            GLsizei drawcount,
576                                                            GLsizei stride);
577 ANGLE_EXPORT void GL_APIENTRY GL_ObjectLabel(GLenum identifier,
578                                              GLuint name,
579                                              GLsizei length,
580                                              const GLchar *label);
581 ANGLE_EXPORT void GL_APIENTRY GL_ObjectPtrLabel(const void *ptr,
582                                                 GLsizei length,
583                                                 const GLchar *label);
584 ANGLE_EXPORT void GL_APIENTRY GL_PopDebugGroup();
585 ANGLE_EXPORT void GL_APIENTRY GL_PushDebugGroup(GLenum source,
586                                                 GLuint id,
587                                                 GLsizei length,
588                                                 const GLchar *message);
589 ANGLE_EXPORT void GL_APIENTRY GL_ShaderStorageBlockBinding(GLuint program,
590                                                            GLuint storageBlockIndex,
591                                                            GLuint storageBlockBinding);
592 ANGLE_EXPORT void GL_APIENTRY GL_TexBufferRange(GLenum target,
593                                                 GLenum internalformat,
594                                                 GLuint buffer,
595                                                 GLintptr offset,
596                                                 GLsizeiptr size);
597 ANGLE_EXPORT void GL_APIENTRY GL_TexStorage2DMultisample(GLenum target,
598                                                          GLsizei samples,
599                                                          GLenum internalformat,
600                                                          GLsizei width,
601                                                          GLsizei height,
602                                                          GLboolean fixedsamplelocations);
603 ANGLE_EXPORT void GL_APIENTRY GL_TexStorage3DMultisample(GLenum target,
604                                                          GLsizei samples,
605                                                          GLenum internalformat,
606                                                          GLsizei width,
607                                                          GLsizei height,
608                                                          GLsizei depth,
609                                                          GLboolean fixedsamplelocations);
610 ANGLE_EXPORT void GL_APIENTRY GL_TextureView(GLuint texture,
611                                              GLenum target,
612                                              GLuint origtexture,
613                                              GLenum internalformat,
614                                              GLuint minlevel,
615                                              GLuint numlevels,
616                                              GLuint minlayer,
617                                              GLuint numlayers);
618 ANGLE_EXPORT void GL_APIENTRY GL_VertexAttribBinding(GLuint attribindex, GLuint bindingindex);
619 ANGLE_EXPORT void GL_APIENTRY GL_VertexAttribFormat(GLuint attribindex,
620                                                     GLint size,
621                                                     GLenum type,
622                                                     GLboolean normalized,
623                                                     GLuint relativeoffset);
624 ANGLE_EXPORT void GL_APIENTRY GL_VertexAttribIFormat(GLuint attribindex,
625                                                      GLint size,
626                                                      GLenum type,
627                                                      GLuint relativeoffset);
628 ANGLE_EXPORT void GL_APIENTRY GL_VertexAttribLFormat(GLuint attribindex,
629                                                      GLint size,
630                                                      GLenum type,
631                                                      GLuint relativeoffset);
632 ANGLE_EXPORT void GL_APIENTRY GL_VertexBindingDivisor(GLuint bindingindex, GLuint divisor);
633 
634 // GL 4.4
635 ANGLE_EXPORT void GL_APIENTRY GL_BindBuffersBase(GLenum target,
636                                                  GLuint first,
637                                                  GLsizei count,
638                                                  const GLuint *buffers);
639 ANGLE_EXPORT void GL_APIENTRY GL_BindBuffersRange(GLenum target,
640                                                   GLuint first,
641                                                   GLsizei count,
642                                                   const GLuint *buffers,
643                                                   const GLintptr *offsets,
644                                                   const GLsizeiptr *sizes);
645 ANGLE_EXPORT void GL_APIENTRY GL_BindImageTextures(GLuint first,
646                                                    GLsizei count,
647                                                    const GLuint *textures);
648 ANGLE_EXPORT void GL_APIENTRY GL_BindSamplers(GLuint first, GLsizei count, const GLuint *samplers);
649 ANGLE_EXPORT void GL_APIENTRY GL_BindTextures(GLuint first, GLsizei count, const GLuint *textures);
650 ANGLE_EXPORT void GL_APIENTRY GL_BindVertexBuffers(GLuint first,
651                                                    GLsizei count,
652                                                    const GLuint *buffers,
653                                                    const GLintptr *offsets,
654                                                    const GLsizei *strides);
655 ANGLE_EXPORT void GL_APIENTRY GL_BufferStorage(GLenum target,
656                                                GLsizeiptr size,
657                                                const void *data,
658                                                GLbitfield flags);
659 ANGLE_EXPORT void GL_APIENTRY
660 GL_ClearTexImage(GLuint texture, GLint level, GLenum format, GLenum type, const void *data);
661 ANGLE_EXPORT void GL_APIENTRY GL_ClearTexSubImage(GLuint texture,
662                                                   GLint level,
663                                                   GLint xoffset,
664                                                   GLint yoffset,
665                                                   GLint zoffset,
666                                                   GLsizei width,
667                                                   GLsizei height,
668                                                   GLsizei depth,
669                                                   GLenum format,
670                                                   GLenum type,
671                                                   const void *data);
672 
673 // GL 4.5
674 ANGLE_EXPORT void GL_APIENTRY GL_BindTextureUnit(GLuint unit, GLuint texture);
675 ANGLE_EXPORT void GL_APIENTRY GL_BlitNamedFramebuffer(GLuint readFramebuffer,
676                                                       GLuint drawFramebuffer,
677                                                       GLint srcX0,
678                                                       GLint srcY0,
679                                                       GLint srcX1,
680                                                       GLint srcY1,
681                                                       GLint dstX0,
682                                                       GLint dstY0,
683                                                       GLint dstX1,
684                                                       GLint dstY1,
685                                                       GLbitfield mask,
686                                                       GLenum filter);
687 ANGLE_EXPORT GLenum GL_APIENTRY GL_CheckNamedFramebufferStatus(GLuint framebuffer, GLenum target);
688 ANGLE_EXPORT void GL_APIENTRY GL_ClearNamedBufferData(GLuint buffer,
689                                                       GLenum internalformat,
690                                                       GLenum format,
691                                                       GLenum type,
692                                                       const void *data);
693 ANGLE_EXPORT void GL_APIENTRY GL_ClearNamedBufferSubData(GLuint buffer,
694                                                          GLenum internalformat,
695                                                          GLintptr offset,
696                                                          GLsizeiptr size,
697                                                          GLenum format,
698                                                          GLenum type,
699                                                          const void *data);
700 ANGLE_EXPORT void GL_APIENTRY GL_ClearNamedFramebufferfi(GLuint framebuffer,
701                                                          GLenum buffer,
702                                                          GLint drawbuffer,
703                                                          GLfloat depth,
704                                                          GLint stencil);
705 ANGLE_EXPORT void GL_APIENTRY GL_ClearNamedFramebufferfv(GLuint framebuffer,
706                                                          GLenum buffer,
707                                                          GLint drawbuffer,
708                                                          const GLfloat *value);
709 ANGLE_EXPORT void GL_APIENTRY GL_ClearNamedFramebufferiv(GLuint framebuffer,
710                                                          GLenum buffer,
711                                                          GLint drawbuffer,
712                                                          const GLint *value);
713 ANGLE_EXPORT void GL_APIENTRY GL_ClearNamedFramebufferuiv(GLuint framebuffer,
714                                                           GLenum buffer,
715                                                           GLint drawbuffer,
716                                                           const GLuint *value);
717 ANGLE_EXPORT void GL_APIENTRY GL_ClipControl(GLenum origin, GLenum depth);
718 ANGLE_EXPORT void GL_APIENTRY GL_CompressedTextureSubImage1D(GLuint texture,
719                                                              GLint level,
720                                                              GLint xoffset,
721                                                              GLsizei width,
722                                                              GLenum format,
723                                                              GLsizei imageSize,
724                                                              const void *data);
725 ANGLE_EXPORT void GL_APIENTRY GL_CompressedTextureSubImage2D(GLuint texture,
726                                                              GLint level,
727                                                              GLint xoffset,
728                                                              GLint yoffset,
729                                                              GLsizei width,
730                                                              GLsizei height,
731                                                              GLenum format,
732                                                              GLsizei imageSize,
733                                                              const void *data);
734 ANGLE_EXPORT void GL_APIENTRY GL_CompressedTextureSubImage3D(GLuint texture,
735                                                              GLint level,
736                                                              GLint xoffset,
737                                                              GLint yoffset,
738                                                              GLint zoffset,
739                                                              GLsizei width,
740                                                              GLsizei height,
741                                                              GLsizei depth,
742                                                              GLenum format,
743                                                              GLsizei imageSize,
744                                                              const void *data);
745 ANGLE_EXPORT void GL_APIENTRY GL_CopyNamedBufferSubData(GLuint readBuffer,
746                                                         GLuint writeBuffer,
747                                                         GLintptr readOffset,
748                                                         GLintptr writeOffset,
749                                                         GLsizeiptr size);
750 ANGLE_EXPORT void GL_APIENTRY GL_CopyTextureSubImage1D(GLuint texture,
751                                                        GLint level,
752                                                        GLint xoffset,
753                                                        GLint x,
754                                                        GLint y,
755                                                        GLsizei width);
756 ANGLE_EXPORT void GL_APIENTRY GL_CopyTextureSubImage2D(GLuint texture,
757                                                        GLint level,
758                                                        GLint xoffset,
759                                                        GLint yoffset,
760                                                        GLint x,
761                                                        GLint y,
762                                                        GLsizei width,
763                                                        GLsizei height);
764 ANGLE_EXPORT void GL_APIENTRY GL_CopyTextureSubImage3D(GLuint texture,
765                                                        GLint level,
766                                                        GLint xoffset,
767                                                        GLint yoffset,
768                                                        GLint zoffset,
769                                                        GLint x,
770                                                        GLint y,
771                                                        GLsizei width,
772                                                        GLsizei height);
773 ANGLE_EXPORT void GL_APIENTRY GL_CreateBuffers(GLsizei n, GLuint *buffers);
774 ANGLE_EXPORT void GL_APIENTRY GL_CreateFramebuffers(GLsizei n, GLuint *framebuffers);
775 ANGLE_EXPORT void GL_APIENTRY GL_CreateProgramPipelines(GLsizei n, GLuint *pipelines);
776 ANGLE_EXPORT void GL_APIENTRY GL_CreateQueries(GLenum target, GLsizei n, GLuint *ids);
777 ANGLE_EXPORT void GL_APIENTRY GL_CreateRenderbuffers(GLsizei n, GLuint *renderbuffers);
778 ANGLE_EXPORT void GL_APIENTRY GL_CreateSamplers(GLsizei n, GLuint *samplers);
779 ANGLE_EXPORT void GL_APIENTRY GL_CreateTextures(GLenum target, GLsizei n, GLuint *textures);
780 ANGLE_EXPORT void GL_APIENTRY GL_CreateTransformFeedbacks(GLsizei n, GLuint *ids);
781 ANGLE_EXPORT void GL_APIENTRY GL_CreateVertexArrays(GLsizei n, GLuint *arrays);
782 ANGLE_EXPORT void GL_APIENTRY GL_DisableVertexArrayAttrib(GLuint vaobj, GLuint index);
783 ANGLE_EXPORT void GL_APIENTRY GL_EnableVertexArrayAttrib(GLuint vaobj, GLuint index);
784 ANGLE_EXPORT void GL_APIENTRY GL_FlushMappedNamedBufferRange(GLuint buffer,
785                                                              GLintptr offset,
786                                                              GLsizeiptr length);
787 ANGLE_EXPORT void GL_APIENTRY GL_GenerateTextureMipmap(GLuint texture);
788 ANGLE_EXPORT void GL_APIENTRY GL_GetCompressedTextureImage(GLuint texture,
789                                                            GLint level,
790                                                            GLsizei bufSize,
791                                                            void *pixels);
792 ANGLE_EXPORT void GL_APIENTRY GL_GetCompressedTextureSubImage(GLuint texture,
793                                                               GLint level,
794                                                               GLint xoffset,
795                                                               GLint yoffset,
796                                                               GLint zoffset,
797                                                               GLsizei width,
798                                                               GLsizei height,
799                                                               GLsizei depth,
800                                                               GLsizei bufSize,
801                                                               void *pixels);
802 ANGLE_EXPORT GLenum GL_APIENTRY GL_GetGraphicsResetStatus();
803 ANGLE_EXPORT void GL_APIENTRY GL_GetNamedBufferParameteri64v(GLuint buffer,
804                                                              GLenum pname,
805                                                              GLint64 *params);
806 ANGLE_EXPORT void GL_APIENTRY GL_GetNamedBufferParameteriv(GLuint buffer,
807                                                            GLenum pname,
808                                                            GLint *params);
809 ANGLE_EXPORT void GL_APIENTRY GL_GetNamedBufferPointerv(GLuint buffer, GLenum pname, void **params);
810 ANGLE_EXPORT void GL_APIENTRY GL_GetNamedBufferSubData(GLuint buffer,
811                                                        GLintptr offset,
812                                                        GLsizeiptr size,
813                                                        void *data);
814 ANGLE_EXPORT void GL_APIENTRY GL_GetNamedFramebufferAttachmentParameteriv(GLuint framebuffer,
815                                                                           GLenum attachment,
816                                                                           GLenum pname,
817                                                                           GLint *params);
818 ANGLE_EXPORT void GL_APIENTRY GL_GetNamedFramebufferParameteriv(GLuint framebuffer,
819                                                                 GLenum pname,
820                                                                 GLint *param);
821 ANGLE_EXPORT void GL_APIENTRY GL_GetNamedRenderbufferParameteriv(GLuint renderbuffer,
822                                                                  GLenum pname,
823                                                                  GLint *params);
824 ANGLE_EXPORT void GL_APIENTRY GL_GetQueryBufferObjecti64v(GLuint id,
825                                                           GLuint buffer,
826                                                           GLenum pname,
827                                                           GLintptr offset);
828 ANGLE_EXPORT void GL_APIENTRY GL_GetQueryBufferObjectiv(GLuint id,
829                                                         GLuint buffer,
830                                                         GLenum pname,
831                                                         GLintptr offset);
832 ANGLE_EXPORT void GL_APIENTRY GL_GetQueryBufferObjectui64v(GLuint id,
833                                                            GLuint buffer,
834                                                            GLenum pname,
835                                                            GLintptr offset);
836 ANGLE_EXPORT void GL_APIENTRY GL_GetQueryBufferObjectuiv(GLuint id,
837                                                          GLuint buffer,
838                                                          GLenum pname,
839                                                          GLintptr offset);
840 ANGLE_EXPORT void GL_APIENTRY GL_GetTextureImage(GLuint texture,
841                                                  GLint level,
842                                                  GLenum format,
843                                                  GLenum type,
844                                                  GLsizei bufSize,
845                                                  void *pixels);
846 ANGLE_EXPORT void GL_APIENTRY GL_GetTextureLevelParameterfv(GLuint texture,
847                                                             GLint level,
848                                                             GLenum pname,
849                                                             GLfloat *params);
850 ANGLE_EXPORT void GL_APIENTRY GL_GetTextureLevelParameteriv(GLuint texture,
851                                                             GLint level,
852                                                             GLenum pname,
853                                                             GLint *params);
854 ANGLE_EXPORT void GL_APIENTRY GL_GetTextureParameterIiv(GLuint texture,
855                                                         GLenum pname,
856                                                         GLint *params);
857 ANGLE_EXPORT void GL_APIENTRY GL_GetTextureParameterIuiv(GLuint texture,
858                                                          GLenum pname,
859                                                          GLuint *params);
860 ANGLE_EXPORT void GL_APIENTRY GL_GetTextureParameterfv(GLuint texture,
861                                                        GLenum pname,
862                                                        GLfloat *params);
863 ANGLE_EXPORT void GL_APIENTRY GL_GetTextureParameteriv(GLuint texture, GLenum pname, GLint *params);
864 ANGLE_EXPORT void GL_APIENTRY GL_GetTextureSubImage(GLuint texture,
865                                                     GLint level,
866                                                     GLint xoffset,
867                                                     GLint yoffset,
868                                                     GLint zoffset,
869                                                     GLsizei width,
870                                                     GLsizei height,
871                                                     GLsizei depth,
872                                                     GLenum format,
873                                                     GLenum type,
874                                                     GLsizei bufSize,
875                                                     void *pixels);
876 ANGLE_EXPORT void GL_APIENTRY GL_GetTransformFeedbacki64_v(GLuint xfb,
877                                                            GLenum pname,
878                                                            GLuint index,
879                                                            GLint64 *param);
880 ANGLE_EXPORT void GL_APIENTRY GL_GetTransformFeedbacki_v(GLuint xfb,
881                                                          GLenum pname,
882                                                          GLuint index,
883                                                          GLint *param);
884 ANGLE_EXPORT void GL_APIENTRY GL_GetTransformFeedbackiv(GLuint xfb, GLenum pname, GLint *param);
885 ANGLE_EXPORT void GL_APIENTRY GL_GetVertexArrayIndexed64iv(GLuint vaobj,
886                                                            GLuint index,
887                                                            GLenum pname,
888                                                            GLint64 *param);
889 ANGLE_EXPORT void GL_APIENTRY GL_GetVertexArrayIndexediv(GLuint vaobj,
890                                                          GLuint index,
891                                                          GLenum pname,
892                                                          GLint *param);
893 ANGLE_EXPORT void GL_APIENTRY GL_GetVertexArrayiv(GLuint vaobj, GLenum pname, GLint *param);
894 ANGLE_EXPORT void GL_APIENTRY
895 GL_GetnColorTable(GLenum target, GLenum format, GLenum type, GLsizei bufSize, void *table);
896 ANGLE_EXPORT void GL_APIENTRY GL_GetnCompressedTexImage(GLenum target,
897                                                         GLint lod,
898                                                         GLsizei bufSize,
899                                                         void *pixels);
900 ANGLE_EXPORT void GL_APIENTRY
901 GL_GetnConvolutionFilter(GLenum target, GLenum format, GLenum type, GLsizei bufSize, void *image);
902 ANGLE_EXPORT void GL_APIENTRY GL_GetnHistogram(GLenum target,
903                                                GLboolean reset,
904                                                GLenum format,
905                                                GLenum type,
906                                                GLsizei bufSize,
907                                                void *values);
908 ANGLE_EXPORT void GL_APIENTRY GL_GetnMapdv(GLenum target,
909                                            GLenum query,
910                                            GLsizei bufSize,
911                                            GLdouble *v);
912 ANGLE_EXPORT void GL_APIENTRY GL_GetnMapfv(GLenum target,
913                                            GLenum query,
914                                            GLsizei bufSize,
915                                            GLfloat *v);
916 ANGLE_EXPORT void GL_APIENTRY GL_GetnMapiv(GLenum target, GLenum query, GLsizei bufSize, GLint *v);
917 ANGLE_EXPORT void GL_APIENTRY GL_GetnMinmax(GLenum target,
918                                             GLboolean reset,
919                                             GLenum format,
920                                             GLenum type,
921                                             GLsizei bufSize,
922                                             void *values);
923 ANGLE_EXPORT void GL_APIENTRY GL_GetnPixelMapfv(GLenum map, GLsizei bufSize, GLfloat *values);
924 ANGLE_EXPORT void GL_APIENTRY GL_GetnPixelMapuiv(GLenum map, GLsizei bufSize, GLuint *values);
925 ANGLE_EXPORT void GL_APIENTRY GL_GetnPixelMapusv(GLenum map, GLsizei bufSize, GLushort *values);
926 ANGLE_EXPORT void GL_APIENTRY GL_GetnPolygonStipple(GLsizei bufSize, GLubyte *pattern);
927 ANGLE_EXPORT void GL_APIENTRY GL_GetnSeparableFilter(GLenum target,
928                                                      GLenum format,
929                                                      GLenum type,
930                                                      GLsizei rowBufSize,
931                                                      void *row,
932                                                      GLsizei columnBufSize,
933                                                      void *column,
934                                                      void *span);
935 ANGLE_EXPORT void GL_APIENTRY GL_GetnTexImage(GLenum target,
936                                               GLint level,
937                                               GLenum format,
938                                               GLenum type,
939                                               GLsizei bufSize,
940                                               void *pixels);
941 ANGLE_EXPORT void GL_APIENTRY GL_GetnUniformdv(GLuint program,
942                                                GLint location,
943                                                GLsizei bufSize,
944                                                GLdouble *params);
945 ANGLE_EXPORT void GL_APIENTRY GL_GetnUniformfv(GLuint program,
946                                                GLint location,
947                                                GLsizei bufSize,
948                                                GLfloat *params);
949 ANGLE_EXPORT void GL_APIENTRY GL_GetnUniformiv(GLuint program,
950                                                GLint location,
951                                                GLsizei bufSize,
952                                                GLint *params);
953 ANGLE_EXPORT void GL_APIENTRY GL_GetnUniformuiv(GLuint program,
954                                                 GLint location,
955                                                 GLsizei bufSize,
956                                                 GLuint *params);
957 ANGLE_EXPORT void GL_APIENTRY GL_InvalidateNamedFramebufferData(GLuint framebuffer,
958                                                                 GLsizei numAttachments,
959                                                                 const GLenum *attachments);
960 ANGLE_EXPORT void GL_APIENTRY GL_InvalidateNamedFramebufferSubData(GLuint framebuffer,
961                                                                    GLsizei numAttachments,
962                                                                    const GLenum *attachments,
963                                                                    GLint x,
964                                                                    GLint y,
965                                                                    GLsizei width,
966                                                                    GLsizei height);
967 ANGLE_EXPORT void *GL_APIENTRY GL_MapNamedBuffer(GLuint buffer, GLenum access);
968 ANGLE_EXPORT void *GL_APIENTRY GL_MapNamedBufferRange(GLuint buffer,
969                                                       GLintptr offset,
970                                                       GLsizeiptr length,
971                                                       GLbitfield access);
972 ANGLE_EXPORT void GL_APIENTRY GL_MemoryBarrierByRegion(GLbitfield barriers);
973 ANGLE_EXPORT void GL_APIENTRY GL_NamedBufferData(GLuint buffer,
974                                                  GLsizeiptr size,
975                                                  const void *data,
976                                                  GLenum usage);
977 ANGLE_EXPORT void GL_APIENTRY GL_NamedBufferStorage(GLuint buffer,
978                                                     GLsizeiptr size,
979                                                     const void *data,
980                                                     GLbitfield flags);
981 ANGLE_EXPORT void GL_APIENTRY GL_NamedBufferSubData(GLuint buffer,
982                                                     GLintptr offset,
983                                                     GLsizeiptr size,
984                                                     const void *data);
985 ANGLE_EXPORT void GL_APIENTRY GL_NamedFramebufferDrawBuffer(GLuint framebuffer, GLenum buf);
986 ANGLE_EXPORT void GL_APIENTRY GL_NamedFramebufferDrawBuffers(GLuint framebuffer,
987                                                              GLsizei n,
988                                                              const GLenum *bufs);
989 ANGLE_EXPORT void GL_APIENTRY GL_NamedFramebufferParameteri(GLuint framebuffer,
990                                                             GLenum pname,
991                                                             GLint param);
992 ANGLE_EXPORT void GL_APIENTRY GL_NamedFramebufferReadBuffer(GLuint framebuffer, GLenum src);
993 ANGLE_EXPORT void GL_APIENTRY GL_NamedFramebufferRenderbuffer(GLuint framebuffer,
994                                                               GLenum attachment,
995                                                               GLenum renderbuffertarget,
996                                                               GLuint renderbuffer);
997 ANGLE_EXPORT void GL_APIENTRY GL_NamedFramebufferTexture(GLuint framebuffer,
998                                                          GLenum attachment,
999                                                          GLuint texture,
1000                                                          GLint level);
1001 ANGLE_EXPORT void GL_APIENTRY GL_NamedFramebufferTextureLayer(GLuint framebuffer,
1002                                                               GLenum attachment,
1003                                                               GLuint texture,
1004                                                               GLint level,
1005                                                               GLint layer);
1006 ANGLE_EXPORT void GL_APIENTRY GL_NamedRenderbufferStorage(GLuint renderbuffer,
1007                                                           GLenum internalformat,
1008                                                           GLsizei width,
1009                                                           GLsizei height);
1010 ANGLE_EXPORT void GL_APIENTRY GL_NamedRenderbufferStorageMultisample(GLuint renderbuffer,
1011                                                                      GLsizei samples,
1012                                                                      GLenum internalformat,
1013                                                                      GLsizei width,
1014                                                                      GLsizei height);
1015 ANGLE_EXPORT void GL_APIENTRY GL_ReadnPixels(GLint x,
1016                                              GLint y,
1017                                              GLsizei width,
1018                                              GLsizei height,
1019                                              GLenum format,
1020                                              GLenum type,
1021                                              GLsizei bufSize,
1022                                              void *data);
1023 ANGLE_EXPORT void GL_APIENTRY GL_TextureBarrier();
1024 ANGLE_EXPORT void GL_APIENTRY GL_TextureBuffer(GLuint texture,
1025                                                GLenum internalformat,
1026                                                GLuint buffer);
1027 ANGLE_EXPORT void GL_APIENTRY GL_TextureBufferRange(GLuint texture,
1028                                                     GLenum internalformat,
1029                                                     GLuint buffer,
1030                                                     GLintptr offset,
1031                                                     GLsizeiptr size);
1032 ANGLE_EXPORT void GL_APIENTRY GL_TextureParameterIiv(GLuint texture,
1033                                                      GLenum pname,
1034                                                      const GLint *params);
1035 ANGLE_EXPORT void GL_APIENTRY GL_TextureParameterIuiv(GLuint texture,
1036                                                       GLenum pname,
1037                                                       const GLuint *params);
1038 ANGLE_EXPORT void GL_APIENTRY GL_TextureParameterf(GLuint texture, GLenum pname, GLfloat param);
1039 ANGLE_EXPORT void GL_APIENTRY GL_TextureParameterfv(GLuint texture,
1040                                                     GLenum pname,
1041                                                     const GLfloat *param);
1042 ANGLE_EXPORT void GL_APIENTRY GL_TextureParameteri(GLuint texture, GLenum pname, GLint param);
1043 ANGLE_EXPORT void GL_APIENTRY GL_TextureParameteriv(GLuint texture,
1044                                                     GLenum pname,
1045                                                     const GLint *param);
1046 ANGLE_EXPORT void GL_APIENTRY GL_TextureStorage1D(GLuint texture,
1047                                                   GLsizei levels,
1048                                                   GLenum internalformat,
1049                                                   GLsizei width);
1050 ANGLE_EXPORT void GL_APIENTRY GL_TextureStorage2D(GLuint texture,
1051                                                   GLsizei levels,
1052                                                   GLenum internalformat,
1053                                                   GLsizei width,
1054                                                   GLsizei height);
1055 ANGLE_EXPORT void GL_APIENTRY GL_TextureStorage2DMultisample(GLuint texture,
1056                                                              GLsizei samples,
1057                                                              GLenum internalformat,
1058                                                              GLsizei width,
1059                                                              GLsizei height,
1060                                                              GLboolean fixedsamplelocations);
1061 ANGLE_EXPORT void GL_APIENTRY GL_TextureStorage3D(GLuint texture,
1062                                                   GLsizei levels,
1063                                                   GLenum internalformat,
1064                                                   GLsizei width,
1065                                                   GLsizei height,
1066                                                   GLsizei depth);
1067 ANGLE_EXPORT void GL_APIENTRY GL_TextureStorage3DMultisample(GLuint texture,
1068                                                              GLsizei samples,
1069                                                              GLenum internalformat,
1070                                                              GLsizei width,
1071                                                              GLsizei height,
1072                                                              GLsizei depth,
1073                                                              GLboolean fixedsamplelocations);
1074 ANGLE_EXPORT void GL_APIENTRY GL_TextureSubImage1D(GLuint texture,
1075                                                    GLint level,
1076                                                    GLint xoffset,
1077                                                    GLsizei width,
1078                                                    GLenum format,
1079                                                    GLenum type,
1080                                                    const void *pixels);
1081 ANGLE_EXPORT void GL_APIENTRY GL_TextureSubImage2D(GLuint texture,
1082                                                    GLint level,
1083                                                    GLint xoffset,
1084                                                    GLint yoffset,
1085                                                    GLsizei width,
1086                                                    GLsizei height,
1087                                                    GLenum format,
1088                                                    GLenum type,
1089                                                    const void *pixels);
1090 ANGLE_EXPORT void GL_APIENTRY GL_TextureSubImage3D(GLuint texture,
1091                                                    GLint level,
1092                                                    GLint xoffset,
1093                                                    GLint yoffset,
1094                                                    GLint zoffset,
1095                                                    GLsizei width,
1096                                                    GLsizei height,
1097                                                    GLsizei depth,
1098                                                    GLenum format,
1099                                                    GLenum type,
1100                                                    const void *pixels);
1101 ANGLE_EXPORT void GL_APIENTRY GL_TransformFeedbackBufferBase(GLuint xfb,
1102                                                              GLuint index,
1103                                                              GLuint buffer);
1104 ANGLE_EXPORT void GL_APIENTRY GL_TransformFeedbackBufferRange(GLuint xfb,
1105                                                               GLuint index,
1106                                                               GLuint buffer,
1107                                                               GLintptr offset,
1108                                                               GLsizeiptr size);
1109 ANGLE_EXPORT GLboolean GL_APIENTRY GL_UnmapNamedBuffer(GLuint buffer);
1110 ANGLE_EXPORT void GL_APIENTRY GL_VertexArrayAttribBinding(GLuint vaobj,
1111                                                           GLuint attribindex,
1112                                                           GLuint bindingindex);
1113 ANGLE_EXPORT void GL_APIENTRY GL_VertexArrayAttribFormat(GLuint vaobj,
1114                                                          GLuint attribindex,
1115                                                          GLint size,
1116                                                          GLenum type,
1117                                                          GLboolean normalized,
1118                                                          GLuint relativeoffset);
1119 ANGLE_EXPORT void GL_APIENTRY GL_VertexArrayAttribIFormat(GLuint vaobj,
1120                                                           GLuint attribindex,
1121                                                           GLint size,
1122                                                           GLenum type,
1123                                                           GLuint relativeoffset);
1124 ANGLE_EXPORT void GL_APIENTRY GL_VertexArrayAttribLFormat(GLuint vaobj,
1125                                                           GLuint attribindex,
1126                                                           GLint size,
1127                                                           GLenum type,
1128                                                           GLuint relativeoffset);
1129 ANGLE_EXPORT void GL_APIENTRY GL_VertexArrayBindingDivisor(GLuint vaobj,
1130                                                            GLuint bindingindex,
1131                                                            GLuint divisor);
1132 ANGLE_EXPORT void GL_APIENTRY GL_VertexArrayElementBuffer(GLuint vaobj, GLuint buffer);
1133 ANGLE_EXPORT void GL_APIENTRY GL_VertexArrayVertexBuffer(GLuint vaobj,
1134                                                          GLuint bindingindex,
1135                                                          GLuint buffer,
1136                                                          GLintptr offset,
1137                                                          GLsizei stride);
1138 ANGLE_EXPORT void GL_APIENTRY GL_VertexArrayVertexBuffers(GLuint vaobj,
1139                                                           GLuint first,
1140                                                           GLsizei count,
1141                                                           const GLuint *buffers,
1142                                                           const GLintptr *offsets,
1143                                                           const GLsizei *strides);
1144 
1145 // GL 4.6
1146 ANGLE_EXPORT void GL_APIENTRY GL_MultiDrawArraysIndirectCount(GLenum mode,
1147                                                               const void *indirect,
1148                                                               GLintptr drawcount,
1149                                                               GLsizei maxdrawcount,
1150                                                               GLsizei stride);
1151 ANGLE_EXPORT void GL_APIENTRY GL_MultiDrawElementsIndirectCount(GLenum mode,
1152                                                                 GLenum type,
1153                                                                 const void *indirect,
1154                                                                 GLintptr drawcount,
1155                                                                 GLsizei maxdrawcount,
1156                                                                 GLsizei stride);
1157 ANGLE_EXPORT void GL_APIENTRY GL_PolygonOffsetClamp(GLfloat factor, GLfloat units, GLfloat clamp);
1158 ANGLE_EXPORT void GL_APIENTRY GL_SpecializeShader(GLuint shader,
1159                                                   const GLchar *pEntryPoint,
1160                                                   GLuint numSpecializationConstants,
1161                                                   const GLuint *pConstantIndex,
1162                                                   const GLuint *pConstantValue);
1163 }  // extern "C"
1164 
1165 #endif  // LIBGL_ENTRY_POINTS_GL_4_AUTOGEN_H_
1166