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