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_3_3_CORE_H
51#define QOPENGLVERSIONFUNCTIONS_3_3_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_3_3_Core : public QAbstractOpenGLFunctions
63{
64public:
65 QOpenGLFunctions_3_3_Core();
66 ~QOpenGLFunctions_3_3_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
415private:
416 friend class QOpenGLContext;
417
418 static bool isContextCompatible(QOpenGLContext *context);
419 static QOpenGLVersionProfile versionProfile();
420
421 QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
422 QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
423 QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
424 QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
425 QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
426 QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
427 QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
428 QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
429 QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
430 QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
431 QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
432 QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
433};
434
435// OpenGL 1.0 core functions
436inline void QOpenGLFunctions_3_3_Core::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
437{
438 d_1_0_Core->f.Viewport(x, y, width, height);
439}
440
441inline void QOpenGLFunctions_3_3_Core::glDepthRange(GLdouble nearVal, GLdouble farVal)
442{
443 d_1_0_Core->f.DepthRange(nearVal, farVal);
444}
445
446inline GLboolean QOpenGLFunctions_3_3_Core::glIsEnabled(GLenum cap)
447{
448 return d_1_0_Core->f.IsEnabled(cap);
449}
450
451inline void QOpenGLFunctions_3_3_Core::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
452{
453 d_1_0_Core->f.GetTexLevelParameteriv(target, level, pname, params);
454}
455
456inline void QOpenGLFunctions_3_3_Core::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
457{
458 d_1_0_Core->f.GetTexLevelParameterfv(target, level, pname, params);
459}
460
461inline void QOpenGLFunctions_3_3_Core::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
462{
463 d_1_0_Core->f.GetTexParameteriv(target, pname, params);
464}
465
466inline void QOpenGLFunctions_3_3_Core::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
467{
468 d_1_0_Core->f.GetTexParameterfv(target, pname, params);
469}
470
471inline void QOpenGLFunctions_3_3_Core::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
472{
473 d_1_0_Core->f.GetTexImage(target, level, format, type, pixels);
474}
475
476inline const GLubyte * QOpenGLFunctions_3_3_Core::glGetString(GLenum name)
477{
478 return d_1_0_Core->f.GetString(name);
479}
480
481inline void QOpenGLFunctions_3_3_Core::glGetIntegerv(GLenum pname, GLint *params)
482{
483 d_1_0_Core->f.GetIntegerv(pname, params);
484}
485
486inline void QOpenGLFunctions_3_3_Core::glGetFloatv(GLenum pname, GLfloat *params)
487{
488 d_1_0_Core->f.GetFloatv(pname, params);
489}
490
491inline GLenum QOpenGLFunctions_3_3_Core::glGetError()
492{
493 return d_1_0_Core->f.GetError();
494}
495
496inline void QOpenGLFunctions_3_3_Core::glGetDoublev(GLenum pname, GLdouble *params)
497{
498 d_1_0_Core->f.GetDoublev(pname, params);
499}
500
501inline void QOpenGLFunctions_3_3_Core::glGetBooleanv(GLenum pname, GLboolean *params)
502{
503 d_1_0_Core->f.GetBooleanv(pname, params);
504}
505
506inline void QOpenGLFunctions_3_3_Core::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
507{
508 d_1_0_Core->f.ReadPixels(x, y, width, height, format, type, pixels);
509}
510
511inline void QOpenGLFunctions_3_3_Core::glReadBuffer(GLenum mode)
512{
513 d_1_0_Core->f.ReadBuffer(mode);
514}
515
516inline void QOpenGLFunctions_3_3_Core::glPixelStorei(GLenum pname, GLint param)
517{
518 d_1_0_Core->f.PixelStorei(pname, param);
519}
520
521inline void QOpenGLFunctions_3_3_Core::glPixelStoref(GLenum pname, GLfloat param)
522{
523 d_1_0_Core->f.PixelStoref(pname, param);
524}
525
526inline void QOpenGLFunctions_3_3_Core::glDepthFunc(GLenum func)
527{
528 d_1_0_Core->f.DepthFunc(func);
529}
530
531inline void QOpenGLFunctions_3_3_Core::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
532{
533 d_1_0_Core->f.StencilOp(fail, zfail, zpass);
534}
535
536inline void QOpenGLFunctions_3_3_Core::glStencilFunc(GLenum func, GLint ref, GLuint mask)
537{
538 d_1_0_Core->f.StencilFunc(func, ref, mask);
539}
540
541inline void QOpenGLFunctions_3_3_Core::glLogicOp(GLenum opcode)
542{
543 d_1_0_Core->f.LogicOp(opcode);
544}
545
546inline void QOpenGLFunctions_3_3_Core::glBlendFunc(GLenum sfactor, GLenum dfactor)
547{
548 d_1_0_Core->f.BlendFunc(sfactor, dfactor);
549}
550
551inline void QOpenGLFunctions_3_3_Core::glFlush()
552{
553 d_1_0_Core->f.Flush();
554}
555
556inline void QOpenGLFunctions_3_3_Core::glFinish()
557{
558 d_1_0_Core->f.Finish();
559}
560
561inline void QOpenGLFunctions_3_3_Core::glEnable(GLenum cap)
562{
563 d_1_0_Core->f.Enable(cap);
564}
565
566inline void QOpenGLFunctions_3_3_Core::glDisable(GLenum cap)
567{
568 d_1_0_Core->f.Disable(cap);
569}
570
571inline void QOpenGLFunctions_3_3_Core::glDepthMask(GLboolean flag)
572{
573 d_1_0_Core->f.DepthMask(flag);
574}
575
576inline void QOpenGLFunctions_3_3_Core::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
577{
578 d_1_0_Core->f.ColorMask(red, green, blue, alpha);
579}
580
581inline void QOpenGLFunctions_3_3_Core::glStencilMask(GLuint mask)
582{
583 d_1_0_Core->f.StencilMask(mask);
584}
585
586inline void QOpenGLFunctions_3_3_Core::glClearDepth(GLdouble depth)
587{
588 d_1_0_Core->f.ClearDepth(depth);
589}
590
591inline void QOpenGLFunctions_3_3_Core::glClearStencil(GLint s)
592{
593 d_1_0_Core->f.ClearStencil(s);
594}
595
596inline void QOpenGLFunctions_3_3_Core::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
597{
598 d_1_0_Core->f.ClearColor(red, green, blue, alpha);
599}
600
601inline void QOpenGLFunctions_3_3_Core::glClear(GLbitfield mask)
602{
603 d_1_0_Core->f.Clear(mask);
604}
605
606inline void QOpenGLFunctions_3_3_Core::glDrawBuffer(GLenum mode)
607{
608 d_1_0_Core->f.DrawBuffer(mode);
609}
610
611inline void QOpenGLFunctions_3_3_Core::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
612{
613 d_1_0_Core->f.TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
614}
615
616inline void QOpenGLFunctions_3_3_Core::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
617{
618 d_1_0_Core->f.TexImage1D(target, level, internalformat, width, border, format, type, pixels);
619}
620
621inline void QOpenGLFunctions_3_3_Core::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
622{
623 d_1_0_Core->f.TexParameteriv(target, pname, params);
624}
625
626inline void QOpenGLFunctions_3_3_Core::glTexParameteri(GLenum target, GLenum pname, GLint param)
627{
628 d_1_0_Core->f.TexParameteri(target, pname, param);
629}
630
631inline void QOpenGLFunctions_3_3_Core::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
632{
633 d_1_0_Core->f.TexParameterfv(target, pname, params);
634}
635
636inline void QOpenGLFunctions_3_3_Core::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
637{
638 d_1_0_Core->f.TexParameterf(target, pname, param);
639}
640
641inline void QOpenGLFunctions_3_3_Core::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
642{
643 d_1_0_Core->f.Scissor(x, y, width, height);
644}
645
646inline void QOpenGLFunctions_3_3_Core::glPolygonMode(GLenum face, GLenum mode)
647{
648 d_1_0_Core->f.PolygonMode(face, mode);
649}
650
651inline void QOpenGLFunctions_3_3_Core::glPointSize(GLfloat size)
652{
653 d_1_0_Core->f.PointSize(size);
654}
655
656inline void QOpenGLFunctions_3_3_Core::glLineWidth(GLfloat width)
657{
658 d_1_0_Core->f.LineWidth(width);
659}
660
661inline void QOpenGLFunctions_3_3_Core::glHint(GLenum target, GLenum mode)
662{
663 d_1_0_Core->f.Hint(target, mode);
664}
665
666inline void QOpenGLFunctions_3_3_Core::glFrontFace(GLenum mode)
667{
668 d_1_0_Core->f.FrontFace(mode);
669}
670
671inline void QOpenGLFunctions_3_3_Core::glCullFace(GLenum mode)
672{
673 d_1_0_Core->f.CullFace(mode);
674}
675
676
677// OpenGL 1.1 core functions
678inline void QOpenGLFunctions_3_3_Core::glIndexubv(const GLubyte *c)
679{
680 Q_UNUSED(c);
681 QOPENGL_DEPRECATEDFUNCTION;
682}
683
684inline void QOpenGLFunctions_3_3_Core::glIndexub(GLubyte c)
685{
686 Q_UNUSED(c);
687 QOPENGL_DEPRECATEDFUNCTION;
688}
689
690inline GLboolean QOpenGLFunctions_3_3_Core::glIsTexture(GLuint texture)
691{
692 return d_1_1_Core->f.IsTexture(texture);
693}
694
695inline void QOpenGLFunctions_3_3_Core::glGenTextures(GLsizei n, GLuint *textures)
696{
697 d_1_1_Core->f.GenTextures(n, textures);
698}
699
700inline void QOpenGLFunctions_3_3_Core::glDeleteTextures(GLsizei n, const GLuint *textures)
701{
702 d_1_1_Core->f.DeleteTextures(n, textures);
703}
704
705inline void QOpenGLFunctions_3_3_Core::glBindTexture(GLenum target, GLuint texture)
706{
707 d_1_1_Core->f.BindTexture(target, texture);
708}
709
710inline void QOpenGLFunctions_3_3_Core::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
711{
712 d_1_1_Core->f.TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
713}
714
715inline void QOpenGLFunctions_3_3_Core::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
716{
717 d_1_1_Core->f.TexSubImage1D(target, level, xoffset, width, format, type, pixels);
718}
719
720inline void QOpenGLFunctions_3_3_Core::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
721{
722 d_1_1_Core->f.CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
723}
724
725inline void QOpenGLFunctions_3_3_Core::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
726{
727 d_1_1_Core->f.CopyTexSubImage1D(target, level, xoffset, x, y, width);
728}
729
730inline void QOpenGLFunctions_3_3_Core::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
731{
732 d_1_1_Core->f.CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
733}
734
735inline void QOpenGLFunctions_3_3_Core::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
736{
737 d_1_1_Core->f.CopyTexImage1D(target, level, internalformat, x, y, width, border);
738}
739
740inline void QOpenGLFunctions_3_3_Core::glPolygonOffset(GLfloat factor, GLfloat units)
741{
742 d_1_1_Core->f.PolygonOffset(factor, units);
743}
744
745inline void QOpenGLFunctions_3_3_Core::glGetPointerv(GLenum pname, GLvoid* *params)
746{
747 Q_UNUSED(pname);
748 Q_UNUSED(params);
749 QOPENGL_DEPRECATEDFUNCTION;
750}
751
752inline void QOpenGLFunctions_3_3_Core::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
753{
754 d_1_1_Core->f.DrawElements(mode, count, type, indices);
755}
756
757inline void QOpenGLFunctions_3_3_Core::glDrawArrays(GLenum mode, GLint first, GLsizei count)
758{
759 d_1_1_Core->f.DrawArrays(mode, first, count);
760}
761
762
763// OpenGL 1.2 core functions
764inline void QOpenGLFunctions_3_3_Core::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
765{
766 d_1_2_Core->f.CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
767}
768
769inline void QOpenGLFunctions_3_3_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)
770{
771 d_1_2_Core->f.TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
772}
773
774inline void QOpenGLFunctions_3_3_Core::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
775{
776 d_1_2_Core->f.TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
777}
778
779inline void QOpenGLFunctions_3_3_Core::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
780{
781 d_1_2_Core->f.DrawRangeElements(mode, start, end, count, type, indices);
782}
783
784inline void QOpenGLFunctions_3_3_Core::glBlendEquation(GLenum mode)
785{
786 d_1_2_Core->f.BlendEquation(mode);
787}
788
789inline void QOpenGLFunctions_3_3_Core::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
790{
791 d_1_2_Core->f.BlendColor(red, green, blue, alpha);
792}
793
794
795// OpenGL 1.3 core functions
796inline void QOpenGLFunctions_3_3_Core::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
797{
798 d_1_3_Core->f.GetCompressedTexImage(target, level, img);
799}
800
801inline void QOpenGLFunctions_3_3_Core::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
802{
803 d_1_3_Core->f.CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
804}
805
806inline void QOpenGLFunctions_3_3_Core::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
807{
808 d_1_3_Core->f.CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
809}
810
811inline void QOpenGLFunctions_3_3_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)
812{
813 d_1_3_Core->f.CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
814}
815
816inline void QOpenGLFunctions_3_3_Core::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
817{
818 d_1_3_Core->f.CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
819}
820
821inline void QOpenGLFunctions_3_3_Core::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
822{
823 d_1_3_Core->f.CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
824}
825
826inline void QOpenGLFunctions_3_3_Core::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
827{
828 d_1_3_Core->f.CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
829}
830
831inline void QOpenGLFunctions_3_3_Core::glSampleCoverage(GLfloat value, GLboolean invert)
832{
833 d_1_3_Core->f.SampleCoverage(value, invert);
834}
835
836inline void QOpenGLFunctions_3_3_Core::glActiveTexture(GLenum texture)
837{
838 d_1_3_Core->f.ActiveTexture(texture);
839}
840
841
842// OpenGL 1.4 core functions
843inline void QOpenGLFunctions_3_3_Core::glPointParameteriv(GLenum pname, const GLint *params)
844{
845 d_1_4_Core->f.PointParameteriv(pname, params);
846}
847
848inline void QOpenGLFunctions_3_3_Core::glPointParameteri(GLenum pname, GLint param)
849{
850 d_1_4_Core->f.PointParameteri(pname, param);
851}
852
853inline void QOpenGLFunctions_3_3_Core::glPointParameterfv(GLenum pname, const GLfloat *params)
854{
855 d_1_4_Core->f.PointParameterfv(pname, params);
856}
857
858inline void QOpenGLFunctions_3_3_Core::glPointParameterf(GLenum pname, GLfloat param)
859{
860 d_1_4_Core->f.PointParameterf(pname, param);
861}
862
863inline void QOpenGLFunctions_3_3_Core::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
864{
865 d_1_4_Core->f.MultiDrawElements(mode, count, type, indices, drawcount);
866}
867
868inline void QOpenGLFunctions_3_3_Core::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
869{
870 d_1_4_Core->f.MultiDrawArrays(mode, first, count, drawcount);
871}
872
873inline void QOpenGLFunctions_3_3_Core::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
874{
875 d_1_4_Core->f.BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
876}
877
878
879// OpenGL 1.5 core functions
880inline void QOpenGLFunctions_3_3_Core::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
881{
882 d_1_5_Core->f.GetBufferPointerv(target, pname, params);
883}
884
885inline void QOpenGLFunctions_3_3_Core::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
886{
887 d_1_5_Core->f.GetBufferParameteriv(target, pname, params);
888}
889
890inline GLboolean QOpenGLFunctions_3_3_Core::glUnmapBuffer(GLenum target)
891{
892 return d_1_5_Core->f.UnmapBuffer(target);
893}
894
895inline GLvoid* QOpenGLFunctions_3_3_Core::glMapBuffer(GLenum target, GLenum access)
896{
897 return d_1_5_Core->f.MapBuffer(target, access);
898}
899
900inline void QOpenGLFunctions_3_3_Core::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
901{
902 d_1_5_Core->f.GetBufferSubData(target, offset, size, data);
903}
904
905inline void QOpenGLFunctions_3_3_Core::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
906{
907 d_1_5_Core->f.BufferSubData(target, offset, size, data);
908}
909
910inline void QOpenGLFunctions_3_3_Core::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
911{
912 d_1_5_Core->f.BufferData(target, size, data, usage);
913}
914
915inline GLboolean QOpenGLFunctions_3_3_Core::glIsBuffer(GLuint buffer)
916{
917 return d_1_5_Core->f.IsBuffer(buffer);
918}
919
920inline void QOpenGLFunctions_3_3_Core::glGenBuffers(GLsizei n, GLuint *buffers)
921{
922 d_1_5_Core->f.GenBuffers(n, buffers);
923}
924
925inline void QOpenGLFunctions_3_3_Core::glDeleteBuffers(GLsizei n, const GLuint *buffers)
926{
927 d_1_5_Core->f.DeleteBuffers(n, buffers);
928}
929
930inline void QOpenGLFunctions_3_3_Core::glBindBuffer(GLenum target, GLuint buffer)
931{
932 d_1_5_Core->f.BindBuffer(target, buffer);
933}
934
935inline void QOpenGLFunctions_3_3_Core::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
936{
937 d_1_5_Core->f.GetQueryObjectuiv(id, pname, params);
938}
939
940inline void QOpenGLFunctions_3_3_Core::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
941{
942 d_1_5_Core->f.GetQueryObjectiv(id, pname, params);
943}
944
945inline void QOpenGLFunctions_3_3_Core::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
946{
947 d_1_5_Core->f.GetQueryiv(target, pname, params);
948}
949
950inline void QOpenGLFunctions_3_3_Core::glEndQuery(GLenum target)
951{
952 d_1_5_Core->f.EndQuery(target);
953}
954
955inline void QOpenGLFunctions_3_3_Core::glBeginQuery(GLenum target, GLuint id)
956{
957 d_1_5_Core->f.BeginQuery(target, id);
958}
959
960inline GLboolean QOpenGLFunctions_3_3_Core::glIsQuery(GLuint id)
961{
962 return d_1_5_Core->f.IsQuery(id);
963}
964
965inline void QOpenGLFunctions_3_3_Core::glDeleteQueries(GLsizei n, const GLuint *ids)
966{
967 d_1_5_Core->f.DeleteQueries(n, ids);
968}
969
970inline void QOpenGLFunctions_3_3_Core::glGenQueries(GLsizei n, GLuint *ids)
971{
972 d_1_5_Core->f.GenQueries(n, ids);
973}
974
975
976// OpenGL 2.0 core functions
977inline void QOpenGLFunctions_3_3_Core::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
978{
979 d_2_0_Core->f.VertexAttribPointer(index, size, type, normalized, stride, pointer);
980}
981
982inline void QOpenGLFunctions_3_3_Core::glValidateProgram(GLuint program)
983{
984 d_2_0_Core->f.ValidateProgram(program);
985}
986
987inline void QOpenGLFunctions_3_3_Core::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
988{
989 d_2_0_Core->f.UniformMatrix4fv(location, count, transpose, value);
990}
991
992inline void QOpenGLFunctions_3_3_Core::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
993{
994 d_2_0_Core->f.UniformMatrix3fv(location, count, transpose, value);
995}
996
997inline void QOpenGLFunctions_3_3_Core::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
998{
999 d_2_0_Core->f.UniformMatrix2fv(location, count, transpose, value);
1000}
1001
1002inline void QOpenGLFunctions_3_3_Core::glUniform4iv(GLint location, GLsizei count, const GLint *value)
1003{
1004 d_2_0_Core->f.Uniform4iv(location, count, value);
1005}
1006
1007inline void QOpenGLFunctions_3_3_Core::glUniform3iv(GLint location, GLsizei count, const GLint *value)
1008{
1009 d_2_0_Core->f.Uniform3iv(location, count, value);
1010}
1011
1012inline void QOpenGLFunctions_3_3_Core::glUniform2iv(GLint location, GLsizei count, const GLint *value)
1013{
1014 d_2_0_Core->f.Uniform2iv(location, count, value);
1015}
1016
1017inline void QOpenGLFunctions_3_3_Core::glUniform1iv(GLint location, GLsizei count, const GLint *value)
1018{
1019 d_2_0_Core->f.Uniform1iv(location, count, value);
1020}
1021
1022inline void QOpenGLFunctions_3_3_Core::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
1023{
1024 d_2_0_Core->f.Uniform4fv(location, count, value);
1025}
1026
1027inline void QOpenGLFunctions_3_3_Core::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
1028{
1029 d_2_0_Core->f.Uniform3fv(location, count, value);
1030}
1031
1032inline void QOpenGLFunctions_3_3_Core::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
1033{
1034 d_2_0_Core->f.Uniform2fv(location, count, value);
1035}
1036
1037inline void QOpenGLFunctions_3_3_Core::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
1038{
1039 d_2_0_Core->f.Uniform1fv(location, count, value);
1040}
1041
1042inline void QOpenGLFunctions_3_3_Core::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
1043{
1044 d_2_0_Core->f.Uniform4i(location, v0, v1, v2, v3);
1045}
1046
1047inline void QOpenGLFunctions_3_3_Core::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
1048{
1049 d_2_0_Core->f.Uniform3i(location, v0, v1, v2);
1050}
1051
1052inline void QOpenGLFunctions_3_3_Core::glUniform2i(GLint location, GLint v0, GLint v1)
1053{
1054 d_2_0_Core->f.Uniform2i(location, v0, v1);
1055}
1056
1057inline void QOpenGLFunctions_3_3_Core::glUniform1i(GLint location, GLint v0)
1058{
1059 d_2_0_Core->f.Uniform1i(location, v0);
1060}
1061
1062inline void QOpenGLFunctions_3_3_Core::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
1063{
1064 d_2_0_Core->f.Uniform4f(location, v0, v1, v2, v3);
1065}
1066
1067inline void QOpenGLFunctions_3_3_Core::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
1068{
1069 d_2_0_Core->f.Uniform3f(location, v0, v1, v2);
1070}
1071
1072inline void QOpenGLFunctions_3_3_Core::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
1073{
1074 d_2_0_Core->f.Uniform2f(location, v0, v1);
1075}
1076
1077inline void QOpenGLFunctions_3_3_Core::glUniform1f(GLint location, GLfloat v0)
1078{
1079 d_2_0_Core->f.Uniform1f(location, v0);
1080}
1081
1082inline void QOpenGLFunctions_3_3_Core::glUseProgram(GLuint program)
1083{
1084 d_2_0_Core->f.UseProgram(program);
1085}
1086
1087inline void QOpenGLFunctions_3_3_Core::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
1088{
1089 d_2_0_Core->f.ShaderSource(shader, count, string, length);
1090}
1091
1092inline void QOpenGLFunctions_3_3_Core::glLinkProgram(GLuint program)
1093{
1094 d_2_0_Core->f.LinkProgram(program);
1095}
1096
1097inline GLboolean QOpenGLFunctions_3_3_Core::glIsShader(GLuint shader)
1098{
1099 return d_2_0_Core->f.IsShader(shader);
1100}
1101
1102inline GLboolean QOpenGLFunctions_3_3_Core::glIsProgram(GLuint program)
1103{
1104 return d_2_0_Core->f.IsProgram(program);
1105}
1106
1107inline void QOpenGLFunctions_3_3_Core::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
1108{
1109 d_2_0_Core->f.GetVertexAttribPointerv(index, pname, pointer);
1110}
1111
1112inline void QOpenGLFunctions_3_3_Core::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
1113{
1114 d_2_0_Core->f.GetVertexAttribiv(index, pname, params);
1115}
1116
1117inline void QOpenGLFunctions_3_3_Core::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
1118{
1119 d_2_0_Core->f.GetVertexAttribfv(index, pname, params);
1120}
1121
1122inline void QOpenGLFunctions_3_3_Core::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
1123{
1124 d_2_0_Core->f.GetVertexAttribdv(index, pname, params);
1125}
1126
1127inline void QOpenGLFunctions_3_3_Core::glGetUniformiv(GLuint program, GLint location, GLint *params)
1128{
1129 d_2_0_Core->f.GetUniformiv(program, location, params);
1130}
1131
1132inline void QOpenGLFunctions_3_3_Core::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
1133{
1134 d_2_0_Core->f.GetUniformfv(program, location, params);
1135}
1136
1137inline GLint QOpenGLFunctions_3_3_Core::glGetUniformLocation(GLuint program, const GLchar *name)
1138{
1139 return d_2_0_Core->f.GetUniformLocation(program, name);
1140}
1141
1142inline void QOpenGLFunctions_3_3_Core::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
1143{
1144 d_2_0_Core->f.GetShaderSource(shader, bufSize, length, source);
1145}
1146
1147inline void QOpenGLFunctions_3_3_Core::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
1148{
1149 d_2_0_Core->f.GetShaderInfoLog(shader, bufSize, length, infoLog);
1150}
1151
1152inline void QOpenGLFunctions_3_3_Core::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
1153{
1154 d_2_0_Core->f.GetShaderiv(shader, pname, params);
1155}
1156
1157inline void QOpenGLFunctions_3_3_Core::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
1158{
1159 d_2_0_Core->f.GetProgramInfoLog(program, bufSize, length, infoLog);
1160}
1161
1162inline void QOpenGLFunctions_3_3_Core::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
1163{
1164 d_2_0_Core->f.GetProgramiv(program, pname, params);
1165}
1166
1167inline GLint QOpenGLFunctions_3_3_Core::glGetAttribLocation(GLuint program, const GLchar *name)
1168{
1169 return d_2_0_Core->f.GetAttribLocation(program, name);
1170}
1171
1172inline void QOpenGLFunctions_3_3_Core::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
1173{
1174 d_2_0_Core->f.GetAttachedShaders(program, maxCount, count, obj);
1175}
1176
1177inline void QOpenGLFunctions_3_3_Core::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
1178{
1179 d_2_0_Core->f.GetActiveUniform(program, index, bufSize, length, size, type, name);
1180}
1181
1182inline void QOpenGLFunctions_3_3_Core::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
1183{
1184 d_2_0_Core->f.GetActiveAttrib(program, index, bufSize, length, size, type, name);
1185}
1186
1187inline void QOpenGLFunctions_3_3_Core::glEnableVertexAttribArray(GLuint index)
1188{
1189 d_2_0_Core->f.EnableVertexAttribArray(index);
1190}
1191
1192inline void QOpenGLFunctions_3_3_Core::glDisableVertexAttribArray(GLuint index)
1193{
1194 d_2_0_Core->f.DisableVertexAttribArray(index);
1195}
1196
1197inline void QOpenGLFunctions_3_3_Core::glDetachShader(GLuint program, GLuint shader)
1198{
1199 d_2_0_Core->f.DetachShader(program, shader);
1200}
1201
1202inline void QOpenGLFunctions_3_3_Core::glDeleteShader(GLuint shader)
1203{
1204 d_2_0_Core->f.DeleteShader(shader);
1205}
1206
1207inline void QOpenGLFunctions_3_3_Core::glDeleteProgram(GLuint program)
1208{
1209 d_2_0_Core->f.DeleteProgram(program);
1210}
1211
1212inline GLuint QOpenGLFunctions_3_3_Core::glCreateShader(GLenum type)
1213{
1214 return d_2_0_Core->f.CreateShader(type);
1215}
1216
1217inline GLuint QOpenGLFunctions_3_3_Core::glCreateProgram()
1218{
1219 return d_2_0_Core->f.CreateProgram();
1220}
1221
1222inline void QOpenGLFunctions_3_3_Core::glCompileShader(GLuint shader)
1223{
1224 d_2_0_Core->f.CompileShader(shader);
1225}
1226
1227inline void QOpenGLFunctions_3_3_Core::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
1228{
1229 d_2_0_Core->f.BindAttribLocation(program, index, name);
1230}
1231
1232inline void QOpenGLFunctions_3_3_Core::glAttachShader(GLuint program, GLuint shader)
1233{
1234 d_2_0_Core->f.AttachShader(program, shader);
1235}
1236
1237inline void QOpenGLFunctions_3_3_Core::glStencilMaskSeparate(GLenum face, GLuint mask)
1238{
1239 d_2_0_Core->f.StencilMaskSeparate(face, mask);
1240}
1241
1242inline void QOpenGLFunctions_3_3_Core::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
1243{
1244 d_2_0_Core->f.StencilFuncSeparate(face, func, ref, mask);
1245}
1246
1247inline void QOpenGLFunctions_3_3_Core::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
1248{
1249 d_2_0_Core->f.StencilOpSeparate(face, sfail, dpfail, dppass);
1250}
1251
1252inline void QOpenGLFunctions_3_3_Core::glDrawBuffers(GLsizei n, const GLenum *bufs)
1253{
1254 d_2_0_Core->f.DrawBuffers(n, bufs);
1255}
1256
1257inline void QOpenGLFunctions_3_3_Core::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
1258{
1259 d_2_0_Core->f.BlendEquationSeparate(modeRGB, modeAlpha);
1260}
1261
1262
1263// OpenGL 2.1 core functions
1264inline void QOpenGLFunctions_3_3_Core::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1265{
1266 d_2_1_Core->f.UniformMatrix4x3fv(location, count, transpose, value);
1267}
1268
1269inline void QOpenGLFunctions_3_3_Core::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1270{
1271 d_2_1_Core->f.UniformMatrix3x4fv(location, count, transpose, value);
1272}
1273
1274inline void QOpenGLFunctions_3_3_Core::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1275{
1276 d_2_1_Core->f.UniformMatrix4x2fv(location, count, transpose, value);
1277}
1278
1279inline void QOpenGLFunctions_3_3_Core::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1280{
1281 d_2_1_Core->f.UniformMatrix2x4fv(location, count, transpose, value);
1282}
1283
1284inline void QOpenGLFunctions_3_3_Core::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1285{
1286 d_2_1_Core->f.UniformMatrix3x2fv(location, count, transpose, value);
1287}
1288
1289inline void QOpenGLFunctions_3_3_Core::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1290{
1291 d_2_1_Core->f.UniformMatrix2x3fv(location, count, transpose, value);
1292}
1293
1294
1295// OpenGL 3.0 core functions
1296inline GLboolean QOpenGLFunctions_3_3_Core::glIsVertexArray(GLuint array)
1297{
1298 return d_3_0_Core->f.IsVertexArray(array);
1299}
1300
1301inline void QOpenGLFunctions_3_3_Core::glGenVertexArrays(GLsizei n, GLuint *arrays)
1302{
1303 d_3_0_Core->f.GenVertexArrays(n, arrays);
1304}
1305
1306inline void QOpenGLFunctions_3_3_Core::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
1307{
1308 d_3_0_Core->f.DeleteVertexArrays(n, arrays);
1309}
1310
1311inline void QOpenGLFunctions_3_3_Core::glBindVertexArray(GLuint array)
1312{
1313 d_3_0_Core->f.BindVertexArray(array);
1314}
1315
1316inline void QOpenGLFunctions_3_3_Core::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
1317{
1318 d_3_0_Core->f.FlushMappedBufferRange(target, offset, length);
1319}
1320
1321inline GLvoid* QOpenGLFunctions_3_3_Core::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
1322{
1323 return d_3_0_Core->f.MapBufferRange(target, offset, length, access);
1324}
1325
1326inline void QOpenGLFunctions_3_3_Core::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
1327{
1328 d_3_0_Core->f.FramebufferTextureLayer(target, attachment, texture, level, layer);
1329}
1330
1331inline void QOpenGLFunctions_3_3_Core::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
1332{
1333 d_3_0_Core->f.RenderbufferStorageMultisample(target, samples, internalformat, width, height);
1334}
1335
1336inline void QOpenGLFunctions_3_3_Core::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
1337{
1338 d_3_0_Core->f.BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
1339}
1340
1341inline void QOpenGLFunctions_3_3_Core::glGenerateMipmap(GLenum target)
1342{
1343 d_3_0_Core->f.GenerateMipmap(target);
1344}
1345
1346inline void QOpenGLFunctions_3_3_Core::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
1347{
1348 d_3_0_Core->f.GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
1349}
1350
1351inline void QOpenGLFunctions_3_3_Core::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
1352{
1353 d_3_0_Core->f.FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
1354}
1355
1356inline void QOpenGLFunctions_3_3_Core::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
1357{
1358 d_3_0_Core->f.FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
1359}
1360
1361inline void QOpenGLFunctions_3_3_Core::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
1362{
1363 d_3_0_Core->f.FramebufferTexture2D(target, attachment, textarget, texture, level);
1364}
1365
1366inline void QOpenGLFunctions_3_3_Core::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
1367{
1368 d_3_0_Core->f.FramebufferTexture1D(target, attachment, textarget, texture, level);
1369}
1370
1371inline GLenum QOpenGLFunctions_3_3_Core::glCheckFramebufferStatus(GLenum target)
1372{
1373 return d_3_0_Core->f.CheckFramebufferStatus(target);
1374}
1375
1376inline void QOpenGLFunctions_3_3_Core::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
1377{
1378 d_3_0_Core->f.GenFramebuffers(n, framebuffers);
1379}
1380
1381inline void QOpenGLFunctions_3_3_Core::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
1382{
1383 d_3_0_Core->f.DeleteFramebuffers(n, framebuffers);
1384}
1385
1386inline void QOpenGLFunctions_3_3_Core::glBindFramebuffer(GLenum target, GLuint framebuffer)
1387{
1388 d_3_0_Core->f.BindFramebuffer(target, framebuffer);
1389}
1390
1391inline GLboolean QOpenGLFunctions_3_3_Core::glIsFramebuffer(GLuint framebuffer)
1392{
1393 return d_3_0_Core->f.IsFramebuffer(framebuffer);
1394}
1395
1396inline void QOpenGLFunctions_3_3_Core::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
1397{
1398 d_3_0_Core->f.GetRenderbufferParameteriv(target, pname, params);
1399}
1400
1401inline void QOpenGLFunctions_3_3_Core::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
1402{
1403 d_3_0_Core->f.RenderbufferStorage(target, internalformat, width, height);
1404}
1405
1406inline void QOpenGLFunctions_3_3_Core::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
1407{
1408 d_3_0_Core->f.GenRenderbuffers(n, renderbuffers);
1409}
1410
1411inline void QOpenGLFunctions_3_3_Core::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
1412{
1413 d_3_0_Core->f.DeleteRenderbuffers(n, renderbuffers);
1414}
1415
1416inline void QOpenGLFunctions_3_3_Core::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
1417{
1418 d_3_0_Core->f.BindRenderbuffer(target, renderbuffer);
1419}
1420
1421inline GLboolean QOpenGLFunctions_3_3_Core::glIsRenderbuffer(GLuint renderbuffer)
1422{
1423 return d_3_0_Core->f.IsRenderbuffer(renderbuffer);
1424}
1425
1426inline const GLubyte * QOpenGLFunctions_3_3_Core::glGetStringi(GLenum name, GLuint index)
1427{
1428 return d_3_0_Core->f.GetStringi(name, index);
1429}
1430
1431inline void QOpenGLFunctions_3_3_Core::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
1432{
1433 d_3_0_Core->f.ClearBufferfi(buffer, drawbuffer, depth, stencil);
1434}
1435
1436inline void QOpenGLFunctions_3_3_Core::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
1437{
1438 d_3_0_Core->f.ClearBufferfv(buffer, drawbuffer, value);
1439}
1440
1441inline void QOpenGLFunctions_3_3_Core::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
1442{
1443 d_3_0_Core->f.ClearBufferuiv(buffer, drawbuffer, value);
1444}
1445
1446inline void QOpenGLFunctions_3_3_Core::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
1447{
1448 d_3_0_Core->f.ClearBufferiv(buffer, drawbuffer, value);
1449}
1450
1451inline void QOpenGLFunctions_3_3_Core::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
1452{
1453 d_3_0_Core->f.GetTexParameterIuiv(target, pname, params);
1454}
1455
1456inline void QOpenGLFunctions_3_3_Core::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
1457{
1458 d_3_0_Core->f.GetTexParameterIiv(target, pname, params);
1459}
1460
1461inline void QOpenGLFunctions_3_3_Core::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
1462{
1463 d_3_0_Core->f.TexParameterIuiv(target, pname, params);
1464}
1465
1466inline void QOpenGLFunctions_3_3_Core::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
1467{
1468 d_3_0_Core->f.TexParameterIiv(target, pname, params);
1469}
1470
1471inline void QOpenGLFunctions_3_3_Core::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
1472{
1473 d_3_0_Core->f.Uniform4uiv(location, count, value);
1474}
1475
1476inline void QOpenGLFunctions_3_3_Core::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
1477{
1478 d_3_0_Core->f.Uniform3uiv(location, count, value);
1479}
1480
1481inline void QOpenGLFunctions_3_3_Core::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
1482{
1483 d_3_0_Core->f.Uniform2uiv(location, count, value);
1484}
1485
1486inline void QOpenGLFunctions_3_3_Core::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
1487{
1488 d_3_0_Core->f.Uniform1uiv(location, count, value);
1489}
1490
1491inline void QOpenGLFunctions_3_3_Core::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
1492{
1493 d_3_0_Core->f.Uniform4ui(location, v0, v1, v2, v3);
1494}
1495
1496inline void QOpenGLFunctions_3_3_Core::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
1497{
1498 d_3_0_Core->f.Uniform3ui(location, v0, v1, v2);
1499}
1500
1501inline void