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_3_3_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_3_3_CORE_H
17#define QOPENGLVERSIONFUNCTIONS_3_3_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_3_3_Core : public QAbstractOpenGLFunctions
30{
31public:
32 QOpenGLFunctions_3_3_Core();
33 ~QOpenGLFunctions_3_3_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
349private:
350 friend class QOpenGLVersionFunctionsFactory;
351
352 static bool isContextCompatible(QOpenGLContext *context);
353 static QOpenGLVersionProfile versionProfile();
354
355 QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
356 QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
357 QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
358 QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
359 QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
360 QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
361 QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
362 QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
363 QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
364 QOpenGLFunctions_3_1_CoreBackend* d_3_1_Core;
365 QOpenGLFunctions_3_2_CoreBackend* d_3_2_Core;
366 QOpenGLFunctions_3_3_CoreBackend* d_3_3_Core;
367};
368
369// OpenGL 1.0 core functions
370inline void QOpenGLFunctions_3_3_Core::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
371{
372 d_1_0_Core->f.Viewport(x, y, width, height);
373}
374
375inline void QOpenGLFunctions_3_3_Core::glDepthRange(GLdouble nearVal, GLdouble farVal)
376{
377 d_1_0_Core->f.DepthRange(nearVal, farVal);
378}
379
380inline GLboolean QOpenGLFunctions_3_3_Core::glIsEnabled(GLenum cap)
381{
382 return d_1_0_Core->f.IsEnabled(cap);
383}
384
385inline void QOpenGLFunctions_3_3_Core::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
386{
387 d_1_0_Core->f.GetTexLevelParameteriv(target, level, pname, params);
388}
389
390inline void QOpenGLFunctions_3_3_Core::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
391{
392 d_1_0_Core->f.GetTexLevelParameterfv(target, level, pname, params);
393}
394
395inline void QOpenGLFunctions_3_3_Core::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
396{
397 d_1_0_Core->f.GetTexParameteriv(target, pname, params);
398}
399
400inline void QOpenGLFunctions_3_3_Core::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
401{
402 d_1_0_Core->f.GetTexParameterfv(target, pname, params);
403}
404
405inline void QOpenGLFunctions_3_3_Core::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
406{
407 d_1_0_Core->f.GetTexImage(target, level, format, type, pixels);
408}
409
410inline const GLubyte * QOpenGLFunctions_3_3_Core::glGetString(GLenum name)
411{
412 return d_1_0_Core->f.GetString(name);
413}
414
415inline void QOpenGLFunctions_3_3_Core::glGetIntegerv(GLenum pname, GLint *params)
416{
417 d_1_0_Core->f.GetIntegerv(pname, params);
418}
419
420inline void QOpenGLFunctions_3_3_Core::glGetFloatv(GLenum pname, GLfloat *params)
421{
422 d_1_0_Core->f.GetFloatv(pname, params);
423}
424
425inline GLenum QOpenGLFunctions_3_3_Core::glGetError()
426{
427 return d_1_0_Core->f.GetError();
428}
429
430inline void QOpenGLFunctions_3_3_Core::glGetDoublev(GLenum pname, GLdouble *params)
431{
432 d_1_0_Core->f.GetDoublev(pname, params);
433}
434
435inline void QOpenGLFunctions_3_3_Core::glGetBooleanv(GLenum pname, GLboolean *params)
436{
437 d_1_0_Core->f.GetBooleanv(pname, params);
438}
439
440inline void QOpenGLFunctions_3_3_Core::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
441{
442 d_1_0_Core->f.ReadPixels(x, y, width, height, format, type, pixels);
443}
444
445inline void QOpenGLFunctions_3_3_Core::glReadBuffer(GLenum mode)
446{
447 d_1_0_Core->f.ReadBuffer(mode);
448}
449
450inline void QOpenGLFunctions_3_3_Core::glPixelStorei(GLenum pname, GLint param)
451{
452 d_1_0_Core->f.PixelStorei(pname, param);
453}
454
455inline void QOpenGLFunctions_3_3_Core::glPixelStoref(GLenum pname, GLfloat param)
456{
457 d_1_0_Core->f.PixelStoref(pname, param);
458}
459
460inline void QOpenGLFunctions_3_3_Core::glDepthFunc(GLenum func)
461{
462 d_1_0_Core->f.DepthFunc(func);
463}
464
465inline void QOpenGLFunctions_3_3_Core::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
466{
467 d_1_0_Core->f.StencilOp(fail, zfail, zpass);
468}
469
470inline void QOpenGLFunctions_3_3_Core::glStencilFunc(GLenum func, GLint ref, GLuint mask)
471{
472 d_1_0_Core->f.StencilFunc(func, ref, mask);
473}
474
475inline void QOpenGLFunctions_3_3_Core::glLogicOp(GLenum opcode)
476{
477 d_1_0_Core->f.LogicOp(opcode);
478}
479
480inline void QOpenGLFunctions_3_3_Core::glBlendFunc(GLenum sfactor, GLenum dfactor)
481{
482 d_1_0_Core->f.BlendFunc(sfactor, dfactor);
483}
484
485inline void QOpenGLFunctions_3_3_Core::glFlush()
486{
487 d_1_0_Core->f.Flush();
488}
489
490inline void QOpenGLFunctions_3_3_Core::glFinish()
491{
492 d_1_0_Core->f.Finish();
493}
494
495inline void QOpenGLFunctions_3_3_Core::glEnable(GLenum cap)
496{
497 d_1_0_Core->f.Enable(cap);
498}
499
500inline void QOpenGLFunctions_3_3_Core::glDisable(GLenum cap)
501{
502 d_1_0_Core->f.Disable(cap);
503}
504
505inline void QOpenGLFunctions_3_3_Core::glDepthMask(GLboolean flag)
506{
507 d_1_0_Core->f.DepthMask(flag);
508}
509
510inline void QOpenGLFunctions_3_3_Core::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
511{
512 d_1_0_Core->f.ColorMask(red, green, blue, alpha);
513}
514
515inline void QOpenGLFunctions_3_3_Core::glStencilMask(GLuint mask)
516{
517 d_1_0_Core->f.StencilMask(mask);
518}
519
520inline void QOpenGLFunctions_3_3_Core::glClearDepth(GLdouble depth)
521{
522 d_1_0_Core->f.ClearDepth(depth);
523}
524
525inline void QOpenGLFunctions_3_3_Core::glClearStencil(GLint s)
526{
527 d_1_0_Core->f.ClearStencil(s);
528}
529
530inline void QOpenGLFunctions_3_3_Core::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
531{
532 d_1_0_Core->f.ClearColor(red, green, blue, alpha);
533}
534
535inline void QOpenGLFunctions_3_3_Core::glClear(GLbitfield mask)
536{
537 d_1_0_Core->f.Clear(mask);
538}
539
540inline void QOpenGLFunctions_3_3_Core::glDrawBuffer(GLenum mode)
541{
542 d_1_0_Core->f.DrawBuffer(mode);
543}
544
545inline void QOpenGLFunctions_3_3_Core::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
546{
547 d_1_0_Core->f.TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
548}
549
550inline void QOpenGLFunctions_3_3_Core::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
551{
552 d_1_0_Core->f.TexImage1D(target, level, internalformat, width, border, format, type, pixels);
553}
554
555inline void QOpenGLFunctions_3_3_Core::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
556{
557 d_1_0_Core->f.TexParameteriv(target, pname, params);
558}
559
560inline void QOpenGLFunctions_3_3_Core::glTexParameteri(GLenum target, GLenum pname, GLint param)
561{
562 d_1_0_Core->f.TexParameteri(target, pname, param);
563}
564
565inline void QOpenGLFunctions_3_3_Core::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
566{
567 d_1_0_Core->f.TexParameterfv(target, pname, params);
568}
569
570inline void QOpenGLFunctions_3_3_Core::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
571{
572 d_1_0_Core->f.TexParameterf(target, pname, param);
573}
574
575inline void QOpenGLFunctions_3_3_Core::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
576{
577 d_1_0_Core->f.Scissor(x, y, width, height);
578}
579
580inline void QOpenGLFunctions_3_3_Core::glPolygonMode(GLenum face, GLenum mode)
581{
582 d_1_0_Core->f.PolygonMode(face, mode);
583}
584
585inline void QOpenGLFunctions_3_3_Core::glPointSize(GLfloat size)
586{
587 d_1_0_Core->f.PointSize(size);
588}
589
590inline void QOpenGLFunctions_3_3_Core::glLineWidth(GLfloat width)
591{
592 d_1_0_Core->f.LineWidth(width);
593}
594
595inline void QOpenGLFunctions_3_3_Core::glHint(GLenum target, GLenum mode)
596{
597 d_1_0_Core->f.Hint(target, mode);
598}
599
600inline void QOpenGLFunctions_3_3_Core::glFrontFace(GLenum mode)
601{
602 d_1_0_Core->f.FrontFace(mode);
603}
604
605inline void QOpenGLFunctions_3_3_Core::glCullFace(GLenum mode)
606{
607 d_1_0_Core->f.CullFace(mode);
608}
609
610
611// OpenGL 1.1 core functions
612inline GLboolean QOpenGLFunctions_3_3_Core::glIsTexture(GLuint texture)
613{
614 return d_1_1_Core->f.IsTexture(texture);
615}
616
617inline void QOpenGLFunctions_3_3_Core::glGenTextures(GLsizei n, GLuint *textures)
618{
619 d_1_1_Core->f.GenTextures(n, textures);
620}
621
622inline void QOpenGLFunctions_3_3_Core::glDeleteTextures(GLsizei n, const GLuint *textures)
623{
624 d_1_1_Core->f.DeleteTextures(n, textures);
625}
626
627inline void QOpenGLFunctions_3_3_Core::glBindTexture(GLenum target, GLuint texture)
628{
629 d_1_1_Core->f.BindTexture(target, texture);
630}
631
632inline void QOpenGLFunctions_3_3_Core::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
633{
634 d_1_1_Core->f.TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
635}
636
637inline void QOpenGLFunctions_3_3_Core::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
638{
639 d_1_1_Core->f.TexSubImage1D(target, level, xoffset, width, format, type, pixels);
640}
641
642inline void QOpenGLFunctions_3_3_Core::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
643{
644 d_1_1_Core->f.CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
645}
646
647inline void QOpenGLFunctions_3_3_Core::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
648{
649 d_1_1_Core->f.CopyTexSubImage1D(target, level, xoffset, x, y, width);
650}
651
652inline void QOpenGLFunctions_3_3_Core::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
653{
654 d_1_1_Core->f.CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
655}
656
657inline void QOpenGLFunctions_3_3_Core::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
658{
659 d_1_1_Core->f.CopyTexImage1D(target, level, internalformat, x, y, width, border);
660}
661
662inline void QOpenGLFunctions_3_3_Core::glPolygonOffset(GLfloat factor, GLfloat units)
663{
664 d_1_1_Core->f.PolygonOffset(factor, units);
665}
666
667inline void QOpenGLFunctions_3_3_Core::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
668{
669 d_1_1_Core->f.DrawElements(mode, count, type, indices);
670}
671
672inline void QOpenGLFunctions_3_3_Core::glDrawArrays(GLenum mode, GLint first, GLsizei count)
673{
674 d_1_1_Core->f.DrawArrays(mode, first, count);
675}
676
677
678// OpenGL 1.2 core functions
679inline void QOpenGLFunctions_3_3_Core::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
680{
681 d_1_2_Core->f.CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
682}
683
684inline void QOpenGLFunctions_3_3_Core::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
685{
686 d_1_2_Core->f.TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
687}
688
689inline void QOpenGLFunctions_3_3_Core::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
690{
691 d_1_2_Core->f.TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
692}
693
694inline void QOpenGLFunctions_3_3_Core::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
695{
696 d_1_2_Core->f.DrawRangeElements(mode, start, end, count, type, indices);
697}
698
699inline void QOpenGLFunctions_3_3_Core::glBlendEquation(GLenum mode)
700{
701 d_1_2_Core->f.BlendEquation(mode);
702}
703
704inline void QOpenGLFunctions_3_3_Core::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
705{
706 d_1_2_Core->f.BlendColor(red, green, blue, alpha);
707}
708
709
710// OpenGL 1.3 core functions
711inline void QOpenGLFunctions_3_3_Core::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
712{
713 d_1_3_Core->f.GetCompressedTexImage(target, level, img);
714}
715
716inline void QOpenGLFunctions_3_3_Core::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
717{
718 d_1_3_Core->f.CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
719}
720
721inline void QOpenGLFunctions_3_3_Core::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
722{
723 d_1_3_Core->f.CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
724}
725
726inline void QOpenGLFunctions_3_3_Core::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
727{
728 d_1_3_Core->f.CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
729}
730
731inline void QOpenGLFunctions_3_3_Core::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
732{
733 d_1_3_Core->f.CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
734}
735
736inline void QOpenGLFunctions_3_3_Core::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
737{
738 d_1_3_Core->f.CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
739}
740
741inline void QOpenGLFunctions_3_3_Core::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
742{
743 d_1_3_Core->f.CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
744}
745
746inline void QOpenGLFunctions_3_3_Core::glSampleCoverage(GLfloat value, GLboolean invert)
747{
748 d_1_3_Core->f.SampleCoverage(value, invert);
749}
750
751inline void QOpenGLFunctions_3_3_Core::glActiveTexture(GLenum texture)
752{
753 d_1_3_Core->f.ActiveTexture(texture);
754}
755
756
757// OpenGL 1.4 core functions
758inline void QOpenGLFunctions_3_3_Core::glPointParameteriv(GLenum pname, const GLint *params)
759{
760 d_1_4_Core->f.PointParameteriv(pname, params);
761}
762
763inline void QOpenGLFunctions_3_3_Core::glPointParameteri(GLenum pname, GLint param)
764{
765 d_1_4_Core->f.PointParameteri(pname, param);
766}
767
768inline void QOpenGLFunctions_3_3_Core::glPointParameterfv(GLenum pname, const GLfloat *params)
769{
770 d_1_4_Core->f.PointParameterfv(pname, params);
771}
772
773inline void QOpenGLFunctions_3_3_Core::glPointParameterf(GLenum pname, GLfloat param)
774{
775 d_1_4_Core->f.PointParameterf(pname, param);
776}
777
778inline void QOpenGLFunctions_3_3_Core::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
779{
780 d_1_4_Core->f.MultiDrawElements(mode, count, type, indices, drawcount);
781}
782
783inline void QOpenGLFunctions_3_3_Core::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
784{
785 d_1_4_Core->f.MultiDrawArrays(mode, first, count, drawcount);
786}
787
788inline void QOpenGLFunctions_3_3_Core::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
789{
790 d_1_4_Core->f.BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
791}
792
793
794// OpenGL 1.5 core functions
795inline void QOpenGLFunctions_3_3_Core::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
796{
797 d_1_5_Core->f.GetBufferPointerv(target, pname, params);
798}
799
800inline void QOpenGLFunctions_3_3_Core::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
801{
802 d_1_5_Core->f.GetBufferParameteriv(target, pname, params);
803}
804
805inline GLboolean QOpenGLFunctions_3_3_Core::glUnmapBuffer(GLenum target)
806{
807 return d_1_5_Core->f.UnmapBuffer(target);
808}
809
810inline GLvoid* QOpenGLFunctions_3_3_Core::glMapBuffer(GLenum target, GLenum access)
811{
812 return d_1_5_Core->f.MapBuffer(target, access);
813}
814
815inline void QOpenGLFunctions_3_3_Core::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
816{
817 d_1_5_Core->f.GetBufferSubData(target, offset, size, data);
818}
819
820inline void QOpenGLFunctions_3_3_Core::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
821{
822 d_1_5_Core->f.BufferSubData(target, offset, size, data);
823}
824
825inline void QOpenGLFunctions_3_3_Core::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
826{
827 d_1_5_Core->f.BufferData(target, size, data, usage);
828}
829
830inline GLboolean QOpenGLFunctions_3_3_Core::glIsBuffer(GLuint buffer)
831{
832 return d_1_5_Core->f.IsBuffer(buffer);
833}
834
835inline void QOpenGLFunctions_3_3_Core::glGenBuffers(GLsizei n, GLuint *buffers)
836{
837 d_1_5_Core->f.GenBuffers(n, buffers);
838}
839
840inline void QOpenGLFunctions_3_3_Core::glDeleteBuffers(GLsizei n, const GLuint *buffers)
841{
842 d_1_5_Core->f.DeleteBuffers(n, buffers);
843}
844
845inline void QOpenGLFunctions_3_3_Core::glBindBuffer(GLenum target, GLuint buffer)
846{
847 d_1_5_Core->f.BindBuffer(target, buffer);
848}
849
850inline void QOpenGLFunctions_3_3_Core::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
851{
852 d_1_5_Core->f.GetQueryObjectuiv(id, pname, params);
853}
854
855inline void QOpenGLFunctions_3_3_Core::glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
856{
857 d_1_5_Core->f.GetQueryObjectiv(id, pname, params);
858}
859
860inline void QOpenGLFunctions_3_3_Core::glGetQueryiv(GLenum target, GLenum pname, GLint *params)
861{
862 d_1_5_Core->f.GetQueryiv(target, pname, params);
863}
864
865inline void QOpenGLFunctions_3_3_Core::glEndQuery(GLenum target)
866{
867 d_1_5_Core->f.EndQuery(target);
868}
869
870inline void QOpenGLFunctions_3_3_Core::glBeginQuery(GLenum target, GLuint id)
871{
872 d_1_5_Core->f.BeginQuery(target, id);
873}
874
875inline GLboolean QOpenGLFunctions_3_3_Core::glIsQuery(GLuint id)
876{
877 return d_1_5_Core->f.IsQuery(id);
878}
879
880inline void QOpenGLFunctions_3_3_Core::glDeleteQueries(GLsizei n, const GLuint *ids)
881{
882 d_1_5_Core->f.DeleteQueries(n, ids);
883}
884
885inline void QOpenGLFunctions_3_3_Core::glGenQueries(GLsizei n, GLuint *ids)
886{
887 d_1_5_Core->f.GenQueries(n, ids);
888}
889
890
891// OpenGL 2.0 core functions
892inline void QOpenGLFunctions_3_3_Core::glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer)
893{
894 d_2_0_Core->f.VertexAttribPointer(index, size, type, normalized, stride, pointer);
895}
896
897inline void QOpenGLFunctions_3_3_Core::glValidateProgram(GLuint program)
898{
899 d_2_0_Core->f.ValidateProgram(program);
900}
901
902inline void QOpenGLFunctions_3_3_Core::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
903{
904 d_2_0_Core->f.UniformMatrix4fv(location, count, transpose, value);
905}
906
907inline void QOpenGLFunctions_3_3_Core::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
908{
909 d_2_0_Core->f.UniformMatrix3fv(location, count, transpose, value);
910}
911
912inline void QOpenGLFunctions_3_3_Core::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
913{
914 d_2_0_Core->f.UniformMatrix2fv(location, count, transpose, value);
915}
916
917inline void QOpenGLFunctions_3_3_Core::glUniform4iv(GLint location, GLsizei count, const GLint *value)
918{
919 d_2_0_Core->f.Uniform4iv(location, count, value);
920}
921
922inline void QOpenGLFunctions_3_3_Core::glUniform3iv(GLint location, GLsizei count, const GLint *value)
923{
924 d_2_0_Core->f.Uniform3iv(location, count, value);
925}
926
927inline void QOpenGLFunctions_3_3_Core::glUniform2iv(GLint location, GLsizei count, const GLint *value)
928{
929 d_2_0_Core->f.Uniform2iv(location, count, value);
930}
931
932inline void QOpenGLFunctions_3_3_Core::glUniform1iv(GLint location, GLsizei count, const GLint *value)
933{
934 d_2_0_Core->f.Uniform1iv(location, count, value);
935}
936
937inline void QOpenGLFunctions_3_3_Core::glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
938{
939 d_2_0_Core->f.Uniform4fv(location, count, value);
940}
941
942inline void QOpenGLFunctions_3_3_Core::glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
943{
944 d_2_0_Core->f.Uniform3fv(location, count, value);
945}
946
947inline void QOpenGLFunctions_3_3_Core::glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
948{
949 d_2_0_Core->f.Uniform2fv(location, count, value);
950}
951
952inline void QOpenGLFunctions_3_3_Core::glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
953{
954 d_2_0_Core->f.Uniform1fv(location, count, value);
955}
956
957inline void QOpenGLFunctions_3_3_Core::glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
958{
959 d_2_0_Core->f.Uniform4i(location, v0, v1, v2, v3);
960}
961
962inline void QOpenGLFunctions_3_3_Core::glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
963{
964 d_2_0_Core->f.Uniform3i(location, v0, v1, v2);
965}
966
967inline void QOpenGLFunctions_3_3_Core::glUniform2i(GLint location, GLint v0, GLint v1)
968{
969 d_2_0_Core->f.Uniform2i(location, v0, v1);
970}
971
972inline void QOpenGLFunctions_3_3_Core::glUniform1i(GLint location, GLint v0)
973{
974 d_2_0_Core->f.Uniform1i(location, v0);
975}
976
977inline void QOpenGLFunctions_3_3_Core::glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
978{
979 d_2_0_Core->f.Uniform4f(location, v0, v1, v2, v3);
980}
981
982inline void QOpenGLFunctions_3_3_Core::glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
983{
984 d_2_0_Core->f.Uniform3f(location, v0, v1, v2);
985}
986
987inline void QOpenGLFunctions_3_3_Core::glUniform2f(GLint location, GLfloat v0, GLfloat v1)
988{
989 d_2_0_Core->f.Uniform2f(location, v0, v1);
990}
991
992inline void QOpenGLFunctions_3_3_Core::glUniform1f(GLint location, GLfloat v0)
993{
994 d_2_0_Core->f.Uniform1f(location, v0);
995}
996
997inline void QOpenGLFunctions_3_3_Core::glUseProgram(GLuint program)
998{
999 d_2_0_Core->f.UseProgram(program);
1000}
1001
1002inline void QOpenGLFunctions_3_3_Core::glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length)
1003{
1004 d_2_0_Core->f.ShaderSource(shader, count, string, length);
1005}
1006
1007inline void QOpenGLFunctions_3_3_Core::glLinkProgram(GLuint program)
1008{
1009 d_2_0_Core->f.LinkProgram(program);
1010}
1011
1012inline GLboolean QOpenGLFunctions_3_3_Core::glIsShader(GLuint shader)
1013{
1014 return d_2_0_Core->f.IsShader(shader);
1015}
1016
1017inline GLboolean QOpenGLFunctions_3_3_Core::glIsProgram(GLuint program)
1018{
1019 return d_2_0_Core->f.IsProgram(program);
1020}
1021
1022inline void QOpenGLFunctions_3_3_Core::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer)
1023{
1024 d_2_0_Core->f.GetVertexAttribPointerv(index, pname, pointer);
1025}
1026
1027inline void QOpenGLFunctions_3_3_Core::glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
1028{
1029 d_2_0_Core->f.GetVertexAttribiv(index, pname, params);
1030}
1031
1032inline void QOpenGLFunctions_3_3_Core::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
1033{
1034 d_2_0_Core->f.GetVertexAttribfv(index, pname, params);
1035}
1036
1037inline void QOpenGLFunctions_3_3_Core::glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params)
1038{
1039 d_2_0_Core->f.GetVertexAttribdv(index, pname, params);
1040}
1041
1042inline void QOpenGLFunctions_3_3_Core::glGetUniformiv(GLuint program, GLint location, GLint *params)
1043{
1044 d_2_0_Core->f.GetUniformiv(program, location, params);
1045}
1046
1047inline void QOpenGLFunctions_3_3_Core::glGetUniformfv(GLuint program, GLint location, GLfloat *params)
1048{
1049 d_2_0_Core->f.GetUniformfv(program, location, params);
1050}
1051
1052inline GLint QOpenGLFunctions_3_3_Core::glGetUniformLocation(GLuint program, const GLchar *name)
1053{
1054 return d_2_0_Core->f.GetUniformLocation(program, name);
1055}
1056
1057inline void QOpenGLFunctions_3_3_Core::glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
1058{
1059 d_2_0_Core->f.GetShaderSource(shader, bufSize, length, source);
1060}
1061
1062inline void QOpenGLFunctions_3_3_Core::glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
1063{
1064 d_2_0_Core->f.GetShaderInfoLog(shader, bufSize, length, infoLog);
1065}
1066
1067inline void QOpenGLFunctions_3_3_Core::glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
1068{
1069 d_2_0_Core->f.GetShaderiv(shader, pname, params);
1070}
1071
1072inline void QOpenGLFunctions_3_3_Core::glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
1073{
1074 d_2_0_Core->f.GetProgramInfoLog(program, bufSize, length, infoLog);
1075}
1076
1077inline void QOpenGLFunctions_3_3_Core::glGetProgramiv(GLuint program, GLenum pname, GLint *params)
1078{
1079 d_2_0_Core->f.GetProgramiv(program, pname, params);
1080}
1081
1082inline GLint QOpenGLFunctions_3_3_Core::glGetAttribLocation(GLuint program, const GLchar *name)
1083{
1084 return d_2_0_Core->f.GetAttribLocation(program, name);
1085}
1086
1087inline void QOpenGLFunctions_3_3_Core::glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj)
1088{
1089 d_2_0_Core->f.GetAttachedShaders(program, maxCount, count, obj);
1090}
1091
1092inline void QOpenGLFunctions_3_3_Core::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
1093{
1094 d_2_0_Core->f.GetActiveUniform(program, index, bufSize, length, size, type, name);
1095}
1096
1097inline void QOpenGLFunctions_3_3_Core::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name)
1098{
1099 d_2_0_Core->f.GetActiveAttrib(program, index, bufSize, length, size, type, name);
1100}
1101
1102inline void QOpenGLFunctions_3_3_Core::glEnableVertexAttribArray(GLuint index)
1103{
1104 d_2_0_Core->f.EnableVertexAttribArray(index);
1105}
1106
1107inline void QOpenGLFunctions_3_3_Core::glDisableVertexAttribArray(GLuint index)
1108{
1109 d_2_0_Core->f.DisableVertexAttribArray(index);
1110}
1111
1112inline void QOpenGLFunctions_3_3_Core::glDetachShader(GLuint program, GLuint shader)
1113{
1114 d_2_0_Core->f.DetachShader(program, shader);
1115}
1116
1117inline void QOpenGLFunctions_3_3_Core::glDeleteShader(GLuint shader)
1118{
1119 d_2_0_Core->f.DeleteShader(shader);
1120}
1121
1122inline void QOpenGLFunctions_3_3_Core::glDeleteProgram(GLuint program)
1123{
1124 d_2_0_Core->f.DeleteProgram(program);
1125}
1126
1127inline GLuint QOpenGLFunctions_3_3_Core::glCreateShader(GLenum type)
1128{
1129 return d_2_0_Core->f.CreateShader(type);
1130}
1131
1132inline GLuint QOpenGLFunctions_3_3_Core::glCreateProgram()
1133{
1134 return d_2_0_Core->f.CreateProgram();
1135}
1136
1137inline void QOpenGLFunctions_3_3_Core::glCompileShader(GLuint shader)
1138{
1139 d_2_0_Core->f.CompileShader(shader);
1140}
1141
1142inline void QOpenGLFunctions_3_3_Core::glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
1143{
1144 d_2_0_Core->f.BindAttribLocation(program, index, name);
1145}
1146
1147inline void QOpenGLFunctions_3_3_Core::glAttachShader(GLuint program, GLuint shader)
1148{
1149 d_2_0_Core->f.AttachShader(program, shader);
1150}
1151
1152inline void QOpenGLFunctions_3_3_Core::glStencilMaskSeparate(GLenum face, GLuint mask)
1153{
1154 d_2_0_Core->f.StencilMaskSeparate(face, mask);
1155}
1156
1157inline void QOpenGLFunctions_3_3_Core::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
1158{
1159 d_2_0_Core->f.StencilFuncSeparate(face, func, ref, mask);
1160}
1161
1162inline void QOpenGLFunctions_3_3_Core::glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
1163{
1164 d_2_0_Core->f.StencilOpSeparate(face, sfail, dpfail, dppass);
1165}
1166
1167inline void QOpenGLFunctions_3_3_Core::glDrawBuffers(GLsizei n, const GLenum *bufs)
1168{
1169 d_2_0_Core->f.DrawBuffers(n, bufs);
1170}
1171
1172inline void QOpenGLFunctions_3_3_Core::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
1173{
1174 d_2_0_Core->f.BlendEquationSeparate(modeRGB, modeAlpha);
1175}
1176
1177
1178// OpenGL 2.1 core functions
1179inline void QOpenGLFunctions_3_3_Core::glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1180{
1181 d_2_1_Core->f.UniformMatrix4x3fv(location, count, transpose, value);
1182}
1183
1184inline void QOpenGLFunctions_3_3_Core::glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1185{
1186 d_2_1_Core->f.UniformMatrix3x4fv(location, count, transpose, value);
1187}
1188
1189inline void QOpenGLFunctions_3_3_Core::glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1190{
1191 d_2_1_Core->f.UniformMatrix4x2fv(location, count, transpose, value);
1192}
1193
1194inline void QOpenGLFunctions_3_3_Core::glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1195{
1196 d_2_1_Core->f.UniformMatrix2x4fv(location, count, transpose, value);
1197}
1198
1199inline void QOpenGLFunctions_3_3_Core::glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1200{
1201 d_2_1_Core->f.UniformMatrix3x2fv(location, count, transpose, value);
1202}
1203
1204inline void QOpenGLFunctions_3_3_Core::glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
1205{
1206 d_2_1_Core->f.UniformMatrix2x3fv(location, count, transpose, value);
1207}
1208
1209
1210// OpenGL 3.0 core functions
1211inline GLboolean QOpenGLFunctions_3_3_Core::glIsVertexArray(GLuint array)
1212{
1213 return d_3_0_Core->f.IsVertexArray(array);
1214}
1215
1216inline void QOpenGLFunctions_3_3_Core::glGenVertexArrays(GLsizei n, GLuint *arrays)
1217{
1218 d_3_0_Core->f.GenVertexArrays(n, arrays);
1219}
1220
1221inline void QOpenGLFunctions_3_3_Core::glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
1222{
1223 d_3_0_Core->f.DeleteVertexArrays(n, arrays);
1224}
1225
1226inline void QOpenGLFunctions_3_3_Core::glBindVertexArray(GLuint array)
1227{
1228 d_3_0_Core->f.BindVertexArray(array);
1229}
1230
1231inline void QOpenGLFunctions_3_3_Core::glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
1232{
1233 d_3_0_Core->f.FlushMappedBufferRange(target, offset, length);
1234}
1235
1236inline GLvoid* QOpenGLFunctions_3_3_Core::glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
1237{
1238 return d_3_0_Core->f.MapBufferRange(target, offset, length, access);
1239}
1240
1241inline void QOpenGLFunctions_3_3_Core::glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
1242{
1243 d_3_0_Core->f.FramebufferTextureLayer(target, attachment, texture, level, layer);
1244}
1245
1246inline void QOpenGLFunctions_3_3_Core::glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
1247{
1248 d_3_0_Core->f.RenderbufferStorageMultisample(target, samples, internalformat, width, height);
1249}
1250
1251inline void QOpenGLFunctions_3_3_Core::glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
1252{
1253 d_3_0_Core->f.BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
1254}
1255
1256inline void QOpenGLFunctions_3_3_Core::glGenerateMipmap(GLenum target)
1257{
1258 d_3_0_Core->f.GenerateMipmap(target);
1259}
1260
1261inline void QOpenGLFunctions_3_3_Core::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params)
1262{
1263 d_3_0_Core->f.GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
1264}
1265
1266inline void QOpenGLFunctions_3_3_Core::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
1267{
1268 d_3_0_Core->f.FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
1269}
1270
1271inline void QOpenGLFunctions_3_3_Core::glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
1272{
1273 d_3_0_Core->f.FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
1274}
1275
1276inline void QOpenGLFunctions_3_3_Core::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
1277{
1278 d_3_0_Core->f.FramebufferTexture2D(target, attachment, textarget, texture, level);
1279}
1280
1281inline void QOpenGLFunctions_3_3_Core::glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
1282{
1283 d_3_0_Core->f.FramebufferTexture1D(target, attachment, textarget, texture, level);
1284}
1285
1286inline GLenum QOpenGLFunctions_3_3_Core::glCheckFramebufferStatus(GLenum target)
1287{
1288 return d_3_0_Core->f.CheckFramebufferStatus(target);
1289}
1290
1291inline void QOpenGLFunctions_3_3_Core::glGenFramebuffers(GLsizei n, GLuint *framebuffers)
1292{
1293 d_3_0_Core->f.GenFramebuffers(n, framebuffers);
1294}
1295
1296inline void QOpenGLFunctions_3_3_Core::glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
1297{
1298 d_3_0_Core->f.DeleteFramebuffers(n, framebuffers);
1299}
1300
1301inline void QOpenGLFunctions_3_3_Core::glBindFramebuffer(GLenum target, GLuint framebuffer)
1302{
1303 d_3_0_Core->f.BindFramebuffer(target, framebuffer);
1304}
1305
1306inline GLboolean QOpenGLFunctions_3_3_Core::glIsFramebuffer(GLuint framebuffer)
1307{
1308 return d_3_0_Core->f.IsFramebuffer(framebuffer);
1309}
1310
1311inline void QOpenGLFunctions_3_3_Core::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
1312{
1313 d_3_0_Core->f.GetRenderbufferParameteriv(target, pname, params);
1314}
1315
1316inline void QOpenGLFunctions_3_3_Core::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
1317{
1318 d_3_0_Core->f.RenderbufferStorage(target, internalformat, width, height);
1319}
1320
1321inline void QOpenGLFunctions_3_3_Core::glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
1322{
1323 d_3_0_Core->f.GenRenderbuffers(n, renderbuffers);
1324}
1325
1326inline void QOpenGLFunctions_3_3_Core::glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
1327{
1328 d_3_0_Core->f.DeleteRenderbuffers(n, renderbuffers);
1329}
1330
1331inline void QOpenGLFunctions_3_3_Core::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
1332{
1333 d_3_0_Core->f.BindRenderbuffer(target, renderbuffer);
1334}
1335
1336inline GLboolean QOpenGLFunctions_3_3_Core::glIsRenderbuffer(GLuint renderbuffer)
1337{
1338 return d_3_0_Core->f.IsRenderbuffer(renderbuffer);
1339}
1340
1341inline const GLubyte * QOpenGLFunctions_3_3_Core::glGetStringi(GLenum name, GLuint index)
1342{
1343 return d_3_0_Core->f.GetStringi(name, index);
1344}
1345
1346inline void QOpenGLFunctions_3_3_Core::glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
1347{
1348 d_3_0_Core->f.ClearBufferfi(buffer, drawbuffer, depth, stencil);
1349}
1350
1351inline void QOpenGLFunctions_3_3_Core::glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
1352{
1353 d_3_0_Core->f.ClearBufferfv(buffer, drawbuffer, value);
1354}
1355
1356inline void QOpenGLFunctions_3_3_Core::glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
1357{
1358 d_3_0_Core->f.ClearBufferuiv(buffer, drawbuffer, value);
1359}
1360
1361inline void QOpenGLFunctions_3_3_Core::glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
1362{
1363 d_3_0_Core->f.ClearBufferiv(buffer, drawbuffer, value);
1364}
1365
1366inline void QOpenGLFunctions_3_3_Core::glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params)
1367{
1368 d_3_0_Core->f.GetTexParameterIuiv(target, pname, params);
1369}
1370
1371inline void QOpenGLFunctions_3_3_Core::glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params)
1372{
1373 d_3_0_Core->f.GetTexParameterIiv(target, pname, params);
1374}
1375
1376inline void QOpenGLFunctions_3_3_Core::glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params)
1377{
1378 d_3_0_Core->f.TexParameterIuiv(target, pname, params);
1379}
1380
1381inline void QOpenGLFunctions_3_3_Core::glTexParameterIiv(GLenum target, GLenum pname, const GLint *params)
1382{
1383 d_3_0_Core->f.TexParameterIiv(target, pname, params);
1384}
1385
1386inline void QOpenGLFunctions_3_3_Core::glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
1387{
1388 d_3_0_Core->f.Uniform4uiv(location, count, value);
1389}
1390
1391inline void QOpenGLFunctions_3_3_Core::glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
1392{
1393 d_3_0_Core->f.Uniform3uiv(location, count, value);
1394}
1395
1396inline void QOpenGLFunctions_3_3_Core::glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
1397{
1398 d_3_0_Core->f.Uniform2uiv(location, count, value);
1399}
1400
1401inline void QOpenGLFunctions_3_3_Core::glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
1402{
1403 d_3_0_Core->f.Uniform1uiv(location, count, value);
1404}
1405
1406inline void QOpenGLFunctions_3_3_Core::glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
1407{
1408 d_3_0_Core->f.Uniform4ui(location, v0, v1, v2, v3);
1409}
1410
1411inline void QOpenGLFunctions_3_3_Core::glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
1412{
1413 d_3_0_Core->f.Uniform3ui(location, v0, v1, v2);
1414}
1415
1416inline void QOpenGLFunctions_3_3_Core::glUniform2ui(GLint location, GLuint v0, GLuint v1)
1417{
1418 d_3_0_Core->f.Uniform2ui(location, v0, v1);
1419}
1420
1421inline void QOpenGLFunctions_3_3_Core::glUniform1ui(GLint location, GLuint v0)
1422{
1423 d_3_0_Core->f.Uniform1ui(location, v0);
1424}
1425
1426inline GLint QOpenGLFunctions_3_3_Core::glGetFragDataLocation(GLuint program, const GLchar *name)
1427{
1428 return d_3_0_Core->f.GetFragDataLocation(program, name);
1429}
1430
1431inline void QOpenGLFunctions_3_3_Core::glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name)
1432{
1433 d_3_0_Core->f.BindFragDataLocation(program, color, name);
1434}
1435
1436inline void QOpenGLFunctions_3_3_Core::glGetUniformuiv(GLuint program, GLint location, GLuint *params)
1437{
1438 d_3_0_Core->f.GetUniformuiv(program, location, params);
1439}
1440
1441inline void QOpenGLFunctions_3_3_Core::glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
1442{
1443 d_3_0_Core->f.GetVertexAttribIuiv(index, pname, params);
1444}
1445
1446inline void QOpenGLFunctions_3_3_Core::glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
1447{
1448 d_3_0_Core->f.GetVertexAttribIiv(index, pname, params);
1449}
1450
1451inline void QOpenGLFunctions_3_3_Core::glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
1452{
1453 d_3_0_Core->f.VertexAttribIPointer(index, size, type, stride, pointer);
1454}
1455
1456inline void QOpenGLFunctions_3_3_Core::glEndConditionalRender()
1457{
1458 d_3_0_Core->f.EndConditionalRender();
1459}
1460
1461inline void QOpenGLFunctions_3_3_Core::glBeginConditionalRender(GLuint id, GLenum mode)
1462{
1463 d_3_0_Core->f.BeginConditionalRender(id, mode);
1464}
1465
1466inline void QOpenGLFunctions_3_3_Core::glClampColor(GLenum target, GLenum clamp)
1467{
1468 d_3_0_Core->f.ClampColor(target, clamp);
1469}
1470
1471inline void QOpenGLFunctions_3_3_Core::glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
1472{
1473 d_3_0_Core->f.GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
1474}
1475
1476inline void QOpenGLFunctions_3_3_Core::glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode)
1477{
1478 d_3_0_Core->f.TransformFeedbackVaryings(program, count, varyings, bufferMode);
1479}
1480
1481inline void QOpenGLFunctions_3_3_Core::glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
1482{
1483 d_3_0_Core->f.BindBufferBase(target, index, buffer);
1484}
1485
1486inline void QOpenGLFunctions_3_3_Core::glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
1487{
1488 d_3_0_Core->f.BindBufferRange(target, index, buffer, offset, size);
1489}
1490
1491inline void QOpenGLFunctions_3_3_Core::glEndTransformFeedback()
1492{
1493 d_3_0_Core->f.EndTransformFeedback();
1494}
1495
1496inline void QOpenGLFunctions_3_3_Core::glBeginTransformFeedback(GLenum primitiveMode)
1497{
1498 d_3_0_Core->f.BeginTransformFeedback(primitiveMode);
1499}
1500
1501inline GLboolean QOpenGLFunctions_3_3_Core::glIsEnabledi(GLenum target, GLuint index)
1502{
1503 return d_3_0_Core->f.IsEnabledi(target, index);
1504}
1505
1506inline void QOpenGLFunctions_3_3_Core::glDisablei(GLenum target, GLuint index)
1507{
1508 d_3_0_Core->f.Disablei(target, index);
1509}
1510
1511inline void QOpenGLFunctions_3_3_Core::glEnablei(GLenum target, GLuint index)
1512{
1513 d_3_0_Core->f.Enablei(target, index);
1514}
1515
1516inline void QOpenGLFunctions_3_3_Core::glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
1517{
1518 d_3_0_Core->f.GetIntegeri_v(target, index, data);
1519}
1520
1521inline void QOpenGLFunctions_3_3_Core::glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
1522{
1523 d_3_0_Core->f.GetBooleani_v(target, index, data);
1524}
1525
1526inline void QOpenGLFunctions_3_3_Core::glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
1527{
1528 d_3_0_Core->f.ColorMaski(index, r, g, b, a);
1529}
1530
1531
1532// OpenGL 3.1 core functions
1533inline void QOpenGLFunctions_3_3_Core::glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
1534{
1535 d_3_1_Core->f.CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
1536}
1537
1538inline void QOpenGLFunctions_3_3_Core::glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
1539{
1540 d_3_1_Core->f.UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
1541}
1542
1543inline void QOpenGLFunctions_3_3_Core::glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName)
1544{
1545 d_3_1_Core->f.GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
1546}
1547
1548inline void QOpenGLFunctions_3_3_Core::glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)
1549{
1550 d_3_1_Core->f.GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
1551}
1552
1553inline GLuint QOpenGLFunctions_3_3_Core::glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
1554{
1555 return d_3_1_Core->f.GetUniformBlockIndex(program, uniformBlockName);
1556}
1557
1558inline void QOpenGLFunctions_3_3_Core::glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName)
1559{
1560 d_3_1_Core->f.GetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
1561}
1562
1563inline void QOpenGLFunctions_3_3_Core::glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params)
1564{
1565 d_3_1_Core->f.GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
1566}
1567
1568inline void QOpenGLFunctions_3_3_Core::glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const *uniformNames, GLuint *uniformIndices)
1569{
1570 d_3_1_Core->f.GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
1571}
1572
1573inline void QOpenGLFunctions_3_3_Core::glPrimitiveRestartIndex(GLuint index)
1574{
1575 d_3_1_Core->f.PrimitiveRestartIndex(index);
1576}
1577
1578inline void QOpenGLFunctions_3_3_Core::glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
1579{
1580 d_3_1_Core->f.TexBuffer(target, internalformat, buffer);
1581}
1582
1583inline void QOpenGLFunctions_3_3_Core::glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount)
1584{
1585 d_3_1_Core->f.DrawElementsInstanced(mode, count, type, indices, instancecount);
1586}
1587
1588inline void QOpenGLFunctions_3_3_Core::glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
1589{
1590 d_3_1_Core->f.DrawArraysInstanced(mode, first, count, instancecount);
1591}
1592
1593
1594// OpenGL 3.2 core functions
1595inline void QOpenGLFunctions_3_3_Core::glSampleMaski(GLuint index, GLbitfield mask)
1596{
1597 d_3_2_Core->f.SampleMaski(index, mask);
1598}
1599
1600inline void QOpenGLFunctions_3_3_Core::glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
1601{
1602 d_3_2_Core->f.GetMultisamplefv(pname, index, val);
1603}
1604
1605inline void QOpenGLFunctions_3_3_Core::glTexImage3DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
1606{
1607 d_3_2_Core->f.TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
1608}
1609
1610inline void QOpenGLFunctions_3_3_Core::glTexImage2DMultisample(GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
1611{
1612 d_3_2_Core->f.TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
1613}
1614
1615inline void QOpenGLFunctions_3_3_Core::glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
1616{
1617 d_3_2_Core->f.GetSynciv(sync, pname, bufSize, length, values);
1618}
1619
1620inline void QOpenGLFunctions_3_3_Core::glGetInteger64v(GLenum pname, GLint64 *params)
1621{
1622 d_3_2_Core->f.GetInteger64v(pname, params);
1623}
1624
1625inline void QOpenGLFunctions_3_3_Core::glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
1626{
1627 d_3_2_Core->f.WaitSync(sync, flags, timeout);
1628}
1629
1630inline GLenum QOpenGLFunctions_3_3_Core::glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
1631{
1632 return d_3_2_Core->f.ClientWaitSync(sync, flags, timeout);
1633}
1634
1635inline void QOpenGLFunctions_3_3_Core::glDeleteSync(GLsync sync)
1636{
1637 d_3_2_Core->f.DeleteSync(sync);
1638}
1639
1640inline GLboolean QOpenGLFunctions_3_3_Core::glIsSync(GLsync sync)
1641{
1642 return d_3_2_Core->f.IsSync(sync);
1643}
1644
1645inline GLsync QOpenGLFunctions_3_3_Core::glFenceSync(GLenum condition, GLbitfield flags)
1646{
1647 return d_3_2_Core->f.FenceSync(condition, flags);
1648}
1649
1650inline void QOpenGLFunctions_3_3_Core::glProvokingVertex(GLenum mode)
1651{
1652 d_3_2_Core->f.ProvokingVertex(mode);
1653}
1654
1655inline void QOpenGLFunctions_3_3_Core::glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount, const GLint *basevertex)
1656{
1657 d_3_2_Core->f.MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
1658}
1659
1660inline void QOpenGLFunctions_3_3_Core::glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei instancecount, GLint basevertex)
1661{
1662 d_3_2_Core->f.DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
1663}
1664
1665inline void QOpenGLFunctions_3_3_Core::glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
1666{
1667 d_3_2_Core->f.DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
1668}
1669
1670inline void QOpenGLFunctions_3_3_Core::glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)
1671{
1672 d_3_2_Core->f.DrawElementsBaseVertex(mode, count, type, indices, basevertex);
1673}
1674
1675inline void QOpenGLFunctions_3_3_Core::glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level)
1676{
1677 d_3_2_Core->f.FramebufferTexture(target, attachment, texture, level);
1678}
1679
1680inline void QOpenGLFunctions_3_3_Core::glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
1681{
1682 d_3_2_Core->f.GetBufferParameteri64v(target, pname, params);
1683}
1684
1685inline void QOpenGLFunctions_3_3_Core::glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
1686{
1687 d_3_2_Core->f.GetInteger64i_v(target, index, data);
1688}
1689
1690
1691// OpenGL 3.3 core functions
1692inline void QOpenGLFunctions_3_3_Core::glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
1693{
1694 d_3_3_Core->f.VertexAttribP4uiv(index, type, normalized, value);
1695}
1696
1697inline void QOpenGLFunctions_3_3_Core::glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
1698{
1699 d_3_3_Core->f.VertexAttribP4ui(index, type, normalized, value);
1700}
1701
1702inline void QOpenGLFunctions_3_3_Core::glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
1703{
1704 d_3_3_Core->f.VertexAttribP3uiv(index, type, normalized, value);
1705}
1706
1707inline void QOpenGLFunctions_3_3_Core::glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
1708{
1709 d_3_3_Core->f.VertexAttribP3ui(index, type, normalized, value);
1710}
1711
1712inline void QOpenGLFunctions_3_3_Core::glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
1713{
1714 d_3_3_Core->f.VertexAttribP2uiv(index, type, normalized, value);
1715}
1716
1717inline void QOpenGLFunctions_3_3_Core::glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
1718{
1719 d_3_3_Core->f.VertexAttribP2ui(index, type, normalized, value);
1720}
1721
1722inline void QOpenGLFunctions_3_3_Core::glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint *value)
1723{
1724 d_3_3_Core->f.VertexAttribP1uiv(index, type, normalized, value);
1725}
1726
1727inline void QOpenGLFunctions_3_3_Core::glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value)
1728{
1729 d_3_3_Core->f.VertexAttribP1ui(index, type, normalized, value);
1730}
1731
1732inline void QOpenGLFunctions_3_3_Core::glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params)
1733{
1734 d_3_3_Core->f.GetQueryObjectui64v(id, pname, params);
1735}
1736
1737inline void QOpenGLFunctions_3_3_Core::glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params)
1738{
1739 d_3_3_Core->f.GetQueryObjecti64v(id, pname, params);
1740}
1741
1742inline void QOpenGLFunctions_3_3_Core::glQueryCounter(GLuint id, GLenum target)
1743{
1744 d_3_3_Core->f.QueryCounter(id, target);
1745}
1746
1747inline void QOpenGLFunctions_3_3_Core::glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params)
1748{
1749 d_3_3_Core->f.GetSamplerParameterIuiv(sampler, pname, params);
1750}
1751
1752inline void QOpenGLFunctions_3_3_Core::glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
1753{
1754 d_3_3_Core->f.GetSamplerParameterfv(sampler, pname, params);
1755}
1756
1757inline void QOpenGLFunctions_3_3_Core::glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params)
1758{
1759 d_3_3_Core->f.GetSamplerParameterIiv(sampler, pname, params);
1760}
1761
1762inline void QOpenGLFunctions_3_3_Core::glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
1763{
1764 d_3_3_Core->f.GetSamplerParameteriv(sampler, pname, params);
1765}
1766
1767inline void QOpenGLFunctions_3_3_Core::glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param)
1768{
1769 d_3_3_Core->f.SamplerParameterIuiv(sampler, pname, param);
1770}
1771
1772inline void QOpenGLFunctions_3_3_Core::glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param)
1773{
1774 d_3_3_Core->f.SamplerParameterIiv(sampler, pname, param);
1775}
1776
1777inline void QOpenGLFunctions_3_3_Core::glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
1778{
1779 d_3_3_Core->f.SamplerParameterfv(sampler, pname, param);
1780}
1781
1782inline void QOpenGLFunctions_3_3_Core::glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
1783{
1784 d_3_3_Core->f.SamplerParameterf(sampler, pname, param);
1785}
1786
1787inline void QOpenGLFunctions_3_3_Core::glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
1788{
1789 d_3_3_Core->f.SamplerParameteriv(sampler, pname, param);
1790}
1791
1792inline void QOpenGLFunctions_3_3_Core::glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
1793{
1794 d_3_3_Core->f.SamplerParameteri(sampler, pname, param);
1795}
1796
1797inline void QOpenGLFunctions_3_3_Core::glBindSampler(GLuint unit, GLuint sampler)
1798{
1799 d_3_3_Core->f.BindSampler(unit, sampler);
1800}
1801
1802inline GLboolean QOpenGLFunctions_3_3_Core::glIsSampler(GLuint sampler)
1803{
1804 return d_3_3_Core->f.IsSampler(sampler);
1805}
1806
1807inline void QOpenGLFunctions_3_3_Core::glDeleteSamplers(GLsizei count, const GLuint *samplers)
1808{
1809 d_3_3_Core->f.DeleteSamplers(count, samplers);
1810}
1811
1812inline void QOpenGLFunctions_3_3_Core::glGenSamplers(GLsizei count, GLuint *samplers)
1813{
1814 d_3_3_Core->f.GenSamplers(count, samplers);
1815}
1816
1817inline GLint QOpenGLFunctions_3_3_Core::glGetFragDataIndex(GLuint program, const GLchar *name)
1818{
1819 return d_3_3_Core->f.GetFragDataIndex(program, name);
1820}
1821
1822inline void QOpenGLFunctions_3_3_Core::glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name)
1823{
1824 d_3_3_Core->f.BindFragDataLocationIndexed(program, colorNumber, index, name);
1825}
1826
1827inline void QOpenGLFunctions_3_3_Core::glVertexAttribDivisor(GLuint index, GLuint divisor)
1828{
1829 d_3_3_Core->f.VertexAttribDivisor(index, divisor);
1830}
1831
1832
1833
1834QT_END_NAMESPACE
1835
1836#endif // QT_NO_OPENGL && !QT_CONFIG(opengles2)
1837
1838#endif
Combined button and popup list for selecting options.