1/****************************************************************************
2**
3** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
4** Copyright (C) 2016 The Qt Company Ltd.
5** Contact: https://www.qt.io/licensing/
6**
7** This file is part of the QtOpenGL module of the Qt Toolkit.
8**
9** $QT_BEGIN_LICENSE:LGPL$
10** Commercial License Usage
11** Licensees holding valid commercial Qt licenses may use this file in
12** accordance with the commercial license agreement provided with the
13** Software or, alternatively, in accordance with the terms contained in
14** a written agreement between you and The Qt Company. For licensing terms
15** and conditions see https://www.qt.io/terms-conditions. For further
16** information use the contact form at https://www.qt.io/contact-us.
17**
18** GNU Lesser General Public License Usage
19** Alternatively, this file may be used under the terms of the GNU Lesser
20** General Public License version 3 as published by the Free Software
21** Foundation and appearing in the file LICENSE.LGPL3 included in the
22** packaging of this file. Please review the following information to
23** ensure the GNU Lesser General Public License version 3 requirements
24** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
25**
26** GNU General Public License Usage
27** Alternatively, this file may be used under the terms of the GNU
28** General Public License version 2.0 or (at your option) the GNU General
29** Public license version 3 or any later version approved by the KDE Free
30** Qt Foundation. The licenses are as published by the Free Software
31** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
32** included in the packaging of this file. Please review the following
33** information to ensure the GNU General Public License requirements will
34** be met: https://www.gnu.org/licenses/gpl-2.0.html and
35** https://www.gnu.org/licenses/gpl-3.0.html.
36**
37** $QT_END_LICENSE$
38**
39**
40** This file was generated by glgen version 0.1
41** Command line was: glgen
42**
43** glgen is Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
44**
45** This is an auto-generated file.
46** Do not edit! All changes made to it will be lost.
47**
48****************************************************************************/
49
50#ifndef QOPENGLVERSIONFUNCTIONS_3_0_H
51#define QOPENGLVERSIONFUNCTIONS_3_0_H
52
53#include <QtOpenGL/qtopenglglobal.h>
54
55#if !defined(QT_NO_OPENGL) && !QT_CONFIG(opengles2)
56
57#include <QtOpenGL/QOpenGLVersionProfile>
58#include <QtOpenGL/QOpenGLVersionFunctions>
59#include <QtGui/qopenglcontext.h>
60
61QT_BEGIN_NAMESPACE
62
63class Q_OPENGL_EXPORT QOpenGLFunctions_3_0 : public QAbstractOpenGLFunctions
64{
65public:
66 QOpenGLFunctions_3_0();
67 ~QOpenGLFunctions_3_0();
68
69 bool initializeOpenGLFunctions() override;
70
71 // OpenGL 1.0 core functions
72 void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
73 void glDepthRange(GLdouble nearVal, GLdouble farVal);
74 GLboolean glIsEnabled(GLenum cap);
75 void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params);
76 void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params);
77 void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params);
78 void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
79 void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
80 const GLubyte * glGetString(GLenum name);
81 void glGetIntegerv(GLenum pname, GLint *params);
82 void glGetFloatv(GLenum pname, GLfloat *params);
83 GLenum glGetError();
84 void glGetDoublev(GLenum pname, GLdouble *params);
85 void glGetBooleanv(GLenum pname, GLboolean *params);
86 void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
87 void glReadBuffer(GLenum mode);
88 void glPixelStorei(GLenum pname, GLint param);
89 void glPixelStoref(GLenum pname, GLfloat param);
90 void glDepthFunc(GLenum func);
91 void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
92 void glStencilFunc(GLenum func, GLint ref, GLuint mask);
93 void glLogicOp(GLenum opcode);
94 void glBlendFunc(GLenum sfactor, GLenum dfactor);
95 void glFlush();
96 void glFinish();
97 void glEnable(GLenum cap);
98 void glDisable(GLenum cap);
99 void glDepthMask(GLboolean flag);
100 void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
101 void glStencilMask(GLuint mask);
102 void glClearDepth(GLdouble depth);
103 void glClearStencil(GLint s);
104 void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
105 void glClear(GLbitfield mask);
106 void glDrawBuffer(GLenum mode);
107 void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
108 void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
109 void glTexParameteriv(GLenum target, GLenum pname, const GLint *params);
110 void glTexParameteri(GLenum target, GLenum pname, GLint param);
111 void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
112 void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
113 void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
114 void glPolygonMode(GLenum face, GLenum mode);
115 void glPointSize(GLfloat size);
116 void glLineWidth(GLfloat width);
117 void glHint(GLenum target, GLenum mode);
118 void glFrontFace(GLenum mode);
119 void glCullFace(GLenum mode);
120
121 // OpenGL 1.1 core functions
122 void glIndexubv(const GLubyte *c);
123 void glIndexub(GLubyte c);
124 GLboolean glIsTexture(GLuint texture);
125 void glGenTextures(GLsizei n, GLuint *textures);
126 void glDeleteTextures(GLsizei n, const GLuint *textures);
127 void glBindTexture(GLenum target, GLuint texture);
128 void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
129 void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
130 void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
131 void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
132 void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
133 void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
134 void glPolygonOffset(GLfloat factor, GLfloat units);
135 void glGetPointerv(GLenum pname, GLvoid* *params);
136 void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
137 void glDrawArrays(GLenum mode, GLint first, GLsizei count);
138
139 // OpenGL 1.2 core functions
140 void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
141 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);
142 void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
143 void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
144 void glBlendEquation(GLenum mode);
145 void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
146
147 // OpenGL 1.3 core functions
148 void glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img);
149 void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
150 void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
151 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);
152 void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
153 void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
154 void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
155 void glSampleCoverage(GLfloat value, GLboolean invert);
156 void glActiveTexture(GLenum texture);
157
158 // OpenGL 1.4 core functions
159 void glPointParameteriv(GLenum pname, const GLint *params);
160 void glPointParameteri(GLenum pname, GLint param);
161 void glPointParameterfv(GLenum pname, const GLfloat *params);
162 void glPointParameterf(GLenum pname, GLfloat param);
163 void glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount);
164 void glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount);
165 void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
166
167 // OpenGL 1.5 core functions
168 void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params);
169 void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
170 GLboolean glUnmapBuffer(GLenum target);
171 GLvoid* glMapBuffer(GLenum target, GLenum access);
172 void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
173 void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
174 void glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
175 GLboolean glIsBuffer(GLuint buffer);
176 void glGenBuffers(GLsizei n, GLuint *buffers);
177 void glDeleteBuffers(GLsizei n, const GLuint *buffers);
178 void glBindBuffer(GLenum target, GLuint buffer);
179 void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
180 void glGetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
181 void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
182 void glEndQuery(GLenum target);
183 void glBeginQuery(GLenum target, GLuint id);
184 GLboolean glIsQuery(GLuint id);
185 void glDeleteQueries(GLsizei n, const GLuint *ids);
186 void glGenQueries(GLsizei n, GLuint *ids);
187
188 // OpenGL 2.0 core functions
189 void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
190 void glValidateProgram(GLuint program);
191 void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
192 void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
193 void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
194 void glUniform4iv(GLint location, GLsizei count, const GLint *value);
195 void glUniform3iv(GLint location, GLsizei count, const GLint *value);
196 void glUniform2iv(GLint location, GLsizei count, const GLint *value);
197 void glUniform1iv(GLint location, GLsizei count, const GLint *value);
198 void glUniform4fv(GLint location, GLsizei count, const GLfloat *value);
199 void glUniform3fv(GLint location, GLsizei count, const GLfloat *value);
200 void glUniform2fv(GLint location, GLsizei count, const GLfloat *value);
201 void glUniform1fv(GLint location, GLsizei count, const GLfloat *value);
202 void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
203 void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
204 void glUniform2i(GLint location, GLint v0, GLint v1);
205 void glUniform1i(GLint location, GLint v0);
206 void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
207 void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
208 void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
209 void glUniform1f(GLint location, GLfloat v0);
210 void glUseProgram(GLuint program);
211 void glShaderSource(GLuint shader, GLsizei count, const GLchar* const *string, const GLint *length);
212 void glLinkProgram(GLuint program);
213 GLboolean glIsShader(GLuint shader);
214 GLboolean glIsProgram(GLuint program);
215 void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid* *pointer);
216 void glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
217 void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
218 void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
219 void glGetUniformiv(GLuint program, GLint location, GLint *params);
220 void glGetUniformfv(GLuint program, GLint location, GLfloat *params);
221 GLint glGetUniformLocation(GLuint program, const GLchar *name);
222 void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
223 void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
224 void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
225 void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
226 void glGetProgramiv(GLuint program, GLenum pname, GLint *params);
227 GLint glGetAttribLocation(GLuint program, const GLchar *name);
228 void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
229 void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
230 void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
231 void glEnableVertexAttribArray(GLuint index);
232 void glDisableVertexAttribArray(GLuint index);
233 void glDetachShader(GLuint program, GLuint shader);
234 void glDeleteShader(GLuint shader);
235 void glDeleteProgram(GLuint program);
236 GLuint glCreateShader(GLenum type);
237 GLuint glCreateProgram();
238 void glCompileShader(GLuint shader);
239 void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
240 void glAttachShader(GLuint program, GLuint shader);
241 void glStencilMaskSeparate(GLenum face, GLuint mask);
242 void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
243 void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
244 void glDrawBuffers(GLsizei n, const GLenum *bufs);
245 void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
246
247 // OpenGL 2.1 core functions
248 void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
249 void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
250 void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
251 void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
252 void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
253 void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
254
255 // OpenGL 3.0 core functions
256 GLboolean glIsVertexArray(GLuint array);
257 void glGenVertexArrays(GLsizei n, GLuint *arrays);
258 void glDeleteVertexArrays(GLsizei n, const GLuint *arrays);
259 void glBindVertexArray(GLuint array);
260 void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
261 GLvoid* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
262 void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
263 void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
264 void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
265 void glGenerateMipmap(GLenum target);
266 void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params);
267 void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
268 void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
269 void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
270 void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
271 GLenum glCheckFramebufferStatus(GLenum target);
272 void glGenFramebuffers(GLsizei n, GLuint *framebuffers);
273 void glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
274 void glBindFramebuffer(GLenum target, GLuint framebuffer);
275 GLboolean glIsFramebuffer(GLuint framebuffer);
276 void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
277 void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
278 void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers);
279 void glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
280 void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
281 GLboolean glIsRenderbuffer(GLuint renderbuffer);
282 const GLubyte * glGetStringi(GLenum name, GLuint index);
283 void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
284 void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
285 void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
286 void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
287 void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
288 void glGetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
289 void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
290 void glTexParameterIiv(GLenum target, GLenum pname, const GLint *params);
291 void glUniform4uiv(GLint location, GLsizei count, const GLuint *value);
292 void glUniform3uiv(GLint location, GLsizei count, const GLuint *value);
293 void glUniform2uiv(GLint location, GLsizei count, const GLuint *value);
294 void glUniform1uiv(GLint location, GLsizei count, const GLuint *value);
295 void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
296 void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
297 void glUniform2ui(GLint location, GLuint v0, GLuint v1);
298 void glUniform1ui(GLint location, GLuint v0);
299 GLint glGetFragDataLocation(GLuint program, const GLchar *name);
300 void glBindFragDataLocation(GLuint program, GLuint color, const GLchar *name);
301 void glGetUniformuiv(GLuint program, GLint location, GLuint *params);
302 void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
303 void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
304 void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
305 void glEndConditionalRender();
306 void glBeginConditionalRender(GLuint id, GLenum mode);
307 void glClampColor(GLenum target, GLenum clamp);
308 void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
309 void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const *varyings, GLenum bufferMode);
310 void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
311 void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
312 void glEndTransformFeedback();
313 void glBeginTransformFeedback(GLenum primitiveMode);
314 GLboolean glIsEnabledi(GLenum target, GLuint index);
315 void glDisablei(GLenum target, GLuint index);
316 void glEnablei(GLenum target, GLuint index);
317 void glGetIntegeri_v(GLenum target, GLuint index, GLint *data);
318 void glGetBooleani_v(GLenum target, GLuint index, GLboolean *data);
319 void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
320
321 // OpenGL 1.0 deprecated functions
322 void glTranslatef(GLfloat x, GLfloat y, GLfloat z);
323 void glTranslated(GLdouble x, GLdouble y, GLdouble z);
324 void glScalef(GLfloat x, GLfloat y, GLfloat z);
325 void glScaled(GLdouble x, GLdouble y, GLdouble z);
326 void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
327 void glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
328 void glPushMatrix();
329 void glPopMatrix();
330 void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
331 void glMultMatrixd(const GLdouble *m);
332 void glMultMatrixf(const GLfloat *m);
333 void glMatrixMode(GLenum mode);
334 void glLoadMatrixd(const GLdouble *m);
335 void glLoadMatrixf(const GLfloat *m);
336 void glLoadIdentity();
337 void glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
338 GLboolean glIsList(GLuint list);
339 void glGetTexGeniv(GLenum coord, GLenum pname, GLint *params);
340 void glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params);
341 void glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params);
342 void glGetTexEnviv(GLenum target, GLenum pname, GLint *params);
343 void glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
344 void glGetPolygonStipple(GLubyte *mask);
345 void glGetPixelMapusv(GLenum map, GLushort *values);
346 void glGetPixelMapuiv(GLenum map, GLuint *values);
347 void glGetPixelMapfv(GLenum map, GLfloat *values);
348 void glGetMaterialiv(GLenum face, GLenum pname, GLint *params);
349 void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
350 void glGetMapiv(GLenum target, GLenum query, GLint *v);
351 void glGetMapfv(GLenum target, GLenum query, GLfloat *v);
352 void glGetMapdv(GLenum target, GLenum query, GLdouble *v);
353 void glGetLightiv(GLenum light, GLenum pname, GLint *params);
354 void glGetLightfv(GLenum light, GLenum pname, GLfloat *params);
355 void glGetClipPlane(GLenum plane, GLdouble *equation);
356 void glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
357 void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
358 void glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values);
359 void glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values);
360 void glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values);
361 void glPixelTransferi(GLenum pname, GLint param);
362 void glPixelTransferf(GLenum pname, GLfloat param);
363 void glPixelZoom(GLfloat xfactor, GLfloat yfactor);
364 void glAlphaFunc(GLenum func, GLfloat ref);
365 void glEvalPoint2(GLint i, GLint j);
366 void glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
367 void glEvalPoint1(GLint i);
368 void glEvalMesh1(GLenum mode, GLint i1, GLint i2);
369 void glEvalCoord2fv(const GLfloat *u);
370 void glEvalCoord2f(GLfloat u, GLfloat v);
371 void glEvalCoord2dv(const GLdouble *u);
372 void glEvalCoord2d(GLdouble u, GLdouble v);
373 void glEvalCoord1fv(const GLfloat *u);
374 void glEvalCoord1f(GLfloat u);
375 void glEvalCoord1dv(const GLdouble *u);
376 void glEvalCoord1d(GLdouble u);
377 void glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
378 void glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
379 void glMapGrid1f(GLint un, GLfloat u1, GLfloat u2);
380 void glMapGrid1d(GLint un, GLdouble u1, GLdouble u2);
381 void glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
382 void glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
383 void glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
384 void glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
385 void glPushAttrib(GLbitfield mask);
386 void glPopAttrib();
387 void glAccum(GLenum op, GLfloat value);
388 void glIndexMask(GLuint mask);
389 void glClearIndex(GLfloat c);
390 void glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
391 void glPushName(GLuint name);
392 void glPopName();
393 void glPassThrough(GLfloat token);
394 void glLoadName(GLuint name);
395 void glInitNames();
396 GLint glRenderMode(GLenum mode);
397 void glSelectBuffer(GLsizei size, GLuint *buffer);
398 void glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer);
399 void glTexGeniv(GLenum coord, GLenum pname, const GLint *params);
400 void glTexGeni(GLenum coord, GLenum pname, GLint param);
401 void glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params);
402 void glTexGenf(GLenum coord, GLenum pname, GLfloat param);
403 void glTexGendv(GLenum coord, GLenum pname, const GLdouble *params);
404 void glTexGend(GLenum coord, GLenum pname, GLdouble param);
405 void glTexEnviv(GLenum target, GLenum pname, const GLint *params);
406 void glTexEnvi(GLenum target, GLenum pname, GLint param);
407 void glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
408 void glTexEnvf(GLenum target, GLenum pname, GLfloat param);
409 void glShadeModel(GLenum mode);
410 void glPolygonStipple(const GLubyte *mask);
411 void glMaterialiv(GLenum face, GLenum pname, const GLint *params);
412 void glMateriali(GLenum face, GLenum pname, GLint param);
413 void glMaterialfv(GLenum face, GLenum pname, const GLfloat *params);
414 void glMaterialf(GLenum face, GLenum pname, GLfloat param);
415 void glLineStipple(GLint factor, GLushort pattern);
416 void glLightModeliv(GLenum pname, const GLint *params);
417 void glLightModeli(GLenum pname, GLint param);
418 void glLightModelfv(GLenum pname, const GLfloat *params);
419 void glLightModelf(GLenum pname, GLfloat param);
420 void glLightiv(GLenum light, GLenum pname, const GLint *params);
421 void glLighti(GLenum light, GLenum pname, GLint param);
422 void glLightfv(GLenum light, GLenum pname, const GLfloat *params);
423 void glLightf(GLenum light, GLenum pname, GLfloat param);
424 void glFogiv(GLenum pname, const GLint *params);
425 void glFogi(GLenum pname, GLint param);
426 void glFogfv(GLenum pname, const GLfloat *params);
427 void glFogf(GLenum pname, GLfloat param);
428 void glColorMaterial(GLenum face, GLenum mode);
429 void glClipPlane(GLenum plane, const GLdouble *equation);
430 void glVertex4sv(const GLshort *v);
431 void glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w);
432 void glVertex4iv(const GLint *v);
433 void glVertex4i(GLint x, GLint y, GLint z, GLint w);
434 void glVertex4fv(const GLfloat *v);
435 void glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
436 void glVertex4dv(const GLdouble *v);
437 void glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
438 void glVertex3sv(const GLshort *v);
439 void glVertex3s(GLshort x, GLshort y, GLshort z);
440 void glVertex3iv(const GLint *v);
441 void glVertex3i(GLint x, GLint y, GLint z);
442 void glVertex3fv(const GLfloat *v);
443 void glVertex3f(GLfloat x, GLfloat y, GLfloat z);
444 void glVertex3dv(const GLdouble *v);
445 void glVertex3d(GLdouble x, GLdouble y, GLdouble z);
446 void glVertex2sv(const GLshort *v);
447 void glVertex2s(GLshort x, GLshort y);
448 void glVertex2iv(const GLint *v);
449 void glVertex2i(GLint x, GLint y);
450 void glVertex2fv(const GLfloat *v);
451 void glVertex2f(GLfloat x, GLfloat y);
452 void glVertex2dv(const GLdouble *v);
453 void glVertex2d(GLdouble x, GLdouble y);
454 void glTexCoord4sv(const GLshort *v);
455 void glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q);
456 void glTexCoord4iv(const GLint *v);
457 void glTexCoord4i(GLint s, GLint t, GLint r, GLint q);
458 void glTexCoord4fv(const GLfloat *v);
459 void glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
460 void glTexCoord4dv(const GLdouble *v);
461 void glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
462 void glTexCoord3sv(const GLshort *v);
463 void glTexCoord3s(GLshort s, GLshort t, GLshort r);
464 void glTexCoord3iv(const GLint *v);
465 void glTexCoord3i(GLint s, GLint t, GLint r);
466 void glTexCoord3fv(const GLfloat *v);
467 void glTexCoord3f(GLfloat s, GLfloat t, GLfloat r);
468 void glTexCoord3dv(const GLdouble *v);
469 void glTexCoord3d(GLdouble s, GLdouble t, GLdouble r);
470 void glTexCoord2sv(const GLshort *v);
471 void glTexCoord2s(GLshort s, GLshort t);
472 void glTexCoord2iv(const GLint *v);
473 void glTexCoord2i(GLint s, GLint t);
474 void glTexCoord2fv(const GLfloat *v);
475 void glTexCoord2f(GLfloat s, GLfloat t);
476 void glTexCoord2dv(const GLdouble *v);
477 void glTexCoord2d(GLdouble s, GLdouble t);
478 void glTexCoord1sv(const GLshort *v);
479 void glTexCoord1s(GLshort s);
480 void glTexCoord1iv(const GLint *v);
481 void glTexCoord1i(GLint s);
482 void glTexCoord1fv(const GLfloat *v);
483 void glTexCoord1f(GLfloat s);
484 void glTexCoord1dv(const GLdouble *v);
485 void glTexCoord1d(GLdouble s);
486 void glRectsv(const GLshort *v1, const GLshort *v2);
487 void glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
488 void glRectiv(const GLint *v1, const GLint *v2);
489 void glRecti(GLint x1, GLint y1, GLint x2, GLint y2);
490 void glRectfv(const GLfloat *v1, const GLfloat *v2);
491 void glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
492 void glRectdv(const GLdouble *v1, const GLdouble *v2);
493 void glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
494 void glRasterPos4sv(const GLshort *v);
495 void glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w);
496 void glRasterPos4iv(const GLint *v);
497 void glRasterPos4i(GLint x, GLint y, GLint z, GLint w);
498 void glRasterPos4fv(const GLfloat *v);
499 void glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
500 void glRasterPos4dv(const GLdouble *v);
501 void glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
502 void glRasterPos3sv(const GLshort *v);
503 void glRasterPos3s(GLshort x, GLshort y, GLshort z);
504 void glRasterPos3iv(const GLint *v);
505 void glRasterPos3i(GLint x, GLint y, GLint z);
506 void glRasterPos3fv(const GLfloat *v);
507 void glRasterPos3f(GLfloat x, GLfloat y, GLfloat z);
508 void glRasterPos3dv(const GLdouble *v);
509 void glRasterPos3d(GLdouble x, GLdouble y, GLdouble z);
510 void glRasterPos2sv(const GLshort *v);
511 void glRasterPos2s(GLshort x, GLshort y);
512 void glRasterPos2iv(const GLint *v);
513 void glRasterPos2i(GLint x, GLint y);
514 void glRasterPos2fv(const GLfloat *v);
515 void glRasterPos2f(GLfloat x, GLfloat y);
516 void glRasterPos2dv(const GLdouble *v);
517 void glRasterPos2d(GLdouble x, GLdouble y);
518 void glNormal3sv(const GLshort *v);
519 void glNormal3s(GLshort nx, GLshort ny, GLshort nz);
520 void glNormal3iv(const GLint *v);
521 void glNormal3i(GLint nx, GLint ny, GLint nz);
522 void glNormal3fv(const GLfloat *v);
523 void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
524 void glNormal3dv(const GLdouble *v);
525 void glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz);
526 void glNormal3bv(const GLbyte *v);
527 void glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz);
528 void glIndexsv(const GLshort *c);
529 void glIndexs(GLshort c);
530 void glIndexiv(const GLint *c);
531 void glIndexi(GLint c);
532 void glIndexfv(const GLfloat *c);
533 void glIndexf(GLfloat c);
534 void glIndexdv(const GLdouble *c);
535 void glIndexd(GLdouble c);
536 void glEnd();
537 void glEdgeFlagv(const GLboolean *flag);
538 void glEdgeFlag(GLboolean flag);
539 void glColor4usv(const GLushort *v);
540 void glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha);
541 void glColor4uiv(const GLuint *v);
542 void glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha);
543 void glColor4ubv(const GLubyte *v);
544 void glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
545 void glColor4sv(const GLshort *v);
546 void glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha);
547 void glColor4iv(const GLint *v);
548 void glColor4i(GLint red, GLint green, GLint blue, GLint alpha);
549 void glColor4fv(const GLfloat *v);
550 void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
551 void glColor4dv(const GLdouble *v);
552 void glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
553 void glColor4bv(const GLbyte *v);
554 void glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
555 void glColor3usv(const GLushort *v);
556 void glColor3us(GLushort red, GLushort green, GLushort blue);
557 void glColor3uiv(const GLuint *v);
558 void glColor3ui(GLuint red, GLuint green, GLuint blue);
559 void glColor3ubv(const GLubyte *v);
560 void glColor3ub(GLubyte red, GLubyte green, GLubyte blue);
561 void glColor3sv(const GLshort *v);
562 void glColor3s(GLshort red, GLshort green, GLshort blue);
563 void glColor3iv(const GLint *v);
564 void glColor3i(GLint red, GLint green, GLint blue);
565 void glColor3fv(const GLfloat *v);
566 void glColor3f(GLfloat red, GLfloat green, GLfloat blue);
567 void glColor3dv(const GLdouble *v);
568 void glColor3d(GLdouble red, GLdouble green, GLdouble blue);
569 void glColor3bv(const GLbyte *v);
570 void glColor3b(GLbyte red, GLbyte green, GLbyte blue);
571 void glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
572 void glBegin(GLenum mode);
573 void glListBase(GLuint base);
574 GLuint glGenLists(GLsizei range);
575 void glDeleteLists(GLuint list, GLsizei range);
576 void glCallLists(GLsizei n, GLenum type, const GLvoid *lists);
577 void glCallList(GLuint list);
578 void glEndList();
579 void glNewList(GLuint list, GLenum mode);
580
581 // OpenGL 1.1 deprecated functions
582 void glPushClientAttrib(GLbitfield mask);
583 void glPopClientAttrib();
584 void glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities);
585 GLboolean glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences);
586 void glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
587 void glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
588 void glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
589 void glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer);
590 void glIndexPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
591 void glEnableClientState(GLenum array);
592 void glEdgeFlagPointer(GLsizei stride, const GLvoid *pointer);
593 void glDisableClientState(GLenum array);
594 void glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
595 void glArrayElement(GLint i);
596
597 // OpenGL 1.2 deprecated functions
598 void glResetMinmax(GLenum target);
599 void glResetHistogram(GLenum target);
600 void glMinmax(GLenum target, GLenum internalformat, GLboolean sink);
601 void glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
602 void glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params);
603 void glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params);
604 void glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
605 void glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params);
606 void glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params);
607 void glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
608 void glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
609 void glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
610 void glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params);
611 void glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params);
612 void glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image);
613 void glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
614 void glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
615 void glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params);
616 void glConvolutionParameteri(GLenum target, GLenum pname, GLint params);
617 void glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params);
618 void glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params);
619 void glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
620 void glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
621 void glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
622 void glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
623 void glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params);
624 void glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params);
625 void glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table);
626 void glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
627 void glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params);
628 void glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params);
629 void glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
630
631 // OpenGL 1.3 deprecated functions
632 void glMultTransposeMatrixd(const GLdouble *m);
633 void glMultTransposeMatrixf(const GLfloat *m);
634 void glLoadTransposeMatrixd(const GLdouble *m);
635 void glLoadTransposeMatrixf(const GLfloat *m);
636 void glMultiTexCoord4sv(GLenum target, const GLshort *v);
637 void glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
638 void glMultiTexCoord4iv(GLenum target, const GLint *v);
639 void glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q);
640 void glMultiTexCoord4fv(GLenum target, const GLfloat *v);
641 void glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
642 void glMultiTexCoord4dv(GLenum target, const GLdouble *v);
643 void glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
644 void glMultiTexCoord3sv(GLenum target, const GLshort *v);
645 void glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r);
646 void glMultiTexCoord3iv(GLenum target, const GLint *v);
647 void glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r);
648 void glMultiTexCoord3fv(GLenum target, const GLfloat *v);
649 void glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r);
650 void glMultiTexCoord3dv(GLenum target, const GLdouble *v);
651 void glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r);
652 void glMultiTexCoord2sv(GLenum target, const GLshort *v);
653 void glMultiTexCoord2s(GLenum target, GLshort s, GLshort t);
654 void glMultiTexCoord2iv(GLenum target, const GLint *v);
655 void glMultiTexCoord2i(GLenum target, GLint s, GLint t);
656 void glMultiTexCoord2fv(GLenum target, const GLfloat *v);
657 void glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t);
658 void glMultiTexCoord2dv(GLenum target, const GLdouble *v);
659 void glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t);
660 void glMultiTexCoord1sv(GLenum target, const GLshort *v);
661 void glMultiTexCoord1s(GLenum target, GLshort s);
662 void glMultiTexCoord1iv(GLenum target, const GLint *v);
663 void glMultiTexCoord1i(GLenum target, GLint s);
664 void glMultiTexCoord1fv(GLenum target, const GLfloat *v);
665 void glMultiTexCoord1f(GLenum target, GLfloat s);
666 void glMultiTexCoord1dv(GLenum target, const GLdouble *v);
667 void glMultiTexCoord1d(GLenum target, GLdouble s);
668 void glClientActiveTexture(GLenum texture);
669
670 // OpenGL 1.4 deprecated functions
671 void glWindowPos3sv(const GLshort *v);
672 void glWindowPos3s(GLshort x, GLshort y, GLshort z);
673 void glWindowPos3iv(const GLint *v);
674 void glWindowPos3i(GLint x, GLint y, GLint z);
675 void glWindowPos3fv(const GLfloat *v);
676 void glWindowPos3f(GLfloat x, GLfloat y, GLfloat z);
677 void glWindowPos3dv(const GLdouble *v);
678 void glWindowPos3d(GLdouble x, GLdouble y, GLdouble z);
679 void glWindowPos2sv(const GLshort *v);
680 void glWindowPos2s(GLshort x, GLshort y);
681 void glWindowPos2iv(const GLint *v);
682 void glWindowPos2i(GLint x, GLint y);
683 void glWindowPos2fv(const GLfloat *v);
684 void glWindowPos2f(GLfloat x, GLfloat y);
685 void glWindowPos2dv(const GLdouble *v);
686 void glWindowPos2d(GLdouble x, GLdouble y);
687 void glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
688 void glSecondaryColor3usv(const GLushort *v);
689 void glSecondaryColor3us(GLushort red, GLushort green, GLushort blue);
690 void glSecondaryColor3uiv(const GLuint *v);
691 void glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue);
692 void glSecondaryColor3ubv(const GLubyte *v);
693 void glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue);
694 void glSecondaryColor3sv(const GLshort *v);
695 void glSecondaryColor3s(GLshort red, GLshort green, GLshort blue);
696 void glSecondaryColor3iv(const GLint *v);
697 void glSecondaryColor3i(GLint red, GLint green, GLint blue);
698 void glSecondaryColor3fv(const GLfloat *v);
699 void glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue);
700 void glSecondaryColor3dv(const GLdouble *v);
701 void glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue);
702 void glSecondaryColor3bv(const GLbyte *v);
703 void glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue);
704 void glFogCoordPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
705 void glFogCoorddv(const GLdouble *coord);
706 void glFogCoordd(GLdouble coord);
707 void glFogCoordfv(const GLfloat *coord);
708 void glFogCoordf(GLfloat coord);
709
710 // OpenGL 1.5 deprecated functions
711
712 // OpenGL 2.0 deprecated functions
713 void glVertexAttrib4usv(GLuint index, const GLushort *v);
714 void glVertexAttrib4uiv(GLuint index, const GLuint *v);
715 void glVertexAttrib4ubv(GLuint index, const GLubyte *v);
716 void glVertexAttrib4sv(GLuint index, const GLshort *v);
717 void glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
718 void glVertexAttrib4iv(GLuint index, const GLint *v);
719 void glVertexAttrib4fv(GLuint index, const GLfloat *v);
720 void glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
721 void glVertexAttrib4dv(GLuint index, const GLdouble *v);
722 void glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
723 void glVertexAttrib4bv(GLuint index, const GLbyte *v);
724 void glVertexAttrib4Nusv(GLuint index, const GLushort *v);
725 void glVertexAttrib4Nuiv(GLuint index, const GLuint *v);
726 void glVertexAttrib4Nubv(GLuint index, const GLubyte *v);
727 void glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
728 void glVertexAttrib4Nsv(GLuint index, const GLshort *v);
729 void glVertexAttrib4Niv(GLuint index, const GLint *v);
730 void glVertexAttrib4Nbv(GLuint index, const GLbyte *v);
731 void glVertexAttrib3sv(GLuint index, const GLshort *v);
732 void glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z);
733 void glVertexAttrib3fv(GLuint index, const GLfloat *v);
734 void glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
735 void glVertexAttrib3dv(GLuint index, const GLdouble *v);
736 void glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
737 void glVertexAttrib2sv(GLuint index, const GLshort *v);
738 void glVertexAttrib2s(GLuint index, GLshort x, GLshort y);
739 void glVertexAttrib2fv(GLuint index, const GLfloat *v);
740 void glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
741 void glVertexAttrib2dv(GLuint index, const GLdouble *v);
742 void glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y);
743 void glVertexAttrib1sv(GLuint index, const GLshort *v);
744 void glVertexAttrib1s(GLuint index, GLshort x);
745 void glVertexAttrib1fv(GLuint index, const GLfloat *v);
746 void glVertexAttrib1f(GLuint index, GLfloat x);
747 void glVertexAttrib1dv(GLuint index, const GLdouble *v);
748 void glVertexAttrib1d(GLuint index, GLdouble x);
749
750 // OpenGL 2.1 deprecated functions
751
752 // OpenGL 3.0 deprecated functions
753 void glVertexAttribI4usv(GLuint index, const GLushort *v);
754 void glVertexAttribI4ubv(GLuint index, const GLubyte *v);
755 void glVertexAttribI4sv(GLuint index, const GLshort *v);
756 void glVertexAttribI4bv(GLuint index, const GLbyte *v);
757 void glVertexAttribI4uiv(GLuint index, const GLuint *v);
758 void glVertexAttribI3uiv(GLuint index, const GLuint *v);
759 void glVertexAttribI2uiv(GLuint index, const GLuint *v);
760 void glVertexAttribI1uiv(GLuint index, const GLuint *v);
761 void glVertexAttribI4iv(GLuint index, const GLint *v);
762 void glVertexAttribI3iv(GLuint index, const GLint *v);
763 void glVertexAttribI2iv(GLuint index, const GLint *v);
764 void glVertexAttribI1iv(GLuint index, const GLint *v);
765 void glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
766 void glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z);
767 void glVertexAttribI2ui(GLuint index, GLuint x, GLuint y);
768 void glVertexAttribI1ui(GLuint index, GLuint x);
769 void glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w);
770 void glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z);
771 void glVertexAttribI2i(GLuint index, GLint x, GLint y);
772 void glVertexAttribI1i(GLuint index, GLint x);
773
774private:
775 friend class QOpenGLVersionFunctionsFactory;
776
777 static bool isContextCompatible(QOpenGLContext *context);
778 static QOpenGLVersionProfile versionProfile();
779
780 QOpenGLFunctions_1_0_CoreBackend* d_1_0_Core;
781 QOpenGLFunctions_1_1_CoreBackend* d_1_1_Core;
782 QOpenGLFunctions_1_2_CoreBackend* d_1_2_Core;
783 QOpenGLFunctions_1_3_CoreBackend* d_1_3_Core;
784 QOpenGLFunctions_1_4_CoreBackend* d_1_4_Core;
785 QOpenGLFunctions_1_5_CoreBackend* d_1_5_Core;
786 QOpenGLFunctions_2_0_CoreBackend* d_2_0_Core;
787 QOpenGLFunctions_2_1_CoreBackend* d_2_1_Core;
788 QOpenGLFunctions_3_0_CoreBackend* d_3_0_Core;
789 QOpenGLFunctions_1_0_DeprecatedBackend* d_1_0_Deprecated;
790 QOpenGLFunctions_1_1_DeprecatedBackend* d_1_1_Deprecated;
791 QOpenGLFunctions_1_2_DeprecatedBackend* d_1_2_Deprecated;
792 QOpenGLFunctions_1_3_DeprecatedBackend* d_1_3_Deprecated;
793 QOpenGLFunctions_1_4_DeprecatedBackend* d_1_4_Deprecated;
794 void *m_reserved_2_0_Deprecated; // To maintain BC
795 void *m_reserved_3_0_Deprecated; // To maintain BC
796};
797
798// OpenGL 1.0 core functions
799inline void QOpenGLFunctions_3_0::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
800{
801 d_1_0_Core->f.Viewport(x, y, width, height);
802}
803
804inline void QOpenGLFunctions_3_0::glDepthRange(GLdouble nearVal, GLdouble farVal)
805{
806 d_1_0_Core->f.DepthRange(nearVal, farVal);
807}
808
809inline GLboolean QOpenGLFunctions_3_0::glIsEnabled(GLenum cap)
810{
811 return d_1_0_Core->f.IsEnabled(cap);
812}
813
814inline void QOpenGLFunctions_3_0::glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
815{
816 d_1_0_Core->f.GetTexLevelParameteriv(target, level, pname, params);
817}
818
819inline void QOpenGLFunctions_3_0::glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
820{
821 d_1_0_Core->f.GetTexLevelParameterfv(target, level, pname, params);
822}
823
824inline void QOpenGLFunctions_3_0::glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
825{
826 d_1_0_Core->f.GetTexParameteriv(target, pname, params);
827}
828
829inline void QOpenGLFunctions_3_0::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
830{
831 d_1_0_Core->f.GetTexParameterfv(target, pname, params);
832}
833
834inline void QOpenGLFunctions_3_0::glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels)
835{
836 d_1_0_Core->f.GetTexImage(target, level, format, type, pixels);
837}
838
839inline const GLubyte * QOpenGLFunctions_3_0::glGetString(GLenum name)
840{
841 return d_1_0_Core->f.GetString(name);
842}
843
844inline void QOpenGLFunctions_3_0::glGetIntegerv(GLenum pname, GLint *params)
845{
846 d_1_0_Core->f.GetIntegerv(pname, params);
847}
848
849inline void QOpenGLFunctions_3_0::glGetFloatv(GLenum pname, GLfloat *params)
850{
851 d_1_0_Core->f.GetFloatv(pname, params);
852}
853
854inline GLenum QOpenGLFunctions_3_0::glGetError()
855{
856 return d_1_0_Core->f.GetError();
857}
858
859inline void QOpenGLFunctions_3_0::glGetDoublev(GLenum pname, GLdouble *params)
860{
861 d_1_0_Core->f.GetDoublev(pname, params);
862}
863
864inline void QOpenGLFunctions_3_0::glGetBooleanv(GLenum pname, GLboolean *params)
865{
866 d_1_0_Core->f.GetBooleanv(pname, params);
867}
868
869inline void QOpenGLFunctions_3_0::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
870{
871 d_1_0_Core->f.ReadPixels(x, y, width, height, format, type, pixels);
872}
873
874inline void QOpenGLFunctions_3_0::glReadBuffer(GLenum mode)
875{
876 d_1_0_Core->f.ReadBuffer(mode);
877}
878
879inline void QOpenGLFunctions_3_0::glPixelStorei(GLenum pname, GLint param)
880{
881 d_1_0_Core->f.PixelStorei(pname, param);
882}
883
884inline void QOpenGLFunctions_3_0::glPixelStoref(GLenum pname, GLfloat param)
885{
886 d_1_0_Core->f.PixelStoref(pname, param);
887}
888
889inline void QOpenGLFunctions_3_0::glDepthFunc(GLenum func)
890{
891 d_1_0_Core->f.DepthFunc(func);
892}
893
894inline void QOpenGLFunctions_3_0::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
895{
896 d_1_0_Core->f.StencilOp(fail, zfail, zpass);
897}
898
899inline void QOpenGLFunctions_3_0::glStencilFunc(GLenum func, GLint ref, GLuint mask)
900{
901 d_1_0_Core->f.StencilFunc(func, ref, mask);
902}
903
904inline void QOpenGLFunctions_3_0::glLogicOp(GLenum opcode)
905{
906 d_1_0_Core->f.LogicOp(opcode);
907}
908
909inline void QOpenGLFunctions_3_0::glBlendFunc(GLenum sfactor, GLenum dfactor)
910{
911 d_1_0_Core->f.BlendFunc(sfactor, dfactor);
912}
913
914inline void QOpenGLFunctions_3_0::glFlush()
915{
916 d_1_0_Core->f.Flush();
917}
918
919inline void QOpenGLFunctions_3_0::glFinish()
920{
921 d_1_0_Core->f.Finish();
922}
923
924inline void QOpenGLFunctions_3_0::glEnable(GLenum cap)
925{
926 d_1_0_Core->f.Enable(cap);
927}
928
929inline void QOpenGLFunctions_3_0::glDisable(GLenum cap)
930{
931 d_1_0_Core->f.Disable(cap);
932}
933
934inline void QOpenGLFunctions_3_0::glDepthMask(GLboolean flag)
935{
936 d_1_0_Core->f.DepthMask(flag);
937}
938
939inline void QOpenGLFunctions_3_0::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
940{
941 d_1_0_Core->f.ColorMask(red, green, blue, alpha);
942}
943
944inline void QOpenGLFunctions_3_0::glStencilMask(GLuint mask)
945{
946 d_1_0_Core->f.StencilMask(mask);
947}
948
949inline void QOpenGLFunctions_3_0::glClearDepth(GLdouble depth)
950{
951 d_1_0_Core->f.ClearDepth(depth);
952}
953
954inline void QOpenGLFunctions_3_0::glClearStencil(GLint s)
955{
956 d_1_0_Core->f.ClearStencil(s);
957}
958
959inline void QOpenGLFunctions_3_0::glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
960{
961 d_1_0_Core->f.ClearColor(red, green, blue, alpha);
962}
963
964inline void QOpenGLFunctions_3_0::glClear(GLbitfield mask)
965{
966 d_1_0_Core->f.Clear(mask);
967}
968
969inline void QOpenGLFunctions_3_0::glDrawBuffer(GLenum mode)
970{
971 d_1_0_Core->f.DrawBuffer(mode);
972}
973
974inline void QOpenGLFunctions_3_0::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
975{
976 d_1_0_Core->f.TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
977}
978
979inline void QOpenGLFunctions_3_0::glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
980{
981 d_1_0_Core->f.TexImage1D(target, level, internalformat, width, border, format, type, pixels);
982}
983
984inline void QOpenGLFunctions_3_0::glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
985{
986 d_1_0_Core->f.TexParameteriv(target, pname, params);
987}
988
989inline void QOpenGLFunctions_3_0::glTexParameteri(GLenum target, GLenum pname, GLint param)
990{
991 d_1_0_Core->f.TexParameteri(target, pname, param);
992}
993
994inline void QOpenGLFunctions_3_0::glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
995{
996 d_1_0_Core->f.TexParameterfv(target, pname, params);
997}
998
999inline void QOpenGLFunctions_3_0::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
1000{
1001 d_1_0_Core->f.TexParameterf(target, pname, param);
1002}
1003
1004inline void QOpenGLFunctions_3_0::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
1005{
1006 d_1_0_Core->f.Scissor(x, y, width, height);
1007}
1008
1009inline void QOpenGLFunctions_3_0::glPolygonMode(GLenum face, GLenum mode)
1010{
1011 d_1_0_Core->f.PolygonMode(face, mode);
1012}
1013
1014inline void QOpenGLFunctions_3_0::glPointSize(GLfloat size)
1015{
1016 d_1_0_Core->f.PointSize(size);
1017}
1018
1019inline void QOpenGLFunctions_3_0::glLineWidth(GLfloat width)
1020{
1021 d_1_0_Core->f.LineWidth(width);
1022}
1023
1024inline void QOpenGLFunctions_3_0::glHint(GLenum target, GLenum mode)
1025{
1026 d_1_0_Core->f.Hint(target, mode);
1027}
1028
1029inline void QOpenGLFunctions_3_0::glFrontFace(GLenum mode)
1030{
1031 d_1_0_Core->f.FrontFace(mode);
1032}
1033
1034inline void QOpenGLFunctions_3_0::glCullFace(GLenum mode)
1035{
1036 d_1_0_Core->f.CullFace(mode);
1037}
1038
1039
1040// OpenGL 1.1 core functions
1041inline void QOpenGLFunctions_3_0::glIndexubv(const GLubyte *c)
1042{
1043 d_1_1_Deprecated->f.Indexubv(c);
1044}
1045
1046inline void QOpenGLFunctions_3_0::glIndexub(GLubyte c)
1047{
1048 d_1_1_Deprecated->f.Indexub(c);
1049}
1050
1051inline GLboolean QOpenGLFunctions_3_0::glIsTexture(GLuint texture)
1052{
1053 return d_1_1_Core->f.IsTexture(texture);
1054}
1055
1056inline void QOpenGLFunctions_3_0::glGenTextures(GLsizei n, GLuint *textures)
1057{
1058 d_1_1_Core->f.GenTextures(n, textures);
1059}
1060
1061inline void QOpenGLFunctions_3_0::glDeleteTextures(GLsizei n, const GLuint *textures)
1062{
1063 d_1_1_Core->f.DeleteTextures(n, textures);
1064}
1065
1066inline void QOpenGLFunctions_3_0::glBindTexture(GLenum target, GLuint texture)
1067{
1068 d_1_1_Core->f.BindTexture(target, texture);
1069}
1070
1071inline void QOpenGLFunctions_3_0::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
1072{
1073 d_1_1_Core->f.TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
1074}
1075
1076inline void QOpenGLFunctions_3_0::glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels)
1077{
1078 d_1_1_Core->f.TexSubImage1D(target, level, xoffset, width, format, type, pixels);
1079}
1080
1081inline void QOpenGLFunctions_3_0::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
1082{
1083 d_1_1_Core->f.CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
1084}
1085
1086inline void QOpenGLFunctions_3_0::glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
1087{
1088 d_1_1_Core->f.CopyTexSubImage1D(target, level, xoffset, x, y, width);
1089}
1090
1091inline void QOpenGLFunctions_3_0::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
1092{
1093 d_1_1_Core->f.CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
1094}
1095
1096inline void QOpenGLFunctions_3_0::glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
1097{
1098 d_1_1_Core->f.CopyTexImage1D(target, level, internalformat, x, y, width, border);
1099}
1100
1101inline void QOpenGLFunctions_3_0::glPolygonOffset(GLfloat factor, GLfloat units)
1102{
1103 d_1_1_Core->f.PolygonOffset(factor, units);
1104}
1105
1106inline void QOpenGLFunctions_3_0::glGetPointerv(GLenum pname, GLvoid* *params)
1107{
1108 d_1_1_Deprecated->f.GetPointerv(pname, params);
1109}
1110
1111inline void QOpenGLFunctions_3_0::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
1112{
1113 d_1_1_Core->f.DrawElements(mode, count, type, indices);
1114}
1115
1116inline void QOpenGLFunctions_3_0::glDrawArrays(GLenum mode, GLint first, GLsizei count)
1117{
1118 d_1_1_Core->f.DrawArrays(mode, first, count);
1119}
1120
1121
1122// OpenGL 1.2 core functions
1123inline void QOpenGLFunctions_3_0::glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
1124{
1125 d_1_2_Core->f.CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
1126}
1127
1128inline void QOpenGLFunctions_3_0::glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
1129{
1130 d_1_2_Core->f.TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
1131}
1132
1133inline void QOpenGLFunctions_3_0::glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
1134{
1135 d_1_2_Core->f.TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
1136}
1137
1138inline void QOpenGLFunctions_3_0::glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
1139{
1140 d_1_2_Core->f.DrawRangeElements(mode, start, end, count, type, indices);
1141}
1142
1143inline void QOpenGLFunctions_3_0::glBlendEquation(GLenum mode)
1144{
1145 d_1_2_Core->f.BlendEquation(mode);
1146}
1147
1148inline void QOpenGLFunctions_3_0::glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
1149{
1150 d_1_2_Core->f.BlendColor(red, green, blue, alpha);
1151}
1152
1153
1154// OpenGL 1.3 core functions
1155inline void QOpenGLFunctions_3_0::glGetCompressedTexImage(GLenum target, GLint level, GLvoid *img)
1156{
1157 d_1_3_Core->f.GetCompressedTexImage(target, level, img);
1158}
1159
1160inline void QOpenGLFunctions_3_0::glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
1161{
1162 d_1_3_Core->f.CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
1163}
1164
1165inline void QOpenGLFunctions_3_0::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
1166{
1167 d_1_3_Core->f.CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
1168}
1169
1170inline void QOpenGLFunctions_3_0::glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
1171{
1172 d_1_3_Core->f.CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
1173}
1174
1175inline void QOpenGLFunctions_3_0::glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
1176{
1177 d_1_3_Core->f.CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
1178}
1179
1180inline void QOpenGLFunctions_3_0::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
1181{
1182 d_1_3_Core->f.CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
1183}
1184
1185inline void QOpenGLFunctions_3_0::glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
1186{
1187 d_1_3_Core->f.CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
1188}
1189
1190inline void QOpenGLFunctions_3_0::glSampleCoverage(GLfloat value, GLboolean invert)
1191{
1192 d_1_3_Core->f.SampleCoverage(value, invert);
1193}
1194
1195inline void QOpenGLFunctions_3_0::glActiveTexture(GLenum texture)
1196{
1197 d_1_3_Core->f.ActiveTexture(texture);
1198}
1199
1200
1201// OpenGL 1.4 core functions
1202inline void QOpenGLFunctions_3_0::glPointParameteriv(GLenum pname, const GLint *params)
1203{
1204 d_1_4_Core->f.PointParameteriv(pname, params);
1205}
1206
1207inline void QOpenGLFunctions_3_0::glPointParameteri(GLenum pname, GLint param)
1208{
1209 d_1_4_Core->f.PointParameteri(pname, param);
1210}
1211
1212inline void QOpenGLFunctions_3_0::glPointParameterfv(GLenum pname, const GLfloat *params)
1213{
1214 d_1_4_Core->f.PointParameterfv(pname, params);
1215}
1216
1217inline void QOpenGLFunctions_3_0::glPointParameterf(GLenum pname, GLfloat param)
1218{
1219 d_1_4_Core->f.PointParameterf(pname, param);
1220}
1221
1222inline void QOpenGLFunctions_3_0::glMultiDrawElements(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei drawcount)
1223{
1224 d_1_4_Core->f.MultiDrawElements(mode, count, type, indices, drawcount);
1225}
1226
1227inline void QOpenGLFunctions_3_0::glMultiDrawArrays(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount)
1228{
1229 d_1_4_Core->f.MultiDrawArrays(mode, first, count, drawcount);
1230}
1231
1232inline void QOpenGLFunctions_3_0::glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
1233{
1234 d_1_4_Core->f.BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
1235}
1236
1237
1238// OpenGL 1.5 core functions
1239inline void QOpenGLFunctions_3_0::glGetBufferPointerv(GLenum target, GLenum pname, GLvoid* *params)
1240{
1241 d_1_5_Core->f.GetBufferPointerv(target, pname, params);
1242}
1243
1244inline void QOpenGLFunctions_3_0::glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
1245{
1246 d_1_5_Core->f.GetBufferParameteriv(target, pname, params);
1247}
1248
1249inline GLboolean QOpenGLFunctions_3_0::glUnmapBuffer(GLenum target)
1250{
1251 return d_1_5_Core->f.UnmapBuffer(target);
1252}
1253
1254inline GLvoid* QOpenGLFunctions_3_0::glMapBuffer(GLenum target, GLenum access)
1255{
1256 return d_1_5_Core->f.MapBuffer(target, access);
1257}
1258
1259inline void QOpenGLFunctions_3_0::glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
1260{
1261 d_1_5_Core->f.GetBufferSubData(target, offset, size, data);
1262}
1263
1264inline void QOpenGLFunctions_3_0::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data)
1265{
1266 d_1_5_Core->f.BufferSubData(target, offset, size, data);
1267}
1268
1269inline void QOpenGLFunctions_3_0::glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)
1270{
1271 d_1_5_Core->f.BufferData(target, size, data, usage);
1272}
1273
1274inline GLboolean QOpenGLFunctions_3_0::glIsBuffer(GLuint buffer)
1275{
1276 return d_1_5_Core->f.IsBuffer(buffer);
1277}
1278
1279inline void QOpenGLFunctions_3_0::glGenBuffers(GLsizei n, GLuint *buffers)
1280{
1281 d_1_5_Core->f.GenBuffers(n, buffers);
1282}
1283
1284inline void QOpenGLFunctions_3_0::glDeleteBuffers(GLsizei n, const GLuint *buffers)
1285{
1286 d_1_5_Core->f.DeleteBuffers(n, buffers);
1287}
1288
1289inline void QOpenGLFunctions_3_0::glBindBuffer(GLenum target, GLuint buffer)
1290{
1291 d_1_5_Core->f.BindBuffer(target, buffer);
1292}
1293
1294inline void QOpenGLFunctions_3_0::glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
1295{
1296 d_1_5_Core->f.GetQueryObjectuiv(id, pname, params);
1297}
1298
1299inline void QOpenGLFunctions_3_0::glGetQueryObjectiv(