1/****************************************************************************
2**
3** Copyright (C) 2015 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_5_CORE_H
51#define QOPENGLVERSIONFUNCTIONS_4_5_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
60// MemoryBarrier is a macro on some architectures on Windows
61#ifdef Q_OS_WIN
62#pragma push_macro("MemoryBarrier")
63#undef MemoryBarrier
64#endif
65
66QT_BEGIN_NAMESPACE
67
68class Q_GUI_EXPORT QOpenGLFunctions_4_5_Core : public QAbstractOpenGLFunctions
69{
70public:
71 QOpenGLFunctions_4_5_Core();
72 ~QOpenGLFunctions_4_5_Core();
73
74 bool initializeOpenGLFunctions() override;
75
76 // OpenGL 1.0 core functions
77 void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
78 void glDepthRange(GLdouble nearVal, GLdouble farVal);
79 GLboolean glIsEnabled(GLenum cap);
80 void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
81 void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
82 void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
83 void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
84 void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, void *pixels);
85 const GLubyte * glGetString(GLenum name);
86 void glGetIntegerv(GLenum pname, GLint *data);
87 void glGetFloatv(GLenum pname, GLfloat *data);
88 GLenum glGetError();
89 void glGetDoublev(GLenum pname, GLdouble *data);
90 void glGetBooleanv(GLenum pname, GLboolean *data);
91 void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels);
92 void glReadBuffer(GLenum src);
93 void glPixelStorei(GLenum pname, GLint param);
94 void glPixelStoref(GLenum pname, GLfloat param);
95 void glDepthFunc(GLenum func);
96 void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
97 void glStencilFunc(GLenum func, GLint ref, GLuint mask);
98 void glLogicOp(GLenum opcode);
99 void glBlendFunc(GLenum sfactor, GLenum dfactor);
100 void glFlush();
101 void glFinish();
102 void glEnable(GLenum cap);
103 void glDisable(GLenum cap);
104 void glDepthMask(GLboolean flag);
105 void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
106 void glStencilMask(GLuint mask);
107 void glClearDepth(GLdouble depth);
108 void glClearStencil(GLint s);
109 void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
110 void glClear(GLbitfield mask);
111 void glDrawBuffer(GLenum buf);
112 void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels);
113 void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels);
114 void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
115 void glTexParameteri(GLenum target, GLenum pname, GLint param);
116 void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
117 void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
118 void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
119 void glPolygonMode(GLenum face, GLenum mode);
120 void glPointSize(GLfloat size);
121 void glLineWidth(GLfloat width);
122 void glHint(GLenum target, GLenum mode);
123 void glFrontFace(GLenum mode);
124 void glCullFace(GLenum mode);
125
126 // OpenGL 1.1 core functions
127 GLboolean glIsTexture(GLuint texture);
128 void glGenTextures(GLsizei n, GLuint *textures);
129 void glDeleteTextures(GLsizei n, const GLuint *textures);
130 void glBindTexture(GLenum target, GLuint texture);
131 void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
132 void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels);
133 void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
134 void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
135 void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
136 void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
137 void glPolygonOffset(GLfloat factor, GLfloat units);
138 void glDrawElements(GLenum mode, GLsizei count, GLenum type, const void *indices);
139 void glDrawArrays(GLenum mode, GLint first, GLsizei count);
140
141 // OpenGL 1.2 core functions
142 void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
143 void glBlendEquation(GLenum mode);
144 void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
145 void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
146 void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels);
147 void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices);
148
149 // OpenGL 1.3 core functions
150 void glGetCompressedTexImage(GLenum target, GLint level, void *img);
151 void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data);
152 void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data);
153 void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data);
154 void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data);
155 void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data);
156 void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data);
157 void glSampleCoverage(GLfloat value, GLboolean invert);
158 void glActiveTexture(GLenum texture);
159
160 // OpenGL 1.4 core functions
161 void glPointParameteriv(GLenum pname, const GLint *params);
162 void glPointParameteri(GLenum pname, GLint param);
163 void glPointParameterfv(GLenum pname, const GLfloat *params);
164 void glPointParameterf(GLenum pname, GLfloat param);
165 void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const void *const *indices, GLsizei drawcount);
166 void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
167 void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
168
169 // OpenGL 1.5 core functions
170 void glGetBufferPointerv(GLenum target, GLenum pname, void * *params);
171 void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
172 GLboolean glUnmapBuffer(GLenum target);
173 void * glMapBuffer(GLenum target, GLenum access);
174 void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, void *data);
175 void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const void *data);
176 void glBufferData(GLenum target, GLsizeiptr size, const void *data, GLenum usage);
177 GLboolean glIsBuffer(GLuint buffer);
178 void glGenBuffers(GLsizei n, GLuint *buffers);
179 void glDeleteBuffers(GLsizei n, const GLuint *buffers);
180 void glBindBuffer(GLenum target, GLuint buffer);
181 void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
182 void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
183 void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
184 void glEndQuery(GLenum target);
185 void glBeginQuery(GLenum target, GLuint id);
186 GLboolean glIsQuery(GLuint id);
187 void glDeleteQueries(GLsizei n, const GLuint *ids);
188 void glGenQueries(GLsizei n, GLuint *ids);
189
190 // OpenGL 2.0 core functions
191 void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer);
192 void glVertexAttrib4usv(GLuint index, const GLushort *v);
193 void glVertexAttrib4uiv(GLuint index, const GLuint *v);
194 void glVertexAttrib4ubv(GLuint index, const GLubyte *v);
195 void glVertexAttrib4sv(GLuint index, const GLshort *v);
196 void glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
197 void glVertexAttrib4iv(GLuint index, const GLint *v);
198 void glVertexAttrib4fv(GLuint index, const GLfloat *v);
199 void glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
200 void glVertexAttrib4dv(GLuint index, const GLdouble *v);
201 void glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
202 void glVertexAttrib4bv(GLuint index, const GLbyte *v);
203 void glVertexAttrib4Nusv(GLuint index, const GLushort *v);
204 void glVertexAttrib4Nuiv(GLuint index, const GLuint *v);
205 void glVertexAttrib4Nubv(GLuint index, const GLubyte *v);
206 void glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
207 void glVertexAttrib4Nsv(GLuint index, const GLshort *v);
208 void glVertexAttrib4Niv(GLuint index, const GLint *v);
209 void glVertexAttrib4Nbv(GLuint index, const GLbyte *v);
210 void glVertexAttrib3sv(GLuint index, const GLshort *v);
211 void glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z);
212 void glVertexAttrib3fv(GLuint index, const GLfloat *v);
213 void glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
214 void glVertexAttrib3dv(GLuint index, const GLdouble *v);
215 void glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
216 void glVertexAttrib2sv(GLuint index, const GLshort *v);
217 void glVertexAttrib2s(GLuint index, GLshort x, GLshort y);
218 void glVertexAttrib2fv(GLuint index, const GLfloat *v);
219 void glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
220 void glVertexAttrib2dv(GLuint index, const GLdouble *v);
221 void glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y);
222 void glVertexAttrib1sv(GLuint index, const GLshort *v);
223 void glVertexAttrib1s(GLuint index, GLshort x);
224 void glVertexAttrib1fv(GLuint index, const GLfloat *v);
225 void glVertexAttrib1f(GLuint index, GLfloat x);
226 void glVertexAttrib1dv(GLuint index, const GLdouble *v);
227 void glVertexAttrib1d(GLuint index, GLdouble x);
228 void glValidateProgram(GLuint program);
229 void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
230 void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
231 void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
232 void glUniform4iv(GLint location, GLsizei count, const GLint *value);
233 void glUniform3iv(GLint location, GLsizei count, const GLint *value);
234 void glUniform2iv(GLint location, GLsizei count, const GLint *value);
235 void glUniform1iv(GLint location, GLsizei count, const GLint *value);
236 void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
237 void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
238 void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
239 void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
240 void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
241 void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
242 void glUniform2i(GLint location, GLint v0, GLint v1);
243 void glUniform1i(GLint location, GLint v0);
244 void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
245 void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
246 void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
247 void glUniform1f(GLint location, GLfloat v0);
248 void glUseProgram(GLuint program);
249 void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
250 void glLinkProgram(GLuint program);
251 GLboolean glIsShader(GLuint shader);
252 GLboolean glIsProgram(GLuint program);
253 void glGetVertexAttribPointerv(GLuint index, GLenum pname, void * *pointer);
254 void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
255 void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
256 void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
257 void glGetUniformiv(GLuint program, GLint location, GLint *params);
258 void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
259 GLint glGetUniformLocation(GLuint program, const GLchar *name);
260 void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
261 void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
262 void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
263 void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
264 void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
265 GLint glGetAttribLocation(GLuint program, const GLchar *name);
266 void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders);
267 void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
268 void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
269 void glEnableVertexAttribArray(GLuint index);
270 void glDisableVertexAttribArray(GLuint index);
271 void glDetachShader(GLuint program, GLuint shader);
272 void glDeleteShader(GLuint shader);
273 void glDeleteProgram(GLuint program);
274 GLuint glCreateShader(GLenum type);
275 GLuint glCreateProgram();
276 void glCompileShader(GLuint shader);
277 void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
278 void glAttachShader(GLuint program, GLuint shader);
279 void glStencilMaskSeparate(GLenum face, GLuint mask);
280 void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
281 void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
282 void glDrawBuffers(GLsizei n, const GLenum *bufs);
283 void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
284
285 // OpenGL 2.1 core functions
286 void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
287 void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
288 void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
289 void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
290 void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
291 void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
292
293 // OpenGL 3.0 core functions
294 GLboolean glIsVertexArray(GLuint array);
295 void glGenVertexArrays(GLsizei n, GLuint *arrays);
296 void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
297 void glBindVertexArray(GLuint array);
298 void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
299 void * glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
300 void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
301 void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
302 void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
303 void glGenerateMipmap(GLenum target);
304 void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
305 void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
306 void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
307 void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
308 void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
309 GLenum glCheckFramebufferStatus(GLenum target);
310 void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
311 void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
312 void glBindFramebuffer(GLenum target, GLuint framebuffer);
313 GLboolean glIsFramebuffer(GLuint framebuffer);
314 void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
315 void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
316 void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
317 void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
318 void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
319 GLboolean glIsRenderbuffer(GLuint renderbuffer);
320 const GLubyte * glGetStringi(GLenum name, GLuint index);
321 void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
322 void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
323 void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
324 void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
325 void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
326 void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
327 void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
328 void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
329 void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
330 void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
331 void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
332 void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
333 void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
334 void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
335 void glUniform2ui(GLint location, GLuint v0, GLuint v1);
336 void glUniform1ui(GLint location, GLuint v0);
337 GLint glGetFragDataLocation(GLuint program, const GLchar *name);
338 void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
339 void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
340 void glVertexAttribI4usv(GLuint index, const GLushort *v);
341 void glVertexAttribI4ubv(GLuint index, const GLubyte *v);
342 void glVertexAttribI4sv(GLuint index, const GLshort *v);
343 void glVertexAttribI4bv(GLuint index, const GLbyte *v);
344 void glVertexAttribI4uiv(GLuint index, const GLuint *v);
345 void glVertexAttribI3uiv(GLuint index, const GLuint *v);
346 void glVertexAttribI2uiv(GLuint index, const GLuint *v);
347 void glVertexAttribI1uiv(GLuint index, const GLuint *v);
348 void glVertexAttribI4iv(GLuint index, const GLint *v);
349 void glVertexAttribI3iv(GLuint index, const GLint *v);
350 void glVertexAttribI2iv(GLuint index, const GLint *v);
351 void glVertexAttribI1iv(GLuint index, const GLint *v);
352 void glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
353 void glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z);
354 void glVertexAttribI2ui(GLuint index, GLuint x, GLuint y);
355 void glVertexAttribI1ui(GLuint index, GLuint x);
356 void glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w);
357 void glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z);
358 void glVertexAttribI2i(GLuint index, GLint x, GLint y);
359 void glVertexAttribI1i(GLuint index, GLint x);
360 void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
361 void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
362 void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer);
363 void glEndConditionalRender();
364 void glBeginConditionalRender(GLuint id, GLenum mode);
365 void glClampColor(GLenum target, GLenum clamp);
366 void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
367 void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
368 void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
369 void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
370 void glEndTransformFeedback();
371 void glBeginTransformFeedback(GLenum primitiveMode);
372 GLboolean glIsEnabledi(GLenum target, GLuint index);
373 void glDisablei(GLenum target, GLuint index);
374 void glEnablei(GLenum target, GLuint index);
375 void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
376 void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
377 void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
378
379 // OpenGL 3.1 core functions
380 void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
381 void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
382 void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
383 GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
384 void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
385 void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
386 void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar *const *uniformNames, GLuint *uniformIndices);
387 void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
388 void glPrimitiveRestartIndex(GLuint index);
389 void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
390 void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount);
391 void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
392
393 // OpenGL 3.2 core functions
394 void glSampleMaski(GLuint maskNumber, GLbitfield mask);
395 void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
396 void glTexImage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
397 void glTexImage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
398 void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
399 void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
400 void glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
401 void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
402 void glGetInteger64v(GLenum pname, GLint64 *data);
403 void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
404 GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
405 void glDeleteSync(GLsync sync);
406 GLboolean glIsSync(GLsync sync);
407 GLsync glFenceSync(GLenum condition, GLbitfield flags);
408 void glProvokingVertex(GLenum mode);
409 void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const void *const *indices, GLsizei drawcount, const GLint *basevertex);
410 void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex);
411 void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex);
412 void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex);
413
414 // OpenGL 3.3 core functions
415 void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
416 void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
417 void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
418 void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
419 void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
420 void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
421 void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
422 void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
423 void glVertexAttribDivisor(GLuint index, GLuint divisor);
424 void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params);
425 void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params);
426 void glQueryCounter(GLuint id, GLenum target);
427 void glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params);
428 void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
429 void glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params);
430 void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
431 void glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param);
432 void glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param);
433 void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param);
434 void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
435 void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param);
436 void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param);
437 void glBindSampler(GLuint unit, GLuint sampler);
438 GLboolean glIsSampler(GLuint sampler);
439 void glDeleteSamplers(GLsizei count, const GLuint *samplers);
440 void glGenSamplers(GLsizei count, GLuint *samplers);
441 GLint glGetFragDataIndex(GLuint program, const GLchar *name);
442 void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
443
444 // OpenGL 4.0 core functions
445 void glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params);
446 void glEndQueryIndexed(GLenum target, GLuint index);
447 void glBeginQueryIndexed(GLenum target, GLuint index, GLuint id);
448 void glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream);
449 void glDrawTransformFeedback(GLenum mode, GLuint id);
450 void glResumeTransformFeedback();
451 void glPauseTransformFeedback();
452 GLboolean glIsTransformFeedback(GLuint id);
453 void glGenTransformFeedbacks(GLsizei n, GLuint *ids);
454 void glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids);
455 void glBindTransformFeedback(GLenum target, GLuint id);
456 void glPatchParameterfv(GLenum pname, const GLfloat *values);
457 void glPatchParameteri(GLenum pname, GLint value);
458 void glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values);
459 void glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params);
460 void glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices);
461 void glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
462 void glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
463 void glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
464 GLuint glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name);
465 GLint glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name);
466 void glGetUniformdv(GLuint program, GLint location, GLdouble *params);
467 void glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
468 void glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
469 void glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
470 void glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
471 void glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
472 void glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
473 void glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
474 void glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
475 void glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
476 void glUniform4dv(GLint location, GLsizei count, const GLdouble *value);
477 void glUniform3dv(GLint location, GLsizei count, const GLdouble *value);
478 void glUniform2dv(GLint location, GLsizei count, const GLdouble *value);
479 void glUniform1dv(GLint location, GLsizei count, const GLdouble *value);
480 void glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
481 void glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z);
482 void glUniform2d(GLint location, GLdouble x, GLdouble y);
483 void glUniform1d(GLint location, GLdouble x);
484 void glDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect);
485 void glDrawArraysIndirect(GLenum mode, const void *indirect);
486 void glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
487 void glBlendFunci(GLuint buf, GLenum src, GLenum dst);
488 void glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha);
489 void glBlendEquationi(GLuint buf, GLenum mode);
490 void glMinSampleShading(GLfloat value);
491
492 // OpenGL 4.1 core functions
493 void glGetDoublei_v(GLenum target, GLuint index, GLdouble *data);
494 void glGetFloati_v(GLenum target, GLuint index, GLfloat *data);
495 void glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f);
496 void glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v);
497 void glScissorIndexedv(GLuint index, const GLint *v);
498 void glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
499 void glScissorArrayv(GLuint first, GLsizei count, const GLint *v);
500 void glViewportIndexedfv(GLuint index, const GLfloat *v);
501 void glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
502 void glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v);
503 void glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params);
504 void glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer);
505 void glVertexAttribL4dv(GLuint index, const GLdouble *v);
506 void glVertexAttribL3dv(GLuint index, const GLdouble *v);
507 void glVertexAttribL2dv(GLuint index, const GLdouble *v);
508 void glVertexAttribL1dv(GLuint index, const GLdouble *v);
509 void glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
510 void glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
511 void glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y);
512 void glVertexAttribL1d(GLuint index, GLdouble x);
513 void glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
514 void glValidateProgramPipeline(GLuint pipeline);
515 void glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
516 void glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
517 void glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
518 void glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
519 void glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
520 void glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
521 void glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
522 void glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
523 void glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
524 void glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
525 void glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
526 void glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
527 void glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
528 void glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
529 void glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
530 void glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
531 void glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
532 void glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
533 void glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
534 void glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
535 void glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
536 void glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3);
537 void glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
538 void glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
539 void glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value);
540 void glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
541 void glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
542 void glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
543 void glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
544 void glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2);
545 void glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
546 void glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
547 void glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value);
548 void glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
549 void glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
550 void glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1);
551 void glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
552 void glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1);
553 void glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
554 void glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1);
555 void glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value);
556 void glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1);
557 void glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
558 void glProgramUniform1ui(GLuint program, GLint location, GLuint v0);
559 void glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
560 void glProgramUniform1d(GLuint program, GLint location, GLdouble v0);
561 void glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
562 void glProgramUniform1f(GLuint program, GLint location, GLfloat v0);
563 void glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value);
564 void glProgramUniform1i(GLuint program, GLint location, GLint v0);
565 void glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params);
566 GLboolean glIsProgramPipeline(GLuint pipeline);
567 void glGenProgramPipelines(GLsizei n, GLuint *pipelines);
568 void glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines);
569 void glBindProgramPipeline(GLuint pipeline);
570 GLuint glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar* const *strings);
571 void glActiveShaderProgram(GLuint pipeline, GLuint program);
572 void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program);
573 void glProgramParameteri(GLuint program, GLenum pname, GLint value);
574 void glProgramBinary(GLuint program, GLenum binaryFormat, const void *binary, GLsizei length);
575 void glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary);
576 void glClearDepthf(GLfloat dd);
577 void glDepthRangef(GLfloat n, GLfloat f);
578 void glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
579 void glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const void *binary, GLsizei length);
580 void glReleaseShaderCompiler();
581
582 // OpenGL 4.2 core functions
583 void glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount);
584 void glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount);
585 void glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
586 void glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
587 void glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
588 void glMemoryBarrier(GLbitfield barriers);
589 void glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format);
590 void glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params);
591 void glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params);
592 void glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance);
593 void glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance);
594 void glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance);
595
596 // OpenGL 4.3 core functions
597 void glGetObjectPtrLabel(const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
598 void glObjectPtrLabel(const void *ptr, GLsizei length, const GLchar *label);
599 void glGetObjectLabel(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
600 void glObjectLabel(GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
601 void glPopDebugGroup();
602 void glPushDebugGroup(GLenum source, GLuint id, GLsizei length, const GLchar *message);
603 GLuint glGetDebugMessageLog(GLuint count, GLsizei bufSize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
604 void glDebugMessageCallback(GLDEBUGPROC callback, const void *userParam);
605 void glDebugMessageInsert(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
606 void glDebugMessageControl(GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
607 void glVertexBindingDivisor(GLuint bindingindex, GLuint divisor);
608 void glVertexAttribBinding(GLuint attribindex, GLuint bindingindex);
609 void glVertexAttribLFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
610 void glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
611 void glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
612 void glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
613 void glTextureView(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers);
614 void glTexStorage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
615 void glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
616 void glTexBufferRange(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
617 void glShaderStorageBlockBinding(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding);
618 GLint glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface, const GLchar *name);
619 GLint glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar *name);
620 void glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params);
621 void glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name);
622 GLuint glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name);
623 void glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint *params);
624 void glMultiDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride);
625 void glMultiDrawArraysIndirect(GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride);
626 void glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
627 void glInvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments);
628 void glInvalidateBufferData(GLuint buffer);
629 void glInvalidateBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr length);
630 void glInvalidateTexImage(GLuint texture, GLint level);
631 void glInvalidateTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth);
632 void glGetInternalformati64v(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params);
633 void glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params);
634 void glFramebufferParameteri(GLenum target, GLenum pname, GLint param);
635 void glCopyImageSubData(GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth);
636 void glDispatchComputeIndirect(GLintptr indirect);
637 void glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z);
638 void glClearBufferSubData(GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data);
639 void glClearBufferData(GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data);
640
641 // OpenGL 4.4 core functions
642 void glBindVertexBuffers(GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizei *strides);
643 void glBindImageTextures(GLuint first, GLsizei count, const GLuint *textures);
644 void glBindSamplers(GLuint first, GLsizei count, const GLuint *samplers);
645 void glBindTextures(GLuint first, GLsizei count, const GLuint *textures);
646 void glBindBuffersRange(GLenum target, GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizeiptr *sizes);
647 void glBindBuffersBase(GLenum target, GLuint first, GLsizei count, const GLuint *buffers);
648 void glClearTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *data);
649 void glClearTexImage(GLuint texture, GLint level, GLenum format, GLenum type, const void *data);
650 void glBufferStorage(GLenum target, GLsizeiptr size, const void *data, GLbitfield flags);
651
652 // OpenGL 4.5 core functions
653 void glTextureBarrier();
654 void glReadnPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
655 void glGetnUniformuiv(GLuint program, GLint location, GLsizei bufSize, GLuint *params);
656 void glGetnUniformiv(GLuint program, GLint location, GLsizei bufSize, GLint *params);
657 void glGetnUniformfv(GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
658 void glGetnUniformdv(GLuint program, GLint location, GLsizei bufSize, GLdouble *params);
659 void glGetnTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels);
660 void glGetnCompressedTexImage(GLenum target, GLint lod, GLsizei bufSize, void *pixels);
661 GLenum glGetGraphicsResetStatus();
662 void glGetCompressedTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei bufSize, void *pixels);
663 void glGetTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLsizei bufSize, void *pixels);
664 void glMemoryBarrierByRegion(GLbitfield barriers);
665 void glCreateQueries(GLenum target, GLsizei n, GLuint *ids);
666 void glCreateProgramPipelines(GLsizei n, GLuint *pipelines);
667 void glCreateSamplers(GLsizei n, GLuint *samplers);
668 void glGetVertexArrayIndexed64iv(GLuint vaobj, GLuint index, GLenum pname, GLint64 *param);
669 void glGetVertexArrayIndexediv(GLuint vaobj, GLuint index, GLenum pname, GLint *param);
670 void glGetVertexArrayiv(GLuint vaobj, GLenum pname, GLint *param);
671 void glVertexArrayBindingDivisor(GLuint vaobj, GLuint bindingindex, GLuint divisor);
672 void glVertexArrayAttribLFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
673 void glVertexArrayAttribIFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
674 void glVertexArrayAttribFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
675 void glVertexArrayAttribBinding(GLuint vaobj, GLuint attribindex, GLuint bindingindex);
676 void glVertexArrayVertexBuffers(GLuint vaobj, GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizei *strides);
677 void glVertexArrayVertexBuffer(GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
678 void glVertexArrayElementBuffer(GLuint vaobj, GLuint buffer);
679 void glEnableVertexArrayAttrib(GLuint vaobj, GLuint index);
680 void glDisableVertexArrayAttrib(GLuint vaobj, GLuint index);
681 void glCreateVertexArrays(GLsizei n, GLuint *arrays);
682 void glGetTextureParameteriv(GLuint texture, GLenum pname, GLint *params);
683 void glGetTextureParameterIuiv(GLuint texture, GLenum pname, GLuint *params);
684 void glGetTextureParameterIiv(GLuint texture, GLenum pname, GLint *params);
685 void glGetTextureParameterfv(GLuint texture, GLenum pname, GLfloat *params);
686 void glGetTextureLevelParameteriv(GLuint texture, GLint level, GLenum pname, GLint *params);
687 void glGetTextureLevelParameterfv(GLuint texture, GLint level, GLenum pname, GLfloat *params);
688 void glGetCompressedTextureImage(GLuint texture, GLint level, GLsizei bufSize, void *pixels);
689 void glGetTextureImage(GLuint texture, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels);
690 void glBindTextureUnit(GLuint unit, GLuint texture);
691 void glGenerateTextureMipmap(GLuint texture);
692 void glTextureParameteriv(GLuint texture, GLenum pname, const GLint *param);
693 void glTextureParameterIuiv(GLuint texture, GLenum pname, const GLuint *params);
694 void glTextureParameterIiv(GLuint texture, GLenum pname, const GLint *params);
695 void glTextureParameteri(GLuint texture, GLenum pname, GLint param);
696 void glTextureParameterfv(GLuint texture, GLenum pname, const GLfloat *param);
697 void glTextureParameterf(GLuint texture, GLenum pname, GLfloat param);
698 void glCopyTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
699 void glCopyTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
700 void glCopyTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
701 void glCompressedTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data);
702 void glCompressedTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data);
703 void glCompressedTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data);
704 void glTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
705 void glTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
706 void glTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels);
707 void glTextureStorage3DMultisample(GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
708 void glTextureStorage2DMultisample(GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
709 void glTextureStorage3D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
710 void glTextureStorage2D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
711 void glTextureStorage1D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width);
712 void glTextureBufferRange(GLuint texture, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizei size);
713 void glTextureBuffer(GLuint texture, GLenum internalformat, GLuint buffer);
714 void glCreateTextures(GLenum target, GLsizei n, GLuint *textures);
715 void glGetNamedRenderbufferParameteriv(GLuint renderbuffer, GLenum pname, GLint *params);
716 void glNamedRenderbufferStorageMultisample(GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
717 void glNamedRenderbufferStorage(GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height);
718 void glCreateRenderbuffers(GLsizei n, GLuint *renderbuffers);
719 void glGetNamedFramebufferAttachmentParameteriv(GLuint framebuffer, GLenum attachment, GLenum pname, GLint *params);
720 void glGetNamedFramebufferParameteriv(GLuint framebuffer, GLenum pname, GLint *param);
721 GLenum glCheckNamedFramebufferStatus(GLuint framebuffer, GLenum target);
722 void glBlitNamedFramebuffer(GLuint readFramebuffer, GLuint drawFramebuffer, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
723 void glClearNamedFramebufferfi(GLuint framebuffer, GLenum buffer, GLfloat depth, GLint stencil);
724 void glClearNamedFramebufferfv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLfloat *value);
725 void glClearNamedFramebufferuiv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLuint *value);
726 void glClearNamedFramebufferiv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLint *value);
727 void glInvalidateNamedFramebufferSubData(GLuint framebuffer, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
728 void glInvalidateNamedFramebufferData(GLuint framebuffer, GLsizei numAttachments, const GLenum *attachments);
729 void glNamedFramebufferReadBuffer(GLuint framebuffer, GLenum src);
730 void glNamedFramebufferDrawBuffers(GLuint framebuffer, GLsizei n, const GLenum *bufs);
731 void glNamedFramebufferDrawBuffer(GLuint framebuffer, GLenum buf);
732 void glNamedFramebufferTextureLayer(GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer);
733 void glNamedFramebufferTexture(GLuint framebuffer, GLenum attachment, GLuint texture, GLint level);
734 void glNamedFramebufferParameteri(GLuint framebuffer, GLenum pname, GLint param);
735 void glNamedFramebufferRenderbuffer(GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
736 void glCreateFramebuffers(GLsizei n, GLuint *framebuffers);
737 void glGetNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizei size, void *data);
738 void glGetNamedBufferPointerv(GLuint buffer, GLenum pname, void * *params);
739 void glGetNamedBufferParameteri64v(GLuint buffer, GLenum pname, GLint64 *params);
740 void glGetNamedBufferParameteriv(GLuint buffer, GLenum pname, GLint *params);
741 void glFlushMappedNamedBufferRange(GLuint buffer, GLintptr offset, GLsizei length);
742 GLboolean glUnmapNamedBuffer(GLuint buffer);
743 void * glMapNamedBufferRange(GLuint buffer, GLintptr offset, GLsizei length, GLbitfield access);
744 void * glMapNamedBuffer(GLuint buffer, GLenum access);
745 void glClearNamedBufferSubData(GLuint buffer, GLenum internalformat, GLintptr offset, GLsizei size, GLenum format, GLenum type, const void *data);
746 void glClearNamedBufferData(GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void *data);
747 void glCopyNamedBufferSubData(GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizei size);
748 void glNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizei size, const void *data);
749 void glNamedBufferData(GLuint buffer, GLsizei size, const void *data, GLenum usage);
750 void glNamedBufferStorage(GLuint buffer, GLsizei size, const void *data, GLbitfield flags);
751 void glCreateBuffers(GLsizei n, GLuint *buffers);
752 void glGetTransformFeedbacki64_v(GLuint xfb, GLenum pname, GLuint index, GLint64 *param);
753 void glGetTransformFeedbacki_v(GLuint xfb, GLenum pname, GLuint index, GLint *param);
754 void glGetTransformFeedbackiv(GLuint xfb, GLenum pname, GLint *param);
755 void glTransformFeedbackBufferRange(GLuint xfb, GLuint index, GLuint buffer, GLintptr offset, GLsizei size);
756 void glTransformFeedbackBufferBase(GLuint xfb, GLuint index, GLuint buffer);
757 void glCreateTransformFeedbacks(GLsizei n, GLuint *ids);
758 void glClipControl(GLenum origin, GLenum depth);
759
760private:
761 friend class QOpenGLContext;
762
763 static bool isContextCompatible(QOpenGLContext *context);
764 static QOpenGLVersionProfile versionProfile();
765
766 QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
767 QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
768 QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
769 QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
770 QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
771 QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
772 QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
773 QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
774 QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
775 QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
776 QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
777 QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
778 QOpenGLFunctions_4_0_CoreBackend* d_4_0_Core;
779 QOpenGLFunctions_4_1_CoreBackend* d_4_1_Core;
780 QOpenGLFunctions_4_2_CoreBackend* d_4_2_Core;
781 QOpenGLFunctions_4_3_CoreBackend* d_4_3_Core;
782 QOpenGLFunctions_4_4_CoreBackend* d_4_4_Core;
783 QOpenGLFunctions_4_5_CoreBackend* d_4_5_Core;
784};
785
786// OpenGL 1.0 core functions
787inline void QOpenGLFunctions_4_5_Core::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
788{
789 d_1_0_Core->f.Viewport(x, y, width, height);
790}
791
792inline void QOpenGLFunctions_4_5_Core::glDepthRange(GLdouble nearVal, GLdouble farVal)
793{
794 d_1_0_Core->f.DepthRange(nearVal, farVal);
795}
796
797inline GLboolean QOpenGLFunctions_4_5_Core::glIsEnabled(GLenum cap)
798{
799 return d_1_0_Core->f.IsEnabled(cap);
800}
801
802inline void QOpenGLFunctions_4_5_Core::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
803{
804 d_1_0_Core->f.GetTexLevelParameteriv(target, level, pname, params);
805}
806
807inline void QOpenGLFunctions_4_5_Core::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
808{
809 d_1_0_Core->f.GetTexLevelParameterfv(target, level, pname, params);
810}
811
812inline void QOpenGLFunctions_4_5_Core::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
813{
814 d_1_0_Core->f.GetTexParameteriv(target, pname, params);
815}
816
817inline void QOpenGLFunctions_4_5_Core::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
818{
819 d_1_0_Core->f.GetTexParameterfv(target, pname, params);
820}
821
822inline void QOpenGLFunctions_4_5_Core::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, void *pixels)
823{
824 d_1_0_Core->f.GetTexImage(target, level, format, type, pixels);
825}
826
827inline const GLubyte * QOpenGLFunctions_4_5_Core::glGetString(GLenum name)
828{
829 return d_1_0_Core->f.GetString(name);
830}
831
832inline void QOpenGLFunctions_4_5_Core::glGetIntegerv(GLenum pname, GLint *data)
833{
834 d_1_0_Core->f.GetIntegerv(pname, data);
835}
836
837inline void QOpenGLFunctions_4_5_Core::glGetFloatv(GLenum pname, GLfloat *data)
838{
839 d_1_0_Core->f.GetFloatv(pname, data);
840}
841
842inline GLenum QOpenGLFunctions_4_5_Core::glGetError()
843{
844 return d_1_0_Core->f.GetError();
845}
846
847inline void QOpenGLFunctions_4_5_Core::glGetDoublev(GLenum pname, GLdouble *data)
848{
849 d_1_0_Core->f.GetDoublev(pname, data);
850}
851
852inline void QOpenGLFunctions_4_5_Core::glGetBooleanv(GLenum pname, GLboolean *data)
853{
854 d_1_0_Core->f.GetBooleanv(pname, data);
855}
856
857inline void QOpenGLFunctions_4_5_Core::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels)
858{
859 d_1_0_Core->f.ReadPixels(x, y, width, height, format, type, pixels);
860}
861
862inline void QOpenGLFunctions_4_5_Core::glReadBuffer(GLenum src)
863{
864 d_1_0_Core->f.ReadBuffer(src);
865}
866
867inline void QOpenGLFunctions_4_5_Core::glPixelStorei(GLenum pname, GLint param)
868{
869 d_1_0_Core->f.PixelStorei(pname, param);
870}
871
872inline void QOpenGLFunctions_4_5_Core::glPixelStoref(GLenum pname, GLfloat param)
873{
874 d_1_0_Core->f.PixelStoref(pname, param);
875}
876
877inline void QOpenGLFunctions_4_5_Core::glDepthFunc(GLenum func)
878{
879 d_1_0_Core->f.DepthFunc(func);
880}
881
882inline void QOpenGLFunctions_4_5_Core::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
883{
884 d_1_0_Core->f.StencilOp(fail, zfail, zpass);
885}
886
887inline void QOpenGLFunctions_4_5_Core::glStencilFunc(GLenum func, GLint ref, GLuint mask)
888{
889 d_1_0_Core->f.StencilFunc(func, ref, mask);
890}
891
892inline void QOpenGLFunctions_4_5_Core::glLogicOp(GLenum opcode)
893{
894 d_1_0_Core->f.LogicOp(opcode);
895}
896
897inline void QOpenGLFunctions_4_5_Core::glBlendFunc(GLenum sfactor, GLenum dfactor)
898{
899 d_1_0_Core->f.BlendFunc(sfactor, dfactor);
900}
901
902inline void QOpenGLFunctions_4_5_Core::glFlush()
903{
904 d_1_0_Core->f.Flush();
905}
906
907inline void QOpenGLFunctions_4_5_Core::glFinish()
908{
909 d_1_0_Core->f.Finish();
910}
911
912inline void QOpenGLFunctions_4_5_Core::glEnable(GLenum cap)
913{
914 d_1_0_Core->f.Enable(cap);
915}
916
917inline void QOpenGLFunctions_4_5_Core::glDisable(GLenum cap)
918{
919 d_1_0_Core->f.Disable(cap);
920}
921
922inline void QOpenGLFunctions_4_5_Core::glDepthMask(GLboolean flag)
923{
924 d_1_0_Core->f.DepthMask(flag);
925}
926
927inline void QOpenGLFunctions_4_5_Core::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
928{
929 d_1_0_Core->f.ColorMask(red, green, blue, alpha);
930}
931
932inline void QOpenGLFunctions_4_5_Core::glStencilMask(GLuint mask)
933{
934 d_1_0_Core->f.StencilMask(mask);
935}
936
937inline void QOpenGLFunctions_4_5_Core::glClearDepth(GLdouble depth)
938{
939 d_1_0_Core->f.ClearDepth(depth);
940}
941
942inline void QOpenGLFunctions_4_5_Core::glClearStencil(GLint s)
943{
944 d_1_0_Core->f.ClearStencil(s);
945}
946
947inline void QOpenGLFunctions_4_5_Core::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
948{
949 d_1_0_Core->f.ClearColor(red, green, blue, alpha);
950}
951
952inline void QOpenGLFunctions_4_5_Core::glClear(GLbitfield mask)
953{
954 d_1_0_Core->f.Clear(mask);
955}
956
957inline void QOpenGLFunctions_4_5_Core::glDrawBuffer(GLenum buf)
958{
959 d_1_0_Core->f.DrawBuffer(buf);
960}
961
962inline void QOpenGLFunctions_4_5_Core::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels)
963{
964 d_1_0_Core->f.TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
965}
966
967inline void QOpenGLFunctions_4_5_Core::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels)
968{
969 d_1_0_Core->f.TexImage1D(target, level, internalformat, width, border, format, type, pixels);
970}
971
972inline void QOpenGLFunctions_4_5_Core::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
973{
974 d_1_0_Core->f.TexParameteriv(target, pname, params);
975}
976
977inline void QOpenGLFunctions_4_5_Core::glTexParameteri(GLenum target, GLenum pname, GLint param)
978{
979 d_1_0_Core->f.TexParameteri(target, pname, param);
980}
981
982inline void QOpenGLFunctions_4_5_Core::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
983{
984 d_1_0_Core->f.TexParameterfv(target, pname, params);
985}
986
987inline void QOpenGLFunctions_4_5_Core::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
988{
989 d_1_0_Core->f.TexParameterf(target, pname, param);
990}
991
992inline void QOpenGLFunctions_4_5_Core::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
993{
994 d_1_0_Core->f.Scissor(x, y, width, height);
995}
996
997inline void QOpenGLFunctions_4_5_Core::glPolygonMode(GLenum face, GLenum mode)
998{
999 d_1_0_Core->f.PolygonMode(face, mode);
1000}
1001
1002inline void QOpenGLFunctions_4_5_Core::glPointSize(GLfloat size)
1003{
1004 d_1_0_Core->f.PointSize(size);
1005}
1006
1007inline void QOpenGLFunctions_4_5_Core::glLineWidth(GLfloat width)
1008{
1009 d_1_0_Core->f.LineWidth(width);
1010}
1011
1012inline void QOpenGLFunctions_4_5_Core::glHint(GLenum target, GLenum mode)
1013{
1014 d_1_0_Core->f.Hint(target, mode);
1015}
1016
1017inline void QOpenGLFunctions_4_5_Core::glFrontFace(GLenum mode)
1018{
1019 d_1_0_Core->f.FrontFace(mode);
1020}
1021
1022inline void QOpenGLFunctions_4_5_Core::glCullFace(GLenum mode)
1023{
1024 d_1_0_Core->f.CullFace(mode);
1025}
1026
1027
1028// OpenGL 1.1 core functions
1029inline GLboolean QOpenGLFunctions_4_5_Core::glIsTexture(GLuint texture)
1030{
1031 return d_1_1_Core->f.IsTexture(texture);
1032}
1033
1034inline void QOpenGLFunctions_4_5_Core::glGenTextures(GLsizei n, GLuint *textures)
1035{
1036 d_1_1_Core->f.GenTextures(n, textures);
1037}
1038
1039inline void QOpenGLFunctions_4_5_Core::glDeleteTextures(GLsizei n, const GLuint *textures)
1040{
1041 d_1_1_Core->f.DeleteTextures(n, textures);
1042}
1043
1044inline void QOpenGLFunctions_4_5_Core::glBindTexture(GLenum target, GLuint texture)
1045{
1046 d_1_1_Core->f.BindTexture(target, texture);
1047}
1048
1049inline void QOpenGLFunctions_4_5_Core::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels)
1050{
1051 d_1_1_Core->f.TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
1052}
1053
1054inline void QOpenGLFunctions_4_5_Core::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels)
1055{
1056 d_1_1_Core->f.TexSubImage1D(target, level, xoffset, width, format, type, pixels);
1057}
1058
1059inline void QOpenGLFunctions_4_5_Core::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
1060{
1061 d_1_1_Core->f.CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
1062}
1063
1064inline void QOpenGLFunctions_4_5_Core::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
1065{
1066 d_1_1_Core->f.CopyTexSubImage1D(target, level, xoffset, x, y, width);
1067}
1068
1069inline void QOpenGLFunctions_4_5_Core::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
1070{
1071 d_1_1_Core->f.CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
1072}
1073
1074inline void QOpenGLFunctions_4_5_Core::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
1075{
1076 d_1_1_Core->f.CopyTexImage1D(target, level, internalformat, x, y, width, border);
1077}
1078
1079inline void QOpenGLFunctions_4_5_Core::glPolygonOffset(GLfloat factor, GLfloat units)
1080{
1081 d_1_1_Core->f.PolygonOffset(factor, units);
1082}
1083
1084inline void QOpenGLFunctions_4_5_Core::glDrawElements(GLenum mode, GLsizei count, GLenum type, const void *indices)
1085{
1086 d_1_1_Core->f.DrawElements(mode, count, type, indices);
1087}
1088
1089inline void QOpenGLFunctions_4_5_Core::glDrawArrays(GLenum mode, GLint first, GLsizei count)
1090{
1091 d_1_1_Core->f.DrawArrays(mode, first, count);
1092}
1093
1094
1095// OpenGL 1.2 core functions
1096inline void QOpenGLFunctions_4_5_Core::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
1097{
1098 d_1_2_Core->f.BlendColor(red, green, blue, alpha);
1099}
1100
1101inline void QOpenGLFunctions_4_5_Core::glBlendEquation(GLenum mode)
1102{
1103 d_1_2_Core->f.BlendEquation(mode);
1104}
1105
1106inline void QOpenGLFunctions_4_5_Core::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
1107{
1108 d_1_2_Core->f.CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
1109}
1110
1111inline void QOpenGLFunctions_4_5_Core::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels)
1112{
1113 d_1_2_Core->f.TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
1114}
1115
1116inline void QOpenGLFunctions_4_5_Core::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels)
1117{
1118 d_1_2_Core->f.TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
1119}
1120
1121inline void QOpenGLFunctions_4_5_Core::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices)
1122{
1123 d_1_2_Core->f.DrawRangeElements(mode, start, end, count, type, indices);
1124}
1125
1126
1127// OpenGL 1.3 core functions
1128inline void QOpenGLFunctions_4_5_Core::glGetCompressedTexImage(GLenum target, GLint level, void *img)
1129{
1130 d_1_3_Core->f.GetCompressedTexImage(target, level, img);
1131}
1132
1133inline void QOpenGLFunctions_4_5_Core::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data)
1134{
1135 d_1_3_Core->f.CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
1136}
1137
1138inline void QOpenGLFunctions_4_5_Core::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data)
1139{
1140 d_1_3_Core->f.CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
1141}
1142
1143inline void QOpenGLFunctions_4_5_Core::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data)
1144{
1145 d_1_3_Core->f.CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
1146}
1147
1148inline void QOpenGLFunctions_4_5_Core::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data)
1149{
1150 d_1_3_Core->f.CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
1151}
1152
1153inline void QOpenGLFunctions_4_5_Core::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data)
1154{
1155 d_1_3_Core->f.CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
1156}
1157
1158inline void QOpenGLFunctions_4_5_Core::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data)
1159{
1160 d_1_3_Core->f.CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
1161}
1162
1163inline void QOpenGLFunctions_4_5_Core::glSampleCoverage(GLfloat value, GLboolean invert)
1164{
1165 d_1_3_Core->f.SampleCoverage(value, invert);
1166}
1167
1168inline void QOpenGLFunctions_4_5_Core::glActiveTexture(GLenum texture)
1169{
1170 d_1_3_Core->f.ActiveTexture(texture);
1171}
1172
1173
1174// OpenGL 1.4 core functions
1175inline void QOpenGLFunctions_4_5_Core::glPointParameteriv(GLenum pname, const GLint *params)
1176{
1177 d_1_4_Core->f.PointParameteriv(pname, params);
1178}
1179
1180inline void QOpenGLFunctions_4_5_Core::glPointParameteri(GLenum pname, GLint param)
1181{
1182 d_1_4_Core->f.PointParameteri(pname, param);
1183}
1184
1185inline void QOpenGLFunctions_4_5_Core::glPointParameterfv(GLenum pname, const GLfloat *params)
1186{
1187 d_1_4_Core->f.PointParameterfv(pname, params);
1188}
1189
1190inline void QOpenGLFunctions_4_5_Core::glPointParameterf(GLenum pname, GLfloat param)
1191{
1192 d_1_4_Core->f.PointParameterf(pname, param);
1193}
1194
1195inline void QOpenGLFunctions_4_5_Core::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const void *const *indices, GLsizei drawcount)
1196{
1197 d_1_4_Core->f.MultiDrawElements(mode, count, type, indices, drawcount);
1198}
1199
1200inline void QOpenGLFunctions_4_5_Core::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
1201{
1202 d_1_4_Core->f.MultiDrawArrays(mode, first, count, drawcount);
1203}
1204
1205inline void QOpenGLFunctions_4_5_Core::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
1206{
1207 d_1_4_Core->f.BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
1208}
1209
1210
1211// OpenGL 1.5 core functions
1212inline void QOpenGLFunctions_4_5_Core::glGetBufferPointerv(GLenum target, GLenum pname, void * *params)
1213{
1214 d_1_5_Core->f.GetBufferPointerv(target, pname, params);
1215}
1216
1217inline void QOpenGLFunctions_4_5_Core::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
1218{
1219 d_1_5_Core->f.GetBufferParameteriv(target, pname, params);
1220}
1221
1222inline GLboolean QOpenGLFunctions_4_5_Core::glUnmapBuffer(GLenum target)
1223{
1224 return d_1_5_Core->f.UnmapBuffer(target);
1225}
1226
1227inline void * QOpenGLFunctions_4_5_Core::glMapBuffer(GLenum target, GLenum access)
1228{
1229 return d_1_5_Core->f.MapBuffer(target, access);
1230}
1231
1232inline void QOpenGLFunctions_4_5_Core::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, void *data)
1233{
1234 d_1_5_Core->f.GetBufferSubData(target, offset, size, data);
1235}
1236
1237inline void QOpenGLFunctions_4_5_Core::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const void *data)
1238{
1239 d_1_5_Core->f.BufferSubData(target, offset, size, data);
1240}
1241
1242inline void QOpenGLFunctions_4_5_Core::glBufferData(GLenum target, GLsizeiptr size, const void *data, GLenum usage)
1243{
1244 d_1_5_Core->f.BufferData(target, size, data, usage);
1245}
1246
1247inline GLboolean QOpenGLFunctions_4_5_Core::glIsBuffer(GLuint buffer)
1248{
1249 return d_1_5_Core->f.IsBuffer(buffer);
1250}
1251
1252inline void QOpenGLFunctions_4_5_Core::glGenBuffers(GLsizei n, GLuint *buffers)
1253{
1254 d_1_5_Core->f.GenBuffers(n, buffers);
1255}
1256
1257inline void QOpenGLFunctions_4_5_Core::glDeleteBuffers(GLsizei n, const GLuint *buffers)
1258{
1259 d_1_5_Core->f.DeleteBuffers(n, buffers);
1260}
1261
1262inline void QOpenGLFunctions_4_5_Core::glBindBuffer(GLenum target, GLuint buffer)
1263{
1264 d_1_5_Core->f.BindBuffer(target, buffer);
1265}
1266
1267inline void QOpenGLFunctions_4_5_Core::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
1268{
1269 d_1_5_Core->f.GetQueryObjectuiv(id, pname, params);
1270}
1271
1272inline void QOpenGLFunctions_4_5_Core::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
1273{
1274 d_1_5_Core->f.GetQueryObjectiv(id, pname, params);
1275}
1276
1277inline void QOpenGLFunctions_4_5_Core::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
1278{
1279 d_1_5_Core->f.GetQueryiv(target, pname, params);
1280}
1281
1282inline void QOpenGLFunctions_4_5_Core::glEndQuery(GLenum target)
1283{
1284 d_1_5_Core->f.EndQuery(target);
1285}
1286
1287inline void QOpenGLFunctions_4_5_Core::glBeginQuery(GLenum target, GLuint id)
1288{
1289 d_1_5_Core->f.BeginQuery(target, id);
1290}
1291
1292inline GLboolean QOpenGLFunctions_4_5_Core::glIsQuery(GLuint id)
1293{
1294 return d_1_5_Core->f.IsQuery(id);
1295}
1296
1297inline void QOpenGLFunctions_4_5_Core::glDeleteQueries(GLsizei n, const GLuint *ids)
1298{
1299 d_1_5_Core->f.DeleteQueries(n, ids);
1300}
1301
1302inline void QOpenGLFunctions_4_5_Core::glGenQueries(GLsizei n, GLuint *ids)
1303{
1304 d_1_5_Core->f.GenQueries(n, ids);
1305}
1306
1307
1308// OpenGL 2.0 core functions
1309inline void QOpenGLFunctions_4_5_Core::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer)
1310{
1311 d_2_0_Core->f.VertexAttribPointer(index, size, type, normalized, stride, pointer);
1312}
1313
1314inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4usv(GLuint index, const GLushort *v)
1315{
1316 d_2_0_Core->f.VertexAttrib4usv(index, v);
1317}
1318
1319inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4uiv(GLuint index, const GLuint *v)
1320{
1321 d_2_0_Core->f.VertexAttrib4uiv(index, v);
1322}
1323
1324inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4ubv(GLuint index, const GLubyte *v)
1325{
1326 d_2_0_Core->f.VertexAttrib4ubv(index, v);
1327}
1328
1329inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4sv(GLuint index, const GLshort *v)
1330{
1331 d_2_0_Core->f.VertexAttrib4sv(index, v);
1332}
1333
1334inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
1335{
1336 d_2_0_Core->f.VertexAttrib4s(index, x, y, z, w);
1337}
1338
1339inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4iv(GLuint index, const GLint *v)
1340{
1341 d_2_0_Core->f.VertexAttrib4iv(index, v);
1342}
1343
1344inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4fv(GLuint index, const GLfloat *v)
1345{
1346 d_2_0_Core->f.VertexAttrib4fv(index, v);
1347}
1348
1349inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
1350{
1351 d_2_0_Core->f.VertexAttrib4f(index, x, y, z, w);
1352}
1353
1354inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4dv(GLuint index, const GLdouble *v)
1355{
1356 d_2_0_Core->f.VertexAttrib4dv(index, v);
1357}
1358
1359inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
1360{
1361 d_2_0_Core->f.VertexAttrib4d(index, x, y, z, w);
1362}
1363
1364inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4bv(GLuint index, const GLbyte *v)
1365{
1366 d_2_0_Core->f.VertexAttrib4bv(index, v);
1367}
1368
1369inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4Nusv(GLuint index, const GLushort *v)
1370{
1371 d_2_0_Core->f.VertexAttrib4Nusv(index, v);
1372}
1373
1374inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4Nuiv(GLuint index, const GLuint *v)
1375{
1376 d_2_0_Core->f.VertexAttrib4Nuiv(index, v);
1377}
1378
1379inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4Nubv(GLuint index, const GLubyte *v)
1380{
1381 d_2_0_Core->f.VertexAttrib4Nubv(index, v);
1382}
1383
1384inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
1385{
1386 d_2_0_Core->f.VertexAttrib4Nub(index, x, y, z, w);
1387}
1388
1389inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4Nsv(GLuint index, const GLshort *v)
1390{
1391 d_2_0_Core->f.VertexAttrib4Nsv(index, v);
1392}
1393
1394inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4Niv(GLuint index, const GLint *v)
1395{
1396 d_2_0_Core->f.VertexAttrib4Niv(index, v);
1397}
1398
1399inline void QOpenGLFunctions_4_5_Core::glVertexAttrib4Nbv(GLuint index, const GLbyte *v)
1400{
1401 d_2_0_Core->f.VertexAttrib4Nbv(index, v);
1402}
1403
1404inline void QOpenGLFunctions_4_5_Core::glVertexAttrib3sv(GLuint index, const GLshort *v)
1405{
1406 d_2_0_Core->f.VertexAttrib3sv(index, v);
1407}
1408
1409inline void QOpenGLFunctions_4_5_Core::glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z)
1410{
1411 d_2_0_Core->f.VertexAttrib3s(index, x, y, z);
1412}
1413
1414inline void QOpenGLFunctions_4_5_Core::glVertexAttrib3fv(GLuint index, const GLfloat *v)
1415{
1416 d_2_0_Core->f.VertexAttrib3fv(index, v);
1417}
1418
1419inline void QOpenGLFunctions_4_5_Core::glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z)
1420{
1421 d_2_0_Core->f.VertexAttrib3f(index, x, y, z);
1422}
1423
1424inline void QOpenGLFunctions_4_5_Core::glVertexAttrib3dv(GLuint index, const GLdouble *v)
1425{
1426 d_2_0_Core->f.VertexAttrib3dv(index, v);
1427}
1428
1429inline void QOpenGLFunctions_4_5_Core::glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
1430{
1431 d_2_0_Core->f.VertexAttrib3d(index, x, y, z);
1432}
1433
1434inline void QOpenGLFunctions_4_5_Core::glVertexAttrib2sv(GLuint index, const GLshort *v)
1435{
1436 d_2_0_Core->f.VertexAttrib2sv(index, v);
1437}
1438
1439inline void QOpenGLFunctions_4_5_Core::glVertexAttrib2s(GLuint index, GLshort x, GLshort y)
1440{
1441 d_2_0_Core->f.VertexAttrib2s(index, x, y);
1442}
1443
1444inline void QOpenGLFunctions_4_5_Core::glVertexAttrib2fv(GLuint index, const GLfloat *v)
1445{
1446 d_2_0_Core->f.VertexAttrib2fv(index, v);
1447}
1448
1449inline void QOpenGLFunctions_4_5_Core::glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y)
1450{
1451 d_2_0_Core->f.VertexAttrib2f(index, x, y);
1452}
1453
1454inline void QOpenGLFunctions_4_5_Core::glVertexAttrib2dv(GLuint index, const GLdouble *v)
1455{
1456 d_2_0_Core->f.VertexAttrib2dv(index, v);
1457}
1458
1459inline void QOpenGLFunctions_4_5_Core::glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y)
1460{
1461 d_2_0_Core->f.VertexAttrib2d(index, x, y);
1462}
1463
1464inline void QOpenGLFunctions_4_5_Core::glVertexAttrib1sv(GLuint index, const GLshort *v)
1465{
1466 d_2_0_Core->f.VertexAttrib1sv(index, v);
1467}
1468
1469inline void QOpenGLFunctions_4_5_Core::glVertexAttrib1s(GLuint index, GLshort x)
1470{
1471 d_2_0_Core->f.VertexAttrib1s(index, x);
1472}
1473
1474inline void QOpenGLFunctions_4_5_Core::glVertexAttrib1fv(GLuint index, const GLfloat *v)
1475{
1476 d_2_0_Core->f.VertexAttrib1fv(index, v);
1477}
1478
1479inline void QOpenGLFunctions_4_5_Core::glVertexAttrib1f(GLuint index, GLfloat x)
1480{
1481 d_2_0_Core->f.VertexAttrib1f(index, x);
1482}
1483
1484inline void QOpenGLFunctions_4_5_Core::glVertexAttrib1dv(GLuint index, const GLdouble *v)
1485{
1486 d_2_0_Core->f.VertexAttrib1dv(index, v);
1487}
1488
1489inline void QOpenGLFunctions_4_5_Core::glVertexAttrib1d(GLuint index, GLdouble x)
1490{
1491 d_2_0_Core->f.VertexAttrib1d(index, x);
1492}
1493
1494inline void QOpenGLFunctions_4_5_Core::glValidateProgram(GLuint program)
1495{
1496 d_2_0_Core->f.ValidateProgram(program);
1497}
1498
1499inline void QOpenGLFunctions_4_5_Core::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1500{
1501 d_2_0_Core->f.UniformMatrix4fv(location, count, transpose, value);
1502}
1503
1504inline void QOpenGLFunctions_4_5_Core::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1505{
1506 d_2_0_Core->f.UniformMatrix3fv(location, count, transpose, value);
1507}
1508
1509inline void QOpenGLFunctions_4_5_Core::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1510{
1511 d_2_0_Core->f.UniformMatrix2fv(location, count, transpose, value);
1512}
1513
1514inline void QOpenGLFunctions_4_5_Core::glUniform4iv(GLint location, GLsizei count, const GLint *value)
1515{
1516 d_2_0_Core->f.Uniform4iv(location, count, value);
1517}
1518
1519inline void QOpenGLFunctions_4_5_Core::glUniform3iv(GLint location, GLsizei count, const GLint *value)
1520{
1521 d_2_0_Core->f.Uniform3iv(location, count, value);
1522}
1523
1524inline void QOpenGLFunctions_4_5_Core::glUniform2iv(GLint location, GLsizei count, const GLint *value)
1525{
1526 d_2_0_Core->f.Uniform2iv(location, count, value);
1527}
1528
1529inline void QOpenGLFunctions_4_5_Core::glUniform1iv(GLint location, GLsizei count, const GLint *value)
1530{
1531 d_2_0_Core->f.Uniform1iv(location, count, value);
1532}
1533
1534inline void QOpenGLFunctions_4_5_Core::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
1535{
1536 d_2_0_Core->f.Uniform4fv(location, count, value);
1537}
1538
1539inline void QOpenGLFunctions_4_5_Core::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
1540{
1541 d_2_0_Core->f.Uniform3fv(location, count, value);
1542}
1543
1544inline void QOpenGLFunctions_4_5_Core::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
1545{
1546 d_2_0_Core->f.Uniform2fv(location, count, value);
1547}
1548
1549inline void QOpenGLFunctions_4_5_Core::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
1550{
1551 d_2_0_Core->f.Uniform1fv(location, count, value);
1552}
1553
1554inline void QOpenGLFunctions_4_5_Core::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
1555{
1556 d_2_0_Core->f.Uniform4i(location, v0, v1, v2, v3);
1557}
1558
1559inline void QOpenGLFunctions_4_5_Core::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
1560{
1561 d_2_0_Core->f.Uniform3i(location, v0, v1, v2);
1562}
1563
1564inline void QOpenGLFunctions_4_5_Core::glUniform2i(GLint location, GLint v0, GLint v1)
1565{
1566 d_2_0_Core->f.Uniform2i(location, v0, v1);
1567}
1568
1569inline void QOpenGLFunctions_4_5_Core::glUniform1i(GLint location, GLint v0)
1570{
1571 d_2_0_Core->f.Uniform1i(location, v0);
1572}
1573
1574inline void QOpenGLFunctions_4_5_Core::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
1575{
1576 d_2_0_Core->f.Uniform4f(location, v0, v1, v2, v3);
1577}
1578
1579inline void QOpenGLFunctions_4_5_Core::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
1580{
1581 d_2_0_Core->f.Uniform3f(location, v0, v1, v2);
1582}
1583
1584inline void QOpenGLFunctions_4_5_Core::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
1585{
1586 d_2_0_Core->f.Uniform2f(location, v0, v1);
1587}
1588
1589inline void QOpenGLFunctions_4_5_Core::glUniform1f(GLint location, GLfloat v0)
1590{
1591 d_2_0_Core->f.Uniform1f(location, v0);
1592}
1593
1594inline void QOpenGLFunctions_4_5_Core::glUseProgram(GLuint program)
1595{
1596 d_2_0_Core->f.UseProgram(program);
1597}
1598
1599inline void QOpenGLFunctions_4_5_Core::glShaderSource(GLuint shader, GLsizei count, const GLchar *const *string, const GLint *length)
1600{
1601 d_2_0_Core->f.ShaderSource(shader, count, string, length);
1602}
1603
1604inline void QOpenGLFunctions_4_5_Core::glLinkProgram(GLuint program)
1605{
1606 d_2_0_Core->f.LinkProgram(program);
1607}
1608
1609inline GLboolean QOpenGLFunctions_4_5_Core::glIsShader(GLuint shader)
1610{
1611 return d_2_0_Core->f.IsShader(shader);
1612}
1613
1614inline GLboolean QOpenGLFunctions_4_5_Core::glIsProgram(GLuint program)
1615{
1616 return d_2_0_Core->f.IsProgram(program);
1617}
1618
1619inline void QOpenGLFunctions_4_5_Core::glGetVertexAttribPointerv(GLuint index, GLenum pname, void * *pointer)
1620{
1621 d_2_0_Core->f.GetVertexAttribPointerv(index, pname, pointer);
1622}
1623
1624inline void QOpenGLFunctions_4_5_Core::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
1625{
1626 d_2_0_Core->f.GetVertexAttribiv(index, pname, params);
1627}
1628
1629inline void QOpenGLFunctions_4_5_Core::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
1630{
1631 d_2_0_Core->f.GetVertexAttribfv(index, pname, params);
1632}
1633
1634inline void QOpenGLFunctions_4_5_Core::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
1635{
1636 d_2_0_Core->f.GetVertexAttribdv(index, pname, params);
1637}
1638
1639inline void QOpenGLFunctions_4_5_Core::glGetUniformiv(GLuint program, GLint location, GLint *params)
1640{
1641 d_2_0_Core->f.GetUniformiv(program, location, params);
1642}
1643
1644inline void QOpenGLFunctions_4_5_Core::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
1645{
1646 d_2_0_Core->f.GetUniformfv(program, location, params);
1647}
1648
1649inline GLint QOpenGLFunctions_4_5_Core::glGetUniformLocation(GLuint program, const GLchar *name)
1650{
1651 return d_2_0_Core->f.GetUniformLocation(program, name);
1652}
1653
1654inline void QOpenGLFunctions_4_5_Core::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
1655{
1656 d_2_0_Core->f.GetShaderSource(shader, bufSize, length, source);
1657}
1658
1659inline void QOpenGLFunctions_4_5_Core::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
1660{
1661 d_2_0_Core->f.GetShaderInfoLog(shader, bufSize, length, infoLog);
1662}
1663
1664inline void QOpenGLFunctions_4_5_Core::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
1665{
1666 d_2_0_Core->f.GetShaderiv(shader, pname, params);
1667}
1668
1669inline void QOpenGLFunctions_4_5_Core::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
1670{
1671 d_2_0_Core->f.GetProgramInfoLog(program, bufSize, length, infoLog);
1672}
1673
1674inline void QOpenGLFunctions_4_5_Core::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
1675{
1676 d_2_0_Core->f.GetProgramiv(program, pname, params);
1677}
1678
1679inline GLint QOpenGLFunctions_4_5_Core::glGetAttribLocation(GLuint program, const GLchar *name)
1680{
1681 return d_2_0_Core->f.GetAttribLocation(program, name);
1682}
1683
1684inline void QOpenGLFunctions_4_5_Core::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders)
1685{
1686 d_2_0_Core->f.GetAttachedShaders(program, maxCount, count, shaders);
1687}
1688
1689inline void QOpenGLFunctions_4_5_Core::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
1690{
1691 d_2_0_Core->f.GetActiveUniform(program, index, bufSize, length, size, type, name);
1692}
1693
1694inline void QOpenGLFunctions_4_5_Core::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
1695{
1696 d_2_0_Core->f.GetActiveAttrib(program, index, bufSize, length, size, type, name);
1697}
1698
1699inline void QOpenGLFunctions_4_5_Core::glEnableVertexAttribArray(GLuint index)
1700{
1701 d_2_0_Core->f.EnableVertexAttribArray(index);
1702}
1703
1704inline void QOpenGLFunctions_4_5_Core::glDisableVertexAttribArray(GLuint index)
1705{
1706 d_2_0_Core->f.DisableVertexAttribArray(index);
1707}
1708
1709inline void QOpenGLFunctions_4_5_Core::glDetachShader(GLuint program, GLuint shader)
1710{
1711 d_2_0_Core->f.DetachShader(program, shader);
1712}
1713
1714inline void QOpenGLFunctions_4_5_Core::glDeleteShader(GLuint shader)
1715{
1716 d_2_0_Core->f.DeleteShader(shader);
1717}
1718
1719inline void QOpenGLFunctions_4_5_Core::glDeleteProgram(GLuint program)
1720{
1721 d_2_0_Core->f.DeleteProgram(program);
1722}
1723
1724inline GLuint QOpenGLFunctions_4_5_Core::glCreateShader(GLenum type)
1725{
1726 return d_2_0_Core->f.CreateShader(type);
1727}
1728
1729inline GLuint QOpenGLFunctions_4_5_Core::glCreateProgram()
1730{
1731 return d_2_0_Core->f.CreateProgram();
1732}
1733
1734inline void QOpenGLFunctions_4_5_Core::glCompileShader(GLuint shader)
1735{
1736 d_2_0_Core->f.CompileShader(shader);
1737}
1738
1739inline void QOpenGLFunctions_4_5_Core::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
1740{
1741 d_2_0_Core->f.BindAttribLocation(program, index, name);
1742}
1743
1744inline void QOpenGLFunctions_4_5_Core::glAttachShader(GLuint program, GLuint shader)
1745{
1746 d_2_0_Core->f.AttachShader(program, shader);
1747}
1748
1749inline void QOpenGLFunctions_4_5_Core::glStencilMaskSeparate(GLenum face, GLuint mask)
1750{
1751 d_2_0_Core->f.StencilMaskSeparate(face, mask);
1752}
1753
1754inline void QOpenGLFunctions_4_5_Core::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
1755{
1756 d_2_0_Core->f.StencilFuncSeparate(face, func, ref, mask);
1757}
1758
1759inline void QOpenGLFunctions_4_5_Core::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
1760{
1761 d_2_0_Core->f.StencilOpSeparate(face, sfail, dpfail, dppass);
1762}
1763
1764inline void QOpenGLFunctions_4_5_Core::glDrawBuffers(GLsizei n, const GLenum *bufs)
1765{
1766 d_2_0_Core->f.DrawBuffers(n, bufs);
1767}
1768
1769inline void QOpenGLFunctions_4_5_Core::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
1770{
1771 d_2_0_Core->f.BlendEquationSeparate(modeRGB, modeAlpha);
1772}
1773
1774
1775// OpenGL 2.1 core functions
1776inline void QOpenGLFunctions_4_5_Core::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1777{
1778 d_2_1_Core->f.UniformMatrix4x3fv(location, count, transpose, value);
1779}
1780
1781inline void QOpenGLFunctions_4_5_Core::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1782{
1783 d_2_1_Core->f.UniformMatrix3x4fv(location, count, transpose, value);
1784}
1785
1786inline void QOpenGLFunctions_4_5_Core::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1787{
1788 d_2_1_Core->f.UniformMatrix4x2fv(location, count, transpose, value);
1789}
1790
1791inline void QOpenGLFunctions_4_5_Core::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1792{
1793 d_2_1_Core->f.UniformMatrix2x4fv(location, count, transpose, value);
1794}
1795
1796inline void QOpenGLFunctions_4_5_Core::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1797{
1798 d_2_1_Core->f.UniformMatrix3x2fv(location, count, transpose, value);
1799}
1800
1801inline void QOpenGLFunctions_4_5_Core::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1802{
1803 d_2_1_Core->f.UniformMatrix2x3fv(location, count, transpose, value);
1804}
1805
1806
1807// OpenGL 3.0 core functions
1808inline GLboolean QOpenGLFunctions_4_5_Core::glIsVertexArray(GLuint array)
1809{
1810 return d_3_0_Core->f.IsVertexArray(array);
1811}
1812
1813inline void QOpenGLFunctions_4_5_Core::glGenVertexArrays(GLsizei n, GLuint *arrays)
1814{
1815 d_3_0_Core->f.GenVertexArrays(n, arrays);
1816}
1817
1818inline void QOpenGLFunctions_4_5_Core::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
1819{
1820 d_3_0_Core->f.DeleteVertexArrays(n, arrays);
1821}
1822
1823inline void QOpenGLFunctions_4_5_Core::glBindVertexArray(GLuint array)
1824{
1825 d_3_0_Core->f.BindVertexArray(array);
1826}
1827
1828inline void QOpenGLFunctions_4_5_Core::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
1829{
1830 d_3_0_Core->f.FlushMappedBufferRange(target, offset, length);
1831}
1832
1833inline void * QOpenGLFunctions_4_5_Core::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
1834{
1835 return d_3_0_Core->f.MapBufferRange(target, offset, length, access);
1836}
1837
1838inline void QOpenGLFunctions_4_5_Core::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
1839{
1840 d_3_0_Core->f.FramebufferTextureLayer(target, attachment, texture, level, layer);
1841}
1842
1843inline void QOpenGLFunctions_4_5_Core::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
1844{
1845 d_3_0_Core->f.RenderbufferStorageMultisample(target, samples, internalformat, width, height);
1846}
1847
1848inline void QOpenGLFunctions_4_5_Core::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
1849{
1850 d_3_0_Core->f.BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
1851}
1852
1853inline void QOpenGLFunctions_4_5_Core::glGenerateMipmap(GLenum target)
1854{
1855 d_3_0_Core->f.GenerateMipmap(target);
1856}
1857
1858inline void QOpenGLFunctions_4_5_Core::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
1859{
1860 d_3_0_Core->f.GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
1861}
1862
1863inline void QOpenGLFunctions_4_5_Core::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
1864{
1865 d_3_0_Core->f.FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
1866}
1867
1868inline void QOpenGLFunctions_4_5_Core::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
1869{
1870 d_3_0_Core->f.FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
1871}
1872
1873inline void QOpenGLFunctions_4_5_Core::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
1874{
1875 d_3_0_Core->f.FramebufferTexture2D(target, attachment, textarget, texture, level);
1876}
1877
1878inline void QOpenGLFunctions_4_5_Core::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
1879{
1880 d_3_0_Core->f.FramebufferTexture1D(target, attachment, textarget, texture, level);
1881}
1882
1883inline GLenum QOpenGLFunctions_4_5_Core::glCheckFramebufferStatus(GLenum target)
1884{
1885 return d_3_0_Core->f.CheckFramebufferStatus(target);
1886}
1887
1888inline void QOpenGLFunctions_4_5_Core::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
1889{
1890 d_3_0_Core->f.GenFramebuffers(n, framebuffers);
1891}
1892
1893inline void QOpenGLFunctions_4_5_Core::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
1894{
1895 d_3_0_Core->f.DeleteFramebuffers(n, framebuffers);
1896}
1897
1898inline void QOpenGLFunctions_4_5_Core::glBindFramebuffer(GLenum target, GLuint framebuffer)
1899{
1900 d_3_0_Core->f.BindFramebuffer(target, framebuffer);
1901}
1902
1903inline GLboolean QOpenGLFunctions_4_5_Core::glIsFramebuffer(GLuint framebuffer)
1904{
1905 return d_3_0_Core->f.IsFramebuffer(framebuffer);
1906}
1907
1908inline void QOpenGLFunctions_4_5_Core::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
1909{
1910 d_3_0_Core->f.GetRenderbufferParameteriv(target, pname, params);
1911}
1912
1913inline void QOpenGLFunctions_4_5_Core::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
1914{
1915 d_3_0_Core->f.RenderbufferStorage(target, internalformat, width, height);
1916}
1917
1918inline void QOpenGLFunctions_4_5_Core::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
1919{
1920 d_3_0_Core->f.GenRenderbuffers(n, renderbuffers);
1921}
1922
1923inline void QOpenGLFunctions_4_5_Core::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
1924{
1925 d_3_0_Core->f.DeleteRenderbuffers(n, renderbuffers);
1926}
1927
1928inline void QOpenGLFunctions_4_5_Core::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
1929{
1930 d_3_0_Core->f.BindRenderbuffer(target, renderbuffer);
1931}
1932
1933inline GLboolean QOpenGLFunctions_4_5_Core::glIsRenderbuffer(GLuint renderbuffer)
1934{
1935 return d_3_0_Core->f.IsRenderbuffer(renderbuffer);
1936}
1937
1938inline const GLubyte * QOpenGLFunctions_4_5_Core::glGetStringi(GLenum name, GLuint index)
1939{
1940 return d_3_0_Core->f.GetStringi(name, index);
1941}
1942
1943inline void QOpenGLFunctions_4_5_Core::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
1944{
1945 d_3_0_Core->f.ClearBufferfi(buffer, drawbuffer, depth, stencil);
1946}
1947
1948inline void QOpenGLFunctions_4_5_Core::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
1949{
1950 d_3_0_Core->f.ClearBufferfv(buffer, drawbuffer, value);
1951}
1952
1953inline void QOpenGLFunctions_4_5_Core::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
1954{
1955 d_3_0_Core->f.ClearBufferuiv(buffer, drawbuffer, value);
1956}
1957
1958inline void QOpenGLFunctions_4_5_Core::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
1959{
1960 d_3_0_Core->f.ClearBufferiv(buffer, drawbuffer, value);
1961}
1962
1963inline void QOpenGLFunctions_4_5_Core::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
1964{
1965 d_3_0_Core->f.GetTexParameterIuiv(target, pname, params);
1966}
1967
1968inline void QOpenGLFunctions_4_5_Core::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
1969{
1970 d_3_0_Core->f.GetTexParameterIiv(target, pname, params);
1971}
1972
1973inline void QOpenGLFunctions_4_5_Core::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
1974{
1975 d_3_0_Core->f.TexParameterIuiv(target, pname, params);
1976}
1977
1978inline void QOpenGLFunctions_4_5_Core::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
1979{
1980 d_3_0_Core->f.TexParameterIiv(target, pname, params);
1981}
1982
1983inline void QOpenGLFunctions_4_5_Core::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
1984{
1985 d_3_0_Core->f.Uniform4uiv(location, count, value);
1986}
1987
1988inline void QOpenGLFunctions_4_5_Core::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
1989{
1990 d_3_0_Core->f.Uniform3uiv(location, count, value);
1991}
1992
1993inline void QOpenGLFunctions_4_5_Core::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
1994{
1995 d_3_0_Core->f.Uniform2uiv(location, count, value);
1996}
1997
1998inline void QOpenGLFunctions_4_5_Core::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
1999{
2000 d_3_0_Core->f.Uniform1uiv(location, count, value);
2001}
2002
2003inline void QOpenGLFunctions_4_5_Core::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
2004{
2005 d_3_0_Core->f.Uniform4ui(location, v0, v1, v2, v3);
2006}
2007
2008inline void QOpenGLFunctions_4_5_Core::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
2009{
2010 d_3_0_Core->f.Uniform3ui(location, v0, v1, v2);
2011}
2012
2013inline void QOpenGLFunctions_4_5_Core::glUniform2ui(GLint location, GLuint v0, GLuint v1)
2014{
2015 d_3_0_Core->f.Uniform2ui(location, v0, v1);
2016}
2017
2018inline void QOpenGLFunctions_4_5_Core::glUniform1ui(GLint location, GLuint v0)
2019{
2020 d_3_0_Core->f.Uniform1ui(location, v0);
2021}
2022
2023inline GLint QOpenGLFunctions_4_5_Core::glGetFragDataLocation(GLuint program, const GLchar *name)
2024{
2025 return d_3_0_Core->f.GetFragDataLocation(program, name);
2026}
2027
2028inline void QOpenGLFunctions_4_5_Core::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
2029{
2030 d_3_0_Core->f.BindFragDataLocation(program, color, name);
2031}
2032
2033inline void QOpenGLFunctions_4_5_Core::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
2034{
2035 d_3_0_Core->f.GetUniformuiv(program, location, params);
2036}
2037
2038inline void QOpenGLFunctions_4_5_Core::glVertexAttribI4usv(GLuint index, const GLushort *v)
2039{
2040 d_3_0_Core->f.VertexAttribI4usv(index, v);
2041}
2042
2043inline void QOpenGLFunctions_4_5_Core::glVertexAttribI4ubv(GLuint index, const GLubyte *v)
2044{
2045 d_3_0_Core->f.VertexAttribI4ubv(index, v);
2046}
2047
2048inline void QOpenGLFunctions_4_5_Core::glVertexAttribI4sv(GLuint index, const GLshort *v)
2049{
2050 d_3_0_Core->f.VertexAttribI4sv(index, v);
2051}
2052
2053inline void QOpenGLFunctions_4_5_Core::glVertexAttribI4bv(GLuint index, const GLbyte *v)
2054{
2055 d_3_0_Core->f.VertexAttribI4bv(index, v);
2056}
2057
2058inline void QOpenGLFunctions_4_5_Core::glVertexAttribI4uiv(GLuint index, const GLuint *v)
2059{
2060 d_3_0_Core->f.VertexAttribI4uiv(index, v);
2061}
2062
2063inline void QOpenGLFunctions_4_5_Core::glVertexAttribI3uiv(GLuint index, const GLuint *v)
2064{
2065 d_3_0_Core->f.VertexAttribI3uiv(index, v);
2066}
2067
2068inline void QOpenGLFunctions_4_5_Core::glVertexAttribI2uiv(GLuint index, const GLuint *v)
2069{
2070 d_3_0_Core->f.VertexAttribI2uiv(index, v);
2071}
2072
2073inline void QOpenGLFunctions_4_5_Core::glVertexAttribI1uiv(GLuint index, const GLuint *v)
2074{
2075 d_3_0_Core->f.VertexAttribI1uiv(index, v);
2076}
2077
2078inline void QOpenGLFunctions_4_5_Core::glVertexAttribI4iv(GLuint index, const GLint *v)
2079{
2080 d_3_0_Core->f.VertexAttribI4iv(index, v);
2081}
2082
2083inline void QOpenGLFunctions_4_5_Core::glVertexAttribI3iv(GLuint index, const GLint *v)
2084{
2085 d_3_0_Core->f.VertexAttribI3iv(index, v);
2086}
2087
2088inline void QOpenGLFunctions_4_5_Core::glVertexAttribI2iv(GLuint index, const GLint *v)
2089{
2090 d_3_0_Core->f.VertexAttribI2iv(index, v);
2091}
2092
2093inline void QOpenGLFunctions_4_5_Core::glVertexAttribI1iv(GLuint index, const GLint *v)
2094{
2095 d_3_0_Core->f.VertexAttribI1iv(index, v);
2096}
2097
2098inline void QOpenGLFunctions_4_5_Core::glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
2099{
2100 d_3_0_Core->f.VertexAttribI4ui(index, x, y, z, w);
2101}
2102
2103inline void QOpenGLFunctions_4_5_Core::glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z)
2104{
2105 d_3_0_Core->f.VertexAttribI3ui(index, x, y, z);
2106}
2107
2108inline void QOpenGLFunctions_4_5_Core::glVertexAttribI2ui(GLuint index, GLuint x, GLuint y)
2109{
2110 d_3_0_Core->f.VertexAttribI2ui(index, x, y);
2111}
2112
2113inline void QOpenGLFunctions_4_5_Core::glVertexAttribI1ui(GLuint index, GLuint x)
2114{
2115 d_3_0_Core->f.VertexAttribI1ui(index, x);
2116}
2117
2118inline void QOpenGLFunctions_4_5_Core::glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w)
2119{
2120 d_3_0_Core->f.VertexAttribI4i(index, x, y, z, w);
2121}
2122
2123inline void QOpenGLFunctions_4_5_Core::glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z)
2124{
2125 d_3_0_Core->f.VertexAttribI3i(index, x, y, z);
2126}
2127
2128inline void QOpenGLFunctions_4_5_Core::glVertexAttribI2i(GLuint index, GLint x, GLint y)
2129{
2130 d_3_0_Core->f.VertexAttribI2i(index, x, y);
2131}
2132
2133inline void QOpenGLFunctions_4_5_Core::glVertexAttribI1i(GLuint index, GLint x)
2134{
2135 d_3_0_Core->f.VertexAttribI1i(index, x);
2136}
2137
2138inline void QOpenGLFunctions_4_5_Core::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
2139{
2140 d_3_0_Core->f.GetVertexAttribIuiv(index, pname, params);
2141}
2142
2143inline void QOpenGLFunctions_4_5_Core::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
2144{
2145 d_3_0_Core->f.GetVertexAttribIiv(index, pname, params);
2146}
2147
2148inline void QOpenGLFunctions_4_5_Core::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer)
2149{
2150 d_3_0_Core->f.VertexAttribIPointer(index, size, type, stride, pointer);
2151}
2152
2153inline void QOpenGLFunctions_4_5_Core::glEndConditionalRender()
2154{
2155 d_3_0_Core->f.EndConditionalRender();
2156}
2157
2158inline void QOpenGLFunctions_4_5_Core::glBeginConditionalRender(GLuint id, GLenum mode)
2159{
2160 d_3_0_Core->f.BeginConditionalRender(id, mode);
2161}
2162
2163inline void QOpenGLFunctions_4_5_Core::glClampColor(GLenum target, GLenum clamp)
2164{
2165 d_3_0_Core->f.ClampColor(target, clamp);
2166}
2167
2168inline void QOpenGLFunctions_4_5_Core::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
2169{
2170 d_3_0_Core->f.GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
2171}
2172
2173inline void QOpenGLFunctions_4_5_Core::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar *const *varyings, GLenum bufferMode)
2174{
2175 d_3_0_Core->f.TransformFeedbackVaryings(program, count, varyings, bufferMode);
2176}
2177
2178inline void QOpenGLFunctions_4_5_Core::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
2179{
2180 d_3_0_Core->f.BindBufferBase(target, index, buffer);
2181}
2182
2183inline void QOpenGLFunctions_4_5_Core::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
2184{
2185 d_3_0_Core->f.BindBufferRange(target, index, buffer, offset, size);
2186}
2187
2188inline void QOpenGLFunctions_4_5_Core::glEndTransformFeedback()
2189{
2190 d_3_0_Core->f.EndTransformFeedback();
2191}
2192
2193inline void QOpenGLFunctions_4_5_Core::glBeginTransformFeedback(GLenum primitiveMode)
2194{
2195 d_3_0_Core->f.BeginTransformFeedback(primitiveMode);
2196}
2197
2198inline GLboolean QOpenGLFunctions_4_5_Core::glIsEnabledi(GLenum target, GLuint index)
2199{
2200 return d_3_0_Core->f.IsEnabledi(target, index);
2201}
2202
2203inline void QOpenGLFunctions_4_5_Core::glDisablei(GLenum target, GLuint index)
2204{
2205 d_3_0_Core->f.Disablei(target, index);
2206}
2207
2208inline void QOpenGLFunctions_4_5_Core::glEnablei(GLenum target, GLuint index)
2209{
2210 d_3_0_Core->f.Enablei(target, index);
2211}
2212
2213inline void QOpenGLFunctions_4_5_Core::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
2214{
2215 d_3_0_Core->f.GetIntegeri_v(target, index, data);
2216}
2217
2218inline void QOpenGLFunctions_4_5_Core::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
2219{
2220 d_3_0_Core->f.GetBooleani_v(target, index, data);
2221}
2222
2223inline void QOpenGLFunctions_4_5_Core::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
2224{
2225 d_3_0_Core->f.ColorMaski(index, r, g, b, a);
2226}
2227
2228
2229// OpenGL 3.1 core functions
2230inline void QOpenGLFunctions_4_5_Core::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
2231{
2232 d_3_1_Core->f.UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
2233}
2234
2235inline void QOpenGLFunctions_4_5_Core::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
2236{
2237 d_3_1_Core->f.GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
2238}
2239
2240inline void QOpenGLFunctions_4_5_Core::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
2241{
2242 d_3_1_Core->f.GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
2243}
2244
2245inline GLuint QOpenGLFunctions_4_5_Core::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
2246{
2247 return d_3_1_Core->f.GetUniformBlockIndex(program, uniformBlockName);
2248}
2249
2250inline void QOpenGLFunctions_4_5_Core::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
2251{
2252 d_3_1_Core->f.GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
2253}
2254
2255inline void QOpenGLFunctions_4_5_Core::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
2256{
2257 d_3_1_Core->f.GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
2258}
2259
2260inline void QOpenGLFunctions_4_5_Core::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar *const *uniformNames, GLuint *uniformIndices)
2261{
2262 d_3_1_Core->f.GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
2263}
2264
2265inline void QOpenGLFunctions_4_5_Core::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
2266{
2267 d_3_1_Core->f.CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
2268}
2269
2270inline void QOpenGLFunctions_4_5_Core::glPrimitiveRestartIndex(GLuint index)
2271{
2272 d_3_1_Core->f.PrimitiveRestartIndex(index);
2273}
2274
2275inline void QOpenGLFunctions_4_5_Core::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
2276{
2277 d_3_1_Core->f.TexBuffer(target, internalformat, buffer);
2278}
2279
2280inline void QOpenGLFunctions_4_5_Core::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount)
2281{
2282 d_3_1_Core->f.DrawElementsInstanced(mode, count, type, indices, instancecount);
2283}
2284
2285inline void QOpenGLFunctions_4_5_Core::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
2286{
2287 d_3_1_Core->f.DrawArraysInstanced(mode, first, count, instancecount);
2288}
2289
2290
2291// OpenGL 3.2 core functions
2292inline void QOpenGLFunctions_4_5_Core::glSampleMaski(GLuint maskNumber, GLbitfield mask)
2293{
2294 d_3_2_Core->f.SampleMaski(maskNumber, mask);
2295}
2296
2297inline void QOpenGLFunctions_4_5_Core::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
2298{
2299 d_3_2_Core->f.GetMultisamplefv(pname, index, val);
2300}
2301
2302inline void QOpenGLFunctions_4_5_Core::glTexImage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
2303{
2304 d_3_2_Core->f.TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
2305}
2306
2307inline void QOpenGLFunctions_4_5_Core::glTexImage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
2308{
2309 d_3_2_Core->f.TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
2310}
2311
2312inline void QOpenGLFunctions_4_5_Core::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
2313{
2314 d_3_2_Core->f.FramebufferTexture(target, attachment, texture, level);
2315}
2316
2317inline void QOpenGLFunctions_4_5_Core::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
2318{
2319 d_3_2_Core->f.GetBufferParameteri64v(target, pname, params);
2320}
2321
2322inline void QOpenGLFunctions_4_5_Core::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
2323{
2324 d_3_2_Core->f.GetInteger64i_v(target, index, data);
2325}
2326
2327inline void QOpenGLFunctions_4_5_Core::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
2328{
2329 d_3_2_Core->f.GetSynciv(sync, pname, bufSize, length, values);
2330}
2331
2332inline void QOpenGLFunctions_4_5_Core::glGetInteger64v(GLenum pname, GLint64 *data)
2333{
2334 d_3_2_Core->f.GetInteger64v(pname, data);
2335}
2336
2337inline void QOpenGLFunctions_4_5_Core::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
2338{
2339 d_3_2_Core->f.WaitSync(sync, flags, timeout);
2340}
2341
2342inline GLenum QOpenGLFunctions_4_5_Core::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
2343{
2344 return d_3_2_Core->f.ClientWaitSync(sync, flags, timeout);
2345}
2346
2347inline void QOpenGLFunctions_4_5_Core::glDeleteSync(GLsync sync)
2348{
2349 d_3_2_Core->f.DeleteSync(sync);
2350}
2351
2352inline GLboolean QOpenGLFunctions_4_5_Core::glIsSync(GLsync sync)
2353{
2354 return d_3_2_Core->f.IsSync(sync);
2355}
2356
2357inline GLsync QOpenGLFunctions_4_5_Core::glFenceSync(GLenum condition, GLbitfield flags)
2358{
2359 return d_3_2_Core->f.FenceSync(condition, flags);
2360}
2361
2362inline void QOpenGLFunctions_4_5_Core::glProvokingVertex(GLenum mode)
2363{
2364 d_3_2_Core->f.ProvokingVertex(mode);
2365}
2366
2367inline void QOpenGLFunctions_4_5_Core::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const void *const *indices, GLsizei drawcount, const GLint *basevertex)
2368{
2369 d_3_2_Core->f.MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
2370}
2371
2372inline void QOpenGLFunctions_4_5_Core::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex)
2373{
2374 d_3_2_Core->f.DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
2375}
2376
2377inline void QOpenGLFunctions_4_5_Core::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex)
2378{
2379 d_3_2_Core->f.DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
2380}
2381
2382inline void QOpenGLFunctions_4_5_Core::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex)
2383{
2384 d_3_2_Core->f.DrawElementsBaseVertex(mode, count, type, indices, basevertex);
2385}
2386
2387
2388// OpenGL 3.3 core functions
2389inline void QOpenGLFunctions_4_5_Core::glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
2390{
2391 d_3_3_Core->f.VertexAttribP4uiv(index, type, normalized, value);
2392}
2393
2394inline void QOpenGLFunctions_4_5_Core::glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
2395{
2396 d_3_3_Core->f.VertexAttribP4ui(index, type, normalized, value);
2397}
2398
2399inline void QOpenGLFunctions_4_5_Core::glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
2400{
2401 d_3_3_Core->f.VertexAttribP3uiv(index, type, normalized, value);
2402}
2403
2404inline void QOpenGLFunctions_4_5_Core::glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
2405{
2406 d_3_3_Core->f.VertexAttribP3ui(index, type, normalized, value);
2407}
2408
2409inline void QOpenGLFunctions_4_5_Core::glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
2410{
2411 d_3_3_Core->f.VertexAttribP2uiv(index, type, normalized, value);
2412}
2413
2414inline void QOpenGLFunctions_4_5_Core::glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
2415{
2416 d_3_3_Core->f.VertexAttribP2ui(index, type, normalized, value);
2417}
2418
2419inline void QOpenGLFunctions_4_5_Core::glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
2420{
2421 d_3_3_Core->f.VertexAttribP1uiv(index, type, normalized, value);
2422}
2423
2424inline void QOpenGLFunctions_4_5_Core::glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
2425{
2426 d_3_3_Core->f.VertexAttribP1ui(index, type, normalized, value);
2427}
2428
2429inline void QOpenGLFunctions_4_5_Core::glVertexAttribDivisor(GLuint index, GLuint divisor)
2430{
2431 d_3_3_Core->f.VertexAttribDivisor(index, divisor);
2432}
2433
2434inline void QOpenGLFunctions_4_5_Core::glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)
2435{
2436 d_3_3_Core->f.GetQueryObjectui64v(id, pname, params);
2437}
2438
2439inline void QOpenGLFunctions_4_5_Core::glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)
2440{
2441 d_3_3_Core->f.GetQueryObjecti64v(id, pname, params);
2442}
2443
2444inline void QOpenGLFunctions_4_5_Core::glQueryCounter(GLuint id, GLenum target)
2445{
2446 d_3_3_Core->f.QueryCounter(id, target);
2447}
2448
2449inline void QOpenGLFunctions_4_5_Core::glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params)
2450{
2451 d_3_3_Core->f.GetSamplerParameterIuiv(sampler, pname, params);
2452}
2453
2454inline void QOpenGLFunctions_4_5_Core::glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
2455{
2456 d_3_3_Core->f.GetSamplerParameterfv(sampler, pname, params);
2457}
2458
2459inline void QOpenGLFunctions_4_5_Core::glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params)
2460{
2461 d_3_3_Core->f.GetSamplerParameterIiv(sampler, pname, params);
2462}
2463
2464inline void QOpenGLFunctions_4_5_Core::glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
2465{
2466 d_3_3_Core->f.GetSamplerParameteriv(sampler, pname, params);
2467}
2468
2469inline void QOpenGLFunctions_4_5_Core::glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)
2470{
2471 d_3_3_Core->f.SamplerParameterIuiv(sampler, pname, param);
2472}
2473
2474inline void QOpenGLFunctions_4_5_Core::glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)
2475{
2476 d_3_3_Core->f.SamplerParameterIiv(sampler, pname, param);
2477}
2478
2479inline void QOpenGLFunctions_4_5_Core::glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
2480{
2481 d_3_3_Core->f.SamplerParameterfv(sampler, pname, param);
2482}
2483
2484inline void QOpenGLFunctions_4_5_Core::glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
2485{
2486 d_3_3_Core->f.SamplerParameterf(sampler, pname, param);
2487}
2488
2489inline void QOpenGLFunctions_4_5_Core::glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
2490{
2491 d_3_3_Core->f.SamplerParameteriv(sampler, pname, param);
2492}
2493
2494inline void QOpenGLFunctions_4_5_Core::glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
2495{
2496 d_3_3_Core->f.SamplerParameteri(sampler, pname, param);
2497}
2498
2499inline void QOpenGLFunctions_4_5_Core::glBindSampler(GLuint unit, GLuint sampler)
2500{
2501 d_3_3_Core->f.BindSampler(unit, sampler);
2502}
2503
2504inline GLboolean QOpenGLFunctions_4_5_Core::glIsSampler(GLuint sampler)
2505{
2506 return d_3_3_Core->f.IsSampler(sampler);
2507}
2508
2509inline void QOpenGLFunctions_4_5_Core::glDeleteSamplers(GLsizei count, const GLuint *samplers)
2510{
2511 d_3_3_Core->f.DeleteSamplers(count, samplers);
2512}
2513
2514inline void QOpenGLFunctions_4_5_Core::glGenSamplers(GLsizei count, GLuint *samplers)
2515{
2516 d_3_3_Core->f.GenSamplers(count, samplers);
2517}
2518
2519inline GLint QOpenGLFunctions_4_5_Core::glGetFragDataIndex(GLuint program, const GLchar *name)
2520{
2521 return d_3_3_Core->f.GetFragDataIndex(program, name);
2522}
2523
2524inline void QOpenGLFunctions_4_5_Core::glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)
2525{
2526 d_3_3_Core->f.BindFragDataLocationIndexed(program, colorNumber, index, name);
2527}
2528
2529
2530// OpenGL 4.0 core functions
2531inline void QOpenGLFunctions_4_5_Core::glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params)
2532{
2533 d_4_0_Core->f.GetQueryIndexediv(target, index, pname, params);
2534}
2535
2536inline void QOpenGLFunctions_4_5_Core::glEndQueryIndexed(GLenum target, GLuint index)
2537{
2538 d_4_0_Core->f.EndQueryIndexed(target, index);
2539}
2540
2541inline void QOpenGLFunctions_4_5_Core::glBeginQueryIndexed(GLenum target, GLuint index, GLuint id)
2542{
2543 d_4_0_Core->f.BeginQueryIndexed(target, index, id);
2544}
2545
2546inline void QOpenGLFunctions_4_5_Core::glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream)
2547{
2548 d_4_0_Core->f.DrawTransformFeedbackStream(mode, id, stream);
2549}
2550
2551inline void QOpenGLFunctions_4_5_Core::glDrawTransformFeedback(GLenum mode, GLuint id)
2552{
2553 d_4_0_Core->f.DrawTransformFeedback(mode, id);
2554}
2555
2556inline void QOpenGLFunctions_4_5_Core::glResumeTransformFeedback()
2557{
2558 d_4_0_Core->f.ResumeTransformFeedback();
2559}
2560
2561inline void QOpenGLFunctions_4_5_Core::glPauseTransformFeedback()
2562{
2563 d_4_0_Core->f.PauseTransformFeedback();
2564}
2565
2566inline GLboolean QOpenGLFunctions_4_5_Core::glIsTransformFeedback(GLuint id)
2567{
2568 return d_4_0_Core->f.IsTransformFeedback(id);
2569}
2570
2571inline void QOpenGLFunctions_4_5_Core::glGenTransformFeedbacks(GLsizei n, GLuint *ids)
2572{
2573 d_4_0_Core->f.GenTransformFeedbacks(n, ids);
2574}
2575
2576inline void QOpenGLFunctions_4_5_Core::glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids)
2577{
2578 d_4_0_Core->f.DeleteTransformFeedbacks(n, ids);
2579}
2580
2581inline void QOpenGLFunctions_4_5_Core::glBindTransformFeedback(GLenum target, GLuint id)
2582{
2583 d_4_0_Core->f.BindTransformFeedback(target, id);
2584}
2585
2586inline void QOpenGLFunctions_4_5_Core::glPatchParameterfv(GLenum pname, const GLfloat *values)
2587{
2588 d_4_0_Core->f.PatchParameterfv(pname, values);
2589}
2590
2591inline void QOpenGLFunctions_4_5_Core::glPatchParameteri(GLenum pname, GLint value)
2592{
2593 d_4_0_Core->f.PatchParameteri(pname, value);
2594}
2595
2596inline void QOpenGLFunctions_4_5_Core::glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values)
2597{
2598 d_4_0_Core->f.GetProgramStageiv(program, shadertype, pname, values);
2599}
2600
2601inline void QOpenGLFunctions_4_5_Core::glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params)
2602{
2603 d_4_0_Core->f.GetUniformSubroutineuiv(shadertype, location, params);
2604}
2605
2606inline void QOpenGLFunctions_4_5_Core::glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices)
2607{
2608 d_4_0_Core->f.UniformSubroutinesuiv(shadertype, count, indices);
2609}
2610
2611inline void QOpenGLFunctions_4_5_Core::glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
2612{
2613 d_4_0_Core->f.GetActiveSubroutineName(program, shadertype, index, bufsize, length, name);
2614}
2615
2616inline void QOpenGLFunctions_4_5_Core::glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
2617{
2618 d_4_0_Core->f.GetActiveSubroutineUniformName(program, shadertype, index, bufsize, length, name);
2619}
2620
2621inline void QOpenGLFunctions_4_5_Core::glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values)
2622{
2623 d_4_0_Core->f.GetActiveSubroutineUniformiv(program, shadertype, index, pname, values);
2624}
2625
2626inline GLuint QOpenGLFunctions_4_5_Core::glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name)
2627{
2628 return d_4_0_Core->f.GetSubroutineIndex(program, shadertype, name);
2629}
2630
2631inline GLint QOpenGLFunctions_4_5_Core::glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name)
2632{
2633 return d_4_0_Core->f.GetSubroutineUniformLocation(program, shadertype, name);
2634}
2635
2636inline void QOpenGLFunctions_4_5_Core::glGetUniformdv(GLuint program, GLint location, GLdouble *params)
2637{
2638 d_4_0_Core->f.GetUniformdv(program, location, params);
2639}
2640
2641inline void QOpenGLFunctions_4_5_Core::glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2642{
2643 d_4_0_Core->f.UniformMatrix4x3dv(location, count, transpose, value);
2644}
2645
2646inline void QOpenGLFunctions_4_5_Core::glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2647{
2648 d_4_0_Core->f.UniformMatrix4x2dv(location, count, transpose, value);
2649}
2650
2651inline void QOpenGLFunctions_4_5_Core::glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2652{
2653 d_4_0_Core->f.UniformMatrix3x4dv(location, count, transpose, value);
2654}
2655
2656inline void QOpenGLFunctions_4_5_Core::glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2657{
2658 d_4_0_Core->f.UniformMatrix3x2dv(location, count, transpose, value);
2659}
2660
2661inline void QOpenGLFunctions_4_5_Core::glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2662{
2663 d_4_0_Core->f.UniformMatrix2x4dv(location, count, transpose, value);
2664}
2665
2666inline void QOpenGLFunctions_4_5_Core::glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2667{
2668 d_4_0_Core->f.UniformMatrix2x3dv(location, count, transpose, value);
2669}
2670
2671inline void QOpenGLFunctions_4_5_Core::glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2672{
2673 d_4_0_Core->f.UniformMatrix4dv(location, count, transpose, value);
2674}
2675
2676inline void QOpenGLFunctions_4_5_Core::glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2677{
2678 d_4_0_Core->f.UniformMatrix3dv(location, count, transpose, value);
2679}
2680
2681inline void QOpenGLFunctions_4_5_Core::glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2682{
2683 d_4_0_Core->f.UniformMatrix2dv(location, count, transpose, value);
2684}
2685
2686inline void QOpenGLFunctions_4_5_Core::glUniform4dv(GLint location, GLsizei count, const GLdouble *value)
2687{
2688 d_4_0_Core->f.Uniform4dv(location, count, value);
2689}
2690
2691inline void QOpenGLFunctions_4_5_Core::glUniform3dv(GLint location, GLsizei count, const GLdouble *value)
2692{
2693 d_4_0_Core->f.Uniform3dv(location, count, value);
2694}
2695
2696inline void QOpenGLFunctions_4_5_Core::glUniform2dv(GLint location, GLsizei count, const GLdouble *value)
2697{
2698 d_4_0_Core->f.Uniform2dv(location, count, value);
2699}
2700
2701inline void QOpenGLFunctions_4_5_Core::glUniform1dv(GLint location, GLsizei count, const GLdouble *value)
2702{
2703 d_4_0_Core->f.Uniform1dv(location, count, value);
2704}
2705
2706inline void QOpenGLFunctions_4_5_Core::glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
2707{
2708 d_4_0_Core->f.Uniform4d(location, x, y, z, w);
2709}
2710
2711inline void QOpenGLFunctions_4_5_Core::glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z)
2712{
2713 d_4_0_Core->f.Uniform3d(location, x, y, z);
2714}
2715
2716inline void QOpenGLFunctions_4_5_Core::glUniform2d(GLint location, GLdouble x, GLdouble y)
2717{
2718 d_4_0_Core->f.Uniform2d(location, x, y);
2719}
2720
2721inline void QOpenGLFunctions_4_5_Core::glUniform1d(GLint location, GLdouble x)
2722{
2723 d_4_0_Core->f.Uniform1d(location, x);
2724}
2725
2726inline void QOpenGLFunctions_4_5_Core::glDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect)
2727{
2728 d_4_0_Core->f.DrawElementsIndirect(mode, type, indirect);
2729}
2730
2731inline void QOpenGLFunctions_4_5_Core::glDrawArraysIndirect(GLenum mode, const void *indirect)
2732{
2733 d_4_0_Core->f.DrawArraysIndirect(mode, indirect);
2734}
2735
2736inline void QOpenGLFunctions_4_5_Core::glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
2737{
2738 d_4_0_Core->f.BlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
2739}
2740
2741inline void QOpenGLFunctions_4_5_Core::glBlendFunci(GLuint buf, GLenum src, GLenum dst)
2742{
2743 d_4_0_Core->f.BlendFunci(buf, src, dst);
2744}
2745
2746inline void QOpenGLFunctions_4_5_Core::glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha)
2747{
2748 d_4_0_Core->f.BlendEquationSeparatei(buf, modeRGB, modeAlpha);
2749}
2750
2751inline void QOpenGLFunctions_4_5_Core::glBlendEquationi(GLuint buf, GLenum mode)
2752{
2753 d_4_0_Core->f.BlendEquationi(buf, mode);
2754}
2755
2756inline void QOpenGLFunctions_4_5_Core::glMinSampleShading(GLfloat value)
2757{
2758 d_4_0_Core->f.MinSampleShading(value);
2759}
2760
2761
2762// OpenGL 4.1 core functions
2763inline void QOpenGLFunctions_4_5_Core::glGetDoublei_v(GLenum target, GLuint index, GLdouble *data)
2764{
2765 d_4_1_Core->f.GetDoublei_v(target, index, data);
2766}
2767
2768inline void QOpenGLFunctions_4_5_Core::glGetFloati_v(GLenum target, GLuint index, GLfloat *data)
2769{
2770 d_4_1_Core->f.GetFloati_v(target, index, data);
2771}
2772
2773inline void QOpenGLFunctions_4_5_Core::glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f)
2774{
2775 d_4_1_Core->f.DepthRangeIndexed(index, n, f);
2776}
2777
2778inline void QOpenGLFunctions_4_5_Core::glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v)
2779{
2780 d_4_1_Core->f.DepthRangeArrayv(first, count, v);
2781}
2782
2783inline void QOpenGLFunctions_4_5_Core::glScissorIndexedv(GLuint index, const GLint *v)
2784{
2785 d_4_1_Core->f.ScissorIndexedv(index, v);
2786}
2787
2788inline void QOpenGLFunctions_4_5_Core::glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height)
2789{
2790 d_4_1_Core->f.ScissorIndexed(index, left, bottom, width, height);
2791}
2792
2793inline void QOpenGLFunctions_4_5_Core::glScissorArrayv(GLuint first, GLsizei count, const GLint *v)
2794{
2795 d_4_1_Core->f.ScissorArrayv(first, count, v);
2796}
2797
2798inline void QOpenGLFunctions_4_5_Core::glViewportIndexedfv(GLuint index, const GLfloat *v)
2799{
2800 d_4_1_Core->f.ViewportIndexedfv(index, v);
2801}
2802
2803inline void QOpenGLFunctions_4_5_Core::glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h)
2804{
2805 d_4_1_Core->f.ViewportIndexedf(index, x, y, w, h);
2806}
2807
2808inline void QOpenGLFunctions_4_5_Core::glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v)
2809{
2810 d_4_1_Core->f.ViewportArrayv(first, count, v);
2811}
2812
2813inline void QOpenGLFunctions_4_5_Core::glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params)
2814{
2815 d_4_1_Core->f.GetVertexAttribLdv(index, pname, params);
2816}
2817
2818inline void QOpenGLFunctions_4_5_Core::glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer)
2819{
2820 d_4_1_Core->f.VertexAttribLPointer(index, size, type, stride, pointer);
2821}
2822
2823inline void QOpenGLFunctions_4_5_Core::glVertexAttribL4dv(GLuint index, const GLdouble *v)
2824{
2825 d_4_1_Core->f.VertexAttribL4dv(index, v);
2826}
2827
2828inline void QOpenGLFunctions_4_5_Core::glVertexAttribL3dv(GLuint index, const GLdouble *v)
2829{
2830 d_4_1_Core->f.VertexAttribL3dv(index, v);
2831}
2832
2833inline void QOpenGLFunctions_4_5_Core::glVertexAttribL2dv(GLuint index, const GLdouble *v)
2834{
2835 d_4_1_Core->f.VertexAttribL2dv(index, v);
2836}
2837
2838inline void QOpenGLFunctions_4_5_Core::glVertexAttribL1dv(GLuint index, const GLdouble *v)
2839{
2840 d_4_1_Core->f.VertexAttribL1dv(index, v);
2841}
2842
2843inline void QOpenGLFunctions_4_5_Core::glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
2844{
2845 d_4_1_Core->f.VertexAttribL4d(index, x, y, z, w);
2846}
2847
2848inline void QOpenGLFunctions_4_5_Core::glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
2849{
2850 d_4_1_Core->f.VertexAttribL3d(index, x, y, z);
2851}
2852
2853inline void QOpenGLFunctions_4_5_Core::glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y)
2854{
2855 d_4_1_Core->f.VertexAttribL2d(index, x, y);
2856}
2857
2858inline void QOpenGLFunctions_4_5_Core::glVertexAttribL1d(GLuint index, GLdouble x)
2859{
2860 d_4_1_Core->f.VertexAttribL1d(index, x);
2861}
2862
2863inline void QOpenGLFunctions_4_5_Core::glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
2864{
2865 d_4_1_Core->f.GetProgramPipelineInfoLog(pipeline, bufSize, length, infoLog);
2866}
2867
2868inline void QOpenGLFunctions_4_5_Core::glValidateProgramPipeline(GLuint pipeline)
2869{
2870 d_4_1_Core->f.ValidateProgramPipeline(pipeline);
2871}
2872
2873inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2874{
2875 d_4_1_Core->f.ProgramUniformMatrix4x3dv(program, location, count, transpose, value);
2876}
2877
2878inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2879{
2880 d_4_1_Core->f.ProgramUniformMatrix3x4dv(program, location, count, transpose, value);
2881}
2882
2883inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2884{
2885 d_4_1_Core->f.ProgramUniformMatrix4x2dv(program, location, count, transpose, value);
2886}
2887
2888inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2889{
2890 d_4_1_Core->f.ProgramUniformMatrix2x4dv(program, location, count, transpose, value);
2891}
2892
2893inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2894{
2895 d_4_1_Core->f.ProgramUniformMatrix3x2dv(program, location, count, transpose, value);
2896}
2897
2898inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2899{
2900 d_4_1_Core->f.ProgramUniformMatrix2x3dv(program, location, count, transpose, value);
2901}
2902
2903inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2904{
2905 d_4_1_Core->f.ProgramUniformMatrix4x3fv(program, location, count, transpose, value);
2906}
2907
2908inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2909{
2910 d_4_1_Core->f.ProgramUniformMatrix3x4fv(program, location, count, transpose, value);
2911}
2912
2913inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2914{
2915 d_4_1_Core->f.ProgramUniformMatrix4x2fv(program, location, count, transpose, value);
2916}
2917
2918inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2919{
2920 d_4_1_Core->f.ProgramUniformMatrix2x4fv(program, location, count, transpose, value);
2921}
2922
2923inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2924{
2925 d_4_1_Core->f.ProgramUniformMatrix3x2fv(program, location, count, transpose, value);
2926}
2927
2928inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2929{
2930 d_4_1_Core->f.ProgramUniformMatrix2x3fv(program, location, count, transpose, value);
2931}
2932
2933inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2934{
2935 d_4_1_Core->f.ProgramUniformMatrix4dv(program, location, count, transpose, value);
2936}
2937
2938inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2939{
2940 d_4_1_Core->f.ProgramUniformMatrix3dv(program, location, count, transpose, value);
2941}
2942
2943inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2944{
2945 d_4_1_Core->f.ProgramUniformMatrix2dv(program, location, count, transpose, value);
2946}
2947
2948inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2949{
2950 d_4_1_Core->f.ProgramUniformMatrix4fv(program, location, count, transpose, value);
2951}
2952
2953inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2954{
2955 d_4_1_Core->f.ProgramUniformMatrix3fv(program, location, count, transpose, value);
2956}
2957
2958inline void QOpenGLFunctions_4_5_Core::glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2959{
2960 d_4_1_Core->f.ProgramUniformMatrix2fv(program, location, count, transpose, value);
2961}
2962
2963inline void QOpenGLFunctions_4_5_Core::glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
2964{
2965 d_4_1_Core->f.ProgramUniform4uiv(program, location, count, value);
2966}
2967
2968inline void QOpenGLFunctions_4_5_Core::glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
2969{
2970 d_4_1_Core->f.ProgramUniform4ui(program, location, v0, v1, v2, v3);
2971}
2972
2973inline void QOpenGLFunctions_4_5_Core::glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
2974{
2975 d_4_1_Core->f.ProgramUniform4dv(program, location, count, value);
2976}
2977
2978inline void QOpenGLFunctions_4_5_Core::glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3)
2979{
2980 d_4_1_Core->f.ProgramUniform4d(program, location, v0, v1, v2, v3);
2981}
2982
2983inline void QOpenGLFunctions_4_5_Core::glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
2984{
2985 d_4_1_Core->f.ProgramUniform4fv(program, location, count, value);
2986}
2987
2988inline void QOpenGLFunctions_4_5_Core::glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
2989{
2990 d_4_1_Core->f.ProgramUniform4f(program, location, v0, v1, v2, v3);
2991}
2992
2993inline void QOpenGLFunctions_4_5_Core::glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value)
2994{
2995 d_4_1_Core->f.ProgramUniform4iv(program, location, count, value);
2996}
2997
2998inline void QOpenGLFunctions_4_5_Core::glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
2999{
3000 d_4_1_Core->f.ProgramUniform4i(program, location, v0, v1, v2, v3);
3001}
3002
3003inline void QOpenGLFunctions_4_5_Core::glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
3004{
3005 d_4_1_Core->f.ProgramUniform3uiv(program, location, count, value);
3006}
3007
3008inline void QOpenGLFunctions_4_5_Core::glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2)
3009{
3010 d_4_1_Core->f.ProgramUniform3ui(program, location, v0, v1, v2);
3011}
3012
3013inline void QOpenGLFunctions_4_5_Core::glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
3014{
3015 d_4_1_Core->f.ProgramUniform3dv(program, location, count, value);
3016}
3017
3018inline void QOpenGLFunctions_4_5_Core::glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2)
3019{
3020 d_4_1_Core->f.ProgramUniform3d(program, location, v0, v1, v2);
3021}
3022
3023inline void QOpenGLFunctions_4_5_Core::glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
3024{
3025 d_4_1_Core->f.ProgramUniform3fv(program, location, count, value);
3026}
3027
3028inline void QOpenGLFunctions_4_5_Core::glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
3029{
3030 d_4_1_Core->f.ProgramUniform3f(program, location, v0, v1, v2);
3031}
3032
3033inline void QOpenGLFunctions_4_5_Core::glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value)
3034{
3035 d_4_1_Core->f.ProgramUniform3iv(program, location, count, value);
3036}
3037
3038inline void QOpenGLFunctions_4_5_Core::glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2)
3039{
3040 d_4_1_Core->f.ProgramUniform3i(program, location, v0, v1, v2);
3041}
3042
3043inline void QOpenGLFunctions_4_5_Core::glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
3044{
3045 d_4_1_Core->f.ProgramUniform2uiv(program, location, count, value);
3046}
3047
3048inline void QOpenGLFunctions_4_5_Core::glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1)
3049{
3050 d_4_1_Core->f.ProgramUniform2ui(program, location, v0, v1);
3051}
3052
3053inline void QOpenGLFunctions_4_5_Core::glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
3054{
3055 d_4_1_Core->f.ProgramUniform2dv(program, location, count, value);
3056}
3057
3058inline void QOpenGLFunctions_4_5_Core::glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1)
3059{
3060 d_4_1_Core->f.ProgramUniform2d(program, location, v0, v1);
3061}
3062
3063inline void QOpenGLFunctions_4_5_Core::glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
3064{
3065 d_4_1_Core->f.ProgramUniform2fv(program, location, count, value);
3066}
3067
3068inline void QOpenGLFunctions_4_5_Core::glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1)
3069{
3070 d_4_1_Core->f.ProgramUniform2f(program, location, v0, v1);
3071}
3072
3073inline void QOpenGLFunctions_4_5_Core::glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value)
3074{
3075 d_4_1_Core->f.ProgramUniform2iv(program, location, count, value);
3076}
3077
3078inline void QOpenGLFunctions_4_5_Core::glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1)
3079{
3080 d_4_1_Core->f.ProgramUniform2i(program, location, v0, v1);
3081}
3082
3083inline void QOpenGLFunctions_4_5_Core::glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
3084{
3085 d_4_1_Core->f.ProgramUniform1uiv(program, location, count, value);
3086}
3087
3088inline void QOpenGLFunctions_4_5_Core::glProgramUniform1ui(GLuint program, GLint location, GLuint v0)
3089{
3090 d_4_1_Core->f.ProgramUniform1ui(program, location, v0);
3091}
3092
3093inline void QOpenGLFunctions_4_5_Core::glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
3094{
3095 d_4_1_Core->f.ProgramUniform1dv(program, location, count, value);
3096}
3097
3098inline void QOpenGLFunctions_4_5_Core::glProgramUniform1d(GLuint program, GLint location, GLdouble v0)
3099{
3100 d_4_1_Core->f.ProgramUniform1d(program, location, v0);
3101}
3102
3103inline void QOpenGLFunctions_4_5_Core::glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
3104{
3105 d_4_1_Core->f.ProgramUniform1fv(program, location, count, value);
3106}
3107
3108inline void QOpenGLFunctions_4_5_Core::glProgramUniform1f(GLuint program, GLint location, GLfloat v0)
3109{
3110 d_4_1_Core->f.ProgramUniform1f(program, location, v0);
3111}
3112
3113inline void QOpenGLFunctions_4_5_Core::glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value)
3114{
3115 d_4_1_Core->f.ProgramUniform1iv(program, location, count, value);
3116}
3117
3118inline void QOpenGLFunctions_4_5_Core::glProgramUniform1i(GLuint program, GLint location, GLint v0)
3119{
3120 d_4_1_Core->f.ProgramUniform1i(program, location, v0);
3121}
3122
3123inline void QOpenGLFunctions_4_5_Core::glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params)
3124{
3125 d_4_1_Core->f.GetProgramPipelineiv(pipeline, pname, params);
3126}
3127
3128inline GLboolean QOpenGLFunctions_4_5_Core::glIsProgramPipeline(GLuint pipeline)
3129{
3130 return d_4_1_Core->f.IsProgramPipeline(pipeline);
3131}
3132
3133inline void QOpenGLFunctions_4_5_Core::glGenProgramPipelines(GLsizei n, GLuint *pipelines)
3134{
3135 d_4_1_Core->f.GenProgramPipelines(n, pipelines);
3136}
3137
3138inline void QOpenGLFunctions_4_5_Core::glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines)
3139{
3140 d_4_1_Core->f.DeleteProgramPipelines(n, pipelines);
3141}
3142
3143inline void QOpenGLFunctions_4_5_Core::glBindProgramPipeline(GLuint pipeline)
3144{
3145 d_4_1_Core->f.BindProgramPipeline(pipeline);
3146}
3147
3148inline GLuint QOpenGLFunctions_4_5_Core::glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar *const *strings)
3149{
3150 return d_4_1_Core->f.CreateShaderProgramv(type, count, strings);
3151}
3152
3153inline void QOpenGLFunctions_4_5_Core::glActiveShaderProgram(GLuint pipeline, GLuint program)
3154{
3155 d_4_1_Core->f.ActiveShaderProgram(pipeline, program);
3156}
3157
3158inline void QOpenGLFunctions_4_5_Core::glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program)
3159{
3160 d_4_1_Core->f.UseProgramStages(pipeline, stages, program);
3161}
3162
3163inline void QOpenGLFunctions_4_5_Core::glProgramParameteri(GLuint program, GLenum pname, GLint value)
3164{
3165 d_4_1_Core->f.ProgramParameteri(program, pname, value);
3166}
3167
3168inline void QOpenGLFunctions_4_5_Core::glProgramBinary(GLuint program, GLenum binaryFormat, const void *binary, GLsizei length)
3169{
3170 d_4_1_Core->f.ProgramBinary(program, binaryFormat, binary, length);
3171}
3172
3173inline void QOpenGLFunctions_4_5_Core::glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary)
3174{
3175 d_4_1_Core->f.GetProgramBinary(program, bufSize, length, binaryFormat, binary);
3176}
3177
3178inline void QOpenGLFunctions_4_5_Core::glClearDepthf(GLfloat dd)
3179{
3180 d_4_1_Core->f.ClearDepthf(dd);
3181}
3182
3183inline void QOpenGLFunctions_4_5_Core::glDepthRangef(GLfloat n, GLfloat f)
3184{
3185 d_4_1_Core->f.DepthRangef(n, f);
3186}
3187
3188inline void QOpenGLFunctions_4_5_Core::glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)
3189{
3190 d_4_1_Core->f.GetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
3191}
3192
3193inline void QOpenGLFunctions_4_5_Core::glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const void *binary, GLsizei length)
3194{
3195 d_4_1_Core->f.ShaderBinary(count, shaders, binaryformat, binary, length);
3196}
3197
3198inline void QOpenGLFunctions_4_5_Core::glReleaseShaderCompiler()
3199{
3200 d_4_1_Core->f.ReleaseShaderCompiler();
3201}
3202
3203
3204// OpenGL 4.2 core functions
3205inline void QOpenGLFunctions_4_5_Core::glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount)
3206{
3207 d_4_2_Core->f.DrawTransformFeedbackStreamInstanced(mode, id, stream, instancecount);
3208}
3209
3210inline void QOpenGLFunctions_4_5_Core::glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount)
3211{
3212 d_4_2_Core->f.DrawTransformFeedbackInstanced(mode, id, instancecount);
3213}
3214
3215inline void QOpenGLFunctions_4_5_Core::glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth)
3216{
3217 d_4_2_Core->f.TexStorage3D(target, levels, internalformat, width, height, depth);
3218}
3219
3220inline void QOpenGLFunctions_4_5_Core::glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)
3221{
3222 d_4_2_Core->f.TexStorage2D(target, levels, internalformat, width, height);
3223}
3224
3225inline void QOpenGLFunctions_4_5_Core::glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width)
3226{
3227 d_4_2_Core->f.TexStorage1D(target, levels, internalformat, width);
3228}
3229
3230inline void QOpenGLFunctions_4_5_Core::glMemoryBarrier(GLbitfield barriers)
3231{
3232 d_4_2_Core->f.MemoryBarrier(barriers);
3233}
3234
3235inline void QOpenGLFunctions_4_5_Core::glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format)
3236{
3237 d_4_2_Core->f.BindImageTexture(unit, texture, level, layered, layer, access, format);
3238}
3239
3240inline void QOpenGLFunctions_4_5_Core::glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params)
3241{
3242 d_4_2_Core->f.GetActiveAtomicCounterBufferiv(program, bufferIndex, pname, params);
3243}
3244
3245inline void QOpenGLFunctions_4_5_Core::glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params)
3246{
3247 d_4_2_Core->f.GetInternalformativ(target, internalformat, pname, bufSize, params);
3248}
3249
3250inline void QOpenGLFunctions_4_5_Core::glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance)
3251{
3252 d_4_2_Core->f.DrawElementsInstancedBaseVertexBaseInstance(mode, count, type, indices, instancecount, basevertex, baseinstance);
3253}
3254
3255inline void QOpenGLFunctions_4_5_Core::glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance)
3256{
3257 d_4_2_Core->f.DrawElementsInstancedBaseInstance(mode, count, type, indices, instancecount, baseinstance);
3258}
3259
3260inline void QOpenGLFunctions_4_5_Core::glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance)
3261{
3262 d_4_2_Core->f.DrawArraysInstancedBaseInstance(mode, first, count, instancecount, baseinstance);
3263}
3264
3265
3266// OpenGL 4.3 core functions
3267inline void QOpenGLFunctions_4_5_Core::glGetObjectPtrLabel(const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label)
3268{
3269 d_4_3_Core->f.GetObjectPtrLabel(ptr, bufSize, length, label);
3270}
3271
3272inline void QOpenGLFunctions_4_5_Core::glObjectPtrLabel(const void *ptr, GLsizei length, const GLchar *label)
3273{
3274 d_4_3_Core->f.ObjectPtrLabel(ptr, length, label);
3275}
3276
3277inline void QOpenGLFunctions_4_5_Core::glGetObjectLabel(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label)
3278{
3279 d_4_3_Core->f.GetObjectLabel(identifier, name, bufSize, length, label);
3280}
3281
3282inline void QOpenGLFunctions_4_5_Core::glObjectLabel(GLenum identifier, GLuint name, GLsizei length, const GLchar *label)
3283{
3284 d_4_3_Core->f.ObjectLabel(identifier, name, length, label);
3285}
3286
3287inline void QOpenGLFunctions_4_5_Core::glPopDebugGroup()
3288{
3289 d_4_3_Core->f.PopDebugGroup();
3290}
3291
3292inline void QOpenGLFunctions_4_5_Core::glPushDebugGroup(GLenum source, GLuint id, GLsizei length, const GLchar *message)
3293{
3294 d_4_3_Core->f.PushDebugGroup(source, id, length, message);
3295}
3296
3297inline GLuint QOpenGLFunctions_4_5_Core::glGetDebugMessageLog(GLuint count, GLsizei bufSize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog)
3298{
3299 return d_4_3_Core->f.GetDebugMessageLog(count, bufSize, sources, types, ids, severities, lengths, messageLog);
3300}
3301
3302inline void QOpenGLFunctions_4_5_Core::glDebugMessageCallback(GLDEBUGPROC callback, const void *userParam)
3303{
3304 d_4_3_Core->f.DebugMessageCallback(callback, userParam);
3305}
3306
3307inline void QOpenGLFunctions_4_5_Core::glDebugMessageInsert(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf)
3308{
3309 d_4_3_Core->f.DebugMessageInsert(source, type, id, severity, length, buf);
3310}
3311
3312inline void QOpenGLFunctions_4_5_Core::glDebugMessageControl(GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled)
3313{
3314 d_4_3_Core->f.DebugMessageControl(source, type, severity, count, ids, enabled);
3315}
3316
3317inline void QOpenGLFunctions_4_5_Core::glVertexBindingDivisor(GLuint bindingindex, GLuint divisor)
3318{
3319 d_4_3_Core->f.VertexBindingDivisor(bindingindex, divisor);
3320}
3321
3322inline void QOpenGLFunctions_4_5_Core::glVertexAttribBinding(GLuint attribindex, GLuint bindingindex)
3323{
3324 d_4_3_Core->f.VertexAttribBinding(attribindex, bindingindex);
3325}
3326
3327inline void QOpenGLFunctions_4_5_Core::glVertexAttribLFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)
3328{
3329 d_4_3_Core->f.VertexAttribLFormat(attribindex, size, type, relativeoffset);
3330}
3331
3332inline void QOpenGLFunctions_4_5_Core::glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)
3333{
3334 d_4_3_Core->f.VertexAttribIFormat(attribindex, size, type, relativeoffset);
3335}
3336
3337inline void QOpenGLFunctions_4_5_Core::glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset)
3338{
3339 d_4_3_Core->f.VertexAttribFormat(attribindex, size, type, normalized, relativeoffset);
3340}
3341
3342inline void QOpenGLFunctions_4_5_Core::glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride)
3343{
3344 d_4_3_Core->f.BindVertexBuffer(bindingindex, buffer, offset, stride);
3345}
3346
3347inline void QOpenGLFunctions_4_5_Core::glTextureView(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers)
3348{
3349 d_4_3_Core->f.TextureView(texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers);
3350}
3351
3352inline void QOpenGLFunctions_4_5_Core::glTexStorage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
3353{
3354 d_4_3_Core->f.TexStorage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
3355}
3356
3357inline void QOpenGLFunctions_4_5_Core::glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
3358{
3359 d_4_3_Core->f.TexStorage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
3360}
3361
3362inline void QOpenGLFunctions_4_5_Core::glTexBufferRange(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size)
3363{
3364 d_4_3_Core->f.TexBufferRange(target, internalformat, buffer, offset, size);
3365}
3366
3367inline void QOpenGLFunctions_4_5_Core::glShaderStorageBlockBinding(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding)
3368{
3369 d_4_3_Core->f.ShaderStorageBlockBinding(program, storageBlockIndex, storageBlockBinding);
3370}
3371
3372inline GLint QOpenGLFunctions_4_5_Core::glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface, const GLchar *name)
3373{
3374 return d_4_3_Core->f.GetProgramResourceLocationIndex(program, programInterface, name);
3375}
3376
3377inline GLint QOpenGLFunctions_4_5_Core::glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar *name)
3378{
3379 return d_4_3_Core->f.GetProgramResourceLocation(program, programInterface, name);
3380}
3381
3382inline void QOpenGLFunctions_4_5_Core::glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params)
3383{
3384 d_4_3_Core->f.GetProgramResourceiv(program, programInterface, index, propCount, props, bufSize, length, params);
3385}
3386
3387inline void QOpenGLFunctions_4_5_Core::glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name)
3388{
3389 d_4_3_Core->f.GetProgramResourceName(program, programInterface, index, bufSize, length, name);
3390}
3391
3392inline GLuint QOpenGLFunctions_4_5_Core::glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name)
3393{
3394 return d_4_3_Core->f.GetProgramResourceIndex(program, programInterface, name);
3395}
3396
3397inline void QOpenGLFunctions_4_5_Core::glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint *params)
3398{
3399 d_4_3_Core->f.GetProgramInterfaceiv(program, programInterface, pname, params);
3400}
3401
3402inline void QOpenGLFunctions_4_5_Core::glMultiDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride)
3403{
3404 d_4_3_Core->f.MultiDrawElementsIndirect(mode, type, indirect, drawcount, stride);
3405}
3406
3407inline void QOpenGLFunctions_4_5_Core::glMultiDrawArraysIndirect(GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride)
3408{
3409 d_4_3_Core->f.MultiDrawArraysIndirect(mode, indirect, drawcount, stride);
3410}
3411
3412inline void QOpenGLFunctions_4_5_Core::glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height)
3413{
3414 d_4_3_Core->f.InvalidateSubFramebuffer(target, numAttachments, attachments, x, y, width, height);
3415}
3416
3417inline void QOpenGLFunctions_4_5_Core::glInvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments)
3418{
3419 d_4_3_Core->f.InvalidateFramebuffer(target, numAttachments, attachments);
3420}
3421
3422inline void QOpenGLFunctions_4_5_Core::glInvalidateBufferData(GLuint buffer)
3423{
3424 d_4_3_Core->f.InvalidateBufferData(buffer);
3425}
3426
3427inline void QOpenGLFunctions_4_5_Core::glInvalidateBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr length)
3428{
3429 d_4_3_Core->f.InvalidateBufferSubData(buffer, offset, length);
3430}
3431
3432inline void QOpenGLFunctions_4_5_Core::glInvalidateTexImage(GLuint texture, GLint level)
3433{
3434 d_4_3_Core->f.InvalidateTexImage(texture, level);
3435}
3436
3437inline void QOpenGLFunctions_4_5_Core::glInvalidateTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth)
3438{
3439 d_4_3_Core->f.InvalidateTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth);
3440}
3441
3442inline void QOpenGLFunctions_4_5_Core::glGetInternalformati64v(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params)
3443{
3444 d_4_3_Core->f.GetInternalformati64v(target, internalformat, pname, bufSize, params);
3445}
3446
3447inline void QOpenGLFunctions_4_5_Core::glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params)
3448{
3449 d_4_3_Core->f.GetFramebufferParameteriv(target, pname, params);
3450}
3451
3452inline void QOpenGLFunctions_4_5_Core::glFramebufferParameteri(GLenum target, GLenum pname, GLint param)
3453{
3454 d_4_3_Core->f.FramebufferParameteri(target, pname, param);
3455}
3456
3457inline void QOpenGLFunctions_4_5_Core::glCopyImageSubData(GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth)
3458{
3459 d_4_3_Core->f.CopyImageSubData(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth);
3460}
3461
3462inline void QOpenGLFunctions_4_5_Core::glDispatchComputeIndirect(GLintptr indirect)
3463{
3464 d_4_3_Core->f.DispatchComputeIndirect(indirect);
3465}
3466
3467inline void QOpenGLFunctions_4_5_Core::glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z)
3468{
3469 d_4_3_Core->f.DispatchCompute(num_groups_x, num_groups_y, num_groups_z);
3470}
3471
3472inline void QOpenGLFunctions_4_5_Core::glClearBufferSubData(GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data)
3473{
3474 d_4_3_Core->f.ClearBufferSubData(target, internalformat, offset, size, format, type, data);
3475}
3476
3477inline void QOpenGLFunctions_4_5_Core::glClearBufferData(GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data)
3478{
3479 d_4_3_Core->f.ClearBufferData(target, internalformat, format, type, data);
3480}
3481
3482
3483// OpenGL 4.4 core functions
3484inline void QOpenGLFunctions_4_5_Core::glBindVertexBuffers(GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizei *strides)
3485{
3486 d_4_4_Core->f.BindVertexBuffers(first, count, buffers, offsets, strides);
3487}
3488
3489inline void QOpenGLFunctions_4_5_Core::glBindImageTextures(GLuint first, GLsizei count, const GLuint *textures)
3490{
3491 d_4_4_Core->f.BindImageTextures(first, count, textures);
3492}
3493
3494inline void QOpenGLFunctions_4_5_Core::glBindSamplers(GLuint first, GLsizei count, const GLuint *samplers)
3495{
3496 d_4_4_Core->f.BindSamplers(first, count, samplers);
3497}
3498
3499inline void QOpenGLFunctions_4_5_Core::glBindTextures(GLuint first, GLsizei count, const GLuint *textures)
3500{
3501 d_4_4_Core->f.BindTextures(first, count, textures);
3502}
3503
3504inline void QOpenGLFunctions_4_5_Core::glBindBuffersRange(GLenum target, GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizeiptr *sizes)
3505{
3506 d_4_4_Core->f.BindBuffersRange(target, first, count, buffers, offsets, sizes);
3507}
3508
3509inline void QOpenGLFunctions_4_5_Core::glBindBuffersBase(GLenum target, GLuint first, GLsizei count, const GLuint *buffers)
3510{
3511 d_4_4_Core->f.BindBuffersBase(target, first, count, buffers);
3512}
3513
3514inline void QOpenGLFunctions_4_5_Core::glClearTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *data)
3515{
3516 d_4_4_Core->f.ClearTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, data);
3517}
3518
3519inline void QOpenGLFunctions_4_5_Core::glClearTexImage(GLuint texture, GLint level, GLenum format, GLenum type, const void *data)
3520{
3521 d_4_4_Core->f.ClearTexImage(texture, level, format, type, data);
3522}
3523
3524inline void QOpenGLFunctions_4_5_Core::glBufferStorage(GLenum target, GLsizeiptr size, const void *data, GLbitfield flags)
3525{
3526 d_4_4_Core->f.BufferStorage(target, size, data, flags);
3527}
3528
3529
3530// OpenGL 4.5 core functions
3531inline void QOpenGLFunctions_4_5_Core::glTextureBarrier()
3532{
3533 d_4_5_Core->f.TextureBarrier();
3534}
3535
3536inline void QOpenGLFunctions_4_5_Core::glReadnPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data)
3537{
3538 d_4_5_Core->f.ReadnPixels(x, y, width, height, format, type, bufSize, data);
3539}
3540
3541inline void QOpenGLFunctions_4_5_Core::glGetnUniformuiv(GLuint program, GLint location, GLsizei bufSize, GLuint *params)
3542{
3543 d_4_5_Core->f.GetnUniformuiv(program, location, bufSize, params);
3544}
3545
3546inline void QOpenGLFunctions_4_5_Core::glGetnUniformiv(GLuint program, GLint location, GLsizei bufSize, GLint *params)
3547{
3548 d_4_5_Core->f.GetnUniformiv(program, location, bufSize, params);
3549}
3550
3551inline void QOpenGLFunctions_4_5_Core::glGetnUniformfv(GLuint program, GLint location, GLsizei bufSize, GLfloat *params)
3552{
3553 d_4_5_Core->f.GetnUniformfv(program, location, bufSize, params);
3554}
3555
3556inline void QOpenGLFunctions_4_5_Core::glGetnUniformdv(GLuint program, GLint location, GLsizei bufSize, GLdouble *params)
3557{
3558 d_4_5_Core->f.GetnUniformdv(program, location, bufSize, params);
3559}
3560
3561inline void QOpenGLFunctions_4_5_Core::glGetnTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels)
3562{
3563 d_4_5_Core->f.GetnTexImage(target, level, format, type, bufSize, pixels);
3564}
3565
3566inline void QOpenGLFunctions_4_5_Core::glGetnCompressedTexImage(GLenum target, GLint lod, GLsizei bufSize, void *pixels)
3567{
3568 d_4_5_Core->f.GetnCompressedTexImage(target, lod, bufSize, pixels);
3569}
3570
3571inline GLenum QOpenGLFunctions_4_5_Core::glGetGraphicsResetStatus()
3572{
3573 return d_4_5_Core->f.GetGraphicsResetStatus();
3574}
3575
3576inline void QOpenGLFunctions_4_5_Core::glGetCompressedTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei bufSize, void *pixels)
3577{
3578 d_4_5_Core->f.GetCompressedTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, bufSize, pixels);
3579}
3580
3581inline void QOpenGLFunctions_4_5_Core::glGetTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLsizei bufSize, void *pixels)
3582{
3583 d_4_5_Core->f.GetTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, bufSize, pixels);
3584}
3585
3586inline void QOpenGLFunctions_4_5_Core::glMemoryBarrierByRegion(GLbitfield barriers)
3587{
3588 d_4_5_Core->f.MemoryBarrierByRegion(barriers);
3589}
3590
3591inline void QOpenGLFunctions_4_5_Core::glCreateQueries(GLenum target, GLsizei n, GLuint *ids)
3592{
3593 d_4_5_Core->f.CreateQueries(target, n, ids);
3594}
3595
3596inline void QOpenGLFunctions_4_5_Core::glCreateProgramPipelines(GLsizei n, GLuint *pipelines)
3597{
3598 d_4_5_Core->f.CreateProgramPipelines(n, pipelines);
3599}
3600
3601inline void QOpenGLFunctions_4_5_Core::glCreateSamplers(GLsizei n, GLuint *samplers)
3602{
3603 d_4_5_Core->f.CreateSamplers(n, samplers);
3604}
3605
3606inline void QOpenGLFunctions_4_5_Core::glGetVertexArrayIndexed64iv(GLuint vaobj, GLuint index, GLenum pname, GLint64 *param)
3607{
3608 d_4_5_Core->f.GetVertexArrayIndexed64iv(vaobj, index, pname, param);
3609}
3610
3611inline void QOpenGLFunctions_4_5_Core::glGetVertexArrayIndexediv(GLuint vaobj, GLuint index, GLenum pname, GLint *param)
3612{
3613 d_4_5_Core->f.GetVertexArrayIndexediv(vaobj, index, pname, param);
3614}
3615
3616inline void QOpenGLFunctions_4_5_Core::glGetVertexArrayiv(GLuint vaobj, GLenum pname, GLint *param)
3617{
3618 d_4_5_Core->f.GetVertexArrayiv(vaobj, pname, param);
3619}
3620
3621inline void QOpenGLFunctions_4_5_Core::glVertexArrayBindingDivisor(GLuint vaobj, GLuint bindingindex, GLuint divisor)
3622{
3623 d_4_5_Core->f.VertexArrayBindingDivisor(vaobj, bindingindex, divisor);
3624}
3625
3626inline void QOpenGLFunctions_4_5_Core::glVertexArrayAttribLFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)
3627{
3628 d_4_5_Core->f.VertexArrayAttribLFormat(vaobj, attribindex, size, type, relativeoffset);
3629}
3630
3631inline void QOpenGLFunctions_4_5_Core::glVertexArrayAttribIFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)
3632{
3633 d_4_5_Core->f.VertexArrayAttribIFormat(vaobj, attribindex, size, type, relativeoffset);
3634}
3635
3636inline void QOpenGLFunctions_4_5_Core::glVertexArrayAttribFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset)
3637{
3638 d_4_5_Core->f.VertexArrayAttribFormat(vaobj, attribindex, size, type, normalized, relativeoffset);
3639}
3640
3641inline void QOpenGLFunctions_4_5_Core::glVertexArrayAttribBinding(GLuint vaobj, GLuint attribindex, GLuint bindingindex)
3642{
3643 d_4_5_Core->f.VertexArrayAttribBinding(vaobj, attribindex, bindingindex);
3644}
3645
3646inline void QOpenGLFunctions_4_5_Core::glVertexArrayVertexBuffers(GLuint vaobj, GLuint first, GLsizei count, const GLuint *buffers, const GLintptr *offsets, const GLsizei *strides)
3647{
3648 d_4_5_Core->f.VertexArrayVertexBuffers(vaobj, first, count, buffers, offsets, strides);
3649}
3650
3651inline void QOpenGLFunctions_4_5_Core::glVertexArrayVertexBuffer(GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride)
3652{
3653 d_4_5_Core->f.VertexArrayVertexBuffer(vaobj, bindingindex, buffer, offset, stride);
3654}
3655
3656inline void QOpenGLFunctions_4_5_Core::glVertexArrayElementBuffer(GLuint vaobj, GLuint buffer)
3657{
3658 d_4_5_Core->f.VertexArrayElementBuffer(vaobj, buffer);
3659}
3660
3661inline void QOpenGLFunctions_4_5_Core::glEnableVertexArrayAttrib(GLuint vaobj, GLuint index)
3662{
3663 d_4_5_Core->f.EnableVertexArrayAttrib(vaobj, index);
3664}
3665
3666inline void QOpenGLFunctions_4_5_Core::glDisableVertexArrayAttrib(GLuint vaobj, GLuint index)
3667{
3668 d_4_5_Core->f.DisableVertexArrayAttrib(vaobj, index);
3669}
3670
3671inline void QOpenGLFunctions_4_5_Core::glCreateVertexArrays(GLsizei n, GLuint *arrays)
3672{
3673 d_4_5_Core->f.CreateVertexArrays(n, arrays);
3674}
3675
3676inline void QOpenGLFunctions_4_5_Core::glGetTextureParameteriv(GLuint texture, GLenum pname, GLint *params)
3677{
3678 d_4_5_Core->f.GetTextureParameteriv(texture, pname, params);
3679}
3680
3681inline void QOpenGLFunctions_4_5_Core::glGetTextureParameterIuiv(GLuint texture, GLenum pname, GLuint *params)
3682{
3683 d_4_5_Core->f.GetTextureParameterIuiv(texture, pname, params);
3684}
3685
3686inline void QOpenGLFunctions_4_5_Core::glGetTextureParameterIiv(GLuint texture, GLenum pname, GLint *params)
3687{
3688 d_4_5_Core->f.GetTextureParameterIiv(texture, pname, params);
3689}
3690
3691inline void QOpenGLFunctions_4_5_Core::glGetTextureParameterfv(GLuint texture, GLenum pname, GLfloat *params)
3692{
3693 d_4_5_Core->f.GetTextureParameterfv(texture, pname, params);
3694}
3695
3696inline void QOpenGLFunctions_4_5_Core::glGetTextureLevelParameteriv(GLuint texture, GLint level, GLenum pname, GLint *params)
3697{
3698 d_4_5_Core->f.GetTextureLevelParameteriv(texture, level, pname, params);
3699}
3700
3701inline void QOpenGLFunctions_4_5_Core::glGetTextureLevelParameterfv(GLuint texture, GLint level, GLenum pname, GLfloat *params)
3702{
3703 d_4_5_Core->f.GetTextureLevelParameterfv(texture, level, pname, params);
3704}
3705
3706inline void QOpenGLFunctions_4_5_Core::glGetCompressedTextureImage(GLuint texture, GLint level, GLsizei bufSize, void *pixels)
3707{
3708 d_4_5_Core->f.GetCompressedTextureImage(texture, level, bufSize, pixels);
3709}
3710
3711inline void QOpenGLFunctions_4_5_Core::glGetTextureImage(GLuint texture, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels)
3712{
3713 d_4_5_Core->f.GetTextureImage(texture, level, format, type, bufSize, pixels);
3714}
3715
3716inline void QOpenGLFunctions_4_5_Core::glBindTextureUnit(GLuint unit, GLuint texture)
3717{
3718 d_4_5_Core->f.BindTextureUnit(unit, texture);
3719}
3720
3721inline void QOpenGLFunctions_4_5_Core::glGenerateTextureMipmap(GLuint texture)
3722{
3723 d_4_5_Core->f.GenerateTextureMipmap(texture);
3724}
3725
3726inline void QOpenGLFunctions_4_5_Core::glTextureParameteriv(GLuint texture, GLenum pname, const GLint *param)
3727{
3728 d_4_5_Core->f.TextureParameteriv(texture, pname, param);
3729}
3730
3731inline void QOpenGLFunctions_4_5_Core::glTextureParameterIuiv(GLuint texture, GLenum pname, const GLuint *params)
3732{
3733 d_4_5_Core->f.TextureParameterIuiv(texture, pname, params);
3734}
3735
3736inline void QOpenGLFunctions_4_5_Core::glTextureParameterIiv(GLuint texture, GLenum pname, const GLint *params)
3737{
3738 d_4_5_Core->f.TextureParameterIiv(texture, pname, params);
3739}
3740
3741inline void QOpenGLFunctions_4_5_Core::glTextureParameteri(GLuint texture, GLenum pname, GLint param)
3742{
3743 d_4_5_Core->f.TextureParameteri(texture, pname, param);
3744}
3745
3746inline void QOpenGLFunctions_4_5_Core::glTextureParameterfv(GLuint texture, GLenum pname, const GLfloat *param)
3747{
3748 d_4_5_Core->f.TextureParameterfv(texture, pname, param);
3749}
3750
3751inline void QOpenGLFunctions_4_5_Core::glTextureParameterf(GLuint texture, GLenum pname, GLfloat param)
3752{
3753 d_4_5_Core->f.TextureParameterf(texture, pname, param);
3754}
3755
3756inline void QOpenGLFunctions_4_5_Core::glCopyTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
3757{
3758 d_4_5_Core->f.CopyTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, x, y, width, height);
3759}
3760
3761inline void QOpenGLFunctions_4_5_Core::glCopyTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
3762{
3763 d_4_5_Core->f.CopyTextureSubImage2D(texture, level, xoffset, yoffset, x, y, width, height);
3764}
3765
3766inline void QOpenGLFunctions_4_5_Core::glCopyTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
3767{
3768 d_4_5_Core->f.CopyTextureSubImage1D(texture, level, xoffset, x, y, width);
3769}
3770
3771inline void QOpenGLFunctions_4_5_Core::glCompressedTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data)
3772{
3773 d_4_5_Core->f.CompressedTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
3774}
3775
3776inline void QOpenGLFunctions_4_5_Core::glCompressedTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data)
3777{
3778 d_4_5_Core->f.CompressedTextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, imageSize, data);
3779}
3780
3781inline void QOpenGLFunctions_4_5_Core::glCompressedTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data)
3782{
3783 d_4_5_Core->f.CompressedTextureSubImage1D(texture, level, xoffset, width, format, imageSize, data);
3784}
3785
3786inline void QOpenGLFunctions_4_5_Core::glTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels)
3787{
3788 d_4_5_Core->f.TextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
3789}
3790
3791inline void QOpenGLFunctions_4_5_Core::glTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels)
3792{
3793 d_4_5_Core->f.TextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, type, pixels);
3794}
3795
3796inline void QOpenGLFunctions_4_5_Core::glTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels)
3797{
3798 d_4_5_Core->f.TextureSubImage1D(texture, level, xoffset, width, format, type, pixels);
3799}
3800
3801inline void QOpenGLFunctions_4_5_Core::glTextureStorage3DMultisample(GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
3802{
3803 d_4_5_Core->f.TextureStorage3DMultisample(texture, samples, internalformat, width, height, depth, fixedsamplelocations);
3804}
3805
3806inline void QOpenGLFunctions_4_5_Core::glTextureStorage2DMultisample(GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
3807{
3808 d_4_5_Core->f.TextureStorage2DMultisample(texture, samples, internalformat, width, height, fixedsamplelocations);
3809}
3810
3811inline void QOpenGLFunctions_4_5_Core::glTextureStorage3D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth)
3812{
3813 d_4_5_Core->f.TextureStorage3D(texture, levels, internalformat, width, height, depth);
3814}
3815
3816inline void QOpenGLFunctions_4_5_Core::glTextureStorage2D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)
3817{
3818 d_4_5_Core->f.TextureStorage2D(texture, levels, internalformat, width, height);
3819}
3820
3821inline void QOpenGLFunctions_4_5_Core::glTextureStorage1D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width)
3822{
3823 d_4_5_Core->f.TextureStorage1D(texture, levels, internalformat, width);
3824}
3825
3826inline void QOpenGLFunctions_4_5_Core::glTextureBufferRange(GLuint texture, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizei size)
3827{
3828 d_4_5_Core->f.TextureBufferRange(texture, internalformat, buffer, offset, size);
3829}
3830
3831inline void QOpenGLFunctions_4_5_Core::glTextureBuffer(GLuint texture, GLenum internalformat, GLuint buffer)
3832{
3833 d_4_5_Core->f.TextureBuffer(texture, internalformat, buffer);
3834}
3835
3836inline void QOpenGLFunctions_4_5_Core::glCreateTextures(GLenum target, GLsizei n, GLuint *textures)
3837{
3838 d_4_5_Core->f.CreateTextures(target, n, textures);
3839}
3840
3841inline void QOpenGLFunctions_4_5_Core::glGetNamedRenderbufferParameteriv(GLuint renderbuffer, GLenum pname, GLint *params)
3842{
3843 d_4_5_Core->f.GetNamedRenderbufferParameteriv(renderbuffer, pname, params);
3844}
3845
3846inline void QOpenGLFunctions_4_5_Core::glNamedRenderbufferStorageMultisample(GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
3847{
3848 d_4_5_Core->f.NamedRenderbufferStorageMultisample(renderbuffer, samples, internalformat, width, height);
3849}
3850
3851inline void QOpenGLFunctions_4_5_Core::glNamedRenderbufferStorage(GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height)
3852{
3853 d_4_5_Core->f.NamedRenderbufferStorage(renderbuffer, internalformat, width, height);
3854}
3855
3856inline void QOpenGLFunctions_4_5_Core::glCreateRenderbuffers(GLsizei n, GLuint *renderbuffers)
3857{
3858 d_4_5_Core->f.CreateRenderbuffers(n, renderbuffers);
3859}
3860
3861inline void QOpenGLFunctions_4_5_Core::glGetNamedFramebufferAttachmentParameteriv(GLuint framebuffer, GLenum attachment, GLenum pname, GLint *params)
3862{
3863 d_4_5_Core->f.GetNamedFramebufferAttachmentParameteriv(framebuffer, attachment, pname, params);
3864}
3865
3866inline void QOpenGLFunctions_4_5_Core::glGetNamedFramebufferParameteriv(GLuint framebuffer, GLenum pname, GLint *param)
3867{
3868 d_4_5_Core->f.GetNamedFramebufferParameteriv(framebuffer, pname, param);
3869}
3870
3871inline GLenum QOpenGLFunctions_4_5_Core::glCheckNamedFramebufferStatus(GLuint framebuffer, GLenum target)
3872{
3873 return d_4_5_Core->f.CheckNamedFramebufferStatus(framebuffer, target);
3874}
3875
3876inline void QOpenGLFunctions_4_5_Core::glBlitNamedFramebuffer(GLuint readFramebuffer, GLuint drawFramebuffer, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
3877{
3878 d_4_5_Core->f.BlitNamedFramebuffer(readFramebuffer, drawFramebuffer, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
3879}
3880
3881inline void QOpenGLFunctions_4_5_Core::glClearNamedFramebufferfi(GLuint framebuffer, GLenum buffer, GLfloat depth, GLint stencil)
3882{
3883 d_4_5_Core->f.ClearNamedFramebufferfi(framebuffer, buffer, depth, stencil);
3884}
3885
3886inline void QOpenGLFunctions_4_5_Core::glClearNamedFramebufferfv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLfloat *value)
3887{
3888 d_4_5_Core->f.ClearNamedFramebufferfv(framebuffer, buffer, drawbuffer, value);
3889}
3890
3891inline void QOpenGLFunctions_4_5_Core::glClearNamedFramebufferuiv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLuint *value)
3892{
3893 d_4_5_Core->f.ClearNamedFramebufferuiv(framebuffer, buffer, drawbuffer, value);
3894}
3895
3896inline void QOpenGLFunctions_4_5_Core::glClearNamedFramebufferiv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLint *value)
3897{
3898 d_4_5_Core->f.ClearNamedFramebufferiv(framebuffer, buffer, drawbuffer, value);
3899}
3900
3901inline void QOpenGLFunctions_4_5_Core::glInvalidateNamedFramebufferSubData(GLuint framebuffer, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height)
3902{
3903 d_4_5_Core->f.InvalidateNamedFramebufferSubData(framebuffer, numAttachments, attachments, x, y, width, height);
3904}
3905
3906inline void QOpenGLFunctions_4_5_Core::glInvalidateNamedFramebufferData(GLuint framebuffer, GLsizei numAttachments, const GLenum *attachments)
3907{
3908 d_4_5_Core->f.InvalidateNamedFramebufferData(framebuffer, numAttachments, attachments);
3909}
3910
3911inline void QOpenGLFunctions_4_5_Core::glNamedFramebufferReadBuffer(GLuint framebuffer, GLenum src)
3912{
3913 d_4_5_Core->f.NamedFramebufferReadBuffer(framebuffer, src);
3914}
3915
3916inline void QOpenGLFunctions_4_5_Core::glNamedFramebufferDrawBuffers(GLuint framebuffer, GLsizei n, const GLenum *bufs)
3917{
3918 d_4_5_Core->f.NamedFramebufferDrawBuffers(framebuffer, n, bufs);
3919}
3920
3921inline void QOpenGLFunctions_4_5_Core::glNamedFramebufferDrawBuffer(GLuint framebuffer, GLenum buf)
3922{
3923 d_4_5_Core->f.NamedFramebufferDrawBuffer(framebuffer, buf);
3924}
3925
3926inline void QOpenGLFunctions_4_5_Core::glNamedFramebufferTextureLayer(GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer)
3927{
3928 d_4_5_Core->f.NamedFramebufferTextureLayer(framebuffer, attachment, texture, level, layer);
3929}
3930
3931inline void QOpenGLFunctions_4_5_Core::glNamedFramebufferTexture(GLuint framebuffer, GLenum attachment, GLuint texture, GLint level)
3932{
3933 d_4_5_Core->f.NamedFramebufferTexture(framebuffer, attachment, texture, level);
3934}
3935
3936inline void QOpenGLFunctions_4_5_Core::glNamedFramebufferParameteri(GLuint framebuffer, GLenum pname, GLint param)
3937{
3938 d_4_5_Core->f.NamedFramebufferParameteri(framebuffer, pname, param);
3939}
3940
3941inline void QOpenGLFunctions_4_5_Core::glNamedFramebufferRenderbuffer(GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
3942{
3943 d_4_5_Core->f.NamedFramebufferRenderbuffer(framebuffer, attachment, renderbuffertarget, renderbuffer);
3944}
3945
3946inline void QOpenGLFunctions_4_5_Core::glCreateFramebuffers(GLsizei n, GLuint *framebuffers)
3947{
3948 d_4_5_Core->f.CreateFramebuffers(n, framebuffers);
3949}
3950
3951inline void QOpenGLFunctions_4_5_Core::glGetNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizei size, void *data)
3952{
3953 d_4_5_Core->f.GetNamedBufferSubData(buffer, offset, size, data);
3954}
3955
3956inline void QOpenGLFunctions_4_5_Core::glGetNamedBufferPointerv(GLuint buffer, GLenum pname, void * *params)
3957{
3958 d_4_5_Core->f.GetNamedBufferPointerv(buffer, pname, params);
3959}
3960
3961inline void QOpenGLFunctions_4_5_Core::glGetNamedBufferParameteri64v(GLuint buffer, GLenum pname, GLint64 *params)
3962{
3963 d_4_5_Core->f.GetNamedBufferParameteri64v(buffer, pname, params);
3964}
3965
3966inline void QOpenGLFunctions_4_5_Core::glGetNamedBufferParameteriv(GLuint buffer, GLenum pname, GLint *params)
3967{
3968 d_4_5_Core->f.GetNamedBufferParameteriv(buffer, pname, params);
3969}
3970
3971inline void QOpenGLFunctions_4_5_Core::glFlushMappedNamedBufferRange(GLuint buffer, GLintptr offset, GLsizei length)
3972{
3973 d_4_5_Core->f.FlushMappedNamedBufferRange(buffer, offset, length);
3974}
3975
3976inline GLboolean QOpenGLFunctions_4_5_Core::glUnmapNamedBuffer(GLuint buffer)
3977{
3978 return d_4_5_Core->f.UnmapNamedBuffer(buffer);
3979}
3980
3981inline void * QOpenGLFunctions_4_5_Core::glMapNamedBufferRange(GLuint buffer, GLintptr offset, GLsizei length, GLbitfield access)
3982{
3983 return d_4_5_Core->f.MapNamedBufferRange(buffer, offset, length, access);
3984}
3985
3986inline void * QOpenGLFunctions_4_5_Core::glMapNamedBuffer(GLuint buffer, GLenum access)
3987{
3988 return d_4_5_Core->f.MapNamedBuffer(buffer, access);
3989}
3990
3991inline void QOpenGLFunctions_4_5_Core::glClearNamedBufferSubData(GLuint buffer, GLenum internalformat, GLintptr offset, GLsizei size, GLenum format, GLenum type, const void *data)
3992{
3993 d_4_5_Core->f.ClearNamedBufferSubData(buffer, internalformat, offset, size, format, type, data);
3994}
3995
3996inline void QOpenGLFunctions_4_5_Core::glClearNamedBufferData(GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void *data)
3997{
3998 d_4_5_Core->f.ClearNamedBufferData(buffer, internalformat, format, type, data);
3999}
4000
4001inline void QOpenGLFunctions_4_5_Core::glCopyNamedBufferSubData(GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizei size)
4002{
4003 d_4_5_Core->f.CopyNamedBufferSubData(readBuffer, writeBuffer, readOffset, writeOffset, size);
4004}
4005
4006inline void QOpenGLFunctions_4_5_Core::glNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizei size, const void *data)
4007{
4008 d_4_5_Core->f.NamedBufferSubData(buffer, offset, size, data);
4009}
4010
4011inline void QOpenGLFunctions_4_5_Core::glNamedBufferData(GLuint buffer, GLsizei size, const void *data, GLenum usage)
4012{
4013 d_4_5_Core->f.NamedBufferData(buffer, size, data, usage);
4014}
4015
4016inline void QOpenGLFunctions_4_5_Core::glNamedBufferStorage(GLuint buffer, GLsizei size, const void *data, GLbitfield flags)
4017{
4018 d_4_5_Core->f.NamedBufferStorage(buffer, size, data, flags);
4019}
4020
4021inline void QOpenGLFunctions_4_5_Core::glCreateBuffers(GLsizei n, GLuint *buffers)
4022{
4023 d_4_5_Core->f.CreateBuffers(n, buffers);
4024}
4025
4026inline void QOpenGLFunctions_4_5_Core::glGetTransformFeedbacki64_v(GLuint xfb, GLenum pname, GLuint index, GLint64 *param)
4027{
4028 d_4_5_Core->f.GetTransformFeedbacki64_v(xfb, pname, index, param);
4029}
4030
4031inline void QOpenGLFunctions_4_5_Core::glGetTransformFeedbacki_v(GLuint xfb, GLenum pname, GLuint index, GLint *param)
4032{
4033 d_4_5_Core->f.GetTransformFeedbacki_v(xfb, pname, index, param);
4034}
4035
4036inline void QOpenGLFunctions_4_5_Core::glGetTransformFeedbackiv(GLuint xfb, GLenum pname, GLint *param)
4037{
4038 d_4_5_Core->f.GetTransformFeedbackiv(xfb, pname, param);
4039}
4040
4041inline void QOpenGLFunctions_4_5_Core::glTransformFeedbackBufferRange(GLuint xfb, GLuint index, GLuint buffer, GLintptr offset, GLsizei size)
4042{
4043 d_4_5_Core->f.TransformFeedbackBufferRange(xfb, index, buffer, offset, size);
4044}
4045
4046inline void QOpenGLFunctions_4_5_Core::glTransformFeedbackBufferBase(GLuint xfb, GLuint index, GLuint buffer)
4047{
4048 d_4_5_Core->f.TransformFeedbackBufferBase(xfb, index, buffer);
4049}
4050
4051inline void QOpenGLFunctions_4_5_Core::glCreateTransformFeedbacks(GLsizei n, GLuint *ids)
4052{
4053 d_4_5_Core->f.CreateTransformFeedbacks(n, ids);
4054}
4055
4056inline void QOpenGLFunctions_4_5_Core::glClipControl(GLenum origin, GLenum depth)
4057{
4058 d_4_5_Core->f.ClipControl(origin, depth);
4059}
4060
4061
4062
4063QT_END_NAMESPACE
4064
4065#ifdef Q_OS_WIN
4066#pragma pop_macro("MemoryBarrier")
4067#endif
4068
4069
4070#endif // QT_NO_OPENGL && !QT_OPENGL_ES_2
4071
4072#endif
4073

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