1/****************************************************************************
2**
3** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
4** Copyright (C) 2016 The Qt Company Ltd.
5** Contact: https://www.qt.io/licensing/
6**
7** This file is part of the QtGui module of the Qt Toolkit.
8**
9** $QT_BEGIN_LICENSE:LGPL$
10** Commercial License Usage
11** Licensees holding valid commercial Qt licenses may use this file in
12** accordance with the commercial license agreement provided with the
13** Software or, alternatively, in accordance with the terms contained in
14** a written agreement between you and The Qt Company. For licensing terms
15** and conditions see https://www.qt.io/terms-conditions. For further
16** information use the contact form at https://www.qt.io/contact-us.
17**
18** GNU Lesser General Public License Usage
19** Alternatively, this file may be used under the terms of the GNU Lesser
20** General Public License version 3 as published by the Free Software
21** Foundation and appearing in the file LICENSE.LGPL3 included in the
22** packaging of this file. Please review the following information to
23** ensure the GNU Lesser General Public License version 3 requirements
24** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
25**
26** GNU General Public License Usage
27** Alternatively, this file may be used under the terms of the GNU
28** General Public License version 2.0 or (at your option) the GNU General
29** Public license version 3 or any later version approved by the KDE Free
30** Qt Foundation. The licenses are as published by the Free Software
31** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
32** included in the packaging of this file. Please review the following
33** information to ensure the GNU General Public License requirements will
34** be met: https://www.gnu.org/licenses/gpl-2.0.html and
35** https://www.gnu.org/licenses/gpl-3.0.html.
36**
37** $QT_END_LICENSE$
38**
39**
40** This file was generated by glgen version 0.1
41** Command line was: glgen
42**
43** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
44**
45** This is an auto-generated file.
46** Do not edit! All changes made to it will be lost.
47**
48****************************************************************************/
49
50#ifndef QOPENGLVERSIONFUNCTIONS_4_0_CORE_H
51#define QOPENGLVERSIONFUNCTIONS_4_0_CORE_H
52
53#include <QtGui/qtguiglobal.h>
54
55#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_2)
56
57#include <QtGui/QOpenGLVersionFunctions>
58#include <QtGui/qopenglcontext.h>
59
60QT_BEGIN_NAMESPACE
61
62class Q_GUI_EXPORT QOpenGLFunctions_4_0_Core : public QAbstractOpenGLFunctions
63{
64public:
65 QOpenGLFunctions_4_0_Core();
66 ~QOpenGLFunctions_4_0_Core();
67
68 bool initializeOpenGLFunctions() override;
69
70 // OpenGL 1.0 core functions
71 void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
72 void glDepthRange(GLdouble nearVal, GLdouble farVal);
73 GLboolean glIsEnabled(GLenum cap);
74 void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
75 void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
76 void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
77 void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
78 void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
79 const GLubyte * glGetString(GLenum name);
80 void glGetIntegerv(GLenum pname, GLint *params);
81 void glGetFloatv(GLenum pname, GLfloat *params);
82 GLenum glGetError();
83 void glGetDoublev(GLenum pname, GLdouble *params);
84 void glGetBooleanv(GLenum pname, GLboolean *params);
85 void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
86 void glReadBuffer(GLenum mode);
87 void glPixelStorei(GLenum pname, GLint param);
88 void glPixelStoref(GLenum pname, GLfloat param);
89 void glDepthFunc(GLenum func);
90 void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
91 void glStencilFunc(GLenum func, GLint ref, GLuint mask);
92 void glLogicOp(GLenum opcode);
93 void glBlendFunc(GLenum sfactor, GLenum dfactor);
94 void glFlush();
95 void glFinish();
96 void glEnable(GLenum cap);
97 void glDisable(GLenum cap);
98 void glDepthMask(GLboolean flag);
99 void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
100 void glStencilMask(GLuint mask);
101 void glClearDepth(GLdouble depth);
102 void glClearStencil(GLint s);
103 void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
104 void glClear(GLbitfield mask);
105 void glDrawBuffer(GLenum mode);
106 void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
107 void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
108 void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
109 void glTexParameteri(GLenum target, GLenum pname, GLint param);
110 void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
111 void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
112 void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
113 void glPolygonMode(GLenum face, GLenum mode);
114 void glPointSize(GLfloat size);
115 void glLineWidth(GLfloat width);
116 void glHint(GLenum target, GLenum mode);
117 void glFrontFace(GLenum mode);
118 void glCullFace(GLenum mode);
119
120 // OpenGL 1.1 core functions
121 void glIndexubv(const GLubyte *c);
122 void glIndexub(GLubyte c);
123 GLboolean glIsTexture(GLuint texture);
124 void glGenTextures(GLsizei n, GLuint *textures);
125 void glDeleteTextures(GLsizei n, const GLuint *textures);
126 void glBindTexture(GLenum target, GLuint texture);
127 void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
128 void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
129 void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
130 void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
131 void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
132 void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
133 void glPolygonOffset(GLfloat factor, GLfloat units);
134 void glGetPointerv(GLenum pname, GLvoid* *params);
135 void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
136 void glDrawArrays(GLenum mode, GLint first, GLsizei count);
137
138 // OpenGL 1.2 core functions
139 void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
140 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);
141 void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
142 void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
143 void glBlendEquation(GLenum mode);
144 void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
145
146 // OpenGL 1.3 core functions
147 void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
148 void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
149 void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
150 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);
151 void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
152 void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
153 void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
154 void glSampleCoverage(GLfloat value, GLboolean invert);
155 void glActiveTexture(GLenum texture);
156
157 // OpenGL 1.4 core functions
158 void glPointParameteriv(GLenum pname, const GLint *params);
159 void glPointParameteri(GLenum pname, GLint param);
160 void glPointParameterfv(GLenum pname, const GLfloat *params);
161 void glPointParameterf(GLenum pname, GLfloat param);
162 void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
163 void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
164 void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
165
166 // OpenGL 1.5 core functions
167 void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
168 void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
169 GLboolean glUnmapBuffer(GLenum target);
170 GLvoid* glMapBuffer(GLenum target, GLenum access);
171 void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
172 void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
173 void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
174 GLboolean glIsBuffer(GLuint buffer);
175 void glGenBuffers(GLsizei n, GLuint *buffers);
176 void glDeleteBuffers(GLsizei n, const GLuint *buffers);
177 void glBindBuffer(GLenum target, GLuint buffer);
178 void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
179 void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
180 void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
181 void glEndQuery(GLenum target);
182 void glBeginQuery(GLenum target, GLuint id);
183 GLboolean glIsQuery(GLuint id);
184 void glDeleteQueries(GLsizei n, const GLuint *ids);
185 void glGenQueries(GLsizei n, GLuint *ids);
186
187 // OpenGL 2.0 core functions
188 void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
189 void glValidateProgram(GLuint program);
190 void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
191 void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
192 void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
193 void glUniform4iv(GLint location, GLsizei count, const GLint *value);
194 void glUniform3iv(GLint location, GLsizei count, const GLint *value);
195 void glUniform2iv(GLint location, GLsizei count, const GLint *value);
196 void glUniform1iv(GLint location, GLsizei count, const GLint *value);
197 void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
198 void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
199 void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
200 void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
201 void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
202 void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
203 void glUniform2i(GLint location, GLint v0, GLint v1);
204 void glUniform1i(GLint location, GLint v0);
205 void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
206 void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
207 void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
208 void glUniform1f(GLint location, GLfloat v0);
209 void glUseProgram(GLuint program);
210 void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
211 void glLinkProgram(GLuint program);
212 GLboolean glIsShader(GLuint shader);
213 GLboolean glIsProgram(GLuint program);
214 void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
215 void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
216 void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
217 void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
218 void glGetUniformiv(GLuint program, GLint location, GLint *params);
219 void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
220 GLint glGetUniformLocation(GLuint program, const GLchar *name);
221 void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
222 void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
223 void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
224 void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
225 void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
226 GLint glGetAttribLocation(GLuint program, const GLchar *name);
227 void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
228 void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
229 void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
230 void glEnableVertexAttribArray(GLuint index);
231 void glDisableVertexAttribArray(GLuint index);
232 void glDetachShader(GLuint program, GLuint shader);
233 void glDeleteShader(GLuint shader);
234 void glDeleteProgram(GLuint program);
235 GLuint glCreateShader(GLenum type);
236 GLuint glCreateProgram();
237 void glCompileShader(GLuint shader);
238 void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
239 void glAttachShader(GLuint program, GLuint shader);
240 void glStencilMaskSeparate(GLenum face, GLuint mask);
241 void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
242 void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
243 void glDrawBuffers(GLsizei n, const GLenum *bufs);
244 void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
245
246 // OpenGL 2.1 core functions
247 void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
248 void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
249 void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
250 void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
251 void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
252 void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
253
254 // OpenGL 3.0 core functions
255 GLboolean glIsVertexArray(GLuint array);
256 void glGenVertexArrays(GLsizei n, GLuint *arrays);
257 void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
258 void glBindVertexArray(GLuint array);
259 void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
260 GLvoid* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
261 void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
262 void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
263 void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
264 void glGenerateMipmap(GLenum target);
265 void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
266 void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
267 void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
268 void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
269 void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
270 GLenum glCheckFramebufferStatus(GLenum target);
271 void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
272 void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
273 void glBindFramebuffer(GLenum target, GLuint framebuffer);
274 GLboolean glIsFramebuffer(GLuint framebuffer);
275 void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
276 void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
277 void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
278 void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
279 void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
280 GLboolean glIsRenderbuffer(GLuint renderbuffer);
281 const GLubyte * glGetStringi(GLenum name, GLuint index);
282 void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
283 void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
284 void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
285 void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
286 void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
287 void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
288 void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
289 void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
290 void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
291 void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
292 void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
293 void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
294 void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
295 void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
296 void glUniform2ui(GLint location, GLuint v0, GLuint v1);
297 void glUniform1ui(GLint location, GLuint v0);
298 GLint glGetFragDataLocation(GLuint program, const GLchar *name);
299 void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
300 void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
301 void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
302 void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
303 void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
304 void glEndConditionalRender();
305 void glBeginConditionalRender(GLuint id, GLenum mode);
306 void glClampColor(GLenum target, GLenum clamp);
307 void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
308 void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
309 void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
310 void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
311 void glEndTransformFeedback();
312 void glBeginTransformFeedback(GLenum primitiveMode);
313 GLboolean glIsEnabledi(GLenum target, GLuint index);
314 void glDisablei(GLenum target, GLuint index);
315 void glEnablei(GLenum target, GLuint index);
316 void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
317 void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
318 void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
319
320 // OpenGL 3.1 core functions
321 void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
322 void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
323 void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
324 void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
325 GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
326 void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
327 void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
328 void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
329 void glPrimitiveRestartIndex(GLuint index);
330 void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
331 void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
332 void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
333
334 // OpenGL 3.2 core functions
335 void glSampleMaski(GLuint index, GLbitfield mask);
336 void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
337 void glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
338 void glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
339 void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
340 void glGetInteger64v(GLenum pname, GLint64 *params);
341 void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
342 GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
343 void glDeleteSync(GLsync sync);
344 GLboolean glIsSync(GLsync sync);
345 GLsync glFenceSync(GLenum condition, GLbitfield flags);
346 void glProvokingVertex(GLenum mode);
347 void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
348 void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex);
349 void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
350 void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
351 void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
352 void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
353 void glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
354
355 // OpenGL 3.3 core functions
356 void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
357 void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
358 void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
359 void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
360 void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
361 void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
362 void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
363 void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
364 void glSecondaryColorP3uiv(GLenum type, const GLuint *color);
365 void glSecondaryColorP3ui(GLenum type, GLuint color);
366 void glColorP4uiv(GLenum type, const GLuint *color);
367 void glColorP4ui(GLenum type, GLuint color);
368 void glColorP3uiv(GLenum type, const GLuint *color);
369 void glColorP3ui(GLenum type, GLuint color);
370 void glNormalP3uiv(GLenum type, const GLuint *coords);
371 void glNormalP3ui(GLenum type, GLuint coords);
372 void glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords);
373 void glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords);
374 void glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords);
375 void glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords);
376 void glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords);
377 void glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords);
378 void glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords);
379 void glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords);
380 void glTexCoordP4uiv(GLenum type, const GLuint *coords);
381 void glTexCoordP4ui(GLenum type, GLuint coords);
382 void glTexCoordP3uiv(GLenum type, const GLuint *coords);
383 void glTexCoordP3ui(GLenum type, GLuint coords);
384 void glTexCoordP2uiv(GLenum type, const GLuint *coords);
385 void glTexCoordP2ui(GLenum type, GLuint coords);
386 void glTexCoordP1uiv(GLenum type, const GLuint *coords);
387 void glTexCoordP1ui(GLenum type, GLuint coords);
388 void glVertexP4uiv(GLenum type, const GLuint *value);
389 void glVertexP4ui(GLenum type, GLuint value);
390 void glVertexP3uiv(GLenum type, const GLuint *value);
391 void glVertexP3ui(GLenum type, GLuint value);
392 void glVertexP2uiv(GLenum type, const GLuint *value);
393 void glVertexP2ui(GLenum type, GLuint value);
394 void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params);
395 void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params);
396 void glQueryCounter(GLuint id, GLenum target);
397 void glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params);
398 void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
399 void glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params);
400 void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
401 void glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param);
402 void glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param);
403 void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param);
404 void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
405 void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param);
406 void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param);
407 void glBindSampler(GLuint unit, GLuint sampler);
408 GLboolean glIsSampler(GLuint sampler);
409 void glDeleteSamplers(GLsizei count, const GLuint *samplers);
410 void glGenSamplers(GLsizei count, GLuint *samplers);
411 GLint glGetFragDataIndex(GLuint program, const GLchar *name);
412 void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
413 void glVertexAttribDivisor(GLuint index, GLuint divisor);
414
415 // OpenGL 4.0 core functions
416 void glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params);
417 void glEndQueryIndexed(GLenum target, GLuint index);
418 void glBeginQueryIndexed(GLenum target, GLuint index, GLuint id);
419 void glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream);
420 void glDrawTransformFeedback(GLenum mode, GLuint id);
421 void glResumeTransformFeedback();
422 void glPauseTransformFeedback();
423 GLboolean glIsTransformFeedback(GLuint id);
424 void glGenTransformFeedbacks(GLsizei n, GLuint *ids);
425 void glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids);
426 void glBindTransformFeedback(GLenum target, GLuint id);
427 void glPatchParameterfv(GLenum pname, const GLfloat *values);
428 void glPatchParameteri(GLenum pname, GLint value);
429 void glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values);
430 void glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params);
431 void glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices);
432 void glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
433 void glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
434 void glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
435 GLuint glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name);
436 GLint glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name);
437 void glGetUniformdv(GLuint program, GLint location, GLdouble *params);
438 void glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
439 void glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
440 void glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
441 void glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
442 void glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
443 void glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
444 void glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
445 void glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
446 void glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
447 void glUniform4dv(GLint location, GLsizei count, const GLdouble *value);
448 void glUniform3dv(GLint location, GLsizei count, const GLdouble *value);
449 void glUniform2dv(GLint location, GLsizei count, const GLdouble *value);
450 void glUniform1dv(GLint location, GLsizei count, const GLdouble *value);
451 void glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
452 void glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z);
453 void glUniform2d(GLint location, GLdouble x, GLdouble y);
454 void glUniform1d(GLint location, GLdouble x);
455 void glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect);
456 void glDrawArraysIndirect(GLenum mode, const GLvoid *indirect);
457 void glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
458 void glBlendFunci(GLuint buf, GLenum src, GLenum dst);
459 void glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha);
460 void glBlendEquationi(GLuint buf, GLenum mode);
461 void glMinSampleShading(GLfloat value);
462
463private:
464 friend class QOpenGLContext;
465
466 static bool isContextCompatible(QOpenGLContext *context);
467 static QOpenGLVersionProfile versionProfile();
468
469 QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
470 QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
471 QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
472 QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
473 QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
474 QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
475 QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
476 QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
477 QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
478 QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
479 QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
480 QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
481 QOpenGLFunctions_4_0_CoreBackend* d_4_0_Core;
482};
483
484// OpenGL 1.0 core functions
485inline void QOpenGLFunctions_4_0_Core::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
486{
487 d_1_0_Core->f.Viewport(x, y, width, height);
488}
489
490inline void QOpenGLFunctions_4_0_Core::glDepthRange(GLdouble nearVal, GLdouble farVal)
491{
492 d_1_0_Core->f.DepthRange(nearVal, farVal);
493}
494
495inline GLboolean QOpenGLFunctions_4_0_Core::glIsEnabled(GLenum cap)
496{
497 return d_1_0_Core->f.IsEnabled(cap);
498}
499
500inline void QOpenGLFunctions_4_0_Core::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
501{
502 d_1_0_Core->f.GetTexLevelParameteriv(target, level, pname, params);
503}
504
505inline void QOpenGLFunctions_4_0_Core::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
506{
507 d_1_0_Core->f.GetTexLevelParameterfv(target, level, pname, params);
508}
509
510inline void QOpenGLFunctions_4_0_Core::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
511{
512 d_1_0_Core->f.GetTexParameteriv(target, pname, params);
513}
514
515inline void QOpenGLFunctions_4_0_Core::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
516{
517 d_1_0_Core->f.GetTexParameterfv(target, pname, params);
518}
519
520inline void QOpenGLFunctions_4_0_Core::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
521{
522 d_1_0_Core->f.GetTexImage(target, level, format, type, pixels);
523}
524
525inline const GLubyte * QOpenGLFunctions_4_0_Core::glGetString(GLenum name)
526{
527 return d_1_0_Core->f.GetString(name);
528}
529
530inline void QOpenGLFunctions_4_0_Core::glGetIntegerv(GLenum pname, GLint *params)
531{
532 d_1_0_Core->f.GetIntegerv(pname, params);
533}
534
535inline void QOpenGLFunctions_4_0_Core::glGetFloatv(GLenum pname, GLfloat *params)
536{
537 d_1_0_Core->f.GetFloatv(pname, params);
538}
539
540inline GLenum QOpenGLFunctions_4_0_Core::glGetError()
541{
542 return d_1_0_Core->f.GetError();
543}
544
545inline void QOpenGLFunctions_4_0_Core::glGetDoublev(GLenum pname, GLdouble *params)
546{
547 d_1_0_Core->f.GetDoublev(pname, params);
548}
549
550inline void QOpenGLFunctions_4_0_Core::glGetBooleanv(GLenum pname, GLboolean *params)
551{
552 d_1_0_Core->f.GetBooleanv(pname, params);
553}
554
555inline void QOpenGLFunctions_4_0_Core::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
556{
557 d_1_0_Core->f.ReadPixels(x, y, width, height, format, type, pixels);
558}
559
560inline void QOpenGLFunctions_4_0_Core::glReadBuffer(GLenum mode)
561{
562 d_1_0_Core->f.ReadBuffer(mode);
563}
564
565inline void QOpenGLFunctions_4_0_Core::glPixelStorei(GLenum pname, GLint param)
566{
567 d_1_0_Core->f.PixelStorei(pname, param);
568}
569
570inline void QOpenGLFunctions_4_0_Core::glPixelStoref(GLenum pname, GLfloat param)
571{
572 d_1_0_Core->f.PixelStoref(pname, param);
573}
574
575inline void QOpenGLFunctions_4_0_Core::glDepthFunc(GLenum func)
576{
577 d_1_0_Core->f.DepthFunc(func);
578}
579
580inline void QOpenGLFunctions_4_0_Core::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
581{
582 d_1_0_Core->f.StencilOp(fail, zfail, zpass);
583}
584
585inline void QOpenGLFunctions_4_0_Core::glStencilFunc(GLenum func, GLint ref, GLuint mask)
586{
587 d_1_0_Core->f.StencilFunc(func, ref, mask);
588}
589
590inline void QOpenGLFunctions_4_0_Core::glLogicOp(GLenum opcode)
591{
592 d_1_0_Core->f.LogicOp(opcode);
593}
594
595inline void QOpenGLFunctions_4_0_Core::glBlendFunc(GLenum sfactor, GLenum dfactor)
596{
597 d_1_0_Core->f.BlendFunc(sfactor, dfactor);
598}
599
600inline void QOpenGLFunctions_4_0_Core::glFlush()
601{
602 d_1_0_Core->f.Flush();
603}
604
605inline void QOpenGLFunctions_4_0_Core::glFinish()
606{
607 d_1_0_Core->f.Finish();
608}
609
610inline void QOpenGLFunctions_4_0_Core::glEnable(GLenum cap)
611{
612 d_1_0_Core->f.Enable(cap);
613}
614
615inline void QOpenGLFunctions_4_0_Core::glDisable(GLenum cap)
616{
617 d_1_0_Core->f.Disable(cap);
618}
619
620inline void QOpenGLFunctions_4_0_Core::glDepthMask(GLboolean flag)
621{
622 d_1_0_Core->f.DepthMask(flag);
623}
624
625inline void QOpenGLFunctions_4_0_Core::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
626{
627 d_1_0_Core->f.ColorMask(red, green, blue, alpha);
628}
629
630inline void QOpenGLFunctions_4_0_Core::glStencilMask(GLuint mask)
631{
632 d_1_0_Core->f.StencilMask(mask);
633}
634
635inline void QOpenGLFunctions_4_0_Core::glClearDepth(GLdouble depth)
636{
637 d_1_0_Core->f.ClearDepth(depth);
638}
639
640inline void QOpenGLFunctions_4_0_Core::glClearStencil(GLint s)
641{
642 d_1_0_Core->f.ClearStencil(s);
643}
644
645inline void QOpenGLFunctions_4_0_Core::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
646{
647 d_1_0_Core->f.ClearColor(red, green, blue, alpha);
648}
649
650inline void QOpenGLFunctions_4_0_Core::glClear(GLbitfield mask)
651{
652 d_1_0_Core->f.Clear(mask);
653}
654
655inline void QOpenGLFunctions_4_0_Core::glDrawBuffer(GLenum mode)
656{
657 d_1_0_Core->f.DrawBuffer(mode);
658}
659
660inline void QOpenGLFunctions_4_0_Core::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
661{
662 d_1_0_Core->f.TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
663}
664
665inline void QOpenGLFunctions_4_0_Core::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
666{
667 d_1_0_Core->f.TexImage1D(target, level, internalformat, width, border, format, type, pixels);
668}
669
670inline void QOpenGLFunctions_4_0_Core::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
671{
672 d_1_0_Core->f.TexParameteriv(target, pname, params);
673}
674
675inline void QOpenGLFunctions_4_0_Core::glTexParameteri(GLenum target, GLenum pname, GLint param)
676{
677 d_1_0_Core->f.TexParameteri(target, pname, param);
678}
679
680inline void QOpenGLFunctions_4_0_Core::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
681{
682 d_1_0_Core->f.TexParameterfv(target, pname, params);
683}
684
685inline void QOpenGLFunctions_4_0_Core::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
686{
687 d_1_0_Core->f.TexParameterf(target, pname, param);
688}
689
690inline void QOpenGLFunctions_4_0_Core::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
691{
692 d_1_0_Core->f.Scissor(x, y, width, height);
693}
694
695inline void QOpenGLFunctions_4_0_Core::glPolygonMode(GLenum face, GLenum mode)
696{
697 d_1_0_Core->f.PolygonMode(face, mode);
698}
699
700inline void QOpenGLFunctions_4_0_Core::glPointSize(GLfloat size)
701{
702 d_1_0_Core->f.PointSize(size);
703}
704
705inline void QOpenGLFunctions_4_0_Core::glLineWidth(GLfloat width)
706{
707 d_1_0_Core->f.LineWidth(width);
708}
709
710inline void QOpenGLFunctions_4_0_Core::glHint(GLenum target, GLenum mode)
711{
712 d_1_0_Core->f.Hint(target, mode);
713}
714
715inline void QOpenGLFunctions_4_0_Core::glFrontFace(GLenum mode)
716{
717 d_1_0_Core->f.FrontFace(mode);
718}
719
720inline void QOpenGLFunctions_4_0_Core::glCullFace(GLenum mode)
721{
722 d_1_0_Core->f.CullFace(mode);
723}
724
725
726// OpenGL 1.1 core functions
727inline void QOpenGLFunctions_4_0_Core::glIndexubv(const GLubyte *c)
728{
729 Q_UNUSED(c);
730 QOPENGL_DEPRECATEDFUNCTION;
731}
732
733inline void QOpenGLFunctions_4_0_Core::glIndexub(GLubyte c)
734{
735 Q_UNUSED(c);
736 QOPENGL_DEPRECATEDFUNCTION;
737}
738
739inline GLboolean QOpenGLFunctions_4_0_Core::glIsTexture(GLuint texture)
740{
741 return d_1_1_Core->f.IsTexture(texture);
742}
743
744inline void QOpenGLFunctions_4_0_Core::glGenTextures(GLsizei n, GLuint *textures)
745{
746 d_1_1_Core->f.GenTextures(n, textures);
747}
748
749inline void QOpenGLFunctions_4_0_Core::glDeleteTextures(GLsizei n, const GLuint *textures)
750{
751 d_1_1_Core->f.DeleteTextures(n, textures);
752}
753
754inline void QOpenGLFunctions_4_0_Core::glBindTexture(GLenum target, GLuint texture)
755{
756 d_1_1_Core->f.BindTexture(target, texture);
757}
758
759inline void QOpenGLFunctions_4_0_Core::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
760{
761 d_1_1_Core->f.TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
762}
763
764inline void QOpenGLFunctions_4_0_Core::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
765{
766 d_1_1_Core->f.TexSubImage1D(target, level, xoffset, width, format, type, pixels);
767}
768
769inline void QOpenGLFunctions_4_0_Core::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
770{
771 d_1_1_Core->f.CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
772}
773
774inline void QOpenGLFunctions_4_0_Core::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
775{
776 d_1_1_Core->f.CopyTexSubImage1D(target, level, xoffset, x, y, width);
777}
778
779inline void QOpenGLFunctions_4_0_Core::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
780{
781 d_1_1_Core->f.CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
782}
783
784inline void QOpenGLFunctions_4_0_Core::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
785{
786 d_1_1_Core->f.CopyTexImage1D(target, level, internalformat, x, y, width, border);
787}
788
789inline void QOpenGLFunctions_4_0_Core::glPolygonOffset(GLfloat factor, GLfloat units)
790{
791 d_1_1_Core->f.PolygonOffset(factor, units);
792}
793
794inline void QOpenGLFunctions_4_0_Core::glGetPointerv(GLenum pname, GLvoid* *params)
795{
796 Q_UNUSED(pname);
797 Q_UNUSED(params);
798 QOPENGL_DEPRECATEDFUNCTION;
799}
800
801inline void QOpenGLFunctions_4_0_Core::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
802{
803 d_1_1_Core->f.DrawElements(mode, count, type, indices);
804}
805
806inline void QOpenGLFunctions_4_0_Core::glDrawArrays(GLenum mode, GLint first, GLsizei count)
807{
808 d_1_1_Core->f.DrawArrays(mode, first, count);
809}
810
811
812// OpenGL 1.2 core functions
813inline void QOpenGLFunctions_4_0_Core::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
814{
815 d_1_2_Core->f.CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
816}
817
818inline void QOpenGLFunctions_4_0_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)
819{
820 d_1_2_Core->f.TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
821}
822
823inline void QOpenGLFunctions_4_0_Core::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
824{
825 d_1_2_Core->f.TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
826}
827
828inline void QOpenGLFunctions_4_0_Core::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
829{
830 d_1_2_Core->f.DrawRangeElements(mode, start, end, count, type, indices);
831}
832
833inline void QOpenGLFunctions_4_0_Core::glBlendEquation(GLenum mode)
834{
835 d_1_2_Core->f.BlendEquation(mode);
836}
837
838inline void QOpenGLFunctions_4_0_Core::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
839{
840 d_1_2_Core->f.BlendColor(red, green, blue, alpha);
841}
842
843
844// OpenGL 1.3 core functions
845inline void QOpenGLFunctions_4_0_Core::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
846{
847 d_1_3_Core->f.GetCompressedTexImage(target, level, img);
848}
849
850inline void QOpenGLFunctions_4_0_Core::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
851{
852 d_1_3_Core->f.CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
853}
854
855inline void QOpenGLFunctions_4_0_Core::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
856{
857 d_1_3_Core->f.CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
858}
859
860inline void QOpenGLFunctions_4_0_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)
861{
862 d_1_3_Core->f.CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
863}
864
865inline void QOpenGLFunctions_4_0_Core::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
866{
867 d_1_3_Core->f.CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
868}
869
870inline void QOpenGLFunctions_4_0_Core::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
871{
872 d_1_3_Core->f.CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
873}
874
875inline void QOpenGLFunctions_4_0_Core::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
876{
877 d_1_3_Core->f.CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
878}
879
880inline void QOpenGLFunctions_4_0_Core::glSampleCoverage(GLfloat value, GLboolean invert)
881{
882 d_1_3_Core->f.SampleCoverage(value, invert);
883}
884
885inline void QOpenGLFunctions_4_0_Core::glActiveTexture(GLenum texture)
886{
887 d_1_3_Core->f.ActiveTexture(texture);
888}
889
890
891// OpenGL 1.4 core functions
892inline void QOpenGLFunctions_4_0_Core::glPointParameteriv(GLenum pname, const GLint *params)
893{
894 d_1_4_Core->f.PointParameteriv(pname, params);
895}
896
897inline void QOpenGLFunctions_4_0_Core::glPointParameteri(GLenum pname, GLint param)
898{
899 d_1_4_Core->f.PointParameteri(pname, param);
900}
901
902inline void QOpenGLFunctions_4_0_Core::glPointParameterfv(GLenum pname, const GLfloat *params)
903{
904 d_1_4_Core->f.PointParameterfv(pname, params);
905}
906
907inline void QOpenGLFunctions_4_0_Core::glPointParameterf(GLenum pname, GLfloat param)
908{
909 d_1_4_Core->f.PointParameterf(pname, param);
910}
911
912inline void QOpenGLFunctions_4_0_Core::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
913{
914 d_1_4_Core->f.MultiDrawElements(mode, count, type, indices, drawcount);
915}
916
917inline void QOpenGLFunctions_4_0_Core::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
918{
919 d_1_4_Core->f.MultiDrawArrays(mode, first, count, drawcount);
920}
921
922inline void QOpenGLFunctions_4_0_Core::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
923{
924 d_1_4_Core->f.BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
925}
926
927
928// OpenGL 1.5 core functions
929inline void QOpenGLFunctions_4_0_Core::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
930{
931 d_1_5_Core->f.GetBufferPointerv(target, pname, params);
932}
933
934inline void QOpenGLFunctions_4_0_Core::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
935{
936 d_1_5_Core->f.GetBufferParameteriv(target, pname, params);
937}
938
939inline GLboolean QOpenGLFunctions_4_0_Core::glUnmapBuffer(GLenum target)
940{
941 return d_1_5_Core->f.UnmapBuffer(target);
942}
943
944inline GLvoid* QOpenGLFunctions_4_0_Core::glMapBuffer(GLenum target, GLenum access)
945{
946 return d_1_5_Core->f.MapBuffer(target, access);
947}
948
949inline void QOpenGLFunctions_4_0_Core::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
950{
951 d_1_5_Core->f.GetBufferSubData(target, offset, size, data);
952}
953
954inline void QOpenGLFunctions_4_0_Core::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
955{
956 d_1_5_Core->f.BufferSubData(target, offset, size, data);
957}
958
959inline void QOpenGLFunctions_4_0_Core::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
960{
961 d_1_5_Core->f.BufferData(target, size, data, usage);
962}
963
964inline GLboolean QOpenGLFunctions_4_0_Core::glIsBuffer(GLuint buffer)
965{
966 return d_1_5_Core->f.IsBuffer(buffer);
967}
968
969inline void QOpenGLFunctions_4_0_Core::glGenBuffers(GLsizei n, GLuint *buffers)
970{
971 d_1_5_Core->f.GenBuffers(n, buffers);
972}
973
974inline void QOpenGLFunctions_4_0_Core::glDeleteBuffers(GLsizei n, const GLuint *buffers)
975{
976 d_1_5_Core->f.DeleteBuffers(n, buffers);
977}
978
979inline void QOpenGLFunctions_4_0_Core::glBindBuffer(GLenum target, GLuint buffer)
980{
981 d_1_5_Core->f.BindBuffer(target, buffer);
982}
983
984inline void QOpenGLFunctions_4_0_Core::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
985{
986 d_1_5_Core->f.GetQueryObjectuiv(id, pname, params);
987}
988
989inline void QOpenGLFunctions_4_0_Core::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
990{
991 d_1_5_Core->f.GetQueryObjectiv(id, pname, params);
992}
993
994inline void QOpenGLFunctions_4_0_Core::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
995{
996 d_1_5_Core->f.GetQueryiv(target, pname, params);
997}
998
999inline void QOpenGLFunctions_4_0_Core::glEndQuery(GLenum target)
1000{
1001 d_1_5_Core->f.EndQuery(target);
1002}
1003
1004inline void QOpenGLFunctions_4_0_Core::glBeginQuery(GLenum target, GLuint id)
1005{
1006 d_1_5_Core->f.BeginQuery(target, id);
1007}
1008
1009inline GLboolean QOpenGLFunctions_4_0_Core::glIsQuery(GLuint id)
1010{
1011 return d_1_5_Core->f.IsQuery(id);
1012}
1013
1014inline void QOpenGLFunctions_4_0_Core::glDeleteQueries(GLsizei n, const GLuint *ids)
1015{
1016 d_1_5_Core->f.DeleteQueries(n, ids);
1017}
1018
1019inline void QOpenGLFunctions_4_0_Core::glGenQueries(GLsizei n, GLuint *ids)
1020{
1021 d_1_5_Core->f.GenQueries(n, ids);
1022}
1023
1024
1025// OpenGL 2.0 core functions
1026inline void QOpenGLFunctions_4_0_Core::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
1027{
1028 d_2_0_Core->f.VertexAttribPointer(index, size, type, normalized, stride, pointer);
1029}
1030
1031inline void QOpenGLFunctions_4_0_Core::glValidateProgram(GLuint program)
1032{
1033 d_2_0_Core->f.ValidateProgram(program);
1034}
1035
1036inline void QOpenGLFunctions_4_0_Core::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1037{
1038 d_2_0_Core->f.UniformMatrix4fv(location, count, transpose, value);
1039}
1040
1041inline void QOpenGLFunctions_4_0_Core::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1042{
1043 d_2_0_Core->f.UniformMatrix3fv(location, count, transpose, value);
1044}
1045
1046inline void QOpenGLFunctions_4_0_Core::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1047{
1048 d_2_0_Core->f.UniformMatrix2fv(location, count, transpose, value);
1049}
1050
1051inline void QOpenGLFunctions_4_0_Core::glUniform4iv(GLint location, GLsizei count, const GLint *value)
1052{
1053 d_2_0_Core->f.Uniform4iv(location, count, value);
1054}
1055
1056inline void QOpenGLFunctions_4_0_Core::glUniform3iv(GLint location, GLsizei count, const GLint *value)
1057{
1058 d_2_0_Core->f.Uniform3iv(location, count, value);
1059}
1060
1061inline void QOpenGLFunctions_4_0_Core::glUniform2iv(GLint location, GLsizei count, const GLint *value)
1062{
1063 d_2_0_Core->f.Uniform2iv(location, count, value);
1064}
1065
1066inline void QOpenGLFunctions_4_0_Core::glUniform1iv(GLint location, GLsizei count, const GLint *value)
1067{
1068 d_2_0_Core->f.Uniform1iv(location, count, value);
1069}
1070
1071inline void QOpenGLFunctions_4_0_Core::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
1072{
1073 d_2_0_Core->f.Uniform4fv(location, count, value);
1074}
1075
1076inline void QOpenGLFunctions_4_0_Core::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
1077{
1078 d_2_0_Core->f.Uniform3fv(location, count, value);
1079}
1080
1081inline void QOpenGLFunctions_4_0_Core::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
1082{
1083 d_2_0_Core->f.Uniform2fv(location, count, value);
1084}
1085
1086inline void QOpenGLFunctions_4_0_Core::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
1087{
1088 d_2_0_Core->f.Uniform1fv(location, count, value);
1089}
1090
1091inline void QOpenGLFunctions_4_0_Core::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
1092{
1093 d_2_0_Core->f.Uniform4i(location, v0, v1, v2, v3);
1094}
1095
1096inline void QOpenGLFunctions_4_0_Core::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
1097{
1098 d_2_0_Core->f.Uniform3i(location, v0, v1, v2);
1099}
1100
1101inline void QOpenGLFunctions_4_0_Core::glUniform2i(GLint location, GLint v0, GLint v1)
1102{
1103 d_2_0_Core->f.Uniform2i(location, v0, v1);
1104}
1105
1106inline void QOpenGLFunctions_4_0_Core::glUniform1i(GLint location, GLint v0)
1107{
1108 d_2_0_Core->f.Uniform1i(location, v0);
1109}
1110
1111inline void QOpenGLFunctions_4_0_Core::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
1112{
1113 d_2_0_Core->f.Uniform4f(location, v0, v1, v2, v3);
1114}
1115
1116inline void QOpenGLFunctions_4_0_Core::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
1117{
1118 d_2_0_Core->f.Uniform3f(location, v0, v1, v2);
1119}
1120
1121inline void QOpenGLFunctions_4_0_Core::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
1122{
1123 d_2_0_Core->f.Uniform2f(location, v0, v1);
1124}
1125
1126inline void QOpenGLFunctions_4_0_Core::glUniform1f(GLint location, GLfloat v0)
1127{
1128 d_2_0_Core->f.Uniform1f(location, v0);
1129}
1130
1131inline void QOpenGLFunctions_4_0_Core::glUseProgram(GLuint program)
1132{
1133 d_2_0_Core->f.UseProgram(program);
1134}
1135
1136inline void QOpenGLFunctions_4_0_Core::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
1137{
1138 d_2_0_Core->f.ShaderSource(shader, count, string, length);
1139}
1140
1141inline void QOpenGLFunctions_4_0_Core::glLinkProgram(GLuint program)
1142{
1143 d_2_0_Core->f.LinkProgram(program);
1144}
1145
1146inline GLboolean QOpenGLFunctions_4_0_Core::glIsShader(GLuint shader)
1147{
1148 return d_2_0_Core->f.IsShader(shader);
1149}
1150
1151inline GLboolean QOpenGLFunctions_4_0_Core::glIsProgram(GLuint program)
1152{
1153 return d_2_0_Core->f.IsProgram(program);
1154}
1155
1156inline void QOpenGLFunctions_4_0_Core::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
1157{
1158 d_2_0_Core->f.GetVertexAttribPointerv(index, pname, pointer);
1159}
1160
1161inline void QOpenGLFunctions_4_0_Core::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
1162{
1163 d_2_0_Core->f.GetVertexAttribiv(index, pname, params);
1164}
1165
1166inline void QOpenGLFunctions_4_0_Core::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
1167{
1168 d_2_0_Core->f.GetVertexAttribfv(index, pname, params);
1169}
1170
1171inline void QOpenGLFunctions_4_0_Core::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
1172{
1173 d_2_0_Core->f.GetVertexAttribdv(index, pname, params);
1174}
1175
1176inline void QOpenGLFunctions_4_0_Core::glGetUniformiv(GLuint program, GLint location, GLint *params)
1177{
1178 d_2_0_Core->f.GetUniformiv(program, location, params);
1179}
1180
1181inline void QOpenGLFunctions_4_0_Core::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
1182{
1183 d_2_0_Core->f.GetUniformfv(program, location, params);
1184}
1185
1186inline GLint QOpenGLFunctions_4_0_Core::glGetUniformLocation(GLuint program, const GLchar *name)
1187{
1188 return d_2_0_Core->f.GetUniformLocation(program, name);
1189}
1190
1191inline void QOpenGLFunctions_4_0_Core::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
1192{
1193 d_2_0_Core->f.GetShaderSource(shader, bufSize, length, source);
1194}
1195
1196inline void QOpenGLFunctions_4_0_Core::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
1197{
1198 d_2_0_Core->f.GetShaderInfoLog(shader, bufSize, length, infoLog);
1199}
1200
1201inline void QOpenGLFunctions_4_0_Core::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
1202{
1203 d_2_0_Core->f.GetShaderiv(shader, pname, params);
1204}
1205
1206inline void QOpenGLFunctions_4_0_Core::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
1207{
1208 d_2_0_Core->f.GetProgramInfoLog(program, bufSize, length, infoLog);
1209}
1210
1211inline void QOpenGLFunctions_4_0_Core::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
1212{
1213 d_2_0_Core->f.GetProgramiv(program, pname, params);
1214}
1215
1216inline GLint QOpenGLFunctions_4_0_Core::glGetAttribLocation(GLuint program, const GLchar *name)
1217{
1218 return d_2_0_Core->f.GetAttribLocation(program, name);
1219}
1220
1221inline void QOpenGLFunctions_4_0_Core::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
1222{
1223 d_2_0_Core->f.GetAttachedShaders(program, maxCount, count, obj);
1224}
1225
1226inline void QOpenGLFunctions_4_0_Core::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
1227{
1228 d_2_0_Core->f.GetActiveUniform(program, index, bufSize, length, size, type, name);
1229}
1230
1231inline void QOpenGLFunctions_4_0_Core::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
1232{
1233 d_2_0_Core->f.GetActiveAttrib(program, index, bufSize, length, size, type, name);
1234}
1235
1236inline void QOpenGLFunctions_4_0_Core::glEnableVertexAttribArray(GLuint index)
1237{
1238 d_2_0_Core->f.EnableVertexAttribArray(index);
1239}
1240
1241inline void QOpenGLFunctions_4_0_Core::glDisableVertexAttribArray(GLuint index)
1242{
1243 d_2_0_Core->f.DisableVertexAttribArray(index);
1244}
1245
1246inline void QOpenGLFunctions_4_0_Core::glDetachShader(GLuint program, GLuint shader)
1247{
1248 d_2_0_Core->f.DetachShader(program, shader);
1249}
1250
1251inline void QOpenGLFunctions_4_0_Core::glDeleteShader(GLuint shader)
1252{
1253 d_2_0_Core->f.DeleteShader(shader);
1254}
1255
1256inline void QOpenGLFunctions_4_0_Core::glDeleteProgram(GLuint program)
1257{
1258 d_2_0_Core->f.DeleteProgram(program);
1259}
1260
1261inline GLuint QOpenGLFunctions_4_0_Core::glCreateShader(GLenum type)
1262{
1263 return d_2_0_Core->f.CreateShader(type);
1264}
1265
1266inline GLuint QOpenGLFunctions_4_0_Core::glCreateProgram()
1267{
1268 return d_2_0_Core->f.CreateProgram();
1269}
1270
1271inline void QOpenGLFunctions_4_0_Core::glCompileShader(GLuint shader)
1272{
1273 d_2_0_Core->f.CompileShader(shader);
1274}
1275
1276inline void QOpenGLFunctions_4_0_Core::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
1277{
1278 d_2_0_Core->f.BindAttribLocation(program, index, name);
1279}
1280
1281inline void QOpenGLFunctions_4_0_Core::glAttachShader(GLuint program, GLuint shader)
1282{
1283 d_2_0_Core->f.AttachShader(program, shader);
1284}
1285
1286inline void QOpenGLFunctions_4_0_Core::glStencilMaskSeparate(GLenum face, GLuint mask)
1287{
1288 d_2_0_Core->f.StencilMaskSeparate(face, mask);
1289}
1290
1291inline void QOpenGLFunctions_4_0_Core::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
1292{
1293 d_2_0_Core->f.StencilFuncSeparate(face, func, ref, mask);
1294}
1295
1296inline void QOpenGLFunctions_4_0_Core::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
1297{
1298 d_2_0_Core->f.StencilOpSeparate(face, sfail, dpfail, dppass);
1299}
1300
1301inline void QOpenGLFunctions_4_0_Core::glDrawBuffers(GLsizei n, const GLenum *bufs)
1302{
1303 d_2_0_Core->f.DrawBuffers(n, bufs);
1304}
1305
1306inline void QOpenGLFunctions_4_0_Core::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
1307{
1308 d_2_0_Core->f.BlendEquationSeparate(modeRGB, modeAlpha);
1309}
1310
1311
1312// OpenGL 2.1 core functions
1313inline void QOpenGLFunctions_4_0_Core::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1314{
1315 d_2_1_Core->f.UniformMatrix4x3fv(location, count, transpose, value);
1316}
1317
1318inline void QOpenGLFunctions_4_0_Core::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1319{
1320 d_2_1_Core->f.UniformMatrix3x4fv(location, count, transpose, value);
1321}
1322
1323inline void QOpenGLFunctions_4_0_Core::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1324{
1325 d_2_1_Core->f.UniformMatrix4x2fv(location, count, transpose, value);
1326}
1327
1328inline void QOpenGLFunctions_4_0_Core::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1329{
1330 d_2_1_Core->f.UniformMatrix2x4fv(location, count, transpose, value);
1331}
1332
1333inline void QOpenGLFunctions_4_0_Core::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1334{
1335 d_2_1_Core->f.UniformMatrix3x2fv(location, count, transpose, value);
1336}
1337
1338inline void QOpenGLFunctions_4_0_Core::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1339{
1340 d_2_1_Core->f.UniformMatrix2x3fv(location, count, transpose, value);
1341}
1342
1343
1344// OpenGL 3.0 core functions
1345inline GLboolean QOpenGLFunctions_4_0_Core::glIsVertexArray(GLuint array)
1346{
1347 return d_3_0_Core->f.IsVertexArray(array);
1348}
1349
1350inline void QOpenGLFunctions_4_0_Core::glGenVertexArrays(GLsizei n, GLuint *arrays)
1351{
1352 d_3_0_Core->f.GenVertexArrays(n, arrays);
1353}
1354
1355inline void QOpenGLFunctions_4_0_Core::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
1356{
1357 d_3_0_Core->f.DeleteVertexArrays(n, arrays);
1358}
1359
1360inline void QOpenGLFunctions_4_0_Core::glBindVertexArray(GLuint array)
1361{
1362 d_3_0_Core->f.BindVertexArray(array);
1363}
1364
1365inline void QOpenGLFunctions_4_0_Core::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
1366{
1367 d_3_0_Core->f.FlushMappedBufferRange(target, offset, length);
1368}
1369
1370inline GLvoid* QOpenGLFunctions_4_0_Core::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
1371{
1372 return d_3_0_Core->f.MapBufferRange(target, offset, length, access);
1373}
1374
1375inline void QOpenGLFunctions_4_0_Core::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
1376{
1377 d_3_0_Core->f.FramebufferTextureLayer(target, attachment, texture, level, layer);
1378}
1379
1380inline void QOpenGLFunctions_4_0_Core::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
1381{
1382 d_3_0_Core->f.RenderbufferStorageMultisample(target, samples, internalformat, width, height);
1383}
1384
1385inline void QOpenGLFunctions_4_0_Core::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
1386{
1387 d_3_0_Core->f.BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
1388}
1389
1390inline void QOpenGLFunctions_4_0_Core::glGenerateMipmap(GLenum target)
1391{
1392 d_3_0_Core->f.GenerateMipmap(target);
1393}
1394
1395inline void QOpenGLFunctions_4_0_Core::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
1396{
1397 d_3_0_Core->f.GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
1398}
1399
1400inline void QOpenGLFunctions_4_0_Core::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
1401{
1402 d_3_0_Core->f.FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
1403}
1404
1405inline void QOpenGLFunctions_4_0_Core::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
1406{
1407 d_3_0_Core->f.FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
1408}
1409
1410inline void QOpenGLFunctions_4_0_Core::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
1411{
1412 d_3_0_Core->f.FramebufferTexture2D(target, attachment, textarget, texture, level);
1413}
1414
1415inline void QOpenGLFunctions_4_0_Core::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
1416{
1417 d_3_0_Core->f.FramebufferTexture1D(target, attachment, textarget, texture, level);
1418}
1419
1420inline GLenum QOpenGLFunctions_4_0_Core::glCheckFramebufferStatus(GLenum target)
1421{
1422 return d_3_0_Core->f.CheckFramebufferStatus(target);
1423}
1424
1425inline void QOpenGLFunctions_4_0_Core::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
1426{
1427 d_3_0_Core->f.GenFramebuffers(n, framebuffers);
1428}
1429
1430inline void QOpenGLFunctions_4_0_Core::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
1431{
1432 d_3_0_Core->f.DeleteFramebuffers(n, framebuffers);
1433}
1434
1435inline void QOpenGLFunctions_4_0_Core::glBindFramebuffer(GLenum target, GLuint framebuffer)
1436{
1437 d_3_0_Core->f.BindFramebuffer(target, framebuffer);
1438}
1439
1440inline GLboolean QOpenGLFunctions_4_0_Core::glIsFramebuffer(GLuint framebuffer)
1441{
1442 return d_3_0_Core->f.IsFramebuffer(framebuffer);
1443}
1444
1445inline void QOpenGLFunctions_4_0_Core::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
1446{
1447 d_3_0_Core->f.GetRenderbufferParameteriv(target, pname, params);
1448}
1449
1450inline void QOpenGLFunctions_4_0_Core::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
1451{
1452 d_3_0_Core->f.RenderbufferStorage(target, internalformat, width, height);
1453}
1454
1455inline void QOpenGLFunctions_4_0_Core::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
1456{
1457 d_3_0_Core->f.GenRenderbuffers(n, renderbuffers);
1458}
1459
1460inline void QOpenGLFunctions_4_0_Core::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
1461{
1462 d_3_0_Core->f.DeleteRenderbuffers(n, renderbuffers);
1463}
1464
1465inline void QOpenGLFunctions_4_0_Core::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
1466{
1467 d_3_0_Core->f.BindRenderbuffer(target, renderbuffer);
1468}
1469
1470inline GLboolean QOpenGLFunctions_4_0_Core::glIsRenderbuffer(GLuint renderbuffer)
1471{
1472 return d_3_0_Core->f.IsRenderbuffer(renderbuffer);
1473}
1474
1475inline const GLubyte * QOpenGLFunctions_4_0_Core::glGetStringi(GLenum name, GLuint index)
1476{
1477 return d_3_0_Core->f.GetStringi(name, index);
1478}
1479
1480inline void QOpenGLFunctions_4_0_Core::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
1481{
1482 d_3_0_Core->f.ClearBufferfi(buffer, drawbuffer, depth, stencil);
1483}
1484
1485inline void QOpenGLFunctions_4_0_Core::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
1486{
1487 d_3_0_Core->f.ClearBufferfv(buffer, drawbuffer, value);
1488}
1489
1490inline void QOpenGLFunctions_4_0_Core::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
1491{
1492 d_3_0_Core->f.ClearBufferuiv(buffer, drawbuffer, value);
1493}
1494
1495inline void QOpenGLFunctions_4_0_Core::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
1496{
1497 d_3_0_Core->f.ClearBufferiv(buffer, drawbuffer, value);
1498}
1499
1500inline void QOpenGLFunctions_4_0_Core::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
1501{
1502 d_3_0_Core->f.GetTexParameterIuiv(target, pname, params);
1503}
1504
1505inline void QOpenGLFunctions_4_0_Core::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
1506{
1507 d_3_0_Core->f.GetTexParameterIiv(target, pname, params);
1508}
1509
1510inline void QOpenGLFunctions_4_0_Core::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
1511{
1512 d_3_0_Core->f.TexParameterIuiv(target, pname, params);
1513}
1514
1515inline void QOpenGLFunctions_4_0_Core::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
1516{
1517 d_3_0_Core->f.TexParameterIiv(target, pname, params);
1518}
1519
1520inline void QOpenGLFunctions_4_0_Core::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
1521{
1522 d_3_0_Core->f.Uniform4uiv(location, count, value);
1523}
1524
1525inline void QOpenGLFunctions_4_0_Core::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
1526{
1527 d_3_0_Core->f.Uniform3uiv(location, count, value);
1528}
1529
1530inline void QOpenGLFunctions_4_0_Core::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
1531{
1532 d_3_0_Core->f.Uniform2uiv(location, count, value);
1533}
1534
1535inline void QOpenGLFunctions_4_0_Core::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
1536{
1537 d_3_0_Core->f.Uniform1uiv(location, count, value);
1538}
1539
1540inline void QOpenGLFunctions_4_0_Core::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
1541{
1542 d_3_0_Core->f.Uniform4ui(location, v0, v1, v2, v3);
1543}
1544
1545inline void QOpenGLFunctions_4_0_Core::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
1546{
1547 d_3_0_Core->f.Uniform3ui(location, v0, v1, v2);
1548}
1549
1550inline void QOpenGLFunctions_4_0_Core::glUniform2ui(GLint location, GLuint v0, GLuint v1)
1551{
1552 d_3_0_Core->f.Uniform2ui(location, v0, v1);
1553}
1554
1555inline void QOpenGLFunctions_4_0_Core::glUniform1ui(GLint location, GLuint v0)
1556{
1557 d_3_0_Core->f.Uniform1ui(location, v0);
1558}
1559
1560inline GLint QOpenGLFunctions_4_0_Core::glGetFragDataLocation(GLuint program, const GLchar *name)
1561{
1562 return d_3_0_Core->f.GetFragDataLocation(program, name);
1563}
1564
1565inline void QOpenGLFunctions_4_0_Core::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
1566{
1567 d_3_0_Core->f.BindFragDataLocation(program, color, name);
1568}
1569
1570inline void QOpenGLFunctions_4_0_Core::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
1571{
1572 d_3_0_Core->f.GetUniformuiv(program, location, params);
1573}
1574
1575inline void QOpenGLFunctions_4_0_Core::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
1576{
1577 d_3_0_Core->f.GetVertexAttribIuiv(index, pname, params);
1578}
1579
1580inline void QOpenGLFunctions_4_0_Core::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
1581{
1582 d_3_0_Core->f.GetVertexAttribIiv(index, pname, params);
1583}
1584
1585inline void QOpenGLFunctions_4_0_Core::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
1586{
1587 d_3_0_Core->f.VertexAttribIPointer(index, size, type, stride, pointer);
1588}
1589
1590inline void QOpenGLFunctions_4_0_Core::glEndConditionalRender()
1591{
1592 d_3_0_Core->f.EndConditionalRender();
1593}
1594
1595inline void QOpenGLFunctions_4_0_Core::glBeginConditionalRender(GLuint id, GLenum mode)
1596{
1597 d_3_0_Core->f.BeginConditionalRender(id, mode);
1598}
1599
1600inline void QOpenGLFunctions_4_0_Core::glClampColor(GLenum target, GLenum clamp)
1601{
1602 d_3_0_Core->f.ClampColor(target, clamp);
1603}
1604
1605inline void QOpenGLFunctions_4_0_Core::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
1606{
1607 d_3_0_Core->f.GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
1608}
1609
1610inline void QOpenGLFunctions_4_0_Core::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
1611{
1612 d_3_0_Core->f.TransformFeedbackVaryings(program, count, varyings, bufferMode);
1613}
1614
1615inline void QOpenGLFunctions_4_0_Core::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
1616{
1617 d_3_0_Core->f.BindBufferBase(target, index, buffer);
1618}
1619
1620inline void QOpenGLFunctions_4_0_Core::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
1621{
1622 d_3_0_Core->f.BindBufferRange(target, index, buffer, offset, size);
1623}
1624
1625inline void QOpenGLFunctions_4_0_Core::glEndTransformFeedback()
1626{
1627 d_3_0_Core->f.EndTransformFeedback();
1628}
1629
1630inline void QOpenGLFunctions_4_0_Core::glBeginTransformFeedback(GLenum primitiveMode)
1631{
1632 d_3_0_Core->f.BeginTransformFeedback(primitiveMode);
1633}
1634
1635inline GLboolean QOpenGLFunctions_4_0_Core::glIsEnabledi(GLenum target, GLuint index)
1636{
1637 return d_3_0_Core->f.IsEnabledi(target, index);
1638}
1639
1640inline void QOpenGLFunctions_4_0_Core::glDisablei(GLenum target, GLuint index)
1641{
1642 d_3_0_Core->f.Disablei(target, index);
1643}
1644
1645inline void QOpenGLFunctions_4_0_Core::glEnablei(GLenum target, GLuint index)
1646{
1647 d_3_0_Core->f.Enablei(target, index);
1648}
1649
1650inline void QOpenGLFunctions_4_0_Core::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
1651{
1652 d_3_0_Core->f.GetIntegeri_v(target, index, data);
1653}
1654
1655inline void QOpenGLFunctions_4_0_Core::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
1656{
1657 d_3_0_Core->f.GetBooleani_v(target, index, data);
1658}
1659
1660inline void QOpenGLFunctions_4_0_Core::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
1661{
1662 d_3_0_Core->f.ColorMaski(index, r, g, b, a);
1663}
1664
1665
1666// OpenGL 3.1 core functions
1667inline void QOpenGLFunctions_4_0_Core::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
1668{
1669 d_3_1_Core->f.CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
1670}
1671
1672inline void QOpenGLFunctions_4_0_Core::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
1673{
1674 d_3_1_Core->f.UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
1675}
1676
1677inline void QOpenGLFunctions_4_0_Core::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
1678{
1679 d_3_1_Core->f.GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
1680}
1681
1682inline void QOpenGLFunctions_4_0_Core::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
1683{
1684 d_3_1_Core->f.GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
1685}
1686
1687inline GLuint QOpenGLFunctions_4_0_Core::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
1688{
1689 return d_3_1_Core->f.GetUniformBlockIndex(program, uniformBlockName);
1690}
1691
1692inline void QOpenGLFunctions_4_0_Core::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
1693{
1694 d_3_1_Core->f.GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
1695}
1696
1697inline void QOpenGLFunctions_4_0_Core::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
1698{
1699 d_3_1_Core->f.GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
1700}
1701
1702inline void QOpenGLFunctions_4_0_Core::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
1703{
1704 d_3_1_Core->f.GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
1705}
1706
1707inline void QOpenGLFunctions_4_0_Core::glPrimitiveRestartIndex(GLuint index)
1708{
1709 d_3_1_Core->f.PrimitiveRestartIndex(index);
1710}
1711
1712inline void QOpenGLFunctions_4_0_Core::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
1713{
1714 d_3_1_Core->f.TexBuffer(target, internalformat, buffer);
1715}
1716
1717inline void QOpenGLFunctions_4_0_Core::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
1718{
1719 d_3_1_Core->f.DrawElementsInstanced(mode, count, type, indices, instancecount);
1720}
1721
1722inline void QOpenGLFunctions_4_0_Core::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
1723{
1724 d_3_1_Core->f.DrawArraysInstanced(mode, first, count, instancecount);
1725}
1726
1727
1728// OpenGL 3.2 core functions
1729inline void QOpenGLFunctions_4_0_Core::glSampleMaski(GLuint index, GLbitfield mask)
1730{
1731 d_3_2_Core->f.SampleMaski(index, mask);
1732}
1733
1734inline void QOpenGLFunctions_4_0_Core::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
1735{
1736 d_3_2_Core->f.GetMultisamplefv(pname, index, val);
1737}
1738
1739inline void QOpenGLFunctions_4_0_Core::glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
1740{
1741 d_3_2_Core->f.TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
1742}
1743
1744inline void QOpenGLFunctions_4_0_Core::glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
1745{
1746 d_3_2_Core->f.TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
1747}
1748
1749inline void QOpenGLFunctions_4_0_Core::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
1750{
1751 d_3_2_Core->f.GetSynciv(sync, pname, bufSize, length, values);
1752}
1753
1754inline void QOpenGLFunctions_4_0_Core::glGetInteger64v(GLenum pname, GLint64 *params)
1755{
1756 d_3_2_Core->f.GetInteger64v(pname, params);
1757}
1758
1759inline void QOpenGLFunctions_4_0_Core::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
1760{
1761 d_3_2_Core->f.WaitSync(sync, flags, timeout);
1762}
1763
1764inline GLenum QOpenGLFunctions_4_0_Core::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
1765{
1766 return d_3_2_Core->f.ClientWaitSync(sync, flags, timeout);
1767}
1768
1769inline void QOpenGLFunctions_4_0_Core::glDeleteSync(GLsync sync)
1770{
1771 d_3_2_Core->f.DeleteSync(sync);
1772}
1773
1774inline GLboolean QOpenGLFunctions_4_0_Core::glIsSync(GLsync sync)
1775{
1776 return d_3_2_Core->f.IsSync(sync);
1777}
1778
1779inline GLsync QOpenGLFunctions_4_0_Core::glFenceSync(GLenum condition, GLbitfield flags)
1780{
1781 return d_3_2_Core->f.FenceSync(condition, flags);
1782}
1783
1784inline void QOpenGLFunctions_4_0_Core::glProvokingVertex(GLenum mode)
1785{
1786 d_3_2_Core->f.ProvokingVertex(mode);
1787}
1788
1789inline void QOpenGLFunctions_4_0_Core::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex)
1790{
1791 d_3_2_Core->f.MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
1792}
1793
1794inline void QOpenGLFunctions_4_0_Core::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex)
1795{
1796 d_3_2_Core->f.DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
1797}
1798
1799inline void QOpenGLFunctions_4_0_Core::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
1800{
1801 d_3_2_Core->f.DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
1802}
1803
1804inline void QOpenGLFunctions_4_0_Core::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
1805{
1806 d_3_2_Core->f.DrawElementsBaseVertex(mode, count, type, indices, basevertex);
1807}
1808
1809inline void QOpenGLFunctions_4_0_Core::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
1810{
1811 d_3_2_Core->f.FramebufferTexture(target, attachment, texture, level);
1812}
1813
1814inline void QOpenGLFunctions_4_0_Core::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
1815{
1816 d_3_2_Core->f.GetBufferParameteri64v(target, pname, params);
1817}
1818
1819inline void QOpenGLFunctions_4_0_Core::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
1820{
1821 d_3_2_Core->f.GetInteger64i_v(target, index, data);
1822}
1823
1824
1825// OpenGL 3.3 core functions
1826inline void QOpenGLFunctions_4_0_Core::glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
1827{
1828 d_3_3_Core->f.VertexAttribP4uiv(index, type, normalized, value);
1829}
1830
1831inline void QOpenGLFunctions_4_0_Core::glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
1832{
1833 d_3_3_Core->f.VertexAttribP4ui(index, type, normalized, value);
1834}
1835
1836inline void QOpenGLFunctions_4_0_Core::glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
1837{
1838 d_3_3_Core->f.VertexAttribP3uiv(index, type, normalized, value);
1839}
1840
1841inline void QOpenGLFunctions_4_0_Core::glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
1842{
1843 d_3_3_Core->f.VertexAttribP3ui(index, type, normalized, value);
1844}
1845
1846inline void QOpenGLFunctions_4_0_Core::glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
1847{
1848 d_3_3_Core->f.VertexAttribP2uiv(index, type, normalized, value);
1849}
1850
1851inline void QOpenGLFunctions_4_0_Core::glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
1852{
1853 d_3_3_Core->f.VertexAttribP2ui(index, type, normalized, value);
1854}
1855
1856inline void QOpenGLFunctions_4_0_Core::glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
1857{
1858 d_3_3_Core->f.VertexAttribP1uiv(index, type, normalized, value);
1859}
1860
1861inline void QOpenGLFunctions_4_0_Core::glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
1862{
1863 d_3_3_Core->f.VertexAttribP1ui(index, type, normalized, value);
1864}
1865
1866inline void QOpenGLFunctions_4_0_Core::glSecondaryColorP3uiv(GLenum type, const GLuint *color)
1867{
1868 Q_UNUSED(type);
1869 Q_UNUSED(color);
1870 QOPENGL_DEPRECATEDFUNCTION;
1871}
1872
1873inline void QOpenGLFunctions_4_0_Core::glSecondaryColorP3ui(GLenum type, GLuint color)
1874{
1875 Q_UNUSED(type);
1876 Q_UNUSED(color);
1877 QOPENGL_DEPRECATEDFUNCTION;
1878}
1879
1880inline void QOpenGLFunctions_4_0_Core::glColorP4uiv(GLenum type, const GLuint *color)
1881{
1882 Q_UNUSED(type);
1883 Q_UNUSED(color);
1884 QOPENGL_DEPRECATEDFUNCTION;
1885}
1886
1887inline void QOpenGLFunctions_4_0_Core::glColorP4ui(GLenum type, GLuint color)
1888{
1889 Q_UNUSED(type);
1890 Q_UNUSED(color);
1891 QOPENGL_DEPRECATEDFUNCTION;
1892}
1893
1894inline void QOpenGLFunctions_4_0_Core::glColorP3uiv(GLenum type, const GLuint *color)
1895{
1896 Q_UNUSED(type);
1897 Q_UNUSED(color);
1898 QOPENGL_DEPRECATEDFUNCTION;
1899}
1900
1901inline void QOpenGLFunctions_4_0_Core::glColorP3ui(GLenum type, GLuint color)
1902{
1903 Q_UNUSED(type);
1904 Q_UNUSED(color);
1905 QOPENGL_DEPRECATEDFUNCTION;
1906}
1907
1908inline void QOpenGLFunctions_4_0_Core::glNormalP3uiv(GLenum type, const GLuint *coords)
1909{
1910 Q_UNUSED(type);
1911 Q_UNUSED(coords);
1912 QOPENGL_DEPRECATEDFUNCTION;
1913}
1914
1915inline void QOpenGLFunctions_4_0_Core::glNormalP3ui(GLenum type, GLuint coords)
1916{
1917 Q_UNUSED(type);
1918 Q_UNUSED(coords);
1919 QOPENGL_DEPRECATEDFUNCTION;
1920}
1921
1922inline void QOpenGLFunctions_4_0_Core::glMultiTexCoordP4uiv(GLenum texture, GLenum type, const GLuint *coords)
1923{
1924 Q_UNUSED(texture);
1925 Q_UNUSED(type);
1926 Q_UNUSED(coords);
1927 QOPENGL_DEPRECATEDFUNCTION;
1928}
1929
1930inline void QOpenGLFunctions_4_0_Core::glMultiTexCoordP4ui(GLenum texture, GLenum type, GLuint coords)
1931{
1932 Q_UNUSED(texture);
1933 Q_UNUSED(type);
1934 Q_UNUSED(coords);
1935 QOPENGL_DEPRECATEDFUNCTION;
1936}
1937
1938inline void QOpenGLFunctions_4_0_Core::glMultiTexCoordP3uiv(GLenum texture, GLenum type, const GLuint *coords)
1939{
1940 Q_UNUSED(texture);
1941 Q_UNUSED(type);
1942 Q_UNUSED(coords);
1943 QOPENGL_DEPRECATEDFUNCTION;
1944}
1945
1946inline void QOpenGLFunctions_4_0_Core::glMultiTexCoordP3ui(GLenum texture, GLenum type, GLuint coords)
1947{
1948 Q_UNUSED(texture);
1949 Q_UNUSED(type);
1950 Q_UNUSED(coords);
1951 QOPENGL_DEPRECATEDFUNCTION;
1952}
1953
1954inline void QOpenGLFunctions_4_0_Core::glMultiTexCoordP2uiv(GLenum texture, GLenum type, const GLuint *coords)
1955{
1956 Q_UNUSED(texture);
1957 Q_UNUSED(type);
1958 Q_UNUSED(coords);
1959 QOPENGL_DEPRECATEDFUNCTION;
1960}
1961
1962inline void QOpenGLFunctions_4_0_Core::glMultiTexCoordP2ui(GLenum texture, GLenum type, GLuint coords)
1963{
1964 Q_UNUSED(texture);
1965 Q_UNUSED(type);
1966 Q_UNUSED(coords);
1967 QOPENGL_DEPRECATEDFUNCTION;
1968}
1969
1970inline void QOpenGLFunctions_4_0_Core::glMultiTexCoordP1uiv(GLenum texture, GLenum type, const GLuint *coords)
1971{
1972 Q_UNUSED(texture);
1973 Q_UNUSED(type);
1974 Q_UNUSED(coords);
1975 QOPENGL_DEPRECATEDFUNCTION;
1976}
1977
1978inline void QOpenGLFunctions_4_0_Core::glMultiTexCoordP1ui(GLenum texture, GLenum type, GLuint coords)
1979{
1980 Q_UNUSED(texture);
1981 Q_UNUSED(type);
1982 Q_UNUSED(coords);
1983 QOPENGL_DEPRECATEDFUNCTION;
1984}
1985
1986inline void QOpenGLFunctions_4_0_Core::glTexCoordP4uiv(GLenum type, const GLuint *coords)
1987{
1988 Q_UNUSED(type);
1989 Q_UNUSED(coords);
1990 QOPENGL_DEPRECATEDFUNCTION;
1991}
1992
1993inline void QOpenGLFunctions_4_0_Core::glTexCoordP4ui(GLenum type, GLuint coords)
1994{
1995 Q_UNUSED(type);
1996 Q_UNUSED(coords);
1997 QOPENGL_DEPRECATEDFUNCTION;
1998}
1999
2000inline void QOpenGLFunctions_4_0_Core::glTexCoordP3uiv(GLenum type, const GLuint *coords)
2001{
2002 Q_UNUSED(type);
2003 Q_UNUSED(coords);
2004 QOPENGL_DEPRECATEDFUNCTION;
2005}
2006
2007inline void QOpenGLFunctions_4_0_Core::glTexCoordP3ui(GLenum type, GLuint coords)
2008{
2009 Q_UNUSED(type);
2010 Q_UNUSED(coords);
2011 QOPENGL_DEPRECATEDFUNCTION;
2012}
2013
2014inline void QOpenGLFunctions_4_0_Core::glTexCoordP2uiv(GLenum type, const GLuint *coords)
2015{
2016 Q_UNUSED(type);
2017 Q_UNUSED(coords);
2018 QOPENGL_DEPRECATEDFUNCTION;
2019}
2020
2021inline void QOpenGLFunctions_4_0_Core::glTexCoordP2ui(GLenum type, GLuint coords)
2022{
2023 Q_UNUSED(type);
2024 Q_UNUSED(coords);
2025 QOPENGL_DEPRECATEDFUNCTION;
2026}
2027
2028inline void QOpenGLFunctions_4_0_Core::glTexCoordP1uiv(GLenum type, const GLuint *coords)
2029{
2030 Q_UNUSED(type);
2031 Q_UNUSED(coords);
2032 QOPENGL_DEPRECATEDFUNCTION;
2033}
2034
2035inline void QOpenGLFunctions_4_0_Core::glTexCoordP1ui(GLenum type, GLuint coords)
2036{
2037 Q_UNUSED(type);
2038 Q_UNUSED(coords);
2039 QOPENGL_DEPRECATEDFUNCTION;
2040}
2041
2042inline void QOpenGLFunctions_4_0_Core::glVertexP4uiv(GLenum type, const GLuint *value)
2043{
2044 Q_UNUSED(type);
2045 Q_UNUSED(value);
2046 QOPENGL_DEPRECATEDFUNCTION;
2047}
2048
2049inline void QOpenGLFunctions_4_0_Core::glVertexP4ui(GLenum type, GLuint value)
2050{
2051 Q_UNUSED(type);
2052 Q_UNUSED(value);
2053 QOPENGL_DEPRECATEDFUNCTION;
2054}
2055
2056inline void QOpenGLFunctions_4_0_Core::glVertexP3uiv(GLenum type, const GLuint *value)
2057{
2058 Q_UNUSED(type);
2059 Q_UNUSED(value);
2060 QOPENGL_DEPRECATEDFUNCTION;
2061}
2062
2063inline void QOpenGLFunctions_4_0_Core::glVertexP3ui(GLenum type, GLuint value)
2064{
2065 Q_UNUSED(type);
2066 Q_UNUSED(value);
2067 QOPENGL_DEPRECATEDFUNCTION;
2068}
2069
2070inline void QOpenGLFunctions_4_0_Core::glVertexP2uiv(GLenum type, const GLuint *value)
2071{
2072 Q_UNUSED(type);
2073 Q_UNUSED(value);
2074 QOPENGL_DEPRECATEDFUNCTION;
2075}
2076
2077inline void QOpenGLFunctions_4_0_Core::glVertexP2ui(GLenum type, GLuint value)
2078{
2079 Q_UNUSED(type);
2080 Q_UNUSED(value);
2081 QOPENGL_DEPRECATEDFUNCTION;
2082}
2083
2084inline void QOpenGLFunctions_4_0_Core::glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)
2085{
2086 d_3_3_Core->f.GetQueryObjectui64v(id, pname, params);
2087}
2088
2089inline void QOpenGLFunctions_4_0_Core::glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)
2090{
2091 d_3_3_Core->f.GetQueryObjecti64v(id, pname, params);
2092}
2093
2094inline void QOpenGLFunctions_4_0_Core::glQueryCounter(GLuint id, GLenum target)
2095{
2096 d_3_3_Core->f.QueryCounter(id, target);
2097}
2098
2099inline void QOpenGLFunctions_4_0_Core::glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params)
2100{
2101 d_3_3_Core->f.GetSamplerParameterIuiv(sampler, pname, params);
2102}
2103
2104inline void QOpenGLFunctions_4_0_Core::glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
2105{
2106 d_3_3_Core->f.GetSamplerParameterfv(sampler, pname, params);
2107}
2108
2109inline void QOpenGLFunctions_4_0_Core::glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params)
2110{
2111 d_3_3_Core->f.GetSamplerParameterIiv(sampler, pname, params);
2112}
2113
2114inline void QOpenGLFunctions_4_0_Core::glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
2115{
2116 d_3_3_Core->f.GetSamplerParameteriv(sampler, pname, params);
2117}
2118
2119inline void QOpenGLFunctions_4_0_Core::glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)
2120{
2121 d_3_3_Core->f.SamplerParameterIuiv(sampler, pname, param);
2122}
2123
2124inline void QOpenGLFunctions_4_0_Core::glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)
2125{
2126 d_3_3_Core->f.SamplerParameterIiv(sampler, pname, param);
2127}
2128
2129inline void QOpenGLFunctions_4_0_Core::glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
2130{
2131 d_3_3_Core->f.SamplerParameterfv(sampler, pname, param);
2132}
2133
2134inline void QOpenGLFunctions_4_0_Core::glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
2135{
2136 d_3_3_Core->f.SamplerParameterf(sampler, pname, param);
2137}
2138
2139inline void QOpenGLFunctions_4_0_Core::glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
2140{
2141 d_3_3_Core->f.SamplerParameteriv(sampler, pname, param);
2142}
2143
2144inline void QOpenGLFunctions_4_0_Core::glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
2145{
2146 d_3_3_Core->f.SamplerParameteri(sampler, pname, param);
2147}
2148
2149inline void QOpenGLFunctions_4_0_Core::glBindSampler(GLuint unit, GLuint sampler)
2150{
2151 d_3_3_Core->f.BindSampler(unit, sampler);
2152}
2153
2154inline GLboolean QOpenGLFunctions_4_0_Core::glIsSampler(GLuint sampler)
2155{
2156 return d_3_3_Core->f.IsSampler(sampler);
2157}
2158
2159inline void QOpenGLFunctions_4_0_Core::glDeleteSamplers(GLsizei count, const GLuint *samplers)
2160{
2161 d_3_3_Core->f.DeleteSamplers(count, samplers);
2162}
2163
2164inline void QOpenGLFunctions_4_0_Core::glGenSamplers(GLsizei count, GLuint *samplers)
2165{
2166 d_3_3_Core->f.GenSamplers(count, samplers);
2167}
2168
2169inline GLint QOpenGLFunctions_4_0_Core::glGetFragDataIndex(GLuint program, const GLchar *name)
2170{
2171 return d_3_3_Core->f.GetFragDataIndex(program, name);
2172}
2173
2174inline void QOpenGLFunctions_4_0_Core::glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)
2175{
2176 d_3_3_Core->f.BindFragDataLocationIndexed(program, colorNumber, index, name);
2177}
2178
2179inline void QOpenGLFunctions_4_0_Core::glVertexAttribDivisor(GLuint index, GLuint divisor)
2180{
2181 d_3_3_Core->f.VertexAttribDivisor(index, divisor);
2182}
2183
2184
2185// OpenGL 4.0 core functions
2186inline void QOpenGLFunctions_4_0_Core::glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params)
2187{
2188 d_4_0_Core->f.GetQueryIndexediv(target, index, pname, params);
2189}
2190
2191inline void QOpenGLFunctions_4_0_Core::glEndQueryIndexed(GLenum target, GLuint index)
2192{
2193 d_4_0_Core->f.EndQueryIndexed(target, index);
2194}
2195
2196inline void QOpenGLFunctions_4_0_Core::glBeginQueryIndexed(GLenum target, GLuint index, GLuint id)
2197{
2198 d_4_0_Core->f.BeginQueryIndexed(target, index, id);
2199}
2200
2201inline void QOpenGLFunctions_4_0_Core::glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream)
2202{
2203 d_4_0_Core->f.DrawTransformFeedbackStream(mode, id, stream);
2204}
2205
2206inline void QOpenGLFunctions_4_0_Core::glDrawTransformFeedback(GLenum mode, GLuint id)
2207{
2208 d_4_0_Core->f.DrawTransformFeedback(mode, id);
2209}
2210
2211inline void QOpenGLFunctions_4_0_Core::glResumeTransformFeedback()
2212{
2213 d_4_0_Core->f.ResumeTransformFeedback();
2214}
2215
2216inline void QOpenGLFunctions_4_0_Core::glPauseTransformFeedback()
2217{
2218 d_4_0_Core->f.PauseTransformFeedback();
2219}
2220
2221inline GLboolean QOpenGLFunctions_4_0_Core::glIsTransformFeedback(GLuint id)
2222{
2223 return d_4_0_Core->f.IsTransformFeedback(id);
2224}
2225
2226inline void QOpenGLFunctions_4_0_Core::glGenTransformFeedbacks(GLsizei n, GLuint *ids)
2227{
2228 d_4_0_Core->f.GenTransformFeedbacks(n, ids);
2229}
2230
2231inline void QOpenGLFunctions_4_0_Core::glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids)
2232{
2233 d_4_0_Core->f.DeleteTransformFeedbacks(n, ids);
2234}
2235
2236inline void QOpenGLFunctions_4_0_Core::glBindTransformFeedback(GLenum target, GLuint id)
2237{
2238 d_4_0_Core->f.BindTransformFeedback(target, id);
2239}
2240
2241inline void QOpenGLFunctions_4_0_Core::glPatchParameterfv(GLenum pname, const GLfloat *values)
2242{
2243 d_4_0_Core->f.PatchParameterfv(pname, values);
2244}
2245
2246inline void QOpenGLFunctions_4_0_Core::glPatchParameteri(GLenum pname, GLint value)
2247{
2248 d_4_0_Core->f.PatchParameteri(pname, value);
2249}
2250
2251inline void QOpenGLFunctions_4_0_Core::glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values)
2252{
2253 d_4_0_Core->f.GetProgramStageiv(program, shadertype, pname, values);
2254}
2255
2256inline void QOpenGLFunctions_4_0_Core::glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params)
2257{
2258 d_4_0_Core->f.GetUniformSubroutineuiv(shadertype, location, params);
2259}
2260
2261inline void QOpenGLFunctions_4_0_Core::glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices)
2262{
2263 d_4_0_Core->f.UniformSubroutinesuiv(shadertype, count, indices);
2264}
2265
2266inline void QOpenGLFunctions_4_0_Core::glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
2267{
2268 d_4_0_Core->f.GetActiveSubroutineName(program, shadertype, index, bufsize, length, name);
2269}
2270
2271inline void QOpenGLFunctions_4_0_Core::glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
2272{
2273 d_4_0_Core->f.GetActiveSubroutineUniformName(program, shadertype, index, bufsize, length, name);
2274}
2275
2276inline void QOpenGLFunctions_4_0_Core::glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values)
2277{
2278 d_4_0_Core->f.GetActiveSubroutineUniformiv(program, shadertype, index, pname, values);
2279}
2280
2281inline GLuint QOpenGLFunctions_4_0_Core::glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name)
2282{
2283 return d_4_0_Core->f.GetSubroutineIndex(program, shadertype, name);
2284}
2285
2286inline GLint QOpenGLFunctions_4_0_Core::glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name)
2287{
2288 return d_4_0_Core->f.GetSubroutineUniformLocation(program, shadertype, name);
2289}
2290
2291inline void QOpenGLFunctions_4_0_Core::glGetUniformdv(GLuint program, GLint location, GLdouble *params)
2292{
2293 d_4_0_Core->f.GetUniformdv(program, location, params);
2294}
2295
2296inline void QOpenGLFunctions_4_0_Core::glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2297{
2298 d_4_0_Core->f.UniformMatrix4x3dv(location, count, transpose, value);
2299}
2300
2301inline void QOpenGLFunctions_4_0_Core::glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2302{
2303 d_4_0_Core->f.UniformMatrix4x2dv(location, count, transpose, value);
2304}
2305
2306inline void QOpenGLFunctions_4_0_Core::glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2307{
2308 d_4_0_Core->f.UniformMatrix3x4dv(location, count, transpose, value);
2309}
2310
2311inline void QOpenGLFunctions_4_0_Core::glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2312{
2313 d_4_0_Core->f.UniformMatrix3x2dv(location, count, transpose, value);
2314}
2315
2316inline void QOpenGLFunctions_4_0_Core::glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2317{
2318 d_4_0_Core->f.UniformMatrix2x4dv(location, count, transpose, value);
2319}
2320
2321inline void QOpenGLFunctions_4_0_Core::glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2322{
2323 d_4_0_Core->f.UniformMatrix2x3dv(location, count, transpose, value);
2324}
2325
2326inline void QOpenGLFunctions_4_0_Core::glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2327{
2328 d_4_0_Core->f.UniformMatrix4dv(location, count, transpose, value);
2329}
2330
2331inline void QOpenGLFunctions_4_0_Core::glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2332{
2333 d_4_0_Core->f.UniformMatrix3dv(location, count, transpose, value);
2334}
2335
2336inline void QOpenGLFunctions_4_0_Core::glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2337{
2338 d_4_0_Core->f.UniformMatrix2dv(location, count, transpose, value);
2339}
2340
2341inline void QOpenGLFunctions_4_0_Core::glUniform4dv(GLint location, GLsizei count, const GLdouble *value)
2342{
2343 d_4_0_Core->f.Uniform4dv(location, count, value);
2344}
2345
2346inline void QOpenGLFunctions_4_0_Core::glUniform3dv(GLint location, GLsizei count, const GLdouble *value)
2347{
2348 d_4_0_Core->f.Uniform3dv(location, count, value);
2349}
2350
2351inline void QOpenGLFunctions_4_0_Core::glUniform2dv(GLint location, GLsizei count, const GLdouble *value)
2352{
2353 d_4_0_Core->f.Uniform2dv(location, count, value);
2354}
2355
2356inline void QOpenGLFunctions_4_0_Core::glUniform1dv(GLint location, GLsizei count, const GLdouble *value)
2357{
2358 d_4_0_Core->f.Uniform1dv(location, count, value);
2359}
2360
2361inline void QOpenGLFunctions_4_0_Core::glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
2362{
2363 d_4_0_Core->f.Uniform4d(location, x, y, z, w);
2364}
2365
2366inline void QOpenGLFunctions_4_0_Core::glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z)
2367{
2368 d_4_0_Core->f.Uniform3d(location, x, y, z);
2369}
2370
2371inline void QOpenGLFunctions_4_0_Core::glUniform2d(GLint location, GLdouble x, GLdouble y)
2372{
2373 d_4_0_Core->f.Uniform2d(location, x, y);
2374}
2375
2376inline void QOpenGLFunctions_4_0_Core::glUniform1d(GLint location, GLdouble x)
2377{
2378 d_4_0_Core->f.Uniform1d(location, x);
2379}
2380
2381inline void QOpenGLFunctions_4_0_Core::glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect)
2382{
2383 d_4_0_Core->f.DrawElementsIndirect(mode, type, indirect);
2384}
2385
2386inline void QOpenGLFunctions_4_0_Core::glDrawArraysIndirect(GLenum mode, const GLvoid *indirect)
2387{
2388 d_4_0_Core->f.DrawArraysIndirect(mode, indirect);
2389}
2390
2391inline void QOpenGLFunctions_4_0_Core::glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
2392{
2393 d_4_0_Core->f.BlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
2394}
2395
2396inline void QOpenGLFunctions_4_0_Core::glBlendFunci(GLuint buf, GLenum src, GLenum dst)
2397{
2398 d_4_0_Core->f.BlendFunci(buf, src, dst);
2399}
2400
2401inline void QOpenGLFunctions_4_0_Core::glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha)
2402{
2403 d_4_0_Core->f.BlendEquationSeparatei(buf, modeRGB, modeAlpha);
2404}
2405
2406inline void QOpenGLFunctions_4_0_Core::glBlendEquationi(GLuint buf, GLenum mode)
2407{
2408 d_4_0_Core->f.BlendEquationi(buf, mode);
2409}
2410
2411inline void QOpenGLFunctions_4_0_Core::glMinSampleShading(GLfloat value)
2412{
2413 d_4_0_Core->f.MinSampleShading(value);
2414}
2415
2416
2417
2418QT_END_NAMESPACE
2419
2420#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
2421
2422#endif
2423

source code of qtbase/src/gui/opengl/qopenglfunctions_4_0_core.h