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