// GENERATED FILE - DO NOT EDIT.
// Generated by generate_entry_points.py using data from gl.xml.
//
// Copyright 2020 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// entry_points_gles_3_0_autogen.h:
//   Defines the GLES 3.0 entry points.

#ifndef LIBGLESV2_ENTRY_POINTS_GLES_3_0_AUTOGEN_H_
#define LIBGLESV2_ENTRY_POINTS_GLES_3_0_AUTOGEN_H_

#include <GLES3/gl3.h>
#include <export.h>

extern "C" {
ANGLE_EXPORT void GL_APIENTRY GL_BeginQuery(GLenum target, GLuint id);
ANGLE_EXPORT void GL_APIENTRY GL_BeginTransformFeedback(GLenum primitiveMode);
ANGLE_EXPORT void GL_APIENTRY GL_BindBufferBase(GLenum target, GLuint index, GLuint buffer);
ANGLE_EXPORT void GL_APIENTRY
GL_BindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
ANGLE_EXPORT void GL_APIENTRY GL_BindSampler(GLuint unit, GLuint sampler);
ANGLE_EXPORT void GL_APIENTRY GL_BindTransformFeedback(GLenum target, GLuint id);
ANGLE_EXPORT void GL_APIENTRY GL_BindVertexArray(GLuint array);
ANGLE_EXPORT void GL_APIENTRY GL_BlitFramebuffer(GLint srcX0,
                                                 GLint srcY0,
                                                 GLint srcX1,
                                                 GLint srcY1,
                                                 GLint dstX0,
                                                 GLint dstY0,
                                                 GLint dstX1,
                                                 GLint dstY1,
                                                 GLbitfield mask,
                                                 GLenum filter);
ANGLE_EXPORT void GL_APIENTRY GL_ClearBufferfi(GLenum buffer,
                                               GLint drawbuffer,
                                               GLfloat depth,
                                               GLint stencil);
ANGLE_EXPORT void GL_APIENTRY GL_ClearBufferfv(GLenum buffer,
                                               GLint drawbuffer,
                                               const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY GL_ClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
ANGLE_EXPORT void GL_APIENTRY GL_ClearBufferuiv(GLenum buffer,
                                                GLint drawbuffer,
                                                const GLuint *value);
ANGLE_EXPORT GLenum GL_APIENTRY GL_ClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
ANGLE_EXPORT void GL_APIENTRY GL_CompressedTexImage3D(GLenum target,
                                                      GLint level,
                                                      GLenum internalformat,
                                                      GLsizei width,
                                                      GLsizei height,
                                                      GLsizei depth,
                                                      GLint border,
                                                      GLsizei imageSize,
                                                      const void *data);
ANGLE_EXPORT void GL_APIENTRY GL_CompressedTexSubImage3D(GLenum target,
                                                         GLint level,
                                                         GLint xoffset,
                                                         GLint yoffset,
                                                         GLint zoffset,
                                                         GLsizei width,
                                                         GLsizei height,
                                                         GLsizei depth,
                                                         GLenum format,
                                                         GLsizei imageSize,
                                                         const void *data);
ANGLE_EXPORT void GL_APIENTRY GL_CopyBufferSubData(GLenum readTarget,
                                                   GLenum writeTarget,
                                                   GLintptr readOffset,
                                                   GLintptr writeOffset,
                                                   GLsizeiptr size);
ANGLE_EXPORT void GL_APIENTRY GL_CopyTexSubImage3D(GLenum target,
                                                   GLint level,
                                                   GLint xoffset,
                                                   GLint yoffset,
                                                   GLint zoffset,
                                                   GLint x,
                                                   GLint y,
                                                   GLsizei width,
                                                   GLsizei height);
ANGLE_EXPORT void GL_APIENTRY GL_DeleteQueries(GLsizei n, const GLuint *ids);
ANGLE_EXPORT void GL_APIENTRY GL_DeleteSamplers(GLsizei count, const GLuint *samplers);
ANGLE_EXPORT void GL_APIENTRY GL_DeleteSync(GLsync sync);
ANGLE_EXPORT void GL_APIENTRY GL_DeleteTransformFeedbacks(GLsizei n, const GLuint *ids);
ANGLE_EXPORT void GL_APIENTRY GL_DeleteVertexArrays(GLsizei n, const GLuint *arrays);
ANGLE_EXPORT void GL_APIENTRY GL_DrawArraysInstanced(GLenum mode,
                                                     GLint first,
                                                     GLsizei count,
                                                     GLsizei instancecount);
ANGLE_EXPORT void GL_APIENTRY GL_DrawBuffers(GLsizei n, const GLenum *bufs);
ANGLE_EXPORT void GL_APIENTRY GL_DrawElementsInstanced(GLenum mode,
                                                       GLsizei count,
                                                       GLenum type,
                                                       const void *indices,
                                                       GLsizei instancecount);
ANGLE_EXPORT void GL_APIENTRY GL_DrawRangeElements(GLenum mode,
                                                   GLuint start,
                                                   GLuint end,
                                                   GLsizei count,
                                                   GLenum type,
                                                   const void *indices);
ANGLE_EXPORT void GL_APIENTRY GL_EndQuery(GLenum target);
ANGLE_EXPORT void GL_APIENTRY GL_EndTransformFeedback();
ANGLE_EXPORT GLsync GL_APIENTRY GL_FenceSync(GLenum condition, GLbitfield flags);
ANGLE_EXPORT void GL_APIENTRY GL_FlushMappedBufferRange(GLenum target,
                                                        GLintptr offset,
                                                        GLsizeiptr length);
ANGLE_EXPORT void GL_APIENTRY GL_FramebufferTextureLayer(GLenum target,
                                                         GLenum attachment,
                                                         GLuint texture,
                                                         GLint level,
                                                         GLint layer);
ANGLE_EXPORT void GL_APIENTRY GL_GenQueries(GLsizei n, GLuint *ids);
ANGLE_EXPORT void GL_APIENTRY GL_GenSamplers(GLsizei count, GLuint *samplers);
ANGLE_EXPORT void GL_APIENTRY GL_GenTransformFeedbacks(GLsizei n, GLuint *ids);
ANGLE_EXPORT void GL_APIENTRY GL_GenVertexArrays(GLsizei n, GLuint *arrays);
ANGLE_EXPORT void GL_APIENTRY GL_GetActiveUniformBlockName(GLuint program,
                                                           GLuint uniformBlockIndex,
                                                           GLsizei bufSize,
                                                           GLsizei *length,
                                                           GLchar *uniformBlockName);
ANGLE_EXPORT void GL_APIENTRY GL_GetActiveUniformBlockiv(GLuint program,
                                                         GLuint uniformBlockIndex,
                                                         GLenum pname,
                                                         GLint *params);
ANGLE_EXPORT void GL_APIENTRY GL_GetActiveUniformsiv(GLuint program,
                                                     GLsizei uniformCount,
                                                     const GLuint *uniformIndices,
                                                     GLenum pname,
                                                     GLint *params);
ANGLE_EXPORT void GL_APIENTRY GL_GetBufferParameteri64v(GLenum target,
                                                        GLenum pname,
                                                        GLint64 *params);
ANGLE_EXPORT void GL_APIENTRY GL_GetBufferPointerv(GLenum target, GLenum pname, void **params);
ANGLE_EXPORT GLint GL_APIENTRY GL_GetFragDataLocation(GLuint program, const GLchar *name);
ANGLE_EXPORT void GL_APIENTRY GL_GetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
ANGLE_EXPORT void GL_APIENTRY GL_GetInteger64v(GLenum pname, GLint64 *data);
ANGLE_EXPORT void GL_APIENTRY GL_GetIntegeri_v(GLenum target, GLuint index, GLint *data);
ANGLE_EXPORT void GL_APIENTRY GL_GetInternalformativ(GLenum target,
                                                     GLenum internalformat,
                                                     GLenum pname,
                                                     GLsizei count,
                                                     GLint *params);
ANGLE_EXPORT void GL_APIENTRY GL_GetProgramBinary(GLuint program,
                                                  GLsizei bufSize,
                                                  GLsizei *length,
                                                  GLenum *binaryFormat,
                                                  void *binary);
ANGLE_EXPORT void GL_APIENTRY GL_GetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
ANGLE_EXPORT void GL_APIENTRY GL_GetQueryiv(GLenum target, GLenum pname, GLint *params);
ANGLE_EXPORT void GL_APIENTRY GL_GetSamplerParameterfv(GLuint sampler,
                                                       GLenum pname,
                                                       GLfloat *params);
ANGLE_EXPORT void GL_APIENTRY GL_GetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
ANGLE_EXPORT const GLubyte *GL_APIENTRY GL_GetStringi(GLenum name, GLuint index);
ANGLE_EXPORT void GL_APIENTRY
GL_GetSynciv(GLsync sync, GLenum pname, GLsizei count, GLsizei *length, GLint *values);
ANGLE_EXPORT void GL_APIENTRY GL_GetTransformFeedbackVarying(GLuint program,
                                                             GLuint index,
                                                             GLsizei bufSize,
                                                             GLsizei *length,
                                                             GLsizei *size,
                                                             GLenum *type,
                                                             GLchar *name);
ANGLE_EXPORT GLuint GL_APIENTRY GL_GetUniformBlockIndex(GLuint program,
                                                        const GLchar *uniformBlockName);
ANGLE_EXPORT void GL_APIENTRY GL_GetUniformIndices(GLuint program,
                                                   GLsizei uniformCount,
                                                   const GLchar *const *uniformNames,
                                                   GLuint *uniformIndices);
ANGLE_EXPORT void GL_APIENTRY GL_GetUniformuiv(GLuint program, GLint location, GLuint *params);
ANGLE_EXPORT void GL_APIENTRY GL_GetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
ANGLE_EXPORT void GL_APIENTRY GL_GetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
ANGLE_EXPORT void GL_APIENTRY GL_InvalidateFramebuffer(GLenum target,
                                                       GLsizei numAttachments,
                                                       const GLenum *attachments);
ANGLE_EXPORT void GL_APIENTRY GL_InvalidateSubFramebuffer(GLenum target,
                                                          GLsizei numAttachments,
                                                          const GLenum *attachments,
                                                          GLint x,
                                                          GLint y,
                                                          GLsizei width,
                                                          GLsizei height);
ANGLE_EXPORT GLboolean GL_APIENTRY GL_IsQuery(GLuint id);
ANGLE_EXPORT GLboolean GL_APIENTRY GL_IsSampler(GLuint sampler);
ANGLE_EXPORT GLboolean GL_APIENTRY GL_IsSync(GLsync sync);
ANGLE_EXPORT GLboolean GL_APIENTRY GL_IsTransformFeedback(GLuint id);
ANGLE_EXPORT GLboolean GL_APIENTRY GL_IsVertexArray(GLuint array);
ANGLE_EXPORT void *GL_APIENTRY GL_MapBufferRange(GLenum target,
                                                 GLintptr offset,
                                                 GLsizeiptr length,
                                                 GLbitfield access);
ANGLE_EXPORT void GL_APIENTRY GL_PauseTransformFeedback();
ANGLE_EXPORT void GL_APIENTRY GL_ProgramBinary(GLuint program,
                                               GLenum binaryFormat,
                                               const void *binary,
                                               GLsizei length);
ANGLE_EXPORT void GL_APIENTRY GL_ProgramParameteri(GLuint program, GLenum pname, GLint value);
ANGLE_EXPORT void GL_APIENTRY GL_ReadBuffer(GLenum src);
ANGLE_EXPORT void GL_APIENTRY GL_RenderbufferStorageMultisample(GLenum target,
                                                                GLsizei samples,
                                                                GLenum internalformat,
                                                                GLsizei width,
                                                                GLsizei height);
ANGLE_EXPORT void GL_APIENTRY GL_ResumeTransformFeedback();
ANGLE_EXPORT void GL_APIENTRY GL_SamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
ANGLE_EXPORT void GL_APIENTRY GL_SamplerParameterfv(GLuint sampler,
                                                    GLenum pname,
                                                    const GLfloat *param);
ANGLE_EXPORT void GL_APIENTRY GL_SamplerParameteri(GLuint sampler, GLenum pname, GLint param);
ANGLE_EXPORT void GL_APIENTRY GL_SamplerParameteriv(GLuint sampler,
                                                    GLenum pname,
                                                    const GLint *param);
ANGLE_EXPORT void GL_APIENTRY GL_TexImage3D(GLenum target,
                                            GLint level,
                                            GLint internalformat,
                                            GLsizei width,
                                            GLsizei height,
                                            GLsizei depth,
                                            GLint border,
                                            GLenum format,
                                            GLenum type,
                                            const void *pixels);
ANGLE_EXPORT void GL_APIENTRY GL_TexStorage2D(GLenum target,
                                              GLsizei levels,
                                              GLenum internalformat,
                                              GLsizei width,
                                              GLsizei height);
ANGLE_EXPORT void GL_APIENTRY GL_TexStorage3D(GLenum target,
                                              GLsizei levels,
                                              GLenum internalformat,
                                              GLsizei width,
                                              GLsizei height,
                                              GLsizei depth);
ANGLE_EXPORT void GL_APIENTRY GL_TexSubImage3D(GLenum target,
                                               GLint level,
                                               GLint xoffset,
                                               GLint yoffset,
                                               GLint zoffset,
                                               GLsizei width,
                                               GLsizei height,
                                               GLsizei depth,
                                               GLenum format,
                                               GLenum type,
                                               const void *pixels);
ANGLE_EXPORT void GL_APIENTRY GL_TransformFeedbackVaryings(GLuint program,
                                                           GLsizei count,
                                                           const GLchar *const *varyings,
                                                           GLenum bufferMode);
ANGLE_EXPORT void GL_APIENTRY GL_Uniform1ui(GLint location, GLuint v0);
ANGLE_EXPORT void GL_APIENTRY GL_Uniform1uiv(GLint location, GLsizei count, const GLuint *value);
ANGLE_EXPORT void GL_APIENTRY GL_Uniform2ui(GLint location, GLuint v0, GLuint v1);
ANGLE_EXPORT void GL_APIENTRY GL_Uniform2uiv(GLint location, GLsizei count, const GLuint *value);
ANGLE_EXPORT void GL_APIENTRY GL_Uniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
ANGLE_EXPORT void GL_APIENTRY GL_Uniform3uiv(GLint location, GLsizei count, const GLuint *value);
ANGLE_EXPORT void GL_APIENTRY
GL_Uniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
ANGLE_EXPORT void GL_APIENTRY GL_Uniform4uiv(GLint location, GLsizei count, const GLuint *value);
ANGLE_EXPORT void GL_APIENTRY GL_UniformBlockBinding(GLuint program,
                                                     GLuint uniformBlockIndex,
                                                     GLuint uniformBlockBinding);
ANGLE_EXPORT void GL_APIENTRY GL_UniformMatrix2x3fv(GLint location,
                                                    GLsizei count,
                                                    GLboolean transpose,
                                                    const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY GL_UniformMatrix2x4fv(GLint location,
                                                    GLsizei count,
                                                    GLboolean transpose,
                                                    const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY GL_UniformMatrix3x2fv(GLint location,
                                                    GLsizei count,
                                                    GLboolean transpose,
                                                    const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY GL_UniformMatrix3x4fv(GLint location,
                                                    GLsizei count,
                                                    GLboolean transpose,
                                                    const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY GL_UniformMatrix4x2fv(GLint location,
                                                    GLsizei count,
                                                    GLboolean transpose,
                                                    const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY GL_UniformMatrix4x3fv(GLint location,
                                                    GLsizei count,
                                                    GLboolean transpose,
                                                    const GLfloat *value);
ANGLE_EXPORT GLboolean GL_APIENTRY GL_UnmapBuffer(GLenum target);
ANGLE_EXPORT void GL_APIENTRY GL_VertexAttribDivisor(GLuint index, GLuint divisor);
ANGLE_EXPORT void GL_APIENTRY GL_VertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w);
ANGLE_EXPORT void GL_APIENTRY GL_VertexAttribI4iv(GLuint index, const GLint *v);
ANGLE_EXPORT void GL_APIENTRY
GL_VertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
ANGLE_EXPORT void GL_APIENTRY GL_VertexAttribI4uiv(GLuint index, const GLuint *v);
ANGLE_EXPORT void GL_APIENTRY
GL_VertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer);
ANGLE_EXPORT void GL_APIENTRY GL_WaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
}  // extern "C"

#endif  // LIBGLESV2_ENTRY_POINTS_GLES_3_0_AUTOGEN_H_
