Back to home page

EIC code displayed by LXR

 
 

    


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

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_4_CORE_H
0016 #define QOPENGLVERSIONFUNCTIONS_4_4_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_4_Core : public QAbstractOpenGLFunctions
0035 {
0036 public:
0037     QOpenGLFunctions_4_4_Core();
0038     ~QOpenGLFunctions_4_4_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 private:
0619     friend class QOpenGLVersionFunctionsFactory;
0620 
0621     static bool isContextCompatible(QOpenGLContext *context);
0622     static QOpenGLVersionProfile versionProfile();
0623 
0624     QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
0625     QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
0626     QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
0627     QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
0628     QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
0629     QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
0630     QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
0631     QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
0632     QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
0633     QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
0634     QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
0635     QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
0636     QOpenGLFunctions_4_0_CoreBackend* d_4_0_Core;
0637     QOpenGLFunctions_4_1_CoreBackend* d_4_1_Core;
0638     QOpenGLFunctions_4_2_CoreBackend* d_4_2_Core;
0639     QOpenGLFunctions_4_3_CoreBackend* d_4_3_Core;
0640     QOpenGLFunctions_4_4_CoreBackend* d_4_4_Core;
0641 };
0642 
0643 // OpenGL 1.0 core functions
0644 inline void QOpenGLFunctions_4_4_Core::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
0645 {
0646     d_1_0_Core->f.Viewport(x, y, width, height);
0647 }
0648 
0649 inline void QOpenGLFunctions_4_4_Core::glDepthRange(GLdouble nearVal, GLdouble farVal)
0650 {
0651     d_1_0_Core->f.DepthRange(nearVal, farVal);
0652 }
0653 
0654 inline GLboolean QOpenGLFunctions_4_4_Core::glIsEnabled(GLenum cap)
0655 {
0656     return d_1_0_Core->f.IsEnabled(cap);
0657 }
0658 
0659 inline void QOpenGLFunctions_4_4_Core::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
0660 {
0661     d_1_0_Core->f.GetTexLevelParameteriv(target, level, pname, params);
0662 }
0663 
0664 inline void QOpenGLFunctions_4_4_Core::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
0665 {
0666     d_1_0_Core->f.GetTexLevelParameterfv(target, level, pname, params);
0667 }
0668 
0669 inline void QOpenGLFunctions_4_4_Core::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
0670 {
0671     d_1_0_Core->f.GetTexParameteriv(target, pname, params);
0672 }
0673 
0674 inline void QOpenGLFunctions_4_4_Core::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
0675 {
0676     d_1_0_Core->f.GetTexParameterfv(target, pname, params);
0677 }
0678 
0679 inline void QOpenGLFunctions_4_4_Core::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, void *pixels)
0680 {
0681     d_1_0_Core->f.GetTexImage(target, level, format, type, pixels);
0682 }
0683 
0684 inline const GLubyte * QOpenGLFunctions_4_4_Core::glGetString(GLenum name)
0685 {
0686     return d_1_0_Core->f.GetString(name);
0687 }
0688 
0689 inline void QOpenGLFunctions_4_4_Core::glGetIntegerv(GLenum pname, GLint *data)
0690 {
0691     d_1_0_Core->f.GetIntegerv(pname, data);
0692 }
0693 
0694 inline void QOpenGLFunctions_4_4_Core::glGetFloatv(GLenum pname, GLfloat *data)
0695 {
0696     d_1_0_Core->f.GetFloatv(pname, data);
0697 }
0698 
0699 inline GLenum QOpenGLFunctions_4_4_Core::glGetError()
0700 {
0701     return d_1_0_Core->f.GetError();
0702 }
0703 
0704 inline void QOpenGLFunctions_4_4_Core::glGetDoublev(GLenum pname, GLdouble *data)
0705 {
0706     d_1_0_Core->f.GetDoublev(pname, data);
0707 }
0708 
0709 inline void QOpenGLFunctions_4_4_Core::glGetBooleanv(GLenum pname, GLboolean *data)
0710 {
0711     d_1_0_Core->f.GetBooleanv(pname, data);
0712 }
0713 
0714 inline void QOpenGLFunctions_4_4_Core::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels)
0715 {
0716     d_1_0_Core->f.ReadPixels(x, y, width, height, format, type, pixels);
0717 }
0718 
0719 inline void QOpenGLFunctions_4_4_Core::glReadBuffer(GLenum src)
0720 {
0721     d_1_0_Core->f.ReadBuffer(src);
0722 }
0723 
0724 inline void QOpenGLFunctions_4_4_Core::glPixelStorei(GLenum pname, GLint param)
0725 {
0726     d_1_0_Core->f.PixelStorei(pname, param);
0727 }
0728 
0729 inline void QOpenGLFunctions_4_4_Core::glPixelStoref(GLenum pname, GLfloat param)
0730 {
0731     d_1_0_Core->f.PixelStoref(pname, param);
0732 }
0733 
0734 inline void QOpenGLFunctions_4_4_Core::glDepthFunc(GLenum func)
0735 {
0736     d_1_0_Core->f.DepthFunc(func);
0737 }
0738 
0739 inline void QOpenGLFunctions_4_4_Core::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
0740 {
0741     d_1_0_Core->f.StencilOp(fail, zfail, zpass);
0742 }
0743 
0744 inline void QOpenGLFunctions_4_4_Core::glStencilFunc(GLenum func, GLint ref, GLuint mask)
0745 {
0746     d_1_0_Core->f.StencilFunc(func, ref, mask);
0747 }
0748 
0749 inline void QOpenGLFunctions_4_4_Core::glLogicOp(GLenum opcode)
0750 {
0751     d_1_0_Core->f.LogicOp(opcode);
0752 }
0753 
0754 inline void QOpenGLFunctions_4_4_Core::glBlendFunc(GLenum sfactor, GLenum dfactor)
0755 {
0756     d_1_0_Core->f.BlendFunc(sfactor, dfactor);
0757 }
0758 
0759 inline void QOpenGLFunctions_4_4_Core::glFlush()
0760 {
0761     d_1_0_Core->f.Flush();
0762 }
0763 
0764 inline void QOpenGLFunctions_4_4_Core::glFinish()
0765 {
0766     d_1_0_Core->f.Finish();
0767 }
0768 
0769 inline void QOpenGLFunctions_4_4_Core::glEnable(GLenum cap)
0770 {
0771     d_1_0_Core->f.Enable(cap);
0772 }
0773 
0774 inline void QOpenGLFunctions_4_4_Core::glDisable(GLenum cap)
0775 {
0776     d_1_0_Core->f.Disable(cap);
0777 }
0778 
0779 inline void QOpenGLFunctions_4_4_Core::glDepthMask(GLboolean flag)
0780 {
0781     d_1_0_Core->f.DepthMask(flag);
0782 }
0783 
0784 inline void QOpenGLFunctions_4_4_Core::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
0785 {
0786     d_1_0_Core->f.ColorMask(red, green, blue, alpha);
0787 }
0788 
0789 inline void QOpenGLFunctions_4_4_Core::glStencilMask(GLuint mask)
0790 {
0791     d_1_0_Core->f.StencilMask(mask);
0792 }
0793 
0794 inline void QOpenGLFunctions_4_4_Core::glClearDepth(GLdouble depth)
0795 {
0796     d_1_0_Core->f.ClearDepth(depth);
0797 }
0798 
0799 inline void QOpenGLFunctions_4_4_Core::glClearStencil(GLint s)
0800 {
0801     d_1_0_Core->f.ClearStencil(s);
0802 }
0803 
0804 inline void QOpenGLFunctions_4_4_Core::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
0805 {
0806     d_1_0_Core->f.ClearColor(red, green, blue, alpha);
0807 }
0808 
0809 inline void QOpenGLFunctions_4_4_Core::glClear(GLbitfield mask)
0810 {
0811     d_1_0_Core->f.Clear(mask);
0812 }
0813 
0814 inline void QOpenGLFunctions_4_4_Core::glDrawBuffer(GLenum buf)
0815 {
0816     d_1_0_Core->f.DrawBuffer(buf);
0817 }
0818 
0819 inline void QOpenGLFunctions_4_4_Core::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels)
0820 {
0821     d_1_0_Core->f.TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
0822 }
0823 
0824 inline void QOpenGLFunctions_4_4_Core::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels)
0825 {
0826     d_1_0_Core->f.TexImage1D(target, level, internalformat, width, border, format, type, pixels);
0827 }
0828 
0829 inline void QOpenGLFunctions_4_4_Core::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
0830 {
0831     d_1_0_Core->f.TexParameteriv(target, pname, params);
0832 }
0833 
0834 inline void QOpenGLFunctions_4_4_Core::glTexParameteri(GLenum target, GLenum pname, GLint param)
0835 {
0836     d_1_0_Core->f.TexParameteri(target, pname, param);
0837 }
0838 
0839 inline void QOpenGLFunctions_4_4_Core::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
0840 {
0841     d_1_0_Core->f.TexParameterfv(target, pname, params);
0842 }
0843 
0844 inline void QOpenGLFunctions_4_4_Core::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
0845 {
0846     d_1_0_Core->f.TexParameterf(target, pname, param);
0847 }
0848 
0849 inline void QOpenGLFunctions_4_4_Core::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
0850 {
0851     d_1_0_Core->f.Scissor(x, y, width, height);
0852 }
0853 
0854 inline void QOpenGLFunctions_4_4_Core::glPolygonMode(GLenum face, GLenum mode)
0855 {
0856     d_1_0_Core->f.PolygonMode(face, mode);
0857 }
0858 
0859 inline void QOpenGLFunctions_4_4_Core::glPointSize(GLfloat size)
0860 {
0861     d_1_0_Core->f.PointSize(size);
0862 }
0863 
0864 inline void QOpenGLFunctions_4_4_Core::glLineWidth(GLfloat width)
0865 {
0866     d_1_0_Core->f.LineWidth(width);
0867 }
0868 
0869 inline void QOpenGLFunctions_4_4_Core::glHint(GLenum target, GLenum mode)
0870 {
0871     d_1_0_Core->f.Hint(target, mode);
0872 }
0873 
0874 inline void QOpenGLFunctions_4_4_Core::glFrontFace(GLenum mode)
0875 {
0876     d_1_0_Core->f.FrontFace(mode);
0877 }
0878 
0879 inline void QOpenGLFunctions_4_4_Core::glCullFace(GLenum mode)
0880 {
0881     d_1_0_Core->f.CullFace(mode);
0882 }
0883 
0884 
0885 // OpenGL 1.1 core functions
0886 inline GLboolean QOpenGLFunctions_4_4_Core::glIsTexture(GLuint texture)
0887 {
0888     return d_1_1_Core->f.IsTexture(texture);
0889 }
0890 
0891 inline void QOpenGLFunctions_4_4_Core::glGenTextures(GLsizei n, GLuint *textures)
0892 {
0893     d_1_1_Core->f.GenTextures(n, textures);
0894 }
0895 
0896 inline void QOpenGLFunctions_4_4_Core::glDeleteTextures(GLsizei n, const GLuint *textures)
0897 {
0898     d_1_1_Core->f.DeleteTextures(n, textures);
0899 }
0900 
0901 inline void QOpenGLFunctions_4_4_Core::glBindTexture(GLenum target, GLuint texture)
0902 {
0903     d_1_1_Core->f.BindTexture(target, texture);
0904 }
0905 
0906 inline void QOpenGLFunctions_4_4_Core::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels)
0907 {
0908     d_1_1_Core->f.TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
0909 }
0910 
0911 inline void QOpenGLFunctions_4_4_Core::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels)
0912 {
0913     d_1_1_Core->f.TexSubImage1D(target, level, xoffset, width, format, type, pixels);
0914 }
0915 
0916 inline void QOpenGLFunctions_4_4_Core::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
0917 {
0918     d_1_1_Core->f.CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
0919 }
0920 
0921 inline void QOpenGLFunctions_4_4_Core::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
0922 {
0923     d_1_1_Core->f.CopyTexSubImage1D(target, level, xoffset, x, y, width);
0924 }
0925 
0926 inline void QOpenGLFunctions_4_4_Core::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
0927 {
0928     d_1_1_Core->f.CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
0929 }
0930 
0931 inline void QOpenGLFunctions_4_4_Core::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
0932 {
0933     d_1_1_Core->f.CopyTexImage1D(target, level, internalformat, x, y, width, border);
0934 }
0935 
0936 inline void QOpenGLFunctions_4_4_Core::glPolygonOffset(GLfloat factor, GLfloat units)
0937 {
0938     d_1_1_Core->f.PolygonOffset(factor, units);
0939 }
0940 
0941 inline void QOpenGLFunctions_4_4_Core::glDrawElements(GLenum mode, GLsizei count, GLenum type, const void *indices)
0942 {
0943     d_1_1_Core->f.DrawElements(mode, count, type, indices);
0944 }
0945 
0946 inline void QOpenGLFunctions_4_4_Core::glDrawArrays(GLenum mode, GLint first, GLsizei count)
0947 {
0948     d_1_1_Core->f.DrawArrays(mode, first, count);
0949 }
0950 
0951 
0952 // OpenGL 1.2 core functions
0953 inline void QOpenGLFunctions_4_4_Core::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
0954 {
0955     d_1_2_Core->f.BlendColor(red, green, blue, alpha);
0956 }
0957 
0958 inline void QOpenGLFunctions_4_4_Core::glBlendEquation(GLenum mode)
0959 {
0960     d_1_2_Core->f.BlendEquation(mode);
0961 }
0962 
0963 inline void QOpenGLFunctions_4_4_Core::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
0964 {
0965     d_1_2_Core->f.CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
0966 }
0967 
0968 inline void QOpenGLFunctions_4_4_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)
0969 {
0970     d_1_2_Core->f.TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
0971 }
0972 
0973 inline void QOpenGLFunctions_4_4_Core::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels)
0974 {
0975     d_1_2_Core->f.TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
0976 }
0977 
0978 inline void QOpenGLFunctions_4_4_Core::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices)
0979 {
0980     d_1_2_Core->f.DrawRangeElements(mode, start, end, count, type, indices);
0981 }
0982 
0983 
0984 // OpenGL 1.3 core functions
0985 inline void QOpenGLFunctions_4_4_Core::glGetCompressedTexImage(GLenum target, GLint level, void *img)
0986 {
0987     d_1_3_Core->f.GetCompressedTexImage(target, level, img);
0988 }
0989 
0990 inline void QOpenGLFunctions_4_4_Core::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data)
0991 {
0992     d_1_3_Core->f.CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
0993 }
0994 
0995 inline void QOpenGLFunctions_4_4_Core::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data)
0996 {
0997     d_1_3_Core->f.CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
0998 }
0999 
1000 inline void QOpenGLFunctions_4_4_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)
1001 {
1002     d_1_3_Core->f.CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
1003 }
1004 
1005 inline void QOpenGLFunctions_4_4_Core::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data)
1006 {
1007     d_1_3_Core->f.CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
1008 }
1009 
1010 inline void QOpenGLFunctions_4_4_Core::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data)
1011 {
1012     d_1_3_Core->f.CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
1013 }
1014 
1015 inline void QOpenGLFunctions_4_4_Core::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data)
1016 {
1017     d_1_3_Core->f.CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
1018 }
1019 
1020 inline void QOpenGLFunctions_4_4_Core::glSampleCoverage(GLfloat value, GLboolean invert)
1021 {
1022     d_1_3_Core->f.SampleCoverage(value, invert);
1023 }
1024 
1025 inline void QOpenGLFunctions_4_4_Core::glActiveTexture(GLenum texture)
1026 {
1027     d_1_3_Core->f.ActiveTexture(texture);
1028 }
1029 
1030 
1031 // OpenGL 1.4 core functions
1032 inline void QOpenGLFunctions_4_4_Core::glPointParameteriv(GLenum pname, const GLint *params)
1033 {
1034     d_1_4_Core->f.PointParameteriv(pname, params);
1035 }
1036 
1037 inline void QOpenGLFunctions_4_4_Core::glPointParameteri(GLenum pname, GLint param)
1038 {
1039     d_1_4_Core->f.PointParameteri(pname, param);
1040 }
1041 
1042 inline void QOpenGLFunctions_4_4_Core::glPointParameterfv(GLenum pname, const GLfloat *params)
1043 {
1044     d_1_4_Core->f.PointParameterfv(pname, params);
1045 }
1046 
1047 inline void QOpenGLFunctions_4_4_Core::glPointParameterf(GLenum pname, GLfloat param)
1048 {
1049     d_1_4_Core->f.PointParameterf(pname, param);
1050 }
1051 
1052 inline void QOpenGLFunctions_4_4_Core::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const void *const *indices, GLsizei drawcount)
1053 {
1054     d_1_4_Core->f.MultiDrawElements(mode, count, type, indices, drawcount);
1055 }
1056 
1057 inline void QOpenGLFunctions_4_4_Core::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
1058 {
1059     d_1_4_Core->f.MultiDrawArrays(mode, first, count, drawcount);
1060 }
1061 
1062 inline void QOpenGLFunctions_4_4_Core::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
1063 {
1064     d_1_4_Core->f.BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
1065 }
1066 
1067 
1068 // OpenGL 1.5 core functions
1069 inline void QOpenGLFunctions_4_4_Core::glGetBufferPointerv(GLenum target, GLenum pname, void * *params)
1070 {
1071     d_1_5_Core->f.GetBufferPointerv(target, pname, params);
1072 }
1073 
1074 inline void QOpenGLFunctions_4_4_Core::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
1075 {
1076     d_1_5_Core->f.GetBufferParameteriv(target, pname, params);
1077 }
1078 
1079 inline GLboolean QOpenGLFunctions_4_4_Core::glUnmapBuffer(GLenum target)
1080 {
1081     return d_1_5_Core->f.UnmapBuffer(target);
1082 }
1083 
1084 inline void * QOpenGLFunctions_4_4_Core::glMapBuffer(GLenum target, GLenum access)
1085 {
1086     return d_1_5_Core->f.MapBuffer(target, access);
1087 }
1088 
1089 inline void QOpenGLFunctions_4_4_Core::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, void *data)
1090 {
1091     d_1_5_Core->f.GetBufferSubData(target, offset, size, data);
1092 }
1093 
1094 inline void QOpenGLFunctions_4_4_Core::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const void *data)
1095 {
1096     d_1_5_Core->f.BufferSubData(target, offset, size, data);
1097 }
1098 
1099 inline void QOpenGLFunctions_4_4_Core::glBufferData(GLenum target, GLsizeiptr size, const void *data, GLenum usage)
1100 {
1101     d_1_5_Core->f.BufferData(target, size, data, usage);
1102 }
1103 
1104 inline GLboolean QOpenGLFunctions_4_4_Core::glIsBuffer(GLuint buffer)
1105 {
1106     return d_1_5_Core->f.IsBuffer(buffer);
1107 }
1108 
1109 inline void QOpenGLFunctions_4_4_Core::glGenBuffers(GLsizei n, GLuint *buffers)
1110 {
1111     d_1_5_Core->f.GenBuffers(n, buffers);
1112 }
1113 
1114 inline void QOpenGLFunctions_4_4_Core::glDeleteBuffers(GLsizei n, const GLuint *buffers)
1115 {
1116     d_1_5_Core->f.DeleteBuffers(n, buffers);
1117 }
1118 
1119 inline void QOpenGLFunctions_4_4_Core::glBindBuffer(GLenum target, GLuint buffer)
1120 {
1121     d_1_5_Core->f.BindBuffer(target, buffer);
1122 }
1123 
1124 inline void QOpenGLFunctions_4_4_Core::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
1125 {
1126     d_1_5_Core->f.GetQueryObjectuiv(id, pname, params);
1127 }
1128 
1129 inline void QOpenGLFunctions_4_4_Core::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
1130 {
1131     d_1_5_Core->f.GetQueryObjectiv(id, pname, params);
1132 }
1133 
1134 inline void QOpenGLFunctions_4_4_Core::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
1135 {
1136     d_1_5_Core->f.GetQueryiv(target, pname, params);
1137 }
1138 
1139 inline void QOpenGLFunctions_4_4_Core::glEndQuery(GLenum target)
1140 {
1141     d_1_5_Core->f.EndQuery(target);
1142 }
1143 
1144 inline void QOpenGLFunctions_4_4_Core::glBeginQuery(GLenum target, GLuint id)
1145 {
1146     d_1_5_Core->f.BeginQuery(target, id);
1147 }
1148 
1149 inline GLboolean QOpenGLFunctions_4_4_Core::glIsQuery(GLuint id)
1150 {
1151     return d_1_5_Core->f.IsQuery(id);
1152 }
1153 
1154 inline void QOpenGLFunctions_4_4_Core::glDeleteQueries(GLsizei n, const GLuint *ids)
1155 {
1156     d_1_5_Core->f.DeleteQueries(n, ids);
1157 }
1158 
1159 inline void QOpenGLFunctions_4_4_Core::glGenQueries(GLsizei n, GLuint *ids)
1160 {
1161     d_1_5_Core->f.GenQueries(n, ids);
1162 }
1163 
1164 
1165 // OpenGL 2.0 core functions
1166 inline void QOpenGLFunctions_4_4_Core::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer)
1167 {
1168     d_2_0_Core->f.VertexAttribPointer(index, size, type, normalized, stride, pointer);
1169 }
1170 
1171 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib4usv(GLuint index, const GLushort *v)
1172 {
1173     d_2_0_Core->f.VertexAttrib4usv(index, v);
1174 }
1175 
1176 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib4uiv(GLuint index, const GLuint *v)
1177 {
1178     d_2_0_Core->f.VertexAttrib4uiv(index, v);
1179 }
1180 
1181 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib4ubv(GLuint index, const GLubyte *v)
1182 {
1183     d_2_0_Core->f.VertexAttrib4ubv(index, v);
1184 }
1185 
1186 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib4sv(GLuint index, const GLshort *v)
1187 {
1188     d_2_0_Core->f.VertexAttrib4sv(index, v);
1189 }
1190 
1191 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
1192 {
1193     d_2_0_Core->f.VertexAttrib4s(index, x, y, z, w);
1194 }
1195 
1196 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib4iv(GLuint index, const GLint *v)
1197 {
1198     d_2_0_Core->f.VertexAttrib4iv(index, v);
1199 }
1200 
1201 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib4fv(GLuint index, const GLfloat *v)
1202 {
1203     d_2_0_Core->f.VertexAttrib4fv(index, v);
1204 }
1205 
1206 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
1207 {
1208     d_2_0_Core->f.VertexAttrib4f(index, x, y, z, w);
1209 }
1210 
1211 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib4dv(GLuint index, const GLdouble *v)
1212 {
1213     d_2_0_Core->f.VertexAttrib4dv(index, v);
1214 }
1215 
1216 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
1217 {
1218     d_2_0_Core->f.VertexAttrib4d(index, x, y, z, w);
1219 }
1220 
1221 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib4bv(GLuint index, const GLbyte *v)
1222 {
1223     d_2_0_Core->f.VertexAttrib4bv(index, v);
1224 }
1225 
1226 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib4Nusv(GLuint index, const GLushort *v)
1227 {
1228     d_2_0_Core->f.VertexAttrib4Nusv(index, v);
1229 }
1230 
1231 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib4Nuiv(GLuint index, const GLuint *v)
1232 {
1233     d_2_0_Core->f.VertexAttrib4Nuiv(index, v);
1234 }
1235 
1236 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib4Nubv(GLuint index, const GLubyte *v)
1237 {
1238     d_2_0_Core->f.VertexAttrib4Nubv(index, v);
1239 }
1240 
1241 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
1242 {
1243     d_2_0_Core->f.VertexAttrib4Nub(index, x, y, z, w);
1244 }
1245 
1246 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib4Nsv(GLuint index, const GLshort *v)
1247 {
1248     d_2_0_Core->f.VertexAttrib4Nsv(index, v);
1249 }
1250 
1251 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib4Niv(GLuint index, const GLint *v)
1252 {
1253     d_2_0_Core->f.VertexAttrib4Niv(index, v);
1254 }
1255 
1256 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib4Nbv(GLuint index, const GLbyte *v)
1257 {
1258     d_2_0_Core->f.VertexAttrib4Nbv(index, v);
1259 }
1260 
1261 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib3sv(GLuint index, const GLshort *v)
1262 {
1263     d_2_0_Core->f.VertexAttrib3sv(index, v);
1264 }
1265 
1266 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z)
1267 {
1268     d_2_0_Core->f.VertexAttrib3s(index, x, y, z);
1269 }
1270 
1271 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib3fv(GLuint index, const GLfloat *v)
1272 {
1273     d_2_0_Core->f.VertexAttrib3fv(index, v);
1274 }
1275 
1276 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z)
1277 {
1278     d_2_0_Core->f.VertexAttrib3f(index, x, y, z);
1279 }
1280 
1281 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib3dv(GLuint index, const GLdouble *v)
1282 {
1283     d_2_0_Core->f.VertexAttrib3dv(index, v);
1284 }
1285 
1286 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
1287 {
1288     d_2_0_Core->f.VertexAttrib3d(index, x, y, z);
1289 }
1290 
1291 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib2sv(GLuint index, const GLshort *v)
1292 {
1293     d_2_0_Core->f.VertexAttrib2sv(index, v);
1294 }
1295 
1296 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib2s(GLuint index, GLshort x, GLshort y)
1297 {
1298     d_2_0_Core->f.VertexAttrib2s(index, x, y);
1299 }
1300 
1301 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib2fv(GLuint index, const GLfloat *v)
1302 {
1303     d_2_0_Core->f.VertexAttrib2fv(index, v);
1304 }
1305 
1306 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y)
1307 {
1308     d_2_0_Core->f.VertexAttrib2f(index, x, y);
1309 }
1310 
1311 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib2dv(GLuint index, const GLdouble *v)
1312 {
1313     d_2_0_Core->f.VertexAttrib2dv(index, v);
1314 }
1315 
1316 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y)
1317 {
1318     d_2_0_Core->f.VertexAttrib2d(index, x, y);
1319 }
1320 
1321 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib1sv(GLuint index, const GLshort *v)
1322 {
1323     d_2_0_Core->f.VertexAttrib1sv(index, v);
1324 }
1325 
1326 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib1s(GLuint index, GLshort x)
1327 {
1328     d_2_0_Core->f.VertexAttrib1s(index, x);
1329 }
1330 
1331 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib1fv(GLuint index, const GLfloat *v)
1332 {
1333     d_2_0_Core->f.VertexAttrib1fv(index, v);
1334 }
1335 
1336 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib1f(GLuint index, GLfloat x)
1337 {
1338     d_2_0_Core->f.VertexAttrib1f(index, x);
1339 }
1340 
1341 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib1dv(GLuint index, const GLdouble *v)
1342 {
1343     d_2_0_Core->f.VertexAttrib1dv(index, v);
1344 }
1345 
1346 inline void QOpenGLFunctions_4_4_Core::glVertexAttrib1d(GLuint index, GLdouble x)
1347 {
1348     d_2_0_Core->f.VertexAttrib1d(index, x);
1349 }
1350 
1351 inline void QOpenGLFunctions_4_4_Core::glValidateProgram(GLuint program)
1352 {
1353     d_2_0_Core->f.ValidateProgram(program);
1354 }
1355 
1356 inline void QOpenGLFunctions_4_4_Core::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1357 {
1358     d_2_0_Core->f.UniformMatrix4fv(location, count, transpose, value);
1359 }
1360 
1361 inline void QOpenGLFunctions_4_4_Core::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1362 {
1363     d_2_0_Core->f.UniformMatrix3fv(location, count, transpose, value);
1364 }
1365 
1366 inline void QOpenGLFunctions_4_4_Core::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1367 {
1368     d_2_0_Core->f.UniformMatrix2fv(location, count, transpose, value);
1369 }
1370 
1371 inline void QOpenGLFunctions_4_4_Core::glUniform4iv(GLint location, GLsizei count, const GLint *value)
1372 {
1373     d_2_0_Core->f.Uniform4iv(location, count, value);
1374 }
1375 
1376 inline void QOpenGLFunctions_4_4_Core::glUniform3iv(GLint location, GLsizei count, const GLint *value)
1377 {
1378     d_2_0_Core->f.Uniform3iv(location, count, value);
1379 }
1380 
1381 inline void QOpenGLFunctions_4_4_Core::glUniform2iv(GLint location, GLsizei count, const GLint *value)
1382 {
1383     d_2_0_Core->f.Uniform2iv(location, count, value);
1384 }
1385 
1386 inline void QOpenGLFunctions_4_4_Core::glUniform1iv(GLint location, GLsizei count, const GLint *value)
1387 {
1388     d_2_0_Core->f.Uniform1iv(location, count, value);
1389 }
1390 
1391 inline void QOpenGLFunctions_4_4_Core::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
1392 {
1393     d_2_0_Core->f.Uniform4fv(location, count, value);
1394 }
1395 
1396 inline void QOpenGLFunctions_4_4_Core::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
1397 {
1398     d_2_0_Core->f.Uniform3fv(location, count, value);
1399 }
1400 
1401 inline void QOpenGLFunctions_4_4_Core::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
1402 {
1403     d_2_0_Core->f.Uniform2fv(location, count, value);
1404 }
1405 
1406 inline void QOpenGLFunctions_4_4_Core::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
1407 {
1408     d_2_0_Core->f.Uniform1fv(location, count, value);
1409 }
1410 
1411 inline void QOpenGLFunctions_4_4_Core::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
1412 {
1413     d_2_0_Core->f.Uniform4i(location, v0, v1, v2, v3);
1414 }
1415 
1416 inline void QOpenGLFunctions_4_4_Core::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
1417 {
1418     d_2_0_Core->f.Uniform3i(location, v0, v1, v2);
1419 }
1420 
1421 inline void QOpenGLFunctions_4_4_Core::glUniform2i(GLint location, GLint v0, GLint v1)
1422 {
1423     d_2_0_Core->f.Uniform2i(location, v0, v1);
1424 }
1425 
1426 inline void QOpenGLFunctions_4_4_Core::glUniform1i(GLint location, GLint v0)
1427 {
1428     d_2_0_Core->f.Uniform1i(location, v0);
1429 }
1430 
1431 inline void QOpenGLFunctions_4_4_Core::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
1432 {
1433     d_2_0_Core->f.Uniform4f(location, v0, v1, v2, v3);
1434 }
1435 
1436 inline void QOpenGLFunctions_4_4_Core::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
1437 {
1438     d_2_0_Core->f.Uniform3f(location, v0, v1, v2);
1439 }
1440 
1441 inline void QOpenGLFunctions_4_4_Core::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
1442 {
1443     d_2_0_Core->f.Uniform2f(location, v0, v1);
1444 }
1445 
1446 inline void QOpenGLFunctions_4_4_Core::glUniform1f(GLint location, GLfloat v0)
1447 {
1448     d_2_0_Core->f.Uniform1f(location, v0);
1449 }
1450 
1451 inline void QOpenGLFunctions_4_4_Core::glUseProgram(GLuint program)
1452 {
1453     d_2_0_Core->f.UseProgram(program);
1454 }
1455 
1456 inline void QOpenGLFunctions_4_4_Core::glShaderSource(GLuint shader, GLsizei count, const GLchar *const *string, const GLint *length)
1457 {
1458     d_2_0_Core->f.ShaderSource(shader, count, string, length);
1459 }
1460 
1461 inline void QOpenGLFunctions_4_4_Core::glLinkProgram(GLuint program)
1462 {
1463     d_2_0_Core->f.LinkProgram(program);
1464 }
1465 
1466 inline GLboolean QOpenGLFunctions_4_4_Core::glIsShader(GLuint shader)
1467 {
1468     return d_2_0_Core->f.IsShader(shader);
1469 }
1470 
1471 inline GLboolean QOpenGLFunctions_4_4_Core::glIsProgram(GLuint program)
1472 {
1473     return d_2_0_Core->f.IsProgram(program);
1474 }
1475 
1476 inline void QOpenGLFunctions_4_4_Core::glGetVertexAttribPointerv(GLuint index, GLenum pname, void * *pointer)
1477 {
1478     d_2_0_Core->f.GetVertexAttribPointerv(index, pname, pointer);
1479 }
1480 
1481 inline void QOpenGLFunctions_4_4_Core::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
1482 {
1483     d_2_0_Core->f.GetVertexAttribiv(index, pname, params);
1484 }
1485 
1486 inline void QOpenGLFunctions_4_4_Core::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
1487 {
1488     d_2_0_Core->f.GetVertexAttribfv(index, pname, params);
1489 }
1490 
1491 inline void QOpenGLFunctions_4_4_Core::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
1492 {
1493     d_2_0_Core->f.GetVertexAttribdv(index, pname, params);
1494 }
1495 
1496 inline void QOpenGLFunctions_4_4_Core::glGetUniformiv(GLuint program, GLint location, GLint *params)
1497 {
1498     d_2_0_Core->f.GetUniformiv(program, location, params);
1499 }
1500 
1501 inline void QOpenGLFunctions_4_4_Core::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
1502 {
1503     d_2_0_Core->f.GetUniformfv(program, location, params);
1504 }
1505 
1506 inline GLint QOpenGLFunctions_4_4_Core::glGetUniformLocation(GLuint program, const GLchar *name)
1507 {
1508     return d_2_0_Core->f.GetUniformLocation(program, name);
1509 }
1510 
1511 inline void QOpenGLFunctions_4_4_Core::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
1512 {
1513     d_2_0_Core->f.GetShaderSource(shader, bufSize, length, source);
1514 }
1515 
1516 inline void QOpenGLFunctions_4_4_Core::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
1517 {
1518     d_2_0_Core->f.GetShaderInfoLog(shader, bufSize, length, infoLog);
1519 }
1520 
1521 inline void QOpenGLFunctions_4_4_Core::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
1522 {
1523     d_2_0_Core->f.GetShaderiv(shader, pname, params);
1524 }
1525 
1526 inline void QOpenGLFunctions_4_4_Core::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
1527 {
1528     d_2_0_Core->f.GetProgramInfoLog(program, bufSize, length, infoLog);
1529 }
1530 
1531 inline void QOpenGLFunctions_4_4_Core::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
1532 {
1533     d_2_0_Core->f.GetProgramiv(program, pname, params);
1534 }
1535 
1536 inline GLint QOpenGLFunctions_4_4_Core::glGetAttribLocation(GLuint program, const GLchar *name)
1537 {
1538     return d_2_0_Core->f.GetAttribLocation(program, name);
1539 }
1540 
1541 inline void QOpenGLFunctions_4_4_Core::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders)
1542 {
1543     d_2_0_Core->f.GetAttachedShaders(program, maxCount, count, shaders);
1544 }
1545 
1546 inline void QOpenGLFunctions_4_4_Core::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
1547 {
1548     d_2_0_Core->f.GetActiveUniform(program, index, bufSize, length, size, type, name);
1549 }
1550 
1551 inline void QOpenGLFunctions_4_4_Core::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
1552 {
1553     d_2_0_Core->f.GetActiveAttrib(program, index, bufSize, length, size, type, name);
1554 }
1555 
1556 inline void QOpenGLFunctions_4_4_Core::glEnableVertexAttribArray(GLuint index)
1557 {
1558     d_2_0_Core->f.EnableVertexAttribArray(index);
1559 }
1560 
1561 inline void QOpenGLFunctions_4_4_Core::glDisableVertexAttribArray(GLuint index)
1562 {
1563     d_2_0_Core->f.DisableVertexAttribArray(index);
1564 }
1565 
1566 inline void QOpenGLFunctions_4_4_Core::glDetachShader(GLuint program, GLuint shader)
1567 {
1568     d_2_0_Core->f.DetachShader(program, shader);
1569 }
1570 
1571 inline void QOpenGLFunctions_4_4_Core::glDeleteShader(GLuint shader)
1572 {
1573     d_2_0_Core->f.DeleteShader(shader);
1574 }
1575 
1576 inline void QOpenGLFunctions_4_4_Core::glDeleteProgram(GLuint program)
1577 {
1578     d_2_0_Core->f.DeleteProgram(program);
1579 }
1580 
1581 inline GLuint QOpenGLFunctions_4_4_Core::glCreateShader(GLenum type)
1582 {
1583     return d_2_0_Core->f.CreateShader(type);
1584 }
1585 
1586 inline GLuint QOpenGLFunctions_4_4_Core::glCreateProgram()
1587 {
1588     return d_2_0_Core->f.CreateProgram();
1589 }
1590 
1591 inline void QOpenGLFunctions_4_4_Core::glCompileShader(GLuint shader)
1592 {
1593     d_2_0_Core->f.CompileShader(shader);
1594 }
1595 
1596 inline void QOpenGLFunctions_4_4_Core::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
1597 {
1598     d_2_0_Core->f.BindAttribLocation(program, index, name);
1599 }
1600 
1601 inline void QOpenGLFunctions_4_4_Core::glAttachShader(GLuint program, GLuint shader)
1602 {
1603     d_2_0_Core->f.AttachShader(program, shader);
1604 }
1605 
1606 inline void QOpenGLFunctions_4_4_Core::glStencilMaskSeparate(GLenum face, GLuint mask)
1607 {
1608     d_2_0_Core->f.StencilMaskSeparate(face, mask);
1609 }
1610 
1611 inline void QOpenGLFunctions_4_4_Core::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
1612 {
1613     d_2_0_Core->f.StencilFuncSeparate(face, func, ref, mask);
1614 }
1615 
1616 inline void QOpenGLFunctions_4_4_Core::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
1617 {
1618     d_2_0_Core->f.StencilOpSeparate(face, sfail, dpfail, dppass);
1619 }
1620 
1621 inline void QOpenGLFunctions_4_4_Core::glDrawBuffers(GLsizei n, const GLenum *bufs)
1622 {
1623     d_2_0_Core->f.DrawBuffers(n, bufs);
1624 }
1625 
1626 inline void QOpenGLFunctions_4_4_Core::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
1627 {
1628     d_2_0_Core->f.BlendEquationSeparate(modeRGB, modeAlpha);
1629 }
1630 
1631 
1632 // OpenGL 2.1 core functions
1633 inline void QOpenGLFunctions_4_4_Core::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1634 {
1635     d_2_1_Core->f.UniformMatrix4x3fv(location, count, transpose, value);
1636 }
1637 
1638 inline void QOpenGLFunctions_4_4_Core::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1639 {
1640     d_2_1_Core->f.UniformMatrix3x4fv(location, count, transpose, value);
1641 }
1642 
1643 inline void QOpenGLFunctions_4_4_Core::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1644 {
1645     d_2_1_Core->f.UniformMatrix4x2fv(location, count, transpose, value);
1646 }
1647 
1648 inline void QOpenGLFunctions_4_4_Core::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1649 {
1650     d_2_1_Core->f.UniformMatrix2x4fv(location, count, transpose, value);
1651 }
1652 
1653 inline void QOpenGLFunctions_4_4_Core::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1654 {
1655     d_2_1_Core->f.UniformMatrix3x2fv(location, count, transpose, value);
1656 }
1657 
1658 inline void QOpenGLFunctions_4_4_Core::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1659 {
1660     d_2_1_Core->f.UniformMatrix2x3fv(location, count, transpose, value);
1661 }
1662 
1663 
1664 // OpenGL 3.0 core functions
1665 inline GLboolean QOpenGLFunctions_4_4_Core::glIsVertexArray(GLuint array)
1666 {
1667     return d_3_0_Core->f.IsVertexArray(array);
1668 }
1669 
1670 inline void QOpenGLFunctions_4_4_Core::glGenVertexArrays(GLsizei n, GLuint *arrays)
1671 {
1672     d_3_0_Core->f.GenVertexArrays(n, arrays);
1673 }
1674 
1675 inline void QOpenGLFunctions_4_4_Core::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
1676 {
1677     d_3_0_Core->f.DeleteVertexArrays(n, arrays);
1678 }
1679 
1680 inline void QOpenGLFunctions_4_4_Core::glBindVertexArray(GLuint array)
1681 {
1682     d_3_0_Core->f.BindVertexArray(array);
1683 }
1684 
1685 inline void QOpenGLFunctions_4_4_Core::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
1686 {
1687     d_3_0_Core->f.FlushMappedBufferRange(target, offset, length);
1688 }
1689 
1690 inline void * QOpenGLFunctions_4_4_Core::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
1691 {
1692     return d_3_0_Core->f.MapBufferRange(target, offset, length, access);
1693 }
1694 
1695 inline void QOpenGLFunctions_4_4_Core::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
1696 {
1697     d_3_0_Core->f.FramebufferTextureLayer(target, attachment, texture, level, layer);
1698 }
1699 
1700 inline void QOpenGLFunctions_4_4_Core::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
1701 {
1702     d_3_0_Core->f.RenderbufferStorageMultisample(target, samples, internalformat, width, height);
1703 }
1704 
1705 inline void QOpenGLFunctions_4_4_Core::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
1706 {
1707     d_3_0_Core->f.BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
1708 }
1709 
1710 inline void QOpenGLFunctions_4_4_Core::glGenerateMipmap(GLenum target)
1711 {
1712     d_3_0_Core->f.GenerateMipmap(target);
1713 }
1714 
1715 inline void QOpenGLFunctions_4_4_Core::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
1716 {
1717     d_3_0_Core->f.GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
1718 }
1719 
1720 inline void QOpenGLFunctions_4_4_Core::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
1721 {
1722     d_3_0_Core->f.FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
1723 }
1724 
1725 inline void QOpenGLFunctions_4_4_Core::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
1726 {
1727     d_3_0_Core->f.FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
1728 }
1729 
1730 inline void QOpenGLFunctions_4_4_Core::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
1731 {
1732     d_3_0_Core->f.FramebufferTexture2D(target, attachment, textarget, texture, level);
1733 }
1734 
1735 inline void QOpenGLFunctions_4_4_Core::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
1736 {
1737     d_3_0_Core->f.FramebufferTexture1D(target, attachment, textarget, texture, level);
1738 }
1739 
1740 inline GLenum QOpenGLFunctions_4_4_Core::glCheckFramebufferStatus(GLenum target)
1741 {
1742     return d_3_0_Core->f.CheckFramebufferStatus(target);
1743 }
1744 
1745 inline void QOpenGLFunctions_4_4_Core::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
1746 {
1747     d_3_0_Core->f.GenFramebuffers(n, framebuffers);
1748 }
1749 
1750 inline void QOpenGLFunctions_4_4_Core::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
1751 {
1752     d_3_0_Core->f.DeleteFramebuffers(n, framebuffers);
1753 }
1754 
1755 inline void QOpenGLFunctions_4_4_Core::glBindFramebuffer(GLenum target, GLuint framebuffer)
1756 {
1757     d_3_0_Core->f.BindFramebuffer(target, framebuffer);
1758 }
1759 
1760 inline GLboolean QOpenGLFunctions_4_4_Core::glIsFramebuffer(GLuint framebuffer)
1761 {
1762     return d_3_0_Core->f.IsFramebuffer(framebuffer);
1763 }
1764 
1765 inline void QOpenGLFunctions_4_4_Core::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
1766 {
1767     d_3_0_Core->f.GetRenderbufferParameteriv(target, pname, params);
1768 }
1769 
1770 inline void QOpenGLFunctions_4_4_Core::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
1771 {
1772     d_3_0_Core->f.RenderbufferStorage(target, internalformat, width, height);
1773 }
1774 
1775 inline void QOpenGLFunctions_4_4_Core::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
1776 {
1777     d_3_0_Core->f.GenRenderbuffers(n, renderbuffers);
1778 }
1779 
1780 inline void QOpenGLFunctions_4_4_Core::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
1781 {
1782     d_3_0_Core->f.DeleteRenderbuffers(n, renderbuffers);
1783 }
1784 
1785 inline void QOpenGLFunctions_4_4_Core::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
1786 {
1787     d_3_0_Core->f.BindRenderbuffer(target, renderbuffer);
1788 }
1789 
1790 inline GLboolean QOpenGLFunctions_4_4_Core::glIsRenderbuffer(GLuint renderbuffer)
1791 {
1792     return d_3_0_Core->f.IsRenderbuffer(renderbuffer);
1793 }
1794 
1795 inline const GLubyte * QOpenGLFunctions_4_4_Core::glGetStringi(GLenum name, GLuint index)
1796 {
1797     return d_3_0_Core->f.GetStringi(name, index);
1798 }
1799 
1800 inline void QOpenGLFunctions_4_4_Core::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
1801 {
1802     d_3_0_Core->f.ClearBufferfi(buffer, drawbuffer, depth, stencil);
1803 }
1804 
1805 inline void QOpenGLFunctions_4_4_Core::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
1806 {
1807     d_3_0_Core->f.ClearBufferfv(buffer, drawbuffer, value);
1808 }
1809 
1810 inline void QOpenGLFunctions_4_4_Core::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
1811 {
1812     d_3_0_Core->f.ClearBufferuiv(buffer, drawbuffer, value);
1813 }
1814 
1815 inline void QOpenGLFunctions_4_4_Core::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
1816 {
1817     d_3_0_Core->f.ClearBufferiv(buffer, drawbuffer, value);
1818 }
1819 
1820 inline void QOpenGLFunctions_4_4_Core::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
1821 {
1822     d_3_0_Core->f.GetTexParameterIuiv(target, pname, params);
1823 }
1824 
1825 inline void QOpenGLFunctions_4_4_Core::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
1826 {
1827     d_3_0_Core->f.GetTexParameterIiv(target, pname, params);
1828 }
1829 
1830 inline void QOpenGLFunctions_4_4_Core::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
1831 {
1832     d_3_0_Core->f.TexParameterIuiv(target, pname, params);
1833 }
1834 
1835 inline void QOpenGLFunctions_4_4_Core::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
1836 {
1837     d_3_0_Core->f.TexParameterIiv(target, pname, params);
1838 }
1839 
1840 inline void QOpenGLFunctions_4_4_Core::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
1841 {
1842     d_3_0_Core->f.Uniform4uiv(location, count, value);
1843 }
1844 
1845 inline void QOpenGLFunctions_4_4_Core::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
1846 {
1847     d_3_0_Core->f.Uniform3uiv(location, count, value);
1848 }
1849 
1850 inline void QOpenGLFunctions_4_4_Core::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
1851 {
1852     d_3_0_Core->f.Uniform2uiv(location, count, value);
1853 }
1854 
1855 inline void QOpenGLFunctions_4_4_Core::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
1856 {
1857     d_3_0_Core->f.Uniform1uiv(location, count, value);
1858 }
1859 
1860 inline void QOpenGLFunctions_4_4_Core::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
1861 {
1862     d_3_0_Core->f.Uniform4ui(location, v0, v1, v2, v3);
1863 }
1864 
1865 inline void QOpenGLFunctions_4_4_Core::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
1866 {
1867     d_3_0_Core->f.Uniform3ui(location, v0, v1, v2);
1868 }
1869 
1870 inline void QOpenGLFunctions_4_4_Core::glUniform2ui(GLint location, GLuint v0, GLuint v1)
1871 {
1872     d_3_0_Core->f.Uniform2ui(location, v0, v1);
1873 }
1874 
1875 inline void QOpenGLFunctions_4_4_Core::glUniform1ui(GLint location, GLuint v0)
1876 {
1877     d_3_0_Core->f.Uniform1ui(location, v0);
1878 }
1879 
1880 inline GLint QOpenGLFunctions_4_4_Core::glGetFragDataLocation(GLuint program, const GLchar *name)
1881 {
1882     return d_3_0_Core->f.GetFragDataLocation(program, name);
1883 }
1884 
1885 inline void QOpenGLFunctions_4_4_Core::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
1886 {
1887     d_3_0_Core->f.BindFragDataLocation(program, color, name);
1888 }
1889 
1890 inline void QOpenGLFunctions_4_4_Core::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
1891 {
1892     d_3_0_Core->f.GetUniformuiv(program, location, params);
1893 }
1894 
1895 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI4usv(GLuint index, const GLushort *v)
1896 {
1897     d_3_0_Core->f.VertexAttribI4usv(index, v);
1898 }
1899 
1900 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI4ubv(GLuint index, const GLubyte *v)
1901 {
1902     d_3_0_Core->f.VertexAttribI4ubv(index, v);
1903 }
1904 
1905 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI4sv(GLuint index, const GLshort *v)
1906 {
1907     d_3_0_Core->f.VertexAttribI4sv(index, v);
1908 }
1909 
1910 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI4bv(GLuint index, const GLbyte *v)
1911 {
1912     d_3_0_Core->f.VertexAttribI4bv(index, v);
1913 }
1914 
1915 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI4uiv(GLuint index, const GLuint *v)
1916 {
1917     d_3_0_Core->f.VertexAttribI4uiv(index, v);
1918 }
1919 
1920 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI3uiv(GLuint index, const GLuint *v)
1921 {
1922     d_3_0_Core->f.VertexAttribI3uiv(index, v);
1923 }
1924 
1925 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI2uiv(GLuint index, const GLuint *v)
1926 {
1927     d_3_0_Core->f.VertexAttribI2uiv(index, v);
1928 }
1929 
1930 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI1uiv(GLuint index, const GLuint *v)
1931 {
1932     d_3_0_Core->f.VertexAttribI1uiv(index, v);
1933 }
1934 
1935 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI4iv(GLuint index, const GLint *v)
1936 {
1937     d_3_0_Core->f.VertexAttribI4iv(index, v);
1938 }
1939 
1940 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI3iv(GLuint index, const GLint *v)
1941 {
1942     d_3_0_Core->f.VertexAttribI3iv(index, v);
1943 }
1944 
1945 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI2iv(GLuint index, const GLint *v)
1946 {
1947     d_3_0_Core->f.VertexAttribI2iv(index, v);
1948 }
1949 
1950 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI1iv(GLuint index, const GLint *v)
1951 {
1952     d_3_0_Core->f.VertexAttribI1iv(index, v);
1953 }
1954 
1955 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
1956 {
1957     d_3_0_Core->f.VertexAttribI4ui(index, x, y, z, w);
1958 }
1959 
1960 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z)
1961 {
1962     d_3_0_Core->f.VertexAttribI3ui(index, x, y, z);
1963 }
1964 
1965 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI2ui(GLuint index, GLuint x, GLuint y)
1966 {
1967     d_3_0_Core->f.VertexAttribI2ui(index, x, y);
1968 }
1969 
1970 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI1ui(GLuint index, GLuint x)
1971 {
1972     d_3_0_Core->f.VertexAttribI1ui(index, x);
1973 }
1974 
1975 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w)
1976 {
1977     d_3_0_Core->f.VertexAttribI4i(index, x, y, z, w);
1978 }
1979 
1980 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z)
1981 {
1982     d_3_0_Core->f.VertexAttribI3i(index, x, y, z);
1983 }
1984 
1985 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI2i(GLuint index, GLint x, GLint y)
1986 {
1987     d_3_0_Core->f.VertexAttribI2i(index, x, y);
1988 }
1989 
1990 inline void QOpenGLFunctions_4_4_Core::glVertexAttribI1i(GLuint index, GLint x)
1991 {
1992     d_3_0_Core->f.VertexAttribI1i(index, x);
1993 }
1994 
1995 inline void QOpenGLFunctions_4_4_Core::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
1996 {
1997     d_3_0_Core->f.GetVertexAttribIuiv(index, pname, params);
1998 }
1999 
2000 inline void QOpenGLFunctions_4_4_Core::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
2001 {
2002     d_3_0_Core->f.GetVertexAttribIiv(index, pname, params);
2003 }
2004 
2005 inline void QOpenGLFunctions_4_4_Core::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer)
2006 {
2007     d_3_0_Core->f.VertexAttribIPointer(index, size, type, stride, pointer);
2008 }
2009 
2010 inline void QOpenGLFunctions_4_4_Core::glEndConditionalRender()
2011 {
2012     d_3_0_Core->f.EndConditionalRender();
2013 }
2014 
2015 inline void QOpenGLFunctions_4_4_Core::glBeginConditionalRender(GLuint id, GLenum mode)
2016 {
2017     d_3_0_Core->f.BeginConditionalRender(id, mode);
2018 }
2019 
2020 inline void QOpenGLFunctions_4_4_Core::glClampColor(GLenum target, GLenum clamp)
2021 {
2022     d_3_0_Core->f.ClampColor(target, clamp);
2023 }
2024 
2025 inline void QOpenGLFunctions_4_4_Core::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
2026 {
2027     d_3_0_Core->f.GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
2028 }
2029 
2030 inline void QOpenGLFunctions_4_4_Core::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar *const *varyings, GLenum bufferMode)
2031 {
2032     d_3_0_Core->f.TransformFeedbackVaryings(program, count, varyings, bufferMode);
2033 }
2034 
2035 inline void QOpenGLFunctions_4_4_Core::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
2036 {
2037     d_3_0_Core->f.BindBufferBase(target, index, buffer);
2038 }
2039 
2040 inline void QOpenGLFunctions_4_4_Core::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
2041 {
2042     d_3_0_Core->f.BindBufferRange(target, index, buffer, offset, size);
2043 }
2044 
2045 inline void QOpenGLFunctions_4_4_Core::glEndTransformFeedback()
2046 {
2047     d_3_0_Core->f.EndTransformFeedback();
2048 }
2049 
2050 inline void QOpenGLFunctions_4_4_Core::glBeginTransformFeedback(GLenum primitiveMode)
2051 {
2052     d_3_0_Core->f.BeginTransformFeedback(primitiveMode);
2053 }
2054 
2055 inline GLboolean QOpenGLFunctions_4_4_Core::glIsEnabledi(GLenum target, GLuint index)
2056 {
2057     return d_3_0_Core->f.IsEnabledi(target, index);
2058 }
2059 
2060 inline void QOpenGLFunctions_4_4_Core::glDisablei(GLenum target, GLuint index)
2061 {
2062     d_3_0_Core->f.Disablei(target, index);
2063 }
2064 
2065 inline void QOpenGLFunctions_4_4_Core::glEnablei(GLenum target, GLuint index)
2066 {
2067     d_3_0_Core->f.Enablei(target, index);
2068 }
2069 
2070 inline void QOpenGLFunctions_4_4_Core::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
2071 {
2072     d_3_0_Core->f.GetIntegeri_v(target, index, data);
2073 }
2074 
2075 inline void QOpenGLFunctions_4_4_Core::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
2076 {
2077     d_3_0_Core->f.GetBooleani_v(target, index, data);
2078 }
2079 
2080 inline void QOpenGLFunctions_4_4_Core::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
2081 {
2082     d_3_0_Core->f.ColorMaski(index, r, g, b, a);
2083 }
2084 
2085 
2086 // OpenGL 3.1 core functions
2087 inline void QOpenGLFunctions_4_4_Core::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
2088 {
2089     d_3_1_Core->f.UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
2090 }
2091 
2092 inline void QOpenGLFunctions_4_4_Core::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
2093 {
2094     d_3_1_Core->f.GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
2095 }
2096 
2097 inline void QOpenGLFunctions_4_4_Core::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
2098 {
2099     d_3_1_Core->f.GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
2100 }
2101 
2102 inline GLuint QOpenGLFunctions_4_4_Core::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
2103 {
2104     return d_3_1_Core->f.GetUniformBlockIndex(program, uniformBlockName);
2105 }
2106 
2107 inline void QOpenGLFunctions_4_4_Core::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
2108 {
2109     d_3_1_Core->f.GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
2110 }
2111 
2112 inline void QOpenGLFunctions_4_4_Core::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
2113 {
2114     d_3_1_Core->f.GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
2115 }
2116 
2117 inline void QOpenGLFunctions_4_4_Core::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar *const *uniformNames, GLuint *uniformIndices)
2118 {
2119     d_3_1_Core->f.GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
2120 }
2121 
2122 inline void QOpenGLFunctions_4_4_Core::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
2123 {
2124     d_3_1_Core->f.CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
2125 }
2126 
2127 inline void QOpenGLFunctions_4_4_Core::glPrimitiveRestartIndex(GLuint index)
2128 {
2129     d_3_1_Core->f.PrimitiveRestartIndex(index);
2130 }
2131 
2132 inline void QOpenGLFunctions_4_4_Core::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
2133 {
2134     d_3_1_Core->f.TexBuffer(target, internalformat, buffer);
2135 }
2136 
2137 inline void QOpenGLFunctions_4_4_Core::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount)
2138 {
2139     d_3_1_Core->f.DrawElementsInstanced(mode, count, type, indices, instancecount);
2140 }
2141 
2142 inline void QOpenGLFunctions_4_4_Core::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
2143 {
2144     d_3_1_Core->f.DrawArraysInstanced(mode, first, count, instancecount);
2145 }
2146 
2147 
2148 // OpenGL 3.2 core functions
2149 inline void QOpenGLFunctions_4_4_Core::glSampleMaski(GLuint maskNumber, GLbitfield mask)
2150 {
2151     d_3_2_Core->f.SampleMaski(maskNumber, mask);
2152 }
2153 
2154 inline void QOpenGLFunctions_4_4_Core::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
2155 {
2156     d_3_2_Core->f.GetMultisamplefv(pname, index, val);
2157 }
2158 
2159 inline void QOpenGLFunctions_4_4_Core::glTexImage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
2160 {
2161     d_3_2_Core->f.TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
2162 }
2163 
2164 inline void QOpenGLFunctions_4_4_Core::glTexImage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
2165 {
2166     d_3_2_Core->f.TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
2167 }
2168 
2169 inline void QOpenGLFunctions_4_4_Core::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
2170 {
2171     d_3_2_Core->f.FramebufferTexture(target, attachment, texture, level);
2172 }
2173 
2174 inline void QOpenGLFunctions_4_4_Core::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
2175 {
2176     d_3_2_Core->f.GetBufferParameteri64v(target, pname, params);
2177 }
2178 
2179 inline void QOpenGLFunctions_4_4_Core::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
2180 {
2181     d_3_2_Core->f.GetInteger64i_v(target, index, data);
2182 }
2183 
2184 inline void QOpenGLFunctions_4_4_Core::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
2185 {
2186     d_3_2_Core->f.GetSynciv(sync, pname, bufSize, length, values);
2187 }
2188 
2189 inline void QOpenGLFunctions_4_4_Core::glGetInteger64v(GLenum pname, GLint64 *data)
2190 {
2191     d_3_2_Core->f.GetInteger64v(pname, data);
2192 }
2193 
2194 inline void QOpenGLFunctions_4_4_Core::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
2195 {
2196     d_3_2_Core->f.WaitSync(sync, flags, timeout);
2197 }
2198 
2199 inline GLenum QOpenGLFunctions_4_4_Core::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
2200 {
2201     return d_3_2_Core->f.ClientWaitSync(sync, flags, timeout);
2202 }
2203 
2204 inline void QOpenGLFunctions_4_4_Core::glDeleteSync(GLsync sync)
2205 {
2206     d_3_2_Core->f.DeleteSync(sync);
2207 }
2208 
2209 inline GLboolean QOpenGLFunctions_4_4_Core::glIsSync(GLsync sync)
2210 {
2211     return d_3_2_Core->f.IsSync(sync);
2212 }
2213 
2214 inline GLsync QOpenGLFunctions_4_4_Core::glFenceSync(GLenum condition, GLbitfield flags)
2215 {
2216     return d_3_2_Core->f.FenceSync(condition, flags);
2217 }
2218 
2219 inline void QOpenGLFunctions_4_4_Core::glProvokingVertex(GLenum mode)
2220 {
2221     d_3_2_Core->f.ProvokingVertex(mode);
2222 }
2223 
2224 inline void QOpenGLFunctions_4_4_Core::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const void *const *indices, GLsizei drawcount, const GLint *basevertex)
2225 {
2226     d_3_2_Core->f.MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
2227 }
2228 
2229 inline void QOpenGLFunctions_4_4_Core::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex)
2230 {
2231     d_3_2_Core->f.DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
2232 }
2233 
2234 inline void QOpenGLFunctions_4_4_Core::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex)
2235 {
2236     d_3_2_Core->f.DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
2237 }
2238 
2239 inline void QOpenGLFunctions_4_4_Core::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex)
2240 {
2241     d_3_2_Core->f.DrawElementsBaseVertex(mode, count, type, indices, basevertex);
2242 }
2243 
2244 
2245 // OpenGL 3.3 core functions
2246 inline void QOpenGLFunctions_4_4_Core::glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
2247 {
2248     d_3_3_Core->f.VertexAttribP4uiv(index, type, normalized, value);
2249 }
2250 
2251 inline void QOpenGLFunctions_4_4_Core::glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
2252 {
2253     d_3_3_Core->f.VertexAttribP4ui(index, type, normalized, value);
2254 }
2255 
2256 inline void QOpenGLFunctions_4_4_Core::glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
2257 {
2258     d_3_3_Core->f.VertexAttribP3uiv(index, type, normalized, value);
2259 }
2260 
2261 inline void QOpenGLFunctions_4_4_Core::glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
2262 {
2263     d_3_3_Core->f.VertexAttribP3ui(index, type, normalized, value);
2264 }
2265 
2266 inline void QOpenGLFunctions_4_4_Core::glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
2267 {
2268     d_3_3_Core->f.VertexAttribP2uiv(index, type, normalized, value);
2269 }
2270 
2271 inline void QOpenGLFunctions_4_4_Core::glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
2272 {
2273     d_3_3_Core->f.VertexAttribP2ui(index, type, normalized, value);
2274 }
2275 
2276 inline void QOpenGLFunctions_4_4_Core::glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
2277 {
2278     d_3_3_Core->f.VertexAttribP1uiv(index, type, normalized, value);
2279 }
2280 
2281 inline void QOpenGLFunctions_4_4_Core::glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
2282 {
2283     d_3_3_Core->f.VertexAttribP1ui(index, type, normalized, value);
2284 }
2285 
2286 inline void QOpenGLFunctions_4_4_Core::glVertexAttribDivisor(GLuint index, GLuint divisor)
2287 {
2288     d_3_3_Core->f.VertexAttribDivisor(index, divisor);
2289 }
2290 
2291 inline void QOpenGLFunctions_4_4_Core::glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)
2292 {
2293     d_3_3_Core->f.GetQueryObjectui64v(id, pname, params);
2294 }
2295 
2296 inline void QOpenGLFunctions_4_4_Core::glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)
2297 {
2298     d_3_3_Core->f.GetQueryObjecti64v(id, pname, params);
2299 }
2300 
2301 inline void QOpenGLFunctions_4_4_Core::glQueryCounter(GLuint id, GLenum target)
2302 {
2303     d_3_3_Core->f.QueryCounter(id, target);
2304 }
2305 
2306 inline void QOpenGLFunctions_4_4_Core::glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params)
2307 {
2308     d_3_3_Core->f.GetSamplerParameterIuiv(sampler, pname, params);
2309 }
2310 
2311 inline void QOpenGLFunctions_4_4_Core::glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
2312 {
2313     d_3_3_Core->f.GetSamplerParameterfv(sampler, pname, params);
2314 }
2315 
2316 inline void QOpenGLFunctions_4_4_Core::glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params)
2317 {
2318     d_3_3_Core->f.GetSamplerParameterIiv(sampler, pname, params);
2319 }
2320 
2321 inline void QOpenGLFunctions_4_4_Core::glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
2322 {
2323     d_3_3_Core->f.GetSamplerParameteriv(sampler, pname, params);
2324 }
2325 
2326 inline void QOpenGLFunctions_4_4_Core::glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)
2327 {
2328     d_3_3_Core->f.SamplerParameterIuiv(sampler, pname, param);
2329 }
2330 
2331 inline void QOpenGLFunctions_4_4_Core::glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)
2332 {
2333     d_3_3_Core->f.SamplerParameterIiv(sampler, pname, param);
2334 }
2335 
2336 inline void QOpenGLFunctions_4_4_Core::glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
2337 {
2338     d_3_3_Core->f.SamplerParameterfv(sampler, pname, param);
2339 }
2340 
2341 inline void QOpenGLFunctions_4_4_Core::glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
2342 {
2343     d_3_3_Core->f.SamplerParameterf(sampler, pname, param);
2344 }
2345 
2346 inline void QOpenGLFunctions_4_4_Core::glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
2347 {
2348     d_3_3_Core->f.SamplerParameteriv(sampler, pname, param);
2349 }
2350 
2351 inline void QOpenGLFunctions_4_4_Core::glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
2352 {
2353     d_3_3_Core->f.SamplerParameteri(sampler, pname, param);
2354 }
2355 
2356 inline void QOpenGLFunctions_4_4_Core::glBindSampler(GLuint unit, GLuint sampler)
2357 {
2358     d_3_3_Core->f.BindSampler(unit, sampler);
2359 }
2360 
2361 inline GLboolean QOpenGLFunctions_4_4_Core::glIsSampler(GLuint sampler)
2362 {
2363     return d_3_3_Core->f.IsSampler(sampler);
2364 }
2365 
2366 inline void QOpenGLFunctions_4_4_Core::glDeleteSamplers(GLsizei count, const GLuint *samplers)
2367 {
2368     d_3_3_Core->f.DeleteSamplers(count, samplers);
2369 }
2370 
2371 inline void QOpenGLFunctions_4_4_Core::glGenSamplers(GLsizei count, GLuint *samplers)
2372 {
2373     d_3_3_Core->f.GenSamplers(count, samplers);
2374 }
2375 
2376 inline GLint QOpenGLFunctions_4_4_Core::glGetFragDataIndex(GLuint program, const GLchar *name)
2377 {
2378     return d_3_3_Core->f.GetFragDataIndex(program, name);
2379 }
2380 
2381 inline void QOpenGLFunctions_4_4_Core::glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)
2382 {
2383     d_3_3_Core->f.BindFragDataLocationIndexed(program, colorNumber, index, name);
2384 }
2385 
2386 
2387 // OpenGL 4.0 core functions
2388 inline void QOpenGLFunctions_4_4_Core::glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params)
2389 {
2390     d_4_0_Core->f.GetQueryIndexediv(target, index, pname, params);
2391 }
2392 
2393 inline void QOpenGLFunctions_4_4_Core::glEndQueryIndexed(GLenum target, GLuint index)
2394 {
2395     d_4_0_Core->f.EndQueryIndexed(target, index);
2396 }
2397 
2398 inline void QOpenGLFunctions_4_4_Core::glBeginQueryIndexed(GLenum target, GLuint index, GLuint id)
2399 {
2400     d_4_0_Core->f.BeginQueryIndexed(target, index, id);
2401 }
2402 
2403 inline void QOpenGLFunctions_4_4_Core::glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream)
2404 {
2405     d_4_0_Core->f.DrawTransformFeedbackStream(mode, id, stream);
2406 }
2407 
2408 inline void QOpenGLFunctions_4_4_Core::glDrawTransformFeedback(GLenum mode, GLuint id)
2409 {
2410     d_4_0_Core->f.DrawTransformFeedback(mode, id);
2411 }
2412 
2413 inline void QOpenGLFunctions_4_4_Core::glResumeTransformFeedback()
2414 {
2415     d_4_0_Core->f.ResumeTransformFeedback();
2416 }
2417 
2418 inline void QOpenGLFunctions_4_4_Core::glPauseTransformFeedback()
2419 {
2420     d_4_0_Core->f.PauseTransformFeedback();
2421 }
2422 
2423 inline GLboolean QOpenGLFunctions_4_4_Core::glIsTransformFeedback(GLuint id)
2424 {
2425     return d_4_0_Core->f.IsTransformFeedback(id);
2426 }
2427 
2428 inline void QOpenGLFunctions_4_4_Core::glGenTransformFeedbacks(GLsizei n, GLuint *ids)
2429 {
2430     d_4_0_Core->f.GenTransformFeedbacks(n, ids);
2431 }
2432 
2433 inline void QOpenGLFunctions_4_4_Core::glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids)
2434 {
2435     d_4_0_Core->f.DeleteTransformFeedbacks(n, ids);
2436 }
2437 
2438 inline void QOpenGLFunctions_4_4_Core::glBindTransformFeedback(GLenum target, GLuint id)
2439 {
2440     d_4_0_Core->f.BindTransformFeedback(target, id);
2441 }
2442 
2443 inline void QOpenGLFunctions_4_4_Core::glPatchParameterfv(GLenum pname, const GLfloat *values)
2444 {
2445     d_4_0_Core->f.PatchParameterfv(pname, values);
2446 }
2447 
2448 inline void QOpenGLFunctions_4_4_Core::glPatchParameteri(GLenum pname, GLint value)
2449 {
2450     d_4_0_Core->f.PatchParameteri(pname, value);
2451 }
2452 
2453 inline void QOpenGLFunctions_4_4_Core::glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values)
2454 {
2455     d_4_0_Core->f.GetProgramStageiv(program, shadertype, pname, values);
2456 }
2457 
2458 inline void QOpenGLFunctions_4_4_Core::glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params)
2459 {
2460     d_4_0_Core->f.GetUniformSubroutineuiv(shadertype, location, params);
2461 }
2462 
2463 inline void QOpenGLFunctions_4_4_Core::glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices)
2464 {
2465     d_4_0_Core->f.UniformSubroutinesuiv(shadertype, count, indices);
2466 }
2467 
2468 inline void QOpenGLFunctions_4_4_Core::glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
2469 {
2470     d_4_0_Core->f.GetActiveSubroutineName(program, shadertype, index, bufsize, length, name);
2471 }
2472 
2473 inline void QOpenGLFunctions_4_4_Core::glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
2474 {
2475     d_4_0_Core->f.GetActiveSubroutineUniformName(program, shadertype, index, bufsize, length, name);
2476 }
2477 
2478 inline void QOpenGLFunctions_4_4_Core::glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values)
2479 {
2480     d_4_0_Core->f.GetActiveSubroutineUniformiv(program, shadertype, index, pname, values);
2481 }
2482 
2483 inline GLuint QOpenGLFunctions_4_4_Core::glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name)
2484 {
2485     return d_4_0_Core->f.GetSubroutineIndex(program, shadertype, name);
2486 }
2487 
2488 inline GLint QOpenGLFunctions_4_4_Core::glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name)
2489 {
2490     return d_4_0_Core->f.GetSubroutineUniformLocation(program, shadertype, name);
2491 }
2492 
2493 inline void QOpenGLFunctions_4_4_Core::glGetUniformdv(GLuint program, GLint location, GLdouble *params)
2494 {
2495     d_4_0_Core->f.GetUniformdv(program, location, params);
2496 }
2497 
2498 inline void QOpenGLFunctions_4_4_Core::glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2499 {
2500     d_4_0_Core->f.UniformMatrix4x3dv(location, count, transpose, value);
2501 }
2502 
2503 inline void QOpenGLFunctions_4_4_Core::glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2504 {
2505     d_4_0_Core->f.UniformMatrix4x2dv(location, count, transpose, value);
2506 }
2507 
2508 inline void QOpenGLFunctions_4_4_Core::glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2509 {
2510     d_4_0_Core->f.UniformMatrix3x4dv(location, count, transpose, value);
2511 }
2512 
2513 inline void QOpenGLFunctions_4_4_Core::glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2514 {
2515     d_4_0_Core->f.UniformMatrix3x2dv(location, count, transpose, value);
2516 }
2517 
2518 inline void QOpenGLFunctions_4_4_Core::glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2519 {
2520     d_4_0_Core->f.UniformMatrix2x4dv(location, count, transpose, value);
2521 }
2522 
2523 inline void QOpenGLFunctions_4_4_Core::glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2524 {
2525     d_4_0_Core->f.UniformMatrix2x3dv(location, count, transpose, value);
2526 }
2527 
2528 inline void QOpenGLFunctions_4_4_Core::glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2529 {
2530     d_4_0_Core->f.UniformMatrix4dv(location, count, transpose, value);
2531 }
2532 
2533 inline void QOpenGLFunctions_4_4_Core::glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2534 {
2535     d_4_0_Core->f.UniformMatrix3dv(location, count, transpose, value);
2536 }
2537 
2538 inline void QOpenGLFunctions_4_4_Core::glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2539 {
2540     d_4_0_Core->f.UniformMatrix2dv(location, count, transpose, value);
2541 }
2542 
2543 inline void QOpenGLFunctions_4_4_Core::glUniform4dv(GLint location, GLsizei count, const GLdouble *value)
2544 {
2545     d_4_0_Core->f.Uniform4dv(location, count, value);
2546 }
2547 
2548 inline void QOpenGLFunctions_4_4_Core::glUniform3dv(GLint location, GLsizei count, const GLdouble *value)
2549 {
2550     d_4_0_Core->f.Uniform3dv(location, count, value);
2551 }
2552 
2553 inline void QOpenGLFunctions_4_4_Core::glUniform2dv(GLint location, GLsizei count, const GLdouble *value)
2554 {
2555     d_4_0_Core->f.Uniform2dv(location, count, value);
2556 }
2557 
2558 inline void QOpenGLFunctions_4_4_Core::glUniform1dv(GLint location, GLsizei count, const GLdouble *value)
2559 {
2560     d_4_0_Core->f.Uniform1dv(location, count, value);
2561 }
2562 
2563 inline void QOpenGLFunctions_4_4_Core::glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
2564 {
2565     d_4_0_Core->f.Uniform4d(location, x, y, z, w);
2566 }
2567 
2568 inline void QOpenGLFunctions_4_4_Core::glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z)
2569 {
2570     d_4_0_Core->f.Uniform3d(location, x, y, z);
2571 }
2572 
2573 inline void QOpenGLFunctions_4_4_Core::glUniform2d(GLint location, GLdouble x, GLdouble y)
2574 {
2575     d_4_0_Core->f.Uniform2d(location, x, y);
2576 }
2577 
2578 inline void QOpenGLFunctions_4_4_Core::glUniform1d(GLint location, GLdouble x)
2579 {
2580     d_4_0_Core->f.Uniform1d(location, x);
2581 }
2582 
2583 inline void QOpenGLFunctions_4_4_Core::glDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect)
2584 {
2585     d_4_0_Core->f.DrawElementsIndirect(mode, type, indirect);
2586 }
2587 
2588 inline void QOpenGLFunctions_4_4_Core::glDrawArraysIndirect(GLenum mode, const void *indirect)
2589 {
2590     d_4_0_Core->f.DrawArraysIndirect(mode, indirect);
2591 }
2592 
2593 inline void QOpenGLFunctions_4_4_Core::glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
2594 {
2595     d_4_0_Core->f.BlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
2596 }
2597 
2598 inline void QOpenGLFunctions_4_4_Core::glBlendFunci(GLuint buf, GLenum src, GLenum dst)
2599 {
2600     d_4_0_Core->f.BlendFunci(buf, src, dst);
2601 }
2602 
2603 inline void QOpenGLFunctions_4_4_Core::glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha)
2604 {
2605     d_4_0_Core->f.BlendEquationSeparatei(buf, modeRGB, modeAlpha);
2606 }
2607 
2608 inline void QOpenGLFunctions_4_4_Core::glBlendEquationi(GLuint buf, GLenum mode)
2609 {
2610     d_4_0_Core->f.BlendEquationi(buf, mode);
2611 }
2612 
2613 inline void QOpenGLFunctions_4_4_Core::glMinSampleShading(GLfloat value)
2614 {
2615     d_4_0_Core->f.MinSampleShading(value);
2616 }
2617 
2618 
2619 // OpenGL 4.1 core functions
2620 inline void QOpenGLFunctions_4_4_Core::glGetDoublei_v(GLenum target, GLuint index, GLdouble *data)
2621 {
2622     d_4_1_Core->f.GetDoublei_v(target, index, data);
2623 }
2624 
2625 inline void QOpenGLFunctions_4_4_Core::glGetFloati_v(GLenum target, GLuint index, GLfloat *data)
2626 {
2627     d_4_1_Core->f.GetFloati_v(target, index, data);
2628 }
2629 
2630 inline void QOpenGLFunctions_4_4_Core::glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f)
2631 {
2632     d_4_1_Core->f.DepthRangeIndexed(index, n, f);
2633 }
2634 
2635 inline void QOpenGLFunctions_4_4_Core::glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v)
2636 {
2637     d_4_1_Core->f.DepthRangeArrayv(first, count, v);
2638 }
2639 
2640 inline void QOpenGLFunctions_4_4_Core::glScissorIndexedv(GLuint index, const GLint *v)
2641 {
2642     d_4_1_Core->f.ScissorIndexedv(index, v);
2643 }
2644 
2645 inline void QOpenGLFunctions_4_4_Core::glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height)
2646 {
2647     d_4_1_Core->f.ScissorIndexed(index, left, bottom, width, height);
2648 }
2649 
2650 inline void QOpenGLFunctions_4_4_Core::glScissorArrayv(GLuint first, GLsizei count, const GLint *v)
2651 {
2652     d_4_1_Core->f.ScissorArrayv(first, count, v);
2653 }
2654 
2655 inline void QOpenGLFunctions_4_4_Core::glViewportIndexedfv(GLuint index, const GLfloat *v)
2656 {
2657     d_4_1_Core->f.ViewportIndexedfv(index, v);
2658 }
2659 
2660 inline void QOpenGLFunctions_4_4_Core::glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h)
2661 {
2662     d_4_1_Core->f.ViewportIndexedf(index, x, y, w, h);
2663 }
2664 
2665 inline void QOpenGLFunctions_4_4_Core::glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v)
2666 {
2667     d_4_1_Core->f.ViewportArrayv(first, count, v);
2668 }
2669 
2670 inline void QOpenGLFunctions_4_4_Core::glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params)
2671 {
2672     d_4_1_Core->f.GetVertexAttribLdv(index, pname, params);
2673 }
2674 
2675 inline void QOpenGLFunctions_4_4_Core::glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer)
2676 {
2677     d_4_1_Core->f.VertexAttribLPointer(index, size, type, stride, pointer);
2678 }
2679 
2680 inline void QOpenGLFunctions_4_4_Core::glVertexAttribL4dv(GLuint index, const GLdouble *v)
2681 {
2682     d_4_1_Core->f.VertexAttribL4dv(index, v);
2683 }
2684 
2685 inline void QOpenGLFunctions_4_4_Core::glVertexAttribL3dv(GLuint index, const GLdouble *v)
2686 {
2687     d_4_1_Core->f.VertexAttribL3dv(index, v);
2688 }
2689 
2690 inline void QOpenGLFunctions_4_4_Core::glVertexAttribL2dv(GLuint index, const GLdouble *v)
2691 {
2692     d_4_1_Core->f.VertexAttribL2dv(index, v);
2693 }
2694 
2695 inline void QOpenGLFunctions_4_4_Core::glVertexAttribL1dv(GLuint index, const GLdouble *v)
2696 {
2697     d_4_1_Core->f.VertexAttribL1dv(index, v);
2698 }
2699 
2700 inline void QOpenGLFunctions_4_4_Core::glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
2701 {
2702     d_4_1_Core->f.VertexAttribL4d(index, x, y, z, w);
2703 }
2704 
2705 inline void QOpenGLFunctions_4_4_Core::glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
2706 {
2707     d_4_1_Core->f.VertexAttribL3d(index, x, y, z);
2708 }
2709 
2710 inline void QOpenGLFunctions_4_4_Core::glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y)
2711 {
2712     d_4_1_Core->f.VertexAttribL2d(index, x, y);
2713 }
2714 
2715 inline void QOpenGLFunctions_4_4_Core::glVertexAttribL1d(GLuint index, GLdouble x)
2716 {
2717     d_4_1_Core->f.VertexAttribL1d(index, x);
2718 }
2719 
2720 inline void QOpenGLFunctions_4_4_Core::glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
2721 {
2722     d_4_1_Core->f.GetProgramPipelineInfoLog(pipeline, bufSize, length, infoLog);
2723 }
2724 
2725 inline void QOpenGLFunctions_4_4_Core::glValidateProgramPipeline(GLuint pipeline)
2726 {
2727     d_4_1_Core->f.ValidateProgramPipeline(pipeline);
2728 }
2729 
2730 inline void QOpenGLFunctions_4_4_Core::glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2731 {
2732     d_4_1_Core->f.ProgramUniformMatrix4x3dv(program, location, count, transpose, value);
2733 }
2734 
2735 inline void QOpenGLFunctions_4_4_Core::glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2736 {
2737     d_4_1_Core->f.ProgramUniformMatrix3x4dv(program, location, count, transpose, value);
2738 }
2739 
2740 inline void QOpenGLFunctions_4_4_Core::glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2741 {
2742     d_4_1_Core->f.ProgramUniformMatrix4x2dv(program, location, count, transpose, value);
2743 }
2744 
2745 inline void QOpenGLFunctions_4_4_Core::glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2746 {
2747     d_4_1_Core->f.ProgramUniformMatrix2x4dv(program, location, count, transpose, value);
2748 }
2749 
2750 inline void QOpenGLFunctions_4_4_Core::glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2751 {
2752     d_4_1_Core->f.ProgramUniformMatrix3x2dv(program, location, count, transpose, value);
2753 }
2754 
2755 inline void QOpenGLFunctions_4_4_Core::glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2756 {
2757     d_4_1_Core->f.ProgramUniformMatrix2x3dv(program, location, count, transpose, value);
2758 }
2759 
2760 inline void QOpenGLFunctions_4_4_Core::glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2761 {
2762     d_4_1_Core->f.ProgramUniformMatrix4x3fv(program, location, count, transpose, value);
2763 }
2764 
2765 inline void QOpenGLFunctions_4_4_Core::glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2766 {
2767     d_4_1_Core->f.ProgramUniformMatrix3x4fv(program, location, count, transpose, value);
2768 }
2769 
2770 inline void QOpenGLFunctions_4_4_Core::glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2771 {
2772     d_4_1_Core->f.ProgramUniformMatrix4x2fv(program, location, count, transpose, value);
2773 }
2774 
2775 inline void QOpenGLFunctions_4_4_Core::glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2776 {
2777     d_4_1_Core->f.ProgramUniformMatrix2x4fv(program, location, count, transpose, value);
2778 }
2779 
2780 inline void QOpenGLFunctions_4_4_Core::glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2781 {
2782     d_4_1_Core->f.ProgramUniformMatrix3x2fv(program, location, count, transpose, value);
2783 }
2784 
2785 inline void QOpenGLFunctions_4_4_Core::glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2786 {
2787     d_4_1_Core->f.ProgramUniformMatrix2x3fv(program, location, count, transpose, value);
2788 }
2789 
2790 inline void QOpenGLFunctions_4_4_Core::glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2791 {
2792     d_4_1_Core->f.ProgramUniformMatrix4dv(program, location, count, transpose, value);
2793 }
2794 
2795 inline void QOpenGLFunctions_4_4_Core::glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2796 {
2797     d_4_1_Core->f.ProgramUniformMatrix3dv(program, location, count, transpose, value);
2798 }
2799 
2800 inline void QOpenGLFunctions_4_4_Core::glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2801 {
2802     d_4_1_Core->f.ProgramUniformMatrix2dv(program, location, count, transpose, value);
2803 }
2804 
2805 inline void QOpenGLFunctions_4_4_Core::glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2806 {
2807     d_4_1_Core->f.ProgramUniformMatrix4fv(program, location, count, transpose, value);
2808 }
2809 
2810 inline void QOpenGLFunctions_4_4_Core::glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2811 {
2812     d_4_1_Core->f.ProgramUniformMatrix3fv(program, location, count, transpose, value);
2813 }
2814 
2815 inline void QOpenGLFunctions_4_4_Core::glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2816 {
2817     d_4_1_Core->f.ProgramUniformMatrix2fv(program, location, count, transpose, value);
2818 }
2819 
2820 inline void QOpenGLFunctions_4_4_Core::glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
2821 {
2822     d_4_1_Core->f.ProgramUniform4uiv(program, location, count, value);
2823 }
2824 
2825 inline void QOpenGLFunctions_4_4_Core::glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
2826 {
2827     d_4_1_Core->f.ProgramUniform4ui(program, location, v0, v1, v2, v3);
2828 }
2829 
2830 inline void QOpenGLFunctions_4_4_Core::glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
2831 {
2832     d_4_1_Core->f.ProgramUniform4dv(program, location, count, value);
2833 }
2834 
2835 inline void QOpenGLFunctions_4_4_Core::glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3)
2836 {
2837     d_4_1_Core->f.ProgramUniform4d(program, location, v0, v1, v2, v3);
2838 }
2839 
2840 inline void QOpenGLFunctions_4_4_Core::glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
2841 {
2842     d_4_1_Core->f.ProgramUniform4fv(program, location, count, value);
2843 }
2844 
2845 inline void QOpenGLFunctions_4_4_Core::glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
2846 {
2847     d_4_1_Core->f.ProgramUniform4f(program, location, v0, v1, v2, v3);
2848 }
2849 
2850 inline void QOpenGLFunctions_4_4_Core::glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value)
2851 {
2852     d_4_1_Core->f.ProgramUniform4iv(program, location, count, value);
2853 }
2854 
2855 inline void QOpenGLFunctions_4_4_Core::glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
2856 {
2857     d_4_1_Core->f.ProgramUniform4i(program, location, v0, v1, v2, v3);
2858 }
2859 
2860 inline void QOpenGLFunctions_4_4_Core::glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
2861 {
2862     d_4_1_Core->f.ProgramUniform3uiv(program, location, count, value);
2863 }
2864 
2865 inline void QOpenGLFunctions_4_4_Core::glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2)
2866 {
2867     d_4_1_Core->f.ProgramUniform3ui(program, location, v0, v1, v2);
2868 }
2869 
2870 inline void QOpenGLFunctions_4_4_Core::glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
2871 {
2872     d_4_1_Core->f.ProgramUniform3dv(program, location, count, value);
2873 }
2874 
2875 inline void QOpenGLFunctions_4_4_Core::glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2)
2876 {
2877     d_4_1_Core->f.ProgramUniform3d(program, location, v0, v1, v2);
2878 }
2879 
2880 inline void QOpenGLFunctions_4_4_Core::glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
2881 {
2882     d_4_1_Core->f.ProgramUniform3fv(program, location, count, value);
2883 }
2884 
2885 inline void QOpenGLFunctions_4_4_Core::glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
2886 {
2887     d_4_1_Core->f.ProgramUniform3f(program, location, v0, v1, v2);
2888 }
2889 
2890 inline void QOpenGLFunctions_4_4_Core::glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value)
2891 {
2892     d_4_1_Core->f.ProgramUniform3iv(program, location, count, value);
2893 }
2894 
2895 inline void QOpenGLFunctions_4_4_Core::glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2)
2896 {
2897     d_4_1_Core->f.ProgramUniform3i(program, location, v0, v1, v2);
2898 }
2899 
2900 inline void QOpenGLFunctions_4_4_Core::glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
2901 {
2902     d_4_1_Core->f.ProgramUniform2uiv(program, location, count, value);
2903 }
2904 
2905 inline void QOpenGLFunctions_4_4_Core::glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1)
2906 {
2907     d_4_1_Core->f.ProgramUniform2ui(program, location, v0, v1);
2908 }
2909 
2910 inline void QOpenGLFunctions_4_4_Core::glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
2911 {
2912     d_4_1_Core->f.ProgramUniform2dv(program, location, count, value);
2913 }
2914 
2915 inline void QOpenGLFunctions_4_4_Core::glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1)
2916 {
2917     d_4_1_Core->f.ProgramUniform2d(program, location, v0, v1);
2918 }
2919 
2920 inline void QOpenGLFunctions_4_4_Core::glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
2921 {
2922     d_4_1_Core->f.ProgramUniform2fv(program, location, count, value);
2923 }
2924 
2925 inline void QOpenGLFunctions_4_4_Core::glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1)
2926 {
2927     d_4_1_Core->f.ProgramUniform2f(program, location, v0, v1);
2928 }
2929 
2930 inline void QOpenGLFunctions_4_4_Core::glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value)
2931 {
2932     d_4_1_Core->f.ProgramUniform2iv(program, location, count, value);
2933 }
2934 
2935 inline void QOpenGLFunctions_4_4_Core::glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1)
2936 {
2937     d_4_1_Core->f.ProgramUniform2i(program, location, v0, v1);
2938 }
2939 
2940 inline void QOpenGLFunctions_4_4_Core::glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
2941 {
2942     d_4_1_Core->f.ProgramUniform1uiv(program, location, count, value);
2943 }
2944 
2945 inline void QOpenGLFunctions_4_4_Core::glProgramUniform1ui(GLuint program, GLint location, GLuint v0)
2946 {
2947     d_4_1_Core->f.ProgramUniform1ui(program, location, v0);
2948 }
2949 
2950 inline void QOpenGLFunctions_4_4_Core::glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
2951 {
2952     d_4_1_Core->f.ProgramUniform1dv(program, location, count, value);
2953 }
2954 
2955 inline void QOpenGLFunctions_4_4_Core::glProgramUniform1d(GLuint program, GLint location, GLdouble v0)
2956 {
2957     d_4_1_Core->f.ProgramUniform1d(program, location, v0);
2958 }
2959 
2960 inline void QOpenGLFunctions_4_4_Core::glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
2961 {
2962     d_4_1_Core->f.ProgramUniform1fv(program, location, count, value);
2963 }
2964 
2965 inline void QOpenGLFunctions_4_4_Core::glProgramUniform1f(GLuint program, GLint location, GLfloat v0)
2966 {
2967     d_4_1_Core->f.ProgramUniform1f(program, location, v0);
2968 }
2969 
2970 inline void QOpenGLFunctions_4_4_Core::glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value)
2971 {
2972     d_4_1_Core->f.ProgramUniform1iv(program, location, count, value);
2973 }
2974 
2975 inline void QOpenGLFunctions_4_4_Core::glProgramUniform1i(GLuint program, GLint location, GLint v0)
2976 {
2977     d_4_1_Core->f.ProgramUniform1i(program, location, v0);
2978 }
2979 
2980 inline void QOpenGLFunctions_4_4_Core::glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params)
2981 {
2982     d_4_1_Core->f.GetProgramPipelineiv(pipeline, pname, params);
2983 }
2984 
2985 inline GLboolean QOpenGLFunctions_4_4_Core::glIsProgramPipeline(GLuint pipeline)
2986 {
2987     return d_4_1_Core->f.IsProgramPipeline(pipeline);
2988 }
2989 
2990 inline void QOpenGLFunctions_4_4_Core::glGenProgramPipelines(GLsizei n, GLuint *pipelines)
2991 {
2992     d_4_1_Core->f.GenProgramPipelines(n, pipelines);
2993 }
2994 
2995 inline void QOpenGLFunctions_4_4_Core::glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines)
2996 {
2997     d_4_1_Core->f.DeleteProgramPipelines(n, pipelines);
2998 }
2999 
3000 inline void QOpenGLFunctions_4_4_Core::glBindProgramPipeline(GLuint pipeline)
3001 {
3002     d_4_1_Core->f.BindProgramPipeline(pipeline);
3003 }
3004 
3005 inline GLuint QOpenGLFunctions_4_4_Core::glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar *const *strings)
3006 {
3007     return d_4_1_Core->f.CreateShaderProgramv(type, count, strings);
3008 }
3009 
3010 inline void QOpenGLFunctions_4_4_Core::glActiveShaderProgram(GLuint pipeline, GLuint program)
3011 {
3012     d_4_1_Core->f.ActiveShaderProgram(pipeline, program);
3013 }
3014 
3015 inline void QOpenGLFunctions_4_4_Core::glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program)
3016 {
3017     d_4_1_Core->f.UseProgramStages(pipeline, stages, program);
3018 }
3019 
3020 inline void QOpenGLFunctions_4_4_Core::glProgramParameteri(GLuint program, GLenum pname, GLint value)
3021 {
3022     d_4_1_Core->f.ProgramParameteri(program, pname, value);
3023 }
3024 
3025 inline void QOpenGLFunctions_4_4_Core::glProgramBinary(GLuint program, GLenum binaryFormat, const void *binary, GLsizei length)
3026 {
3027     d_4_1_Core->f.ProgramBinary(program, binaryFormat, binary, length);
3028 }
3029 
3030 inline void QOpenGLFunctions_4_4_Core::glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary)
3031 {
3032     d_4_1_Core->f.GetProgramBinary(program, bufSize, length, binaryFormat, binary);
3033 }
3034 
3035 inline void QOpenGLFunctions_4_4_Core::glClearDepthf(GLfloat dd)
3036 {
3037     d_4_1_Core->f.ClearDepthf(dd);
3038 }
3039 
3040 inline void QOpenGLFunctions_4_4_Core::glDepthRangef(GLfloat n, GLfloat f)
3041 {
3042     d_4_1_Core->f.DepthRangef(n, f);
3043 }
3044 
3045 inline void QOpenGLFunctions_4_4_Core::glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)
3046 {
3047     d_4_1_Core->f.GetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
3048 }
3049 
3050 inline void QOpenGLFunctions_4_4_Core::glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const void *binary, GLsizei length)
3051 {
3052     d_4_1_Core->f.ShaderBinary(count, shaders, binaryformat, binary, length);
3053 }
3054 
3055 inline void QOpenGLFunctions_4_4_Core::glReleaseShaderCompiler()
3056 {
3057     d_4_1_Core->f.ReleaseShaderCompiler();
3058 }
3059 
3060 
3061 // OpenGL 4.2 core functions
3062 inline void QOpenGLFunctions_4_4_Core::glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount)
3063 {
3064     d_4_2_Core->f.DrawTransformFeedbackStreamInstanced(mode, id, stream, instancecount);
3065 }
3066 
3067 inline void QOpenGLFunctions_4_4_Core::glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount)
3068 {
3069     d_4_2_Core->f.DrawTransformFeedbackInstanced(mode, id, instancecount);
3070 }
3071 
3072 inline void QOpenGLFunctions_4_4_Core::glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth)
3073 {
3074     d_4_2_Core->f.TexStorage3D(target, levels, internalformat, width, height, depth);
3075 }
3076 
3077 inline void QOpenGLFunctions_4_4_Core::glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)
3078 {
3079     d_4_2_Core->f.TexStorage2D(target, levels, internalformat, width, height);
3080 }
3081 
3082 inline void QOpenGLFunctions_4_4_Core::glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width)
3083 {
3084     d_4_2_Core->f.TexStorage1D(target, levels, internalformat, width);
3085 }
3086 
3087 inline void QOpenGLFunctions_4_4_Core::glMemoryBarrier(GLbitfield barriers)
3088 {
3089     d_4_2_Core->f.MemoryBarrier(barriers);
3090 }
3091 
3092 inline void QOpenGLFunctions_4_4_Core::glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format)
3093 {
3094     d_4_2_Core->f.BindImageTexture(unit, texture, level, layered, layer, access, format);
3095 }
3096 
3097 inline void QOpenGLFunctions_4_4_Core::glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params)
3098 {
3099     d_4_2_Core->f.GetActiveAtomicCounterBufferiv(program, bufferIndex, pname, params);
3100 }
3101 
3102 inline void QOpenGLFunctions_4_4_Core::glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params)
3103 {
3104     d_4_2_Core->f.GetInternalformativ(target, internalformat, pname, bufSize, params);
3105 }
3106 
3107 inline void QOpenGLFunctions_4_4_Core::glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance)
3108 {
3109     d_4_2_Core->f.DrawElementsInstancedBaseVertexBaseInstance(mode, count, type, indices, instancecount, basevertex, baseinstance);
3110 }
3111 
3112 inline void QOpenGLFunctions_4_4_Core::glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance)
3113 {
3114     d_4_2_Core->f.DrawElementsInstancedBaseInstance(mode, count, type, indices, instancecount, baseinstance);
3115 }
3116 
3117 inline void QOpenGLFunctions_4_4_Core::glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance)
3118 {
3119     d_4_2_Core->f.DrawArraysInstancedBaseInstance(mode, first, count, instancecount, baseinstance);
3120 }
3121 
3122 
3123 // OpenGL 4.3 core functions
3124 inline void QOpenGLFunctions_4_4_Core::glGetObjectPtrLabel(const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label)
3125 {
3126     d_4_3_Core->f.GetObjectPtrLabel(ptr, bufSize, length, label);
3127 }
3128 
3129 inline void QOpenGLFunctions_4_4_Core::glObjectPtrLabel(const void *ptr, GLsizei length, const GLchar *label)
3130 {
3131     d_4_3_Core->f.ObjectPtrLabel(ptr, length, label);
3132 }
3133 
3134 inline void QOpenGLFunctions_4_4_Core::glGetObjectLabel(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label)
3135 {
3136     d_4_3_Core->f.GetObjectLabel(identifier, name, bufSize, length, label);
3137 }
3138 
3139 inline void QOpenGLFunctions_4_4_Core::glObjectLabel(GLenum identifier, GLuint name, GLsizei length, const GLchar *label)
3140 {
3141     d_4_3_Core->f.ObjectLabel(identifier, name, length, label);
3142 }
3143 
3144 inline void QOpenGLFunctions_4_4_Core::glPopDebugGroup()
3145 {
3146     d_4_3_Core->f.PopDebugGroup();
3147 }
3148 
3149 inline void QOpenGLFunctions_4_4_Core::glPushDebugGroup(GLenum source, GLuint id, GLsizei length, const GLchar *message)
3150 {
3151     d_4_3_Core->f.PushDebugGroup(source, id, length, message);
3152 }
3153 
3154 inline GLuint QOpenGLFunctions_4_4_Core::glGetDebugMessageLog(GLuint count, GLsizei bufSize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog)
3155 {
3156     return d_4_3_Core->f.GetDebugMessageLog(count, bufSize, sources, types, ids, severities, lengths, messageLog);
3157 }
3158 
3159 inline void QOpenGLFunctions_4_4_Core::glDebugMessageCallback(GLDEBUGPROC callback, const void *userParam)
3160 {
3161     d_4_3_Core->f.DebugMessageCallback(callback, userParam);
3162 }
3163 
3164 inline void QOpenGLFunctions_4_4_Core::glDebugMessageInsert(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf)
3165 {
3166     d_4_3_Core->f.DebugMessageInsert(source, type, id, severity, length, buf);
3167 }
3168 
3169 inline void QOpenGLFunctions_4_4_Core::glDebugMessageControl(GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled)
3170 {
3171     d_4_3_Core->f.DebugMessageControl(source, type, severity, count, ids, enabled);
3172 }
3173 
3174 inline void QOpenGLFunctions_4_4_Core::glVertexBindingDivisor(GLuint bindingindex, GLuint divisor)
3175 {
3176     d_4_3_Core->f.VertexBindingDivisor(bindingindex, divisor);
3177 }
3178 
3179 inline void QOpenGLFunctions_4_4_Core::glVertexAttribBinding(GLuint attribindex, GLuint bindingindex)
3180 {
3181     d_4_3_Core->f.VertexAttribBinding(attribindex, bindingindex);
3182 }
3183 
3184 inline void QOpenGLFunctions_4_4_Core::glVertexAttribLFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)
3185 {
3186     d_4_3_Core->f.VertexAttribLFormat(attribindex, size, type, relativeoffset);
3187 }
3188 
3189 inline void QOpenGLFunctions_4_4_Core::glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)
3190 {
3191     d_4_3_Core->f.VertexAttribIFormat(attribindex, size, type, relativeoffset);
3192 }
3193 
3194 inline void QOpenGLFunctions_4_4_Core::glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset)
3195 {
3196     d_4_3_Core->f.VertexAttribFormat(attribindex, size, type, normalized, relativeoffset);
3197 }
3198 
3199 inline void QOpenGLFunctions_4_4_Core::glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride)
3200 {
3201     d_4_3_Core->f.BindVertexBuffer(bindingindex, buffer, offset, stride);
3202 }
3203 
3204 inline void QOpenGLFunctions_4_4_Core::glTextureView(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers)
3205 {
3206     d_4_3_Core->f.TextureView(texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers);
3207 }
3208 
3209 inline void QOpenGLFunctions_4_4_Core::glTexStorage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
3210 {
3211     d_4_3_Core->f.TexStorage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
3212 }
3213 
3214 inline void QOpenGLFunctions_4_4_Core::glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
3215 {
3216     d_4_3_Core->f.TexStorage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
3217 }
3218 
3219 inline void QOpenGLFunctions_4_4_Core::glTexBufferRange(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size)
3220 {
3221     d_4_3_Core->f.TexBufferRange(target, internalformat, buffer, offset, size);
3222 }
3223 
3224 inline void QOpenGLFunctions_4_4_Core::glShaderStorageBlockBinding(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding)
3225 {
3226     d_4_3_Core->f.ShaderStorageBlockBinding(program, storageBlockIndex, storageBlockBinding);
3227 }
3228 
3229 inline GLint QOpenGLFunctions_4_4_Core::glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface, const GLchar *name)
3230 {
3231     return d_4_3_Core->f.GetProgramResourceLocationIndex(program, programInterface, name);
3232 }
3233 
3234 inline GLint QOpenGLFunctions_4_4_Core::glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar *name)
3235 {
3236     return d_4_3_Core->f.GetProgramResourceLocation(program, programInterface, name);
3237 }
3238 
3239 inline void QOpenGLFunctions_4_4_Core::glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params)
3240 {
3241     d_4_3_Core->f.GetProgramResourceiv(program, programInterface, index, propCount, props, bufSize, length, params);
3242 }
3243 
3244 inline void QOpenGLFunctions_4_4_Core::glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name)
3245 {
3246     d_4_3_Core->f.GetProgramResourceName(program, programInterface, index, bufSize, length, name);
3247 }
3248 
3249 inline GLuint QOpenGLFunctions_4_4_Core::glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name)
3250 {
3251     return d_4_3_Core->f.GetProgramResourceIndex(program, programInterface, name);
3252 }
3253 
3254 inline void QOpenGLFunctions_4_4_Core::glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint *params)
3255 {
3256     d_4_3_Core->f.GetProgramInterfaceiv(program, programInterface, pname, params);
3257 }
3258 
3259 inline void QOpenGLFunctions_4_4_Core::glMultiDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride)
3260 {
3261     d_4_3_Core->f.MultiDrawElementsIndirect(mode, type, indirect, drawcount, stride);
3262 }
3263 
3264 inline void QOpenGLFunctions_4_4_Core::glMultiDrawArraysIndirect(GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride)
3265 {
3266     d_4_3_Core->f.MultiDrawArraysIndirect(mode, indirect, drawcount, stride);
3267 }
3268 
3269 inline void QOpenGLFunctions_4_4_Core::glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height)
3270 {
3271     d_4_3_Core->f.InvalidateSubFramebuffer(target, numAttachments, attachments, x, y, width, height);
3272 }
3273 
3274 inline void QOpenGLFunctions_4_4_Core::glInvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments)
3275 {
3276     d_4_3_Core->f.InvalidateFramebuffer(target, numAttachments, attachments);
3277 }
3278 
3279 inline void QOpenGLFunctions_4_4_Core::glInvalidateBufferData(GLuint buffer)
3280 {
3281     d_4_3_Core->f.InvalidateBufferData(buffer);
3282 }
3283 
3284 inline void QOpenGLFunctions_4_4_Core::glInvalidateBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr length)
3285 {
3286     d_4_3_Core->f.InvalidateBufferSubData(buffer, offset, length);
3287 }
3288 
3289 inline void QOpenGLFunctions_4_4_Core::glInvalidateTexImage(GLuint texture, GLint level)
3290 {
3291     d_4_3_Core->f.InvalidateTexImage(texture, level);
3292 }
3293 
3294 inline void QOpenGLFunctions_4_4_Core::glInvalidateTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth)
3295 {
3296     d_4_3_Core->f.InvalidateTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth);
3297 }
3298 
3299 inline void QOpenGLFunctions_4_4_Core::glGetInternalformati64v(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params)
3300 {
3301     d_4_3_Core->f.GetInternalformati64v(target, internalformat, pname, bufSize, params);
3302 }
3303 
3304 inline void QOpenGLFunctions_4_4_Core::glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params)
3305 {
3306     d_4_3_Core->f.GetFramebufferParameteriv(target, pname, params);
3307 }
3308 
3309 inline void QOpenGLFunctions_4_4_Core::glFramebufferParameteri(GLenum target, GLenum pname, GLint param)
3310 {
3311     d_4_3_Core->f.FramebufferParameteri(target, pname, param);
3312 }
3313 
3314 inline void QOpenGLFunctions_4_4_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)
3315 {
3316     d_4_3_Core->f.CopyImageSubData(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth);
3317 }
3318 
3319 inline void QOpenGLFunctions_4_4_Core::glDispatchComputeIndirect(GLintptr indirect)
3320 {
3321     d_4_3_Core->f.DispatchComputeIndirect(indirect);
3322 }
3323 
3324 inline void QOpenGLFunctions_4_4_Core::glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z)
3325 {
3326     d_4_3_Core->f.DispatchCompute(num_groups_x, num_groups_y, num_groups_z);
3327 }
3328 
3329 inline void QOpenGLFunctions_4_4_Core::glClearBufferSubData(GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data)
3330 {
3331     d_4_3_Core->f.ClearBufferSubData(target, internalformat, offset, size, format, type, data);
3332 }
3333 
3334 inline void QOpenGLFunctions_4_4_Core::glClearBufferData(GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data)
3335 {
3336     d_4_3_Core->f.ClearBufferData(target, internalformat, format, type, data);
3337 }
3338 
3339 
3340 // OpenGL 4.4 core functions
3341 inline void QOpenGLFunctions_4_4_Core::glBindVertexBuffers(GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizei *strides)
3342 {
3343     d_4_4_Core->f.BindVertexBuffers(first, count, buffers, offsets, strides);
3344 }
3345 
3346 inline void QOpenGLFunctions_4_4_Core::glBindImageTextures(GLuint first, GLsizei count, const GLuint *textures)
3347 {
3348     d_4_4_Core->f.BindImageTextures(first, count, textures);
3349 }
3350 
3351 inline void QOpenGLFunctions_4_4_Core::glBindSamplers(GLuint first, GLsizei count, const GLuint *samplers)
3352 {
3353     d_4_4_Core->f.BindSamplers(first, count, samplers);
3354 }
3355 
3356 inline void QOpenGLFunctions_4_4_Core::glBindTextures(GLuint first, GLsizei count, const GLuint *textures)
3357 {
3358     d_4_4_Core->f.BindTextures(first, count, textures);
3359 }
3360 
3361 inline void QOpenGLFunctions_4_4_Core::glBindBuffersRange(GLenum target, GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizeiptr *sizes)
3362 {
3363     d_4_4_Core->f.BindBuffersRange(target, first, count, buffers, offsets, sizes);
3364 }
3365 
3366 inline void QOpenGLFunctions_4_4_Core::glBindBuffersBase(GLenum target, GLuint first, GLsizei count, const GLuint *buffers)
3367 {
3368     d_4_4_Core->f.BindBuffersBase(target, first, count, buffers);
3369 }
3370 
3371 inline void QOpenGLFunctions_4_4_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)
3372 {
3373     d_4_4_Core->f.ClearTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, data);
3374 }
3375 
3376 inline void QOpenGLFunctions_4_4_Core::glClearTexImage(GLuint texture, GLint level, GLenum format, GLenum type, const void *data)
3377 {
3378     d_4_4_Core->f.ClearTexImage(texture, level, format, type, data);
3379 }
3380 
3381 inline void QOpenGLFunctions_4_4_Core::glBufferStorage(GLenum target, GLsizeiptr size, const void *data, GLbitfield flags)
3382 {
3383     d_4_4_Core->f.BufferStorage(target, size, data, flags);
3384 }
3385 
3386 
3387 
3388 QT_END_NAMESPACE
3389 
3390 #ifdef Q_OS_WIN
3391 #pragma pop_macro("MemoryBarrier")
3392 #endif
3393 
3394 #endif // QT_NO_OPENGL && !QT_CONFIG(opengles2)
3395 
3396 #endif