1 // Generated Code - DO NOT EDIT !!
2 // generated by 'emugen'
3 #include <stdio.h>
4 #include <stdlib.h>
5 #include "gl2_client_context.h"
6
7 extern "C" {
8 void glActiveTexture(GLenum texture);
9 void glAttachShader(GLuint program, GLuint shader);
10 void glBindAttribLocation(GLuint program, GLuint index, const GLchar* name);
11 void glBindBuffer(GLenum target, GLuint buffer);
12 void glBindFramebuffer(GLenum target, GLuint framebuffer);
13 void glBindRenderbuffer(GLenum target, GLuint renderbuffer);
14 void glBindTexture(GLenum target, GLuint texture);
15 void glBlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
16 void glBlendEquation(GLenum mode);
17 void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
18 void glBlendFunc(GLenum sfactor, GLenum dfactor);
19 void glBlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
20 void glBufferData(GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage);
21 void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data);
22 GLenum glCheckFramebufferStatus(GLenum target);
23 void glClear(GLbitfield mask);
24 void glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
25 void glClearDepthf(GLclampf depth);
26 void glClearStencil(GLint s);
27 void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
28 void glCompileShader(GLuint shader);
29 void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data);
30 void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data);
31 void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
32 void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
33 GLuint glCreateProgram();
34 GLuint glCreateShader(GLenum type);
35 void glCullFace(GLenum mode);
36 void glDeleteBuffers(GLsizei n, const GLuint* buffers);
37 void glDeleteFramebuffers(GLsizei n, const GLuint* framebuffers);
38 void glDeleteProgram(GLuint program);
39 void glDeleteRenderbuffers(GLsizei n, const GLuint* renderbuffers);
40 void glDeleteShader(GLuint shader);
41 void glDeleteTextures(GLsizei n, const GLuint* textures);
42 void glDepthFunc(GLenum func);
43 void glDepthMask(GLboolean flag);
44 void glDepthRangef(GLclampf zNear, GLclampf zFar);
45 void glDetachShader(GLuint program, GLuint shader);
46 void glDisable(GLenum cap);
47 void glDisableVertexAttribArray(GLuint index);
48 void glDrawArrays(GLenum mode, GLint first, GLsizei count);
49 void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid* indices);
50 void glEnable(GLenum cap);
51 void glEnableVertexAttribArray(GLuint index);
52 void glFinish();
53 void glFlush();
54 void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
55 void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
56 void glFrontFace(GLenum mode);
57 void glGenBuffers(GLsizei n, GLuint* buffers);
58 void glGenerateMipmap(GLenum target);
59 void glGenFramebuffers(GLsizei n, GLuint* framebuffers);
60 void glGenRenderbuffers(GLsizei n, GLuint* renderbuffers);
61 void glGenTextures(GLsizei n, GLuint* textures);
62 void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
63 void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
64 void glGetAttachedShaders(GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders);
65 int glGetAttribLocation(GLuint program, const GLchar* name);
66 void glGetBooleanv(GLenum pname, GLboolean* params);
67 void glGetBufferParameteriv(GLenum target, GLenum pname, GLint* params);
68 GLenum glGetError();
69 void glGetFloatv(GLenum pname, GLfloat* params);
70 void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint* params);
71 void glGetIntegerv(GLenum pname, GLint* params);
72 void glGetProgramiv(GLuint program, GLenum pname, GLint* params);
73 void glGetProgramInfoLog(GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog);
74 void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint* params);
75 void glGetShaderiv(GLuint shader, GLenum pname, GLint* params);
76 void glGetShaderInfoLog(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog);
77 void glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision);
78 void glGetShaderSource(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source);
79 const GLubyte* glGetString(GLenum name);
80 void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat* params);
81 void glGetTexParameteriv(GLenum target, GLenum pname, GLint* params);
82 void glGetUniformfv(GLuint program, GLint location, GLfloat* params);
83 void glGetUniformiv(GLuint program, GLint location, GLint* params);
84 int glGetUniformLocation(GLuint program, const GLchar* name);
85 void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat* params);
86 void glGetVertexAttribiv(GLuint index, GLenum pname, GLint* params);
87 void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid** pointer);
88 void glHint(GLenum target, GLenum mode);
89 GLboolean glIsBuffer(GLuint buffer);
90 GLboolean glIsEnabled(GLenum cap);
91 GLboolean glIsFramebuffer(GLuint framebuffer);
92 GLboolean glIsProgram(GLuint program);
93 GLboolean glIsRenderbuffer(GLuint renderbuffer);
94 GLboolean glIsShader(GLuint shader);
95 GLboolean glIsTexture(GLuint texture);
96 void glLineWidth(GLfloat width);
97 void glLinkProgram(GLuint program);
98 void glPixelStorei(GLenum pname, GLint param);
99 void glPolygonOffset(GLfloat factor, GLfloat units);
100 void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels);
101 void glReleaseShaderCompiler();
102 void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
103 void glSampleCoverage(GLclampf value, GLboolean invert);
104 void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
105 void glShaderBinary(GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length);
106 void glShaderSource(GLuint shader, GLsizei count, const GLchar* const* string, const GLint* length);
107 void glStencilFunc(GLenum func, GLint ref, GLuint mask);
108 void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
109 void glStencilMask(GLuint mask);
110 void glStencilMaskSeparate(GLenum face, GLuint mask);
111 void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
112 void glStencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass);
113 void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
114 void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
115 void glTexParameterfv(GLenum target, GLenum pname, const GLfloat* params);
116 void glTexParameteri(GLenum target, GLenum pname, GLint param);
117 void glTexParameteriv(GLenum target, GLenum pname, const GLint* params);
118 void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels);
119 void glUniform1f(GLint location, GLfloat x);
120 void glUniform1fv(GLint location, GLsizei count, const GLfloat* v);
121 void glUniform1i(GLint location, GLint x);
122 void glUniform1iv(GLint location, GLsizei count, const GLint* v);
123 void glUniform2f(GLint location, GLfloat x, GLfloat y);
124 void glUniform2fv(GLint location, GLsizei count, const GLfloat* v);
125 void glUniform2i(GLint location, GLint x, GLint y);
126 void glUniform2iv(GLint location, GLsizei count, const GLint* v);
127 void glUniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z);
128 void glUniform3fv(GLint location, GLsizei count, const GLfloat* v);
129 void glUniform3i(GLint location, GLint x, GLint y, GLint z);
130 void glUniform3iv(GLint location, GLsizei count, const GLint* v);
131 void glUniform4f(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
132 void glUniform4fv(GLint location, GLsizei count, const GLfloat* v);
133 void glUniform4i(GLint location, GLint x, GLint y, GLint z, GLint w);
134 void glUniform4iv(GLint location, GLsizei count, const GLint* v);
135 void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
136 void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
137 void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
138 void glUseProgram(GLuint program);
139 void glValidateProgram(GLuint program);
140 void glVertexAttrib1f(GLuint indx, GLfloat x);
141 void glVertexAttrib1fv(GLuint indx, const GLfloat* values);
142 void glVertexAttrib2f(GLuint indx, GLfloat x, GLfloat y);
143 void glVertexAttrib2fv(GLuint indx, const GLfloat* values);
144 void glVertexAttrib3f(GLuint indx, GLfloat x, GLfloat y, GLfloat z);
145 void glVertexAttrib3fv(GLuint indx, const GLfloat* values);
146 void glVertexAttrib4f(GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
147 void glVertexAttrib4fv(GLuint indx, const GLfloat* values);
148 void glVertexAttribPointer(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr);
149 void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
150 void glEGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image);
151 void glEGLImageTargetRenderbufferStorageOES(GLenum target, GLeglImageOES image);
152 void glGetProgramBinaryOES(GLuint program, GLsizei bufSize, GLsizei* length, GLenum* binaryFormat, GLvoid* binary);
153 void glProgramBinaryOES(GLuint program, GLenum binaryFormat, const GLvoid* binary, GLint length);
154 void* glMapBufferOES(GLenum target, GLenum access);
155 GLboolean glUnmapBufferOES(GLenum target);
156 void glTexImage3DOES(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
157 void glTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels);
158 void glCopyTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
159 void glCompressedTexImage3DOES(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data);
160 void glCompressedTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data);
161 void glFramebufferTexture3DOES(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
162 void glBindVertexArrayOES(GLuint array);
163 void glDeleteVertexArraysOES(GLsizei n, const GLuint* arrays);
164 void glGenVertexArraysOES(GLsizei n, GLuint* arrays);
165 GLboolean glIsVertexArrayOES(GLuint array);
166 void glDiscardFramebufferEXT(GLenum target, GLsizei numAttachments, const GLenum* attachments);
167 void glMultiDrawArraysEXT(GLenum mode, const GLint* first, const GLsizei* count, GLsizei primcount);
168 void glMultiDrawElementsEXT(GLenum mode, const GLsizei* count, GLenum type, const GLvoid* const* indices, GLsizei primcount);
169 void glGetPerfMonitorGroupsAMD(GLint* numGroups, GLsizei groupsSize, GLuint* groups);
170 void glGetPerfMonitorCountersAMD(GLuint group, GLint* numCounters, GLint* maxActiveCounters, GLsizei counterSize, GLuint* counters);
171 void glGetPerfMonitorGroupStringAMD(GLuint group, GLsizei bufSize, GLsizei* length, GLchar* groupString);
172 void glGetPerfMonitorCounterStringAMD(GLuint group, GLuint counter, GLsizei bufSize, GLsizei* length, GLchar* counterString);
173 void glGetPerfMonitorCounterInfoAMD(GLuint group, GLuint counter, GLenum pname, GLvoid* data);
174 void glGenPerfMonitorsAMD(GLsizei n, GLuint* monitors);
175 void glDeletePerfMonitorsAMD(GLsizei n, GLuint* monitors);
176 void glSelectPerfMonitorCountersAMD(GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint* countersList);
177 void glBeginPerfMonitorAMD(GLuint monitor);
178 void glEndPerfMonitorAMD(GLuint monitor);
179 void glGetPerfMonitorCounterDataAMD(GLuint monitor, GLenum pname, GLsizei dataSize, GLuint* data, GLint* bytesWritten);
180 void glRenderbufferStorageMultisampleIMG(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
181 void glFramebufferTexture2DMultisampleIMG(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
182 void glDeleteFencesNV(GLsizei n, const GLuint* fences);
183 void glGenFencesNV(GLsizei n, GLuint* fences);
184 GLboolean glIsFenceNV(GLuint fence);
185 GLboolean glTestFenceNV(GLuint fence);
186 void glGetFenceivNV(GLuint fence, GLenum pname, GLint* params);
187 void glFinishFenceNV(GLuint fence);
188 void glSetFenceNV(GLuint fence, GLenum condition);
189 void glCoverageMaskNV(GLboolean mask);
190 void glCoverageOperationNV(GLenum operation);
191 void glGetDriverControlsQCOM(GLint* num, GLsizei size, GLuint* driverControls);
192 void glGetDriverControlStringQCOM(GLuint driverControl, GLsizei bufSize, GLsizei* length, GLchar* driverControlString);
193 void glEnableDriverControlQCOM(GLuint driverControl);
194 void glDisableDriverControlQCOM(GLuint driverControl);
195 void glExtGetTexturesQCOM(GLuint* textures, GLint maxTextures, GLint* numTextures);
196 void glExtGetBuffersQCOM(GLuint* buffers, GLint maxBuffers, GLint* numBuffers);
197 void glExtGetRenderbuffersQCOM(GLuint* renderbuffers, GLint maxRenderbuffers, GLint* numRenderbuffers);
198 void glExtGetFramebuffersQCOM(GLuint* framebuffers, GLint maxFramebuffers, GLint* numFramebuffers);
199 void glExtGetTexLevelParameterivQCOM(GLuint texture, GLenum face, GLint level, GLenum pname, GLint* params);
200 void glExtTexObjectStateOverrideiQCOM(GLenum target, GLenum pname, GLint param);
201 void glExtGetTexSubImageQCOM(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid* texels);
202 void glExtGetBufferPointervQCOM(GLenum target, GLvoidptr* params);
203 void glExtGetShadersQCOM(GLuint* shaders, GLint maxShaders, GLint* numShaders);
204 void glExtGetProgramsQCOM(GLuint* programs, GLint maxPrograms, GLint* numPrograms);
205 GLboolean glExtIsProgramBinaryQCOM(GLuint program);
206 void glExtGetProgramBinarySourceQCOM(GLuint program, GLenum shadertype, GLchar* source, GLint* length);
207 void glStartTilingQCOM(GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
208 void glEndTilingQCOM(GLbitfield preserveMask);
209 void glVertexAttribPointerData(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, void* data, GLuint datalen);
210 void glVertexAttribPointerOffset(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint offset);
211 void glDrawElementsOffset(GLenum mode, GLsizei count, GLenum type, GLuint offset);
212 void glDrawElementsData(GLenum mode, GLsizei count, GLenum type, void* data, GLuint datalen);
213 void glGetCompressedTextureFormats(int count, GLint* formats);
214 void glShaderString(GLuint shader, const GLchar* string, GLsizei len);
215 int glFinishRoundTrip();
216 void glGenVertexArrays(GLsizei n, GLuint* arrays);
217 void glBindVertexArray(GLuint array);
218 void glDeleteVertexArrays(GLsizei n, const GLuint* arrays);
219 GLboolean glIsVertexArray(GLuint array);
220 void* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
221 GLboolean glUnmapBuffer(GLenum target);
222 void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
223 void glMapBufferRangeAEMU(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, void* mapped);
224 void glUnmapBufferAEMU(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, void* guest_buffer, GLboolean* out_res);
225 void glFlushMappedBufferRangeAEMU(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, void* guest_buffer);
226 void glReadPixelsOffsetAEMU(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLuint offset);
227 void glCompressedTexImage2DOffsetAEMU(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, GLuint offset);
228 void glCompressedTexSubImage2DOffsetAEMU(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, GLuint offset);
229 void glTexImage2DOffsetAEMU(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, GLuint offset);
230 void glTexSubImage2DOffsetAEMU(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, GLuint offset);
231 void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
232 void glBindBufferBase(GLenum target, GLuint index, GLuint buffer);
233 void glCopyBufferSubData(GLenum readtarget, GLenum writetarget, GLintptr readoffset, GLintptr writeoffset, GLsizeiptr size);
234 void glClearBufferiv(GLenum buffer, GLint drawBuffer, const GLint* value);
235 void glClearBufferuiv(GLenum buffer, GLint drawBuffer, const GLuint* value);
236 void glClearBufferfv(GLenum buffer, GLint drawBuffer, const GLfloat* value);
237 void glClearBufferfi(GLenum buffer, GLint drawBuffer, GLfloat depth, GLint stencil);
238 void glGetBufferParameteri64v(GLenum target, GLenum value, GLint64* data);
239 void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid** params);
240 void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
241 GLuint glGetUniformBlockIndex(GLuint program, const GLchar* uniformBlockName);
242 void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar** uniformNames, GLuint* uniformIndices);
243 void glGetUniformIndicesAEMU(GLuint program, GLsizei uniformCount, const GLchar* packedUniformNames, GLsizei packedLen, GLuint* uniformIndices);
244 void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params);
245 void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, GLchar* uniformBlockName);
246 void glUniform1ui(GLint location, GLuint v0);
247 void glUniform2ui(GLint location, GLuint v0, GLuint v1);
248 void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
249 void glUniform4ui(GLint location, GLint v0, GLuint v1, GLuint v2, GLuint v3);
250 void glUniform1uiv(GLint location, GLsizei count, const GLuint* value);
251 void glUniform2uiv(GLint location, GLsizei count, const GLuint* value);
252 void glUniform3uiv(GLint location, GLsizei count, const GLuint* value);
253 void glUniform4uiv(GLint location, GLsizei count, const GLuint* value);
254 void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
255 void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
256 void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
257 void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
258 void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
259 void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
260 void glGetUniformuiv(GLuint program, GLint location, GLuint* params);
261 void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint* uniformIndices, GLenum pname, GLint* params);
262 void glVertexAttribI4i(GLuint index, GLint v0, GLint v1, GLint v2, GLint v3);
263 void glVertexAttribI4ui(GLuint index, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
264 void glVertexAttribI4iv(GLuint index, const GLint* v);
265 void glVertexAttribI4uiv(GLuint index, const GLuint* v);
266 void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid* pointer);
267 void glVertexAttribIPointerOffsetAEMU(GLuint index, GLint size, GLenum type, GLsizei stride, GLuint offset);
268 void glVertexAttribIPointerDataAEMU(GLuint index, GLint size, GLenum type, GLsizei stride, void* data, GLuint datalen);
269 void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint* params);
270 void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint* params);
271 void glVertexAttribDivisor(GLuint index, GLuint divisor);
272 void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei primcount);
273 void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei primcount);
274 void glDrawElementsInstancedDataAEMU(GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei primcount, GLsizei datalen);
275 void glDrawElementsInstancedOffsetAEMU(GLenum mode, GLsizei count, GLenum type, GLuint offset, GLsizei primcount);
276 void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid* indices);
277 void glDrawRangeElementsDataAEMU(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid* indices, GLsizei datalen);
278 void glDrawRangeElementsOffsetAEMU(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, GLuint offset);
279 GLsync glFenceSync(GLenum condition, GLbitfield flags);
280 GLenum glClientWaitSync(GLsync wait_on, GLbitfield flags, GLuint64 timeout);
281 void glWaitSync(GLsync wait_on, GLbitfield flags, GLuint64 timeout);
282 void glDeleteSync(GLsync to_delete);
283 GLboolean glIsSync(GLsync sync);
284 void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values);
285 uint64_t glFenceSyncAEMU(GLenum condition, GLbitfield flags);
286 GLenum glClientWaitSyncAEMU(uint64_t wait_on, GLbitfield flags, GLuint64 timeout);
287 void glWaitSyncAEMU(uint64_t wait_on, GLbitfield flags, GLuint64 timeout);
288 void glDeleteSyncAEMU(uint64_t to_delete);
289 GLboolean glIsSyncAEMU(uint64_t sync);
290 void glGetSyncivAEMU(uint64_t sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values);
291 void glDrawBuffers(GLsizei n, const GLenum* bufs);
292 void glReadBuffer(GLenum src);
293 void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
294 void glInvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum* attachments);
295 void glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum* attachments, GLint x, GLint y, GLsizei width, GLsizei height);
296 void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
297 void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
298 void glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
299 void glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint* params);
300 void glBeginTransformFeedback(GLenum primitiveMode);
301 void glEndTransformFeedback();
302 void glGenTransformFeedbacks(GLsizei n, GLuint* ids);
303 void glDeleteTransformFeedbacks(GLsizei n, const GLuint* ids);
304 void glBindTransformFeedback(GLenum target, GLuint id);
305 void glPauseTransformFeedback();
306 void glResumeTransformFeedback();
307 GLboolean glIsTransformFeedback(GLuint id);
308 void glTransformFeedbackVaryings(GLuint program, GLsizei count, const char** varyings, GLenum bufferMode);
309 void glTransformFeedbackVaryingsAEMU(GLuint program, GLsizei count, const char* packedVaryings, GLuint packedVaryingsLen, GLenum bufferMode);
310 void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, char* name);
311 void glGenSamplers(GLsizei n, GLuint* samplers);
312 void glDeleteSamplers(GLsizei n, const GLuint* samplers);
313 void glBindSampler(GLuint unit, GLuint sampler);
314 void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
315 void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param);
316 void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat* params);
317 void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint* params);
318 void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat* params);
319 void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint* params);
320 GLboolean glIsSampler(GLuint sampler);
321 void glGenQueries(GLsizei n, GLuint* queries);
322 void glDeleteQueries(GLsizei n, const GLuint* queries);
323 void glBeginQuery(GLenum target, GLuint query);
324 void glEndQuery(GLenum target);
325 void glGetQueryiv(GLenum target, GLenum pname, GLint* params);
326 void glGetQueryObjectuiv(GLuint query, GLenum pname, GLuint* params);
327 GLboolean glIsQuery(GLuint query);
328 void glProgramParameteri(GLuint program, GLenum pname, GLint value);
329 void glProgramBinary(GLuint program, GLenum binaryFormat, const void* binary, GLsizei length);
330 void glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei* length, GLenum* binaryFormat, void* binary);
331 GLint glGetFragDataLocation(GLuint program, const char* name);
332 void glGetInteger64v(GLenum pname, GLint64* data);
333 void glGetIntegeri_v(GLenum target, GLuint index, GLint* data);
334 void glGetInteger64i_v(GLenum target, GLuint index, GLint64* data);
335 void glTexImage3D(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* data);
336 void glTexImage3DOffsetAEMU(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, GLuint offset);
337 void glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
338 void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* data);
339 void glTexSubImage3DOffsetAEMU(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLuint offset);
340 void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data);
341 void glCompressedTexImage3DOffsetAEMU(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, GLuint offset);
342 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);
343 void glCompressedTexSubImage3DOffsetAEMU(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, GLuint data);
344 void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
345 const GLubyte* glGetStringi(GLenum name, GLuint index);
346 void glGetBooleani_v(GLenum target, GLuint index, GLboolean* data);
347 void glMemoryBarrier(GLbitfield barriers);
348 void glMemoryBarrierByRegion(GLbitfield barriers);
349 void glGenProgramPipelines(GLsizei n, GLuint* pipelines);
350 void glDeleteProgramPipelines(GLsizei n, const GLuint* pipelines);
351 void glBindProgramPipeline(GLuint pipeline);
352 void glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint* params);
353 void glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei* length, GLchar* infoLog);
354 void glValidateProgramPipeline(GLuint pipeline);
355 GLboolean glIsProgramPipeline(GLuint pipeline);
356 void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program);
357 void glActiveShaderProgram(GLuint pipeline, GLuint program);
358 GLuint glCreateShaderProgramv(GLenum type, GLsizei count, const char** strings);
359 GLuint glCreateShaderProgramvAEMU(GLenum type, GLsizei count, const char* packedStrings, GLuint packedLen);
360 void glProgramUniform1f(GLuint program, GLint location, GLfloat v0);
361 void glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1);
362 void glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
363 void glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
364 void glProgramUniform1i(GLuint program, GLint location, GLint v0);
365 void glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1);
366 void glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
367 void glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
368 void glProgramUniform1ui(GLuint program, GLint location, GLuint v0);
369 void glProgramUniform2ui(GLuint program, GLint location, GLint v0, GLuint v1);
370 void glProgramUniform3ui(GLuint program, GLint location, GLint v0, GLint v1, GLuint v2);
371 void glProgramUniform4ui(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLuint v3);
372 void glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat* value);
373 void glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat* value);
374 void glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat* value);
375 void glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat* value);
376 void glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint* value);
377 void glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint* value);
378 void glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint* value);
379 void glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint* value);
380 void glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint* value);
381 void glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint* value);
382 void glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint* value);
383 void glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint* value);
384 void glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
385 void glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
386 void glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
387 void glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
388 void glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
389 void glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
390 void glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
391 void glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
392 void glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
393 void glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint* params);
394 void glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum* props, GLsizei bufSize, GLsizei* length, GLint* params);
395 GLuint glGetProgramResourceIndex(GLuint program, GLenum programInterface, const char* name);
396 GLint glGetProgramResourceLocation(GLuint program, GLenum programInterface, const char* name);
397 void glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei* length, char* name);
398 void glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format);
399 void glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z);
400 void glDispatchComputeIndirect(GLintptr indirect);
401 void glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLintptr stride);
402 void glVertexAttribBinding(GLuint attribindex, GLuint bindingindex);
403 void glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
404 void glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
405 void glVertexBindingDivisor(GLuint bindingindex, GLuint divisor);
406 void glDrawArraysIndirect(GLenum mode, const void* indirect);
407 void glDrawArraysIndirectDataAEMU(GLenum mode, const void* indirect, GLuint datalen);
408 void glDrawArraysIndirectOffsetAEMU(GLenum mode, GLuint offset);
409 void glDrawElementsIndirect(GLenum mode, GLenum type, const void* indirect);
410 void glDrawElementsIndirectDataAEMU(GLenum mode, GLenum type, const void* indirect, GLuint datalen);
411 void glDrawElementsIndirectOffsetAEMU(GLenum mode, GLenum type, GLuint offset);
412 void glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
413 void glSampleMaski(GLuint maskNumber, GLbitfield mask);
414 void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat* val);
415 void glFramebufferParameteri(GLenum target, GLenum pname, GLint param);
416 void glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint* params);
417 void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat* params);
418 void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint* params);
419 void glMapBufferRangeDMA(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, uint64_t paddr);
420 void glUnmapBufferDMA(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, uint64_t paddr, GLboolean* out_res);
421 uint64_t glMapBufferRangeDirect(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, uint64_t paddr);
422 void glUnmapBufferDirect(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, uint64_t paddr, uint64_t guest_ptr, GLboolean* out_res);
423 void glFlushMappedBufferRangeDirect(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
424 GLenum glGetGraphicsResetStatusEXT();
425 void glReadnPixelsEXT(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid* data);
426 void glGetnUniformfvEXT(GLuint program, GLint location, GLsizei bufSize, GLfloat* params);
427 void glGetnUniformivEXT(GLuint program, GLint location, GLsizei bufSize, GLint* params);
428 void glDrawArraysNullAEMU(GLenum mode, GLint first, GLsizei count);
429 void glDrawElementsNullAEMU(GLenum mode, GLsizei count, GLenum type, const GLvoid* indices);
430 void glDrawElementsOffsetNullAEMU(GLenum mode, GLsizei count, GLenum type, GLuint offset);
431 void glDrawElementsDataNullAEMU(GLenum mode, GLsizei count, GLenum type, void* data, GLuint datalen);
432 void glUnmapBufferAsyncAEMU(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, void* guest_buffer, GLboolean* out_res);
433 void glFlushMappedBufferRangeAEMU2(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, void* guest_buffer);
434 GLboolean glBufferDataSyncAEMU(GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage);
435 void glTexBufferOES(GLenum target, GLenum internalFormat, GLuint buffer);
436 void glTexBufferRangeOES(GLenum target, GLenum internalFormat, GLuint buffer, GLintptr offset, GLsizeiptr size);
437 void glTexBufferEXT(GLenum target, GLenum internalFormat, GLuint buffer);
438 void glTexBufferRangeEXT(GLenum target, GLenum internalFormat, GLuint buffer, GLintptr offset, GLsizeiptr size);
439 void glEnableiEXT(GLenum cap, GLuint index);
440 void glDisableiEXT(GLenum cap, GLuint index);
441 void glBlendEquationiEXT(GLuint index, GLenum mode);
442 void glBlendEquationSeparateiEXT(GLuint index, GLenum modeRGB, GLenum modeAlpha);
443 void glBlendFunciEXT(GLuint index, GLenum sfactor, GLenum dfactor);
444 void glBlendFuncSeparateiEXT(GLuint index, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
445 void glColorMaskiEXT(GLuint index, GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
446 GLboolean glIsEnablediEXT(GLenum cap, GLuint index);
447 };
448
449 #ifndef GET_CONTEXT
450 static gl2_client_context_t::CONTEXT_ACCESSOR_TYPE *getCurrentContext = NULL;
setContextAccessor(CONTEXT_ACCESSOR_TYPE * f)451 void gl2_client_context_t::setContextAccessor(CONTEXT_ACCESSOR_TYPE *f) { getCurrentContext = f; }
452 #define GET_CONTEXT gl2_client_context_t * ctx = getCurrentContext()
453 #endif
454
glActiveTexture(GLenum texture)455 void glActiveTexture(GLenum texture)
456 {
457 GET_CONTEXT;
458 ctx->glActiveTexture(ctx, texture);
459 }
460
glAttachShader(GLuint program,GLuint shader)461 void glAttachShader(GLuint program, GLuint shader)
462 {
463 GET_CONTEXT;
464 ctx->glAttachShader(ctx, program, shader);
465 }
466
glBindAttribLocation(GLuint program,GLuint index,const GLchar * name)467 void glBindAttribLocation(GLuint program, GLuint index, const GLchar* name)
468 {
469 GET_CONTEXT;
470 ctx->glBindAttribLocation(ctx, program, index, name);
471 }
472
glBindBuffer(GLenum target,GLuint buffer)473 void glBindBuffer(GLenum target, GLuint buffer)
474 {
475 GET_CONTEXT;
476 ctx->glBindBuffer(ctx, target, buffer);
477 }
478
glBindFramebuffer(GLenum target,GLuint framebuffer)479 void glBindFramebuffer(GLenum target, GLuint framebuffer)
480 {
481 GET_CONTEXT;
482 ctx->glBindFramebuffer(ctx, target, framebuffer);
483 }
484
glBindRenderbuffer(GLenum target,GLuint renderbuffer)485 void glBindRenderbuffer(GLenum target, GLuint renderbuffer)
486 {
487 GET_CONTEXT;
488 ctx->glBindRenderbuffer(ctx, target, renderbuffer);
489 }
490
glBindTexture(GLenum target,GLuint texture)491 void glBindTexture(GLenum target, GLuint texture)
492 {
493 GET_CONTEXT;
494 ctx->glBindTexture(ctx, target, texture);
495 }
496
glBlendColor(GLclampf red,GLclampf green,GLclampf blue,GLclampf alpha)497 void glBlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
498 {
499 GET_CONTEXT;
500 ctx->glBlendColor(ctx, red, green, blue, alpha);
501 }
502
glBlendEquation(GLenum mode)503 void glBlendEquation(GLenum mode)
504 {
505 GET_CONTEXT;
506 ctx->glBlendEquation(ctx, mode);
507 }
508
glBlendEquationSeparate(GLenum modeRGB,GLenum modeAlpha)509 void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
510 {
511 GET_CONTEXT;
512 ctx->glBlendEquationSeparate(ctx, modeRGB, modeAlpha);
513 }
514
glBlendFunc(GLenum sfactor,GLenum dfactor)515 void glBlendFunc(GLenum sfactor, GLenum dfactor)
516 {
517 GET_CONTEXT;
518 ctx->glBlendFunc(ctx, sfactor, dfactor);
519 }
520
glBlendFuncSeparate(GLenum srcRGB,GLenum dstRGB,GLenum srcAlpha,GLenum dstAlpha)521 void glBlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
522 {
523 GET_CONTEXT;
524 ctx->glBlendFuncSeparate(ctx, srcRGB, dstRGB, srcAlpha, dstAlpha);
525 }
526
glBufferData(GLenum target,GLsizeiptr size,const GLvoid * data,GLenum usage)527 void glBufferData(GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage)
528 {
529 GET_CONTEXT;
530 ctx->glBufferData(ctx, target, size, data, usage);
531 }
532
glBufferSubData(GLenum target,GLintptr offset,GLsizeiptr size,const GLvoid * data)533 void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data)
534 {
535 GET_CONTEXT;
536 ctx->glBufferSubData(ctx, target, offset, size, data);
537 }
538
glCheckFramebufferStatus(GLenum target)539 GLenum glCheckFramebufferStatus(GLenum target)
540 {
541 GET_CONTEXT;
542 return ctx->glCheckFramebufferStatus(ctx, target);
543 }
544
glClear(GLbitfield mask)545 void glClear(GLbitfield mask)
546 {
547 GET_CONTEXT;
548 ctx->glClear(ctx, mask);
549 }
550
glClearColor(GLclampf red,GLclampf green,GLclampf blue,GLclampf alpha)551 void glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
552 {
553 GET_CONTEXT;
554 ctx->glClearColor(ctx, red, green, blue, alpha);
555 }
556
glClearDepthf(GLclampf depth)557 void glClearDepthf(GLclampf depth)
558 {
559 GET_CONTEXT;
560 ctx->glClearDepthf(ctx, depth);
561 }
562
glClearStencil(GLint s)563 void glClearStencil(GLint s)
564 {
565 GET_CONTEXT;
566 ctx->glClearStencil(ctx, s);
567 }
568
glColorMask(GLboolean red,GLboolean green,GLboolean blue,GLboolean alpha)569 void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
570 {
571 GET_CONTEXT;
572 ctx->glColorMask(ctx, red, green, blue, alpha);
573 }
574
glCompileShader(GLuint shader)575 void glCompileShader(GLuint shader)
576 {
577 GET_CONTEXT;
578 ctx->glCompileShader(ctx, shader);
579 }
580
glCompressedTexImage2D(GLenum target,GLint level,GLenum internalformat,GLsizei width,GLsizei height,GLint border,GLsizei imageSize,const GLvoid * data)581 void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data)
582 {
583 GET_CONTEXT;
584 if(imageSize<0){ ctx->setError(GL_INVALID_VALUE); return; }
585 ctx->glCompressedTexImage2D(ctx, target, level, internalformat, width, height, border, imageSize, data);
586 }
587
glCompressedTexSubImage2D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLsizei width,GLsizei height,GLenum format,GLsizei imageSize,const GLvoid * data)588 void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data)
589 {
590 GET_CONTEXT;
591 if(imageSize<0){ ctx->setError(GL_INVALID_VALUE); return; }
592 ctx->glCompressedTexSubImage2D(ctx, target, level, xoffset, yoffset, width, height, format, imageSize, data);
593 }
594
glCopyTexImage2D(GLenum target,GLint level,GLenum internalformat,GLint x,GLint y,GLsizei width,GLsizei height,GLint border)595 void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
596 {
597 GET_CONTEXT;
598 ctx->glCopyTexImage2D(ctx, target, level, internalformat, x, y, width, height, border);
599 }
600
glCopyTexSubImage2D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint x,GLint y,GLsizei width,GLsizei height)601 void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
602 {
603 GET_CONTEXT;
604 ctx->glCopyTexSubImage2D(ctx, target, level, xoffset, yoffset, x, y, width, height);
605 }
606
glCreateProgram()607 GLuint glCreateProgram()
608 {
609 GET_CONTEXT;
610 return ctx->glCreateProgram(ctx);
611 }
612
glCreateShader(GLenum type)613 GLuint glCreateShader(GLenum type)
614 {
615 GET_CONTEXT;
616 return ctx->glCreateShader(ctx, type);
617 }
618
glCullFace(GLenum mode)619 void glCullFace(GLenum mode)
620 {
621 GET_CONTEXT;
622 ctx->glCullFace(ctx, mode);
623 }
624
glDeleteBuffers(GLsizei n,const GLuint * buffers)625 void glDeleteBuffers(GLsizei n, const GLuint* buffers)
626 {
627 GET_CONTEXT;
628 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
629 ctx->glDeleteBuffers(ctx, n, buffers);
630 }
631
glDeleteFramebuffers(GLsizei n,const GLuint * framebuffers)632 void glDeleteFramebuffers(GLsizei n, const GLuint* framebuffers)
633 {
634 GET_CONTEXT;
635 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
636 ctx->glDeleteFramebuffers(ctx, n, framebuffers);
637 }
638
glDeleteProgram(GLuint program)639 void glDeleteProgram(GLuint program)
640 {
641 GET_CONTEXT;
642 ctx->glDeleteProgram(ctx, program);
643 }
644
glDeleteRenderbuffers(GLsizei n,const GLuint * renderbuffers)645 void glDeleteRenderbuffers(GLsizei n, const GLuint* renderbuffers)
646 {
647 GET_CONTEXT;
648 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
649 ctx->glDeleteRenderbuffers(ctx, n, renderbuffers);
650 }
651
glDeleteShader(GLuint shader)652 void glDeleteShader(GLuint shader)
653 {
654 GET_CONTEXT;
655 ctx->glDeleteShader(ctx, shader);
656 }
657
glDeleteTextures(GLsizei n,const GLuint * textures)658 void glDeleteTextures(GLsizei n, const GLuint* textures)
659 {
660 GET_CONTEXT;
661 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
662 ctx->glDeleteTextures(ctx, n, textures);
663 }
664
glDepthFunc(GLenum func)665 void glDepthFunc(GLenum func)
666 {
667 GET_CONTEXT;
668 ctx->glDepthFunc(ctx, func);
669 }
670
glDepthMask(GLboolean flag)671 void glDepthMask(GLboolean flag)
672 {
673 GET_CONTEXT;
674 ctx->glDepthMask(ctx, flag);
675 }
676
glDepthRangef(GLclampf zNear,GLclampf zFar)677 void glDepthRangef(GLclampf zNear, GLclampf zFar)
678 {
679 GET_CONTEXT;
680 ctx->glDepthRangef(ctx, zNear, zFar);
681 }
682
glDetachShader(GLuint program,GLuint shader)683 void glDetachShader(GLuint program, GLuint shader)
684 {
685 GET_CONTEXT;
686 ctx->glDetachShader(ctx, program, shader);
687 }
688
glDisable(GLenum cap)689 void glDisable(GLenum cap)
690 {
691 GET_CONTEXT;
692 ctx->glDisable(ctx, cap);
693 }
694
glDisableVertexAttribArray(GLuint index)695 void glDisableVertexAttribArray(GLuint index)
696 {
697 GET_CONTEXT;
698 ctx->glDisableVertexAttribArray(ctx, index);
699 }
700
glDrawArrays(GLenum mode,GLint first,GLsizei count)701 void glDrawArrays(GLenum mode, GLint first, GLsizei count)
702 {
703 GET_CONTEXT;
704 ctx->glDrawArrays(ctx, mode, first, count);
705 }
706
glDrawElements(GLenum mode,GLsizei count,GLenum type,const GLvoid * indices)707 void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid* indices)
708 {
709 GET_CONTEXT;
710 ctx->glDrawElements(ctx, mode, count, type, indices);
711 }
712
glEnable(GLenum cap)713 void glEnable(GLenum cap)
714 {
715 GET_CONTEXT;
716 ctx->glEnable(ctx, cap);
717 }
718
glEnableVertexAttribArray(GLuint index)719 void glEnableVertexAttribArray(GLuint index)
720 {
721 GET_CONTEXT;
722 ctx->glEnableVertexAttribArray(ctx, index);
723 }
724
glFinish()725 void glFinish()
726 {
727 GET_CONTEXT;
728 ctx->glFinish(ctx);
729 }
730
glFlush()731 void glFlush()
732 {
733 GET_CONTEXT;
734 ctx->glFlush(ctx);
735 }
736
glFramebufferRenderbuffer(GLenum target,GLenum attachment,GLenum renderbuffertarget,GLuint renderbuffer)737 void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
738 {
739 GET_CONTEXT;
740 ctx->glFramebufferRenderbuffer(ctx, target, attachment, renderbuffertarget, renderbuffer);
741 }
742
glFramebufferTexture2D(GLenum target,GLenum attachment,GLenum textarget,GLuint texture,GLint level)743 void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
744 {
745 GET_CONTEXT;
746 ctx->glFramebufferTexture2D(ctx, target, attachment, textarget, texture, level);
747 }
748
glFrontFace(GLenum mode)749 void glFrontFace(GLenum mode)
750 {
751 GET_CONTEXT;
752 ctx->glFrontFace(ctx, mode);
753 }
754
glGenBuffers(GLsizei n,GLuint * buffers)755 void glGenBuffers(GLsizei n, GLuint* buffers)
756 {
757 GET_CONTEXT;
758 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
759 ctx->glGenBuffers(ctx, n, buffers);
760 }
761
glGenerateMipmap(GLenum target)762 void glGenerateMipmap(GLenum target)
763 {
764 GET_CONTEXT;
765 ctx->glGenerateMipmap(ctx, target);
766 }
767
glGenFramebuffers(GLsizei n,GLuint * framebuffers)768 void glGenFramebuffers(GLsizei n, GLuint* framebuffers)
769 {
770 GET_CONTEXT;
771 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
772 ctx->glGenFramebuffers(ctx, n, framebuffers);
773 }
774
glGenRenderbuffers(GLsizei n,GLuint * renderbuffers)775 void glGenRenderbuffers(GLsizei n, GLuint* renderbuffers)
776 {
777 GET_CONTEXT;
778 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
779 ctx->glGenRenderbuffers(ctx, n, renderbuffers);
780 }
781
glGenTextures(GLsizei n,GLuint * textures)782 void glGenTextures(GLsizei n, GLuint* textures)
783 {
784 GET_CONTEXT;
785 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
786 ctx->glGenTextures(ctx, n, textures);
787 }
788
glGetActiveAttrib(GLuint program,GLuint index,GLsizei bufsize,GLsizei * length,GLint * size,GLenum * type,GLchar * name)789 void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name)
790 {
791 GET_CONTEXT;
792 if(bufsize<0){ ctx->setError(GL_INVALID_VALUE); return; }
793 ctx->glGetActiveAttrib(ctx, program, index, bufsize, length, size, type, name);
794 }
795
glGetActiveUniform(GLuint program,GLuint index,GLsizei bufsize,GLsizei * length,GLint * size,GLenum * type,GLchar * name)796 void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name)
797 {
798 GET_CONTEXT;
799 if(bufsize<0){ ctx->setError(GL_INVALID_VALUE); return; }
800 ctx->glGetActiveUniform(ctx, program, index, bufsize, length, size, type, name);
801 }
802
glGetAttachedShaders(GLuint program,GLsizei maxcount,GLsizei * count,GLuint * shaders)803 void glGetAttachedShaders(GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders)
804 {
805 GET_CONTEXT;
806 ctx->glGetAttachedShaders(ctx, program, maxcount, count, shaders);
807 }
808
glGetAttribLocation(GLuint program,const GLchar * name)809 int glGetAttribLocation(GLuint program, const GLchar* name)
810 {
811 GET_CONTEXT;
812 return ctx->glGetAttribLocation(ctx, program, name);
813 }
814
glGetBooleanv(GLenum pname,GLboolean * params)815 void glGetBooleanv(GLenum pname, GLboolean* params)
816 {
817 GET_CONTEXT;
818 ctx->glGetBooleanv(ctx, pname, params);
819 }
820
glGetBufferParameteriv(GLenum target,GLenum pname,GLint * params)821 void glGetBufferParameteriv(GLenum target, GLenum pname, GLint* params)
822 {
823 GET_CONTEXT;
824 ctx->glGetBufferParameteriv(ctx, target, pname, params);
825 }
826
glGetError()827 GLenum glGetError()
828 {
829 GET_CONTEXT;
830 return ctx->glGetError(ctx);
831 }
832
glGetFloatv(GLenum pname,GLfloat * params)833 void glGetFloatv(GLenum pname, GLfloat* params)
834 {
835 GET_CONTEXT;
836 ctx->glGetFloatv(ctx, pname, params);
837 }
838
glGetFramebufferAttachmentParameteriv(GLenum target,GLenum attachment,GLenum pname,GLint * params)839 void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint* params)
840 {
841 GET_CONTEXT;
842 ctx->glGetFramebufferAttachmentParameteriv(ctx, target, attachment, pname, params);
843 }
844
glGetIntegerv(GLenum pname,GLint * params)845 void glGetIntegerv(GLenum pname, GLint* params)
846 {
847 GET_CONTEXT;
848 ctx->glGetIntegerv(ctx, pname, params);
849 }
850
glGetProgramiv(GLuint program,GLenum pname,GLint * params)851 void glGetProgramiv(GLuint program, GLenum pname, GLint* params)
852 {
853 GET_CONTEXT;
854 ctx->glGetProgramiv(ctx, program, pname, params);
855 }
856
glGetProgramInfoLog(GLuint program,GLsizei bufsize,GLsizei * length,GLchar * infolog)857 void glGetProgramInfoLog(GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog)
858 {
859 GET_CONTEXT;
860 if(bufsize<0){ ctx->setError(GL_INVALID_VALUE); return; }
861 ctx->glGetProgramInfoLog(ctx, program, bufsize, length, infolog);
862 }
863
glGetRenderbufferParameteriv(GLenum target,GLenum pname,GLint * params)864 void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint* params)
865 {
866 GET_CONTEXT;
867 ctx->glGetRenderbufferParameteriv(ctx, target, pname, params);
868 }
869
glGetShaderiv(GLuint shader,GLenum pname,GLint * params)870 void glGetShaderiv(GLuint shader, GLenum pname, GLint* params)
871 {
872 GET_CONTEXT;
873 ctx->glGetShaderiv(ctx, shader, pname, params);
874 }
875
glGetShaderInfoLog(GLuint shader,GLsizei bufsize,GLsizei * length,GLchar * infolog)876 void glGetShaderInfoLog(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog)
877 {
878 GET_CONTEXT;
879 if(bufsize<0){ ctx->setError(GL_INVALID_VALUE); return; }
880 ctx->glGetShaderInfoLog(ctx, shader, bufsize, length, infolog);
881 }
882
glGetShaderPrecisionFormat(GLenum shadertype,GLenum precisiontype,GLint * range,GLint * precision)883 void glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision)
884 {
885 GET_CONTEXT;
886 ctx->glGetShaderPrecisionFormat(ctx, shadertype, precisiontype, range, precision);
887 }
888
glGetShaderSource(GLuint shader,GLsizei bufsize,GLsizei * length,GLchar * source)889 void glGetShaderSource(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source)
890 {
891 GET_CONTEXT;
892 if(bufsize<0){ ctx->setError(GL_INVALID_VALUE); return; }
893 ctx->glGetShaderSource(ctx, shader, bufsize, length, source);
894 }
895
glGetString(GLenum name)896 const GLubyte* glGetString(GLenum name)
897 {
898 GET_CONTEXT;
899 return ctx->glGetString(ctx, name);
900 }
901
glGetTexParameterfv(GLenum target,GLenum pname,GLfloat * params)902 void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat* params)
903 {
904 GET_CONTEXT;
905 ctx->glGetTexParameterfv(ctx, target, pname, params);
906 }
907
glGetTexParameteriv(GLenum target,GLenum pname,GLint * params)908 void glGetTexParameteriv(GLenum target, GLenum pname, GLint* params)
909 {
910 GET_CONTEXT;
911 ctx->glGetTexParameteriv(ctx, target, pname, params);
912 }
913
glGetUniformfv(GLuint program,GLint location,GLfloat * params)914 void glGetUniformfv(GLuint program, GLint location, GLfloat* params)
915 {
916 GET_CONTEXT;
917 ctx->glGetUniformfv(ctx, program, location, params);
918 }
919
glGetUniformiv(GLuint program,GLint location,GLint * params)920 void glGetUniformiv(GLuint program, GLint location, GLint* params)
921 {
922 GET_CONTEXT;
923 ctx->glGetUniformiv(ctx, program, location, params);
924 }
925
glGetUniformLocation(GLuint program,const GLchar * name)926 int glGetUniformLocation(GLuint program, const GLchar* name)
927 {
928 GET_CONTEXT;
929 return ctx->glGetUniformLocation(ctx, program, name);
930 }
931
glGetVertexAttribfv(GLuint index,GLenum pname,GLfloat * params)932 void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat* params)
933 {
934 GET_CONTEXT;
935 ctx->glGetVertexAttribfv(ctx, index, pname, params);
936 }
937
glGetVertexAttribiv(GLuint index,GLenum pname,GLint * params)938 void glGetVertexAttribiv(GLuint index, GLenum pname, GLint* params)
939 {
940 GET_CONTEXT;
941 ctx->glGetVertexAttribiv(ctx, index, pname, params);
942 }
943
glGetVertexAttribPointerv(GLuint index,GLenum pname,GLvoid ** pointer)944 void glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid** pointer)
945 {
946 GET_CONTEXT;
947 ctx->glGetVertexAttribPointerv(ctx, index, pname, pointer);
948 }
949
glHint(GLenum target,GLenum mode)950 void glHint(GLenum target, GLenum mode)
951 {
952 GET_CONTEXT;
953 ctx->glHint(ctx, target, mode);
954 }
955
glIsBuffer(GLuint buffer)956 GLboolean glIsBuffer(GLuint buffer)
957 {
958 GET_CONTEXT;
959 return ctx->glIsBuffer(ctx, buffer);
960 }
961
glIsEnabled(GLenum cap)962 GLboolean glIsEnabled(GLenum cap)
963 {
964 GET_CONTEXT;
965 return ctx->glIsEnabled(ctx, cap);
966 }
967
glIsFramebuffer(GLuint framebuffer)968 GLboolean glIsFramebuffer(GLuint framebuffer)
969 {
970 GET_CONTEXT;
971 return ctx->glIsFramebuffer(ctx, framebuffer);
972 }
973
glIsProgram(GLuint program)974 GLboolean glIsProgram(GLuint program)
975 {
976 GET_CONTEXT;
977 return ctx->glIsProgram(ctx, program);
978 }
979
glIsRenderbuffer(GLuint renderbuffer)980 GLboolean glIsRenderbuffer(GLuint renderbuffer)
981 {
982 GET_CONTEXT;
983 return ctx->glIsRenderbuffer(ctx, renderbuffer);
984 }
985
glIsShader(GLuint shader)986 GLboolean glIsShader(GLuint shader)
987 {
988 GET_CONTEXT;
989 return ctx->glIsShader(ctx, shader);
990 }
991
glIsTexture(GLuint texture)992 GLboolean glIsTexture(GLuint texture)
993 {
994 GET_CONTEXT;
995 return ctx->glIsTexture(ctx, texture);
996 }
997
glLineWidth(GLfloat width)998 void glLineWidth(GLfloat width)
999 {
1000 GET_CONTEXT;
1001 ctx->glLineWidth(ctx, width);
1002 }
1003
glLinkProgram(GLuint program)1004 void glLinkProgram(GLuint program)
1005 {
1006 GET_CONTEXT;
1007 ctx->glLinkProgram(ctx, program);
1008 }
1009
glPixelStorei(GLenum pname,GLint param)1010 void glPixelStorei(GLenum pname, GLint param)
1011 {
1012 GET_CONTEXT;
1013 ctx->glPixelStorei(ctx, pname, param);
1014 }
1015
glPolygonOffset(GLfloat factor,GLfloat units)1016 void glPolygonOffset(GLfloat factor, GLfloat units)
1017 {
1018 GET_CONTEXT;
1019 ctx->glPolygonOffset(ctx, factor, units);
1020 }
1021
glReadPixels(GLint x,GLint y,GLsizei width,GLsizei height,GLenum format,GLenum type,GLvoid * pixels)1022 void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels)
1023 {
1024 GET_CONTEXT;
1025 ctx->glReadPixels(ctx, x, y, width, height, format, type, pixels);
1026 }
1027
glReleaseShaderCompiler()1028 void glReleaseShaderCompiler()
1029 {
1030 GET_CONTEXT;
1031 ctx->glReleaseShaderCompiler(ctx);
1032 }
1033
glRenderbufferStorage(GLenum target,GLenum internalformat,GLsizei width,GLsizei height)1034 void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
1035 {
1036 GET_CONTEXT;
1037 ctx->glRenderbufferStorage(ctx, target, internalformat, width, height);
1038 }
1039
glSampleCoverage(GLclampf value,GLboolean invert)1040 void glSampleCoverage(GLclampf value, GLboolean invert)
1041 {
1042 GET_CONTEXT;
1043 ctx->glSampleCoverage(ctx, value, invert);
1044 }
1045
glScissor(GLint x,GLint y,GLsizei width,GLsizei height)1046 void glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
1047 {
1048 GET_CONTEXT;
1049 ctx->glScissor(ctx, x, y, width, height);
1050 }
1051
glShaderBinary(GLsizei n,const GLuint * shaders,GLenum binaryformat,const GLvoid * binary,GLsizei length)1052 void glShaderBinary(GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length)
1053 {
1054 GET_CONTEXT;
1055 ctx->glShaderBinary(ctx, n, shaders, binaryformat, binary, length);
1056 }
1057
glShaderSource(GLuint shader,GLsizei count,const GLchar * const * string,const GLint * length)1058 void glShaderSource(GLuint shader, GLsizei count, const GLchar* const* string, const GLint* length)
1059 {
1060 GET_CONTEXT;
1061 ctx->glShaderSource(ctx, shader, count, string, length);
1062 }
1063
glStencilFunc(GLenum func,GLint ref,GLuint mask)1064 void glStencilFunc(GLenum func, GLint ref, GLuint mask)
1065 {
1066 GET_CONTEXT;
1067 ctx->glStencilFunc(ctx, func, ref, mask);
1068 }
1069
glStencilFuncSeparate(GLenum face,GLenum func,GLint ref,GLuint mask)1070 void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
1071 {
1072 GET_CONTEXT;
1073 ctx->glStencilFuncSeparate(ctx, face, func, ref, mask);
1074 }
1075
glStencilMask(GLuint mask)1076 void glStencilMask(GLuint mask)
1077 {
1078 GET_CONTEXT;
1079 ctx->glStencilMask(ctx, mask);
1080 }
1081
glStencilMaskSeparate(GLenum face,GLuint mask)1082 void glStencilMaskSeparate(GLenum face, GLuint mask)
1083 {
1084 GET_CONTEXT;
1085 ctx->glStencilMaskSeparate(ctx, face, mask);
1086 }
1087
glStencilOp(GLenum fail,GLenum zfail,GLenum zpass)1088 void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
1089 {
1090 GET_CONTEXT;
1091 ctx->glStencilOp(ctx, fail, zfail, zpass);
1092 }
1093
glStencilOpSeparate(GLenum face,GLenum fail,GLenum zfail,GLenum zpass)1094 void glStencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass)
1095 {
1096 GET_CONTEXT;
1097 ctx->glStencilOpSeparate(ctx, face, fail, zfail, zpass);
1098 }
1099
glTexImage2D(GLenum target,GLint level,GLint internalformat,GLsizei width,GLsizei height,GLint border,GLenum format,GLenum type,const GLvoid * pixels)1100 void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels)
1101 {
1102 GET_CONTEXT;
1103 ctx->glTexImage2D(ctx, target, level, internalformat, width, height, border, format, type, pixels);
1104 }
1105
glTexParameterf(GLenum target,GLenum pname,GLfloat param)1106 void glTexParameterf(GLenum target, GLenum pname, GLfloat param)
1107 {
1108 GET_CONTEXT;
1109 ctx->glTexParameterf(ctx, target, pname, param);
1110 }
1111
glTexParameterfv(GLenum target,GLenum pname,const GLfloat * params)1112 void glTexParameterfv(GLenum target, GLenum pname, const GLfloat* params)
1113 {
1114 GET_CONTEXT;
1115 ctx->glTexParameterfv(ctx, target, pname, params);
1116 }
1117
glTexParameteri(GLenum target,GLenum pname,GLint param)1118 void glTexParameteri(GLenum target, GLenum pname, GLint param)
1119 {
1120 GET_CONTEXT;
1121 ctx->glTexParameteri(ctx, target, pname, param);
1122 }
1123
glTexParameteriv(GLenum target,GLenum pname,const GLint * params)1124 void glTexParameteriv(GLenum target, GLenum pname, const GLint* params)
1125 {
1126 GET_CONTEXT;
1127 ctx->glTexParameteriv(ctx, target, pname, params);
1128 }
1129
glTexSubImage2D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLsizei width,GLsizei height,GLenum format,GLenum type,const GLvoid * pixels)1130 void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels)
1131 {
1132 GET_CONTEXT;
1133 ctx->glTexSubImage2D(ctx, target, level, xoffset, yoffset, width, height, format, type, pixels);
1134 }
1135
glUniform1f(GLint location,GLfloat x)1136 void glUniform1f(GLint location, GLfloat x)
1137 {
1138 GET_CONTEXT;
1139 ctx->glUniform1f(ctx, location, x);
1140 }
1141
glUniform1fv(GLint location,GLsizei count,const GLfloat * v)1142 void glUniform1fv(GLint location, GLsizei count, const GLfloat* v)
1143 {
1144 GET_CONTEXT;
1145 ctx->glUniform1fv(ctx, location, count, v);
1146 }
1147
glUniform1i(GLint location,GLint x)1148 void glUniform1i(GLint location, GLint x)
1149 {
1150 GET_CONTEXT;
1151 ctx->glUniform1i(ctx, location, x);
1152 }
1153
glUniform1iv(GLint location,GLsizei count,const GLint * v)1154 void glUniform1iv(GLint location, GLsizei count, const GLint* v)
1155 {
1156 GET_CONTEXT;
1157 ctx->glUniform1iv(ctx, location, count, v);
1158 }
1159
glUniform2f(GLint location,GLfloat x,GLfloat y)1160 void glUniform2f(GLint location, GLfloat x, GLfloat y)
1161 {
1162 GET_CONTEXT;
1163 ctx->glUniform2f(ctx, location, x, y);
1164 }
1165
glUniform2fv(GLint location,GLsizei count,const GLfloat * v)1166 void glUniform2fv(GLint location, GLsizei count, const GLfloat* v)
1167 {
1168 GET_CONTEXT;
1169 ctx->glUniform2fv(ctx, location, count, v);
1170 }
1171
glUniform2i(GLint location,GLint x,GLint y)1172 void glUniform2i(GLint location, GLint x, GLint y)
1173 {
1174 GET_CONTEXT;
1175 ctx->glUniform2i(ctx, location, x, y);
1176 }
1177
glUniform2iv(GLint location,GLsizei count,const GLint * v)1178 void glUniform2iv(GLint location, GLsizei count, const GLint* v)
1179 {
1180 GET_CONTEXT;
1181 ctx->glUniform2iv(ctx, location, count, v);
1182 }
1183
glUniform3f(GLint location,GLfloat x,GLfloat y,GLfloat z)1184 void glUniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z)
1185 {
1186 GET_CONTEXT;
1187 ctx->glUniform3f(ctx, location, x, y, z);
1188 }
1189
glUniform3fv(GLint location,GLsizei count,const GLfloat * v)1190 void glUniform3fv(GLint location, GLsizei count, const GLfloat* v)
1191 {
1192 GET_CONTEXT;
1193 ctx->glUniform3fv(ctx, location, count, v);
1194 }
1195
glUniform3i(GLint location,GLint x,GLint y,GLint z)1196 void glUniform3i(GLint location, GLint x, GLint y, GLint z)
1197 {
1198 GET_CONTEXT;
1199 ctx->glUniform3i(ctx, location, x, y, z);
1200 }
1201
glUniform3iv(GLint location,GLsizei count,const GLint * v)1202 void glUniform3iv(GLint location, GLsizei count, const GLint* v)
1203 {
1204 GET_CONTEXT;
1205 ctx->glUniform3iv(ctx, location, count, v);
1206 }
1207
glUniform4f(GLint location,GLfloat x,GLfloat y,GLfloat z,GLfloat w)1208 void glUniform4f(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
1209 {
1210 GET_CONTEXT;
1211 ctx->glUniform4f(ctx, location, x, y, z, w);
1212 }
1213
glUniform4fv(GLint location,GLsizei count,const GLfloat * v)1214 void glUniform4fv(GLint location, GLsizei count, const GLfloat* v)
1215 {
1216 GET_CONTEXT;
1217 ctx->glUniform4fv(ctx, location, count, v);
1218 }
1219
glUniform4i(GLint location,GLint x,GLint y,GLint z,GLint w)1220 void glUniform4i(GLint location, GLint x, GLint y, GLint z, GLint w)
1221 {
1222 GET_CONTEXT;
1223 ctx->glUniform4i(ctx, location, x, y, z, w);
1224 }
1225
glUniform4iv(GLint location,GLsizei count,const GLint * v)1226 void glUniform4iv(GLint location, GLsizei count, const GLint* v)
1227 {
1228 GET_CONTEXT;
1229 ctx->glUniform4iv(ctx, location, count, v);
1230 }
1231
glUniformMatrix2fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)1232 void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
1233 {
1234 GET_CONTEXT;
1235 ctx->glUniformMatrix2fv(ctx, location, count, transpose, value);
1236 }
1237
glUniformMatrix3fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)1238 void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
1239 {
1240 GET_CONTEXT;
1241 ctx->glUniformMatrix3fv(ctx, location, count, transpose, value);
1242 }
1243
glUniformMatrix4fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)1244 void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
1245 {
1246 GET_CONTEXT;
1247 ctx->glUniformMatrix4fv(ctx, location, count, transpose, value);
1248 }
1249
glUseProgram(GLuint program)1250 void glUseProgram(GLuint program)
1251 {
1252 GET_CONTEXT;
1253 ctx->glUseProgram(ctx, program);
1254 }
1255
glValidateProgram(GLuint program)1256 void glValidateProgram(GLuint program)
1257 {
1258 GET_CONTEXT;
1259 ctx->glValidateProgram(ctx, program);
1260 }
1261
glVertexAttrib1f(GLuint indx,GLfloat x)1262 void glVertexAttrib1f(GLuint indx, GLfloat x)
1263 {
1264 GET_CONTEXT;
1265 ctx->glVertexAttrib1f(ctx, indx, x);
1266 }
1267
glVertexAttrib1fv(GLuint indx,const GLfloat * values)1268 void glVertexAttrib1fv(GLuint indx, const GLfloat* values)
1269 {
1270 GET_CONTEXT;
1271 ctx->glVertexAttrib1fv(ctx, indx, values);
1272 }
1273
glVertexAttrib2f(GLuint indx,GLfloat x,GLfloat y)1274 void glVertexAttrib2f(GLuint indx, GLfloat x, GLfloat y)
1275 {
1276 GET_CONTEXT;
1277 ctx->glVertexAttrib2f(ctx, indx, x, y);
1278 }
1279
glVertexAttrib2fv(GLuint indx,const GLfloat * values)1280 void glVertexAttrib2fv(GLuint indx, const GLfloat* values)
1281 {
1282 GET_CONTEXT;
1283 ctx->glVertexAttrib2fv(ctx, indx, values);
1284 }
1285
glVertexAttrib3f(GLuint indx,GLfloat x,GLfloat y,GLfloat z)1286 void glVertexAttrib3f(GLuint indx, GLfloat x, GLfloat y, GLfloat z)
1287 {
1288 GET_CONTEXT;
1289 ctx->glVertexAttrib3f(ctx, indx, x, y, z);
1290 }
1291
glVertexAttrib3fv(GLuint indx,const GLfloat * values)1292 void glVertexAttrib3fv(GLuint indx, const GLfloat* values)
1293 {
1294 GET_CONTEXT;
1295 ctx->glVertexAttrib3fv(ctx, indx, values);
1296 }
1297
glVertexAttrib4f(GLuint indx,GLfloat x,GLfloat y,GLfloat z,GLfloat w)1298 void glVertexAttrib4f(GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
1299 {
1300 GET_CONTEXT;
1301 ctx->glVertexAttrib4f(ctx, indx, x, y, z, w);
1302 }
1303
glVertexAttrib4fv(GLuint indx,const GLfloat * values)1304 void glVertexAttrib4fv(GLuint indx, const GLfloat* values)
1305 {
1306 GET_CONTEXT;
1307 ctx->glVertexAttrib4fv(ctx, indx, values);
1308 }
1309
glVertexAttribPointer(GLuint indx,GLint size,GLenum type,GLboolean normalized,GLsizei stride,const GLvoid * ptr)1310 void glVertexAttribPointer(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr)
1311 {
1312 GET_CONTEXT;
1313 ctx->glVertexAttribPointer(ctx, indx, size, type, normalized, stride, ptr);
1314 }
1315
glViewport(GLint x,GLint y,GLsizei width,GLsizei height)1316 void glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
1317 {
1318 GET_CONTEXT;
1319 ctx->glViewport(ctx, x, y, width, height);
1320 }
1321
glEGLImageTargetTexture2DOES(GLenum target,GLeglImageOES image)1322 void glEGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image)
1323 {
1324 GET_CONTEXT;
1325 ctx->glEGLImageTargetTexture2DOES(ctx, target, image);
1326 }
1327
glEGLImageTargetRenderbufferStorageOES(GLenum target,GLeglImageOES image)1328 void glEGLImageTargetRenderbufferStorageOES(GLenum target, GLeglImageOES image)
1329 {
1330 GET_CONTEXT;
1331 ctx->glEGLImageTargetRenderbufferStorageOES(ctx, target, image);
1332 }
1333
glGetProgramBinaryOES(GLuint program,GLsizei bufSize,GLsizei * length,GLenum * binaryFormat,GLvoid * binary)1334 void glGetProgramBinaryOES(GLuint program, GLsizei bufSize, GLsizei* length, GLenum* binaryFormat, GLvoid* binary)
1335 {
1336 GET_CONTEXT;
1337 ctx->glGetProgramBinaryOES(ctx, program, bufSize, length, binaryFormat, binary);
1338 }
1339
glProgramBinaryOES(GLuint program,GLenum binaryFormat,const GLvoid * binary,GLint length)1340 void glProgramBinaryOES(GLuint program, GLenum binaryFormat, const GLvoid* binary, GLint length)
1341 {
1342 GET_CONTEXT;
1343 ctx->glProgramBinaryOES(ctx, program, binaryFormat, binary, length);
1344 }
1345
glMapBufferOES(GLenum target,GLenum access)1346 void* glMapBufferOES(GLenum target, GLenum access)
1347 {
1348 GET_CONTEXT;
1349 return ctx->glMapBufferOES(ctx, target, access);
1350 }
1351
glUnmapBufferOES(GLenum target)1352 GLboolean glUnmapBufferOES(GLenum target)
1353 {
1354 GET_CONTEXT;
1355 return ctx->glUnmapBufferOES(ctx, target);
1356 }
1357
glTexImage3DOES(GLenum target,GLint level,GLenum internalformat,GLsizei width,GLsizei height,GLsizei depth,GLint border,GLenum format,GLenum type,const GLvoid * pixels)1358 void glTexImage3DOES(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels)
1359 {
1360 GET_CONTEXT;
1361 ctx->glTexImage3DOES(ctx, target, level, internalformat, width, height, depth, border, format, type, pixels);
1362 }
1363
glTexSubImage3DOES(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint zoffset,GLsizei width,GLsizei height,GLsizei depth,GLenum format,GLenum type,const GLvoid * pixels)1364 void glTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels)
1365 {
1366 GET_CONTEXT;
1367 ctx->glTexSubImage3DOES(ctx, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
1368 }
1369
glCopyTexSubImage3DOES(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint zoffset,GLint x,GLint y,GLsizei width,GLsizei height)1370 void glCopyTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
1371 {
1372 GET_CONTEXT;
1373 ctx->glCopyTexSubImage3DOES(ctx, target, level, xoffset, yoffset, zoffset, x, y, width, height);
1374 }
1375
glCompressedTexImage3DOES(GLenum target,GLint level,GLenum internalformat,GLsizei width,GLsizei height,GLsizei depth,GLint border,GLsizei imageSize,const GLvoid * data)1376 void glCompressedTexImage3DOES(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data)
1377 {
1378 GET_CONTEXT;
1379 if(imageSize<0){ ctx->setError(GL_INVALID_VALUE); return; }
1380 ctx->glCompressedTexImage3DOES(ctx, target, level, internalformat, width, height, depth, border, imageSize, data);
1381 }
1382
glCompressedTexSubImage3DOES(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint zoffset,GLsizei width,GLsizei height,GLsizei depth,GLenum format,GLsizei imageSize,const GLvoid * data)1383 void glCompressedTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data)
1384 {
1385 GET_CONTEXT;
1386 if(imageSize<0){ ctx->setError(GL_INVALID_VALUE); return; }
1387 ctx->glCompressedTexSubImage3DOES(ctx, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
1388 }
1389
glFramebufferTexture3DOES(GLenum target,GLenum attachment,GLenum textarget,GLuint texture,GLint level,GLint zoffset)1390 void glFramebufferTexture3DOES(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
1391 {
1392 GET_CONTEXT;
1393 ctx->glFramebufferTexture3DOES(ctx, target, attachment, textarget, texture, level, zoffset);
1394 }
1395
glBindVertexArrayOES(GLuint array)1396 void glBindVertexArrayOES(GLuint array)
1397 {
1398 GET_CONTEXT;
1399 ctx->glBindVertexArrayOES(ctx, array);
1400 }
1401
glDeleteVertexArraysOES(GLsizei n,const GLuint * arrays)1402 void glDeleteVertexArraysOES(GLsizei n, const GLuint* arrays)
1403 {
1404 GET_CONTEXT;
1405 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
1406 ctx->glDeleteVertexArraysOES(ctx, n, arrays);
1407 }
1408
glGenVertexArraysOES(GLsizei n,GLuint * arrays)1409 void glGenVertexArraysOES(GLsizei n, GLuint* arrays)
1410 {
1411 GET_CONTEXT;
1412 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
1413 ctx->glGenVertexArraysOES(ctx, n, arrays);
1414 }
1415
glIsVertexArrayOES(GLuint array)1416 GLboolean glIsVertexArrayOES(GLuint array)
1417 {
1418 GET_CONTEXT;
1419 return ctx->glIsVertexArrayOES(ctx, array);
1420 }
1421
glDiscardFramebufferEXT(GLenum target,GLsizei numAttachments,const GLenum * attachments)1422 void glDiscardFramebufferEXT(GLenum target, GLsizei numAttachments, const GLenum* attachments)
1423 {
1424 GET_CONTEXT;
1425 ctx->glDiscardFramebufferEXT(ctx, target, numAttachments, attachments);
1426 }
1427
glMultiDrawArraysEXT(GLenum mode,const GLint * first,const GLsizei * count,GLsizei primcount)1428 void glMultiDrawArraysEXT(GLenum mode, const GLint* first, const GLsizei* count, GLsizei primcount)
1429 {
1430 GET_CONTEXT;
1431 ctx->glMultiDrawArraysEXT(ctx, mode, first, count, primcount);
1432 }
1433
glMultiDrawElementsEXT(GLenum mode,const GLsizei * count,GLenum type,const GLvoid * const * indices,GLsizei primcount)1434 void glMultiDrawElementsEXT(GLenum mode, const GLsizei* count, GLenum type, const GLvoid* const* indices, GLsizei primcount)
1435 {
1436 GET_CONTEXT;
1437 ctx->glMultiDrawElementsEXT(ctx, mode, count, type, indices, primcount);
1438 }
1439
glGetPerfMonitorGroupsAMD(GLint * numGroups,GLsizei groupsSize,GLuint * groups)1440 void glGetPerfMonitorGroupsAMD(GLint* numGroups, GLsizei groupsSize, GLuint* groups)
1441 {
1442 GET_CONTEXT;
1443 ctx->glGetPerfMonitorGroupsAMD(ctx, numGroups, groupsSize, groups);
1444 }
1445
glGetPerfMonitorCountersAMD(GLuint group,GLint * numCounters,GLint * maxActiveCounters,GLsizei counterSize,GLuint * counters)1446 void glGetPerfMonitorCountersAMD(GLuint group, GLint* numCounters, GLint* maxActiveCounters, GLsizei counterSize, GLuint* counters)
1447 {
1448 GET_CONTEXT;
1449 ctx->glGetPerfMonitorCountersAMD(ctx, group, numCounters, maxActiveCounters, counterSize, counters);
1450 }
1451
glGetPerfMonitorGroupStringAMD(GLuint group,GLsizei bufSize,GLsizei * length,GLchar * groupString)1452 void glGetPerfMonitorGroupStringAMD(GLuint group, GLsizei bufSize, GLsizei* length, GLchar* groupString)
1453 {
1454 GET_CONTEXT;
1455 ctx->glGetPerfMonitorGroupStringAMD(ctx, group, bufSize, length, groupString);
1456 }
1457
glGetPerfMonitorCounterStringAMD(GLuint group,GLuint counter,GLsizei bufSize,GLsizei * length,GLchar * counterString)1458 void glGetPerfMonitorCounterStringAMD(GLuint group, GLuint counter, GLsizei bufSize, GLsizei* length, GLchar* counterString)
1459 {
1460 GET_CONTEXT;
1461 ctx->glGetPerfMonitorCounterStringAMD(ctx, group, counter, bufSize, length, counterString);
1462 }
1463
glGetPerfMonitorCounterInfoAMD(GLuint group,GLuint counter,GLenum pname,GLvoid * data)1464 void glGetPerfMonitorCounterInfoAMD(GLuint group, GLuint counter, GLenum pname, GLvoid* data)
1465 {
1466 GET_CONTEXT;
1467 ctx->glGetPerfMonitorCounterInfoAMD(ctx, group, counter, pname, data);
1468 }
1469
glGenPerfMonitorsAMD(GLsizei n,GLuint * monitors)1470 void glGenPerfMonitorsAMD(GLsizei n, GLuint* monitors)
1471 {
1472 GET_CONTEXT;
1473 ctx->glGenPerfMonitorsAMD(ctx, n, monitors);
1474 }
1475
glDeletePerfMonitorsAMD(GLsizei n,GLuint * monitors)1476 void glDeletePerfMonitorsAMD(GLsizei n, GLuint* monitors)
1477 {
1478 GET_CONTEXT;
1479 ctx->glDeletePerfMonitorsAMD(ctx, n, monitors);
1480 }
1481
glSelectPerfMonitorCountersAMD(GLuint monitor,GLboolean enable,GLuint group,GLint numCounters,GLuint * countersList)1482 void glSelectPerfMonitorCountersAMD(GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint* countersList)
1483 {
1484 GET_CONTEXT;
1485 ctx->glSelectPerfMonitorCountersAMD(ctx, monitor, enable, group, numCounters, countersList);
1486 }
1487
glBeginPerfMonitorAMD(GLuint monitor)1488 void glBeginPerfMonitorAMD(GLuint monitor)
1489 {
1490 GET_CONTEXT;
1491 ctx->glBeginPerfMonitorAMD(ctx, monitor);
1492 }
1493
glEndPerfMonitorAMD(GLuint monitor)1494 void glEndPerfMonitorAMD(GLuint monitor)
1495 {
1496 GET_CONTEXT;
1497 ctx->glEndPerfMonitorAMD(ctx, monitor);
1498 }
1499
glGetPerfMonitorCounterDataAMD(GLuint monitor,GLenum pname,GLsizei dataSize,GLuint * data,GLint * bytesWritten)1500 void glGetPerfMonitorCounterDataAMD(GLuint monitor, GLenum pname, GLsizei dataSize, GLuint* data, GLint* bytesWritten)
1501 {
1502 GET_CONTEXT;
1503 ctx->glGetPerfMonitorCounterDataAMD(ctx, monitor, pname, dataSize, data, bytesWritten);
1504 }
1505
glRenderbufferStorageMultisampleIMG(GLenum target,GLsizei samples,GLenum internalformat,GLsizei width,GLsizei height)1506 void glRenderbufferStorageMultisampleIMG(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
1507 {
1508 GET_CONTEXT;
1509 ctx->glRenderbufferStorageMultisampleIMG(ctx, target, samples, internalformat, width, height);
1510 }
1511
glFramebufferTexture2DMultisampleIMG(GLenum target,GLenum attachment,GLenum textarget,GLuint texture,GLint level,GLsizei samples)1512 void glFramebufferTexture2DMultisampleIMG(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples)
1513 {
1514 GET_CONTEXT;
1515 ctx->glFramebufferTexture2DMultisampleIMG(ctx, target, attachment, textarget, texture, level, samples);
1516 }
1517
glDeleteFencesNV(GLsizei n,const GLuint * fences)1518 void glDeleteFencesNV(GLsizei n, const GLuint* fences)
1519 {
1520 GET_CONTEXT;
1521 ctx->glDeleteFencesNV(ctx, n, fences);
1522 }
1523
glGenFencesNV(GLsizei n,GLuint * fences)1524 void glGenFencesNV(GLsizei n, GLuint* fences)
1525 {
1526 GET_CONTEXT;
1527 ctx->glGenFencesNV(ctx, n, fences);
1528 }
1529
glIsFenceNV(GLuint fence)1530 GLboolean glIsFenceNV(GLuint fence)
1531 {
1532 GET_CONTEXT;
1533 return ctx->glIsFenceNV(ctx, fence);
1534 }
1535
glTestFenceNV(GLuint fence)1536 GLboolean glTestFenceNV(GLuint fence)
1537 {
1538 GET_CONTEXT;
1539 return ctx->glTestFenceNV(ctx, fence);
1540 }
1541
glGetFenceivNV(GLuint fence,GLenum pname,GLint * params)1542 void glGetFenceivNV(GLuint fence, GLenum pname, GLint* params)
1543 {
1544 GET_CONTEXT;
1545 ctx->glGetFenceivNV(ctx, fence, pname, params);
1546 }
1547
glFinishFenceNV(GLuint fence)1548 void glFinishFenceNV(GLuint fence)
1549 {
1550 GET_CONTEXT;
1551 ctx->glFinishFenceNV(ctx, fence);
1552 }
1553
glSetFenceNV(GLuint fence,GLenum condition)1554 void glSetFenceNV(GLuint fence, GLenum condition)
1555 {
1556 GET_CONTEXT;
1557 ctx->glSetFenceNV(ctx, fence, condition);
1558 }
1559
glCoverageMaskNV(GLboolean mask)1560 void glCoverageMaskNV(GLboolean mask)
1561 {
1562 GET_CONTEXT;
1563 ctx->glCoverageMaskNV(ctx, mask);
1564 }
1565
glCoverageOperationNV(GLenum operation)1566 void glCoverageOperationNV(GLenum operation)
1567 {
1568 GET_CONTEXT;
1569 ctx->glCoverageOperationNV(ctx, operation);
1570 }
1571
glGetDriverControlsQCOM(GLint * num,GLsizei size,GLuint * driverControls)1572 void glGetDriverControlsQCOM(GLint* num, GLsizei size, GLuint* driverControls)
1573 {
1574 GET_CONTEXT;
1575 ctx->glGetDriverControlsQCOM(ctx, num, size, driverControls);
1576 }
1577
glGetDriverControlStringQCOM(GLuint driverControl,GLsizei bufSize,GLsizei * length,GLchar * driverControlString)1578 void glGetDriverControlStringQCOM(GLuint driverControl, GLsizei bufSize, GLsizei* length, GLchar* driverControlString)
1579 {
1580 GET_CONTEXT;
1581 ctx->glGetDriverControlStringQCOM(ctx, driverControl, bufSize, length, driverControlString);
1582 }
1583
glEnableDriverControlQCOM(GLuint driverControl)1584 void glEnableDriverControlQCOM(GLuint driverControl)
1585 {
1586 GET_CONTEXT;
1587 ctx->glEnableDriverControlQCOM(ctx, driverControl);
1588 }
1589
glDisableDriverControlQCOM(GLuint driverControl)1590 void glDisableDriverControlQCOM(GLuint driverControl)
1591 {
1592 GET_CONTEXT;
1593 ctx->glDisableDriverControlQCOM(ctx, driverControl);
1594 }
1595
glExtGetTexturesQCOM(GLuint * textures,GLint maxTextures,GLint * numTextures)1596 void glExtGetTexturesQCOM(GLuint* textures, GLint maxTextures, GLint* numTextures)
1597 {
1598 GET_CONTEXT;
1599 ctx->glExtGetTexturesQCOM(ctx, textures, maxTextures, numTextures);
1600 }
1601
glExtGetBuffersQCOM(GLuint * buffers,GLint maxBuffers,GLint * numBuffers)1602 void glExtGetBuffersQCOM(GLuint* buffers, GLint maxBuffers, GLint* numBuffers)
1603 {
1604 GET_CONTEXT;
1605 ctx->glExtGetBuffersQCOM(ctx, buffers, maxBuffers, numBuffers);
1606 }
1607
glExtGetRenderbuffersQCOM(GLuint * renderbuffers,GLint maxRenderbuffers,GLint * numRenderbuffers)1608 void glExtGetRenderbuffersQCOM(GLuint* renderbuffers, GLint maxRenderbuffers, GLint* numRenderbuffers)
1609 {
1610 GET_CONTEXT;
1611 ctx->glExtGetRenderbuffersQCOM(ctx, renderbuffers, maxRenderbuffers, numRenderbuffers);
1612 }
1613
glExtGetFramebuffersQCOM(GLuint * framebuffers,GLint maxFramebuffers,GLint * numFramebuffers)1614 void glExtGetFramebuffersQCOM(GLuint* framebuffers, GLint maxFramebuffers, GLint* numFramebuffers)
1615 {
1616 GET_CONTEXT;
1617 ctx->glExtGetFramebuffersQCOM(ctx, framebuffers, maxFramebuffers, numFramebuffers);
1618 }
1619
glExtGetTexLevelParameterivQCOM(GLuint texture,GLenum face,GLint level,GLenum pname,GLint * params)1620 void glExtGetTexLevelParameterivQCOM(GLuint texture, GLenum face, GLint level, GLenum pname, GLint* params)
1621 {
1622 GET_CONTEXT;
1623 ctx->glExtGetTexLevelParameterivQCOM(ctx, texture, face, level, pname, params);
1624 }
1625
glExtTexObjectStateOverrideiQCOM(GLenum target,GLenum pname,GLint param)1626 void glExtTexObjectStateOverrideiQCOM(GLenum target, GLenum pname, GLint param)
1627 {
1628 GET_CONTEXT;
1629 ctx->glExtTexObjectStateOverrideiQCOM(ctx, target, pname, param);
1630 }
1631
glExtGetTexSubImageQCOM(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint zoffset,GLsizei width,GLsizei height,GLsizei depth,GLenum format,GLenum type,GLvoid * texels)1632 void glExtGetTexSubImageQCOM(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid* texels)
1633 {
1634 GET_CONTEXT;
1635 ctx->glExtGetTexSubImageQCOM(ctx, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, texels);
1636 }
1637
glExtGetBufferPointervQCOM(GLenum target,GLvoidptr * params)1638 void glExtGetBufferPointervQCOM(GLenum target, GLvoidptr* params)
1639 {
1640 GET_CONTEXT;
1641 ctx->glExtGetBufferPointervQCOM(ctx, target, params);
1642 }
1643
glExtGetShadersQCOM(GLuint * shaders,GLint maxShaders,GLint * numShaders)1644 void glExtGetShadersQCOM(GLuint* shaders, GLint maxShaders, GLint* numShaders)
1645 {
1646 GET_CONTEXT;
1647 ctx->glExtGetShadersQCOM(ctx, shaders, maxShaders, numShaders);
1648 }
1649
glExtGetProgramsQCOM(GLuint * programs,GLint maxPrograms,GLint * numPrograms)1650 void glExtGetProgramsQCOM(GLuint* programs, GLint maxPrograms, GLint* numPrograms)
1651 {
1652 GET_CONTEXT;
1653 ctx->glExtGetProgramsQCOM(ctx, programs, maxPrograms, numPrograms);
1654 }
1655
glExtIsProgramBinaryQCOM(GLuint program)1656 GLboolean glExtIsProgramBinaryQCOM(GLuint program)
1657 {
1658 GET_CONTEXT;
1659 return ctx->glExtIsProgramBinaryQCOM(ctx, program);
1660 }
1661
glExtGetProgramBinarySourceQCOM(GLuint program,GLenum shadertype,GLchar * source,GLint * length)1662 void glExtGetProgramBinarySourceQCOM(GLuint program, GLenum shadertype, GLchar* source, GLint* length)
1663 {
1664 GET_CONTEXT;
1665 ctx->glExtGetProgramBinarySourceQCOM(ctx, program, shadertype, source, length);
1666 }
1667
glStartTilingQCOM(GLuint x,GLuint y,GLuint width,GLuint height,GLbitfield preserveMask)1668 void glStartTilingQCOM(GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask)
1669 {
1670 GET_CONTEXT;
1671 ctx->glStartTilingQCOM(ctx, x, y, width, height, preserveMask);
1672 }
1673
glEndTilingQCOM(GLbitfield preserveMask)1674 void glEndTilingQCOM(GLbitfield preserveMask)
1675 {
1676 GET_CONTEXT;
1677 ctx->glEndTilingQCOM(ctx, preserveMask);
1678 }
1679
glVertexAttribPointerData(GLuint indx,GLint size,GLenum type,GLboolean normalized,GLsizei stride,void * data,GLuint datalen)1680 void glVertexAttribPointerData(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, void* data, GLuint datalen)
1681 {
1682 GET_CONTEXT;
1683 ctx->glVertexAttribPointerData(ctx, indx, size, type, normalized, stride, data, datalen);
1684 }
1685
glVertexAttribPointerOffset(GLuint indx,GLint size,GLenum type,GLboolean normalized,GLsizei stride,GLuint offset)1686 void glVertexAttribPointerOffset(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint offset)
1687 {
1688 GET_CONTEXT;
1689 ctx->glVertexAttribPointerOffset(ctx, indx, size, type, normalized, stride, offset);
1690 }
1691
glDrawElementsOffset(GLenum mode,GLsizei count,GLenum type,GLuint offset)1692 void glDrawElementsOffset(GLenum mode, GLsizei count, GLenum type, GLuint offset)
1693 {
1694 GET_CONTEXT;
1695 ctx->glDrawElementsOffset(ctx, mode, count, type, offset);
1696 }
1697
glDrawElementsData(GLenum mode,GLsizei count,GLenum type,void * data,GLuint datalen)1698 void glDrawElementsData(GLenum mode, GLsizei count, GLenum type, void* data, GLuint datalen)
1699 {
1700 GET_CONTEXT;
1701 ctx->glDrawElementsData(ctx, mode, count, type, data, datalen);
1702 }
1703
glGetCompressedTextureFormats(int count,GLint * formats)1704 void glGetCompressedTextureFormats(int count, GLint* formats)
1705 {
1706 GET_CONTEXT;
1707 ctx->glGetCompressedTextureFormats(ctx, count, formats);
1708 }
1709
glShaderString(GLuint shader,const GLchar * string,GLsizei len)1710 void glShaderString(GLuint shader, const GLchar* string, GLsizei len)
1711 {
1712 GET_CONTEXT;
1713 ctx->glShaderString(ctx, shader, string, len);
1714 }
1715
glFinishRoundTrip()1716 int glFinishRoundTrip()
1717 {
1718 GET_CONTEXT;
1719 return ctx->glFinishRoundTrip(ctx);
1720 }
1721
glGenVertexArrays(GLsizei n,GLuint * arrays)1722 void glGenVertexArrays(GLsizei n, GLuint* arrays)
1723 {
1724 GET_CONTEXT;
1725 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
1726 ctx->glGenVertexArrays(ctx, n, arrays);
1727 }
1728
glBindVertexArray(GLuint array)1729 void glBindVertexArray(GLuint array)
1730 {
1731 GET_CONTEXT;
1732 ctx->glBindVertexArray(ctx, array);
1733 }
1734
glDeleteVertexArrays(GLsizei n,const GLuint * arrays)1735 void glDeleteVertexArrays(GLsizei n, const GLuint* arrays)
1736 {
1737 GET_CONTEXT;
1738 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
1739 ctx->glDeleteVertexArrays(ctx, n, arrays);
1740 }
1741
glIsVertexArray(GLuint array)1742 GLboolean glIsVertexArray(GLuint array)
1743 {
1744 GET_CONTEXT;
1745 return ctx->glIsVertexArray(ctx, array);
1746 }
1747
glMapBufferRange(GLenum target,GLintptr offset,GLsizeiptr length,GLbitfield access)1748 void* glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
1749 {
1750 GET_CONTEXT;
1751 return ctx->glMapBufferRange(ctx, target, offset, length, access);
1752 }
1753
glUnmapBuffer(GLenum target)1754 GLboolean glUnmapBuffer(GLenum target)
1755 {
1756 GET_CONTEXT;
1757 return ctx->glUnmapBuffer(ctx, target);
1758 }
1759
glFlushMappedBufferRange(GLenum target,GLintptr offset,GLsizeiptr length)1760 void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
1761 {
1762 GET_CONTEXT;
1763 ctx->glFlushMappedBufferRange(ctx, target, offset, length);
1764 }
1765
glMapBufferRangeAEMU(GLenum target,GLintptr offset,GLsizeiptr length,GLbitfield access,void * mapped)1766 void glMapBufferRangeAEMU(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, void* mapped)
1767 {
1768 GET_CONTEXT;
1769 ctx->glMapBufferRangeAEMU(ctx, target, offset, length, access, mapped);
1770 }
1771
glUnmapBufferAEMU(GLenum target,GLintptr offset,GLsizeiptr length,GLbitfield access,void * guest_buffer,GLboolean * out_res)1772 void glUnmapBufferAEMU(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, void* guest_buffer, GLboolean* out_res)
1773 {
1774 GET_CONTEXT;
1775 ctx->glUnmapBufferAEMU(ctx, target, offset, length, access, guest_buffer, out_res);
1776 }
1777
glFlushMappedBufferRangeAEMU(GLenum target,GLintptr offset,GLsizeiptr length,GLbitfield access,void * guest_buffer)1778 void glFlushMappedBufferRangeAEMU(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, void* guest_buffer)
1779 {
1780 GET_CONTEXT;
1781 ctx->glFlushMappedBufferRangeAEMU(ctx, target, offset, length, access, guest_buffer);
1782 }
1783
glReadPixelsOffsetAEMU(GLint x,GLint y,GLsizei width,GLsizei height,GLenum format,GLenum type,GLuint offset)1784 void glReadPixelsOffsetAEMU(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLuint offset)
1785 {
1786 GET_CONTEXT;
1787 ctx->glReadPixelsOffsetAEMU(ctx, x, y, width, height, format, type, offset);
1788 }
1789
glCompressedTexImage2DOffsetAEMU(GLenum target,GLint level,GLenum internalformat,GLsizei width,GLsizei height,GLint border,GLsizei imageSize,GLuint offset)1790 void glCompressedTexImage2DOffsetAEMU(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, GLuint offset)
1791 {
1792 GET_CONTEXT;
1793 ctx->glCompressedTexImage2DOffsetAEMU(ctx, target, level, internalformat, width, height, border, imageSize, offset);
1794 }
1795
glCompressedTexSubImage2DOffsetAEMU(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLsizei width,GLsizei height,GLenum format,GLsizei imageSize,GLuint offset)1796 void glCompressedTexSubImage2DOffsetAEMU(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, GLuint offset)
1797 {
1798 GET_CONTEXT;
1799 ctx->glCompressedTexSubImage2DOffsetAEMU(ctx, target, level, xoffset, yoffset, width, height, format, imageSize, offset);
1800 }
1801
glTexImage2DOffsetAEMU(GLenum target,GLint level,GLint internalformat,GLsizei width,GLsizei height,GLint border,GLenum format,GLenum type,GLuint offset)1802 void glTexImage2DOffsetAEMU(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, GLuint offset)
1803 {
1804 GET_CONTEXT;
1805 ctx->glTexImage2DOffsetAEMU(ctx, target, level, internalformat, width, height, border, format, type, offset);
1806 }
1807
glTexSubImage2DOffsetAEMU(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLsizei width,GLsizei height,GLenum format,GLenum type,GLuint offset)1808 void glTexSubImage2DOffsetAEMU(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, GLuint offset)
1809 {
1810 GET_CONTEXT;
1811 ctx->glTexSubImage2DOffsetAEMU(ctx, target, level, xoffset, yoffset, width, height, format, type, offset);
1812 }
1813
glBindBufferRange(GLenum target,GLuint index,GLuint buffer,GLintptr offset,GLsizeiptr size)1814 void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
1815 {
1816 GET_CONTEXT;
1817 ctx->glBindBufferRange(ctx, target, index, buffer, offset, size);
1818 }
1819
glBindBufferBase(GLenum target,GLuint index,GLuint buffer)1820 void glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
1821 {
1822 GET_CONTEXT;
1823 ctx->glBindBufferBase(ctx, target, index, buffer);
1824 }
1825
glCopyBufferSubData(GLenum readtarget,GLenum writetarget,GLintptr readoffset,GLintptr writeoffset,GLsizeiptr size)1826 void glCopyBufferSubData(GLenum readtarget, GLenum writetarget, GLintptr readoffset, GLintptr writeoffset, GLsizeiptr size)
1827 {
1828 GET_CONTEXT;
1829 ctx->glCopyBufferSubData(ctx, readtarget, writetarget, readoffset, writeoffset, size);
1830 }
1831
glClearBufferiv(GLenum buffer,GLint drawBuffer,const GLint * value)1832 void glClearBufferiv(GLenum buffer, GLint drawBuffer, const GLint* value)
1833 {
1834 GET_CONTEXT;
1835 ctx->glClearBufferiv(ctx, buffer, drawBuffer, value);
1836 }
1837
glClearBufferuiv(GLenum buffer,GLint drawBuffer,const GLuint * value)1838 void glClearBufferuiv(GLenum buffer, GLint drawBuffer, const GLuint* value)
1839 {
1840 GET_CONTEXT;
1841 ctx->glClearBufferuiv(ctx, buffer, drawBuffer, value);
1842 }
1843
glClearBufferfv(GLenum buffer,GLint drawBuffer,const GLfloat * value)1844 void glClearBufferfv(GLenum buffer, GLint drawBuffer, const GLfloat* value)
1845 {
1846 GET_CONTEXT;
1847 ctx->glClearBufferfv(ctx, buffer, drawBuffer, value);
1848 }
1849
glClearBufferfi(GLenum buffer,GLint drawBuffer,GLfloat depth,GLint stencil)1850 void glClearBufferfi(GLenum buffer, GLint drawBuffer, GLfloat depth, GLint stencil)
1851 {
1852 GET_CONTEXT;
1853 ctx->glClearBufferfi(ctx, buffer, drawBuffer, depth, stencil);
1854 }
1855
glGetBufferParameteri64v(GLenum target,GLenum value,GLint64 * data)1856 void glGetBufferParameteri64v(GLenum target, GLenum value, GLint64* data)
1857 {
1858 GET_CONTEXT;
1859 ctx->glGetBufferParameteri64v(ctx, target, value, data);
1860 }
1861
glGetBufferPointerv(GLenum target,GLenum pname,GLvoid ** params)1862 void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid** params)
1863 {
1864 GET_CONTEXT;
1865 ctx->glGetBufferPointerv(ctx, target, pname, params);
1866 }
1867
glUniformBlockBinding(GLuint program,GLuint uniformBlockIndex,GLuint uniformBlockBinding)1868 void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
1869 {
1870 GET_CONTEXT;
1871 ctx->glUniformBlockBinding(ctx, program, uniformBlockIndex, uniformBlockBinding);
1872 }
1873
glGetUniformBlockIndex(GLuint program,const GLchar * uniformBlockName)1874 GLuint glGetUniformBlockIndex(GLuint program, const GLchar* uniformBlockName)
1875 {
1876 GET_CONTEXT;
1877 return ctx->glGetUniformBlockIndex(ctx, program, uniformBlockName);
1878 }
1879
glGetUniformIndices(GLuint program,GLsizei uniformCount,const GLchar ** uniformNames,GLuint * uniformIndices)1880 void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar** uniformNames, GLuint* uniformIndices)
1881 {
1882 GET_CONTEXT;
1883 ctx->glGetUniformIndices(ctx, program, uniformCount, uniformNames, uniformIndices);
1884 }
1885
glGetUniformIndicesAEMU(GLuint program,GLsizei uniformCount,const GLchar * packedUniformNames,GLsizei packedLen,GLuint * uniformIndices)1886 void glGetUniformIndicesAEMU(GLuint program, GLsizei uniformCount, const GLchar* packedUniformNames, GLsizei packedLen, GLuint* uniformIndices)
1887 {
1888 GET_CONTEXT;
1889 ctx->glGetUniformIndicesAEMU(ctx, program, uniformCount, packedUniformNames, packedLen, uniformIndices);
1890 }
1891
glGetActiveUniformBlockiv(GLuint program,GLuint uniformBlockIndex,GLenum pname,GLint * params)1892 void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params)
1893 {
1894 GET_CONTEXT;
1895 ctx->glGetActiveUniformBlockiv(ctx, program, uniformBlockIndex, pname, params);
1896 }
1897
glGetActiveUniformBlockName(GLuint program,GLuint uniformBlockIndex,GLsizei bufSize,GLsizei * length,GLchar * uniformBlockName)1898 void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, GLchar* uniformBlockName)
1899 {
1900 GET_CONTEXT;
1901 if(bufSize<0){ ctx->setError(GL_INVALID_VALUE); return; }
1902 ctx->glGetActiveUniformBlockName(ctx, program, uniformBlockIndex, bufSize, length, uniformBlockName);
1903 }
1904
glUniform1ui(GLint location,GLuint v0)1905 void glUniform1ui(GLint location, GLuint v0)
1906 {
1907 GET_CONTEXT;
1908 ctx->glUniform1ui(ctx, location, v0);
1909 }
1910
glUniform2ui(GLint location,GLuint v0,GLuint v1)1911 void glUniform2ui(GLint location, GLuint v0, GLuint v1)
1912 {
1913 GET_CONTEXT;
1914 ctx->glUniform2ui(ctx, location, v0, v1);
1915 }
1916
glUniform3ui(GLint location,GLuint v0,GLuint v1,GLuint v2)1917 void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
1918 {
1919 GET_CONTEXT;
1920 ctx->glUniform3ui(ctx, location, v0, v1, v2);
1921 }
1922
glUniform4ui(GLint location,GLint v0,GLuint v1,GLuint v2,GLuint v3)1923 void glUniform4ui(GLint location, GLint v0, GLuint v1, GLuint v2, GLuint v3)
1924 {
1925 GET_CONTEXT;
1926 ctx->glUniform4ui(ctx, location, v0, v1, v2, v3);
1927 }
1928
glUniform1uiv(GLint location,GLsizei count,const GLuint * value)1929 void glUniform1uiv(GLint location, GLsizei count, const GLuint* value)
1930 {
1931 GET_CONTEXT;
1932 ctx->glUniform1uiv(ctx, location, count, value);
1933 }
1934
glUniform2uiv(GLint location,GLsizei count,const GLuint * value)1935 void glUniform2uiv(GLint location, GLsizei count, const GLuint* value)
1936 {
1937 GET_CONTEXT;
1938 ctx->glUniform2uiv(ctx, location, count, value);
1939 }
1940
glUniform3uiv(GLint location,GLsizei count,const GLuint * value)1941 void glUniform3uiv(GLint location, GLsizei count, const GLuint* value)
1942 {
1943 GET_CONTEXT;
1944 ctx->glUniform3uiv(ctx, location, count, value);
1945 }
1946
glUniform4uiv(GLint location,GLsizei count,const GLuint * value)1947 void glUniform4uiv(GLint location, GLsizei count, const GLuint* value)
1948 {
1949 GET_CONTEXT;
1950 ctx->glUniform4uiv(ctx, location, count, value);
1951 }
1952
glUniformMatrix2x3fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)1953 void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
1954 {
1955 GET_CONTEXT;
1956 ctx->glUniformMatrix2x3fv(ctx, location, count, transpose, value);
1957 }
1958
glUniformMatrix3x2fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)1959 void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
1960 {
1961 GET_CONTEXT;
1962 ctx->glUniformMatrix3x2fv(ctx, location, count, transpose, value);
1963 }
1964
glUniformMatrix2x4fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)1965 void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
1966 {
1967 GET_CONTEXT;
1968 ctx->glUniformMatrix2x4fv(ctx, location, count, transpose, value);
1969 }
1970
glUniformMatrix4x2fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)1971 void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
1972 {
1973 GET_CONTEXT;
1974 ctx->glUniformMatrix4x2fv(ctx, location, count, transpose, value);
1975 }
1976
glUniformMatrix3x4fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)1977 void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
1978 {
1979 GET_CONTEXT;
1980 ctx->glUniformMatrix3x4fv(ctx, location, count, transpose, value);
1981 }
1982
glUniformMatrix4x3fv(GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)1983 void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
1984 {
1985 GET_CONTEXT;
1986 ctx->glUniformMatrix4x3fv(ctx, location, count, transpose, value);
1987 }
1988
glGetUniformuiv(GLuint program,GLint location,GLuint * params)1989 void glGetUniformuiv(GLuint program, GLint location, GLuint* params)
1990 {
1991 GET_CONTEXT;
1992 ctx->glGetUniformuiv(ctx, program, location, params);
1993 }
1994
glGetActiveUniformsiv(GLuint program,GLsizei uniformCount,const GLuint * uniformIndices,GLenum pname,GLint * params)1995 void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint* uniformIndices, GLenum pname, GLint* params)
1996 {
1997 GET_CONTEXT;
1998 ctx->glGetActiveUniformsiv(ctx, program, uniformCount, uniformIndices, pname, params);
1999 }
2000
glVertexAttribI4i(GLuint index,GLint v0,GLint v1,GLint v2,GLint v3)2001 void glVertexAttribI4i(GLuint index, GLint v0, GLint v1, GLint v2, GLint v3)
2002 {
2003 GET_CONTEXT;
2004 ctx->glVertexAttribI4i(ctx, index, v0, v1, v2, v3);
2005 }
2006
glVertexAttribI4ui(GLuint index,GLuint v0,GLuint v1,GLuint v2,GLuint v3)2007 void glVertexAttribI4ui(GLuint index, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
2008 {
2009 GET_CONTEXT;
2010 ctx->glVertexAttribI4ui(ctx, index, v0, v1, v2, v3);
2011 }
2012
glVertexAttribI4iv(GLuint index,const GLint * v)2013 void glVertexAttribI4iv(GLuint index, const GLint* v)
2014 {
2015 GET_CONTEXT;
2016 ctx->glVertexAttribI4iv(ctx, index, v);
2017 }
2018
glVertexAttribI4uiv(GLuint index,const GLuint * v)2019 void glVertexAttribI4uiv(GLuint index, const GLuint* v)
2020 {
2021 GET_CONTEXT;
2022 ctx->glVertexAttribI4uiv(ctx, index, v);
2023 }
2024
glVertexAttribIPointer(GLuint index,GLint size,GLenum type,GLsizei stride,const GLvoid * pointer)2025 void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid* pointer)
2026 {
2027 GET_CONTEXT;
2028 ctx->glVertexAttribIPointer(ctx, index, size, type, stride, pointer);
2029 }
2030
glVertexAttribIPointerOffsetAEMU(GLuint index,GLint size,GLenum type,GLsizei stride,GLuint offset)2031 void glVertexAttribIPointerOffsetAEMU(GLuint index, GLint size, GLenum type, GLsizei stride, GLuint offset)
2032 {
2033 GET_CONTEXT;
2034 ctx->glVertexAttribIPointerOffsetAEMU(ctx, index, size, type, stride, offset);
2035 }
2036
glVertexAttribIPointerDataAEMU(GLuint index,GLint size,GLenum type,GLsizei stride,void * data,GLuint datalen)2037 void glVertexAttribIPointerDataAEMU(GLuint index, GLint size, GLenum type, GLsizei stride, void* data, GLuint datalen)
2038 {
2039 GET_CONTEXT;
2040 ctx->glVertexAttribIPointerDataAEMU(ctx, index, size, type, stride, data, datalen);
2041 }
2042
glGetVertexAttribIiv(GLuint index,GLenum pname,GLint * params)2043 void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint* params)
2044 {
2045 GET_CONTEXT;
2046 ctx->glGetVertexAttribIiv(ctx, index, pname, params);
2047 }
2048
glGetVertexAttribIuiv(GLuint index,GLenum pname,GLuint * params)2049 void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint* params)
2050 {
2051 GET_CONTEXT;
2052 ctx->glGetVertexAttribIuiv(ctx, index, pname, params);
2053 }
2054
glVertexAttribDivisor(GLuint index,GLuint divisor)2055 void glVertexAttribDivisor(GLuint index, GLuint divisor)
2056 {
2057 GET_CONTEXT;
2058 ctx->glVertexAttribDivisor(ctx, index, divisor);
2059 }
2060
glDrawArraysInstanced(GLenum mode,GLint first,GLsizei count,GLsizei primcount)2061 void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei primcount)
2062 {
2063 GET_CONTEXT;
2064 ctx->glDrawArraysInstanced(ctx, mode, first, count, primcount);
2065 }
2066
glDrawElementsInstanced(GLenum mode,GLsizei count,GLenum type,const void * indices,GLsizei primcount)2067 void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei primcount)
2068 {
2069 GET_CONTEXT;
2070 ctx->glDrawElementsInstanced(ctx, mode, count, type, indices, primcount);
2071 }
2072
glDrawElementsInstancedDataAEMU(GLenum mode,GLsizei count,GLenum type,const void * indices,GLsizei primcount,GLsizei datalen)2073 void glDrawElementsInstancedDataAEMU(GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei primcount, GLsizei datalen)
2074 {
2075 GET_CONTEXT;
2076 ctx->glDrawElementsInstancedDataAEMU(ctx, mode, count, type, indices, primcount, datalen);
2077 }
2078
glDrawElementsInstancedOffsetAEMU(GLenum mode,GLsizei count,GLenum type,GLuint offset,GLsizei primcount)2079 void glDrawElementsInstancedOffsetAEMU(GLenum mode, GLsizei count, GLenum type, GLuint offset, GLsizei primcount)
2080 {
2081 GET_CONTEXT;
2082 ctx->glDrawElementsInstancedOffsetAEMU(ctx, mode, count, type, offset, primcount);
2083 }
2084
glDrawRangeElements(GLenum mode,GLuint start,GLuint end,GLsizei count,GLenum type,const GLvoid * indices)2085 void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid* indices)
2086 {
2087 GET_CONTEXT;
2088 ctx->glDrawRangeElements(ctx, mode, start, end, count, type, indices);
2089 }
2090
glDrawRangeElementsDataAEMU(GLenum mode,GLuint start,GLuint end,GLsizei count,GLenum type,const GLvoid * indices,GLsizei datalen)2091 void glDrawRangeElementsDataAEMU(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid* indices, GLsizei datalen)
2092 {
2093 GET_CONTEXT;
2094 ctx->glDrawRangeElementsDataAEMU(ctx, mode, start, end, count, type, indices, datalen);
2095 }
2096
glDrawRangeElementsOffsetAEMU(GLenum mode,GLuint start,GLuint end,GLsizei count,GLenum type,GLuint offset)2097 void glDrawRangeElementsOffsetAEMU(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, GLuint offset)
2098 {
2099 GET_CONTEXT;
2100 ctx->glDrawRangeElementsOffsetAEMU(ctx, mode, start, end, count, type, offset);
2101 }
2102
glFenceSync(GLenum condition,GLbitfield flags)2103 GLsync glFenceSync(GLenum condition, GLbitfield flags)
2104 {
2105 GET_CONTEXT;
2106 return ctx->glFenceSync(ctx, condition, flags);
2107 }
2108
glClientWaitSync(GLsync wait_on,GLbitfield flags,GLuint64 timeout)2109 GLenum glClientWaitSync(GLsync wait_on, GLbitfield flags, GLuint64 timeout)
2110 {
2111 GET_CONTEXT;
2112 return ctx->glClientWaitSync(ctx, wait_on, flags, timeout);
2113 }
2114
glWaitSync(GLsync wait_on,GLbitfield flags,GLuint64 timeout)2115 void glWaitSync(GLsync wait_on, GLbitfield flags, GLuint64 timeout)
2116 {
2117 GET_CONTEXT;
2118 ctx->glWaitSync(ctx, wait_on, flags, timeout);
2119 }
2120
glDeleteSync(GLsync to_delete)2121 void glDeleteSync(GLsync to_delete)
2122 {
2123 GET_CONTEXT;
2124 ctx->glDeleteSync(ctx, to_delete);
2125 }
2126
glIsSync(GLsync sync)2127 GLboolean glIsSync(GLsync sync)
2128 {
2129 GET_CONTEXT;
2130 return ctx->glIsSync(ctx, sync);
2131 }
2132
glGetSynciv(GLsync sync,GLenum pname,GLsizei bufSize,GLsizei * length,GLint * values)2133 void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values)
2134 {
2135 GET_CONTEXT;
2136 ctx->glGetSynciv(ctx, sync, pname, bufSize, length, values);
2137 }
2138
glFenceSyncAEMU(GLenum condition,GLbitfield flags)2139 uint64_t glFenceSyncAEMU(GLenum condition, GLbitfield flags)
2140 {
2141 GET_CONTEXT;
2142 return ctx->glFenceSyncAEMU(ctx, condition, flags);
2143 }
2144
glClientWaitSyncAEMU(uint64_t wait_on,GLbitfield flags,GLuint64 timeout)2145 GLenum glClientWaitSyncAEMU(uint64_t wait_on, GLbitfield flags, GLuint64 timeout)
2146 {
2147 GET_CONTEXT;
2148 return ctx->glClientWaitSyncAEMU(ctx, wait_on, flags, timeout);
2149 }
2150
glWaitSyncAEMU(uint64_t wait_on,GLbitfield flags,GLuint64 timeout)2151 void glWaitSyncAEMU(uint64_t wait_on, GLbitfield flags, GLuint64 timeout)
2152 {
2153 GET_CONTEXT;
2154 ctx->glWaitSyncAEMU(ctx, wait_on, flags, timeout);
2155 }
2156
glDeleteSyncAEMU(uint64_t to_delete)2157 void glDeleteSyncAEMU(uint64_t to_delete)
2158 {
2159 GET_CONTEXT;
2160 ctx->glDeleteSyncAEMU(ctx, to_delete);
2161 }
2162
glIsSyncAEMU(uint64_t sync)2163 GLboolean glIsSyncAEMU(uint64_t sync)
2164 {
2165 GET_CONTEXT;
2166 return ctx->glIsSyncAEMU(ctx, sync);
2167 }
2168
glGetSyncivAEMU(uint64_t sync,GLenum pname,GLsizei bufSize,GLsizei * length,GLint * values)2169 void glGetSyncivAEMU(uint64_t sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values)
2170 {
2171 GET_CONTEXT;
2172 if(bufSize<0){ ctx->setError(GL_INVALID_VALUE); return; }
2173 ctx->glGetSyncivAEMU(ctx, sync, pname, bufSize, length, values);
2174 }
2175
glDrawBuffers(GLsizei n,const GLenum * bufs)2176 void glDrawBuffers(GLsizei n, const GLenum* bufs)
2177 {
2178 GET_CONTEXT;
2179 ctx->glDrawBuffers(ctx, n, bufs);
2180 }
2181
glReadBuffer(GLenum src)2182 void glReadBuffer(GLenum src)
2183 {
2184 GET_CONTEXT;
2185 ctx->glReadBuffer(ctx, src);
2186 }
2187
glBlitFramebuffer(GLint srcX0,GLint srcY0,GLint srcX1,GLint srcY1,GLint dstX0,GLint dstY0,GLint dstX1,GLint dstY1,GLbitfield mask,GLenum filter)2188 void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
2189 {
2190 GET_CONTEXT;
2191 ctx->glBlitFramebuffer(ctx, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
2192 }
2193
glInvalidateFramebuffer(GLenum target,GLsizei numAttachments,const GLenum * attachments)2194 void glInvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum* attachments)
2195 {
2196 GET_CONTEXT;
2197 ctx->glInvalidateFramebuffer(ctx, target, numAttachments, attachments);
2198 }
2199
glInvalidateSubFramebuffer(GLenum target,GLsizei numAttachments,const GLenum * attachments,GLint x,GLint y,GLsizei width,GLsizei height)2200 void glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum* attachments, GLint x, GLint y, GLsizei width, GLsizei height)
2201 {
2202 GET_CONTEXT;
2203 ctx->glInvalidateSubFramebuffer(ctx, target, numAttachments, attachments, x, y, width, height);
2204 }
2205
glFramebufferTextureLayer(GLenum target,GLenum attachment,GLuint texture,GLint level,GLint layer)2206 void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
2207 {
2208 GET_CONTEXT;
2209 ctx->glFramebufferTextureLayer(ctx, target, attachment, texture, level, layer);
2210 }
2211
glRenderbufferStorageMultisample(GLenum target,GLsizei samples,GLenum internalformat,GLsizei width,GLsizei height)2212 void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
2213 {
2214 GET_CONTEXT;
2215 ctx->glRenderbufferStorageMultisample(ctx, target, samples, internalformat, width, height);
2216 }
2217
glTexStorage2D(GLenum target,GLsizei levels,GLenum internalformat,GLsizei width,GLsizei height)2218 void glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)
2219 {
2220 GET_CONTEXT;
2221 ctx->glTexStorage2D(ctx, target, levels, internalformat, width, height);
2222 }
2223
glGetInternalformativ(GLenum target,GLenum internalformat,GLenum pname,GLsizei bufSize,GLint * params)2224 void glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint* params)
2225 {
2226 GET_CONTEXT;
2227 ctx->glGetInternalformativ(ctx, target, internalformat, pname, bufSize, params);
2228 }
2229
glBeginTransformFeedback(GLenum primitiveMode)2230 void glBeginTransformFeedback(GLenum primitiveMode)
2231 {
2232 GET_CONTEXT;
2233 ctx->glBeginTransformFeedback(ctx, primitiveMode);
2234 }
2235
glEndTransformFeedback()2236 void glEndTransformFeedback()
2237 {
2238 GET_CONTEXT;
2239 ctx->glEndTransformFeedback(ctx);
2240 }
2241
glGenTransformFeedbacks(GLsizei n,GLuint * ids)2242 void glGenTransformFeedbacks(GLsizei n, GLuint* ids)
2243 {
2244 GET_CONTEXT;
2245 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
2246 ctx->glGenTransformFeedbacks(ctx, n, ids);
2247 }
2248
glDeleteTransformFeedbacks(GLsizei n,const GLuint * ids)2249 void glDeleteTransformFeedbacks(GLsizei n, const GLuint* ids)
2250 {
2251 GET_CONTEXT;
2252 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
2253 ctx->glDeleteTransformFeedbacks(ctx, n, ids);
2254 }
2255
glBindTransformFeedback(GLenum target,GLuint id)2256 void glBindTransformFeedback(GLenum target, GLuint id)
2257 {
2258 GET_CONTEXT;
2259 ctx->glBindTransformFeedback(ctx, target, id);
2260 }
2261
glPauseTransformFeedback()2262 void glPauseTransformFeedback()
2263 {
2264 GET_CONTEXT;
2265 ctx->glPauseTransformFeedback(ctx);
2266 }
2267
glResumeTransformFeedback()2268 void glResumeTransformFeedback()
2269 {
2270 GET_CONTEXT;
2271 ctx->glResumeTransformFeedback(ctx);
2272 }
2273
glIsTransformFeedback(GLuint id)2274 GLboolean glIsTransformFeedback(GLuint id)
2275 {
2276 GET_CONTEXT;
2277 return ctx->glIsTransformFeedback(ctx, id);
2278 }
2279
glTransformFeedbackVaryings(GLuint program,GLsizei count,const char ** varyings,GLenum bufferMode)2280 void glTransformFeedbackVaryings(GLuint program, GLsizei count, const char** varyings, GLenum bufferMode)
2281 {
2282 GET_CONTEXT;
2283 ctx->glTransformFeedbackVaryings(ctx, program, count, varyings, bufferMode);
2284 }
2285
glTransformFeedbackVaryingsAEMU(GLuint program,GLsizei count,const char * packedVaryings,GLuint packedVaryingsLen,GLenum bufferMode)2286 void glTransformFeedbackVaryingsAEMU(GLuint program, GLsizei count, const char* packedVaryings, GLuint packedVaryingsLen, GLenum bufferMode)
2287 {
2288 GET_CONTEXT;
2289 ctx->glTransformFeedbackVaryingsAEMU(ctx, program, count, packedVaryings, packedVaryingsLen, bufferMode);
2290 }
2291
glGetTransformFeedbackVarying(GLuint program,GLuint index,GLsizei bufSize,GLsizei * length,GLsizei * size,GLenum * type,char * name)2292 void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, char* name)
2293 {
2294 GET_CONTEXT;
2295 if(bufSize<0){ ctx->setError(GL_INVALID_VALUE); return; }
2296 ctx->glGetTransformFeedbackVarying(ctx, program, index, bufSize, length, size, type, name);
2297 }
2298
glGenSamplers(GLsizei n,GLuint * samplers)2299 void glGenSamplers(GLsizei n, GLuint* samplers)
2300 {
2301 GET_CONTEXT;
2302 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
2303 ctx->glGenSamplers(ctx, n, samplers);
2304 }
2305
glDeleteSamplers(GLsizei n,const GLuint * samplers)2306 void glDeleteSamplers(GLsizei n, const GLuint* samplers)
2307 {
2308 GET_CONTEXT;
2309 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
2310 ctx->glDeleteSamplers(ctx, n, samplers);
2311 }
2312
glBindSampler(GLuint unit,GLuint sampler)2313 void glBindSampler(GLuint unit, GLuint sampler)
2314 {
2315 GET_CONTEXT;
2316 ctx->glBindSampler(ctx, unit, sampler);
2317 }
2318
glSamplerParameterf(GLuint sampler,GLenum pname,GLfloat param)2319 void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
2320 {
2321 GET_CONTEXT;
2322 ctx->glSamplerParameterf(ctx, sampler, pname, param);
2323 }
2324
glSamplerParameteri(GLuint sampler,GLenum pname,GLint param)2325 void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
2326 {
2327 GET_CONTEXT;
2328 ctx->glSamplerParameteri(ctx, sampler, pname, param);
2329 }
2330
glSamplerParameterfv(GLuint sampler,GLenum pname,const GLfloat * params)2331 void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat* params)
2332 {
2333 GET_CONTEXT;
2334 ctx->glSamplerParameterfv(ctx, sampler, pname, params);
2335 }
2336
glSamplerParameteriv(GLuint sampler,GLenum pname,const GLint * params)2337 void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint* params)
2338 {
2339 GET_CONTEXT;
2340 ctx->glSamplerParameteriv(ctx, sampler, pname, params);
2341 }
2342
glGetSamplerParameterfv(GLuint sampler,GLenum pname,GLfloat * params)2343 void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat* params)
2344 {
2345 GET_CONTEXT;
2346 ctx->glGetSamplerParameterfv(ctx, sampler, pname, params);
2347 }
2348
glGetSamplerParameteriv(GLuint sampler,GLenum pname,GLint * params)2349 void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint* params)
2350 {
2351 GET_CONTEXT;
2352 ctx->glGetSamplerParameteriv(ctx, sampler, pname, params);
2353 }
2354
glIsSampler(GLuint sampler)2355 GLboolean glIsSampler(GLuint sampler)
2356 {
2357 GET_CONTEXT;
2358 return ctx->glIsSampler(ctx, sampler);
2359 }
2360
glGenQueries(GLsizei n,GLuint * queries)2361 void glGenQueries(GLsizei n, GLuint* queries)
2362 {
2363 GET_CONTEXT;
2364 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
2365 ctx->glGenQueries(ctx, n, queries);
2366 }
2367
glDeleteQueries(GLsizei n,const GLuint * queries)2368 void glDeleteQueries(GLsizei n, const GLuint* queries)
2369 {
2370 GET_CONTEXT;
2371 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
2372 ctx->glDeleteQueries(ctx, n, queries);
2373 }
2374
glBeginQuery(GLenum target,GLuint query)2375 void glBeginQuery(GLenum target, GLuint query)
2376 {
2377 GET_CONTEXT;
2378 ctx->glBeginQuery(ctx, target, query);
2379 }
2380
glEndQuery(GLenum target)2381 void glEndQuery(GLenum target)
2382 {
2383 GET_CONTEXT;
2384 ctx->glEndQuery(ctx, target);
2385 }
2386
glGetQueryiv(GLenum target,GLenum pname,GLint * params)2387 void glGetQueryiv(GLenum target, GLenum pname, GLint* params)
2388 {
2389 GET_CONTEXT;
2390 ctx->glGetQueryiv(ctx, target, pname, params);
2391 }
2392
glGetQueryObjectuiv(GLuint query,GLenum pname,GLuint * params)2393 void glGetQueryObjectuiv(GLuint query, GLenum pname, GLuint* params)
2394 {
2395 GET_CONTEXT;
2396 ctx->glGetQueryObjectuiv(ctx, query, pname, params);
2397 }
2398
glIsQuery(GLuint query)2399 GLboolean glIsQuery(GLuint query)
2400 {
2401 GET_CONTEXT;
2402 return ctx->glIsQuery(ctx, query);
2403 }
2404
glProgramParameteri(GLuint program,GLenum pname,GLint value)2405 void glProgramParameteri(GLuint program, GLenum pname, GLint value)
2406 {
2407 GET_CONTEXT;
2408 ctx->glProgramParameteri(ctx, program, pname, value);
2409 }
2410
glProgramBinary(GLuint program,GLenum binaryFormat,const void * binary,GLsizei length)2411 void glProgramBinary(GLuint program, GLenum binaryFormat, const void* binary, GLsizei length)
2412 {
2413 GET_CONTEXT;
2414 ctx->glProgramBinary(ctx, program, binaryFormat, binary, length);
2415 }
2416
glGetProgramBinary(GLuint program,GLsizei bufSize,GLsizei * length,GLenum * binaryFormat,void * binary)2417 void glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei* length, GLenum* binaryFormat, void* binary)
2418 {
2419 GET_CONTEXT;
2420 if(bufSize<0){ ctx->setError(GL_INVALID_VALUE); return; }
2421 ctx->glGetProgramBinary(ctx, program, bufSize, length, binaryFormat, binary);
2422 }
2423
glGetFragDataLocation(GLuint program,const char * name)2424 GLint glGetFragDataLocation(GLuint program, const char* name)
2425 {
2426 GET_CONTEXT;
2427 return ctx->glGetFragDataLocation(ctx, program, name);
2428 }
2429
glGetInteger64v(GLenum pname,GLint64 * data)2430 void glGetInteger64v(GLenum pname, GLint64* data)
2431 {
2432 GET_CONTEXT;
2433 ctx->glGetInteger64v(ctx, pname, data);
2434 }
2435
glGetIntegeri_v(GLenum target,GLuint index,GLint * data)2436 void glGetIntegeri_v(GLenum target, GLuint index, GLint* data)
2437 {
2438 GET_CONTEXT;
2439 ctx->glGetIntegeri_v(ctx, target, index, data);
2440 }
2441
glGetInteger64i_v(GLenum target,GLuint index,GLint64 * data)2442 void glGetInteger64i_v(GLenum target, GLuint index, GLint64* data)
2443 {
2444 GET_CONTEXT;
2445 ctx->glGetInteger64i_v(ctx, target, index, data);
2446 }
2447
glTexImage3D(GLenum target,GLint level,GLint internalFormat,GLsizei width,GLsizei height,GLsizei depth,GLint border,GLenum format,GLenum type,const GLvoid * data)2448 void glTexImage3D(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* data)
2449 {
2450 GET_CONTEXT;
2451 ctx->glTexImage3D(ctx, target, level, internalFormat, width, height, depth, border, format, type, data);
2452 }
2453
glTexImage3DOffsetAEMU(GLenum target,GLint level,GLint internalFormat,GLsizei width,GLsizei height,GLsizei depth,GLint border,GLenum format,GLenum type,GLuint offset)2454 void glTexImage3DOffsetAEMU(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, GLuint offset)
2455 {
2456 GET_CONTEXT;
2457 ctx->glTexImage3DOffsetAEMU(ctx, target, level, internalFormat, width, height, depth, border, format, type, offset);
2458 }
2459
glTexStorage3D(GLenum target,GLsizei levels,GLenum internalformat,GLsizei width,GLsizei height,GLsizei depth)2460 void glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth)
2461 {
2462 GET_CONTEXT;
2463 ctx->glTexStorage3D(ctx, target, levels, internalformat, width, height, depth);
2464 }
2465
glTexSubImage3D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint zoffset,GLsizei width,GLsizei height,GLsizei depth,GLenum format,GLenum type,const GLvoid * data)2466 void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* data)
2467 {
2468 GET_CONTEXT;
2469 ctx->glTexSubImage3D(ctx, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, data);
2470 }
2471
glTexSubImage3DOffsetAEMU(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint zoffset,GLsizei width,GLsizei height,GLsizei depth,GLenum format,GLenum type,GLuint offset)2472 void glTexSubImage3DOffsetAEMU(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLuint offset)
2473 {
2474 GET_CONTEXT;
2475 ctx->glTexSubImage3DOffsetAEMU(ctx, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, offset);
2476 }
2477
glCompressedTexImage3D(GLenum target,GLint level,GLenum internalformat,GLsizei width,GLsizei height,GLsizei depth,GLint border,GLsizei imageSize,const GLvoid * data)2478 void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data)
2479 {
2480 GET_CONTEXT;
2481 if(imageSize<0){ ctx->setError(GL_INVALID_VALUE); return; }
2482 ctx->glCompressedTexImage3D(ctx, target, level, internalformat, width, height, depth, border, imageSize, data);
2483 }
2484
glCompressedTexImage3DOffsetAEMU(GLenum target,GLint level,GLenum internalformat,GLsizei width,GLsizei height,GLsizei depth,GLint border,GLsizei imageSize,GLuint offset)2485 void glCompressedTexImage3DOffsetAEMU(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, GLuint offset)
2486 {
2487 GET_CONTEXT;
2488 ctx->glCompressedTexImage3DOffsetAEMU(ctx, target, level, internalformat, width, height, depth, border, imageSize, offset);
2489 }
2490
glCompressedTexSubImage3D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint zoffset,GLsizei width,GLsizei height,GLsizei depth,GLenum format,GLsizei imageSize,const GLvoid * data)2491 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)
2492 {
2493 GET_CONTEXT;
2494 if(imageSize<0){ ctx->setError(GL_INVALID_VALUE); return; }
2495 ctx->glCompressedTexSubImage3D(ctx, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
2496 }
2497
glCompressedTexSubImage3DOffsetAEMU(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint zoffset,GLsizei width,GLsizei height,GLsizei depth,GLenum format,GLsizei imageSize,GLuint data)2498 void glCompressedTexSubImage3DOffsetAEMU(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, GLuint data)
2499 {
2500 GET_CONTEXT;
2501 ctx->glCompressedTexSubImage3DOffsetAEMU(ctx, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
2502 }
2503
glCopyTexSubImage3D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint zoffset,GLint x,GLint y,GLsizei width,GLsizei height)2504 void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
2505 {
2506 GET_CONTEXT;
2507 ctx->glCopyTexSubImage3D(ctx, target, level, xoffset, yoffset, zoffset, x, y, width, height);
2508 }
2509
glGetStringi(GLenum name,GLuint index)2510 const GLubyte* glGetStringi(GLenum name, GLuint index)
2511 {
2512 GET_CONTEXT;
2513 return ctx->glGetStringi(ctx, name, index);
2514 }
2515
glGetBooleani_v(GLenum target,GLuint index,GLboolean * data)2516 void glGetBooleani_v(GLenum target, GLuint index, GLboolean* data)
2517 {
2518 GET_CONTEXT;
2519 ctx->glGetBooleani_v(ctx, target, index, data);
2520 }
2521
glMemoryBarrier(GLbitfield barriers)2522 void glMemoryBarrier(GLbitfield barriers)
2523 {
2524 GET_CONTEXT;
2525 ctx->glMemoryBarrier(ctx, barriers);
2526 }
2527
glMemoryBarrierByRegion(GLbitfield barriers)2528 void glMemoryBarrierByRegion(GLbitfield barriers)
2529 {
2530 GET_CONTEXT;
2531 ctx->glMemoryBarrierByRegion(ctx, barriers);
2532 }
2533
glGenProgramPipelines(GLsizei n,GLuint * pipelines)2534 void glGenProgramPipelines(GLsizei n, GLuint* pipelines)
2535 {
2536 GET_CONTEXT;
2537 ctx->glGenProgramPipelines(ctx, n, pipelines);
2538 }
2539
glDeleteProgramPipelines(GLsizei n,const GLuint * pipelines)2540 void glDeleteProgramPipelines(GLsizei n, const GLuint* pipelines)
2541 {
2542 GET_CONTEXT;
2543 if(n<0){ ctx->setError(GL_INVALID_VALUE); return; }
2544 ctx->glDeleteProgramPipelines(ctx, n, pipelines);
2545 }
2546
glBindProgramPipeline(GLuint pipeline)2547 void glBindProgramPipeline(GLuint pipeline)
2548 {
2549 GET_CONTEXT;
2550 ctx->glBindProgramPipeline(ctx, pipeline);
2551 }
2552
glGetProgramPipelineiv(GLuint pipeline,GLenum pname,GLint * params)2553 void glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint* params)
2554 {
2555 GET_CONTEXT;
2556 ctx->glGetProgramPipelineiv(ctx, pipeline, pname, params);
2557 }
2558
glGetProgramPipelineInfoLog(GLuint pipeline,GLsizei bufSize,GLsizei * length,GLchar * infoLog)2559 void glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei* length, GLchar* infoLog)
2560 {
2561 GET_CONTEXT;
2562 if(bufSize<0){ ctx->setError(GL_INVALID_VALUE); return; }
2563 ctx->glGetProgramPipelineInfoLog(ctx, pipeline, bufSize, length, infoLog);
2564 }
2565
glValidateProgramPipeline(GLuint pipeline)2566 void glValidateProgramPipeline(GLuint pipeline)
2567 {
2568 GET_CONTEXT;
2569 ctx->glValidateProgramPipeline(ctx, pipeline);
2570 }
2571
glIsProgramPipeline(GLuint pipeline)2572 GLboolean glIsProgramPipeline(GLuint pipeline)
2573 {
2574 GET_CONTEXT;
2575 return ctx->glIsProgramPipeline(ctx, pipeline);
2576 }
2577
glUseProgramStages(GLuint pipeline,GLbitfield stages,GLuint program)2578 void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program)
2579 {
2580 GET_CONTEXT;
2581 ctx->glUseProgramStages(ctx, pipeline, stages, program);
2582 }
2583
glActiveShaderProgram(GLuint pipeline,GLuint program)2584 void glActiveShaderProgram(GLuint pipeline, GLuint program)
2585 {
2586 GET_CONTEXT;
2587 ctx->glActiveShaderProgram(ctx, pipeline, program);
2588 }
2589
glCreateShaderProgramv(GLenum type,GLsizei count,const char ** strings)2590 GLuint glCreateShaderProgramv(GLenum type, GLsizei count, const char** strings)
2591 {
2592 GET_CONTEXT;
2593 return ctx->glCreateShaderProgramv(ctx, type, count, strings);
2594 }
2595
glCreateShaderProgramvAEMU(GLenum type,GLsizei count,const char * packedStrings,GLuint packedLen)2596 GLuint glCreateShaderProgramvAEMU(GLenum type, GLsizei count, const char* packedStrings, GLuint packedLen)
2597 {
2598 GET_CONTEXT;
2599 return ctx->glCreateShaderProgramvAEMU(ctx, type, count, packedStrings, packedLen);
2600 }
2601
glProgramUniform1f(GLuint program,GLint location,GLfloat v0)2602 void glProgramUniform1f(GLuint program, GLint location, GLfloat v0)
2603 {
2604 GET_CONTEXT;
2605 ctx->glProgramUniform1f(ctx, program, location, v0);
2606 }
2607
glProgramUniform2f(GLuint program,GLint location,GLfloat v0,GLfloat v1)2608 void glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1)
2609 {
2610 GET_CONTEXT;
2611 ctx->glProgramUniform2f(ctx, program, location, v0, v1);
2612 }
2613
glProgramUniform3f(GLuint program,GLint location,GLfloat v0,GLfloat v1,GLfloat v2)2614 void glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
2615 {
2616 GET_CONTEXT;
2617 ctx->glProgramUniform3f(ctx, program, location, v0, v1, v2);
2618 }
2619
glProgramUniform4f(GLuint program,GLint location,GLfloat v0,GLfloat v1,GLfloat v2,GLfloat v3)2620 void glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
2621 {
2622 GET_CONTEXT;
2623 ctx->glProgramUniform4f(ctx, program, location, v0, v1, v2, v3);
2624 }
2625
glProgramUniform1i(GLuint program,GLint location,GLint v0)2626 void glProgramUniform1i(GLuint program, GLint location, GLint v0)
2627 {
2628 GET_CONTEXT;
2629 ctx->glProgramUniform1i(ctx, program, location, v0);
2630 }
2631
glProgramUniform2i(GLuint program,GLint location,GLint v0,GLint v1)2632 void glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1)
2633 {
2634 GET_CONTEXT;
2635 ctx->glProgramUniform2i(ctx, program, location, v0, v1);
2636 }
2637
glProgramUniform3i(GLuint program,GLint location,GLint v0,GLint v1,GLint v2)2638 void glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2)
2639 {
2640 GET_CONTEXT;
2641 ctx->glProgramUniform3i(ctx, program, location, v0, v1, v2);
2642 }
2643
glProgramUniform4i(GLuint program,GLint location,GLint v0,GLint v1,GLint v2,GLint v3)2644 void glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
2645 {
2646 GET_CONTEXT;
2647 ctx->glProgramUniform4i(ctx, program, location, v0, v1, v2, v3);
2648 }
2649
glProgramUniform1ui(GLuint program,GLint location,GLuint v0)2650 void glProgramUniform1ui(GLuint program, GLint location, GLuint v0)
2651 {
2652 GET_CONTEXT;
2653 ctx->glProgramUniform1ui(ctx, program, location, v0);
2654 }
2655
glProgramUniform2ui(GLuint program,GLint location,GLint v0,GLuint v1)2656 void glProgramUniform2ui(GLuint program, GLint location, GLint v0, GLuint v1)
2657 {
2658 GET_CONTEXT;
2659 ctx->glProgramUniform2ui(ctx, program, location, v0, v1);
2660 }
2661
glProgramUniform3ui(GLuint program,GLint location,GLint v0,GLint v1,GLuint v2)2662 void glProgramUniform3ui(GLuint program, GLint location, GLint v0, GLint v1, GLuint v2)
2663 {
2664 GET_CONTEXT;
2665 ctx->glProgramUniform3ui(ctx, program, location, v0, v1, v2);
2666 }
2667
glProgramUniform4ui(GLuint program,GLint location,GLint v0,GLint v1,GLint v2,GLuint v3)2668 void glProgramUniform4ui(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLuint v3)
2669 {
2670 GET_CONTEXT;
2671 ctx->glProgramUniform4ui(ctx, program, location, v0, v1, v2, v3);
2672 }
2673
glProgramUniform1fv(GLuint program,GLint location,GLsizei count,const GLfloat * value)2674 void glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat* value)
2675 {
2676 GET_CONTEXT;
2677 ctx->glProgramUniform1fv(ctx, program, location, count, value);
2678 }
2679
glProgramUniform2fv(GLuint program,GLint location,GLsizei count,const GLfloat * value)2680 void glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat* value)
2681 {
2682 GET_CONTEXT;
2683 ctx->glProgramUniform2fv(ctx, program, location, count, value);
2684 }
2685
glProgramUniform3fv(GLuint program,GLint location,GLsizei count,const GLfloat * value)2686 void glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat* value)
2687 {
2688 GET_CONTEXT;
2689 ctx->glProgramUniform3fv(ctx, program, location, count, value);
2690 }
2691
glProgramUniform4fv(GLuint program,GLint location,GLsizei count,const GLfloat * value)2692 void glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat* value)
2693 {
2694 GET_CONTEXT;
2695 ctx->glProgramUniform4fv(ctx, program, location, count, value);
2696 }
2697
glProgramUniform1iv(GLuint program,GLint location,GLsizei count,const GLint * value)2698 void glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint* value)
2699 {
2700 GET_CONTEXT;
2701 ctx->glProgramUniform1iv(ctx, program, location, count, value);
2702 }
2703
glProgramUniform2iv(GLuint program,GLint location,GLsizei count,const GLint * value)2704 void glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint* value)
2705 {
2706 GET_CONTEXT;
2707 ctx->glProgramUniform2iv(ctx, program, location, count, value);
2708 }
2709
glProgramUniform3iv(GLuint program,GLint location,GLsizei count,const GLint * value)2710 void glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint* value)
2711 {
2712 GET_CONTEXT;
2713 ctx->glProgramUniform3iv(ctx, program, location, count, value);
2714 }
2715
glProgramUniform4iv(GLuint program,GLint location,GLsizei count,const GLint * value)2716 void glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint* value)
2717 {
2718 GET_CONTEXT;
2719 ctx->glProgramUniform4iv(ctx, program, location, count, value);
2720 }
2721
glProgramUniform1uiv(GLuint program,GLint location,GLsizei count,const GLuint * value)2722 void glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint* value)
2723 {
2724 GET_CONTEXT;
2725 ctx->glProgramUniform1uiv(ctx, program, location, count, value);
2726 }
2727
glProgramUniform2uiv(GLuint program,GLint location,GLsizei count,const GLuint * value)2728 void glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint* value)
2729 {
2730 GET_CONTEXT;
2731 ctx->glProgramUniform2uiv(ctx, program, location, count, value);
2732 }
2733
glProgramUniform3uiv(GLuint program,GLint location,GLsizei count,const GLuint * value)2734 void glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint* value)
2735 {
2736 GET_CONTEXT;
2737 ctx->glProgramUniform3uiv(ctx, program, location, count, value);
2738 }
2739
glProgramUniform4uiv(GLuint program,GLint location,GLsizei count,const GLuint * value)2740 void glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint* value)
2741 {
2742 GET_CONTEXT;
2743 ctx->glProgramUniform4uiv(ctx, program, location, count, value);
2744 }
2745
glProgramUniformMatrix2fv(GLuint program,GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)2746 void glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
2747 {
2748 GET_CONTEXT;
2749 ctx->glProgramUniformMatrix2fv(ctx, program, location, count, transpose, value);
2750 }
2751
glProgramUniformMatrix3fv(GLuint program,GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)2752 void glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
2753 {
2754 GET_CONTEXT;
2755 ctx->glProgramUniformMatrix3fv(ctx, program, location, count, transpose, value);
2756 }
2757
glProgramUniformMatrix4fv(GLuint program,GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)2758 void glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
2759 {
2760 GET_CONTEXT;
2761 ctx->glProgramUniformMatrix4fv(ctx, program, location, count, transpose, value);
2762 }
2763
glProgramUniformMatrix2x3fv(GLuint program,GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)2764 void glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
2765 {
2766 GET_CONTEXT;
2767 ctx->glProgramUniformMatrix2x3fv(ctx, program, location, count, transpose, value);
2768 }
2769
glProgramUniformMatrix3x2fv(GLuint program,GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)2770 void glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
2771 {
2772 GET_CONTEXT;
2773 ctx->glProgramUniformMatrix3x2fv(ctx, program, location, count, transpose, value);
2774 }
2775
glProgramUniformMatrix2x4fv(GLuint program,GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)2776 void glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
2777 {
2778 GET_CONTEXT;
2779 ctx->glProgramUniformMatrix2x4fv(ctx, program, location, count, transpose, value);
2780 }
2781
glProgramUniformMatrix4x2fv(GLuint program,GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)2782 void glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
2783 {
2784 GET_CONTEXT;
2785 ctx->glProgramUniformMatrix4x2fv(ctx, program, location, count, transpose, value);
2786 }
2787
glProgramUniformMatrix3x4fv(GLuint program,GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)2788 void glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
2789 {
2790 GET_CONTEXT;
2791 ctx->glProgramUniformMatrix3x4fv(ctx, program, location, count, transpose, value);
2792 }
2793
glProgramUniformMatrix4x3fv(GLuint program,GLint location,GLsizei count,GLboolean transpose,const GLfloat * value)2794 void glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
2795 {
2796 GET_CONTEXT;
2797 ctx->glProgramUniformMatrix4x3fv(ctx, program, location, count, transpose, value);
2798 }
2799
glGetProgramInterfaceiv(GLuint program,GLenum programInterface,GLenum pname,GLint * params)2800 void glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint* params)
2801 {
2802 GET_CONTEXT;
2803 ctx->glGetProgramInterfaceiv(ctx, program, programInterface, pname, params);
2804 }
2805
glGetProgramResourceiv(GLuint program,GLenum programInterface,GLuint index,GLsizei propCount,const GLenum * props,GLsizei bufSize,GLsizei * length,GLint * params)2806 void glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum* props, GLsizei bufSize, GLsizei* length, GLint* params)
2807 {
2808 GET_CONTEXT;
2809 if(bufSize<0){ ctx->setError(GL_INVALID_VALUE); return; }
2810 ctx->glGetProgramResourceiv(ctx, program, programInterface, index, propCount, props, bufSize, length, params);
2811 }
2812
glGetProgramResourceIndex(GLuint program,GLenum programInterface,const char * name)2813 GLuint glGetProgramResourceIndex(GLuint program, GLenum programInterface, const char* name)
2814 {
2815 GET_CONTEXT;
2816 return ctx->glGetProgramResourceIndex(ctx, program, programInterface, name);
2817 }
2818
glGetProgramResourceLocation(GLuint program,GLenum programInterface,const char * name)2819 GLint glGetProgramResourceLocation(GLuint program, GLenum programInterface, const char* name)
2820 {
2821 GET_CONTEXT;
2822 return ctx->glGetProgramResourceLocation(ctx, program, programInterface, name);
2823 }
2824
glGetProgramResourceName(GLuint program,GLenum programInterface,GLuint index,GLsizei bufSize,GLsizei * length,char * name)2825 void glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei* length, char* name)
2826 {
2827 GET_CONTEXT;
2828 if(bufSize<0){ ctx->setError(GL_INVALID_VALUE); return; }
2829 ctx->glGetProgramResourceName(ctx, program, programInterface, index, bufSize, length, name);
2830 }
2831
glBindImageTexture(GLuint unit,GLuint texture,GLint level,GLboolean layered,GLint layer,GLenum access,GLenum format)2832 void glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format)
2833 {
2834 GET_CONTEXT;
2835 ctx->glBindImageTexture(ctx, unit, texture, level, layered, layer, access, format);
2836 }
2837
glDispatchCompute(GLuint num_groups_x,GLuint num_groups_y,GLuint num_groups_z)2838 void glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z)
2839 {
2840 GET_CONTEXT;
2841 ctx->glDispatchCompute(ctx, num_groups_x, num_groups_y, num_groups_z);
2842 }
2843
glDispatchComputeIndirect(GLintptr indirect)2844 void glDispatchComputeIndirect(GLintptr indirect)
2845 {
2846 GET_CONTEXT;
2847 ctx->glDispatchComputeIndirect(ctx, indirect);
2848 }
2849
glBindVertexBuffer(GLuint bindingindex,GLuint buffer,GLintptr offset,GLintptr stride)2850 void glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLintptr stride)
2851 {
2852 GET_CONTEXT;
2853 ctx->glBindVertexBuffer(ctx, bindingindex, buffer, offset, stride);
2854 }
2855
glVertexAttribBinding(GLuint attribindex,GLuint bindingindex)2856 void glVertexAttribBinding(GLuint attribindex, GLuint bindingindex)
2857 {
2858 GET_CONTEXT;
2859 ctx->glVertexAttribBinding(ctx, attribindex, bindingindex);
2860 }
2861
glVertexAttribFormat(GLuint attribindex,GLint size,GLenum type,GLboolean normalized,GLuint relativeoffset)2862 void glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset)
2863 {
2864 GET_CONTEXT;
2865 ctx->glVertexAttribFormat(ctx, attribindex, size, type, normalized, relativeoffset);
2866 }
2867
glVertexAttribIFormat(GLuint attribindex,GLint size,GLenum type,GLuint relativeoffset)2868 void glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset)
2869 {
2870 GET_CONTEXT;
2871 ctx->glVertexAttribIFormat(ctx, attribindex, size, type, relativeoffset);
2872 }
2873
glVertexBindingDivisor(GLuint bindingindex,GLuint divisor)2874 void glVertexBindingDivisor(GLuint bindingindex, GLuint divisor)
2875 {
2876 GET_CONTEXT;
2877 ctx->glVertexBindingDivisor(ctx, bindingindex, divisor);
2878 }
2879
glDrawArraysIndirect(GLenum mode,const void * indirect)2880 void glDrawArraysIndirect(GLenum mode, const void* indirect)
2881 {
2882 GET_CONTEXT;
2883 ctx->glDrawArraysIndirect(ctx, mode, indirect);
2884 }
2885
glDrawArraysIndirectDataAEMU(GLenum mode,const void * indirect,GLuint datalen)2886 void glDrawArraysIndirectDataAEMU(GLenum mode, const void* indirect, GLuint datalen)
2887 {
2888 GET_CONTEXT;
2889 ctx->glDrawArraysIndirectDataAEMU(ctx, mode, indirect, datalen);
2890 }
2891
glDrawArraysIndirectOffsetAEMU(GLenum mode,GLuint offset)2892 void glDrawArraysIndirectOffsetAEMU(GLenum mode, GLuint offset)
2893 {
2894 GET_CONTEXT;
2895 ctx->glDrawArraysIndirectOffsetAEMU(ctx, mode, offset);
2896 }
2897
glDrawElementsIndirect(GLenum mode,GLenum type,const void * indirect)2898 void glDrawElementsIndirect(GLenum mode, GLenum type, const void* indirect)
2899 {
2900 GET_CONTEXT;
2901 ctx->glDrawElementsIndirect(ctx, mode, type, indirect);
2902 }
2903
glDrawElementsIndirectDataAEMU(GLenum mode,GLenum type,const void * indirect,GLuint datalen)2904 void glDrawElementsIndirectDataAEMU(GLenum mode, GLenum type, const void* indirect, GLuint datalen)
2905 {
2906 GET_CONTEXT;
2907 ctx->glDrawElementsIndirectDataAEMU(ctx, mode, type, indirect, datalen);
2908 }
2909
glDrawElementsIndirectOffsetAEMU(GLenum mode,GLenum type,GLuint offset)2910 void glDrawElementsIndirectOffsetAEMU(GLenum mode, GLenum type, GLuint offset)
2911 {
2912 GET_CONTEXT;
2913 ctx->glDrawElementsIndirectOffsetAEMU(ctx, mode, type, offset);
2914 }
2915
glTexStorage2DMultisample(GLenum target,GLsizei samples,GLenum internalformat,GLsizei width,GLsizei height,GLboolean fixedsamplelocations)2916 void glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
2917 {
2918 GET_CONTEXT;
2919 ctx->glTexStorage2DMultisample(ctx, target, samples, internalformat, width, height, fixedsamplelocations);
2920 }
2921
glSampleMaski(GLuint maskNumber,GLbitfield mask)2922 void glSampleMaski(GLuint maskNumber, GLbitfield mask)
2923 {
2924 GET_CONTEXT;
2925 ctx->glSampleMaski(ctx, maskNumber, mask);
2926 }
2927
glGetMultisamplefv(GLenum pname,GLuint index,GLfloat * val)2928 void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat* val)
2929 {
2930 GET_CONTEXT;
2931 ctx->glGetMultisamplefv(ctx, pname, index, val);
2932 }
2933
glFramebufferParameteri(GLenum target,GLenum pname,GLint param)2934 void glFramebufferParameteri(GLenum target, GLenum pname, GLint param)
2935 {
2936 GET_CONTEXT;
2937 ctx->glFramebufferParameteri(ctx, target, pname, param);
2938 }
2939
glGetFramebufferParameteriv(GLenum target,GLenum pname,GLint * params)2940 void glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint* params)
2941 {
2942 GET_CONTEXT;
2943 ctx->glGetFramebufferParameteriv(ctx, target, pname, params);
2944 }
2945
glGetTexLevelParameterfv(GLenum target,GLint level,GLenum pname,GLfloat * params)2946 void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat* params)
2947 {
2948 GET_CONTEXT;
2949 ctx->glGetTexLevelParameterfv(ctx, target, level, pname, params);
2950 }
2951
glGetTexLevelParameteriv(GLenum target,GLint level,GLenum pname,GLint * params)2952 void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint* params)
2953 {
2954 GET_CONTEXT;
2955 ctx->glGetTexLevelParameteriv(ctx, target, level, pname, params);
2956 }
2957
glMapBufferRangeDMA(GLenum target,GLintptr offset,GLsizeiptr length,GLbitfield access,uint64_t paddr)2958 void glMapBufferRangeDMA(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, uint64_t paddr)
2959 {
2960 GET_CONTEXT;
2961 ctx->glMapBufferRangeDMA(ctx, target, offset, length, access, paddr);
2962 }
2963
glUnmapBufferDMA(GLenum target,GLintptr offset,GLsizeiptr length,GLbitfield access,uint64_t paddr,GLboolean * out_res)2964 void glUnmapBufferDMA(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, uint64_t paddr, GLboolean* out_res)
2965 {
2966 GET_CONTEXT;
2967 ctx->glUnmapBufferDMA(ctx, target, offset, length, access, paddr, out_res);
2968 }
2969
glMapBufferRangeDirect(GLenum target,GLintptr offset,GLsizeiptr length,GLbitfield access,uint64_t paddr)2970 uint64_t glMapBufferRangeDirect(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, uint64_t paddr)
2971 {
2972 GET_CONTEXT;
2973 return ctx->glMapBufferRangeDirect(ctx, target, offset, length, access, paddr);
2974 }
2975
glUnmapBufferDirect(GLenum target,GLintptr offset,GLsizeiptr length,GLbitfield access,uint64_t paddr,uint64_t guest_ptr,GLboolean * out_res)2976 void glUnmapBufferDirect(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, uint64_t paddr, uint64_t guest_ptr, GLboolean* out_res)
2977 {
2978 GET_CONTEXT;
2979 ctx->glUnmapBufferDirect(ctx, target, offset, length, access, paddr, guest_ptr, out_res);
2980 }
2981
glFlushMappedBufferRangeDirect(GLenum target,GLintptr offset,GLsizeiptr length,GLbitfield access)2982 void glFlushMappedBufferRangeDirect(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
2983 {
2984 GET_CONTEXT;
2985 ctx->glFlushMappedBufferRangeDirect(ctx, target, offset, length, access);
2986 }
2987
glGetGraphicsResetStatusEXT()2988 GLenum glGetGraphicsResetStatusEXT()
2989 {
2990 GET_CONTEXT;
2991 return ctx->glGetGraphicsResetStatusEXT(ctx);
2992 }
2993
glReadnPixelsEXT(GLint x,GLint y,GLsizei width,GLsizei height,GLenum format,GLenum type,GLsizei bufSize,GLvoid * data)2994 void glReadnPixelsEXT(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid* data)
2995 {
2996 GET_CONTEXT;
2997 ctx->glReadnPixelsEXT(ctx, x, y, width, height, format, type, bufSize, data);
2998 }
2999
glGetnUniformfvEXT(GLuint program,GLint location,GLsizei bufSize,GLfloat * params)3000 void glGetnUniformfvEXT(GLuint program, GLint location, GLsizei bufSize, GLfloat* params)
3001 {
3002 GET_CONTEXT;
3003 ctx->glGetnUniformfvEXT(ctx, program, location, bufSize, params);
3004 }
3005
glGetnUniformivEXT(GLuint program,GLint location,GLsizei bufSize,GLint * params)3006 void glGetnUniformivEXT(GLuint program, GLint location, GLsizei bufSize, GLint* params)
3007 {
3008 GET_CONTEXT;
3009 ctx->glGetnUniformivEXT(ctx, program, location, bufSize, params);
3010 }
3011
glDrawArraysNullAEMU(GLenum mode,GLint first,GLsizei count)3012 void glDrawArraysNullAEMU(GLenum mode, GLint first, GLsizei count)
3013 {
3014 GET_CONTEXT;
3015 ctx->glDrawArraysNullAEMU(ctx, mode, first, count);
3016 }
3017
glDrawElementsNullAEMU(GLenum mode,GLsizei count,GLenum type,const GLvoid * indices)3018 void glDrawElementsNullAEMU(GLenum mode, GLsizei count, GLenum type, const GLvoid* indices)
3019 {
3020 GET_CONTEXT;
3021 ctx->glDrawElementsNullAEMU(ctx, mode, count, type, indices);
3022 }
3023
glDrawElementsOffsetNullAEMU(GLenum mode,GLsizei count,GLenum type,GLuint offset)3024 void glDrawElementsOffsetNullAEMU(GLenum mode, GLsizei count, GLenum type, GLuint offset)
3025 {
3026 GET_CONTEXT;
3027 ctx->glDrawElementsOffsetNullAEMU(ctx, mode, count, type, offset);
3028 }
3029
glDrawElementsDataNullAEMU(GLenum mode,GLsizei count,GLenum type,void * data,GLuint datalen)3030 void glDrawElementsDataNullAEMU(GLenum mode, GLsizei count, GLenum type, void* data, GLuint datalen)
3031 {
3032 GET_CONTEXT;
3033 ctx->glDrawElementsDataNullAEMU(ctx, mode, count, type, data, datalen);
3034 }
3035
glUnmapBufferAsyncAEMU(GLenum target,GLintptr offset,GLsizeiptr length,GLbitfield access,void * guest_buffer,GLboolean * out_res)3036 void glUnmapBufferAsyncAEMU(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, void* guest_buffer, GLboolean* out_res)
3037 {
3038 GET_CONTEXT;
3039 ctx->glUnmapBufferAsyncAEMU(ctx, target, offset, length, access, guest_buffer, out_res);
3040 }
3041
glFlushMappedBufferRangeAEMU2(GLenum target,GLintptr offset,GLsizeiptr length,GLbitfield access,void * guest_buffer)3042 void glFlushMappedBufferRangeAEMU2(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access, void* guest_buffer)
3043 {
3044 GET_CONTEXT;
3045 ctx->glFlushMappedBufferRangeAEMU2(ctx, target, offset, length, access, guest_buffer);
3046 }
3047
glBufferDataSyncAEMU(GLenum target,GLsizeiptr size,const GLvoid * data,GLenum usage)3048 GLboolean glBufferDataSyncAEMU(GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage)
3049 {
3050 GET_CONTEXT;
3051 return ctx->glBufferDataSyncAEMU(ctx, target, size, data, usage);
3052 }
3053
glTexBufferOES(GLenum target,GLenum internalFormat,GLuint buffer)3054 void glTexBufferOES(GLenum target, GLenum internalFormat, GLuint buffer)
3055 {
3056 GET_CONTEXT;
3057 ctx->glTexBufferOES(ctx, target, internalFormat, buffer);
3058 }
3059
glTexBufferRangeOES(GLenum target,GLenum internalFormat,GLuint buffer,GLintptr offset,GLsizeiptr size)3060 void glTexBufferRangeOES(GLenum target, GLenum internalFormat, GLuint buffer, GLintptr offset, GLsizeiptr size)
3061 {
3062 GET_CONTEXT;
3063 ctx->glTexBufferRangeOES(ctx, target, internalFormat, buffer, offset, size);
3064 }
3065
glTexBufferEXT(GLenum target,GLenum internalFormat,GLuint buffer)3066 void glTexBufferEXT(GLenum target, GLenum internalFormat, GLuint buffer)
3067 {
3068 GET_CONTEXT;
3069 ctx->glTexBufferEXT(ctx, target, internalFormat, buffer);
3070 }
3071
glTexBufferRangeEXT(GLenum target,GLenum internalFormat,GLuint buffer,GLintptr offset,GLsizeiptr size)3072 void glTexBufferRangeEXT(GLenum target, GLenum internalFormat, GLuint buffer, GLintptr offset, GLsizeiptr size)
3073 {
3074 GET_CONTEXT;
3075 ctx->glTexBufferRangeEXT(ctx, target, internalFormat, buffer, offset, size);
3076 }
3077
glEnableiEXT(GLenum cap,GLuint index)3078 void glEnableiEXT(GLenum cap, GLuint index)
3079 {
3080 GET_CONTEXT;
3081 ctx->glEnableiEXT(ctx, cap, index);
3082 }
3083
glDisableiEXT(GLenum cap,GLuint index)3084 void glDisableiEXT(GLenum cap, GLuint index)
3085 {
3086 GET_CONTEXT;
3087 ctx->glDisableiEXT(ctx, cap, index);
3088 }
3089
glBlendEquationiEXT(GLuint index,GLenum mode)3090 void glBlendEquationiEXT(GLuint index, GLenum mode)
3091 {
3092 GET_CONTEXT;
3093 ctx->glBlendEquationiEXT(ctx, index, mode);
3094 }
3095
glBlendEquationSeparateiEXT(GLuint index,GLenum modeRGB,GLenum modeAlpha)3096 void glBlendEquationSeparateiEXT(GLuint index, GLenum modeRGB, GLenum modeAlpha)
3097 {
3098 GET_CONTEXT;
3099 ctx->glBlendEquationSeparateiEXT(ctx, index, modeRGB, modeAlpha);
3100 }
3101
glBlendFunciEXT(GLuint index,GLenum sfactor,GLenum dfactor)3102 void glBlendFunciEXT(GLuint index, GLenum sfactor, GLenum dfactor)
3103 {
3104 GET_CONTEXT;
3105 ctx->glBlendFunciEXT(ctx, index, sfactor, dfactor);
3106 }
3107
glBlendFuncSeparateiEXT(GLuint index,GLenum srcRGB,GLenum dstRGB,GLenum srcAlpha,GLenum dstAlpha)3108 void glBlendFuncSeparateiEXT(GLuint index, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
3109 {
3110 GET_CONTEXT;
3111 ctx->glBlendFuncSeparateiEXT(ctx, index, srcRGB, dstRGB, srcAlpha, dstAlpha);
3112 }
3113
glColorMaskiEXT(GLuint index,GLboolean red,GLboolean green,GLboolean blue,GLboolean alpha)3114 void glColorMaskiEXT(GLuint index, GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
3115 {
3116 GET_CONTEXT;
3117 ctx->glColorMaskiEXT(ctx, index, red, green, blue, alpha);
3118 }
3119
glIsEnablediEXT(GLenum cap,GLuint index)3120 GLboolean glIsEnablediEXT(GLenum cap, GLuint index)
3121 {
3122 GET_CONTEXT;
3123 return ctx->glIsEnablediEXT(ctx, cap, index);
3124 }
3125
3126