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