• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 // Context_gles_ext_autogen.h: Creates a macro for interfaces in Context.
9 
10 #ifndef ANGLE_CONTEXT_GLES_EXT_AUTOGEN_H_
11 #define ANGLE_CONTEXT_GLES_EXT_AUTOGEN_H_
12 
13 #define ANGLE_GLES_EXT_CONTEXT_API                                                                 \
14                                                                                                    \
15     /* GLES1 Extensions */                                                                         \
16                                                                                                    \
17     /* GL_OES_draw_texture */                                                                      \
18     void drawTexf(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height);                 \
19     void drawTexfv(const GLfloat *coords);                                                         \
20     void drawTexi(GLint x, GLint y, GLint z, GLint width, GLint height);                           \
21     void drawTexiv(const GLint *coords);                                                           \
22     void drawTexs(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height);                 \
23     void drawTexsv(const GLshort *coords);                                                         \
24     void drawTexx(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height);                 \
25     void drawTexxv(const GLfixed *coords);                                                         \
26     /* GL_OES_framebuffer_object */                                                                \
27     /* GL_OES_matrix_palette */                                                                    \
28     void currentPaletteMatrix(GLuint matrixpaletteindex);                                          \
29     void loadPaletteFromModelViewMatrix();                                                         \
30     void matrixIndexPointer(GLint size, GLenum type, GLsizei stride, const void *pointer);         \
31     void weightPointer(GLint size, GLenum type, GLsizei stride, const void *pointer);              \
32     /* GL_OES_point_size_array */                                                                  \
33     void pointSizePointer(VertexAttribType typePacked, GLsizei stride, const void *pointer);       \
34     /* GL_OES_point_sprite */                                                                      \
35     /* GL_OES_query_matrix */                                                                      \
36     GLbitfield queryMatrixx(GLfixed *mantissa, GLint *exponent);                                   \
37     /* GL_OES_texture_cube_map */                                                                  \
38     void getTexGenfv(GLenum coord, GLenum pname, GLfloat *params);                                 \
39     void getTexGeniv(GLenum coord, GLenum pname, GLint *params);                                   \
40     void getTexGenxv(GLenum coord, GLenum pname, GLfixed *params);                                 \
41     void texGenf(GLenum coord, GLenum pname, GLfloat param);                                       \
42     void texGenfv(GLenum coord, GLenum pname, const GLfloat *params);                              \
43     void texGeni(GLenum coord, GLenum pname, GLint param);                                         \
44     void texGeniv(GLenum coord, GLenum pname, const GLint *params);                                \
45     void texGenx(GLenum coord, GLenum pname, GLfixed param);                                       \
46     void texGenxv(GLenum coord, GLenum pname, const GLfixed *params);                              \
47                                                                                                    \
48     /* GLES2+ Extensions */                                                                        \
49                                                                                                    \
50     /* GL_AMD_performance_monitor */                                                               \
51     void beginPerfMonitor(GLuint monitor);                                                         \
52     void deletePerfMonitors(GLsizei n, GLuint *monitors);                                          \
53     void endPerfMonitor(GLuint monitor);                                                           \
54     void genPerfMonitors(GLsizei n, GLuint *monitors);                                             \
55     void getPerfMonitorCounterData(GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data,   \
56                                    GLint *bytesWritten);                                           \
57     void getPerfMonitorCounterInfo(GLuint group, GLuint counter, GLenum pname, void *data);        \
58     void getPerfMonitorCounterString(GLuint group, GLuint counter, GLsizei bufSize,                \
59                                      GLsizei *length, GLchar *counterString);                      \
60     void getPerfMonitorCounters(GLuint group, GLint *numCounters, GLint *maxActiveCounters,        \
61                                 GLsizei counterSize, GLuint *counters);                            \
62     void getPerfMonitorGroupString(GLuint group, GLsizei bufSize, GLsizei *length,                 \
63                                    GLchar *groupString);                                           \
64     void getPerfMonitorGroups(GLint *numGroups, GLsizei groupsSize, GLuint *groups);               \
65     void selectPerfMonitorCounters(GLuint monitor, GLboolean enable, GLuint group,                 \
66                                    GLint numCounters, GLuint *counterList);                        \
67     /* GL_ANDROID_extension_pack_es31a */                                                          \
68     /* GL_ANGLE_depth_texture */                                                                   \
69     /* GL_ANGLE_framebuffer_blit */                                                                \
70     /* GL_ANGLE_instanced_arrays */                                                                \
71     /* GL_ANGLE_pack_reverse_row_order */                                                          \
72     /* GL_ANGLE_texture_usage */                                                                   \
73     /* GL_ANGLE_translated_shader_source */                                                        \
74     void getTranslatedShaderSource(ShaderProgramID shaderPacked, GLsizei bufsize, GLsizei *length, \
75                                    GLchar *source);                                                \
76     /* GL_APPLE_clip_distance */                                                                   \
77     /* GL_ARB_sync */                                                                              \
78     /* GL_EXT_EGL_image_array */                                                                   \
79     /* GL_EXT_EGL_image_external_wrap_modes */                                                     \
80     /* GL_EXT_EGL_image_storage */                                                                 \
81     void eGLImageTargetTexStorage(GLenum target, GLeglImageOES image, const GLint *attrib_list);   \
82     void eGLImageTargetTextureStorage(GLuint texture, GLeglImageOES image,                         \
83                                       const GLint *attrib_list);                                   \
84     /* GL_EXT_YUV_target */                                                                        \
85     /* GL_EXT_blend_func_extended */                                                               \
86     void bindFragDataLocation(ShaderProgramID programPacked, GLuint color, const GLchar *name);    \
87     void bindFragDataLocationIndexed(ShaderProgramID programPacked, GLuint colorNumber,            \
88                                      GLuint index, const GLchar *name);                            \
89     GLint getFragDataIndex(ShaderProgramID programPacked, const GLchar *name);                     \
90     GLint getProgramResourceLocationIndex(ShaderProgramID programPacked, GLenum programInterface,  \
91                                           const GLchar *name);                                     \
92     /* GL_EXT_blend_minmax */                                                                      \
93     /* GL_EXT_buffer_storage */                                                                    \
94     void bufferStorage(BufferBinding targetPacked, GLsizeiptr size, const void *data,              \
95                        GLbitfield flags);                                                          \
96     /* GL_EXT_clip_control */                                                                      \
97     void clipControl(GLenum origin, GLenum depth);                                                 \
98     /* GL_EXT_clip_cull_distance */                                                                \
99     /* GL_EXT_color_buffer_float */                                                                \
100     /* GL_EXT_color_buffer_half_float */                                                           \
101     /* GL_EXT_compressed_ETC1_RGB8_sub_texture */                                                  \
102     /* GL_EXT_copy_image */                                                                        \
103     /* GL_EXT_debug_label */                                                                       \
104     void labelObject(GLenum type, GLuint object, GLsizei length, const GLchar *label);             \
105     /* GL_EXT_debug_marker */                                                                      \
106     void insertEventMarker(GLsizei length, const GLchar *marker);                                  \
107     void popGroupMarker();                                                                         \
108     void pushGroupMarker(GLsizei length, const GLchar *marker);                                    \
109     /* GL_EXT_discard_framebuffer */                                                               \
110     void discardFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments);     \
111     /* GL_EXT_disjoint_timer_query */                                                              \
112     void getQueryObjecti64v(QueryID idPacked, GLenum pname, GLint64 *params);                      \
113     void getQueryObjectiv(QueryID idPacked, GLenum pname, GLint *params);                          \
114     void getQueryObjectui64v(QueryID idPacked, GLenum pname, GLuint64 *params);                    \
115     void queryCounter(QueryID idPacked, QueryType targetPacked);                                   \
116     /* GL_EXT_draw_buffers */                                                                      \
117     /* GL_EXT_draw_buffers_indexed */                                                              \
118     /* GL_EXT_draw_elements_base_vertex */                                                         \
119     void multiDrawElementsBaseVertex(PrimitiveMode modePacked, const GLsizei *count,               \
120                                      DrawElementsType typePacked, const void *const *indices,      \
121                                      GLsizei primcount, const GLint *basevertex);                  \
122     /* GL_EXT_external_buffer */                                                                   \
123     void bufferStorageExternal(BufferBinding targetPacked, GLintptr offset, GLsizeiptr size,       \
124                                GLeglClientBufferEXT clientBuffer, GLbitfield flags);               \
125     void namedBufferStorageExternal(GLuint buffer, GLintptr offset, GLsizeiptr size,               \
126                                     GLeglClientBufferEXT clientBuffer, GLbitfield flags);          \
127     /* GL_EXT_float_blend */                                                                       \
128     /* GL_EXT_frag_depth */                                                                        \
129     /* GL_EXT_geometry_shader */                                                                   \
130     /* GL_EXT_gpu_shader5 */                                                                       \
131     /* GL_EXT_instanced_arrays */                                                                  \
132     /* GL_EXT_map_buffer_range */                                                                  \
133     /* GL_EXT_memory_object */                                                                     \
134     void bufferStorageMem(TextureType targetPacked, GLsizeiptr size, MemoryObjectID memoryPacked,  \
135                           GLuint64 offset);                                                        \
136     void createMemoryObjects(GLsizei n, MemoryObjectID *memoryObjectsPacked);                      \
137     void deleteMemoryObjects(GLsizei n, const MemoryObjectID *memoryObjectsPacked);                \
138     void getMemoryObjectParameteriv(MemoryObjectID memoryObjectPacked, GLenum pname,               \
139                                     GLint *params);                                                \
140     void getUnsignedBytev(GLenum pname, GLubyte *data);                                            \
141     void getUnsignedBytei_v(GLenum target, GLuint index, GLubyte *data);                           \
142     GLboolean isMemoryObject(MemoryObjectID memoryObjectPacked) const;                             \
143     void memoryObjectParameteriv(MemoryObjectID memoryObjectPacked, GLenum pname,                  \
144                                  const GLint *params);                                             \
145     void texStorageMem2D(TextureType targetPacked, GLsizei levels, GLenum internalFormat,          \
146                          GLsizei width, GLsizei height, MemoryObjectID memoryPacked,               \
147                          GLuint64 offset);                                                         \
148     void texStorageMem2DMultisample(TextureType targetPacked, GLsizei samples,                     \
149                                     GLenum internalFormat, GLsizei width, GLsizei height,          \
150                                     GLboolean fixedSampleLocations, MemoryObjectID memoryPacked,   \
151                                     GLuint64 offset);                                              \
152     void texStorageMem3D(TextureType targetPacked, GLsizei levels, GLenum internalFormat,          \
153                          GLsizei width, GLsizei height, GLsizei depth,                             \
154                          MemoryObjectID memoryPacked, GLuint64 offset);                            \
155     void texStorageMem3DMultisample(TextureType targetPacked, GLsizei samples,                     \
156                                     GLenum internalFormat, GLsizei width, GLsizei height,          \
157                                     GLsizei depth, GLboolean fixedSampleLocations,                 \
158                                     MemoryObjectID memoryPacked, GLuint64 offset);                 \
159     /* GL_EXT_memory_object_fd */                                                                  \
160     void importMemoryFd(MemoryObjectID memoryPacked, GLuint64 size, HandleType handleTypePacked,   \
161                         GLint fd);                                                                 \
162     /* GL_EXT_multi_draw_indirect */                                                               \
163     void multiDrawArraysIndirect(PrimitiveMode modePacked, const void *indirect,                   \
164                                  GLsizei drawcount, GLsizei stride);                               \
165     void multiDrawElementsIndirect(PrimitiveMode modePacked, DrawElementsType typePacked,          \
166                                    const void *indirect, GLsizei drawcount, GLsizei stride);       \
167     /* GL_EXT_multisample_compatibility */                                                         \
168     /* GL_EXT_multisampled_render_to_texture */                                                    \
169     void framebufferTexture2DMultisample(GLenum target, GLenum attachment,                         \
170                                          TextureTarget textargetPacked, TextureID texturePacked,   \
171                                          GLint level, GLsizei samples);                            \
172     void renderbufferStorageMultisampleEXT(GLenum target, GLsizei samples, GLenum internalformat,  \
173                                            GLsizei width, GLsizei height);                         \
174     /* GL_EXT_multisampled_render_to_texture2 */                                                   \
175     /* GL_EXT_occlusion_query_boolean */                                                           \
176     /* GL_EXT_primitive_bounding_box */                                                            \
177     /* GL_EXT_protected_textures */                                                                \
178     /* GL_EXT_pvrtc_sRGB */                                                                        \
179     /* GL_EXT_read_format_bgra */                                                                  \
180     /* GL_EXT_robustness */                                                                        \
181     /* GL_EXT_sRGB */                                                                              \
182     /* GL_EXT_sRGB_write_control */                                                                \
183     /* GL_EXT_semaphore */                                                                         \
184     void deleteSemaphores(GLsizei n, const SemaphoreID *semaphoresPacked);                         \
185     void genSemaphores(GLsizei n, SemaphoreID *semaphoresPacked);                                  \
186     void getSemaphoreParameterui64v(SemaphoreID semaphorePacked, GLenum pname, GLuint64 *params);  \
187     GLboolean isSemaphore(SemaphoreID semaphorePacked) const;                                      \
188     void semaphoreParameterui64v(SemaphoreID semaphorePacked, GLenum pname,                        \
189                                  const GLuint64 *params);                                          \
190     void signalSemaphore(SemaphoreID semaphorePacked, GLuint numBufferBarriers,                    \
191                          const BufferID *buffersPacked, GLuint numTextureBarriers,                 \
192                          const TextureID *texturesPacked, const GLenum *dstLayouts);               \
193     void waitSemaphore(SemaphoreID semaphorePacked, GLuint numBufferBarriers,                      \
194                        const BufferID *buffersPacked, GLuint numTextureBarriers,                   \
195                        const TextureID *texturesPacked, const GLenum *srcLayouts);                 \
196     /* GL_EXT_semaphore_fd */                                                                      \
197     void importSemaphoreFd(SemaphoreID semaphorePacked, HandleType handleTypePacked, GLint fd);    \
198     /* GL_EXT_separate_shader_objects */                                                           \
199     /* GL_EXT_shader_framebuffer_fetch */                                                          \
200     /* GL_EXT_shader_framebuffer_fetch_non_coherent */                                             \
201     void framebufferFetchBarrier();                                                                \
202     /* GL_EXT_shader_io_blocks */                                                                  \
203     /* GL_EXT_shader_non_constant_global_initializers */                                           \
204     /* GL_EXT_shader_texture_lod */                                                                \
205     /* GL_EXT_shadow_samplers */                                                                   \
206     /* GL_EXT_tessellation_shader */                                                               \
207     /* GL_EXT_texture_border_clamp */                                                              \
208     /* GL_EXT_texture_buffer */                                                                    \
209     /* GL_EXT_texture_compression_bptc */                                                          \
210     /* GL_EXT_texture_compression_dxt1 */                                                          \
211     /* GL_EXT_texture_compression_rgtc */                                                          \
212     /* GL_EXT_texture_compression_s3tc */                                                          \
213     /* GL_EXT_texture_compression_s3tc_srgb */                                                     \
214     /* GL_EXT_texture_cube_map_array */                                                            \
215     /* GL_EXT_texture_filter_anisotropic */                                                        \
216     /* GL_EXT_texture_format_BGRA8888 */                                                           \
217     /* GL_EXT_texture_format_sRGB_override */                                                      \
218     /* GL_EXT_texture_norm16 */                                                                    \
219     /* GL_EXT_texture_rg */                                                                        \
220     /* GL_EXT_texture_sRGB_R8 */                                                                   \
221     /* GL_EXT_texture_sRGB_RG8 */                                                                  \
222     /* GL_EXT_texture_sRGB_decode */                                                               \
223     /* GL_EXT_texture_storage */                                                                   \
224     void texStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);        \
225     /* GL_EXT_texture_type_2_10_10_10_REV */                                                       \
226     /* GL_EXT_unpack_subimage */                                                                   \
227     /* GL_IMG_texture_compression_pvrtc */                                                         \
228     /* GL_IMG_texture_compression_pvrtc2 */                                                        \
229     /* GL_KHR_blend_equation_advanced */                                                           \
230     /* GL_KHR_debug */                                                                             \
231     /* GL_KHR_no_error */                                                                          \
232     /* GL_KHR_parallel_shader_compile */                                                           \
233     void maxShaderCompilerThreads(GLuint count);                                                   \
234     /* GL_KHR_robust_buffer_access_behavior */                                                     \
235     /* GL_KHR_texture_compression_astc_hdr */                                                      \
236     /* GL_KHR_texture_compression_astc_ldr */                                                      \
237     /* GL_KHR_texture_compression_astc_sliced_3d */                                                \
238     /* GL_MESA_framebuffer_flip_y */                                                               \
239     void framebufferParameteriMESA(GLenum target, GLenum pname, GLint param);                      \
240     void getFramebufferParameterivMESA(GLenum target, GLenum pname, GLint *params);                \
241     /* GL_NV_EGL_stream_consumer_external */                                                       \
242     /* GL_NV_depth_buffer_float2 */                                                                \
243     /* GL_NV_fence */                                                                              \
244     void deleteFencesNV(GLsizei n, const FenceNVID *fencesPacked);                                 \
245     void finishFenceNV(FenceNVID fencePacked);                                                     \
246     void genFencesNV(GLsizei n, FenceNVID *fencesPacked);                                          \
247     void getFenceivNV(FenceNVID fencePacked, GLenum pname, GLint *params);                         \
248     GLboolean isFenceNV(FenceNVID fencePacked) const;                                              \
249     void setFenceNV(FenceNVID fencePacked, GLenum condition);                                      \
250     GLboolean testFenceNV(FenceNVID fencePacked);                                                  \
251     /* GL_NV_framebuffer_blit */                                                                   \
252     void blitFramebufferNV(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0,        \
253                            GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); \
254     /* GL_NV_pack_subimage */                                                                      \
255     /* GL_NV_pixel_buffer_object */                                                                \
256     /* GL_NV_read_depth */                                                                         \
257     /* GL_NV_read_stencil */                                                                       \
258     /* GL_NV_robustness_video_memory_purge */                                                      \
259     /* GL_NV_shader_noperspective_interpolation */                                                 \
260     /* GL_OES_EGL_image */                                                                         \
261     void eGLImageTargetRenderbufferStorage(GLenum target, GLeglImageOES image);                    \
262     void eGLImageTargetTexture2D(TextureType targetPacked, GLeglImageOES image);                   \
263     /* GL_OES_EGL_image_external */                                                                \
264     /* GL_OES_EGL_image_external_essl3 */                                                          \
265     /* GL_OES_EGL_sync */                                                                          \
266     /* GL_OES_compressed_EAC_R11_signed_texture */                                                 \
267     /* GL_OES_compressed_EAC_R11_unsigned_texture */                                               \
268     /* GL_OES_compressed_EAC_RG11_signed_texture */                                                \
269     /* GL_OES_compressed_EAC_RG11_unsigned_texture */                                              \
270     /* GL_OES_compressed_ETC1_RGB8_texture */                                                      \
271     /* GL_OES_compressed_ETC2_RGB8_texture */                                                      \
272     /* GL_OES_compressed_ETC2_RGBA8_texture */                                                     \
273     /* GL_OES_compressed_ETC2_punchthroughA_RGBA8_texture */                                       \
274     /* GL_OES_compressed_ETC2_punchthroughA_sRGB8_alpha_texture */                                 \
275     /* GL_OES_compressed_ETC2_sRGB8_alpha8_texture */                                              \
276     /* GL_OES_compressed_ETC2_sRGB8_texture */                                                     \
277     /* GL_OES_copy_image */                                                                        \
278     /* GL_OES_depth24 */                                                                           \
279     /* GL_OES_depth32 */                                                                           \
280     /* GL_OES_depth_texture */                                                                     \
281     /* GL_OES_depth_texture_cube_map */                                                            \
282     /* GL_OES_draw_buffers_indexed */                                                              \
283     /* GL_OES_draw_elements_base_vertex */                                                         \
284     /* GL_OES_element_index_uint */                                                                \
285     /* GL_OES_fbo_render_mipmap */                                                                 \
286     /* GL_OES_geometry_shader */                                                                   \
287     /* GL_OES_get_program_binary */                                                                \
288     /* GL_OES_mapbuffer */                                                                         \
289     void *mapBuffer(BufferBinding targetPacked, GLenum access);                                    \
290     /* GL_OES_packed_depth_stencil */                                                              \
291     /* GL_OES_primitive_bounding_box */                                                            \
292     /* GL_OES_rgb8_rgba8 */                                                                        \
293     /* GL_OES_sample_shading */                                                                    \
294     /* GL_OES_sample_variables */                                                                  \
295     /* GL_OES_shader_image_atomic */                                                               \
296     /* GL_OES_shader_io_blocks */                                                                  \
297     /* GL_OES_shader_multisample_interpolation */                                                  \
298     /* GL_OES_standard_derivatives */                                                              \
299     /* GL_OES_surfaceless_context */                                                               \
300     /* GL_OES_texture_3D */                                                                        \
301     void framebufferTexture3D(GLenum target, GLenum attachment, TextureTarget textargetPacked,     \
302                               TextureID texturePacked, GLint level, GLint zoffset);                \
303     /* GL_OES_texture_border_clamp */                                                              \
304     /* GL_OES_texture_buffer */                                                                    \
305     /* GL_OES_texture_compression_astc */                                                          \
306     /* GL_OES_texture_cube_map_array */                                                            \
307     /* GL_OES_texture_float */                                                                     \
308     /* GL_OES_texture_float_linear */                                                              \
309     /* GL_OES_texture_half_float */                                                                \
310     /* GL_OES_texture_half_float_linear */                                                         \
311     /* GL_OES_texture_npot */                                                                      \
312     /* GL_OES_texture_stencil8 */                                                                  \
313     /* GL_OES_texture_storage_multisample_2d_array */                                              \
314     /* GL_OES_vertex_array_object */                                                               \
315     /* GL_OES_vertex_half_float */                                                                 \
316     /* GL_OES_vertex_type_10_10_10_2 */                                                            \
317     /* GL_OVR_multiview */                                                                         \
318     void framebufferTextureMultiview(GLenum target, GLenum attachment, TextureID texturePacked,    \
319                                      GLint level, GLint baseViewIndex, GLsizei numViews);          \
320     /* GL_OVR_multiview2 */                                                                        \
321     /* GL_WEBGL_video_texture */                                                                   \
322                                                                                                    \
323     /* ANGLE Extensions */                                                                         \
324                                                                                                    \
325     /* GL_ANGLE_base_vertex_base_instance */                                                       \
326     void drawArraysInstancedBaseInstance(PrimitiveMode modePacked, GLint first, GLsizei count,     \
327                                          GLsizei instanceCount, GLuint baseInstance);              \
328     void drawElementsInstancedBaseVertexBaseInstance(                                              \
329         PrimitiveMode modePacked, GLsizei count, DrawElementsType typePacked,                      \
330         const GLvoid *indices, GLsizei instanceCount, GLint baseVertex, GLuint baseInstance);      \
331     void multiDrawArraysInstancedBaseInstance(                                                     \
332         PrimitiveMode modePacked, const GLint *firsts, const GLsizei *counts,                      \
333         const GLsizei *instanceCounts, const GLuint *baseInstances, GLsizei drawcount);            \
334     void multiDrawElementsInstancedBaseVertexBaseInstance(                                         \
335         PrimitiveMode modePacked, const GLsizei *counts, DrawElementsType typePacked,              \
336         const GLvoid *const *indices, const GLsizei *instanceCounts, const GLint *baseVertices,    \
337         const GLuint *baseInstances, GLsizei drawcount);                                           \
338     /* GL_ANGLE_base_vertex_base_instance_shader_builtin */                                        \
339     /* GL_ANGLE_client_arrays */                                                                   \
340     /* GL_ANGLE_compressed_texture_etc */                                                          \
341     /* GL_ANGLE_copy_texture_3d */                                                                 \
342     void copyTexture3D(TextureID sourceIdPacked, GLint sourceLevel,                                \
343                        TextureTarget destTargetPacked, TextureID destIdPacked, GLint destLevel,    \
344                        GLint internalFormat, GLenum destType, GLboolean unpackFlipY,               \
345                        GLboolean unpackPremultiplyAlpha, GLboolean unpackUnmultiplyAlpha);         \
346     void copySubTexture3D(TextureID sourceIdPacked, GLint sourceLevel,                             \
347                           TextureTarget destTargetPacked, TextureID destIdPacked, GLint destLevel, \
348                           GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLint z,  \
349                           GLint width, GLint height, GLint depth, GLboolean unpackFlipY,           \
350                           GLboolean unpackPremultiplyAlpha, GLboolean unpackUnmultiplyAlpha);      \
351     /* GL_ANGLE_framebuffer_multisample */                                                         \
352     /* GL_ANGLE_get_image */                                                                       \
353     void getTexImage(TextureTarget targetPacked, GLint level, GLenum format, GLenum type,          \
354                      void *pixels);                                                                \
355     void getCompressedTexImage(TextureTarget targetPacked, GLint level, void *pixels);             \
356     void getRenderbufferImage(GLenum target, GLenum format, GLenum type, void *pixels);            \
357     /* GL_ANGLE_get_serialized_context_string */                                                   \
358     /* GL_ANGLE_get_tex_level_parameter */                                                         \
359     /* GL_ANGLE_lossy_etc_decode */                                                                \
360     /* GL_ANGLE_memory_object_flags */                                                             \
361     void texStorageMemFlags2D(TextureType targetPacked, GLsizei levels, GLenum internalFormat,     \
362                               GLsizei width, GLsizei height, MemoryObjectID memoryPacked,          \
363                               GLuint64 offset, GLbitfield createFlags, GLbitfield usageFlags,      \
364                               const void *imageCreateInfoPNext);                                   \
365     void texStorageMemFlags2DMultisample(                                                          \
366         TextureType targetPacked, GLsizei samples, GLenum internalFormat, GLsizei width,           \
367         GLsizei height, GLboolean fixedSampleLocations, MemoryObjectID memoryPacked,               \
368         GLuint64 offset, GLbitfield createFlags, GLbitfield usageFlags,                            \
369         const void *imageCreateInfoPNext);                                                         \
370     void texStorageMemFlags3D(                                                                     \
371         TextureType targetPacked, GLsizei levels, GLenum internalFormat, GLsizei width,            \
372         GLsizei height, GLsizei depth, MemoryObjectID memoryPacked, GLuint64 offset,               \
373         GLbitfield createFlags, GLbitfield usageFlags, const void *imageCreateInfoPNext);          \
374     void texStorageMemFlags3DMultisample(                                                          \
375         TextureType targetPacked, GLsizei samples, GLenum internalFormat, GLsizei width,           \
376         GLsizei height, GLsizei depth, GLboolean fixedSampleLocations,                             \
377         MemoryObjectID memoryPacked, GLuint64 offset, GLbitfield createFlags,                      \
378         GLbitfield usageFlags, const void *imageCreateInfoPNext);                                  \
379     /* GL_ANGLE_memory_object_fuchsia */                                                           \
380     void importMemoryZirconHandle(MemoryObjectID memoryPacked, GLuint64 size,                      \
381                                   HandleType handleTypePacked, GLuint handle);                     \
382     /* GL_ANGLE_memory_size */                                                                     \
383     /* GL_ANGLE_multi_draw */                                                                      \
384     void multiDrawArrays(PrimitiveMode modePacked, const GLint *firsts, const GLsizei *counts,     \
385                          GLsizei drawcount);                                                       \
386     void multiDrawArraysInstanced(PrimitiveMode modePacked, const GLint *firsts,                   \
387                                   const GLsizei *counts, const GLsizei *instanceCounts,            \
388                                   GLsizei drawcount);                                              \
389     void multiDrawElements(PrimitiveMode modePacked, const GLsizei *counts,                        \
390                            DrawElementsType typePacked, const GLvoid *const *indices,              \
391                            GLsizei drawcount);                                                     \
392     void multiDrawElementsInstanced(PrimitiveMode modePacked, const GLsizei *counts,               \
393                                     DrawElementsType typePacked, const GLvoid *const *indices,     \
394                                     const GLsizei *instanceCounts, GLsizei drawcount);             \
395     /* GL_ANGLE_multiview_multisample */                                                           \
396     /* GL_ANGLE_program_binary */                                                                  \
397     /* GL_ANGLE_program_cache_control */                                                           \
398     /* GL_ANGLE_provoking_vertex */                                                                \
399     void provokingVertex(ProvokingVertexConvention modePacked);                                    \
400     /* GL_ANGLE_relaxed_vertex_attribute_type */                                                   \
401     /* GL_ANGLE_request_extension */                                                               \
402     void requestExtension(const GLchar *name);                                                     \
403     void disableExtension(const GLchar *name);                                                     \
404     /* GL_ANGLE_rgbx_internal_format */                                                            \
405     /* GL_ANGLE_robust_client_memory */                                                            \
406     void getBooleanvRobust(GLenum pname, GLsizei bufSize, GLsizei *length, GLboolean *params);     \
407     void getBufferParameterivRobust(BufferBinding targetPacked, GLenum pname, GLsizei bufSize,     \
408                                     GLsizei *length, GLint *params);                               \
409     void getFloatvRobust(GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params);         \
410     void getFramebufferAttachmentParameterivRobust(GLenum target, GLenum attachment, GLenum pname, \
411                                                    GLsizei bufSize, GLsizei *length,               \
412                                                    GLint *params);                                 \
413     void getIntegervRobust(GLenum pname, GLsizei bufSize, GLsizei *length, GLint *data);           \
414     void getProgramivRobust(ShaderProgramID programPacked, GLenum pname, GLsizei bufSize,          \
415                             GLsizei *length, GLint *params);                                       \
416     void getRenderbufferParameterivRobust(GLenum target, GLenum pname, GLsizei bufSize,            \
417                                           GLsizei *length, GLint *params);                         \
418     void getShaderivRobust(ShaderProgramID shaderPacked, GLenum pname, GLsizei bufSize,            \
419                            GLsizei *length, GLint *params);                                        \
420     void getTexParameterfvRobust(TextureType targetPacked, GLenum pname, GLsizei bufSize,          \
421                                  GLsizei *length, GLfloat *params);                                \
422     void getTexParameterivRobust(TextureType targetPacked, GLenum pname, GLsizei bufSize,          \
423                                  GLsizei *length, GLint *params);                                  \
424     void getUniformfvRobust(ShaderProgramID programPacked, UniformLocation locationPacked,         \
425                             GLsizei bufSize, GLsizei *length, GLfloat *params);                    \
426     void getUniformivRobust(ShaderProgramID programPacked, UniformLocation locationPacked,         \
427                             GLsizei bufSize, GLsizei *length, GLint *params);                      \
428     void getVertexAttribfvRobust(GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length,     \
429                                  GLfloat *params);                                                 \
430     void getVertexAttribivRobust(GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length,     \
431                                  GLint *params);                                                   \
432     void getVertexAttribPointervRobust(GLuint index, GLenum pname, GLsizei bufSize,                \
433                                        GLsizei *length, void **pointer);                           \
434     void readPixelsRobust(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format,          \
435                           GLenum type, GLsizei bufSize, GLsizei *length, GLsizei *columns,         \
436                           GLsizei *rows, void *pixels);                                            \
437     void texImage2DRobust(TextureTarget targetPacked, GLint level, GLint internalformat,           \
438                           GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, \
439                           GLsizei bufSize, const void *pixels);                                    \
440     void texParameterfvRobust(TextureType targetPacked, GLenum pname, GLsizei bufSize,             \
441                               const GLfloat *params);                                              \
442     void texParameterivRobust(TextureType targetPacked, GLenum pname, GLsizei bufSize,             \
443                               const GLint *params);                                                \
444     void texSubImage2DRobust(TextureTarget targetPacked, GLint level, GLint xoffset,               \
445                              GLint yoffset, GLsizei width, GLsizei height, GLenum format,          \
446                              GLenum type, GLsizei bufSize, const void *pixels);                    \
447     void texImage3DRobust(TextureTarget targetPacked, GLint level, GLint internalformat,           \
448                           GLsizei width, GLsizei height, GLsizei depth, GLint border,              \
449                           GLenum format, GLenum type, GLsizei bufSize, const void *pixels);        \
450     void texSubImage3DRobust(TextureTarget targetPacked, GLint level, GLint xoffset,               \
451                              GLint yoffset, GLint zoffset, GLsizei width, GLsizei height,          \
452                              GLsizei depth, GLenum format, GLenum type, GLsizei bufSize,           \
453                              const void *pixels);                                                  \
454     void compressedTexImage2DRobust(                                                               \
455         TextureTarget targetPacked, GLint level, GLenum internalformat, GLsizei width,             \
456         GLsizei height, GLint border, GLsizei imageSize, GLsizei dataSize, const GLvoid *data);    \
457     void compressedTexSubImage2DRobust(                                                            \
458         TextureTarget targetPacked, GLint level, GLsizei xoffset, GLsizei yoffset, GLsizei width,  \
459         GLsizei height, GLenum format, GLsizei imageSize, GLsizei dataSize, const GLvoid *data);   \
460     void compressedTexImage3DRobust(TextureTarget targetPacked, GLint level,                       \
461                                     GLenum internalformat, GLsizei width, GLsizei height,          \
462                                     GLsizei depth, GLint border, GLsizei imageSize,                \
463                                     GLsizei dataSize, const GLvoid *data);                         \
464     void compressedTexSubImage3DRobust(TextureTarget targetPacked, GLint level, GLint xoffset,     \
465                                        GLint yoffset, GLint zoffset, GLsizei width,                \
466                                        GLsizei height, GLsizei depth, GLenum format,               \
467                                        GLsizei imageSize, GLsizei dataSize, const GLvoid *data);   \
468     void getQueryivRobust(QueryType targetPacked, GLenum pname, GLsizei bufSize, GLsizei *length,  \
469                           GLint *params);                                                          \
470     void getQueryObjectuivRobust(QueryID idPacked, GLenum pname, GLsizei bufSize, GLsizei *length, \
471                                  GLuint *params);                                                  \
472     void getBufferPointervRobust(BufferBinding targetPacked, GLenum pname, GLsizei bufSize,        \
473                                  GLsizei *length, void **params);                                  \
474     void getIntegeri_vRobust(GLenum target, GLuint index, GLsizei bufSize, GLsizei *length,        \
475                              GLint *data);                                                         \
476     void getInternalformativRobust(GLenum target, GLenum internalformat, GLenum pname,             \
477                                    GLsizei bufSize, GLsizei *length, GLint *params);               \
478     void getVertexAttribIivRobust(GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length,    \
479                                   GLint *params);                                                  \
480     void getVertexAttribIuivRobust(GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length,   \
481                                    GLuint *params);                                                \
482     void getUniformuivRobust(ShaderProgramID programPacked, UniformLocation locationPacked,        \
483                              GLsizei bufSize, GLsizei *length, GLuint *params);                    \
484     void getActiveUniformBlockivRobust(ShaderProgramID programPacked,                              \
485                                        UniformBlockIndex uniformBlockIndexPacked, GLenum pname,    \
486                                        GLsizei bufSize, GLsizei *length, GLint *params);           \
487     void getInteger64vRobust(GLenum pname, GLsizei bufSize, GLsizei *length, GLint64 *data);       \
488     void getInteger64i_vRobust(GLenum target, GLuint index, GLsizei bufSize, GLsizei *length,      \
489                                GLint64 *data);                                                     \
490     void getBufferParameteri64vRobust(BufferBinding targetPacked, GLenum pname, GLsizei bufSize,   \
491                                       GLsizei *length, GLint64 *params);                           \
492     void samplerParameterivRobust(SamplerID samplerPacked, GLuint pname, GLsizei bufSize,          \
493                                   const GLint *param);                                             \
494     void samplerParameterfvRobust(SamplerID samplerPacked, GLenum pname, GLsizei bufSize,          \
495                                   const GLfloat *param);                                           \
496     void getSamplerParameterivRobust(SamplerID samplerPacked, GLenum pname, GLsizei bufSize,       \
497                                      GLsizei *length, GLint *params);                              \
498     void getSamplerParameterfvRobust(SamplerID samplerPacked, GLenum pname, GLsizei bufSize,       \
499                                      GLsizei *length, GLfloat *params);                            \
500     void getFramebufferParameterivRobust(GLenum target, GLenum pname, GLsizei bufSize,             \
501                                          GLsizei *length, GLint *params);                          \
502     void getProgramInterfaceivRobust(ShaderProgramID programPacked, GLenum programInterface,       \
503                                      GLenum pname, GLsizei bufSize, GLsizei *length,               \
504                                      GLint *params);                                               \
505     void getBooleani_vRobust(GLenum target, GLuint index, GLsizei bufSize, GLsizei *length,        \
506                              GLboolean *data);                                                     \
507     void getMultisamplefvRobust(GLenum pname, GLuint index, GLsizei bufSize, GLsizei *length,      \
508                                 GLfloat *val);                                                     \
509     void getTexLevelParameterivRobust(TextureTarget targetPacked, GLint level, GLenum pname,       \
510                                       GLsizei bufSize, GLsizei *length, GLint *params);            \
511     void getTexLevelParameterfvRobust(TextureTarget targetPacked, GLint level, GLenum pname,       \
512                                       GLsizei bufSize, GLsizei *length, GLfloat *params);          \
513     void getPointervRobustANGLERobust(GLenum pname, GLsizei bufSize, GLsizei *length,              \
514                                       void **params);                                              \
515     void readnPixelsRobust(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format,         \
516                            GLenum type, GLsizei bufSize, GLsizei *length, GLsizei *columns,        \
517                            GLsizei *rows, void *data);                                             \
518     void getnUniformfvRobust(ShaderProgramID programPacked, UniformLocation locationPacked,        \
519                              GLsizei bufSize, GLsizei *length, GLfloat *params);                   \
520     void getnUniformivRobust(ShaderProgramID programPacked, UniformLocation locationPacked,        \
521                              GLsizei bufSize, GLsizei *length, GLint *params);                     \
522     void getnUniformuivRobust(ShaderProgramID programPacked, UniformLocation locationPacked,       \
523                               GLsizei bufSize, GLsizei *length, GLuint *params);                   \
524     void texParameterIivRobust(TextureType targetPacked, GLenum pname, GLsizei bufSize,            \
525                                const GLint *params);                                               \
526     void texParameterIuivRobust(TextureType targetPacked, GLenum pname, GLsizei bufSize,           \
527                                 const GLuint *params);                                             \
528     void getTexParameterIivRobust(TextureType targetPacked, GLenum pname, GLsizei bufSize,         \
529                                   GLsizei *length, GLint *params);                                 \
530     void getTexParameterIuivRobust(TextureType targetPacked, GLenum pname, GLsizei bufSize,        \
531                                    GLsizei *length, GLuint *params);                               \
532     void samplerParameterIivRobust(SamplerID samplerPacked, GLenum pname, GLsizei bufSize,         \
533                                    const GLint *param);                                            \
534     void samplerParameterIuivRobust(SamplerID samplerPacked, GLenum pname, GLsizei bufSize,        \
535                                     const GLuint *param);                                          \
536     void getSamplerParameterIivRobust(SamplerID samplerPacked, GLenum pname, GLsizei bufSize,      \
537                                       GLsizei *length, GLint *params);                             \
538     void getSamplerParameterIuivRobust(SamplerID samplerPacked, GLenum pname, GLsizei bufSize,     \
539                                        GLsizei *length, GLuint *params);                           \
540     void getQueryObjectivRobust(QueryID idPacked, GLenum pname, GLsizei bufSize, GLsizei *length,  \
541                                 GLint *params);                                                    \
542     void getQueryObjecti64vRobust(QueryID idPacked, GLenum pname, GLsizei bufSize,                 \
543                                   GLsizei *length, GLint64 *params);                               \
544     void getQueryObjectui64vRobust(QueryID idPacked, GLenum pname, GLsizei bufSize,                \
545                                    GLsizei *length, GLuint64 *params);                             \
546     /* GL_ANGLE_robust_fragment_shader_output */                                                   \
547     /* GL_ANGLE_robust_resource_initialization */                                                  \
548     /* GL_ANGLE_semaphore_fuchsia */                                                               \
549     void importSemaphoreZirconHandle(SemaphoreID semaphorePacked, HandleType handleTypePacked,     \
550                                      GLuint handle);                                               \
551     /* GL_ANGLE_texture_compression_dxt3 */                                                        \
552     /* GL_ANGLE_texture_compression_dxt5 */                                                        \
553     /* GL_ANGLE_texture_external_update */                                                         \
554     void texImage2DExternal(TextureTarget targetPacked, GLint level, GLint internalformat,         \
555                             GLsizei width, GLsizei height, GLint border, GLenum format,            \
556                             GLenum type);                                                          \
557     void invalidateTexture(TextureType targetPacked);                                              \
558     /* GL_ANGLE_texture_multisample */                                                             \
559     /* GL_ANGLE_texture_rectangle */                                                               \
560     /* GL_ANGLE_vulkan_image */                                                                    \
561     void acquireTextures(GLuint numTextures, const TextureID *texturesPacked,                      \
562                          const GLenum *layouts);                                                   \
563     void releaseTextures(GLuint numTextures, const TextureID *texturesPacked, GLenum *layouts);    \
564     /* GL_ANGLE_webgl_compatibility */                                                             \
565     /* GL_ANGLE_yuv_internal_format */                                                             \
566     /* GL_CHROMIUM_bind_generates_resource */                                                      \
567     /* GL_CHROMIUM_bind_uniform_location */                                                        \
568     void bindUniformLocation(ShaderProgramID programPacked, UniformLocation locationPacked,        \
569                              const GLchar *name);                                                  \
570     /* GL_CHROMIUM_color_buffer_float_rgb */                                                       \
571     /* GL_CHROMIUM_color_buffer_float_rgba */                                                      \
572     /* GL_CHROMIUM_copy_compressed_texture */                                                      \
573     void compressedCopyTexture(TextureID sourceIdPacked, TextureID destIdPacked);                  \
574     /* GL_CHROMIUM_copy_texture */                                                                 \
575     void copyTexture(TextureID sourceIdPacked, GLint sourceLevel, TextureTarget destTargetPacked,  \
576                      TextureID destIdPacked, GLint destLevel, GLint internalFormat,                \
577                      GLenum destType, GLboolean unpackFlipY, GLboolean unpackPremultiplyAlpha,     \
578                      GLboolean unpackUnmultiplyAlpha);                                             \
579     void copySubTexture(TextureID sourceIdPacked, GLint sourceLevel,                               \
580                         TextureTarget destTargetPacked, TextureID destIdPacked, GLint destLevel,   \
581                         GLint xoffset, GLint yoffset, GLint x, GLint y, GLint width, GLint height, \
582                         GLboolean unpackFlipY, GLboolean unpackPremultiplyAlpha,                   \
583                         GLboolean unpackUnmultiplyAlpha);                                          \
584     /* GL_CHROMIUM_framebuffer_mixed_samples */                                                    \
585     void coverageModulation(GLenum components);                                                    \
586     /* GL_CHROMIUM_lose_context */                                                                 \
587     void loseContext(GraphicsResetStatus currentPacked, GraphicsResetStatus otherPacked);          \
588     /* GL_CHROMIUM_sync_query */                                                                   \
589     /* GL_CHROMIUM_texture_filtering_hint */
590 
591 #endif  // ANGLE_CONTEXT_API_EXT_AUTOGEN_H_
592