1// Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
2// Copyright (C) 2016 The Qt Company Ltd.
3// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
4/***************************************************************************
5** This file was generated by glgen version 0.1
6** Command line was: glgen
7**
8** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
9**
10** This is an auto-generated file.
11** Do not edit! All changes made to it will be lost.
12**
13****************************************************************************/
14
15#ifndef QOPENGLVERSIONFUNCTIONS_4_3_CORE_H
16#define QOPENGLVERSIONFUNCTIONS_4_3_CORE_H
17
18#include <QtOpenGL/qtopenglglobal.h>
19
20#if !defined(QT_NO_OPENGL) && !QT_CONFIG(opengles2)
21
22#include <QtOpenGL/QOpenGLVersionProfile>
23#include <QtOpenGL/QOpenGLVersionFunctions>
24#include <QtGui/qopenglcontext.h>
25
26// MemoryBarrier is a macro on some architectures on Windows
27#ifdef Q_OS_WIN
28#pragma push_macro("MemoryBarrier")
29#undef MemoryBarrier
30#endif
31
32
33QT_BEGIN_NAMESPACE
34
35class Q_OPENGL_EXPORT QOpenGLFunctions_4_3_Core : public QAbstractOpenGLFunctions
36{
37public:
38 QOpenGLFunctions_4_3_Core();
39 ~QOpenGLFunctions_4_3_Core();
40
41 bool initializeOpenGLFunctions() override;
42
43 // OpenGL 1.0 core functions
44 void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
45 void glDepthRange(GLdouble nearVal, GLdouble farVal);
46 GLboolean glIsEnabled(GLenum cap);
47 void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
48 void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
49 void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
50 void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
51 void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
52 const GLubyte * glGetString(GLenum name);
53 void glGetIntegerv(GLenum pname, GLint *params);
54 void glGetFloatv(GLenum pname, GLfloat *params);
55 GLenum glGetError();
56 void glGetDoublev(GLenum pname, GLdouble *params);
57 void glGetBooleanv(GLenum pname, GLboolean *params);
58 void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
59 void glReadBuffer(GLenum mode);
60 void glPixelStorei(GLenum pname, GLint param);
61 void glPixelStoref(GLenum pname, GLfloat param);
62 void glDepthFunc(GLenum func);
63 void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
64 void glStencilFunc(GLenum func, GLint ref, GLuint mask);
65 void glLogicOp(GLenum opcode);
66 void glBlendFunc(GLenum sfactor, GLenum dfactor);
67 void glFlush();
68 void glFinish();
69 void glEnable(GLenum cap);
70 void glDisable(GLenum cap);
71 void glDepthMask(GLboolean flag);
72 void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
73 void glStencilMask(GLuint mask);
74 void glClearDepth(GLdouble depth);
75 void glClearStencil(GLint s);
76 void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
77 void glClear(GLbitfield mask);
78 void glDrawBuffer(GLenum mode);
79 void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
80 void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
81 void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
82 void glTexParameteri(GLenum target, GLenum pname, GLint param);
83 void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
84 void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
85 void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
86 void glPolygonMode(GLenum face, GLenum mode);
87 void glPointSize(GLfloat size);
88 void glLineWidth(GLfloat width);
89 void glHint(GLenum target, GLenum mode);
90 void glFrontFace(GLenum mode);
91 void glCullFace(GLenum mode);
92
93 // OpenGL 1.1 core functions
94 GLboolean glIsTexture(GLuint texture);
95 void glGenTextures(GLsizei n, GLuint *textures);
96 void glDeleteTextures(GLsizei n, const GLuint *textures);
97 void glBindTexture(GLenum target, GLuint texture);
98 void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
99 void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
100 void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
101 void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
102 void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
103 void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
104 void glPolygonOffset(GLfloat factor, GLfloat units);
105 void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
106 void glDrawArrays(GLenum mode, GLint first, GLsizei count);
107
108 // OpenGL 1.2 core functions
109 void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
110 void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
111 void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
112 void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
113 void glBlendEquation(GLenum mode);
114 void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
115
116 // OpenGL 1.3 core functions
117 void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
118 void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
119 void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
120 void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
121 void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
122 void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
123 void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
124 void glSampleCoverage(GLfloat value, GLboolean invert);
125 void glActiveTexture(GLenum texture);
126
127 // OpenGL 1.4 core functions
128 void glPointParameteriv(GLenum pname, const GLint *params);
129 void glPointParameteri(GLenum pname, GLint param);
130 void glPointParameterfv(GLenum pname, const GLfloat *params);
131 void glPointParameterf(GLenum pname, GLfloat param);
132 void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
133 void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
134 void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
135
136 // OpenGL 1.5 core functions
137 void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
138 void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
139 GLboolean glUnmapBuffer(GLenum target);
140 GLvoid* glMapBuffer(GLenum target, GLenum access);
141 void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
142 void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
143 void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
144 GLboolean glIsBuffer(GLuint buffer);
145 void glGenBuffers(GLsizei n, GLuint *buffers);
146 void glDeleteBuffers(GLsizei n, const GLuint *buffers);
147 void glBindBuffer(GLenum target, GLuint buffer);
148 void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
149 void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
150 void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
151 void glEndQuery(GLenum target);
152 void glBeginQuery(GLenum target, GLuint id);
153 GLboolean glIsQuery(GLuint id);
154 void glDeleteQueries(GLsizei n, const GLuint *ids);
155 void glGenQueries(GLsizei n, GLuint *ids);
156
157 // OpenGL 2.0 core functions
158 void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
159 void glValidateProgram(GLuint program);
160 void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
161 void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
162 void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
163 void glUniform4iv(GLint location, GLsizei count, const GLint *value);
164 void glUniform3iv(GLint location, GLsizei count, const GLint *value);
165 void glUniform2iv(GLint location, GLsizei count, const GLint *value);
166 void glUniform1iv(GLint location, GLsizei count, const GLint *value);
167 void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
168 void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
169 void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
170 void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
171 void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
172 void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
173 void glUniform2i(GLint location, GLint v0, GLint v1);
174 void glUniform1i(GLint location, GLint v0);
175 void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
176 void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
177 void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
178 void glUniform1f(GLint location, GLfloat v0);
179 void glUseProgram(GLuint program);
180 void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
181 void glLinkProgram(GLuint program);
182 GLboolean glIsShader(GLuint shader);
183 GLboolean glIsProgram(GLuint program);
184 void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
185 void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
186 void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
187 void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
188 void glGetUniformiv(GLuint program, GLint location, GLint *params);
189 void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
190 GLint glGetUniformLocation(GLuint program, const GLchar *name);
191 void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
192 void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
193 void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
194 void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
195 void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
196 GLint glGetAttribLocation(GLuint program, const GLchar *name);
197 void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
198 void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
199 void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
200 void glEnableVertexAttribArray(GLuint index);
201 void glDisableVertexAttribArray(GLuint index);
202 void glDetachShader(GLuint program, GLuint shader);
203 void glDeleteShader(GLuint shader);
204 void glDeleteProgram(GLuint program);
205 GLuint glCreateShader(GLenum type);
206 GLuint glCreateProgram();
207 void glCompileShader(GLuint shader);
208 void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
209 void glAttachShader(GLuint program, GLuint shader);
210 void glStencilMaskSeparate(GLenum face, GLuint mask);
211 void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
212 void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
213 void glDrawBuffers(GLsizei n, const GLenum *bufs);
214 void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
215
216 // OpenGL 2.1 core functions
217 void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
218 void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
219 void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
220 void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
221 void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
222 void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
223
224 // OpenGL 3.0 core functions
225 GLboolean glIsVertexArray(GLuint array);
226 void glGenVertexArrays(GLsizei n, GLuint *arrays);
227 void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
228 void glBindVertexArray(GLuint array);
229 void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
230 GLvoid* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
231 void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
232 void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
233 void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
234 void glGenerateMipmap(GLenum target);
235 void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
236 void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
237 void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
238 void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
239 void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
240 GLenum glCheckFramebufferStatus(GLenum target);
241 void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
242 void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
243 void glBindFramebuffer(GLenum target, GLuint framebuffer);
244 GLboolean glIsFramebuffer(GLuint framebuffer);
245 void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
246 void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
247 void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
248 void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
249 void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
250 GLboolean glIsRenderbuffer(GLuint renderbuffer);
251 const GLubyte * glGetStringi(GLenum name, GLuint index);
252 void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
253 void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
254 void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
255 void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
256 void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
257 void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
258 void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
259 void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
260 void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
261 void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
262 void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
263 void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
264 void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
265 void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
266 void glUniform2ui(GLint location, GLuint v0, GLuint v1);
267 void glUniform1ui(GLint location, GLuint v0);
268 GLint glGetFragDataLocation(GLuint program, const GLchar *name);
269 void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
270 void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
271 void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
272 void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
273 void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
274 void glEndConditionalRender();
275 void glBeginConditionalRender(GLuint id, GLenum mode);
276 void glClampColor(GLenum target, GLenum clamp);
277 void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
278 void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
279 void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
280 void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
281 void glEndTransformFeedback();
282 void glBeginTransformFeedback(GLenum primitiveMode);
283 GLboolean glIsEnabledi(GLenum target, GLuint index);
284 void glDisablei(GLenum target, GLuint index);
285 void glEnablei(GLenum target, GLuint index);
286 void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
287 void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
288 void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
289
290 // OpenGL 3.1 core functions
291 void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
292 void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
293 void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
294 void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
295 GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
296 void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
297 void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
298 void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices);
299 void glPrimitiveRestartIndex(GLuint index);
300 void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
301 void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount);
302 void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
303
304 // OpenGL 3.2 core functions
305 void glSampleMaski(GLuint index, GLbitfield mask);
306 void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
307 void glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
308 void glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
309 void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
310 void glGetInteger64v(GLenum pname, GLint64 *params);
311 void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
312 GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
313 void glDeleteSync(GLsync sync);
314 GLboolean glIsSync(GLsync sync);
315 GLsync glFenceSync(GLenum condition, GLbitfield flags);
316 void glProvokingVertex(GLenum mode);
317 void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex);
318 void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex);
319 void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
320 void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
321 void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
322 void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
323 void glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
324
325 // OpenGL 3.3 core functions
326 void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
327 void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
328 void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
329 void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
330 void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
331 void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
332 void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
333 void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value);
334 void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params);
335 void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params);
336 void glQueryCounter(GLuint id, GLenum target);
337 void glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params);
338 void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
339 void glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params);
340 void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
341 void glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param);
342 void glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param);
343 void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param);
344 void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
345 void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param);
346 void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param);
347 void glBindSampler(GLuint unit, GLuint sampler);
348 GLboolean glIsSampler(GLuint sampler);
349 void glDeleteSamplers(GLsizei count, const GLuint *samplers);
350 void glGenSamplers(GLsizei count, GLuint *samplers);
351 GLint glGetFragDataIndex(GLuint program, const GLchar *name);
352 void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
353 void glVertexAttribDivisor(GLuint index, GLuint divisor);
354
355 // OpenGL 4.0 core functions
356 void glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params);
357 void glEndQueryIndexed(GLenum target, GLuint index);
358 void glBeginQueryIndexed(GLenum target, GLuint index, GLuint id);
359 void glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream);
360 void glDrawTransformFeedback(GLenum mode, GLuint id);
361 void glResumeTransformFeedback();
362 void glPauseTransformFeedback();
363 GLboolean glIsTransformFeedback(GLuint id);
364 void glGenTransformFeedbacks(GLsizei n, GLuint *ids);
365 void glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids);
366 void glBindTransformFeedback(GLenum target, GLuint id);
367 void glPatchParameterfv(GLenum pname, const GLfloat *values);
368 void glPatchParameteri(GLenum pname, GLint value);
369 void glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values);
370 void glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params);
371 void glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices);
372 void glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
373 void glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
374 void glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
375 GLuint glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name);
376 GLint glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name);
377 void glGetUniformdv(GLuint program, GLint location, GLdouble *params);
378 void glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
379 void glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
380 void glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
381 void glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
382 void glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
383 void glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
384 void glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
385 void glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
386 void glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
387 void glUniform4dv(GLint location, GLsizei count, const GLdouble *value);
388 void glUniform3dv(GLint location, GLsizei count, const GLdouble *value);
389 void glUniform2dv(GLint location, GLsizei count, const GLdouble *value);
390 void glUniform1dv(GLint location, GLsizei count, const GLdouble *value);
391 void glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
392 void glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z);
393 void glUniform2d(GLint location, GLdouble x, GLdouble y);
394 void glUniform1d(GLint location, GLdouble x);
395 void glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect);
396 void glDrawArraysIndirect(GLenum mode, const GLvoid *indirect);
397 void glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
398 void glBlendFunci(GLuint buf, GLenum src, GLenum dst);
399 void glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha);
400 void glBlendEquationi(GLuint buf, GLenum mode);
401 void glMinSampleShading(GLfloat value);
402
403 // OpenGL 4.1 core functions
404 void glGetDoublei_v(GLenum target, GLuint index, GLdouble *data);
405 void glGetFloati_v(GLenum target, GLuint index, GLfloat *data);
406 void glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f);
407 void glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v);
408 void glScissorIndexedv(GLuint index, const GLint *v);
409 void glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
410 void glScissorArrayv(GLuint first, GLsizei count, const GLint *v);
411 void glViewportIndexedfv(GLuint index, const GLfloat *v);
412 void glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
413 void glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v);
414 void glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params);
415 void glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
416 void glVertexAttribL4dv(GLuint index, const GLdouble *v);
417 void glVertexAttribL3dv(GLuint index, const GLdouble *v);
418 void glVertexAttribL2dv(GLuint index, const GLdouble *v);
419 void glVertexAttribL1dv(GLuint index, const GLdouble *v);
420 void glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
421 void glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
422 void glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y);
423 void glVertexAttribL1d(GLuint index, GLdouble x);
424 void glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
425 void glValidateProgramPipeline(GLuint pipeline);
426 void glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
427 void glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
428 void glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
429 void glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
430 void glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
431 void glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
432 void glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
433 void glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
434 void glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
435 void glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
436 void glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
437 void glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
438 void glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
439 void glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
440 void glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
441 void glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
442 void glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
443 void glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
444 void glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
445 void glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
446 void glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
447 void glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3);
448 void glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
449 void glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
450 void glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value);
451 void glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
452 void glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
453 void glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
454 void glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
455 void glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2);
456 void glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
457 void glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
458 void glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value);
459 void glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
460 void glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
461 void glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1);
462 void glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
463 void glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1);
464 void glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
465 void glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1);
466 void glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value);
467 void glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1);
468 void glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
469 void glProgramUniform1ui(GLuint program, GLint location, GLuint v0);
470 void glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value);
471 void glProgramUniform1d(GLuint program, GLint location, GLdouble v0);
472 void glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
473 void glProgramUniform1f(GLuint program, GLint location, GLfloat v0);
474 void glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value);
475 void glProgramUniform1i(GLuint program, GLint location, GLint v0);
476 void glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params);
477 GLboolean glIsProgramPipeline(GLuint pipeline);
478 void glGenProgramPipelines(GLsizei n, GLuint *pipelines);
479 void glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines);
480 void glBindProgramPipeline(GLuint pipeline);
481 GLuint glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar* const *strings);
482 void glActiveShaderProgram(GLuint pipeline, GLuint program);
483 void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program);
484 void glProgramParameteri(GLuint program, GLenum pname, GLint value);
485 void glProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length);
486 void glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
487 void glClearDepthf(GLfloat dd);
488 void glDepthRangef(GLfloat n, GLfloat f);
489 void glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
490 void glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length);
491 void glReleaseShaderCompiler();
492
493 // OpenGL 4.2 core functions
494 void glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
495 void glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
496 void glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
497 void glMemoryBarrier(GLbitfield barriers);
498 void glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format);
499 void glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params);
500 void glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params);
501 void glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount);
502 void glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount);
503 void glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance);
504 void glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance);
505 void glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance);
506
507 // OpenGL 4.3 core functions
508 void glTexStorage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
509 void glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
510 void glTexBufferRange(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
511 void glShaderStorageBlockBinding(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding);
512 GLint glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface, const GLchar *name);
513 GLint glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar *name);
514 void glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params);
515 void glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name);
516 GLuint glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name);
517 void glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint *params);
518 void glMultiDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride);
519 void glMultiDrawArraysIndirect(GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride);
520 void glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
521 void glInvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments);
522 void glInvalidateBufferData(GLuint buffer);
523 void glInvalidateBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr length);
524 void glInvalidateTexImage(GLuint texture, GLint level);
525 void glInvalidateTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth);
526 void glGetInternalformati64v(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params);
527 void glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params);
528 void glFramebufferParameteri(GLenum target, GLenum pname, GLint param);
529 void glVertexBindingDivisor(GLuint bindingindex, GLuint divisor);
530 void glVertexAttribBinding(GLuint attribindex, GLuint bindingindex);
531 void glVertexAttribLFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
532 void glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
533 void glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
534 void glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
535 void glTextureView(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers);
536 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);
537 void glDispatchComputeIndirect(GLintptr indirect);
538 void glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z);
539 void glClearBufferSubData(GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data);
540 void glClearBufferData(GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data);
541
542private:
543 friend class QOpenGLVersionFunctionsFactory;
544
545 static bool isContextCompatible(QOpenGLContext *context);
546 static QOpenGLVersionProfile versionProfile();
547
548 QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
549 QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
550 QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
551 QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
552 QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
553 QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
554 QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
555 QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
556 QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
557 QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
558 QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
559 QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
560 QOpenGLFunctions_4_0_CoreBackend* d_4_0_Core;
561 QOpenGLFunctions_4_1_CoreBackend* d_4_1_Core;
562 QOpenGLFunctions_4_2_CoreBackend* d_4_2_Core;
563 QOpenGLFunctions_4_3_CoreBackend* d_4_3_Core;
564};
565
566// OpenGL 1.0 core functions
567inline void QOpenGLFunctions_4_3_Core::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
568{
569 d_1_0_Core->f.Viewport(x, y, width, height);
570}
571
572inline void QOpenGLFunctions_4_3_Core::glDepthRange(GLdouble nearVal, GLdouble farVal)
573{
574 d_1_0_Core->f.DepthRange(nearVal, farVal);
575}
576
577inline GLboolean QOpenGLFunctions_4_3_Core::glIsEnabled(GLenum cap)
578{
579 return d_1_0_Core->f.IsEnabled(cap);
580}
581
582inline void QOpenGLFunctions_4_3_Core::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
583{
584 d_1_0_Core->f.GetTexLevelParameteriv(target, level, pname, params);
585}
586
587inline void QOpenGLFunctions_4_3_Core::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
588{
589 d_1_0_Core->f.GetTexLevelParameterfv(target, level, pname, params);
590}
591
592inline void QOpenGLFunctions_4_3_Core::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
593{
594 d_1_0_Core->f.GetTexParameteriv(target, pname, params);
595}
596
597inline void QOpenGLFunctions_4_3_Core::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
598{
599 d_1_0_Core->f.GetTexParameterfv(target, pname, params);
600}
601
602inline void QOpenGLFunctions_4_3_Core::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
603{
604 d_1_0_Core->f.GetTexImage(target, level, format, type, pixels);
605}
606
607inline const GLubyte * QOpenGLFunctions_4_3_Core::glGetString(GLenum name)
608{
609 return d_1_0_Core->f.GetString(name);
610}
611
612inline void QOpenGLFunctions_4_3_Core::glGetIntegerv(GLenum pname, GLint *params)
613{
614 d_1_0_Core->f.GetIntegerv(pname, params);
615}
616
617inline void QOpenGLFunctions_4_3_Core::glGetFloatv(GLenum pname, GLfloat *params)
618{
619 d_1_0_Core->f.GetFloatv(pname, params);
620}
621
622inline GLenum QOpenGLFunctions_4_3_Core::glGetError()
623{
624 return d_1_0_Core->f.GetError();
625}
626
627inline void QOpenGLFunctions_4_3_Core::glGetDoublev(GLenum pname, GLdouble *params)
628{
629 d_1_0_Core->f.GetDoublev(pname, params);
630}
631
632inline void QOpenGLFunctions_4_3_Core::glGetBooleanv(GLenum pname, GLboolean *params)
633{
634 d_1_0_Core->f.GetBooleanv(pname, params);
635}
636
637inline void QOpenGLFunctions_4_3_Core::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
638{
639 d_1_0_Core->f.ReadPixels(x, y, width, height, format, type, pixels);
640}
641
642inline void QOpenGLFunctions_4_3_Core::glReadBuffer(GLenum mode)
643{
644 d_1_0_Core->f.ReadBuffer(mode);
645}
646
647inline void QOpenGLFunctions_4_3_Core::glPixelStorei(GLenum pname, GLint param)
648{
649 d_1_0_Core->f.PixelStorei(pname, param);
650}
651
652inline void QOpenGLFunctions_4_3_Core::glPixelStoref(GLenum pname, GLfloat param)
653{
654 d_1_0_Core->f.PixelStoref(pname, param);
655}
656
657inline void QOpenGLFunctions_4_3_Core::glDepthFunc(GLenum func)
658{
659 d_1_0_Core->f.DepthFunc(func);
660}
661
662inline void QOpenGLFunctions_4_3_Core::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
663{
664 d_1_0_Core->f.StencilOp(fail, zfail, zpass);
665}
666
667inline void QOpenGLFunctions_4_3_Core::glStencilFunc(GLenum func, GLint ref, GLuint mask)
668{
669 d_1_0_Core->f.StencilFunc(func, ref, mask);
670}
671
672inline void QOpenGLFunctions_4_3_Core::glLogicOp(GLenum opcode)
673{
674 d_1_0_Core->f.LogicOp(opcode);
675}
676
677inline void QOpenGLFunctions_4_3_Core::glBlendFunc(GLenum sfactor, GLenum dfactor)
678{
679 d_1_0_Core->f.BlendFunc(sfactor, dfactor);
680}
681
682inline void QOpenGLFunctions_4_3_Core::glFlush()
683{
684 d_1_0_Core->f.Flush();
685}
686
687inline void QOpenGLFunctions_4_3_Core::glFinish()
688{
689 d_1_0_Core->f.Finish();
690}
691
692inline void QOpenGLFunctions_4_3_Core::glEnable(GLenum cap)
693{
694 d_1_0_Core->f.Enable(cap);
695}
696
697inline void QOpenGLFunctions_4_3_Core::glDisable(GLenum cap)
698{
699 d_1_0_Core->f.Disable(cap);
700}
701
702inline void QOpenGLFunctions_4_3_Core::glDepthMask(GLboolean flag)
703{
704 d_1_0_Core->f.DepthMask(flag);
705}
706
707inline void QOpenGLFunctions_4_3_Core::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
708{
709 d_1_0_Core->f.ColorMask(red, green, blue, alpha);
710}
711
712inline void QOpenGLFunctions_4_3_Core::glStencilMask(GLuint mask)
713{
714 d_1_0_Core->f.StencilMask(mask);
715}
716
717inline void QOpenGLFunctions_4_3_Core::glClearDepth(GLdouble depth)
718{
719 d_1_0_Core->f.ClearDepth(depth);
720}
721
722inline void QOpenGLFunctions_4_3_Core::glClearStencil(GLint s)
723{
724 d_1_0_Core->f.ClearStencil(s);
725}
726
727inline void QOpenGLFunctions_4_3_Core::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
728{
729 d_1_0_Core->f.ClearColor(red, green, blue, alpha);
730}
731
732inline void QOpenGLFunctions_4_3_Core::glClear(GLbitfield mask)
733{
734 d_1_0_Core->f.Clear(mask);
735}
736
737inline void QOpenGLFunctions_4_3_Core::glDrawBuffer(GLenum mode)
738{
739 d_1_0_Core->f.DrawBuffer(mode);
740}
741
742inline void QOpenGLFunctions_4_3_Core::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
743{
744 d_1_0_Core->f.TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
745}
746
747inline void QOpenGLFunctions_4_3_Core::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
748{
749 d_1_0_Core->f.TexImage1D(target, level, internalformat, width, border, format, type, pixels);
750}
751
752inline void QOpenGLFunctions_4_3_Core::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
753{
754 d_1_0_Core->f.TexParameteriv(target, pname, params);
755}
756
757inline void QOpenGLFunctions_4_3_Core::glTexParameteri(GLenum target, GLenum pname, GLint param)
758{
759 d_1_0_Core->f.TexParameteri(target, pname, param);
760}
761
762inline void QOpenGLFunctions_4_3_Core::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
763{
764 d_1_0_Core->f.TexParameterfv(target, pname, params);
765}
766
767inline void QOpenGLFunctions_4_3_Core::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
768{
769 d_1_0_Core->f.TexParameterf(target, pname, param);
770}
771
772inline void QOpenGLFunctions_4_3_Core::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
773{
774 d_1_0_Core->f.Scissor(x, y, width, height);
775}
776
777inline void QOpenGLFunctions_4_3_Core::glPolygonMode(GLenum face, GLenum mode)
778{
779 d_1_0_Core->f.PolygonMode(face, mode);
780}
781
782inline void QOpenGLFunctions_4_3_Core::glPointSize(GLfloat size)
783{
784 d_1_0_Core->f.PointSize(size);
785}
786
787inline void QOpenGLFunctions_4_3_Core::glLineWidth(GLfloat width)
788{
789 d_1_0_Core->f.LineWidth(width);
790}
791
792inline void QOpenGLFunctions_4_3_Core::glHint(GLenum target, GLenum mode)
793{
794 d_1_0_Core->f.Hint(target, mode);
795}
796
797inline void QOpenGLFunctions_4_3_Core::glFrontFace(GLenum mode)
798{
799 d_1_0_Core->f.FrontFace(mode);
800}
801
802inline void QOpenGLFunctions_4_3_Core::glCullFace(GLenum mode)
803{
804 d_1_0_Core->f.CullFace(mode);
805}
806
807
808// OpenGL 1.1 core functions
809inline GLboolean QOpenGLFunctions_4_3_Core::glIsTexture(GLuint texture)
810{
811 return d_1_1_Core->f.IsTexture(texture);
812}
813
814inline void QOpenGLFunctions_4_3_Core::glGenTextures(GLsizei n, GLuint *textures)
815{
816 d_1_1_Core->f.GenTextures(n, textures);
817}
818
819inline void QOpenGLFunctions_4_3_Core::glDeleteTextures(GLsizei n, const GLuint *textures)
820{
821 d_1_1_Core->f.DeleteTextures(n, textures);
822}
823
824inline void QOpenGLFunctions_4_3_Core::glBindTexture(GLenum target, GLuint texture)
825{
826 d_1_1_Core->f.BindTexture(target, texture);
827}
828
829inline void QOpenGLFunctions_4_3_Core::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
830{
831 d_1_1_Core->f.TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
832}
833
834inline void QOpenGLFunctions_4_3_Core::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
835{
836 d_1_1_Core->f.TexSubImage1D(target, level, xoffset, width, format, type, pixels);
837}
838
839inline void QOpenGLFunctions_4_3_Core::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
840{
841 d_1_1_Core->f.CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
842}
843
844inline void QOpenGLFunctions_4_3_Core::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
845{
846 d_1_1_Core->f.CopyTexSubImage1D(target, level, xoffset, x, y, width);
847}
848
849inline void QOpenGLFunctions_4_3_Core::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
850{
851 d_1_1_Core->f.CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
852}
853
854inline void QOpenGLFunctions_4_3_Core::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
855{
856 d_1_1_Core->f.CopyTexImage1D(target, level, internalformat, x, y, width, border);
857}
858
859inline void QOpenGLFunctions_4_3_Core::glPolygonOffset(GLfloat factor, GLfloat units)
860{
861 d_1_1_Core->f.PolygonOffset(factor, units);
862}
863
864inline void QOpenGLFunctions_4_3_Core::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
865{
866 d_1_1_Core->f.DrawElements(mode, count, type, indices);
867}
868
869inline void QOpenGLFunctions_4_3_Core::glDrawArrays(GLenum mode, GLint first, GLsizei count)
870{
871 d_1_1_Core->f.DrawArrays(mode, first, count);
872}
873
874
875// OpenGL 1.2 core functions
876inline void QOpenGLFunctions_4_3_Core::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
877{
878 d_1_2_Core->f.CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
879}
880
881inline void QOpenGLFunctions_4_3_Core::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
882{
883 d_1_2_Core->f.TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
884}
885
886inline void QOpenGLFunctions_4_3_Core::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
887{
888 d_1_2_Core->f.TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
889}
890
891inline void QOpenGLFunctions_4_3_Core::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
892{
893 d_1_2_Core->f.DrawRangeElements(mode, start, end, count, type, indices);
894}
895
896inline void QOpenGLFunctions_4_3_Core::glBlendEquation(GLenum mode)
897{
898 d_1_2_Core->f.BlendEquation(mode);
899}
900
901inline void QOpenGLFunctions_4_3_Core::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
902{
903 d_1_2_Core->f.BlendColor(red, green, blue, alpha);
904}
905
906
907// OpenGL 1.3 core functions
908inline void QOpenGLFunctions_4_3_Core::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
909{
910 d_1_3_Core->f.GetCompressedTexImage(target, level, img);
911}
912
913inline void QOpenGLFunctions_4_3_Core::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
914{
915 d_1_3_Core->f.CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
916}
917
918inline void QOpenGLFunctions_4_3_Core::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
919{
920 d_1_3_Core->f.CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
921}
922
923inline void QOpenGLFunctions_4_3_Core::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
924{
925 d_1_3_Core->f.CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
926}
927
928inline void QOpenGLFunctions_4_3_Core::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
929{
930 d_1_3_Core->f.CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
931}
932
933inline void QOpenGLFunctions_4_3_Core::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
934{
935 d_1_3_Core->f.CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
936}
937
938inline void QOpenGLFunctions_4_3_Core::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
939{
940 d_1_3_Core->f.CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
941}
942
943inline void QOpenGLFunctions_4_3_Core::glSampleCoverage(GLfloat value, GLboolean invert)
944{
945 d_1_3_Core->f.SampleCoverage(value, invert);
946}
947
948inline void QOpenGLFunctions_4_3_Core::glActiveTexture(GLenum texture)
949{
950 d_1_3_Core->f.ActiveTexture(texture);
951}
952
953
954// OpenGL 1.4 core functions
955inline void QOpenGLFunctions_4_3_Core::glPointParameteriv(GLenum pname, const GLint *params)
956{
957 d_1_4_Core->f.PointParameteriv(pname, params);
958}
959
960inline void QOpenGLFunctions_4_3_Core::glPointParameteri(GLenum pname, GLint param)
961{
962 d_1_4_Core->f.PointParameteri(pname, param);
963}
964
965inline void QOpenGLFunctions_4_3_Core::glPointParameterfv(GLenum pname, const GLfloat *params)
966{
967 d_1_4_Core->f.PointParameterfv(pname, params);
968}
969
970inline void QOpenGLFunctions_4_3_Core::glPointParameterf(GLenum pname, GLfloat param)
971{
972 d_1_4_Core->f.PointParameterf(pname, param);
973}
974
975inline void QOpenGLFunctions_4_3_Core::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
976{
977 d_1_4_Core->f.MultiDrawElements(mode, count, type, indices, drawcount);
978}
979
980inline void QOpenGLFunctions_4_3_Core::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
981{
982 d_1_4_Core->f.MultiDrawArrays(mode, first, count, drawcount);
983}
984
985inline void QOpenGLFunctions_4_3_Core::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
986{
987 d_1_4_Core->f.BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
988}
989
990
991// OpenGL 1.5 core functions
992inline void QOpenGLFunctions_4_3_Core::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
993{
994 d_1_5_Core->f.GetBufferPointerv(target, pname, params);
995}
996
997inline void QOpenGLFunctions_4_3_Core::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
998{
999 d_1_5_Core->f.GetBufferParameteriv(target, pname, params);
1000}
1001
1002inline GLboolean QOpenGLFunctions_4_3_Core::glUnmapBuffer(GLenum target)
1003{
1004 return d_1_5_Core->f.UnmapBuffer(target);
1005}
1006
1007inline GLvoid* QOpenGLFunctions_4_3_Core::glMapBuffer(GLenum target, GLenum access)
1008{
1009 return d_1_5_Core->f.MapBuffer(target, access);
1010}
1011
1012inline void QOpenGLFunctions_4_3_Core::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
1013{
1014 d_1_5_Core->f.GetBufferSubData(target, offset, size, data);
1015}
1016
1017inline void QOpenGLFunctions_4_3_Core::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
1018{
1019 d_1_5_Core->f.BufferSubData(target, offset, size, data);
1020}
1021
1022inline void QOpenGLFunctions_4_3_Core::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
1023{
1024 d_1_5_Core->f.BufferData(target, size, data, usage);
1025}
1026
1027inline GLboolean QOpenGLFunctions_4_3_Core::glIsBuffer(GLuint buffer)
1028{
1029 return d_1_5_Core->f.IsBuffer(buffer);
1030}
1031
1032inline void QOpenGLFunctions_4_3_Core::glGenBuffers(GLsizei n, GLuint *buffers)
1033{
1034 d_1_5_Core->f.GenBuffers(n, buffers);
1035}
1036
1037inline void QOpenGLFunctions_4_3_Core::glDeleteBuffers(GLsizei n, const GLuint *buffers)
1038{
1039 d_1_5_Core->f.DeleteBuffers(n, buffers);
1040}
1041
1042inline void QOpenGLFunctions_4_3_Core::glBindBuffer(GLenum target, GLuint buffer)
1043{
1044 d_1_5_Core->f.BindBuffer(target, buffer);
1045}
1046
1047inline void QOpenGLFunctions_4_3_Core::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
1048{
1049 d_1_5_Core->f.GetQueryObjectuiv(id, pname, params);
1050}
1051
1052inline void QOpenGLFunctions_4_3_Core::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
1053{
1054 d_1_5_Core->f.GetQueryObjectiv(id, pname, params);
1055}
1056
1057inline void QOpenGLFunctions_4_3_Core::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
1058{
1059 d_1_5_Core->f.GetQueryiv(target, pname, params);
1060}
1061
1062inline void QOpenGLFunctions_4_3_Core::glEndQuery(GLenum target)
1063{
1064 d_1_5_Core->f.EndQuery(target);
1065}
1066
1067inline void QOpenGLFunctions_4_3_Core::glBeginQuery(GLenum target, GLuint id)
1068{
1069 d_1_5_Core->f.BeginQuery(target, id);
1070}
1071
1072inline GLboolean QOpenGLFunctions_4_3_Core::glIsQuery(GLuint id)
1073{
1074 return d_1_5_Core->f.IsQuery(id);
1075}
1076
1077inline void QOpenGLFunctions_4_3_Core::glDeleteQueries(GLsizei n, const GLuint *ids)
1078{
1079 d_1_5_Core->f.DeleteQueries(n, ids);
1080}
1081
1082inline void QOpenGLFunctions_4_3_Core::glGenQueries(GLsizei n, GLuint *ids)
1083{
1084 d_1_5_Core->f.GenQueries(n, ids);
1085}
1086
1087
1088// OpenGL 2.0 core functions
1089inline void QOpenGLFunctions_4_3_Core::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
1090{
1091 d_2_0_Core->f.VertexAttribPointer(index, size, type, normalized, stride, pointer);
1092}
1093
1094inline void QOpenGLFunctions_4_3_Core::glValidateProgram(GLuint program)
1095{
1096 d_2_0_Core->f.ValidateProgram(program);
1097}
1098
1099inline void QOpenGLFunctions_4_3_Core::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1100{
1101 d_2_0_Core->f.UniformMatrix4fv(location, count, transpose, value);
1102}
1103
1104inline void QOpenGLFunctions_4_3_Core::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1105{
1106 d_2_0_Core->f.UniformMatrix3fv(location, count, transpose, value);
1107}
1108
1109inline void QOpenGLFunctions_4_3_Core::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1110{
1111 d_2_0_Core->f.UniformMatrix2fv(location, count, transpose, value);
1112}
1113
1114inline void QOpenGLFunctions_4_3_Core::glUniform4iv(GLint location, GLsizei count, const GLint *value)
1115{
1116 d_2_0_Core->f.Uniform4iv(location, count, value);
1117}
1118
1119inline void QOpenGLFunctions_4_3_Core::glUniform3iv(GLint location, GLsizei count, const GLint *value)
1120{
1121 d_2_0_Core->f.Uniform3iv(location, count, value);
1122}
1123
1124inline void QOpenGLFunctions_4_3_Core::glUniform2iv(GLint location, GLsizei count, const GLint *value)
1125{
1126 d_2_0_Core->f.Uniform2iv(location, count, value);
1127}
1128
1129inline void QOpenGLFunctions_4_3_Core::glUniform1iv(GLint location, GLsizei count, const GLint *value)
1130{
1131 d_2_0_Core->f.Uniform1iv(location, count, value);
1132}
1133
1134inline void QOpenGLFunctions_4_3_Core::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
1135{
1136 d_2_0_Core->f.Uniform4fv(location, count, value);
1137}
1138
1139inline void QOpenGLFunctions_4_3_Core::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
1140{
1141 d_2_0_Core->f.Uniform3fv(location, count, value);
1142}
1143
1144inline void QOpenGLFunctions_4_3_Core::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
1145{
1146 d_2_0_Core->f.Uniform2fv(location, count, value);
1147}
1148
1149inline void QOpenGLFunctions_4_3_Core::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
1150{
1151 d_2_0_Core->f.Uniform1fv(location, count, value);
1152}
1153
1154inline void QOpenGLFunctions_4_3_Core::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
1155{
1156 d_2_0_Core->f.Uniform4i(location, v0, v1, v2, v3);
1157}
1158
1159inline void QOpenGLFunctions_4_3_Core::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
1160{
1161 d_2_0_Core->f.Uniform3i(location, v0, v1, v2);
1162}
1163
1164inline void QOpenGLFunctions_4_3_Core::glUniform2i(GLint location, GLint v0, GLint v1)
1165{
1166 d_2_0_Core->f.Uniform2i(location, v0, v1);
1167}
1168
1169inline void QOpenGLFunctions_4_3_Core::glUniform1i(GLint location, GLint v0)
1170{
1171 d_2_0_Core->f.Uniform1i(location, v0);
1172}
1173
1174inline void QOpenGLFunctions_4_3_Core::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
1175{
1176 d_2_0_Core->f.Uniform4f(location, v0, v1, v2, v3);
1177}
1178
1179inline void QOpenGLFunctions_4_3_Core::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
1180{
1181 d_2_0_Core->f.Uniform3f(location, v0, v1, v2);
1182}
1183
1184inline void QOpenGLFunctions_4_3_Core::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
1185{
1186 d_2_0_Core->f.Uniform2f(location, v0, v1);
1187}
1188
1189inline void QOpenGLFunctions_4_3_Core::glUniform1f(GLint location, GLfloat v0)
1190{
1191 d_2_0_Core->f.Uniform1f(location, v0);
1192}
1193
1194inline void QOpenGLFunctions_4_3_Core::glUseProgram(GLuint program)
1195{
1196 d_2_0_Core->f.UseProgram(program);
1197}
1198
1199inline void QOpenGLFunctions_4_3_Core::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
1200{
1201 d_2_0_Core->f.ShaderSource(shader, count, string, length);
1202}
1203
1204inline void QOpenGLFunctions_4_3_Core::glLinkProgram(GLuint program)
1205{
1206 d_2_0_Core->f.LinkProgram(program);
1207}
1208
1209inline GLboolean QOpenGLFunctions_4_3_Core::glIsShader(GLuint shader)
1210{
1211 return d_2_0_Core->f.IsShader(shader);
1212}
1213
1214inline GLboolean QOpenGLFunctions_4_3_Core::glIsProgram(GLuint program)
1215{
1216 return d_2_0_Core->f.IsProgram(program);
1217}
1218
1219inline void QOpenGLFunctions_4_3_Core::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
1220{
1221 d_2_0_Core->f.GetVertexAttribPointerv(index, pname, pointer);
1222}
1223
1224inline void QOpenGLFunctions_4_3_Core::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
1225{
1226 d_2_0_Core->f.GetVertexAttribiv(index, pname, params);
1227}
1228
1229inline void QOpenGLFunctions_4_3_Core::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
1230{
1231 d_2_0_Core->f.GetVertexAttribfv(index, pname, params);
1232}
1233
1234inline void QOpenGLFunctions_4_3_Core::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
1235{
1236 d_2_0_Core->f.GetVertexAttribdv(index, pname, params);
1237}
1238
1239inline void QOpenGLFunctions_4_3_Core::glGetUniformiv(GLuint program, GLint location, GLint *params)
1240{
1241 d_2_0_Core->f.GetUniformiv(program, location, params);
1242}
1243
1244inline void QOpenGLFunctions_4_3_Core::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
1245{
1246 d_2_0_Core->f.GetUniformfv(program, location, params);
1247}
1248
1249inline GLint QOpenGLFunctions_4_3_Core::glGetUniformLocation(GLuint program, const GLchar *name)
1250{
1251 return d_2_0_Core->f.GetUniformLocation(program, name);
1252}
1253
1254inline void QOpenGLFunctions_4_3_Core::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
1255{
1256 d_2_0_Core->f.GetShaderSource(shader, bufSize, length, source);
1257}
1258
1259inline void QOpenGLFunctions_4_3_Core::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
1260{
1261 d_2_0_Core->f.GetShaderInfoLog(shader, bufSize, length, infoLog);
1262}
1263
1264inline void QOpenGLFunctions_4_3_Core::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
1265{
1266 d_2_0_Core->f.GetShaderiv(shader, pname, params);
1267}
1268
1269inline void QOpenGLFunctions_4_3_Core::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
1270{
1271 d_2_0_Core->f.GetProgramInfoLog(program, bufSize, length, infoLog);
1272}
1273
1274inline void QOpenGLFunctions_4_3_Core::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
1275{
1276 d_2_0_Core->f.GetProgramiv(program, pname, params);
1277}
1278
1279inline GLint QOpenGLFunctions_4_3_Core::glGetAttribLocation(GLuint program, const GLchar *name)
1280{
1281 return d_2_0_Core->f.GetAttribLocation(program, name);
1282}
1283
1284inline void QOpenGLFunctions_4_3_Core::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
1285{
1286 d_2_0_Core->f.GetAttachedShaders(program, maxCount, count, obj);
1287}
1288
1289inline void QOpenGLFunctions_4_3_Core::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
1290{
1291 d_2_0_Core->f.GetActiveUniform(program, index, bufSize, length, size, type, name);
1292}
1293
1294inline void QOpenGLFunctions_4_3_Core::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
1295{
1296 d_2_0_Core->f.GetActiveAttrib(program, index, bufSize, length, size, type, name);
1297}
1298
1299inline void QOpenGLFunctions_4_3_Core::glEnableVertexAttribArray(GLuint index)
1300{
1301 d_2_0_Core->f.EnableVertexAttribArray(index);
1302}
1303
1304inline void QOpenGLFunctions_4_3_Core::glDisableVertexAttribArray(GLuint index)
1305{
1306 d_2_0_Core->f.DisableVertexAttribArray(index);
1307}
1308
1309inline void QOpenGLFunctions_4_3_Core::glDetachShader(GLuint program, GLuint shader)
1310{
1311 d_2_0_Core->f.DetachShader(program, shader);
1312}
1313
1314inline void QOpenGLFunctions_4_3_Core::glDeleteShader(GLuint shader)
1315{
1316 d_2_0_Core->f.DeleteShader(shader);
1317}
1318
1319inline void QOpenGLFunctions_4_3_Core::glDeleteProgram(GLuint program)
1320{
1321 d_2_0_Core->f.DeleteProgram(program);
1322}
1323
1324inline GLuint QOpenGLFunctions_4_3_Core::glCreateShader(GLenum type)
1325{
1326 return d_2_0_Core->f.CreateShader(type);
1327}
1328
1329inline GLuint QOpenGLFunctions_4_3_Core::glCreateProgram()
1330{
1331 return d_2_0_Core->f.CreateProgram();
1332}
1333
1334inline void QOpenGLFunctions_4_3_Core::glCompileShader(GLuint shader)
1335{
1336 d_2_0_Core->f.CompileShader(shader);
1337}
1338
1339inline void QOpenGLFunctions_4_3_Core::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
1340{
1341 d_2_0_Core->f.BindAttribLocation(program, index, name);
1342}
1343
1344inline void QOpenGLFunctions_4_3_Core::glAttachShader(GLuint program, GLuint shader)
1345{
1346 d_2_0_Core->f.AttachShader(program, shader);
1347}
1348
1349inline void QOpenGLFunctions_4_3_Core::glStencilMaskSeparate(GLenum face, GLuint mask)
1350{
1351 d_2_0_Core->f.StencilMaskSeparate(face, mask);
1352}
1353
1354inline void QOpenGLFunctions_4_3_Core::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
1355{
1356 d_2_0_Core->f.StencilFuncSeparate(face, func, ref, mask);
1357}
1358
1359inline void QOpenGLFunctions_4_3_Core::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
1360{
1361 d_2_0_Core->f.StencilOpSeparate(face, sfail, dpfail, dppass);
1362}
1363
1364inline void QOpenGLFunctions_4_3_Core::glDrawBuffers(GLsizei n, const GLenum *bufs)
1365{
1366 d_2_0_Core->f.DrawBuffers(n, bufs);
1367}
1368
1369inline void QOpenGLFunctions_4_3_Core::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
1370{
1371 d_2_0_Core->f.BlendEquationSeparate(modeRGB, modeAlpha);
1372}
1373
1374
1375// OpenGL 2.1 core functions
1376inline void QOpenGLFunctions_4_3_Core::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1377{
1378 d_2_1_Core->f.UniformMatrix4x3fv(location, count, transpose, value);
1379}
1380
1381inline void QOpenGLFunctions_4_3_Core::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1382{
1383 d_2_1_Core->f.UniformMatrix3x4fv(location, count, transpose, value);
1384}
1385
1386inline void QOpenGLFunctions_4_3_Core::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1387{
1388 d_2_1_Core->f.UniformMatrix4x2fv(location, count, transpose, value);
1389}
1390
1391inline void QOpenGLFunctions_4_3_Core::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1392{
1393 d_2_1_Core->f.UniformMatrix2x4fv(location, count, transpose, value);
1394}
1395
1396inline void QOpenGLFunctions_4_3_Core::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1397{
1398 d_2_1_Core->f.UniformMatrix3x2fv(location, count, transpose, value);
1399}
1400
1401inline void QOpenGLFunctions_4_3_Core::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1402{
1403 d_2_1_Core->f.UniformMatrix2x3fv(location, count, transpose, value);
1404}
1405
1406
1407// OpenGL 3.0 core functions
1408inline GLboolean QOpenGLFunctions_4_3_Core::glIsVertexArray(GLuint array)
1409{
1410 return d_3_0_Core->f.IsVertexArray(array);
1411}
1412
1413inline void QOpenGLFunctions_4_3_Core::glGenVertexArrays(GLsizei n, GLuint *arrays)
1414{
1415 d_3_0_Core->f.GenVertexArrays(n, arrays);
1416}
1417
1418inline void QOpenGLFunctions_4_3_Core::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
1419{
1420 d_3_0_Core->f.DeleteVertexArrays(n, arrays);
1421}
1422
1423inline void QOpenGLFunctions_4_3_Core::glBindVertexArray(GLuint array)
1424{
1425 d_3_0_Core->f.BindVertexArray(array);
1426}
1427
1428inline void QOpenGLFunctions_4_3_Core::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
1429{
1430 d_3_0_Core->f.FlushMappedBufferRange(target, offset, length);
1431}
1432
1433inline GLvoid* QOpenGLFunctions_4_3_Core::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
1434{
1435 return d_3_0_Core->f.MapBufferRange(target, offset, length, access);
1436}
1437
1438inline void QOpenGLFunctions_4_3_Core::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
1439{
1440 d_3_0_Core->f.FramebufferTextureLayer(target, attachment, texture, level, layer);
1441}
1442
1443inline void QOpenGLFunctions_4_3_Core::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
1444{
1445 d_3_0_Core->f.RenderbufferStorageMultisample(target, samples, internalformat, width, height);
1446}
1447
1448inline void QOpenGLFunctions_4_3_Core::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
1449{
1450 d_3_0_Core->f.BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
1451}
1452
1453inline void QOpenGLFunctions_4_3_Core::glGenerateMipmap(GLenum target)
1454{
1455 d_3_0_Core->f.GenerateMipmap(target);
1456}
1457
1458inline void QOpenGLFunctions_4_3_Core::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
1459{
1460 d_3_0_Core->f.GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
1461}
1462
1463inline void QOpenGLFunctions_4_3_Core::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
1464{
1465 d_3_0_Core->f.FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
1466}
1467
1468inline void QOpenGLFunctions_4_3_Core::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
1469{
1470 d_3_0_Core->f.FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
1471}
1472
1473inline void QOpenGLFunctions_4_3_Core::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
1474{
1475 d_3_0_Core->f.FramebufferTexture2D(target, attachment, textarget, texture, level);
1476}
1477
1478inline void QOpenGLFunctions_4_3_Core::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
1479{
1480 d_3_0_Core->f.FramebufferTexture1D(target, attachment, textarget, texture, level);
1481}
1482
1483inline GLenum QOpenGLFunctions_4_3_Core::glCheckFramebufferStatus(GLenum target)
1484{
1485 return d_3_0_Core->f.CheckFramebufferStatus(target);
1486}
1487
1488inline void QOpenGLFunctions_4_3_Core::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
1489{
1490 d_3_0_Core->f.GenFramebuffers(n, framebuffers);
1491}
1492
1493inline void QOpenGLFunctions_4_3_Core::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
1494{
1495 d_3_0_Core->f.DeleteFramebuffers(n, framebuffers);
1496}
1497
1498inline void QOpenGLFunctions_4_3_Core::glBindFramebuffer(GLenum target, GLuint framebuffer)
1499{
1500 d_3_0_Core->f.BindFramebuffer(target, framebuffer);
1501}
1502
1503inline GLboolean QOpenGLFunctions_4_3_Core::glIsFramebuffer(GLuint framebuffer)
1504{
1505 return d_3_0_Core->f.IsFramebuffer(framebuffer);
1506}
1507
1508inline void QOpenGLFunctions_4_3_Core::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
1509{
1510 d_3_0_Core->f.GetRenderbufferParameteriv(target, pname, params);
1511}
1512
1513inline void QOpenGLFunctions_4_3_Core::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
1514{
1515 d_3_0_Core->f.RenderbufferStorage(target, internalformat, width, height);
1516}
1517
1518inline void QOpenGLFunctions_4_3_Core::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
1519{
1520 d_3_0_Core->f.GenRenderbuffers(n, renderbuffers);
1521}
1522
1523inline void QOpenGLFunctions_4_3_Core::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
1524{
1525 d_3_0_Core->f.DeleteRenderbuffers(n, renderbuffers);
1526}
1527
1528inline void QOpenGLFunctions_4_3_Core::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
1529{
1530 d_3_0_Core->f.BindRenderbuffer(target, renderbuffer);
1531}
1532
1533inline GLboolean QOpenGLFunctions_4_3_Core::glIsRenderbuffer(GLuint renderbuffer)
1534{
1535 return d_3_0_Core->f.IsRenderbuffer(renderbuffer);
1536}
1537
1538inline const GLubyte * QOpenGLFunctions_4_3_Core::glGetStringi(GLenum name, GLuint index)
1539{
1540 return d_3_0_Core->f.GetStringi(name, index);
1541}
1542
1543inline void QOpenGLFunctions_4_3_Core::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
1544{
1545 d_3_0_Core->f.ClearBufferfi(buffer, drawbuffer, depth, stencil);
1546}
1547
1548inline void QOpenGLFunctions_4_3_Core::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
1549{
1550 d_3_0_Core->f.ClearBufferfv(buffer, drawbuffer, value);
1551}
1552
1553inline void QOpenGLFunctions_4_3_Core::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
1554{
1555 d_3_0_Core->f.ClearBufferuiv(buffer, drawbuffer, value);
1556}
1557
1558inline void QOpenGLFunctions_4_3_Core::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
1559{
1560 d_3_0_Core->f.ClearBufferiv(buffer, drawbuffer, value);
1561}
1562
1563inline void QOpenGLFunctions_4_3_Core::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
1564{
1565 d_3_0_Core->f.GetTexParameterIuiv(target, pname, params);
1566}
1567
1568inline void QOpenGLFunctions_4_3_Core::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
1569{
1570 d_3_0_Core->f.GetTexParameterIiv(target, pname, params);
1571}
1572
1573inline void QOpenGLFunctions_4_3_Core::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
1574{
1575 d_3_0_Core->f.TexParameterIuiv(target, pname, params);
1576}
1577
1578inline void QOpenGLFunctions_4_3_Core::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
1579{
1580 d_3_0_Core->f.TexParameterIiv(target, pname, params);
1581}
1582
1583inline void QOpenGLFunctions_4_3_Core::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
1584{
1585 d_3_0_Core->f.Uniform4uiv(location, count, value);
1586}
1587
1588inline void QOpenGLFunctions_4_3_Core::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
1589{
1590 d_3_0_Core->f.Uniform3uiv(location, count, value);
1591}
1592
1593inline void QOpenGLFunctions_4_3_Core::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
1594{
1595 d_3_0_Core->f.Uniform2uiv(location, count, value);
1596}
1597
1598inline void QOpenGLFunctions_4_3_Core::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
1599{
1600 d_3_0_Core->f.Uniform1uiv(location, count, value);
1601}
1602
1603inline void QOpenGLFunctions_4_3_Core::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
1604{
1605 d_3_0_Core->f.Uniform4ui(location, v0, v1, v2, v3);
1606}
1607
1608inline void QOpenGLFunctions_4_3_Core::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
1609{
1610 d_3_0_Core->f.Uniform3ui(location, v0, v1, v2);
1611}
1612
1613inline void QOpenGLFunctions_4_3_Core::glUniform2ui(GLint location, GLuint v0, GLuint v1)
1614{
1615 d_3_0_Core->f.Uniform2ui(location, v0, v1);
1616}
1617
1618inline void QOpenGLFunctions_4_3_Core::glUniform1ui(GLint location, GLuint v0)
1619{
1620 d_3_0_Core->f.Uniform1ui(location, v0);
1621}
1622
1623inline GLint QOpenGLFunctions_4_3_Core::glGetFragDataLocation(GLuint program, const GLchar *name)
1624{
1625 return d_3_0_Core->f.GetFragDataLocation(program, name);
1626}
1627
1628inline void QOpenGLFunctions_4_3_Core::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
1629{
1630 d_3_0_Core->f.BindFragDataLocation(program, color, name);
1631}
1632
1633inline void QOpenGLFunctions_4_3_Core::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
1634{
1635 d_3_0_Core->f.GetUniformuiv(program, location, params);
1636}
1637
1638inline void QOpenGLFunctions_4_3_Core::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
1639{
1640 d_3_0_Core->f.GetVertexAttribIuiv(index, pname, params);
1641}
1642
1643inline void QOpenGLFunctions_4_3_Core::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
1644{
1645 d_3_0_Core->f.GetVertexAttribIiv(index, pname, params);
1646}
1647
1648inline void QOpenGLFunctions_4_3_Core::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
1649{
1650 d_3_0_Core->f.VertexAttribIPointer(index, size, type, stride, pointer);
1651}
1652
1653inline void QOpenGLFunctions_4_3_Core::glEndConditionalRender()
1654{
1655 d_3_0_Core->f.EndConditionalRender();
1656}
1657
1658inline void QOpenGLFunctions_4_3_Core::glBeginConditionalRender(GLuint id, GLenum mode)
1659{
1660 d_3_0_Core->f.BeginConditionalRender(id, mode);
1661}
1662
1663inline void QOpenGLFunctions_4_3_Core::glClampColor(GLenum target, GLenum clamp)
1664{
1665 d_3_0_Core->f.ClampColor(target, clamp);
1666}
1667
1668inline void QOpenGLFunctions_4_3_Core::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
1669{
1670 d_3_0_Core->f.GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
1671}
1672
1673inline void QOpenGLFunctions_4_3_Core::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
1674{
1675 d_3_0_Core->f.TransformFeedbackVaryings(program, count, varyings, bufferMode);
1676}
1677
1678inline void QOpenGLFunctions_4_3_Core::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
1679{
1680 d_3_0_Core->f.BindBufferBase(target, index, buffer);
1681}
1682
1683inline void QOpenGLFunctions_4_3_Core::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
1684{
1685 d_3_0_Core->f.BindBufferRange(target, index, buffer, offset, size);
1686}
1687
1688inline void QOpenGLFunctions_4_3_Core::glEndTransformFeedback()
1689{
1690 d_3_0_Core->f.EndTransformFeedback();
1691}
1692
1693inline void QOpenGLFunctions_4_3_Core::glBeginTransformFeedback(GLenum primitiveMode)
1694{
1695 d_3_0_Core->f.BeginTransformFeedback(primitiveMode);
1696}
1697
1698inline GLboolean QOpenGLFunctions_4_3_Core::glIsEnabledi(GLenum target, GLuint index)
1699{
1700 return d_3_0_Core->f.IsEnabledi(target, index);
1701}
1702
1703inline void QOpenGLFunctions_4_3_Core::glDisablei(GLenum target, GLuint index)
1704{
1705 d_3_0_Core->f.Disablei(target, index);
1706}
1707
1708inline void QOpenGLFunctions_4_3_Core::glEnablei(GLenum target, GLuint index)
1709{
1710 d_3_0_Core->f.Enablei(target, index);
1711}
1712
1713inline void QOpenGLFunctions_4_3_Core::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
1714{
1715 d_3_0_Core->f.GetIntegeri_v(target, index, data);
1716}
1717
1718inline void QOpenGLFunctions_4_3_Core::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
1719{
1720 d_3_0_Core->f.GetBooleani_v(target, index, data);
1721}
1722
1723inline void QOpenGLFunctions_4_3_Core::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
1724{
1725 d_3_0_Core->f.ColorMaski(index, r, g, b, a);
1726}
1727
1728
1729// OpenGL 3.1 core functions
1730inline void QOpenGLFunctions_4_3_Core::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
1731{
1732 d_3_1_Core->f.CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
1733}
1734
1735inline void QOpenGLFunctions_4_3_Core::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
1736{
1737 d_3_1_Core->f.UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
1738}
1739
1740inline void QOpenGLFunctions_4_3_Core::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
1741{
1742 d_3_1_Core->f.GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
1743}
1744
1745inline void QOpenGLFunctions_4_3_Core::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
1746{
1747 d_3_1_Core->f.GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
1748}
1749
1750inline GLuint QOpenGLFunctions_4_3_Core::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
1751{
1752 return d_3_1_Core->f.GetUniformBlockIndex(program, uniformBlockName);
1753}
1754
1755inline void QOpenGLFunctions_4_3_Core::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
1756{
1757 d_3_1_Core->f.GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
1758}
1759
1760inline void QOpenGLFunctions_4_3_Core::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
1761{
1762 d_3_1_Core->f.GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
1763}
1764
1765inline void QOpenGLFunctions_4_3_Core::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
1766{
1767 d_3_1_Core->f.GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
1768}
1769
1770inline void QOpenGLFunctions_4_3_Core::glPrimitiveRestartIndex(GLuint index)
1771{
1772 d_3_1_Core->f.PrimitiveRestartIndex(index);
1773}
1774
1775inline void QOpenGLFunctions_4_3_Core::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
1776{
1777 d_3_1_Core->f.TexBuffer(target, internalformat, buffer);
1778}
1779
1780inline void QOpenGLFunctions_4_3_Core::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
1781{
1782 d_3_1_Core->f.DrawElementsInstanced(mode, count, type, indices, instancecount);
1783}
1784
1785inline void QOpenGLFunctions_4_3_Core::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
1786{
1787 d_3_1_Core->f.DrawArraysInstanced(mode, first, count, instancecount);
1788}
1789
1790
1791// OpenGL 3.2 core functions
1792inline void QOpenGLFunctions_4_3_Core::glSampleMaski(GLuint index, GLbitfield mask)
1793{
1794 d_3_2_Core->f.SampleMaski(index, mask);
1795}
1796
1797inline void QOpenGLFunctions_4_3_Core::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
1798{
1799 d_3_2_Core->f.GetMultisamplefv(pname, index, val);
1800}
1801
1802inline void QOpenGLFunctions_4_3_Core::glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
1803{
1804 d_3_2_Core->f.TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
1805}
1806
1807inline void QOpenGLFunctions_4_3_Core::glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
1808{
1809 d_3_2_Core->f.TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
1810}
1811
1812inline void QOpenGLFunctions_4_3_Core::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
1813{
1814 d_3_2_Core->f.GetSynciv(sync, pname, bufSize, length, values);
1815}
1816
1817inline void QOpenGLFunctions_4_3_Core::glGetInteger64v(GLenum pname, GLint64 *params)
1818{
1819 d_3_2_Core->f.GetInteger64v(pname, params);
1820}
1821
1822inline void QOpenGLFunctions_4_3_Core::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
1823{
1824 d_3_2_Core->f.WaitSync(sync, flags, timeout);
1825}
1826
1827inline GLenum QOpenGLFunctions_4_3_Core::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
1828{
1829 return d_3_2_Core->f.ClientWaitSync(sync, flags, timeout);
1830}
1831
1832inline void QOpenGLFunctions_4_3_Core::glDeleteSync(GLsync sync)
1833{
1834 d_3_2_Core->f.DeleteSync(sync);
1835}
1836
1837inline GLboolean QOpenGLFunctions_4_3_Core::glIsSync(GLsync sync)
1838{
1839 return d_3_2_Core->f.IsSync(sync);
1840}
1841
1842inline GLsync QOpenGLFunctions_4_3_Core::glFenceSync(GLenum condition, GLbitfield flags)
1843{
1844 return d_3_2_Core->f.FenceSync(condition, flags);
1845}
1846
1847inline void QOpenGLFunctions_4_3_Core::glProvokingVertex(GLenum mode)
1848{
1849 d_3_2_Core->f.ProvokingVertex(mode);
1850}
1851
1852inline void QOpenGLFunctions_4_3_Core::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex)
1853{
1854 d_3_2_Core->f.MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
1855}
1856
1857inline void QOpenGLFunctions_4_3_Core::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex)
1858{
1859 d_3_2_Core->f.DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
1860}
1861
1862inline void QOpenGLFunctions_4_3_Core::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
1863{
1864 d_3_2_Core->f.DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
1865}
1866
1867inline void QOpenGLFunctions_4_3_Core::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
1868{
1869 d_3_2_Core->f.DrawElementsBaseVertex(mode, count, type, indices, basevertex);
1870}
1871
1872inline void QOpenGLFunctions_4_3_Core::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
1873{
1874 d_3_2_Core->f.FramebufferTexture(target, attachment, texture, level);
1875}
1876
1877inline void QOpenGLFunctions_4_3_Core::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
1878{
1879 d_3_2_Core->f.GetBufferParameteri64v(target, pname, params);
1880}
1881
1882inline void QOpenGLFunctions_4_3_Core::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
1883{
1884 d_3_2_Core->f.GetInteger64i_v(target, index, data);
1885}
1886
1887
1888// OpenGL 3.3 core functions
1889inline void QOpenGLFunctions_4_3_Core::glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
1890{
1891 d_3_3_Core->f.VertexAttribP4uiv(index, type, normalized, value);
1892}
1893
1894inline void QOpenGLFunctions_4_3_Core::glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
1895{
1896 d_3_3_Core->f.VertexAttribP4ui(index, type, normalized, value);
1897}
1898
1899inline void QOpenGLFunctions_4_3_Core::glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
1900{
1901 d_3_3_Core->f.VertexAttribP3uiv(index, type, normalized, value);
1902}
1903
1904inline void QOpenGLFunctions_4_3_Core::glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
1905{
1906 d_3_3_Core->f.VertexAttribP3ui(index, type, normalized, value);
1907}
1908
1909inline void QOpenGLFunctions_4_3_Core::glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
1910{
1911 d_3_3_Core->f.VertexAttribP2uiv(index, type, normalized, value);
1912}
1913
1914inline void QOpenGLFunctions_4_3_Core::glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
1915{
1916 d_3_3_Core->f.VertexAttribP2ui(index, type, normalized, value);
1917}
1918
1919inline void QOpenGLFunctions_4_3_Core::glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
1920{
1921 d_3_3_Core->f.VertexAttribP1uiv(index, type, normalized, value);
1922}
1923
1924inline void QOpenGLFunctions_4_3_Core::glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
1925{
1926 d_3_3_Core->f.VertexAttribP1ui(index, type, normalized, value);
1927}
1928
1929inline void QOpenGLFunctions_4_3_Core::glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)
1930{
1931 d_3_3_Core->f.GetQueryObjectui64v(id, pname, params);
1932}
1933
1934inline void QOpenGLFunctions_4_3_Core::glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)
1935{
1936 d_3_3_Core->f.GetQueryObjecti64v(id, pname, params);
1937}
1938
1939inline void QOpenGLFunctions_4_3_Core::glQueryCounter(GLuint id, GLenum target)
1940{
1941 d_3_3_Core->f.QueryCounter(id, target);
1942}
1943
1944inline void QOpenGLFunctions_4_3_Core::glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params)
1945{
1946 d_3_3_Core->f.GetSamplerParameterIuiv(sampler, pname, params);
1947}
1948
1949inline void QOpenGLFunctions_4_3_Core::glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
1950{
1951 d_3_3_Core->f.GetSamplerParameterfv(sampler, pname, params);
1952}
1953
1954inline void QOpenGLFunctions_4_3_Core::glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params)
1955{
1956 d_3_3_Core->f.GetSamplerParameterIiv(sampler, pname, params);
1957}
1958
1959inline void QOpenGLFunctions_4_3_Core::glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
1960{
1961 d_3_3_Core->f.GetSamplerParameteriv(sampler, pname, params);
1962}
1963
1964inline void QOpenGLFunctions_4_3_Core::glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)
1965{
1966 d_3_3_Core->f.SamplerParameterIuiv(sampler, pname, param);
1967}
1968
1969inline void QOpenGLFunctions_4_3_Core::glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)
1970{
1971 d_3_3_Core->f.SamplerParameterIiv(sampler, pname, param);
1972}
1973
1974inline void QOpenGLFunctions_4_3_Core::glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
1975{
1976 d_3_3_Core->f.SamplerParameterfv(sampler, pname, param);
1977}
1978
1979inline void QOpenGLFunctions_4_3_Core::glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
1980{
1981 d_3_3_Core->f.SamplerParameterf(sampler, pname, param);
1982}
1983
1984inline void QOpenGLFunctions_4_3_Core::glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
1985{
1986 d_3_3_Core->f.SamplerParameteriv(sampler, pname, param);
1987}
1988
1989inline void QOpenGLFunctions_4_3_Core::glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
1990{
1991 d_3_3_Core->f.SamplerParameteri(sampler, pname, param);
1992}
1993
1994inline void QOpenGLFunctions_4_3_Core::glBindSampler(GLuint unit, GLuint sampler)
1995{
1996 d_3_3_Core->f.BindSampler(unit, sampler);
1997}
1998
1999inline GLboolean QOpenGLFunctions_4_3_Core::glIsSampler(GLuint sampler)
2000{
2001 return d_3_3_Core->f.IsSampler(sampler);
2002}
2003
2004inline void QOpenGLFunctions_4_3_Core::glDeleteSamplers(GLsizei count, const GLuint *samplers)
2005{
2006 d_3_3_Core->f.DeleteSamplers(count, samplers);
2007}
2008
2009inline void QOpenGLFunctions_4_3_Core::glGenSamplers(GLsizei count, GLuint *samplers)
2010{
2011 d_3_3_Core->f.GenSamplers(count, samplers);
2012}
2013
2014inline GLint QOpenGLFunctions_4_3_Core::glGetFragDataIndex(GLuint program, const GLchar *name)
2015{
2016 return d_3_3_Core->f.GetFragDataIndex(program, name);
2017}
2018
2019inline void QOpenGLFunctions_4_3_Core::glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)
2020{
2021 d_3_3_Core->f.BindFragDataLocationIndexed(program, colorNumber, index, name);
2022}
2023
2024inline void QOpenGLFunctions_4_3_Core::glVertexAttribDivisor(GLuint index, GLuint divisor)
2025{
2026 d_3_3_Core->f.VertexAttribDivisor(index, divisor);
2027}
2028
2029
2030// OpenGL 4.0 core functions
2031inline void QOpenGLFunctions_4_3_Core::glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint *params)
2032{
2033 d_4_0_Core->f.GetQueryIndexediv(target, index, pname, params);
2034}
2035
2036inline void QOpenGLFunctions_4_3_Core::glEndQueryIndexed(GLenum target, GLuint index)
2037{
2038 d_4_0_Core->f.EndQueryIndexed(target, index);
2039}
2040
2041inline void QOpenGLFunctions_4_3_Core::glBeginQueryIndexed(GLenum target, GLuint index, GLuint id)
2042{
2043 d_4_0_Core->f.BeginQueryIndexed(target, index, id);
2044}
2045
2046inline void QOpenGLFunctions_4_3_Core::glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream)
2047{
2048 d_4_0_Core->f.DrawTransformFeedbackStream(mode, id, stream);
2049}
2050
2051inline void QOpenGLFunctions_4_3_Core::glDrawTransformFeedback(GLenum mode, GLuint id)
2052{
2053 d_4_0_Core->f.DrawTransformFeedback(mode, id);
2054}
2055
2056inline void QOpenGLFunctions_4_3_Core::glResumeTransformFeedback()
2057{
2058 d_4_0_Core->f.ResumeTransformFeedback();
2059}
2060
2061inline void QOpenGLFunctions_4_3_Core::glPauseTransformFeedback()
2062{
2063 d_4_0_Core->f.PauseTransformFeedback();
2064}
2065
2066inline GLboolean QOpenGLFunctions_4_3_Core::glIsTransformFeedback(GLuint id)
2067{
2068 return d_4_0_Core->f.IsTransformFeedback(id);
2069}
2070
2071inline void QOpenGLFunctions_4_3_Core::glGenTransformFeedbacks(GLsizei n, GLuint *ids)
2072{
2073 d_4_0_Core->f.GenTransformFeedbacks(n, ids);
2074}
2075
2076inline void QOpenGLFunctions_4_3_Core::glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids)
2077{
2078 d_4_0_Core->f.DeleteTransformFeedbacks(n, ids);
2079}
2080
2081inline void QOpenGLFunctions_4_3_Core::glBindTransformFeedback(GLenum target, GLuint id)
2082{
2083 d_4_0_Core->f.BindTransformFeedback(target, id);
2084}
2085
2086inline void QOpenGLFunctions_4_3_Core::glPatchParameterfv(GLenum pname, const GLfloat *values)
2087{
2088 d_4_0_Core->f.PatchParameterfv(pname, values);
2089}
2090
2091inline void QOpenGLFunctions_4_3_Core::glPatchParameteri(GLenum pname, GLint value)
2092{
2093 d_4_0_Core->f.PatchParameteri(pname, value);
2094}
2095
2096inline void QOpenGLFunctions_4_3_Core::glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint *values)
2097{
2098 d_4_0_Core->f.GetProgramStageiv(program, shadertype, pname, values);
2099}
2100
2101inline void QOpenGLFunctions_4_3_Core::glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint *params)
2102{
2103 d_4_0_Core->f.GetUniformSubroutineuiv(shadertype, location, params);
2104}
2105
2106inline void QOpenGLFunctions_4_3_Core::glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint *indices)
2107{
2108 d_4_0_Core->f.UniformSubroutinesuiv(shadertype, count, indices);
2109}
2110
2111inline void QOpenGLFunctions_4_3_Core::glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
2112{
2113 d_4_0_Core->f.GetActiveSubroutineName(program, shadertype, index, bufsize, length, name);
2114}
2115
2116inline void QOpenGLFunctions_4_3_Core::glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name)
2117{
2118 d_4_0_Core->f.GetActiveSubroutineUniformName(program, shadertype, index, bufsize, length, name);
2119}
2120
2121inline void QOpenGLFunctions_4_3_Core::glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values)
2122{
2123 d_4_0_Core->f.GetActiveSubroutineUniformiv(program, shadertype, index, pname, values);
2124}
2125
2126inline GLuint QOpenGLFunctions_4_3_Core::glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name)
2127{
2128 return d_4_0_Core->f.GetSubroutineIndex(program, shadertype, name);
2129}
2130
2131inline GLint QOpenGLFunctions_4_3_Core::glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar *name)
2132{
2133 return d_4_0_Core->f.GetSubroutineUniformLocation(program, shadertype, name);
2134}
2135
2136inline void QOpenGLFunctions_4_3_Core::glGetUniformdv(GLuint program, GLint location, GLdouble *params)
2137{
2138 d_4_0_Core->f.GetUniformdv(program, location, params);
2139}
2140
2141inline void QOpenGLFunctions_4_3_Core::glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2142{
2143 d_4_0_Core->f.UniformMatrix4x3dv(location, count, transpose, value);
2144}
2145
2146inline void QOpenGLFunctions_4_3_Core::glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2147{
2148 d_4_0_Core->f.UniformMatrix4x2dv(location, count, transpose, value);
2149}
2150
2151inline void QOpenGLFunctions_4_3_Core::glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2152{
2153 d_4_0_Core->f.UniformMatrix3x4dv(location, count, transpose, value);
2154}
2155
2156inline void QOpenGLFunctions_4_3_Core::glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2157{
2158 d_4_0_Core->f.UniformMatrix3x2dv(location, count, transpose, value);
2159}
2160
2161inline void QOpenGLFunctions_4_3_Core::glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2162{
2163 d_4_0_Core->f.UniformMatrix2x4dv(location, count, transpose, value);
2164}
2165
2166inline void QOpenGLFunctions_4_3_Core::glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2167{
2168 d_4_0_Core->f.UniformMatrix2x3dv(location, count, transpose, value);
2169}
2170
2171inline void QOpenGLFunctions_4_3_Core::glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2172{
2173 d_4_0_Core->f.UniformMatrix4dv(location, count, transpose, value);
2174}
2175
2176inline void QOpenGLFunctions_4_3_Core::glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2177{
2178 d_4_0_Core->f.UniformMatrix3dv(location, count, transpose, value);
2179}
2180
2181inline void QOpenGLFunctions_4_3_Core::glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2182{
2183 d_4_0_Core->f.UniformMatrix2dv(location, count, transpose, value);
2184}
2185
2186inline void QOpenGLFunctions_4_3_Core::glUniform4dv(GLint location, GLsizei count, const GLdouble *value)
2187{
2188 d_4_0_Core->f.Uniform4dv(location, count, value);
2189}
2190
2191inline void QOpenGLFunctions_4_3_Core::glUniform3dv(GLint location, GLsizei count, const GLdouble *value)
2192{
2193 d_4_0_Core->f.Uniform3dv(location, count, value);
2194}
2195
2196inline void QOpenGLFunctions_4_3_Core::glUniform2dv(GLint location, GLsizei count, const GLdouble *value)
2197{
2198 d_4_0_Core->f.Uniform2dv(location, count, value);
2199}
2200
2201inline void QOpenGLFunctions_4_3_Core::glUniform1dv(GLint location, GLsizei count, const GLdouble *value)
2202{
2203 d_4_0_Core->f.Uniform1dv(location, count, value);
2204}
2205
2206inline void QOpenGLFunctions_4_3_Core::glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
2207{
2208 d_4_0_Core->f.Uniform4d(location, x, y, z, w);
2209}
2210
2211inline void QOpenGLFunctions_4_3_Core::glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z)
2212{
2213 d_4_0_Core->f.Uniform3d(location, x, y, z);
2214}
2215
2216inline void QOpenGLFunctions_4_3_Core::glUniform2d(GLint location, GLdouble x, GLdouble y)
2217{
2218 d_4_0_Core->f.Uniform2d(location, x, y);
2219}
2220
2221inline void QOpenGLFunctions_4_3_Core::glUniform1d(GLint location, GLdouble x)
2222{
2223 d_4_0_Core->f.Uniform1d(location, x);
2224}
2225
2226inline void QOpenGLFunctions_4_3_Core::glDrawElementsIndirect(GLenum mode, GLenum type, const GLvoid *indirect)
2227{
2228 d_4_0_Core->f.DrawElementsIndirect(mode, type, indirect);
2229}
2230
2231inline void QOpenGLFunctions_4_3_Core::glDrawArraysIndirect(GLenum mode, const GLvoid *indirect)
2232{
2233 d_4_0_Core->f.DrawArraysIndirect(mode, indirect);
2234}
2235
2236inline void QOpenGLFunctions_4_3_Core::glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
2237{
2238 d_4_0_Core->f.BlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
2239}
2240
2241inline void QOpenGLFunctions_4_3_Core::glBlendFunci(GLuint buf, GLenum src, GLenum dst)
2242{
2243 d_4_0_Core->f.BlendFunci(buf, src, dst);
2244}
2245
2246inline void QOpenGLFunctions_4_3_Core::glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha)
2247{
2248 d_4_0_Core->f.BlendEquationSeparatei(buf, modeRGB, modeAlpha);
2249}
2250
2251inline void QOpenGLFunctions_4_3_Core::glBlendEquationi(GLuint buf, GLenum mode)
2252{
2253 d_4_0_Core->f.BlendEquationi(buf, mode);
2254}
2255
2256inline void QOpenGLFunctions_4_3_Core::glMinSampleShading(GLfloat value)
2257{
2258 d_4_0_Core->f.MinSampleShading(value);
2259}
2260
2261
2262// OpenGL 4.1 core functions
2263inline void QOpenGLFunctions_4_3_Core::glGetDoublei_v(GLenum target, GLuint index, GLdouble *data)
2264{
2265 d_4_1_Core->f.GetDoublei_v(target, index, data);
2266}
2267
2268inline void QOpenGLFunctions_4_3_Core::glGetFloati_v(GLenum target, GLuint index, GLfloat *data)
2269{
2270 d_4_1_Core->f.GetFloati_v(target, index, data);
2271}
2272
2273inline void QOpenGLFunctions_4_3_Core::glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f)
2274{
2275 d_4_1_Core->f.DepthRangeIndexed(index, n, f);
2276}
2277
2278inline void QOpenGLFunctions_4_3_Core::glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble *v)
2279{
2280 d_4_1_Core->f.DepthRangeArrayv(first, count, v);
2281}
2282
2283inline void QOpenGLFunctions_4_3_Core::glScissorIndexedv(GLuint index, const GLint *v)
2284{
2285 d_4_1_Core->f.ScissorIndexedv(index, v);
2286}
2287
2288inline void QOpenGLFunctions_4_3_Core::glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height)
2289{
2290 d_4_1_Core->f.ScissorIndexed(index, left, bottom, width, height);
2291}
2292
2293inline void QOpenGLFunctions_4_3_Core::glScissorArrayv(GLuint first, GLsizei count, const GLint *v)
2294{
2295 d_4_1_Core->f.ScissorArrayv(first, count, v);
2296}
2297
2298inline void QOpenGLFunctions_4_3_Core::glViewportIndexedfv(GLuint index, const GLfloat *v)
2299{
2300 d_4_1_Core->f.ViewportIndexedfv(index, v);
2301}
2302
2303inline void QOpenGLFunctions_4_3_Core::glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h)
2304{
2305 d_4_1_Core->f.ViewportIndexedf(index, x, y, w, h);
2306}
2307
2308inline void QOpenGLFunctions_4_3_Core::glViewportArrayv(GLuint first, GLsizei count, const GLfloat *v)
2309{
2310 d_4_1_Core->f.ViewportArrayv(first, count, v);
2311}
2312
2313inline void QOpenGLFunctions_4_3_Core::glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble *params)
2314{
2315 d_4_1_Core->f.GetVertexAttribLdv(index, pname, params);
2316}
2317
2318inline void QOpenGLFunctions_4_3_Core::glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
2319{
2320 d_4_1_Core->f.VertexAttribLPointer(index, size, type, stride, pointer);
2321}
2322
2323inline void QOpenGLFunctions_4_3_Core::glVertexAttribL4dv(GLuint index, const GLdouble *v)
2324{
2325 d_4_1_Core->f.VertexAttribL4dv(index, v);
2326}
2327
2328inline void QOpenGLFunctions_4_3_Core::glVertexAttribL3dv(GLuint index, const GLdouble *v)
2329{
2330 d_4_1_Core->f.VertexAttribL3dv(index, v);
2331}
2332
2333inline void QOpenGLFunctions_4_3_Core::glVertexAttribL2dv(GLuint index, const GLdouble *v)
2334{
2335 d_4_1_Core->f.VertexAttribL2dv(index, v);
2336}
2337
2338inline void QOpenGLFunctions_4_3_Core::glVertexAttribL1dv(GLuint index, const GLdouble *v)
2339{
2340 d_4_1_Core->f.VertexAttribL1dv(index, v);
2341}
2342
2343inline void QOpenGLFunctions_4_3_Core::glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
2344{
2345 d_4_1_Core->f.VertexAttribL4d(index, x, y, z, w);
2346}
2347
2348inline void QOpenGLFunctions_4_3_Core::glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z)
2349{
2350 d_4_1_Core->f.VertexAttribL3d(index, x, y, z);
2351}
2352
2353inline void QOpenGLFunctions_4_3_Core::glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y)
2354{
2355 d_4_1_Core->f.VertexAttribL2d(index, x, y);
2356}
2357
2358inline void QOpenGLFunctions_4_3_Core::glVertexAttribL1d(GLuint index, GLdouble x)
2359{
2360 d_4_1_Core->f.VertexAttribL1d(index, x);
2361}
2362
2363inline void QOpenGLFunctions_4_3_Core::glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
2364{
2365 d_4_1_Core->f.GetProgramPipelineInfoLog(pipeline, bufSize, length, infoLog);
2366}
2367
2368inline void QOpenGLFunctions_4_3_Core::glValidateProgramPipeline(GLuint pipeline)
2369{
2370 d_4_1_Core->f.ValidateProgramPipeline(pipeline);
2371}
2372
2373inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2374{
2375 d_4_1_Core->f.ProgramUniformMatrix4x3dv(program, location, count, transpose, value);
2376}
2377
2378inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2379{
2380 d_4_1_Core->f.ProgramUniformMatrix3x4dv(program, location, count, transpose, value);
2381}
2382
2383inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2384{
2385 d_4_1_Core->f.ProgramUniformMatrix4x2dv(program, location, count, transpose, value);
2386}
2387
2388inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2389{
2390 d_4_1_Core->f.ProgramUniformMatrix2x4dv(program, location, count, transpose, value);
2391}
2392
2393inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2394{
2395 d_4_1_Core->f.ProgramUniformMatrix3x2dv(program, location, count, transpose, value);
2396}
2397
2398inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2399{
2400 d_4_1_Core->f.ProgramUniformMatrix2x3dv(program, location, count, transpose, value);
2401}
2402
2403inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2404{
2405 d_4_1_Core->f.ProgramUniformMatrix4x3fv(program, location, count, transpose, value);
2406}
2407
2408inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2409{
2410 d_4_1_Core->f.ProgramUniformMatrix3x4fv(program, location, count, transpose, value);
2411}
2412
2413inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2414{
2415 d_4_1_Core->f.ProgramUniformMatrix4x2fv(program, location, count, transpose, value);
2416}
2417
2418inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2419{
2420 d_4_1_Core->f.ProgramUniformMatrix2x4fv(program, location, count, transpose, value);
2421}
2422
2423inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2424{
2425 d_4_1_Core->f.ProgramUniformMatrix3x2fv(program, location, count, transpose, value);
2426}
2427
2428inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2429{
2430 d_4_1_Core->f.ProgramUniformMatrix2x3fv(program, location, count, transpose, value);
2431}
2432
2433inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2434{
2435 d_4_1_Core->f.ProgramUniformMatrix4dv(program, location, count, transpose, value);
2436}
2437
2438inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2439{
2440 d_4_1_Core->f.ProgramUniformMatrix3dv(program, location, count, transpose, value);
2441}
2442
2443inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value)
2444{
2445 d_4_1_Core->f.ProgramUniformMatrix2dv(program, location, count, transpose, value);
2446}
2447
2448inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2449{
2450 d_4_1_Core->f.ProgramUniformMatrix4fv(program, location, count, transpose, value);
2451}
2452
2453inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2454{
2455 d_4_1_Core->f.ProgramUniformMatrix3fv(program, location, count, transpose, value);
2456}
2457
2458inline void QOpenGLFunctions_4_3_Core::glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
2459{
2460 d_4_1_Core->f.ProgramUniformMatrix2fv(program, location, count, transpose, value);
2461}
2462
2463inline void QOpenGLFunctions_4_3_Core::glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
2464{
2465 d_4_1_Core->f.ProgramUniform4uiv(program, location, count, value);
2466}
2467
2468inline void QOpenGLFunctions_4_3_Core::glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
2469{
2470 d_4_1_Core->f.ProgramUniform4ui(program, location, v0, v1, v2, v3);
2471}
2472
2473inline void QOpenGLFunctions_4_3_Core::glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
2474{
2475 d_4_1_Core->f.ProgramUniform4dv(program, location, count, value);
2476}
2477
2478inline void QOpenGLFunctions_4_3_Core::glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3)
2479{
2480 d_4_1_Core->f.ProgramUniform4d(program, location, v0, v1, v2, v3);
2481}
2482
2483inline void QOpenGLFunctions_4_3_Core::glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
2484{
2485 d_4_1_Core->f.ProgramUniform4fv(program, location, count, value);
2486}
2487
2488inline void QOpenGLFunctions_4_3_Core::glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
2489{
2490 d_4_1_Core->f.ProgramUniform4f(program, location, v0, v1, v2, v3);
2491}
2492
2493inline void QOpenGLFunctions_4_3_Core::glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value)
2494{
2495 d_4_1_Core->f.ProgramUniform4iv(program, location, count, value);
2496}
2497
2498inline void QOpenGLFunctions_4_3_Core::glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
2499{
2500 d_4_1_Core->f.ProgramUniform4i(program, location, v0, v1, v2, v3);
2501}
2502
2503inline void QOpenGLFunctions_4_3_Core::glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
2504{
2505 d_4_1_Core->f.ProgramUniform3uiv(program, location, count, value);
2506}
2507
2508inline void QOpenGLFunctions_4_3_Core::glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2)
2509{
2510 d_4_1_Core->f.ProgramUniform3ui(program, location, v0, v1, v2);
2511}
2512
2513inline void QOpenGLFunctions_4_3_Core::glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
2514{
2515 d_4_1_Core->f.ProgramUniform3dv(program, location, count, value);
2516}
2517
2518inline void QOpenGLFunctions_4_3_Core::glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2)
2519{
2520 d_4_1_Core->f.ProgramUniform3d(program, location, v0, v1, v2);
2521}
2522
2523inline void QOpenGLFunctions_4_3_Core::glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
2524{
2525 d_4_1_Core->f.ProgramUniform3fv(program, location, count, value);
2526}
2527
2528inline void QOpenGLFunctions_4_3_Core::glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
2529{
2530 d_4_1_Core->f.ProgramUniform3f(program, location, v0, v1, v2);
2531}
2532
2533inline void QOpenGLFunctions_4_3_Core::glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value)
2534{
2535 d_4_1_Core->f.ProgramUniform3iv(program, location, count, value);
2536}
2537
2538inline void QOpenGLFunctions_4_3_Core::glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2)
2539{
2540 d_4_1_Core->f.ProgramUniform3i(program, location, v0, v1, v2);
2541}
2542
2543inline void QOpenGLFunctions_4_3_Core::glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
2544{
2545 d_4_1_Core->f.ProgramUniform2uiv(program, location, count, value);
2546}
2547
2548inline void QOpenGLFunctions_4_3_Core::glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1)
2549{
2550 d_4_1_Core->f.ProgramUniform2ui(program, location, v0, v1);
2551}
2552
2553inline void QOpenGLFunctions_4_3_Core::glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
2554{
2555 d_4_1_Core->f.ProgramUniform2dv(program, location, count, value);
2556}
2557
2558inline void QOpenGLFunctions_4_3_Core::glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1)
2559{
2560 d_4_1_Core->f.ProgramUniform2d(program, location, v0, v1);
2561}
2562
2563inline void QOpenGLFunctions_4_3_Core::glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
2564{
2565 d_4_1_Core->f.ProgramUniform2fv(program, location, count, value);
2566}
2567
2568inline void QOpenGLFunctions_4_3_Core::glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1)
2569{
2570 d_4_1_Core->f.ProgramUniform2f(program, location, v0, v1);
2571}
2572
2573inline void QOpenGLFunctions_4_3_Core::glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value)
2574{
2575 d_4_1_Core->f.ProgramUniform2iv(program, location, count, value);
2576}
2577
2578inline void QOpenGLFunctions_4_3_Core::glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1)
2579{
2580 d_4_1_Core->f.ProgramUniform2i(program, location, v0, v1);
2581}
2582
2583inline void QOpenGLFunctions_4_3_Core::glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value)
2584{
2585 d_4_1_Core->f.ProgramUniform1uiv(program, location, count, value);
2586}
2587
2588inline void QOpenGLFunctions_4_3_Core::glProgramUniform1ui(GLuint program, GLint location, GLuint v0)
2589{
2590 d_4_1_Core->f.ProgramUniform1ui(program, location, v0);
2591}
2592
2593inline void QOpenGLFunctions_4_3_Core::glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble *value)
2594{
2595 d_4_1_Core->f.ProgramUniform1dv(program, location, count, value);
2596}
2597
2598inline void QOpenGLFunctions_4_3_Core::glProgramUniform1d(GLuint program, GLint location, GLdouble v0)
2599{
2600 d_4_1_Core->f.ProgramUniform1d(program, location, v0);
2601}
2602
2603inline void QOpenGLFunctions_4_3_Core::glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value)
2604{
2605 d_4_1_Core->f.ProgramUniform1fv(program, location, count, value);
2606}
2607
2608inline void QOpenGLFunctions_4_3_Core::glProgramUniform1f(GLuint program, GLint location, GLfloat v0)
2609{
2610 d_4_1_Core->f.ProgramUniform1f(program, location, v0);
2611}
2612
2613inline void QOpenGLFunctions_4_3_Core::glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value)
2614{
2615 d_4_1_Core->f.ProgramUniform1iv(program, location, count, value);
2616}
2617
2618inline void QOpenGLFunctions_4_3_Core::glProgramUniform1i(GLuint program, GLint location, GLint v0)
2619{
2620 d_4_1_Core->f.ProgramUniform1i(program, location, v0);
2621}
2622
2623inline void QOpenGLFunctions_4_3_Core::glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params)
2624{
2625 d_4_1_Core->f.GetProgramPipelineiv(pipeline, pname, params);
2626}
2627
2628inline GLboolean QOpenGLFunctions_4_3_Core::glIsProgramPipeline(GLuint pipeline)
2629{
2630 return d_4_1_Core->f.IsProgramPipeline(pipeline);
2631}
2632
2633inline void QOpenGLFunctions_4_3_Core::glGenProgramPipelines(GLsizei n, GLuint *pipelines)
2634{
2635 d_4_1_Core->f.GenProgramPipelines(n, pipelines);
2636}
2637
2638inline void QOpenGLFunctions_4_3_Core::glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines)
2639{
2640 d_4_1_Core->f.DeleteProgramPipelines(n, pipelines);
2641}
2642
2643inline void QOpenGLFunctions_4_3_Core::glBindProgramPipeline(GLuint pipeline)
2644{
2645 d_4_1_Core->f.BindProgramPipeline(pipeline);
2646}
2647
2648inline GLuint QOpenGLFunctions_4_3_Core::glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar* const *strings)
2649{
2650 return d_4_1_Core->f.CreateShaderProgramv(type, count, strings);
2651}
2652
2653inline void QOpenGLFunctions_4_3_Core::glActiveShaderProgram(GLuint pipeline, GLuint program)
2654{
2655 d_4_1_Core->f.ActiveShaderProgram(pipeline, program);
2656}
2657
2658inline void QOpenGLFunctions_4_3_Core::glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program)
2659{
2660 d_4_1_Core->f.UseProgramStages(pipeline, stages, program);
2661}
2662
2663inline void QOpenGLFunctions_4_3_Core::glProgramParameteri(GLuint program, GLenum pname, GLint value)
2664{
2665 d_4_1_Core->f.ProgramParameteri(program, pname, value);
2666}
2667
2668inline void QOpenGLFunctions_4_3_Core::glProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length)
2669{
2670 d_4_1_Core->f.ProgramBinary(program, binaryFormat, binary, length);
2671}
2672
2673inline void QOpenGLFunctions_4_3_Core::glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary)
2674{
2675 d_4_1_Core->f.GetProgramBinary(program, bufSize, length, binaryFormat, binary);
2676}
2677
2678inline void QOpenGLFunctions_4_3_Core::glClearDepthf(GLfloat dd)
2679{
2680 d_4_1_Core->f.ClearDepthf(dd);
2681}
2682
2683inline void QOpenGLFunctions_4_3_Core::glDepthRangef(GLfloat n, GLfloat f)
2684{
2685 d_4_1_Core->f.DepthRangef(n, f);
2686}
2687
2688inline void QOpenGLFunctions_4_3_Core::glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)
2689{
2690 d_4_1_Core->f.GetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
2691}
2692
2693inline void QOpenGLFunctions_4_3_Core::glShaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length)
2694{
2695 d_4_1_Core->f.ShaderBinary(count, shaders, binaryformat, binary, length);
2696}
2697
2698inline void QOpenGLFunctions_4_3_Core::glReleaseShaderCompiler()
2699{
2700 d_4_1_Core->f.ReleaseShaderCompiler();
2701}
2702
2703
2704// OpenGL 4.2 core functions
2705inline void QOpenGLFunctions_4_3_Core::glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth)
2706{
2707 d_4_2_Core->f.TexStorage3D(target, levels, internalformat, width, height, depth);
2708}
2709
2710inline void QOpenGLFunctions_4_3_Core::glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)
2711{
2712 d_4_2_Core->f.TexStorage2D(target, levels, internalformat, width, height);
2713}
2714
2715inline void QOpenGLFunctions_4_3_Core::glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width)
2716{
2717 d_4_2_Core->f.TexStorage1D(target, levels, internalformat, width);
2718}
2719
2720inline void QOpenGLFunctions_4_3_Core::glMemoryBarrier(GLbitfield barriers)
2721{
2722 d_4_2_Core->f.MemoryBarrier(barriers);
2723}
2724
2725inline void QOpenGLFunctions_4_3_Core::glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format)
2726{
2727 d_4_2_Core->f.BindImageTexture(unit, texture, level, layered, layer, access, format);
2728}
2729
2730inline void QOpenGLFunctions_4_3_Core::glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params)
2731{
2732 d_4_2_Core->f.GetActiveAtomicCounterBufferiv(program, bufferIndex, pname, params);
2733}
2734
2735inline void QOpenGLFunctions_4_3_Core::glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params)
2736{
2737 d_4_2_Core->f.GetInternalformativ(target, internalformat, pname, bufSize, params);
2738}
2739
2740inline void QOpenGLFunctions_4_3_Core::glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount)
2741{
2742 d_4_2_Core->f.DrawTransformFeedbackStreamInstanced(mode, id, stream, instancecount);
2743}
2744
2745inline void QOpenGLFunctions_4_3_Core::glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount)
2746{
2747 d_4_2_Core->f.DrawTransformFeedbackInstanced(mode, id, instancecount);
2748}
2749
2750inline void QOpenGLFunctions_4_3_Core::glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance)
2751{
2752 d_4_2_Core->f.DrawElementsInstancedBaseVertexBaseInstance(mode, count, type, indices, instancecount, basevertex, baseinstance);
2753}
2754
2755inline void QOpenGLFunctions_4_3_Core::glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance)
2756{
2757 d_4_2_Core->f.DrawElementsInstancedBaseInstance(mode, count, type, indices, instancecount, baseinstance);
2758}
2759
2760inline void QOpenGLFunctions_4_3_Core::glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance)
2761{
2762 d_4_2_Core->f.DrawArraysInstancedBaseInstance(mode, first, count, instancecount, baseinstance);
2763}
2764
2765
2766// OpenGL 4.3 core functions
2767inline void QOpenGLFunctions_4_3_Core::glTexStorage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
2768{
2769 d_4_3_Core->f.TexStorage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
2770}
2771
2772inline void QOpenGLFunctions_4_3_Core::glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
2773{
2774 d_4_3_Core->f.TexStorage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
2775}
2776
2777inline void QOpenGLFunctions_4_3_Core::glTexBufferRange(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size)
2778{
2779 d_4_3_Core->f.TexBufferRange(target, internalformat, buffer, offset, size);
2780}
2781
2782inline void QOpenGLFunctions_4_3_Core::glShaderStorageBlockBinding(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding)
2783{
2784 d_4_3_Core->f.ShaderStorageBlockBinding(program, storageBlockIndex, storageBlockBinding);
2785}
2786
2787inline GLint QOpenGLFunctions_4_3_Core::glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface, const GLchar *name)
2788{
2789 return d_4_3_Core->f.GetProgramResourceLocationIndex(program, programInterface, name);
2790}
2791
2792inline GLint QOpenGLFunctions_4_3_Core::glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar *name)
2793{
2794 return d_4_3_Core->f.GetProgramResourceLocation(program, programInterface, name);
2795}
2796
2797inline void QOpenGLFunctions_4_3_Core::glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei bufSize, GLsizei *length, GLint *params)
2798{
2799 d_4_3_Core->f.GetProgramResourceiv(program, programInterface, index, propCount, props, bufSize, length, params);
2800}
2801
2802inline void QOpenGLFunctions_4_3_Core::glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name)
2803{
2804 d_4_3_Core->f.GetProgramResourceName(program, programInterface, index, bufSize, length, name);
2805}
2806
2807inline GLuint QOpenGLFunctions_4_3_Core::glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name)
2808{
2809 return d_4_3_Core->f.GetProgramResourceIndex(program, programInterface, name);
2810}
2811
2812inline void QOpenGLFunctions_4_3_Core::glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint *params)
2813{
2814 d_4_3_Core->f.GetProgramInterfaceiv(program, programInterface, pname, params);
2815}
2816
2817inline void QOpenGLFunctions_4_3_Core::glMultiDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride)
2818{
2819 d_4_3_Core->f.MultiDrawElementsIndirect(mode, type, indirect, drawcount, stride);
2820}
2821
2822inline void QOpenGLFunctions_4_3_Core::glMultiDrawArraysIndirect(GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride)
2823{
2824 d_4_3_Core->f.MultiDrawArraysIndirect(mode, indirect, drawcount, stride);
2825}
2826
2827inline void QOpenGLFunctions_4_3_Core::glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height)
2828{
2829 d_4_3_Core->f.InvalidateSubFramebuffer(target, numAttachments, attachments, x, y, width, height);
2830}
2831
2832inline void QOpenGLFunctions_4_3_Core::glInvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments)
2833{
2834 d_4_3_Core->f.InvalidateFramebuffer(target, numAttachments, attachments);
2835}
2836
2837inline void QOpenGLFunctions_4_3_Core::glInvalidateBufferData(GLuint buffer)
2838{
2839 d_4_3_Core->f.InvalidateBufferData(buffer);
2840}
2841
2842inline void QOpenGLFunctions_4_3_Core::glInvalidateBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr length)
2843{
2844 d_4_3_Core->f.InvalidateBufferSubData(buffer, offset, length);
2845}
2846
2847inline void QOpenGLFunctions_4_3_Core::glInvalidateTexImage(GLuint texture, GLint level)
2848{
2849 d_4_3_Core->f.InvalidateTexImage(texture, level);
2850}
2851
2852inline void QOpenGLFunctions_4_3_Core::glInvalidateTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth)
2853{
2854 d_4_3_Core->f.InvalidateTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth);
2855}
2856
2857inline void QOpenGLFunctions_4_3_Core::glGetInternalformati64v(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 *params)
2858{
2859 d_4_3_Core->f.GetInternalformati64v(target, internalformat, pname, bufSize, params);
2860}
2861
2862inline void QOpenGLFunctions_4_3_Core::glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params)
2863{
2864 d_4_3_Core->f.GetFramebufferParameteriv(target, pname, params);
2865}
2866
2867inline void QOpenGLFunctions_4_3_Core::glFramebufferParameteri(GLenum target, GLenum pname, GLint param)
2868{
2869 d_4_3_Core->f.FramebufferParameteri(target, pname, param);
2870}
2871
2872inline void QOpenGLFunctions_4_3_Core::glVertexBindingDivisor(GLuint bindingindex, GLuint divisor)
2873{
2874 d_4_3_Core->f.VertexBindingDivisor(bindingindex, divisor);
2875}
2876
2877inline void QOpenGLFunctions_4_3_Core::glVertexAttribBinding(GLuint attribindex, GLuint bindingindex)
2878{
2879 d_4_3_Core->f.VertexAttribBinding(attribindex, bindingindex);
2880}
2881
2882inline void QOpenGLFunctions_4_3_Core::glVertexAttribLFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)
2883{
2884 d_4_3_Core->f.VertexAttribLFormat(attribindex, size, type, relativeoffset);
2885}
2886
2887inline void QOpenGLFunctions_4_3_Core::glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)
2888{
2889 d_4_3_Core->f.VertexAttribIFormat(attribindex, size, type, relativeoffset);
2890}
2891
2892inline void QOpenGLFunctions_4_3_Core::glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset)
2893{
2894 d_4_3_Core->f.VertexAttribFormat(attribindex, size, type, normalized, relativeoffset);
2895}
2896
2897inline void QOpenGLFunctions_4_3_Core::glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride)
2898{
2899 d_4_3_Core->f.BindVertexBuffer(bindingindex, buffer, offset, stride);
2900}
2901
2902inline void QOpenGLFunctions_4_3_Core::glTextureView(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers)
2903{
2904 d_4_3_Core->f.TextureView(texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers);
2905}
2906
2907inline void QOpenGLFunctions_4_3_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)
2908{
2909 d_4_3_Core->f.CopyImageSubData(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth);
2910}
2911
2912inline void QOpenGLFunctions_4_3_Core::glDispatchComputeIndirect(GLintptr indirect)
2913{
2914 d_4_3_Core->f.DispatchComputeIndirect(indirect);
2915}
2916
2917inline void QOpenGLFunctions_4_3_Core::glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z)
2918{
2919 d_4_3_Core->f.DispatchCompute(num_groups_x, num_groups_y, num_groups_z);
2920}
2921
2922inline void QOpenGLFunctions_4_3_Core::glClearBufferSubData(GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data)
2923{
2924 d_4_3_Core->f.ClearBufferSubData(target, internalformat, offset, size, format, type, data);
2925}
2926
2927inline void QOpenGLFunctions_4_3_Core::glClearBufferData(GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data)
2928{
2929 d_4_3_Core->f.ClearBufferData(target, internalformat, format, type, data);
2930}
2931
2932
2933
2934QT_END_NAMESPACE
2935
2936#ifdef Q_OS_WIN
2937#pragma pop_macro("MemoryBarrier")
2938#endif
2939
2940#endif // QT_NO_OPENGL && !QT_CONFIG(opengles2)
2941
2942#endif
2943

source code of qtbase/src/opengl/qopenglfunctions_4_3_core.h