1 // Copyright 2016 The SwiftShader Authors. All Rights Reserved.
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14
15 // main.cpp: DLL entry point and management of thread-local data.
16
17 #include "main.h"
18
19 #include "libGLES_CM.hpp"
20 #include "Framebuffer.h"
21 #include "common/Surface.hpp"
22 #include "Common/Thread.hpp"
23 #include "Common/SharedLibrary.hpp"
24 #include "common/debug.h"
25
26 #include <GLES/glext.h>
27
28 #if !defined(_MSC_VER)
29 #define CONSTRUCTOR __attribute__((constructor))
30 #define DESTRUCTOR __attribute__((destructor))
31 #else
32 #define CONSTRUCTOR
33 #define DESTRUCTOR
34 #endif
35
glAttachThread()36 static void glAttachThread()
37 {
38 TRACE("()");
39 }
40
glDetachThread()41 static void glDetachThread()
42 {
43 TRACE("()");
44 }
45
glAttachProcess()46 CONSTRUCTOR static void glAttachProcess()
47 {
48 TRACE("()");
49
50 glAttachThread();
51 }
52
glDetachProcess()53 DESTRUCTOR static void glDetachProcess()
54 {
55 TRACE("()");
56
57 glDetachThread();
58 }
59
60 #if defined(_WIN32)
DllMain(HINSTANCE instance,DWORD reason,LPVOID reserved)61 extern "C" BOOL WINAPI DllMain(HINSTANCE instance, DWORD reason, LPVOID reserved)
62 {
63 switch(reason)
64 {
65 case DLL_PROCESS_ATTACH:
66 glAttachProcess();
67 break;
68 case DLL_THREAD_ATTACH:
69 glAttachThread();
70 break;
71 case DLL_THREAD_DETACH:
72 glDetachThread();
73 break;
74 case DLL_PROCESS_DETACH:
75 glDetachProcess();
76 break;
77 default:
78 break;
79 }
80
81 return TRUE;
82 }
83 #endif
84
85 namespace es1
86 {
getContext()87 es1::Context *getContext()
88 {
89 egl::Context *context = libEGL->clientGetCurrentContext();
90
91 if(context && context->getClientVersion() == 1)
92 {
93 return static_cast<es1::Context*>(context);
94 }
95
96 return nullptr;
97 }
98
getDevice()99 Device *getDevice()
100 {
101 Context *context = getContext();
102
103 return context ? context->getDevice() : nullptr;
104 }
105
106 // Records an error code
error(GLenum errorCode)107 void error(GLenum errorCode)
108 {
109 es1::Context *context = es1::getContext();
110
111 if(context)
112 {
113 switch(errorCode)
114 {
115 case GL_INVALID_ENUM:
116 context->recordInvalidEnum();
117 TRACE("\t! Error generated: invalid enum\n");
118 break;
119 case GL_INVALID_VALUE:
120 context->recordInvalidValue();
121 TRACE("\t! Error generated: invalid value\n");
122 break;
123 case GL_INVALID_OPERATION:
124 context->recordInvalidOperation();
125 TRACE("\t! Error generated: invalid operation\n");
126 break;
127 case GL_OUT_OF_MEMORY:
128 context->recordOutOfMemory();
129 TRACE("\t! Error generated: out of memory\n");
130 break;
131 case GL_INVALID_FRAMEBUFFER_OPERATION_OES:
132 context->recordInvalidFramebufferOperation();
133 TRACE("\t! Error generated: invalid framebuffer operation\n");
134 break;
135 case GL_STACK_OVERFLOW:
136 context->recordMatrixStackOverflow();
137 TRACE("\t! Error generated: matrix stack overflow\n");
138 break;
139 case GL_STACK_UNDERFLOW:
140 context->recordMatrixStackUnderflow();
141 TRACE("\t! Error generated: matrix stack underflow\n");
142 break;
143 default: UNREACHABLE(errorCode);
144 }
145 }
146 }
147 }
148
149 namespace es1
150 {
151 void GL_APIENTRY ActiveTexture(GLenum texture);
152 void GL_APIENTRY AlphaFunc(GLenum func, GLclampf ref);
153 void GL_APIENTRY AlphaFuncx(GLenum func, GLclampx ref);
154 void GL_APIENTRY BindBuffer(GLenum target, GLuint buffer);
155 void GL_APIENTRY BindFramebuffer(GLenum target, GLuint framebuffer);
156 void GL_APIENTRY BindFramebufferOES(GLenum target, GLuint framebuffer);
157 void GL_APIENTRY BindRenderbufferOES(GLenum target, GLuint renderbuffer);
158 void GL_APIENTRY BindTexture(GLenum target, GLuint texture);
159 void GL_APIENTRY BlendEquationSeparateOES(GLenum modeRGB, GLenum modeAlpha);
160 void GL_APIENTRY BlendEquationOES(GLenum mode);
161 void GL_APIENTRY BlendEquationSeparateOES(GLenum modeRGB, GLenum modeAlpha);
162 void GL_APIENTRY BlendFuncSeparateOES(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
163 void GL_APIENTRY BlendFunc(GLenum sfactor, GLenum dfactor);
164 void GL_APIENTRY BlendFuncSeparateOES(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
165 void GL_APIENTRY BufferData(GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage);
166 void GL_APIENTRY BufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data);
167 GLenum GL_APIENTRY CheckFramebufferStatusOES(GLenum target);
168 void GL_APIENTRY Clear(GLbitfield mask);
169 void GL_APIENTRY ClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
170 void GL_APIENTRY ClearColorx(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
171 void GL_APIENTRY ClearDepthf(GLclampf depth);
172 void GL_APIENTRY ClearDepthx(GLclampx depth);
173 void GL_APIENTRY ClearStencil(GLint s);
174 void GL_APIENTRY ClientActiveTexture(GLenum texture);
175 void GL_APIENTRY ClipPlanef(GLenum plane, const GLfloat *equation);
176 void GL_APIENTRY ClipPlanex(GLenum plane, const GLfixed *equation);
177 void GL_APIENTRY Color4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
178 void GL_APIENTRY Color4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
179 void GL_APIENTRY Color4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
180 void GL_APIENTRY ColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
181 void GL_APIENTRY ColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
182 void GL_APIENTRY CompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height,
183 GLint border, GLsizei imageSize, const GLvoid* data);
184 void GL_APIENTRY CompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height,
185 GLenum format, GLsizei imageSize, const GLvoid* data);
186 void GL_APIENTRY CopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
187 void GL_APIENTRY CopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
188 void GL_APIENTRY CullFace(GLenum mode);
189 void GL_APIENTRY DeleteBuffers(GLsizei n, const GLuint* buffers);
190 void GL_APIENTRY DeleteFramebuffersOES(GLsizei n, const GLuint* framebuffers);
191 void GL_APIENTRY DeleteRenderbuffersOES(GLsizei n, const GLuint* renderbuffers);
192 void GL_APIENTRY DeleteTextures(GLsizei n, const GLuint* textures);
193 void GL_APIENTRY DepthFunc(GLenum func);
194 void GL_APIENTRY DepthMask(GLboolean flag);
195 void GL_APIENTRY DepthRangex(GLclampx zNear, GLclampx zFar);
196 void GL_APIENTRY DepthRangef(GLclampf zNear, GLclampf zFar);
197 void GL_APIENTRY Disable(GLenum cap);
198 void GL_APIENTRY DisableClientState(GLenum array);
199 void GL_APIENTRY DrawArrays(GLenum mode, GLint first, GLsizei count);
200 void GL_APIENTRY DrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid* indices);
201 void GL_APIENTRY Enable(GLenum cap);
202 void GL_APIENTRY EnableClientState(GLenum array);
203 void GL_APIENTRY Finish(void);
204 void GL_APIENTRY Flush(void);
205 void GL_APIENTRY FramebufferRenderbufferOES(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
206 void GL_APIENTRY FramebufferTexture2DOES(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
207 void GL_APIENTRY Fogf(GLenum pname, GLfloat param);
208 void GL_APIENTRY Fogfv(GLenum pname, const GLfloat *params);
209 void GL_APIENTRY Fogx(GLenum pname, GLfixed param);
210 void GL_APIENTRY Fogxv(GLenum pname, const GLfixed *params);
211 void GL_APIENTRY FrontFace(GLenum mode);
212 void GL_APIENTRY Frustumf(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
213 void GL_APIENTRY Frustumx(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
214 void GL_APIENTRY GenerateMipmapOES(GLenum target);
215 void GL_APIENTRY GenBuffers(GLsizei n, GLuint* buffers);
216 void GL_APIENTRY GenFramebuffersOES(GLsizei n, GLuint* framebuffers);
217 void GL_APIENTRY GenRenderbuffersOES(GLsizei n, GLuint* renderbuffers);
218 void GL_APIENTRY GenTextures(GLsizei n, GLuint* textures);
219 void GL_APIENTRY GetRenderbufferParameterivOES(GLenum target, GLenum pname, GLint* params);
220 void GL_APIENTRY GetBooleanv(GLenum pname, GLboolean* params);
221 void GL_APIENTRY GetBufferParameteriv(GLenum target, GLenum pname, GLint* params);
222 void GL_APIENTRY GetClipPlanef(GLenum pname, GLfloat eqn[4]);
223 void GL_APIENTRY GetClipPlanex(GLenum pname, GLfixed eqn[4]);
224 GLenum GL_APIENTRY GetError(void);
225 void GL_APIENTRY GetFixedv(GLenum pname, GLfixed *params);
226 void GL_APIENTRY GetFloatv(GLenum pname, GLfloat* params);
227 void GL_APIENTRY GetFramebufferAttachmentParameterivOES(GLenum target, GLenum attachment, GLenum pname, GLint* params);
228 void GL_APIENTRY GetIntegerv(GLenum pname, GLint* params);
229 void GL_APIENTRY GetLightfv(GLenum light, GLenum pname, GLfloat *params);
230 void GL_APIENTRY GetLightxv(GLenum light, GLenum pname, GLfixed *params);
231 void GL_APIENTRY GetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
232 void GL_APIENTRY GetMaterialxv(GLenum face, GLenum pname, GLfixed *params);
233 void GL_APIENTRY GetPointerv(GLenum pname, GLvoid **params);
234 const GLubyte* GL_APIENTRY GetString(GLenum name);
235 void GL_APIENTRY GetTexParameterfv(GLenum target, GLenum pname, GLfloat* params);
236 void GL_APIENTRY GetTexParameteriv(GLenum target, GLenum pname, GLint* params);
237 void GL_APIENTRY GetTexEnvfv(GLenum env, GLenum pname, GLfloat *params);
238 void GL_APIENTRY GetTexEnviv(GLenum env, GLenum pname, GLint *params);
239 void GL_APIENTRY GetTexEnvxv(GLenum env, GLenum pname, GLfixed *params);
240 void GL_APIENTRY GetTexParameterxv(GLenum target, GLenum pname, GLfixed *params);
241 void GL_APIENTRY Hint(GLenum target, GLenum mode);
242 GLboolean GL_APIENTRY IsBuffer(GLuint buffer);
243 GLboolean GL_APIENTRY IsEnabled(GLenum cap);
244 GLboolean GL_APIENTRY IsFramebufferOES(GLuint framebuffer);
245 GLboolean GL_APIENTRY IsTexture(GLuint texture);
246 GLboolean GL_APIENTRY IsRenderbufferOES(GLuint renderbuffer);
247 void GL_APIENTRY LightModelf(GLenum pname, GLfloat param);
248 void GL_APIENTRY LightModelfv(GLenum pname, const GLfloat *params);
249 void GL_APIENTRY LightModelx(GLenum pname, GLfixed param);
250 void GL_APIENTRY LightModelxv(GLenum pname, const GLfixed *params);
251 void GL_APIENTRY Lightf(GLenum light, GLenum pname, GLfloat param);
252 void GL_APIENTRY Lightfv(GLenum light, GLenum pname, const GLfloat *params);
253 void GL_APIENTRY Lightx(GLenum light, GLenum pname, GLfixed param);
254 void GL_APIENTRY Lightxv(GLenum light, GLenum pname, const GLfixed *params);
255 void GL_APIENTRY LineWidth(GLfloat width);
256 void GL_APIENTRY LineWidthx(GLfixed width);
257 void GL_APIENTRY LoadIdentity(void);
258 void GL_APIENTRY LoadMatrixf(const GLfloat *m);
259 void GL_APIENTRY LoadMatrixx(const GLfixed *m);
260 void GL_APIENTRY LogicOp(GLenum opcode);
261 void GL_APIENTRY Materialf(GLenum face, GLenum pname, GLfloat param);
262 void GL_APIENTRY Materialfv(GLenum face, GLenum pname, const GLfloat *params);
263 void GL_APIENTRY Materialx(GLenum face, GLenum pname, GLfixed param);
264 void GL_APIENTRY Materialxv(GLenum face, GLenum pname, const GLfixed *params);
265 void GL_APIENTRY MatrixMode(GLenum mode);
266 void GL_APIENTRY MultMatrixf(const GLfloat *m);
267 void GL_APIENTRY MultMatrixx(const GLfixed *m);
268 void GL_APIENTRY MultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
269 void GL_APIENTRY MultiTexCoord4x(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
270 void GL_APIENTRY Normal3f(GLfloat nx, GLfloat ny, GLfloat nz);
271 void GL_APIENTRY Normal3x(GLfixed nx, GLfixed ny, GLfixed nz);
272 void GL_APIENTRY NormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer);
273 void GL_APIENTRY Orthof(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
274 void GL_APIENTRY Orthox(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
275 void GL_APIENTRY PixelStorei(GLenum pname, GLint param);
276 void GL_APIENTRY PointParameterf(GLenum pname, GLfloat param);
277 void GL_APIENTRY PointParameterfv(GLenum pname, const GLfloat *params);
278 void GL_APIENTRY PointParameterx(GLenum pname, GLfixed param);
279 void GL_APIENTRY PointParameterxv(GLenum pname, const GLfixed *params);
280 void GL_APIENTRY PointSize(GLfloat size);
281 void GL_APIENTRY PointSizePointerOES(GLenum type, GLsizei stride, const GLvoid *pointer);
282 void GL_APIENTRY PointSizex(GLfixed size);
283 void GL_APIENTRY PolygonOffset(GLfloat factor, GLfloat units);
284 void GL_APIENTRY PolygonOffsetx(GLfixed factor, GLfixed units);
285 void GL_APIENTRY PopMatrix(void);
286 void GL_APIENTRY PushMatrix(void);
287 void GL_APIENTRY ReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels);
288 void GL_APIENTRY RenderbufferStorageOES(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
289 void GL_APIENTRY Rotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
290 void GL_APIENTRY Rotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
291 void GL_APIENTRY SampleCoverage(GLclampf value, GLboolean invert);
292 void GL_APIENTRY SampleCoveragex(GLclampx value, GLboolean invert);
293 void GL_APIENTRY Scalef(GLfloat x, GLfloat y, GLfloat z);
294 void GL_APIENTRY Scalex(GLfixed x, GLfixed y, GLfixed z);
295 void GL_APIENTRY Scissor(GLint x, GLint y, GLsizei width, GLsizei height);
296 void GL_APIENTRY ShadeModel(GLenum mode);
297 void GL_APIENTRY StencilFunc(GLenum func, GLint ref, GLuint mask);
298 void GL_APIENTRY StencilMask(GLuint mask);
299 void GL_APIENTRY StencilOp(GLenum fail, GLenum zfail, GLenum zpass);
300 void GL_APIENTRY TexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
301 void GL_APIENTRY TexEnvf(GLenum target, GLenum pname, GLfloat param);
302 void GL_APIENTRY TexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
303 void GL_APIENTRY TexEnvi(GLenum target, GLenum pname, GLint param);
304 void GL_APIENTRY TexEnvx(GLenum target, GLenum pname, GLfixed param);
305 void GL_APIENTRY TexEnviv(GLenum target, GLenum pname, const GLint *params);
306 void GL_APIENTRY TexEnvxv(GLenum target, GLenum pname, const GLfixed *params);
307 void GL_APIENTRY TexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height,
308 GLint border, GLenum format, GLenum type, const GLvoid* pixels);
309 void GL_APIENTRY TexParameterf(GLenum target, GLenum pname, GLfloat param);
310 void GL_APIENTRY TexParameterfv(GLenum target, GLenum pname, const GLfloat* params);
311 void GL_APIENTRY TexParameteri(GLenum target, GLenum pname, GLint param);
312 void GL_APIENTRY TexParameteriv(GLenum target, GLenum pname, const GLint* params);
313 void GL_APIENTRY TexParameterx(GLenum target, GLenum pname, GLfixed param);
314 void GL_APIENTRY TexParameterxv(GLenum target, GLenum pname, const GLfixed *params);
315 void GL_APIENTRY TexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height,
316 GLenum format, GLenum type, const GLvoid* pixels);
317 void GL_APIENTRY Translatef(GLfloat x, GLfloat y, GLfloat z);
318 void GL_APIENTRY Translatex(GLfixed x, GLfixed y, GLfixed z);
319 void GL_APIENTRY VertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
320 void GL_APIENTRY Viewport(GLint x, GLint y, GLsizei width, GLsizei height);
321 void GL_APIENTRY EGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image);
322 void GL_APIENTRY EGLImageTargetRenderbufferStorageOES(GLenum target, GLeglImageOES image);
323 void GL_APIENTRY DrawTexsOES(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height);
324 void GL_APIENTRY DrawTexiOES(GLint x, GLint y, GLint z, GLint width, GLint height);
325 void GL_APIENTRY DrawTexxOES(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height);
326 void GL_APIENTRY DrawTexsvOES(const GLshort *coords);
327 void GL_APIENTRY DrawTexivOES(const GLint *coords);
328 void GL_APIENTRY DrawTexxvOES(const GLfixed *coords);
329 void GL_APIENTRY DrawTexfOES(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height);
330 void GL_APIENTRY DrawTexfvOES(const GLfloat *coords);
331 }
332
333 egl::Context *es1CreateContext(egl::Display *display, const egl::Context *shareContext, const egl::Config *config);
334 extern "C" __eglMustCastToProperFunctionPointerType es1GetProcAddress(const char *procname);
335 egl::Image *createBackBuffer(int width, int height, sw::Format format, int multiSampleDepth);
336 egl::Image *createDepthStencil(int width, int height, sw::Format format, int multiSampleDepth);
337 sw::FrameBuffer *createFrameBuffer(void *nativeDisplay, EGLNativeWindowType window, int width, int height);
338
339 extern "C"
340 {
eglGetError(void)341 EGLAPI EGLint EGLAPIENTRY eglGetError(void)
342 {
343 return libEGL->eglGetError();
344 }
345
eglGetDisplay(EGLNativeDisplayType display_id)346 EGLAPI EGLDisplay EGLAPIENTRY eglGetDisplay(EGLNativeDisplayType display_id)
347 {
348 return libEGL->eglGetDisplay(display_id);
349 }
350
eglInitialize(EGLDisplay dpy,EGLint * major,EGLint * minor)351 EGLAPI EGLBoolean EGLAPIENTRY eglInitialize(EGLDisplay dpy, EGLint *major, EGLint *minor)
352 {
353 return libEGL->eglInitialize(dpy, major, minor);
354 }
355
eglTerminate(EGLDisplay dpy)356 EGLAPI EGLBoolean EGLAPIENTRY eglTerminate(EGLDisplay dpy)
357 {
358 return libEGL->eglTerminate(dpy);
359 }
360
eglQueryString(EGLDisplay dpy,EGLint name)361 EGLAPI const char *EGLAPIENTRY eglQueryString(EGLDisplay dpy, EGLint name)
362 {
363 return libEGL->eglQueryString(dpy, name);
364 }
365
eglGetConfigs(EGLDisplay dpy,EGLConfig * configs,EGLint config_size,EGLint * num_config)366 EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigs(EGLDisplay dpy, EGLConfig *configs, EGLint config_size, EGLint *num_config)
367 {
368 return libEGL->eglGetConfigs(dpy, configs, config_size, num_config);
369 }
370
eglChooseConfig(EGLDisplay dpy,const EGLint * attrib_list,EGLConfig * configs,EGLint config_size,EGLint * num_config)371 EGLAPI EGLBoolean EGLAPIENTRY eglChooseConfig(EGLDisplay dpy, const EGLint *attrib_list, EGLConfig *configs, EGLint config_size, EGLint *num_config)
372 {
373 return libEGL->eglChooseConfig(dpy, attrib_list, configs, config_size, num_config);
374 }
375
eglGetConfigAttrib(EGLDisplay dpy,EGLConfig config,EGLint attribute,EGLint * value)376 EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigAttrib(EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint *value)
377 {
378 return libEGL->eglGetConfigAttrib(dpy, config, attribute, value);
379 }
380
eglCreateWindowSurface(EGLDisplay dpy,EGLConfig config,EGLNativeWindowType window,const EGLint * attrib_list)381 EGLAPI EGLSurface EGLAPIENTRY eglCreateWindowSurface(EGLDisplay dpy, EGLConfig config, EGLNativeWindowType window, const EGLint *attrib_list)
382 {
383 return libEGL->eglCreateWindowSurface(dpy, config, window, attrib_list);
384 }
385
eglCreatePbufferSurface(EGLDisplay dpy,EGLConfig config,const EGLint * attrib_list)386 EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferSurface(EGLDisplay dpy, EGLConfig config, const EGLint *attrib_list)
387 {
388 return libEGL->eglCreatePbufferSurface(dpy, config, attrib_list);
389 }
390
eglCreatePixmapSurface(EGLDisplay dpy,EGLConfig config,EGLNativePixmapType pixmap,const EGLint * attrib_list)391 EGLAPI EGLSurface EGLAPIENTRY eglCreatePixmapSurface(EGLDisplay dpy, EGLConfig config, EGLNativePixmapType pixmap, const EGLint *attrib_list)
392 {
393 return libEGL->eglCreatePixmapSurface(dpy, config, pixmap, attrib_list);
394 }
395
eglDestroySurface(EGLDisplay dpy,EGLSurface surface)396 EGLAPI EGLBoolean EGLAPIENTRY eglDestroySurface(EGLDisplay dpy, EGLSurface surface)
397 {
398 return libEGL->eglDestroySurface(dpy, surface);
399 }
400
eglQuerySurface(EGLDisplay dpy,EGLSurface surface,EGLint attribute,EGLint * value)401 EGLAPI EGLBoolean EGLAPIENTRY eglQuerySurface(EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint *value)
402 {
403 return libEGL->eglQuerySurface(dpy, surface, attribute, value);
404 }
405
eglBindAPI(EGLenum api)406 EGLAPI EGLBoolean EGLAPIENTRY eglBindAPI(EGLenum api)
407 {
408 return libEGL->eglBindAPI(api);
409 }
410
eglQueryAPI(void)411 EGLAPI EGLenum EGLAPIENTRY eglQueryAPI(void)
412 {
413 return libEGL->eglQueryAPI();
414 }
415
eglWaitClient(void)416 EGLAPI EGLBoolean EGLAPIENTRY eglWaitClient(void)
417 {
418 return libEGL->eglWaitClient();
419 }
420
eglReleaseThread(void)421 EGLAPI EGLBoolean EGLAPIENTRY eglReleaseThread(void)
422 {
423 return libEGL->eglReleaseThread();
424 }
425
eglCreatePbufferFromClientBuffer(EGLDisplay dpy,EGLenum buftype,EGLClientBuffer buffer,EGLConfig config,const EGLint * attrib_list)426 EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferFromClientBuffer(EGLDisplay dpy, EGLenum buftype, EGLClientBuffer buffer, EGLConfig config, const EGLint *attrib_list)
427 {
428 return libEGL->eglCreatePbufferFromClientBuffer(dpy, buftype, buffer, config, attrib_list);
429 }
430
eglSurfaceAttrib(EGLDisplay dpy,EGLSurface surface,EGLint attribute,EGLint value)431 EGLAPI EGLBoolean EGLAPIENTRY eglSurfaceAttrib(EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint value)
432 {
433 return libEGL->eglSurfaceAttrib(dpy, surface, attribute, value);
434 }
435
eglBindTexImage(EGLDisplay dpy,EGLSurface surface,EGLint buffer)436 EGLAPI EGLBoolean EGLAPIENTRY eglBindTexImage(EGLDisplay dpy, EGLSurface surface, EGLint buffer)
437 {
438 return libEGL->eglBindTexImage(dpy, surface, buffer);
439 }
440
eglReleaseTexImage(EGLDisplay dpy,EGLSurface surface,EGLint buffer)441 EGLAPI EGLBoolean EGLAPIENTRY eglReleaseTexImage(EGLDisplay dpy, EGLSurface surface, EGLint buffer)
442 {
443 return libEGL->eglReleaseTexImage(dpy, surface, buffer);
444 }
445
eglSwapInterval(EGLDisplay dpy,EGLint interval)446 EGLAPI EGLBoolean EGLAPIENTRY eglSwapInterval(EGLDisplay dpy, EGLint interval)
447 {
448 return libEGL->eglSwapInterval(dpy, interval);
449 }
450
eglCreateContext(EGLDisplay dpy,EGLConfig config,EGLContext share_context,const EGLint * attrib_list)451 EGLAPI EGLContext EGLAPIENTRY eglCreateContext(EGLDisplay dpy, EGLConfig config, EGLContext share_context, const EGLint *attrib_list)
452 {
453 return libEGL->eglCreateContext(dpy, config, share_context, attrib_list);
454 }
455
eglDestroyContext(EGLDisplay dpy,EGLContext ctx)456 EGLAPI EGLBoolean EGLAPIENTRY eglDestroyContext(EGLDisplay dpy, EGLContext ctx)
457 {
458 return libEGL->eglDestroyContext(dpy, ctx);
459 }
460
eglMakeCurrent(EGLDisplay dpy,EGLSurface draw,EGLSurface read,EGLContext ctx)461 EGLAPI EGLBoolean EGLAPIENTRY eglMakeCurrent(EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx)
462 {
463 return libEGL->eglMakeCurrent(dpy, draw, read, ctx);
464 }
465
eglGetCurrentContext(void)466 EGLAPI EGLContext EGLAPIENTRY eglGetCurrentContext(void)
467 {
468 return libEGL->eglGetCurrentContext();
469 }
470
eglGetCurrentSurface(EGLint readdraw)471 EGLAPI EGLSurface EGLAPIENTRY eglGetCurrentSurface(EGLint readdraw)
472 {
473 return libEGL->eglGetCurrentSurface(readdraw);
474 }
475
eglGetCurrentDisplay(void)476 EGLAPI EGLDisplay EGLAPIENTRY eglGetCurrentDisplay(void)
477 {
478 return libEGL->eglGetCurrentDisplay();
479 }
480
eglQueryContext(EGLDisplay dpy,EGLContext ctx,EGLint attribute,EGLint * value)481 EGLAPI EGLBoolean EGLAPIENTRY eglQueryContext(EGLDisplay dpy, EGLContext ctx, EGLint attribute, EGLint *value)
482 {
483 return libEGL->eglQueryContext(dpy, ctx, attribute, value);
484 }
485
eglWaitGL(void)486 EGLAPI EGLBoolean EGLAPIENTRY eglWaitGL(void)
487 {
488 return libEGL->eglWaitGL();
489 }
490
eglWaitNative(EGLint engine)491 EGLAPI EGLBoolean EGLAPIENTRY eglWaitNative(EGLint engine)
492 {
493 return libEGL->eglWaitNative(engine);
494 }
495
eglSwapBuffers(EGLDisplay dpy,EGLSurface surface)496 EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffers(EGLDisplay dpy, EGLSurface surface)
497 {
498 return libEGL->eglSwapBuffers(dpy, surface);
499 }
500
eglCopyBuffers(EGLDisplay dpy,EGLSurface surface,EGLNativePixmapType target)501 EGLAPI EGLBoolean EGLAPIENTRY eglCopyBuffers(EGLDisplay dpy, EGLSurface surface, EGLNativePixmapType target)
502 {
503 return libEGL->eglCopyBuffers(dpy, surface, target);
504 }
505
eglCreateImageKHR(EGLDisplay dpy,EGLContext ctx,EGLenum target,EGLClientBuffer buffer,const EGLint * attrib_list)506 EGLAPI EGLImageKHR EGLAPIENTRY eglCreateImageKHR(EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list)
507 {
508 return libEGL->eglCreateImageKHR(dpy, ctx, target, buffer, attrib_list);
509 }
510
eglDestroyImageKHR(EGLDisplay dpy,EGLImageKHR image)511 EGLAPI EGLBoolean EGLAPIENTRY eglDestroyImageKHR(EGLDisplay dpy, EGLImageKHR image)
512 {
513 return libEGL->eglDestroyImageKHR(dpy, image);
514 }
515
eglGetProcAddress(const char * procname)516 EGLAPI __eglMustCastToProperFunctionPointerType EGLAPIENTRY eglGetProcAddress(const char *procname)
517 {
518 return libEGL->eglGetProcAddress(procname);
519 }
520
eglCreateSyncKHR(EGLDisplay dpy,EGLenum type,const EGLint * attrib_list)521 EGLAPI EGLSyncKHR EGLAPIENTRY eglCreateSyncKHR(EGLDisplay dpy, EGLenum type, const EGLint *attrib_list)
522 {
523 return libEGL->eglCreateSyncKHR(dpy, type, attrib_list);
524 }
525
eglDestroySyncKHR(EGLDisplay dpy,EGLSyncKHR sync)526 EGLAPI EGLBoolean EGLAPIENTRY eglDestroySyncKHR(EGLDisplay dpy, EGLSyncKHR sync)
527 {
528 return libEGL->eglDestroySyncKHR(dpy, sync);
529 }
530
eglClientWaitSyncKHR(EGLDisplay dpy,EGLSyncKHR sync,EGLint flags,EGLTimeKHR timeout)531 EGLAPI EGLint EGLAPIENTRY eglClientWaitSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout)
532 {
533 return libEGL->eglClientWaitSyncKHR(dpy, sync, flags, timeout);
534 }
535
eglGetSyncAttribKHR(EGLDisplay dpy,EGLSyncKHR sync,EGLint attribute,EGLint * value)536 EGLAPI EGLBoolean EGLAPIENTRY eglGetSyncAttribKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value)
537 {
538 return libEGL->eglGetSyncAttribKHR(dpy, sync, attribute, value);
539 }
540
glActiveTexture(GLenum texture)541 GL_API void GL_APIENTRY glActiveTexture(GLenum texture)
542 {
543 return es1::ActiveTexture(texture);
544 }
545
glAlphaFunc(GLenum func,GLclampf ref)546 GL_API void GL_APIENTRY glAlphaFunc(GLenum func, GLclampf ref)
547 {
548 return es1::AlphaFunc(func, ref);
549 }
550
glAlphaFuncx(GLenum func,GLclampx ref)551 GL_API void GL_APIENTRY glAlphaFuncx(GLenum func, GLclampx ref)
552 {
553 return es1::AlphaFuncx(func, ref);
554 }
555
glBindBuffer(GLenum target,GLuint buffer)556 GL_API void GL_APIENTRY glBindBuffer(GLenum target, GLuint buffer)
557 {
558 return es1::BindBuffer(target, buffer);
559 }
560
glBindFramebuffer(GLenum target,GLuint framebuffer)561 GL_API void GL_APIENTRY glBindFramebuffer(GLenum target, GLuint framebuffer)
562 {
563 return es1::BindFramebuffer(target, framebuffer);
564 }
565
glBindFramebufferOES(GLenum target,GLuint framebuffer)566 GL_API void GL_APIENTRY glBindFramebufferOES(GLenum target, GLuint framebuffer)
567 {
568 return es1::BindFramebufferOES(target, framebuffer);
569 }
570
glBindRenderbufferOES(GLenum target,GLuint renderbuffer)571 GL_API void GL_APIENTRY glBindRenderbufferOES(GLenum target, GLuint renderbuffer)
572 {
573 return es1::BindRenderbufferOES(target, renderbuffer);
574 }
575
glBindTexture(GLenum target,GLuint texture)576 GL_API void GL_APIENTRY glBindTexture(GLenum target, GLuint texture)
577 {
578 return es1::BindTexture(target, texture);
579 }
580
glBlendEquationOES(GLenum mode)581 GL_API void GL_APIENTRY glBlendEquationOES(GLenum mode)
582 {
583 return es1::BlendEquationSeparateOES(mode, mode);
584 }
585
glBlendEquationSeparateOES(GLenum modeRGB,GLenum modeAlpha)586 GL_API void GL_APIENTRY glBlendEquationSeparateOES(GLenum modeRGB, GLenum modeAlpha)
587 {
588 return es1::BlendEquationSeparateOES(modeRGB, modeAlpha);
589 }
590
glBlendFunc(GLenum sfactor,GLenum dfactor)591 GL_API void GL_APIENTRY glBlendFunc(GLenum sfactor, GLenum dfactor)
592 {
593 return es1::BlendFuncSeparateOES(sfactor, dfactor, sfactor, dfactor);
594 }
595
glBlendFuncSeparateOES(GLenum srcRGB,GLenum dstRGB,GLenum srcAlpha,GLenum dstAlpha)596 GL_API void GL_APIENTRY glBlendFuncSeparateOES(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
597 {
598 return es1::BlendFuncSeparateOES(srcRGB, dstRGB, srcAlpha, dstAlpha);
599 }
600
glBufferData(GLenum target,GLsizeiptr size,const GLvoid * data,GLenum usage)601 GL_API void GL_APIENTRY glBufferData(GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage)
602 {
603 return es1::BufferData(target, size, data, usage);
604 }
605
glBufferSubData(GLenum target,GLintptr offset,GLsizeiptr size,const GLvoid * data)606 GL_API void GL_APIENTRY glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data)
607 {
608 return es1::BufferSubData(target, offset, size, data);
609 }
610
glCheckFramebufferStatusOES(GLenum target)611 GL_API GLenum GL_APIENTRY glCheckFramebufferStatusOES(GLenum target)
612 {
613 return es1::CheckFramebufferStatusOES(target);
614 }
615
glClear(GLbitfield mask)616 GL_API void GL_APIENTRY glClear(GLbitfield mask)
617 {
618 return es1::Clear(mask);
619 }
620
glClearColor(GLclampf red,GLclampf green,GLclampf blue,GLclampf alpha)621 GL_API void GL_APIENTRY glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
622 {
623 return es1::ClearColor(red, green, blue, alpha);
624 }
625
glClearColorx(GLclampx red,GLclampx green,GLclampx blue,GLclampx alpha)626 GL_API void GL_APIENTRY glClearColorx(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)
627 {
628 return es1::ClearColorx(red, green, blue, alpha);
629 }
630
glClearDepthf(GLclampf depth)631 GL_API void GL_APIENTRY glClearDepthf(GLclampf depth)
632 {
633 return es1::ClearDepthf(depth);
634 }
635
glClearDepthx(GLclampx depth)636 GL_API void GL_APIENTRY glClearDepthx(GLclampx depth)
637 {
638 return es1::ClearDepthx(depth);
639 }
640
glClearStencil(GLint s)641 GL_API void GL_APIENTRY glClearStencil(GLint s)
642 {
643 return es1::ClearStencil(s);
644 }
645
glClientActiveTexture(GLenum texture)646 GL_API void GL_APIENTRY glClientActiveTexture(GLenum texture)
647 {
648 return es1::ClientActiveTexture(texture);
649 }
650
glClipPlanef(GLenum plane,const GLfloat * equation)651 GL_API void GL_APIENTRY glClipPlanef(GLenum plane, const GLfloat *equation)
652 {
653 return es1::ClipPlanef(plane, equation);
654 }
655
glClipPlanex(GLenum plane,const GLfixed * equation)656 GL_API void GL_APIENTRY glClipPlanex(GLenum plane, const GLfixed *equation)
657 {
658 return es1::ClipPlanex(plane, equation);
659 }
660
glColor4f(GLfloat red,GLfloat green,GLfloat blue,GLfloat alpha)661 GL_API void GL_APIENTRY glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
662 {
663 return es1::Color4f(red, green, blue, alpha);
664 }
665
glColor4ub(GLubyte red,GLubyte green,GLubyte blue,GLubyte alpha)666 GL_API void GL_APIENTRY glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
667 {
668 return es1::Color4ub(red, green, blue, alpha);
669 }
670
glColor4x(GLfixed red,GLfixed green,GLfixed blue,GLfixed alpha)671 GL_API void GL_APIENTRY glColor4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
672 {
673 return es1::Color4x(red, green, blue, alpha);
674 }
675
glColorMask(GLboolean red,GLboolean green,GLboolean blue,GLboolean alpha)676 GL_API void GL_APIENTRY glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
677 {
678 return es1::ColorMask(red, green, blue, alpha);
679 }
680
glColorPointer(GLint size,GLenum type,GLsizei stride,const GLvoid * pointer)681 GL_API void GL_APIENTRY glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
682 {
683 return es1::ColorPointer(size, type, stride, pointer);
684 }
685
glCompressedTexImage2D(GLenum target,GLint level,GLenum internalformat,GLsizei width,GLsizei height,GLint border,GLsizei imageSize,const GLvoid * data)686 GL_API void GL_APIENTRY glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height,
687 GLint border, GLsizei imageSize, const GLvoid* data)
688 {
689 return es1::CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
690 }
691
glCompressedTexSubImage2D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLsizei width,GLsizei height,GLenum format,GLsizei imageSize,const GLvoid * data)692 GL_API void GL_APIENTRY glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height,
693 GLenum format, GLsizei imageSize, const GLvoid* data)
694 {
695 return es1::CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
696 }
697
glCopyTexImage2D(GLenum target,GLint level,GLenum internalformat,GLint x,GLint y,GLsizei width,GLsizei height,GLint border)698 GL_API void GL_APIENTRY glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
699 {
700 return es1::CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
701 }
702
glCopyTexSubImage2D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLint x,GLint y,GLsizei width,GLsizei height)703 GL_API void GL_APIENTRY glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
704 {
705 return es1::CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
706 }
707
glCullFace(GLenum mode)708 GL_API void GL_APIENTRY glCullFace(GLenum mode)
709 {
710 return es1::CullFace(mode);
711 }
712
glDeleteBuffers(GLsizei n,const GLuint * buffers)713 GL_API void GL_APIENTRY glDeleteBuffers(GLsizei n, const GLuint* buffers)
714 {
715 return es1::DeleteBuffers(n, buffers);
716 }
717
glDeleteFramebuffersOES(GLsizei n,const GLuint * framebuffers)718 GL_API void GL_APIENTRY glDeleteFramebuffersOES(GLsizei n, const GLuint* framebuffers)
719 {
720 return es1::DeleteFramebuffersOES(n, framebuffers);
721 }
722
glDeleteRenderbuffersOES(GLsizei n,const GLuint * renderbuffers)723 GL_API void GL_APIENTRY glDeleteRenderbuffersOES(GLsizei n, const GLuint* renderbuffers)
724 {
725 return es1::DeleteRenderbuffersOES(n, renderbuffers);
726 }
727
glDeleteTextures(GLsizei n,const GLuint * textures)728 GL_API void GL_APIENTRY glDeleteTextures(GLsizei n, const GLuint* textures)
729 {
730 return es1::DeleteTextures(n, textures);
731 }
732
glDepthFunc(GLenum func)733 GL_API void GL_APIENTRY glDepthFunc(GLenum func)
734 {
735 return es1::DepthFunc(func);
736 }
737
glDepthMask(GLboolean flag)738 GL_API void GL_APIENTRY glDepthMask(GLboolean flag)
739 {
740 return es1::DepthMask(flag);
741 }
742
glDepthRangex(GLclampx zNear,GLclampx zFar)743 GL_API void GL_APIENTRY glDepthRangex(GLclampx zNear, GLclampx zFar)
744 {
745 return es1::DepthRangex(zNear, zFar);
746 }
747
glDepthRangef(GLclampf zNear,GLclampf zFar)748 GL_API void GL_APIENTRY glDepthRangef(GLclampf zNear, GLclampf zFar)
749 {
750 return es1::DepthRangef(zNear, zFar);
751 }
752
glDisable(GLenum cap)753 GL_API void GL_APIENTRY glDisable(GLenum cap)
754 {
755 return es1::Disable(cap);
756 }
757
glDisableClientState(GLenum array)758 GL_API void GL_APIENTRY glDisableClientState(GLenum array)
759 {
760 return es1::DisableClientState(array);
761 }
762
glDrawArrays(GLenum mode,GLint first,GLsizei count)763 GL_API void GL_APIENTRY glDrawArrays(GLenum mode, GLint first, GLsizei count)
764 {
765 return es1::DrawArrays(mode, first, count);
766 }
767
glDrawElements(GLenum mode,GLsizei count,GLenum type,const GLvoid * indices)768 GL_API void GL_APIENTRY glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid* indices)
769 {
770 return es1::DrawElements(mode, count, type, indices);
771 }
772
glEnable(GLenum cap)773 GL_API void GL_APIENTRY glEnable(GLenum cap)
774 {
775 return es1::Enable(cap);
776 }
777
glEnableClientState(GLenum array)778 GL_API void GL_APIENTRY glEnableClientState(GLenum array)
779 {
780 return es1::EnableClientState(array);
781 }
782
glFinish(void)783 GL_API void GL_APIENTRY glFinish(void)
784 {
785 return es1::Finish();
786 }
787
glFlush(void)788 GL_API void GL_APIENTRY glFlush(void)
789 {
790 return es1::Flush();
791 }
792
glFramebufferRenderbufferOES(GLenum target,GLenum attachment,GLenum renderbuffertarget,GLuint renderbuffer)793 GL_API void GL_APIENTRY glFramebufferRenderbufferOES(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
794 {
795 return es1::FramebufferRenderbufferOES(target, attachment, renderbuffertarget, renderbuffer);
796 }
797
glFramebufferTexture2DOES(GLenum target,GLenum attachment,GLenum textarget,GLuint texture,GLint level)798 GL_API void GL_APIENTRY glFramebufferTexture2DOES(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
799 {
800 return es1::FramebufferTexture2DOES(target, attachment, textarget, texture, level);
801 }
802
glFogf(GLenum pname,GLfloat param)803 GL_API void GL_APIENTRY glFogf(GLenum pname, GLfloat param)
804 {
805 return es1::Fogf(pname, param);
806 }
807
glFogfv(GLenum pname,const GLfloat * params)808 GL_API void GL_APIENTRY glFogfv(GLenum pname, const GLfloat *params)
809 {
810 return es1::Fogfv(pname, params);
811 }
812
glFogx(GLenum pname,GLfixed param)813 GL_API void GL_APIENTRY glFogx(GLenum pname, GLfixed param)
814 {
815 return es1::Fogx(pname, param);
816 }
817
glFogxv(GLenum pname,const GLfixed * params)818 GL_API void GL_APIENTRY glFogxv(GLenum pname, const GLfixed *params)
819 {
820 return es1::Fogxv(pname, params);
821 }
822
glFrontFace(GLenum mode)823 GL_API void GL_APIENTRY glFrontFace(GLenum mode)
824 {
825 return es1::FrontFace(mode);
826 }
827
glFrustumf(GLfloat left,GLfloat right,GLfloat bottom,GLfloat top,GLfloat zNear,GLfloat zFar)828 GL_API void GL_APIENTRY glFrustumf(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
829 {
830 return es1::Frustumf(left, right, bottom, top, zNear, zFar);
831 }
832
glFrustumx(GLfixed left,GLfixed right,GLfixed bottom,GLfixed top,GLfixed zNear,GLfixed zFar)833 GL_API void GL_APIENTRY glFrustumx(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
834 {
835 return es1::Frustumx(left, right, bottom, top, zNear, zFar);
836 }
837
glGenerateMipmapOES(GLenum target)838 GL_API void GL_APIENTRY glGenerateMipmapOES(GLenum target)
839 {
840 return es1::GenerateMipmapOES(target);
841 }
842
glGenBuffers(GLsizei n,GLuint * buffers)843 GL_API void GL_APIENTRY glGenBuffers(GLsizei n, GLuint* buffers)
844 {
845 return es1::GenBuffers(n, buffers);
846 }
847
glGenFramebuffersOES(GLsizei n,GLuint * framebuffers)848 GL_API void GL_APIENTRY glGenFramebuffersOES(GLsizei n, GLuint* framebuffers)
849 {
850 return es1::GenFramebuffersOES(n, framebuffers);
851 }
852
glGenRenderbuffersOES(GLsizei n,GLuint * renderbuffers)853 GL_API void GL_APIENTRY glGenRenderbuffersOES(GLsizei n, GLuint* renderbuffers)
854 {
855 return es1::GenRenderbuffersOES(n, renderbuffers);
856 }
857
glGenTextures(GLsizei n,GLuint * textures)858 GL_API void GL_APIENTRY glGenTextures(GLsizei n, GLuint* textures)
859 {
860 return es1::GenTextures(n, textures);
861 }
862
glGetRenderbufferParameterivOES(GLenum target,GLenum pname,GLint * params)863 GL_API void GL_APIENTRY glGetRenderbufferParameterivOES(GLenum target, GLenum pname, GLint* params)
864 {
865 return es1::GetRenderbufferParameterivOES(target, pname, params);
866 }
867
glGetBooleanv(GLenum pname,GLboolean * params)868 GL_API void GL_APIENTRY glGetBooleanv(GLenum pname, GLboolean* params)
869 {
870 return es1::GetBooleanv(pname, params);
871 }
872
glGetBufferParameteriv(GLenum target,GLenum pname,GLint * params)873 GL_API void GL_APIENTRY glGetBufferParameteriv(GLenum target, GLenum pname, GLint* params)
874 {
875 return es1::GetBufferParameteriv(target, pname, params);
876 }
877
glGetClipPlanef(GLenum pname,GLfloat eqn[4])878 GL_API void GL_APIENTRY glGetClipPlanef(GLenum pname, GLfloat eqn[4])
879 {
880 return es1::GetClipPlanef(pname, eqn);
881 }
882
glGetClipPlanex(GLenum pname,GLfixed eqn[4])883 GL_API void GL_APIENTRY glGetClipPlanex(GLenum pname, GLfixed eqn[4])
884 {
885 return es1::GetClipPlanex(pname, eqn);
886 }
887
glGetError(void)888 GL_API GLenum GL_APIENTRY glGetError(void)
889 {
890 return es1::GetError();
891 }
892
glGetFixedv(GLenum pname,GLfixed * params)893 GL_API void GL_APIENTRY glGetFixedv(GLenum pname, GLfixed *params)
894 {
895 return es1::GetFixedv(pname, params);
896 }
897
glGetFloatv(GLenum pname,GLfloat * params)898 GL_API void GL_APIENTRY glGetFloatv(GLenum pname, GLfloat* params)
899 {
900 return es1::GetFloatv(pname, params);
901 }
902
glGetFramebufferAttachmentParameterivOES(GLenum target,GLenum attachment,GLenum pname,GLint * params)903 GL_API void GL_APIENTRY glGetFramebufferAttachmentParameterivOES(GLenum target, GLenum attachment, GLenum pname, GLint* params)
904 {
905 return es1::GetFramebufferAttachmentParameterivOES(target, attachment, pname, params);
906 }
907
glGetIntegerv(GLenum pname,GLint * params)908 GL_API void GL_APIENTRY glGetIntegerv(GLenum pname, GLint* params)
909 {
910 return es1::GetIntegerv(pname, params);
911 }
912
glGetLightfv(GLenum light,GLenum pname,GLfloat * params)913 GL_API void GL_APIENTRY glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
914 {
915 return es1::GetLightfv(light, pname, params);
916 }
917
glGetLightxv(GLenum light,GLenum pname,GLfixed * params)918 GL_API void GL_APIENTRY glGetLightxv(GLenum light, GLenum pname, GLfixed *params)
919 {
920 return es1::GetLightxv(light, pname, params);
921 }
922
glGetMaterialfv(GLenum face,GLenum pname,GLfloat * params)923 GL_API void GL_APIENTRY glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
924 {
925 return es1::GetMaterialfv(face, pname, params);
926 }
927
glGetMaterialxv(GLenum face,GLenum pname,GLfixed * params)928 GL_API void GL_APIENTRY glGetMaterialxv(GLenum face, GLenum pname, GLfixed *params)
929 {
930 return es1::GetMaterialxv(face, pname, params);
931 }
932
glGetPointerv(GLenum pname,GLvoid ** params)933 GL_API void GL_APIENTRY glGetPointerv(GLenum pname, GLvoid **params)
934 {
935 return es1::GetPointerv(pname, params);
936 }
937
glGetString(GLenum name)938 GL_API const GLubyte* GL_APIENTRY glGetString(GLenum name)
939 {
940 return es1::GetString(name);
941 }
942
glGetTexParameterfv(GLenum target,GLenum pname,GLfloat * params)943 GL_API void GL_APIENTRY glGetTexParameterfv(GLenum target, GLenum pname, GLfloat* params)
944 {
945 return es1::GetTexParameterfv(target, pname, params);
946 }
947
glGetTexParameteriv(GLenum target,GLenum pname,GLint * params)948 GL_API void GL_APIENTRY glGetTexParameteriv(GLenum target, GLenum pname, GLint* params)
949 {
950 return es1::GetTexParameteriv(target, pname, params);
951 }
952
glGetTexEnvfv(GLenum env,GLenum pname,GLfloat * params)953 GL_API void GL_APIENTRY glGetTexEnvfv(GLenum env, GLenum pname, GLfloat *params)
954 {
955 return es1::GetTexEnvfv(env, pname, params);
956 }
957
glGetTexEnviv(GLenum env,GLenum pname,GLint * params)958 GL_API void GL_APIENTRY glGetTexEnviv(GLenum env, GLenum pname, GLint *params)
959 {
960 return es1::GetTexEnviv(env, pname, params);
961 }
962
glGetTexEnvxv(GLenum env,GLenum pname,GLfixed * params)963 GL_API void GL_APIENTRY glGetTexEnvxv(GLenum env, GLenum pname, GLfixed *params)
964 {
965 return es1::GetTexEnvxv(env, pname, params);
966 }
967
glGetTexParameterxv(GLenum target,GLenum pname,GLfixed * params)968 GL_API void GL_APIENTRY glGetTexParameterxv(GLenum target, GLenum pname, GLfixed *params)
969 {
970 return es1::GetTexParameterxv(target, pname, params);
971 }
972
glHint(GLenum target,GLenum mode)973 GL_API void GL_APIENTRY glHint(GLenum target, GLenum mode)
974 {
975 return es1::Hint(target, mode);
976 }
977
glIsBuffer(GLuint buffer)978 GL_API GLboolean GL_APIENTRY glIsBuffer(GLuint buffer)
979 {
980 return es1::IsBuffer(buffer);
981 }
982
glIsEnabled(GLenum cap)983 GL_API GLboolean GL_APIENTRY glIsEnabled(GLenum cap)
984 {
985 return es1::IsEnabled(cap);
986 }
987
glIsFramebufferOES(GLuint framebuffer)988 GL_API GLboolean GL_APIENTRY glIsFramebufferOES(GLuint framebuffer)
989 {
990 return es1::IsFramebufferOES(framebuffer);
991 }
992
glIsTexture(GLuint texture)993 GL_API GLboolean GL_APIENTRY glIsTexture(GLuint texture)
994 {
995 return es1::IsTexture(texture);
996 }
997
glIsRenderbufferOES(GLuint renderbuffer)998 GL_API GLboolean GL_APIENTRY glIsRenderbufferOES(GLuint renderbuffer)
999 {
1000 return es1::IsRenderbufferOES(renderbuffer);
1001 }
1002
glLightModelf(GLenum pname,GLfloat param)1003 GL_API void GL_APIENTRY glLightModelf(GLenum pname, GLfloat param)
1004 {
1005 return es1::LightModelf(pname, param);
1006 }
1007
glLightModelfv(GLenum pname,const GLfloat * params)1008 GL_API void GL_APIENTRY glLightModelfv(GLenum pname, const GLfloat *params)
1009 {
1010 return es1::LightModelfv(pname, params);
1011 }
1012
glLightModelx(GLenum pname,GLfixed param)1013 GL_API void GL_APIENTRY glLightModelx(GLenum pname, GLfixed param)
1014 {
1015 return es1::LightModelx(pname, param);
1016 }
1017
glLightModelxv(GLenum pname,const GLfixed * params)1018 GL_API void GL_APIENTRY glLightModelxv(GLenum pname, const GLfixed *params)
1019 {
1020 return es1::LightModelxv(pname, params);
1021 }
1022
glLightf(GLenum light,GLenum pname,GLfloat param)1023 GL_API void GL_APIENTRY glLightf(GLenum light, GLenum pname, GLfloat param)
1024 {
1025 return es1::Lightf(light, pname, param);
1026 }
1027
glLightfv(GLenum light,GLenum pname,const GLfloat * params)1028 GL_API void GL_APIENTRY glLightfv(GLenum light, GLenum pname, const GLfloat *params)
1029 {
1030 return es1::Lightfv(light, pname, params);
1031 }
1032
glLightx(GLenum light,GLenum pname,GLfixed param)1033 GL_API void GL_APIENTRY glLightx(GLenum light, GLenum pname, GLfixed param)
1034 {
1035 return es1::Lightx(light, pname, param);
1036 }
1037
glLightxv(GLenum light,GLenum pname,const GLfixed * params)1038 GL_API void GL_APIENTRY glLightxv(GLenum light, GLenum pname, const GLfixed *params)
1039 {
1040 return es1::Lightxv(light, pname, params);
1041 }
1042
glLineWidth(GLfloat width)1043 GL_API void GL_APIENTRY glLineWidth(GLfloat width)
1044 {
1045 return es1::LineWidth(width);
1046 }
1047
glLineWidthx(GLfixed width)1048 GL_API void GL_APIENTRY glLineWidthx(GLfixed width)
1049 {
1050 return es1::LineWidthx(width);
1051 }
1052
glLoadIdentity(void)1053 GL_API void GL_APIENTRY glLoadIdentity(void)
1054 {
1055 return es1::LoadIdentity();
1056 }
1057
glLoadMatrixf(const GLfloat * m)1058 GL_API void GL_APIENTRY glLoadMatrixf(const GLfloat *m)
1059 {
1060 return es1::LoadMatrixf(m);
1061 }
1062
glLoadMatrixx(const GLfixed * m)1063 GL_API void GL_APIENTRY glLoadMatrixx(const GLfixed *m)
1064 {
1065 return es1::LoadMatrixx(m);
1066 }
1067
glLogicOp(GLenum opcode)1068 GL_API void GL_APIENTRY glLogicOp(GLenum opcode)
1069 {
1070 return es1::LogicOp(opcode);
1071 }
1072
glMaterialf(GLenum face,GLenum pname,GLfloat param)1073 GL_API void GL_APIENTRY glMaterialf(GLenum face, GLenum pname, GLfloat param)
1074 {
1075 return es1::Materialf(face, pname, param);
1076 }
1077
glMaterialfv(GLenum face,GLenum pname,const GLfloat * params)1078 GL_API void GL_APIENTRY glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
1079 {
1080 return es1::Materialfv(face, pname, params);
1081 }
1082
glMaterialx(GLenum face,GLenum pname,GLfixed param)1083 GL_API void GL_APIENTRY glMaterialx(GLenum face, GLenum pname, GLfixed param)
1084 {
1085 return es1::Materialx(face, pname, param);
1086 }
1087
glMaterialxv(GLenum face,GLenum pname,const GLfixed * params)1088 GL_API void GL_APIENTRY glMaterialxv(GLenum face, GLenum pname, const GLfixed *params)
1089 {
1090 return es1::Materialxv(face, pname, params);
1091 }
1092
glMatrixMode(GLenum mode)1093 GL_API void GL_APIENTRY glMatrixMode(GLenum mode)
1094 {
1095 return es1::MatrixMode(mode);
1096 }
1097
glMultMatrixf(const GLfloat * m)1098 GL_API void GL_APIENTRY glMultMatrixf(const GLfloat *m)
1099 {
1100 return es1::MultMatrixf(m);
1101 }
1102
glMultMatrixx(const GLfixed * m)1103 GL_API void GL_APIENTRY glMultMatrixx(const GLfixed *m)
1104 {
1105 return es1::MultMatrixx(m);
1106 }
1107
glMultiTexCoord4f(GLenum target,GLfloat s,GLfloat t,GLfloat r,GLfloat q)1108 GL_API void GL_APIENTRY glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
1109 {
1110 return es1::MultiTexCoord4f(target, s, t, r, q);
1111 }
1112
glMultiTexCoord4x(GLenum target,GLfixed s,GLfixed t,GLfixed r,GLfixed q)1113 GL_API void GL_APIENTRY glMultiTexCoord4x(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
1114 {
1115 return es1::MultiTexCoord4x(target, s, t, r, q);
1116 }
1117
glNormal3f(GLfloat nx,GLfloat ny,GLfloat nz)1118 GL_API void GL_APIENTRY glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
1119 {
1120 return es1::Normal3f(nx, ny, nz);
1121 }
1122
glNormal3x(GLfixed nx,GLfixed ny,GLfixed nz)1123 GL_API void GL_APIENTRY glNormal3x(GLfixed nx, GLfixed ny, GLfixed nz)
1124 {
1125 return es1::Normal3x(nx, ny, nz);
1126 }
1127
glNormalPointer(GLenum type,GLsizei stride,const GLvoid * pointer)1128 GL_API void GL_APIENTRY glNormalPointer(GLenum type, GLsizei stride, const GLvoid *pointer)
1129 {
1130 return es1::NormalPointer(type, stride, pointer);
1131 }
1132
glOrthof(GLfloat left,GLfloat right,GLfloat bottom,GLfloat top,GLfloat zNear,GLfloat zFar)1133 GL_API void GL_APIENTRY glOrthof(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
1134 {
1135 return es1::Orthof(left, right, bottom, top, zNear, zFar);
1136 }
1137
glOrthox(GLfixed left,GLfixed right,GLfixed bottom,GLfixed top,GLfixed zNear,GLfixed zFar)1138 GL_API void GL_APIENTRY glOrthox(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
1139 {
1140 return es1::Orthox(left, right, bottom, top, zNear, zFar);
1141 }
1142
glPixelStorei(GLenum pname,GLint param)1143 GL_API void GL_APIENTRY glPixelStorei(GLenum pname, GLint param)
1144 {
1145 return es1::PixelStorei(pname, param);
1146 }
1147
glPointParameterf(GLenum pname,GLfloat param)1148 GL_API void GL_APIENTRY glPointParameterf(GLenum pname, GLfloat param)
1149 {
1150 return es1::PointParameterf(pname, param);
1151 }
1152
glPointParameterfv(GLenum pname,const GLfloat * params)1153 GL_API void GL_APIENTRY glPointParameterfv(GLenum pname, const GLfloat *params)
1154 {
1155 return es1::PointParameterfv(pname, params);
1156 }
1157
glPointParameterx(GLenum pname,GLfixed param)1158 GL_API void GL_APIENTRY glPointParameterx(GLenum pname, GLfixed param)
1159 {
1160 return es1::PointParameterx(pname, param);
1161 }
1162
glPointParameterxv(GLenum pname,const GLfixed * params)1163 GL_API void GL_APIENTRY glPointParameterxv(GLenum pname, const GLfixed *params)
1164 {
1165 return es1::PointParameterxv(pname, params);
1166 }
1167
glPointSize(GLfloat size)1168 GL_API void GL_APIENTRY glPointSize(GLfloat size)
1169 {
1170 return es1::PointSize(size);
1171 }
1172
glPointSizePointerOES(GLenum type,GLsizei stride,const GLvoid * pointer)1173 GL_API void GL_APIENTRY glPointSizePointerOES(GLenum type, GLsizei stride, const GLvoid *pointer)
1174 {
1175 return es1::PointSizePointerOES(type, stride, pointer);
1176 }
1177
glPointSizex(GLfixed size)1178 GL_API void GL_APIENTRY glPointSizex(GLfixed size)
1179 {
1180 return es1::PointSizex(size);
1181 }
1182
glPolygonOffset(GLfloat factor,GLfloat units)1183 GL_API void GL_APIENTRY glPolygonOffset(GLfloat factor, GLfloat units)
1184 {
1185 return es1::PolygonOffset(factor, units);
1186 }
1187
glPolygonOffsetx(GLfixed factor,GLfixed units)1188 GL_API void GL_APIENTRY glPolygonOffsetx(GLfixed factor, GLfixed units)
1189 {
1190 return es1::PolygonOffsetx(factor, units);
1191 }
1192
glPopMatrix(void)1193 GL_API void GL_APIENTRY glPopMatrix(void)
1194 {
1195 return es1::PopMatrix();
1196 }
1197
glPushMatrix(void)1198 GL_API void GL_APIENTRY glPushMatrix(void)
1199 {
1200 return es1::PushMatrix();
1201 }
1202
glReadPixels(GLint x,GLint y,GLsizei width,GLsizei height,GLenum format,GLenum type,GLvoid * pixels)1203 GL_API void GL_APIENTRY glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels)
1204 {
1205 return es1::ReadPixels(x, y, width, height, format, type, pixels);
1206 }
1207
glRenderbufferStorageOES(GLenum target,GLenum internalformat,GLsizei width,GLsizei height)1208 GL_API void GL_APIENTRY glRenderbufferStorageOES(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
1209 {
1210 return es1::RenderbufferStorageOES(target, internalformat, width, height);
1211 }
1212
glRotatef(GLfloat angle,GLfloat x,GLfloat y,GLfloat z)1213 GL_API void GL_APIENTRY glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
1214 {
1215 return es1::Rotatef(angle, x, y, z);
1216 }
1217
glRotatex(GLfixed angle,GLfixed x,GLfixed y,GLfixed z)1218 GL_API void GL_APIENTRY glRotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
1219 {
1220 return es1::Rotatex(angle, x, y, z);
1221 }
1222
glSampleCoverage(GLclampf value,GLboolean invert)1223 GL_API void GL_APIENTRY glSampleCoverage(GLclampf value, GLboolean invert)
1224 {
1225 return es1::SampleCoverage(value, invert);
1226 }
1227
glSampleCoveragex(GLclampx value,GLboolean invert)1228 GL_API void GL_APIENTRY glSampleCoveragex(GLclampx value, GLboolean invert)
1229 {
1230 return es1::SampleCoveragex(value, invert);
1231 }
1232
glScalef(GLfloat x,GLfloat y,GLfloat z)1233 GL_API void GL_APIENTRY glScalef(GLfloat x, GLfloat y, GLfloat z)
1234 {
1235 return es1::Scalef(x, y, z);
1236 }
1237
glScalex(GLfixed x,GLfixed y,GLfixed z)1238 GL_API void GL_APIENTRY glScalex(GLfixed x, GLfixed y, GLfixed z)
1239 {
1240 return es1::Scalex(x, y, z);
1241 }
1242
glScissor(GLint x,GLint y,GLsizei width,GLsizei height)1243 GL_API void GL_APIENTRY glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
1244 {
1245 return es1::Scissor(x, y, width, height);
1246 }
1247
glShadeModel(GLenum mode)1248 GL_API void GL_APIENTRY glShadeModel(GLenum mode)
1249 {
1250 return es1::ShadeModel(mode);
1251 }
1252
glStencilFunc(GLenum func,GLint ref,GLuint mask)1253 GL_API void GL_APIENTRY glStencilFunc(GLenum func, GLint ref, GLuint mask)
1254 {
1255 return es1::StencilFunc(func, ref, mask);
1256 }
1257
glStencilMask(GLuint mask)1258 GL_API void GL_APIENTRY glStencilMask(GLuint mask)
1259 {
1260 return es1::StencilMask(mask);
1261 }
1262
glStencilOp(GLenum fail,GLenum zfail,GLenum zpass)1263 GL_API void GL_APIENTRY glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
1264 {
1265 return es1::StencilOp(fail, zfail, zpass);
1266 }
1267
glTexCoordPointer(GLint size,GLenum type,GLsizei stride,const GLvoid * pointer)1268 GL_API void GL_APIENTRY glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
1269 {
1270 return es1::TexCoordPointer(size, type, stride, pointer);
1271 }
1272
glTexEnvf(GLenum target,GLenum pname,GLfloat param)1273 GL_API void GL_APIENTRY glTexEnvf(GLenum target, GLenum pname, GLfloat param)
1274 {
1275 return es1::TexEnvf(target, pname, param);
1276 }
1277
glTexEnvfv(GLenum target,GLenum pname,const GLfloat * params)1278 GL_API void GL_APIENTRY glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
1279 {
1280 return es1::TexEnvfv(target, pname, params);
1281 }
1282
glTexEnvi(GLenum target,GLenum pname,GLint param)1283 GL_API void GL_APIENTRY glTexEnvi(GLenum target, GLenum pname, GLint param)
1284 {
1285 return es1::TexEnvi(target, pname, param);
1286 }
1287
glTexEnvx(GLenum target,GLenum pname,GLfixed param)1288 GL_API void GL_APIENTRY glTexEnvx(GLenum target, GLenum pname, GLfixed param)
1289 {
1290 return es1::TexEnvx(target, pname, param);
1291 }
1292
glTexEnviv(GLenum target,GLenum pname,const GLint * params)1293 GL_API void GL_APIENTRY glTexEnviv(GLenum target, GLenum pname, const GLint *params)
1294 {
1295 return es1::TexEnviv(target, pname, params);
1296 }
1297
glTexEnvxv(GLenum target,GLenum pname,const GLfixed * params)1298 GL_API void GL_APIENTRY glTexEnvxv(GLenum target, GLenum pname, const GLfixed *params)
1299 {
1300 return es1::TexEnvxv(target, pname, params);
1301 }
1302
glTexImage2D(GLenum target,GLint level,GLint internalformat,GLsizei width,GLsizei height,GLint border,GLenum format,GLenum type,const GLvoid * pixels)1303 GL_API void GL_APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height,
1304 GLint border, GLenum format, GLenum type, const GLvoid* pixels)
1305 {
1306 return es1::TexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
1307 }
1308
glTexParameterf(GLenum target,GLenum pname,GLfloat param)1309 GL_API void GL_APIENTRY glTexParameterf(GLenum target, GLenum pname, GLfloat param)
1310 {
1311 return es1::TexParameterf(target, pname, param);
1312 }
1313
glTexParameterfv(GLenum target,GLenum pname,const GLfloat * params)1314 GL_API void GL_APIENTRY glTexParameterfv(GLenum target, GLenum pname, const GLfloat* params)
1315 {
1316 return es1::TexParameterfv(target, pname, params);
1317 }
1318
glTexParameteri(GLenum target,GLenum pname,GLint param)1319 GL_API void GL_APIENTRY glTexParameteri(GLenum target, GLenum pname, GLint param)
1320 {
1321 return es1::TexParameteri(target, pname, param);
1322 }
1323
glTexParameteriv(GLenum target,GLenum pname,const GLint * params)1324 GL_API void GL_APIENTRY glTexParameteriv(GLenum target, GLenum pname, const GLint* params)
1325 {
1326 return es1::TexParameteriv(target, pname, params);
1327 }
1328
glTexParameterx(GLenum target,GLenum pname,GLfixed param)1329 GL_API void GL_APIENTRY glTexParameterx(GLenum target, GLenum pname, GLfixed param)
1330 {
1331 return es1::TexParameterx(target, pname, param);
1332 }
1333
glTexParameterxv(GLenum target,GLenum pname,const GLfixed * params)1334 GL_API void GL_APIENTRY glTexParameterxv(GLenum target, GLenum pname, const GLfixed *params)
1335 {
1336 return es1::TexParameterxv(target, pname, params);
1337 }
1338
glTexSubImage2D(GLenum target,GLint level,GLint xoffset,GLint yoffset,GLsizei width,GLsizei height,GLenum format,GLenum type,const GLvoid * pixels)1339 GL_API void GL_APIENTRY glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height,
1340 GLenum format, GLenum type, const GLvoid* pixels)
1341 {
1342 return es1::TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
1343 }
1344
glTranslatef(GLfloat x,GLfloat y,GLfloat z)1345 GL_API void GL_APIENTRY glTranslatef(GLfloat x, GLfloat y, GLfloat z)
1346 {
1347 return es1::Translatef(x, y, z);
1348 }
1349
glTranslatex(GLfixed x,GLfixed y,GLfixed z)1350 GL_API void GL_APIENTRY glTranslatex(GLfixed x, GLfixed y, GLfixed z)
1351 {
1352 return es1::Translatex(x, y, z);
1353 }
1354
glVertexPointer(GLint size,GLenum type,GLsizei stride,const GLvoid * pointer)1355 GL_API void GL_APIENTRY glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
1356 {
1357 return es1::VertexPointer(size, type, stride, pointer);
1358 }
1359
glViewport(GLint x,GLint y,GLsizei width,GLsizei height)1360 GL_API void GL_APIENTRY glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
1361 {
1362 return es1::Viewport(x, y, width, height);
1363 }
1364
glEGLImageTargetTexture2DOES(GLenum target,GLeglImageOES image)1365 GL_API void GL_APIENTRY glEGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image)
1366 {
1367 return es1::EGLImageTargetTexture2DOES(target, image);
1368 }
1369
glEGLImageTargetRenderbufferStorageOES(GLenum target,GLeglImageOES image)1370 GL_API void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES(GLenum target, GLeglImageOES image)
1371 {
1372 return es1::EGLImageTargetRenderbufferStorageOES(target, image);
1373 }
1374
glDrawTexsOES(GLshort x,GLshort y,GLshort z,GLshort width,GLshort height)1375 GL_API void GL_APIENTRY glDrawTexsOES(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height)
1376 {
1377 return es1::DrawTexsOES(x,y, z, width, height);
1378 }
1379
glDrawTexiOES(GLint x,GLint y,GLint z,GLint width,GLint height)1380 GL_API void GL_APIENTRY glDrawTexiOES(GLint x, GLint y, GLint z, GLint width, GLint height)
1381 {
1382 return es1::DrawTexiOES(x,y, z, width, height);
1383 }
1384
glDrawTexxOES(GLfixed x,GLfixed y,GLfixed z,GLfixed width,GLfixed height)1385 GL_API void GL_APIENTRY glDrawTexxOES(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height)
1386 {
1387 return es1::DrawTexxOES(x,y, z, width, height);
1388 }
1389
glDrawTexsvOES(const GLshort * coords)1390 GL_API void GL_APIENTRY glDrawTexsvOES(const GLshort *coords)
1391 {
1392 return es1::DrawTexsvOES(coords);
1393 }
1394
glDrawTexivOES(const GLint * coords)1395 GL_API void GL_APIENTRY glDrawTexivOES(const GLint *coords)
1396 {
1397 return es1::DrawTexivOES(coords);
1398 }
1399
glDrawTexxvOES(const GLfixed * coords)1400 GL_API void GL_APIENTRY glDrawTexxvOES(const GLfixed *coords)
1401 {
1402 return es1::DrawTexxvOES(coords);
1403 }
1404
glDrawTexfOES(GLfloat x,GLfloat y,GLfloat z,GLfloat width,GLfloat height)1405 GL_API void GL_APIENTRY glDrawTexfOES(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height)
1406 {
1407 return es1::DrawTexfOES(x, y, z, width, height);
1408 }
1409
glDrawTexfvOES(const GLfloat * coords)1410 GL_API void GL_APIENTRY glDrawTexfvOES(const GLfloat *coords)
1411 {
1412 return es1::DrawTexfvOES(coords);
1413 }
1414 }
1415
LibGLES_CMexports()1416 LibGLES_CMexports::LibGLES_CMexports()
1417 {
1418 this->glActiveTexture = es1::ActiveTexture;
1419 this->glAlphaFunc = es1::AlphaFunc;
1420 this->glAlphaFuncx = es1::AlphaFuncx;
1421 this->glBindBuffer = es1::BindBuffer;
1422 this->glBindFramebuffer = es1::BindFramebuffer;
1423 this->glBindFramebufferOES = es1::BindFramebufferOES;
1424 this->glBindRenderbufferOES = es1::BindRenderbufferOES;
1425 this->glBindTexture = es1::BindTexture;
1426 this->glBlendEquationSeparateOES = es1::BlendEquationSeparateOES;
1427 this->glBlendEquationOES = es1::BlendEquationOES;
1428 this->glBlendEquationSeparateOES = es1::BlendEquationSeparateOES;
1429 this->glBlendFuncSeparateOES = es1::BlendFuncSeparateOES;
1430 this->glBlendFunc = es1::BlendFunc;
1431 this->glBlendFuncSeparateOES = es1::BlendFuncSeparateOES;
1432 this->glBufferData = es1::BufferData;
1433 this->glBufferSubData = es1::BufferSubData;
1434 this->glCheckFramebufferStatusOES = es1::CheckFramebufferStatusOES;
1435 this->glClear = es1::Clear;
1436 this->glClearColor = es1::ClearColor;
1437 this->glClearColorx = es1::ClearColorx;
1438 this->glClearDepthf = es1::ClearDepthf;
1439 this->glClearDepthx = es1::ClearDepthx;
1440 this->glClearStencil = es1::ClearStencil;
1441 this->glClientActiveTexture = es1::ClientActiveTexture;
1442 this->glClipPlanef = es1::ClipPlanef;
1443 this->glClipPlanex = es1::ClipPlanex;
1444 this->glColor4f = es1::Color4f;
1445 this->glColor4ub = es1::Color4ub;
1446 this->glColor4x = es1::Color4x;
1447 this->glColorMask = es1::ColorMask;
1448 this->glColorPointer = es1::ColorPointer;
1449 this->glCompressedTexImage2D = es1::CompressedTexImage2D;
1450 this->glCompressedTexSubImage2D = es1::CompressedTexSubImage2D;
1451 this->glCopyTexImage2D = es1::CopyTexImage2D;
1452 this->glCopyTexSubImage2D = es1::CopyTexSubImage2D;
1453 this->glCullFace = es1::CullFace;
1454 this->glDeleteBuffers = es1::DeleteBuffers;
1455 this->glDeleteFramebuffersOES = es1::DeleteFramebuffersOES;
1456 this->glDeleteRenderbuffersOES = es1::DeleteRenderbuffersOES;
1457 this->glDeleteTextures = es1::DeleteTextures;
1458 this->glDepthFunc = es1::DepthFunc;
1459 this->glDepthMask = es1::DepthMask;
1460 this->glDepthRangex = es1::DepthRangex;
1461 this->glDepthRangef = es1::DepthRangef;
1462 this->glDisable = es1::Disable;
1463 this->glDisableClientState = es1::DisableClientState;
1464 this->glDrawArrays = es1::DrawArrays;
1465 this->glDrawElements = es1::DrawElements;
1466 this->glEnable = es1::Enable;
1467 this->glEnableClientState = es1::EnableClientState;
1468 this->glFinish = es1::Finish;
1469 this->glFlush = es1::Flush;
1470 this->glFramebufferRenderbufferOES = es1::FramebufferRenderbufferOES;
1471 this->glFramebufferTexture2DOES = es1::FramebufferTexture2DOES;
1472 this->glFogf = es1::Fogf;
1473 this->glFogfv = es1::Fogfv;
1474 this->glFogx = es1::Fogx;
1475 this->glFogxv = es1::Fogxv;
1476 this->glFrontFace = es1::FrontFace;
1477 this->glFrustumf = es1::Frustumf;
1478 this->glFrustumx = es1::Frustumx;
1479 this->glGenerateMipmapOES = es1::GenerateMipmapOES;
1480 this->glGenBuffers = es1::GenBuffers;
1481 this->glGenFramebuffersOES = es1::GenFramebuffersOES;
1482 this->glGenRenderbuffersOES = es1::GenRenderbuffersOES;
1483 this->glGenTextures = es1::GenTextures;
1484 this->glGetRenderbufferParameterivOES = es1::GetRenderbufferParameterivOES;
1485 this->glGetBooleanv = es1::GetBooleanv;
1486 this->glGetBufferParameteriv = es1::GetBufferParameteriv;
1487 this->glGetClipPlanef = es1::GetClipPlanef;
1488 this->glGetClipPlanex = es1::GetClipPlanex;
1489 this->glGetError = es1::GetError;
1490 this->glGetFixedv = es1::GetFixedv;
1491 this->glGetFloatv = es1::GetFloatv;
1492 this->glGetFramebufferAttachmentParameterivOES = es1::GetFramebufferAttachmentParameterivOES;
1493 this->glGetIntegerv = es1::GetIntegerv;
1494 this->glGetLightfv = es1::GetLightfv;
1495 this->glGetLightxv = es1::GetLightxv;
1496 this->glGetMaterialfv = es1::GetMaterialfv;
1497 this->glGetMaterialxv = es1::GetMaterialxv;
1498 this->glGetPointerv = es1::GetPointerv;
1499 this->glGetString = es1::GetString;
1500 this->glGetTexParameterfv = es1::GetTexParameterfv;
1501 this->glGetTexParameteriv = es1::GetTexParameteriv;
1502 this->glGetTexEnvfv = es1::GetTexEnvfv;
1503 this->glGetTexEnviv = es1::GetTexEnviv;
1504 this->glGetTexEnvxv = es1::GetTexEnvxv;
1505 this->glGetTexParameterxv = es1::GetTexParameterxv;
1506 this->glHint = es1::Hint;
1507 this->glIsBuffer = es1::IsBuffer;
1508 this->glIsEnabled = es1::IsEnabled;
1509 this->glIsFramebufferOES = es1::IsFramebufferOES;
1510 this->glIsTexture = es1::IsTexture;
1511 this->glIsRenderbufferOES = es1::IsRenderbufferOES;
1512 this->glLightModelf = es1::LightModelf;
1513 this->glLightModelfv = es1::LightModelfv;
1514 this->glLightModelx = es1::LightModelx;
1515 this->glLightModelxv = es1::LightModelxv;
1516 this->glLightf = es1::Lightf;
1517 this->glLightfv = es1::Lightfv;
1518 this->glLightx = es1::Lightx;
1519 this->glLightxv = es1::Lightxv;
1520 this->glLineWidth = es1::LineWidth;
1521 this->glLineWidthx = es1::LineWidthx;
1522 this->glLoadIdentity = es1::LoadIdentity;
1523 this->glLoadMatrixf = es1::LoadMatrixf;
1524 this->glLoadMatrixx = es1::LoadMatrixx;
1525 this->glLogicOp = es1::LogicOp;
1526 this->glMaterialf = es1::Materialf;
1527 this->glMaterialfv = es1::Materialfv;
1528 this->glMaterialx = es1::Materialx;
1529 this->glMaterialxv = es1::Materialxv;
1530 this->glMatrixMode = es1::MatrixMode;
1531 this->glMultMatrixf = es1::MultMatrixf;
1532 this->glMultMatrixx = es1::MultMatrixx;
1533 this->glMultiTexCoord4f = es1::MultiTexCoord4f;
1534 this->glMultiTexCoord4x = es1::MultiTexCoord4x;
1535 this->glNormal3f = es1::Normal3f;
1536 this->glNormal3x = es1::Normal3x;
1537 this->glNormalPointer = es1::NormalPointer;
1538 this->glOrthof = es1::Orthof;
1539 this->glOrthox = es1::Orthox;
1540 this->glPixelStorei = es1::PixelStorei;
1541 this->glPointParameterf = es1::PointParameterf;
1542 this->glPointParameterfv = es1::PointParameterfv;
1543 this->glPointParameterx = es1::PointParameterx;
1544 this->glPointParameterxv = es1::PointParameterxv;
1545 this->glPointSize = es1::PointSize;
1546 this->glPointSizePointerOES = es1::PointSizePointerOES;
1547 this->glPointSizex = es1::PointSizex;
1548 this->glPolygonOffset = es1::PolygonOffset;
1549 this->glPolygonOffsetx = es1::PolygonOffsetx;
1550 this->glPopMatrix = es1::PopMatrix;
1551 this->glPushMatrix = es1::PushMatrix;
1552 this->glReadPixels = es1::ReadPixels;
1553 this->glRenderbufferStorageOES = es1::RenderbufferStorageOES;
1554 this->glRotatef = es1::Rotatef;
1555 this->glRotatex = es1::Rotatex;
1556 this->glSampleCoverage = es1::SampleCoverage;
1557 this->glSampleCoveragex = es1::SampleCoveragex;
1558 this->glScalef = es1::Scalef;
1559 this->glScalex = es1::Scalex;
1560 this->glScissor = es1::Scissor;
1561 this->glShadeModel = es1::ShadeModel;
1562 this->glStencilFunc = es1::StencilFunc;
1563 this->glStencilMask = es1::StencilMask;
1564 this->glStencilOp = es1::StencilOp;
1565 this->glTexCoordPointer = es1::TexCoordPointer;
1566 this->glTexEnvf = es1::TexEnvf;
1567 this->glTexEnvfv = es1::TexEnvfv;
1568 this->glTexEnvi = es1::TexEnvi;
1569 this->glTexEnvx = es1::TexEnvx;
1570 this->glTexEnviv = es1::TexEnviv;
1571 this->glTexEnvxv = es1::TexEnvxv;
1572 this->glTexImage2D = es1::TexImage2D;
1573 this->glTexParameterf = es1::TexParameterf;
1574 this->glTexParameterfv = es1::TexParameterfv;
1575 this->glTexParameteri = es1::TexParameteri;
1576 this->glTexParameteriv = es1::TexParameteriv;
1577 this->glTexParameterx = es1::TexParameterx;
1578 this->glTexParameterxv = es1::TexParameterxv;
1579 this->glTexSubImage2D = es1::TexSubImage2D;
1580 this->glTranslatef = es1::Translatef;
1581 this->glTranslatex = es1::Translatex;
1582 this->glVertexPointer = es1::VertexPointer;
1583 this->glViewport = es1::Viewport;
1584 this->glEGLImageTargetTexture2DOES = es1::EGLImageTargetTexture2DOES;
1585 this->glEGLImageTargetRenderbufferStorageOES = es1::EGLImageTargetRenderbufferStorageOES;
1586 this->glDrawTexsOES = es1::DrawTexsOES;
1587 this->glDrawTexiOES = es1::DrawTexiOES;
1588 this->glDrawTexxOES = es1::DrawTexxOES;
1589 this->glDrawTexsvOES = es1::DrawTexsvOES;
1590 this->glDrawTexivOES = es1::DrawTexivOES;
1591 this->glDrawTexxvOES = es1::DrawTexxvOES;
1592 this->glDrawTexfOES = es1::DrawTexfOES;
1593 this->glDrawTexfvOES = es1::DrawTexfvOES;
1594
1595 this->es1CreateContext = ::es1CreateContext;
1596 this->es1GetProcAddress = ::es1GetProcAddress;
1597 this->createBackBuffer = ::createBackBuffer;
1598 this->createDepthStencil = ::createDepthStencil;
1599 this->createFrameBuffer = ::createFrameBuffer;
1600 }
1601
libGLES_CM_swiftshader()1602 extern "C" GL_API LibGLES_CMexports *libGLES_CM_swiftshader()
1603 {
1604 static LibGLES_CMexports libGLES_CM;
1605 return &libGLES_CM;
1606 }
1607
1608 LibEGL libEGL;
1609