1 /****************************************************************************
2 **
3 ** Copyright (C) 2013 Klaralvdalens Datakonsult AB (KDAB)
4 ** Contact: https://www.qt.io/licensing/
5 **
6 ** This file is part of the QtGui module of the Qt Toolkit.
7 **
8 ** $QT_BEGIN_LICENSE:LGPL$
9 ** Commercial License Usage
10 ** Licensees holding valid commercial Qt licenses may use this file in
11 ** accordance with the commercial license agreement provided with the
12 ** Software or, alternatively, in accordance with the terms contained in
13 ** a written agreement between you and The Qt Company. For licensing terms
14 ** and conditions see https://www.qt.io/terms-conditions. For further
15 ** information use the contact form at https://www.qt.io/contact-us.
16 **
17 ** GNU Lesser General Public License Usage
18 ** Alternatively, this file may be used under the terms of the GNU Lesser
19 ** General Public License version 3 as published by the Free Software
20 ** Foundation and appearing in the file LICENSE.LGPL3 included in the
21 ** packaging of this file. Please review the following information to
22 ** ensure the GNU Lesser General Public License version 3 requirements
23 ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
24 **
25 ** GNU General Public License Usage
26 ** Alternatively, this file may be used under the terms of the GNU
27 ** General Public License version 2.0 or (at your option) the GNU General
28 ** Public license version 3 or any later version approved by the KDE Free
29 ** Qt Foundation. The licenses are as published by the Free Software
30 ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
31 ** included in the packaging of this file. Please review the following
32 ** information to ensure the GNU General Public License requirements will
33 ** be met: https://www.gnu.org/licenses/gpl-2.0.html and
34 ** https://www.gnu.org/licenses/gpl-3.0.html.
35 **
36 ** $QT_END_LICENSE$
37 **
38 ****************************************************************************/
39 
40 #ifndef QOPENGLVERSIONFUNCTIONS_ES2_H
41 #define QOPENGLVERSIONFUNCTIONS_ES2_H
42 
43 #include <QtGui/qtguiglobal.h>
44 
45 #if defined(QT_OPENGL_ES_2) || defined(Q_QDOC)
46 
47 #include <QtGui/QOpenGLVersionFunctions>
48 #include <QtGui/qopenglcontext.h>
49 
50 QT_BEGIN_NAMESPACE
51 
52 class QOpenGLFunctions_ES2Private;
53 
54 class Q_GUI_EXPORT QOpenGLFunctions_ES2 : public QAbstractOpenGLFunctions
55 {
56 public:
57     QOpenGLFunctions_ES2();
58     ~QOpenGLFunctions_ES2();
59 
60     bool initializeOpenGLFunctions() override;
61 
62     // OpenGL ES2 core functions
63     void glActiveTexture(GLenum texture);
64     void glAttachShader(GLuint program, GLuint shader);
65     void glBindAttribLocation(GLuint program, GLuint index, const GLchar* name);
66     void glBindBuffer(GLenum target, GLuint buffer);
67     void glBindFramebuffer(GLenum target, GLuint framebuffer);
68     void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
69     void glBindTexture(GLenum target, GLuint texture);
70     void glBlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
71     void glBlendEquation(GLenum mode);
72     void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
73     void glBlendFunc(GLenum sfactor, GLenum dfactor);
74     void glBlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
75     void glBufferData(GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage);
76     void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data);
77     GLenum glCheckFramebufferStatus(GLenum target);
78     void glClear(GLbitfield mask);
79     void glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
80     void glClearDepthf(GLclampf depth);
81     void glClearStencil(GLint s);
82     void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
83     void glCompileShader(GLuint shader);
84     void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data);
85     void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data);
86     void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
87     void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
88     GLuint glCreateProgram(void);
89     GLuint glCreateShader(GLenum type);
90     void glCullFace(GLenum mode);
91     void glDeleteBuffers(GLsizei n, const GLuint* buffers);
92     void glDeleteFramebuffers(GLsizei n, const GLuint* framebuffers);
93     void glDeleteProgram(GLuint program);
94     void glDeleteRenderbuffers(GLsizei n, const GLuint* renderbuffers);
95     void glDeleteShader(GLuint shader);
96     void glDeleteTextures(GLsizei n, const GLuint* textures);
97     void glDepthFunc(GLenum func);
98     void glDepthMask(GLboolean flag);
99     void glDepthRangef(GLclampf zNear, GLclampf zFar);
100     void glDetachShader(GLuint program, GLuint shader);
101     void glDisable(GLenum cap);
102     void glDisableVertexAttribArray(GLuint index);
103     void glDrawArrays(GLenum mode, GLint first, GLsizei count);
104     void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid* indices);
105     void glEnable(GLenum cap);
106     void glEnableVertexAttribArray(GLuint index);
107     void glFinish(void);
108     void glFlush(void);
109     void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
110     void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
111     void glFrontFace(GLenum mode);
112     void glGenBuffers(GLsizei n, GLuint* buffers);
113     void glGenerateMipmap(GLenum target);
114     void glGenFramebuffers(GLsizei n, GLuint* framebuffers);
115     void glGenRenderbuffers(GLsizei n, GLuint* renderbuffers);
116     void glGenTextures(GLsizei n, GLuint* textures);
117     void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
118     void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
119     void glGetAttachedShaders(GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders);
120     int glGetAttribLocation(GLuint program, const GLchar* name);
121     void glGetBooleanv(GLenum pname, GLboolean* params);
122     void glGetBufferParameteriv(GLenum target, GLenum pname, GLint* params);
123     GLenum glGetError(void);
124     void glGetFloatv(GLenum pname, GLfloat* params);
125     void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint* params);
126     void glGetIntegerv(GLenum pname, GLint* params);
127     void glGetProgramiv(GLuint program, GLenum pname, GLint* params);
128     void glGetProgramInfoLog(GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog);
129     void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint* params);
130     void glGetShaderiv(GLuint shader, GLenum pname, GLint* params);
131     void glGetShaderInfoLog(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog);
132     void glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision);
133     void glGetShaderSource(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source);
134     const GLubyte* glGetString(GLenum name);
135     void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat* params);
136     void glGetTexParameteriv(GLenum target, GLenum pname, GLint* params);
137     void glGetUniformfv(GLuint program, GLint location, GLfloat* params);
138     void glGetUniformiv(GLuint program, GLint location, GLint* params);
139     int glGetUniformLocation(GLuint program, const GLchar* name);
140     void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat* params);
141     void glGetVertexAttribiv(GLuint index, GLenum pname, GLint* params);
142     void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid** pointer);
143     void glHint(GLenum target, GLenum mode);
144     GLboolean glIsBuffer(GLuint buffer);
145     GLboolean glIsEnabled(GLenum cap);
146     GLboolean glIsFramebuffer(GLuint framebuffer);
147     GLboolean glIsProgram(GLuint program);
148     GLboolean glIsRenderbuffer(GLuint renderbuffer);
149     GLboolean glIsShader(GLuint shader);
150     GLboolean glIsTexture(GLuint texture);
151     void glLineWidth(GLfloat width);
152     void glLinkProgram(GLuint program);
153     void glPixelStorei(GLenum pname, GLint param);
154     void glPolygonOffset(GLfloat factor, GLfloat units);
155     void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels);
156     void glReleaseShaderCompiler(void);
157     void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
158     void glSampleCoverage(GLclampf value, GLboolean invert);
159     void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
160     void glShaderBinary(GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length);
161     void glShaderSource(GLuint shader, GLsizei count, const GLchar* *string, const GLint* length);
162     void glStencilFunc(GLenum func, GLint ref, GLuint mask);
163     void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
164     void glStencilMask(GLuint mask);
165     void glStencilMaskSeparate(GLenum face, GLuint mask);
166     void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
167     void glStencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass);
168     void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
169     void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
170     void glTexParameterfv(GLenum target, GLenum pname, const GLfloat* params);
171     void glTexParameteri(GLenum target, GLenum pname, GLint param);
172     void glTexParameteriv(GLenum target, GLenum pname, const GLint* params);
173     void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels);
174     void glUniform1f(GLint location, GLfloat x);
175     void glUniform1fv(GLint location, GLsizei count, const GLfloat* v);
176     void glUniform1i(GLint location, GLint x);
177     void glUniform1iv(GLint location, GLsizei count, const GLint* v);
178     void glUniform2f(GLint location, GLfloat x, GLfloat y);
179     void glUniform2fv(GLint location, GLsizei count, const GLfloat* v);
180     void glUniform2i(GLint location, GLint x, GLint y);
181     void glUniform2iv(GLint location, GLsizei count, const GLint* v);
182     void glUniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z);
183     void glUniform3fv(GLint location, GLsizei count, const GLfloat* v);
184     void glUniform3i(GLint location, GLint x, GLint y, GLint z);
185     void glUniform3iv(GLint location, GLsizei count, const GLint* v);
186     void glUniform4f(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
187     void glUniform4fv(GLint location, GLsizei count, const GLfloat* v);
188     void glUniform4i(GLint location, GLint x, GLint y, GLint z, GLint w);
189     void glUniform4iv(GLint location, GLsizei count, const GLint* v);
190     void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
191     void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
192     void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
193     void glUseProgram(GLuint program);
194     void glValidateProgram(GLuint program);
195     void glVertexAttrib1f(GLuint indx, GLfloat x);
196     void glVertexAttrib1fv(GLuint indx, const GLfloat* values);
197     void glVertexAttrib2f(GLuint indx, GLfloat x, GLfloat y);
198     void glVertexAttrib2fv(GLuint indx, const GLfloat* values);
199     void glVertexAttrib3f(GLuint indx, GLfloat x, GLfloat y, GLfloat z);
200     void glVertexAttrib3fv(GLuint indx, const GLfloat* values);
201     void glVertexAttrib4f(GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
202     void glVertexAttrib4fv(GLuint indx, const GLfloat* values);
203     void glVertexAttribPointer(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr);
204     void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
205 
206 private:
207     friend class QOpenGLContext;
208 
209     static bool isContextCompatible(QOpenGLContext *context);
210     static QOpenGLVersionProfile versionProfile();
211 
212     // For future expansion - not used
213     QOpenGLFunctions_ES2Private* d_es2;
214 };
215 
216 // OpenGL ES2 core functions
glActiveTexture(GLenum texture)217 inline void QOpenGLFunctions_ES2::glActiveTexture(GLenum texture)
218 {
219     ::glActiveTexture(texture);
220 }
221 
glAttachShader(GLuint program,GLuint shader)222 inline void QOpenGLFunctions_ES2::glAttachShader(GLuint program, GLuint shader)
223 {
224     ::glAttachShader(program, shader);
225 }
226 
glBindAttribLocation(GLuint program,GLuint index,const GLchar * name)227 inline void QOpenGLFunctions_ES2::glBindAttribLocation(GLuint program, GLuint index, const GLchar* name)
228 {
229     ::glBindAttribLocation(program, index, name);
230 }
231 
glBindBuffer(GLenum target,GLuint buffer)232 inline void QOpenGLFunctions_ES2::glBindBuffer(GLenum target, GLuint buffer)
233 {
234     ::glBindBuffer(target, buffer);
235 }
236 
glBindFramebuffer(GLenum target,GLuint framebuffer)237 inline void QOpenGLFunctions_ES2::glBindFramebuffer(GLenum target, GLuint framebuffer)
238 {
239     ::glBindFramebuffer(target, framebuffer);
240 }
241 
glBindRenderbuffer(GLenum target,GLuint renderbuffer)242 inline void QOpenGLFunctions_ES2::glBindRenderbuffer(GLenum target, GLuint renderbuffer)
243 {
244     ::glBindRenderbuffer(target, renderbuffer);
245 }
246 
glBindTexture(GLenum target,GLuint texture)247 inline void QOpenGLFunctions_ES2::glBindTexture(GLenum target, GLuint texture)
248 {
249     ::glBindTexture(target, texture);
250 }
251 
glBlendColor(GLclampf red,GLclampf green,GLclampf blue,GLclampf alpha)252 inline void QOpenGLFunctions_ES2::glBlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
253 {
254     ::glBlendColor(red, green, blue, alpha);
255 }
256 
glBlendEquation(GLenum mode)257 inline void QOpenGLFunctions_ES2::glBlendEquation(GLenum mode)
258 {
259     ::glBlendEquation(mode);
260 }
261 
glBlendEquationSeparate(GLenum modeRGB,GLenum modeAlpha)262 inline void QOpenGLFunctions_ES2::glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
263 {
264     ::glBlendEquationSeparate(modeRGB, modeAlpha);
265 }
266 
glBlendFunc(GLenum sfactor,GLenum dfactor)267 inline void QOpenGLFunctions_ES2::glBlendFunc(GLenum sfactor, GLenum dfactor)
268 {
269     ::glBlendFunc(sfactor, dfactor);
270 }
271 
glBlendFuncSeparate(GLenum srcRGB,GLenum dstRGB,GLenum srcAlpha,GLenum dstAlpha)272 inline void QOpenGLFunctions_ES2::glBlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
273 {
274     ::glBlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha);
275 }
276 
glBufferData(GLenum target,GLsizeiptr size,const GLvoid * data,GLenum usage)277 inline void QOpenGLFunctions_ES2::glBufferData(GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage)
278 {
279     ::glBufferData(target, size, data, usage);
280 }
281 
glBufferSubData(GLenum target,GLintptr offset,GLsizeiptr size,const GLvoid * data)282 inline void QOpenGLFunctions_ES2::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data)
283 {
284     ::glBufferSubData(target, offset, size, data);
285 }
286 
glCheckFramebufferStatus(GLenum target)287 inline GLenum QOpenGLFunctions_ES2::glCheckFramebufferStatus(GLenum target)
288 {
289     return ::glCheckFramebufferStatus(target);
290 }
291 
glClear(GLbitfield mask)292 inline void QOpenGLFunctions_ES2::glClear(GLbitfield mask)
293 {
294     ::glClear(mask);
295 }
296 
glClearColor(GLclampf red,GLclampf green,GLclampf blue,GLclampf alpha)297 inline void QOpenGLFunctions_ES2::glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
298 {
299     ::glClearColor(red, green, blue, alpha);
300 }
301 
glClearDepthf(GLclampf depth)302 inline void QOpenGLFunctions_ES2::glClearDepthf(GLclampf depth)
303 {
304     ::glClearDepthf(depth);
305 }
306 
glClearStencil(GLint s)307 inline void QOpenGLFunctions_ES2::glClearStencil(GLint s)
308 {
309     ::glClearStencil(s);
310 }
311 
glColorMask(GLboolean red,GLboolean green,GLboolean blue,GLboolean alpha)312 inline void QOpenGLFunctions_ES2::glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
313 {
314     ::glColorMask(red, green, blue, alpha);
315 }
316 
glCompileShader(GLuint shader)317 inline void QOpenGLFunctions_ES2::glCompileShader(GLuint shader)
318 {
319     ::glCompileShader(shader);
320 }
321 
glCompressedTexImage2D(GLenum target,GLint level,GLenum internalformat,GLsizei width,GLsizei height,GLint border,GLsizei imageSize,const GLvoid * data)322 inline void QOpenGLFunctions_ES2::glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data)
323 {
324     ::glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
325 }
326 
glCompressedTexSubImage2D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLsizei width,GLsizei height,GLenum format,GLsizei imageSize,const GLvoid * data)327 inline void QOpenGLFunctions_ES2::glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data)
328 {
329     ::glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
330 }
331 
glCopyTexImage2D(GLenum target,GLint level,GLenum internalformat,GLint x,GLint y,GLsizei width,GLsizei height,GLint border)332 inline void QOpenGLFunctions_ES2::glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
333 {
334     ::glCopyTexImage2D(target, level, internalformat, x, y, width, height, border);
335 }
336 
glCopyTexSubImage2D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint x,GLint y,GLsizei width,GLsizei height)337 inline void QOpenGLFunctions_ES2::glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
338 {
339     ::glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
340 }
341 
glCreateProgram(void)342 inline GLuint QOpenGLFunctions_ES2::glCreateProgram(void)
343 {
344     return ::glCreateProgram();
345 }
346 
glCreateShader(GLenum type)347 inline GLuint QOpenGLFunctions_ES2::glCreateShader(GLenum type)
348 {
349     return ::glCreateShader(type);
350 }
351 
glCullFace(GLenum mode)352 inline void QOpenGLFunctions_ES2::glCullFace(GLenum mode)
353 {
354     ::glCullFace(mode);
355 }
356 
glDeleteBuffers(GLsizei n,const GLuint * buffers)357 inline void QOpenGLFunctions_ES2::glDeleteBuffers(GLsizei n, const GLuint* buffers)
358 {
359     ::glDeleteBuffers(n, buffers);
360 }
361 
glDeleteFramebuffers(GLsizei n,const GLuint * framebuffers)362 inline void QOpenGLFunctions_ES2::glDeleteFramebuffers(GLsizei n, const GLuint* framebuffers)
363 {
364     ::glDeleteFramebuffers(n, framebuffers);
365 }
366 
glDeleteProgram(GLuint program)367 inline void QOpenGLFunctions_ES2::glDeleteProgram(GLuint program)
368 {
369     ::glDeleteProgram(program);
370 }
371 
glDeleteRenderbuffers(GLsizei n,const GLuint * renderbuffers)372 inline void QOpenGLFunctions_ES2::glDeleteRenderbuffers(GLsizei n, const GLuint* renderbuffers)
373 {
374     ::glDeleteRenderbuffers(n, renderbuffers);
375 }
376 
glDeleteShader(GLuint shader)377 inline void QOpenGLFunctions_ES2::glDeleteShader(GLuint shader)
378 {
379     ::glDeleteShader(shader);
380 }
381 
glDeleteTextures(GLsizei n,const GLuint * textures)382 inline void QOpenGLFunctions_ES2::glDeleteTextures(GLsizei n, const GLuint* textures)
383 {
384     ::glDeleteTextures(n, textures);
385 }
386 
glDepthFunc(GLenum func)387 inline void QOpenGLFunctions_ES2::glDepthFunc(GLenum func)
388 {
389     ::glDepthFunc(func);
390 }
391 
glDepthMask(GLboolean flag)392 inline void QOpenGLFunctions_ES2::glDepthMask(GLboolean flag)
393 {
394     ::glDepthMask(flag);
395 }
396 
glDepthRangef(GLclampf zNear,GLclampf zFar)397 inline void QOpenGLFunctions_ES2::glDepthRangef(GLclampf zNear, GLclampf zFar)
398 {
399     ::glDepthRangef(zNear, zFar);
400 }
401 
glDetachShader(GLuint program,GLuint shader)402 inline void QOpenGLFunctions_ES2::glDetachShader(GLuint program, GLuint shader)
403 {
404     ::glDetachShader(program, shader);
405 }
406 
glDisable(GLenum cap)407 inline void QOpenGLFunctions_ES2::glDisable(GLenum cap)
408 {
409     ::glDisable(cap);
410 }
411 
glDisableVertexAttribArray(GLuint index)412 inline void QOpenGLFunctions_ES2::glDisableVertexAttribArray(GLuint index)
413 {
414     ::glDisableVertexAttribArray(index);
415 }
416 
glDrawArrays(GLenum mode,GLint first,GLsizei count)417 inline void QOpenGLFunctions_ES2::glDrawArrays(GLenum mode, GLint first, GLsizei count)
418 {
419     ::glDrawArrays(mode, first, count);
420 }
421 
glDrawElements(GLenum mode,GLsizei count,GLenum type,const GLvoid * indices)422 inline void QOpenGLFunctions_ES2::glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid* indices)
423 {
424     ::glDrawElements(mode, count, type, indices);
425 }
426 
glEnable(GLenum cap)427 inline void QOpenGLFunctions_ES2::glEnable(GLenum cap)
428 {
429     ::glEnable(cap);
430 }
431 
glEnableVertexAttribArray(GLuint index)432 inline void QOpenGLFunctions_ES2::glEnableVertexAttribArray(GLuint index)
433 {
434     ::glEnableVertexAttribArray(index);
435 }
436 
glFinish(void)437 inline void QOpenGLFunctions_ES2::glFinish(void)
438 {
439     ::glFinish();
440 }
441 
glFlush(void)442 inline void QOpenGLFunctions_ES2::glFlush(void)
443 {
444     ::glFlush();
445 }
446 
glFramebufferRenderbuffer(GLenum target,GLenum attachment,GLenum renderbuffertarget,GLuint renderbuffer)447 inline void QOpenGLFunctions_ES2::glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
448 {
449     ::glFramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
450 }
451 
glFramebufferTexture2D(GLenum target,GLenum attachment,GLenum textarget,GLuint texture,GLint level)452 inline void QOpenGLFunctions_ES2::glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
453 {
454     ::glFramebufferTexture2D(target, attachment, textarget, texture, level);
455 }
456 
glFrontFace(GLenum mode)457 inline void QOpenGLFunctions_ES2::glFrontFace(GLenum mode)
458 {
459     ::glFrontFace(mode);
460 }
461 
glGenBuffers(GLsizei n,GLuint * buffers)462 inline void QOpenGLFunctions_ES2::glGenBuffers(GLsizei n, GLuint* buffers)
463 {
464     ::glGenBuffers(n, buffers);
465 }
466 
glGenerateMipmap(GLenum target)467 inline void QOpenGLFunctions_ES2::glGenerateMipmap(GLenum target)
468 {
469     ::glGenerateMipmap(target);
470 }
471 
glGenFramebuffers(GLsizei n,GLuint * framebuffers)472 inline void QOpenGLFunctions_ES2::glGenFramebuffers(GLsizei n, GLuint* framebuffers)
473 {
474     ::glGenFramebuffers(n, framebuffers);
475 }
476 
glGenRenderbuffers(GLsizei n,GLuint * renderbuffers)477 inline void QOpenGLFunctions_ES2::glGenRenderbuffers(GLsizei n, GLuint* renderbuffers)
478 {
479     ::glGenRenderbuffers(n, renderbuffers);
480 }
481 
glGenTextures(GLsizei n,GLuint * textures)482 inline void QOpenGLFunctions_ES2::glGenTextures(GLsizei n, GLuint* textures)
483 {
484     ::glGenTextures(n, textures);
485 }
486 
glGetActiveAttrib(GLuint program,GLuint index,GLsizei bufsize,GLsizei * length,GLint * size,GLenum * type,GLchar * name)487 inline void QOpenGLFunctions_ES2::glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name)
488 {
489     ::glGetActiveAttrib(program, index, bufsize, length, size, type, name);
490 }
491 
glGetActiveUniform(GLuint program,GLuint index,GLsizei bufsize,GLsizei * length,GLint * size,GLenum * type,GLchar * name)492 inline void QOpenGLFunctions_ES2::glGetActiveUniform(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name)
493 {
494     ::glGetActiveUniform(program, index, bufsize, length, size, type, name);
495 }
496 
glGetAttachedShaders(GLuint program,GLsizei maxcount,GLsizei * count,GLuint * shaders)497 inline void QOpenGLFunctions_ES2::glGetAttachedShaders(GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders)
498 {
499     ::glGetAttachedShaders(program, maxcount, count, shaders);
500 }
501 
glGetAttribLocation(GLuint program,const GLchar * name)502 inline int QOpenGLFunctions_ES2::glGetAttribLocation(GLuint program, const GLchar* name)
503 {
504     return ::glGetAttribLocation(program, name);
505 }
506 
glGetBooleanv(GLenum pname,GLboolean * params)507 inline void QOpenGLFunctions_ES2::glGetBooleanv(GLenum pname, GLboolean* params)
508 {
509     ::glGetBooleanv(pname, params);
510 }
511 
glGetBufferParameteriv(GLenum target,GLenum pname,GLint * params)512 inline void QOpenGLFunctions_ES2::glGetBufferParameteriv(GLenum target, GLenum pname, GLint* params)
513 {
514     ::glGetBufferParameteriv(target, pname, params);
515 }
516 
glGetError(void)517 inline GLenum QOpenGLFunctions_ES2::glGetError(void)
518 {
519     return ::glGetError();
520 }
521 
glGetFloatv(GLenum pname,GLfloat * params)522 inline void QOpenGLFunctions_ES2::glGetFloatv(GLenum pname, GLfloat* params)
523 {
524     ::glGetFloatv(pname, params);
525 }
526 
glGetFramebufferAttachmentParameteriv(GLenum target,GLenum attachment,GLenum pname,GLint * params)527 inline void QOpenGLFunctions_ES2::glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint* params)
528 {
529     ::glGetFramebufferAttachmentParameteriv(target, attachment, pname, params);
530 }
531 
glGetIntegerv(GLenum pname,GLint * params)532 inline void QOpenGLFunctions_ES2::glGetIntegerv(GLenum pname, GLint* params)
533 {
534     ::glGetIntegerv(pname, params);
535 }
536 
glGetProgramiv(GLuint program,GLenum pname,GLint * params)537 inline void QOpenGLFunctions_ES2::glGetProgramiv(GLuint program, GLenum pname, GLint* params)
538 {
539     ::glGetProgramiv(program, pname, params);
540 }
541 
glGetProgramInfoLog(GLuint program,GLsizei bufsize,GLsizei * length,GLchar * infolog)542 inline void QOpenGLFunctions_ES2::glGetProgramInfoLog(GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog)
543 {
544     ::glGetProgramInfoLog(program, bufsize, length, infolog);
545 }
546 
glGetRenderbufferParameteriv(GLenum target,GLenum pname,GLint * params)547 inline void QOpenGLFunctions_ES2::glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint* params)
548 {
549     ::glGetRenderbufferParameteriv(target, pname, params);
550 }
551 
glGetShaderiv(GLuint shader,GLenum pname,GLint * params)552 inline void QOpenGLFunctions_ES2::glGetShaderiv(GLuint shader, GLenum pname, GLint* params)
553 {
554     ::glGetShaderiv(shader, pname, params);
555 }
556 
glGetShaderInfoLog(GLuint shader,GLsizei bufsize,GLsizei * length,GLchar * infolog)557 inline void QOpenGLFunctions_ES2::glGetShaderInfoLog(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog)
558 {
559     ::glGetShaderInfoLog(shader, bufsize, length, infolog);
560 }
561 
glGetShaderPrecisionFormat(GLenum shadertype,GLenum precisiontype,GLint * range,GLint * precision)562 inline void QOpenGLFunctions_ES2::glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision)
563 {
564     ::glGetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
565 }
566 
glGetShaderSource(GLuint shader,GLsizei bufsize,GLsizei * length,GLchar * source)567 inline void QOpenGLFunctions_ES2::glGetShaderSource(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source)
568 {
569     ::glGetShaderSource(shader, bufsize, length, source);
570 }
571 
glGetString(GLenum name)572 inline const GLubyte* QOpenGLFunctions_ES2::glGetString(GLenum name)
573 {
574     return ::glGetString(name);
575 }
576 
glGetTexParameterfv(GLenum target,GLenum pname,GLfloat * params)577 inline void QOpenGLFunctions_ES2::glGetTexParameterfv(GLenum target, GLenum pname, GLfloat* params)
578 {
579     ::glGetTexParameterfv(target, pname, params);
580 }
581 
glGetTexParameteriv(GLenum target,GLenum pname,GLint * params)582 inline void QOpenGLFunctions_ES2::glGetTexParameteriv(GLenum target, GLenum pname, GLint* params)
583 {
584     ::glGetTexParameteriv(target, pname, params);
585 }
586 
glGetUniformfv(GLuint program,GLint location,GLfloat * params)587 inline void QOpenGLFunctions_ES2::glGetUniformfv(GLuint program, GLint location, GLfloat* params)
588 {
589     ::glGetUniformfv(program, location, params);
590 }
591 
glGetUniformiv(GLuint program,GLint location,GLint * params)592 inline void QOpenGLFunctions_ES2::glGetUniformiv(GLuint program, GLint location, GLint* params)
593 {
594     ::glGetUniformiv(program, location, params);
595 }
596 
glGetUniformLocation(GLuint program,const GLchar * name)597 inline int QOpenGLFunctions_ES2::glGetUniformLocation(GLuint program, const GLchar* name)
598 {
599     return ::glGetUniformLocation(program, name);
600 }
601 
glGetVertexAttribfv(GLuint index,GLenum pname,GLfloat * params)602 inline void QOpenGLFunctions_ES2::glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat* params)
603 {
604     ::glGetVertexAttribfv(index, pname, params);
605 }
606 
glGetVertexAttribiv(GLuint index,GLenum pname,GLint * params)607 inline void QOpenGLFunctions_ES2::glGetVertexAttribiv(GLuint index, GLenum pname, GLint* params)
608 {
609     ::glGetVertexAttribiv(index, pname, params);
610 }
611 
glGetVertexAttribPointerv(GLuint index,GLenum pname,GLvoid ** pointer)612 inline void QOpenGLFunctions_ES2::glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid** pointer)
613 {
614     ::glGetVertexAttribPointerv(index, pname, pointer);
615 }
616 
glHint(GLenum target,GLenum mode)617 inline void QOpenGLFunctions_ES2::glHint(GLenum target, GLenum mode)
618 {
619     ::glHint(target, mode);
620 }
621 
glIsBuffer(GLuint buffer)622 inline GLboolean QOpenGLFunctions_ES2::glIsBuffer(GLuint buffer)
623 {
624     return ::glIsBuffer(buffer);
625 }
626 
glIsEnabled(GLenum cap)627 inline GLboolean QOpenGLFunctions_ES2::glIsEnabled(GLenum cap)
628 {
629     return ::glIsEnabled(cap);
630 }
631 
glIsFramebuffer(GLuint framebuffer)632 inline GLboolean QOpenGLFunctions_ES2::glIsFramebuffer(GLuint framebuffer)
633 {
634     return ::glIsFramebuffer(framebuffer);
635 }
636 
glIsProgram(GLuint program)637 inline GLboolean QOpenGLFunctions_ES2::glIsProgram(GLuint program)
638 {
639     return ::glIsProgram(program);
640 }
641 
glIsRenderbuffer(GLuint renderbuffer)642 inline GLboolean QOpenGLFunctions_ES2::glIsRenderbuffer(GLuint renderbuffer)
643 {
644     return ::glIsRenderbuffer(renderbuffer);
645 }
646 
glIsShader(GLuint shader)647 inline GLboolean QOpenGLFunctions_ES2::glIsShader(GLuint shader)
648 {
649     return ::glIsShader(shader);
650 }
651 
glIsTexture(GLuint texture)652 inline GLboolean QOpenGLFunctions_ES2::glIsTexture(GLuint texture)
653 {
654     return ::glIsTexture(texture);
655 }
656 
glLineWidth(GLfloat width)657 inline void QOpenGLFunctions_ES2::glLineWidth(GLfloat width)
658 {
659     ::glLineWidth(width);
660 }
661 
glLinkProgram(GLuint program)662 inline void QOpenGLFunctions_ES2::glLinkProgram(GLuint program)
663 {
664     ::glLinkProgram(program);
665 }
666 
glPixelStorei(GLenum pname,GLint param)667 inline void QOpenGLFunctions_ES2::glPixelStorei(GLenum pname, GLint param)
668 {
669     ::glPixelStorei(pname, param);
670 }
671 
glPolygonOffset(GLfloat factor,GLfloat units)672 inline void QOpenGLFunctions_ES2::glPolygonOffset(GLfloat factor, GLfloat units)
673 {
674     ::glPolygonOffset(factor, units);
675 }
676 
glReadPixels(GLint x,GLint y,GLsizei width,GLsizei height,GLenum format,GLenum type,GLvoid * pixels)677 inline void QOpenGLFunctions_ES2::glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels)
678 {
679     ::glReadPixels(x, y, width, height, format, type, pixels);
680 }
681 
glReleaseShaderCompiler(void)682 inline void QOpenGLFunctions_ES2::glReleaseShaderCompiler(void)
683 {
684     ::glReleaseShaderCompiler();
685 }
686 
glRenderbufferStorage(GLenum target,GLenum internalformat,GLsizei width,GLsizei height)687 inline void QOpenGLFunctions_ES2::glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
688 {
689     ::glRenderbufferStorage(target, internalformat, width, height);
690 }
691 
glSampleCoverage(GLclampf value,GLboolean invert)692 inline void QOpenGLFunctions_ES2::glSampleCoverage(GLclampf value, GLboolean invert)
693 {
694     ::glSampleCoverage(value, invert);
695 }
696 
glScissor(GLint x,GLint y,GLsizei width,GLsizei height)697 inline void QOpenGLFunctions_ES2::glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
698 {
699     ::glScissor(x, y, width, height);
700 }
701 
glShaderBinary(GLsizei n,const GLuint * shaders,GLenum binaryformat,const GLvoid * binary,GLsizei length)702 inline void QOpenGLFunctions_ES2::glShaderBinary(GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length)
703 {
704     ::glShaderBinary(n, shaders, binaryformat, binary, length);
705 }
706 
glShaderSource(GLuint shader,GLsizei count,const GLchar ** string,const GLint * length)707 inline void QOpenGLFunctions_ES2::glShaderSource(GLuint shader, GLsizei count, const GLchar* *string, const GLint* length)
708 {
709     ::glShaderSource(shader, count, string, length);
710 }
711 
glStencilFunc(GLenum func,GLint ref,GLuint mask)712 inline void QOpenGLFunctions_ES2::glStencilFunc(GLenum func, GLint ref, GLuint mask)
713 {
714     ::glStencilFunc(func, ref, mask);
715 }
716 
glStencilFuncSeparate(GLenum face,GLenum func,GLint ref,GLuint mask)717 inline void QOpenGLFunctions_ES2::glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
718 {
719     ::glStencilFuncSeparate(face, func, ref, mask);
720 }
721 
glStencilMask(GLuint mask)722 inline void QOpenGLFunctions_ES2::glStencilMask(GLuint mask)
723 {
724     ::glStencilMask(mask);
725 }
726 
glStencilMaskSeparate(GLenum face,GLuint mask)727 inline void QOpenGLFunctions_ES2::glStencilMaskSeparate(GLenum face, GLuint mask)
728 {
729     ::glStencilMaskSeparate(face, mask);
730 }
731 
glStencilOp(GLenum fail,GLenum zfail,GLenum zpass)732 inline void QOpenGLFunctions_ES2::glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
733 {
734     ::glStencilOp(fail, zfail, zpass);
735 }
736 
glStencilOpSeparate(GLenum face,GLenum fail,GLenum zfail,GLenum zpass)737 inline void QOpenGLFunctions_ES2::glStencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass)
738 {
739     ::glStencilOpSeparate(face, fail, zfail, zpass);
740 }
741 
glTexImage2D(GLenum target,GLint level,GLint internalformat,GLsizei width,GLsizei height,GLint border,GLenum format,GLenum type,const GLvoid * pixels)742 inline void QOpenGLFunctions_ES2::glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels)
743 {
744     ::glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
745 }
746 
glTexParameterf(GLenum target,GLenum pname,GLfloat param)747 inline void QOpenGLFunctions_ES2::glTexParameterf(GLenum target, GLenum pname, GLfloat param)
748 {
749     ::glTexParameterf(target, pname, param);
750 }
751 
glTexParameterfv(GLenum target,GLenum pname,const GLfloat * params)752 inline void QOpenGLFunctions_ES2::glTexParameterfv(GLenum target, GLenum pname, const GLfloat* params)
753 {
754     ::glTexParameterfv(target, pname, params);
755 }
756 
glTexParameteri(GLenum target,GLenum pname,GLint param)757 inline void QOpenGLFunctions_ES2::glTexParameteri(GLenum target, GLenum pname, GLint param)
758 {
759     ::glTexParameteri(target, pname, param);
760 }
761 
glTexParameteriv(GLenum target,GLenum pname,const GLint * params)762 inline void QOpenGLFunctions_ES2::glTexParameteriv(GLenum target, GLenum pname, const GLint* params)
763 {
764     ::glTexParameteriv(target, pname, params);
765 }
766 
glTexSubImage2D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLsizei width,GLsizei height,GLenum format,GLenum type,const GLvoid * pixels)767 inline void QOpenGLFunctions_ES2::glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels)
768 {
769     ::glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
770 }
771 
glUniform1f(GLint location,GLfloat x)772 inline void QOpenGLFunctions_ES2::glUniform1f(GLint location, GLfloat x)
773 {
774     ::glUniform1f(location, x);
775 }
776 
glUniform1fv(GLint location,GLsizei count,const GLfloat * v)777 inline void QOpenGLFunctions_ES2::glUniform1fv(GLint location, GLsizei count, const GLfloat* v)
778 {
779     ::glUniform1fv(location, count, v);
780 }
781 
glUniform1i(GLint location,GLint x)782 inline void QOpenGLFunctions_ES2::glUniform1i(GLint location, GLint x)
783 {
784     ::glUniform1i(location, x);
785 }
786 
glUniform1iv(GLint location,GLsizei count,const GLint * v)787 inline void QOpenGLFunctions_ES2::glUniform1iv(GLint location, GLsizei count, const GLint* v)
788 {
789     ::glUniform1iv(location, count, v);
790 }
791 
glUniform2f(GLint location,GLfloat x,GLfloat y)792 inline void QOpenGLFunctions_ES2::glUniform2f(GLint location, GLfloat x, GLfloat y)
793 {
794     ::glUniform2f(location, x, y);
795 }
796 
glUniform2fv(GLint location,GLsizei count,const GLfloat * v)797 inline void QOpenGLFunctions_ES2::glUniform2fv(GLint location, GLsizei count, const GLfloat* v)
798 {
799     ::glUniform2fv(location, count, v);
800 }
801 
glUniform2i(GLint location,GLint x,GLint y)802 inline void QOpenGLFunctions_ES2::glUniform2i(GLint location, GLint x, GLint y)
803 {
804     ::glUniform2i(location, x, y);
805 }
806 
glUniform2iv(GLint location,GLsizei count,const GLint * v)807 inline void QOpenGLFunctions_ES2::glUniform2iv(GLint location, GLsizei count, const GLint* v)
808 {
809     ::glUniform2iv(location, count, v);
810 }
811 
glUniform3f(GLint location,GLfloat x,GLfloat y,GLfloat z)812 inline void QOpenGLFunctions_ES2::glUniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z)
813 {
814     ::glUniform3f(location, x, y, z);
815 }
816 
glUniform3fv(GLint location,GLsizei count,const GLfloat * v)817 inline void QOpenGLFunctions_ES2::glUniform3fv(GLint location, GLsizei count, const GLfloat* v)
818 {
819     ::glUniform3fv(location, count, v);
820 }
821 
glUniform3i(GLint location,GLint x,GLint y,GLint z)822 inline void QOpenGLFunctions_ES2::glUniform3i(GLint location, GLint x, GLint y, GLint z)
823 {
824     ::glUniform3i(location, x, y, z);
825 }
826 
glUniform3iv(GLint location,GLsizei count,const GLint * v)827 inline void QOpenGLFunctions_ES2::glUniform3iv(GLint location, GLsizei count, const GLint* v)
828 {
829     ::glUniform3iv(location, count, v);
830 }
831 
glUniform4f(GLint location,GLfloat x,GLfloat y,GLfloat z,GLfloat w)832 inline void QOpenGLFunctions_ES2::glUniform4f(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
833 {
834     ::glUniform4f(location, x, y, z, w);
835 }
836 
glUniform4fv(GLint location,GLsizei count,const GLfloat * v)837 inline void QOpenGLFunctions_ES2::glUniform4fv(GLint location, GLsizei count, const GLfloat* v)
838 {
839     ::glUniform4fv(location, count, v);
840 }
841 
glUniform4i(GLint location,GLint x,GLint y,GLint z,GLint w)842 inline void QOpenGLFunctions_ES2::glUniform4i(GLint location, GLint x, GLint y, GLint z, GLint w)
843 {
844     ::glUniform4i(location, x, y, z, w);
845 }
846 
glUniform4iv(GLint location,GLsizei count,const GLint * v)847 inline void QOpenGLFunctions_ES2::glUniform4iv(GLint location, GLsizei count, const GLint* v)
848 {
849     ::glUniform4iv(location, count, v);
850 }
851 
glUniformMatrix2fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)852 inline void QOpenGLFunctions_ES2::glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
853 {
854     ::glUniformMatrix2fv(location, count, transpose, value);
855 }
856 
glUniformMatrix3fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)857 inline void QOpenGLFunctions_ES2::glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
858 {
859     ::glUniformMatrix3fv(location, count, transpose, value);
860 }
861 
glUniformMatrix4fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)862 inline void QOpenGLFunctions_ES2::glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
863 {
864     ::glUniformMatrix4fv(location, count, transpose, value);
865 }
866 
glUseProgram(GLuint program)867 inline void QOpenGLFunctions_ES2::glUseProgram(GLuint program)
868 {
869     ::glUseProgram(program);
870 }
871 
glValidateProgram(GLuint program)872 inline void QOpenGLFunctions_ES2::glValidateProgram(GLuint program)
873 {
874     ::glValidateProgram(program);
875 }
876 
glVertexAttrib1f(GLuint indx,GLfloat x)877 inline void QOpenGLFunctions_ES2::glVertexAttrib1f(GLuint indx, GLfloat x)
878 {
879     ::glVertexAttrib1f(indx, x);
880 }
881 
glVertexAttrib1fv(GLuint indx,const GLfloat * values)882 inline void QOpenGLFunctions_ES2::glVertexAttrib1fv(GLuint indx, const GLfloat* values)
883 {
884     ::glVertexAttrib1fv(indx, values);
885 }
886 
glVertexAttrib2f(GLuint indx,GLfloat x,GLfloat y)887 inline void QOpenGLFunctions_ES2::glVertexAttrib2f(GLuint indx, GLfloat x, GLfloat y)
888 {
889     ::glVertexAttrib2f(indx, x, y);
890 }
891 
glVertexAttrib2fv(GLuint indx,const GLfloat * values)892 inline void QOpenGLFunctions_ES2::glVertexAttrib2fv(GLuint indx, const GLfloat* values)
893 {
894     ::glVertexAttrib2fv(indx, values);
895 }
896 
glVertexAttrib3f(GLuint indx,GLfloat x,GLfloat y,GLfloat z)897 inline void QOpenGLFunctions_ES2::glVertexAttrib3f(GLuint indx, GLfloat x, GLfloat y, GLfloat z)
898 {
899     ::glVertexAttrib3f(indx, x, y, z);
900 }
901 
glVertexAttrib3fv(GLuint indx,const GLfloat * values)902 inline void QOpenGLFunctions_ES2::glVertexAttrib3fv(GLuint indx, const GLfloat* values)
903 {
904     ::glVertexAttrib3fv(indx, values);
905 }
906 
glVertexAttrib4f(GLuint indx,GLfloat x,GLfloat y,GLfloat z,GLfloat w)907 inline void QOpenGLFunctions_ES2::glVertexAttrib4f(GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
908 {
909     ::glVertexAttrib4f(indx, x, y, z, w);
910 }
911 
glVertexAttrib4fv(GLuint indx,const GLfloat * values)912 inline void QOpenGLFunctions_ES2::glVertexAttrib4fv(GLuint indx, const GLfloat* values)
913 {
914     ::glVertexAttrib4fv(indx, values);
915 }
916 
glVertexAttribPointer(GLuint indx,GLint size,GLenum type,GLboolean normalized,GLsizei stride,const GLvoid * ptr)917 inline void QOpenGLFunctions_ES2::glVertexAttribPointer(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr)
918 {
919     ::glVertexAttribPointer(indx, size, type, normalized, stride, ptr);
920 }
921 
glViewport(GLint x,GLint y,GLsizei width,GLsizei height)922 inline void QOpenGLFunctions_ES2::glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
923 {
924     ::glViewport(x, y, width, height);
925 }
926 
927 QT_END_NAMESPACE
928 
929 #endif // QT_OPENGL_ES_2
930 
931 #endif
932