1// Copyright 2018 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#ifndef LIBGLESV2_ENTRY_POINTS_H_
16#define LIBGLESV2_ENTRY_POINTS_H_
17
18#include <GLES2/gl2.h>
19#include <GLES2/gl2ext.h>
20#include <GLES3/gl3.h>
21
22namespace gl
23{
24 void GL_APIENTRY ActiveTexture(GLenum texture);
25 void GL_APIENTRY AttachShader(GLuint program, GLuint shader);
26 void GL_APIENTRY BeginQueryEXT(GLenum target, GLuint name);
27 void GL_APIENTRY BindAttribLocation(GLuint program, GLuint index, const GLchar* name);
28 void GL_APIENTRY BindBuffer(GLenum target, GLuint buffer);
29 void GL_APIENTRY BindFramebuffer(GLenum target, GLuint framebuffer);
30 void GL_APIENTRY BindRenderbuffer(GLenum target, GLuint renderbuffer);
31 void GL_APIENTRY BindTexture(GLenum target, GLuint texture);
32 void GL_APIENTRY BlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
33 void GL_APIENTRY BlendEquation(GLenum mode);
34 void GL_APIENTRY BlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
35 void GL_APIENTRY BlendFunc(GLenum sfactor, GLenum dfactor);
36 void GL_APIENTRY BlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
37 void GL_APIENTRY BufferData(GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage);
38 void GL_APIENTRY BufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data);
39 GLenum GL_APIENTRY CheckFramebufferStatus(GLenum target);
40 void GL_APIENTRY Clear(GLbitfield mask);
41 void GL_APIENTRY ClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
42 void GL_APIENTRY ClearDepthf(GLclampf depth);
43 void GL_APIENTRY ClearStencil(GLint s);
44 void GL_APIENTRY ColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
45 void GL_APIENTRY CompileShader(GLuint shader);
46 void GL_APIENTRY CompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height,
47 GLint border, GLsizei imageSize, const GLvoid* data);
48 void GL_APIENTRY CompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height,
49 GLenum format, GLsizei imageSize, const GLvoid* data);
50 void GL_APIENTRY CopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
51 void GL_APIENTRY CopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
52 GLuint GL_APIENTRY CreateProgram(void);
53 GLuint GL_APIENTRY CreateShader(GLenum type);
54 void GL_APIENTRY CullFace(GLenum mode);
55 void GL_APIENTRY DeleteBuffers(GLsizei n, const GLuint* buffers);
56 void GL_APIENTRY DeleteFencesNV(GLsizei n, const GLuint* fences);
57 void GL_APIENTRY DeleteFramebuffers(GLsizei n, const GLuint* framebuffers);
58 void GL_APIENTRY DeleteProgram(GLuint program);
59 void GL_APIENTRY DeleteQueriesEXT(GLsizei n, const GLuint *ids);
60 void GL_APIENTRY DeleteRenderbuffers(GLsizei n, const GLuint* renderbuffers);
61 void GL_APIENTRY DeleteShader(GLuint shader);
62 void GL_APIENTRY DeleteTextures(GLsizei n, const GLuint* textures);
63 void GL_APIENTRY DepthFunc(GLenum func);
64 void GL_APIENTRY DepthMask(GLboolean flag);
65 void GL_APIENTRY DepthRangef(GLclampf zNear, GLclampf zFar);
66 void GL_APIENTRY DetachShader(GLuint program, GLuint shader);
67 void GL_APIENTRY Disable(GLenum cap);
68 void GL_APIENTRY DisableVertexAttribArray(GLuint index);
69 void GL_APIENTRY DrawArrays(GLenum mode, GLint first, GLsizei count);
70 void GL_APIENTRY DrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid* indices);
71 void GL_APIENTRY DrawArraysInstancedEXT(GLenum mode, GLint first, GLsizei count, GLsizei instanceCount);
72 void GL_APIENTRY DrawElementsInstancedEXT(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instanceCount);
73 void GL_APIENTRY VertexAttribDivisorEXT(GLuint index, GLuint divisor);
74 void GL_APIENTRY DrawArraysInstancedANGLE(GLenum mode, GLint first, GLsizei count, GLsizei instanceCount);
75 void GL_APIENTRY DrawElementsInstancedANGLE(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instanceCount);
76 void GL_APIENTRY VertexAttribDivisorANGLE(GLuint index, GLuint divisor);
77 void GL_APIENTRY Enable(GLenum cap);
78 void GL_APIENTRY EnableVertexAttribArray(GLuint index);
79 void GL_APIENTRY EndQueryEXT(GLenum target);
80 void GL_APIENTRY FinishFenceNV(GLuint fence);
81 void GL_APIENTRY Finish(void);
82 void GL_APIENTRY Flush(void);
83 void GL_APIENTRY FramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
84 void GL_APIENTRY FramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
85 void GL_APIENTRY FrontFace(GLenum mode);
86 void GL_APIENTRY GenBuffers(GLsizei n, GLuint* buffers);
87 void GL_APIENTRY GenerateMipmap(GLenum target);
88 void GL_APIENTRY GenFencesNV(GLsizei n, GLuint* fences);
89 void GL_APIENTRY GenFramebuffers(GLsizei n, GLuint* framebuffers);
90 void GL_APIENTRY GenQueriesEXT(GLsizei n, GLuint* ids);
91 void GL_APIENTRY GenRenderbuffers(GLsizei n, GLuint* renderbuffers);
92 void GL_APIENTRY GenTextures(GLsizei n, GLuint* textures);
93 void GL_APIENTRY GetActiveAttrib(GLuint program, GLuint index, GLsizei bufsize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
94 void GL_APIENTRY GetActiveUniform(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
95 void GL_APIENTRY GetAttachedShaders(GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders);
96 int GL_APIENTRY GetAttribLocation(GLuint program, const GLchar* name);
97 void GL_APIENTRY GetBooleanv(GLenum pname, GLboolean* params);
98 void GL_APIENTRY GetBufferParameteriv(GLenum target, GLenum pname, GLint* params);
99 GLenum GL_APIENTRY GetError(void);
100 void GL_APIENTRY GetFenceivNV(GLuint fence, GLenum pname, GLint *params);
101 void GL_APIENTRY GetFloatv(GLenum pname, GLfloat* params);
102 void GL_APIENTRY GetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint* params);
103 GLenum GL_APIENTRY GetGraphicsResetStatusEXT(void);
104 void GL_APIENTRY GetIntegerv(GLenum pname, GLint* params);
105 void GL_APIENTRY GetProgramiv(GLuint program, GLenum pname, GLint* params);
106 void GL_APIENTRY GetProgramInfoLog(GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog);
107 void GL_APIENTRY GetQueryivEXT(GLenum target, GLenum pname, GLint *params);
108 void GL_APIENTRY GetQueryObjectuivEXT(GLuint name, GLenum pname, GLuint *params);
109 void GL_APIENTRY GetRenderbufferParameteriv(GLenum target, GLenum pname, GLint* params);
110 void GL_APIENTRY GetShaderiv(GLuint shader, GLenum pname, GLint* params);
111 void GL_APIENTRY GetShaderInfoLog(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog);
112 void GL_APIENTRY GetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision);
113 void GL_APIENTRY GetShaderSource(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source);
114 const GLubyte* GL_APIENTRY GetString(GLenum name);
115 void GL_APIENTRY GetTexParameterfv(GLenum target, GLenum pname, GLfloat* params);
116 void GL_APIENTRY GetTexParameteriv(GLenum target, GLenum pname, GLint* params);
117 void GL_APIENTRY GetnUniformfvEXT(GLuint program, GLint location, GLsizei bufSize, GLfloat* params);
118 void GL_APIENTRY GetUniformfv(GLuint program, GLint location, GLfloat* params);
119 void GL_APIENTRY GetnUniformivEXT(GLuint program, GLint location, GLsizei bufSize, GLint* params);
120 void GL_APIENTRY GetUniformiv(GLuint program, GLint location, GLint* params);
121 int GL_APIENTRY GetUniformLocation(GLuint program, const GLchar* name);
122 void GL_APIENTRY GetVertexAttribfv(GLuint index, GLenum pname, GLfloat* params);
123 void GL_APIENTRY GetVertexAttribiv(GLuint index, GLenum pname, GLint* params);
124 void GL_APIENTRY GetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid** pointer);
125 void GL_APIENTRY Hint(GLenum target, GLenum mode);
126 GLboolean GL_APIENTRY IsBuffer(GLuint buffer);
127 GLboolean GL_APIENTRY IsEnabled(GLenum cap);
128 GLboolean GL_APIENTRY IsFenceNV(GLuint fence);
129 GLboolean GL_APIENTRY IsFramebuffer(GLuint framebuffer);
130 GLboolean GL_APIENTRY IsProgram(GLuint program);
131 GLboolean GL_APIENTRY IsQueryEXT(GLuint name);
132 GLboolean GL_APIENTRY IsRenderbuffer(GLuint renderbuffer);
133 GLboolean GL_APIENTRY IsShader(GLuint shader);
134 GLboolean GL_APIENTRY IsTexture(GLuint texture);
135 void GL_APIENTRY LineWidth(GLfloat width);
136 void GL_APIENTRY LinkProgram(GLuint program);
137 void GL_APIENTRY PixelStorei(GLenum pname, GLint param);
138 void GL_APIENTRY PolygonOffset(GLfloat factor, GLfloat units);
139 void GL_APIENTRY ReadnPixelsEXT(GLint x, GLint y, GLsizei width, GLsizei height,
140 GLenum format, GLenum type, GLsizei bufSize, GLvoid *data);
141 void GL_APIENTRY ReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels);
142 void GL_APIENTRY ReleaseShaderCompiler(void);
143 void GL_APIENTRY RenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
144 void GL_APIENTRY RenderbufferStorageMultisampleANGLE(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
145 void GL_APIENTRY RenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
146 void GL_APIENTRY SampleCoverage(GLclampf value, GLboolean invert);
147 void GL_APIENTRY SetFenceNV(GLuint fence, GLenum condition);
148 void GL_APIENTRY Scissor(GLint x, GLint y, GLsizei width, GLsizei height);
149 void GL_APIENTRY ShaderBinary(GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length);
150 void GL_APIENTRY ShaderSource(GLuint shader, GLsizei count, const GLchar *const *string, const GLint *length);
151 void GL_APIENTRY StencilFunc(GLenum func, GLint ref, GLuint mask);
152 void GL_APIENTRY StencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
153 void GL_APIENTRY StencilMask(GLuint mask);
154 void GL_APIENTRY StencilMaskSeparate(GLenum face, GLuint mask);
155 void GL_APIENTRY StencilOp(GLenum fail, GLenum zfail, GLenum zpass);
156 void GL_APIENTRY StencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass);
157 GLboolean GL_APIENTRY TestFenceNV(GLuint fence);
158 void GL_APIENTRY TexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height,
159 GLint border, GLenum format, GLenum type, const GLvoid* pixels);
160 void GL_APIENTRY TexParameterf(GLenum target, GLenum pname, GLfloat param);
161 void GL_APIENTRY TexParameterfv(GLenum target, GLenum pname, const GLfloat* params);
162 void GL_APIENTRY TexParameteri(GLenum target, GLenum pname, GLint param);
163 void GL_APIENTRY TexParameteriv(GLenum target, GLenum pname, const GLint* params);
164 void GL_APIENTRY TexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height,
165 GLenum format, GLenum type, const GLvoid* pixels);
166 void GL_APIENTRY Uniform1f(GLint location, GLfloat x);
167 void GL_APIENTRY Uniform1fv(GLint location, GLsizei count, const GLfloat* v);
168 void GL_APIENTRY Uniform1i(GLint location, GLint x);
169 void GL_APIENTRY Uniform1iv(GLint location, GLsizei count, const GLint* v);
170 void GL_APIENTRY Uniform2f(GLint location, GLfloat x, GLfloat y);
171 void GL_APIENTRY Uniform2fv(GLint location, GLsizei count, const GLfloat* v);
172 void GL_APIENTRY Uniform2i(GLint location, GLint x, GLint y);
173 void GL_APIENTRY Uniform2iv(GLint location, GLsizei count, const GLint* v);
174 void GL_APIENTRY Uniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z);
175 void GL_APIENTRY Uniform3fv(GLint location, GLsizei count, const GLfloat* v);
176 void GL_APIENTRY Uniform3i(GLint location, GLint x, GLint y, GLint z);
177 void GL_APIENTRY Uniform3iv(GLint location, GLsizei count, const GLint* v);
178 void GL_APIENTRY Uniform4f(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
179 void GL_APIENTRY Uniform4fv(GLint location, GLsizei count, const GLfloat* v);
180 void GL_APIENTRY Uniform4i(GLint location, GLint x, GLint y, GLint z, GLint w);
181 void GL_APIENTRY Uniform4iv(GLint location, GLsizei count, const GLint* v);
182 void GL_APIENTRY UniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
183 void GL_APIENTRY UniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
184 void GL_APIENTRY UniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
185 void GL_APIENTRY UseProgram(GLuint program);
186 void GL_APIENTRY ValidateProgram(GLuint program);
187 void GL_APIENTRY VertexAttrib1f(GLuint index, GLfloat x);
188 void GL_APIENTRY VertexAttrib1fv(GLuint index, const GLfloat* values);
189 void GL_APIENTRY VertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
190 void GL_APIENTRY VertexAttrib2fv(GLuint index, const GLfloat* values);
191 void GL_APIENTRY VertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
192 void GL_APIENTRY VertexAttrib3fv(GLuint index, const GLfloat* values);
193 void GL_APIENTRY VertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
194 void GL_APIENTRY VertexAttrib4fv(GLuint index, const GLfloat* values);
195 void GL_APIENTRY VertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr);
196 void GL_APIENTRY Viewport(GLint x, GLint y, GLsizei width, GLsizei height);
197 void GL_APIENTRY BlitFramebufferNV(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
198 void GL_APIENTRY BlitFramebufferANGLE(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1,
199 GLbitfield mask, GLenum filter);
200 void GL_APIENTRY TexImage3DOES(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth,
201 GLint border, GLenum format, GLenum type, const GLvoid* pixels);
202 void GL_APIENTRY TexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
203 void GL_APIENTRY CopyTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
204 void GL_APIENTRY CompressedTexImage3DOES(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data);
205 void GL_APIENTRY CompressedTexSubImage3DOES(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data);
206 void GL_APIENTRY FramebufferTexture3DOES(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
207 void GL_APIENTRY EGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image);
208 void GL_APIENTRY EGLImageTargetRenderbufferStorageOES(GLenum target, GLeglImageOES image);
209 GLboolean GL_APIENTRY IsRenderbufferOES(GLuint renderbuffer);
210 void GL_APIENTRY BindRenderbufferOES(GLenum target, GLuint renderbuffer);
211 void GL_APIENTRY DeleteRenderbuffersOES(GLsizei n, const GLuint* renderbuffers);
212 void GL_APIENTRY GenRenderbuffersOES(GLsizei n, GLuint* renderbuffers);
213 void GL_APIENTRY RenderbufferStorageOES(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
214 void GL_APIENTRY GetRenderbufferParameterivOES(GLenum target, GLenum pname, GLint* params);
215 GLboolean GL_APIENTRY IsFramebufferOES(GLuint framebuffer);
216 void GL_APIENTRY BindFramebufferOES(GLenum target, GLuint framebuffer);
217 void GL_APIENTRY DeleteFramebuffersOES(GLsizei n, const GLuint* framebuffers);
218 void GL_APIENTRY GenFramebuffersOES(GLsizei n, GLuint* framebuffers);
219 GLenum GL_APIENTRY CheckFramebufferStatusOES(GLenum target);
220 void GL_APIENTRY FramebufferRenderbufferOES(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
221 void GL_APIENTRY FramebufferTexture2DOES(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
222 void GL_APIENTRY GetFramebufferAttachmentParameterivOES(GLenum target, GLenum attachment, GLenum pname, GLint* params);
223 void GL_APIENTRY GenerateMipmapOES(GLenum target);
224 void GL_APIENTRY DrawBuffersEXT(GLsizei n, const GLenum *bufs);
225 void GL_APIENTRY ReadBuffer(GLenum src);
226 void GL_APIENTRY DrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices);
227 void GL_APIENTRY TexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *data);
228 void GL_APIENTRY TexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *data);
229 void GL_APIENTRY CopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
230 void GL_APIENTRY CompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data);
231 void GL_APIENTRY CompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data);
232 void GL_APIENTRY GenQueries(GLsizei n, GLuint *ids);
233 void GL_APIENTRY DeleteQueries(GLsizei n, const GLuint *ids);
234 GLboolean GL_APIENTRY IsQuery(GLuint id);
235 void GL_APIENTRY BeginQuery(GLenum target, GLuint id);
236 void GL_APIENTRY EndQuery(GLenum target);
237 void GL_APIENTRY GetQueryiv(GLenum target, GLenum pname, GLint *params);
238 void GL_APIENTRY GetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
239 GLboolean GL_APIENTRY UnmapBuffer(GLenum target);
240 void GL_APIENTRY GetBufferPointerv(GLenum target, GLenum pname, void **params);
241 void GL_APIENTRY DrawBuffers(GLsizei n, const GLenum *bufs);
242 void GL_APIENTRY UniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
243 void GL_APIENTRY UniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
244 void GL_APIENTRY UniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
245 void GL_APIENTRY UniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
246 void GL_APIENTRY UniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
247 void GL_APIENTRY UniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
248 void GL_APIENTRY BlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
249 void GL_APIENTRY FramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
250 void *GL_APIENTRY MapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
251 void GL_APIENTRY FlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length);
252 void GL_APIENTRY BindVertexArray(GLuint array);
253 void GL_APIENTRY BindVertexArrayOES(GLuint array);
254 void GL_APIENTRY DeleteVertexArrays(GLsizei n, const GLuint *arrays);
255 void GL_APIENTRY DeleteVertexArraysOES(GLsizei n, const GLuint *arrays);
256 void GL_APIENTRY GenVertexArrays(GLsizei n, GLuint *arrays);
257 void GL_APIENTRY GenVertexArraysOES(GLsizei n, GLuint *arrays);
258 GLboolean GL_APIENTRY IsVertexArray(GLuint array);
259 GLboolean GL_APIENTRY IsVertexArrayOES(GLuint array);
260 void GL_APIENTRY GetIntegeri_v(GLenum target, GLuint index, GLint *data);
261 void GL_APIENTRY BeginTransformFeedback(GLenum primitiveMode);
262 void GL_APIENTRY EndTransformFeedback(void);
263 void GL_APIENTRY BindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
264 void GL_APIENTRY BindBufferBase(GLenum target, GLuint index, GLuint buffer);
265 void GL_APIENTRY TransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar *const*varyings, GLenum bufferMode);
266 void GL_APIENTRY GetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
267 void GL_APIENTRY VertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer);
268 void GL_APIENTRY GetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
269 void GL_APIENTRY GetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
270 void GL_APIENTRY VertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w);
271 void GL_APIENTRY VertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
272 void GL_APIENTRY VertexAttribI4iv(GLuint index, const GLint *v);
273 void GL_APIENTRY VertexAttribI4uiv(GLuint index, const GLuint *v);
274 void GL_APIENTRY GetUniformuiv(GLuint program, GLint location, GLuint *params);
275 GLint GL_APIENTRY GetFragDataLocation(GLuint program, const GLchar *name);
276 void GL_APIENTRY Uniform1ui(GLint location, GLuint v0);
277 void GL_APIENTRY Uniform2ui(GLint location, GLuint v0, GLuint v1);
278 void GL_APIENTRY Uniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
279 void GL_APIENTRY Uniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
280 void GL_APIENTRY Uniform1uiv(GLint location, GLsizei count, const GLuint *value);
281 void GL_APIENTRY Uniform2uiv(GLint location, GLsizei count, const GLuint *value);
282 void GL_APIENTRY Uniform3uiv(GLint location, GLsizei count, const GLuint *value);
283 void GL_APIENTRY Uniform4uiv(GLint location, GLsizei count, const GLuint *value);
284 void GL_APIENTRY ClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
285 void GL_APIENTRY ClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
286 void GL_APIENTRY ClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
287 void GL_APIENTRY ClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
288 const GLubyte *GL_APIENTRY GetStringi(GLenum name, GLuint index);
289 void GL_APIENTRY CopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
290 void GL_APIENTRY GetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar *const*uniformNames, GLuint *uniformIndices);
291 void GL_APIENTRY GetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
292 GLuint GL_APIENTRY GetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
293 void GL_APIENTRY GetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
294 void GL_APIENTRY GetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
295 void GL_APIENTRY UniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
296 void GL_APIENTRY DrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instanceCount);
297 void GL_APIENTRY DrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instanceCount);
298 GLsync GL_APIENTRY FenceSync(GLenum condition, GLbitfield flags);
299 GLboolean GL_APIENTRY IsSync(GLsync sync);
300 void GL_APIENTRY DeleteSync(GLsync sync);
301 GLenum GL_APIENTRY ClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
302 void GL_APIENTRY WaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
303 void GL_APIENTRY GetInteger64v(GLenum pname, GLint64 *data);
304 void GL_APIENTRY GetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
305 void GL_APIENTRY GetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
306 void GL_APIENTRY GetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
307 void GL_APIENTRY GenSamplers(GLsizei count, GLuint *samplers);
308 void GL_APIENTRY DeleteSamplers(GLsizei count, const GLuint *samplers);
309 GLboolean GL_APIENTRY IsSampler(GLuint sampler);
310 void GL_APIENTRY BindSampler(GLuint unit, GLuint sampler);
311 void GL_APIENTRY SamplerParameteri(GLuint sampler, GLenum pname, GLint param);
312 void GL_APIENTRY SamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param);
313 void GL_APIENTRY SamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
314 void GL_APIENTRY SamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param);
315 void GL_APIENTRY GetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
316 void GL_APIENTRY GetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
317 void GL_APIENTRY VertexAttribDivisor(GLuint index, GLuint divisor);
318 void GL_APIENTRY BindTransformFeedback(GLenum target, GLuint id);
319 void GL_APIENTRY DeleteTransformFeedbacks(GLsizei n, const GLuint *ids);
320 void GL_APIENTRY GenTransformFeedbacks(GLsizei n, GLuint *ids);
321 GLboolean GL_APIENTRY IsTransformFeedback(GLuint id);
322 void GL_APIENTRY PauseTransformFeedback(void);
323 void GL_APIENTRY ResumeTransformFeedback(void);
324 void GL_APIENTRY GetProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary);
325 void GL_APIENTRY ProgramBinary(GLuint program, GLenum binaryFormat, const void *binary, GLsizei length);
326 void GL_APIENTRY ProgramParameteri(GLuint program, GLenum pname, GLint value);
327 void GL_APIENTRY InvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments);
328 void GL_APIENTRY InvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
329 void GL_APIENTRY TexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
330 void GL_APIENTRY TexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
331 void GL_APIENTRY GetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params);
332}
333
334#endif // LIBGLESV2_ENTRY_POINTS_H_
335