Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-02-21 10:11:59

0001 // Copyright (C) 2013 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_2_CORE_H
0016 #define QOPENGLVERSIONFUNCTIONS_4_2_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_2_Core : public QAbstractOpenGLFunctions
0035 {
0036 public:
0037     QOpenGLFunctions_4_2_Core();
0038     ~QOpenGLFunctions_4_2_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, GLvoid *pixels);
0051     const GLubyte * glGetString(GLenum name);
0052     void glGetIntegerv(GLenum pname, GLint *params);
0053     void glGetFloatv(GLenum pname, GLfloat *params);
0054     GLenum glGetError();
0055     void glGetDoublev(GLenum pname, GLdouble *params);
0056     void glGetBooleanv(GLenum pname, GLboolean *params);
0057     void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
0058     void glReadBuffer(GLenum mode);
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 mode);
0078     void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
0079     void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *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 GLvoid *pixels);
0098     void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *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 GLvoid *indices);
0105     void glDrawArrays(GLenum mode, GLint first, GLsizei count);
0106 
0107     // OpenGL 1.2 core functions
0108     void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
0109     void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
0110     void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
0111     void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
0112     void glBlendEquation(GLenum mode);
0113     void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
0114 
0115     // OpenGL 1.3 core functions
0116     void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
0117     void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
0118     void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *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 GLvoid *data);
0120     void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
0121     void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
0122     void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *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 GLvoid* 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, GLvoid* *params);
0137     void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
0138     GLboolean glUnmapBuffer(GLenum target);
0139     GLvoid* glMapBuffer(GLenum target, GLenum access);
0140     void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
0141     void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
0142     void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *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 GLvoid *pointer);
0158     void glValidateProgram(GLuint program);
0159     void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0160     void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0161     void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0162     void glUniform4iv(GLint location, GLsizei count, const GLint *value);
0163     void glUniform3iv(GLint location, GLsizei count, const GLint *value);
0164     void glUniform2iv(GLint location, GLsizei count, const GLint *value);
0165     void glUniform1iv(GLint location, GLsizei count, const GLint *value);
0166     void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
0167     void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
0168     void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
0169     void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
0170     void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
0171     void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
0172     void glUniform2i(GLint location, GLint v0, GLint v1);
0173     void glUniform1i(GLint location, GLint v0);
0174     void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
0175     void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
0176     void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
0177     void glUniform1f(GLint location, GLfloat v0);
0178     void glUseProgram(GLuint program);
0179     void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
0180     void glLinkProgram(GLuint program);
0181     GLboolean glIsShader(GLuint shader);
0182     GLboolean glIsProgram(GLuint program);
0183     void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
0184     void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
0185     void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
0186     void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
0187     void glGetUniformiv(GLuint program, GLint location, GLint *params);
0188     void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
0189     GLint glGetUniformLocation(GLuint program, const GLchar *name);
0190     void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
0191     void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
0192     void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
0193     void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
0194     void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
0195     GLint glGetAttribLocation(GLuint program, const GLchar *name);
0196     void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
0197     void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
0198     void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
0199     void glEnableVertexAttribArray(GLuint index);
0200     void glDisableVertexAttribArray(GLuint index);
0201     void glDetachShader(GLuint program, GLuint shader);
0202     void glDeleteShader(GLuint shader);
0203     void glDeleteProgram(GLuint program);
0204     GLuint glCreateShader(GLenum type);
0205     GLuint glCreateProgram();
0206     void glCompileShader(GLuint shader);
0207     void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
0208     void glAttachShader(GLuint program, GLuint shader);
0209     void glStencilMaskSeparate(GLenum face, GLuint mask);
0210     void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
0211     void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
0212     void glDrawBuffers(GLsizei n, const GLenum *bufs);
0213     void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
0214 
0215     // OpenGL 2.1 core functions
0216     void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0217     void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0218     void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0219     void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0220     void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0221     void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0222 
0223     // OpenGL 3.0 core functions
0224     GLboolean glIsVertexArray(GLuint array);
0225     void glGenVertexArrays(GLsizei n, GLuint *arrays);
0226     void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
0227     void glBindVertexArray(GLuint array);
0228     void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
0229     GLvoid* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
0230     void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
0231     void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
0232     void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
0233     void glGenerateMipmap(GLenum target);
0234     void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
0235     void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
0236     void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
0237     void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
0238     void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
0239     GLenum glCheckFramebufferStatus(GLenum target);
0240     void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
0241     void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
0242     void glBindFramebuffer(GLenum target, GLuint framebuffer);
0243     GLboolean glIsFramebuffer(GLuint framebuffer);
0244     void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
0245     void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
0246     void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
0247     void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
0248     void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
0249     GLboolean glIsRenderbuffer(GLuint renderbuffer);
0250     const GLubyte * glGetStringi(GLenum name, GLuint index);
0251     void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
0252     void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
0253     void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
0254     void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
0255     void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
0256     void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
0257     void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
0258     void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
0259     void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
0260     void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
0261     void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
0262     void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
0263     void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
0264     void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
0265     void glUniform2ui(GLint location, GLuint v0, GLuint v1);
0266     void glUniform1ui(GLint location, GLuint v0);
0267     GLint glGetFragDataLocation(GLuint program, const GLchar *name);
0268     void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
0269     void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
0270     void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
0271     void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
0272     void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
0273     void glEndConditionalRender();
0274     void glBeginConditionalRender(GLuint id, GLenum mode);
0275     void glClampColor(GLenum target, GLenum clamp);
0276     void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
0277     void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
0278     void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
0279     void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
0280     void glEndTransformFeedback();
0281     void glBeginTransformFeedback(GLenum primitiveMode);
0282     GLboolean glIsEnabledi(GLenum target, GLuint index);
0283     void glDisablei(GLenum target, GLuint index);
0284     void glEnablei(GLenum target, GLuint index);
0285     void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
0286     void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
0287     void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
0288 
0289     // OpenGL 3.1 core functions
0290     void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
0291     void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
0292     void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
0293     void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
0294     GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
0295     void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
0296     void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
0297     void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
0298     void glPrimitiveRestartIndex(GLuint index);
0299     void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
0300     void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
0301     void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
0302 
0303     // OpenGL 3.2 core functions
0304     void glSampleMaski(GLuint index, GLbitfield mask);
0305     void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
0306     void glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
0307     void glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
0308     void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
0309     void glGetInteger64v(GLenum pname, GLint64 *params);
0310     void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
0311     GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
0312     void glDeleteSync(GLsync sync);
0313     GLboolean glIsSync(GLsync sync);
0314     GLsync glFenceSync(GLenum condition, GLbitfield flags);
0315     void glProvokingVertex(GLenum mode);
0316     void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
0317     void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex);
0318     void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
0319     void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
0320     void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
0321     void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
0322     void glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
0323 
0324     // OpenGL 3.3 core functions
0325     void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
0326     void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
0327     void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
0328     void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
0329     void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
0330     void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
0331     void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
0332     void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
0333     void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params);
0334     void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params);
0335     void glQueryCounter(GLuint id, GLenum target);
0336     void glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params);
0337     void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
0338     void glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params);
0339     void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
0340     void glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param);
0341     void glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param);
0342     void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param);
0343     void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
0344     void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param);
0345     void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param);
0346     void glBindSampler(GLuint unit, GLuint sampler);
0347     GLboolean glIsSampler(GLuint sampler);
0348     void glDeleteSamplers(GLsizei count, const GLuint *samplers);
0349     void glGenSamplers(GLsizei count, GLuint *samplers);
0350     GLint glGetFragDataIndex(GLuint program, const GLchar *name);
0351     void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
0352     void glVertexAttribDivisor(GLuint index, GLuint divisor);
0353 
0354     // OpenGL 4.0 core functions
0355     void glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params);
0356     void glEndQueryIndexed(GLenum target, GLuint index);
0357     void glBeginQueryIndexed(GLenum target, GLuint index, GLuint id);
0358     void glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream);
0359     void glDrawTransformFeedback(GLenum mode, GLuint id);
0360     void glResumeTransformFeedback();
0361     void glPauseTransformFeedback();
0362     GLboolean glIsTransformFeedback(GLuint id);
0363     void glGenTransformFeedbacks(GLsizei n, GLuint *ids);
0364     void glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids);
0365     void glBindTransformFeedback(GLenum target, GLuint id);
0366     void glPatchParameterfv(GLenum pname, const GLfloat *values);
0367     void glPatchParameteri(GLenum pname, GLint value);
0368     void glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values);
0369     void glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params);
0370     void glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices);
0371     void glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
0372     void glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
0373     void glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
0374     GLuint glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name);
0375     GLint glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name);
0376     void glGetUniformdv(GLuint program, GLint location, GLdouble *params);
0377     void glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0378     void glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0379     void glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0380     void glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0381     void glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0382     void glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0383     void glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0384     void glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0385     void glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0386     void glUniform4dv(GLint location, GLsizei count, const GLdouble *value);
0387     void glUniform3dv(GLint location, GLsizei count, const GLdouble *value);
0388     void glUniform2dv(GLint location, GLsizei count, const GLdouble *value);
0389     void glUniform1dv(GLint location, GLsizei count, const GLdouble *value);
0390     void glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
0391     void glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z);
0392     void glUniform2d(GLint location, GLdouble x, GLdouble y);
0393     void glUniform1d(GLint location, GLdouble x);
0394     void glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect);
0395     void glDrawArraysIndirect(GLenum mode, const GLvoid *indirect);
0396     void glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
0397     void glBlendFunci(GLuint buf, GLenum src, GLenum dst);
0398     void glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha);
0399     void glBlendEquationi(GLuint buf, GLenum mode);
0400     void glMinSampleShading(GLfloat value);
0401 
0402     // OpenGL 4.1 core functions
0403     void glGetDoublei_v(GLenum target, GLuint index, GLdouble *data);
0404     void glGetFloati_v(GLenum target, GLuint index, GLfloat *data);
0405     void glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f);
0406     void glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v);
0407     void glScissorIndexedv(GLuint index, const GLint *v);
0408     void glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
0409     void glScissorArrayv(GLuint first, GLsizei count, const GLint *v);
0410     void glViewportIndexedfv(GLuint index, const GLfloat *v);
0411     void glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
0412     void glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v);
0413     void glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params);
0414     void glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
0415     void glVertexAttribL4dv(GLuint index, const GLdouble *v);
0416     void glVertexAttribL3dv(GLuint index, const GLdouble *v);
0417     void glVertexAttribL2dv(GLuint index, const GLdouble *v);
0418     void glVertexAttribL1dv(GLuint index, const GLdouble *v);
0419     void glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
0420     void glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
0421     void glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y);
0422     void glVertexAttribL1d(GLuint index, GLdouble x);
0423     void glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
0424     void glValidateProgramPipeline(GLuint pipeline);
0425     void glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0426     void glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0427     void glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0428     void glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0429     void glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0430     void glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0431     void glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0432     void glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0433     void glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0434     void glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0435     void glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0436     void glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0437     void glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0438     void glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0439     void glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
0440     void glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0441     void glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0442     void glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
0443     void glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
0444     void glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
0445     void glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
0446     void glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3);
0447     void glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
0448     void glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
0449     void glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value);
0450     void glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
0451     void glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
0452     void glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
0453     void glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
0454     void glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2);
0455     void glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
0456     void glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
0457     void glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value);
0458     void glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
0459     void glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
0460     void glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1);
0461     void glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
0462     void glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1);
0463     void glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
0464     void glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1);
0465     void glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value);
0466     void glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1);
0467     void glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
0468     void glProgramUniform1ui(GLuint program, GLint location, GLuint v0);
0469     void glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
0470     void glProgramUniform1d(GLuint program, GLint location, GLdouble v0);
0471     void glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
0472     void glProgramUniform1f(GLuint program, GLint location, GLfloat v0);
0473     void glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value);
0474     void glProgramUniform1i(GLuint program, GLint location, GLint v0);
0475     void glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params);
0476     GLboolean glIsProgramPipeline(GLuint pipeline);
0477     void glGenProgramPipelines(GLsizei n, GLuint *pipelines);
0478     void glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines);
0479     void glBindProgramPipeline(GLuint pipeline);
0480     GLuint glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar* const *strings);
0481     void glActiveShaderProgram(GLuint pipeline, GLuint program);
0482     void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program);
0483     void glProgramParameteri(GLuint program, GLenum pname, GLint value);
0484     void glProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length);
0485     void glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
0486     void glClearDepthf(GLfloat dd);
0487     void glDepthRangef(GLfloat n, GLfloat f);
0488     void glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
0489     void glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length);
0490     void glReleaseShaderCompiler();
0491 
0492     // OpenGL 4.2 core functions
0493     void glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
0494     void glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
0495     void glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
0496     void glMemoryBarrier(GLbitfield barriers);
0497     void glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format);
0498     void glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params);
0499     void glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params);
0500     void glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount);
0501     void glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount);
0502     void glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance);
0503     void glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance);
0504     void glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance);
0505 
0506 private:
0507     friend class QOpenGLVersionFunctionsFactory;
0508 
0509     static bool isContextCompatible(QOpenGLContext *context);
0510     static QOpenGLVersionProfile versionProfile();
0511 
0512     QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
0513     QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
0514     QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
0515     QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
0516     QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
0517     QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
0518     QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
0519     QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
0520     QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
0521     QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
0522     QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
0523     QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
0524     QOpenGLFunctions_4_0_CoreBackend* d_4_0_Core;
0525     QOpenGLFunctions_4_1_CoreBackend* d_4_1_Core;
0526     QOpenGLFunctions_4_2_CoreBackend* d_4_2_Core;
0527 };
0528 
0529 // OpenGL 1.0 core functions
0530 inline void QOpenGLFunctions_4_2_Core::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
0531 {
0532     d_1_0_Core->f.Viewport(x, y, width, height);
0533 }
0534 
0535 inline void QOpenGLFunctions_4_2_Core::glDepthRange(GLdouble nearVal, GLdouble farVal)
0536 {
0537     d_1_0_Core->f.DepthRange(nearVal, farVal);
0538 }
0539 
0540 inline GLboolean QOpenGLFunctions_4_2_Core::glIsEnabled(GLenum cap)
0541 {
0542     return d_1_0_Core->f.IsEnabled(cap);
0543 }
0544 
0545 inline void QOpenGLFunctions_4_2_Core::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
0546 {
0547     d_1_0_Core->f.GetTexLevelParameteriv(target, level, pname, params);
0548 }
0549 
0550 inline void QOpenGLFunctions_4_2_Core::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
0551 {
0552     d_1_0_Core->f.GetTexLevelParameterfv(target, level, pname, params);
0553 }
0554 
0555 inline void QOpenGLFunctions_4_2_Core::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
0556 {
0557     d_1_0_Core->f.GetTexParameteriv(target, pname, params);
0558 }
0559 
0560 inline void QOpenGLFunctions_4_2_Core::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
0561 {
0562     d_1_0_Core->f.GetTexParameterfv(target, pname, params);
0563 }
0564 
0565 inline void QOpenGLFunctions_4_2_Core::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
0566 {
0567     d_1_0_Core->f.GetTexImage(target, level, format, type, pixels);
0568 }
0569 
0570 inline const GLubyte * QOpenGLFunctions_4_2_Core::glGetString(GLenum name)
0571 {
0572     return d_1_0_Core->f.GetString(name);
0573 }
0574 
0575 inline void QOpenGLFunctions_4_2_Core::glGetIntegerv(GLenum pname, GLint *params)
0576 {
0577     d_1_0_Core->f.GetIntegerv(pname, params);
0578 }
0579 
0580 inline void QOpenGLFunctions_4_2_Core::glGetFloatv(GLenum pname, GLfloat *params)
0581 {
0582     d_1_0_Core->f.GetFloatv(pname, params);
0583 }
0584 
0585 inline GLenum QOpenGLFunctions_4_2_Core::glGetError()
0586 {
0587     return d_1_0_Core->f.GetError();
0588 }
0589 
0590 inline void QOpenGLFunctions_4_2_Core::glGetDoublev(GLenum pname, GLdouble *params)
0591 {
0592     d_1_0_Core->f.GetDoublev(pname, params);
0593 }
0594 
0595 inline void QOpenGLFunctions_4_2_Core::glGetBooleanv(GLenum pname, GLboolean *params)
0596 {
0597     d_1_0_Core->f.GetBooleanv(pname, params);
0598 }
0599 
0600 inline void QOpenGLFunctions_4_2_Core::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
0601 {
0602     d_1_0_Core->f.ReadPixels(x, y, width, height, format, type, pixels);
0603 }
0604 
0605 inline void QOpenGLFunctions_4_2_Core::glReadBuffer(GLenum mode)
0606 {
0607     d_1_0_Core->f.ReadBuffer(mode);
0608 }
0609 
0610 inline void QOpenGLFunctions_4_2_Core::glPixelStorei(GLenum pname, GLint param)
0611 {
0612     d_1_0_Core->f.PixelStorei(pname, param);
0613 }
0614 
0615 inline void QOpenGLFunctions_4_2_Core::glPixelStoref(GLenum pname, GLfloat param)
0616 {
0617     d_1_0_Core->f.PixelStoref(pname, param);
0618 }
0619 
0620 inline void QOpenGLFunctions_4_2_Core::glDepthFunc(GLenum func)
0621 {
0622     d_1_0_Core->f.DepthFunc(func);
0623 }
0624 
0625 inline void QOpenGLFunctions_4_2_Core::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
0626 {
0627     d_1_0_Core->f.StencilOp(fail, zfail, zpass);
0628 }
0629 
0630 inline void QOpenGLFunctions_4_2_Core::glStencilFunc(GLenum func, GLint ref, GLuint mask)
0631 {
0632     d_1_0_Core->f.StencilFunc(func, ref, mask);
0633 }
0634 
0635 inline void QOpenGLFunctions_4_2_Core::glLogicOp(GLenum opcode)
0636 {
0637     d_1_0_Core->f.LogicOp(opcode);
0638 }
0639 
0640 inline void QOpenGLFunctions_4_2_Core::glBlendFunc(GLenum sfactor, GLenum dfactor)
0641 {
0642     d_1_0_Core->f.BlendFunc(sfactor, dfactor);
0643 }
0644 
0645 inline void QOpenGLFunctions_4_2_Core::glFlush()
0646 {
0647     d_1_0_Core->f.Flush();
0648 }
0649 
0650 inline void QOpenGLFunctions_4_2_Core::glFinish()
0651 {
0652     d_1_0_Core->f.Finish();
0653 }
0654 
0655 inline void QOpenGLFunctions_4_2_Core::glEnable(GLenum cap)
0656 {
0657     d_1_0_Core->f.Enable(cap);
0658 }
0659 
0660 inline void QOpenGLFunctions_4_2_Core::glDisable(GLenum cap)
0661 {
0662     d_1_0_Core->f.Disable(cap);
0663 }
0664 
0665 inline void QOpenGLFunctions_4_2_Core::glDepthMask(GLboolean flag)
0666 {
0667     d_1_0_Core->f.DepthMask(flag);
0668 }
0669 
0670 inline void QOpenGLFunctions_4_2_Core::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
0671 {
0672     d_1_0_Core->f.ColorMask(red, green, blue, alpha);
0673 }
0674 
0675 inline void QOpenGLFunctions_4_2_Core::glStencilMask(GLuint mask)
0676 {
0677     d_1_0_Core->f.StencilMask(mask);
0678 }
0679 
0680 inline void QOpenGLFunctions_4_2_Core::glClearDepth(GLdouble depth)
0681 {
0682     d_1_0_Core->f.ClearDepth(depth);
0683 }
0684 
0685 inline void QOpenGLFunctions_4_2_Core::glClearStencil(GLint s)
0686 {
0687     d_1_0_Core->f.ClearStencil(s);
0688 }
0689 
0690 inline void QOpenGLFunctions_4_2_Core::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
0691 {
0692     d_1_0_Core->f.ClearColor(red, green, blue, alpha);
0693 }
0694 
0695 inline void QOpenGLFunctions_4_2_Core::glClear(GLbitfield mask)
0696 {
0697     d_1_0_Core->f.Clear(mask);
0698 }
0699 
0700 inline void QOpenGLFunctions_4_2_Core::glDrawBuffer(GLenum mode)
0701 {
0702     d_1_0_Core->f.DrawBuffer(mode);
0703 }
0704 
0705 inline void QOpenGLFunctions_4_2_Core::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
0706 {
0707     d_1_0_Core->f.TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
0708 }
0709 
0710 inline void QOpenGLFunctions_4_2_Core::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
0711 {
0712     d_1_0_Core->f.TexImage1D(target, level, internalformat, width, border, format, type, pixels);
0713 }
0714 
0715 inline void QOpenGLFunctions_4_2_Core::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
0716 {
0717     d_1_0_Core->f.TexParameteriv(target, pname, params);
0718 }
0719 
0720 inline void QOpenGLFunctions_4_2_Core::glTexParameteri(GLenum target, GLenum pname, GLint param)
0721 {
0722     d_1_0_Core->f.TexParameteri(target, pname, param);
0723 }
0724 
0725 inline void QOpenGLFunctions_4_2_Core::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
0726 {
0727     d_1_0_Core->f.TexParameterfv(target, pname, params);
0728 }
0729 
0730 inline void QOpenGLFunctions_4_2_Core::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
0731 {
0732     d_1_0_Core->f.TexParameterf(target, pname, param);
0733 }
0734 
0735 inline void QOpenGLFunctions_4_2_Core::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
0736 {
0737     d_1_0_Core->f.Scissor(x, y, width, height);
0738 }
0739 
0740 inline void QOpenGLFunctions_4_2_Core::glPolygonMode(GLenum face, GLenum mode)
0741 {
0742     d_1_0_Core->f.PolygonMode(face, mode);
0743 }
0744 
0745 inline void QOpenGLFunctions_4_2_Core::glPointSize(GLfloat size)
0746 {
0747     d_1_0_Core->f.PointSize(size);
0748 }
0749 
0750 inline void QOpenGLFunctions_4_2_Core::glLineWidth(GLfloat width)
0751 {
0752     d_1_0_Core->f.LineWidth(width);
0753 }
0754 
0755 inline void QOpenGLFunctions_4_2_Core::glHint(GLenum target, GLenum mode)
0756 {
0757     d_1_0_Core->f.Hint(target, mode);
0758 }
0759 
0760 inline void QOpenGLFunctions_4_2_Core::glFrontFace(GLenum mode)
0761 {
0762     d_1_0_Core->f.FrontFace(mode);
0763 }
0764 
0765 inline void QOpenGLFunctions_4_2_Core::glCullFace(GLenum mode)
0766 {
0767     d_1_0_Core->f.CullFace(mode);
0768 }
0769 
0770 
0771 // OpenGL 1.1 core functions
0772 inline GLboolean QOpenGLFunctions_4_2_Core::glIsTexture(GLuint texture)
0773 {
0774     return d_1_1_Core->f.IsTexture(texture);
0775 }
0776 
0777 inline void QOpenGLFunctions_4_2_Core::glGenTextures(GLsizei n, GLuint *textures)
0778 {
0779     d_1_1_Core->f.GenTextures(n, textures);
0780 }
0781 
0782 inline void QOpenGLFunctions_4_2_Core::glDeleteTextures(GLsizei n, const GLuint *textures)
0783 {
0784     d_1_1_Core->f.DeleteTextures(n, textures);
0785 }
0786 
0787 inline void QOpenGLFunctions_4_2_Core::glBindTexture(GLenum target, GLuint texture)
0788 {
0789     d_1_1_Core->f.BindTexture(target, texture);
0790 }
0791 
0792 inline void QOpenGLFunctions_4_2_Core::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
0793 {
0794     d_1_1_Core->f.TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
0795 }
0796 
0797 inline void QOpenGLFunctions_4_2_Core::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
0798 {
0799     d_1_1_Core->f.TexSubImage1D(target, level, xoffset, width, format, type, pixels);
0800 }
0801 
0802 inline void QOpenGLFunctions_4_2_Core::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
0803 {
0804     d_1_1_Core->f.CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
0805 }
0806 
0807 inline void QOpenGLFunctions_4_2_Core::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
0808 {
0809     d_1_1_Core->f.CopyTexSubImage1D(target, level, xoffset, x, y, width);
0810 }
0811 
0812 inline void QOpenGLFunctions_4_2_Core::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
0813 {
0814     d_1_1_Core->f.CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
0815 }
0816 
0817 inline void QOpenGLFunctions_4_2_Core::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
0818 {
0819     d_1_1_Core->f.CopyTexImage1D(target, level, internalformat, x, y, width, border);
0820 }
0821 
0822 inline void QOpenGLFunctions_4_2_Core::glPolygonOffset(GLfloat factor, GLfloat units)
0823 {
0824     d_1_1_Core->f.PolygonOffset(factor, units);
0825 }
0826 
0827 inline void QOpenGLFunctions_4_2_Core::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
0828 {
0829     d_1_1_Core->f.DrawElements(mode, count, type, indices);
0830 }
0831 
0832 inline void QOpenGLFunctions_4_2_Core::glDrawArrays(GLenum mode, GLint first, GLsizei count)
0833 {
0834     d_1_1_Core->f.DrawArrays(mode, first, count);
0835 }
0836 
0837 
0838 // OpenGL 1.2 core functions
0839 inline void QOpenGLFunctions_4_2_Core::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
0840 {
0841     d_1_2_Core->f.CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
0842 }
0843 
0844 inline void QOpenGLFunctions_4_2_Core::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
0845 {
0846     d_1_2_Core->f.TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
0847 }
0848 
0849 inline void QOpenGLFunctions_4_2_Core::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
0850 {
0851     d_1_2_Core->f.TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
0852 }
0853 
0854 inline void QOpenGLFunctions_4_2_Core::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
0855 {
0856     d_1_2_Core->f.DrawRangeElements(mode, start, end, count, type, indices);
0857 }
0858 
0859 inline void QOpenGLFunctions_4_2_Core::glBlendEquation(GLenum mode)
0860 {
0861     d_1_2_Core->f.BlendEquation(mode);
0862 }
0863 
0864 inline void QOpenGLFunctions_4_2_Core::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
0865 {
0866     d_1_2_Core->f.BlendColor(red, green, blue, alpha);
0867 }
0868 
0869 
0870 // OpenGL 1.3 core functions
0871 inline void QOpenGLFunctions_4_2_Core::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
0872 {
0873     d_1_3_Core->f.GetCompressedTexImage(target, level, img);
0874 }
0875 
0876 inline void QOpenGLFunctions_4_2_Core::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
0877 {
0878     d_1_3_Core->f.CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
0879 }
0880 
0881 inline void QOpenGLFunctions_4_2_Core::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
0882 {
0883     d_1_3_Core->f.CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
0884 }
0885 
0886 inline void QOpenGLFunctions_4_2_Core::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
0887 {
0888     d_1_3_Core->f.CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
0889 }
0890 
0891 inline void QOpenGLFunctions_4_2_Core::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
0892 {
0893     d_1_3_Core->f.CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
0894 }
0895 
0896 inline void QOpenGLFunctions_4_2_Core::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
0897 {
0898     d_1_3_Core->f.CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
0899 }
0900 
0901 inline void QOpenGLFunctions_4_2_Core::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
0902 {
0903     d_1_3_Core->f.CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
0904 }
0905 
0906 inline void QOpenGLFunctions_4_2_Core::glSampleCoverage(GLfloat value, GLboolean invert)
0907 {
0908     d_1_3_Core->f.SampleCoverage(value, invert);
0909 }
0910 
0911 inline void QOpenGLFunctions_4_2_Core::glActiveTexture(GLenum texture)
0912 {
0913     d_1_3_Core->f.ActiveTexture(texture);
0914 }
0915 
0916 
0917 // OpenGL 1.4 core functions
0918 inline void QOpenGLFunctions_4_2_Core::glPointParameteriv(GLenum pname, const GLint *params)
0919 {
0920     d_1_4_Core->f.PointParameteriv(pname, params);
0921 }
0922 
0923 inline void QOpenGLFunctions_4_2_Core::glPointParameteri(GLenum pname, GLint param)
0924 {
0925     d_1_4_Core->f.PointParameteri(pname, param);
0926 }
0927 
0928 inline void QOpenGLFunctions_4_2_Core::glPointParameterfv(GLenum pname, const GLfloat *params)
0929 {
0930     d_1_4_Core->f.PointParameterfv(pname, params);
0931 }
0932 
0933 inline void QOpenGLFunctions_4_2_Core::glPointParameterf(GLenum pname, GLfloat param)
0934 {
0935     d_1_4_Core->f.PointParameterf(pname, param);
0936 }
0937 
0938 inline void QOpenGLFunctions_4_2_Core::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
0939 {
0940     d_1_4_Core->f.MultiDrawElements(mode, count, type, indices, drawcount);
0941 }
0942 
0943 inline void QOpenGLFunctions_4_2_Core::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
0944 {
0945     d_1_4_Core->f.MultiDrawArrays(mode, first, count, drawcount);
0946 }
0947 
0948 inline void QOpenGLFunctions_4_2_Core::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
0949 {
0950     d_1_4_Core->f.BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
0951 }
0952 
0953 
0954 // OpenGL 1.5 core functions
0955 inline void QOpenGLFunctions_4_2_Core::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
0956 {
0957     d_1_5_Core->f.GetBufferPointerv(target, pname, params);
0958 }
0959 
0960 inline void QOpenGLFunctions_4_2_Core::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
0961 {
0962     d_1_5_Core->f.GetBufferParameteriv(target, pname, params);
0963 }
0964 
0965 inline GLboolean QOpenGLFunctions_4_2_Core::glUnmapBuffer(GLenum target)
0966 {
0967     return d_1_5_Core->f.UnmapBuffer(target);
0968 }
0969 
0970 inline GLvoid* QOpenGLFunctions_4_2_Core::glMapBuffer(GLenum target, GLenum access)
0971 {
0972     return d_1_5_Core->f.MapBuffer(target, access);
0973 }
0974 
0975 inline void QOpenGLFunctions_4_2_Core::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
0976 {
0977     d_1_5_Core->f.GetBufferSubData(target, offset, size, data);
0978 }
0979 
0980 inline void QOpenGLFunctions_4_2_Core::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
0981 {
0982     d_1_5_Core->f.BufferSubData(target, offset, size, data);
0983 }
0984 
0985 inline void QOpenGLFunctions_4_2_Core::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
0986 {
0987     d_1_5_Core->f.BufferData(target, size, data, usage);
0988 }
0989 
0990 inline GLboolean QOpenGLFunctions_4_2_Core::glIsBuffer(GLuint buffer)
0991 {
0992     return d_1_5_Core->f.IsBuffer(buffer);
0993 }
0994 
0995 inline void QOpenGLFunctions_4_2_Core::glGenBuffers(GLsizei n, GLuint *buffers)
0996 {
0997     d_1_5_Core->f.GenBuffers(n, buffers);
0998 }
0999 
1000 inline void QOpenGLFunctions_4_2_Core::glDeleteBuffers(GLsizei n, const GLuint *buffers)
1001 {
1002     d_1_5_Core->f.DeleteBuffers(n, buffers);
1003 }
1004 
1005 inline void QOpenGLFunctions_4_2_Core::glBindBuffer(GLenum target, GLuint buffer)
1006 {
1007     d_1_5_Core->f.BindBuffer(target, buffer);
1008 }
1009 
1010 inline void QOpenGLFunctions_4_2_Core::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
1011 {
1012     d_1_5_Core->f.GetQueryObjectuiv(id, pname, params);
1013 }
1014 
1015 inline void QOpenGLFunctions_4_2_Core::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
1016 {
1017     d_1_5_Core->f.GetQueryObjectiv(id, pname, params);
1018 }
1019 
1020 inline void QOpenGLFunctions_4_2_Core::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
1021 {
1022     d_1_5_Core->f.GetQueryiv(target, pname, params);
1023 }
1024 
1025 inline void QOpenGLFunctions_4_2_Core::glEndQuery(GLenum target)
1026 {
1027     d_1_5_Core->f.EndQuery(target);
1028 }
1029 
1030 inline void QOpenGLFunctions_4_2_Core::glBeginQuery(GLenum target, GLuint id)
1031 {
1032     d_1_5_Core->f.BeginQuery(target, id);
1033 }
1034 
1035 inline GLboolean QOpenGLFunctions_4_2_Core::glIsQuery(GLuint id)
1036 {
1037     return d_1_5_Core->f.IsQuery(id);
1038 }
1039 
1040 inline void QOpenGLFunctions_4_2_Core::glDeleteQueries(GLsizei n, const GLuint *ids)
1041 {
1042     d_1_5_Core->f.DeleteQueries(n, ids);
1043 }
1044 
1045 inline void QOpenGLFunctions_4_2_Core::glGenQueries(GLsizei n, GLuint *ids)
1046 {
1047     d_1_5_Core->f.GenQueries(n, ids);
1048 }
1049 
1050 
1051 // OpenGL 2.0 core functions
1052 inline void QOpenGLFunctions_4_2_Core::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
1053 {
1054     d_2_0_Core->f.VertexAttribPointer(index, size, type, normalized, stride, pointer);
1055 }
1056 
1057 inline void QOpenGLFunctions_4_2_Core::glValidateProgram(GLuint program)
1058 {
1059     d_2_0_Core->f.ValidateProgram(program);
1060 }
1061 
1062 inline void QOpenGLFunctions_4_2_Core::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1063 {
1064     d_2_0_Core->f.UniformMatrix4fv(location, count, transpose, value);
1065 }
1066 
1067 inline void QOpenGLFunctions_4_2_Core::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1068 {
1069     d_2_0_Core->f.UniformMatrix3fv(location, count, transpose, value);
1070 }
1071 
1072 inline void QOpenGLFunctions_4_2_Core::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1073 {
1074     d_2_0_Core->f.UniformMatrix2fv(location, count, transpose, value);
1075 }
1076 
1077 inline void QOpenGLFunctions_4_2_Core::glUniform4iv(GLint location, GLsizei count, const GLint *value)
1078 {
1079     d_2_0_Core->f.Uniform4iv(location, count, value);
1080 }
1081 
1082 inline void QOpenGLFunctions_4_2_Core::glUniform3iv(GLint location, GLsizei count, const GLint *value)
1083 {
1084     d_2_0_Core->f.Uniform3iv(location, count, value);
1085 }
1086 
1087 inline void QOpenGLFunctions_4_2_Core::glUniform2iv(GLint location, GLsizei count, const GLint *value)
1088 {
1089     d_2_0_Core->f.Uniform2iv(location, count, value);
1090 }
1091 
1092 inline void QOpenGLFunctions_4_2_Core::glUniform1iv(GLint location, GLsizei count, const GLint *value)
1093 {
1094     d_2_0_Core->f.Uniform1iv(location, count, value);
1095 }
1096 
1097 inline void QOpenGLFunctions_4_2_Core::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
1098 {
1099     d_2_0_Core->f.Uniform4fv(location, count, value);
1100 }
1101 
1102 inline void QOpenGLFunctions_4_2_Core::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
1103 {
1104     d_2_0_Core->f.Uniform3fv(location, count, value);
1105 }
1106 
1107 inline void QOpenGLFunctions_4_2_Core::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
1108 {
1109     d_2_0_Core->f.Uniform2fv(location, count, value);
1110 }
1111 
1112 inline void QOpenGLFunctions_4_2_Core::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
1113 {
1114     d_2_0_Core->f.Uniform1fv(location, count, value);
1115 }
1116 
1117 inline void QOpenGLFunctions_4_2_Core::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
1118 {
1119     d_2_0_Core->f.Uniform4i(location, v0, v1, v2, v3);
1120 }
1121 
1122 inline void QOpenGLFunctions_4_2_Core::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
1123 {
1124     d_2_0_Core->f.Uniform3i(location, v0, v1, v2);
1125 }
1126 
1127 inline void QOpenGLFunctions_4_2_Core::glUniform2i(GLint location, GLint v0, GLint v1)
1128 {
1129     d_2_0_Core->f.Uniform2i(location, v0, v1);
1130 }
1131 
1132 inline void QOpenGLFunctions_4_2_Core::glUniform1i(GLint location, GLint v0)
1133 {
1134     d_2_0_Core->f.Uniform1i(location, v0);
1135 }
1136 
1137 inline void QOpenGLFunctions_4_2_Core::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
1138 {
1139     d_2_0_Core->f.Uniform4f(location, v0, v1, v2, v3);
1140 }
1141 
1142 inline void QOpenGLFunctions_4_2_Core::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
1143 {
1144     d_2_0_Core->f.Uniform3f(location, v0, v1, v2);
1145 }
1146 
1147 inline void QOpenGLFunctions_4_2_Core::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
1148 {
1149     d_2_0_Core->f.Uniform2f(location, v0, v1);
1150 }
1151 
1152 inline void QOpenGLFunctions_4_2_Core::glUniform1f(GLint location, GLfloat v0)
1153 {
1154     d_2_0_Core->f.Uniform1f(location, v0);
1155 }
1156 
1157 inline void QOpenGLFunctions_4_2_Core::glUseProgram(GLuint program)
1158 {
1159     d_2_0_Core->f.UseProgram(program);
1160 }
1161 
1162 inline void QOpenGLFunctions_4_2_Core::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
1163 {
1164     d_2_0_Core->f.ShaderSource(shader, count, string, length);
1165 }
1166 
1167 inline void QOpenGLFunctions_4_2_Core::glLinkProgram(GLuint program)
1168 {
1169     d_2_0_Core->f.LinkProgram(program);
1170 }
1171 
1172 inline GLboolean QOpenGLFunctions_4_2_Core::glIsShader(GLuint shader)
1173 {
1174     return d_2_0_Core->f.IsShader(shader);
1175 }
1176 
1177 inline GLboolean QOpenGLFunctions_4_2_Core::glIsProgram(GLuint program)
1178 {
1179     return d_2_0_Core->f.IsProgram(program);
1180 }
1181 
1182 inline void QOpenGLFunctions_4_2_Core::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
1183 {
1184     d_2_0_Core->f.GetVertexAttribPointerv(index, pname, pointer);
1185 }
1186 
1187 inline void QOpenGLFunctions_4_2_Core::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
1188 {
1189     d_2_0_Core->f.GetVertexAttribiv(index, pname, params);
1190 }
1191 
1192 inline void QOpenGLFunctions_4_2_Core::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
1193 {
1194     d_2_0_Core->f.GetVertexAttribfv(index, pname, params);
1195 }
1196 
1197 inline void QOpenGLFunctions_4_2_Core::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
1198 {
1199     d_2_0_Core->f.GetVertexAttribdv(index, pname, params);
1200 }
1201 
1202 inline void QOpenGLFunctions_4_2_Core::glGetUniformiv(GLuint program, GLint location, GLint *params)
1203 {
1204     d_2_0_Core->f.GetUniformiv(program, location, params);
1205 }
1206 
1207 inline void QOpenGLFunctions_4_2_Core::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
1208 {
1209     d_2_0_Core->f.GetUniformfv(program, location, params);
1210 }
1211 
1212 inline GLint QOpenGLFunctions_4_2_Core::glGetUniformLocation(GLuint program, const GLchar *name)
1213 {
1214     return d_2_0_Core->f.GetUniformLocation(program, name);
1215 }
1216 
1217 inline void QOpenGLFunctions_4_2_Core::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
1218 {
1219     d_2_0_Core->f.GetShaderSource(shader, bufSize, length, source);
1220 }
1221 
1222 inline void QOpenGLFunctions_4_2_Core::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
1223 {
1224     d_2_0_Core->f.GetShaderInfoLog(shader, bufSize, length, infoLog);
1225 }
1226 
1227 inline void QOpenGLFunctions_4_2_Core::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
1228 {
1229     d_2_0_Core->f.GetShaderiv(shader, pname, params);
1230 }
1231 
1232 inline void QOpenGLFunctions_4_2_Core::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
1233 {
1234     d_2_0_Core->f.GetProgramInfoLog(program, bufSize, length, infoLog);
1235 }
1236 
1237 inline void QOpenGLFunctions_4_2_Core::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
1238 {
1239     d_2_0_Core->f.GetProgramiv(program, pname, params);
1240 }
1241 
1242 inline GLint QOpenGLFunctions_4_2_Core::glGetAttribLocation(GLuint program, const GLchar *name)
1243 {
1244     return d_2_0_Core->f.GetAttribLocation(program, name);
1245 }
1246 
1247 inline void QOpenGLFunctions_4_2_Core::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
1248 {
1249     d_2_0_Core->f.GetAttachedShaders(program, maxCount, count, obj);
1250 }
1251 
1252 inline void QOpenGLFunctions_4_2_Core::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
1253 {
1254     d_2_0_Core->f.GetActiveUniform(program, index, bufSize, length, size, type, name);
1255 }
1256 
1257 inline void QOpenGLFunctions_4_2_Core::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
1258 {
1259     d_2_0_Core->f.GetActiveAttrib(program, index, bufSize, length, size, type, name);
1260 }
1261 
1262 inline void QOpenGLFunctions_4_2_Core::glEnableVertexAttribArray(GLuint index)
1263 {
1264     d_2_0_Core->f.EnableVertexAttribArray(index);
1265 }
1266 
1267 inline void QOpenGLFunctions_4_2_Core::glDisableVertexAttribArray(GLuint index)
1268 {
1269     d_2_0_Core->f.DisableVertexAttribArray(index);
1270 }
1271 
1272 inline void QOpenGLFunctions_4_2_Core::glDetachShader(GLuint program, GLuint shader)
1273 {
1274     d_2_0_Core->f.DetachShader(program, shader);
1275 }
1276 
1277 inline void QOpenGLFunctions_4_2_Core::glDeleteShader(GLuint shader)
1278 {
1279     d_2_0_Core->f.DeleteShader(shader);
1280 }
1281 
1282 inline void QOpenGLFunctions_4_2_Core::glDeleteProgram(GLuint program)
1283 {
1284     d_2_0_Core->f.DeleteProgram(program);
1285 }
1286 
1287 inline GLuint QOpenGLFunctions_4_2_Core::glCreateShader(GLenum type)
1288 {
1289     return d_2_0_Core->f.CreateShader(type);
1290 }
1291 
1292 inline GLuint QOpenGLFunctions_4_2_Core::glCreateProgram()
1293 {
1294     return d_2_0_Core->f.CreateProgram();
1295 }
1296 
1297 inline void QOpenGLFunctions_4_2_Core::glCompileShader(GLuint shader)
1298 {
1299     d_2_0_Core->f.CompileShader(shader);
1300 }
1301 
1302 inline void QOpenGLFunctions_4_2_Core::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
1303 {
1304     d_2_0_Core->f.BindAttribLocation(program, index, name);
1305 }
1306 
1307 inline void QOpenGLFunctions_4_2_Core::glAttachShader(GLuint program, GLuint shader)
1308 {
1309     d_2_0_Core->f.AttachShader(program, shader);
1310 }
1311 
1312 inline void QOpenGLFunctions_4_2_Core::glStencilMaskSeparate(GLenum face, GLuint mask)
1313 {
1314     d_2_0_Core->f.StencilMaskSeparate(face, mask);
1315 }
1316 
1317 inline void QOpenGLFunctions_4_2_Core::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
1318 {
1319     d_2_0_Core->f.StencilFuncSeparate(face, func, ref, mask);
1320 }
1321 
1322 inline void QOpenGLFunctions_4_2_Core::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
1323 {
1324     d_2_0_Core->f.StencilOpSeparate(face, sfail, dpfail, dppass);
1325 }
1326 
1327 inline void QOpenGLFunctions_4_2_Core::glDrawBuffers(GLsizei n, const GLenum *bufs)
1328 {
1329     d_2_0_Core->f.DrawBuffers(n, bufs);
1330 }
1331 
1332 inline void QOpenGLFunctions_4_2_Core::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
1333 {
1334     d_2_0_Core->f.BlendEquationSeparate(modeRGB, modeAlpha);
1335 }
1336 
1337 
1338 // OpenGL 2.1 core functions
1339 inline void QOpenGLFunctions_4_2_Core::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1340 {
1341     d_2_1_Core->f.UniformMatrix4x3fv(location, count, transpose, value);
1342 }
1343 
1344 inline void QOpenGLFunctions_4_2_Core::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1345 {
1346     d_2_1_Core->f.UniformMatrix3x4fv(location, count, transpose, value);
1347 }
1348 
1349 inline void QOpenGLFunctions_4_2_Core::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1350 {
1351     d_2_1_Core->f.UniformMatrix4x2fv(location, count, transpose, value);
1352 }
1353 
1354 inline void QOpenGLFunctions_4_2_Core::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1355 {
1356     d_2_1_Core->f.UniformMatrix2x4fv(location, count, transpose, value);
1357 }
1358 
1359 inline void QOpenGLFunctions_4_2_Core::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1360 {
1361     d_2_1_Core->f.UniformMatrix3x2fv(location, count, transpose, value);
1362 }
1363 
1364 inline void QOpenGLFunctions_4_2_Core::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1365 {
1366     d_2_1_Core->f.UniformMatrix2x3fv(location, count, transpose, value);
1367 }
1368 
1369 
1370 // OpenGL 3.0 core functions
1371 inline GLboolean QOpenGLFunctions_4_2_Core::glIsVertexArray(GLuint array)
1372 {
1373     return d_3_0_Core->f.IsVertexArray(array);
1374 }
1375 
1376 inline void QOpenGLFunctions_4_2_Core::glGenVertexArrays(GLsizei n, GLuint *arrays)
1377 {
1378     d_3_0_Core->f.GenVertexArrays(n, arrays);
1379 }
1380 
1381 inline void QOpenGLFunctions_4_2_Core::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
1382 {
1383     d_3_0_Core->f.DeleteVertexArrays(n, arrays);
1384 }
1385 
1386 inline void QOpenGLFunctions_4_2_Core::glBindVertexArray(GLuint array)
1387 {
1388     d_3_0_Core->f.BindVertexArray(array);
1389 }
1390 
1391 inline void QOpenGLFunctions_4_2_Core::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
1392 {
1393     d_3_0_Core->f.FlushMappedBufferRange(target, offset, length);
1394 }
1395 
1396 inline GLvoid* QOpenGLFunctions_4_2_Core::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
1397 {
1398     return d_3_0_Core->f.MapBufferRange(target, offset, length, access);
1399 }
1400 
1401 inline void QOpenGLFunctions_4_2_Core::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
1402 {
1403     d_3_0_Core->f.FramebufferTextureLayer(target, attachment, texture, level, layer);
1404 }
1405 
1406 inline void QOpenGLFunctions_4_2_Core::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
1407 {
1408     d_3_0_Core->f.RenderbufferStorageMultisample(target, samples, internalformat, width, height);
1409 }
1410 
1411 inline void QOpenGLFunctions_4_2_Core::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
1412 {
1413     d_3_0_Core->f.BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
1414 }
1415 
1416 inline void QOpenGLFunctions_4_2_Core::glGenerateMipmap(GLenum target)
1417 {
1418     d_3_0_Core->f.GenerateMipmap(target);
1419 }
1420 
1421 inline void QOpenGLFunctions_4_2_Core::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
1422 {
1423     d_3_0_Core->f.GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
1424 }
1425 
1426 inline void QOpenGLFunctions_4_2_Core::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
1427 {
1428     d_3_0_Core->f.FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
1429 }
1430 
1431 inline void QOpenGLFunctions_4_2_Core::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
1432 {
1433     d_3_0_Core->f.FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
1434 }
1435 
1436 inline void QOpenGLFunctions_4_2_Core::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
1437 {
1438     d_3_0_Core->f.FramebufferTexture2D(target, attachment, textarget, texture, level);
1439 }
1440 
1441 inline void QOpenGLFunctions_4_2_Core::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
1442 {
1443     d_3_0_Core->f.FramebufferTexture1D(target, attachment, textarget, texture, level);
1444 }
1445 
1446 inline GLenum QOpenGLFunctions_4_2_Core::glCheckFramebufferStatus(GLenum target)
1447 {
1448     return d_3_0_Core->f.CheckFramebufferStatus(target);
1449 }
1450 
1451 inline void QOpenGLFunctions_4_2_Core::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
1452 {
1453     d_3_0_Core->f.GenFramebuffers(n, framebuffers);
1454 }
1455 
1456 inline void QOpenGLFunctions_4_2_Core::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
1457 {
1458     d_3_0_Core->f.DeleteFramebuffers(n, framebuffers);
1459 }
1460 
1461 inline void QOpenGLFunctions_4_2_Core::glBindFramebuffer(GLenum target, GLuint framebuffer)
1462 {
1463     d_3_0_Core->f.BindFramebuffer(target, framebuffer);
1464 }
1465 
1466 inline GLboolean QOpenGLFunctions_4_2_Core::glIsFramebuffer(GLuint framebuffer)
1467 {
1468     return d_3_0_Core->f.IsFramebuffer(framebuffer);
1469 }
1470 
1471 inline void QOpenGLFunctions_4_2_Core::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
1472 {
1473     d_3_0_Core->f.GetRenderbufferParameteriv(target, pname, params);
1474 }
1475 
1476 inline void QOpenGLFunctions_4_2_Core::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
1477 {
1478     d_3_0_Core->f.RenderbufferStorage(target, internalformat, width, height);
1479 }
1480 
1481 inline void QOpenGLFunctions_4_2_Core::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
1482 {
1483     d_3_0_Core->f.GenRenderbuffers(n, renderbuffers);
1484 }
1485 
1486 inline void QOpenGLFunctions_4_2_Core::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
1487 {
1488     d_3_0_Core->f.DeleteRenderbuffers(n, renderbuffers);
1489 }
1490 
1491 inline void QOpenGLFunctions_4_2_Core::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
1492 {
1493     d_3_0_Core->f.BindRenderbuffer(target, renderbuffer);
1494 }
1495 
1496 inline GLboolean QOpenGLFunctions_4_2_Core::glIsRenderbuffer(GLuint renderbuffer)
1497 {
1498     return d_3_0_Core->f.IsRenderbuffer(renderbuffer);
1499 }
1500 
1501 inline const GLubyte * QOpenGLFunctions_4_2_Core::glGetStringi(GLenum name, GLuint index)
1502 {
1503     return d_3_0_Core->f.GetStringi(name, index);
1504 }
1505 
1506 inline void QOpenGLFunctions_4_2_Core::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
1507 {
1508     d_3_0_Core->f.ClearBufferfi(buffer, drawbuffer, depth, stencil);
1509 }
1510 
1511 inline void QOpenGLFunctions_4_2_Core::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
1512 {
1513     d_3_0_Core->f.ClearBufferfv(buffer, drawbuffer, value);
1514 }
1515 
1516 inline void QOpenGLFunctions_4_2_Core::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
1517 {
1518     d_3_0_Core->f.ClearBufferuiv(buffer, drawbuffer, value);
1519 }
1520 
1521 inline void QOpenGLFunctions_4_2_Core::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
1522 {
1523     d_3_0_Core->f.ClearBufferiv(buffer, drawbuffer, value);
1524 }
1525 
1526 inline void QOpenGLFunctions_4_2_Core::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
1527 {
1528     d_3_0_Core->f.GetTexParameterIuiv(target, pname, params);
1529 }
1530 
1531 inline void QOpenGLFunctions_4_2_Core::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
1532 {
1533     d_3_0_Core->f.GetTexParameterIiv(target, pname, params);
1534 }
1535 
1536 inline void QOpenGLFunctions_4_2_Core::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
1537 {
1538     d_3_0_Core->f.TexParameterIuiv(target, pname, params);
1539 }
1540 
1541 inline void QOpenGLFunctions_4_2_Core::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
1542 {
1543     d_3_0_Core->f.TexParameterIiv(target, pname, params);
1544 }
1545 
1546 inline void QOpenGLFunctions_4_2_Core::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
1547 {
1548     d_3_0_Core->f.Uniform4uiv(location, count, value);
1549 }
1550 
1551 inline void QOpenGLFunctions_4_2_Core::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
1552 {
1553     d_3_0_Core->f.Uniform3uiv(location, count, value);
1554 }
1555 
1556 inline void QOpenGLFunctions_4_2_Core::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
1557 {
1558     d_3_0_Core->f.Uniform2uiv(location, count, value);
1559 }
1560 
1561 inline void QOpenGLFunctions_4_2_Core::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
1562 {
1563     d_3_0_Core->f.Uniform1uiv(location, count, value);
1564 }
1565 
1566 inline void QOpenGLFunctions_4_2_Core::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
1567 {
1568     d_3_0_Core->f.Uniform4ui(location, v0, v1, v2, v3);
1569 }
1570 
1571 inline void QOpenGLFunctions_4_2_Core::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
1572 {
1573     d_3_0_Core->f.Uniform3ui(location, v0, v1, v2);
1574 }
1575 
1576 inline void QOpenGLFunctions_4_2_Core::glUniform2ui(GLint location, GLuint v0, GLuint v1)
1577 {
1578     d_3_0_Core->f.Uniform2ui(location, v0, v1);
1579 }
1580 
1581 inline void QOpenGLFunctions_4_2_Core::glUniform1ui(GLint location, GLuint v0)
1582 {
1583     d_3_0_Core->f.Uniform1ui(location, v0);
1584 }
1585 
1586 inline GLint QOpenGLFunctions_4_2_Core::glGetFragDataLocation(GLuint program, const GLchar *name)
1587 {
1588     return d_3_0_Core->f.GetFragDataLocation(program, name);
1589 }
1590 
1591 inline void QOpenGLFunctions_4_2_Core::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
1592 {
1593     d_3_0_Core->f.BindFragDataLocation(program, color, name);
1594 }
1595 
1596 inline void QOpenGLFunctions_4_2_Core::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
1597 {
1598     d_3_0_Core->f.GetUniformuiv(program, location, params);
1599 }
1600 
1601 inline void QOpenGLFunctions_4_2_Core::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
1602 {
1603     d_3_0_Core->f.GetVertexAttribIuiv(index, pname, params);
1604 }
1605 
1606 inline void QOpenGLFunctions_4_2_Core::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
1607 {
1608     d_3_0_Core->f.GetVertexAttribIiv(index, pname, params);
1609 }
1610 
1611 inline void QOpenGLFunctions_4_2_Core::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
1612 {
1613     d_3_0_Core->f.VertexAttribIPointer(index, size, type, stride, pointer);
1614 }
1615 
1616 inline void QOpenGLFunctions_4_2_Core::glEndConditionalRender()
1617 {
1618     d_3_0_Core->f.EndConditionalRender();
1619 }
1620 
1621 inline void QOpenGLFunctions_4_2_Core::glBeginConditionalRender(GLuint id, GLenum mode)
1622 {
1623     d_3_0_Core->f.BeginConditionalRender(id, mode);
1624 }
1625 
1626 inline void QOpenGLFunctions_4_2_Core::glClampColor(GLenum target, GLenum clamp)
1627 {
1628     d_3_0_Core->f.ClampColor(target, clamp);
1629 }
1630 
1631 inline void QOpenGLFunctions_4_2_Core::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
1632 {
1633     d_3_0_Core->f.GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
1634 }
1635 
1636 inline void QOpenGLFunctions_4_2_Core::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
1637 {
1638     d_3_0_Core->f.TransformFeedbackVaryings(program, count, varyings, bufferMode);
1639 }
1640 
1641 inline void QOpenGLFunctions_4_2_Core::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
1642 {
1643     d_3_0_Core->f.BindBufferBase(target, index, buffer);
1644 }
1645 
1646 inline void QOpenGLFunctions_4_2_Core::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
1647 {
1648     d_3_0_Core->f.BindBufferRange(target, index, buffer, offset, size);
1649 }
1650 
1651 inline void QOpenGLFunctions_4_2_Core::glEndTransformFeedback()
1652 {
1653     d_3_0_Core->f.EndTransformFeedback();
1654 }
1655 
1656 inline void QOpenGLFunctions_4_2_Core::glBeginTransformFeedback(GLenum primitiveMode)
1657 {
1658     d_3_0_Core->f.BeginTransformFeedback(primitiveMode);
1659 }
1660 
1661 inline GLboolean QOpenGLFunctions_4_2_Core::glIsEnabledi(GLenum target, GLuint index)
1662 {
1663     return d_3_0_Core->f.IsEnabledi(target, index);
1664 }
1665 
1666 inline void QOpenGLFunctions_4_2_Core::glDisablei(GLenum target, GLuint index)
1667 {
1668     d_3_0_Core->f.Disablei(target, index);
1669 }
1670 
1671 inline void QOpenGLFunctions_4_2_Core::glEnablei(GLenum target, GLuint index)
1672 {
1673     d_3_0_Core->f.Enablei(target, index);
1674 }
1675 
1676 inline void QOpenGLFunctions_4_2_Core::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
1677 {
1678     d_3_0_Core->f.GetIntegeri_v(target, index, data);
1679 }
1680 
1681 inline void QOpenGLFunctions_4_2_Core::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
1682 {
1683     d_3_0_Core->f.GetBooleani_v(target, index, data);
1684 }
1685 
1686 inline void QOpenGLFunctions_4_2_Core::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
1687 {
1688     d_3_0_Core->f.ColorMaski(index, r, g, b, a);
1689 }
1690 
1691 
1692 // OpenGL 3.1 core functions
1693 inline void QOpenGLFunctions_4_2_Core::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
1694 {
1695     d_3_1_Core->f.CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
1696 }
1697 
1698 inline void QOpenGLFunctions_4_2_Core::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
1699 {
1700     d_3_1_Core->f.UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
1701 }
1702 
1703 inline void QOpenGLFunctions_4_2_Core::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
1704 {
1705     d_3_1_Core->f.GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
1706 }
1707 
1708 inline void QOpenGLFunctions_4_2_Core::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
1709 {
1710     d_3_1_Core->f.GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
1711 }
1712 
1713 inline GLuint QOpenGLFunctions_4_2_Core::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
1714 {
1715     return d_3_1_Core->f.GetUniformBlockIndex(program, uniformBlockName);
1716 }
1717 
1718 inline void QOpenGLFunctions_4_2_Core::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
1719 {
1720     d_3_1_Core->f.GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
1721 }
1722 
1723 inline void QOpenGLFunctions_4_2_Core::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
1724 {
1725     d_3_1_Core->f.GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
1726 }
1727 
1728 inline void QOpenGLFunctions_4_2_Core::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
1729 {
1730     d_3_1_Core->f.GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
1731 }
1732 
1733 inline void QOpenGLFunctions_4_2_Core::glPrimitiveRestartIndex(GLuint index)
1734 {
1735     d_3_1_Core->f.PrimitiveRestartIndex(index);
1736 }
1737 
1738 inline void QOpenGLFunctions_4_2_Core::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
1739 {
1740     d_3_1_Core->f.TexBuffer(target, internalformat, buffer);
1741 }
1742 
1743 inline void QOpenGLFunctions_4_2_Core::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
1744 {
1745     d_3_1_Core->f.DrawElementsInstanced(mode, count, type, indices, instancecount);
1746 }
1747 
1748 inline void QOpenGLFunctions_4_2_Core::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
1749 {
1750     d_3_1_Core->f.DrawArraysInstanced(mode, first, count, instancecount);
1751 }
1752 
1753 
1754 // OpenGL 3.2 core functions
1755 inline void QOpenGLFunctions_4_2_Core::glSampleMaski(GLuint index, GLbitfield mask)
1756 {
1757     d_3_2_Core->f.SampleMaski(index, mask);
1758 }
1759 
1760 inline void QOpenGLFunctions_4_2_Core::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
1761 {
1762     d_3_2_Core->f.GetMultisamplefv(pname, index, val);
1763 }
1764 
1765 inline void QOpenGLFunctions_4_2_Core::glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
1766 {
1767     d_3_2_Core->f.TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
1768 }
1769 
1770 inline void QOpenGLFunctions_4_2_Core::glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
1771 {
1772     d_3_2_Core->f.TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
1773 }
1774 
1775 inline void QOpenGLFunctions_4_2_Core::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
1776 {
1777     d_3_2_Core->f.GetSynciv(sync, pname, bufSize, length, values);
1778 }
1779 
1780 inline void QOpenGLFunctions_4_2_Core::glGetInteger64v(GLenum pname, GLint64 *params)
1781 {
1782     d_3_2_Core->f.GetInteger64v(pname, params);
1783 }
1784 
1785 inline void QOpenGLFunctions_4_2_Core::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
1786 {
1787     d_3_2_Core->f.WaitSync(sync, flags, timeout);
1788 }
1789 
1790 inline GLenum QOpenGLFunctions_4_2_Core::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
1791 {
1792     return d_3_2_Core->f.ClientWaitSync(sync, flags, timeout);
1793 }
1794 
1795 inline void QOpenGLFunctions_4_2_Core::glDeleteSync(GLsync sync)
1796 {
1797     d_3_2_Core->f.DeleteSync(sync);
1798 }
1799 
1800 inline GLboolean QOpenGLFunctions_4_2_Core::glIsSync(GLsync sync)
1801 {
1802     return d_3_2_Core->f.IsSync(sync);
1803 }
1804 
1805 inline GLsync QOpenGLFunctions_4_2_Core::glFenceSync(GLenum condition, GLbitfield flags)
1806 {
1807     return d_3_2_Core->f.FenceSync(condition, flags);
1808 }
1809 
1810 inline void QOpenGLFunctions_4_2_Core::glProvokingVertex(GLenum mode)
1811 {
1812     d_3_2_Core->f.ProvokingVertex(mode);
1813 }
1814 
1815 inline void QOpenGLFunctions_4_2_Core::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex)
1816 {
1817     d_3_2_Core->f.MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
1818 }
1819 
1820 inline void QOpenGLFunctions_4_2_Core::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex)
1821 {
1822     d_3_2_Core->f.DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
1823 }
1824 
1825 inline void QOpenGLFunctions_4_2_Core::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
1826 {
1827     d_3_2_Core->f.DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
1828 }
1829 
1830 inline void QOpenGLFunctions_4_2_Core::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
1831 {
1832     d_3_2_Core->f.DrawElementsBaseVertex(mode, count, type, indices, basevertex);
1833 }
1834 
1835 inline void QOpenGLFunctions_4_2_Core::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
1836 {
1837     d_3_2_Core->f.FramebufferTexture(target, attachment, texture, level);
1838 }
1839 
1840 inline void QOpenGLFunctions_4_2_Core::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
1841 {
1842     d_3_2_Core->f.GetBufferParameteri64v(target, pname, params);
1843 }
1844 
1845 inline void QOpenGLFunctions_4_2_Core::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
1846 {
1847     d_3_2_Core->f.GetInteger64i_v(target, index, data);
1848 }
1849 
1850 
1851 // OpenGL 3.3 core functions
1852 inline void QOpenGLFunctions_4_2_Core::glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
1853 {
1854     d_3_3_Core->f.VertexAttribP4uiv(index, type, normalized, value);
1855 }
1856 
1857 inline void QOpenGLFunctions_4_2_Core::glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
1858 {
1859     d_3_3_Core->f.VertexAttribP4ui(index, type, normalized, value);
1860 }
1861 
1862 inline void QOpenGLFunctions_4_2_Core::glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
1863 {
1864     d_3_3_Core->f.VertexAttribP3uiv(index, type, normalized, value);
1865 }
1866 
1867 inline void QOpenGLFunctions_4_2_Core::glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
1868 {
1869     d_3_3_Core->f.VertexAttribP3ui(index, type, normalized, value);
1870 }
1871 
1872 inline void QOpenGLFunctions_4_2_Core::glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
1873 {
1874     d_3_3_Core->f.VertexAttribP2uiv(index, type, normalized, value);
1875 }
1876 
1877 inline void QOpenGLFunctions_4_2_Core::glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
1878 {
1879     d_3_3_Core->f.VertexAttribP2ui(index, type, normalized, value);
1880 }
1881 
1882 inline void QOpenGLFunctions_4_2_Core::glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
1883 {
1884     d_3_3_Core->f.VertexAttribP1uiv(index, type, normalized, value);
1885 }
1886 
1887 inline void QOpenGLFunctions_4_2_Core::glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
1888 {
1889     d_3_3_Core->f.VertexAttribP1ui(index, type, normalized, value);
1890 }
1891 
1892 inline void QOpenGLFunctions_4_2_Core::glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)
1893 {
1894     d_3_3_Core->f.GetQueryObjectui64v(id, pname, params);
1895 }
1896 
1897 inline void QOpenGLFunctions_4_2_Core::glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)
1898 {
1899     d_3_3_Core->f.GetQueryObjecti64v(id, pname, params);
1900 }
1901 
1902 inline void QOpenGLFunctions_4_2_Core::glQueryCounter(GLuint id, GLenum target)
1903 {
1904     d_3_3_Core->f.QueryCounter(id, target);
1905 }
1906 
1907 inline void QOpenGLFunctions_4_2_Core::glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params)
1908 {
1909     d_3_3_Core->f.GetSamplerParameterIuiv(sampler, pname, params);
1910 }
1911 
1912 inline void QOpenGLFunctions_4_2_Core::glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
1913 {
1914     d_3_3_Core->f.GetSamplerParameterfv(sampler, pname, params);
1915 }
1916 
1917 inline void QOpenGLFunctions_4_2_Core::glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params)
1918 {
1919     d_3_3_Core->f.GetSamplerParameterIiv(sampler, pname, params);
1920 }
1921 
1922 inline void QOpenGLFunctions_4_2_Core::glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
1923 {
1924     d_3_3_Core->f.GetSamplerParameteriv(sampler, pname, params);
1925 }
1926 
1927 inline void QOpenGLFunctions_4_2_Core::glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)
1928 {
1929     d_3_3_Core->f.SamplerParameterIuiv(sampler, pname, param);
1930 }
1931 
1932 inline void QOpenGLFunctions_4_2_Core::glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)
1933 {
1934     d_3_3_Core->f.SamplerParameterIiv(sampler, pname, param);
1935 }
1936 
1937 inline void QOpenGLFunctions_4_2_Core::glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
1938 {
1939     d_3_3_Core->f.SamplerParameterfv(sampler, pname, param);
1940 }
1941 
1942 inline void QOpenGLFunctions_4_2_Core::glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
1943 {
1944     d_3_3_Core->f.SamplerParameterf(sampler, pname, param);
1945 }
1946 
1947 inline void QOpenGLFunctions_4_2_Core::glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
1948 {
1949     d_3_3_Core->f.SamplerParameteriv(sampler, pname, param);
1950 }
1951 
1952 inline void QOpenGLFunctions_4_2_Core::glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
1953 {
1954     d_3_3_Core->f.SamplerParameteri(sampler, pname, param);
1955 }
1956 
1957 inline void QOpenGLFunctions_4_2_Core::glBindSampler(GLuint unit, GLuint sampler)
1958 {
1959     d_3_3_Core->f.BindSampler(unit, sampler);
1960 }
1961 
1962 inline GLboolean QOpenGLFunctions_4_2_Core::glIsSampler(GLuint sampler)
1963 {
1964     return d_3_3_Core->f.IsSampler(sampler);
1965 }
1966 
1967 inline void QOpenGLFunctions_4_2_Core::glDeleteSamplers(GLsizei count, const GLuint *samplers)
1968 {
1969     d_3_3_Core->f.DeleteSamplers(count, samplers);
1970 }
1971 
1972 inline void QOpenGLFunctions_4_2_Core::glGenSamplers(GLsizei count, GLuint *samplers)
1973 {
1974     d_3_3_Core->f.GenSamplers(count, samplers);
1975 }
1976 
1977 inline GLint QOpenGLFunctions_4_2_Core::glGetFragDataIndex(GLuint program, const GLchar *name)
1978 {
1979     return d_3_3_Core->f.GetFragDataIndex(program, name);
1980 }
1981 
1982 inline void QOpenGLFunctions_4_2_Core::glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)
1983 {
1984     d_3_3_Core->f.BindFragDataLocationIndexed(program, colorNumber, index, name);
1985 }
1986 
1987 inline void QOpenGLFunctions_4_2_Core::glVertexAttribDivisor(GLuint index, GLuint divisor)
1988 {
1989     d_3_3_Core->f.VertexAttribDivisor(index, divisor);
1990 }
1991 
1992 
1993 // OpenGL 4.0 core functions
1994 inline void QOpenGLFunctions_4_2_Core::glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params)
1995 {
1996     d_4_0_Core->f.GetQueryIndexediv(target, index, pname, params);
1997 }
1998 
1999 inline void QOpenGLFunctions_4_2_Core::glEndQueryIndexed(GLenum target, GLuint index)
2000 {
2001     d_4_0_Core->f.EndQueryIndexed(target, index);
2002 }
2003 
2004 inline void QOpenGLFunctions_4_2_Core::glBeginQueryIndexed(GLenum target, GLuint index, GLuint id)
2005 {
2006     d_4_0_Core->f.BeginQueryIndexed(target, index, id);
2007 }
2008 
2009 inline void QOpenGLFunctions_4_2_Core::glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream)
2010 {
2011     d_4_0_Core->f.DrawTransformFeedbackStream(mode, id, stream);
2012 }
2013 
2014 inline void QOpenGLFunctions_4_2_Core::glDrawTransformFeedback(GLenum mode, GLuint id)
2015 {
2016     d_4_0_Core->f.DrawTransformFeedback(mode, id);
2017 }
2018 
2019 inline void QOpenGLFunctions_4_2_Core::glResumeTransformFeedback()
2020 {
2021     d_4_0_Core->f.ResumeTransformFeedback();
2022 }
2023 
2024 inline void QOpenGLFunctions_4_2_Core::glPauseTransformFeedback()
2025 {
2026     d_4_0_Core->f.PauseTransformFeedback();
2027 }
2028 
2029 inline GLboolean QOpenGLFunctions_4_2_Core::glIsTransformFeedback(GLuint id)
2030 {
2031     return d_4_0_Core->f.IsTransformFeedback(id);
2032 }
2033 
2034 inline void QOpenGLFunctions_4_2_Core::glGenTransformFeedbacks(GLsizei n, GLuint *ids)
2035 {
2036     d_4_0_Core->f.GenTransformFeedbacks(n, ids);
2037 }
2038 
2039 inline void QOpenGLFunctions_4_2_Core::glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids)
2040 {
2041     d_4_0_Core->f.DeleteTransformFeedbacks(n, ids);
2042 }
2043 
2044 inline void QOpenGLFunctions_4_2_Core::glBindTransformFeedback(GLenum target, GLuint id)
2045 {
2046     d_4_0_Core->f.BindTransformFeedback(target, id);
2047 }
2048 
2049 inline void QOpenGLFunctions_4_2_Core::glPatchParameterfv(GLenum pname, const GLfloat *values)
2050 {
2051     d_4_0_Core->f.PatchParameterfv(pname, values);
2052 }
2053 
2054 inline void QOpenGLFunctions_4_2_Core::glPatchParameteri(GLenum pname, GLint value)
2055 {
2056     d_4_0_Core->f.PatchParameteri(pname, value);
2057 }
2058 
2059 inline void QOpenGLFunctions_4_2_Core::glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values)
2060 {
2061     d_4_0_Core->f.GetProgramStageiv(program, shadertype, pname, values);
2062 }
2063 
2064 inline void QOpenGLFunctions_4_2_Core::glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params)
2065 {
2066     d_4_0_Core->f.GetUniformSubroutineuiv(shadertype, location, params);
2067 }
2068 
2069 inline void QOpenGLFunctions_4_2_Core::glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices)
2070 {
2071     d_4_0_Core->f.UniformSubroutinesuiv(shadertype, count, indices);
2072 }
2073 
2074 inline void QOpenGLFunctions_4_2_Core::glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
2075 {
2076     d_4_0_Core->f.GetActiveSubroutineName(program, shadertype, index, bufsize, length, name);
2077 }
2078 
2079 inline void QOpenGLFunctions_4_2_Core::glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
2080 {
2081     d_4_0_Core->f.GetActiveSubroutineUniformName(program, shadertype, index, bufsize, length, name);
2082 }
2083 
2084 inline void QOpenGLFunctions_4_2_Core::glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values)
2085 {
2086     d_4_0_Core->f.GetActiveSubroutineUniformiv(program, shadertype, index, pname, values);
2087 }
2088 
2089 inline GLuint QOpenGLFunctions_4_2_Core::glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name)
2090 {
2091     return d_4_0_Core->f.GetSubroutineIndex(program, shadertype, name);
2092 }
2093 
2094 inline GLint QOpenGLFunctions_4_2_Core::glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name)
2095 {
2096     return d_4_0_Core->f.GetSubroutineUniformLocation(program, shadertype, name);
2097 }
2098 
2099 inline void QOpenGLFunctions_4_2_Core::glGetUniformdv(GLuint program, GLint location, GLdouble *params)
2100 {
2101     d_4_0_Core->f.GetUniformdv(program, location, params);
2102 }
2103 
2104 inline void QOpenGLFunctions_4_2_Core::glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2105 {
2106     d_4_0_Core->f.UniformMatrix4x3dv(location, count, transpose, value);
2107 }
2108 
2109 inline void QOpenGLFunctions_4_2_Core::glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2110 {
2111     d_4_0_Core->f.UniformMatrix4x2dv(location, count, transpose, value);
2112 }
2113 
2114 inline void QOpenGLFunctions_4_2_Core::glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2115 {
2116     d_4_0_Core->f.UniformMatrix3x4dv(location, count, transpose, value);
2117 }
2118 
2119 inline void QOpenGLFunctions_4_2_Core::glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2120 {
2121     d_4_0_Core->f.UniformMatrix3x2dv(location, count, transpose, value);
2122 }
2123 
2124 inline void QOpenGLFunctions_4_2_Core::glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2125 {
2126     d_4_0_Core->f.UniformMatrix2x4dv(location, count, transpose, value);
2127 }
2128 
2129 inline void QOpenGLFunctions_4_2_Core::glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2130 {
2131     d_4_0_Core->f.UniformMatrix2x3dv(location, count, transpose, value);
2132 }
2133 
2134 inline void QOpenGLFunctions_4_2_Core::glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2135 {
2136     d_4_0_Core->f.UniformMatrix4dv(location, count, transpose, value);
2137 }
2138 
2139 inline void QOpenGLFunctions_4_2_Core::glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2140 {
2141     d_4_0_Core->f.UniformMatrix3dv(location, count, transpose, value);
2142 }
2143 
2144 inline void QOpenGLFunctions_4_2_Core::glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2145 {
2146     d_4_0_Core->f.UniformMatrix2dv(location, count, transpose, value);
2147 }
2148 
2149 inline void QOpenGLFunctions_4_2_Core::glUniform4dv(GLint location, GLsizei count, const GLdouble *value)
2150 {
2151     d_4_0_Core->f.Uniform4dv(location, count, value);
2152 }
2153 
2154 inline void QOpenGLFunctions_4_2_Core::glUniform3dv(GLint location, GLsizei count, const GLdouble *value)
2155 {
2156     d_4_0_Core->f.Uniform3dv(location, count, value);
2157 }
2158 
2159 inline void QOpenGLFunctions_4_2_Core::glUniform2dv(GLint location, GLsizei count, const GLdouble *value)
2160 {
2161     d_4_0_Core->f.Uniform2dv(location, count, value);
2162 }
2163 
2164 inline void QOpenGLFunctions_4_2_Core::glUniform1dv(GLint location, GLsizei count, const GLdouble *value)
2165 {
2166     d_4_0_Core->f.Uniform1dv(location, count, value);
2167 }
2168 
2169 inline void QOpenGLFunctions_4_2_Core::glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
2170 {
2171     d_4_0_Core->f.Uniform4d(location, x, y, z, w);
2172 }
2173 
2174 inline void QOpenGLFunctions_4_2_Core::glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z)
2175 {
2176     d_4_0_Core->f.Uniform3d(location, x, y, z);
2177 }
2178 
2179 inline void QOpenGLFunctions_4_2_Core::glUniform2d(GLint location, GLdouble x, GLdouble y)
2180 {
2181     d_4_0_Core->f.Uniform2d(location, x, y);
2182 }
2183 
2184 inline void QOpenGLFunctions_4_2_Core::glUniform1d(GLint location, GLdouble x)
2185 {
2186     d_4_0_Core->f.Uniform1d(location, x);
2187 }
2188 
2189 inline void QOpenGLFunctions_4_2_Core::glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect)
2190 {
2191     d_4_0_Core->f.DrawElementsIndirect(mode, type, indirect);
2192 }
2193 
2194 inline void QOpenGLFunctions_4_2_Core::glDrawArraysIndirect(GLenum mode, const GLvoid *indirect)
2195 {
2196     d_4_0_Core->f.DrawArraysIndirect(mode, indirect);
2197 }
2198 
2199 inline void QOpenGLFunctions_4_2_Core::glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
2200 {
2201     d_4_0_Core->f.BlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
2202 }
2203 
2204 inline void QOpenGLFunctions_4_2_Core::glBlendFunci(GLuint buf, GLenum src, GLenum dst)
2205 {
2206     d_4_0_Core->f.BlendFunci(buf, src, dst);
2207 }
2208 
2209 inline void QOpenGLFunctions_4_2_Core::glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha)
2210 {
2211     d_4_0_Core->f.BlendEquationSeparatei(buf, modeRGB, modeAlpha);
2212 }
2213 
2214 inline void QOpenGLFunctions_4_2_Core::glBlendEquationi(GLuint buf, GLenum mode)
2215 {
2216     d_4_0_Core->f.BlendEquationi(buf, mode);
2217 }
2218 
2219 inline void QOpenGLFunctions_4_2_Core::glMinSampleShading(GLfloat value)
2220 {
2221     d_4_0_Core->f.MinSampleShading(value);
2222 }
2223 
2224 
2225 // OpenGL 4.1 core functions
2226 inline void QOpenGLFunctions_4_2_Core::glGetDoublei_v(GLenum target, GLuint index, GLdouble *data)
2227 {
2228     d_4_1_Core->f.GetDoublei_v(target, index, data);
2229 }
2230 
2231 inline void QOpenGLFunctions_4_2_Core::glGetFloati_v(GLenum target, GLuint index, GLfloat *data)
2232 {
2233     d_4_1_Core->f.GetFloati_v(target, index, data);
2234 }
2235 
2236 inline void QOpenGLFunctions_4_2_Core::glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f)
2237 {
2238     d_4_1_Core->f.DepthRangeIndexed(index, n, f);
2239 }
2240 
2241 inline void QOpenGLFunctions_4_2_Core::glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v)
2242 {
2243     d_4_1_Core->f.DepthRangeArrayv(first, count, v);
2244 }
2245 
2246 inline void QOpenGLFunctions_4_2_Core::glScissorIndexedv(GLuint index, const GLint *v)
2247 {
2248     d_4_1_Core->f.ScissorIndexedv(index, v);
2249 }
2250 
2251 inline void QOpenGLFunctions_4_2_Core::glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height)
2252 {
2253     d_4_1_Core->f.ScissorIndexed(index, left, bottom, width, height);
2254 }
2255 
2256 inline void QOpenGLFunctions_4_2_Core::glScissorArrayv(GLuint first, GLsizei count, const GLint *v)
2257 {
2258     d_4_1_Core->f.ScissorArrayv(first, count, v);
2259 }
2260 
2261 inline void QOpenGLFunctions_4_2_Core::glViewportIndexedfv(GLuint index, const GLfloat *v)
2262 {
2263     d_4_1_Core->f.ViewportIndexedfv(index, v);
2264 }
2265 
2266 inline void QOpenGLFunctions_4_2_Core::glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h)
2267 {
2268     d_4_1_Core->f.ViewportIndexedf(index, x, y, w, h);
2269 }
2270 
2271 inline void QOpenGLFunctions_4_2_Core::glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v)
2272 {
2273     d_4_1_Core->f.ViewportArrayv(first, count, v);
2274 }
2275 
2276 inline void QOpenGLFunctions_4_2_Core::glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params)
2277 {
2278     d_4_1_Core->f.GetVertexAttribLdv(index, pname, params);
2279 }
2280 
2281 inline void QOpenGLFunctions_4_2_Core::glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
2282 {
2283     d_4_1_Core->f.VertexAttribLPointer(index, size, type, stride, pointer);
2284 }
2285 
2286 inline void QOpenGLFunctions_4_2_Core::glVertexAttribL4dv(GLuint index, const GLdouble *v)
2287 {
2288     d_4_1_Core->f.VertexAttribL4dv(index, v);
2289 }
2290 
2291 inline void QOpenGLFunctions_4_2_Core::glVertexAttribL3dv(GLuint index, const GLdouble *v)
2292 {
2293     d_4_1_Core->f.VertexAttribL3dv(index, v);
2294 }
2295 
2296 inline void QOpenGLFunctions_4_2_Core::glVertexAttribL2dv(GLuint index, const GLdouble *v)
2297 {
2298     d_4_1_Core->f.VertexAttribL2dv(index, v);
2299 }
2300 
2301 inline void QOpenGLFunctions_4_2_Core::glVertexAttribL1dv(GLuint index, const GLdouble *v)
2302 {
2303     d_4_1_Core->f.VertexAttribL1dv(index, v);
2304 }
2305 
2306 inline void QOpenGLFunctions_4_2_Core::glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
2307 {
2308     d_4_1_Core->f.VertexAttribL4d(index, x, y, z, w);
2309 }
2310 
2311 inline void QOpenGLFunctions_4_2_Core::glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
2312 {
2313     d_4_1_Core->f.VertexAttribL3d(index, x, y, z);
2314 }
2315 
2316 inline void QOpenGLFunctions_4_2_Core::glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y)
2317 {
2318     d_4_1_Core->f.VertexAttribL2d(index, x, y);
2319 }
2320 
2321 inline void QOpenGLFunctions_4_2_Core::glVertexAttribL1d(GLuint index, GLdouble x)
2322 {
2323     d_4_1_Core->f.VertexAttribL1d(index, x);
2324 }
2325 
2326 inline void QOpenGLFunctions_4_2_Core::glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
2327 {
2328     d_4_1_Core->f.GetProgramPipelineInfoLog(pipeline, bufSize, length, infoLog);
2329 }
2330 
2331 inline void QOpenGLFunctions_4_2_Core::glValidateProgramPipeline(GLuint pipeline)
2332 {
2333     d_4_1_Core->f.ValidateProgramPipeline(pipeline);
2334 }
2335 
2336 inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2337 {
2338     d_4_1_Core->f.ProgramUniformMatrix4x3dv(program, location, count, transpose, value);
2339 }
2340 
2341 inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2342 {
2343     d_4_1_Core->f.ProgramUniformMatrix3x4dv(program, location, count, transpose, value);
2344 }
2345 
2346 inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2347 {
2348     d_4_1_Core->f.ProgramUniformMatrix4x2dv(program, location, count, transpose, value);
2349 }
2350 
2351 inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2352 {
2353     d_4_1_Core->f.ProgramUniformMatrix2x4dv(program, location, count, transpose, value);
2354 }
2355 
2356 inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2357 {
2358     d_4_1_Core->f.ProgramUniformMatrix3x2dv(program, location, count, transpose, value);
2359 }
2360 
2361 inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2362 {
2363     d_4_1_Core->f.ProgramUniformMatrix2x3dv(program, location, count, transpose, value);
2364 }
2365 
2366 inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2367 {
2368     d_4_1_Core->f.ProgramUniformMatrix4x3fv(program, location, count, transpose, value);
2369 }
2370 
2371 inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2372 {
2373     d_4_1_Core->f.ProgramUniformMatrix3x4fv(program, location, count, transpose, value);
2374 }
2375 
2376 inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2377 {
2378     d_4_1_Core->f.ProgramUniformMatrix4x2fv(program, location, count, transpose, value);
2379 }
2380 
2381 inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2382 {
2383     d_4_1_Core->f.ProgramUniformMatrix2x4fv(program, location, count, transpose, value);
2384 }
2385 
2386 inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2387 {
2388     d_4_1_Core->f.ProgramUniformMatrix3x2fv(program, location, count, transpose, value);
2389 }
2390 
2391 inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2392 {
2393     d_4_1_Core->f.ProgramUniformMatrix2x3fv(program, location, count, transpose, value);
2394 }
2395 
2396 inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2397 {
2398     d_4_1_Core->f.ProgramUniformMatrix4dv(program, location, count, transpose, value);
2399 }
2400 
2401 inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2402 {
2403     d_4_1_Core->f.ProgramUniformMatrix3dv(program, location, count, transpose, value);
2404 }
2405 
2406 inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2407 {
2408     d_4_1_Core->f.ProgramUniformMatrix2dv(program, location, count, transpose, value);
2409 }
2410 
2411 inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2412 {
2413     d_4_1_Core->f.ProgramUniformMatrix4fv(program, location, count, transpose, value);
2414 }
2415 
2416 inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2417 {
2418     d_4_1_Core->f.ProgramUniformMatrix3fv(program, location, count, transpose, value);
2419 }
2420 
2421 inline void QOpenGLFunctions_4_2_Core::glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2422 {
2423     d_4_1_Core->f.ProgramUniformMatrix2fv(program, location, count, transpose, value);
2424 }
2425 
2426 inline void QOpenGLFunctions_4_2_Core::glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
2427 {
2428     d_4_1_Core->f.ProgramUniform4uiv(program, location, count, value);
2429 }
2430 
2431 inline void QOpenGLFunctions_4_2_Core::glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
2432 {
2433     d_4_1_Core->f.ProgramUniform4ui(program, location, v0, v1, v2, v3);
2434 }
2435 
2436 inline void QOpenGLFunctions_4_2_Core::glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
2437 {
2438     d_4_1_Core->f.ProgramUniform4dv(program, location, count, value);
2439 }
2440 
2441 inline void QOpenGLFunctions_4_2_Core::glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3)
2442 {
2443     d_4_1_Core->f.ProgramUniform4d(program, location, v0, v1, v2, v3);
2444 }
2445 
2446 inline void QOpenGLFunctions_4_2_Core::glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
2447 {
2448     d_4_1_Core->f.ProgramUniform4fv(program, location, count, value);
2449 }
2450 
2451 inline void QOpenGLFunctions_4_2_Core::glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
2452 {
2453     d_4_1_Core->f.ProgramUniform4f(program, location, v0, v1, v2, v3);
2454 }
2455 
2456 inline void QOpenGLFunctions_4_2_Core::glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value)
2457 {
2458     d_4_1_Core->f.ProgramUniform4iv(program, location, count, value);
2459 }
2460 
2461 inline void QOpenGLFunctions_4_2_Core::glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
2462 {
2463     d_4_1_Core->f.ProgramUniform4i(program, location, v0, v1, v2, v3);
2464 }
2465 
2466 inline void QOpenGLFunctions_4_2_Core::glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
2467 {
2468     d_4_1_Core->f.ProgramUniform3uiv(program, location, count, value);
2469 }
2470 
2471 inline void QOpenGLFunctions_4_2_Core::glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2)
2472 {
2473     d_4_1_Core->f.ProgramUniform3ui(program, location, v0, v1, v2);
2474 }
2475 
2476 inline void QOpenGLFunctions_4_2_Core::glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
2477 {
2478     d_4_1_Core->f.ProgramUniform3dv(program, location, count, value);
2479 }
2480 
2481 inline void QOpenGLFunctions_4_2_Core::glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2)
2482 {
2483     d_4_1_Core->f.ProgramUniform3d(program, location, v0, v1, v2);
2484 }
2485 
2486 inline void QOpenGLFunctions_4_2_Core::glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
2487 {
2488     d_4_1_Core->f.ProgramUniform3fv(program, location, count, value);
2489 }
2490 
2491 inline void QOpenGLFunctions_4_2_Core::glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
2492 {
2493     d_4_1_Core->f.ProgramUniform3f(program, location, v0, v1, v2);
2494 }
2495 
2496 inline void QOpenGLFunctions_4_2_Core::glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value)
2497 {
2498     d_4_1_Core->f.ProgramUniform3iv(program, location, count, value);
2499 }
2500 
2501 inline void QOpenGLFunctions_4_2_Core::glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2)
2502 {
2503     d_4_1_Core->f.ProgramUniform3i(program, location, v0, v1, v2);
2504 }
2505 
2506 inline void QOpenGLFunctions_4_2_Core::glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
2507 {
2508     d_4_1_Core->f.ProgramUniform2uiv(program, location, count, value);
2509 }
2510 
2511 inline void QOpenGLFunctions_4_2_Core::glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1)
2512 {
2513     d_4_1_Core->f.ProgramUniform2ui(program, location, v0, v1);
2514 }
2515 
2516 inline void QOpenGLFunctions_4_2_Core::glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
2517 {
2518     d_4_1_Core->f.ProgramUniform2dv(program, location, count, value);
2519 }
2520 
2521 inline void QOpenGLFunctions_4_2_Core::glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1)
2522 {
2523     d_4_1_Core->f.ProgramUniform2d(program, location, v0, v1);
2524 }
2525 
2526 inline void QOpenGLFunctions_4_2_Core::glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
2527 {
2528     d_4_1_Core->f.ProgramUniform2fv(program, location, count, value);
2529 }
2530 
2531 inline void QOpenGLFunctions_4_2_Core::glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1)
2532 {
2533     d_4_1_Core->f.ProgramUniform2f(program, location, v0, v1);
2534 }
2535 
2536 inline void QOpenGLFunctions_4_2_Core::glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value)
2537 {
2538     d_4_1_Core->f.ProgramUniform2iv(program, location, count, value);
2539 }
2540 
2541 inline void QOpenGLFunctions_4_2_Core::glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1)
2542 {
2543     d_4_1_Core->f.ProgramUniform2i(program, location, v0, v1);
2544 }
2545 
2546 inline void QOpenGLFunctions_4_2_Core::glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
2547 {
2548     d_4_1_Core->f.ProgramUniform1uiv(program, location, count, value);
2549 }
2550 
2551 inline void QOpenGLFunctions_4_2_Core::glProgramUniform1ui(GLuint program, GLint location, GLuint v0)
2552 {
2553     d_4_1_Core->f.ProgramUniform1ui(program, location, v0);
2554 }
2555 
2556 inline void QOpenGLFunctions_4_2_Core::glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
2557 {
2558     d_4_1_Core->f.ProgramUniform1dv(program, location, count, value);
2559 }
2560 
2561 inline void QOpenGLFunctions_4_2_Core::glProgramUniform1d(GLuint program, GLint location, GLdouble v0)
2562 {
2563     d_4_1_Core->f.ProgramUniform1d(program, location, v0);
2564 }
2565 
2566 inline void QOpenGLFunctions_4_2_Core::glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
2567 {
2568     d_4_1_Core->f.ProgramUniform1fv(program, location, count, value);
2569 }
2570 
2571 inline void QOpenGLFunctions_4_2_Core::glProgramUniform1f(GLuint program, GLint location, GLfloat v0)
2572 {
2573     d_4_1_Core->f.ProgramUniform1f(program, location, v0);
2574 }
2575 
2576 inline void QOpenGLFunctions_4_2_Core::glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value)
2577 {
2578     d_4_1_Core->f.ProgramUniform1iv(program, location, count, value);
2579 }
2580 
2581 inline void QOpenGLFunctions_4_2_Core::glProgramUniform1i(GLuint program, GLint location, GLint v0)
2582 {
2583     d_4_1_Core->f.ProgramUniform1i(program, location, v0);
2584 }
2585 
2586 inline void QOpenGLFunctions_4_2_Core::glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params)
2587 {
2588     d_4_1_Core->f.GetProgramPipelineiv(pipeline, pname, params);
2589 }
2590 
2591 inline GLboolean QOpenGLFunctions_4_2_Core::glIsProgramPipeline(GLuint pipeline)
2592 {
2593     return d_4_1_Core->f.IsProgramPipeline(pipeline);
2594 }
2595 
2596 inline void QOpenGLFunctions_4_2_Core::glGenProgramPipelines(GLsizei n, GLuint *pipelines)
2597 {
2598     d_4_1_Core->f.GenProgramPipelines(n, pipelines);
2599 }
2600 
2601 inline void QOpenGLFunctions_4_2_Core::glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines)
2602 {
2603     d_4_1_Core->f.DeleteProgramPipelines(n, pipelines);
2604 }
2605 
2606 inline void QOpenGLFunctions_4_2_Core::glBindProgramPipeline(GLuint pipeline)
2607 {
2608     d_4_1_Core->f.BindProgramPipeline(pipeline);
2609 }
2610 
2611 inline GLuint QOpenGLFunctions_4_2_Core::glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar* const *strings)
2612 {
2613     return d_4_1_Core->f.CreateShaderProgramv(type, count, strings);
2614 }
2615 
2616 inline void QOpenGLFunctions_4_2_Core::glActiveShaderProgram(GLuint pipeline, GLuint program)
2617 {
2618     d_4_1_Core->f.ActiveShaderProgram(pipeline, program);
2619 }
2620 
2621 inline void QOpenGLFunctions_4_2_Core::glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program)
2622 {
2623     d_4_1_Core->f.UseProgramStages(pipeline, stages, program);
2624 }
2625 
2626 inline void QOpenGLFunctions_4_2_Core::glProgramParameteri(GLuint program, GLenum pname, GLint value)
2627 {
2628     d_4_1_Core->f.ProgramParameteri(program, pname, value);
2629 }
2630 
2631 inline void QOpenGLFunctions_4_2_Core::glProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length)
2632 {
2633     d_4_1_Core->f.ProgramBinary(program, binaryFormat, binary, length);
2634 }
2635 
2636 inline void QOpenGLFunctions_4_2_Core::glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary)
2637 {
2638     d_4_1_Core->f.GetProgramBinary(program, bufSize, length, binaryFormat, binary);
2639 }
2640 
2641 inline void QOpenGLFunctions_4_2_Core::glClearDepthf(GLfloat dd)
2642 {
2643     d_4_1_Core->f.ClearDepthf(dd);
2644 }
2645 
2646 inline void QOpenGLFunctions_4_2_Core::glDepthRangef(GLfloat n, GLfloat f)
2647 {
2648     d_4_1_Core->f.DepthRangef(n, f);
2649 }
2650 
2651 inline void QOpenGLFunctions_4_2_Core::glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)
2652 {
2653     d_4_1_Core->f.GetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
2654 }
2655 
2656 inline void QOpenGLFunctions_4_2_Core::glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length)
2657 {
2658     d_4_1_Core->f.ShaderBinary(count, shaders, binaryformat, binary, length);
2659 }
2660 
2661 inline void QOpenGLFunctions_4_2_Core::glReleaseShaderCompiler()
2662 {
2663     d_4_1_Core->f.ReleaseShaderCompiler();
2664 }
2665 
2666 
2667 // OpenGL 4.2 core functions
2668 inline void QOpenGLFunctions_4_2_Core::glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth)
2669 {
2670     d_4_2_Core->f.TexStorage3D(target, levels, internalformat, width, height, depth);
2671 }
2672 
2673 inline void QOpenGLFunctions_4_2_Core::glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)
2674 {
2675     d_4_2_Core->f.TexStorage2D(target, levels, internalformat, width, height);
2676 }
2677 
2678 inline void QOpenGLFunctions_4_2_Core::glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width)
2679 {
2680     d_4_2_Core->f.TexStorage1D(target, levels, internalformat, width);
2681 }
2682 
2683 inline void QOpenGLFunctions_4_2_Core::glMemoryBarrier(GLbitfield barriers)
2684 {
2685     d_4_2_Core->f.MemoryBarrier(barriers);
2686 }
2687 
2688 inline void QOpenGLFunctions_4_2_Core::glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format)
2689 {
2690     d_4_2_Core->f.BindImageTexture(unit, texture, level, layered, layer, access, format);
2691 }
2692 
2693 inline void QOpenGLFunctions_4_2_Core::glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params)
2694 {
2695     d_4_2_Core->f.GetActiveAtomicCounterBufferiv(program, bufferIndex, pname, params);
2696 }
2697 
2698 inline void QOpenGLFunctions_4_2_Core::glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params)
2699 {
2700     d_4_2_Core->f.GetInternalformativ(target, internalformat, pname, bufSize, params);
2701 }
2702 
2703 inline void QOpenGLFunctions_4_2_Core::glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount)
2704 {
2705     d_4_2_Core->f.DrawTransformFeedbackStreamInstanced(mode, id, stream, instancecount);
2706 }
2707 
2708 inline void QOpenGLFunctions_4_2_Core::glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount)
2709 {
2710     d_4_2_Core->f.DrawTransformFeedbackInstanced(mode, id, instancecount);
2711 }
2712 
2713 inline void QOpenGLFunctions_4_2_Core::glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance)
2714 {
2715     d_4_2_Core->f.DrawElementsInstancedBaseVertexBaseInstance(mode, count, type, indices, instancecount, basevertex, baseinstance);
2716 }
2717 
2718 inline void QOpenGLFunctions_4_2_Core::glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance)
2719 {
2720     d_4_2_Core->f.DrawElementsInstancedBaseInstance(mode, count, type, indices, instancecount, baseinstance);
2721 }
2722 
2723 inline void QOpenGLFunctions_4_2_Core::glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance)
2724 {
2725     d_4_2_Core->f.DrawArraysInstancedBaseInstance(mode, first, count, instancecount, baseinstance);
2726 }
2727 
2728 
2729 
2730 QT_END_NAMESPACE
2731 
2732 #ifdef Q_OS_WIN
2733 #pragma pop_macro("MemoryBarrier")
2734 #endif
2735 
2736 #endif // QT_NO_OPENGL && !QT_CONFIG(opengles2)
2737 
2738 #endif