Commit 95ac7b7c by Clemen Deng Committed by Commit Bot

Autogen gles2+ declarations

Added autogeneration of method declarations for GLES2+ and extensions Bug: angleproject:3526 Change-Id: I9c7263452146098512d9584deae8ea3f15f62c46 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1660949Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org> Reviewed-by: 's avatarJonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
parent bf826481
......@@ -142,7 +142,7 @@ context_gles_header = """// GENERATED FILE - DO NOT EDIT.
#ifndef ANGLE_CONTEXT_GLES_{annotation_upper}_AUTOGEN_H_
#define ANGLE_CONTEXT_GLES_{annotation_upper}_AUTOGEN_H_
#define ANGLE_GLES1_CONTEXT_API \\
#define ANGLE_GLES_{annotation_upper}_CONTEXT_API \\
{interface}
#endif // ANGLE_CONTEXT_API_{annotation_upper}_AUTOGEN_H_
......@@ -495,7 +495,7 @@ def get_entry_points(all_commands, gles_commands, is_explicit_context):
return decls, defs, export_defs, validation_protos
def get_gles1_decls(all_commands, gles_commands):
def get_gles_decls(all_commands, gles_commands, already_included, overloaded):
decls = []
for command in all_commands:
proto = command.find('proto')
......@@ -504,7 +504,16 @@ def get_gles1_decls(all_commands, gles_commands):
if cmd_name not in gles_commands:
continue
if cmd_name in gles1_overloaded:
if cmd_name in overloaded:
continue
# Remove extension suffixes from cmd_names
name_no_suffix = cmd_name
for suffix in strip_suffixes:
if name_no_suffix.endswith(suffix):
name_no_suffix = name_no_suffix[0:-len(suffix)]
if name_no_suffix in already_included:
continue
param_text = ["".join(param.itertext()) for param in command.findall('param')]
......@@ -587,15 +596,14 @@ def write_export_files(entry_points, includes):
out.close()
def write_context_api_decls(annotation, template, decls):
def write_context_api_decls(template, decls):
for ver in decls['core'].keys():
interface_lines = []
for i in decls['core']:
for i in decls['core'][ver]:
interface_lines.append(i)
for extname in sorted(decls['exts'].keys()):
interface_lines.append(" /* " + extname + " */ \\")
interface_lines.extend(decls['exts'][extname])
annotation = '{}_{}'.format(ver[0], ver[1])
content = template.format(
annotation_lower=annotation.lower(),
......@@ -611,6 +619,28 @@ def write_context_api_decls(annotation, template, decls):
out.write(content)
out.close()
interface_lines = []
for annotation in decls['exts'].keys():
interface_lines.append("\\\n /* " + annotation + " */ \\\n\\")
for extname in sorted(decls['exts'][annotation].keys()):
interface_lines.append(" /* " + extname + " */ \\")
interface_lines.extend(decls['exts'][annotation][extname])
content = template.format(
annotation_lower='ext',
annotation_upper='EXT',
script_name=os.path.basename(sys.argv[0]),
data_source_name="gl.xml",
year=date.today().year,
interface="\n".join(interface_lines))
path = path_to("libANGLE", "Context_gles_ext_autogen.h")
with open(path, "w") as out:
out.write(content)
out.close()
def write_glext_explicit_context_inc(version, ptrs, protos):
folder_version = version if version != "31" else "3"
......@@ -722,6 +752,10 @@ def main():
]
outputs = [
'../src/libANGLE/Context_gles_1_0_autogen.h',
'../src/libANGLE/Context_gles_2_0_autogen.h',
'../src/libANGLE/Context_gles_3_0_autogen.h',
'../src/libANGLE/Context_gles_3_1_autogen.h',
'../src/libANGLE/Context_gles_ext_autogen.h',
'../src/libANGLE/validationES1_autogen.h',
'../src/libANGLE/validationES2_autogen.h',
'../src/libANGLE/validationES31_autogen.h',
......@@ -751,16 +785,22 @@ def main():
return 1
return 0
gles1decls = {}
gles1decls['core'] = []
gles1decls['exts'] = {}
glesdecls = {}
glesdecls['core'] = {}
glesdecls['exts'] = {}
for ver in [(1, 0), (2, 0), (3, 0), (3, 1)]:
glesdecls['core'][ver] = []
for ver in ['GLES1 Extensions', 'GLES2+ Extensions', 'ANGLE Extensions']:
glesdecls['exts'][ver] = {}
libgles_ep_defs = []
libgles_ep_exports = []
xml = registry_xml.RegistryXML('gl.xml', 'gl_angle_ext.xml')
#stores all core commands
all_gles_commands = []
# First run through the main GLES entry points. Since ES2+ is the primary use
# case, we go through those first and then add ES1-only APIs at the end.
for major_version, minor_version in [[2, 0], [3, 0], [3, 1], [1, 0]]:
......@@ -778,6 +818,7 @@ def main():
gles_commands = xml.commands[annotation]
all_commands = xml.all_commands
all_gles_commands.extend(xml.commands[annotation])
decls, defs, libgles_defs, validation_protos = get_entry_points(
all_commands, gles_commands, False)
......@@ -806,8 +847,10 @@ def main():
header_includes, "gl.xml")
write_file(annotation, comment, template_entry_point_source, "\n".join(defs), "cpp",
source_includes, "gl.xml")
if is_gles1:
gles1decls['core'] = get_gles1_decls(all_commands, gles_commands)
gles_overloaded = gles1_overloaded if is_gles1 else []
glesdecls['core'][(major_version, minor_version)] = get_gles_decls(
all_commands, gles_commands, [], gles_overloaded)
validation_annotation = "%s%s" % (major_version, minor_if_not_zero)
write_validation_header(validation_annotation, comment, validation_protos)
......@@ -820,7 +863,11 @@ def main():
ext_validation_protos = []
for gles1ext in registry_xml.gles1_extensions:
gles1decls['exts'][gles1ext] = []
glesdecls['exts']['GLES1 Extensions'][gles1ext] = []
for glesext in registry_xml.gles_extensions:
glesdecls['exts']['GLES2+ Extensions'][glesext] = []
for angle_ext in registry_xml.angle_extensions:
glesdecls['exts']['ANGLE Extensions'][angle_ext] = []
xml.AddExtensionCommands(registry_xml.supported_extensions, ['gles2', 'gles1'])
......@@ -850,9 +897,16 @@ def main():
libgles_ep_defs += libgles_defs
libgles_ep_exports += get_exports(ext_cmd_names)
if extension_name in registry_xml.gles1_extensions:
if extension_name not in gles1_no_context_decl_extensions:
gles1decls['exts'][extension_name] = get_gles1_decls(all_commands, ext_cmd_names)
if (extension_name in registry_xml.gles1_extensions and
extension_name not in gles1_no_context_decl_extensions):
glesdecls['exts']['GLES1 Extensions'][extension_name] = get_gles_decls(
all_commands, ext_cmd_names, all_gles_commands, gles1_overloaded)
if extension_name in registry_xml.gles_extensions:
glesdecls['exts']['GLES2+ Extensions'][extension_name] = get_gles_decls(
all_commands, ext_cmd_names, all_gles_commands, [])
if extension_name in registry_xml.angle_extensions:
glesdecls['exts']['ANGLE Extensions'][extension_name] = get_gles_decls(
all_commands, ext_cmd_names, all_gles_commands, [])
# Special handling for EGL_ANGLE_explicit_context extension
if registry_xml.support_EGL_ANGLE_explicit_context:
......@@ -926,7 +980,7 @@ def main():
write_validation_header("EXT", "extension", ext_validation_protos)
write_context_api_decls("1_0", context_gles_header, gles1decls)
write_context_api_decls(context_gles_header, glesdecls)
sorted_cmd_names = ["Invalid"
] + [cmd[2:] for cmd in sorted(xml.all_cmd_names.get_all_commands())]
......
......@@ -36,7 +36,7 @@ gles1_extensions = [
"GL_OES_texture_cube_map",
]
supported_extensions = sorted(angle_extensions + gles1_extensions + [
gles_extensions = [
# ES2+
"GL_ANGLE_framebuffer_blit",
"GL_ANGLE_framebuffer_multisample",
......@@ -71,7 +71,9 @@ supported_extensions = sorted(angle_extensions + gles1_extensions + [
"GL_OVR_multiview2",
"GL_KHR_parallel_shader_compile",
"GL_ANGLE_multi_draw",
])
]
supported_extensions = sorted(angle_extensions + gles1_extensions + gles_extensions)
supported_egl_extensions = [
"EGL_ANDROID_blob_cache",
......
......@@ -94,15 +94,23 @@
"GL/EGL entry points:scripts/entry_point_packed_gl_enums.json":
"28238b0f52826c3794eaa1aa940238bf",
"GL/EGL entry points:scripts/generate_entry_points.py":
"e7ab486465bf7873d8f06ddd9b204539",
"1bd848cc592db50a4d3a5cea26a7b077",
"GL/EGL entry points:scripts/gl.xml":
"b470cb06b06cbbe7adb2c8129ec85708",
"GL/EGL entry points:scripts/gl_angle_ext.xml":
"11e1eb2cbe51ae6e7b8705d3506846d5",
"GL/EGL entry points:scripts/registry_xml.py":
"7f043b31380aa2fb0c82e65f802f8cf1",
"be904202ce40755daac33faf4123b9b9",
"GL/EGL entry points:src/libANGLE/Context_gles_1_0_autogen.h":
"fad4ec629b41e9d97ff57a132ad946cb",
"f30ed90e4ec23f886bda9344d82dd529",
"GL/EGL entry points:src/libANGLE/Context_gles_2_0_autogen.h":
"d8c5ef3d4a9d98e6f57cb926a67537f0",
"GL/EGL entry points:src/libANGLE/Context_gles_3_0_autogen.h":
"0727abfe5305f87e09e76ca46b804ee3",
"GL/EGL entry points:src/libANGLE/Context_gles_3_1_autogen.h":
"5ccae982f020320b1e29cf8eecd8c303",
"GL/EGL entry points:src/libANGLE/Context_gles_ext_autogen.h":
"fa7fa484b2e60817fffafdc30601ae43",
"GL/EGL entry points:src/libANGLE/validationES1_autogen.h":
"8d3131d2bf2e6f521f46b44e64a6bff9",
"GL/EGL entry points:src/libANGLE/validationES2_autogen.h":
......@@ -146,7 +154,7 @@
"GL/EGL/WGL loader:scripts/generate_loader.py":
"5a7cd014230fe04664d9613e65399d42",
"GL/EGL/WGL loader:scripts/registry_xml.py":
"7f043b31380aa2fb0c82e65f802f8cf1",
"be904202ce40755daac33faf4123b9b9",
"GL/EGL/WGL loader:scripts/wgl.xml":
"aa96419c582af2f6673430e2847693f4",
"GL/EGL/WGL loader:src/libEGL/egl_loader_autogen.cpp":
......
......@@ -787,7 +787,7 @@ void Context::deletePaths(GLuint first, GLsizei range)
mState.mPathManager->deletePaths(first, range);
}
bool Context::isPath(GLuint path) const
GLboolean Context::isPath(GLuint path)
{
const auto *pathObj = mState.mPathManager->getPath(path);
if (pathObj == nullptr)
......@@ -1015,7 +1015,7 @@ void Context::getObjectLabel(GLenum identifier,
GLuint name,
GLsizei bufSize,
GLsizei *length,
GLchar *label) const
GLchar *label)
{
gl::LabeledObject *object = getLabeledObject(identifier, name);
ASSERT(object != nullptr);
......@@ -1024,10 +1024,7 @@ void Context::getObjectLabel(GLenum identifier,
GetObjectLabelBase(objectLabel, bufSize, length, label);
}
void Context::getObjectPtrLabel(const void *ptr,
GLsizei bufSize,
GLsizei *length,
GLchar *label) const
void Context::getObjectPtrLabel(const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label)
{
gl::LabeledObject *object = getLabeledObjectFromPtr(ptr);
ASSERT(object != nullptr);
......@@ -1036,7 +1033,7 @@ void Context::getObjectPtrLabel(const void *ptr,
GetObjectLabelBase(objectLabel, bufSize, length, label);
}
bool Context::isSampler(GLuint samplerName) const
GLboolean Context::isSampler(GLuint samplerName)
{
return mState.mSamplerManager->isSampler(samplerName);
}
......@@ -3017,6 +3014,16 @@ void Context::initExtensionStrings()
mRequestableExtensionString = mergeExtensionStrings(mRequestableExtensionStrings);
}
const GLubyte *Context::getString(GLenum name)
{
return static_cast<const Context *>(this)->getString(name);
}
const GLubyte *Context::getStringi(GLenum name, GLuint index)
{
return static_cast<const Context *>(this)->getStringi(name, index);
}
const GLubyte *Context::getString(GLenum name) const
{
switch (name)
......@@ -6331,7 +6338,7 @@ void Context::genVertexArrays(GLsizei n, GLuint *arrays)
}
}
bool Context::isVertexArray(GLuint array)
GLboolean Context::isVertexArray(GLuint array)
{
if (array == 0)
{
......@@ -6406,7 +6413,7 @@ void Context::genTransformFeedbacks(GLsizei n, GLuint *ids)
}
}
bool Context::isTransformFeedback(GLuint id)
GLboolean Context::isTransformFeedback(GLuint id)
{
if (id == 0)
{
......
......@@ -20,6 +20,10 @@
#include "libANGLE/Caps.h"
#include "libANGLE/Constants.h"
#include "libANGLE/Context_gles_1_0_autogen.h"
#include "libANGLE/Context_gles_2_0_autogen.h"
#include "libANGLE/Context_gles_3_0_autogen.h"
#include "libANGLE/Context_gles_3_1_autogen.h"
#include "libANGLE/Context_gles_ext_autogen.h"
#include "libANGLE/Error.h"
#include "libANGLE/HandleAllocator.h"
#include "libANGLE/RefCountObject.h"
......@@ -309,346 +313,24 @@ class Context final : public egl::LabeledObject, angle::NonCopyable, public angl
// These create and destroy methods are merely pass-throughs to
// ResourceManager, which owns these object types
GLuint createBuffer();
GLuint createShader(ShaderType type);
GLuint createProgram();
GLuint createTexture();
GLuint createRenderbuffer();
GLuint genPaths(GLsizei range);
GLuint createProgramPipeline();
GLuint createShaderProgramv(ShaderType type, GLsizei count, const GLchar *const *strings);
GLuint createMemoryObject();
GLuint createSemaphore();
void deleteBuffer(GLuint buffer);
void deleteShader(GLuint shader);
void deleteProgram(GLuint program);
void deleteTexture(GLuint texture);
void deleteRenderbuffer(GLuint renderbuffer);
void deletePaths(GLuint first, GLsizei range);
void deleteProgramPipeline(GLuint pipeline);
void deleteMemoryObject(GLuint memoryObject);
void deleteSemaphore(GLuint semaphore);
// CHROMIUM_path_rendering
bool isPath(GLuint path) const;
bool isPathGenerated(GLuint path) const;
void pathCommands(GLuint path,
GLsizei numCommands,
const GLubyte *commands,
GLsizei numCoords,
GLenum coordType,
const void *coords);
void pathParameterf(GLuint path, GLenum pname, GLfloat value);
void pathParameteri(GLuint path, GLenum pname, GLint value);
void getPathParameterfv(GLuint path, GLenum pname, GLfloat *value);
void getPathParameteriv(GLuint path, GLenum pname, GLint *value);
void pathStencilFunc(GLenum func, GLint ref, GLuint mask);
// GL_CHROMIUM_lose_context
void loseContext(GraphicsResetStatus current, GraphicsResetStatus other);
// Framebuffers are owned by the Context, so these methods do not pass through
GLuint createFramebuffer();
void deleteFramebuffer(GLuint framebuffer);
// NV Fences are owned by the Context.
void genFencesNV(GLsizei n, GLuint *fences);
void deleteFencesNV(GLsizei n, const GLuint *fences);
void finishFenceNV(GLuint fence);
void getFenceivNV(GLuint fence, GLenum pname, GLint *params);
GLboolean isFenceNV(GLuint fence);
void setFenceNV(GLuint fence, GLenum condition);
GLboolean testFenceNV(GLuint fence);
// GL_EXT_memory_object
void deleteMemoryObjects(GLsizei n, const GLuint *memoryObjects);
GLboolean isMemoryObject(GLuint memoryObject);
void createMemoryObjects(GLsizei n, GLuint *memoryObjects);
void memoryObjectParameteriv(GLuint memoryObject, GLenum pname, const GLint *params);
void getMemoryObjectParameteriv(GLuint memoryObject, GLenum pname, GLint *params);
void texStorageMem2D(TextureType target,
GLsizei levels,
GLenum internalFormat,
GLsizei width,
GLsizei height,
GLuint memory,
GLuint64 offset);
void texStorageMem2DMultisample(TextureType target,
GLsizei samples,
GLenum internalFormat,
GLsizei width,
GLsizei height,
GLboolean fixedSampleLocations,
GLuint memory,
GLuint64 offset);
void texStorageMem3D(TextureType target,
GLsizei levels,
GLenum internalFormat,
GLsizei width,
GLsizei height,
GLsizei depth,
GLuint memory,
GLuint64 offset);
void texStorageMem3DMultisample(TextureType target,
GLsizei samples,
GLenum internalFormat,
GLsizei width,
GLsizei height,
GLsizei depth,
GLboolean fixedSampleLocations,
GLuint memory,
GLuint64 offset);
void bufferStorageMem(TextureType target, GLsizeiptr size, GLuint memory, GLuint64 offset);
// GL_EXT_memory_object_fd
void importMemoryFd(GLuint memory, GLuint64 size, HandleType handleType, GLint fd);
// GL_EXT_semaphore
void genSemaphores(GLsizei n, GLuint *semaphores);
void deleteSemaphores(GLsizei n, const GLuint *semaphores);
GLboolean isSemaphore(GLuint semaphore);
void semaphoreParameterui64v(GLuint semaphore, GLenum pname, const GLuint64 *params);
void getSemaphoreParameterui64v(GLuint semaphore, GLenum pname, GLuint64 *params);
void waitSemaphore(GLuint semaphore,
GLuint numBufferBarriers,
const GLuint *buffers,
GLuint numTextureBarriers,
const GLuint *textures,
const GLenum *srcLayouts);
void signalSemaphore(GLuint semaphore,
GLuint numBufferBarriers,
const GLuint *buffers,
GLuint numTextureBarriers,
const GLuint *textures,
const GLenum *dstLayouts);
// GL_EXT_semaphore_fd
void importSemaphoreFd(GLuint semaphore, HandleType handleType, GLint fd);
// GLES1 emulation: Interface to entry points
ANGLE_GLES1_CONTEXT_API
// OpenGL ES 2+
void bindTexture(TextureType target, GLuint handle);
void bindReadFramebuffer(GLuint framebufferHandle);
void bindDrawFramebuffer(GLuint framebufferHandle);
void bindVertexArray(GLuint vertexArrayHandle);
void bindVertexBuffer(GLuint bindingIndex,
GLuint bufferHandle,
GLintptr offset,
GLsizei stride);
void bindSampler(GLuint textureUnit, GLuint samplerHandle);
void bindImageTexture(GLuint unit,
GLuint texture,
GLint level,
GLboolean layered,
GLint layer,
GLenum access,
GLenum format);
void useProgram(GLuint program);
void useProgramStages(GLuint pipeline, GLbitfield stages, GLuint program);
void bindTransformFeedback(GLenum target, GLuint transformFeedbackHandle);
void bindProgramPipeline(GLuint pipelineHandle);
void beginQuery(QueryType target, GLuint query);
void endQuery(QueryType target);
void queryCounter(GLuint id, QueryType target);
void getQueryiv(QueryType target, GLenum pname, GLint *params);
void getQueryivRobust(QueryType target,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void getQueryObjectiv(GLuint id, GLenum pname, GLint *params);
void getQueryObjectivRobust(GLuint id,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void getQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
void getQueryObjectuivRobust(GLuint id,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLuint *params);
void getQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params);
void getQueryObjecti64vRobust(GLuint id,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint64 *params);
void getQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params);
void getQueryObjectui64vRobust(GLuint id,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLuint64 *params);
void vertexAttribDivisor(GLuint index, GLuint divisor);
void vertexBindingDivisor(GLuint bindingIndex, GLuint divisor);
void getBufferParameteriv(BufferBinding target, GLenum pname, GLint *params);
void getBufferParameterivRobust(BufferBinding target,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void getFramebufferAttachmentParameteriv(GLenum target,
GLenum attachment,
GLenum pname,
GLint *params);
void getFramebufferAttachmentParameterivRobust(GLenum target,
GLenum attachment,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void getRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params);
void getRenderbufferParameterivRobust(GLenum target,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void getTexParameterfv(TextureType target, GLenum pname, GLfloat *params);
void getTexParameterfvRobust(TextureType target,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLfloat *params);
void getTexParameteriv(TextureType target, GLenum pname, GLint *params);
void getTexParameterIiv(TextureType target, GLenum pname, GLint *params);
void getTexParameterIuiv(TextureType target, GLenum pname, GLuint *params);
void getTexParameterivRobust(TextureType target,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void getTexParameterIivRobust(TextureType target,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void getTexParameterIuivRobust(TextureType target,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLuint *params);
void getTexLevelParameteriv(TextureTarget target, GLint level, GLenum pname, GLint *params);
void getTexLevelParameterivRobust(TextureTarget target,
GLint level,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void getTexLevelParameterfv(TextureTarget target, GLint level, GLenum pname, GLfloat *params);
void getTexLevelParameterfvRobust(TextureTarget target,
GLint level,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLfloat *params);
void texParameterf(TextureType target, GLenum pname, GLfloat param);
void texParameterfv(TextureType target, GLenum pname, const GLfloat *params);
void texParameterfvRobust(TextureType target,
GLenum pname,
GLsizei bufSize,
const GLfloat *params);
void texParameteri(TextureType target, GLenum pname, GLint param);
void texParameteriv(TextureType target, GLenum pname, const GLint *params);
void texParameterIiv(TextureType target, GLenum pname, const GLint *params);
void texParameterIuiv(TextureType target, GLenum pname, const GLuint *params);
void texParameterivRobust(TextureType target,
GLenum pname,
GLsizei bufSize,
const GLint *params);
void texParameterIivRobust(TextureType target,
GLenum pname,
GLsizei bufSize,
const GLint *params);
void texParameterIuivRobust(TextureType target,
GLenum pname,
GLsizei bufSize,
const GLuint *params);
void samplerParameteri(GLuint sampler, GLenum pname, GLint param);
void samplerParameteriv(GLuint sampler, GLenum pname, const GLint *param);
void samplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param);
void samplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param);
void samplerParameterivRobust(GLuint sampler,
GLenum pname,
GLsizei bufSize,
const GLint *param);
void samplerParameterIivRobust(GLuint sampler,
GLenum pname,
GLsizei bufSize,
const GLint *param);
void samplerParameterIuivRobust(GLuint sampler,
GLenum pname,
GLsizei bufSize,
const GLuint *param);
void samplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
void samplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param);
void samplerParameterfvRobust(GLuint sampler,
GLenum pname,
GLsizei bufSize,
const GLfloat *param);
void getSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
void getSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params);
void getSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params);
void getSamplerParameterivRobust(GLuint sampler,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void getSamplerParameterIivRobust(GLuint sampler,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void getSamplerParameterIuivRobust(GLuint sampler,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLuint *params);
void getSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
void getSamplerParameterfvRobust(GLuint sampler,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLfloat *params);
void programParameteri(GLuint program, GLenum pname, GLint value);
GLuint getProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name);
void getProgramResourceName(GLuint program,
GLenum programInterface,
GLuint index,
GLsizei bufSize,
GLsizei *length,
GLchar *name);
GLint getProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar *name);
void getProgramResourceiv(GLuint program,
GLenum programInterface,
GLuint index,
GLsizei propCount,
const GLenum *props,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void getProgramInterfaceiv(GLuint program,
GLenum programInterface,
GLenum pname,
GLint *params);
void getProgramInterfaceivRobust(GLuint program,
GLenum programInterface,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint *params);
Buffer *getBuffer(GLuint handle) const;
FenceNV *getFenceNV(GLuint handle);
......@@ -669,1093 +351,33 @@ class Context final : public egl::LabeledObject, angle::NonCopyable, public angl
MemoryObject *getMemoryObject(GLuint handle) const;
Semaphore *getSemaphore(GLuint handle) const;
void objectLabel(GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
void objectPtrLabel(const void *ptr, GLsizei length, const GLchar *label);
void getObjectLabel(GLenum identifier,
GLuint name,
GLsizei bufSize,
GLsizei *length,
GLchar *label) const;
void getObjectPtrLabel(const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label) const;
Texture *getTextureByType(TextureType type) const;
Texture *getTextureByTarget(TextureTarget target) const;
Texture *getSamplerTexture(unsigned int sampler, TextureType type) const;
Compiler *getCompiler() const;
bool isSampler(GLuint samplerName) const;
bool isVertexArrayGenerated(GLuint vertexArray);
bool isTransformFeedbackGenerated(GLuint vertexArray);
void getBooleanv(GLenum pname, GLboolean *params);
void getBooleanvRobust(GLenum pname, GLsizei bufSize, GLsizei *length, GLboolean *params);
void getBooleanvImpl(GLenum pname, GLboolean *params);
void getFloatv(GLenum pname, GLfloat *params);
void getFloatvRobust(GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params);
void getFloatvImpl(GLenum pname, GLfloat *params);
void getIntegerv(GLenum pname, GLint *params);
void getIntegervRobust(GLenum pname, GLsizei bufSize, GLsizei *length, GLint *data);
void getIntegervImpl(GLenum pname, GLint *params);
void getInteger64vImpl(GLenum pname, GLint64 *params);
void getPointerv(GLenum pname, void **params) const;
void getPointervRobustANGLERobust(GLenum pname,
GLsizei bufSize,
GLsizei *length,
void **params);
void getBooleani_v(GLenum target, GLuint index, GLboolean *data);
void getBooleani_vRobust(GLenum target,
GLuint index,
GLsizei bufSize,
GLsizei *length,
GLboolean *data);
void getIntegeri_v(GLenum target, GLuint index, GLint *data);
void getIntegeri_vRobust(GLenum target,
GLuint index,
GLsizei bufSize,
GLsizei *length,
GLint *data);
void getInteger64i_v(GLenum target, GLuint index, GLint64 *data);
void getInteger64i_vRobust(GLenum target,
GLuint index,
GLsizei bufSize,
GLsizei *length,
GLint64 *data);
void getUnsignedBytev(GLenum pname, GLubyte *data);
void getUnsignedBytei_v(GLenum target, GLuint index, GLubyte *data);
void activeShaderProgram(GLuint pipeline, GLuint program);
void activeTexture(GLenum texture);
void blendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
void blendEquation(GLenum mode);
void blendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
void blendFunc(GLenum sfactor, GLenum dfactor);
void blendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
void clearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
void clearDepthf(GLfloat depth);
void clearStencil(GLint s);
void colorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
void cullFace(CullFaceMode mode);
void depthFunc(GLenum func);
void depthMask(GLboolean flag);
void depthRangef(GLfloat zNear, GLfloat zFar);
void disable(GLenum cap);
void disableVertexAttribArray(GLuint index);
void enable(GLenum cap);
void enableVertexAttribArray(GLuint index);
void frontFace(GLenum mode);
void hint(GLenum target, GLenum mode);
void lineWidth(GLfloat width);
void pixelStorei(GLenum pname, GLint param);
void polygonOffset(GLfloat factor, GLfloat units);
void sampleCoverage(GLfloat value, GLboolean invert);
void sampleMaski(GLuint maskNumber, GLbitfield mask);
void scissor(GLint x, GLint y, GLsizei width, GLsizei height);
void stencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
void stencilMaskSeparate(GLenum face, GLuint mask);
void stencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass);
void vertexAttrib1f(GLuint index, GLfloat x);
void vertexAttrib1fv(GLuint index, const GLfloat *values);
void vertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
void vertexAttrib2fv(GLuint index, const GLfloat *values);
void vertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
void vertexAttrib3fv(GLuint index, const GLfloat *values);
void vertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
void vertexAttrib4fv(GLuint index, const GLfloat *values);
void vertexAttribFormat(GLuint attribIndex,
GLint size,
VertexAttribType type,
GLboolean normalized,
GLuint relativeOffset);
void vertexAttribIFormat(GLuint attribIndex,
GLint size,
VertexAttribType type,
GLuint relativeOffset);
void vertexAttribBinding(GLuint attribIndex, GLuint bindingIndex);
void vertexAttribPointer(GLuint index,
GLint size,
VertexAttribType type,
GLboolean normalized,
GLsizei stride,
const void *ptr);
void vertexAttribIPointer(GLuint index,
GLint size,
VertexAttribType type,
GLsizei stride,
const void *pointer);
void viewport(GLint x, GLint y, GLsizei width, GLsizei height);
void vertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w);
void vertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
void vertexAttribI4iv(GLuint index, const GLint *v);
void vertexAttribI4uiv(GLuint index, const GLuint *v);
void getVertexAttribiv(GLuint index, GLenum pname, GLint *params);
void getVertexAttribivRobust(GLuint index,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void getVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
void getVertexAttribfvRobust(GLuint index,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLfloat *params);
void getVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
void getVertexAttribIivRobust(GLuint index,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void getVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
void getVertexAttribIuivRobust(GLuint index,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLuint *params);
void getVertexAttribPointerv(GLuint index, GLenum pname, void **pointer);
void getVertexAttribPointervRobust(GLuint index,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
void **pointer);
void debugMessageControl(GLenum source,
GLenum type,
GLenum severity,
GLsizei count,
const GLuint *ids,
GLboolean enabled);
void debugMessageInsert(GLenum source,
GLenum type,
GLuint id,
GLenum severity,
GLsizei length,
const GLchar *buf);
void debugMessageCallback(GLDEBUGPROCKHR callback, const void *userParam);
GLuint getDebugMessageLog(GLuint count,
GLsizei bufSize,
GLenum *sources,
GLenum *types,
GLuint *ids,
GLenum *severities,
GLsizei *lengths,
GLchar *messageLog);
void pushDebugGroup(GLenum source, GLuint id, GLsizei length, const GLchar *message);
void popDebugGroup();
void clear(GLbitfield mask);
void clearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *values);
void clearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *values);
void clearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *values);
void clearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
void drawArrays(PrimitiveMode mode, GLint first, GLsizei count);
void drawArraysInstanced(PrimitiveMode mode, GLint first, GLsizei count, GLsizei instanceCount);
void drawElements(PrimitiveMode mode,
GLsizei count,
DrawElementsType type,
const void *indices);
void drawElementsInstanced(PrimitiveMode mode,
GLsizei count,
DrawElementsType type,
const void *indices,
GLsizei instances);
void drawRangeElements(PrimitiveMode mode,
GLuint start,
GLuint end,
GLsizei count,
DrawElementsType type,
const void *indices);
void drawArraysIndirect(PrimitiveMode mode, const void *indirect);
void drawElementsIndirect(PrimitiveMode mode, DrawElementsType type, const void *indirect);
void blitFramebuffer(GLint srcX0,
GLint srcY0,
GLint srcX1,
GLint srcY1,
GLint dstX0,
GLint dstY0,
GLint dstX1,
GLint dstY1,
GLbitfield mask,
GLenum filter);
void readPixels(GLint x,
GLint y,
GLsizei width,
GLsizei height,
GLenum format,
GLenum type,
void *pixels);
void readPixelsRobust(GLint x,
GLint y,
GLsizei width,
GLsizei height,
GLenum format,
GLenum type,
GLsizei bufSize,
GLsizei *length,
GLsizei *columns,
GLsizei *rows,
void *pixels);
void readnPixelsRobust(GLint x,
GLint y,
GLsizei width,
GLsizei height,
GLenum format,
GLenum type,
GLsizei bufSize,
GLsizei *length,
GLsizei *columns,
GLsizei *rows,
void *data);
void copyTexImage2D(TextureTarget target,
GLint level,
GLenum internalformat,
GLint x,
GLint y,
GLsizei width,
GLsizei height,
GLint border);
void copyTexSubImage2D(TextureTarget target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint x,
GLint y,
GLsizei width,
GLsizei height);
void copyTexSubImage3D(TextureTarget target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint zoffset,
GLint x,
GLint y,
GLsizei width,
GLsizei height);
void framebufferTexture2D(GLenum target,
GLenum attachment,
TextureTarget textarget,
GLuint texture,
GLint level);
void framebufferRenderbuffer(GLenum target,
GLenum attachment,
GLenum renderbuffertarget,
GLuint renderbuffer);
void framebufferTextureLayer(GLenum target,
GLenum attachment,
GLuint texture,
GLint level,
GLint layer);
void framebufferTextureMultiview(GLenum target,
GLenum attachment,
GLuint texture,
GLint level,
GLint baseViewIndex,
GLsizei numViews);
void drawBuffers(GLsizei n, const GLenum *bufs);
void readBuffer(GLenum mode);
void discardFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments);
void invalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments);
void invalidateSubFramebuffer(GLenum target,
GLsizei numAttachments,
const GLenum *attachments,
GLint x,
GLint y,
GLsizei width,
GLsizei height);
void texImage2D(TextureTarget target,
GLint level,
GLint internalformat,
GLsizei width,
GLsizei height,
GLint border,
GLenum format,
GLenum type,
const void *pixels);
void texImage2DRobust(TextureTarget target,
GLint level,
GLint internalformat,
GLsizei width,
GLsizei height,
GLint border,
GLenum format,
GLenum type,
GLsizei bufSize,
const void *pixels);
void texImage3D(TextureTarget target,
GLint level,
GLint internalformat,
GLsizei width,
GLsizei height,
GLsizei depth,
GLint border,
GLenum format,
GLenum type,
const void *pixels);
void texImage3DRobust(TextureTarget target,
GLint level,
GLint internalformat,
GLsizei width,
GLsizei height,
GLsizei depth,
GLint border,
GLenum format,
GLenum type,
GLsizei bufSize,
const void *pixels);
void texSubImage2D(TextureTarget target,
GLint level,
GLint xoffset,
GLint yoffset,
GLsizei width,
GLsizei height,
GLenum format,
GLenum type,
const void *pixels);
void texSubImage2DRobust(TextureTarget target,
GLint level,
GLint xoffset,
GLint yoffset,
GLsizei width,
GLsizei height,
GLenum format,
GLenum type,
GLsizei bufSize,
const void *pixels);
void texSubImage3D(TextureTarget target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint zoffset,
GLsizei width,
GLsizei height,
GLsizei depth,
GLenum format,
GLenum type,
const void *pixels);
void texSubImage3DRobust(TextureTarget target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint zoffset,
GLsizei width,
GLsizei height,
GLsizei depth,
GLenum format,
GLenum type,
GLsizei bufSize,
const void *pixels);
void compressedTexImage2D(TextureTarget target,
GLint level,
GLenum internalformat,
GLsizei width,
GLsizei height,
GLint border,
GLsizei imageSize,
const void *data);
void compressedTexImage2DRobust(TextureTarget target,
GLint level,
GLenum internalformat,
GLsizei width,
GLsizei height,
GLint border,
GLsizei imageSize,
GLsizei dataSize,
const GLvoid *data);
void compressedTexImage3D(TextureTarget target,
GLint level,
GLenum internalformat,
GLsizei width,
GLsizei height,
GLsizei depth,
GLint border,
GLsizei imageSize,
const void *data);
void compressedTexImage3DRobust(TextureTarget target,
GLint level,
GLenum internalformat,
GLsizei width,
GLsizei height,
GLsizei depth,
GLint border,
GLsizei imageSize,
GLsizei dataSize,
const GLvoid *data);
void compressedTexSubImage2D(TextureTarget target,
GLint level,
GLint xoffset,
GLint yoffset,
GLsizei width,
GLsizei height,
GLenum format,
GLsizei imageSize,
const void *data);
void compressedTexSubImage2DRobust(TextureTarget target,
GLint level,
GLint xoffset,
GLint yoffset,
GLsizei width,
GLsizei height,
GLenum format,
GLsizei imageSize,
GLsizei dataSize,
const GLvoid *data);
void compressedTexSubImage3D(TextureTarget target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint zoffset,
GLsizei width,
GLsizei height,
GLsizei depth,
GLenum format,
GLsizei imageSize,
const void *data);
void compressedTexSubImage3DRobust(TextureTarget target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint zoffset,
GLsizei width,
GLsizei height,
GLsizei depth,
GLenum format,
GLsizei imageSize,
GLsizei dataSize,
const GLvoid *data);
void copyTexture(GLuint sourceId,
GLint sourceLevel,
TextureTarget destTarget,
GLuint destId,
GLint destLevel,
GLint internalFormat,
GLenum destType,
GLboolean unpackFlipY,
GLboolean unpackPremultiplyAlpha,
GLboolean unpackUnmultiplyAlpha);
void copyTexture3D(GLuint sourceId,
GLint sourceLevel,
TextureTarget destTarget,
GLuint destId,
GLint destLevel,
GLint internalFormat,
GLenum destType,
GLboolean unpackFlipY,
GLboolean unpackPremultiplyAlpha,
GLboolean unpackUnmultiplyAlpha);
void copySubTexture(GLuint sourceId,
GLint sourceLevel,
TextureTarget destTarget,
GLuint destId,
GLint destLevel,
GLint xoffset,
GLint yoffset,
GLint x,
GLint y,
GLsizei width,
GLsizei height,
GLboolean unpackFlipY,
GLboolean unpackPremultiplyAlpha,
GLboolean unpackUnmultiplyAlpha);
void copySubTexture3D(GLuint sourceId,
GLint sourceLevel,
TextureTarget destTarget,
GLuint destId,
GLint destLevel,
GLint xoffset,
GLint yoffset,
GLint zoffset,
GLint x,
GLint y,
GLint z,
GLsizei width,
GLsizei height,
GLsizei depth,
GLboolean unpackFlipY,
GLboolean unpackPremultiplyAlpha,
GLboolean unpackUnmultiplyAlpha);
void compressedCopyTexture(GLuint sourceId, GLuint destId);
void generateMipmap(TextureType target);
void flush();
void finish();
void getBufferPointerv(BufferBinding target, GLenum pname, void **params);
void getBufferPointervRobust(BufferBinding target,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
void **params);
void *mapBuffer(BufferBinding target, GLenum access);
GLboolean unmapBuffer(BufferBinding target);
void *mapBufferRange(BufferBinding target,
GLintptr offset,
GLsizeiptr length,
GLbitfield access);
void flushMappedBufferRange(BufferBinding target, GLintptr offset, GLsizeiptr length);
void beginTransformFeedback(PrimitiveMode primitiveMode);
bool hasActiveTransformFeedback(GLuint program) const;
void insertEventMarker(GLsizei length, const char *marker);
void pushGroupMarker(GLsizei length, const char *marker);
void popGroupMarker();
void bindUniformLocation(GLuint program, GLint location, const GLchar *name);
void renderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
void renderbufferStorageMultisample(GLenum target,
GLsizei samples,
GLenum internalformat,
GLsizei width,
GLsizei height);
void getSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
// Framebuffers are owned by the Context, so these methods do not pass through
GLuint createFramebuffer();
void deleteFramebuffer(GLuint framebuffer);
// CHROMIUM_framebuffer_mixed_samples
void coverageModulation(GLenum components);
bool hasActiveTransformFeedback(GLuint program) const;
// CHROMIUM_path_rendering
void matrixLoadf(GLenum matrixMode, const GLfloat *matrix);
void matrixLoadIdentity(GLenum matrixMode);
void stencilFillPath(GLuint path, GLenum fillMode, GLuint mask);
void stencilStrokePath(GLuint path, GLint reference, GLuint mask);
void coverFillPath(GLuint path, GLenum coverMode);
void coverStrokePath(GLuint path, GLenum coverMode);
void stencilThenCoverFillPath(GLuint path, GLenum fillMode, GLuint mask, GLenum coverMode);
void stencilThenCoverStrokePath(GLuint path, GLint reference, GLuint mask, GLenum coverMode);
void coverFillPathInstanced(GLsizei numPaths,
GLenum pathNameType,
const void *paths,
GLuint pathBase,
GLenum coverMode,
GLenum transformType,
const GLfloat *transformValues);
void coverStrokePathInstanced(GLsizei numPaths,
GLenum pathNameType,
const void *paths,
GLuint pathBase,
GLenum coverMode,
GLenum transformType,
const GLfloat *transformValues);
void stencilFillPathInstanced(GLsizei numPaths,
GLenum pathNameType,
const void *paths,
GLuint pathBAse,
GLenum fillMode,
GLuint mask,
GLenum transformType,
const GLfloat *transformValues);
void stencilStrokePathInstanced(GLsizei numPaths,
GLenum pathNameType,
const void *paths,
GLuint pathBase,
GLint reference,
GLuint mask,
GLenum transformType,
const GLfloat *transformValues);
void stencilThenCoverFillPathInstanced(GLsizei numPaths,
GLenum pathNameType,
const void *paths,
GLuint pathBase,
GLenum fillMode,
GLuint mask,
GLenum coverMode,
GLenum transformType,
const GLfloat *transformValues);
void stencilThenCoverStrokePathInstanced(GLsizei numPaths,
GLenum pathNameType,
const void *paths,
GLuint pathBase,
GLint reference,
GLuint mask,
GLenum coverMode,
GLenum transformType,
const GLfloat *transformValues);
void bindFragmentInputLocation(GLuint program, GLint location, const GLchar *name);
void programPathFragmentInputGen(GLuint program,
GLint location,
GLenum genMode,
GLint components,
const GLfloat *coeffs);
void bufferData(BufferBinding target, GLsizeiptr size, const void *data, BufferUsage usage);
void bufferSubData(BufferBinding target, GLintptr offset, GLsizeiptr size, const void *data);
void attachShader(GLuint program, GLuint shader);
void bindAttribLocation(GLuint program, GLuint index, const GLchar *name);
void bindBuffer(BufferBinding target, GLuint buffer);
void bindBufferBase(BufferBinding target, GLuint index, GLuint buffer);
void bindBufferRange(BufferBinding target,
GLuint index,
GLuint buffer,
GLintptr offset,
GLsizeiptr size);
void bindFramebuffer(GLenum target, GLuint framebuffer);
void bindRenderbuffer(GLenum target, GLuint renderbuffer);
void texStorage2DMultisample(TextureType target,
GLsizei samples,
GLenum internalformat,
GLsizei width,
GLsizei height,
GLboolean fixedsamplelocations);
void texStorage3DMultisample(TextureType target,
GLsizei samples,
GLenum internalformat,
GLsizei width,
GLsizei height,
GLsizei depth,
GLboolean fixedsamplelocations);
void getMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
void getMultisamplefvRobust(GLenum pname,
GLuint index,
GLsizei bufSize,
GLsizei *length,
GLfloat *val);
void copyBufferSubData(BufferBinding readTarget,
BufferBinding writeTarget,
GLintptr readOffset,
GLintptr writeOffset,
GLsizeiptr size);
GLenum checkFramebufferStatus(GLenum target);
void compileShader(GLuint shader);
void deleteBuffers(GLsizei n, const GLuint *buffers);
void deleteFramebuffers(GLsizei n, const GLuint *framebuffers);
void deleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
void deleteTextures(GLsizei n, const GLuint *textures);
void detachShader(GLuint program, GLuint shader);
void genBuffers(GLsizei n, GLuint *buffers);
void genFramebuffers(GLsizei n, GLuint *framebuffers);
void genRenderbuffers(GLsizei n, GLuint *renderbuffers);
void genTextures(GLsizei n, GLuint *textures);
void getActiveAttrib(GLuint program,
GLuint index,
GLsizei bufsize,
GLsizei *length,
GLint *size,
GLenum *type,
GLchar *name);
void getActiveUniform(GLuint program,
GLuint index,
GLsizei bufsize,
GLsizei *length,
GLint *size,
GLenum *type,
GLchar *name);
void getAttachedShaders(GLuint program, GLsizei maxcount, GLsizei *count, GLuint *shaders);
GLint getAttribLocation(GLuint program, const GLchar *name);
void getProgramiv(GLuint program, GLenum pname, GLint *params);
void getProgramivRobust(GLuint program,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void getProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params);
void getProgramInfoLog(GLuint program, GLsizei bufsize, GLsizei *length, GLchar *infolog);
void getProgramPipelineInfoLog(GLuint pipeline,
GLsizei bufSize,
GLsizei *length,
GLchar *infoLog);
void getShaderiv(GLuint shader, GLenum pname, GLint *params);
void getShaderivRobust(GLuint shader,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void getShaderInfoLog(GLuint shader, GLsizei bufsize, GLsizei *length, GLchar *infolog);
void getShaderPrecisionFormat(GLenum shadertype,
GLenum precisiontype,
GLint *range,
GLint *precision);
void getShaderSource(GLuint shader, GLsizei bufsize, GLsizei *length, GLchar *source);
void getUniformfv(GLuint program, GLint location, GLfloat *params);
void getUniformfvRobust(GLuint program,
GLint location,
GLsizei bufSize,
GLsizei *length,
GLfloat *params);
void getUniformiv(GLuint program, GLint location, GLint *params);
void getUniformivRobust(GLuint program,
GLint location,
GLsizei bufSize,
GLsizei *length,
GLint *params);
GLint getUniformLocation(GLuint program, const GLchar *name);
GLboolean isBuffer(GLuint buffer);
GLboolean isEnabled(GLenum cap);
GLboolean isFramebuffer(GLuint framebuffer);
GLboolean isProgram(GLuint program);
GLboolean isRenderbuffer(GLuint renderbuffer);
GLboolean isShader(GLuint shader);
GLboolean isTexture(GLuint texture);
void linkProgram(GLuint program);
void releaseShaderCompiler();
void shaderBinary(GLsizei n,
const GLuint *shaders,
GLenum binaryformat,
const void *binary,
GLsizei length);
void shaderSource(GLuint shader,
GLsizei count,
const GLchar *const *string,
const GLint *length);
void stencilFunc(GLenum func, GLint ref, GLuint mask);
void stencilMask(GLuint mask);
void stencilOp(GLenum fail, GLenum zfail, GLenum zpass);
void uniform1f(GLint location, GLfloat x);
void uniform1fv(GLint location, GLsizei count, const GLfloat *v);
void uniform1i(GLint location, GLint x);
void uniform1iv(GLint location, GLsizei count, const GLint *v);
void uniform2f(GLint location, GLfloat x, GLfloat y);
void uniform2fv(GLint location, GLsizei count, const GLfloat *v);
void uniform2i(GLint location, GLint x, GLint y);
void uniform2iv(GLint location, GLsizei count, const GLint *v);
void uniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z);
void uniform3fv(GLint location, GLsizei count, const GLfloat *v);
void uniform3i(GLint location, GLint x, GLint y, GLint z);
void uniform3iv(GLint location, GLsizei count, const GLint *v);
void uniform4f(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
void uniform4fv(GLint location, GLsizei count, const GLfloat *v);
void uniform4i(GLint location, GLint x, GLint y, GLint z, GLint w);
void uniform4iv(GLint location, GLsizei count, const GLint *v);
void uniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
void uniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
void uniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
void validateProgram(GLuint program);
void validateProgramPipeline(GLuint pipeline);
void genQueries(GLsizei n, GLuint *ids);
void deleteQueries(GLsizei n, const GLuint *ids);
GLboolean isQuery(GLuint id);
void uniform1ui(GLint location, GLuint v0);
void uniform2ui(GLint location, GLuint v0, GLuint v1);
void uniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
void uniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
void uniform1uiv(GLint location, GLsizei count, const GLuint *value);
void uniform2uiv(GLint location, GLsizei count, const GLuint *value);
void uniform3uiv(GLint location, GLsizei count, const GLuint *value);
void uniform4uiv(GLint location, GLsizei count, const GLuint *value);
void uniformMatrix2x3fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
void uniformMatrix3x2fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
void uniformMatrix2x4fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
void uniformMatrix4x2fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
void uniformMatrix3x4fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
void uniformMatrix4x3fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
void deleteVertexArrays(GLsizei n, const GLuint *arrays);
void genVertexArrays(GLsizei n, GLuint *arrays);
bool isVertexArray(GLuint array);
void endTransformFeedback();
void transformFeedbackVaryings(GLuint program,
GLsizei count,
const GLchar *const *varyings,
GLenum bufferMode);
void getTransformFeedbackVarying(GLuint program,
GLuint index,
GLsizei bufSize,
GLsizei *length,
GLsizei *size,
GLenum *type,
GLchar *name);
void deleteTransformFeedbacks(GLsizei n, const GLuint *ids);
void genTransformFeedbacks(GLsizei n, GLuint *ids);
bool isTransformFeedback(GLuint id);
void pauseTransformFeedback();
void resumeTransformFeedback();
void getProgramBinary(GLuint program,
GLsizei bufSize,
GLsizei *length,
GLenum *binaryFormat,
void *binary);
void programBinary(GLuint program, GLenum binaryFormat, const void *binary, GLsizei length);
void getUniformuiv(GLuint program, GLint location, GLuint *params);
void getUniformuivRobust(GLuint program,
GLint location,
GLsizei bufSize,
GLsizei *length,
GLuint *params);
GLint getFragDataLocation(GLuint program, const GLchar *name);
void getUniformIndices(GLuint program,
GLsizei uniformCount,
const GLchar *const *uniformNames,
GLuint *uniformIndices);
void getActiveUniformsiv(GLuint program,
GLsizei uniformCount,
const GLuint *uniformIndices,
GLenum pname,
GLint *params);
GLuint getUniformBlockIndex(GLuint program, const GLchar *uniformBlockName);
void getActiveUniformBlockiv(GLuint program,
GLuint uniformBlockIndex,
GLenum pname,
GLint *params);
void getActiveUniformBlockivRobust(GLuint program,
GLuint uniformBlockIndex,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void getActiveUniformBlockName(GLuint program,
GLuint uniformBlockIndex,
GLsizei bufSize,
GLsizei *length,
GLchar *uniformBlockName);
void uniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
GLsync fenceSync(GLenum condition, GLbitfield flags);
GLboolean isSync(GLsync sync);
void deleteSync(GLsync sync);
GLenum clientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
void waitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
void getInteger64v(GLenum pname, GLint64 *params);
void getInteger64vRobust(GLenum pname, GLsizei bufSize, GLsizei *length, GLint64 *data);
void getBufferParameteri64v(BufferBinding target, GLenum pname, GLint64 *params);
void getBufferParameteri64vRobust(BufferBinding target,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint64 *params);
void genSamplers(GLsizei count, GLuint *samplers);
void deleteSamplers(GLsizei count, const GLuint *samplers);
void getInternalformativ(GLenum target,
GLenum internalformat,
GLenum pname,
GLsizei bufSize,
GLint *params);
void getInternalformativRobust(GLenum target,
GLenum internalformat,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void programUniform1i(GLuint program, GLint location, GLint v0);
void programUniform2i(GLuint program, GLint location, GLint v0, GLint v1);
void programUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
void programUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
void programUniform1ui(GLuint program, GLint location, GLuint v0);
void programUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1);
void programUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
void programUniform4ui(GLuint program,
GLint location,
GLuint v0,
GLuint v1,
GLuint v2,
GLuint v3);
void programUniform1f(GLuint program, GLint location, GLfloat v0);
void programUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1);
void programUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
void programUniform4f(GLuint program,
GLint location,
GLfloat v0,
GLfloat v1,
GLfloat v2,
GLfloat v3);
void programUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value);
void programUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value);
void programUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value);
void programUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value);
void programUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
void programUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
void programUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
void programUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value);
void programUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
void programUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
void programUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
void programUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value);
void programUniformMatrix2fv(GLuint program,
GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
void programUniformMatrix3fv(GLuint program,
GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
void programUniformMatrix4fv(GLuint program,
GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
void programUniformMatrix2x3fv(GLuint program,
GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
void programUniformMatrix3x2fv(GLuint program,
GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
void programUniformMatrix2x4fv(GLuint program,
GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
void programUniformMatrix4x2fv(GLuint program,
GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
void programUniformMatrix3x4fv(GLuint program,
GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
void programUniformMatrix4x3fv(GLuint program,
GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
void deleteProgramPipelines(GLsizei n, const GLuint *pipelines);
void genProgramPipelines(GLsizei n, GLuint *pipelines);
GLboolean isProgramPipeline(GLuint pipeline);
void getTranslatedShaderSource(GLuint shader, GLsizei bufsize, GLsizei *length, GLchar *source);
void getnUniformfv(GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
void getnUniformfvRobust(GLuint program,
GLint location,
GLsizei bufSize,
GLsizei *length,
GLfloat *params);
void getnUniformiv(GLuint program, GLint location, GLsizei bufSize, GLint *params);
void getnUniformivRobust(GLuint program,
GLint location,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void getnUniformuivRobust(GLuint program,
GLint location,
GLsizei bufSize,
GLsizei *length,
GLuint *params);
void readnPixels(GLint x,
GLint y,
GLsizei width,
GLsizei height,
GLenum format,
GLenum type,
GLsizei bufSize,
void *data);
void eGLImageTargetTexture2D(TextureType target, GLeglImageOES image);
void eGLImageTargetRenderbufferStorage(GLenum target, GLeglImageOES image);
void getFramebufferParameteriv(GLenum target, GLenum pname, GLint *params);
void getFramebufferParameterivRobust(GLenum target,
GLenum pname,
GLsizei bufSize,
GLsizei *length,
GLint *params);
void framebufferParameteri(GLenum target, GLenum pname, GLint param);
void dispatchCompute(GLuint numGroupsX, GLuint numGroupsY, GLuint numGroupsZ);
void dispatchComputeIndirect(GLintptr indirect);
void texStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
void texStorage2D(TextureType target,
GLsizei levels,
GLenum internalFormat,
GLsizei width,
GLsizei height);
void texStorage3D(TextureType target,
GLsizei levels,
GLenum internalFormat,
GLsizei width,
GLsizei height,
GLsizei depth);
void memoryBarrier(GLbitfield barriers);
void memoryBarrierByRegion(GLbitfield barriers);
void multiDrawArrays(PrimitiveMode mode,
const GLint *firsts,
const GLsizei *counts,
GLsizei drawcount);
void multiDrawArraysInstanced(PrimitiveMode mode,
const GLint *firsts,
const GLsizei *counts,
const GLsizei *instanceCounts,
GLsizei drawcount);
void multiDrawElements(PrimitiveMode mode,
const GLsizei *counts,
DrawElementsType type,
const GLvoid *const *indices,
GLsizei drawcount);
void multiDrawElementsInstanced(PrimitiveMode mode,
const GLsizei *counts,
DrawElementsType type,
const GLvoid *const *indices,
const GLsizei *instanceCounts,
GLsizei drawcount);
void provokingVertex(ProvokingVertex provokeMode);
void framebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level);
// EXT_blend_func_extended
void bindFragDataLocationIndexed(GLuint program,
GLuint colorNumber,
GLuint index,
const char *name);
void bindFragDataLocation(GLuint program, GLuint colorNumber, const char *name);
int getFragDataIndex(GLuint program, const char *name);
int getProgramResourceLocationIndex(GLuint program, GLenum programInterface, const char *name);
// GLES emulation: Interface to entry points
ANGLE_GLES_1_0_CONTEXT_API
ANGLE_GLES_2_0_CONTEXT_API
ANGLE_GLES_3_0_CONTEXT_API
ANGLE_GLES_3_1_CONTEXT_API
ANGLE_GLES_EXT_CONTEXT_API
// Consumes an error.
void handleError(GLenum errorCode,
......@@ -1766,12 +388,10 @@ class Context final : public egl::LabeledObject, angle::NonCopyable, public angl
void validationError(GLenum errorCode, const char *message);
GLenum getError();
void markContextLost(GraphicsResetStatus status);
bool isContextLost() const { return mContextLost; }
GLenum getGraphicsResetStatus();
GLenum getGraphicsResetStrategy() const { return mResetStrategy; }
bool isResetNotificationEnabled();
......@@ -1785,7 +405,6 @@ class Context final : public egl::LabeledObject, angle::NonCopyable, public angl
size_t getExtensionStringCount() const;
bool isExtensionRequestable(const char *name);
void requestExtension(const char *name);
size_t getRequestableExtensionStringCount() const;
rx::ContextImpl *getImplementation() const { return mImplementation.get(); }
......@@ -1871,7 +490,6 @@ class Context final : public egl::LabeledObject, angle::NonCopyable, public angl
static int TexCoordArrayIndex(unsigned int unit);
// GL_KHR_parallel_shader_compile
void maxShaderCompilerThreads(GLuint count);
std::shared_ptr<angle::WorkerThreadPool> getWorkerThreadPool() const { return mThreadPool; }
const StateCache &getStateCache() const { return mStateCache; }
......
......@@ -10,7 +10,7 @@
#ifndef ANGLE_CONTEXT_GLES_1_0_AUTOGEN_H_
#define ANGLE_CONTEXT_GLES_1_0_AUTOGEN_H_
#define ANGLE_GLES1_CONTEXT_API \
#define ANGLE_GLES_1_0_CONTEXT_API \
void alphaFunc(AlphaTestFunc funcPacked, GLfloat ref); \
void alphaFuncx(AlphaTestFunc funcPacked, GLfixed ref); \
void clearColorx(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); \
......@@ -104,35 +104,6 @@
void translatef(GLfloat x, GLfloat y, GLfloat z); \
void translatex(GLfixed x, GLfixed y, GLfixed z); \
void vertexPointer(GLint size, VertexAttribType typePacked, GLsizei stride, \
const void *pointer); \
/* GL_OES_draw_texture */ \
void drawTexf(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); \
void drawTexfv(const GLfloat *coords); \
void drawTexi(GLint x, GLint y, GLint z, GLint width, GLint height); \
void drawTexiv(const GLint *coords); \
void drawTexs(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); \
void drawTexsv(const GLshort *coords); \
void drawTexx(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); \
void drawTexxv(const GLfixed *coords); \
/* GL_OES_framebuffer_object */ \
/* GL_OES_matrix_palette */ \
void currentPaletteMatrix(GLuint matrixpaletteindex); \
void loadPaletteFromModelViewMatrix(); \
void matrixIndexPointer(GLint size, GLenum type, GLsizei stride, const void *pointer); \
void weightPointer(GLint size, GLenum type, GLsizei stride, const void *pointer); \
/* GL_OES_point_size_array */ \
void pointSizePointer(VertexAttribType typePacked, GLsizei stride, const void *pointer); \
/* GL_OES_query_matrix */ \
GLbitfield queryMatrixx(GLfixed *mantissa, GLint *exponent); \
/* GL_OES_texture_cube_map */ \
void getTexGenfv(GLenum coord, GLenum pname, GLfloat *params); \
void getTexGeniv(GLenum coord, GLenum pname, GLint *params); \
void getTexGenxv(GLenum coord, GLenum pname, GLfixed *params); \
void texGenf(GLenum coord, GLenum pname, GLfloat param); \
void texGenfv(GLenum coord, GLenum pname, const GLfloat *params); \
void texGeni(GLenum coord, GLenum pname, GLint param); \
void texGeniv(GLenum coord, GLenum pname, const GLint *params); \
void texGenx(GLenum coord, GLenum pname, GLfixed param); \
void texGenxv(GLenum coord, GLenum pname, const GLfixed *params);
const void *pointer);
#endif // ANGLE_CONTEXT_API_1_0_AUTOGEN_H_
// GENERATED FILE - DO NOT EDIT.
// Generated by generate_entry_points.py using data from gl.xml.
//
// Copyright 2019 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// Context_gles_2_0_autogen.h: Creates a macro for interfaces in Context.
#ifndef ANGLE_CONTEXT_GLES_2_0_AUTOGEN_H_
#define ANGLE_CONTEXT_GLES_2_0_AUTOGEN_H_
#define ANGLE_GLES_2_0_CONTEXT_API \
void activeTexture(GLenum texture); \
void attachShader(GLuint program, GLuint shader); \
void bindAttribLocation(GLuint program, GLuint index, const GLchar *name); \
void bindBuffer(BufferBinding targetPacked, GLuint buffer); \
void bindFramebuffer(GLenum target, GLuint framebuffer); \
void bindRenderbuffer(GLenum target, GLuint renderbuffer); \
void bindTexture(TextureType targetPacked, GLuint texture); \
void blendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); \
void blendEquation(GLenum mode); \
void blendEquationSeparate(GLenum modeRGB, GLenum modeAlpha); \
void blendFunc(GLenum sfactor, GLenum dfactor); \
void blendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, \
GLenum dfactorAlpha); \
void bufferData(BufferBinding targetPacked, GLsizeiptr size, const void *data, \
BufferUsage usagePacked); \
void bufferSubData(BufferBinding targetPacked, GLintptr offset, GLsizeiptr size, \
const void *data); \
GLenum checkFramebufferStatus(GLenum target); \
void clear(GLbitfield mask); \
void clearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); \
void clearDepthf(GLfloat d); \
void clearStencil(GLint s); \
void colorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha); \
void compileShader(GLuint shader); \
void compressedTexImage2D(TextureTarget targetPacked, GLint level, GLenum internalformat, \
GLsizei width, GLsizei height, GLint border, GLsizei imageSize, \
const void *data); \
void compressedTexSubImage2D(TextureTarget targetPacked, GLint level, GLint xoffset, \
GLint yoffset, GLsizei width, GLsizei height, GLenum format, \
GLsizei imageSize, const void *data); \
void copyTexImage2D(TextureTarget targetPacked, GLint level, GLenum internalformat, GLint x, \
GLint y, GLsizei width, GLsizei height, GLint border); \
void copyTexSubImage2D(TextureTarget targetPacked, GLint level, GLint xoffset, GLint yoffset, \
GLint x, GLint y, GLsizei width, GLsizei height); \
GLuint createProgram(); \
GLuint createShader(ShaderType typePacked); \
void cullFace(CullFaceMode modePacked); \
void deleteBuffers(GLsizei n, const GLuint *buffers); \
void deleteFramebuffers(GLsizei n, const GLuint *framebuffers); \
void deleteProgram(GLuint program); \
void deleteRenderbuffers(GLsizei n, const GLuint *renderbuffers); \
void deleteShader(GLuint shader); \
void deleteTextures(GLsizei n, const GLuint *textures); \
void depthFunc(GLenum func); \
void depthMask(GLboolean flag); \
void depthRangef(GLfloat n, GLfloat f); \
void detachShader(GLuint program, GLuint shader); \
void disable(GLenum cap); \
void disableVertexAttribArray(GLuint index); \
void drawArrays(PrimitiveMode modePacked, GLint first, GLsizei count); \
void drawElements(PrimitiveMode modePacked, GLsizei count, DrawElementsType typePacked, \
const void *indices); \
void enable(GLenum cap); \
void enableVertexAttribArray(GLuint index); \
void finish(); \
void flush(); \
void framebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, \
GLuint renderbuffer); \
void framebufferTexture2D(GLenum target, GLenum attachment, TextureTarget textargetPacked, \
GLuint texture, GLint level); \
void frontFace(GLenum mode); \
void genBuffers(GLsizei n, GLuint *buffers); \
void genFramebuffers(GLsizei n, GLuint *framebuffers); \
void genRenderbuffers(GLsizei n, GLuint *renderbuffers); \
void genTextures(GLsizei n, GLuint *textures); \
void generateMipmap(TextureType targetPacked); \
void getActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, \
GLint *size, GLenum *type, GLchar *name); \
void getActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, \
GLint *size, GLenum *type, GLchar *name); \
void getAttachedShaders(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders); \
GLint getAttribLocation(GLuint program, const GLchar *name); \
void getBooleanv(GLenum pname, GLboolean *data); \
void getBufferParameteriv(BufferBinding targetPacked, GLenum pname, GLint *params); \
GLenum getError(); \
void getFloatv(GLenum pname, GLfloat *data); \
void getFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, \
GLint *params); \
void getIntegerv(GLenum pname, GLint *data); \
void getProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog); \
void getProgramiv(GLuint program, GLenum pname, GLint *params); \
void getRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params); \
void getShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog); \
void getShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint *range, \
GLint *precision); \
void getShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source); \
void getShaderiv(GLuint shader, GLenum pname, GLint *params); \
const GLubyte *getString(GLenum name); \
void getTexParameterfv(TextureType targetPacked, GLenum pname, GLfloat *params); \
void getTexParameteriv(TextureType targetPacked, GLenum pname, GLint *params); \
GLint getUniformLocation(GLuint program, const GLchar *name); \
void getUniformfv(GLuint program, GLint location, GLfloat *params); \
void getUniformiv(GLuint program, GLint location, GLint *params); \
void getVertexAttribPointerv(GLuint index, GLenum pname, void **pointer); \
void getVertexAttribfv(GLuint index, GLenum pname, GLfloat *params); \
void getVertexAttribiv(GLuint index, GLenum pname, GLint *params); \
void hint(GLenum target, GLenum mode); \
GLboolean isBuffer(GLuint buffer); \
GLboolean isEnabled(GLenum cap); \
GLboolean isFramebuffer(GLuint framebuffer); \
GLboolean isProgram(GLuint program); \
GLboolean isRenderbuffer(GLuint renderbuffer); \
GLboolean isShader(GLuint shader); \
GLboolean isTexture(GLuint texture); \
void lineWidth(GLfloat width); \
void linkProgram(GLuint program); \
void pixelStorei(GLenum pname, GLint param); \
void polygonOffset(GLfloat factor, GLfloat units); \
void readPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, \
void *pixels); \
void releaseShaderCompiler(); \
void renderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); \
void sampleCoverage(GLfloat value, GLboolean invert); \
void scissor(GLint x, GLint y, GLsizei width, GLsizei height); \
void shaderBinary(GLsizei count, const GLuint *shaders, GLenum binaryformat, \
const void *binary, GLsizei length); \
void shaderSource(GLuint shader, GLsizei count, const GLchar *const *string, \
const GLint *length); \
void stencilFunc(GLenum func, GLint ref, GLuint mask); \
void stencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask); \
void stencilMask(GLuint mask); \
void stencilMaskSeparate(GLenum face, GLuint mask); \
void stencilOp(GLenum fail, GLenum zfail, GLenum zpass); \
void stencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass); \
void texImage2D(TextureTarget targetPacked, GLint level, GLint internalformat, GLsizei width, \
GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels); \
void texParameterf(TextureType targetPacked, GLenum pname, GLfloat param); \
void texParameterfv(TextureType targetPacked, GLenum pname, const GLfloat *params); \
void texParameteri(TextureType targetPacked, GLenum pname, GLint param); \
void texParameteriv(TextureType targetPacked, GLenum pname, const GLint *params); \
void texSubImage2D(TextureTarget targetPacked, GLint level, GLint xoffset, GLint yoffset, \
GLsizei width, GLsizei height, GLenum format, GLenum type, \
const void *pixels); \
void uniform1f(GLint location, GLfloat v0); \
void uniform1fv(GLint location, GLsizei count, const GLfloat *value); \
void uniform1i(GLint location, GLint v0); \
void uniform1iv(GLint location, GLsizei count, const GLint *value); \
void uniform2f(GLint location, GLfloat v0, GLfloat v1); \
void uniform2fv(GLint location, GLsizei count, const GLfloat *value); \
void uniform2i(GLint location, GLint v0, GLint v1); \
void uniform2iv(GLint location, GLsizei count, const GLint *value); \
void uniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2); \
void uniform3fv(GLint location, GLsizei count, const GLfloat *value); \
void uniform3i(GLint location, GLint v0, GLint v1, GLint v2); \
void uniform3iv(GLint location, GLsizei count, const GLint *value); \
void uniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3); \
void uniform4fv(GLint location, GLsizei count, const GLfloat *value); \
void uniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3); \
void uniform4iv(GLint location, GLsizei count, const GLint *value); \
void uniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, \
const GLfloat *value); \
void uniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, \
const GLfloat *value); \
void uniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, \
const GLfloat *value); \
void useProgram(GLuint program); \
void validateProgram(GLuint program); \
void vertexAttrib1f(GLuint index, GLfloat x); \
void vertexAttrib1fv(GLuint index, const GLfloat *v); \
void vertexAttrib2f(GLuint index, GLfloat x, GLfloat y); \
void vertexAttrib2fv(GLuint index, const GLfloat *v); \
void vertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z); \
void vertexAttrib3fv(GLuint index, const GLfloat *v); \
void vertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); \
void vertexAttrib4fv(GLuint index, const GLfloat *v); \
void vertexAttribPointer(GLuint index, GLint size, VertexAttribType typePacked, \
GLboolean normalized, GLsizei stride, const void *pointer); \
void viewport(GLint x, GLint y, GLsizei width, GLsizei height);
#endif // ANGLE_CONTEXT_API_2_0_AUTOGEN_H_
// GENERATED FILE - DO NOT EDIT.
// Generated by generate_entry_points.py using data from gl.xml.
//
// Copyright 2019 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// Context_gles_3_0_autogen.h: Creates a macro for interfaces in Context.
#ifndef ANGLE_CONTEXT_GLES_3_0_AUTOGEN_H_
#define ANGLE_CONTEXT_GLES_3_0_AUTOGEN_H_
#define ANGLE_GLES_3_0_CONTEXT_API \
void beginQuery(QueryType targetPacked, GLuint id); \
void beginTransformFeedback(PrimitiveMode primitiveModePacked); \
void bindBufferBase(BufferBinding targetPacked, GLuint index, GLuint buffer); \
void bindBufferRange(BufferBinding targetPacked, GLuint index, GLuint buffer, GLintptr offset, \
GLsizeiptr size); \
void bindSampler(GLuint unit, GLuint sampler); \
void bindTransformFeedback(GLenum target, GLuint id); \
void bindVertexArray(GLuint array); \
void blitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, \
GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); \
void clearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil); \
void clearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value); \
void clearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value); \
void clearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value); \
GLenum clientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout); \
void compressedTexImage3D(TextureTarget targetPacked, GLint level, GLenum internalformat, \
GLsizei width, GLsizei height, GLsizei depth, GLint border, \
GLsizei imageSize, const void *data); \
void compressedTexSubImage3D(TextureTarget targetPacked, GLint level, GLint xoffset, \
GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, \
GLsizei depth, GLenum format, GLsizei imageSize, \
const void *data); \
void copyBufferSubData(BufferBinding readTargetPacked, BufferBinding writeTargetPacked, \
GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); \
void copyTexSubImage3D(TextureTarget targetPacked, GLint level, GLint xoffset, GLint yoffset, \
GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); \
void deleteQueries(GLsizei n, const GLuint *ids); \
void deleteSamplers(GLsizei count, const GLuint *samplers); \
void deleteSync(GLsync sync); \
void deleteTransformFeedbacks(GLsizei n, const GLuint *ids); \
void deleteVertexArrays(GLsizei n, const GLuint *arrays); \
void drawArraysInstanced(PrimitiveMode modePacked, GLint first, GLsizei count, \
GLsizei instancecount); \
void drawBuffers(GLsizei n, const GLenum *bufs); \
void drawElementsInstanced(PrimitiveMode modePacked, GLsizei count, \
DrawElementsType typePacked, const void *indices, \
GLsizei instancecount); \
void drawRangeElements(PrimitiveMode modePacked, GLuint start, GLuint end, GLsizei count, \
DrawElementsType typePacked, const void *indices); \
void endQuery(QueryType targetPacked); \
void endTransformFeedback(); \
GLsync fenceSync(GLenum condition, GLbitfield flags); \
void flushMappedBufferRange(BufferBinding targetPacked, GLintptr offset, GLsizeiptr length); \
void framebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, \
GLint layer); \
void genQueries(GLsizei n, GLuint *ids); \
void genSamplers(GLsizei count, GLuint *samplers); \
void genTransformFeedbacks(GLsizei n, GLuint *ids); \
void genVertexArrays(GLsizei n, GLuint *arrays); \
void getActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, \
GLsizei *length, GLchar *uniformBlockName); \
void getActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, \
GLint *params); \
void getActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, \
GLenum pname, GLint *params); \
void getBufferParameteri64v(BufferBinding targetPacked, GLenum pname, GLint64 *params); \
void getBufferPointerv(BufferBinding targetPacked, GLenum pname, void **params); \
GLint getFragDataLocation(GLuint program, const GLchar *name); \
void getInteger64i_v(GLenum target, GLuint index, GLint64 *data); \
void getInteger64v(GLenum pname, GLint64 *data); \
void getIntegeri_v(GLenum target, GLuint index, GLint *data); \
void getInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, \
GLint *params); \
void getProgramBinary(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, \
void *binary); \
void getQueryObjectuiv(GLuint id, GLenum pname, GLuint *params); \
void getQueryiv(QueryType targetPacked, GLenum pname, GLint *params); \
void getSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params); \
void getSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params); \
const GLubyte *getStringi(GLenum name, GLuint index); \
void getSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values); \
void getTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, \
GLsizei *length, GLsizei *size, GLenum *type, GLchar *name); \
GLuint getUniformBlockIndex(GLuint program, const GLchar *uniformBlockName); \
void getUniformIndices(GLuint program, GLsizei uniformCount, \
const GLchar *const *uniformNames, GLuint *uniformIndices); \
void getUniformuiv(GLuint program, GLint location, GLuint *params); \
void getVertexAttribIiv(GLuint index, GLenum pname, GLint *params); \
void getVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params); \
void invalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments); \
void invalidateSubFramebuffer(GLenum target, GLsizei numAttachments, \
const GLenum *attachments, GLint x, GLint y, GLsizei width, \
GLsizei height); \
GLboolean isQuery(GLuint id); \
GLboolean isSampler(GLuint sampler); \
GLboolean isSync(GLsync sync); \
GLboolean isTransformFeedback(GLuint id); \
GLboolean isVertexArray(GLuint array); \
void *mapBufferRange(BufferBinding targetPacked, GLintptr offset, GLsizeiptr length, \
GLbitfield access); \
void pauseTransformFeedback(); \
void programBinary(GLuint program, GLenum binaryFormat, const void *binary, GLsizei length); \
void programParameteri(GLuint program, GLenum pname, GLint value); \
void readBuffer(GLenum src); \
void renderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, \
GLsizei width, GLsizei height); \
void resumeTransformFeedback(); \
void samplerParameterf(GLuint sampler, GLenum pname, GLfloat param); \
void samplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param); \
void samplerParameteri(GLuint sampler, GLenum pname, GLint param); \
void samplerParameteriv(GLuint sampler, GLenum pname, const GLint *param); \
void texImage3D(TextureTarget targetPacked, GLint level, GLint internalformat, GLsizei width, \
GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, \
const void *pixels); \
void texStorage2D(TextureType targetPacked, GLsizei levels, GLenum internalformat, \
GLsizei width, GLsizei height); \
void texStorage3D(TextureType targetPacked, GLsizei levels, GLenum internalformat, \
GLsizei width, GLsizei height, GLsizei depth); \
void texSubImage3D(TextureTarget targetPacked, GLint level, GLint xoffset, GLint yoffset, \
GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, \
GLenum type, const void *pixels); \
void transformFeedbackVaryings(GLuint program, GLsizei count, const GLchar *const *varyings, \
GLenum bufferMode); \
void uniform1ui(GLint location, GLuint v0); \
void uniform1uiv(GLint location, GLsizei count, const GLuint *value); \
void uniform2ui(GLint location, GLuint v0, GLuint v1); \
void uniform2uiv(GLint location, GLsizei count, const GLuint *value); \
void uniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2); \
void uniform3uiv(GLint location, GLsizei count, const GLuint *value); \
void uniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3); \
void uniform4uiv(GLint location, GLsizei count, const GLuint *value); \
void uniformBlockBinding(GLuint program, GLuint uniformBlockIndex, \
GLuint uniformBlockBinding); \
void uniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, \
const GLfloat *value); \
void uniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, \
const GLfloat *value); \
void uniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, \
const GLfloat *value); \
void uniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, \
const GLfloat *value); \
void uniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, \
const GLfloat *value); \
void uniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, \
const GLfloat *value); \
GLboolean unmapBuffer(BufferBinding targetPacked); \
void vertexAttribDivisor(GLuint index, GLuint divisor); \
void vertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w); \
void vertexAttribI4iv(GLuint index, const GLint *v); \
void vertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); \
void vertexAttribI4uiv(GLuint index, const GLuint *v); \
void vertexAttribIPointer(GLuint index, GLint size, VertexAttribType typePacked, \
GLsizei stride, const void *pointer); \
void waitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
#endif // ANGLE_CONTEXT_API_3_0_AUTOGEN_H_
// GENERATED FILE - DO NOT EDIT.
// Generated by generate_entry_points.py using data from gl.xml.
//
// Copyright 2019 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// Context_gles_3_1_autogen.h: Creates a macro for interfaces in Context.
#ifndef ANGLE_CONTEXT_GLES_3_1_AUTOGEN_H_
#define ANGLE_CONTEXT_GLES_3_1_AUTOGEN_H_
#define ANGLE_GLES_3_1_CONTEXT_API \
void activeShaderProgram(GLuint pipeline, GLuint program); \
void bindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, \
GLint layer, GLenum access, GLenum format); \
void bindProgramPipeline(GLuint pipeline); \
void bindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride); \
GLuint createShaderProgramv(ShaderType typePacked, GLsizei count, \
const GLchar *const *strings); \
void deleteProgramPipelines(GLsizei n, const GLuint *pipelines); \
void dispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z); \
void dispatchComputeIndirect(GLintptr indirect); \
void drawArraysIndirect(PrimitiveMode modePacked, const void *indirect); \
void drawElementsIndirect(PrimitiveMode modePacked, DrawElementsType typePacked, \
const void *indirect); \
void framebufferParameteri(GLenum target, GLenum pname, GLint param); \
void genProgramPipelines(GLsizei n, GLuint *pipelines); \
void getBooleani_v(GLenum target, GLuint index, GLboolean *data); \
void getFramebufferParameteriv(GLenum target, GLenum pname, GLint *params); \
void getMultisamplefv(GLenum pname, GLuint index, GLfloat *val); \
void getProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, \
GLint *params); \
void getProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, \
GLchar *infoLog); \
void getProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params); \
GLuint getProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name); \
GLint getProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar *name); \
void getProgramResourceName(GLuint program, GLenum programInterface, GLuint index, \
GLsizei bufSize, GLsizei *length, GLchar *name); \
void getProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, \
GLsizei propCount, const GLenum *props, GLsizei bufSize, \
GLsizei *length, GLint *params); \
void getTexLevelParameterfv(TextureTarget targetPacked, GLint level, GLenum pname, \
GLfloat *params); \
void getTexLevelParameteriv(TextureTarget targetPacked, GLint level, GLenum pname, \
GLint *params); \
GLboolean isProgramPipeline(GLuint pipeline); \
void memoryBarrier(GLbitfield barriers); \
void memoryBarrierByRegion(GLbitfield barriers); \
void programUniform1f(GLuint program, GLint location, GLfloat v0); \
void programUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value); \
void programUniform1i(GLuint program, GLint location, GLint v0); \
void programUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value); \
void programUniform1ui(GLuint program, GLint location, GLuint v0); \
void programUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value); \
void programUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1); \
void programUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value); \
void programUniform2i(GLuint program, GLint location, GLint v0, GLint v1); \
void programUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value); \
void programUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1); \
void programUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value); \
void programUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2); \
void programUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value); \
void programUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2); \
void programUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value); \
void programUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2); \
void programUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value); \
void programUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, \
GLfloat v3); \
void programUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value); \
void programUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3); \
void programUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value); \
void programUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, \
GLuint v3); \
void programUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value); \
void programUniformMatrix2fv(GLuint program, GLint location, GLsizei count, \
GLboolean transpose, const GLfloat *value); \
void programUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, \
GLboolean transpose, const GLfloat *value); \
void programUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, \
GLboolean transpose, const GLfloat *value); \
void programUniformMatrix3fv(GLuint program, GLint location, GLsizei count, \
GLboolean transpose, const GLfloat *value); \
void programUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, \
GLboolean transpose, const GLfloat *value); \
void programUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, \
GLboolean transpose, const GLfloat *value); \
void programUniformMatrix4fv(GLuint program, GLint location, GLsizei count, \
GLboolean transpose, const GLfloat *value); \
void programUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, \
GLboolean transpose, const GLfloat *value); \
void programUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, \
GLboolean transpose, const GLfloat *value); \
void sampleMaski(GLuint maskNumber, GLbitfield mask); \
void texStorage2DMultisample(TextureType targetPacked, GLsizei samples, GLenum internalformat, \
GLsizei width, GLsizei height, GLboolean fixedsamplelocations); \
void useProgramStages(GLuint pipeline, GLbitfield stages, GLuint program); \
void validateProgramPipeline(GLuint pipeline); \
void vertexAttribBinding(GLuint attribindex, GLuint bindingindex); \
void vertexAttribFormat(GLuint attribindex, GLint size, VertexAttribType typePacked, \
GLboolean normalized, GLuint relativeoffset); \
void vertexAttribIFormat(GLuint attribindex, GLint size, VertexAttribType typePacked, \
GLuint relativeoffset); \
void vertexBindingDivisor(GLuint bindingindex, GLuint divisor);
#endif // ANGLE_CONTEXT_API_3_1_AUTOGEN_H_
// GENERATED FILE - DO NOT EDIT.
// Generated by generate_entry_points.py using data from gl.xml.
//
// Copyright 2019 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// Context_gles_ext_autogen.h: Creates a macro for interfaces in Context.
#ifndef ANGLE_CONTEXT_GLES_EXT_AUTOGEN_H_
#define ANGLE_CONTEXT_GLES_EXT_AUTOGEN_H_
#define ANGLE_GLES_EXT_CONTEXT_API \
\
/* GLES1 Extensions */ \
\
/* GL_OES_draw_texture */ \
void drawTexf(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); \
void drawTexfv(const GLfloat *coords); \
void drawTexi(GLint x, GLint y, GLint z, GLint width, GLint height); \
void drawTexiv(const GLint *coords); \
void drawTexs(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); \
void drawTexsv(const GLshort *coords); \
void drawTexx(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); \
void drawTexxv(const GLfixed *coords); \
/* GL_OES_framebuffer_object */ \
/* GL_OES_matrix_palette */ \
void currentPaletteMatrix(GLuint matrixpaletteindex); \
void loadPaletteFromModelViewMatrix(); \
void matrixIndexPointer(GLint size, GLenum type, GLsizei stride, const void *pointer); \
void weightPointer(GLint size, GLenum type, GLsizei stride, const void *pointer); \
/* GL_OES_point_size_array */ \
void pointSizePointer(VertexAttribType typePacked, GLsizei stride, const void *pointer); \
/* GL_OES_query_matrix */ \
GLbitfield queryMatrixx(GLfixed *mantissa, GLint *exponent); \
/* GL_OES_texture_cube_map */ \
void getTexGenfv(GLenum coord, GLenum pname, GLfloat *params); \
void getTexGeniv(GLenum coord, GLenum pname, GLint *params); \
void getTexGenxv(GLenum coord, GLenum pname, GLfixed *params); \
void texGenf(GLenum coord, GLenum pname, GLfloat param); \
void texGenfv(GLenum coord, GLenum pname, const GLfloat *params); \
void texGeni(GLenum coord, GLenum pname, GLint param); \
void texGeniv(GLenum coord, GLenum pname, const GLint *params); \
void texGenx(GLenum coord, GLenum pname, GLfixed param); \
void texGenxv(GLenum coord, GLenum pname, const GLfixed *params); \
\
/* ANGLE Extensions */ \
\
/* GL_ANGLE_copy_texture_3d */ \
void copyTexture3D(GLuint sourceId, GLint sourceLevel, TextureTarget destTargetPacked, \
GLuint destId, GLint destLevel, GLint internalFormat, GLenum destType, \
GLboolean unpackFlipY, GLboolean unpackPremultiplyAlpha, \
GLboolean unpackUnmultiplyAlpha); \
void copySubTexture3D(GLuint sourceId, GLint sourceLevel, TextureTarget destTargetPacked, \
GLuint destId, GLint destLevel, GLint xoffset, GLint yoffset, \
GLint zoffset, GLint x, GLint y, GLint z, GLint width, GLint height, \
GLint depth, GLboolean unpackFlipY, GLboolean unpackPremultiplyAlpha, \
GLboolean unpackUnmultiplyAlpha); \
/* GL_ANGLE_request_extension */ \
void requestExtension(const GLchar *name); \
/* GL_ANGLE_robust_client_memory */ \
void getBooleanvRobust(GLenum pname, GLsizei bufSize, GLsizei *length, GLboolean *params); \
void getBufferParameterivRobust(BufferBinding targetPacked, GLenum pname, GLsizei bufSize, \
GLsizei *length, GLint *params); \
void getFloatvRobust(GLenum pname, GLsizei bufSize, GLsizei *length, GLfloat *params); \
void getFramebufferAttachmentParameterivRobust(GLenum target, GLenum attachment, GLenum pname, \
GLsizei bufSize, GLsizei *length, \
GLint *params); \
void getIntegervRobust(GLenum pname, GLsizei bufSize, GLsizei *length, GLint *data); \
void getProgramivRobust(GLuint program, GLenum pname, GLsizei bufSize, GLsizei *length, \
GLint *params); \
void getRenderbufferParameterivRobust(GLenum target, GLenum pname, GLsizei bufSize, \
GLsizei *length, GLint *params); \
void getShaderivRobust(GLuint shader, GLenum pname, GLsizei bufSize, GLsizei *length, \
GLint *params); \
void getTexParameterfvRobust(TextureType targetPacked, GLenum pname, GLsizei bufSize, \
GLsizei *length, GLfloat *params); \
void getTexParameterivRobust(TextureType targetPacked, GLenum pname, GLsizei bufSize, \
GLsizei *length, GLint *params); \
void getUniformfvRobust(GLuint program, GLint location, GLsizei bufSize, GLsizei *length, \
GLfloat *params); \
void getUniformivRobust(GLuint program, GLint location, GLsizei bufSize, GLsizei *length, \
GLint *params); \
void getVertexAttribfvRobust(GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, \
GLfloat *params); \
void getVertexAttribivRobust(GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, \
GLint *params); \
void getVertexAttribPointervRobust(GLuint index, GLenum pname, GLsizei bufSize, \
GLsizei *length, void **pointer); \
void readPixelsRobust(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, \
GLenum type, GLsizei bufSize, GLsizei *length, GLsizei *columns, \
GLsizei *rows, void *pixels); \
void texImage2DRobust(TextureTarget targetPacked, GLint level, GLint internalformat, \
GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, \
GLsizei bufSize, const void *pixels); \
void texParameterfvRobust(TextureType targetPacked, GLenum pname, GLsizei bufSize, \
const GLfloat *params); \
void texParameterivRobust(TextureType targetPacked, GLenum pname, GLsizei bufSize, \
const GLint *params); \
void texSubImage2DRobust(TextureTarget targetPacked, GLint level, GLint xoffset, \
GLint yoffset, GLsizei width, GLsizei height, GLenum format, \
GLenum type, GLsizei bufSize, const void *pixels); \
void texImage3DRobust(TextureTarget targetPacked, GLint level, GLint internalformat, \
GLsizei width, GLsizei height, GLsizei depth, GLint border, \
GLenum format, GLenum type, GLsizei bufSize, const void *pixels); \
void texSubImage3DRobust(TextureTarget targetPacked, GLint level, GLint xoffset, \
GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, \
GLsizei depth, GLenum format, GLenum type, GLsizei bufSize, \
const void *pixels); \
void compressedTexImage2DRobust( \
TextureTarget targetPacked, GLint level, GLenum internalformat, GLsizei width, \
GLsizei height, GLint border, GLsizei imageSize, GLsizei dataSize, const GLvoid *data); \
void compressedTexSubImage2DRobust( \
TextureTarget targetPacked, GLint level, GLsizei xoffset, GLsizei yoffset, GLsizei width, \
GLsizei height, GLenum format, GLsizei imageSize, GLsizei dataSize, const GLvoid *data); \
void compressedTexImage3DRobust(TextureTarget targetPacked, GLint level, \
GLenum internalformat, GLsizei width, GLsizei height, \
GLsizei depth, GLint border, GLsizei imageSize, \
GLsizei dataSize, const GLvoid *data); \
void compressedTexSubImage3DRobust(TextureTarget targetPacked, GLint level, GLint xoffset, \
GLint yoffset, GLint zoffset, GLsizei width, \
GLsizei height, GLsizei depth, GLenum format, \
GLsizei imageSize, GLsizei dataSize, const GLvoid *data); \
void getQueryivRobust(QueryType targetPacked, GLenum pname, GLsizei bufSize, GLsizei *length, \
GLint *params); \
void getQueryObjectuivRobust(GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, \
GLuint *params); \
void getBufferPointervRobust(BufferBinding targetPacked, GLenum pname, GLsizei bufSize, \
GLsizei *length, void **params); \
void getIntegeri_vRobust(GLenum target, GLuint index, GLsizei bufSize, GLsizei *length, \
GLint *data); \
void getInternalformativRobust(GLenum target, GLenum internalformat, GLenum pname, \
GLsizei bufSize, GLsizei *length, GLint *params); \
void getVertexAttribIivRobust(GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, \
GLint *params); \
void getVertexAttribIuivRobust(GLuint index, GLenum pname, GLsizei bufSize, GLsizei *length, \
GLuint *params); \
void getUniformuivRobust(GLuint program, GLint location, GLsizei bufSize, GLsizei *length, \
GLuint *params); \
void getActiveUniformBlockivRobust(GLuint program, GLuint uniformBlockIndex, GLenum pname, \
GLsizei bufSize, GLsizei *length, GLint *params); \
void getInteger64vRobust(GLenum pname, GLsizei bufSize, GLsizei *length, GLint64 *data); \
void getInteger64i_vRobust(GLenum target, GLuint index, GLsizei bufSize, GLsizei *length, \
GLint64 *data); \
void getBufferParameteri64vRobust(BufferBinding targetPacked, GLenum pname, GLsizei bufSize, \
GLsizei *length, GLint64 *params); \
void samplerParameterivRobust(GLuint sampler, GLuint pname, GLsizei bufSize, \
const GLint *param); \
void samplerParameterfvRobust(GLuint sampler, GLenum pname, GLsizei bufSize, \
const GLfloat *param); \
void getSamplerParameterivRobust(GLuint sampler, GLenum pname, GLsizei bufSize, \
GLsizei *length, GLint *params); \
void getSamplerParameterfvRobust(GLuint sampler, GLenum pname, GLsizei bufSize, \
GLsizei *length, GLfloat *params); \
void getFramebufferParameterivRobust(GLuint sampler, GLenum pname, GLsizei bufSize, \
GLsizei *length, GLint *params); \
void getProgramInterfaceivRobust(GLuint program, GLenum programInterface, GLenum pname, \
GLsizei bufSize, GLsizei *length, GLint *params); \
void getBooleani_vRobust(GLenum target, GLuint index, GLsizei bufSize, GLsizei *length, \
GLboolean *data); \
void getMultisamplefvRobust(GLenum pname, GLuint index, GLsizei bufSize, GLsizei *length, \
GLfloat *val); \
void getTexLevelParameterivRobust(TextureTarget targetPacked, GLint level, GLenum pname, \
GLsizei bufSize, GLsizei *length, GLint *params); \
void getTexLevelParameterfvRobust(TextureTarget targetPacked, GLint level, GLenum pname, \
GLsizei bufSize, GLsizei *length, GLfloat *params); \
void getPointervRobustANGLERobust(GLenum pname, GLsizei bufSize, GLsizei *length, \
void **params); \
void readnPixelsRobust(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, \
GLenum type, GLsizei bufSize, GLsizei *length, GLsizei *columns, \
GLsizei *rows, void *data); \
void getnUniformfvRobust(GLuint program, GLint location, GLsizei bufSize, GLsizei *length, \
GLfloat *params); \
void getnUniformivRobust(GLuint program, GLint location, GLsizei bufSize, GLsizei *length, \
GLint *params); \
void getnUniformuivRobust(GLuint program, GLint location, GLsizei bufSize, GLsizei *length, \
GLuint *params); \
void texParameterIivRobust(TextureType targetPacked, GLenum pname, GLsizei bufSize, \
const GLint *params); \
void texParameterIuivRobust(TextureType targetPacked, GLenum pname, GLsizei bufSize, \
const GLuint *params); \
void getTexParameterIivRobust(TextureType targetPacked, GLenum pname, GLsizei bufSize, \
GLsizei *length, GLint *params); \
void getTexParameterIuivRobust(TextureType targetPacked, GLenum pname, GLsizei bufSize, \
GLsizei *length, GLuint *params); \
void samplerParameterIivRobust(GLuint sampler, GLenum pname, GLsizei bufSize, \
const GLint *param); \
void samplerParameterIuivRobust(GLuint sampler, GLenum pname, GLsizei bufSize, \
const GLuint *param); \
void getSamplerParameterIivRobust(GLuint sampler, GLenum pname, GLsizei bufSize, \
GLsizei *length, GLint *params); \
void getSamplerParameterIuivRobust(GLuint sampler, GLenum pname, GLsizei bufSize, \
GLsizei *length, GLuint *params); \
void getQueryObjectivRobust(GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, \
GLint *params); \
void getQueryObjecti64vRobust(GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, \
GLint64 *params); \
void getQueryObjectui64vRobust(GLuint id, GLenum pname, GLsizei bufSize, GLsizei *length, \
GLuint64 *params); \
/* GL_CHROMIUM_bind_uniform_location */ \
void bindUniformLocation(GLuint program, GLint location, const GLchar *name); \
/* GL_CHROMIUM_copy_compressed_texture */ \
void compressedCopyTexture(GLuint sourceId, GLuint destId); \
/* GL_CHROMIUM_copy_texture */ \
void copyTexture(GLuint sourceId, GLint sourceLevel, TextureTarget destTargetPacked, \
GLuint destId, GLint destLevel, GLint internalFormat, GLenum destType, \
GLboolean unpackFlipY, GLboolean unpackPremultiplyAlpha, \
GLboolean unpackUnmultiplyAlpha); \
void copySubTexture(GLuint sourceId, GLint sourceLevel, TextureTarget destTargetPacked, \
GLuint destId, GLint destLevel, GLint xoffset, GLint yoffset, GLint x, \
GLint y, GLint width, GLint height, GLboolean unpackFlipY, \
GLboolean unpackPremultiplyAlpha, GLboolean unpackUnmultiplyAlpha); \
/* GL_CHROMIUM_framebuffer_mixed_samples */ \
void coverageModulation(GLenum components); \
void matrixLoadf(GLenum matrixMode, const GLfloat *matrix); \
void matrixLoadIdentity(GLenum matrixMode); \
/* GL_CHROMIUM_lose_context */ \
void loseContext(GraphicsResetStatus currentPacked, GraphicsResetStatus otherPacked); \
/* GL_CHROMIUM_path_rendering */ \
GLuint genPaths(GLsizei range); \
void deletePaths(GLuint first, GLsizei range); \
GLboolean isPath(GLuint path); \
void pathCommands(GLuint path, GLsizei numCommands, const GLubyte *commands, \
GLsizei numCoords, GLenum coordType, const void *coords); \
void pathParameterf(GLuint path, GLenum pname, GLfloat value); \
void pathParameteri(GLuint path, GLenum pname, GLint value); \
void getPathParameterfv(GLuint path, GLenum pname, GLfloat *value); \
void getPathParameteriv(GLuint path, GLenum pname, GLint *value); \
void pathStencilFunc(GLenum func, GLint ref, GLuint mask); \
void stencilFillPath(GLuint path, GLenum fillMode, GLuint mask); \
void stencilStrokePath(GLuint path, GLint reference, GLuint mask); \
void coverFillPath(GLuint path, GLenum coverMode); \
void coverStrokePath(GLuint path, GLenum coverMode); \
void stencilThenCoverFillPath(GLuint path, GLenum fillMode, GLuint mask, GLenum coverMode); \
void stencilThenCoverStrokePath(GLuint path, GLint reference, GLuint mask, GLenum coverMode); \
void coverFillPathInstanced(GLsizei numPath, GLenum pathNameType, const void *paths, \
GLuint pathBase, GLenum coverMode, GLenum transformType, \
const GLfloat *transformValues); \
void coverStrokePathInstanced(GLsizei numPath, GLenum pathNameType, const void *paths, \
GLuint pathBase, GLenum coverMode, GLenum transformType, \
const GLfloat *transformValues); \
void stencilStrokePathInstanced(GLsizei numPath, GLenum pathNameType, const void *paths, \
GLuint pathBase, GLint reference, GLuint mask, \
GLenum transformType, const GLfloat *transformValues); \
void stencilFillPathInstanced(GLsizei numPaths, GLenum pathNameType, const void *paths, \
GLuint pathBase, GLenum fillMode, GLuint mask, \
GLenum transformType, const GLfloat *transformValues); \
void stencilThenCoverFillPathInstanced(GLsizei numPaths, GLenum pathNameType, \
const void *paths, GLuint pathBase, GLenum fillMode, \
GLuint mask, GLenum coverMode, GLenum transformType, \
const GLfloat *transformValues); \
void stencilThenCoverStrokePathInstanced(GLsizei numPaths, GLenum pathNameType, \
const void *paths, GLuint pathBase, GLint reference, \
GLuint mask, GLenum coverMode, GLenum transformType, \
const GLfloat *transformValues); \
void bindFragmentInputLocation(GLuint programs, GLint location, const GLchar *name); \
void programPathFragmentInputGen(GLuint program, GLint location, GLenum genMode, \
GLint components, const GLfloat *coeffs); \
\
/* GLES2+ Extensions */ \
\
/* GL_ANGLE_framebuffer_blit */ \
/* GL_ANGLE_framebuffer_multisample */ \
/* GL_ANGLE_instanced_arrays */ \
/* GL_ANGLE_multi_draw */ \
void multiDrawArrays(PrimitiveMode modePacked, const GLint *firsts, const GLsizei *counts, \
GLsizei drawcount); \
void multiDrawArraysInstanced(PrimitiveMode modePacked, const GLint *firsts, \
const GLsizei *counts, const GLsizei *instanceCounts, \
GLsizei drawcount); \
void multiDrawElements(PrimitiveMode modePacked, const GLsizei *counts, \
DrawElementsType typePacked, const GLvoid *const *indices, \
GLsizei drawcount); \
void multiDrawElementsInstanced(PrimitiveMode modePacked, const GLsizei *counts, \
DrawElementsType typePacked, const GLvoid *const *indices, \
const GLsizei *instanceCounts, GLsizei drawcount); \
/* GL_ANGLE_provoking_vertex */ \
void provokingVertex(ProvokingVertex modePacked); \
/* GL_ANGLE_texture_multisample */ \
/* GL_ANGLE_translated_shader_source */ \
void getTranslatedShaderSource(GLuint shader, GLsizei bufsize, GLsizei *length, \
GLchar *source); \
/* GL_EXT_blend_func_extended */ \
void bindFragDataLocation(GLuint program, GLuint color, const GLchar *name); \
void bindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, \
const GLchar *name); \
GLint getFragDataIndex(GLuint program, const GLchar *name); \
GLint getProgramResourceLocationIndex(GLuint program, GLenum programInterface, \
const GLchar *name); \
/* GL_EXT_debug_marker */ \
void insertEventMarker(GLsizei length, const GLchar *marker); \
void popGroupMarker(); \
void pushGroupMarker(GLsizei length, const GLchar *marker); \
/* GL_EXT_discard_framebuffer */ \
void discardFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments); \
/* GL_EXT_disjoint_timer_query */ \
void getQueryObjecti64v(GLuint id, GLenum pname, GLint64 *params); \
void getQueryObjectiv(GLuint id, GLenum pname, GLint *params); \
void getQueryObjectui64v(GLuint id, GLenum pname, GLuint64 *params); \
void queryCounter(GLuint id, QueryType targetPacked); \
/* GL_EXT_draw_buffers */ \
/* GL_EXT_geometry_shader */ \
void framebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level); \
/* GL_EXT_instanced_arrays */ \
/* GL_EXT_map_buffer_range */ \
/* GL_EXT_memory_object */ \
void bufferStorageMem(TextureType targetPacked, GLsizeiptr size, GLuint memory, \
GLuint64 offset); \
void createMemoryObjects(GLsizei n, GLuint *memoryObjects); \
void deleteMemoryObjects(GLsizei n, const GLuint *memoryObjects); \
void getMemoryObjectParameteriv(GLuint memoryObject, GLenum pname, GLint *params); \
void getUnsignedBytev(GLenum pname, GLubyte *data); \
void getUnsignedBytei_v(GLenum target, GLuint index, GLubyte *data); \
GLboolean isMemoryObject(GLuint memoryObject); \
void memoryObjectParameteriv(GLuint memoryObject, GLenum pname, const GLint *params); \
void texStorageMem2D(TextureType targetPacked, GLsizei levels, GLenum internalFormat, \
GLsizei width, GLsizei height, GLuint memory, GLuint64 offset); \
void texStorageMem2DMultisample( \
TextureType targetPacked, GLsizei samples, GLenum internalFormat, GLsizei width, \
GLsizei height, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset); \
void texStorageMem3D(TextureType targetPacked, GLsizei levels, GLenum internalFormat, \
GLsizei width, GLsizei height, GLsizei depth, GLuint memory, \
GLuint64 offset); \
void texStorageMem3DMultisample(TextureType targetPacked, GLsizei samples, \
GLenum internalFormat, GLsizei width, GLsizei height, \
GLsizei depth, GLboolean fixedSampleLocations, GLuint memory, \
GLuint64 offset); \
/* GL_EXT_memory_object_fd */ \
void importMemoryFd(GLuint memory, GLuint64 size, HandleType handleTypePacked, GLint fd); \
/* GL_EXT_occlusion_query_boolean */ \
/* GL_EXT_robustness */ \
GLenum getGraphicsResetStatus(); \
void getnUniformfv(GLuint program, GLint location, GLsizei bufSize, GLfloat *params); \
void getnUniformiv(GLuint program, GLint location, GLsizei bufSize, GLint *params); \
void readnPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, \
GLsizei bufSize, void *data); \
/* GL_EXT_semaphore */ \
void deleteSemaphores(GLsizei n, const GLuint *semaphores); \
void genSemaphores(GLsizei n, GLuint *semaphores); \
void getSemaphoreParameterui64v(GLuint semaphore, GLenum pname, GLuint64 *params); \
GLboolean isSemaphore(GLuint semaphore); \
void semaphoreParameterui64v(GLuint semaphore, GLenum pname, const GLuint64 *params); \
void signalSemaphore(GLuint semaphore, GLuint numBufferBarriers, const GLuint *buffers, \
GLuint numTextureBarriers, const GLuint *textures, \
const GLenum *dstLayouts); \
void waitSemaphore(GLuint semaphore, GLuint numBufferBarriers, const GLuint *buffers, \
GLuint numTextureBarriers, const GLuint *textures, \
const GLenum *srcLayouts); \
/* GL_EXT_semaphore_fd */ \
void importSemaphoreFd(GLuint semaphore, HandleType handleTypePacked, GLint fd); \
/* GL_EXT_texture_storage */ \
void texStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); \
/* GL_KHR_debug */ \
void debugMessageCallback(GLDEBUGPROCKHR callback, const void *userParam); \
void debugMessageControl(GLenum source, GLenum type, GLenum severity, GLsizei count, \
const GLuint *ids, GLboolean enabled); \
void debugMessageInsert(GLenum source, GLenum type, GLuint id, GLenum severity, \
GLsizei length, const GLchar *buf); \
GLuint getDebugMessageLog(GLuint count, GLsizei bufSize, GLenum *sources, GLenum *types, \
GLuint *ids, GLenum *severities, GLsizei *lengths, \
GLchar *messageLog); \
void getObjectLabel(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, \
GLchar *label); \
void getObjectPtrLabel(const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label); \
void objectLabel(GLenum identifier, GLuint name, GLsizei length, const GLchar *label); \
void objectPtrLabel(const void *ptr, GLsizei length, const GLchar *label); \
void popDebugGroup(); \
void pushDebugGroup(GLenum source, GLuint id, GLsizei length, const GLchar *message); \
/* GL_KHR_parallel_shader_compile */ \
void maxShaderCompilerThreads(GLuint count); \
/* GL_NV_fence */ \
void deleteFencesNV(GLsizei n, const GLuint *fences); \
void finishFenceNV(GLuint fence); \
void genFencesNV(GLsizei n, GLuint *fences); \
void getFenceivNV(GLuint fence, GLenum pname, GLint *params); \
GLboolean isFenceNV(GLuint fence); \
void setFenceNV(GLuint fence, GLenum condition); \
GLboolean testFenceNV(GLuint fence); \
/* GL_OES_EGL_image */ \
void eGLImageTargetRenderbufferStorage(GLenum target, GLeglImageOES image); \
void eGLImageTargetTexture2D(TextureType targetPacked, GLeglImageOES image); \
/* GL_OES_get_program_binary */ \
/* GL_OES_mapbuffer */ \
void *mapBuffer(BufferBinding targetPacked, GLenum access); \
/* GL_OES_texture_border_clamp */ \
void getSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params); \
void getSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params); \
void getTexParameterIiv(TextureType targetPacked, GLenum pname, GLint *params); \
void getTexParameterIuiv(TextureType targetPacked, GLenum pname, GLuint *params); \
void samplerParameterIiv(GLuint sampler, GLenum pname, const GLint *param); \
void samplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *param); \
void texParameterIiv(TextureType targetPacked, GLenum pname, const GLint *params); \
void texParameterIuiv(TextureType targetPacked, GLenum pname, const GLuint *params); \
/* GL_OES_texture_storage_multisample_2d_array */ \
void texStorage3DMultisample(TextureType targetPacked, GLsizei samples, GLenum internalformat, \
GLsizei width, GLsizei height, GLsizei depth, \
GLboolean fixedsamplelocations); \
/* GL_OES_vertex_array_object */ \
/* GL_OVR_multiview */ \
void framebufferTextureMultiview(GLenum target, GLenum attachment, GLuint texture, \
GLint level, GLint baseViewIndex, GLsizei numViews); \
/* GL_OVR_multiview2 */
#endif // ANGLE_CONTEXT_API_EXT_AUTOGEN_H_
......@@ -178,6 +178,10 @@ libangle_sources = [
"src/libANGLE/Context.cpp",
"src/libANGLE/Context_gles_1_0.cpp",
"src/libANGLE/Context_gles_1_0_autogen.h",
"src/libANGLE/Context_gles_2_0_autogen.h",
"src/libANGLE/Context_gles_3_0_autogen.h",
"src/libANGLE/Context_gles_3_1_autogen.h",
"src/libANGLE/Context_gles_ext_autogen.h",
"src/libANGLE/Context.h",
"src/libANGLE/Context.inl.h",
"src/libANGLE/Debug.cpp",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment