Back to home page

EIC code displayed by LXR

 
 

    


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

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