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