Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-02-21 10:12:16

0001 // Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB)
0002 // Copyright (C) 2016 The Qt Company Ltd.
0003 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
0004 /***************************************************************************
0005 ** This file was generated by glgen version 0.1
0006 ** Command line was: glgen
0007 **
0008 ** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
0009 **
0010 ** This is an auto-generated file.
0011 ** Do not edit! All changes made to it will be lost.
0012 **
0013 ****************************************************************************/
0014 
0015 #ifndef QOPENGLVERSIONFUNCTIONS_4_5_CORE_H
0016 #define QOPENGLVERSIONFUNCTIONS_4_5_CORE_H
0017 
0018 #include <QtOpenGL/qtopenglglobal.h>
0019 
0020 #if !defined(QT_NO_OPENGL) && !QT_CONFIG(opengles2)
0021 
0022 #include <QtOpenGL/QOpenGLVersionProfile>
0023 #include <QtOpenGL/QOpenGLVersionFunctions>
0024 #include <QtGui/qopenglcontext.h>
0025 
0026 // MemoryBarrier is a macro on some architectures on Windows
0027 #ifdef Q_OS_WIN
0028 #pragma push_macro("MemoryBarrier")
0029 #undef MemoryBarrier
0030 #endif
0031 
0032 QT_BEGIN_NAMESPACE
0033 
0034 class Q_OPENGL_EXPORT QOpenGLFunctions_4_5_Core : public QAbstractOpenGLFunctions
0035 {
0036 public:
0037     QOpenGLFunctions_4_5_Core();
0038     ~QOpenGLFunctions_4_5_Core();
0039 
0040     bool initializeOpenGLFunctions() override;
0041 
0042     // OpenGL 1.0 core functions
0043     void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
0044     void glDepthRange(GLdouble nearVal, GLdouble farVal);
0045     GLboolean glIsEnabled(GLenum cap);
0046     void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
0047     void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
0048     void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
0049     void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
0050     void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, void *pixels);
0051     const GLubyte * glGetString(GLenum name);
0052     void glGetIntegerv(GLenum pname, GLint *data);
0053     void glGetFloatv(GLenum pname, GLfloat *data);
0054     GLenum glGetError();
0055     void glGetDoublev(GLenum pname, GLdouble *data);
0056     void glGetBooleanv(GLenum pname, GLboolean *data);
0057     void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels);
0058     void glReadBuffer(GLenum src);
0059     void glPixelStorei(GLenum pname, GLint param);
0060     void glPixelStoref(GLenum pname, GLfloat param);
0061     void glDepthFunc(GLenum func);
0062     void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
0063     void glStencilFunc(GLenum func, GLint ref, GLuint mask);
0064     void glLogicOp(GLenum opcode);
0065     void glBlendFunc(GLenum sfactor, GLenum dfactor);
0066     void glFlush();
0067     void glFinish();
0068     void glEnable(GLenum cap);
0069     void glDisable(GLenum cap);
0070     void glDepthMask(GLboolean flag);
0071     void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
0072     void glStencilMask(GLuint mask);
0073     void glClearDepth(GLdouble depth);
0074     void glClearStencil(GLint s);
0075     void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
0076     void glClear(GLbitfield mask);
0077     void glDrawBuffer(GLenum buf);
0078     void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels);
0079     void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels);
0080     void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
0081     void glTexParameteri(GLenum target, GLenum pname, GLint param);
0082     void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
0083     void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
0084     void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
0085     void glPolygonMode(GLenum face, GLenum mode);
0086     void glPointSize(GLfloat size);
0087     void glLineWidth(GLfloat width);
0088     void glHint(GLenum target, GLenum mode);
0089     void glFrontFace(GLenum mode);
0090     void glCullFace(GLenum mode);
0091 
0092     // OpenGL 1.1 core functions
0093     GLboolean glIsTexture(GLuint texture);
0094     void glGenTextures(GLsizei n, GLuint *textures);
0095     void glDeleteTextures(GLsizei n, const GLuint *textures);
0096     void glBindTexture(GLenum target, GLuint texture);
0097     void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
0098     void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels);
0099     void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
0100     void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
0101     void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
0102     void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
0103     void glPolygonOffset(GLfloat factor, GLfloat units);
0104     void glDrawElements(GLenum mode, GLsizei count, GLenum type, const void *indices);
0105     void glDrawArrays(GLenum mode, GLint first, GLsizei count);
0106 
0107     // OpenGL 1.2 core functions
0108     void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
0109     void glBlendEquation(GLenum mode);
0110     void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
0111     void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
0112     void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels);
0113     void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices);
0114 
0115     // OpenGL 1.3 core functions
0116     void glGetCompressedTexImage(GLenum target, GLint level, void *img);
0117     void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data);
0118     void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data);
0119     void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data);
0120     void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data);
0121     void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data);
0122     void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data);
0123     void glSampleCoverage(GLfloat value, GLboolean invert);
0124     void glActiveTexture(GLenum texture);
0125 
0126     // OpenGL 1.4 core functions
0127     void glPointParameteriv(GLenum pname, const GLint *params);
0128     void glPointParameteri(GLenum pname, GLint param);
0129     void glPointParameterfv(GLenum pname, const GLfloat *params);
0130     void glPointParameterf(GLenum pname, GLfloat param);
0131     void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const void *const *indices, GLsizei drawcount);
0132     void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
0133     void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
0134 
0135     // OpenGL 1.5 core functions
0136     void glGetBufferPointerv(GLenum target, GLenum pname, void * *params);
0137     void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
0138     GLboolean glUnmapBuffer(GLenum target);
0139     void * glMapBuffer(GLenum target, GLenum access);
0140     void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, void *data);
0141     void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const void *data);
0142     void glBufferData(GLenum target, GLsizeiptr size, const void *data, GLenum usage);
0143     GLboolean glIsBuffer(GLuint buffer);
0144     void glGenBuffers(GLsizei n, GLuint *buffers);
0145     void glDeleteBuffers(GLsizei n, const GLuint *buffers);
0146     void glBindBuffer(GLenum target, GLuint buffer);
0147     void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
0148     void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
0149     void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
0150     void glEndQuery(GLenum target);
0151     void glBeginQuery(GLenum target, GLuint id);
0152     GLboolean glIsQuery(GLuint id);
0153     void glDeleteQueries(GLsizei n, const GLuint *ids);
0154     void glGenQueries(GLsizei n, GLuint *ids);
0155 
0156     // OpenGL 2.0 core functions
0157     void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer);
0158     void glVertexAttrib4usv(GLuint index, const GLushort *v);
0159     void glVertexAttrib4uiv(GLuint index, const GLuint *v);
0160     void glVertexAttrib4ubv(GLuint index, const GLubyte *v);
0161     void glVertexAttrib4sv(GLuint index, const GLshort *v);
0162     void glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
0163     void glVertexAttrib4iv(GLuint index, const GLint *v);
0164     void glVertexAttrib4fv(GLuint index, const GLfloat *v);
0165     void glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
0166     void glVertexAttrib4dv(GLuint index, const GLdouble *v);
0167     void glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
0168     void glVertexAttrib4bv(GLuint index, const GLbyte *v);
0169     void glVertexAttrib4Nusv(GLuint index, const GLushort *v);
0170     void glVertexAttrib4Nuiv(GLuint index, const GLuint *v);
0171     void glVertexAttrib4Nubv(GLuint index, const GLubyte *v);
0172     void glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
0173     void glVertexAttrib4Nsv(GLuint index, const GLshort *v);
0174     void glVertexAttrib4Niv(GLuint index, const GLint *v);
0175     void glVertexAttrib4Nbv(GLuint index, const GLbyte *v);
0176     void glVertexAttrib3sv(GLuint index, const GLshort *v);
0177     void glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z);
0178     void glVertexAttrib3fv(GLuint index, const GLfloat *v);
0179     void glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
0180     void glVertexAttrib3dv(GLuint index, const GLdouble *v);
0181     void glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
0182     void glVertexAttrib2sv(GLuint index, const GLshort *v);
0183     void glVertexAttrib2s(GLuint index, GLshort x, GLshort y);
0184     void glVertexAttrib2fv(GLuint index, const GLfloat *v);
0185     void glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
0186     void glVertexAttrib2dv(GLuint index, const GLdouble *v);
0187     void glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y);
0188     void glVertexAttrib1sv(GLuint index, const GLshort *v);
0189     void glVertexAttrib1s(GLuint index, GLshort x);
0190     void glVertexAttrib1fv(GLuint index, const GLfloat *v);
0191     void glVertexAttrib1f(GLuint index, GLfloat x);
0192     void glVertexAttrib1dv(GLuint index, const GLdouble *v);
0193     void glVertexAttrib1d(GLuint index, GLdouble x);
0194     void glValidateProgram(GLuint program);
0195     void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0196     void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0197     void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0198     void glUniform4iv(GLint location, GLsizei count, const GLint *value);
0199     void glUniform3iv(GLint location, GLsizei count, const GLint *value);
0200     void glUniform2iv(GLint location, GLsizei count, const GLint *value);
0201     void glUniform1iv(GLint location, GLsizei count, const GLint *value);
0202     void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
0203     void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
0204     void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
0205     void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
0206     void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
0207     void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
0208     void glUniform2i(GLint location, GLint v0, GLint v1);
0209     void glUniform1i(GLint location, GLint v0);
0210     void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
0211     void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
0212     void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
0213     void glUniform1f(GLint location, GLfloat v0);
0214     void glUseProgram(GLuint program);
0215     void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
0216     void glLinkProgram(GLuint program);
0217     GLboolean glIsShader(GLuint shader);
0218     GLboolean glIsProgram(GLuint program);
0219     void glGetVertexAttribPointerv(GLuint index, GLenum pname, void * *pointer);
0220     void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
0221     void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
0222     void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
0223     void glGetUniformiv(GLuint program, GLint location, GLint *params);
0224     void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
0225     GLint glGetUniformLocation(GLuint program, const GLchar *name);
0226     void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
0227     void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
0228     void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
0229     void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
0230     void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
0231     GLint glGetAttribLocation(GLuint program, const GLchar *name);
0232     void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders);
0233     void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
0234     void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
0235     void glEnableVertexAttribArray(GLuint index);
0236     void glDisableVertexAttribArray(GLuint index);
0237     void glDetachShader(GLuint program, GLuint shader);
0238     void glDeleteShader(GLuint shader);
0239     void glDeleteProgram(GLuint program);
0240     GLuint glCreateShader(GLenum type);
0241     GLuint glCreateProgram();
0242     void glCompileShader(GLuint shader);
0243     void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
0244     void glAttachShader(GLuint program, GLuint shader);
0245     void glStencilMaskSeparate(GLenum face, GLuint mask);
0246     void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
0247     void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
0248     void glDrawBuffers(GLsizei n, const GLenum *bufs);
0249     void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
0250 
0251     // OpenGL 2.1 core functions
0252     void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0253     void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0254     void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0255     void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0256     void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0257     void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0258 
0259     // OpenGL 3.0 core functions
0260     GLboolean glIsVertexArray(GLuint array);
0261     void glGenVertexArrays(GLsizei n, GLuint *arrays);
0262     void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
0263     void glBindVertexArray(GLuint array);
0264     void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
0265     void * glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
0266     void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
0267     void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
0268     void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
0269     void glGenerateMipmap(GLenum target);
0270     void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
0271     void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
0272     void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
0273     void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
0274     void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
0275     GLenum glCheckFramebufferStatus(GLenum target);
0276     void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
0277     void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
0278     void glBindFramebuffer(GLenum target, GLuint framebuffer);
0279     GLboolean glIsFramebuffer(GLuint framebuffer);
0280     void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
0281     void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
0282     void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
0283     void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
0284     void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
0285     GLboolean glIsRenderbuffer(GLuint renderbuffer);
0286     const GLubyte * glGetStringi(GLenum name, GLuint index);
0287     void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
0288     void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
0289     void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
0290     void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
0291     void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
0292     void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
0293     void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
0294     void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
0295     void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
0296     void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
0297     void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
0298     void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
0299     void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
0300     void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
0301     void glUniform2ui(GLint location, GLuint v0, GLuint v1);
0302     void glUniform1ui(GLint location, GLuint v0);
0303     GLint glGetFragDataLocation(GLuint program, const GLchar *name);
0304     void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
0305     void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
0306     void glVertexAttribI4usv(GLuint index, const GLushort *v);
0307     void glVertexAttribI4ubv(GLuint index, const GLubyte *v);
0308     void glVertexAttribI4sv(GLuint index, const GLshort *v);
0309     void glVertexAttribI4bv(GLuint index, const GLbyte *v);
0310     void glVertexAttribI4uiv(GLuint index, const GLuint *v);
0311     void glVertexAttribI3uiv(GLuint index, const GLuint *v);
0312     void glVertexAttribI2uiv(GLuint index, const GLuint *v);
0313     void glVertexAttribI1uiv(GLuint index, const GLuint *v);
0314     void glVertexAttribI4iv(GLuint index, const GLint *v);
0315     void glVertexAttribI3iv(GLuint index, const GLint *v);
0316     void glVertexAttribI2iv(GLuint index, const GLint *v);
0317     void glVertexAttribI1iv(GLuint index, const GLint *v);
0318     void glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
0319     void glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z);
0320     void glVertexAttribI2ui(GLuint index, GLuint x, GLuint y);
0321     void glVertexAttribI1ui(GLuint index, GLuint x);
0322     void glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w);
0323     void glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z);
0324     void glVertexAttribI2i(GLuint index, GLint x, GLint y);
0325     void glVertexAttribI1i(GLuint index, GLint x);
0326     void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
0327     void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
0328     void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer);
0329     void glEndConditionalRender();
0330     void glBeginConditionalRender(GLuint id, GLenum mode);
0331     void glClampColor(GLenum target, GLenum clamp);
0332     void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
0333     void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
0334     void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
0335     void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
0336     void glEndTransformFeedback();
0337     void glBeginTransformFeedback(GLenum primitiveMode);
0338     GLboolean glIsEnabledi(GLenum target, GLuint index);
0339     void glDisablei(GLenum target, GLuint index);
0340     void glEnablei(GLenum target, GLuint index);
0341     void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
0342     void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
0343     void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
0344 
0345     // OpenGL 3.1 core functions
0346     void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
0347     void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
0348     void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
0349     GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
0350     void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
0351     void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
0352     void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar *const *uniformNames, GLuint *uniformIndices);
0353     void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
0354     void glPrimitiveRestartIndex(GLuint index);
0355     void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
0356     void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount);
0357     void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
0358 
0359     // OpenGL 3.2 core functions
0360     void glSampleMaski(GLuint maskNumber, GLbitfield mask);
0361     void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
0362     void glTexImage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
0363     void glTexImage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
0364     void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
0365     void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
0366     void glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
0367     void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
0368     void glGetInteger64v(GLenum pname, GLint64 *data);
0369     void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
0370     GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
0371     void glDeleteSync(GLsync sync);
0372     GLboolean glIsSync(GLsync sync);
0373     GLsync glFenceSync(GLenum condition, GLbitfield flags);
0374     void glProvokingVertex(GLenum mode);
0375     void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const void *const *indices, GLsizei drawcount, const GLint *basevertex);
0376     void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex);
0377     void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex);
0378     void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex);
0379 
0380     // OpenGL 3.3 core functions
0381     void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
0382     void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
0383     void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
0384     void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
0385     void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
0386     void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
0387     void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
0388     void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
0389     void glVertexAttribDivisor(GLuint index, GLuint divisor);
0390     void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params);
0391     void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params);
0392     void glQueryCounter(GLuint id, GLenum target);
0393     void glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params);
0394     void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
0395     void glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params);
0396     void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
0397     void glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param);
0398     void glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param);
0399     void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param);
0400     void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
0401     void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param);
0402     void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param);
0403     void glBindSampler(GLuint unit, GLuint sampler);
0404     GLboolean glIsSampler(GLuint sampler);
0405     void glDeleteSamplers(GLsizei count, const GLuint *samplers);
0406     void glGenSamplers(GLsizei count, GLuint *samplers);
0407     GLint glGetFragDataIndex(GLuint program, const GLchar *name);
0408     void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
0409 
0410     // OpenGL 4.0 core functions
0411     void glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params);
0412     void glEndQueryIndexed(GLenum target, GLuint index);
0413     void glBeginQueryIndexed(GLenum target, GLuint index, GLuint id);
0414     void glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream);
0415     void glDrawTransformFeedback(GLenum mode, GLuint id);
0416     void glResumeTransformFeedback();
0417     void glPauseTransformFeedback();
0418     GLboolean glIsTransformFeedback(GLuint id);
0419     void glGenTransformFeedbacks(GLsizei n, GLuint *ids);
0420     void glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids);
0421     void glBindTransformFeedback(GLenum target, GLuint id);
0422     void glPatchParameterfv(GLenum pname, const GLfloat *values);
0423     void glPatchParameteri(GLenum pname, GLint value);
0424     void glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values);
0425     void glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params);
0426     void glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices);
0427     void glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
0428     void glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
0429     void glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
0430     GLuint glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name);
0431     GLint glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name);
0432     void glGetUniformdv(GLuint program, GLint location, GLdouble *params);
0433     void glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0434     void glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0435     void glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0436     void glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0437     void glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0438     void glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0439     void glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0440     void glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0441     void glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0442     void glUniform4dv(GLint location, GLsizei count, const GLdouble *value);
0443     void glUniform3dv(GLint location, GLsizei count, const GLdouble *value);
0444     void glUniform2dv(GLint location, GLsizei count, const GLdouble *value);
0445     void glUniform1dv(GLint location, GLsizei count, const GLdouble *value);
0446     void glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
0447     void glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z);
0448     void glUniform2d(GLint location, GLdouble x, GLdouble y);
0449     void glUniform1d(GLint location, GLdouble x);
0450     void glDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect);
0451     void glDrawArraysIndirect(GLenum mode, const void *indirect);
0452     void glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
0453     void glBlendFunci(GLuint buf, GLenum src, GLenum dst);
0454     void glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha);
0455     void glBlendEquationi(GLuint buf, GLenum mode);
0456     void glMinSampleShading(GLfloat value);
0457 
0458     // OpenGL 4.1 core functions
0459     void glGetDoublei_v(GLenum target, GLuint index, GLdouble *data);
0460     void glGetFloati_v(GLenum target, GLuint index, GLfloat *data);
0461     void glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f);
0462     void glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v);
0463     void glScissorIndexedv(GLuint index, const GLint *v);
0464     void glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
0465     void glScissorArrayv(GLuint first, GLsizei count, const GLint *v);
0466     void glViewportIndexedfv(GLuint index, const GLfloat *v);
0467     void glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
0468     void glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v);
0469     void glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params);
0470     void glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer);
0471     void glVertexAttribL4dv(GLuint index, const GLdouble *v);
0472     void glVertexAttribL3dv(GLuint index, const GLdouble *v);
0473     void glVertexAttribL2dv(GLuint index, const GLdouble *v);
0474     void glVertexAttribL1dv(GLuint index, const GLdouble *v);
0475     void glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
0476     void glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
0477     void glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y);
0478     void glVertexAttribL1d(GLuint index, GLdouble x);
0479     void glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
0480     void glValidateProgramPipeline(GLuint pipeline);
0481     void glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0482     void glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0483     void glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0484     void glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0485     void glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0486     void glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0487     void glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0488     void glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0489     void glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0490     void glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0491     void glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0492     void glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0493     void glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0494     void glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0495     void glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0496     void glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0497     void glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0498     void glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0499     void glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
0500     void glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
0501     void glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
0502     void glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3);
0503     void glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
0504     void glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
0505     void glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value);
0506     void glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
0507     void glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
0508     void glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
0509     void glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
0510     void glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2);
0511     void glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
0512     void glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
0513     void glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value);
0514     void glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
0515     void glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
0516     void glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1);
0517     void glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
0518     void glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1);
0519     void glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
0520     void glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1);
0521     void glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value);
0522     void glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1);
0523     void glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
0524     void glProgramUniform1ui(GLuint program, GLint location, GLuint v0);
0525     void glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
0526     void glProgramUniform1d(GLuint program, GLint location, GLdouble v0);
0527     void glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
0528     void glProgramUniform1f(GLuint program, GLint location, GLfloat v0);
0529     void glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value);
0530     void glProgramUniform1i(GLuint program, GLint location, GLint v0);
0531     void glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params);
0532     GLboolean glIsProgramPipeline(GLuint pipeline);
0533     void glGenProgramPipelines(GLsizei n, GLuint *pipelines);
0534     void glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines);
0535     void glBindProgramPipeline(GLuint pipeline);
0536     GLuint glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar* const *strings);
0537     void glActiveShaderProgram(GLuint pipeline, GLuint program);
0538     void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program);
0539     void glProgramParameteri(GLuint program, GLenum pname, GLint value);
0540     void glProgramBinary(GLuint program, GLenum binaryFormat, const void *binary, GLsizei length);
0541     void glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary);
0542     void glClearDepthf(GLfloat dd);
0543     void glDepthRangef(GLfloat n, GLfloat f);
0544     void glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
0545     void glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const void *binary, GLsizei length);
0546     void glReleaseShaderCompiler();
0547 
0548     // OpenGL 4.2 core functions
0549     void glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount);
0550     void glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount);
0551     void glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
0552     void glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
0553     void glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
0554     void glMemoryBarrier(GLbitfield barriers);
0555     void glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format);
0556     void glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params);
0557     void glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params);
0558     void glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance);
0559     void glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance);
0560     void glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance);
0561 
0562     // OpenGL 4.3 core functions
0563     void glGetObjectPtrLabel(const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
0564     void glObjectPtrLabel(const void *ptr, GLsizei length, const GLchar *label);
0565     void glGetObjectLabel(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
0566     void glObjectLabel(GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
0567     void glPopDebugGroup();
0568     void glPushDebugGroup(GLenum source, GLuint id, GLsizei length, const GLchar *message);
0569     GLuint glGetDebugMessageLog(GLuint count, GLsizei bufSize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
0570     void glDebugMessageCallback(GLDEBUGPROC callback, const void *userParam);
0571     void glDebugMessageInsert(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
0572     void glDebugMessageControl(GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
0573     void glVertexBindingDivisor(GLuint bindingindex, GLuint divisor);
0574     void glVertexAttribBinding(GLuint attribindex, GLuint bindingindex);
0575     void glVertexAttribLFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
0576     void glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
0577     void glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
0578     void glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
0579     void glTextureView(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers);
0580     void glTexStorage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
0581     void glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
0582     void glTexBufferRange(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
0583     void glShaderStorageBlockBinding(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding);
0584     GLint glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface, const GLchar *name);
0585     GLint glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar *name);
0586     void glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params);
0587     void glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name);
0588     GLuint glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name);
0589     void glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint *params);
0590     void glMultiDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride);
0591     void glMultiDrawArraysIndirect(GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride);
0592     void glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
0593     void glInvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments);
0594     void glInvalidateBufferData(GLuint buffer);
0595     void glInvalidateBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr length);
0596     void glInvalidateTexImage(GLuint texture, GLint level);
0597     void glInvalidateTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth);
0598     void glGetInternalformati64v(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params);
0599     void glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params);
0600     void glFramebufferParameteri(GLenum target, GLenum pname, GLint param);
0601     void glCopyImageSubData(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);
0602     void glDispatchComputeIndirect(GLintptr indirect);
0603     void glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z);
0604     void glClearBufferSubData(GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data);
0605     void glClearBufferData(GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data);
0606 
0607     // OpenGL 4.4 core functions
0608     void glBindVertexBuffers(GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizei *strides);
0609     void glBindImageTextures(GLuint first, GLsizei count, const GLuint *textures);
0610     void glBindSamplers(GLuint first, GLsizei count, const GLuint *samplers);
0611     void glBindTextures(GLuint first, GLsizei count, const GLuint *textures);
0612     void glBindBuffersRange(GLenum target, GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizeiptr *sizes);
0613     void glBindBuffersBase(GLenum target, GLuint first, GLsizei count, const GLuint *buffers);
0614     void glClearTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *data);
0615     void glClearTexImage(GLuint texture, GLint level, GLenum format, GLenum type, const void *data);
0616     void glBufferStorage(GLenum target, GLsizeiptr size, const void *data, GLbitfield flags);
0617 
0618     // OpenGL 4.5 core functions
0619     void glTextureBarrier();
0620     void glReadnPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
0621     void glGetnUniformuiv(GLuint program, GLint location, GLsizei bufSize, GLuint *params);
0622     void glGetnUniformiv(GLuint program, GLint location, GLsizei bufSize, GLint *params);
0623     void glGetnUniformfv(GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
0624     void glGetnUniformdv(GLuint program, GLint location, GLsizei bufSize, GLdouble *params);
0625     void glGetnTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels);
0626     void glGetnCompressedTexImage(GLenum target, GLint lod, GLsizei bufSize, void *pixels);
0627     GLenum glGetGraphicsResetStatus();
0628     void glGetCompressedTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei bufSize, void *pixels);
0629     void glGetTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLsizei bufSize, void *pixels);
0630     void glMemoryBarrierByRegion(GLbitfield barriers);
0631     void glCreateQueries(GLenum target, GLsizei n, GLuint *ids);
0632     void glCreateProgramPipelines(GLsizei n, GLuint *pipelines);
0633     void glCreateSamplers(GLsizei n, GLuint *samplers);
0634     void glGetVertexArrayIndexed64iv(GLuint vaobj, GLuint index, GLenum pname, GLint64 *param);
0635     void glGetVertexArrayIndexediv(GLuint vaobj, GLuint index, GLenum pname, GLint *param);
0636     void glGetVertexArrayiv(GLuint vaobj, GLenum pname, GLint *param);
0637     void glVertexArrayBindingDivisor(GLuint vaobj, GLuint bindingindex, GLuint divisor);
0638     void glVertexArrayAttribLFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
0639     void glVertexArrayAttribIFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
0640     void glVertexArrayAttribFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
0641     void glVertexArrayAttribBinding(GLuint vaobj, GLuint attribindex, GLuint bindingindex);
0642     void glVertexArrayVertexBuffers(GLuint vaobj, GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizei *strides);
0643     void glVertexArrayVertexBuffer(GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
0644     void glVertexArrayElementBuffer(GLuint vaobj, GLuint buffer);
0645     void glEnableVertexArrayAttrib(GLuint vaobj, GLuint index);
0646     void glDisableVertexArrayAttrib(GLuint vaobj, GLuint index);
0647     void glCreateVertexArrays(GLsizei n, GLuint *arrays);
0648     void glGetTextureParameteriv(GLuint texture, GLenum pname, GLint *params);
0649     void glGetTextureParameterIuiv(GLuint texture, GLenum pname, GLuint *params);
0650     void glGetTextureParameterIiv(GLuint texture, GLenum pname, GLint *params);
0651     void glGetTextureParameterfv(GLuint texture, GLenum pname, GLfloat *params);
0652     void glGetTextureLevelParameteriv(GLuint texture, GLint level, GLenum pname, GLint *params);
0653     void glGetTextureLevelParameterfv(GLuint texture, GLint level, GLenum pname, GLfloat *params);
0654     void glGetCompressedTextureImage(GLuint texture, GLint level, GLsizei bufSize, void *pixels);
0655     void glGetTextureImage(GLuint texture, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels);
0656     void glBindTextureUnit(GLuint unit, GLuint texture);
0657     void glGenerateTextureMipmap(GLuint texture);
0658     void glTextureParameteriv(GLuint texture, GLenum pname, const GLint *param);
0659     void glTextureParameterIuiv(GLuint texture, GLenum pname, const GLuint *params);
0660     void glTextureParameterIiv(GLuint texture, GLenum pname, const GLint *params);
0661     void glTextureParameteri(GLuint texture, GLenum pname, GLint param);
0662     void glTextureParameterfv(GLuint texture, GLenum pname, const GLfloat *param);
0663     void glTextureParameterf(GLuint texture, GLenum pname, GLfloat param);
0664     void glCopyTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
0665     void glCopyTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
0666     void glCopyTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
0667     void glCompressedTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data);
0668     void glCompressedTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data);
0669     void glCompressedTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data);
0670     void glTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
0671     void glTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
0672     void glTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels);
0673     void glTextureStorage3DMultisample(GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
0674     void glTextureStorage2DMultisample(GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
0675     void glTextureStorage3D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
0676     void glTextureStorage2D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
0677     void glTextureStorage1D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width);
0678     void glTextureBufferRange(GLuint texture, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizei size);
0679     void glTextureBuffer(GLuint texture, GLenum internalformat, GLuint buffer);
0680     void glCreateTextures(GLenum target, GLsizei n, GLuint *textures);
0681     void glGetNamedRenderbufferParameteriv(GLuint renderbuffer, GLenum pname, GLint *params);
0682     void glNamedRenderbufferStorageMultisample(GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
0683     void glNamedRenderbufferStorage(GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height);
0684     void glCreateRenderbuffers(GLsizei n, GLuint *renderbuffers);
0685     void glGetNamedFramebufferAttachmentParameteriv(GLuint framebuffer, GLenum attachment, GLenum pname, GLint *params);
0686     void glGetNamedFramebufferParameteriv(GLuint framebuffer, GLenum pname, GLint *param);
0687     GLenum glCheckNamedFramebufferStatus(GLuint framebuffer, GLenum target);
0688     void glBlitNamedFramebuffer(GLuint readFramebuffer, GLuint drawFramebuffer, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
0689     void glClearNamedFramebufferfi(GLuint framebuffer, GLenum buffer, GLfloat depth, GLint stencil);
0690     void glClearNamedFramebufferfv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLfloat *value);
0691     void glClearNamedFramebufferuiv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLuint *value);
0692     void glClearNamedFramebufferiv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLint *value);
0693     void glInvalidateNamedFramebufferSubData(GLuint framebuffer, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
0694     void glInvalidateNamedFramebufferData(GLuint framebuffer, GLsizei numAttachments, const GLenum *attachments);
0695     void glNamedFramebufferReadBuffer(GLuint framebuffer, GLenum src);
0696     void glNamedFramebufferDrawBuffers(GLuint framebuffer, GLsizei n, const GLenum *bufs);
0697     void glNamedFramebufferDrawBuffer(GLuint framebuffer, GLenum buf);
0698     void glNamedFramebufferTextureLayer(GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer);
0699     void glNamedFramebufferTexture(GLuint framebuffer, GLenum attachment, GLuint texture, GLint level);
0700     void glNamedFramebufferParameteri(GLuint framebuffer, GLenum pname, GLint param);
0701     void glNamedFramebufferRenderbuffer(GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
0702     void glCreateFramebuffers(GLsizei n, GLuint *framebuffers);
0703 #if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0)
0704     void glGetNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr size, void *data);
0705 #else
0706     void glGetNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizei size, void *data);
0707 #endif
0708     void glGetNamedBufferPointerv(GLuint buffer, GLenum pname, void * *params);
0709     void glGetNamedBufferParameteri64v(GLuint buffer, GLenum pname, GLint64 *params);
0710     void glGetNamedBufferParameteriv(GLuint buffer, GLenum pname, GLint *params);
0711 #if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0)
0712     void glFlushMappedNamedBufferRange(GLuint buffer, GLintptr offset, GLsizeiptr length);
0713 #else
0714     void glFlushMappedNamedBufferRange(GLuint buffer, GLintptr offset, GLsizei length);
0715 #endif
0716     GLboolean glUnmapNamedBuffer(GLuint buffer);
0717 #if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0)
0718     void * glMapNamedBufferRange(GLuint buffer, GLintptr offset, GLsizeiptr length, GLbitfield access);
0719 #else
0720     void * glMapNamedBufferRange(GLuint buffer, GLintptr offset, GLsizei length, GLbitfield access);
0721 #endif
0722     void * glMapNamedBuffer(GLuint buffer, GLenum access);
0723 #if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0)
0724     void glClearNamedBufferSubData(GLuint buffer, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data);
0725 #else
0726     void glClearNamedBufferSubData(GLuint buffer, GLenum internalformat, GLintptr offset, GLsizei size, GLenum format, GLenum type, const void *data);
0727 #endif
0728     void glClearNamedBufferData(GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void *data);
0729 #if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0)
0730     void glCopyNamedBufferSubData(GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
0731     void glNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data);
0732     void glNamedBufferData(GLuint buffer, GLsizeiptr size, const void *data, GLenum usage);
0733     void glNamedBufferStorage(GLuint buffer, GLsizeiptr size, const void *data, GLbitfield flags);
0734 #else
0735     void glCopyNamedBufferSubData(GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizei size);
0736     void glNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizei size, const void *data);
0737     void glNamedBufferData(GLuint buffer, GLsizei size, const void *data, GLenum usage);
0738     void glNamedBufferStorage(GLuint buffer, GLsizei size, const void *data, GLbitfield flags);
0739 #endif
0740     void glCreateBuffers(GLsizei n, GLuint *buffers);
0741     void glGetTransformFeedbacki64_v(GLuint xfb, GLenum pname, GLuint index, GLint64 *param);
0742     void glGetTransformFeedbacki_v(GLuint xfb, GLenum pname, GLuint index, GLint *param);
0743     void glGetTransformFeedbackiv(GLuint xfb, GLenum pname, GLint *param);
0744 #if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0)
0745     void glTransformFeedbackBufferRange(GLuint xfb, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
0746 #else
0747     void glTransformFeedbackBufferRange(GLuint xfb, GLuint index, GLuint buffer, GLintptr offset, GLsizei size);
0748 #endif
0749     void glTransformFeedbackBufferBase(GLuint xfb, GLuint index, GLuint buffer);
0750     void glCreateTransformFeedbacks(GLsizei n, GLuint *ids);
0751     void glClipControl(GLenum origin, GLenum depth);
0752 
0753 private:
0754     friend class QOpenGLVersionFunctionsFactory;
0755 
0756     static bool isContextCompatible(QOpenGLContext *context);
0757     static QOpenGLVersionProfile versionProfile();
0758 
0759     QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
0760     QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
0761     QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
0762     QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
0763     QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
0764     QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
0765     QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
0766     QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
0767     QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
0768     QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
0769     QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
0770     QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
0771     QOpenGLFunctions_4_0_CoreBackend* d_4_0_Core;
0772     QOpenGLFunctions_4_1_CoreBackend* d_4_1_Core;
0773     QOpenGLFunctions_4_2_CoreBackend* d_4_2_Core;
0774     QOpenGLFunctions_4_3_CoreBackend* d_4_3_Core;
0775     QOpenGLFunctions_4_4_CoreBackend* d_4_4_Core;
0776     QOpenGLFunctions_4_5_CoreBackend* d_4_5_Core;
0777 };
0778 
0779 // OpenGL 1.0 core functions
0780 inline void QOpenGLFunctions_4_5_Core::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
0781 {
0782     d_1_0_Core->f.Viewport(x, y, width, height);
0783 }
0784 
0785 inline void QOpenGLFunctions_4_5_Core::glDepthRange(GLdouble nearVal, GLdouble farVal)
0786 {
0787     d_1_0_Core->f.DepthRange(nearVal, farVal);
0788 }
0789 
0790 inline GLboolean QOpenGLFunctions_4_5_Core::glIsEnabled(GLenum cap)
0791 {
0792     return d_1_0_Core->f.IsEnabled(cap);
0793 }
0794 
0795 inline void QOpenGLFunctions_4_5_Core::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
0796 {
0797     d_1_0_Core->f.GetTexLevelParameteriv(target, level, pname, params);
0798 }
0799 
0800 inline void QOpenGLFunctions_4_5_Core::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
0801 {
0802     d_1_0_Core->f.GetTexLevelParameterfv(target, level, pname, params);
0803 }
0804 
0805 inline void QOpenGLFunctions_4_5_Core::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
0806 {
0807     d_1_0_Core->f.GetTexParameteriv(target, pname, params);
0808 }
0809 
0810 inline void QOpenGLFunctions_4_5_Core::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
0811 {
0812     d_1_0_Core->f.GetTexParameterfv(target, pname, params);
0813 }
0814 
0815 inline void QOpenGLFunctions_4_5_Core::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, void *pixels)
0816 {
0817     d_1_0_Core->f.GetTexImage(target, level, format, type, pixels);
0818 }
0819 
0820 inline const GLubyte * QOpenGLFunctions_4_5_Core::glGetString(GLenum name)
0821 {
0822     return d_1_0_Core->f.GetString(name);
0823 }
0824 
0825 inline void QOpenGLFunctions_4_5_Core::glGetIntegerv(GLenum pname, GLint *data)
0826 {
0827     d_1_0_Core->f.GetIntegerv(pname, data);
0828 }
0829 
0830 inline void QOpenGLFunctions_4_5_Core::glGetFloatv(GLenum pname, GLfloat *data)
0831 {
0832     d_1_0_Core->f.GetFloatv(pname, data);
0833 }
0834 
0835 inline GLenum QOpenGLFunctions_4_5_Core::glGetError()
0836 {
0837     return d_1_0_Core->f.GetError();
0838 }
0839 
0840 inline void QOpenGLFunctions_4_5_Core::glGetDoublev(GLenum pname, GLdouble *data)
0841 {
0842     d_1_0_Core->f.GetDoublev(pname, data);
0843 }
0844 
0845 inline void QOpenGLFunctions_4_5_Core::glGetBooleanv(GLenum pname, GLboolean *data)
0846 {
0847     d_1_0_Core->f.GetBooleanv(pname, data);
0848 }
0849 
0850 inline void QOpenGLFunctions_4_5_Core::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels)
0851 {
0852     d_1_0_Core->f.ReadPixels(x, y, width, height, format, type, pixels);
0853 }
0854 
0855 inline void QOpenGLFunctions_4_5_Core::glReadBuffer(GLenum src)
0856 {
0857     d_1_0_Core->f.ReadBuffer(src);
0858 }
0859 
0860 inline void QOpenGLFunctions_4_5_Core::glPixelStorei(GLenum pname, GLint param)
0861 {
0862     d_1_0_Core->f.PixelStorei(pname, param);
0863 }
0864 
0865 inline void QOpenGLFunctions_4_5_Core::glPixelStoref(GLenum pname, GLfloat param)
0866 {
0867     d_1_0_Core->f.PixelStoref(pname, param);
0868 }
0869 
0870 inline void QOpenGLFunctions_4_5_Core::glDepthFunc(GLenum func)
0871 {
0872     d_1_0_Core->f.DepthFunc(func);
0873 }
0874 
0875 inline void QOpenGLFunctions_4_5_Core::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
0876 {
0877     d_1_0_Core->f.StencilOp(fail, zfail, zpass);
0878 }
0879 
0880 inline void QOpenGLFunctions_4_5_Core::glStencilFunc(GLenum func, GLint ref, GLuint mask)
0881 {
0882     d_1_0_Core->f.StencilFunc(func, ref, mask);
0883 }
0884 
0885 inline void QOpenGLFunctions_4_5_Core::glLogicOp(GLenum opcode)
0886 {
0887     d_1_0_Core->f.LogicOp(opcode);
0888 }
0889 
0890 inline void QOpenGLFunctions_4_5_Core::glBlendFunc(GLenum sfactor, GLenum dfactor)
0891 {
0892     d_1_0_Core->f.BlendFunc(sfactor, dfactor);
0893 }
0894 
0895 inline void QOpenGLFunctions_4_5_Core::glFlush()
0896 {
0897     d_1_0_Core->f.Flush();
0898 }
0899 
0900 inline void QOpenGLFunctions_4_5_Core::glFinish()
0901 {
0902     d_1_0_Core->f.Finish();
0903 }
0904 
0905 inline void QOpenGLFunctions_4_5_Core::glEnable(GLenum cap)
0906 {
0907     d_1_0_Core->f.Enable(cap);
0908 }
0909 
0910 inline void QOpenGLFunctions_4_5_Core::glDisable(GLenum cap)
0911 {
0912     d_1_0_Core->f.Disable(cap);
0913 }
0914 
0915 inline void QOpenGLFunctions_4_5_Core::glDepthMask(GLboolean flag)
0916 {
0917     d_1_0_Core->f.DepthMask(flag);
0918 }
0919 
0920 inline void QOpenGLFunctions_4_5_Core::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
0921 {
0922     d_1_0_Core->f.ColorMask(red, green, blue, alpha);
0923 }
0924 
0925 inline void QOpenGLFunctions_4_5_Core::glStencilMask(GLuint mask)
0926 {
0927     d_1_0_Core->f.StencilMask(mask);
0928 }
0929 
0930 inline void QOpenGLFunctions_4_5_Core::glClearDepth(GLdouble depth)
0931 {
0932     d_1_0_Core->f.ClearDepth(depth);
0933 }
0934 
0935 inline void QOpenGLFunctions_4_5_Core::glClearStencil(GLint s)
0936 {
0937     d_1_0_Core->f.ClearStencil(s);
0938 }
0939 
0940 inline void QOpenGLFunctions_4_5_Core::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
0941 {
0942     d_1_0_Core->f.ClearColor(red, green, blue, alpha);
0943 }
0944 
0945 inline void QOpenGLFunctions_4_5_Core::glClear(GLbitfield mask)
0946 {
0947     d_1_0_Core->f.Clear(mask);
0948 }
0949 
0950 inline void QOpenGLFunctions_4_5_Core::glDrawBuffer(GLenum buf)
0951 {
0952     d_1_0_Core->f.DrawBuffer(buf);
0953 }
0954 
0955 inline void QOpenGLFunctions_4_5_Core::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels)
0956 {
0957     d_1_0_Core->f.TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
0958 }
0959 
0960 inline void QOpenGLFunctions_4_5_Core::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels)
0961 {
0962     d_1_0_Core->f.TexImage1D(target, level, internalformat, width, border, format, type, pixels);
0963 }
0964 
0965 inline void QOpenGLFunctions_4_5_Core::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
0966 {
0967     d_1_0_Core->f.TexParameteriv(target, pname, params);
0968 }
0969 
0970 inline void QOpenGLFunctions_4_5_Core::glTexParameteri(GLenum target, GLenum pname, GLint param)
0971 {
0972     d_1_0_Core->f.TexParameteri(target, pname, param);
0973 }
0974 
0975 inline void QOpenGLFunctions_4_5_Core::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
0976 {
0977     d_1_0_Core->f.TexParameterfv(target, pname, params);
0978 }
0979 
0980 inline void QOpenGLFunctions_4_5_Core::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
0981 {
0982     d_1_0_Core->f.TexParameterf(target, pname, param);
0983 }
0984 
0985 inline void QOpenGLFunctions_4_5_Core::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
0986 {
0987     d_1_0_Core->f.Scissor(x, y, width, height);
0988 }
0989 
0990 inline void QOpenGLFunctions_4_5_Core::glPolygonMode(GLenum face, GLenum mode)
0991 {
0992     d_1_0_Core->f.PolygonMode(face, mode);
0993 }
0994 
0995 inline void QOpenGLFunctions_4_5_Core::glPointSize(GLfloat size)
0996 {
0997     d_1_0_Core->f.PointSize(size);
0998 }
0999 
1000 inline void QOpenGLFunctions_4_5_Core::glLineWidth(GLfloat width)
1001 {
1002     d_1_0_Core->f.LineWidth(width);
1003 }
1004 
1005 inline void QOpenGLFunctions_4_5_Core::glHint(GLenum target, GLenum mode)
1006 {
1007     d_1_0_Core->f.Hint(target, mode);
1008 }
1009 
1010 inline void QOpenGLFunctions_4_5_Core::glFrontFace(GLenum mode)
1011 {
1012     d_1_0_Core->f.FrontFace(mode);
1013 }
1014 
1015 inline void QOpenGLFunctions_4_5_Core::glCullFace(GLenum mode)
1016 {
1017     d_1_0_Core->f.CullFace(mode);
1018 }
1019 
1020 
1021 // OpenGL 1.1 core functions
1022 inline GLboolean QOpenGLFunctions_4_5_Core::glIsTexture(GLuint texture)
1023 {
1024     return d_1_1_Core->f.IsTexture(texture);
1025 }
1026 
1027 inline void QOpenGLFunctions_4_5_Core::glGenTextures(GLsizei n, GLuint *textures)
1028 {
1029     d_1_1_Core->f.GenTextures(n, textures);
1030 }
1031 
1032 inline void QOpenGLFunctions_4_5_Core::glDeleteTextures(GLsizei n, const GLuint *textures)
1033 {
1034     d_1_1_Core->f.DeleteTextures(n, textures);
1035 }
1036 
1037 inline void QOpenGLFunctions_4_5_Core::glBindTexture(GLenum target, GLuint texture)
1038 {
1039     d_1_1_Core->f.BindTexture(target, texture);
1040 }
1041 
1042 inline void QOpenGLFunctions_4_5_Core::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels)
1043 {
1044     d_1_1_Core->f.TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
1045 }
1046 
1047 inline void QOpenGLFunctions_4_5_Core::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels)
1048 {
1049     d_1_1_Core->f.TexSubImage1D(target, level, xoffset, width, format, type, pixels);
1050 }
1051 
1052 inline void QOpenGLFunctions_4_5_Core::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
1053 {
1054     d_1_1_Core->f.CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
1055 }
1056 
1057 inline void QOpenGLFunctions_4_5_Core::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
1058 {
1059     d_1_1_Core->f.CopyTexSubImage1D(target, level, xoffset, x, y, width);
1060 }
1061 
1062 inline void QOpenGLFunctions_4_5_Core::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
1063 {
1064     d_1_1_Core->f.CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
1065 }
1066 
1067 inline void QOpenGLFunctions_4_5_Core::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
1068 {
1069     d_1_1_Core->f.CopyTexImage1D(target, level, internalformat, x, y, width, border);
1070 }
1071 
1072 inline void QOpenGLFunctions_4_5_Core::glPolygonOffset(GLfloat factor, GLfloat units)
1073 {
1074     d_1_1_Core->f.PolygonOffset(factor, units);
1075 }
1076 
1077 inline void QOpenGLFunctions_4_5_Core::glDrawElements(GLenum mode, GLsizei count, GLenum type, const void *indices)
1078 {
1079     d_1_1_Core->f.DrawElements(mode, count, type, indices);
1080 }
1081 
1082 inline void QOpenGLFunctions_4_5_Core::glDrawArrays(GLenum mode, GLint first, GLsizei count)
1083 {
1084     d_1_1_Core->f.DrawArrays(mode, first, count);
1085 }
1086 
1087 
1088 // OpenGL 1.2 core functions
1089 inline void QOpenGLFunctions_4_5_Core::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
1090 {
1091     d_1_2_Core->f.BlendColor(red, green, blue, alpha);
1092 }
1093 
1094 inline void QOpenGLFunctions_4_5_Core::glBlendEquation(GLenum mode)
1095 {
1096     d_1_2_Core->f.BlendEquation(mode);
1097 }
1098 
1099 inline void QOpenGLFunctions_4_5_Core::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
1100 {
1101     d_1_2_Core->f.CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
1102 }
1103 
1104 inline void QOpenGLFunctions_4_5_Core::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels)
1105 {
1106     d_1_2_Core->f.TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
1107 }
1108 
1109 inline void QOpenGLFunctions_4_5_Core::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels)
1110 {
1111     d_1_2_Core->f.TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
1112 }
1113 
1114 inline void QOpenGLFunctions_4_5_Core::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices)
1115 {
1116     d_1_2_Core->f.DrawRangeElements(mode, start, end, count, type, indices);
1117 }
1118 
1119 
1120 // OpenGL 1.3 core functions
1121 inline void QOpenGLFunctions_4_5_Core::glGetCompressedTexImage(GLenum target, GLint level, void *img)
1122 {
1123     d_1_3_Core->f.GetCompressedTexImage(target, level, img);
1124 }
1125 
1126 inline void QOpenGLFunctions_4_5_Core::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data)
1127 {
1128     d_1_3_Core->f.CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
1129 }
1130 
1131 inline void QOpenGLFunctions_4_5_Core::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data)
1132 {
1133     d_1_3_Core->f.CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
1134 }
1135 
1136 inline void QOpenGLFunctions_4_5_Core::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data)
1137 {
1138     d_1_3_Core->f.CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
1139 }
1140 
1141 inline void QOpenGLFunctions_4_5_Core::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data)
1142 {
1143     d_1_3_Core->f.CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
1144 }
1145 
1146 inline void QOpenGLFunctions_4_5_Core::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data)
1147 {
1148     d_1_3_Core->f.CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
1149 }
1150 
1151 inline void QOpenGLFunctions_4_5_Core::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data)
1152 {
1153     d_1_3_Core->f.CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
1154 }
1155 
1156 inline void QOpenGLFunctions_4_5_Core::glSampleCoverage(GLfloat value, GLboolean invert)
1157 {
1158     d_1_3_Core->f.SampleCoverage(value, invert);
1159 }
1160 
1161 inline void QOpenGLFunctions_4_5_Core::glActiveTexture(GLenum texture)
1162 {
1163     d_1_3_Core->f.ActiveTexture(texture);
1164 }
1165 
1166 
1167 // OpenGL 1.4 core functions
1168 inline void QOpenGLFunctions_4_5_Core::glPointParameteriv(GLenum pname, const GLint *params)
1169 {
1170     d_1_4_Core->f.PointParameteriv(pname, params);
1171 }
1172 
1173 inline void QOpenGLFunctions_4_5_Core::glPointParameteri(GLenum pname, GLint param)
1174 {
1175     d_1_4_Core->f.PointParameteri(pname, param);
1176 }
1177 
1178 inline void QOpenGLFunctions_4_5_Core::glPointParameterfv(GLenum pname, const GLfloat *params)
1179 {
1180     d_1_4_Core->f.PointParameterfv(pname, params);
1181 }
1182 
1183 inline void QOpenGLFunctions_4_5_Core::glPointParameterf(GLenum pname, GLfloat param)
1184 {
1185     d_1_4_Core->f.PointParameterf(pname, param);
1186 }
1187 
1188 inline void QOpenGLFunctions_4_5_Core::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const void *const *indices, GLsizei drawcount)
1189 {
1190     d_1_4_Core->f.MultiDrawElements(mode, count, type, indices, drawcount);
1191 }
1192 
1193 inline void QOpenGLFunctions_4_5_Core::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
1194 {
1195     d_1_4_Core->f.MultiDrawArrays(mode, first, count, drawcount);
1196 }
1197 
1198 inline void QOpenGLFunctions_4_5_Core::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
1199 {
1200     d_1_4_Core->f.BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
1201 }
1202 
1203 
1204 // OpenGL 1.5 core functions
1205 inline void QOpenGLFunctions_4_5_Core::glGetBufferPointerv(GLenum target, GLenum pname, void * *params)
1206 {
1207     d_1_5_Core->f.GetBufferPointerv(target, pname, params);
1208 }
1209 
1210 inline void QOpenGLFunctions_4_5_Core::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
1211 {
1212     d_1_5_Core->f.GetBufferParameteriv(target, pname, params);
1213 }
1214 
1215 inline GLboolean QOpenGLFunctions_4_5_Core::glUnmapBuffer(GLenum target)
1216 {
1217     return d_1_5_Core->f.UnmapBuffer(target);
1218 }
1219 
1220 inline void * QOpenGLFunctions_4_5_Core::glMapBuffer(GLenum target, GLenum access)
1221 {
1222     return d_1_5_Core->f.MapBuffer(target, access);
1223 }
1224 
1225 inline void QOpenGLFunctions_4_5_Core::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, void *data)
1226 {
1227     d_1_5_Core->f.GetBufferSubData(target, offset, size, data);
1228 }
1229 
1230 inline void QOpenGLFunctions_4_5_Core::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const void *data)
1231 {
1232     d_1_5_Core->f.BufferSubData(target, offset, size, data);
1233 }
1234 
1235 inline void QOpenGLFunctions_4_5_Core::glBufferData(GLenum target, GLsizeiptr size, const void *data, GLenum usage)
1236 {
1237     d_1_5_Core->f.BufferData(target, size, data, usage);
1238 }
1239 
1240 inline GLboolean QOpenGLFunctions_4_5_Core::glIsBuffer(GLuint buffer)
1241 {
1242     return d_1_5_Core->f.IsBuffer(buffer);
1243 }
1244 
1245 inline void QOpenGLFunctions_4_5_Core::glGenBuffers(GLsizei n, GLuint *buffers)
1246 {
1247     d_1_5_Core->f.GenBuffers(n, buffers);
1248 }
1249 
1250 inline void QOpenGLFunctions_4_5_Core::glDeleteBuffers(GLsizei n, const GLuint *buffers)
1251 {
1252     d_1_5_Core->f.DeleteBuffers(n, buffers);
1253 }
1254 
1255 inline void QOpenGLFunctions_4_5_Core::glBindBuffer(GLenum target, GLuint buffer)
1256 {
1257     d_1_5_Core->f.BindBuffer(target, buffer);
1258 }
1259 
1260 inline void QOpenGLFunctions_4_5_Core::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
1261 {
1262     d_1_5_Core->f.GetQueryObjectuiv(id, pname, params);
1263 }
1264 
1265 inline void QOpenGLFunctions_4_5_Core::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
1266 {
1267     d_1_5_Core->f.GetQueryObjectiv(id, pname, params);
1268 }
1269 
1270 inline void QOpenGLFunctions_4_5_Core::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
1271 {
1272     d_1_5_Core->f.GetQueryiv(target, pname, params);
1273 }
1274 
1275 inline void QOpenGLFunctions_4_5_Core::glEndQuery(GLenum target)
1276 {
1277     d_1_5_Core->f.EndQuery(target);
1278 }
1279 
1280 inline void QOpenGLFunctions_4_5_Core::glBeginQuery(GLenum target, GLuint id)
1281 {
1282     d_1_5_Core->f.BeginQuery(target, id);
1283 }
1284 
1285 inline GLboolean QOpenGLFunctions_4_5_Core::glIsQuery(GLuint id)
1286 {
1287     return d_1_5_Core->f.IsQuery(id);
1288 }
1289 
1290 inline void QOpenGLFunctions_4_5_Core::glDeleteQueries(GLsizei n, const GLuint *ids)
1291 {
1292     d_1_5_Core->f.DeleteQueries(n, ids);
1293 }
1294 
1295 inline void QOpenGLFunctions_4_5_Core::glGenQueries(GLsizei n, GLuint *ids)
1296 {
1297     d_1_5_Core->f.GenQueries(n, ids);
1298 }
1299 
1300 
1301 // OpenGL 2.0 core functions
1302 inline void QOpenGLFunctions_4_5_Core::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer)
1303 {
1304     d_2_0_Core->f.VertexAttribPointer(index, size, type, normalized, stride, pointer);
1305 }
1306 
1307 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4usv(GLuint index, const GLushort *v)
1308 {
1309     d_2_0_Core->f.VertexAttrib4usv(index, v);
1310 }
1311 
1312 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4uiv(GLuint index, const GLuint *v)
1313 {
1314     d_2_0_Core->f.VertexAttrib4uiv(index, v);
1315 }
1316 
1317 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4ubv(GLuint index, const GLubyte *v)
1318 {
1319     d_2_0_Core->f.VertexAttrib4ubv(index, v);
1320 }
1321 
1322 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4sv(GLuint index, const GLshort *v)
1323 {
1324     d_2_0_Core->f.VertexAttrib4sv(index, v);
1325 }
1326 
1327 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
1328 {
1329     d_2_0_Core->f.VertexAttrib4s(index, x, y, z, w);
1330 }
1331 
1332 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4iv(GLuint index, const GLint *v)
1333 {
1334     d_2_0_Core->f.VertexAttrib4iv(index, v);
1335 }
1336 
1337 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4fv(GLuint index, const GLfloat *v)
1338 {
1339     d_2_0_Core->f.VertexAttrib4fv(index, v);
1340 }
1341 
1342 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
1343 {
1344     d_2_0_Core->f.VertexAttrib4f(index, x, y, z, w);
1345 }
1346 
1347 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4dv(GLuint index, const GLdouble *v)
1348 {
1349     d_2_0_Core->f.VertexAttrib4dv(index, v);
1350 }
1351 
1352 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
1353 {
1354     d_2_0_Core->f.VertexAttrib4d(index, x, y, z, w);
1355 }
1356 
1357 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4bv(GLuint index, const GLbyte *v)
1358 {
1359     d_2_0_Core->f.VertexAttrib4bv(index, v);
1360 }
1361 
1362 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4Nusv(GLuint index, const GLushort *v)
1363 {
1364     d_2_0_Core->f.VertexAttrib4Nusv(index, v);
1365 }
1366 
1367 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4Nuiv(GLuint index, const GLuint *v)
1368 {
1369     d_2_0_Core->f.VertexAttrib4Nuiv(index, v);
1370 }
1371 
1372 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4Nubv(GLuint index, const GLubyte *v)
1373 {
1374     d_2_0_Core->f.VertexAttrib4Nubv(index, v);
1375 }
1376 
1377 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
1378 {
1379     d_2_0_Core->f.VertexAttrib4Nub(index, x, y, z, w);
1380 }
1381 
1382 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4Nsv(GLuint index, const GLshort *v)
1383 {
1384     d_2_0_Core->f.VertexAttrib4Nsv(index, v);
1385 }
1386 
1387 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4Niv(GLuint index, const GLint *v)
1388 {
1389     d_2_0_Core->f.VertexAttrib4Niv(index, v);
1390 }
1391 
1392 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4Nbv(GLuint index, const GLbyte *v)
1393 {
1394     d_2_0_Core->f.VertexAttrib4Nbv(index, v);
1395 }
1396 
1397 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib3sv(GLuint index, const GLshort *v)
1398 {
1399     d_2_0_Core->f.VertexAttrib3sv(index, v);
1400 }
1401 
1402 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z)
1403 {
1404     d_2_0_Core->f.VertexAttrib3s(index, x, y, z);
1405 }
1406 
1407 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib3fv(GLuint index, const GLfloat *v)
1408 {
1409     d_2_0_Core->f.VertexAttrib3fv(index, v);
1410 }
1411 
1412 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z)
1413 {
1414     d_2_0_Core->f.VertexAttrib3f(index, x, y, z);
1415 }
1416 
1417 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib3dv(GLuint index, const GLdouble *v)
1418 {
1419     d_2_0_Core->f.VertexAttrib3dv(index, v);
1420 }
1421 
1422 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
1423 {
1424     d_2_0_Core->f.VertexAttrib3d(index, x, y, z);
1425 }
1426 
1427 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib2sv(GLuint index, const GLshort *v)
1428 {
1429     d_2_0_Core->f.VertexAttrib2sv(index, v);
1430 }
1431 
1432 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib2s(GLuint index, GLshort x, GLshort y)
1433 {
1434     d_2_0_Core->f.VertexAttrib2s(index, x, y);
1435 }
1436 
1437 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib2fv(GLuint index, const GLfloat *v)
1438 {
1439     d_2_0_Core->f.VertexAttrib2fv(index, v);
1440 }
1441 
1442 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y)
1443 {
1444     d_2_0_Core->f.VertexAttrib2f(index, x, y);
1445 }
1446 
1447 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib2dv(GLuint index, const GLdouble *v)
1448 {
1449     d_2_0_Core->f.VertexAttrib2dv(index, v);
1450 }
1451 
1452 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y)
1453 {
1454     d_2_0_Core->f.VertexAttrib2d(index, x, y);
1455 }
1456 
1457 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib1sv(GLuint index, const GLshort *v)
1458 {
1459     d_2_0_Core->f.VertexAttrib1sv(index, v);
1460 }
1461 
1462 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib1s(GLuint index, GLshort x)
1463 {
1464     d_2_0_Core->f.VertexAttrib1s(index, x);
1465 }
1466 
1467 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib1fv(GLuint index, const GLfloat *v)
1468 {
1469     d_2_0_Core->f.VertexAttrib1fv(index, v);
1470 }
1471 
1472 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib1f(GLuint index, GLfloat x)
1473 {
1474     d_2_0_Core->f.VertexAttrib1f(index, x);
1475 }
1476 
1477 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib1dv(GLuint index, const GLdouble *v)
1478 {
1479     d_2_0_Core->f.VertexAttrib1dv(index, v);
1480 }
1481 
1482 inline void QOpenGLFunctions_4_5_Core::glVertexAttrib1d(GLuint index, GLdouble x)
1483 {
1484     d_2_0_Core->f.VertexAttrib1d(index, x);
1485 }
1486 
1487 inline void QOpenGLFunctions_4_5_Core::glValidateProgram(GLuint program)
1488 {
1489     d_2_0_Core->f.ValidateProgram(program);
1490 }
1491 
1492 inline void QOpenGLFunctions_4_5_Core::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1493 {
1494     d_2_0_Core->f.UniformMatrix4fv(location, count, transpose, value);
1495 }
1496 
1497 inline void QOpenGLFunctions_4_5_Core::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1498 {
1499     d_2_0_Core->f.UniformMatrix3fv(location, count, transpose, value);
1500 }
1501 
1502 inline void QOpenGLFunctions_4_5_Core::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1503 {
1504     d_2_0_Core->f.UniformMatrix2fv(location, count, transpose, value);
1505 }
1506 
1507 inline void QOpenGLFunctions_4_5_Core::glUniform4iv(GLint location, GLsizei count, const GLint *value)
1508 {
1509     d_2_0_Core->f.Uniform4iv(location, count, value);
1510 }
1511 
1512 inline void QOpenGLFunctions_4_5_Core::glUniform3iv(GLint location, GLsizei count, const GLint *value)
1513 {
1514     d_2_0_Core->f.Uniform3iv(location, count, value);
1515 }
1516 
1517 inline void QOpenGLFunctions_4_5_Core::glUniform2iv(GLint location, GLsizei count, const GLint *value)
1518 {
1519     d_2_0_Core->f.Uniform2iv(location, count, value);
1520 }
1521 
1522 inline void QOpenGLFunctions_4_5_Core::glUniform1iv(GLint location, GLsizei count, const GLint *value)
1523 {
1524     d_2_0_Core->f.Uniform1iv(location, count, value);
1525 }
1526 
1527 inline void QOpenGLFunctions_4_5_Core::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
1528 {
1529     d_2_0_Core->f.Uniform4fv(location, count, value);
1530 }
1531 
1532 inline void QOpenGLFunctions_4_5_Core::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
1533 {
1534     d_2_0_Core->f.Uniform3fv(location, count, value);
1535 }
1536 
1537 inline void QOpenGLFunctions_4_5_Core::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
1538 {
1539     d_2_0_Core->f.Uniform2fv(location, count, value);
1540 }
1541 
1542 inline void QOpenGLFunctions_4_5_Core::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
1543 {
1544     d_2_0_Core->f.Uniform1fv(location, count, value);
1545 }
1546 
1547 inline void QOpenGLFunctions_4_5_Core::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
1548 {
1549     d_2_0_Core->f.Uniform4i(location, v0, v1, v2, v3);
1550 }
1551 
1552 inline void QOpenGLFunctions_4_5_Core::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
1553 {
1554     d_2_0_Core->f.Uniform3i(location, v0, v1, v2);
1555 }
1556 
1557 inline void QOpenGLFunctions_4_5_Core::glUniform2i(GLint location, GLint v0, GLint v1)
1558 {
1559     d_2_0_Core->f.Uniform2i(location, v0, v1);
1560 }
1561 
1562 inline void QOpenGLFunctions_4_5_Core::glUniform1i(GLint location, GLint v0)
1563 {
1564     d_2_0_Core->f.Uniform1i(location, v0);
1565 }
1566 
1567 inline void QOpenGLFunctions_4_5_Core::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
1568 {
1569     d_2_0_Core->f.Uniform4f(location, v0, v1, v2, v3);
1570 }
1571 
1572 inline void QOpenGLFunctions_4_5_Core::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
1573 {
1574     d_2_0_Core->f.Uniform3f(location, v0, v1, v2);
1575 }
1576 
1577 inline void QOpenGLFunctions_4_5_Core::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
1578 {
1579     d_2_0_Core->f.Uniform2f(location, v0, v1);
1580 }
1581 
1582 inline void QOpenGLFunctions_4_5_Core::glUniform1f(GLint location, GLfloat v0)
1583 {
1584     d_2_0_Core->f.Uniform1f(location, v0);
1585 }
1586 
1587 inline void QOpenGLFunctions_4_5_Core::glUseProgram(GLuint program)
1588 {
1589     d_2_0_Core->f.UseProgram(program);
1590 }
1591 
1592 inline void QOpenGLFunctions_4_5_Core::glShaderSource(GLuint shader, GLsizei count, const GLchar *const *string, const GLint *length)
1593 {
1594     d_2_0_Core->f.ShaderSource(shader, count, string, length);
1595 }
1596 
1597 inline void QOpenGLFunctions_4_5_Core::glLinkProgram(GLuint program)
1598 {
1599     d_2_0_Core->f.LinkProgram(program);
1600 }
1601 
1602 inline GLboolean QOpenGLFunctions_4_5_Core::glIsShader(GLuint shader)
1603 {
1604     return d_2_0_Core->f.IsShader(shader);
1605 }
1606 
1607 inline GLboolean QOpenGLFunctions_4_5_Core::glIsProgram(GLuint program)
1608 {
1609     return d_2_0_Core->f.IsProgram(program);
1610 }
1611 
1612 inline void QOpenGLFunctions_4_5_Core::glGetVertexAttribPointerv(GLuint index, GLenum pname, void * *pointer)
1613 {
1614     d_2_0_Core->f.GetVertexAttribPointerv(index, pname, pointer);
1615 }
1616 
1617 inline void QOpenGLFunctions_4_5_Core::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
1618 {
1619     d_2_0_Core->f.GetVertexAttribiv(index, pname, params);
1620 }
1621 
1622 inline void QOpenGLFunctions_4_5_Core::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
1623 {
1624     d_2_0_Core->f.GetVertexAttribfv(index, pname, params);
1625 }
1626 
1627 inline void QOpenGLFunctions_4_5_Core::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
1628 {
1629     d_2_0_Core->f.GetVertexAttribdv(index, pname, params);
1630 }
1631 
1632 inline void QOpenGLFunctions_4_5_Core::glGetUniformiv(GLuint program, GLint location, GLint *params)
1633 {
1634     d_2_0_Core->f.GetUniformiv(program, location, params);
1635 }
1636 
1637 inline void QOpenGLFunctions_4_5_Core::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
1638 {
1639     d_2_0_Core->f.GetUniformfv(program, location, params);
1640 }
1641 
1642 inline GLint QOpenGLFunctions_4_5_Core::glGetUniformLocation(GLuint program, const GLchar *name)
1643 {
1644     return d_2_0_Core->f.GetUniformLocation(program, name);
1645 }
1646 
1647 inline void QOpenGLFunctions_4_5_Core::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
1648 {
1649     d_2_0_Core->f.GetShaderSource(shader, bufSize, length, source);
1650 }
1651 
1652 inline void QOpenGLFunctions_4_5_Core::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
1653 {
1654     d_2_0_Core->f.GetShaderInfoLog(shader, bufSize, length, infoLog);
1655 }
1656 
1657 inline void QOpenGLFunctions_4_5_Core::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
1658 {
1659     d_2_0_Core->f.GetShaderiv(shader, pname, params);
1660 }
1661 
1662 inline void QOpenGLFunctions_4_5_Core::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
1663 {
1664     d_2_0_Core->f.GetProgramInfoLog(program, bufSize, length, infoLog);
1665 }
1666 
1667 inline void QOpenGLFunctions_4_5_Core::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
1668 {
1669     d_2_0_Core->f.GetProgramiv(program, pname, params);
1670 }
1671 
1672 inline GLint QOpenGLFunctions_4_5_Core::glGetAttribLocation(GLuint program, const GLchar *name)
1673 {
1674     return d_2_0_Core->f.GetAttribLocation(program, name);
1675 }
1676 
1677 inline void QOpenGLFunctions_4_5_Core::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders)
1678 {
1679     d_2_0_Core->f.GetAttachedShaders(program, maxCount, count, shaders);
1680 }
1681 
1682 inline void QOpenGLFunctions_4_5_Core::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
1683 {
1684     d_2_0_Core->f.GetActiveUniform(program, index, bufSize, length, size, type, name);
1685 }
1686 
1687 inline void QOpenGLFunctions_4_5_Core::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
1688 {
1689     d_2_0_Core->f.GetActiveAttrib(program, index, bufSize, length, size, type, name);
1690 }
1691 
1692 inline void QOpenGLFunctions_4_5_Core::glEnableVertexAttribArray(GLuint index)
1693 {
1694     d_2_0_Core->f.EnableVertexAttribArray(index);
1695 }
1696 
1697 inline void QOpenGLFunctions_4_5_Core::glDisableVertexAttribArray(GLuint index)
1698 {
1699     d_2_0_Core->f.DisableVertexAttribArray(index);
1700 }
1701 
1702 inline void QOpenGLFunctions_4_5_Core::glDetachShader(GLuint program, GLuint shader)
1703 {
1704     d_2_0_Core->f.DetachShader(program, shader);
1705 }
1706 
1707 inline void QOpenGLFunctions_4_5_Core::glDeleteShader(GLuint shader)
1708 {
1709     d_2_0_Core->f.DeleteShader(shader);
1710 }
1711 
1712 inline void QOpenGLFunctions_4_5_Core::glDeleteProgram(GLuint program)
1713 {
1714     d_2_0_Core->f.DeleteProgram(program);
1715 }
1716 
1717 inline GLuint QOpenGLFunctions_4_5_Core::glCreateShader(GLenum type)
1718 {
1719     return d_2_0_Core->f.CreateShader(type);
1720 }
1721 
1722 inline GLuint QOpenGLFunctions_4_5_Core::glCreateProgram()
1723 {
1724     return d_2_0_Core->f.CreateProgram();
1725 }
1726 
1727 inline void QOpenGLFunctions_4_5_Core::glCompileShader(GLuint shader)
1728 {
1729     d_2_0_Core->f.CompileShader(shader);
1730 }
1731 
1732 inline void QOpenGLFunctions_4_5_Core::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
1733 {
1734     d_2_0_Core->f.BindAttribLocation(program, index, name);
1735 }
1736 
1737 inline void QOpenGLFunctions_4_5_Core::glAttachShader(GLuint program, GLuint shader)
1738 {
1739     d_2_0_Core->f.AttachShader(program, shader);
1740 }
1741 
1742 inline void QOpenGLFunctions_4_5_Core::glStencilMaskSeparate(GLenum face, GLuint mask)
1743 {
1744     d_2_0_Core->f.StencilMaskSeparate(face, mask);
1745 }
1746 
1747 inline void QOpenGLFunctions_4_5_Core::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
1748 {
1749     d_2_0_Core->f.StencilFuncSeparate(face, func, ref, mask);
1750 }
1751 
1752 inline void QOpenGLFunctions_4_5_Core::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
1753 {
1754     d_2_0_Core->f.StencilOpSeparate(face, sfail, dpfail, dppass);
1755 }
1756 
1757 inline void QOpenGLFunctions_4_5_Core::glDrawBuffers(GLsizei n, const GLenum *bufs)
1758 {
1759     d_2_0_Core->f.DrawBuffers(n, bufs);
1760 }
1761 
1762 inline void QOpenGLFunctions_4_5_Core::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
1763 {
1764     d_2_0_Core->f.BlendEquationSeparate(modeRGB, modeAlpha);
1765 }
1766 
1767 
1768 // OpenGL 2.1 core functions
1769 inline void QOpenGLFunctions_4_5_Core::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1770 {
1771     d_2_1_Core->f.UniformMatrix4x3fv(location, count, transpose, value);
1772 }
1773 
1774 inline void QOpenGLFunctions_4_5_Core::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1775 {
1776     d_2_1_Core->f.UniformMatrix3x4fv(location, count, transpose, value);
1777 }
1778 
1779 inline void QOpenGLFunctions_4_5_Core::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1780 {
1781     d_2_1_Core->f.UniformMatrix4x2fv(location, count, transpose, value);
1782 }
1783 
1784 inline void QOpenGLFunctions_4_5_Core::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1785 {
1786     d_2_1_Core->f.UniformMatrix2x4fv(location, count, transpose, value);
1787 }
1788 
1789 inline void QOpenGLFunctions_4_5_Core::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1790 {
1791     d_2_1_Core->f.UniformMatrix3x2fv(location, count, transpose, value);
1792 }
1793 
1794 inline void QOpenGLFunctions_4_5_Core::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1795 {
1796     d_2_1_Core->f.UniformMatrix2x3fv(location, count, transpose, value);
1797 }
1798 
1799 
1800 // OpenGL 3.0 core functions
1801 inline GLboolean QOpenGLFunctions_4_5_Core::glIsVertexArray(GLuint array)
1802 {
1803     return d_3_0_Core->f.IsVertexArray(array);
1804 }
1805 
1806 inline void QOpenGLFunctions_4_5_Core::glGenVertexArrays(GLsizei n, GLuint *arrays)
1807 {
1808     d_3_0_Core->f.GenVertexArrays(n, arrays);
1809 }
1810 
1811 inline void QOpenGLFunctions_4_5_Core::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
1812 {
1813     d_3_0_Core->f.DeleteVertexArrays(n, arrays);
1814 }
1815 
1816 inline void QOpenGLFunctions_4_5_Core::glBindVertexArray(GLuint array)
1817 {
1818     d_3_0_Core->f.BindVertexArray(array);
1819 }
1820 
1821 inline void QOpenGLFunctions_4_5_Core::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
1822 {
1823     d_3_0_Core->f.FlushMappedBufferRange(target, offset, length);
1824 }
1825 
1826 inline void * QOpenGLFunctions_4_5_Core::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
1827 {
1828     return d_3_0_Core->f.MapBufferRange(target, offset, length, access);
1829 }
1830 
1831 inline void QOpenGLFunctions_4_5_Core::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
1832 {
1833     d_3_0_Core->f.FramebufferTextureLayer(target, attachment, texture, level, layer);
1834 }
1835 
1836 inline void QOpenGLFunctions_4_5_Core::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
1837 {
1838     d_3_0_Core->f.RenderbufferStorageMultisample(target, samples, internalformat, width, height);
1839 }
1840 
1841 inline void QOpenGLFunctions_4_5_Core::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
1842 {
1843     d_3_0_Core->f.BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
1844 }
1845 
1846 inline void QOpenGLFunctions_4_5_Core::glGenerateMipmap(GLenum target)
1847 {
1848     d_3_0_Core->f.GenerateMipmap(target);
1849 }
1850 
1851 inline void QOpenGLFunctions_4_5_Core::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
1852 {
1853     d_3_0_Core->f.GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
1854 }
1855 
1856 inline void QOpenGLFunctions_4_5_Core::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
1857 {
1858     d_3_0_Core->f.FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
1859 }
1860 
1861 inline void QOpenGLFunctions_4_5_Core::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
1862 {
1863     d_3_0_Core->f.FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
1864 }
1865 
1866 inline void QOpenGLFunctions_4_5_Core::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
1867 {
1868     d_3_0_Core->f.FramebufferTexture2D(target, attachment, textarget, texture, level);
1869 }
1870 
1871 inline void QOpenGLFunctions_4_5_Core::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
1872 {
1873     d_3_0_Core->f.FramebufferTexture1D(target, attachment, textarget, texture, level);
1874 }
1875 
1876 inline GLenum QOpenGLFunctions_4_5_Core::glCheckFramebufferStatus(GLenum target)
1877 {
1878     return d_3_0_Core->f.CheckFramebufferStatus(target);
1879 }
1880 
1881 inline void QOpenGLFunctions_4_5_Core::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
1882 {
1883     d_3_0_Core->f.GenFramebuffers(n, framebuffers);
1884 }
1885 
1886 inline void QOpenGLFunctions_4_5_Core::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
1887 {
1888     d_3_0_Core->f.DeleteFramebuffers(n, framebuffers);
1889 }
1890 
1891 inline void QOpenGLFunctions_4_5_Core::glBindFramebuffer(GLenum target, GLuint framebuffer)
1892 {
1893     d_3_0_Core->f.BindFramebuffer(target, framebuffer);
1894 }
1895 
1896 inline GLboolean QOpenGLFunctions_4_5_Core::glIsFramebuffer(GLuint framebuffer)
1897 {
1898     return d_3_0_Core->f.IsFramebuffer(framebuffer);
1899 }
1900 
1901 inline void QOpenGLFunctions_4_5_Core::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
1902 {
1903     d_3_0_Core->f.GetRenderbufferParameteriv(target, pname, params);
1904 }
1905 
1906 inline void QOpenGLFunctions_4_5_Core::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
1907 {
1908     d_3_0_Core->f.RenderbufferStorage(target, internalformat, width, height);
1909 }
1910 
1911 inline void QOpenGLFunctions_4_5_Core::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
1912 {
1913     d_3_0_Core->f.GenRenderbuffers(n, renderbuffers);
1914 }
1915 
1916 inline void QOpenGLFunctions_4_5_Core::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
1917 {
1918     d_3_0_Core->f.DeleteRenderbuffers(n, renderbuffers);
1919 }
1920 
1921 inline void QOpenGLFunctions_4_5_Core::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
1922 {
1923     d_3_0_Core->f.BindRenderbuffer(target, renderbuffer);
1924 }
1925 
1926 inline GLboolean QOpenGLFunctions_4_5_Core::glIsRenderbuffer(GLuint renderbuffer)
1927 {
1928     return d_3_0_Core->f.IsRenderbuffer(renderbuffer);
1929 }
1930 
1931 inline const GLubyte * QOpenGLFunctions_4_5_Core::glGetStringi(GLenum name, GLuint index)
1932 {
1933     return d_3_0_Core->f.GetStringi(name, index);
1934 }
1935 
1936 inline void QOpenGLFunctions_4_5_Core::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
1937 {
1938     d_3_0_Core->f.ClearBufferfi(buffer, drawbuffer, depth, stencil);
1939 }
1940 
1941 inline void QOpenGLFunctions_4_5_Core::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
1942 {
1943     d_3_0_Core->f.ClearBufferfv(buffer, drawbuffer, value);
1944 }
1945 
1946 inline void QOpenGLFunctions_4_5_Core::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
1947 {
1948     d_3_0_Core->f.ClearBufferuiv(buffer, drawbuffer, value);
1949 }
1950 
1951 inline void QOpenGLFunctions_4_5_Core::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
1952 {
1953     d_3_0_Core->f.ClearBufferiv(buffer, drawbuffer, value);
1954 }
1955 
1956 inline void QOpenGLFunctions_4_5_Core::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
1957 {
1958     d_3_0_Core->f.GetTexParameterIuiv(target, pname, params);
1959 }
1960 
1961 inline void QOpenGLFunctions_4_5_Core::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
1962 {
1963     d_3_0_Core->f.GetTexParameterIiv(target, pname, params);
1964 }
1965 
1966 inline void QOpenGLFunctions_4_5_Core::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
1967 {
1968     d_3_0_Core->f.TexParameterIuiv(target, pname, params);
1969 }
1970 
1971 inline void QOpenGLFunctions_4_5_Core::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
1972 {
1973     d_3_0_Core->f.TexParameterIiv(target, pname, params);
1974 }
1975 
1976 inline void QOpenGLFunctions_4_5_Core::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
1977 {
1978     d_3_0_Core->f.Uniform4uiv(location, count, value);
1979 }
1980 
1981 inline void QOpenGLFunctions_4_5_Core::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
1982 {
1983     d_3_0_Core->f.Uniform3uiv(location, count, value);
1984 }
1985 
1986 inline void QOpenGLFunctions_4_5_Core::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
1987 {
1988     d_3_0_Core->f.Uniform2uiv(location, count, value);
1989 }
1990 
1991 inline void QOpenGLFunctions_4_5_Core::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
1992 {
1993     d_3_0_Core->f.Uniform1uiv(location, count, value);
1994 }
1995 
1996 inline void QOpenGLFunctions_4_5_Core::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
1997 {
1998     d_3_0_Core->f.Uniform4ui(location, v0, v1, v2, v3);
1999 }
2000 
2001 inline void QOpenGLFunctions_4_5_Core::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
2002 {
2003     d_3_0_Core->f.Uniform3ui(location, v0, v1, v2);
2004 }
2005 
2006 inline void QOpenGLFunctions_4_5_Core::glUniform2ui(GLint location, GLuint v0, GLuint v1)
2007 {
2008     d_3_0_Core->f.Uniform2ui(location, v0, v1);
2009 }
2010 
2011 inline void QOpenGLFunctions_4_5_Core::glUniform1ui(GLint location, GLuint v0)
2012 {
2013     d_3_0_Core->f.Uniform1ui(location, v0);
2014 }
2015 
2016 inline GLint QOpenGLFunctions_4_5_Core::glGetFragDataLocation(GLuint program, const GLchar *name)
2017 {
2018     return d_3_0_Core->f.GetFragDataLocation(program, name);
2019 }
2020 
2021 inline void QOpenGLFunctions_4_5_Core::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
2022 {
2023     d_3_0_Core->f.BindFragDataLocation(program, color, name);
2024 }
2025 
2026 inline void QOpenGLFunctions_4_5_Core::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
2027 {
2028     d_3_0_Core->f.GetUniformuiv(program, location, params);
2029 }
2030 
2031 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI4usv(GLuint index, const GLushort *v)
2032 {
2033     d_3_0_Core->f.VertexAttribI4usv(index, v);
2034 }
2035 
2036 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI4ubv(GLuint index, const GLubyte *v)
2037 {
2038     d_3_0_Core->f.VertexAttribI4ubv(index, v);
2039 }
2040 
2041 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI4sv(GLuint index, const GLshort *v)
2042 {
2043     d_3_0_Core->f.VertexAttribI4sv(index, v);
2044 }
2045 
2046 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI4bv(GLuint index, const GLbyte *v)
2047 {
2048     d_3_0_Core->f.VertexAttribI4bv(index, v);
2049 }
2050 
2051 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI4uiv(GLuint index, const GLuint *v)
2052 {
2053     d_3_0_Core->f.VertexAttribI4uiv(index, v);
2054 }
2055 
2056 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI3uiv(GLuint index, const GLuint *v)
2057 {
2058     d_3_0_Core->f.VertexAttribI3uiv(index, v);
2059 }
2060 
2061 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI2uiv(GLuint index, const GLuint *v)
2062 {
2063     d_3_0_Core->f.VertexAttribI2uiv(index, v);
2064 }
2065 
2066 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI1uiv(GLuint index, const GLuint *v)
2067 {
2068     d_3_0_Core->f.VertexAttribI1uiv(index, v);
2069 }
2070 
2071 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI4iv(GLuint index, const GLint *v)
2072 {
2073     d_3_0_Core->f.VertexAttribI4iv(index, v);
2074 }
2075 
2076 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI3iv(GLuint index, const GLint *v)
2077 {
2078     d_3_0_Core->f.VertexAttribI3iv(index, v);
2079 }
2080 
2081 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI2iv(GLuint index, const GLint *v)
2082 {
2083     d_3_0_Core->f.VertexAttribI2iv(index, v);
2084 }
2085 
2086 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI1iv(GLuint index, const GLint *v)
2087 {
2088     d_3_0_Core->f.VertexAttribI1iv(index, v);
2089 }
2090 
2091 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
2092 {
2093     d_3_0_Core->f.VertexAttribI4ui(index, x, y, z, w);
2094 }
2095 
2096 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z)
2097 {
2098     d_3_0_Core->f.VertexAttribI3ui(index, x, y, z);
2099 }
2100 
2101 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI2ui(GLuint index, GLuint x, GLuint y)
2102 {
2103     d_3_0_Core->f.VertexAttribI2ui(index, x, y);
2104 }
2105 
2106 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI1ui(GLuint index, GLuint x)
2107 {
2108     d_3_0_Core->f.VertexAttribI1ui(index, x);
2109 }
2110 
2111 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w)
2112 {
2113     d_3_0_Core->f.VertexAttribI4i(index, x, y, z, w);
2114 }
2115 
2116 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z)
2117 {
2118     d_3_0_Core->f.VertexAttribI3i(index, x, y, z);
2119 }
2120 
2121 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI2i(GLuint index, GLint x, GLint y)
2122 {
2123     d_3_0_Core->f.VertexAttribI2i(index, x, y);
2124 }
2125 
2126 inline void QOpenGLFunctions_4_5_Core::glVertexAttribI1i(GLuint index, GLint x)
2127 {
2128     d_3_0_Core->f.VertexAttribI1i(index, x);
2129 }
2130 
2131 inline void QOpenGLFunctions_4_5_Core::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
2132 {
2133     d_3_0_Core->f.GetVertexAttribIuiv(index, pname, params);
2134 }
2135 
2136 inline void QOpenGLFunctions_4_5_Core::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
2137 {
2138     d_3_0_Core->f.GetVertexAttribIiv(index, pname, params);
2139 }
2140 
2141 inline void QOpenGLFunctions_4_5_Core::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer)
2142 {
2143     d_3_0_Core->f.VertexAttribIPointer(index, size, type, stride, pointer);
2144 }
2145 
2146 inline void QOpenGLFunctions_4_5_Core::glEndConditionalRender()
2147 {
2148     d_3_0_Core->f.EndConditionalRender();
2149 }
2150 
2151 inline void QOpenGLFunctions_4_5_Core::glBeginConditionalRender(GLuint id, GLenum mode)
2152 {
2153     d_3_0_Core->f.BeginConditionalRender(id, mode);
2154 }
2155 
2156 inline void QOpenGLFunctions_4_5_Core::glClampColor(GLenum target, GLenum clamp)
2157 {
2158     d_3_0_Core->f.ClampColor(target, clamp);
2159 }
2160 
2161 inline void QOpenGLFunctions_4_5_Core::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
2162 {
2163     d_3_0_Core->f.GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
2164 }
2165 
2166 inline void QOpenGLFunctions_4_5_Core::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar *const *varyings, GLenum bufferMode)
2167 {
2168     d_3_0_Core->f.TransformFeedbackVaryings(program, count, varyings, bufferMode);
2169 }
2170 
2171 inline void QOpenGLFunctions_4_5_Core::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
2172 {
2173     d_3_0_Core->f.BindBufferBase(target, index, buffer);
2174 }
2175 
2176 inline void QOpenGLFunctions_4_5_Core::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
2177 {
2178     d_3_0_Core->f.BindBufferRange(target, index, buffer, offset, size);
2179 }
2180 
2181 inline void QOpenGLFunctions_4_5_Core::glEndTransformFeedback()
2182 {
2183     d_3_0_Core->f.EndTransformFeedback();
2184 }
2185 
2186 inline void QOpenGLFunctions_4_5_Core::glBeginTransformFeedback(GLenum primitiveMode)
2187 {
2188     d_3_0_Core->f.BeginTransformFeedback(primitiveMode);
2189 }
2190 
2191 inline GLboolean QOpenGLFunctions_4_5_Core::glIsEnabledi(GLenum target, GLuint index)
2192 {
2193     return d_3_0_Core->f.IsEnabledi(target, index);
2194 }
2195 
2196 inline void QOpenGLFunctions_4_5_Core::glDisablei(GLenum target, GLuint index)
2197 {
2198     d_3_0_Core->f.Disablei(target, index);
2199 }
2200 
2201 inline void QOpenGLFunctions_4_5_Core::glEnablei(GLenum target, GLuint index)
2202 {
2203     d_3_0_Core->f.Enablei(target, index);
2204 }
2205 
2206 inline void QOpenGLFunctions_4_5_Core::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
2207 {
2208     d_3_0_Core->f.GetIntegeri_v(target, index, data);
2209 }
2210 
2211 inline void QOpenGLFunctions_4_5_Core::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
2212 {
2213     d_3_0_Core->f.GetBooleani_v(target, index, data);
2214 }
2215 
2216 inline void QOpenGLFunctions_4_5_Core::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
2217 {
2218     d_3_0_Core->f.ColorMaski(index, r, g, b, a);
2219 }
2220 
2221 
2222 // OpenGL 3.1 core functions
2223 inline void QOpenGLFunctions_4_5_Core::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
2224 {
2225     d_3_1_Core->f.UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
2226 }
2227 
2228 inline void QOpenGLFunctions_4_5_Core::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
2229 {
2230     d_3_1_Core->f.GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
2231 }
2232 
2233 inline void QOpenGLFunctions_4_5_Core::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
2234 {
2235     d_3_1_Core->f.GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
2236 }
2237 
2238 inline GLuint QOpenGLFunctions_4_5_Core::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
2239 {
2240     return d_3_1_Core->f.GetUniformBlockIndex(program, uniformBlockName);
2241 }
2242 
2243 inline void QOpenGLFunctions_4_5_Core::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
2244 {
2245     d_3_1_Core->f.GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
2246 }
2247 
2248 inline void QOpenGLFunctions_4_5_Core::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
2249 {
2250     d_3_1_Core->f.GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
2251 }
2252 
2253 inline void QOpenGLFunctions_4_5_Core::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar *const *uniformNames, GLuint *uniformIndices)
2254 {
2255     d_3_1_Core->f.GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
2256 }
2257 
2258 inline void QOpenGLFunctions_4_5_Core::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
2259 {
2260     d_3_1_Core->f.CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
2261 }
2262 
2263 inline void QOpenGLFunctions_4_5_Core::glPrimitiveRestartIndex(GLuint index)
2264 {
2265     d_3_1_Core->f.PrimitiveRestartIndex(index);
2266 }
2267 
2268 inline void QOpenGLFunctions_4_5_Core::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
2269 {
2270     d_3_1_Core->f.TexBuffer(target, internalformat, buffer);
2271 }
2272 
2273 inline void QOpenGLFunctions_4_5_Core::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount)
2274 {
2275     d_3_1_Core->f.DrawElementsInstanced(mode, count, type, indices, instancecount);
2276 }
2277 
2278 inline void QOpenGLFunctions_4_5_Core::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
2279 {
2280     d_3_1_Core->f.DrawArraysInstanced(mode, first, count, instancecount);
2281 }
2282 
2283 
2284 // OpenGL 3.2 core functions
2285 inline void QOpenGLFunctions_4_5_Core::glSampleMaski(GLuint maskNumber, GLbitfield mask)
2286 {
2287     d_3_2_Core->f.SampleMaski(maskNumber, mask);
2288 }
2289 
2290 inline void QOpenGLFunctions_4_5_Core::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
2291 {
2292     d_3_2_Core->f.GetMultisamplefv(pname, index, val);
2293 }
2294 
2295 inline void QOpenGLFunctions_4_5_Core::glTexImage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
2296 {
2297     d_3_2_Core->f.TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
2298 }
2299 
2300 inline void QOpenGLFunctions_4_5_Core::glTexImage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
2301 {
2302     d_3_2_Core->f.TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
2303 }
2304 
2305 inline void QOpenGLFunctions_4_5_Core::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
2306 {
2307     d_3_2_Core->f.FramebufferTexture(target, attachment, texture, level);
2308 }
2309 
2310 inline void QOpenGLFunctions_4_5_Core::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
2311 {
2312     d_3_2_Core->f.GetBufferParameteri64v(target, pname, params);
2313 }
2314 
2315 inline void QOpenGLFunctions_4_5_Core::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
2316 {
2317     d_3_2_Core->f.GetInteger64i_v(target, index, data);
2318 }
2319 
2320 inline void QOpenGLFunctions_4_5_Core::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
2321 {
2322     d_3_2_Core->f.GetSynciv(sync, pname, bufSize, length, values);
2323 }
2324 
2325 inline void QOpenGLFunctions_4_5_Core::glGetInteger64v(GLenum pname, GLint64 *data)
2326 {
2327     d_3_2_Core->f.GetInteger64v(pname, data);
2328 }
2329 
2330 inline void QOpenGLFunctions_4_5_Core::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
2331 {
2332     d_3_2_Core->f.WaitSync(sync, flags, timeout);
2333 }
2334 
2335 inline GLenum QOpenGLFunctions_4_5_Core::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
2336 {
2337     return d_3_2_Core->f.ClientWaitSync(sync, flags, timeout);
2338 }
2339 
2340 inline void QOpenGLFunctions_4_5_Core::glDeleteSync(GLsync sync)
2341 {
2342     d_3_2_Core->f.DeleteSync(sync);
2343 }
2344 
2345 inline GLboolean QOpenGLFunctions_4_5_Core::glIsSync(GLsync sync)
2346 {
2347     return d_3_2_Core->f.IsSync(sync);
2348 }
2349 
2350 inline GLsync QOpenGLFunctions_4_5_Core::glFenceSync(GLenum condition, GLbitfield flags)
2351 {
2352     return d_3_2_Core->f.FenceSync(condition, flags);
2353 }
2354 
2355 inline void QOpenGLFunctions_4_5_Core::glProvokingVertex(GLenum mode)
2356 {
2357     d_3_2_Core->f.ProvokingVertex(mode);
2358 }
2359 
2360 inline void QOpenGLFunctions_4_5_Core::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const void *const *indices, GLsizei drawcount, const GLint *basevertex)
2361 {
2362     d_3_2_Core->f.MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
2363 }
2364 
2365 inline void QOpenGLFunctions_4_5_Core::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex)
2366 {
2367     d_3_2_Core->f.DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
2368 }
2369 
2370 inline void QOpenGLFunctions_4_5_Core::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex)
2371 {
2372     d_3_2_Core->f.DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
2373 }
2374 
2375 inline void QOpenGLFunctions_4_5_Core::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex)
2376 {
2377     d_3_2_Core->f.DrawElementsBaseVertex(mode, count, type, indices, basevertex);
2378 }
2379 
2380 
2381 // OpenGL 3.3 core functions
2382 inline void QOpenGLFunctions_4_5_Core::glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
2383 {
2384     d_3_3_Core->f.VertexAttribP4uiv(index, type, normalized, value);
2385 }
2386 
2387 inline void QOpenGLFunctions_4_5_Core::glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
2388 {
2389     d_3_3_Core->f.VertexAttribP4ui(index, type, normalized, value);
2390 }
2391 
2392 inline void QOpenGLFunctions_4_5_Core::glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
2393 {
2394     d_3_3_Core->f.VertexAttribP3uiv(index, type, normalized, value);
2395 }
2396 
2397 inline void QOpenGLFunctions_4_5_Core::glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
2398 {
2399     d_3_3_Core->f.VertexAttribP3ui(index, type, normalized, value);
2400 }
2401 
2402 inline void QOpenGLFunctions_4_5_Core::glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
2403 {
2404     d_3_3_Core->f.VertexAttribP2uiv(index, type, normalized, value);
2405 }
2406 
2407 inline void QOpenGLFunctions_4_5_Core::glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
2408 {
2409     d_3_3_Core->f.VertexAttribP2ui(index, type, normalized, value);
2410 }
2411 
2412 inline void QOpenGLFunctions_4_5_Core::glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
2413 {
2414     d_3_3_Core->f.VertexAttribP1uiv(index, type, normalized, value);
2415 }
2416 
2417 inline void QOpenGLFunctions_4_5_Core::glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
2418 {
2419     d_3_3_Core->f.VertexAttribP1ui(index, type, normalized, value);
2420 }
2421 
2422 inline void QOpenGLFunctions_4_5_Core::glVertexAttribDivisor(GLuint index, GLuint divisor)
2423 {
2424     d_3_3_Core->f.VertexAttribDivisor(index, divisor);
2425 }
2426 
2427 inline void QOpenGLFunctions_4_5_Core::glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)
2428 {
2429     d_3_3_Core->f.GetQueryObjectui64v(id, pname, params);
2430 }
2431 
2432 inline void QOpenGLFunctions_4_5_Core::glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)
2433 {
2434     d_3_3_Core->f.GetQueryObjecti64v(id, pname, params);
2435 }
2436 
2437 inline void QOpenGLFunctions_4_5_Core::glQueryCounter(GLuint id, GLenum target)
2438 {
2439     d_3_3_Core->f.QueryCounter(id, target);
2440 }
2441 
2442 inline void QOpenGLFunctions_4_5_Core::glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params)
2443 {
2444     d_3_3_Core->f.GetSamplerParameterIuiv(sampler, pname, params);
2445 }
2446 
2447 inline void QOpenGLFunctions_4_5_Core::glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
2448 {
2449     d_3_3_Core->f.GetSamplerParameterfv(sampler, pname, params);
2450 }
2451 
2452 inline void QOpenGLFunctions_4_5_Core::glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params)
2453 {
2454     d_3_3_Core->f.GetSamplerParameterIiv(sampler, pname, params);
2455 }
2456 
2457 inline void QOpenGLFunctions_4_5_Core::glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
2458 {
2459     d_3_3_Core->f.GetSamplerParameteriv(sampler, pname, params);
2460 }
2461 
2462 inline void QOpenGLFunctions_4_5_Core::glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)
2463 {
2464     d_3_3_Core->f.SamplerParameterIuiv(sampler, pname, param);
2465 }
2466 
2467 inline void QOpenGLFunctions_4_5_Core::glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)
2468 {
2469     d_3_3_Core->f.SamplerParameterIiv(sampler, pname, param);
2470 }
2471 
2472 inline void QOpenGLFunctions_4_5_Core::glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
2473 {
2474     d_3_3_Core->f.SamplerParameterfv(sampler, pname, param);
2475 }
2476 
2477 inline void QOpenGLFunctions_4_5_Core::glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
2478 {
2479     d_3_3_Core->f.SamplerParameterf(sampler, pname, param);
2480 }
2481 
2482 inline void QOpenGLFunctions_4_5_Core::glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
2483 {
2484     d_3_3_Core->f.SamplerParameteriv(sampler, pname, param);
2485 }
2486 
2487 inline void QOpenGLFunctions_4_5_Core::glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
2488 {
2489     d_3_3_Core->f.SamplerParameteri(sampler, pname, param);
2490 }
2491 
2492 inline void QOpenGLFunctions_4_5_Core::glBindSampler(GLuint unit, GLuint sampler)
2493 {
2494     d_3_3_Core->f.BindSampler(unit, sampler);
2495 }
2496 
2497 inline GLboolean QOpenGLFunctions_4_5_Core::glIsSampler(GLuint sampler)
2498 {
2499     return d_3_3_Core->f.IsSampler(sampler);
2500 }
2501 
2502 inline void QOpenGLFunctions_4_5_Core::glDeleteSamplers(GLsizei count, const GLuint *samplers)
2503 {
2504     d_3_3_Core->f.DeleteSamplers(count, samplers);
2505 }
2506 
2507 inline void QOpenGLFunctions_4_5_Core::glGenSamplers(GLsizei count, GLuint *samplers)
2508 {
2509     d_3_3_Core->f.GenSamplers(count, samplers);
2510 }
2511 
2512 inline GLint QOpenGLFunctions_4_5_Core::glGetFragDataIndex(GLuint program, const GLchar *name)
2513 {
2514     return d_3_3_Core->f.GetFragDataIndex(program, name);
2515 }
2516 
2517 inline void QOpenGLFunctions_4_5_Core::glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)
2518 {
2519     d_3_3_Core->f.BindFragDataLocationIndexed(program, colorNumber, index, name);
2520 }
2521 
2522 
2523 // OpenGL 4.0 core functions
2524 inline void QOpenGLFunctions_4_5_Core::glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params)
2525 {
2526     d_4_0_Core->f.GetQueryIndexediv(target, index, pname, params);
2527 }
2528 
2529 inline void QOpenGLFunctions_4_5_Core::glEndQueryIndexed(GLenum target, GLuint index)
2530 {
2531     d_4_0_Core->f.EndQueryIndexed(target, index);
2532 }
2533 
2534 inline void QOpenGLFunctions_4_5_Core::glBeginQueryIndexed(GLenum target, GLuint index, GLuint id)
2535 {
2536     d_4_0_Core->f.BeginQueryIndexed(target, index, id);
2537 }
2538 
2539 inline void QOpenGLFunctions_4_5_Core::glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream)
2540 {
2541     d_4_0_Core->f.DrawTransformFeedbackStream(mode, id, stream);
2542 }
2543 
2544 inline void QOpenGLFunctions_4_5_Core::glDrawTransformFeedback(GLenum mode, GLuint id)
2545 {
2546     d_4_0_Core->f.DrawTransformFeedback(mode, id);
2547 }
2548 
2549 inline void QOpenGLFunctions_4_5_Core::glResumeTransformFeedback()
2550 {
2551     d_4_0_Core->f.ResumeTransformFeedback();
2552 }
2553 
2554 inline void QOpenGLFunctions_4_5_Core::glPauseTransformFeedback()
2555 {
2556     d_4_0_Core->f.PauseTransformFeedback();
2557 }
2558 
2559 inline GLboolean QOpenGLFunctions_4_5_Core::glIsTransformFeedback(GLuint id)
2560 {
2561     return d_4_0_Core->f.IsTransformFeedback(id);
2562 }
2563 
2564 inline void QOpenGLFunctions_4_5_Core::glGenTransformFeedbacks(GLsizei n, GLuint *ids)
2565 {
2566     d_4_0_Core->f.GenTransformFeedbacks(n, ids);
2567 }
2568 
2569 inline void QOpenGLFunctions_4_5_Core::glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids)
2570 {
2571     d_4_0_Core->f.DeleteTransformFeedbacks(n, ids);
2572 }
2573 
2574 inline void QOpenGLFunctions_4_5_Core::glBindTransformFeedback(GLenum target, GLuint id)
2575 {
2576     d_4_0_Core->f.BindTransformFeedback(target, id);
2577 }
2578 
2579 inline void QOpenGLFunctions_4_5_Core::glPatchParameterfv(GLenum pname, const GLfloat *values)
2580 {
2581     d_4_0_Core->f.PatchParameterfv(pname, values);
2582 }
2583 
2584 inline void QOpenGLFunctions_4_5_Core::glPatchParameteri(GLenum pname, GLint value)
2585 {
2586     d_4_0_Core->f.PatchParameteri(pname, value);
2587 }
2588 
2589 inline void QOpenGLFunctions_4_5_Core::glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values)
2590 {
2591     d_4_0_Core->f.GetProgramStageiv(program, shadertype, pname, values);
2592 }
2593 
2594 inline void QOpenGLFunctions_4_5_Core::glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params)
2595 {
2596     d_4_0_Core->f.GetUniformSubroutineuiv(shadertype, location, params);
2597 }
2598 
2599 inline void QOpenGLFunctions_4_5_Core::glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices)
2600 {
2601     d_4_0_Core->f.UniformSubroutinesuiv(shadertype, count, indices);
2602 }
2603 
2604 inline void QOpenGLFunctions_4_5_Core::glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
2605 {
2606     d_4_0_Core->f.GetActiveSubroutineName(program, shadertype, index, bufsize, length, name);
2607 }
2608 
2609 inline void QOpenGLFunctions_4_5_Core::glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
2610 {
2611     d_4_0_Core->f.GetActiveSubroutineUniformName(program, shadertype, index, bufsize, length, name);
2612 }
2613 
2614 inline void QOpenGLFunctions_4_5_Core::glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values)
2615 {
2616     d_4_0_Core->f.GetActiveSubroutineUniformiv(program, shadertype, index, pname, values);
2617 }
2618 
2619 inline GLuint QOpenGLFunctions_4_5_Core::glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name)
2620 {
2621     return d_4_0_Core->f.GetSubroutineIndex(program, shadertype, name);
2622 }
2623 
2624 inline GLint QOpenGLFunctions_4_5_Core::glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name)
2625 {
2626     return d_4_0_Core->f.GetSubroutineUniformLocation(program, shadertype, name);
2627 }
2628 
2629 inline void QOpenGLFunctions_4_5_Core::glGetUniformdv(GLuint program, GLint location, GLdouble *params)
2630 {
2631     d_4_0_Core->f.GetUniformdv(program, location, params);
2632 }
2633 
2634 inline void QOpenGLFunctions_4_5_Core::glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2635 {
2636     d_4_0_Core->f.UniformMatrix4x3dv(location, count, transpose, value);
2637 }
2638 
2639 inline void QOpenGLFunctions_4_5_Core::glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2640 {
2641     d_4_0_Core->f.UniformMatrix4x2dv(location, count, transpose, value);
2642 }
2643 
2644 inline void QOpenGLFunctions_4_5_Core::glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2645 {
2646     d_4_0_Core->f.UniformMatrix3x4dv(location, count, transpose, value);
2647 }
2648 
2649 inline void QOpenGLFunctions_4_5_Core::glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2650 {
2651     d_4_0_Core->f.UniformMatrix3x2dv(location, count, transpose, value);
2652 }
2653 
2654 inline void QOpenGLFunctions_4_5_Core::glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2655 {
2656     d_4_0_Core->f.UniformMatrix2x4dv(location, count, transpose, value);
2657 }
2658 
2659 inline void QOpenGLFunctions_4_5_Core::glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2660 {
2661     d_4_0_Core->f.UniformMatrix2x3dv(location, count, transpose, value);
2662 }
2663 
2664 inline void QOpenGLFunctions_4_5_Core::glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2665 {
2666     d_4_0_Core->f.UniformMatrix4dv(location, count, transpose, value);
2667 }
2668 
2669 inline void QOpenGLFunctions_4_5_Core::glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2670 {
2671     d_4_0_Core->f.UniformMatrix3dv(location, count, transpose, value);
2672 }
2673 
2674 inline void QOpenGLFunctions_4_5_Core::glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2675 {
2676     d_4_0_Core->f.UniformMatrix2dv(location, count, transpose, value);
2677 }
2678 
2679 inline void QOpenGLFunctions_4_5_Core::glUniform4dv(GLint location, GLsizei count, const GLdouble *value)
2680 {
2681     d_4_0_Core->f.Uniform4dv(location, count, value);
2682 }
2683 
2684 inline void QOpenGLFunctions_4_5_Core::glUniform3dv(GLint location, GLsizei count, const GLdouble *value)
2685 {
2686     d_4_0_Core->f.Uniform3dv(location, count, value);
2687 }
2688 
2689 inline void QOpenGLFunctions_4_5_Core::glUniform2dv(GLint location, GLsizei count, const GLdouble *value)
2690 {
2691     d_4_0_Core->f.Uniform2dv(location, count, value);
2692 }
2693 
2694 inline void QOpenGLFunctions_4_5_Core::glUniform1dv(GLint location, GLsizei count, const GLdouble *value)
2695 {
2696     d_4_0_Core->f.Uniform1dv(location, count, value);
2697 }
2698 
2699 inline void QOpenGLFunctions_4_5_Core::glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
2700 {
2701     d_4_0_Core->f.Uniform4d(location, x, y, z, w);
2702 }
2703 
2704 inline void QOpenGLFunctions_4_5_Core::glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z)
2705 {
2706     d_4_0_Core->f.Uniform3d(location, x, y, z);
2707 }
2708 
2709 inline void QOpenGLFunctions_4_5_Core::glUniform2d(GLint location, GLdouble x, GLdouble y)
2710 {
2711     d_4_0_Core->f.Uniform2d(location, x, y);
2712 }
2713 
2714 inline void QOpenGLFunctions_4_5_Core::glUniform1d(GLint location, GLdouble x)
2715 {
2716     d_4_0_Core->f.Uniform1d(location, x);
2717 }
2718 
2719 inline void QOpenGLFunctions_4_5_Core::glDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect)
2720 {
2721     d_4_0_Core->f.DrawElementsIndirect(mode, type, indirect);
2722 }
2723 
2724 inline void QOpenGLFunctions_4_5_Core::glDrawArraysIndirect(GLenum mode, const void *indirect)
2725 {
2726     d_4_0_Core->f.DrawArraysIndirect(mode, indirect);
2727 }
2728 
2729 inline void QOpenGLFunctions_4_5_Core::glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
2730 {
2731     d_4_0_Core->f.BlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
2732 }
2733 
2734 inline void QOpenGLFunctions_4_5_Core::glBlendFunci(GLuint buf, GLenum src, GLenum dst)
2735 {
2736     d_4_0_Core->f.BlendFunci(buf, src, dst);
2737 }
2738 
2739 inline void QOpenGLFunctions_4_5_Core::glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha)
2740 {
2741     d_4_0_Core->f.BlendEquationSeparatei(buf, modeRGB, modeAlpha);
2742 }
2743 
2744 inline void QOpenGLFunctions_4_5_Core::glBlendEquationi(GLuint buf, GLenum mode)
2745 {
2746     d_4_0_Core->f.BlendEquationi(buf, mode);
2747 }
2748 
2749 inline void QOpenGLFunctions_4_5_Core::glMinSampleShading(GLfloat value)
2750 {
2751     d_4_0_Core->f.MinSampleShading(value);
2752 }
2753 
2754 
2755 // OpenGL 4.1 core functions
2756 inline void QOpenGLFunctions_4_5_Core::glGetDoublei_v(GLenum target, GLuint index, GLdouble *data)
2757 {
2758     d_4_1_Core->f.GetDoublei_v(target, index, data);
2759 }
2760 
2761 inline void QOpenGLFunctions_4_5_Core::glGetFloati_v(GLenum target, GLuint index, GLfloat *data)
2762 {
2763     d_4_1_Core->f.GetFloati_v(target, index, data);
2764 }
2765 
2766 inline void QOpenGLFunctions_4_5_Core::glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f)
2767 {
2768     d_4_1_Core->f.DepthRangeIndexed(index, n, f);
2769 }
2770 
2771 inline void QOpenGLFunctions_4_5_Core::glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v)
2772 {
2773     d_4_1_Core->f.DepthRangeArrayv(first, count, v);
2774 }
2775 
2776 inline void QOpenGLFunctions_4_5_Core::glScissorIndexedv(GLuint index, const GLint *v)
2777 {
2778     d_4_1_Core->f.ScissorIndexedv(index, v);
2779 }
2780 
2781 inline void QOpenGLFunctions_4_5_Core::glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height)
2782 {
2783     d_4_1_Core->f.ScissorIndexed(index, left, bottom, width, height);
2784 }
2785 
2786 inline void QOpenGLFunctions_4_5_Core::glScissorArrayv(GLuint first, GLsizei count, const GLint *v)
2787 {
2788     d_4_1_Core->f.ScissorArrayv(first, count, v);
2789 }
2790 
2791 inline void QOpenGLFunctions_4_5_Core::glViewportIndexedfv(GLuint index, const GLfloat *v)
2792 {
2793     d_4_1_Core->f.ViewportIndexedfv(index, v);
2794 }
2795 
2796 inline void QOpenGLFunctions_4_5_Core::glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h)
2797 {
2798     d_4_1_Core->f.ViewportIndexedf(index, x, y, w, h);
2799 }
2800 
2801 inline void QOpenGLFunctions_4_5_Core::glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v)
2802 {
2803     d_4_1_Core->f.ViewportArrayv(first, count, v);
2804 }
2805 
2806 inline void QOpenGLFunctions_4_5_Core::glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params)
2807 {
2808     d_4_1_Core->f.GetVertexAttribLdv(index, pname, params);
2809 }
2810 
2811 inline void QOpenGLFunctions_4_5_Core::glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer)
2812 {
2813     d_4_1_Core->f.VertexAttribLPointer(index, size, type, stride, pointer);
2814 }
2815 
2816 inline void QOpenGLFunctions_4_5_Core::glVertexAttribL4dv(GLuint index, const GLdouble *v)
2817 {
2818     d_4_1_Core->f.VertexAttribL4dv(index, v);
2819 }
2820 
2821 inline void QOpenGLFunctions_4_5_Core::glVertexAttribL3dv(GLuint index, const GLdouble *v)
2822 {
2823     d_4_1_Core->f.VertexAttribL3dv(index, v);
2824 }
2825 
2826 inline void QOpenGLFunctions_4_5_Core::glVertexAttribL2dv(GLuint index, const GLdouble *v)
2827 {
2828     d_4_1_Core->f.VertexAttribL2dv(index, v);
2829 }
2830 
2831 inline void QOpenGLFunctions_4_5_Core::glVertexAttribL1dv(GLuint index, const GLdouble *v)
2832 {
2833     d_4_1_Core->f.VertexAttribL1dv(index, v);
2834 }
2835 
2836 inline void QOpenGLFunctions_4_5_Core::glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
2837 {
2838     d_4_1_Core->f.VertexAttribL4d(index, x, y, z, w);
2839 }
2840 
2841 inline void QOpenGLFunctions_4_5_Core::glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
2842 {
2843     d_4_1_Core->f.VertexAttribL3d(index, x, y, z);
2844 }
2845 
2846 inline void QOpenGLFunctions_4_5_Core::glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y)
2847 {
2848     d_4_1_Core->f.VertexAttribL2d(index, x, y);
2849 }
2850 
2851 inline void QOpenGLFunctions_4_5_Core::glVertexAttribL1d(GLuint index, GLdouble x)
2852 {
2853     d_4_1_Core->f.VertexAttribL1d(index, x);
2854 }
2855 
2856 inline void QOpenGLFunctions_4_5_Core::glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
2857 {
2858     d_4_1_Core->f.GetProgramPipelineInfoLog(pipeline, bufSize, length, infoLog);
2859 }
2860 
2861 inline void QOpenGLFunctions_4_5_Core::glValidateProgramPipeline(GLuint pipeline)
2862 {
2863     d_4_1_Core->f.ValidateProgramPipeline(pipeline);
2864 }
2865 
2866 inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2867 {
2868     d_4_1_Core->f.ProgramUniformMatrix4x3dv(program, location, count, transpose, value);
2869 }
2870 
2871 inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2872 {
2873     d_4_1_Core->f.ProgramUniformMatrix3x4dv(program, location, count, transpose, value);
2874 }
2875 
2876 inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2877 {
2878     d_4_1_Core->f.ProgramUniformMatrix4x2dv(program, location, count, transpose, value);
2879 }
2880 
2881 inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2882 {
2883     d_4_1_Core->f.ProgramUniformMatrix2x4dv(program, location, count, transpose, value);
2884 }
2885 
2886 inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2887 {
2888     d_4_1_Core->f.ProgramUniformMatrix3x2dv(program, location, count, transpose, value);
2889 }
2890 
2891 inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2892 {
2893     d_4_1_Core->f.ProgramUniformMatrix2x3dv(program, location, count, transpose, value);
2894 }
2895 
2896 inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2897 {
2898     d_4_1_Core->f.ProgramUniformMatrix4x3fv(program, location, count, transpose, value);
2899 }
2900 
2901 inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2902 {
2903     d_4_1_Core->f.ProgramUniformMatrix3x4fv(program, location, count, transpose, value);
2904 }
2905 
2906 inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2907 {
2908     d_4_1_Core->f.ProgramUniformMatrix4x2fv(program, location, count, transpose, value);
2909 }
2910 
2911 inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2912 {
2913     d_4_1_Core->f.ProgramUniformMatrix2x4fv(program, location, count, transpose, value);
2914 }
2915 
2916 inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2917 {
2918     d_4_1_Core->f.ProgramUniformMatrix3x2fv(program, location, count, transpose, value);
2919 }
2920 
2921 inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2922 {
2923     d_4_1_Core->f.ProgramUniformMatrix2x3fv(program, location, count, transpose, value);
2924 }
2925 
2926 inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2927 {
2928     d_4_1_Core->f.ProgramUniformMatrix4dv(program, location, count, transpose, value);
2929 }
2930 
2931 inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2932 {
2933     d_4_1_Core->f.ProgramUniformMatrix3dv(program, location, count, transpose, value);
2934 }
2935 
2936 inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2937 {
2938     d_4_1_Core->f.ProgramUniformMatrix2dv(program, location, count, transpose, value);
2939 }
2940 
2941 inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2942 {
2943     d_4_1_Core->f.ProgramUniformMatrix4fv(program, location, count, transpose, value);
2944 }
2945 
2946 inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2947 {
2948     d_4_1_Core->f.ProgramUniformMatrix3fv(program, location, count, transpose, value);
2949 }
2950 
2951 inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2952 {
2953     d_4_1_Core->f.ProgramUniformMatrix2fv(program, location, count, transpose, value);
2954 }
2955 
2956 inline void QOpenGLFunctions_4_5_Core::glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
2957 {
2958     d_4_1_Core->f.ProgramUniform4uiv(program, location, count, value);
2959 }
2960 
2961 inline void QOpenGLFunctions_4_5_Core::glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
2962 {
2963     d_4_1_Core->f.ProgramUniform4ui(program, location, v0, v1, v2, v3);
2964 }
2965 
2966 inline void QOpenGLFunctions_4_5_Core::glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
2967 {
2968     d_4_1_Core->f.ProgramUniform4dv(program, location, count, value);
2969 }
2970 
2971 inline void QOpenGLFunctions_4_5_Core::glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3)
2972 {
2973     d_4_1_Core->f.ProgramUniform4d(program, location, v0, v1, v2, v3);
2974 }
2975 
2976 inline void QOpenGLFunctions_4_5_Core::glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
2977 {
2978     d_4_1_Core->f.ProgramUniform4fv(program, location, count, value);
2979 }
2980 
2981 inline void QOpenGLFunctions_4_5_Core::glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
2982 {
2983     d_4_1_Core->f.ProgramUniform4f(program, location, v0, v1, v2, v3);
2984 }
2985 
2986 inline void QOpenGLFunctions_4_5_Core::glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value)
2987 {
2988     d_4_1_Core->f.ProgramUniform4iv(program, location, count, value);
2989 }
2990 
2991 inline void QOpenGLFunctions_4_5_Core::glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
2992 {
2993     d_4_1_Core->f.ProgramUniform4i(program, location, v0, v1, v2, v3);
2994 }
2995 
2996 inline void QOpenGLFunctions_4_5_Core::glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
2997 {
2998     d_4_1_Core->f.ProgramUniform3uiv(program, location, count, value);
2999 }
3000 
3001 inline void QOpenGLFunctions_4_5_Core::glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2)
3002 {
3003     d_4_1_Core->f.ProgramUniform3ui(program, location, v0, v1, v2);
3004 }
3005 
3006 inline void QOpenGLFunctions_4_5_Core::glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
3007 {
3008     d_4_1_Core->f.ProgramUniform3dv(program, location, count, value);
3009 }
3010 
3011 inline void QOpenGLFunctions_4_5_Core::glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2)
3012 {
3013     d_4_1_Core->f.ProgramUniform3d(program, location, v0, v1, v2);
3014 }
3015 
3016 inline void QOpenGLFunctions_4_5_Core::glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
3017 {
3018     d_4_1_Core->f.ProgramUniform3fv(program, location, count, value);
3019 }
3020 
3021 inline void QOpenGLFunctions_4_5_Core::glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
3022 {
3023     d_4_1_Core->f.ProgramUniform3f(program, location, v0, v1, v2);
3024 }
3025 
3026 inline void QOpenGLFunctions_4_5_Core::glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value)
3027 {
3028     d_4_1_Core->f.ProgramUniform3iv(program, location, count, value);
3029 }
3030 
3031 inline void QOpenGLFunctions_4_5_Core::glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2)
3032 {
3033     d_4_1_Core->f.ProgramUniform3i(program, location, v0, v1, v2);
3034 }
3035 
3036 inline void QOpenGLFunctions_4_5_Core::glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
3037 {
3038     d_4_1_Core->f.ProgramUniform2uiv(program, location, count, value);
3039 }
3040 
3041 inline void QOpenGLFunctions_4_5_Core::glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1)
3042 {
3043     d_4_1_Core->f.ProgramUniform2ui(program, location, v0, v1);
3044 }
3045 
3046 inline void QOpenGLFunctions_4_5_Core::glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
3047 {
3048     d_4_1_Core->f.ProgramUniform2dv(program, location, count, value);
3049 }
3050 
3051 inline void QOpenGLFunctions_4_5_Core::glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1)
3052 {
3053     d_4_1_Core->f.ProgramUniform2d(program, location, v0, v1);
3054 }
3055 
3056 inline void QOpenGLFunctions_4_5_Core::glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
3057 {
3058     d_4_1_Core->f.ProgramUniform2fv(program, location, count, value);
3059 }
3060 
3061 inline void QOpenGLFunctions_4_5_Core::glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1)
3062 {
3063     d_4_1_Core->f.ProgramUniform2f(program, location, v0, v1);
3064 }
3065 
3066 inline void QOpenGLFunctions_4_5_Core::glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value)
3067 {
3068     d_4_1_Core->f.ProgramUniform2iv(program, location, count, value);
3069 }
3070 
3071 inline void QOpenGLFunctions_4_5_Core::glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1)
3072 {
3073     d_4_1_Core->f.ProgramUniform2i(program, location, v0, v1);
3074 }
3075 
3076 inline void QOpenGLFunctions_4_5_Core::glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
3077 {
3078     d_4_1_Core->f.ProgramUniform1uiv(program, location, count, value);
3079 }
3080 
3081 inline void QOpenGLFunctions_4_5_Core::glProgramUniform1ui(GLuint program, GLint location, GLuint v0)
3082 {
3083     d_4_1_Core->f.ProgramUniform1ui(program, location, v0);
3084 }
3085 
3086 inline void QOpenGLFunctions_4_5_Core::glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
3087 {
3088     d_4_1_Core->f.ProgramUniform1dv(program, location, count, value);
3089 }
3090 
3091 inline void QOpenGLFunctions_4_5_Core::glProgramUniform1d(GLuint program, GLint location, GLdouble v0)
3092 {
3093     d_4_1_Core->f.ProgramUniform1d(program, location, v0);
3094 }
3095 
3096 inline void QOpenGLFunctions_4_5_Core::glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
3097 {
3098     d_4_1_Core->f.ProgramUniform1fv(program, location, count, value);
3099 }
3100 
3101 inline void QOpenGLFunctions_4_5_Core::glProgramUniform1f(GLuint program, GLint location, GLfloat v0)
3102 {
3103     d_4_1_Core->f.ProgramUniform1f(program, location, v0);
3104 }
3105 
3106 inline void QOpenGLFunctions_4_5_Core::glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value)
3107 {
3108     d_4_1_Core->f.ProgramUniform1iv(program, location, count, value);
3109 }
3110 
3111 inline void QOpenGLFunctions_4_5_Core::glProgramUniform1i(GLuint program, GLint location, GLint v0)
3112 {
3113     d_4_1_Core->f.ProgramUniform1i(program, location, v0);
3114 }
3115 
3116 inline void QOpenGLFunctions_4_5_Core::glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params)
3117 {
3118     d_4_1_Core->f.GetProgramPipelineiv(pipeline, pname, params);
3119 }
3120 
3121 inline GLboolean QOpenGLFunctions_4_5_Core::glIsProgramPipeline(GLuint pipeline)
3122 {
3123     return d_4_1_Core->f.IsProgramPipeline(pipeline);
3124 }
3125 
3126 inline void QOpenGLFunctions_4_5_Core::glGenProgramPipelines(GLsizei n, GLuint *pipelines)
3127 {
3128     d_4_1_Core->f.GenProgramPipelines(n, pipelines);
3129 }
3130 
3131 inline void QOpenGLFunctions_4_5_Core::glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines)
3132 {
3133     d_4_1_Core->f.DeleteProgramPipelines(n, pipelines);
3134 }
3135 
3136 inline void QOpenGLFunctions_4_5_Core::glBindProgramPipeline(GLuint pipeline)
3137 {
3138     d_4_1_Core->f.BindProgramPipeline(pipeline);
3139 }
3140 
3141 inline GLuint QOpenGLFunctions_4_5_Core::glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar *const *strings)
3142 {
3143     return d_4_1_Core->f.CreateShaderProgramv(type, count, strings);
3144 }
3145 
3146 inline void QOpenGLFunctions_4_5_Core::glActiveShaderProgram(GLuint pipeline, GLuint program)
3147 {
3148     d_4_1_Core->f.ActiveShaderProgram(pipeline, program);
3149 }
3150 
3151 inline void QOpenGLFunctions_4_5_Core::glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program)
3152 {
3153     d_4_1_Core->f.UseProgramStages(pipeline, stages, program);
3154 }
3155 
3156 inline void QOpenGLFunctions_4_5_Core::glProgramParameteri(GLuint program, GLenum pname, GLint value)
3157 {
3158     d_4_1_Core->f.ProgramParameteri(program, pname, value);
3159 }
3160 
3161 inline void QOpenGLFunctions_4_5_Core::glProgramBinary(GLuint program, GLenum binaryFormat, const void *binary, GLsizei length)
3162 {
3163     d_4_1_Core->f.ProgramBinary(program, binaryFormat, binary, length);
3164 }
3165 
3166 inline void QOpenGLFunctions_4_5_Core::glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary)
3167 {
3168     d_4_1_Core->f.GetProgramBinary(program, bufSize, length, binaryFormat, binary);
3169 }
3170 
3171 inline void QOpenGLFunctions_4_5_Core::glClearDepthf(GLfloat dd)
3172 {
3173     d_4_1_Core->f.ClearDepthf(dd);
3174 }
3175 
3176 inline void QOpenGLFunctions_4_5_Core::glDepthRangef(GLfloat n, GLfloat f)
3177 {
3178     d_4_1_Core->f.DepthRangef(n, f);
3179 }
3180 
3181 inline void QOpenGLFunctions_4_5_Core::glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)
3182 {
3183     d_4_1_Core->f.GetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
3184 }
3185 
3186 inline void QOpenGLFunctions_4_5_Core::glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const void *binary, GLsizei length)
3187 {
3188     d_4_1_Core->f.ShaderBinary(count, shaders, binaryformat, binary, length);
3189 }
3190 
3191 inline void QOpenGLFunctions_4_5_Core::glReleaseShaderCompiler()
3192 {
3193     d_4_1_Core->f.ReleaseShaderCompiler();
3194 }
3195 
3196 
3197 // OpenGL 4.2 core functions
3198 inline void QOpenGLFunctions_4_5_Core::glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount)
3199 {
3200     d_4_2_Core->f.DrawTransformFeedbackStreamInstanced(mode, id, stream, instancecount);
3201 }
3202 
3203 inline void QOpenGLFunctions_4_5_Core::glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount)
3204 {
3205     d_4_2_Core->f.DrawTransformFeedbackInstanced(mode, id, instancecount);
3206 }
3207 
3208 inline void QOpenGLFunctions_4_5_Core::glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth)
3209 {
3210     d_4_2_Core->f.TexStorage3D(target, levels, internalformat, width, height, depth);
3211 }
3212 
3213 inline void QOpenGLFunctions_4_5_Core::glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)
3214 {
3215     d_4_2_Core->f.TexStorage2D(target, levels, internalformat, width, height);
3216 }
3217 
3218 inline void QOpenGLFunctions_4_5_Core::glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width)
3219 {
3220     d_4_2_Core->f.TexStorage1D(target, levels, internalformat, width);
3221 }
3222 
3223 inline void QOpenGLFunctions_4_5_Core::glMemoryBarrier(GLbitfield barriers)
3224 {
3225     d_4_2_Core->f.MemoryBarrier(barriers);
3226 }
3227 
3228 inline void QOpenGLFunctions_4_5_Core::glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format)
3229 {
3230     d_4_2_Core->f.BindImageTexture(unit, texture, level, layered, layer, access, format);
3231 }
3232 
3233 inline void QOpenGLFunctions_4_5_Core::glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params)
3234 {
3235     d_4_2_Core->f.GetActiveAtomicCounterBufferiv(program, bufferIndex, pname, params);
3236 }
3237 
3238 inline void QOpenGLFunctions_4_5_Core::glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params)
3239 {
3240     d_4_2_Core->f.GetInternalformativ(target, internalformat, pname, bufSize, params);
3241 }
3242 
3243 inline void QOpenGLFunctions_4_5_Core::glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance)
3244 {
3245     d_4_2_Core->f.DrawElementsInstancedBaseVertexBaseInstance(mode, count, type, indices, instancecount, basevertex, baseinstance);
3246 }
3247 
3248 inline void QOpenGLFunctions_4_5_Core::glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance)
3249 {
3250     d_4_2_Core->f.DrawElementsInstancedBaseInstance(mode, count, type, indices, instancecount, baseinstance);
3251 }
3252 
3253 inline void QOpenGLFunctions_4_5_Core::glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance)
3254 {
3255     d_4_2_Core->f.DrawArraysInstancedBaseInstance(mode, first, count, instancecount, baseinstance);
3256 }
3257 
3258 
3259 // OpenGL 4.3 core functions
3260 inline void QOpenGLFunctions_4_5_Core::glGetObjectPtrLabel(const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label)
3261 {
3262     d_4_3_Core->f.GetObjectPtrLabel(ptr, bufSize, length, label);
3263 }
3264 
3265 inline void QOpenGLFunctions_4_5_Core::glObjectPtrLabel(const void *ptr, GLsizei length, const GLchar *label)
3266 {
3267     d_4_3_Core->f.ObjectPtrLabel(ptr, length, label);
3268 }
3269 
3270 inline void QOpenGLFunctions_4_5_Core::glGetObjectLabel(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label)
3271 {
3272     d_4_3_Core->f.GetObjectLabel(identifier, name, bufSize, length, label);
3273 }
3274 
3275 inline void QOpenGLFunctions_4_5_Core::glObjectLabel(GLenum identifier, GLuint name, GLsizei length, const GLchar *label)
3276 {
3277     d_4_3_Core->f.ObjectLabel(identifier, name, length, label);
3278 }
3279 
3280 inline void QOpenGLFunctions_4_5_Core::glPopDebugGroup()
3281 {
3282     d_4_3_Core->f.PopDebugGroup();
3283 }
3284 
3285 inline void QOpenGLFunctions_4_5_Core::glPushDebugGroup(GLenum source, GLuint id, GLsizei length, const GLchar *message)
3286 {
3287     d_4_3_Core->f.PushDebugGroup(source, id, length, message);
3288 }
3289 
3290 inline GLuint QOpenGLFunctions_4_5_Core::glGetDebugMessageLog(GLuint count, GLsizei bufSize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog)
3291 {
3292     return d_4_3_Core->f.GetDebugMessageLog(count, bufSize, sources, types, ids, severities, lengths, messageLog);
3293 }
3294 
3295 inline void QOpenGLFunctions_4_5_Core::glDebugMessageCallback(GLDEBUGPROC callback, const void *userParam)
3296 {
3297     d_4_3_Core->f.DebugMessageCallback(callback, userParam);
3298 }
3299 
3300 inline void QOpenGLFunctions_4_5_Core::glDebugMessageInsert(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf)
3301 {
3302     d_4_3_Core->f.DebugMessageInsert(source, type, id, severity, length, buf);
3303 }
3304 
3305 inline void QOpenGLFunctions_4_5_Core::glDebugMessageControl(GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled)
3306 {
3307     d_4_3_Core->f.DebugMessageControl(source, type, severity, count, ids, enabled);
3308 }
3309 
3310 inline void QOpenGLFunctions_4_5_Core::glVertexBindingDivisor(GLuint bindingindex, GLuint divisor)
3311 {
3312     d_4_3_Core->f.VertexBindingDivisor(bindingindex, divisor);
3313 }
3314 
3315 inline void QOpenGLFunctions_4_5_Core::glVertexAttribBinding(GLuint attribindex, GLuint bindingindex)
3316 {
3317     d_4_3_Core->f.VertexAttribBinding(attribindex, bindingindex);
3318 }
3319 
3320 inline void QOpenGLFunctions_4_5_Core::glVertexAttribLFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)
3321 {
3322     d_4_3_Core->f.VertexAttribLFormat(attribindex, size, type, relativeoffset);
3323 }
3324 
3325 inline void QOpenGLFunctions_4_5_Core::glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)
3326 {
3327     d_4_3_Core->f.VertexAttribIFormat(attribindex, size, type, relativeoffset);
3328 }
3329 
3330 inline void QOpenGLFunctions_4_5_Core::glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset)
3331 {
3332     d_4_3_Core->f.VertexAttribFormat(attribindex, size, type, normalized, relativeoffset);
3333 }
3334 
3335 inline void QOpenGLFunctions_4_5_Core::glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride)
3336 {
3337     d_4_3_Core->f.BindVertexBuffer(bindingindex, buffer, offset, stride);
3338 }
3339 
3340 inline void QOpenGLFunctions_4_5_Core::glTextureView(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers)
3341 {
3342     d_4_3_Core->f.TextureView(texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers);
3343 }
3344 
3345 inline void QOpenGLFunctions_4_5_Core::glTexStorage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
3346 {
3347     d_4_3_Core->f.TexStorage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
3348 }
3349 
3350 inline void QOpenGLFunctions_4_5_Core::glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
3351 {
3352     d_4_3_Core->f.TexStorage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
3353 }
3354 
3355 inline void QOpenGLFunctions_4_5_Core::glTexBufferRange(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size)
3356 {
3357     d_4_3_Core->f.TexBufferRange(target, internalformat, buffer, offset, size);
3358 }
3359 
3360 inline void QOpenGLFunctions_4_5_Core::glShaderStorageBlockBinding(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding)
3361 {
3362     d_4_3_Core->f.ShaderStorageBlockBinding(program, storageBlockIndex, storageBlockBinding);
3363 }
3364 
3365 inline GLint QOpenGLFunctions_4_5_Core::glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface, const GLchar *name)
3366 {
3367     return d_4_3_Core->f.GetProgramResourceLocationIndex(program, programInterface, name);
3368 }
3369 
3370 inline GLint QOpenGLFunctions_4_5_Core::glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar *name)
3371 {
3372     return d_4_3_Core->f.GetProgramResourceLocation(program, programInterface, name);
3373 }
3374 
3375 inline void QOpenGLFunctions_4_5_Core::glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params)
3376 {
3377     d_4_3_Core->f.GetProgramResourceiv(program, programInterface, index, propCount, props, bufSize, length, params);
3378 }
3379 
3380 inline void QOpenGLFunctions_4_5_Core::glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name)
3381 {
3382     d_4_3_Core->f.GetProgramResourceName(program, programInterface, index, bufSize, length, name);
3383 }
3384 
3385 inline GLuint QOpenGLFunctions_4_5_Core::glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name)
3386 {
3387     return d_4_3_Core->f.GetProgramResourceIndex(program, programInterface, name);
3388 }
3389 
3390 inline void QOpenGLFunctions_4_5_Core::glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint *params)
3391 {
3392     d_4_3_Core->f.GetProgramInterfaceiv(program, programInterface, pname, params);
3393 }
3394 
3395 inline void QOpenGLFunctions_4_5_Core::glMultiDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride)
3396 {
3397     d_4_3_Core->f.MultiDrawElementsIndirect(mode, type, indirect, drawcount, stride);
3398 }
3399 
3400 inline void QOpenGLFunctions_4_5_Core::glMultiDrawArraysIndirect(GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride)
3401 {
3402     d_4_3_Core->f.MultiDrawArraysIndirect(mode, indirect, drawcount, stride);
3403 }
3404 
3405 inline void QOpenGLFunctions_4_5_Core::glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height)
3406 {
3407     d_4_3_Core->f.InvalidateSubFramebuffer(target, numAttachments, attachments, x, y, width, height);
3408 }
3409 
3410 inline void QOpenGLFunctions_4_5_Core::glInvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments)
3411 {
3412     d_4_3_Core->f.InvalidateFramebuffer(target, numAttachments, attachments);
3413 }
3414 
3415 inline void QOpenGLFunctions_4_5_Core::glInvalidateBufferData(GLuint buffer)
3416 {
3417     d_4_3_Core->f.InvalidateBufferData(buffer);
3418 }
3419 
3420 inline void QOpenGLFunctions_4_5_Core::glInvalidateBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr length)
3421 {
3422     d_4_3_Core->f.InvalidateBufferSubData(buffer, offset, length);
3423 }
3424 
3425 inline void QOpenGLFunctions_4_5_Core::glInvalidateTexImage(GLuint texture, GLint level)
3426 {
3427     d_4_3_Core->f.InvalidateTexImage(texture, level);
3428 }
3429 
3430 inline void QOpenGLFunctions_4_5_Core::glInvalidateTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth)
3431 {
3432     d_4_3_Core->f.InvalidateTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth);
3433 }
3434 
3435 inline void QOpenGLFunctions_4_5_Core::glGetInternalformati64v(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params)
3436 {
3437     d_4_3_Core->f.GetInternalformati64v(target, internalformat, pname, bufSize, params);
3438 }
3439 
3440 inline void QOpenGLFunctions_4_5_Core::glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params)
3441 {
3442     d_4_3_Core->f.GetFramebufferParameteriv(target, pname, params);
3443 }
3444 
3445 inline void QOpenGLFunctions_4_5_Core::glFramebufferParameteri(GLenum target, GLenum pname, GLint param)
3446 {
3447     d_4_3_Core->f.FramebufferParameteri(target, pname, param);
3448 }
3449 
3450 inline void QOpenGLFunctions_4_5_Core::glCopyImageSubData(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)
3451 {
3452     d_4_3_Core->f.CopyImageSubData(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth);
3453 }
3454 
3455 inline void QOpenGLFunctions_4_5_Core::glDispatchComputeIndirect(GLintptr indirect)
3456 {
3457     d_4_3_Core->f.DispatchComputeIndirect(indirect);
3458 }
3459 
3460 inline void QOpenGLFunctions_4_5_Core::glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z)
3461 {
3462     d_4_3_Core->f.DispatchCompute(num_groups_x, num_groups_y, num_groups_z);
3463 }
3464 
3465 inline void QOpenGLFunctions_4_5_Core::glClearBufferSubData(GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data)
3466 {
3467     d_4_3_Core->f.ClearBufferSubData(target, internalformat, offset, size, format, type, data);
3468 }
3469 
3470 inline void QOpenGLFunctions_4_5_Core::glClearBufferData(GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data)
3471 {
3472     d_4_3_Core->f.ClearBufferData(target, internalformat, format, type, data);
3473 }
3474 
3475 
3476 // OpenGL 4.4 core functions
3477 inline void QOpenGLFunctions_4_5_Core::glBindVertexBuffers(GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizei *strides)
3478 {
3479     d_4_4_Core->f.BindVertexBuffers(first, count, buffers, offsets, strides);
3480 }
3481 
3482 inline void QOpenGLFunctions_4_5_Core::glBindImageTextures(GLuint first, GLsizei count, const GLuint *textures)
3483 {
3484     d_4_4_Core->f.BindImageTextures(first, count, textures);
3485 }
3486 
3487 inline void QOpenGLFunctions_4_5_Core::glBindSamplers(GLuint first, GLsizei count, const GLuint *samplers)
3488 {
3489     d_4_4_Core->f.BindSamplers(first, count, samplers);
3490 }
3491 
3492 inline void QOpenGLFunctions_4_5_Core::glBindTextures(GLuint first, GLsizei count, const GLuint *textures)
3493 {
3494     d_4_4_Core->f.BindTextures(first, count, textures);
3495 }
3496 
3497 inline void QOpenGLFunctions_4_5_Core::glBindBuffersRange(GLenum target, GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizeiptr *sizes)
3498 {
3499     d_4_4_Core->f.BindBuffersRange(target, first, count, buffers, offsets, sizes);
3500 }
3501 
3502 inline void QOpenGLFunctions_4_5_Core::glBindBuffersBase(GLenum target, GLuint first, GLsizei count, const GLuint *buffers)
3503 {
3504     d_4_4_Core->f.BindBuffersBase(target, first, count, buffers);
3505 }
3506 
3507 inline void QOpenGLFunctions_4_5_Core::glClearTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *data)
3508 {
3509     d_4_4_Core->f.ClearTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, data);
3510 }
3511 
3512 inline void QOpenGLFunctions_4_5_Core::glClearTexImage(GLuint texture, GLint level, GLenum format, GLenum type, const void *data)
3513 {
3514     d_4_4_Core->f.ClearTexImage(texture, level, format, type, data);
3515 }
3516 
3517 inline void QOpenGLFunctions_4_5_Core::glBufferStorage(GLenum target, GLsizeiptr size, const void *data, GLbitfield flags)
3518 {
3519     d_4_4_Core->f.BufferStorage(target, size, data, flags);
3520 }
3521 
3522 
3523 // OpenGL 4.5 core functions
3524 inline void QOpenGLFunctions_4_5_Core::glTextureBarrier()
3525 {
3526     d_4_5_Core->f.TextureBarrier();
3527 }
3528 
3529 inline void QOpenGLFunctions_4_5_Core::glReadnPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data)
3530 {
3531     d_4_5_Core->f.ReadnPixels(x, y, width, height, format, type, bufSize, data);
3532 }
3533 
3534 inline void QOpenGLFunctions_4_5_Core::glGetnUniformuiv(GLuint program, GLint location, GLsizei bufSize, GLuint *params)
3535 {
3536     d_4_5_Core->f.GetnUniformuiv(program, location, bufSize, params);
3537 }
3538 
3539 inline void QOpenGLFunctions_4_5_Core::glGetnUniformiv(GLuint program, GLint location, GLsizei bufSize, GLint *params)
3540 {
3541     d_4_5_Core->f.GetnUniformiv(program, location, bufSize, params);
3542 }
3543 
3544 inline void QOpenGLFunctions_4_5_Core::glGetnUniformfv(GLuint program, GLint location, GLsizei bufSize, GLfloat *params)
3545 {
3546     d_4_5_Core->f.GetnUniformfv(program, location, bufSize, params);
3547 }
3548 
3549 inline void QOpenGLFunctions_4_5_Core::glGetnUniformdv(GLuint program, GLint location, GLsizei bufSize, GLdouble *params)
3550 {
3551     d_4_5_Core->f.GetnUniformdv(program, location, bufSize, params);
3552 }
3553 
3554 inline void QOpenGLFunctions_4_5_Core::glGetnTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels)
3555 {
3556     d_4_5_Core->f.GetnTexImage(target, level, format, type, bufSize, pixels);
3557 }
3558 
3559 inline void QOpenGLFunctions_4_5_Core::glGetnCompressedTexImage(GLenum target, GLint lod, GLsizei bufSize, void *pixels)
3560 {
3561     d_4_5_Core->f.GetnCompressedTexImage(target, lod, bufSize, pixels);
3562 }
3563 
3564 inline GLenum QOpenGLFunctions_4_5_Core::glGetGraphicsResetStatus()
3565 {
3566     return d_4_5_Core->f.GetGraphicsResetStatus();
3567 }
3568 
3569 inline void QOpenGLFunctions_4_5_Core::glGetCompressedTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei bufSize, void *pixels)
3570 {
3571     d_4_5_Core->f.GetCompressedTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, bufSize, pixels);
3572 }
3573 
3574 inline void QOpenGLFunctions_4_5_Core::glGetTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLsizei bufSize, void *pixels)
3575 {
3576     d_4_5_Core->f.GetTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, bufSize, pixels);
3577 }
3578 
3579 inline void QOpenGLFunctions_4_5_Core::glMemoryBarrierByRegion(GLbitfield barriers)
3580 {
3581     d_4_5_Core->f.MemoryBarrierByRegion(barriers);
3582 }
3583 
3584 inline void QOpenGLFunctions_4_5_Core::glCreateQueries(GLenum target, GLsizei n, GLuint *ids)
3585 {
3586     d_4_5_Core->f.CreateQueries(target, n, ids);
3587 }
3588 
3589 inline void QOpenGLFunctions_4_5_Core::glCreateProgramPipelines(GLsizei n, GLuint *pipelines)
3590 {
3591     d_4_5_Core->f.CreateProgramPipelines(n, pipelines);
3592 }
3593 
3594 inline void QOpenGLFunctions_4_5_Core::glCreateSamplers(GLsizei n, GLuint *samplers)
3595 {
3596     d_4_5_Core->f.CreateSamplers(n, samplers);
3597 }
3598 
3599 inline void QOpenGLFunctions_4_5_Core::glGetVertexArrayIndexed64iv(GLuint vaobj, GLuint index, GLenum pname, GLint64 *param)
3600 {
3601     d_4_5_Core->f.GetVertexArrayIndexed64iv(vaobj, index, pname, param);
3602 }
3603 
3604 inline void QOpenGLFunctions_4_5_Core::glGetVertexArrayIndexediv(GLuint vaobj, GLuint index, GLenum pname, GLint *param)
3605 {
3606     d_4_5_Core->f.GetVertexArrayIndexediv(vaobj, index, pname, param);
3607 }
3608 
3609 inline void QOpenGLFunctions_4_5_Core::glGetVertexArrayiv(GLuint vaobj, GLenum pname, GLint *param)
3610 {
3611     d_4_5_Core->f.GetVertexArrayiv(vaobj, pname, param);
3612 }
3613 
3614 inline void QOpenGLFunctions_4_5_Core::glVertexArrayBindingDivisor(GLuint vaobj, GLuint bindingindex, GLuint divisor)
3615 {
3616     d_4_5_Core->f.VertexArrayBindingDivisor(vaobj, bindingindex, divisor);
3617 }
3618 
3619 inline void QOpenGLFunctions_4_5_Core::glVertexArrayAttribLFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)
3620 {
3621     d_4_5_Core->f.VertexArrayAttribLFormat(vaobj, attribindex, size, type, relativeoffset);
3622 }
3623 
3624 inline void QOpenGLFunctions_4_5_Core::glVertexArrayAttribIFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)
3625 {
3626     d_4_5_Core->f.VertexArrayAttribIFormat(vaobj, attribindex, size, type, relativeoffset);
3627 }
3628 
3629 inline void QOpenGLFunctions_4_5_Core::glVertexArrayAttribFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset)
3630 {
3631     d_4_5_Core->f.VertexArrayAttribFormat(vaobj, attribindex, size, type, normalized, relativeoffset);
3632 }
3633 
3634 inline void QOpenGLFunctions_4_5_Core::glVertexArrayAttribBinding(GLuint vaobj, GLuint attribindex, GLuint bindingindex)
3635 {
3636     d_4_5_Core->f.VertexArrayAttribBinding(vaobj, attribindex, bindingindex);
3637 }
3638 
3639 inline void QOpenGLFunctions_4_5_Core::glVertexArrayVertexBuffers(GLuint vaobj, GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizei *strides)
3640 {
3641     d_4_5_Core->f.VertexArrayVertexBuffers(vaobj, first, count, buffers, offsets, strides);
3642 }
3643 
3644 inline void QOpenGLFunctions_4_5_Core::glVertexArrayVertexBuffer(GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride)
3645 {
3646     d_4_5_Core->f.VertexArrayVertexBuffer(vaobj, bindingindex, buffer, offset, stride);
3647 }
3648 
3649 inline void QOpenGLFunctions_4_5_Core::glVertexArrayElementBuffer(GLuint vaobj, GLuint buffer)
3650 {
3651     d_4_5_Core->f.VertexArrayElementBuffer(vaobj, buffer);
3652 }
3653 
3654 inline void QOpenGLFunctions_4_5_Core::glEnableVertexArrayAttrib(GLuint vaobj, GLuint index)
3655 {
3656     d_4_5_Core->f.EnableVertexArrayAttrib(vaobj, index);
3657 }
3658 
3659 inline void QOpenGLFunctions_4_5_Core::glDisableVertexArrayAttrib(GLuint vaobj, GLuint index)
3660 {
3661     d_4_5_Core->f.DisableVertexArrayAttrib(vaobj, index);
3662 }
3663 
3664 inline void QOpenGLFunctions_4_5_Core::glCreateVertexArrays(GLsizei n, GLuint *arrays)
3665 {
3666     d_4_5_Core->f.CreateVertexArrays(n, arrays);
3667 }
3668 
3669 inline void QOpenGLFunctions_4_5_Core::glGetTextureParameteriv(GLuint texture, GLenum pname, GLint *params)
3670 {
3671     d_4_5_Core->f.GetTextureParameteriv(texture, pname, params);
3672 }
3673 
3674 inline void QOpenGLFunctions_4_5_Core::glGetTextureParameterIuiv(GLuint texture, GLenum pname, GLuint *params)
3675 {
3676     d_4_5_Core->f.GetTextureParameterIuiv(texture, pname, params);
3677 }
3678 
3679 inline void QOpenGLFunctions_4_5_Core::glGetTextureParameterIiv(GLuint texture, GLenum pname, GLint *params)
3680 {
3681     d_4_5_Core->f.GetTextureParameterIiv(texture, pname, params);
3682 }
3683 
3684 inline void QOpenGLFunctions_4_5_Core::glGetTextureParameterfv(GLuint texture, GLenum pname, GLfloat *params)
3685 {
3686     d_4_5_Core->f.GetTextureParameterfv(texture, pname, params);
3687 }
3688 
3689 inline void QOpenGLFunctions_4_5_Core::glGetTextureLevelParameteriv(GLuint texture, GLint level, GLenum pname, GLint *params)
3690 {
3691     d_4_5_Core->f.GetTextureLevelParameteriv(texture, level, pname, params);
3692 }
3693 
3694 inline void QOpenGLFunctions_4_5_Core::glGetTextureLevelParameterfv(GLuint texture, GLint level, GLenum pname, GLfloat *params)
3695 {
3696     d_4_5_Core->f.GetTextureLevelParameterfv(texture, level, pname, params);
3697 }
3698 
3699 inline void QOpenGLFunctions_4_5_Core::glGetCompressedTextureImage(GLuint texture, GLint level, GLsizei bufSize, void *pixels)
3700 {
3701     d_4_5_Core->f.GetCompressedTextureImage(texture, level, bufSize, pixels);
3702 }
3703 
3704 inline void QOpenGLFunctions_4_5_Core::glGetTextureImage(GLuint texture, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels)
3705 {
3706     d_4_5_Core->f.GetTextureImage(texture, level, format, type, bufSize, pixels);
3707 }
3708 
3709 inline void QOpenGLFunctions_4_5_Core::glBindTextureUnit(GLuint unit, GLuint texture)
3710 {
3711     d_4_5_Core->f.BindTextureUnit(unit, texture);
3712 }
3713 
3714 inline void QOpenGLFunctions_4_5_Core::glGenerateTextureMipmap(GLuint texture)
3715 {
3716     d_4_5_Core->f.GenerateTextureMipmap(texture);
3717 }
3718 
3719 inline void QOpenGLFunctions_4_5_Core::glTextureParameteriv(GLuint texture, GLenum pname, const GLint *param)
3720 {
3721     d_4_5_Core->f.TextureParameteriv(texture, pname, param);
3722 }
3723 
3724 inline void QOpenGLFunctions_4_5_Core::glTextureParameterIuiv(GLuint texture, GLenum pname, const GLuint *params)
3725 {
3726     d_4_5_Core->f.TextureParameterIuiv(texture, pname, params);
3727 }
3728 
3729 inline void QOpenGLFunctions_4_5_Core::glTextureParameterIiv(GLuint texture, GLenum pname, const GLint *params)
3730 {
3731     d_4_5_Core->f.TextureParameterIiv(texture, pname, params);
3732 }
3733 
3734 inline void QOpenGLFunctions_4_5_Core::glTextureParameteri(GLuint texture, GLenum pname, GLint param)
3735 {
3736     d_4_5_Core->f.TextureParameteri(texture, pname, param);
3737 }
3738 
3739 inline void QOpenGLFunctions_4_5_Core::glTextureParameterfv(GLuint texture, GLenum pname, const GLfloat *param)
3740 {
3741     d_4_5_Core->f.TextureParameterfv(texture, pname, param);
3742 }
3743 
3744 inline void QOpenGLFunctions_4_5_Core::glTextureParameterf(GLuint texture, GLenum pname, GLfloat param)
3745 {
3746     d_4_5_Core->f.TextureParameterf(texture, pname, param);
3747 }
3748 
3749 inline void QOpenGLFunctions_4_5_Core::glCopyTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
3750 {
3751     d_4_5_Core->f.CopyTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, x, y, width, height);
3752 }
3753 
3754 inline void QOpenGLFunctions_4_5_Core::glCopyTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
3755 {
3756     d_4_5_Core->f.CopyTextureSubImage2D(texture, level, xoffset, yoffset, x, y, width, height);
3757 }
3758 
3759 inline void QOpenGLFunctions_4_5_Core::glCopyTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
3760 {
3761     d_4_5_Core->f.CopyTextureSubImage1D(texture, level, xoffset, x, y, width);
3762 }
3763 
3764 inline void QOpenGLFunctions_4_5_Core::glCompressedTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data)
3765 {
3766     d_4_5_Core->f.CompressedTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
3767 }
3768 
3769 inline void QOpenGLFunctions_4_5_Core::glCompressedTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data)
3770 {
3771     d_4_5_Core->f.CompressedTextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, imageSize, data);
3772 }
3773 
3774 inline void QOpenGLFunctions_4_5_Core::glCompressedTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data)
3775 {
3776     d_4_5_Core->f.CompressedTextureSubImage1D(texture, level, xoffset, width, format, imageSize, data);
3777 }
3778 
3779 inline void QOpenGLFunctions_4_5_Core::glTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels)
3780 {
3781     d_4_5_Core->f.TextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
3782 }
3783 
3784 inline void QOpenGLFunctions_4_5_Core::glTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels)
3785 {
3786     d_4_5_Core->f.TextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, type, pixels);
3787 }
3788 
3789 inline void QOpenGLFunctions_4_5_Core::glTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels)
3790 {
3791     d_4_5_Core->f.TextureSubImage1D(texture, level, xoffset, width, format, type, pixels);
3792 }
3793 
3794 inline void QOpenGLFunctions_4_5_Core::glTextureStorage3DMultisample(GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
3795 {
3796     d_4_5_Core->f.TextureStorage3DMultisample(texture, samples, internalformat, width, height, depth, fixedsamplelocations);
3797 }
3798 
3799 inline void QOpenGLFunctions_4_5_Core::glTextureStorage2DMultisample(GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
3800 {
3801     d_4_5_Core->f.TextureStorage2DMultisample(texture, samples, internalformat, width, height, fixedsamplelocations);
3802 }
3803 
3804 inline void QOpenGLFunctions_4_5_Core::glTextureStorage3D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth)
3805 {
3806     d_4_5_Core->f.TextureStorage3D(texture, levels, internalformat, width, height, depth);
3807 }
3808 
3809 inline void QOpenGLFunctions_4_5_Core::glTextureStorage2D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)
3810 {
3811     d_4_5_Core->f.TextureStorage2D(texture, levels, internalformat, width, height);
3812 }
3813 
3814 inline void QOpenGLFunctions_4_5_Core::glTextureStorage1D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width)
3815 {
3816     d_4_5_Core->f.TextureStorage1D(texture, levels, internalformat, width);
3817 }
3818 
3819 inline void QOpenGLFunctions_4_5_Core::glTextureBufferRange(GLuint texture, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizei size)
3820 {
3821     d_4_5_Core->f.TextureBufferRange(texture, internalformat, buffer, offset, size);
3822 }
3823 
3824 inline void QOpenGLFunctions_4_5_Core::glTextureBuffer(GLuint texture, GLenum internalformat, GLuint buffer)
3825 {
3826     d_4_5_Core->f.TextureBuffer(texture, internalformat, buffer);
3827 }
3828 
3829 inline void QOpenGLFunctions_4_5_Core::glCreateTextures(GLenum target, GLsizei n, GLuint *textures)
3830 {
3831     d_4_5_Core->f.CreateTextures(target, n, textures);
3832 }
3833 
3834 inline void QOpenGLFunctions_4_5_Core::glGetNamedRenderbufferParameteriv(GLuint renderbuffer, GLenum pname, GLint *params)
3835 {
3836     d_4_5_Core->f.GetNamedRenderbufferParameteriv(renderbuffer, pname, params);
3837 }
3838 
3839 inline void QOpenGLFunctions_4_5_Core::glNamedRenderbufferStorageMultisample(GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
3840 {
3841     d_4_5_Core->f.NamedRenderbufferStorageMultisample(renderbuffer, samples, internalformat, width, height);
3842 }
3843 
3844 inline void QOpenGLFunctions_4_5_Core::glNamedRenderbufferStorage(GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height)
3845 {
3846     d_4_5_Core->f.NamedRenderbufferStorage(renderbuffer, internalformat, width, height);
3847 }
3848 
3849 inline void QOpenGLFunctions_4_5_Core::glCreateRenderbuffers(GLsizei n, GLuint *renderbuffers)
3850 {
3851     d_4_5_Core->f.CreateRenderbuffers(n, renderbuffers);
3852 }
3853 
3854 inline void QOpenGLFunctions_4_5_Core::glGetNamedFramebufferAttachmentParameteriv(GLuint framebuffer, GLenum attachment, GLenum pname, GLint *params)
3855 {
3856     d_4_5_Core->f.GetNamedFramebufferAttachmentParameteriv(framebuffer, attachment, pname, params);
3857 }
3858 
3859 inline void QOpenGLFunctions_4_5_Core::glGetNamedFramebufferParameteriv(GLuint framebuffer, GLenum pname, GLint *param)
3860 {
3861     d_4_5_Core->f.GetNamedFramebufferParameteriv(framebuffer, pname, param);
3862 }
3863 
3864 inline GLenum QOpenGLFunctions_4_5_Core::glCheckNamedFramebufferStatus(GLuint framebuffer, GLenum target)
3865 {
3866     return d_4_5_Core->f.CheckNamedFramebufferStatus(framebuffer, target);
3867 }
3868 
3869 inline void QOpenGLFunctions_4_5_Core::glBlitNamedFramebuffer(GLuint readFramebuffer, GLuint drawFramebuffer, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
3870 {
3871     d_4_5_Core->f.BlitNamedFramebuffer(readFramebuffer, drawFramebuffer, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
3872 }
3873 
3874 inline void QOpenGLFunctions_4_5_Core::glClearNamedFramebufferfi(GLuint framebuffer, GLenum buffer, GLfloat depth, GLint stencil)
3875 {
3876     d_4_5_Core->f.ClearNamedFramebufferfi(framebuffer, buffer, depth, stencil);
3877 }
3878 
3879 inline void QOpenGLFunctions_4_5_Core::glClearNamedFramebufferfv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLfloat *value)
3880 {
3881     d_4_5_Core->f.ClearNamedFramebufferfv(framebuffer, buffer, drawbuffer, value);
3882 }
3883 
3884 inline void QOpenGLFunctions_4_5_Core::glClearNamedFramebufferuiv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLuint *value)
3885 {
3886     d_4_5_Core->f.ClearNamedFramebufferuiv(framebuffer, buffer, drawbuffer, value);
3887 }
3888 
3889 inline void QOpenGLFunctions_4_5_Core::glClearNamedFramebufferiv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLint *value)
3890 {
3891     d_4_5_Core->f.ClearNamedFramebufferiv(framebuffer, buffer, drawbuffer, value);
3892 }
3893 
3894 inline void QOpenGLFunctions_4_5_Core::glInvalidateNamedFramebufferSubData(GLuint framebuffer, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height)
3895 {
3896     d_4_5_Core->f.InvalidateNamedFramebufferSubData(framebuffer, numAttachments, attachments, x, y, width, height);
3897 }
3898 
3899 inline void QOpenGLFunctions_4_5_Core::glInvalidateNamedFramebufferData(GLuint framebuffer, GLsizei numAttachments, const GLenum *attachments)
3900 {
3901     d_4_5_Core->f.InvalidateNamedFramebufferData(framebuffer, numAttachments, attachments);
3902 }
3903 
3904 inline void QOpenGLFunctions_4_5_Core::glNamedFramebufferReadBuffer(GLuint framebuffer, GLenum src)
3905 {
3906     d_4_5_Core->f.NamedFramebufferReadBuffer(framebuffer, src);
3907 }
3908 
3909 inline void QOpenGLFunctions_4_5_Core::glNamedFramebufferDrawBuffers(GLuint framebuffer, GLsizei n, const GLenum *bufs)
3910 {
3911     d_4_5_Core->f.NamedFramebufferDrawBuffers(framebuffer, n, bufs);
3912 }
3913 
3914 inline void QOpenGLFunctions_4_5_Core::glNamedFramebufferDrawBuffer(GLuint framebuffer, GLenum buf)
3915 {
3916     d_4_5_Core->f.NamedFramebufferDrawBuffer(framebuffer, buf);
3917 }
3918 
3919 inline void QOpenGLFunctions_4_5_Core::glNamedFramebufferTextureLayer(GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer)
3920 {
3921     d_4_5_Core->f.NamedFramebufferTextureLayer(framebuffer, attachment, texture, level, layer);
3922 }
3923 
3924 inline void QOpenGLFunctions_4_5_Core::glNamedFramebufferTexture(GLuint framebuffer, GLenum attachment, GLuint texture, GLint level)
3925 {
3926     d_4_5_Core->f.NamedFramebufferTexture(framebuffer, attachment, texture, level);
3927 }
3928 
3929 inline void QOpenGLFunctions_4_5_Core::glNamedFramebufferParameteri(GLuint framebuffer, GLenum pname, GLint param)
3930 {
3931     d_4_5_Core->f.NamedFramebufferParameteri(framebuffer, pname, param);
3932 }
3933 
3934 inline void QOpenGLFunctions_4_5_Core::glNamedFramebufferRenderbuffer(GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
3935 {
3936     d_4_5_Core->f.NamedFramebufferRenderbuffer(framebuffer, attachment, renderbuffertarget, renderbuffer);
3937 }
3938 
3939 inline void QOpenGLFunctions_4_5_Core::glCreateFramebuffers(GLsizei n, GLuint *framebuffers)
3940 {
3941     d_4_5_Core->f.CreateFramebuffers(n, framebuffers);
3942 }
3943 
3944 #if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0)
3945 inline void QOpenGLFunctions_4_5_Core::glGetNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr size, void *data)
3946 #else
3947 inline void QOpenGLFunctions_4_5_Core::glGetNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizei size, void *data)
3948 #endif
3949 {
3950     d_4_5_Core->f.GetNamedBufferSubData(buffer, offset, size, data);
3951 }
3952 
3953 inline void QOpenGLFunctions_4_5_Core::glGetNamedBufferPointerv(GLuint buffer, GLenum pname, void * *params)
3954 {
3955     d_4_5_Core->f.GetNamedBufferPointerv(buffer, pname, params);
3956 }
3957 
3958 inline void QOpenGLFunctions_4_5_Core::glGetNamedBufferParameteri64v(GLuint buffer, GLenum pname, GLint64 *params)
3959 {
3960     d_4_5_Core->f.GetNamedBufferParameteri64v(buffer, pname, params);
3961 }
3962 
3963 inline void QOpenGLFunctions_4_5_Core::glGetNamedBufferParameteriv(GLuint buffer, GLenum pname, GLint *params)
3964 {
3965     d_4_5_Core->f.GetNamedBufferParameteriv(buffer, pname, params);
3966 }
3967 
3968 #if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0)
3969 inline void QOpenGLFunctions_4_5_Core::glFlushMappedNamedBufferRange(GLuint buffer, GLintptr offset, GLsizeiptr length)
3970 #else
3971 inline void QOpenGLFunctions_4_5_Core::glFlushMappedNamedBufferRange(GLuint buffer, GLintptr offset, GLsizei length)
3972 #endif
3973 {
3974     d_4_5_Core->f.FlushMappedNamedBufferRange(buffer, offset, length);
3975 }
3976 
3977 inline GLboolean QOpenGLFunctions_4_5_Core::glUnmapNamedBuffer(GLuint buffer)
3978 {
3979     return d_4_5_Core->f.UnmapNamedBuffer(buffer);
3980 }
3981 
3982 #if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0)
3983 inline void * QOpenGLFunctions_4_5_Core::glMapNamedBufferRange(GLuint buffer, GLintptr offset, GLsizeiptr length, GLbitfield access)
3984 #else
3985 inline void * QOpenGLFunctions_4_5_Core::glMapNamedBufferRange(GLuint buffer, GLintptr offset, GLsizei length, GLbitfield access)
3986 #endif
3987 {
3988     return d_4_5_Core->f.MapNamedBufferRange(buffer, offset, length, access);
3989 }
3990 
3991 inline void * QOpenGLFunctions_4_5_Core::glMapNamedBuffer(GLuint buffer, GLenum access)
3992 {
3993     return d_4_5_Core->f.MapNamedBuffer(buffer, access);
3994 }
3995 
3996 #if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0)
3997 inline void QOpenGLFunctions_4_5_Core::glClearNamedBufferSubData(GLuint buffer, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data)
3998 #else
3999 inline void QOpenGLFunctions_4_5_Core::glClearNamedBufferSubData(GLuint buffer, GLenum internalformat, GLintptr offset, GLsizei size, GLenum format, GLenum type, const void *data)
4000 #endif
4001 {
4002     d_4_5_Core->f.ClearNamedBufferSubData(buffer, internalformat, offset, size, format, type, data);
4003 }
4004 
4005 inline void QOpenGLFunctions_4_5_Core::glClearNamedBufferData(GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void *data)
4006 {
4007     d_4_5_Core->f.ClearNamedBufferData(buffer, internalformat, format, type, data);
4008 }
4009 
4010 #if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0)
4011 inline void QOpenGLFunctions_4_5_Core::glCopyNamedBufferSubData(GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
4012 #else
4013 inline void QOpenGLFunctions_4_5_Core::glCopyNamedBufferSubData(GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizei size)
4014 #endif
4015 {
4016     d_4_5_Core->f.CopyNamedBufferSubData(readBuffer, writeBuffer, readOffset, writeOffset, size);
4017 }
4018 
4019 #if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0)
4020 inline void QOpenGLFunctions_4_5_Core::glNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data)
4021 #else
4022 inline void QOpenGLFunctions_4_5_Core::glNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizei size, const void *data)
4023 #endif
4024 {
4025     d_4_5_Core->f.NamedBufferSubData(buffer, offset, size, data);
4026 }
4027 
4028 #if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0)
4029 inline void QOpenGLFunctions_4_5_Core::glNamedBufferData(GLuint buffer, GLsizeiptr size, const void *data, GLenum usage)
4030 #else
4031 inline void QOpenGLFunctions_4_5_Core::glNamedBufferData(GLuint buffer, GLsizei size, const void *data, GLenum usage)
4032 #endif
4033 {
4034     d_4_5_Core->f.NamedBufferData(buffer, size, data, usage);
4035 }
4036 
4037 #if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0)
4038 inline void QOpenGLFunctions_4_5_Core::glNamedBufferStorage(GLuint buffer, GLsizeiptr size, const void *data, GLbitfield flags)
4039 #else
4040 inline void QOpenGLFunctions_4_5_Core::glNamedBufferStorage(GLuint buffer, GLsizei size, const void *data, GLbitfield flags)
4041 #endif
4042 {
4043     d_4_5_Core->f.NamedBufferStorage(buffer, size, data, flags);
4044 }
4045 
4046 inline void QOpenGLFunctions_4_5_Core::glCreateBuffers(GLsizei n, GLuint *buffers)
4047 {
4048     d_4_5_Core->f.CreateBuffers(n, buffers);
4049 }
4050 
4051 inline void QOpenGLFunctions_4_5_Core::glGetTransformFeedbacki64_v(GLuint xfb, GLenum pname, GLuint index, GLint64 *param)
4052 {
4053     d_4_5_Core->f.GetTransformFeedbacki64_v(xfb, pname, index, param);
4054 }
4055 
4056 inline void QOpenGLFunctions_4_5_Core::glGetTransformFeedbacki_v(GLuint xfb, GLenum pname, GLuint index, GLint *param)
4057 {
4058     d_4_5_Core->f.GetTransformFeedbacki_v(xfb, pname, index, param);
4059 }
4060 
4061 inline void QOpenGLFunctions_4_5_Core::glGetTransformFeedbackiv(GLuint xfb, GLenum pname, GLint *param)
4062 {
4063     d_4_5_Core->f.GetTransformFeedbackiv(xfb, pname, param);
4064 }
4065 
4066 #if QT_VERSION >= QT_VERSION_CHECK(7, 0, 0)
4067 inline void QOpenGLFunctions_4_5_Core::glTransformFeedbackBufferRange(GLuint xfb, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
4068 #else
4069 inline void QOpenGLFunctions_4_5_Core::glTransformFeedbackBufferRange(GLuint xfb, GLuint index, GLuint buffer, GLintptr offset, GLsizei size)
4070 #endif
4071 {
4072     d_4_5_Core->f.TransformFeedbackBufferRange(xfb, index, buffer, offset, size);
4073 }
4074 
4075 inline void QOpenGLFunctions_4_5_Core::glTransformFeedbackBufferBase(GLuint xfb, GLuint index, GLuint buffer)
4076 {
4077     d_4_5_Core->f.TransformFeedbackBufferBase(xfb, index, buffer);
4078 }
4079 
4080 inline void QOpenGLFunctions_4_5_Core::glCreateTransformFeedbacks(GLsizei n, GLuint *ids)
4081 {
4082     d_4_5_Core->f.CreateTransformFeedbacks(n, ids);
4083 }
4084 
4085 inline void QOpenGLFunctions_4_5_Core::glClipControl(GLenum origin, GLenum depth)
4086 {
4087     d_4_5_Core->f.ClipControl(origin, depth);
4088 }
4089 
4090 
4091 
4092 QT_END_NAMESPACE
4093 
4094 #ifdef Q_OS_WIN
4095 #pragma pop_macro("MemoryBarrier")
4096 #endif
4097 
4098 
4099 #endif // QT_NO_OPENGL && !QT_CONFIG(opengles2)
4100 
4101 #endif