// 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.
//
// Context_gles_3_2_autogen.h: Creates a macro for interfaces in Context.

#ifndef ANGLE_CONTEXT_GLES_3_2_AUTOGEN_H_
#define ANGLE_CONTEXT_GLES_3_2_AUTOGEN_H_

#define ANGLE_GLES_3_2_CONTEXT_API                                                                 \
    void blendBarrier();                                                                           \
    void copyImageSubData(GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX,            \
                          GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget,                \
                          GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth,    \
                          GLsizei srcHeight, GLsizei srcDepth);                                    \
    void debugMessageCallback(GLDEBUGPROC callback, const void *userParam);                        \
    void debugMessageControl(GLenum source, GLenum type, GLenum severity, GLsizei count,           \
                             const GLuint *ids, GLboolean enabled);                                \
    void debugMessageInsert(GLenum source, GLenum type, GLuint id, GLenum severity,                \
                            GLsizei length, const GLchar *buf);                                    \
    void drawElementsBaseVertex(PrimitiveMode modePacked, GLsizei count,                           \
                                DrawElementsType typePacked, const void *indices,                  \
                                GLint basevertex);                                                 \
    void drawElementsInstancedBaseVertex(PrimitiveMode modePacked, GLsizei count,                  \
                                         DrawElementsType typePacked, const void *indices,         \
                                         GLsizei instancecount, GLint basevertex);                 \
    void drawRangeElementsBaseVertex(PrimitiveMode modePacked, GLuint start, GLuint end,           \
                                     GLsizei count, DrawElementsType typePacked,                   \
                                     const void *indices, GLint basevertex);                       \
    void framebufferTexture(GLenum target, GLenum attachment, TextureID texturePacked,             \
                            GLint level);                                                          \
    GLuint getDebugMessageLog(GLuint count, GLsizei bufSize, GLenum *sources, GLenum *types,       \
                              GLuint *ids, GLenum *severities, GLsizei *lengths,                   \
                              GLchar *messageLog);                                                 \
    GLenum getGraphicsResetStatus();                                                               \
    void getObjectLabel(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length,          \
                        GLchar *label);                                                            \
    void getObjectPtrLabel(const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);      \
    void getPointerv(GLenum pname, void **params);                                                 \
    void getSamplerParameterIiv(SamplerID samplerPacked, GLenum pname, GLint *params);             \
    void getSamplerParameterIuiv(SamplerID samplerPacked, GLenum pname, GLuint *params);           \
    void getTexParameterIiv(TextureType targetPacked, GLenum pname, GLint *params);                \
    void getTexParameterIuiv(TextureType targetPacked, GLenum pname, GLuint *params);              \
    void getnUniformfv(ShaderProgramID programPacked, UniformLocation locationPacked,              \
                       GLsizei bufSize, GLfloat *params);                                          \
    void getnUniformiv(ShaderProgramID programPacked, UniformLocation locationPacked,              \
                       GLsizei bufSize, GLint *params);                                            \
    void getnUniformuiv(ShaderProgramID programPacked, UniformLocation locationPacked,             \
                        GLsizei bufSize, GLuint *params);                                          \
    void objectLabel(GLenum identifier, GLuint name, GLsizei length, const GLchar *label);         \
    void objectPtrLabel(const void *ptr, GLsizei length, const GLchar *label);                     \
    void popDebugGroup();                                                                          \
    void pushDebugGroup(GLenum source, GLuint id, GLsizei length, const GLchar *message);          \
    void readnPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type,  \
                     GLsizei bufSize, void *data);                                                 \
    void samplerParameterIiv(SamplerID samplerPacked, GLenum pname, const GLint *param);           \
    void samplerParameterIuiv(SamplerID samplerPacked, GLenum pname, const GLuint *param);         \
    void texBuffer(TextureType targetPacked, GLenum internalformat, BufferID bufferPacked);        \
    void texBufferRange(TextureType targetPacked, GLenum internalformat, BufferID bufferPacked,    \
                        GLintptr offset, GLsizeiptr size);                                         \
    void texParameterIiv(TextureType targetPacked, GLenum pname, const GLint *params);             \
    void texParameterIuiv(TextureType targetPacked, GLenum pname, const GLuint *params);           \
    void texStorage3DMultisample(TextureType targetPacked, GLsizei samples, GLenum internalformat, \
                                 GLsizei width, GLsizei height, GLsizei depth,                     \
                                 GLboolean fixedsamplelocations);

#endif  // ANGLE_CONTEXT_API_3_2_AUTOGEN_H_
