Windows Desktop GL Implementation

Bug: angleproject:3620
Change-Id: I4ef4ab3ee145e5ce9b1ebf0c2d61d0777db72c43
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1678405
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
This commit is contained in:
Clemen Deng
2019-06-18 13:02:03 -04:00
committed by Commit Bot
parent d822e560f2
commit 7558e836ef
75 changed files with 27057 additions and 270 deletions

View File

@@ -765,6 +765,30 @@ angle_shared_library("libGLESv2") {
]
}
if (is_win) {
angle_shared_library("openGL32") {
sources = opengl32_sources
output_name = "openGL32${angle_libs_suffix}"
configs += [
":angle_gl_visibility_config",
":debug_annotations_config",
":gl_prototypes",
]
defines = [ "OPENGL32_IMPLEMENTATION" ]
deps = [
":includes",
":libANGLE",
]
public_deps = [
":angle_version",
]
}
}
angle_static_library("libGLESv2_static") {
sources = libglesv2_sources
configs += [ ":debug_annotations_config" ]

View File

@@ -271,9 +271,15 @@
"glGetTexParameterIuivRobustANGLE": {
"target": "TextureType"
},
"glGetTexParameterIiv": {
"target": "TextureType"
},
"glGetTexParameterIivOES": {
"target": "TextureType"
},
"glGetTexParameterIuiv": {
"target": "TextureType"
},
"glGetTexParameterIuivOES": {
"target": "TextureType"
},
@@ -335,12 +341,19 @@
"glMatrixMode": {
"mode": "MatrixType"
},
"glMultiDrawArrays": {
"mode": "PrimitiveMode"
},
"glMultiDrawArraysANGLE": {
"mode": "PrimitiveMode"
},
"glMultiDrawArraysInstancedANGLE": {
"mode": "PrimitiveMode"
},
"glMultiDrawElements": {
"mode": "PrimitiveMode",
"type": "DrawElementsType"
},
"glMultiDrawElementsANGLE": {
"mode": "PrimitiveMode",
"type": "DrawElementsType"
@@ -445,9 +458,15 @@
"glTexParameterIuivRobustANGLE": {
"target": "TextureType"
},
"glTexParameterIiv": {
"target": "TextureType"
},
"glTexParameterIivOES": {
"target": "TextureType"
},
"glTexParameterIuiv": {
"target": "TextureType"
},
"glTexParameterIuivOES": {
"target": "TextureType"
},

219
scripts/gen_proc_table.py Normal file
View File

@@ -0,0 +1,219 @@
#!python
# Copyright 2017 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.
#
# gen_proc_table.py:
# Code generation for entry point loading tables.
# NOTE: don't run this script directly. Run scripts/run_code_generation.py.
import sys
from datetime import date
import registry_xml
out_file_name_gles = "../src/libGLESv2/proc_table_egl_autogen.cpp"
out_file_name_wgl = "../src/openGL32/proc_table_wgl_autogen.cpp"
# The EGL_ANGLE_explicit_context extension is generated differently from other extensions.
# Toggle generation here.
# Only for GLES
support_egl_ANGLE_explicit_context = True
strip_suffixes = ["ANGLE", "EXT", "KHR", "OES", "CHROMIUM", "OVR"]
template_cpp = """// GENERATED FILE - DO NOT EDIT.
// Generated by {script_name} using data from {data_source_name}.
//
// Copyright {copyright_year} 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.
//
// getProcAddress loader table:
// Mapping from a string entry point name to function address.
//
{includes}
#define P(FUNC) reinterpret_cast<{cast}>(FUNC)
namespace {namespace}
{{
ProcEntry g_procTable[] = {{
{proc_data}
}};
size_t g_numProcs = {num_procs};
}} // namespace {namespace}
"""
includes_gles = """#include "libGLESv2/proc_table_egl.h"
#include "libGLESv2/entry_points_egl.h"
#include "libGLESv2/entry_points_egl_ext.h"
#include "libGLESv2/entry_points_gles_1_0_autogen.h"
#include "libGLESv2/entry_points_gles_2_0_autogen.h"
#include "libGLESv2/entry_points_gles_3_0_autogen.h"
#include "libGLESv2/entry_points_gles_3_1_autogen.h"
#include "libGLESv2/entry_points_gles_ext_autogen.h"
#include "platform/Platform.h"
"""
includes_wgl = """#include "openGL32/proc_table_wgl.h"
#include "openGL32/entry_points_wgl.h"
#include "openGL32/entry_points_gl_1_0_autogen.h"
#include "openGL32/entry_points_gl_1_1_autogen.h"
#include "openGL32/entry_points_gl_1_2_autogen.h"
#include "openGL32/entry_points_gl_1_3_autogen.h"
#include "openGL32/entry_points_gl_1_4_autogen.h"
#include "openGL32/entry_points_gl_1_5_autogen.h"
#include "openGL32/entry_points_gl_2_0_autogen.h"
#include "openGL32/entry_points_gl_2_1_autogen.h"
#include "openGL32/entry_points_gl_3_0_autogen.h"
#include "openGL32/entry_points_gl_3_1_autogen.h"
#include "platform/Platform.h"
"""
sys.path.append('../src/libANGLE/renderer')
import angle_format
def main():
# auto_script parameters.
if len(sys.argv) > 1:
inputs = [source for source in registry_xml.xml_inputs]
outputs = [out_file_name_gles, out_file_name_wgl]
if sys.argv[1] == 'inputs':
print ','.join(inputs)
elif sys.argv[1] == 'outputs':
print ','.join(outputs)
else:
print('Invalid script parameters')
return 1
return 0
glesxml = registry_xml.RegistryXML('gl.xml', 'gl_angle_ext.xml')
# Track the GLES commands so we don't add them to wgl proc table
gles_commands = []
gles_commands = []
for annotation in ["2_0", "3_0", "3_1", "1_0"]:
name_prefix = "GL_ES_VERSION_"
if annotation[0] == '1':
name_prefix = "GL_VERSION_ES_CM_"
feature_name = "{}{}".format(name_prefix, annotation)
glesxml.AddCommands(feature_name, annotation)
gles_commands.extend(glesxml.commands[annotation])
glesxml.AddExtensionCommands(registry_xml.supported_extensions, ['gles2', 'gles1'])
# Also don't add GLES extension commands to wgl proc table
extension_commands = []
for extension_name, ext_cmd_names in sorted(glesxml.ext_data.iteritems()):
extension_commands.extend(glesxml.ext_data[extension_name])
for name in extension_commands:
name_no_suffix = name
for suffix in strip_suffixes:
if name_no_suffix.endswith(suffix):
name_no_suffix = name_no_suffix[0:-len(suffix)]
gles_commands.append(name_no_suffix)
gles_data = glesxml.all_cmd_names.get_all_commands()
eglxml = registry_xml.RegistryXML('egl.xml', 'egl_angle_ext.xml')
for annotation in ["1_0", "1_1", "1_2", "1_3", "1_4", "1_5"]:
name_prefix = "EGL_VERSION_"
feature_name = "{}{}".format(name_prefix, annotation)
eglxml.AddCommands(feature_name, annotation)
eglxml.AddExtensionCommands(registry_xml.supported_egl_extensions, ['gles2', 'gles1'])
gles_data.extend(eglxml.all_cmd_names.get_all_commands())
gles_data.append("ANGLEGetDisplayPlatform")
gles_data.append("ANGLEResetDisplayPlatform")
all_functions = {}
for function in gles_data:
if function.startswith("gl"):
all_functions[function] = "gl::" + function[2:]
# Special handling for EGL_ANGLE_explicit_context extension
if support_egl_ANGLE_explicit_context:
all_functions[function + "ContextANGLE"] = "gl::" + function[2:] + "ContextANGLE"
elif function.startswith("egl"):
all_functions[function] = "EGL_" + function[3:]
else:
all_functions[function] = function
proc_data = [(' {"%s", P(%s)}' % (func, angle_func))
for func, angle_func in sorted(all_functions.iteritems())]
with open(out_file_name_gles, 'w') as out_file:
output_cpp = template_cpp.format(
script_name=sys.argv[0],
data_source_name="gl.xml, gl_angle_ext.xml, egl.xml, egl_angle_ext.xml",
copyright_year=date.today().year,
includes=includes_gles,
cast="__eglMustCastToProperFunctionPointerType",
namespace="egl",
proc_data=",\n".join(proc_data),
num_procs=len(proc_data))
out_file.write(output_cpp)
out_file.close()
# WGL proc table
glxml = registry_xml.RegistryXML('gl.xml')
for annotation in ["1_0", "1_1", "1_2", "1_3", "1_4", "1_5", "2_0", "2_1", "3_0", "3_1"]:
name_prefix = "GL_VERSION_"
feature_name = "{}{}".format(name_prefix, annotation)
glxml.AddCommands(feature_name, annotation)
wgl_data = [cmd for cmd in glxml.all_cmd_names.get_all_commands() if cmd not in gles_commands]
wglxml = registry_xml.RegistryXML('wgl.xml')
for annotation in ["1_0"]:
name_prefix = "WGL_VERSION_"
feature_name = "{}{}".format(name_prefix, annotation)
wglxml.AddCommands(feature_name, annotation)
wgl_commands = wglxml.all_cmd_names.get_all_commands()
wgl_data.extend([cmd if cmd[:3] == 'wgl' else 'wgl' + cmd for cmd in wgl_commands])
all_functions = {}
for function in wgl_data:
if function.startswith("gl"):
all_functions[function] = "gl::" + function[2:]
else:
all_functions[function] = function
proc_data = [(' {"%s", P(%s)}' % (func, angle_func))
for func, angle_func in sorted(all_functions.iteritems())]
with open(out_file_name_wgl, 'w') as out_file:
output_cpp = template_cpp.format(
script_name=sys.argv[0],
data_source_name="gl.xml, wgl.xml",
copyright_year=date.today().year,
includes=includes_wgl,
cast="PROC",
namespace="wgl",
proc_data=",\n".join(proc_data),
num_procs=len(proc_data))
out_file.write(output_cpp)
out_file.close()
return 0
if __name__ == '__main__':
sys.exit(main())

View File

@@ -41,11 +41,11 @@ template_entry_point_header = """// GENERATED FILE - DO NOT EDIT.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// entry_points_gles_{annotation_lower}_autogen.h:
// Defines the GLES {comment} entry points.
// entry_points_{annotation_lower}_autogen.h:
// Defines the {comment} entry points.
#ifndef LIBGLESV2_ENTRY_POINTS_GLES_{annotation_upper}_AUTOGEN_H_
#define LIBGLESV2_ENTRY_POINTS_GLES_{annotation_upper}_AUTOGEN_H_
#ifndef {lib}_ENTRY_POINTS_{annotation_upper}_AUTOGEN_H_
#define {lib}_ENTRY_POINTS_{annotation_upper}_AUTOGEN_H_
{includes}
@@ -54,7 +54,7 @@ namespace gl
{entry_points}
}} // namespace gl
#endif // LIBGLESV2_ENTRY_POINTS_GLES_{annotation_upper}_AUTOGEN_H_
#endif // {lib}_ENTRY_POINTS_{annotation_upper}_AUTOGEN_H_
"""
template_entry_point_source = """// GENERATED FILE - DO NOT EDIT.
@@ -64,8 +64,8 @@ template_entry_point_source = """// GENERATED FILE - DO NOT EDIT.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// entry_points_gles_{annotation_lower}_autogen.cpp:
// Defines the GLES {comment} entry points.
// entry_points_{annotation_lower}_autogen.cpp:
// Defines the {comment} entry points.
{includes}
@@ -82,10 +82,10 @@ template_entry_points_enum_header = """// GENERATED FILE - DO NOT EDIT.
// found in the LICENSE file.
//
// entry_points_enum_autogen.h:
// Defines the GLES entry points enumeration.
// Defines the {lib} entry points enumeration.
#ifndef LIBGLESV2_ENTRYPOINTSENUM_AUTOGEN_H_
#define LIBGLESV2_ENTRYPOINTSENUM_AUTOGEN_H_
#ifndef {lib_name}_ENTRYPOINTSENUM_AUTOGEN_H_
#define {lib_name}_ENTRYPOINTSENUM_AUTOGEN_H_
namespace gl
{{
@@ -94,17 +94,17 @@ enum class EntryPoint
{entry_points_list}
}};
}} // namespace gl
#endif // LIBGLESV2_ENTRY_POINTS_ENUM_AUTOGEN_H_
#endif // {lib_name}_ENTRY_POINTS_ENUM_AUTOGEN_H_
"""
template_libgles_entry_point_source = """// GENERATED FILE - DO NOT EDIT.
template_lib_entry_point_source = """// GENERATED FILE - DO NOT EDIT.
// Generated by {script_name} using data from {data_source_name}.
//
// Copyright {year} 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.
//
// libGLESv2.cpp: Implements the exported OpenGL ES functions.
// {lib_name}.cpp: Implements the exported {lib_description} functions.
{includes}
extern "C" {{
@@ -129,25 +129,25 @@ template_entry_point_def = """{return_type}GL_APIENTRY {name}{explicit_context_s
{default_return_if_needed}}}
"""
context_gles_header = """// GENERATED FILE - DO NOT EDIT.
context_header = """// GENERATED FILE - DO NOT EDIT.
// Generated by {script_name} using data from {data_source_name}.
//
// Copyright {year} 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_{annotation_lower}_autogen.h: Creates a macro for interfaces in Context.
// Context_{annotation_lower}_autogen.h: Creates a macro for interfaces in Context.
#ifndef ANGLE_CONTEXT_GLES_{annotation_upper}_AUTOGEN_H_
#define ANGLE_CONTEXT_GLES_{annotation_upper}_AUTOGEN_H_
#ifndef ANGLE_CONTEXT_{annotation_upper}_AUTOGEN_H_
#define ANGLE_CONTEXT_{annotation_upper}_AUTOGEN_H_
#define ANGLE_GLES_{annotation_upper}_CONTEXT_API \\
#define ANGLE_{annotation_upper}_CONTEXT_API \\
{interface}
#endif // ANGLE_CONTEXT_API_{annotation_upper}_AUTOGEN_H_
#endif // ANGLE_CONTEXT_API_{version}_AUTOGEN_H_
"""
context_gles_decl = """ {return_type} {name_lower_no_suffix}({internal_params}); \\"""
context_decl_format = """ {return_type} {name_lower_no_suffix}({internal_params}); \\"""
libgles_entry_point_def = """{return_type}GL_APIENTRY gl{name}{explicit_context_suffix}({explicit_context_param}{explicit_context_comma}{params})
{{
@@ -181,11 +181,11 @@ template_validation_header = """// GENERATED FILE - DO NOT EDIT.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// validationES{annotation}_autogen.h:
// Validation functions for the OpenGL ES {comment} entry points.
// validation{annotation}_autogen.h:
// Validation functions for the OpenGL {comment} entry points.
#ifndef LIBANGLE_VALIDATION_ES{annotation}_AUTOGEN_H_
#define LIBANGLE_VALIDATION_ES{annotation}_AUTOGEN_H_
#ifndef LIBANGLE_VALIDATION_{annotation}_AUTOGEN_H_
#define LIBANGLE_VALIDATION_{annotation}_AUTOGEN_H_
#include "common/PackedEnums.h"
@@ -196,7 +196,7 @@ class Context;
{prototypes}
}} // namespace gl
#endif // LIBANGLE_VALIDATION_ES{annotation}_AUTOGEN_H_
#endif // LIBANGLE_VALIDATION_{annotation}_AUTOGEN_H_
"""
static_cast_to_dict = {
@@ -215,7 +215,12 @@ reinterpret_cast_to_dict = {
format_dict = {
"GLbitfield": "0x%X",
"GLboolean": "%u",
"GLbyte": "%d",
"GLclampx": "0x%X",
"GLDEBUGPROC": "0x%016\" PRIxPTR \"",
"GLDEBUGPROCKHR": "0x%016\" PRIxPTR \"",
"GLdouble": "%f",
"GLeglImageOES": "0x%016\" PRIxPTR \"",
"GLenum": "0x%X",
"GLfixed": "0x%X",
"GLfloat": "%f",
@@ -228,15 +233,24 @@ format_dict = {
"GLubyte": "%d",
"GLuint": "%u",
"GLuint64": "%llu",
"GLDEBUGPROC": "0x%016\" PRIxPTR \"",
"GLDEBUGPROCKHR": "0x%016\" PRIxPTR \"",
"GLeglImageOES": "0x%016\" PRIxPTR \"",
"GLushort": "%u",
"int": "%d",
# WGL specific types
"BOOL": "%u",
"DWORD": "0x%016\" PRIxPTR \"",
"FLOAT": "%f",
"HDC": "0x%016\" PRIxPTR \"",
"HENHMETAFILE": "0x%016\" PRIxPTR \"",
"HGLRC": "0x%016\" PRIxPTR \"",
"LPCSTR": "0x%016\" PRIxPTR \"",
"LPGLYPHMETRICSFLOAT": "0x%016\" PRIxPTR \"",
"UINT": "%u",
}
template_header_includes = """#include <GLES{major}/gl{major}{minor}.h>
#include <export.h>"""
template_sources_includes = """#include "libGLESv2/entry_points_gles_{}_autogen.h"
template_sources_includes = """#include "libGLESv2/entry_points_{}_autogen.h"
#include "libANGLE/Context.h"
#include "libANGLE/Context.inl.h"
@@ -245,6 +259,29 @@ template_sources_includes = """#include "libGLESv2/entry_points_gles_{}_autogen.
#include "libGLESv2/global_state.h"
"""
template_header_includes_gl32 = """#include <export.h>
#include "angle_gl.h"
#include "WGL/wgl.h"
#include "windows.h"
"""
template_sources_includes_gl32 = """#include "openGL32/entry_points_{}_autogen.h"
#include "libANGLE/Context.h"
#include "libANGLE/Context.inl.h"
#include "libANGLE/validationEGL.h"
#include "libANGLE/validationES.h"
#include "libANGLE/validationES1.h"
#include "libANGLE/validationES2.h"
#include "libANGLE/validationES3.h"
#include "libANGLE/validationES31.h"
#include "libANGLE/validationESEXT.h"
#include "libANGLE/validationGL{}{}_autogen.h"
#include "openGL32/entry_points_utils.h"
#include "libGLESv2/global_state.h"
"""
template_event_comment = """// Don't run an EVENT() macro on the EXT_debug_marker entry points.
// It can interfere with the debug events being set by the caller.
// """
@@ -370,6 +407,13 @@ def get_context_getter_function(cmd_name, is_explicit_context):
return "GetValidGlobalContext()"
def strip_suffix(name):
for suffix in strip_suffixes:
if name.endswith(suffix):
name = name[0:-len(suffix)]
return name
def format_entry_point_def(cmd_name, proto, params, is_explicit_context):
packed_gl_enums = cmd_packed_gl_enums.get(cmd_name, {})
internal_params = [just_the_name_packed(param, packed_gl_enums) for param in params]
@@ -390,10 +434,7 @@ def format_entry_point_def(cmd_name, proto, params, is_explicit_context):
default_return = default_return_value(cmd_name, return_type.strip())
event_comment = template_event_comment if cmd_name in no_event_marker_exceptions_list else ""
name_lower_no_suffix = cmd_name[2:3].lower() + cmd_name[3:]
for suffix in strip_suffixes:
if name_lower_no_suffix.endswith(suffix):
name_lower_no_suffix = name_lower_no_suffix[0:-len(suffix)]
name_lower_no_suffix = strip_suffix(name_lower_no_suffix)
return template_entry_point_def.format(
name=cmd_name[2:],
@@ -427,17 +468,14 @@ def get_internal_params(cmd_name, params):
])
def format_context_gles_decl(cmd_name, proto, params):
def format_context_decl(cmd_name, proto, params, template):
internal_params = get_internal_params(cmd_name, params)
return_type = proto[:-len(cmd_name)]
name_lower_no_suffix = cmd_name[2:3].lower() + cmd_name[3:]
name_lower_no_suffix = strip_suffix(name_lower_no_suffix)
for suffix in strip_suffixes:
if name_lower_no_suffix.endswith(suffix):
name_lower_no_suffix = name_lower_no_suffix[0:-len(suffix)]
return context_gles_decl.format(
return template.format(
return_type=return_type,
name_lower_no_suffix=name_lower_no_suffix,
internal_params=internal_params)
@@ -467,7 +505,7 @@ def path_to(folder, file):
return os.path.join(script_relative(".."), "src", folder, file)
def get_entry_points(all_commands, gles_commands, is_explicit_context):
def get_entry_points(all_commands, commands, is_explicit_context, is_wgl):
decls = []
defs = []
export_defs = []
@@ -477,7 +515,10 @@ def get_entry_points(all_commands, gles_commands, is_explicit_context):
proto = command.find('proto')
cmd_name = proto.find('name').text
if cmd_name not in gles_commands:
if is_wgl:
cmd_name = cmd_name if cmd_name[:3] == 'wgl' else 'wgl' + cmd_name
if cmd_name not in commands:
continue
param_text = ["".join(param.itertext()) for param in command.findall('param')]
@@ -494,7 +535,7 @@ def get_entry_points(all_commands, gles_commands, is_explicit_context):
return decls, defs, export_defs, validation_protos
def get_gles_decls(all_commands, gles_commands, already_included, overloaded):
def get_decls(formatter, all_commands, gles_commands, already_included, overloaded):
decls = []
for command in all_commands:
proto = command.find('proto')
@@ -506,18 +547,13 @@ def get_gles_decls(all_commands, gles_commands, already_included, 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)]
name_no_suffix = strip_suffix(cmd_name)
if name_no_suffix in already_included:
continue
param_text = ["".join(param.itertext()) for param in command.findall('param')]
proto_text = "".join(proto.itertext())
decls.append(format_context_gles_decl(cmd_name, proto_text, param_text))
decls.append(format_context_decl(cmd_name, proto_text, param_text, formatter))
return decls
@@ -561,7 +597,7 @@ def get_glext_decls(all_commands, gles_commands, version, is_explicit_context):
return glext_ptrs, glext_protos
def write_file(annotation, comment, template, entry_points, suffix, includes, file):
def write_file(annotation, comment, template, entry_points, suffix, includes, lib, file):
content = template.format(
script_name=os.path.basename(sys.argv[0]),
data_source_name=file,
@@ -569,40 +605,43 @@ def write_file(annotation, comment, template, entry_points, suffix, includes, fi
annotation_lower=annotation.lower(),
annotation_upper=annotation.upper(),
comment=comment,
lib=lib.upper(),
includes=includes,
entry_points=entry_points)
path = path_to("libGLESv2", "entry_points_gles_{}_autogen.{}".format(
annotation.lower(), suffix))
path = path_to(lib, "entry_points_{}_autogen.{}".format(annotation.lower(), suffix))
with open(path, "w") as out:
out.write(content)
out.close()
def write_export_files(entry_points, includes):
content = template_libgles_entry_point_source.format(
def write_export_files(entry_points, includes, source, lib_name, lib_description):
content = template_lib_entry_point_source.format(
script_name=os.path.basename(sys.argv[0]),
data_source_name="gl.xml and gl_angle_ext.xml",
data_source_name=source,
year=date.today().year,
lib_name=lib_name,
lib_description=lib_description,
includes=includes,
entry_points=entry_points)
path = path_to("libGLESv2", "libGLESv2_autogen.cpp")
path = path_to(lib_name, "{}_autogen.cpp".format(lib_name))
with open(path, "w") as out:
out.write(content)
out.close()
def write_context_api_decls(template, decls):
def write_context_api_decls(template, decls, api):
for ver in decls['core'].keys():
interface_lines = []
for i in decls['core'][ver]:
interface_lines.append(i)
annotation = '{}_{}'.format(ver[0], ver[1])
annotation = '{}_{}_{}'.format(api, ver[0], ver[1])
version = '{}_{}'.format(ver[0], ver[1])
content = template.format(
annotation_lower=annotation.lower(),
@@ -610,35 +649,38 @@ def write_context_api_decls(template, decls):
script_name=os.path.basename(sys.argv[0]),
data_source_name="gl.xml",
year=date.today().year,
version=version,
interface="\n".join(interface_lines))
path = path_to("libANGLE", "Context_gles_%s_autogen.h" % annotation.lower())
path = path_to("libANGLE", "Context_%s_autogen.h" % annotation.lower())
with open(path, "w") as out:
out.write(content)
out.close()
interface_lines = []
for annotation in decls['exts'].keys():
interface_lines.append("\\\n /* " + annotation + " */ \\\n\\")
if 'exts' in decls.keys():
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])
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))
content = template.format(
annotation_lower='gles_ext',
annotation_upper='GLES_EXT',
script_name=os.path.basename(sys.argv[0]),
data_source_name="gl.xml",
year=date.today().year,
version='EXT',
interface="\n".join(interface_lines))
path = path_to("libANGLE", "Context_gles_ext_autogen.h")
path = path_to("libANGLE", "Context_gles_ext_autogen.h")
with open(path, "w") as out:
out.write(content)
out.close()
with open(path, "w") as out:
out.write(content)
out.close()
def write_glext_explicit_context_inc(version, ptrs, protos):
@@ -661,16 +703,16 @@ def write_glext_explicit_context_inc(version, ptrs, protos):
out.close()
def write_validation_header(annotation, comment, protos):
def write_validation_header(annotation, comment, protos, source):
content = template_validation_header.format(
script_name=os.path.basename(sys.argv[0]),
data_source_name="gl.xml and gl_angle_ext.xml",
data_source_name=source,
year=date.today().year,
annotation=annotation,
comment=comment,
prototypes="\n".join(protos))
path = path_to("libANGLE", "validationES%s_autogen.h" % annotation)
path = path_to("libANGLE", "validation%s_autogen.h" % annotation)
with open(path, "w") as out:
out.write(content)
@@ -743,6 +785,16 @@ def main():
if len(sys.argv) > 1:
inputs = ['entry_point_packed_gl_enums.json'] + registry_xml.xml_inputs
outputs = [
'../src/libANGLE/Context_gl_1_0_autogen.h',
'../src/libANGLE/Context_gl_1_1_autogen.h',
'../src/libANGLE/Context_gl_1_2_autogen.h',
'../src/libANGLE/Context_gl_1_3_autogen.h',
'../src/libANGLE/Context_gl_1_4_autogen.h',
'../src/libANGLE/Context_gl_1_5_autogen.h',
'../src/libANGLE/Context_gl_2_0_autogen.h',
'../src/libANGLE/Context_gl_2_1_autogen.h',
'../src/libANGLE/Context_gl_3_0_autogen.h',
'../src/libANGLE/Context_gl_3_1_autogen.h',
'../src/libANGLE/Context_gles_1_0_autogen.h',
'../src/libANGLE/Context_gles_2_0_autogen.h',
'../src/libANGLE/Context_gles_3_0_autogen.h',
@@ -753,6 +805,16 @@ def main():
'../src/libANGLE/validationES31_autogen.h',
'../src/libANGLE/validationES3_autogen.h',
'../src/libANGLE/validationESEXT_autogen.h',
'../src/libANGLE/validationGL1_autogen.h',
'../src/libANGLE/validationGL2_autogen.h',
'../src/libANGLE/validationGL3_autogen.h',
'../src/libANGLE/validationGL11_autogen.h',
'../src/libANGLE/validationGL12_autogen.h',
'../src/libANGLE/validationGL13_autogen.h',
'../src/libANGLE/validationGL14_autogen.h',
'../src/libANGLE/validationGL15_autogen.h',
'../src/libANGLE/validationGL21_autogen.h',
'../src/libANGLE/validationGL31_autogen.h',
'../src/libGLESv2/entry_points_enum_autogen.h',
'../src/libGLESv2/entry_points_gles_1_0_autogen.cpp',
'../src/libGLESv2/entry_points_gles_1_0_autogen.h',
@@ -766,6 +828,29 @@ def main():
'../src/libGLESv2/entry_points_gles_ext_autogen.h',
'../src/libGLESv2/libGLESv2_autogen.cpp',
'../src/libGLESv2/libGLESv2_autogen.def',
'../src/openGL32/entry_points_enum_autogen.h',
'../src/openGL32/entry_points_gl_1_0_autogen.cpp',
'../src/openGL32/entry_points_gl_1_0_autogen.h',
'../src/openGL32/entry_points_gl_1_1_autogen.cpp',
'../src/openGL32/entry_points_gl_1_1_autogen.h',
'../src/openGL32/entry_points_gl_1_2_autogen.cpp',
'../src/openGL32/entry_points_gl_1_2_autogen.h',
'../src/openGL32/entry_points_gl_1_3_autogen.cpp',
'../src/openGL32/entry_points_gl_1_3_autogen.h',
'../src/openGL32/entry_points_gl_1_4_autogen.cpp',
'../src/openGL32/entry_points_gl_1_4_autogen.h',
'../src/openGL32/entry_points_gl_1_5_autogen.cpp',
'../src/openGL32/entry_points_gl_1_5_autogen.h',
'../src/openGL32/entry_points_gl_2_0_autogen.cpp',
'../src/openGL32/entry_points_gl_2_0_autogen.h',
'../src/openGL32/entry_points_gl_2_1_autogen.cpp',
'../src/openGL32/entry_points_gl_2_1_autogen.h',
'../src/openGL32/entry_points_gl_3_0_autogen.cpp',
'../src/openGL32/entry_points_gl_3_0_autogen.h',
'../src/openGL32/entry_points_gl_3_1_autogen.cpp',
'../src/openGL32/entry_points_gl_3_1_autogen.h',
'../src/openGL32/openGL32_autogen.cpp',
'../src/openGL32/openGL32_autogen.def',
]
if sys.argv[1] == 'inputs':
@@ -790,30 +875,33 @@ def main():
xml = registry_xml.RegistryXML('gl.xml', 'gl_angle_ext.xml')
#stores all core commands
all_gles_commands = []
# Stores core commands to keep track of duplicates
all_commands_no_suffix = []
all_commands_with_suffix = []
# 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]]:
annotation = "{}_{}".format(major_version, minor_version)
version = "{}_{}".format(major_version, minor_version)
annotation = "GLES_{}".format(version)
name_prefix = "GL_ES_VERSION_"
is_gles1 = major_version == 1
if is_gles1:
name_prefix = "GL_VERSION_ES_CM_"
comment = annotation.replace("_", ".")
feature_name = "{}{}".format(name_prefix, annotation)
comment = version.replace("_", ".")
feature_name = "{}{}".format(name_prefix, version)
xml.AddCommands(feature_name, annotation)
xml.AddCommands(feature_name, version)
gles_commands = xml.commands[annotation]
gles_commands = xml.commands[version]
all_commands = xml.all_commands
all_gles_commands.extend(xml.commands[annotation])
all_commands_no_suffix.extend(xml.commands[version])
all_commands_with_suffix.extend(xml.commands[version])
decls, defs, libgles_defs, validation_protos = get_entry_points(
all_commands, gles_commands, False)
all_commands, gles_commands, False, False)
# Write the version as a comment before the first EP.
libgles_defs.insert(0, "\n// OpenGL ES %s" % comment)
@@ -835,21 +923,23 @@ def main():
source_includes = template_sources_includes.format(annotation.lower(), major_version,
minor_if_not_zero)
write_file(annotation, comment, template_entry_point_header, "\n".join(decls), "h",
header_includes, "gl.xml")
write_file(annotation, comment, template_entry_point_source, "\n".join(defs), "cpp",
source_includes, "gl.xml")
write_file(annotation, "GLES " + comment, template_entry_point_header, "\n".join(decls),
"h", header_includes, "libGLESv2", "gl.xml")
write_file(annotation, "GLES " + comment, template_entry_point_source, "\n".join(defs),
"cpp", source_includes, "libGLESv2", "gl.xml")
gles_overloaded = gles1_overloaded if is_gles1 else []
glesdecls['core'][(major_version, minor_version)] = get_gles_decls(
all_commands, gles_commands, [], gles_overloaded)
glesdecls['core'][(major_version, minor_version)] = get_decls(
context_decl_format, all_commands, gles_commands, [], gles_overloaded)
validation_annotation = "%s%s" % (major_version, minor_if_not_zero)
write_validation_header(validation_annotation, comment, validation_protos)
validation_annotation = "ES%s%s" % (major_version, minor_if_not_zero)
write_validation_header(validation_annotation, "ES %s" % comment, validation_protos,
"gl.xml and gl_angle_ext.xml")
# After we finish with the main entry points, we process the extensions.
extension_defs = []
extension_decls = []
extension_commands = []
# Accumulated validation prototypes.
ext_validation_protos = []
@@ -864,10 +954,11 @@ def main():
xml.AddExtensionCommands(registry_xml.supported_extensions, ['gles2', 'gles1'])
for extension_name, ext_cmd_names in sorted(xml.ext_data.iteritems()):
extension_commands.extend(xml.ext_data[extension_name])
# Detect and filter duplicate extensions.
decls, defs, libgles_defs, validation_protos = get_entry_points(
xml.all_commands, ext_cmd_names, False)
xml.all_commands, ext_cmd_names, False, False)
# Avoid writing out entry points defined by a prior extension.
for dupe in xml.ext_dupes[extension_name]:
@@ -891,14 +982,19 @@ def main():
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)
glesdecls['exts']['GLES1 Extensions'][extension_name] = get_decls(
context_decl_format, all_commands, ext_cmd_names, all_commands_no_suffix,
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, [])
glesdecls['exts']['GLES2+ Extensions'][extension_name] = get_decls(
context_decl_format, all_commands, ext_cmd_names, all_commands_no_suffix, [])
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, [])
glesdecls['exts']['ANGLE Extensions'][extension_name] = get_decls(
context_decl_format, all_commands, ext_cmd_names, all_commands_no_suffix, [])
for name in extension_commands:
all_commands_with_suffix.append(name)
all_commands_no_suffix.append(strip_suffix(name))
# Special handling for EGL_ANGLE_explicit_context extension
if registry_xml.support_EGL_ANGLE_explicit_context:
@@ -911,7 +1007,7 @@ def main():
# Get the explicit context entry points
decls, defs, libgles_defs, validation_protos = get_entry_points(
xml.all_commands, cmds, True)
xml.all_commands, cmds, True, False)
# Append the explicit context entry points
extension_decls += decls
@@ -950,6 +1046,97 @@ def main():
write_glext_explicit_context_inc(version, "\n".join(glext_ptrs),
"\n".join(glext_protos))
# Now we generate entry points for the desktop implementation
# OpenGL32
gldecls = {}
gldecls['core'] = {}
for ver in [(1, 0), (1, 1), (1, 2), (1, 3), (1, 4), (1, 5), (2, 0), (2, 1), (3, 0), (3, 1)]:
gldecls['core'][ver] = []
opengl32_ep_defs = []
opengl32_ep_exports = []
glxml = registry_xml.RegistryXML('gl.xml')
for major_version, minor_version in [[1, 0], [1, 1], [1, 2], [1, 3], [1, 4], [1, 5], [2, 0],
[2, 1], [3, 0], [3, 1]]:
version = "{}_{}".format(major_version, minor_version)
annotation = "GL_{}".format(version)
name_prefix = "GL_VERSION_"
comment = version.replace("_", ".")
feature_name = "{}{}".format(name_prefix, version)
glxml.AddCommands(feature_name, version)
all_opengl32_commands = glxml.commands[version]
just_opengl32_commands = [
cmd for cmd in glxml.commands[version] if cmd not in all_commands_no_suffix
]
just_opengl32_commands_suffix = [
cmd for cmd in glxml.commands[version] if cmd not in all_commands_with_suffix
]
all_commands32 = glxml.all_commands
# Validation duplicates handled with suffix
unused1, unused2, unused3, validation_protos32 = get_entry_points(
all_commands32, just_opengl32_commands_suffix, False, False)
decls32, defs32, opengl32_defs, unused4 = get_entry_points(
all_commands32, all_opengl32_commands, False, False)
# Write the version as a comment before the first EP.
opengl32_defs.insert(0, "\n// OpenGL32 %s" % comment)
opengl32_ep_exports.append("\n ; OpenGL32 %s" % comment)
opengl32_ep_defs += opengl32_defs
opengl32_ep_exports += get_exports(all_opengl32_commands)
minor_if_not_zero = minor_version if minor_version != 0 else ""
header_includes = template_header_includes_gl32
source_includes = template_sources_includes_gl32.format(annotation.lower(), major_version,
minor_if_not_zero)
# Entry point files
write_file(annotation, "GL " + comment, template_entry_point_header, "\n".join(decls32),
"h", header_includes, "openGL32", "gl.xml")
write_file(annotation, "GL " + comment, template_entry_point_source, "\n".join(defs32),
"cpp", source_includes, "openGL32", "gl.xml")
gldecls['core'][(major_version, minor_version)] = get_decls(
context_decl_format, all_commands32, just_opengl32_commands, all_commands_no_suffix,
[])
# Validation files
validation_annotation = "GL%s%s" % (major_version, minor_if_not_zero)
write_validation_header(validation_annotation, "%s" % comment, validation_protos32,
"gl.xml and wgl.xml")
# WGL
wglxml = registry_xml.RegistryXML('wgl.xml')
name_prefix = "WGL_VERSION_"
version = "1_0"
comment = version.replace("_", ".")
feature_name = "{}{}".format(name_prefix, version)
wglxml.AddCommands(feature_name, version)
wgl_commands = wglxml.commands[version]
all_commands32.extend(wglxml.all_commands)
wgl_commands = [cmd if cmd[:3] == 'wgl' else 'wgl' + cmd for cmd in wgl_commands]
decls_wgl, defs_wgl, wgl_defs, validation_protos_wgl = get_entry_points(
all_commands32, wgl_commands, False, True)
# Write the version as a comment before the first EP.
opengl32_ep_exports.append("\n ; WGL %s" % comment)
# Other versions of these functions are used
wgl_commands.remove("wglUseFontBitmaps")
wgl_commands.remove("wglUseFontOutlines")
opengl32_ep_exports += get_exports(wgl_commands)
header_includes = template_header_includes.format(major="", minor="")
header_includes += """
#include <GLES/glext.h>
@@ -957,7 +1144,7 @@ def main():
#include <GLES2/gl2ext.h>
"""
source_includes = template_sources_includes.format("ext", "EXT", "")
source_includes = template_sources_includes.format("gles_ext", "EXT", "")
source_includes += """
#include "libANGLE/validationES1.h"
#include "libANGLE/validationES2.h"
@@ -965,27 +1152,51 @@ def main():
#include "libANGLE/validationES31.h"
"""
write_file("ext", "extension", template_entry_point_header, "\n".join(
[item for item in extension_decls]), "h", header_includes, "gl.xml and gl_angle_ext.xml")
write_file("ext", "extension", template_entry_point_source, "\n".join(
[item for item in extension_defs]), "cpp", source_includes, "gl.xml and gl_angle_ext.xml")
write_file("gles_ext", "GLES extension", template_entry_point_header,
"\n".join([item for item in extension_decls]), "h", header_includes, "libGLESv2",
"gl.xml and gl_angle_ext.xml")
write_file("gles_ext", "GLES extension", template_entry_point_source,
"\n".join([item for item in extension_defs]), "cpp", source_includes, "libGLESv2",
"gl.xml and gl_angle_ext.xml")
write_validation_header("EXT", "extension", ext_validation_protos)
write_validation_header("ESEXT", "ES extension", ext_validation_protos,
"gl.xml and gl_angle_ext.xml")
write_context_api_decls(context_gles_header, glesdecls)
write_context_api_decls(context_header, glesdecls, "gles")
write_context_api_decls(context_header, gldecls, "gl")
# Entry points enum for GLES
sorted_cmd_names = ["Invalid"
] + [cmd[2:] for cmd in sorted(xml.all_cmd_names.get_all_commands())]
entry_points_enum = template_entry_points_enum_header.format(
entry_points_enum_gles = template_entry_points_enum_header.format(
script_name=os.path.basename(sys.argv[0]),
data_source_name="gl.xml and gl_angle_ext.xml",
year=date.today().year,
lib="GLES",
lib_name="LIBGLESV2",
entry_points_list=",\n".join([" " + cmd for cmd in sorted_cmd_names]))
entry_points_enum_header_path = path_to("libGLESv2", "entry_points_enum_autogen.h")
with open(entry_points_enum_header_path, "w") as out:
out.write(entry_points_enum)
entry_points_enum_gles_header_path = path_to("libGLESv2", "entry_points_enum_autogen.h")
with open(entry_points_enum_gles_header_path, "w") as out:
out.write(entry_points_enum_gles)
out.close()
# Entry points enum for GL
sorted_cmd_names = ["Invalid"
] + [cmd[2:] for cmd in sorted(glxml.all_cmd_names.get_all_commands())]
entry_points_enum_gl = template_entry_points_enum_header.format(
script_name=os.path.basename(sys.argv[0]),
data_source_name="gl.xml and gl_angle_ext.xml",
year=date.today().year,
lib="GL",
lib_name="OPENGL32",
entry_points_list=",\n".join([" " + cmd for cmd in sorted_cmd_names]))
entry_points_enum_gl_header_path = path_to("openGL32", "entry_points_enum_autogen.h")
with open(entry_points_enum_gl_header_path, "w") as out:
out.write(entry_points_enum_gl)
out.close()
source_includes = """
@@ -1000,12 +1211,34 @@ def main():
#include "common/event_tracer.h"
"""
write_export_files("\n".join([item for item in libgles_ep_defs]), source_includes)
write_export_files("\n".join([item for item in libgles_ep_defs]), source_includes,
"gl.xml and gl_angle_ext.xml", "libGLESv2", "OpenGL ES")
source_includes = """
#include "angle_gl.h"
#include "openGL32/entry_points_gl_1_0_autogen.h"
#include "openGL32/entry_points_gl_1_1_autogen.h"
#include "openGL32/entry_points_gl_1_2_autogen.h"
#include "openGL32/entry_points_gl_1_3_autogen.h"
#include "openGL32/entry_points_gl_1_4_autogen.h"
#include "openGL32/entry_points_gl_1_5_autogen.h"
#include "openGL32/entry_points_gl_2_0_autogen.h"
#include "openGL32/entry_points_gl_2_1_autogen.h"
#include "openGL32/entry_points_gl_3_0_autogen.h"
#include "openGL32/entry_points_gl_3_1_autogen.h"
#include "common/event_tracer.h"
"""
write_export_files("\n".join([item for item in opengl32_ep_defs]), source_includes,
"gl.xml and wgl.xml", "openGL32", "Windows GL")
libgles_ep_exports += get_egl_exports()
everything = "Khronos and ANGLE XML files"
write_windows_def_file(everything, "libGLESv2", libgles_ep_exports)
write_windows_def_file(everything, "openGL32", opengl32_ep_exports)
if __name__ == '__main__':

View File

@@ -18,6 +18,7 @@ xml_inputs = [
'gl_angle_ext.xml',
'egl.xml',
'egl_angle_ext.xml',
'wgl.xml',
'registry_xml.py',
]

View File

@@ -85,7 +85,7 @@ generators = {
'packed enum':
'src/common/gen_packed_gl_enums.py',
'proc table':
'src/libGLESv2/gen_proc_table.py',
'scripts/gen_proc_table.py',
'Vulkan format':
'src/libANGLE/renderer/vulkan/gen_vk_format_table.py',
'Vulkan mandatory format support table':

View File

@@ -92,15 +92,37 @@
"GL/EGL entry points:scripts/egl_angle_ext.xml":
"fc2e249239fb1365f6d145cdf1a3cfcf",
"GL/EGL entry points:scripts/entry_point_packed_gl_enums.json":
"6e27999e187876d388b365676b2e3cc6",
"08665ca9ebf22fa759c1ce0e965a200d",
"GL/EGL entry points:scripts/generate_entry_points.py":
"1e493331ee0ab7d5e210a125cb248f0b",
"d4b4c2c5a2a0ad11eda1f7516076e4aa",
"GL/EGL entry points:scripts/gl.xml":
"b470cb06b06cbbe7adb2c8129ec85708",
"GL/EGL entry points:scripts/gl_angle_ext.xml":
"bed6b56a38621721e689ebc19601a556",
"GL/EGL entry points:scripts/registry_xml.py":
"044c8cd6601271bef56d257ff401597c",
"683a498150204f16c44264714e2bed07",
"GL/EGL entry points:scripts/wgl.xml":
"aa96419c582af2f6673430e2847693f4",
"GL/EGL entry points:src/libANGLE/Context_gl_1_0_autogen.h":
"57231b5bc958327034059eb7e5cd6636",
"GL/EGL entry points:src/libANGLE/Context_gl_1_1_autogen.h":
"4a6f7633d3b234a98c33fef4a6a1c89e",
"GL/EGL entry points:src/libANGLE/Context_gl_1_2_autogen.h":
"e648c6c4ff40b7d2d709ef7635262226",
"GL/EGL entry points:src/libANGLE/Context_gl_1_3_autogen.h":
"a7bb49f5075a44aaee7a9531372b8731",
"GL/EGL entry points:src/libANGLE/Context_gl_1_4_autogen.h":
"07a56e633a2ef0467e97ae327c832324",
"GL/EGL entry points:src/libANGLE/Context_gl_1_5_autogen.h":
"96bf69258d08cef55abcfe08527ac1f3",
"GL/EGL entry points:src/libANGLE/Context_gl_2_0_autogen.h":
"fc3dc3bca5024a4c97878b064365efe8",
"GL/EGL entry points:src/libANGLE/Context_gl_2_1_autogen.h":
"0538549cfb385ab7866a2978fe0a3f65",
"GL/EGL entry points:src/libANGLE/Context_gl_3_0_autogen.h":
"46a55343d5ff3d79ac63b8887dc90ce3",
"GL/EGL entry points:src/libANGLE/Context_gl_3_1_autogen.h":
"391170a24ea544e6de99051e4d8d4aa1",
"GL/EGL entry points:src/libANGLE/Context_gles_1_0_autogen.h":
"f30ed90e4ec23f886bda9344d82dd529",
"GL/EGL entry points:src/libANGLE/Context_gles_2_0_autogen.h":
@@ -121,6 +143,26 @@
"4617942e5bf67fa5e35675daf66afc5c",
"GL/EGL entry points:src/libANGLE/validationESEXT_autogen.h":
"e467045ae1b9f8671ced8aef794f06e0",
"GL/EGL entry points:src/libANGLE/validationGL11_autogen.h":
"c5ac1ca523a39df2621d11e92c9c821a",
"GL/EGL entry points:src/libANGLE/validationGL12_autogen.h":
"d00e743582693425eb8e5221bdfadc7c",
"GL/EGL entry points:src/libANGLE/validationGL13_autogen.h":
"3cc3a79b3f39f7e7267ac4ff5b51a198",
"GL/EGL entry points:src/libANGLE/validationGL14_autogen.h":
"d58f8aa392b34a15cd5ddfea3142bca4",
"GL/EGL entry points:src/libANGLE/validationGL15_autogen.h":
"803c78e151ba6e71be81ed38decacf1d",
"GL/EGL entry points:src/libANGLE/validationGL1_autogen.h":
"9f6aca8bc4d4f8f74d0a74a781eec5b4",
"GL/EGL entry points:src/libANGLE/validationGL21_autogen.h":
"0db791d425850e654aa36b6241891525",
"GL/EGL entry points:src/libANGLE/validationGL2_autogen.h":
"bbbdee2a2aaed049bfe243197a633b1b",
"GL/EGL entry points:src/libANGLE/validationGL31_autogen.h":
"8eb20c13d38138483d42f898400ef176",
"GL/EGL entry points:src/libANGLE/validationGL3_autogen.h":
"1bd2846baa868d579bc4f619dc59a93c",
"GL/EGL entry points:src/libGLESv2/entry_points_enum_autogen.h":
"f8340d0bfde6bc581a508a47a54a6678",
"GL/EGL entry points:src/libGLESv2/entry_points_gles_1_0_autogen.cpp":
@@ -147,6 +189,52 @@
"229577015686414a6d094533c2210cea",
"GL/EGL entry points:src/libGLESv2/libGLESv2_autogen.def":
"5973958936850835cc48a57bba9bd33a",
"GL/EGL entry points:src/openGL32/entry_points_enum_autogen.h":
"15fd8df38c1d074ae576d30cfd6ebad9",
"GL/EGL entry points:src/openGL32/entry_points_gl_1_0_autogen.cpp":
"784766d4bc99e9a05af00b75fc0d4a73",
"GL/EGL entry points:src/openGL32/entry_points_gl_1_0_autogen.h":
"8e91307664a1049e2db42d651fd42be7",
"GL/EGL entry points:src/openGL32/entry_points_gl_1_1_autogen.cpp":
"39b84189e7dea4ba6a2c9fc11722e143",
"GL/EGL entry points:src/openGL32/entry_points_gl_1_1_autogen.h":
"0f011b953435f9e83e61b6826209753b",
"GL/EGL entry points:src/openGL32/entry_points_gl_1_2_autogen.cpp":
"5c199abe61ddbd6427911107c2106452",
"GL/EGL entry points:src/openGL32/entry_points_gl_1_2_autogen.h":
"1a6a2956bc3dbb4703378b3142778ff2",
"GL/EGL entry points:src/openGL32/entry_points_gl_1_3_autogen.cpp":
"db6ffa9498a01913b626b49d0ca312c5",
"GL/EGL entry points:src/openGL32/entry_points_gl_1_3_autogen.h":
"1e0fd2fdb8e46c635432c4f558f1bdf3",
"GL/EGL entry points:src/openGL32/entry_points_gl_1_4_autogen.cpp":
"4a1803fbcc9392201a88be8db3f5da1d",
"GL/EGL entry points:src/openGL32/entry_points_gl_1_4_autogen.h":
"54fef88d63c0c0e99489120d2d16109a",
"GL/EGL entry points:src/openGL32/entry_points_gl_1_5_autogen.cpp":
"98a022b0258510b9d11408082145f1be",
"GL/EGL entry points:src/openGL32/entry_points_gl_1_5_autogen.h":
"13f8c37ceaea5fd4bda59ddc8a0fe7b2",
"GL/EGL entry points:src/openGL32/entry_points_gl_2_0_autogen.cpp":
"19e975c1a97da842eb32aebba77b33d5",
"GL/EGL entry points:src/openGL32/entry_points_gl_2_0_autogen.h":
"127e74bf62c027d9e45b5639bef75901",
"GL/EGL entry points:src/openGL32/entry_points_gl_2_1_autogen.cpp":
"e7417d5857f32edb3e35cb877cd6035d",
"GL/EGL entry points:src/openGL32/entry_points_gl_2_1_autogen.h":
"11b3e2a032ad44b6cdd977e3d2c81232",
"GL/EGL entry points:src/openGL32/entry_points_gl_3_0_autogen.cpp":
"9107d4128d3d21dde0d18bd7e5a00857",
"GL/EGL entry points:src/openGL32/entry_points_gl_3_0_autogen.h":
"e57885db7752cfa8304975e487f652cf",
"GL/EGL entry points:src/openGL32/entry_points_gl_3_1_autogen.cpp":
"ebcbb6d7833672e3ec2244190483ae1d",
"GL/EGL entry points:src/openGL32/entry_points_gl_3_1_autogen.h":
"7e52688552b82d6aaff263a63de9018d",
"GL/EGL entry points:src/openGL32/openGL32_autogen.cpp":
"e61b400467d91519d168a9544f863c6d",
"GL/EGL entry points:src/openGL32/openGL32_autogen.def":
"927bd64e7971581eb2d0042f69e8975c",
"GL/EGL/WGL loader:scripts/egl.xml":
"842e24514c4cfe09fba703c17a0fd292",
"GL/EGL/WGL loader:scripts/egl_angle_ext.xml":
@@ -154,7 +242,7 @@
"GL/EGL/WGL loader:scripts/generate_loader.py":
"5a7cd014230fe04664d9613e65399d42",
"GL/EGL/WGL loader:scripts/registry_xml.py":
"044c8cd6601271bef56d257ff401597c",
"683a498150204f16c44264714e2bed07",
"GL/EGL/WGL loader:scripts/wgl.xml":
"aa96419c582af2f6673430e2847693f4",
"GL/EGL/WGL loader:src/libEGL/egl_loader_autogen.cpp":
@@ -455,16 +543,20 @@
"842e24514c4cfe09fba703c17a0fd292",
"proc table:scripts/egl_angle_ext.xml":
"fc2e249239fb1365f6d145cdf1a3cfcf",
"proc table:scripts/gen_proc_table.py":
"445b0784415ea3808ddd276af7a5d775",
"proc table:scripts/gl.xml":
"b470cb06b06cbbe7adb2c8129ec85708",
"proc table:scripts/gl_angle_ext.xml":
"bed6b56a38621721e689ebc19601a556",
"proc table:scripts/registry_xml.py":
"044c8cd6601271bef56d257ff401597c",
"proc table:src/libGLESv2/gen_proc_table.py":
"c3e4abfa19077cea098cb19bbfed4471",
"proc table:src/libGLESv2/proc_table_autogen.cpp":
"eaedb2059fc6e499760a2b90da0510cf",
"683a498150204f16c44264714e2bed07",
"proc table:scripts/wgl.xml":
"aa96419c582af2f6673430e2847693f4",
"proc table:src/libGLESv2/proc_table_egl_autogen.cpp":
"6ab624dce9ebcdeaea091b27d98ed1ce",
"proc table:src/openGL32/proc_table_wgl_autogen.cpp":
"5e872d3b18d35da12b103bc56dbc121c",
"uniform type:src/common/gen_uniform_type_table.py":
"a741cc301b1617ab0e4d29b35f1d3b96",
"uniform type:src/common/uniform_type_info_autogen.cpp":

View File

@@ -19,6 +19,16 @@
#include "common/angleutils.h"
#include "libANGLE/Caps.h"
#include "libANGLE/Constants.h"
#include "libANGLE/Context_gl_1_0_autogen.h"
#include "libANGLE/Context_gl_1_1_autogen.h"
#include "libANGLE/Context_gl_1_2_autogen.h"
#include "libANGLE/Context_gl_1_3_autogen.h"
#include "libANGLE/Context_gl_1_4_autogen.h"
#include "libANGLE/Context_gl_1_5_autogen.h"
#include "libANGLE/Context_gl_2_0_autogen.h"
#include "libANGLE/Context_gl_2_1_autogen.h"
#include "libANGLE/Context_gl_3_0_autogen.h"
#include "libANGLE/Context_gl_3_1_autogen.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"
@@ -376,6 +386,18 @@ class Context final : public egl::LabeledObject, angle::NonCopyable, public angl
bool hasActiveTransformFeedback(GLuint program) const;
// GL emulation: Interface to entry points
ANGLE_GL_1_0_CONTEXT_API
ANGLE_GL_1_1_CONTEXT_API
ANGLE_GL_1_2_CONTEXT_API
ANGLE_GL_1_3_CONTEXT_API
ANGLE_GL_1_4_CONTEXT_API
ANGLE_GL_1_5_CONTEXT_API
ANGLE_GL_2_0_CONTEXT_API
ANGLE_GL_2_1_CONTEXT_API
ANGLE_GL_3_0_CONTEXT_API
ANGLE_GL_3_1_CONTEXT_API
// GLES emulation: Interface to entry points
ANGLE_GLES_1_0_CONTEXT_API
ANGLE_GLES_2_0_CONTEXT_API

2003
src/libANGLE/Context_gl.cpp Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,254 @@
// 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_gl_1_0_autogen.h: Creates a macro for interfaces in Context.
#ifndef ANGLE_CONTEXT_GL_1_0_AUTOGEN_H_
#define ANGLE_CONTEXT_GL_1_0_AUTOGEN_H_
#define ANGLE_GL_1_0_CONTEXT_API \
void accum(GLenum op, GLfloat value); \
void begin(GLenum mode); \
void bitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, \
GLfloat ymove, const GLubyte *bitmap); \
void callList(GLuint list); \
void callLists(GLsizei n, GLenum type, const void *lists); \
void clearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); \
void clearDepth(GLdouble depth); \
void clearIndex(GLfloat c); \
void clipPlane(GLenum plane, const GLdouble *equation); \
void color3b(GLbyte red, GLbyte green, GLbyte blue); \
void color3bv(const GLbyte *v); \
void color3d(GLdouble red, GLdouble green, GLdouble blue); \
void color3dv(const GLdouble *v); \
void color3f(GLfloat red, GLfloat green, GLfloat blue); \
void color3fv(const GLfloat *v); \
void color3i(GLint red, GLint green, GLint blue); \
void color3iv(const GLint *v); \
void color3s(GLshort red, GLshort green, GLshort blue); \
void color3sv(const GLshort *v); \
void color3ub(GLubyte red, GLubyte green, GLubyte blue); \
void color3ubv(const GLubyte *v); \
void color3ui(GLuint red, GLuint green, GLuint blue); \
void color3uiv(const GLuint *v); \
void color3us(GLushort red, GLushort green, GLushort blue); \
void color3usv(const GLushort *v); \
void color4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha); \
void color4bv(const GLbyte *v); \
void color4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha); \
void color4dv(const GLdouble *v); \
void color4fv(const GLfloat *v); \
void color4i(GLint red, GLint green, GLint blue, GLint alpha); \
void color4iv(const GLint *v); \
void color4s(GLshort red, GLshort green, GLshort blue, GLshort alpha); \
void color4sv(const GLshort *v); \
void color4ubv(const GLubyte *v); \
void color4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha); \
void color4uiv(const GLuint *v); \
void color4us(GLushort red, GLushort green, GLushort blue, GLushort alpha); \
void color4usv(const GLushort *v); \
void colorMaterial(GLenum face, GLenum mode); \
void copyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type); \
void deleteLists(GLuint list, GLsizei range); \
void depthRange(GLdouble n, GLdouble f); \
void drawBuffer(GLenum buf); \
void drawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, \
const void *pixels); \
void edgeFlag(GLboolean flag); \
void edgeFlagv(const GLboolean *flag); \
void end(); \
void endList(); \
void evalCoord1d(GLdouble u); \
void evalCoord1dv(const GLdouble *u); \
void evalCoord1f(GLfloat u); \
void evalCoord1fv(const GLfloat *u); \
void evalCoord2d(GLdouble u, GLdouble v); \
void evalCoord2dv(const GLdouble *u); \
void evalCoord2f(GLfloat u, GLfloat v); \
void evalCoord2fv(const GLfloat *u); \
void evalMesh1(GLenum mode, GLint i1, GLint i2); \
void evalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2); \
void evalPoint1(GLint i); \
void evalPoint2(GLint i, GLint j); \
void feedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer); \
void fogi(GLenum pname, GLint param); \
void fogiv(GLenum pname, const GLint *params); \
void frustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, \
GLdouble zFar); \
GLuint genLists(GLsizei range); \
void getClipPlane(GLenum plane, GLdouble *equation); \
void getDoublev(GLenum pname, GLdouble *data); \
void getLightiv(GLenum light, GLenum pname, GLint *params); \
void getMapdv(GLenum target, GLenum query, GLdouble *v); \
void getMapfv(GLenum target, GLenum query, GLfloat *v); \
void getMapiv(GLenum target, GLenum query, GLint *v); \
void getMaterialiv(GLenum face, GLenum pname, GLint *params); \
void getPixelMapfv(GLenum map, GLfloat *values); \
void getPixelMapuiv(GLenum map, GLuint *values); \
void getPixelMapusv(GLenum map, GLushort *values); \
void getPolygonStipple(GLubyte *mask); \
void getTexGendv(GLenum coord, GLenum pname, GLdouble *params); \
void getTexImage(GLenum target, GLint level, GLenum format, GLenum type, void *pixels); \
void indexMask(GLuint mask); \
void indexd(GLdouble c); \
void indexdv(const GLdouble *c); \
void indexf(GLfloat c); \
void indexfv(const GLfloat *c); \
void indexi(GLint c); \
void indexiv(const GLint *c); \
void indexs(GLshort c); \
void indexsv(const GLshort *c); \
void initNames(); \
GLboolean isList(GLuint list); \
void lightModeli(GLenum pname, GLint param); \
void lightModeliv(GLenum pname, const GLint *params); \
void lighti(GLenum light, GLenum pname, GLint param); \
void lightiv(GLenum light, GLenum pname, const GLint *params); \
void lineStipple(GLint factor, GLushort pattern); \
void listBase(GLuint base); \
void loadMatrixd(const GLdouble *m); \
void loadName(GLuint name); \
void map1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, \
const GLdouble *points); \
void map1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, \
const GLfloat *points); \
void map2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, \
GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points); \
void map2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, \
GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points); \
void mapGrid1d(GLint un, GLdouble u1, GLdouble u2); \
void mapGrid1f(GLint un, GLfloat u1, GLfloat u2); \
void mapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2); \
void mapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2); \
void materiali(GLenum face, GLenum pname, GLint param); \
void materialiv(GLenum face, GLenum pname, const GLint *params); \
void multMatrixd(const GLdouble *m); \
void newList(GLuint list, GLenum mode); \
void normal3b(GLbyte nx, GLbyte ny, GLbyte nz); \
void normal3bv(const GLbyte *v); \
void normal3d(GLdouble nx, GLdouble ny, GLdouble nz); \
void normal3dv(const GLdouble *v); \
void normal3fv(const GLfloat *v); \
void normal3i(GLint nx, GLint ny, GLint nz); \
void normal3iv(const GLint *v); \
void normal3s(GLshort nx, GLshort ny, GLshort nz); \
void normal3sv(const GLshort *v); \
void ortho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, \
GLdouble zFar); \
void passThrough(GLfloat token); \
void pixelMapfv(GLenum map, GLsizei mapsize, const GLfloat *values); \
void pixelMapuiv(GLenum map, GLsizei mapsize, const GLuint *values); \
void pixelMapusv(GLenum map, GLsizei mapsize, const GLushort *values); \
void pixelStoref(GLenum pname, GLfloat param); \
void pixelTransferf(GLenum pname, GLfloat param); \
void pixelTransferi(GLenum pname, GLint param); \
void pixelZoom(GLfloat xfactor, GLfloat yfactor); \
void polygonMode(GLenum face, GLenum mode); \
void polygonStipple(const GLubyte *mask); \
void popAttrib(); \
void popName(); \
void pushAttrib(GLbitfield mask); \
void pushName(GLuint name); \
void rasterPos2d(GLdouble x, GLdouble y); \
void rasterPos2dv(const GLdouble *v); \
void rasterPos2f(GLfloat x, GLfloat y); \
void rasterPos2fv(const GLfloat *v); \
void rasterPos2i(GLint x, GLint y); \
void rasterPos2iv(const GLint *v); \
void rasterPos2s(GLshort x, GLshort y); \
void rasterPos2sv(const GLshort *v); \
void rasterPos3d(GLdouble x, GLdouble y, GLdouble z); \
void rasterPos3dv(const GLdouble *v); \
void rasterPos3f(GLfloat x, GLfloat y, GLfloat z); \
void rasterPos3fv(const GLfloat *v); \
void rasterPos3i(GLint x, GLint y, GLint z); \
void rasterPos3iv(const GLint *v); \
void rasterPos3s(GLshort x, GLshort y, GLshort z); \
void rasterPos3sv(const GLshort *v); \
void rasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w); \
void rasterPos4dv(const GLdouble *v); \
void rasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w); \
void rasterPos4fv(const GLfloat *v); \
void rasterPos4i(GLint x, GLint y, GLint z, GLint w); \
void rasterPos4iv(const GLint *v); \
void rasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w); \
void rasterPos4sv(const GLshort *v); \
void rectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2); \
void rectdv(const GLdouble *v1, const GLdouble *v2); \
void rectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2); \
void rectfv(const GLfloat *v1, const GLfloat *v2); \
void recti(GLint x1, GLint y1, GLint x2, GLint y2); \
void rectiv(const GLint *v1, const GLint *v2); \
void rects(GLshort x1, GLshort y1, GLshort x2, GLshort y2); \
void rectsv(const GLshort *v1, const GLshort *v2); \
GLint renderMode(GLenum mode); \
void rotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z); \
void scaled(GLdouble x, GLdouble y, GLdouble z); \
void selectBuffer(GLsizei size, GLuint *buffer); \
void texCoord1d(GLdouble s); \
void texCoord1dv(const GLdouble *v); \
void texCoord1f(GLfloat s); \
void texCoord1fv(const GLfloat *v); \
void texCoord1i(GLint s); \
void texCoord1iv(const GLint *v); \
void texCoord1s(GLshort s); \
void texCoord1sv(const GLshort *v); \
void texCoord2d(GLdouble s, GLdouble t); \
void texCoord2dv(const GLdouble *v); \
void texCoord2f(GLfloat s, GLfloat t); \
void texCoord2fv(const GLfloat *v); \
void texCoord2i(GLint s, GLint t); \
void texCoord2iv(const GLint *v); \
void texCoord2s(GLshort s, GLshort t); \
void texCoord2sv(const GLshort *v); \
void texCoord3d(GLdouble s, GLdouble t, GLdouble r); \
void texCoord3dv(const GLdouble *v); \
void texCoord3f(GLfloat s, GLfloat t, GLfloat r); \
void texCoord3fv(const GLfloat *v); \
void texCoord3i(GLint s, GLint t, GLint r); \
void texCoord3iv(const GLint *v); \
void texCoord3s(GLshort s, GLshort t, GLshort r); \
void texCoord3sv(const GLshort *v); \
void texCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q); \
void texCoord4dv(const GLdouble *v); \
void texCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q); \
void texCoord4fv(const GLfloat *v); \
void texCoord4i(GLint s, GLint t, GLint r, GLint q); \
void texCoord4iv(const GLint *v); \
void texCoord4s(GLshort s, GLshort t, GLshort r, GLshort q); \
void texCoord4sv(const GLshort *v); \
void texGend(GLenum coord, GLenum pname, GLdouble param); \
void texGendv(GLenum coord, GLenum pname, const GLdouble *params); \
void texImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, \
GLenum format, GLenum type, const void *pixels); \
void translated(GLdouble x, GLdouble y, GLdouble z); \
void vertex2d(GLdouble x, GLdouble y); \
void vertex2dv(const GLdouble *v); \
void vertex2f(GLfloat x, GLfloat y); \
void vertex2fv(const GLfloat *v); \
void vertex2i(GLint x, GLint y); \
void vertex2iv(const GLint *v); \
void vertex2s(GLshort x, GLshort y); \
void vertex2sv(const GLshort *v); \
void vertex3d(GLdouble x, GLdouble y, GLdouble z); \
void vertex3dv(const GLdouble *v); \
void vertex3f(GLfloat x, GLfloat y, GLfloat z); \
void vertex3fv(const GLfloat *v); \
void vertex3i(GLint x, GLint y, GLint z); \
void vertex3iv(const GLint *v); \
void vertex3s(GLshort x, GLshort y, GLshort z); \
void vertex3sv(const GLshort *v); \
void vertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w); \
void vertex4dv(const GLdouble *v); \
void vertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w); \
void vertex4fv(const GLfloat *v); \
void vertex4i(GLint x, GLint y, GLint z, GLint w); \
void vertex4iv(const GLint *v); \
void vertex4s(GLshort x, GLshort y, GLshort z, GLshort w); \
void vertex4sv(const GLshort *v);
#endif // ANGLE_CONTEXT_API_1_0_AUTOGEN_H_

View File

@@ -0,0 +1,31 @@
// 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_gl_1_1_autogen.h: Creates a macro for interfaces in Context.
#ifndef ANGLE_CONTEXT_GL_1_1_AUTOGEN_H_
#define ANGLE_CONTEXT_GL_1_1_AUTOGEN_H_
#define ANGLE_GL_1_1_CONTEXT_API \
GLboolean areTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences); \
void arrayElement(GLint i); \
void copyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, \
GLsizei width, GLint border); \
void copyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, \
GLsizei width); \
void edgeFlagPointer(GLsizei stride, const void *pointer); \
void indexPointer(GLenum type, GLsizei stride, const void *pointer); \
void indexub(GLubyte c); \
void indexubv(const GLubyte *c); \
void interleavedArrays(GLenum format, GLsizei stride, const void *pointer); \
void popClientAttrib(); \
void prioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities); \
void pushClientAttrib(GLbitfield mask); \
void texSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, \
GLenum type, const void *pixels);
#endif // ANGLE_CONTEXT_API_1_1_AUTOGEN_H_

View File

@@ -0,0 +1,15 @@
// 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_gl_1_2_autogen.h: Creates a macro for interfaces in Context.
#ifndef ANGLE_CONTEXT_GL_1_2_AUTOGEN_H_
#define ANGLE_CONTEXT_GL_1_2_AUTOGEN_H_
#define ANGLE_GL_1_2_CONTEXT_API
#endif // ANGLE_CONTEXT_API_1_2_AUTOGEN_H_

View File

@@ -0,0 +1,55 @@
// 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_gl_1_3_autogen.h: Creates a macro for interfaces in Context.
#ifndef ANGLE_CONTEXT_GL_1_3_AUTOGEN_H_
#define ANGLE_CONTEXT_GL_1_3_AUTOGEN_H_
#define ANGLE_GL_1_3_CONTEXT_API \
void compressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, \
GLint border, GLsizei imageSize, const void *data); \
void compressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, \
GLenum format, GLsizei imageSize, const void *data); \
void getCompressedTexImage(GLenum target, GLint level, void *img); \
void loadTransposeMatrixd(const GLdouble *m); \
void loadTransposeMatrixf(const GLfloat *m); \
void multTransposeMatrixd(const GLdouble *m); \
void multTransposeMatrixf(const GLfloat *m); \
void multiTexCoord1d(GLenum target, GLdouble s); \
void multiTexCoord1dv(GLenum target, const GLdouble *v); \
void multiTexCoord1f(GLenum target, GLfloat s); \
void multiTexCoord1fv(GLenum target, const GLfloat *v); \
void multiTexCoord1i(GLenum target, GLint s); \
void multiTexCoord1iv(GLenum target, const GLint *v); \
void multiTexCoord1s(GLenum target, GLshort s); \
void multiTexCoord1sv(GLenum target, const GLshort *v); \
void multiTexCoord2d(GLenum target, GLdouble s, GLdouble t); \
void multiTexCoord2dv(GLenum target, const GLdouble *v); \
void multiTexCoord2f(GLenum target, GLfloat s, GLfloat t); \
void multiTexCoord2fv(GLenum target, const GLfloat *v); \
void multiTexCoord2i(GLenum target, GLint s, GLint t); \
void multiTexCoord2iv(GLenum target, const GLint *v); \
void multiTexCoord2s(GLenum target, GLshort s, GLshort t); \
void multiTexCoord2sv(GLenum target, const GLshort *v); \
void multiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r); \
void multiTexCoord3dv(GLenum target, const GLdouble *v); \
void multiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r); \
void multiTexCoord3fv(GLenum target, const GLfloat *v); \
void multiTexCoord3i(GLenum target, GLint s, GLint t, GLint r); \
void multiTexCoord3iv(GLenum target, const GLint *v); \
void multiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r); \
void multiTexCoord3sv(GLenum target, const GLshort *v); \
void multiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); \
void multiTexCoord4dv(GLenum target, const GLdouble *v); \
void multiTexCoord4fv(GLenum target, const GLfloat *v); \
void multiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q); \
void multiTexCoord4iv(GLenum target, const GLint *v); \
void multiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); \
void multiTexCoord4sv(GLenum target, const GLshort *v);
#endif // ANGLE_CONTEXT_API_1_3_AUTOGEN_H_

View File

@@ -0,0 +1,55 @@
// 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_gl_1_4_autogen.h: Creates a macro for interfaces in Context.
#ifndef ANGLE_CONTEXT_GL_1_4_AUTOGEN_H_
#define ANGLE_CONTEXT_GL_1_4_AUTOGEN_H_
#define ANGLE_GL_1_4_CONTEXT_API \
void fogCoordPointer(GLenum type, GLsizei stride, const void *pointer); \
void fogCoordd(GLdouble coord); \
void fogCoorddv(const GLdouble *coord); \
void fogCoordf(GLfloat coord); \
void fogCoordfv(const GLfloat *coord); \
void pointParameteri(GLenum pname, GLint param); \
void pointParameteriv(GLenum pname, const GLint *params); \
void secondaryColor3b(GLbyte red, GLbyte green, GLbyte blue); \
void secondaryColor3bv(const GLbyte *v); \
void secondaryColor3d(GLdouble red, GLdouble green, GLdouble blue); \
void secondaryColor3dv(const GLdouble *v); \
void secondaryColor3f(GLfloat red, GLfloat green, GLfloat blue); \
void secondaryColor3fv(const GLfloat *v); \
void secondaryColor3i(GLint red, GLint green, GLint blue); \
void secondaryColor3iv(const GLint *v); \
void secondaryColor3s(GLshort red, GLshort green, GLshort blue); \
void secondaryColor3sv(const GLshort *v); \
void secondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue); \
void secondaryColor3ubv(const GLubyte *v); \
void secondaryColor3ui(GLuint red, GLuint green, GLuint blue); \
void secondaryColor3uiv(const GLuint *v); \
void secondaryColor3us(GLushort red, GLushort green, GLushort blue); \
void secondaryColor3usv(const GLushort *v); \
void secondaryColorPointer(GLint size, GLenum type, GLsizei stride, const void *pointer); \
void windowPos2d(GLdouble x, GLdouble y); \
void windowPos2dv(const GLdouble *v); \
void windowPos2f(GLfloat x, GLfloat y); \
void windowPos2fv(const GLfloat *v); \
void windowPos2i(GLint x, GLint y); \
void windowPos2iv(const GLint *v); \
void windowPos2s(GLshort x, GLshort y); \
void windowPos2sv(const GLshort *v); \
void windowPos3d(GLdouble x, GLdouble y, GLdouble z); \
void windowPos3dv(const GLdouble *v); \
void windowPos3f(GLfloat x, GLfloat y, GLfloat z); \
void windowPos3fv(const GLfloat *v); \
void windowPos3i(GLint x, GLint y, GLint z); \
void windowPos3iv(const GLint *v); \
void windowPos3s(GLshort x, GLshort y, GLshort z); \
void windowPos3sv(const GLshort *v);
#endif // ANGLE_CONTEXT_API_1_4_AUTOGEN_H_

View File

@@ -0,0 +1,16 @@
// 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_gl_1_5_autogen.h: Creates a macro for interfaces in Context.
#ifndef ANGLE_CONTEXT_GL_1_5_AUTOGEN_H_
#define ANGLE_CONTEXT_GL_1_5_AUTOGEN_H_
#define ANGLE_GL_1_5_CONTEXT_API \
void getBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, void *data);
#endif // ANGLE_CONTEXT_API_1_5_AUTOGEN_H_

View File

@@ -0,0 +1,44 @@
// 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_gl_2_0_autogen.h: Creates a macro for interfaces in Context.
#ifndef ANGLE_CONTEXT_GL_2_0_AUTOGEN_H_
#define ANGLE_CONTEXT_GL_2_0_AUTOGEN_H_
#define ANGLE_GL_2_0_CONTEXT_API \
void getVertexAttribdv(GLuint index, GLenum pname, GLdouble *params); \
void vertexAttrib1d(GLuint index, GLdouble x); \
void vertexAttrib1dv(GLuint index, const GLdouble *v); \
void vertexAttrib1s(GLuint index, GLshort x); \
void vertexAttrib1sv(GLuint index, const GLshort *v); \
void vertexAttrib2d(GLuint index, GLdouble x, GLdouble y); \
void vertexAttrib2dv(GLuint index, const GLdouble *v); \
void vertexAttrib2s(GLuint index, GLshort x, GLshort y); \
void vertexAttrib2sv(GLuint index, const GLshort *v); \
void vertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z); \
void vertexAttrib3dv(GLuint index, const GLdouble *v); \
void vertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z); \
void vertexAttrib3sv(GLuint index, const GLshort *v); \
void vertexAttrib4Nbv(GLuint index, const GLbyte *v); \
void vertexAttrib4Niv(GLuint index, const GLint *v); \
void vertexAttrib4Nsv(GLuint index, const GLshort *v); \
void vertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); \
void vertexAttrib4Nubv(GLuint index, const GLubyte *v); \
void vertexAttrib4Nuiv(GLuint index, const GLuint *v); \
void vertexAttrib4Nusv(GLuint index, const GLushort *v); \
void vertexAttrib4bv(GLuint index, const GLbyte *v); \
void vertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); \
void vertexAttrib4dv(GLuint index, const GLdouble *v); \
void vertexAttrib4iv(GLuint index, const GLint *v); \
void vertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); \
void vertexAttrib4sv(GLuint index, const GLshort *v); \
void vertexAttrib4ubv(GLuint index, const GLubyte *v); \
void vertexAttrib4uiv(GLuint index, const GLuint *v); \
void vertexAttrib4usv(GLuint index, const GLushort *v);
#endif // ANGLE_CONTEXT_API_2_0_AUTOGEN_H_

View File

@@ -0,0 +1,15 @@
// 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_gl_2_1_autogen.h: Creates a macro for interfaces in Context.
#ifndef ANGLE_CONTEXT_GL_2_1_AUTOGEN_H_
#define ANGLE_CONTEXT_GL_2_1_AUTOGEN_H_
#define ANGLE_GL_2_1_CONTEXT_API
#endif // ANGLE_CONTEXT_API_2_1_AUTOGEN_H_

View File

@@ -0,0 +1,40 @@
// 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_gl_3_0_autogen.h: Creates a macro for interfaces in Context.
#ifndef ANGLE_CONTEXT_GL_3_0_AUTOGEN_H_
#define ANGLE_CONTEXT_GL_3_0_AUTOGEN_H_
#define ANGLE_GL_3_0_CONTEXT_API \
void beginConditionalRender(GLuint id, GLenum mode); \
void clampColor(GLenum target, GLenum clamp); \
void colorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a); \
void disablei(GLenum target, GLuint index); \
void enablei(GLenum target, GLuint index); \
void endConditionalRender(); \
void framebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, \
GLint level); \
GLboolean isEnabledi(GLenum target, GLuint index); \
void vertexAttribI1i(GLuint index, GLint x); \
void vertexAttribI1iv(GLuint index, const GLint *v); \
void vertexAttribI1ui(GLuint index, GLuint x); \
void vertexAttribI1uiv(GLuint index, const GLuint *v); \
void vertexAttribI2i(GLuint index, GLint x, GLint y); \
void vertexAttribI2iv(GLuint index, const GLint *v); \
void vertexAttribI2ui(GLuint index, GLuint x, GLuint y); \
void vertexAttribI2uiv(GLuint index, const GLuint *v); \
void vertexAttribI3i(GLuint index, GLint x, GLint y, GLint z); \
void vertexAttribI3iv(GLuint index, const GLint *v); \
void vertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z); \
void vertexAttribI3uiv(GLuint index, const GLuint *v); \
void vertexAttribI4bv(GLuint index, const GLbyte *v); \
void vertexAttribI4sv(GLuint index, const GLshort *v); \
void vertexAttribI4ubv(GLuint index, const GLubyte *v); \
void vertexAttribI4usv(GLuint index, const GLushort *v);
#endif // ANGLE_CONTEXT_API_3_0_AUTOGEN_H_

View File

@@ -0,0 +1,19 @@
// 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_gl_3_1_autogen.h: Creates a macro for interfaces in Context.
#ifndef ANGLE_CONTEXT_GL_3_1_AUTOGEN_H_
#define ANGLE_CONTEXT_GL_3_1_AUTOGEN_H_
#define ANGLE_GL_3_1_CONTEXT_API \
void getActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, \
GLsizei *length, GLchar *uniformName); \
void primitiveRestartIndex(GLuint index); \
void texBuffer(GLenum target, GLenum internalformat, GLuint buffer);
#endif // ANGLE_CONTEXT_API_3_1_AUTOGEN_H_

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,105 @@
//
// 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.
//
// validationGL11.cpp: Validation functions for OpenGL 1.1 entry point parameters
#include "libANGLE/validationGL11_autogen.h"
namespace gl
{
bool ValidateAreTexturesResident(Context *context,
GLsizei n,
const GLuint *textures,
GLboolean *residences)
{
return true;
}
bool ValidateArrayElement(Context *context, GLint i)
{
return true;
}
bool ValidateCopyTexImage1D(Context *context,
GLenum target,
GLint level,
GLenum internalformat,
GLint x,
GLint y,
GLsizei width,
GLint border)
{
return true;
}
bool ValidateCopyTexSubImage1D(Context *context,
GLenum target,
GLint level,
GLint xoffset,
GLint x,
GLint y,
GLsizei width)
{
return true;
}
bool ValidateEdgeFlagPointer(Context *context, GLsizei stride, const void *pointer)
{
return true;
}
bool ValidateIndexPointer(Context *context, GLenum type, GLsizei stride, const void *pointer)
{
return true;
}
bool ValidateIndexub(Context *context, GLubyte c)
{
return true;
}
bool ValidateIndexubv(Context *context, const GLubyte *c)
{
return true;
}
bool ValidateInterleavedArrays(Context *context, GLenum format, GLsizei stride, const void *pointer)
{
return true;
}
bool ValidatePopClientAttrib(Context *context)
{
return true;
}
bool ValidatePrioritizeTextures(Context *context,
GLsizei n,
const GLuint *textures,
const GLfloat *priorities)
{
return true;
}
bool ValidatePushClientAttrib(Context *context, GLbitfield mask)
{
return true;
}
bool ValidateTexSubImage1D(Context *context,
GLenum target,
GLint level,
GLint xoffset,
GLsizei width,
GLenum format,
GLenum type,
const void *pixels)
{
return true;
}
} // namespace gl

View File

@@ -0,0 +1,64 @@
// GENERATED FILE - DO NOT EDIT.
// Generated by generate_entry_points.py using data from gl.xml and wgl.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.
//
// validationGL11_autogen.h:
// Validation functions for the OpenGL 1.1 entry points.
#ifndef LIBANGLE_VALIDATION_GL11_AUTOGEN_H_
#define LIBANGLE_VALIDATION_GL11_AUTOGEN_H_
#include "common/PackedEnums.h"
namespace gl
{
class Context;
bool ValidateAreTexturesResident(Context *context,
GLsizei n,
const GLuint *textures,
GLboolean *residences);
bool ValidateArrayElement(Context *context, GLint i);
bool ValidateCopyTexImage1D(Context *context,
GLenum target,
GLint level,
GLenum internalformat,
GLint x,
GLint y,
GLsizei width,
GLint border);
bool ValidateCopyTexSubImage1D(Context *context,
GLenum target,
GLint level,
GLint xoffset,
GLint x,
GLint y,
GLsizei width);
bool ValidateEdgeFlagPointer(Context *context, GLsizei stride, const void *pointer);
bool ValidateIndexPointer(Context *context, GLenum type, GLsizei stride, const void *pointer);
bool ValidateIndexub(Context *context, GLubyte c);
bool ValidateIndexubv(Context *context, const GLubyte *c);
bool ValidateInterleavedArrays(Context *context,
GLenum format,
GLsizei stride,
const void *pointer);
bool ValidatePopClientAttrib(Context *context);
bool ValidatePrioritizeTextures(Context *context,
GLsizei n,
const GLuint *textures,
const GLfloat *priorities);
bool ValidatePushClientAttrib(Context *context, GLbitfield mask);
bool ValidateTexSubImage1D(Context *context,
GLenum target,
GLint level,
GLint xoffset,
GLsizei width,
GLenum format,
GLenum type,
const void *pixels);
} // namespace gl
#endif // LIBANGLE_VALIDATION_GL11_AUTOGEN_H_

View File

@@ -0,0 +1,12 @@
//
// 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.
//
// validationGL12.cpp: Validation functions for OpenGL 1.2 entry point parameters
#include "libANGLE/validationGL12_autogen.h"
namespace gl
{} // namespace gl

View File

@@ -0,0 +1,22 @@
// GENERATED FILE - DO NOT EDIT.
// Generated by generate_entry_points.py using data from gl.xml and wgl.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.
//
// validationGL12_autogen.h:
// Validation functions for the OpenGL 1.2 entry points.
#ifndef LIBANGLE_VALIDATION_GL12_AUTOGEN_H_
#define LIBANGLE_VALIDATION_GL12_AUTOGEN_H_
#include "common/PackedEnums.h"
namespace gl
{
class Context;
} // namespace gl
#endif // LIBANGLE_VALIDATION_GL12_AUTOGEN_H_

View File

@@ -0,0 +1,228 @@
//
// 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.
//
// validationGL13.cpp: Validation functions for OpenGL 1.3 entry point parameters
#include "libANGLE/validationGL13_autogen.h"
namespace gl
{
bool ValidateCompressedTexImage1D(Context *context,
GLenum target,
GLint level,
GLenum internalformat,
GLsizei width,
GLint border,
GLsizei imageSize,
const void *data)
{
return true;
}
bool ValidateCompressedTexSubImage1D(Context *context,
GLenum target,
GLint level,
GLint xoffset,
GLsizei width,
GLenum format,
GLsizei imageSize,
const void *data)
{
return true;
}
bool ValidateGetCompressedTexImage(Context *context, GLenum target, GLint level, void *img)
{
return true;
}
bool ValidateLoadTransposeMatrixd(Context *context, const GLdouble *m)
{
return true;
}
bool ValidateLoadTransposeMatrixf(Context *context, const GLfloat *m)
{
return true;
}
bool ValidateMultTransposeMatrixd(Context *context, const GLdouble *m)
{
return true;
}
bool ValidateMultTransposeMatrixf(Context *context, const GLfloat *m)
{
return true;
}
bool ValidateMultiTexCoord1d(Context *context, GLenum target, GLdouble s)
{
return true;
}
bool ValidateMultiTexCoord1dv(Context *context, GLenum target, const GLdouble *v)
{
return true;
}
bool ValidateMultiTexCoord1f(Context *context, GLenum target, GLfloat s)
{
return true;
}
bool ValidateMultiTexCoord1fv(Context *context, GLenum target, const GLfloat *v)
{
return true;
}
bool ValidateMultiTexCoord1i(Context *context, GLenum target, GLint s)
{
return true;
}
bool ValidateMultiTexCoord1iv(Context *context, GLenum target, const GLint *v)
{
return true;
}
bool ValidateMultiTexCoord1s(Context *context, GLenum target, GLshort s)
{
return true;
}
bool ValidateMultiTexCoord1sv(Context *context, GLenum target, const GLshort *v)
{
return true;
}
bool ValidateMultiTexCoord2d(Context *context, GLenum target, GLdouble s, GLdouble t)
{
return true;
}
bool ValidateMultiTexCoord2dv(Context *context, GLenum target, const GLdouble *v)
{
return true;
}
bool ValidateMultiTexCoord2f(Context *context, GLenum target, GLfloat s, GLfloat t)
{
return true;
}
bool ValidateMultiTexCoord2fv(Context *context, GLenum target, const GLfloat *v)
{
return true;
}
bool ValidateMultiTexCoord2i(Context *context, GLenum target, GLint s, GLint t)
{
return true;
}
bool ValidateMultiTexCoord2iv(Context *context, GLenum target, const GLint *v)
{
return true;
}
bool ValidateMultiTexCoord2s(Context *context, GLenum target, GLshort s, GLshort t)
{
return true;
}
bool ValidateMultiTexCoord2sv(Context *context, GLenum target, const GLshort *v)
{
return true;
}
bool ValidateMultiTexCoord3d(Context *context, GLenum target, GLdouble s, GLdouble t, GLdouble r)
{
return true;
}
bool ValidateMultiTexCoord3dv(Context *context, GLenum target, const GLdouble *v)
{
return true;
}
bool ValidateMultiTexCoord3f(Context *context, GLenum target, GLfloat s, GLfloat t, GLfloat r)
{
return true;
}
bool ValidateMultiTexCoord3fv(Context *context, GLenum target, const GLfloat *v)
{
return true;
}
bool ValidateMultiTexCoord3i(Context *context, GLenum target, GLint s, GLint t, GLint r)
{
return true;
}
bool ValidateMultiTexCoord3iv(Context *context, GLenum target, const GLint *v)
{
return true;
}
bool ValidateMultiTexCoord3s(Context *context, GLenum target, GLshort s, GLshort t, GLshort r)
{
return true;
}
bool ValidateMultiTexCoord3sv(Context *context, GLenum target, const GLshort *v)
{
return true;
}
bool ValidateMultiTexCoord4d(Context *context,
GLenum target,
GLdouble s,
GLdouble t,
GLdouble r,
GLdouble q)
{
return true;
}
bool ValidateMultiTexCoord4dv(Context *context, GLenum target, const GLdouble *v)
{
return true;
}
bool ValidateMultiTexCoord4fv(Context *context, GLenum target, const GLfloat *v)
{
return true;
}
bool ValidateMultiTexCoord4i(Context *context, GLenum target, GLint s, GLint t, GLint r, GLint q)
{
return true;
}
bool ValidateMultiTexCoord4iv(Context *context, GLenum target, const GLint *v)
{
return true;
}
bool ValidateMultiTexCoord4s(Context *context,
GLenum target,
GLshort s,
GLshort t,
GLshort r,
GLshort q)
{
return true;
}
bool ValidateMultiTexCoord4sv(Context *context, GLenum target, const GLshort *v)
{
return true;
}
} // namespace gl

View File

@@ -0,0 +1,84 @@
// GENERATED FILE - DO NOT EDIT.
// Generated by generate_entry_points.py using data from gl.xml and wgl.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.
//
// validationGL13_autogen.h:
// Validation functions for the OpenGL 1.3 entry points.
#ifndef LIBANGLE_VALIDATION_GL13_AUTOGEN_H_
#define LIBANGLE_VALIDATION_GL13_AUTOGEN_H_
#include "common/PackedEnums.h"
namespace gl
{
class Context;
bool ValidateCompressedTexImage1D(Context *context,
GLenum target,
GLint level,
GLenum internalformat,
GLsizei width,
GLint border,
GLsizei imageSize,
const void *data);
bool ValidateCompressedTexSubImage1D(Context *context,
GLenum target,
GLint level,
GLint xoffset,
GLsizei width,
GLenum format,
GLsizei imageSize,
const void *data);
bool ValidateGetCompressedTexImage(Context *context, GLenum target, GLint level, void *img);
bool ValidateLoadTransposeMatrixd(Context *context, const GLdouble *m);
bool ValidateLoadTransposeMatrixf(Context *context, const GLfloat *m);
bool ValidateMultTransposeMatrixd(Context *context, const GLdouble *m);
bool ValidateMultTransposeMatrixf(Context *context, const GLfloat *m);
bool ValidateMultiTexCoord1d(Context *context, GLenum target, GLdouble s);
bool ValidateMultiTexCoord1dv(Context *context, GLenum target, const GLdouble *v);
bool ValidateMultiTexCoord1f(Context *context, GLenum target, GLfloat s);
bool ValidateMultiTexCoord1fv(Context *context, GLenum target, const GLfloat *v);
bool ValidateMultiTexCoord1i(Context *context, GLenum target, GLint s);
bool ValidateMultiTexCoord1iv(Context *context, GLenum target, const GLint *v);
bool ValidateMultiTexCoord1s(Context *context, GLenum target, GLshort s);
bool ValidateMultiTexCoord1sv(Context *context, GLenum target, const GLshort *v);
bool ValidateMultiTexCoord2d(Context *context, GLenum target, GLdouble s, GLdouble t);
bool ValidateMultiTexCoord2dv(Context *context, GLenum target, const GLdouble *v);
bool ValidateMultiTexCoord2f(Context *context, GLenum target, GLfloat s, GLfloat t);
bool ValidateMultiTexCoord2fv(Context *context, GLenum target, const GLfloat *v);
bool ValidateMultiTexCoord2i(Context *context, GLenum target, GLint s, GLint t);
bool ValidateMultiTexCoord2iv(Context *context, GLenum target, const GLint *v);
bool ValidateMultiTexCoord2s(Context *context, GLenum target, GLshort s, GLshort t);
bool ValidateMultiTexCoord2sv(Context *context, GLenum target, const GLshort *v);
bool ValidateMultiTexCoord3d(Context *context, GLenum target, GLdouble s, GLdouble t, GLdouble r);
bool ValidateMultiTexCoord3dv(Context *context, GLenum target, const GLdouble *v);
bool ValidateMultiTexCoord3f(Context *context, GLenum target, GLfloat s, GLfloat t, GLfloat r);
bool ValidateMultiTexCoord3fv(Context *context, GLenum target, const GLfloat *v);
bool ValidateMultiTexCoord3i(Context *context, GLenum target, GLint s, GLint t, GLint r);
bool ValidateMultiTexCoord3iv(Context *context, GLenum target, const GLint *v);
bool ValidateMultiTexCoord3s(Context *context, GLenum target, GLshort s, GLshort t, GLshort r);
bool ValidateMultiTexCoord3sv(Context *context, GLenum target, const GLshort *v);
bool ValidateMultiTexCoord4d(Context *context,
GLenum target,
GLdouble s,
GLdouble t,
GLdouble r,
GLdouble q);
bool ValidateMultiTexCoord4dv(Context *context, GLenum target, const GLdouble *v);
bool ValidateMultiTexCoord4fv(Context *context, GLenum target, const GLfloat *v);
bool ValidateMultiTexCoord4i(Context *context, GLenum target, GLint s, GLint t, GLint r, GLint q);
bool ValidateMultiTexCoord4iv(Context *context, GLenum target, const GLint *v);
bool ValidateMultiTexCoord4s(Context *context,
GLenum target,
GLshort s,
GLshort t,
GLshort r,
GLshort q);
bool ValidateMultiTexCoord4sv(Context *context, GLenum target, const GLshort *v);
} // namespace gl
#endif // LIBANGLE_VALIDATION_GL13_AUTOGEN_H_

View File

@@ -0,0 +1,237 @@
//
// 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.
//
// validationGL14.cpp: Validation functions for OpenGL 1.4 entry point parameters
#include "libANGLE/validationGL14_autogen.h"
namespace gl
{
bool ValidateFogCoordPointer(Context *context, GLenum type, GLsizei stride, const void *pointer)
{
return true;
}
bool ValidateFogCoordd(Context *context, GLdouble coord)
{
return true;
}
bool ValidateFogCoorddv(Context *context, const GLdouble *coord)
{
return true;
}
bool ValidateFogCoordf(Context *context, GLfloat coord)
{
return true;
}
bool ValidateFogCoordfv(Context *context, const GLfloat *coord)
{
return true;
}
bool ValidateMultiDrawArrays(Context *context,
PrimitiveMode modePacked,
const GLint *first,
const GLsizei *count,
GLsizei drawcount)
{
return true;
}
bool ValidateMultiDrawElements(Context *context,
PrimitiveMode modePacked,
const GLsizei *count,
DrawElementsType typePacked,
const void *const *indices,
GLsizei drawcount)
{
return true;
}
bool ValidatePointParameteri(Context *context, GLenum pname, GLint param)
{
return true;
}
bool ValidatePointParameteriv(Context *context, GLenum pname, const GLint *params)
{
return true;
}
bool ValidateSecondaryColor3b(Context *context, GLbyte red, GLbyte green, GLbyte blue)
{
return true;
}
bool ValidateSecondaryColor3bv(Context *context, const GLbyte *v)
{
return true;
}
bool ValidateSecondaryColor3d(Context *context, GLdouble red, GLdouble green, GLdouble blue)
{
return true;
}
bool ValidateSecondaryColor3dv(Context *context, const GLdouble *v)
{
return true;
}
bool ValidateSecondaryColor3f(Context *context, GLfloat red, GLfloat green, GLfloat blue)
{
return true;
}
bool ValidateSecondaryColor3fv(Context *context, const GLfloat *v)
{
return true;
}
bool ValidateSecondaryColor3i(Context *context, GLint red, GLint green, GLint blue)
{
return true;
}
bool ValidateSecondaryColor3iv(Context *context, const GLint *v)
{
return true;
}
bool ValidateSecondaryColor3s(Context *context, GLshort red, GLshort green, GLshort blue)
{
return true;
}
bool ValidateSecondaryColor3sv(Context *context, const GLshort *v)
{
return true;
}
bool ValidateSecondaryColor3ub(Context *context, GLubyte red, GLubyte green, GLubyte blue)
{
return true;
}
bool ValidateSecondaryColor3ubv(Context *context, const GLubyte *v)
{
return true;
}
bool ValidateSecondaryColor3ui(Context *context, GLuint red, GLuint green, GLuint blue)
{
return true;
}
bool ValidateSecondaryColor3uiv(Context *context, const GLuint *v)
{
return true;
}
bool ValidateSecondaryColor3us(Context *context, GLushort red, GLushort green, GLushort blue)
{
return true;
}
bool ValidateSecondaryColor3usv(Context *context, const GLushort *v)
{
return true;
}
bool ValidateSecondaryColorPointer(Context *context,
GLint size,
GLenum type,
GLsizei stride,
const void *pointer)
{
return true;
}
bool ValidateWindowPos2d(Context *context, GLdouble x, GLdouble y)
{
return true;
}
bool ValidateWindowPos2dv(Context *context, const GLdouble *v)
{
return true;
}
bool ValidateWindowPos2f(Context *context, GLfloat x, GLfloat y)
{
return true;
}
bool ValidateWindowPos2fv(Context *context, const GLfloat *v)
{
return true;
}
bool ValidateWindowPos2i(Context *context, GLint x, GLint y)
{
return true;
}
bool ValidateWindowPos2iv(Context *context, const GLint *v)
{
return true;
}
bool ValidateWindowPos2s(Context *context, GLshort x, GLshort y)
{
return true;
}
bool ValidateWindowPos2sv(Context *context, const GLshort *v)
{
return true;
}
bool ValidateWindowPos3d(Context *context, GLdouble x, GLdouble y, GLdouble z)
{
return true;
}
bool ValidateWindowPos3dv(Context *context, const GLdouble *v)
{
return true;
}
bool ValidateWindowPos3f(Context *context, GLfloat x, GLfloat y, GLfloat z)
{
return true;
}
bool ValidateWindowPos3fv(Context *context, const GLfloat *v)
{
return true;
}
bool ValidateWindowPos3i(Context *context, GLint x, GLint y, GLint z)
{
return true;
}
bool ValidateWindowPos3iv(Context *context, const GLint *v)
{
return true;
}
bool ValidateWindowPos3s(Context *context, GLshort x, GLshort y, GLshort z)
{
return true;
}
bool ValidateWindowPos3sv(Context *context, const GLshort *v)
{
return true;
}
} // namespace gl

View File

@@ -0,0 +1,77 @@
// GENERATED FILE - DO NOT EDIT.
// Generated by generate_entry_points.py using data from gl.xml and wgl.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.
//
// validationGL14_autogen.h:
// Validation functions for the OpenGL 1.4 entry points.
#ifndef LIBANGLE_VALIDATION_GL14_AUTOGEN_H_
#define LIBANGLE_VALIDATION_GL14_AUTOGEN_H_
#include "common/PackedEnums.h"
namespace gl
{
class Context;
bool ValidateFogCoordPointer(Context *context, GLenum type, GLsizei stride, const void *pointer);
bool ValidateFogCoordd(Context *context, GLdouble coord);
bool ValidateFogCoorddv(Context *context, const GLdouble *coord);
bool ValidateFogCoordf(Context *context, GLfloat coord);
bool ValidateFogCoordfv(Context *context, const GLfloat *coord);
bool ValidateMultiDrawArrays(Context *context,
PrimitiveMode modePacked,
const GLint *first,
const GLsizei *count,
GLsizei drawcount);
bool ValidateMultiDrawElements(Context *context,
PrimitiveMode modePacked,
const GLsizei *count,
DrawElementsType typePacked,
const void *const *indices,
GLsizei drawcount);
bool ValidatePointParameteri(Context *context, GLenum pname, GLint param);
bool ValidatePointParameteriv(Context *context, GLenum pname, const GLint *params);
bool ValidateSecondaryColor3b(Context *context, GLbyte red, GLbyte green, GLbyte blue);
bool ValidateSecondaryColor3bv(Context *context, const GLbyte *v);
bool ValidateSecondaryColor3d(Context *context, GLdouble red, GLdouble green, GLdouble blue);
bool ValidateSecondaryColor3dv(Context *context, const GLdouble *v);
bool ValidateSecondaryColor3f(Context *context, GLfloat red, GLfloat green, GLfloat blue);
bool ValidateSecondaryColor3fv(Context *context, const GLfloat *v);
bool ValidateSecondaryColor3i(Context *context, GLint red, GLint green, GLint blue);
bool ValidateSecondaryColor3iv(Context *context, const GLint *v);
bool ValidateSecondaryColor3s(Context *context, GLshort red, GLshort green, GLshort blue);
bool ValidateSecondaryColor3sv(Context *context, const GLshort *v);
bool ValidateSecondaryColor3ub(Context *context, GLubyte red, GLubyte green, GLubyte blue);
bool ValidateSecondaryColor3ubv(Context *context, const GLubyte *v);
bool ValidateSecondaryColor3ui(Context *context, GLuint red, GLuint green, GLuint blue);
bool ValidateSecondaryColor3uiv(Context *context, const GLuint *v);
bool ValidateSecondaryColor3us(Context *context, GLushort red, GLushort green, GLushort blue);
bool ValidateSecondaryColor3usv(Context *context, const GLushort *v);
bool ValidateSecondaryColorPointer(Context *context,
GLint size,
GLenum type,
GLsizei stride,
const void *pointer);
bool ValidateWindowPos2d(Context *context, GLdouble x, GLdouble y);
bool ValidateWindowPos2dv(Context *context, const GLdouble *v);
bool ValidateWindowPos2f(Context *context, GLfloat x, GLfloat y);
bool ValidateWindowPos2fv(Context *context, const GLfloat *v);
bool ValidateWindowPos2i(Context *context, GLint x, GLint y);
bool ValidateWindowPos2iv(Context *context, const GLint *v);
bool ValidateWindowPos2s(Context *context, GLshort x, GLshort y);
bool ValidateWindowPos2sv(Context *context, const GLshort *v);
bool ValidateWindowPos3d(Context *context, GLdouble x, GLdouble y, GLdouble z);
bool ValidateWindowPos3dv(Context *context, const GLdouble *v);
bool ValidateWindowPos3f(Context *context, GLfloat x, GLfloat y, GLfloat z);
bool ValidateWindowPos3fv(Context *context, const GLfloat *v);
bool ValidateWindowPos3i(Context *context, GLint x, GLint y, GLint z);
bool ValidateWindowPos3iv(Context *context, const GLint *v);
bool ValidateWindowPos3s(Context *context, GLshort x, GLshort y, GLshort z);
bool ValidateWindowPos3sv(Context *context, const GLshort *v);
} // namespace gl
#endif // LIBANGLE_VALIDATION_GL14_AUTOGEN_H_

View File

@@ -0,0 +1,33 @@
//
// 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.
//
// validationGL15.cpp: Validation functions for OpenGL 1.5 entry point parameters
#include "libANGLE/validationGL15_autogen.h"
namespace gl
{
bool ValidateGetBufferSubData(Context *context,
GLenum target,
GLintptr offset,
GLsizeiptr size,
void *data)
{
return true;
}
bool ValidateGetQueryObjectiv(Context *context, GLuint id, GLenum pname, GLint *params)
{
return true;
}
bool ValidateMapBuffer(Context *context, BufferBinding targetPacked, GLenum access)
{
return true;
}
} // namespace gl

View File

@@ -0,0 +1,29 @@
// GENERATED FILE - DO NOT EDIT.
// Generated by generate_entry_points.py using data from gl.xml and wgl.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.
//
// validationGL15_autogen.h:
// Validation functions for the OpenGL 1.5 entry points.
#ifndef LIBANGLE_VALIDATION_GL15_AUTOGEN_H_
#define LIBANGLE_VALIDATION_GL15_AUTOGEN_H_
#include "common/PackedEnums.h"
namespace gl
{
class Context;
bool ValidateGetBufferSubData(Context *context,
GLenum target,
GLintptr offset,
GLsizeiptr size,
void *data);
bool ValidateGetQueryObjectiv(Context *context, GLuint id, GLenum pname, GLint *params);
bool ValidateMapBuffer(Context *context, BufferBinding targetPacked, GLenum access);
} // namespace gl
#endif // LIBANGLE_VALIDATION_GL15_AUTOGEN_H_

View File

@@ -0,0 +1,348 @@
// GENERATED FILE - DO NOT EDIT.
// Generated by generate_entry_points.py using data from gl.xml and wgl.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.
//
// validationGL1_autogen.h:
// Validation functions for the OpenGL 1.0 entry points.
#ifndef LIBANGLE_VALIDATION_GL1_AUTOGEN_H_
#define LIBANGLE_VALIDATION_GL1_AUTOGEN_H_
#include "common/PackedEnums.h"
namespace gl
{
class Context;
bool ValidateAccum(Context *context, GLenum op, GLfloat value);
bool ValidateBegin(Context *context, GLenum mode);
bool ValidateBitmap(Context *context,
GLsizei width,
GLsizei height,
GLfloat xorig,
GLfloat yorig,
GLfloat xmove,
GLfloat ymove,
const GLubyte *bitmap);
bool ValidateCallList(Context *context, GLuint list);
bool ValidateCallLists(Context *context, GLsizei n, GLenum type, const void *lists);
bool ValidateClearAccum(Context *context, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
bool ValidateClearDepth(Context *context, GLdouble depth);
bool ValidateClearIndex(Context *context, GLfloat c);
bool ValidateClipPlane(Context *context, GLenum plane, const GLdouble *equation);
bool ValidateColor3b(Context *context, GLbyte red, GLbyte green, GLbyte blue);
bool ValidateColor3bv(Context *context, const GLbyte *v);
bool ValidateColor3d(Context *context, GLdouble red, GLdouble green, GLdouble blue);
bool ValidateColor3dv(Context *context, const GLdouble *v);
bool ValidateColor3f(Context *context, GLfloat red, GLfloat green, GLfloat blue);
bool ValidateColor3fv(Context *context, const GLfloat *v);
bool ValidateColor3i(Context *context, GLint red, GLint green, GLint blue);
bool ValidateColor3iv(Context *context, const GLint *v);
bool ValidateColor3s(Context *context, GLshort red, GLshort green, GLshort blue);
bool ValidateColor3sv(Context *context, const GLshort *v);
bool ValidateColor3ub(Context *context, GLubyte red, GLubyte green, GLubyte blue);
bool ValidateColor3ubv(Context *context, const GLubyte *v);
bool ValidateColor3ui(Context *context, GLuint red, GLuint green, GLuint blue);
bool ValidateColor3uiv(Context *context, const GLuint *v);
bool ValidateColor3us(Context *context, GLushort red, GLushort green, GLushort blue);
bool ValidateColor3usv(Context *context, const GLushort *v);
bool ValidateColor4b(Context *context, GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
bool ValidateColor4bv(Context *context, const GLbyte *v);
bool ValidateColor4d(Context *context, GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
bool ValidateColor4dv(Context *context, const GLdouble *v);
bool ValidateColor4fv(Context *context, const GLfloat *v);
bool ValidateColor4i(Context *context, GLint red, GLint green, GLint blue, GLint alpha);
bool ValidateColor4iv(Context *context, const GLint *v);
bool ValidateColor4s(Context *context, GLshort red, GLshort green, GLshort blue, GLshort alpha);
bool ValidateColor4sv(Context *context, const GLshort *v);
bool ValidateColor4ubv(Context *context, const GLubyte *v);
bool ValidateColor4ui(Context *context, GLuint red, GLuint green, GLuint blue, GLuint alpha);
bool ValidateColor4uiv(Context *context, const GLuint *v);
bool ValidateColor4us(Context *context,
GLushort red,
GLushort green,
GLushort blue,
GLushort alpha);
bool ValidateColor4usv(Context *context, const GLushort *v);
bool ValidateColorMaterial(Context *context, GLenum face, GLenum mode);
bool ValidateCopyPixels(Context *context,
GLint x,
GLint y,
GLsizei width,
GLsizei height,
GLenum type);
bool ValidateDeleteLists(Context *context, GLuint list, GLsizei range);
bool ValidateDepthRange(Context *context, GLdouble n, GLdouble f);
bool ValidateDrawBuffer(Context *context, GLenum buf);
bool ValidateDrawPixels(Context *context,
GLsizei width,
GLsizei height,
GLenum format,
GLenum type,
const void *pixels);
bool ValidateEdgeFlag(Context *context, GLboolean flag);
bool ValidateEdgeFlagv(Context *context, const GLboolean *flag);
bool ValidateEnd(Context *context);
bool ValidateEndList(Context *context);
bool ValidateEvalCoord1d(Context *context, GLdouble u);
bool ValidateEvalCoord1dv(Context *context, const GLdouble *u);
bool ValidateEvalCoord1f(Context *context, GLfloat u);
bool ValidateEvalCoord1fv(Context *context, const GLfloat *u);
bool ValidateEvalCoord2d(Context *context, GLdouble u, GLdouble v);
bool ValidateEvalCoord2dv(Context *context, const GLdouble *u);
bool ValidateEvalCoord2f(Context *context, GLfloat u, GLfloat v);
bool ValidateEvalCoord2fv(Context *context, const GLfloat *u);
bool ValidateEvalMesh1(Context *context, GLenum mode, GLint i1, GLint i2);
bool ValidateEvalMesh2(Context *context, GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
bool ValidateEvalPoint1(Context *context, GLint i);
bool ValidateEvalPoint2(Context *context, GLint i, GLint j);
bool ValidateFeedbackBuffer(Context *context, GLsizei size, GLenum type, GLfloat *buffer);
bool ValidateFogi(Context *context, GLenum pname, GLint param);
bool ValidateFogiv(Context *context, GLenum pname, const GLint *params);
bool ValidateFrustum(Context *context,
GLdouble left,
GLdouble right,
GLdouble bottom,
GLdouble top,
GLdouble zNear,
GLdouble zFar);
bool ValidateGenLists(Context *context, GLsizei range);
bool ValidateGetClipPlane(Context *context, GLenum plane, GLdouble *equation);
bool ValidateGetDoublev(Context *context, GLenum pname, GLdouble *data);
bool ValidateGetLightiv(Context *context, GLenum light, GLenum pname, GLint *params);
bool ValidateGetMapdv(Context *context, GLenum target, GLenum query, GLdouble *v);
bool ValidateGetMapfv(Context *context, GLenum target, GLenum query, GLfloat *v);
bool ValidateGetMapiv(Context *context, GLenum target, GLenum query, GLint *v);
bool ValidateGetMaterialiv(Context *context, GLenum face, GLenum pname, GLint *params);
bool ValidateGetPixelMapfv(Context *context, GLenum map, GLfloat *values);
bool ValidateGetPixelMapuiv(Context *context, GLenum map, GLuint *values);
bool ValidateGetPixelMapusv(Context *context, GLenum map, GLushort *values);
bool ValidateGetPolygonStipple(Context *context, GLubyte *mask);
bool ValidateGetTexGendv(Context *context, GLenum coord, GLenum pname, GLdouble *params);
bool ValidateGetTexGenfv(Context *context, GLenum coord, GLenum pname, GLfloat *params);
bool ValidateGetTexGeniv(Context *context, GLenum coord, GLenum pname, GLint *params);
bool ValidateGetTexImage(Context *context,
GLenum target,
GLint level,
GLenum format,
GLenum type,
void *pixels);
bool ValidateIndexMask(Context *context, GLuint mask);
bool ValidateIndexd(Context *context, GLdouble c);
bool ValidateIndexdv(Context *context, const GLdouble *c);
bool ValidateIndexf(Context *context, GLfloat c);
bool ValidateIndexfv(Context *context, const GLfloat *c);
bool ValidateIndexi(Context *context, GLint c);
bool ValidateIndexiv(Context *context, const GLint *c);
bool ValidateIndexs(Context *context, GLshort c);
bool ValidateIndexsv(Context *context, const GLshort *c);
bool ValidateInitNames(Context *context);
bool ValidateIsList(Context *context, GLuint list);
bool ValidateLightModeli(Context *context, GLenum pname, GLint param);
bool ValidateLightModeliv(Context *context, GLenum pname, const GLint *params);
bool ValidateLighti(Context *context, GLenum light, GLenum pname, GLint param);
bool ValidateLightiv(Context *context, GLenum light, GLenum pname, const GLint *params);
bool ValidateLineStipple(Context *context, GLint factor, GLushort pattern);
bool ValidateListBase(Context *context, GLuint base);
bool ValidateLoadMatrixd(Context *context, const GLdouble *m);
bool ValidateLoadName(Context *context, GLuint name);
bool ValidateMap1d(Context *context,
GLenum target,
GLdouble u1,
GLdouble u2,
GLint stride,
GLint order,
const GLdouble *points);
bool ValidateMap1f(Context *context,
GLenum target,
GLfloat u1,
GLfloat u2,
GLint stride,
GLint order,
const GLfloat *points);
bool ValidateMap2d(Context *context,
GLenum target,
GLdouble u1,
GLdouble u2,
GLint ustride,
GLint uorder,
GLdouble v1,
GLdouble v2,
GLint vstride,
GLint vorder,
const GLdouble *points);
bool ValidateMap2f(Context *context,
GLenum target,
GLfloat u1,
GLfloat u2,
GLint ustride,
GLint uorder,
GLfloat v1,
GLfloat v2,
GLint vstride,
GLint vorder,
const GLfloat *points);
bool ValidateMapGrid1d(Context *context, GLint un, GLdouble u1, GLdouble u2);
bool ValidateMapGrid1f(Context *context, GLint un, GLfloat u1, GLfloat u2);
bool ValidateMapGrid2d(Context *context,
GLint un,
GLdouble u1,
GLdouble u2,
GLint vn,
GLdouble v1,
GLdouble v2);
bool ValidateMapGrid2f(Context *context,
GLint un,
GLfloat u1,
GLfloat u2,
GLint vn,
GLfloat v1,
GLfloat v2);
bool ValidateMateriali(Context *context, GLenum face, GLenum pname, GLint param);
bool ValidateMaterialiv(Context *context, GLenum face, GLenum pname, const GLint *params);
bool ValidateMultMatrixd(Context *context, const GLdouble *m);
bool ValidateNewList(Context *context, GLuint list, GLenum mode);
bool ValidateNormal3b(Context *context, GLbyte nx, GLbyte ny, GLbyte nz);
bool ValidateNormal3bv(Context *context, const GLbyte *v);
bool ValidateNormal3d(Context *context, GLdouble nx, GLdouble ny, GLdouble nz);
bool ValidateNormal3dv(Context *context, const GLdouble *v);
bool ValidateNormal3fv(Context *context, const GLfloat *v);
bool ValidateNormal3i(Context *context, GLint nx, GLint ny, GLint nz);
bool ValidateNormal3iv(Context *context, const GLint *v);
bool ValidateNormal3s(Context *context, GLshort nx, GLshort ny, GLshort nz);
bool ValidateNormal3sv(Context *context, const GLshort *v);
bool ValidateOrtho(Context *context,
GLdouble left,
GLdouble right,
GLdouble bottom,
GLdouble top,
GLdouble zNear,
GLdouble zFar);
bool ValidatePassThrough(Context *context, GLfloat token);
bool ValidatePixelMapfv(Context *context, GLenum map, GLsizei mapsize, const GLfloat *values);
bool ValidatePixelMapuiv(Context *context, GLenum map, GLsizei mapsize, const GLuint *values);
bool ValidatePixelMapusv(Context *context, GLenum map, GLsizei mapsize, const GLushort *values);
bool ValidatePixelStoref(Context *context, GLenum pname, GLfloat param);
bool ValidatePixelTransferf(Context *context, GLenum pname, GLfloat param);
bool ValidatePixelTransferi(Context *context, GLenum pname, GLint param);
bool ValidatePixelZoom(Context *context, GLfloat xfactor, GLfloat yfactor);
bool ValidatePolygonMode(Context *context, GLenum face, GLenum mode);
bool ValidatePolygonStipple(Context *context, const GLubyte *mask);
bool ValidatePopAttrib(Context *context);
bool ValidatePopName(Context *context);
bool ValidatePushAttrib(Context *context, GLbitfield mask);
bool ValidatePushName(Context *context, GLuint name);
bool ValidateRasterPos2d(Context *context, GLdouble x, GLdouble y);
bool ValidateRasterPos2dv(Context *context, const GLdouble *v);
bool ValidateRasterPos2f(Context *context, GLfloat x, GLfloat y);
bool ValidateRasterPos2fv(Context *context, const GLfloat *v);
bool ValidateRasterPos2i(Context *context, GLint x, GLint y);
bool ValidateRasterPos2iv(Context *context, const GLint *v);
bool ValidateRasterPos2s(Context *context, GLshort x, GLshort y);
bool ValidateRasterPos2sv(Context *context, const GLshort *v);
bool ValidateRasterPos3d(Context *context, GLdouble x, GLdouble y, GLdouble z);
bool ValidateRasterPos3dv(Context *context, const GLdouble *v);
bool ValidateRasterPos3f(Context *context, GLfloat x, GLfloat y, GLfloat z);
bool ValidateRasterPos3fv(Context *context, const GLfloat *v);
bool ValidateRasterPos3i(Context *context, GLint x, GLint y, GLint z);
bool ValidateRasterPos3iv(Context *context, const GLint *v);
bool ValidateRasterPos3s(Context *context, GLshort x, GLshort y, GLshort z);
bool ValidateRasterPos3sv(Context *context, const GLshort *v);
bool ValidateRasterPos4d(Context *context, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
bool ValidateRasterPos4dv(Context *context, const GLdouble *v);
bool ValidateRasterPos4f(Context *context, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
bool ValidateRasterPos4fv(Context *context, const GLfloat *v);
bool ValidateRasterPos4i(Context *context, GLint x, GLint y, GLint z, GLint w);
bool ValidateRasterPos4iv(Context *context, const GLint *v);
bool ValidateRasterPos4s(Context *context, GLshort x, GLshort y, GLshort z, GLshort w);
bool ValidateRasterPos4sv(Context *context, const GLshort *v);
bool ValidateRectd(Context *context, GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
bool ValidateRectdv(Context *context, const GLdouble *v1, const GLdouble *v2);
bool ValidateRectf(Context *context, GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
bool ValidateRectfv(Context *context, const GLfloat *v1, const GLfloat *v2);
bool ValidateRecti(Context *context, GLint x1, GLint y1, GLint x2, GLint y2);
bool ValidateRectiv(Context *context, const GLint *v1, const GLint *v2);
bool ValidateRects(Context *context, GLshort x1, GLshort y1, GLshort x2, GLshort y2);
bool ValidateRectsv(Context *context, const GLshort *v1, const GLshort *v2);
bool ValidateRenderMode(Context *context, GLenum mode);
bool ValidateRotated(Context *context, GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
bool ValidateScaled(Context *context, GLdouble x, GLdouble y, GLdouble z);
bool ValidateSelectBuffer(Context *context, GLsizei size, GLuint *buffer);
bool ValidateTexCoord1d(Context *context, GLdouble s);
bool ValidateTexCoord1dv(Context *context, const GLdouble *v);
bool ValidateTexCoord1f(Context *context, GLfloat s);
bool ValidateTexCoord1fv(Context *context, const GLfloat *v);
bool ValidateTexCoord1i(Context *context, GLint s);
bool ValidateTexCoord1iv(Context *context, const GLint *v);
bool ValidateTexCoord1s(Context *context, GLshort s);
bool ValidateTexCoord1sv(Context *context, const GLshort *v);
bool ValidateTexCoord2d(Context *context, GLdouble s, GLdouble t);
bool ValidateTexCoord2dv(Context *context, const GLdouble *v);
bool ValidateTexCoord2f(Context *context, GLfloat s, GLfloat t);
bool ValidateTexCoord2fv(Context *context, const GLfloat *v);
bool ValidateTexCoord2i(Context *context, GLint s, GLint t);
bool ValidateTexCoord2iv(Context *context, const GLint *v);
bool ValidateTexCoord2s(Context *context, GLshort s, GLshort t);
bool ValidateTexCoord2sv(Context *context, const GLshort *v);
bool ValidateTexCoord3d(Context *context, GLdouble s, GLdouble t, GLdouble r);
bool ValidateTexCoord3dv(Context *context, const GLdouble *v);
bool ValidateTexCoord3f(Context *context, GLfloat s, GLfloat t, GLfloat r);
bool ValidateTexCoord3fv(Context *context, const GLfloat *v);
bool ValidateTexCoord3i(Context *context, GLint s, GLint t, GLint r);
bool ValidateTexCoord3iv(Context *context, const GLint *v);
bool ValidateTexCoord3s(Context *context, GLshort s, GLshort t, GLshort r);
bool ValidateTexCoord3sv(Context *context, const GLshort *v);
bool ValidateTexCoord4d(Context *context, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
bool ValidateTexCoord4dv(Context *context, const GLdouble *v);
bool ValidateTexCoord4f(Context *context, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
bool ValidateTexCoord4fv(Context *context, const GLfloat *v);
bool ValidateTexCoord4i(Context *context, GLint s, GLint t, GLint r, GLint q);
bool ValidateTexCoord4iv(Context *context, const GLint *v);
bool ValidateTexCoord4s(Context *context, GLshort s, GLshort t, GLshort r, GLshort q);
bool ValidateTexCoord4sv(Context *context, const GLshort *v);
bool ValidateTexGend(Context *context, GLenum coord, GLenum pname, GLdouble param);
bool ValidateTexGendv(Context *context, GLenum coord, GLenum pname, const GLdouble *params);
bool ValidateTexGenf(Context *context, GLenum coord, GLenum pname, GLfloat param);
bool ValidateTexGenfv(Context *context, GLenum coord, GLenum pname, const GLfloat *params);
bool ValidateTexGeni(Context *context, GLenum coord, GLenum pname, GLint param);
bool ValidateTexGeniv(Context *context, GLenum coord, GLenum pname, const GLint *params);
bool ValidateTexImage1D(Context *context,
GLenum target,
GLint level,
GLint internalformat,
GLsizei width,
GLint border,
GLenum format,
GLenum type,
const void *pixels);
bool ValidateTranslated(Context *context, GLdouble x, GLdouble y, GLdouble z);
bool ValidateVertex2d(Context *context, GLdouble x, GLdouble y);
bool ValidateVertex2dv(Context *context, const GLdouble *v);
bool ValidateVertex2f(Context *context, GLfloat x, GLfloat y);
bool ValidateVertex2fv(Context *context, const GLfloat *v);
bool ValidateVertex2i(Context *context, GLint x, GLint y);
bool ValidateVertex2iv(Context *context, const GLint *v);
bool ValidateVertex2s(Context *context, GLshort x, GLshort y);
bool ValidateVertex2sv(Context *context, const GLshort *v);
bool ValidateVertex3d(Context *context, GLdouble x, GLdouble y, GLdouble z);
bool ValidateVertex3dv(Context *context, const GLdouble *v);
bool ValidateVertex3f(Context *context, GLfloat x, GLfloat y, GLfloat z);
bool ValidateVertex3fv(Context *context, const GLfloat *v);
bool ValidateVertex3i(Context *context, GLint x, GLint y, GLint z);
bool ValidateVertex3iv(Context *context, const GLint *v);
bool ValidateVertex3s(Context *context, GLshort x, GLshort y, GLshort z);
bool ValidateVertex3sv(Context *context, const GLshort *v);
bool ValidateVertex4d(Context *context, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
bool ValidateVertex4dv(Context *context, const GLdouble *v);
bool ValidateVertex4f(Context *context, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
bool ValidateVertex4fv(Context *context, const GLfloat *v);
bool ValidateVertex4i(Context *context, GLint x, GLint y, GLint z, GLint w);
bool ValidateVertex4iv(Context *context, const GLint *v);
bool ValidateVertex4s(Context *context, GLshort x, GLshort y, GLshort z, GLshort w);
bool ValidateVertex4sv(Context *context, const GLshort *v);
} // namespace gl
#endif // LIBANGLE_VALIDATION_GL1_AUTOGEN_H_

View File

@@ -0,0 +1,174 @@
//
// 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.
//
// validationGL2.cpp: Validation functions for OpenGL 2.0 entry point parameters
#include "libANGLE/validationGL2_autogen.h"
namespace gl
{
bool ValidateGetVertexAttribdv(Context *context, GLuint index, GLenum pname, GLdouble *params)
{
return true;
}
bool ValidateVertexAttrib1d(Context *context, GLuint index, GLdouble x)
{
return true;
}
bool ValidateVertexAttrib1dv(Context *context, GLuint index, const GLdouble *v)
{
return true;
}
bool ValidateVertexAttrib1s(Context *context, GLuint index, GLshort x)
{
return true;
}
bool ValidateVertexAttrib1sv(Context *context, GLuint index, const GLshort *v)
{
return true;
}
bool ValidateVertexAttrib2d(Context *context, GLuint index, GLdouble x, GLdouble y)
{
return true;
}
bool ValidateVertexAttrib2dv(Context *context, GLuint index, const GLdouble *v)
{
return true;
}
bool ValidateVertexAttrib2s(Context *context, GLuint index, GLshort x, GLshort y)
{
return true;
}
bool ValidateVertexAttrib2sv(Context *context, GLuint index, const GLshort *v)
{
return true;
}
bool ValidateVertexAttrib3d(Context *context, GLuint index, GLdouble x, GLdouble y, GLdouble z)
{
return true;
}
bool ValidateVertexAttrib3dv(Context *context, GLuint index, const GLdouble *v)
{
return true;
}
bool ValidateVertexAttrib3s(Context *context, GLuint index, GLshort x, GLshort y, GLshort z)
{
return true;
}
bool ValidateVertexAttrib3sv(Context *context, GLuint index, const GLshort *v)
{
return true;
}
bool ValidateVertexAttrib4Nbv(Context *context, GLuint index, const GLbyte *v)
{
return true;
}
bool ValidateVertexAttrib4Niv(Context *context, GLuint index, const GLint *v)
{
return true;
}
bool ValidateVertexAttrib4Nsv(Context *context, GLuint index, const GLshort *v)
{
return true;
}
bool ValidateVertexAttrib4Nub(Context *context,
GLuint index,
GLubyte x,
GLubyte y,
GLubyte z,
GLubyte w)
{
return true;
}
bool ValidateVertexAttrib4Nubv(Context *context, GLuint index, const GLubyte *v)
{
return true;
}
bool ValidateVertexAttrib4Nuiv(Context *context, GLuint index, const GLuint *v)
{
return true;
}
bool ValidateVertexAttrib4Nusv(Context *context, GLuint index, const GLushort *v)
{
return true;
}
bool ValidateVertexAttrib4bv(Context *context, GLuint index, const GLbyte *v)
{
return true;
}
bool ValidateVertexAttrib4d(Context *context,
GLuint index,
GLdouble x,
GLdouble y,
GLdouble z,
GLdouble w)
{
return true;
}
bool ValidateVertexAttrib4dv(Context *context, GLuint index, const GLdouble *v)
{
return true;
}
bool ValidateVertexAttrib4iv(Context *context, GLuint index, const GLint *v)
{
return true;
}
bool ValidateVertexAttrib4s(Context *context,
GLuint index,
GLshort x,
GLshort y,
GLshort z,
GLshort w)
{
return true;
}
bool ValidateVertexAttrib4sv(Context *context, GLuint index, const GLshort *v)
{
return true;
}
bool ValidateVertexAttrib4ubv(Context *context, GLuint index, const GLubyte *v)
{
return true;
}
bool ValidateVertexAttrib4uiv(Context *context, GLuint index, const GLuint *v)
{
return true;
}
bool ValidateVertexAttrib4usv(Context *context, GLuint index, const GLushort *v)
{
return true;
}
} // namespace gl

View File

@@ -0,0 +1,12 @@
//
// 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.
//
// validationGL21.cpp: Validation functions for OpenGL 2.1 entry point parameters
#include "libANGLE/validationGL21_autogen.h"
namespace gl
{} // namespace gl

View File

@@ -0,0 +1,22 @@
// GENERATED FILE - DO NOT EDIT.
// Generated by generate_entry_points.py using data from gl.xml and wgl.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.
//
// validationGL21_autogen.h:
// Validation functions for the OpenGL 2.1 entry points.
#ifndef LIBANGLE_VALIDATION_GL21_AUTOGEN_H_
#define LIBANGLE_VALIDATION_GL21_AUTOGEN_H_
#include "common/PackedEnums.h"
namespace gl
{
class Context;
} // namespace gl
#endif // LIBANGLE_VALIDATION_GL21_AUTOGEN_H_

View File

@@ -0,0 +1,66 @@
// GENERATED FILE - DO NOT EDIT.
// Generated by generate_entry_points.py using data from gl.xml and wgl.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.
//
// validationGL2_autogen.h:
// Validation functions for the OpenGL 2.0 entry points.
#ifndef LIBANGLE_VALIDATION_GL2_AUTOGEN_H_
#define LIBANGLE_VALIDATION_GL2_AUTOGEN_H_
#include "common/PackedEnums.h"
namespace gl
{
class Context;
bool ValidateGetVertexAttribdv(Context *context, GLuint index, GLenum pname, GLdouble *params);
bool ValidateVertexAttrib1d(Context *context, GLuint index, GLdouble x);
bool ValidateVertexAttrib1dv(Context *context, GLuint index, const GLdouble *v);
bool ValidateVertexAttrib1s(Context *context, GLuint index, GLshort x);
bool ValidateVertexAttrib1sv(Context *context, GLuint index, const GLshort *v);
bool ValidateVertexAttrib2d(Context *context, GLuint index, GLdouble x, GLdouble y);
bool ValidateVertexAttrib2dv(Context *context, GLuint index, const GLdouble *v);
bool ValidateVertexAttrib2s(Context *context, GLuint index, GLshort x, GLshort y);
bool ValidateVertexAttrib2sv(Context *context, GLuint index, const GLshort *v);
bool ValidateVertexAttrib3d(Context *context, GLuint index, GLdouble x, GLdouble y, GLdouble z);
bool ValidateVertexAttrib3dv(Context *context, GLuint index, const GLdouble *v);
bool ValidateVertexAttrib3s(Context *context, GLuint index, GLshort x, GLshort y, GLshort z);
bool ValidateVertexAttrib3sv(Context *context, GLuint index, const GLshort *v);
bool ValidateVertexAttrib4Nbv(Context *context, GLuint index, const GLbyte *v);
bool ValidateVertexAttrib4Niv(Context *context, GLuint index, const GLint *v);
bool ValidateVertexAttrib4Nsv(Context *context, GLuint index, const GLshort *v);
bool ValidateVertexAttrib4Nub(Context *context,
GLuint index,
GLubyte x,
GLubyte y,
GLubyte z,
GLubyte w);
bool ValidateVertexAttrib4Nubv(Context *context, GLuint index, const GLubyte *v);
bool ValidateVertexAttrib4Nuiv(Context *context, GLuint index, const GLuint *v);
bool ValidateVertexAttrib4Nusv(Context *context, GLuint index, const GLushort *v);
bool ValidateVertexAttrib4bv(Context *context, GLuint index, const GLbyte *v);
bool ValidateVertexAttrib4d(Context *context,
GLuint index,
GLdouble x,
GLdouble y,
GLdouble z,
GLdouble w);
bool ValidateVertexAttrib4dv(Context *context, GLuint index, const GLdouble *v);
bool ValidateVertexAttrib4iv(Context *context, GLuint index, const GLint *v);
bool ValidateVertexAttrib4s(Context *context,
GLuint index,
GLshort x,
GLshort y,
GLshort z,
GLshort w);
bool ValidateVertexAttrib4sv(Context *context, GLuint index, const GLshort *v);
bool ValidateVertexAttrib4ubv(Context *context, GLuint index, const GLubyte *v);
bool ValidateVertexAttrib4uiv(Context *context, GLuint index, const GLuint *v);
bool ValidateVertexAttrib4usv(Context *context, GLuint index, const GLushort *v);
} // namespace gl
#endif // LIBANGLE_VALIDATION_GL2_AUTOGEN_H_

View File

@@ -0,0 +1,194 @@
//
// 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.
//
// validationGL3.cpp: Validation functions for OpenGL 3.0 entry point parameters
#include "libANGLE/validationGL3_autogen.h"
namespace gl
{
bool ValidateBeginConditionalRender(Context *context, GLuint id, GLenum mode)
{
return true;
}
bool ValidateBindFragDataLocation(Context *context,
GLuint program,
GLuint color,
const GLchar *name)
{
return true;
}
bool ValidateClampColor(Context *context, GLenum target, GLenum clamp)
{
return true;
}
bool ValidateColorMaski(Context *context,
GLuint index,
GLboolean r,
GLboolean g,
GLboolean b,
GLboolean a)
{
return true;
}
bool ValidateDisablei(Context *context, GLenum target, GLuint index)
{
return true;
}
bool ValidateEnablei(Context *context, GLenum target, GLuint index)
{
return true;
}
bool ValidateEndConditionalRender(Context *context)
{
return true;
}
bool ValidateFramebufferTexture1D(Context *context,
GLenum target,
GLenum attachment,
GLenum textarget,
GLuint texture,
GLint level)
{
return true;
}
bool ValidateFramebufferTexture3D(Context *context,
GLenum target,
GLenum attachment,
TextureTarget textargetPacked,
GLuint texture,
GLint level,
GLint zoffset)
{
return true;
}
bool ValidateGetTexParameterIiv(Context *context,
TextureType targetPacked,
GLenum pname,
GLint *params)
{
return true;
}
bool ValidateGetTexParameterIuiv(Context *context,
TextureType targetPacked,
GLenum pname,
GLuint *params)
{
return true;
}
bool ValidateIsEnabledi(Context *context, GLenum target, GLuint index)
{
return true;
}
bool ValidateTexParameterIiv(Context *context,
TextureType targetPacked,
GLenum pname,
const GLint *params)
{
return true;
}
bool ValidateTexParameterIuiv(Context *context,
TextureType targetPacked,
GLenum pname,
const GLuint *params)
{
return true;
}
bool ValidateVertexAttribI1i(Context *context, GLuint index, GLint x)
{
return true;
}
bool ValidateVertexAttribI1iv(Context *context, GLuint index, const GLint *v)
{
return true;
}
bool ValidateVertexAttribI1ui(Context *context, GLuint index, GLuint x)
{
return true;
}
bool ValidateVertexAttribI1uiv(Context *context, GLuint index, const GLuint *v)
{
return true;
}
bool ValidateVertexAttribI2i(Context *context, GLuint index, GLint x, GLint y)
{
return true;
}
bool ValidateVertexAttribI2iv(Context *context, GLuint index, const GLint *v)
{
return true;
}
bool ValidateVertexAttribI2ui(Context *context, GLuint index, GLuint x, GLuint y)
{
return true;
}
bool ValidateVertexAttribI2uiv(Context *context, GLuint index, const GLuint *v)
{
return true;
}
bool ValidateVertexAttribI3i(Context *context, GLuint index, GLint x, GLint y, GLint z)
{
return true;
}
bool ValidateVertexAttribI3iv(Context *context, GLuint index, const GLint *v)
{
return true;
}
bool ValidateVertexAttribI3ui(Context *context, GLuint index, GLuint x, GLuint y, GLuint z)
{
return true;
}
bool ValidateVertexAttribI3uiv(Context *context, GLuint index, const GLuint *v)
{
return true;
}
bool ValidateVertexAttribI4bv(Context *context, GLuint index, const GLbyte *v)
{
return true;
}
bool ValidateVertexAttribI4sv(Context *context, GLuint index, const GLshort *v)
{
return true;
}
bool ValidateVertexAttribI4ubv(Context *context, GLuint index, const GLubyte *v)
{
return true;
}
bool ValidateVertexAttribI4usv(Context *context, GLuint index, const GLushort *v)
{
return true;
}
} // namespace gl

View File

@@ -0,0 +1,34 @@
//
// 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.
//
// validationGL31.cpp: Validation functions for OpenGL 3.1 entry point parameters
#include "libANGLE/validationGL31_autogen.h"
namespace gl
{
bool ValidateGetActiveUniformName(Context *context,
GLuint program,
GLuint uniformIndex,
GLsizei bufSize,
GLsizei *length,
GLchar *uniformName)
{
return true;
}
bool ValidatePrimitiveRestartIndex(Context *context, GLuint index)
{
return true;
}
bool ValidateTexBuffer(Context *context, GLenum target, GLenum internalformat, GLuint buffer)
{
return true;
}
} // namespace gl

View File

@@ -0,0 +1,30 @@
// GENERATED FILE - DO NOT EDIT.
// Generated by generate_entry_points.py using data from gl.xml and wgl.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.
//
// validationGL31_autogen.h:
// Validation functions for the OpenGL 3.1 entry points.
#ifndef LIBANGLE_VALIDATION_GL31_AUTOGEN_H_
#define LIBANGLE_VALIDATION_GL31_AUTOGEN_H_
#include "common/PackedEnums.h"
namespace gl
{
class Context;
bool ValidateGetActiveUniformName(Context *context,
GLuint program,
GLuint uniformIndex,
GLsizei bufSize,
GLsizei *length,
GLchar *uniformName);
bool ValidatePrimitiveRestartIndex(Context *context, GLuint index);
bool ValidateTexBuffer(Context *context, GLenum target, GLenum internalformat, GLuint buffer);
} // namespace gl
#endif // LIBANGLE_VALIDATION_GL31_AUTOGEN_H_

View File

@@ -0,0 +1,83 @@
// GENERATED FILE - DO NOT EDIT.
// Generated by generate_entry_points.py using data from gl.xml and wgl.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.
//
// validationGL3_autogen.h:
// Validation functions for the OpenGL 3.0 entry points.
#ifndef LIBANGLE_VALIDATION_GL3_AUTOGEN_H_
#define LIBANGLE_VALIDATION_GL3_AUTOGEN_H_
#include "common/PackedEnums.h"
namespace gl
{
class Context;
bool ValidateBeginConditionalRender(Context *context, GLuint id, GLenum mode);
bool ValidateBindFragDataLocation(Context *context,
GLuint program,
GLuint color,
const GLchar *name);
bool ValidateClampColor(Context *context, GLenum target, GLenum clamp);
bool ValidateColorMaski(Context *context,
GLuint index,
GLboolean r,
GLboolean g,
GLboolean b,
GLboolean a);
bool ValidateDisablei(Context *context, GLenum target, GLuint index);
bool ValidateEnablei(Context *context, GLenum target, GLuint index);
bool ValidateEndConditionalRender(Context *context);
bool ValidateFramebufferTexture1D(Context *context,
GLenum target,
GLenum attachment,
GLenum textarget,
GLuint texture,
GLint level);
bool ValidateFramebufferTexture3D(Context *context,
GLenum target,
GLenum attachment,
TextureTarget textargetPacked,
GLuint texture,
GLint level,
GLint zoffset);
bool ValidateGetTexParameterIiv(Context *context,
TextureType targetPacked,
GLenum pname,
GLint *params);
bool ValidateGetTexParameterIuiv(Context *context,
TextureType targetPacked,
GLenum pname,
GLuint *params);
bool ValidateIsEnabledi(Context *context, GLenum target, GLuint index);
bool ValidateTexParameterIiv(Context *context,
TextureType targetPacked,
GLenum pname,
const GLint *params);
bool ValidateTexParameterIuiv(Context *context,
TextureType targetPacked,
GLenum pname,
const GLuint *params);
bool ValidateVertexAttribI1i(Context *context, GLuint index, GLint x);
bool ValidateVertexAttribI1iv(Context *context, GLuint index, const GLint *v);
bool ValidateVertexAttribI1ui(Context *context, GLuint index, GLuint x);
bool ValidateVertexAttribI1uiv(Context *context, GLuint index, const GLuint *v);
bool ValidateVertexAttribI2i(Context *context, GLuint index, GLint x, GLint y);
bool ValidateVertexAttribI2iv(Context *context, GLuint index, const GLint *v);
bool ValidateVertexAttribI2ui(Context *context, GLuint index, GLuint x, GLuint y);
bool ValidateVertexAttribI2uiv(Context *context, GLuint index, const GLuint *v);
bool ValidateVertexAttribI3i(Context *context, GLuint index, GLint x, GLint y, GLint z);
bool ValidateVertexAttribI3iv(Context *context, GLuint index, const GLint *v);
bool ValidateVertexAttribI3ui(Context *context, GLuint index, GLuint x, GLuint y, GLuint z);
bool ValidateVertexAttribI3uiv(Context *context, GLuint index, const GLuint *v);
bool ValidateVertexAttribI4bv(Context *context, GLuint index, const GLbyte *v);
bool ValidateVertexAttribI4sv(Context *context, GLuint index, const GLshort *v);
bool ValidateVertexAttribI4ubv(Context *context, GLuint index, const GLubyte *v);
bool ValidateVertexAttribI4usv(Context *context, GLuint index, const GLushort *v);
} // namespace gl
#endif // LIBANGLE_VALIDATION_GL3_AUTOGEN_H_

View File

@@ -178,7 +178,18 @@ libangle_sources = [
"src/libANGLE/Config.h",
"src/libANGLE/Constants.h",
"src/libANGLE/Context.cpp",
"src/libANGLE/Context_gl.cpp",
"src/libANGLE/Context_gles_1_0.cpp",
"src/libANGLE/Context_gl_1_0_autogen.h",
"src/libANGLE/Context_gl_1_1_autogen.h",
"src/libANGLE/Context_gl_1_2_autogen.h",
"src/libANGLE/Context_gl_1_3_autogen.h",
"src/libANGLE/Context_gl_1_4_autogen.h",
"src/libANGLE/Context_gl_1_5_autogen.h",
"src/libANGLE/Context_gl_2_0_autogen.h",
"src/libANGLE/Context_gl_2_1_autogen.h",
"src/libANGLE/Context_gl_3_0_autogen.h",
"src/libANGLE/Context_gl_3_1_autogen.h",
"src/libANGLE/Context_gles_1_0_autogen.h",
"src/libANGLE/Context_gles_2_0_autogen.h",
"src/libANGLE/Context_gles_3_0_autogen.h",
@@ -353,6 +364,26 @@ libangle_sources = [
"src/libANGLE/validationES3.h",
"src/libANGLE/validationESEXT_autogen.h",
"src/libANGLE/validationESEXT.h",
"src/libANGLE/validationGL1.cpp",
"src/libANGLE/validationGL1_autogen.h",
"src/libANGLE/validationGL2.cpp",
"src/libANGLE/validationGL2_autogen.h",
"src/libANGLE/validationGL3.cpp",
"src/libANGLE/validationGL3_autogen.h",
"src/libANGLE/validationGL11.cpp",
"src/libANGLE/validationGL11_autogen.h",
"src/libANGLE/validationGL12.cpp",
"src/libANGLE/validationGL12_autogen.h",
"src/libANGLE/validationGL13.cpp",
"src/libANGLE/validationGL13_autogen.h",
"src/libANGLE/validationGL14.cpp",
"src/libANGLE/validationGL14_autogen.h",
"src/libANGLE/validationGL15.cpp",
"src/libANGLE/validationGL15_autogen.h",
"src/libANGLE/validationGL21.cpp",
"src/libANGLE/validationGL21_autogen.h",
"src/libANGLE/validationGL31.cpp",
"src/libANGLE/validationGL31_autogen.h",
"src/third_party/trace_event/trace_event.h",
]
@@ -920,6 +951,43 @@ libangle_null_sources = [
"src/libANGLE/renderer/null/VertexArrayNULL.h",
]
opengl32_sources = [
"src/common/angleutils.h",
"src/common/debug.h",
"src/openGL32/entry_points_enum_autogen.h",
"src/openGL32/entry_points_gl_1_0_autogen.cpp",
"src/openGL32/entry_points_gl_1_0_autogen.h",
"src/openGL32/entry_points_gl_1_1_autogen.cpp",
"src/openGL32/entry_points_gl_1_1_autogen.h",
"src/openGL32/entry_points_gl_1_2_autogen.cpp",
"src/openGL32/entry_points_gl_1_2_autogen.h",
"src/openGL32/entry_points_gl_1_3_autogen.cpp",
"src/openGL32/entry_points_gl_1_3_autogen.h",
"src/openGL32/entry_points_gl_1_4_autogen.cpp",
"src/openGL32/entry_points_gl_1_4_autogen.h",
"src/openGL32/entry_points_gl_1_5_autogen.cpp",
"src/openGL32/entry_points_gl_1_5_autogen.h",
"src/openGL32/entry_points_gl_2_0_autogen.cpp",
"src/openGL32/entry_points_gl_2_0_autogen.h",
"src/openGL32/entry_points_gl_2_1_autogen.cpp",
"src/openGL32/entry_points_gl_2_1_autogen.h",
"src/openGL32/entry_points_gl_3_0_autogen.cpp",
"src/openGL32/entry_points_gl_3_0_autogen.h",
"src/openGL32/entry_points_gl_3_1_autogen.cpp",
"src/openGL32/entry_points_gl_3_1_autogen.h",
"src/openGL32/entry_points_utils.h",
"src/libGLESv2/global_state.cpp",
"src/libGLESv2/global_state.h",
"src/openGL32/openGL32_autogen.cpp",
"src/openGL32/openGL32_autogen.def",
"src/openGL32/entry_points_wgl.cpp",
"src/openGL32/entry_points_wgl.h",
"src/openGL32/openGL32.rc",
"src/openGL32/proc_table_wgl.h",
"src/openGL32/proc_table_wgl_autogen.cpp",
"src/openGL32/resource.h",
]
libglesv2_sources = [
"src/common/angleutils.h",
"src/common/debug.h",
@@ -943,8 +1011,8 @@ libglesv2_sources = [
"src/libGLESv2/global_state.h",
"src/libGLESv2/libGLESv2_autogen.cpp",
"src/libGLESv2/libGLESv2.rc",
"src/libGLESv2/proc_table.h",
"src/libGLESv2/proc_table_autogen.cpp",
"src/libGLESv2/proc_table_egl.h",
"src/libGLESv2/proc_table_egl_autogen.cpp",
"src/libGLESv2/resource.h",
]

View File

@@ -20,7 +20,7 @@
#include "libANGLE/queryutils.h"
#include "libANGLE/validationEGL.h"
#include "libGLESv2/global_state.h"
#include "libGLESv2/proc_table.h"
#include "libGLESv2/proc_table_egl.h"
using namespace egl;
@@ -830,8 +830,8 @@ EGLSync EGLAPIENTRY EGL_CreateSync(EGLDisplay dpy, EGLenum type, const EGLAttrib
", EGLenum type = 0x%X, const EGLint* attrib_list = 0x%016" PRIxPTR ")",
(uintptr_t)dpy, type, (uintptr_t)attrib_list);
Thread *thread = egl::GetCurrentThread();
egl::Display *display = static_cast<egl::Display *>(dpy);
Thread *thread = egl::GetCurrentThread();
egl::Display *display = static_cast<egl::Display *>(dpy);
AttributeMap attributes = AttributeMap::CreateFromAttribArray(attrib_list);
gl::Context *currentContext = thread->getContext();
@@ -884,7 +884,7 @@ EGLint EGLAPIENTRY EGL_ClientWaitSync(EGLDisplay dpy, EGLSync sync, EGLint flags
"eglClientWaitSync", GetDisplayIfValid(display), EGL_FALSE);
gl::Context *currentContext = thread->getContext();
EGLint syncStatus = EGL_FALSE;
EGLint syncStatus = EGL_FALSE;
ANGLE_EGL_TRY_RETURN(
thread, syncObject->clientWait(display, currentContext, flags, timeout, &syncStatus),
"eglClientWaitSync", GetDisplayIfValid(display), EGL_FALSE);
@@ -932,9 +932,9 @@ EGLImage EGLAPIENTRY EGL_CreateImage(EGLDisplay dpy,
"EGLClientBuffer buffer = 0x%016" PRIxPTR
", const EGLAttrib *attrib_list = 0x%016" PRIxPTR ")",
(uintptr_t)dpy, (uintptr_t)ctx, target, (uintptr_t)buffer, (uintptr_t)attrib_list);
Thread *thread = egl::GetCurrentThread();
Thread *thread = egl::GetCurrentThread();
egl::Display *display = static_cast<egl::Display *>(dpy);
egl::Display *display = static_cast<egl::Display *>(dpy);
gl::Context *context = static_cast<gl::Context *>(ctx);
AttributeMap attributes = AttributeMap::CreateFromIntArray((const EGLint *)attrib_list);

View File

@@ -1,136 +0,0 @@
#!python
# Copyright 2017 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.
#
# gen_proc_table.py:
# Code generation for entry point loading tables.
# NOTE: don't run this script directly. Run scripts/run_code_generation.py.
# TODO(jmadill): Should be part of entry point generation.
import sys
from datetime import date
sys.path.append('../../scripts')
import registry_xml
out_file_name = "proc_table_autogen.cpp"
# The EGL_ANGLE_explicit_context extension is generated differently from other extensions.
# Toggle generation here.
support_egl_ANGLE_explicit_context = True
template_cpp = """// GENERATED FILE - DO NOT EDIT.
// Generated by {script_name} using data from {data_source_name}.
//
// Copyright {copyright_year} 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.
//
// getProcAddress loader table:
// Mapping from a string entry point name to function address.
//
#include "libGLESv2/proc_table.h"
#include "libGLESv2/entry_points_egl.h"
#include "libGLESv2/entry_points_egl_ext.h"
#include "libGLESv2/entry_points_gles_1_0_autogen.h"
#include "libGLESv2/entry_points_gles_2_0_autogen.h"
#include "libGLESv2/entry_points_gles_3_0_autogen.h"
#include "libGLESv2/entry_points_gles_3_1_autogen.h"
#include "libGLESv2/entry_points_gles_ext_autogen.h"
#include "platform/Platform.h"
#define P(FUNC) reinterpret_cast<__eglMustCastToProperFunctionPointerType>(FUNC)
namespace egl
{{
ProcEntry g_procTable[] = {{
{proc_data}
}};
size_t g_numProcs = {num_procs};
}} // namespace egl
"""
sys.path.append('../libANGLE/renderer')
import angle_format
def main():
# auto_script parameters.
if len(sys.argv) > 1:
inputs = ['../../scripts/' + source for source in registry_xml.xml_inputs]
outputs = [out_file_name]
if sys.argv[1] == 'inputs':
print ','.join(inputs)
elif sys.argv[1] == 'outputs':
print ','.join(outputs)
else:
print('Invalid script parameters')
return 1
return 0
glxml = registry_xml.RegistryXML('../../scripts/gl.xml', '../../scripts/gl_angle_ext.xml')
for annotation in ["2_0", "3_0", "3_1", "1_0"]:
name_prefix = "GL_ES_VERSION_"
if annotation[0] == '1':
name_prefix = "GL_VERSION_ES_CM_"
feature_name = "{}{}".format(name_prefix, annotation)
glxml.AddCommands(feature_name, annotation)
glxml.AddExtensionCommands(registry_xml.supported_extensions, ['gles2', 'gles1'])
data = glxml.all_cmd_names.get_all_commands()
eglxml = registry_xml.RegistryXML('../../scripts/egl.xml', '../../scripts/egl_angle_ext.xml')
for annotation in ["1_0", "1_1", "1_2", "1_3", "1_4", "1_5"]:
name_prefix = "EGL_VERSION_"
feature_name = "{}{}".format(name_prefix, annotation)
eglxml.AddCommands(feature_name, annotation)
eglxml.AddExtensionCommands(registry_xml.supported_egl_extensions, ['gles2', 'gles1'])
data.extend(eglxml.all_cmd_names.get_all_commands())
data.append("ANGLEGetDisplayPlatform")
data.append("ANGLEResetDisplayPlatform")
all_functions = {}
for function in data:
if function.startswith("gl"):
all_functions[function] = "gl::" + function[2:]
# Special handling for EGL_ANGLE_explicit_context extension
if support_egl_ANGLE_explicit_context:
all_functions[function + "ContextANGLE"] = "gl::" + function[2:] + "ContextANGLE"
elif function.startswith("egl"):
all_functions[function] = "EGL_" + function[3:]
else:
all_functions[function] = function
proc_data = [(' {"%s", P(%s)}' % (func, angle_func))
for func, angle_func in sorted(all_functions.iteritems())]
with open(out_file_name, 'w') as out_file:
output_cpp = template_cpp.format(
script_name=sys.argv[0],
data_source_name="gl.xml, gl_angle_ext.xml, egl.xml, egl_angle_ext.xml",
copyright_year=date.today().year,
proc_data=",\n".join(proc_data),
num_procs=len(proc_data))
out_file.write(output_cpp)
out_file.close()
return 0
if __name__ == '__main__':
sys.exit(main())

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,668 @@
// GENERATED FILE - DO NOT EDIT.
// Generated by generate_entry_points.py using data from gl.xml and gl_angle_ext.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.
//
// entry_points_enum_autogen.h:
// Defines the GL entry points enumeration.
#ifndef OPENGL32_ENTRYPOINTSENUM_AUTOGEN_H_
#define OPENGL32_ENTRYPOINTSENUM_AUTOGEN_H_
namespace gl
{
enum class EntryPoint
{
Invalid,
Accum,
ActiveTexture,
AlphaFunc,
AreTexturesResident,
ArrayElement,
AttachShader,
Begin,
BeginConditionalRender,
BeginQuery,
BeginTransformFeedback,
BindAttribLocation,
BindBuffer,
BindBufferBase,
BindBufferRange,
BindFragDataLocation,
BindFramebuffer,
BindRenderbuffer,
BindTexture,
BindVertexArray,
Bitmap,
BlendColor,
BlendEquation,
BlendEquationSeparate,
BlendFunc,
BlendFuncSeparate,
BlitFramebuffer,
BufferData,
BufferSubData,
CallList,
CallLists,
CheckFramebufferStatus,
ClampColor,
Clear,
ClearAccum,
ClearBufferfi,
ClearBufferfv,
ClearBufferiv,
ClearBufferuiv,
ClearColor,
ClearDepth,
ClearIndex,
ClearStencil,
ClientActiveTexture,
ClipPlane,
Color3b,
Color3bv,
Color3d,
Color3dv,
Color3f,
Color3fv,
Color3i,
Color3iv,
Color3s,
Color3sv,
Color3ub,
Color3ubv,
Color3ui,
Color3uiv,
Color3us,
Color3usv,
Color4b,
Color4bv,
Color4d,
Color4dv,
Color4f,
Color4fv,
Color4i,
Color4iv,
Color4s,
Color4sv,
Color4ub,
Color4ubv,
Color4ui,
Color4uiv,
Color4us,
Color4usv,
ColorMask,
ColorMaski,
ColorMaterial,
ColorPointer,
CompileShader,
CompressedTexImage1D,
CompressedTexImage2D,
CompressedTexImage3D,
CompressedTexSubImage1D,
CompressedTexSubImage2D,
CompressedTexSubImage3D,
CopyBufferSubData,
CopyPixels,
CopyTexImage1D,
CopyTexImage2D,
CopyTexSubImage1D,
CopyTexSubImage2D,
CopyTexSubImage3D,
CreateProgram,
CreateShader,
CullFace,
DeleteBuffers,
DeleteFramebuffers,
DeleteLists,
DeleteProgram,
DeleteQueries,
DeleteRenderbuffers,
DeleteShader,
DeleteTextures,
DeleteVertexArrays,
DepthFunc,
DepthMask,
DepthRange,
DetachShader,
Disable,
DisableClientState,
DisableVertexAttribArray,
Disablei,
DrawArrays,
DrawArraysInstanced,
DrawBuffer,
DrawBuffers,
DrawElements,
DrawElementsInstanced,
DrawPixels,
DrawRangeElements,
EdgeFlag,
EdgeFlagPointer,
EdgeFlagv,
Enable,
EnableClientState,
EnableVertexAttribArray,
Enablei,
End,
EndConditionalRender,
EndList,
EndQuery,
EndTransformFeedback,
EvalCoord1d,
EvalCoord1dv,
EvalCoord1f,
EvalCoord1fv,
EvalCoord2d,
EvalCoord2dv,
EvalCoord2f,
EvalCoord2fv,
EvalMesh1,
EvalMesh2,
EvalPoint1,
EvalPoint2,
FeedbackBuffer,
Finish,
Flush,
FlushMappedBufferRange,
FogCoordPointer,
FogCoordd,
FogCoorddv,
FogCoordf,
FogCoordfv,
Fogf,
Fogfv,
Fogi,
Fogiv,
FramebufferRenderbuffer,
FramebufferTexture1D,
FramebufferTexture2D,
FramebufferTexture3D,
FramebufferTextureLayer,
FrontFace,
Frustum,
GenBuffers,
GenFramebuffers,
GenLists,
GenQueries,
GenRenderbuffers,
GenTextures,
GenVertexArrays,
GenerateMipmap,
GetActiveAttrib,
GetActiveUniform,
GetActiveUniformBlockName,
GetActiveUniformBlockiv,
GetActiveUniformName,
GetActiveUniformsiv,
GetAttachedShaders,
GetAttribLocation,
GetBooleani_v,
GetBooleanv,
GetBufferParameteriv,
GetBufferPointerv,
GetBufferSubData,
GetClipPlane,
GetCompressedTexImage,
GetDoublev,
GetError,
GetFloatv,
GetFragDataLocation,
GetFramebufferAttachmentParameteriv,
GetIntegeri_v,
GetIntegerv,
GetLightfv,
GetLightiv,
GetMapdv,
GetMapfv,
GetMapiv,
GetMaterialfv,
GetMaterialiv,
GetPixelMapfv,
GetPixelMapuiv,
GetPixelMapusv,
GetPointerv,
GetPolygonStipple,
GetProgramInfoLog,
GetProgramiv,
GetQueryObjectiv,
GetQueryObjectuiv,
GetQueryiv,
GetRenderbufferParameteriv,
GetShaderInfoLog,
GetShaderSource,
GetShaderiv,
GetString,
GetStringi,
GetTexEnvfv,
GetTexEnviv,
GetTexGendv,
GetTexGenfv,
GetTexGeniv,
GetTexImage,
GetTexLevelParameterfv,
GetTexLevelParameteriv,
GetTexParameterIiv,
GetTexParameterIuiv,
GetTexParameterfv,
GetTexParameteriv,
GetTransformFeedbackVarying,
GetUniformBlockIndex,
GetUniformIndices,
GetUniformLocation,
GetUniformfv,
GetUniformiv,
GetUniformuiv,
GetVertexAttribIiv,
GetVertexAttribIuiv,
GetVertexAttribPointerv,
GetVertexAttribdv,
GetVertexAttribfv,
GetVertexAttribiv,
Hint,
IndexMask,
IndexPointer,
Indexd,
Indexdv,
Indexf,
Indexfv,
Indexi,
Indexiv,
Indexs,
Indexsv,
Indexub,
Indexubv,
InitNames,
InterleavedArrays,
IsBuffer,
IsEnabled,
IsEnabledi,
IsFramebuffer,
IsList,
IsProgram,
IsQuery,
IsRenderbuffer,
IsShader,
IsTexture,
IsVertexArray,
LightModelf,
LightModelfv,
LightModeli,
LightModeliv,
Lightf,
Lightfv,
Lighti,
Lightiv,
LineStipple,
LineWidth,
LinkProgram,
ListBase,
LoadIdentity,
LoadMatrixd,
LoadMatrixf,
LoadName,
LoadTransposeMatrixd,
LoadTransposeMatrixf,
LogicOp,
Map1d,
Map1f,
Map2d,
Map2f,
MapBuffer,
MapBufferRange,
MapGrid1d,
MapGrid1f,
MapGrid2d,
MapGrid2f,
Materialf,
Materialfv,
Materiali,
Materialiv,
MatrixMode,
MultMatrixd,
MultMatrixf,
MultTransposeMatrixd,
MultTransposeMatrixf,
MultiDrawArrays,
MultiDrawElements,
MultiTexCoord1d,
MultiTexCoord1dv,
MultiTexCoord1f,
MultiTexCoord1fv,
MultiTexCoord1i,
MultiTexCoord1iv,
MultiTexCoord1s,
MultiTexCoord1sv,
MultiTexCoord2d,
MultiTexCoord2dv,
MultiTexCoord2f,
MultiTexCoord2fv,
MultiTexCoord2i,
MultiTexCoord2iv,
MultiTexCoord2s,
MultiTexCoord2sv,
MultiTexCoord3d,
MultiTexCoord3dv,
MultiTexCoord3f,
MultiTexCoord3fv,
MultiTexCoord3i,
MultiTexCoord3iv,
MultiTexCoord3s,
MultiTexCoord3sv,
MultiTexCoord4d,
MultiTexCoord4dv,
MultiTexCoord4f,
MultiTexCoord4fv,
MultiTexCoord4i,
MultiTexCoord4iv,
MultiTexCoord4s,
MultiTexCoord4sv,
NewList,
Normal3b,
Normal3bv,
Normal3d,
Normal3dv,
Normal3f,
Normal3fv,
Normal3i,
Normal3iv,
Normal3s,
Normal3sv,
NormalPointer,
Ortho,
PassThrough,
PixelMapfv,
PixelMapuiv,
PixelMapusv,
PixelStoref,
PixelStorei,
PixelTransferf,
PixelTransferi,
PixelZoom,
PointParameterf,
PointParameterfv,
PointParameteri,
PointParameteriv,
PointSize,
PolygonMode,
PolygonOffset,
PolygonStipple,
PopAttrib,
PopClientAttrib,
PopMatrix,
PopName,
PrimitiveRestartIndex,
PrioritizeTextures,
PushAttrib,
PushClientAttrib,
PushMatrix,
PushName,
RasterPos2d,
RasterPos2dv,
RasterPos2f,
RasterPos2fv,
RasterPos2i,
RasterPos2iv,
RasterPos2s,
RasterPos2sv,
RasterPos3d,
RasterPos3dv,
RasterPos3f,
RasterPos3fv,
RasterPos3i,
RasterPos3iv,
RasterPos3s,
RasterPos3sv,
RasterPos4d,
RasterPos4dv,
RasterPos4f,
RasterPos4fv,
RasterPos4i,
RasterPos4iv,
RasterPos4s,
RasterPos4sv,
ReadBuffer,
ReadPixels,
Rectd,
Rectdv,
Rectf,
Rectfv,
Recti,
Rectiv,
Rects,
Rectsv,
RenderMode,
RenderbufferStorage,
RenderbufferStorageMultisample,
Rotated,
Rotatef,
SampleCoverage,
Scaled,
Scalef,
Scissor,
SecondaryColor3b,
SecondaryColor3bv,
SecondaryColor3d,
SecondaryColor3dv,
SecondaryColor3f,
SecondaryColor3fv,
SecondaryColor3i,
SecondaryColor3iv,
SecondaryColor3s,
SecondaryColor3sv,
SecondaryColor3ub,
SecondaryColor3ubv,
SecondaryColor3ui,
SecondaryColor3uiv,
SecondaryColor3us,
SecondaryColor3usv,
SecondaryColorPointer,
SelectBuffer,
ShadeModel,
ShaderSource,
StencilFunc,
StencilFuncSeparate,
StencilMask,
StencilMaskSeparate,
StencilOp,
StencilOpSeparate,
TexBuffer,
TexCoord1d,
TexCoord1dv,
TexCoord1f,
TexCoord1fv,
TexCoord1i,
TexCoord1iv,
TexCoord1s,
TexCoord1sv,
TexCoord2d,
TexCoord2dv,
TexCoord2f,
TexCoord2fv,
TexCoord2i,
TexCoord2iv,
TexCoord2s,
TexCoord2sv,
TexCoord3d,
TexCoord3dv,
TexCoord3f,
TexCoord3fv,
TexCoord3i,
TexCoord3iv,
TexCoord3s,
TexCoord3sv,
TexCoord4d,
TexCoord4dv,
TexCoord4f,
TexCoord4fv,
TexCoord4i,
TexCoord4iv,
TexCoord4s,
TexCoord4sv,
TexCoordPointer,
TexEnvf,
TexEnvfv,
TexEnvi,
TexEnviv,
TexGend,
TexGendv,
TexGenf,
TexGenfv,
TexGeni,
TexGeniv,
TexImage1D,
TexImage2D,
TexImage3D,
TexParameterIiv,
TexParameterIuiv,
TexParameterf,
TexParameterfv,
TexParameteri,
TexParameteriv,
TexSubImage1D,
TexSubImage2D,
TexSubImage3D,
TransformFeedbackVaryings,
Translated,
Translatef,
Uniform1f,
Uniform1fv,
Uniform1i,
Uniform1iv,
Uniform1ui,
Uniform1uiv,
Uniform2f,
Uniform2fv,
Uniform2i,
Uniform2iv,
Uniform2ui,
Uniform2uiv,
Uniform3f,
Uniform3fv,
Uniform3i,
Uniform3iv,
Uniform3ui,
Uniform3uiv,
Uniform4f,
Uniform4fv,
Uniform4i,
Uniform4iv,
Uniform4ui,
Uniform4uiv,
UniformBlockBinding,
UniformMatrix2fv,
UniformMatrix2x3fv,
UniformMatrix2x4fv,
UniformMatrix3fv,
UniformMatrix3x2fv,
UniformMatrix3x4fv,
UniformMatrix4fv,
UniformMatrix4x2fv,
UniformMatrix4x3fv,
UnmapBuffer,
UseProgram,
ValidateProgram,
Vertex2d,
Vertex2dv,
Vertex2f,
Vertex2fv,
Vertex2i,
Vertex2iv,
Vertex2s,
Vertex2sv,
Vertex3d,
Vertex3dv,
Vertex3f,
Vertex3fv,
Vertex3i,
Vertex3iv,
Vertex3s,
Vertex3sv,
Vertex4d,
Vertex4dv,
Vertex4f,
Vertex4fv,
Vertex4i,
Vertex4iv,
Vertex4s,
Vertex4sv,
VertexAttrib1d,
VertexAttrib1dv,
VertexAttrib1f,
VertexAttrib1fv,
VertexAttrib1s,
VertexAttrib1sv,
VertexAttrib2d,
VertexAttrib2dv,
VertexAttrib2f,
VertexAttrib2fv,
VertexAttrib2s,
VertexAttrib2sv,
VertexAttrib3d,
VertexAttrib3dv,
VertexAttrib3f,
VertexAttrib3fv,
VertexAttrib3s,
VertexAttrib3sv,
VertexAttrib4Nbv,
VertexAttrib4Niv,
VertexAttrib4Nsv,
VertexAttrib4Nub,
VertexAttrib4Nubv,
VertexAttrib4Nuiv,
VertexAttrib4Nusv,
VertexAttrib4bv,
VertexAttrib4d,
VertexAttrib4dv,
VertexAttrib4f,
VertexAttrib4fv,
VertexAttrib4iv,
VertexAttrib4s,
VertexAttrib4sv,
VertexAttrib4ubv,
VertexAttrib4uiv,
VertexAttrib4usv,
VertexAttribI1i,
VertexAttribI1iv,
VertexAttribI1ui,
VertexAttribI1uiv,
VertexAttribI2i,
VertexAttribI2iv,
VertexAttribI2ui,
VertexAttribI2uiv,
VertexAttribI3i,
VertexAttribI3iv,
VertexAttribI3ui,
VertexAttribI3uiv,
VertexAttribI4bv,
VertexAttribI4i,
VertexAttribI4iv,
VertexAttribI4sv,
VertexAttribI4ubv,
VertexAttribI4ui,
VertexAttribI4uiv,
VertexAttribI4usv,
VertexAttribIPointer,
VertexAttribPointer,
VertexPointer,
Viewport,
WindowPos2d,
WindowPos2dv,
WindowPos2f,
WindowPos2fv,
WindowPos2i,
WindowPos2iv,
WindowPos2s,
WindowPos2sv,
WindowPos3d,
WindowPos3dv,
WindowPos3f,
WindowPos3fv,
WindowPos3i,
WindowPos3iv,
WindowPos3s,
WindowPos3sv
};
} // namespace gl
#endif // OPENGL32_ENTRY_POINTS_ENUM_AUTOGEN_H_

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,397 @@
// 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.
//
// entry_points_gl_1_0_autogen.h:
// Defines the GL 1.0 entry points.
#ifndef OPENGL32_ENTRY_POINTS_GL_1_0_AUTOGEN_H_
#define OPENGL32_ENTRY_POINTS_GL_1_0_AUTOGEN_H_
#include <export.h>
#include "angle_gl.h"
#include "WGL/wgl.h"
#include "windows.h"
namespace gl
{
ANGLE_EXPORT void GL_APIENTRY Accum(GLenum op, GLfloat value);
ANGLE_EXPORT void GL_APIENTRY AlphaFunc(GLenum func, GLfloat ref);
ANGLE_EXPORT void GL_APIENTRY Begin(GLenum mode);
ANGLE_EXPORT void GL_APIENTRY Bitmap(GLsizei width,
GLsizei height,
GLfloat xorig,
GLfloat yorig,
GLfloat xmove,
GLfloat ymove,
const GLubyte *bitmap);
ANGLE_EXPORT void GL_APIENTRY BlendFunc(GLenum sfactor, GLenum dfactor);
ANGLE_EXPORT void GL_APIENTRY CallList(GLuint list);
ANGLE_EXPORT void GL_APIENTRY CallLists(GLsizei n, GLenum type, const void *lists);
ANGLE_EXPORT void GL_APIENTRY Clear(GLbitfield mask);
ANGLE_EXPORT void GL_APIENTRY ClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
ANGLE_EXPORT void GL_APIENTRY ClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
ANGLE_EXPORT void GL_APIENTRY ClearDepth(GLdouble depth);
ANGLE_EXPORT void GL_APIENTRY ClearIndex(GLfloat c);
ANGLE_EXPORT void GL_APIENTRY ClearStencil(GLint s);
ANGLE_EXPORT void GL_APIENTRY ClipPlane(GLenum plane, const GLdouble *equation);
ANGLE_EXPORT void GL_APIENTRY Color3b(GLbyte red, GLbyte green, GLbyte blue);
ANGLE_EXPORT void GL_APIENTRY Color3bv(const GLbyte *v);
ANGLE_EXPORT void GL_APIENTRY Color3d(GLdouble red, GLdouble green, GLdouble blue);
ANGLE_EXPORT void GL_APIENTRY Color3dv(const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY Color3f(GLfloat red, GLfloat green, GLfloat blue);
ANGLE_EXPORT void GL_APIENTRY Color3fv(const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY Color3i(GLint red, GLint green, GLint blue);
ANGLE_EXPORT void GL_APIENTRY Color3iv(const GLint *v);
ANGLE_EXPORT void GL_APIENTRY Color3s(GLshort red, GLshort green, GLshort blue);
ANGLE_EXPORT void GL_APIENTRY Color3sv(const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY Color3ub(GLubyte red, GLubyte green, GLubyte blue);
ANGLE_EXPORT void GL_APIENTRY Color3ubv(const GLubyte *v);
ANGLE_EXPORT void GL_APIENTRY Color3ui(GLuint red, GLuint green, GLuint blue);
ANGLE_EXPORT void GL_APIENTRY Color3uiv(const GLuint *v);
ANGLE_EXPORT void GL_APIENTRY Color3us(GLushort red, GLushort green, GLushort blue);
ANGLE_EXPORT void GL_APIENTRY Color3usv(const GLushort *v);
ANGLE_EXPORT void GL_APIENTRY Color4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
ANGLE_EXPORT void GL_APIENTRY Color4bv(const GLbyte *v);
ANGLE_EXPORT void GL_APIENTRY Color4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
ANGLE_EXPORT void GL_APIENTRY Color4dv(const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY Color4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
ANGLE_EXPORT void GL_APIENTRY Color4fv(const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY Color4i(GLint red, GLint green, GLint blue, GLint alpha);
ANGLE_EXPORT void GL_APIENTRY Color4iv(const GLint *v);
ANGLE_EXPORT void GL_APIENTRY Color4s(GLshort red, GLshort green, GLshort blue, GLshort alpha);
ANGLE_EXPORT void GL_APIENTRY Color4sv(const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY Color4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
ANGLE_EXPORT void GL_APIENTRY Color4ubv(const GLubyte *v);
ANGLE_EXPORT void GL_APIENTRY Color4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha);
ANGLE_EXPORT void GL_APIENTRY Color4uiv(const GLuint *v);
ANGLE_EXPORT void GL_APIENTRY Color4us(GLushort red, GLushort green, GLushort blue, GLushort alpha);
ANGLE_EXPORT void GL_APIENTRY Color4usv(const GLushort *v);
ANGLE_EXPORT void GL_APIENTRY ColorMask(GLboolean red,
GLboolean green,
GLboolean blue,
GLboolean alpha);
ANGLE_EXPORT void GL_APIENTRY ColorMaterial(GLenum face, GLenum mode);
ANGLE_EXPORT void GL_APIENTRY
CopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
ANGLE_EXPORT void GL_APIENTRY CullFace(GLenum mode);
ANGLE_EXPORT void GL_APIENTRY DeleteLists(GLuint list, GLsizei range);
ANGLE_EXPORT void GL_APIENTRY DepthFunc(GLenum func);
ANGLE_EXPORT void GL_APIENTRY DepthMask(GLboolean flag);
ANGLE_EXPORT void GL_APIENTRY DepthRange(GLdouble n, GLdouble f);
ANGLE_EXPORT void GL_APIENTRY Disable(GLenum cap);
ANGLE_EXPORT void GL_APIENTRY DrawBuffer(GLenum buf);
ANGLE_EXPORT void GL_APIENTRY
DrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
ANGLE_EXPORT void GL_APIENTRY EdgeFlag(GLboolean flag);
ANGLE_EXPORT void GL_APIENTRY EdgeFlagv(const GLboolean *flag);
ANGLE_EXPORT void GL_APIENTRY Enable(GLenum cap);
ANGLE_EXPORT void GL_APIENTRY End();
ANGLE_EXPORT void GL_APIENTRY EndList();
ANGLE_EXPORT void GL_APIENTRY EvalCoord1d(GLdouble u);
ANGLE_EXPORT void GL_APIENTRY EvalCoord1dv(const GLdouble *u);
ANGLE_EXPORT void GL_APIENTRY EvalCoord1f(GLfloat u);
ANGLE_EXPORT void GL_APIENTRY EvalCoord1fv(const GLfloat *u);
ANGLE_EXPORT void GL_APIENTRY EvalCoord2d(GLdouble u, GLdouble v);
ANGLE_EXPORT void GL_APIENTRY EvalCoord2dv(const GLdouble *u);
ANGLE_EXPORT void GL_APIENTRY EvalCoord2f(GLfloat u, GLfloat v);
ANGLE_EXPORT void GL_APIENTRY EvalCoord2fv(const GLfloat *u);
ANGLE_EXPORT void GL_APIENTRY EvalMesh1(GLenum mode, GLint i1, GLint i2);
ANGLE_EXPORT void GL_APIENTRY EvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
ANGLE_EXPORT void GL_APIENTRY EvalPoint1(GLint i);
ANGLE_EXPORT void GL_APIENTRY EvalPoint2(GLint i, GLint j);
ANGLE_EXPORT void GL_APIENTRY FeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer);
ANGLE_EXPORT void GL_APIENTRY Finish();
ANGLE_EXPORT void GL_APIENTRY Flush();
ANGLE_EXPORT void GL_APIENTRY Fogf(GLenum pname, GLfloat param);
ANGLE_EXPORT void GL_APIENTRY Fogfv(GLenum pname, const GLfloat *params);
ANGLE_EXPORT void GL_APIENTRY Fogi(GLenum pname, GLint param);
ANGLE_EXPORT void GL_APIENTRY Fogiv(GLenum pname, const GLint *params);
ANGLE_EXPORT void GL_APIENTRY FrontFace(GLenum mode);
ANGLE_EXPORT void GL_APIENTRY Frustum(GLdouble left,
GLdouble right,
GLdouble bottom,
GLdouble top,
GLdouble zNear,
GLdouble zFar);
ANGLE_EXPORT GLuint GL_APIENTRY GenLists(GLsizei range);
ANGLE_EXPORT void GL_APIENTRY GetBooleanv(GLenum pname, GLboolean *data);
ANGLE_EXPORT void GL_APIENTRY GetClipPlane(GLenum plane, GLdouble *equation);
ANGLE_EXPORT void GL_APIENTRY GetDoublev(GLenum pname, GLdouble *data);
ANGLE_EXPORT GLenum GL_APIENTRY GetError();
ANGLE_EXPORT void GL_APIENTRY GetFloatv(GLenum pname, GLfloat *data);
ANGLE_EXPORT void GL_APIENTRY GetIntegerv(GLenum pname, GLint *data);
ANGLE_EXPORT void GL_APIENTRY GetLightfv(GLenum light, GLenum pname, GLfloat *params);
ANGLE_EXPORT void GL_APIENTRY GetLightiv(GLenum light, GLenum pname, GLint *params);
ANGLE_EXPORT void GL_APIENTRY GetMapdv(GLenum target, GLenum query, GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY GetMapfv(GLenum target, GLenum query, GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY GetMapiv(GLenum target, GLenum query, GLint *v);
ANGLE_EXPORT void GL_APIENTRY GetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
ANGLE_EXPORT void GL_APIENTRY GetMaterialiv(GLenum face, GLenum pname, GLint *params);
ANGLE_EXPORT void GL_APIENTRY GetPixelMapfv(GLenum map, GLfloat *values);
ANGLE_EXPORT void GL_APIENTRY GetPixelMapuiv(GLenum map, GLuint *values);
ANGLE_EXPORT void GL_APIENTRY GetPixelMapusv(GLenum map, GLushort *values);
ANGLE_EXPORT void GL_APIENTRY GetPolygonStipple(GLubyte *mask);
ANGLE_EXPORT const GLubyte *GL_APIENTRY GetString(GLenum name);
ANGLE_EXPORT void GL_APIENTRY GetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
ANGLE_EXPORT void GL_APIENTRY GetTexEnviv(GLenum target, GLenum pname, GLint *params);
ANGLE_EXPORT void GL_APIENTRY GetTexGendv(GLenum coord, GLenum pname, GLdouble *params);
ANGLE_EXPORT void GL_APIENTRY GetTexGenfv(GLenum coord, GLenum pname, GLfloat *params);
ANGLE_EXPORT void GL_APIENTRY GetTexGeniv(GLenum coord, GLenum pname, GLint *params);
ANGLE_EXPORT void GL_APIENTRY
GetTexImage(GLenum target, GLint level, GLenum format, GLenum type, void *pixels);
ANGLE_EXPORT void GL_APIENTRY GetTexLevelParameterfv(GLenum target,
GLint level,
GLenum pname,
GLfloat *params);
ANGLE_EXPORT void GL_APIENTRY GetTexLevelParameteriv(GLenum target,
GLint level,
GLenum pname,
GLint *params);
ANGLE_EXPORT void GL_APIENTRY GetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
ANGLE_EXPORT void GL_APIENTRY GetTexParameteriv(GLenum target, GLenum pname, GLint *params);
ANGLE_EXPORT void GL_APIENTRY Hint(GLenum target, GLenum mode);
ANGLE_EXPORT void GL_APIENTRY IndexMask(GLuint mask);
ANGLE_EXPORT void GL_APIENTRY Indexd(GLdouble c);
ANGLE_EXPORT void GL_APIENTRY Indexdv(const GLdouble *c);
ANGLE_EXPORT void GL_APIENTRY Indexf(GLfloat c);
ANGLE_EXPORT void GL_APIENTRY Indexfv(const GLfloat *c);
ANGLE_EXPORT void GL_APIENTRY Indexi(GLint c);
ANGLE_EXPORT void GL_APIENTRY Indexiv(const GLint *c);
ANGLE_EXPORT void GL_APIENTRY Indexs(GLshort c);
ANGLE_EXPORT void GL_APIENTRY Indexsv(const GLshort *c);
ANGLE_EXPORT void GL_APIENTRY InitNames();
ANGLE_EXPORT GLboolean GL_APIENTRY IsEnabled(GLenum cap);
ANGLE_EXPORT GLboolean GL_APIENTRY IsList(GLuint list);
ANGLE_EXPORT void GL_APIENTRY LightModelf(GLenum pname, GLfloat param);
ANGLE_EXPORT void GL_APIENTRY LightModelfv(GLenum pname, const GLfloat *params);
ANGLE_EXPORT void GL_APIENTRY LightModeli(GLenum pname, GLint param);
ANGLE_EXPORT void GL_APIENTRY LightModeliv(GLenum pname, const GLint *params);
ANGLE_EXPORT void GL_APIENTRY Lightf(GLenum light, GLenum pname, GLfloat param);
ANGLE_EXPORT void GL_APIENTRY Lightfv(GLenum light, GLenum pname, const GLfloat *params);
ANGLE_EXPORT void GL_APIENTRY Lighti(GLenum light, GLenum pname, GLint param);
ANGLE_EXPORT void GL_APIENTRY Lightiv(GLenum light, GLenum pname, const GLint *params);
ANGLE_EXPORT void GL_APIENTRY LineStipple(GLint factor, GLushort pattern);
ANGLE_EXPORT void GL_APIENTRY LineWidth(GLfloat width);
ANGLE_EXPORT void GL_APIENTRY ListBase(GLuint base);
ANGLE_EXPORT void GL_APIENTRY LoadIdentity();
ANGLE_EXPORT void GL_APIENTRY LoadMatrixd(const GLdouble *m);
ANGLE_EXPORT void GL_APIENTRY LoadMatrixf(const GLfloat *m);
ANGLE_EXPORT void GL_APIENTRY LoadName(GLuint name);
ANGLE_EXPORT void GL_APIENTRY LogicOp(GLenum opcode);
ANGLE_EXPORT void GL_APIENTRY
Map1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
ANGLE_EXPORT void GL_APIENTRY
Map1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
ANGLE_EXPORT void GL_APIENTRY Map2d(GLenum target,
GLdouble u1,
GLdouble u2,
GLint ustride,
GLint uorder,
GLdouble v1,
GLdouble v2,
GLint vstride,
GLint vorder,
const GLdouble *points);
ANGLE_EXPORT void GL_APIENTRY Map2f(GLenum target,
GLfloat u1,
GLfloat u2,
GLint ustride,
GLint uorder,
GLfloat v1,
GLfloat v2,
GLint vstride,
GLint vorder,
const GLfloat *points);
ANGLE_EXPORT void GL_APIENTRY MapGrid1d(GLint un, GLdouble u1, GLdouble u2);
ANGLE_EXPORT void GL_APIENTRY MapGrid1f(GLint un, GLfloat u1, GLfloat u2);
ANGLE_EXPORT void GL_APIENTRY
MapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
ANGLE_EXPORT void GL_APIENTRY
MapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
ANGLE_EXPORT void GL_APIENTRY Materialf(GLenum face, GLenum pname, GLfloat param);
ANGLE_EXPORT void GL_APIENTRY Materialfv(GLenum face, GLenum pname, const GLfloat *params);
ANGLE_EXPORT void GL_APIENTRY Materiali(GLenum face, GLenum pname, GLint param);
ANGLE_EXPORT void GL_APIENTRY Materialiv(GLenum face, GLenum pname, const GLint *params);
ANGLE_EXPORT void GL_APIENTRY MatrixMode(GLenum mode);
ANGLE_EXPORT void GL_APIENTRY MultMatrixd(const GLdouble *m);
ANGLE_EXPORT void GL_APIENTRY MultMatrixf(const GLfloat *m);
ANGLE_EXPORT void GL_APIENTRY NewList(GLuint list, GLenum mode);
ANGLE_EXPORT void GL_APIENTRY Normal3b(GLbyte nx, GLbyte ny, GLbyte nz);
ANGLE_EXPORT void GL_APIENTRY Normal3bv(const GLbyte *v);
ANGLE_EXPORT void GL_APIENTRY Normal3d(GLdouble nx, GLdouble ny, GLdouble nz);
ANGLE_EXPORT void GL_APIENTRY Normal3dv(const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY Normal3f(GLfloat nx, GLfloat ny, GLfloat nz);
ANGLE_EXPORT void GL_APIENTRY Normal3fv(const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY Normal3i(GLint nx, GLint ny, GLint nz);
ANGLE_EXPORT void GL_APIENTRY Normal3iv(const GLint *v);
ANGLE_EXPORT void GL_APIENTRY Normal3s(GLshort nx, GLshort ny, GLshort nz);
ANGLE_EXPORT void GL_APIENTRY Normal3sv(const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY
Ortho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
ANGLE_EXPORT void GL_APIENTRY PassThrough(GLfloat token);
ANGLE_EXPORT void GL_APIENTRY PixelMapfv(GLenum map, GLsizei mapsize, const GLfloat *values);
ANGLE_EXPORT void GL_APIENTRY PixelMapuiv(GLenum map, GLsizei mapsize, const GLuint *values);
ANGLE_EXPORT void GL_APIENTRY PixelMapusv(GLenum map, GLsizei mapsize, const GLushort *values);
ANGLE_EXPORT void GL_APIENTRY PixelStoref(GLenum pname, GLfloat param);
ANGLE_EXPORT void GL_APIENTRY PixelStorei(GLenum pname, GLint param);
ANGLE_EXPORT void GL_APIENTRY PixelTransferf(GLenum pname, GLfloat param);
ANGLE_EXPORT void GL_APIENTRY PixelTransferi(GLenum pname, GLint param);
ANGLE_EXPORT void GL_APIENTRY PixelZoom(GLfloat xfactor, GLfloat yfactor);
ANGLE_EXPORT void GL_APIENTRY PointSize(GLfloat size);
ANGLE_EXPORT void GL_APIENTRY PolygonMode(GLenum face, GLenum mode);
ANGLE_EXPORT void GL_APIENTRY PolygonStipple(const GLubyte *mask);
ANGLE_EXPORT void GL_APIENTRY PopAttrib();
ANGLE_EXPORT void GL_APIENTRY PopMatrix();
ANGLE_EXPORT void GL_APIENTRY PopName();
ANGLE_EXPORT void GL_APIENTRY PushAttrib(GLbitfield mask);
ANGLE_EXPORT void GL_APIENTRY PushMatrix();
ANGLE_EXPORT void GL_APIENTRY PushName(GLuint name);
ANGLE_EXPORT void GL_APIENTRY RasterPos2d(GLdouble x, GLdouble y);
ANGLE_EXPORT void GL_APIENTRY RasterPos2dv(const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY RasterPos2f(GLfloat x, GLfloat y);
ANGLE_EXPORT void GL_APIENTRY RasterPos2fv(const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY RasterPos2i(GLint x, GLint y);
ANGLE_EXPORT void GL_APIENTRY RasterPos2iv(const GLint *v);
ANGLE_EXPORT void GL_APIENTRY RasterPos2s(GLshort x, GLshort y);
ANGLE_EXPORT void GL_APIENTRY RasterPos2sv(const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY RasterPos3d(GLdouble x, GLdouble y, GLdouble z);
ANGLE_EXPORT void GL_APIENTRY RasterPos3dv(const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY RasterPos3f(GLfloat x, GLfloat y, GLfloat z);
ANGLE_EXPORT void GL_APIENTRY RasterPos3fv(const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY RasterPos3i(GLint x, GLint y, GLint z);
ANGLE_EXPORT void GL_APIENTRY RasterPos3iv(const GLint *v);
ANGLE_EXPORT void GL_APIENTRY RasterPos3s(GLshort x, GLshort y, GLshort z);
ANGLE_EXPORT void GL_APIENTRY RasterPos3sv(const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY RasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
ANGLE_EXPORT void GL_APIENTRY RasterPos4dv(const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY RasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
ANGLE_EXPORT void GL_APIENTRY RasterPos4fv(const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY RasterPos4i(GLint x, GLint y, GLint z, GLint w);
ANGLE_EXPORT void GL_APIENTRY RasterPos4iv(const GLint *v);
ANGLE_EXPORT void GL_APIENTRY RasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w);
ANGLE_EXPORT void GL_APIENTRY RasterPos4sv(const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY ReadBuffer(GLenum src);
ANGLE_EXPORT void GL_APIENTRY ReadPixels(GLint x,
GLint y,
GLsizei width,
GLsizei height,
GLenum format,
GLenum type,
void *pixels);
ANGLE_EXPORT void GL_APIENTRY Rectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
ANGLE_EXPORT void GL_APIENTRY Rectdv(const GLdouble *v1, const GLdouble *v2);
ANGLE_EXPORT void GL_APIENTRY Rectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
ANGLE_EXPORT void GL_APIENTRY Rectfv(const GLfloat *v1, const GLfloat *v2);
ANGLE_EXPORT void GL_APIENTRY Recti(GLint x1, GLint y1, GLint x2, GLint y2);
ANGLE_EXPORT void GL_APIENTRY Rectiv(const GLint *v1, const GLint *v2);
ANGLE_EXPORT void GL_APIENTRY Rects(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
ANGLE_EXPORT void GL_APIENTRY Rectsv(const GLshort *v1, const GLshort *v2);
ANGLE_EXPORT GLint GL_APIENTRY RenderMode(GLenum mode);
ANGLE_EXPORT void GL_APIENTRY Rotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
ANGLE_EXPORT void GL_APIENTRY Rotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
ANGLE_EXPORT void GL_APIENTRY Scaled(GLdouble x, GLdouble y, GLdouble z);
ANGLE_EXPORT void GL_APIENTRY Scalef(GLfloat x, GLfloat y, GLfloat z);
ANGLE_EXPORT void GL_APIENTRY Scissor(GLint x, GLint y, GLsizei width, GLsizei height);
ANGLE_EXPORT void GL_APIENTRY SelectBuffer(GLsizei size, GLuint *buffer);
ANGLE_EXPORT void GL_APIENTRY ShadeModel(GLenum mode);
ANGLE_EXPORT void GL_APIENTRY StencilFunc(GLenum func, GLint ref, GLuint mask);
ANGLE_EXPORT void GL_APIENTRY StencilMask(GLuint mask);
ANGLE_EXPORT void GL_APIENTRY StencilOp(GLenum fail, GLenum zfail, GLenum zpass);
ANGLE_EXPORT void GL_APIENTRY TexCoord1d(GLdouble s);
ANGLE_EXPORT void GL_APIENTRY TexCoord1dv(const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY TexCoord1f(GLfloat s);
ANGLE_EXPORT void GL_APIENTRY TexCoord1fv(const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY TexCoord1i(GLint s);
ANGLE_EXPORT void GL_APIENTRY TexCoord1iv(const GLint *v);
ANGLE_EXPORT void GL_APIENTRY TexCoord1s(GLshort s);
ANGLE_EXPORT void GL_APIENTRY TexCoord1sv(const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY TexCoord2d(GLdouble s, GLdouble t);
ANGLE_EXPORT void GL_APIENTRY TexCoord2dv(const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY TexCoord2f(GLfloat s, GLfloat t);
ANGLE_EXPORT void GL_APIENTRY TexCoord2fv(const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY TexCoord2i(GLint s, GLint t);
ANGLE_EXPORT void GL_APIENTRY TexCoord2iv(const GLint *v);
ANGLE_EXPORT void GL_APIENTRY TexCoord2s(GLshort s, GLshort t);
ANGLE_EXPORT void GL_APIENTRY TexCoord2sv(const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY TexCoord3d(GLdouble s, GLdouble t, GLdouble r);
ANGLE_EXPORT void GL_APIENTRY TexCoord3dv(const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY TexCoord3f(GLfloat s, GLfloat t, GLfloat r);
ANGLE_EXPORT void GL_APIENTRY TexCoord3fv(const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY TexCoord3i(GLint s, GLint t, GLint r);
ANGLE_EXPORT void GL_APIENTRY TexCoord3iv(const GLint *v);
ANGLE_EXPORT void GL_APIENTRY TexCoord3s(GLshort s, GLshort t, GLshort r);
ANGLE_EXPORT void GL_APIENTRY TexCoord3sv(const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY TexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
ANGLE_EXPORT void GL_APIENTRY TexCoord4dv(const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY TexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
ANGLE_EXPORT void GL_APIENTRY TexCoord4fv(const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY TexCoord4i(GLint s, GLint t, GLint r, GLint q);
ANGLE_EXPORT void GL_APIENTRY TexCoord4iv(const GLint *v);
ANGLE_EXPORT void GL_APIENTRY TexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q);
ANGLE_EXPORT void GL_APIENTRY TexCoord4sv(const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY TexEnvf(GLenum target, GLenum pname, GLfloat param);
ANGLE_EXPORT void GL_APIENTRY TexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
ANGLE_EXPORT void GL_APIENTRY TexEnvi(GLenum target, GLenum pname, GLint param);
ANGLE_EXPORT void GL_APIENTRY TexEnviv(GLenum target, GLenum pname, const GLint *params);
ANGLE_EXPORT void GL_APIENTRY TexGend(GLenum coord, GLenum pname, GLdouble param);
ANGLE_EXPORT void GL_APIENTRY TexGendv(GLenum coord, GLenum pname, const GLdouble *params);
ANGLE_EXPORT void GL_APIENTRY TexGenf(GLenum coord, GLenum pname, GLfloat param);
ANGLE_EXPORT void GL_APIENTRY TexGenfv(GLenum coord, GLenum pname, const GLfloat *params);
ANGLE_EXPORT void GL_APIENTRY TexGeni(GLenum coord, GLenum pname, GLint param);
ANGLE_EXPORT void GL_APIENTRY TexGeniv(GLenum coord, GLenum pname, const GLint *params);
ANGLE_EXPORT void GL_APIENTRY TexImage1D(GLenum target,
GLint level,
GLint internalformat,
GLsizei width,
GLint border,
GLenum format,
GLenum type,
const void *pixels);
ANGLE_EXPORT void GL_APIENTRY TexImage2D(GLenum target,
GLint level,
GLint internalformat,
GLsizei width,
GLsizei height,
GLint border,
GLenum format,
GLenum type,
const void *pixels);
ANGLE_EXPORT void GL_APIENTRY TexParameterf(GLenum target, GLenum pname, GLfloat param);
ANGLE_EXPORT void GL_APIENTRY TexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
ANGLE_EXPORT void GL_APIENTRY TexParameteri(GLenum target, GLenum pname, GLint param);
ANGLE_EXPORT void GL_APIENTRY TexParameteriv(GLenum target, GLenum pname, const GLint *params);
ANGLE_EXPORT void GL_APIENTRY Translated(GLdouble x, GLdouble y, GLdouble z);
ANGLE_EXPORT void GL_APIENTRY Translatef(GLfloat x, GLfloat y, GLfloat z);
ANGLE_EXPORT void GL_APIENTRY Vertex2d(GLdouble x, GLdouble y);
ANGLE_EXPORT void GL_APIENTRY Vertex2dv(const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY Vertex2f(GLfloat x, GLfloat y);
ANGLE_EXPORT void GL_APIENTRY Vertex2fv(const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY Vertex2i(GLint x, GLint y);
ANGLE_EXPORT void GL_APIENTRY Vertex2iv(const GLint *v);
ANGLE_EXPORT void GL_APIENTRY Vertex2s(GLshort x, GLshort y);
ANGLE_EXPORT void GL_APIENTRY Vertex2sv(const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY Vertex3d(GLdouble x, GLdouble y, GLdouble z);
ANGLE_EXPORT void GL_APIENTRY Vertex3dv(const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY Vertex3f(GLfloat x, GLfloat y, GLfloat z);
ANGLE_EXPORT void GL_APIENTRY Vertex3fv(const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY Vertex3i(GLint x, GLint y, GLint z);
ANGLE_EXPORT void GL_APIENTRY Vertex3iv(const GLint *v);
ANGLE_EXPORT void GL_APIENTRY Vertex3s(GLshort x, GLshort y, GLshort z);
ANGLE_EXPORT void GL_APIENTRY Vertex3sv(const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY Vertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
ANGLE_EXPORT void GL_APIENTRY Vertex4dv(const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY Vertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
ANGLE_EXPORT void GL_APIENTRY Vertex4fv(const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY Vertex4i(GLint x, GLint y, GLint z, GLint w);
ANGLE_EXPORT void GL_APIENTRY Vertex4iv(const GLint *v);
ANGLE_EXPORT void GL_APIENTRY Vertex4s(GLshort x, GLshort y, GLshort z, GLshort w);
ANGLE_EXPORT void GL_APIENTRY Vertex4sv(const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY Viewport(GLint x, GLint y, GLsizei width, GLsizei height);
} // namespace gl
#endif // OPENGL32_ENTRY_POINTS_GL_1_0_AUTOGEN_H_

View File

@@ -0,0 +1,557 @@
// 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.
//
// entry_points_gl_1_1_autogen.cpp:
// Defines the GL 1.1 entry points.
#include "openGL32/entry_points_gl_1_1_autogen.h"
#include "libANGLE/Context.h"
#include "libANGLE/Context.inl.h"
#include "libANGLE/validationEGL.h"
#include "libANGLE/validationES.h"
#include "libANGLE/validationES1.h"
#include "libANGLE/validationES2.h"
#include "libANGLE/validationES3.h"
#include "libANGLE/validationES31.h"
#include "libANGLE/validationESEXT.h"
#include "libANGLE/validationGL11_autogen.h"
#include "libGLESv2/global_state.h"
#include "openGL32/entry_points_utils.h"
namespace gl
{
GLboolean GL_APIENTRY AreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences)
{
EVENT("(GLsizei n = %d, const GLuint *textures = 0x%016" PRIxPTR
", GLboolean *residences = 0x%016" PRIxPTR ")",
n, (uintptr_t)textures, (uintptr_t)residences);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateAreTexturesResident(context, n, textures, residences))
{
return context->areTexturesResident(n, textures, residences);
}
}
return GetDefaultReturnValue<EntryPoint::AreTexturesResident, GLboolean>();
}
void GL_APIENTRY ArrayElement(GLint i)
{
EVENT("(GLint i = %d)", i);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateArrayElement(context, i))
{
context->arrayElement(i);
}
}
}
void GL_APIENTRY BindTexture(GLenum target, GLuint texture)
{
EVENT("(GLenum target = 0x%X, GLuint texture = %u)", target, texture);
Context *context = GetValidGlobalContext();
if (context)
{
TextureType targetPacked = FromGLenum<TextureType>(target);
if (context->skipValidation() || ValidateBindTexture(context, targetPacked, texture))
{
context->bindTexture(targetPacked, texture);
}
}
}
void GL_APIENTRY ColorPointer(GLint size, GLenum type, GLsizei stride, const void *pointer)
{
EVENT(
"(GLint size = %d, GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = "
"0x%016" PRIxPTR ")",
size, type, stride, (uintptr_t)pointer);
Context *context = GetValidGlobalContext();
if (context)
{
VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
if (context->skipValidation() ||
ValidateColorPointer(context, size, typePacked, stride, pointer))
{
context->colorPointer(size, typePacked, stride, pointer);
}
}
}
void GL_APIENTRY CopyTexImage1D(GLenum target,
GLint level,
GLenum internalformat,
GLint x,
GLint y,
GLsizei width,
GLint border)
{
EVENT(
"(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLint x = %d, "
"GLint y = %d, GLsizei width = %d, GLint border = %d)",
target, level, internalformat, x, y, width, border);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateCopyTexImage1D(context, target, level, internalformat, x, y, width, border))
{
context->copyTexImage1D(target, level, internalformat, x, y, width, border);
}
}
}
void GL_APIENTRY CopyTexImage2D(GLenum target,
GLint level,
GLenum internalformat,
GLint x,
GLint y,
GLsizei width,
GLsizei height,
GLint border)
{
EVENT(
"(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLint x = %d, "
"GLint y = %d, GLsizei width = %d, GLsizei height = %d, GLint border = %d)",
target, level, internalformat, x, y, width, height, border);
Context *context = GetValidGlobalContext();
if (context)
{
TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
if (context->skipValidation() ||
ValidateCopyTexImage2D(context, targetPacked, level, internalformat, x, y, width,
height, border))
{
context->copyTexImage2D(targetPacked, level, internalformat, x, y, width, height,
border);
}
}
}
void GL_APIENTRY
CopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
{
EVENT(
"(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint x = %d, GLint y = %d, "
"GLsizei width = %d)",
target, level, xoffset, x, y, width);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateCopyTexSubImage1D(context, target, level, xoffset, x, y, width))
{
context->copyTexSubImage1D(target, level, xoffset, x, y, width);
}
}
}
void GL_APIENTRY CopyTexSubImage2D(GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint x,
GLint y,
GLsizei width,
GLsizei height)
{
EVENT(
"(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint x "
"= %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d)",
target, level, xoffset, yoffset, x, y, width, height);
Context *context = GetValidGlobalContext();
if (context)
{
TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
if (context->skipValidation() ||
ValidateCopyTexSubImage2D(context, targetPacked, level, xoffset, yoffset, x, y, width,
height))
{
context->copyTexSubImage2D(targetPacked, level, xoffset, yoffset, x, y, width, height);
}
}
}
void GL_APIENTRY DeleteTextures(GLsizei n, const GLuint *textures)
{
EVENT("(GLsizei n = %d, const GLuint *textures = 0x%016" PRIxPTR ")", n, (uintptr_t)textures);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateDeleteTextures(context, n, textures))
{
context->deleteTextures(n, textures);
}
}
}
void GL_APIENTRY DisableClientState(GLenum array)
{
EVENT("(GLenum array = 0x%X)", array);
Context *context = GetValidGlobalContext();
if (context)
{
ClientVertexArrayType arrayPacked = FromGLenum<ClientVertexArrayType>(array);
if (context->skipValidation() || ValidateDisableClientState(context, arrayPacked))
{
context->disableClientState(arrayPacked);
}
}
}
void GL_APIENTRY DrawArrays(GLenum mode, GLint first, GLsizei count)
{
EVENT("(GLenum mode = 0x%X, GLint first = %d, GLsizei count = %d)", mode, first, count);
Context *context = GetValidGlobalContext();
if (context)
{
PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
if (context->skipValidation() || ValidateDrawArrays(context, modePacked, first, count))
{
context->drawArrays(modePacked, first, count);
}
}
}
void GL_APIENTRY DrawElements(GLenum mode, GLsizei count, GLenum type, const void *indices)
{
EVENT(
"(GLenum mode = 0x%X, GLsizei count = %d, GLenum type = 0x%X, const void *indices = "
"0x%016" PRIxPTR ")",
mode, count, type, (uintptr_t)indices);
Context *context = GetValidGlobalContext();
if (context)
{
PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
if (context->skipValidation() ||
ValidateDrawElements(context, modePacked, count, typePacked, indices))
{
context->drawElements(modePacked, count, typePacked, indices);
}
}
}
void GL_APIENTRY EdgeFlagPointer(GLsizei stride, const void *pointer)
{
EVENT("(GLsizei stride = %d, const void *pointer = 0x%016" PRIxPTR ")", stride,
(uintptr_t)pointer);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateEdgeFlagPointer(context, stride, pointer))
{
context->edgeFlagPointer(stride, pointer);
}
}
}
void GL_APIENTRY EnableClientState(GLenum array)
{
EVENT("(GLenum array = 0x%X)", array);
Context *context = GetValidGlobalContext();
if (context)
{
ClientVertexArrayType arrayPacked = FromGLenum<ClientVertexArrayType>(array);
if (context->skipValidation() || ValidateEnableClientState(context, arrayPacked))
{
context->enableClientState(arrayPacked);
}
}
}
void GL_APIENTRY GenTextures(GLsizei n, GLuint *textures)
{
EVENT("(GLsizei n = %d, GLuint *textures = 0x%016" PRIxPTR ")", n, (uintptr_t)textures);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateGenTextures(context, n, textures))
{
context->genTextures(n, textures);
}
}
}
void GL_APIENTRY GetPointerv(GLenum pname, void **params)
{
EVENT("(GLenum pname = 0x%X, void **params = 0x%016" PRIxPTR ")", pname, (uintptr_t)params);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateGetPointerv(context, pname, params))
{
context->getPointerv(pname, params);
}
}
}
void GL_APIENTRY IndexPointer(GLenum type, GLsizei stride, const void *pointer)
{
EVENT("(GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = 0x%016" PRIxPTR ")",
type, stride, (uintptr_t)pointer);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateIndexPointer(context, type, stride, pointer))
{
context->indexPointer(type, stride, pointer);
}
}
}
void GL_APIENTRY Indexub(GLubyte c)
{
EVENT("(GLubyte c = %d)", c);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateIndexub(context, c))
{
context->indexub(c);
}
}
}
void GL_APIENTRY Indexubv(const GLubyte *c)
{
EVENT("(const GLubyte *c = 0x%016" PRIxPTR ")", (uintptr_t)c);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateIndexubv(context, c))
{
context->indexubv(c);
}
}
}
void GL_APIENTRY InterleavedArrays(GLenum format, GLsizei stride, const void *pointer)
{
EVENT("(GLenum format = 0x%X, GLsizei stride = %d, const void *pointer = 0x%016" PRIxPTR ")",
format, stride, (uintptr_t)pointer);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateInterleavedArrays(context, format, stride, pointer))
{
context->interleavedArrays(format, stride, pointer);
}
}
}
GLboolean GL_APIENTRY IsTexture(GLuint texture)
{
EVENT("(GLuint texture = %u)", texture);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateIsTexture(context, texture))
{
return context->isTexture(texture);
}
}
return GetDefaultReturnValue<EntryPoint::IsTexture, GLboolean>();
}
void GL_APIENTRY NormalPointer(GLenum type, GLsizei stride, const void *pointer)
{
EVENT("(GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = 0x%016" PRIxPTR ")",
type, stride, (uintptr_t)pointer);
Context *context = GetValidGlobalContext();
if (context)
{
VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
if (context->skipValidation() ||
ValidateNormalPointer(context, typePacked, stride, pointer))
{
context->normalPointer(typePacked, stride, pointer);
}
}
}
void GL_APIENTRY PolygonOffset(GLfloat factor, GLfloat units)
{
EVENT("(GLfloat factor = %f, GLfloat units = %f)", factor, units);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidatePolygonOffset(context, factor, units))
{
context->polygonOffset(factor, units);
}
}
}
void GL_APIENTRY PopClientAttrib()
{
EVENT("()");
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidatePopClientAttrib(context))
{
context->popClientAttrib();
}
}
}
void GL_APIENTRY PrioritizeTextures(GLsizei n, const GLuint *textures, const GLfloat *priorities)
{
EVENT("(GLsizei n = %d, const GLuint *textures = 0x%016" PRIxPTR
", const GLfloat *priorities = 0x%016" PRIxPTR ")",
n, (uintptr_t)textures, (uintptr_t)priorities);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidatePrioritizeTextures(context, n, textures, priorities))
{
context->prioritizeTextures(n, textures, priorities);
}
}
}
void GL_APIENTRY PushClientAttrib(GLbitfield mask)
{
EVENT("(GLbitfield mask = 0x%X)", mask);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidatePushClientAttrib(context, mask))
{
context->pushClientAttrib(mask);
}
}
}
void GL_APIENTRY TexCoordPointer(GLint size, GLenum type, GLsizei stride, const void *pointer)
{
EVENT(
"(GLint size = %d, GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = "
"0x%016" PRIxPTR ")",
size, type, stride, (uintptr_t)pointer);
Context *context = GetValidGlobalContext();
if (context)
{
VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
if (context->skipValidation() ||
ValidateTexCoordPointer(context, size, typePacked, stride, pointer))
{
context->texCoordPointer(size, typePacked, stride, pointer);
}
}
}
void GL_APIENTRY TexSubImage1D(GLenum target,
GLint level,
GLint xoffset,
GLsizei width,
GLenum format,
GLenum type,
const void *pixels)
{
EVENT(
"(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLsizei width = %d, GLenum "
"format = 0x%X, GLenum type = 0x%X, const void *pixels = 0x%016" PRIxPTR ")",
target, level, xoffset, width, format, type, (uintptr_t)pixels);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateTexSubImage1D(context, target, level, xoffset, width, format, type, pixels))
{
context->texSubImage1D(target, level, xoffset, width, format, type, pixels);
}
}
}
void GL_APIENTRY TexSubImage2D(GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLsizei width,
GLsizei height,
GLenum format,
GLenum type,
const void *pixels)
{
EVENT(
"(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLsizei "
"width = %d, GLsizei height = %d, GLenum format = 0x%X, GLenum type = 0x%X, const void "
"*pixels = 0x%016" PRIxPTR ")",
target, level, xoffset, yoffset, width, height, format, type, (uintptr_t)pixels);
Context *context = GetValidGlobalContext();
if (context)
{
TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
if (context->skipValidation() ||
ValidateTexSubImage2D(context, targetPacked, level, xoffset, yoffset, width, height,
format, type, pixels))
{
context->texSubImage2D(targetPacked, level, xoffset, yoffset, width, height, format,
type, pixels);
}
}
}
void GL_APIENTRY VertexPointer(GLint size, GLenum type, GLsizei stride, const void *pointer)
{
EVENT(
"(GLint size = %d, GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = "
"0x%016" PRIxPTR ")",
size, type, stride, (uintptr_t)pointer);
Context *context = GetValidGlobalContext();
if (context)
{
VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
if (context->skipValidation() ||
ValidateVertexPointer(context, size, typePacked, stride, pointer))
{
context->vertexPointer(size, typePacked, stride, pointer);
}
}
}
} // namespace gl

View File

@@ -0,0 +1,105 @@
// 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.
//
// entry_points_gl_1_1_autogen.h:
// Defines the GL 1.1 entry points.
#ifndef OPENGL32_ENTRY_POINTS_GL_1_1_AUTOGEN_H_
#define OPENGL32_ENTRY_POINTS_GL_1_1_AUTOGEN_H_
#include <export.h>
#include "angle_gl.h"
#include "WGL/wgl.h"
#include "windows.h"
namespace gl
{
ANGLE_EXPORT GLboolean GL_APIENTRY AreTexturesResident(GLsizei n,
const GLuint *textures,
GLboolean *residences);
ANGLE_EXPORT void GL_APIENTRY ArrayElement(GLint i);
ANGLE_EXPORT void GL_APIENTRY BindTexture(GLenum target, GLuint texture);
ANGLE_EXPORT void GL_APIENTRY ColorPointer(GLint size,
GLenum type,
GLsizei stride,
const void *pointer);
ANGLE_EXPORT void GL_APIENTRY CopyTexImage1D(GLenum target,
GLint level,
GLenum internalformat,
GLint x,
GLint y,
GLsizei width,
GLint border);
ANGLE_EXPORT void GL_APIENTRY CopyTexImage2D(GLenum target,
GLint level,
GLenum internalformat,
GLint x,
GLint y,
GLsizei width,
GLsizei height,
GLint border);
ANGLE_EXPORT void GL_APIENTRY
CopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
ANGLE_EXPORT void GL_APIENTRY CopyTexSubImage2D(GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint x,
GLint y,
GLsizei width,
GLsizei height);
ANGLE_EXPORT void GL_APIENTRY DeleteTextures(GLsizei n, const GLuint *textures);
ANGLE_EXPORT void GL_APIENTRY DisableClientState(GLenum array);
ANGLE_EXPORT void GL_APIENTRY DrawArrays(GLenum mode, GLint first, GLsizei count);
ANGLE_EXPORT void GL_APIENTRY DrawElements(GLenum mode,
GLsizei count,
GLenum type,
const void *indices);
ANGLE_EXPORT void GL_APIENTRY EdgeFlagPointer(GLsizei stride, const void *pointer);
ANGLE_EXPORT void GL_APIENTRY EnableClientState(GLenum array);
ANGLE_EXPORT void GL_APIENTRY GenTextures(GLsizei n, GLuint *textures);
ANGLE_EXPORT void GL_APIENTRY GetPointerv(GLenum pname, void **params);
ANGLE_EXPORT void GL_APIENTRY IndexPointer(GLenum type, GLsizei stride, const void *pointer);
ANGLE_EXPORT void GL_APIENTRY Indexub(GLubyte c);
ANGLE_EXPORT void GL_APIENTRY Indexubv(const GLubyte *c);
ANGLE_EXPORT void GL_APIENTRY InterleavedArrays(GLenum format, GLsizei stride, const void *pointer);
ANGLE_EXPORT GLboolean GL_APIENTRY IsTexture(GLuint texture);
ANGLE_EXPORT void GL_APIENTRY NormalPointer(GLenum type, GLsizei stride, const void *pointer);
ANGLE_EXPORT void GL_APIENTRY PolygonOffset(GLfloat factor, GLfloat units);
ANGLE_EXPORT void GL_APIENTRY PopClientAttrib();
ANGLE_EXPORT void GL_APIENTRY PrioritizeTextures(GLsizei n,
const GLuint *textures,
const GLfloat *priorities);
ANGLE_EXPORT void GL_APIENTRY PushClientAttrib(GLbitfield mask);
ANGLE_EXPORT void GL_APIENTRY TexCoordPointer(GLint size,
GLenum type,
GLsizei stride,
const void *pointer);
ANGLE_EXPORT void GL_APIENTRY TexSubImage1D(GLenum target,
GLint level,
GLint xoffset,
GLsizei width,
GLenum format,
GLenum type,
const void *pixels);
ANGLE_EXPORT void GL_APIENTRY TexSubImage2D(GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLsizei width,
GLsizei height,
GLenum format,
GLenum type,
const void *pixels);
ANGLE_EXPORT void GL_APIENTRY VertexPointer(GLint size,
GLenum type,
GLsizei stride,
const void *pointer);
} // namespace gl
#endif // OPENGL32_ENTRY_POINTS_GL_1_1_AUTOGEN_H_

View File

@@ -0,0 +1,146 @@
// 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.
//
// entry_points_gl_1_2_autogen.cpp:
// Defines the GL 1.2 entry points.
#include "openGL32/entry_points_gl_1_2_autogen.h"
#include "libANGLE/Context.h"
#include "libANGLE/Context.inl.h"
#include "libANGLE/validationEGL.h"
#include "libANGLE/validationES.h"
#include "libANGLE/validationES1.h"
#include "libANGLE/validationES2.h"
#include "libANGLE/validationES3.h"
#include "libANGLE/validationES31.h"
#include "libANGLE/validationESEXT.h"
#include "libANGLE/validationGL12_autogen.h"
#include "libGLESv2/global_state.h"
#include "openGL32/entry_points_utils.h"
namespace gl
{
void GL_APIENTRY CopyTexSubImage3D(GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint zoffset,
GLint x,
GLint y,
GLsizei width,
GLsizei height)
{
EVENT(
"(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
"zoffset = %d, GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d)",
target, level, xoffset, yoffset, zoffset, x, y, width, height);
Context *context = GetValidGlobalContext();
if (context)
{
TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
if (context->skipValidation() ||
ValidateCopyTexSubImage3D(context, targetPacked, level, xoffset, yoffset, zoffset, x, y,
width, height))
{
context->copyTexSubImage3D(targetPacked, level, xoffset, yoffset, zoffset, x, y, width,
height);
}
}
}
void GL_APIENTRY DrawRangeElements(GLenum mode,
GLuint start,
GLuint end,
GLsizei count,
GLenum type,
const void *indices)
{
EVENT(
"(GLenum mode = 0x%X, GLuint start = %u, GLuint end = %u, GLsizei count = %d, GLenum type "
"= 0x%X, const void *indices = 0x%016" PRIxPTR ")",
mode, start, end, count, type, (uintptr_t)indices);
Context *context = GetValidGlobalContext();
if (context)
{
PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
if (context->skipValidation() ||
ValidateDrawRangeElements(context, modePacked, start, end, count, typePacked, indices))
{
context->drawRangeElements(modePacked, start, end, count, typePacked, indices);
}
}
}
void GL_APIENTRY TexImage3D(GLenum target,
GLint level,
GLint internalformat,
GLsizei width,
GLsizei height,
GLsizei depth,
GLint border,
GLenum format,
GLenum type,
const void *pixels)
{
EVENT(
"(GLenum target = 0x%X, GLint level = %d, GLint internalformat = %d, GLsizei width = %d, "
"GLsizei height = %d, GLsizei depth = %d, GLint border = %d, GLenum format = 0x%X, GLenum "
"type = 0x%X, const void *pixels = 0x%016" PRIxPTR ")",
target, level, internalformat, width, height, depth, border, format, type,
(uintptr_t)pixels);
Context *context = GetValidGlobalContext();
if (context)
{
TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
if (context->skipValidation() ||
ValidateTexImage3D(context, targetPacked, level, internalformat, width, height, depth,
border, format, type, pixels))
{
context->texImage3D(targetPacked, level, internalformat, width, height, depth, border,
format, type, pixels);
}
}
}
void GL_APIENTRY TexSubImage3D(GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint zoffset,
GLsizei width,
GLsizei height,
GLsizei depth,
GLenum format,
GLenum type,
const void *pixels)
{
EVENT(
"(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
"zoffset = %d, GLsizei width = %d, GLsizei height = %d, GLsizei depth = %d, GLenum format "
"= 0x%X, GLenum type = 0x%X, const void *pixels = 0x%016" PRIxPTR ")",
target, level, xoffset, yoffset, zoffset, width, height, depth, format, type,
(uintptr_t)pixels);
Context *context = GetValidGlobalContext();
if (context)
{
TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
if (context->skipValidation() ||
ValidateTexSubImage3D(context, targetPacked, level, xoffset, yoffset, zoffset, width,
height, depth, format, type, pixels))
{
context->texSubImage3D(targetPacked, level, xoffset, yoffset, zoffset, width, height,
depth, format, type, pixels);
}
}
}
} // namespace gl

View File

@@ -0,0 +1,60 @@
// 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.
//
// entry_points_gl_1_2_autogen.h:
// Defines the GL 1.2 entry points.
#ifndef OPENGL32_ENTRY_POINTS_GL_1_2_AUTOGEN_H_
#define OPENGL32_ENTRY_POINTS_GL_1_2_AUTOGEN_H_
#include <export.h>
#include "angle_gl.h"
#include "WGL/wgl.h"
#include "windows.h"
namespace gl
{
ANGLE_EXPORT void GL_APIENTRY CopyTexSubImage3D(GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint zoffset,
GLint x,
GLint y,
GLsizei width,
GLsizei height);
ANGLE_EXPORT void GL_APIENTRY DrawRangeElements(GLenum mode,
GLuint start,
GLuint end,
GLsizei count,
GLenum type,
const void *indices);
ANGLE_EXPORT void GL_APIENTRY TexImage3D(GLenum target,
GLint level,
GLint internalformat,
GLsizei width,
GLsizei height,
GLsizei depth,
GLint border,
GLenum format,
GLenum type,
const void *pixels);
ANGLE_EXPORT void GL_APIENTRY TexSubImage3D(GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint zoffset,
GLsizei width,
GLsizei height,
GLsizei depth,
GLenum format,
GLenum type,
const void *pixels);
} // namespace gl
#endif // OPENGL32_ENTRY_POINTS_GL_1_2_AUTOGEN_H_

View File

@@ -0,0 +1,771 @@
// 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.
//
// entry_points_gl_1_3_autogen.cpp:
// Defines the GL 1.3 entry points.
#include "openGL32/entry_points_gl_1_3_autogen.h"
#include "libANGLE/Context.h"
#include "libANGLE/Context.inl.h"
#include "libANGLE/validationEGL.h"
#include "libANGLE/validationES.h"
#include "libANGLE/validationES1.h"
#include "libANGLE/validationES2.h"
#include "libANGLE/validationES3.h"
#include "libANGLE/validationES31.h"
#include "libANGLE/validationESEXT.h"
#include "libANGLE/validationGL13_autogen.h"
#include "libGLESv2/global_state.h"
#include "openGL32/entry_points_utils.h"
namespace gl
{
void GL_APIENTRY ActiveTexture(GLenum texture)
{
EVENT("(GLenum texture = 0x%X)", texture);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateActiveTexture(context, texture))
{
context->activeTexture(texture);
}
}
}
void GL_APIENTRY ClientActiveTexture(GLenum texture)
{
EVENT("(GLenum texture = 0x%X)", texture);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateClientActiveTexture(context, texture))
{
context->clientActiveTexture(texture);
}
}
}
void GL_APIENTRY CompressedTexImage1D(GLenum target,
GLint level,
GLenum internalformat,
GLsizei width,
GLint border,
GLsizei imageSize,
const void *data)
{
EVENT(
"(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLsizei width = "
"%d, GLint border = %d, GLsizei imageSize = %d, const void *data = 0x%016" PRIxPTR ")",
target, level, internalformat, width, border, imageSize, (uintptr_t)data);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateCompressedTexImage1D(context, target, level, internalformat, width, border,
imageSize, data))
{
context->compressedTexImage1D(target, level, internalformat, width, border, imageSize,
data);
}
}
}
void GL_APIENTRY CompressedTexImage2D(GLenum target,
GLint level,
GLenum internalformat,
GLsizei width,
GLsizei height,
GLint border,
GLsizei imageSize,
const void *data)
{
EVENT(
"(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLsizei width = "
"%d, GLsizei height = %d, GLint border = %d, GLsizei imageSize = %d, const void *data = "
"0x%016" PRIxPTR ")",
target, level, internalformat, width, height, border, imageSize, (uintptr_t)data);
Context *context = GetValidGlobalContext();
if (context)
{
TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
if (context->skipValidation() ||
ValidateCompressedTexImage2D(context, targetPacked, level, internalformat, width,
height, border, imageSize, data))
{
context->compressedTexImage2D(targetPacked, level, internalformat, width, height,
border, imageSize, data);
}
}
}
void GL_APIENTRY CompressedTexImage3D(GLenum target,
GLint level,
GLenum internalformat,
GLsizei width,
GLsizei height,
GLsizei depth,
GLint border,
GLsizei imageSize,
const void *data)
{
EVENT(
"(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLsizei width = "
"%d, GLsizei height = %d, GLsizei depth = %d, GLint border = %d, GLsizei imageSize = %d, "
"const void *data = 0x%016" PRIxPTR ")",
target, level, internalformat, width, height, depth, border, imageSize, (uintptr_t)data);
Context *context = GetValidGlobalContext();
if (context)
{
TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
if (context->skipValidation() ||
ValidateCompressedTexImage3D(context, targetPacked, level, internalformat, width,
height, depth, border, imageSize, data))
{
context->compressedTexImage3D(targetPacked, level, internalformat, width, height, depth,
border, imageSize, data);
}
}
}
void GL_APIENTRY CompressedTexSubImage1D(GLenum target,
GLint level,
GLint xoffset,
GLsizei width,
GLenum format,
GLsizei imageSize,
const void *data)
{
EVENT(
"(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLsizei width = %d, GLenum "
"format = 0x%X, GLsizei imageSize = %d, const void *data = 0x%016" PRIxPTR ")",
target, level, xoffset, width, format, imageSize, (uintptr_t)data);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateCompressedTexSubImage1D(context, target, level, xoffset, width, format,
imageSize, data))
{
context->compressedTexSubImage1D(target, level, xoffset, width, format, imageSize,
data);
}
}
}
void GL_APIENTRY CompressedTexSubImage2D(GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLsizei width,
GLsizei height,
GLenum format,
GLsizei imageSize,
const void *data)
{
EVENT(
"(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLsizei "
"width = %d, GLsizei height = %d, GLenum format = 0x%X, GLsizei imageSize = %d, const void "
"*data = 0x%016" PRIxPTR ")",
target, level, xoffset, yoffset, width, height, format, imageSize, (uintptr_t)data);
Context *context = GetValidGlobalContext();
if (context)
{
TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
if (context->skipValidation() ||
ValidateCompressedTexSubImage2D(context, targetPacked, level, xoffset, yoffset, width,
height, format, imageSize, data))
{
context->compressedTexSubImage2D(targetPacked, level, xoffset, yoffset, width, height,
format, imageSize, data);
}
}
}
void GL_APIENTRY CompressedTexSubImage3D(GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint zoffset,
GLsizei width,
GLsizei height,
GLsizei depth,
GLenum format,
GLsizei imageSize,
const void *data)
{
EVENT(
"(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
"zoffset = %d, GLsizei width = %d, GLsizei height = %d, GLsizei depth = %d, GLenum format "
"= 0x%X, GLsizei imageSize = %d, const void *data = 0x%016" PRIxPTR ")",
target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize,
(uintptr_t)data);
Context *context = GetValidGlobalContext();
if (context)
{
TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
if (context->skipValidation() ||
ValidateCompressedTexSubImage3D(context, targetPacked, level, xoffset, yoffset, zoffset,
width, height, depth, format, imageSize, data))
{
context->compressedTexSubImage3D(targetPacked, level, xoffset, yoffset, zoffset, width,
height, depth, format, imageSize, data);
}
}
}
void GL_APIENTRY GetCompressedTexImage(GLenum target, GLint level, void *img)
{
EVENT("(GLenum target = 0x%X, GLint level = %d, void *img = 0x%016" PRIxPTR ")", target, level,
(uintptr_t)img);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateGetCompressedTexImage(context, target, level, img))
{
context->getCompressedTexImage(target, level, img);
}
}
}
void GL_APIENTRY LoadTransposeMatrixd(const GLdouble *m)
{
EVENT("(const GLdouble *m = 0x%016" PRIxPTR ")", (uintptr_t)m);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateLoadTransposeMatrixd(context, m))
{
context->loadTransposeMatrixd(m);
}
}
}
void GL_APIENTRY LoadTransposeMatrixf(const GLfloat *m)
{
EVENT("(const GLfloat *m = 0x%016" PRIxPTR ")", (uintptr_t)m);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateLoadTransposeMatrixf(context, m))
{
context->loadTransposeMatrixf(m);
}
}
}
void GL_APIENTRY MultTransposeMatrixd(const GLdouble *m)
{
EVENT("(const GLdouble *m = 0x%016" PRIxPTR ")", (uintptr_t)m);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultTransposeMatrixd(context, m))
{
context->multTransposeMatrixd(m);
}
}
}
void GL_APIENTRY MultTransposeMatrixf(const GLfloat *m)
{
EVENT("(const GLfloat *m = 0x%016" PRIxPTR ")", (uintptr_t)m);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultTransposeMatrixf(context, m))
{
context->multTransposeMatrixf(m);
}
}
}
void GL_APIENTRY MultiTexCoord1d(GLenum target, GLdouble s)
{
EVENT("(GLenum target = 0x%X, GLdouble s = %f)", target, s);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord1d(context, target, s))
{
context->multiTexCoord1d(target, s);
}
}
}
void GL_APIENTRY MultiTexCoord1dv(GLenum target, const GLdouble *v)
{
EVENT("(GLenum target = 0x%X, const GLdouble *v = 0x%016" PRIxPTR ")", target, (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord1dv(context, target, v))
{
context->multiTexCoord1dv(target, v);
}
}
}
void GL_APIENTRY MultiTexCoord1f(GLenum target, GLfloat s)
{
EVENT("(GLenum target = 0x%X, GLfloat s = %f)", target, s);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord1f(context, target, s))
{
context->multiTexCoord1f(target, s);
}
}
}
void GL_APIENTRY MultiTexCoord1fv(GLenum target, const GLfloat *v)
{
EVENT("(GLenum target = 0x%X, const GLfloat *v = 0x%016" PRIxPTR ")", target, (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord1fv(context, target, v))
{
context->multiTexCoord1fv(target, v);
}
}
}
void GL_APIENTRY MultiTexCoord1i(GLenum target, GLint s)
{
EVENT("(GLenum target = 0x%X, GLint s = %d)", target, s);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord1i(context, target, s))
{
context->multiTexCoord1i(target, s);
}
}
}
void GL_APIENTRY MultiTexCoord1iv(GLenum target, const GLint *v)
{
EVENT("(GLenum target = 0x%X, const GLint *v = 0x%016" PRIxPTR ")", target, (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord1iv(context, target, v))
{
context->multiTexCoord1iv(target, v);
}
}
}
void GL_APIENTRY MultiTexCoord1s(GLenum target, GLshort s)
{
EVENT("(GLenum target = 0x%X, GLshort s = %d)", target, s);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord1s(context, target, s))
{
context->multiTexCoord1s(target, s);
}
}
}
void GL_APIENTRY MultiTexCoord1sv(GLenum target, const GLshort *v)
{
EVENT("(GLenum target = 0x%X, const GLshort *v = 0x%016" PRIxPTR ")", target, (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord1sv(context, target, v))
{
context->multiTexCoord1sv(target, v);
}
}
}
void GL_APIENTRY MultiTexCoord2d(GLenum target, GLdouble s, GLdouble t)
{
EVENT("(GLenum target = 0x%X, GLdouble s = %f, GLdouble t = %f)", target, s, t);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord2d(context, target, s, t))
{
context->multiTexCoord2d(target, s, t);
}
}
}
void GL_APIENTRY MultiTexCoord2dv(GLenum target, const GLdouble *v)
{
EVENT("(GLenum target = 0x%X, const GLdouble *v = 0x%016" PRIxPTR ")", target, (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord2dv(context, target, v))
{
context->multiTexCoord2dv(target, v);
}
}
}
void GL_APIENTRY MultiTexCoord2f(GLenum target, GLfloat s, GLfloat t)
{
EVENT("(GLenum target = 0x%X, GLfloat s = %f, GLfloat t = %f)", target, s, t);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord2f(context, target, s, t))
{
context->multiTexCoord2f(target, s, t);
}
}
}
void GL_APIENTRY MultiTexCoord2fv(GLenum target, const GLfloat *v)
{
EVENT("(GLenum target = 0x%X, const GLfloat *v = 0x%016" PRIxPTR ")", target, (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord2fv(context, target, v))
{
context->multiTexCoord2fv(target, v);
}
}
}
void GL_APIENTRY MultiTexCoord2i(GLenum target, GLint s, GLint t)
{
EVENT("(GLenum target = 0x%X, GLint s = %d, GLint t = %d)", target, s, t);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord2i(context, target, s, t))
{
context->multiTexCoord2i(target, s, t);
}
}
}
void GL_APIENTRY MultiTexCoord2iv(GLenum target, const GLint *v)
{
EVENT("(GLenum target = 0x%X, const GLint *v = 0x%016" PRIxPTR ")", target, (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord2iv(context, target, v))
{
context->multiTexCoord2iv(target, v);
}
}
}
void GL_APIENTRY MultiTexCoord2s(GLenum target, GLshort s, GLshort t)
{
EVENT("(GLenum target = 0x%X, GLshort s = %d, GLshort t = %d)", target, s, t);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord2s(context, target, s, t))
{
context->multiTexCoord2s(target, s, t);
}
}
}
void GL_APIENTRY MultiTexCoord2sv(GLenum target, const GLshort *v)
{
EVENT("(GLenum target = 0x%X, const GLshort *v = 0x%016" PRIxPTR ")", target, (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord2sv(context, target, v))
{
context->multiTexCoord2sv(target, v);
}
}
}
void GL_APIENTRY MultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r)
{
EVENT("(GLenum target = 0x%X, GLdouble s = %f, GLdouble t = %f, GLdouble r = %f)", target, s, t,
r);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord3d(context, target, s, t, r))
{
context->multiTexCoord3d(target, s, t, r);
}
}
}
void GL_APIENTRY MultiTexCoord3dv(GLenum target, const GLdouble *v)
{
EVENT("(GLenum target = 0x%X, const GLdouble *v = 0x%016" PRIxPTR ")", target, (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord3dv(context, target, v))
{
context->multiTexCoord3dv(target, v);
}
}
}
void GL_APIENTRY MultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r)
{
EVENT("(GLenum target = 0x%X, GLfloat s = %f, GLfloat t = %f, GLfloat r = %f)", target, s, t,
r);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord3f(context, target, s, t, r))
{
context->multiTexCoord3f(target, s, t, r);
}
}
}
void GL_APIENTRY MultiTexCoord3fv(GLenum target, const GLfloat *v)
{
EVENT("(GLenum target = 0x%X, const GLfloat *v = 0x%016" PRIxPTR ")", target, (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord3fv(context, target, v))
{
context->multiTexCoord3fv(target, v);
}
}
}
void GL_APIENTRY MultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r)
{
EVENT("(GLenum target = 0x%X, GLint s = %d, GLint t = %d, GLint r = %d)", target, s, t, r);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord3i(context, target, s, t, r))
{
context->multiTexCoord3i(target, s, t, r);
}
}
}
void GL_APIENTRY MultiTexCoord3iv(GLenum target, const GLint *v)
{
EVENT("(GLenum target = 0x%X, const GLint *v = 0x%016" PRIxPTR ")", target, (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord3iv(context, target, v))
{
context->multiTexCoord3iv(target, v);
}
}
}
void GL_APIENTRY MultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r)
{
EVENT("(GLenum target = 0x%X, GLshort s = %d, GLshort t = %d, GLshort r = %d)", target, s, t,
r);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord3s(context, target, s, t, r))
{
context->multiTexCoord3s(target, s, t, r);
}
}
}
void GL_APIENTRY MultiTexCoord3sv(GLenum target, const GLshort *v)
{
EVENT("(GLenum target = 0x%X, const GLshort *v = 0x%016" PRIxPTR ")", target, (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord3sv(context, target, v))
{
context->multiTexCoord3sv(target, v);
}
}
}
void GL_APIENTRY MultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
{
EVENT(
"(GLenum target = 0x%X, GLdouble s = %f, GLdouble t = %f, GLdouble r = %f, GLdouble q = "
"%f)",
target, s, t, r, q);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord4d(context, target, s, t, r, q))
{
context->multiTexCoord4d(target, s, t, r, q);
}
}
}
void GL_APIENTRY MultiTexCoord4dv(GLenum target, const GLdouble *v)
{
EVENT("(GLenum target = 0x%X, const GLdouble *v = 0x%016" PRIxPTR ")", target, (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord4dv(context, target, v))
{
context->multiTexCoord4dv(target, v);
}
}
}
void GL_APIENTRY MultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
{
EVENT("(GLenum target = 0x%X, GLfloat s = %f, GLfloat t = %f, GLfloat r = %f, GLfloat q = %f)",
target, s, t, r, q);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord4f(context, target, s, t, r, q))
{
context->multiTexCoord4f(target, s, t, r, q);
}
}
}
void GL_APIENTRY MultiTexCoord4fv(GLenum target, const GLfloat *v)
{
EVENT("(GLenum target = 0x%X, const GLfloat *v = 0x%016" PRIxPTR ")", target, (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord4fv(context, target, v))
{
context->multiTexCoord4fv(target, v);
}
}
}
void GL_APIENTRY MultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q)
{
EVENT("(GLenum target = 0x%X, GLint s = %d, GLint t = %d, GLint r = %d, GLint q = %d)", target,
s, t, r, q);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord4i(context, target, s, t, r, q))
{
context->multiTexCoord4i(target, s, t, r, q);
}
}
}
void GL_APIENTRY MultiTexCoord4iv(GLenum target, const GLint *v)
{
EVENT("(GLenum target = 0x%X, const GLint *v = 0x%016" PRIxPTR ")", target, (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord4iv(context, target, v))
{
context->multiTexCoord4iv(target, v);
}
}
}
void GL_APIENTRY MultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
{
EVENT("(GLenum target = 0x%X, GLshort s = %d, GLshort t = %d, GLshort r = %d, GLshort q = %d)",
target, s, t, r, q);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord4s(context, target, s, t, r, q))
{
context->multiTexCoord4s(target, s, t, r, q);
}
}
}
void GL_APIENTRY MultiTexCoord4sv(GLenum target, const GLshort *v)
{
EVENT("(GLenum target = 0x%X, const GLshort *v = 0x%016" PRIxPTR ")", target, (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateMultiTexCoord4sv(context, target, v))
{
context->multiTexCoord4sv(target, v);
}
}
}
void GL_APIENTRY SampleCoverage(GLfloat value, GLboolean invert)
{
EVENT("(GLfloat value = %f, GLboolean invert = %u)", value, invert);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateSampleCoverage(context, value, invert))
{
context->sampleCoverage(value, invert);
}
}
}
} // namespace gl

View File

@@ -0,0 +1,118 @@
// 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.
//
// entry_points_gl_1_3_autogen.h:
// Defines the GL 1.3 entry points.
#ifndef OPENGL32_ENTRY_POINTS_GL_1_3_AUTOGEN_H_
#define OPENGL32_ENTRY_POINTS_GL_1_3_AUTOGEN_H_
#include <export.h>
#include "angle_gl.h"
#include "WGL/wgl.h"
#include "windows.h"
namespace gl
{
ANGLE_EXPORT void GL_APIENTRY ActiveTexture(GLenum texture);
ANGLE_EXPORT void GL_APIENTRY ClientActiveTexture(GLenum texture);
ANGLE_EXPORT void GL_APIENTRY CompressedTexImage1D(GLenum target,
GLint level,
GLenum internalformat,
GLsizei width,
GLint border,
GLsizei imageSize,
const void *data);
ANGLE_EXPORT void GL_APIENTRY CompressedTexImage2D(GLenum target,
GLint level,
GLenum internalformat,
GLsizei width,
GLsizei height,
GLint border,
GLsizei imageSize,
const void *data);
ANGLE_EXPORT void GL_APIENTRY CompressedTexImage3D(GLenum target,
GLint level,
GLenum internalformat,
GLsizei width,
GLsizei height,
GLsizei depth,
GLint border,
GLsizei imageSize,
const void *data);
ANGLE_EXPORT void GL_APIENTRY CompressedTexSubImage1D(GLenum target,
GLint level,
GLint xoffset,
GLsizei width,
GLenum format,
GLsizei imageSize,
const void *data);
ANGLE_EXPORT void GL_APIENTRY CompressedTexSubImage2D(GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLsizei width,
GLsizei height,
GLenum format,
GLsizei imageSize,
const void *data);
ANGLE_EXPORT void GL_APIENTRY CompressedTexSubImage3D(GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint zoffset,
GLsizei width,
GLsizei height,
GLsizei depth,
GLenum format,
GLsizei imageSize,
const void *data);
ANGLE_EXPORT void GL_APIENTRY GetCompressedTexImage(GLenum target, GLint level, void *img);
ANGLE_EXPORT void GL_APIENTRY LoadTransposeMatrixd(const GLdouble *m);
ANGLE_EXPORT void GL_APIENTRY LoadTransposeMatrixf(const GLfloat *m);
ANGLE_EXPORT void GL_APIENTRY MultTransposeMatrixd(const GLdouble *m);
ANGLE_EXPORT void GL_APIENTRY MultTransposeMatrixf(const GLfloat *m);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord1d(GLenum target, GLdouble s);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord1dv(GLenum target, const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord1f(GLenum target, GLfloat s);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord1fv(GLenum target, const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord1i(GLenum target, GLint s);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord1iv(GLenum target, const GLint *v);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord1s(GLenum target, GLshort s);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord1sv(GLenum target, const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord2d(GLenum target, GLdouble s, GLdouble t);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord2dv(GLenum target, const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord2f(GLenum target, GLfloat s, GLfloat t);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord2fv(GLenum target, const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord2i(GLenum target, GLint s, GLint t);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord2iv(GLenum target, const GLint *v);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord2s(GLenum target, GLshort s, GLshort t);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord2sv(GLenum target, const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord3dv(GLenum target, const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord3fv(GLenum target, const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord3iv(GLenum target, const GLint *v);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord3sv(GLenum target, const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY
MultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord4dv(GLenum target, const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY
MultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord4fv(GLenum target, const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord4iv(GLenum target, const GLint *v);
ANGLE_EXPORT void GL_APIENTRY
MultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
ANGLE_EXPORT void GL_APIENTRY MultiTexCoord4sv(GLenum target, const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY SampleCoverage(GLfloat value, GLboolean invert);
} // namespace gl
#endif // OPENGL32_ENTRY_POINTS_GL_1_3_AUTOGEN_H_

View File

@@ -0,0 +1,719 @@
// 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.
//
// entry_points_gl_1_4_autogen.cpp:
// Defines the GL 1.4 entry points.
#include "openGL32/entry_points_gl_1_4_autogen.h"
#include "libANGLE/Context.h"
#include "libANGLE/Context.inl.h"
#include "libANGLE/validationEGL.h"
#include "libANGLE/validationES.h"
#include "libANGLE/validationES1.h"
#include "libANGLE/validationES2.h"
#include "libANGLE/validationES3.h"
#include "libANGLE/validationES31.h"
#include "libANGLE/validationESEXT.h"
#include "libANGLE/validationGL14_autogen.h"
#include "libGLESv2/global_state.h"
#include "openGL32/entry_points_utils.h"
namespace gl
{
void GL_APIENTRY BlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
{
EVENT("(GLfloat red = %f, GLfloat green = %f, GLfloat blue = %f, GLfloat alpha = %f)", red,
green, blue, alpha);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateBlendColor(context, red, green, blue, alpha))
{
context->blendColor(red, green, blue, alpha);
}
}
}
void GL_APIENTRY BlendEquation(GLenum mode)
{
EVENT("(GLenum mode = 0x%X)", mode);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateBlendEquation(context, mode))
{
context->blendEquation(mode);
}
}
}
void GL_APIENTRY BlendFuncSeparate(GLenum sfactorRGB,
GLenum dfactorRGB,
GLenum sfactorAlpha,
GLenum dfactorAlpha)
{
EVENT(
"(GLenum sfactorRGB = 0x%X, GLenum dfactorRGB = 0x%X, GLenum sfactorAlpha = 0x%X, GLenum "
"dfactorAlpha = 0x%X)",
sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateBlendFuncSeparate(context, sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha))
{
context->blendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
}
}
}
void GL_APIENTRY FogCoordPointer(GLenum type, GLsizei stride, const void *pointer)
{
EVENT("(GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = 0x%016" PRIxPTR ")",
type, stride, (uintptr_t)pointer);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateFogCoordPointer(context, type, stride, pointer))
{
context->fogCoordPointer(type, stride, pointer);
}
}
}
void GL_APIENTRY FogCoordd(GLdouble coord)
{
EVENT("(GLdouble coord = %f)", coord);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateFogCoordd(context, coord))
{
context->fogCoordd(coord);
}
}
}
void GL_APIENTRY FogCoorddv(const GLdouble *coord)
{
EVENT("(const GLdouble *coord = 0x%016" PRIxPTR ")", (uintptr_t)coord);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateFogCoorddv(context, coord))
{
context->fogCoorddv(coord);
}
}
}
void GL_APIENTRY FogCoordf(GLfloat coord)
{
EVENT("(GLfloat coord = %f)", coord);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateFogCoordf(context, coord))
{
context->fogCoordf(coord);
}
}
}
void GL_APIENTRY FogCoordfv(const GLfloat *coord)
{
EVENT("(const GLfloat *coord = 0x%016" PRIxPTR ")", (uintptr_t)coord);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateFogCoordfv(context, coord))
{
context->fogCoordfv(coord);
}
}
}
void GL_APIENTRY MultiDrawArrays(GLenum mode,
const GLint *first,
const GLsizei *count,
GLsizei drawcount)
{
EVENT("(GLenum mode = 0x%X, const GLint *first = 0x%016" PRIxPTR
", const GLsizei *count = 0x%016" PRIxPTR ", GLsizei drawcount = %d)",
mode, (uintptr_t)first, (uintptr_t)count, drawcount);
Context *context = GetValidGlobalContext();
if (context)
{
PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
if (context->skipValidation() ||
ValidateMultiDrawArrays(context, modePacked, first, count, drawcount))
{
context->multiDrawArrays(modePacked, first, count, drawcount);
}
}
}
void GL_APIENTRY MultiDrawElements(GLenum mode,
const GLsizei *count,
GLenum type,
const void *const *indices,
GLsizei drawcount)
{
EVENT("(GLenum mode = 0x%X, const GLsizei *count = 0x%016" PRIxPTR
", GLenum type = 0x%X, const void *const*indices = 0x%016" PRIxPTR
", GLsizei drawcount = %d)",
mode, (uintptr_t)count, type, (uintptr_t)indices, drawcount);
Context *context = GetValidGlobalContext();
if (context)
{
PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
if (context->skipValidation() ||
ValidateMultiDrawElements(context, modePacked, count, typePacked, indices, drawcount))
{
context->multiDrawElements(modePacked, count, typePacked, indices, drawcount);
}
}
}
void GL_APIENTRY PointParameterf(GLenum pname, GLfloat param)
{
EVENT("(GLenum pname = 0x%X, GLfloat param = %f)", pname, param);
Context *context = GetValidGlobalContext();
if (context)
{
PointParameter pnamePacked = FromGLenum<PointParameter>(pname);
if (context->skipValidation() || ValidatePointParameterf(context, pnamePacked, param))
{
context->pointParameterf(pnamePacked, param);
}
}
}
void GL_APIENTRY PointParameterfv(GLenum pname, const GLfloat *params)
{
EVENT("(GLenum pname = 0x%X, const GLfloat *params = 0x%016" PRIxPTR ")", pname,
(uintptr_t)params);
Context *context = GetValidGlobalContext();
if (context)
{
PointParameter pnamePacked = FromGLenum<PointParameter>(pname);
if (context->skipValidation() || ValidatePointParameterfv(context, pnamePacked, params))
{
context->pointParameterfv(pnamePacked, params);
}
}
}
void GL_APIENTRY PointParameteri(GLenum pname, GLint param)
{
EVENT("(GLenum pname = 0x%X, GLint param = %d)", pname, param);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidatePointParameteri(context, pname, param))
{
context->pointParameteri(pname, param);
}
}
}
void GL_APIENTRY PointParameteriv(GLenum pname, const GLint *params)
{
EVENT("(GLenum pname = 0x%X, const GLint *params = 0x%016" PRIxPTR ")", pname,
(uintptr_t)params);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidatePointParameteriv(context, pname, params))
{
context->pointParameteriv(pname, params);
}
}
}
void GL_APIENTRY SecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue)
{
EVENT("(GLbyte red = %d, GLbyte green = %d, GLbyte blue = %d)", red, green, blue);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateSecondaryColor3b(context, red, green, blue))
{
context->secondaryColor3b(red, green, blue);
}
}
}
void GL_APIENTRY SecondaryColor3bv(const GLbyte *v)
{
EVENT("(const GLbyte *v = 0x%016" PRIxPTR ")", (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateSecondaryColor3bv(context, v))
{
context->secondaryColor3bv(v);
}
}
}
void GL_APIENTRY SecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue)
{
EVENT("(GLdouble red = %f, GLdouble green = %f, GLdouble blue = %f)", red, green, blue);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateSecondaryColor3d(context, red, green, blue))
{
context->secondaryColor3d(red, green, blue);
}
}
}
void GL_APIENTRY SecondaryColor3dv(const GLdouble *v)
{
EVENT("(const GLdouble *v = 0x%016" PRIxPTR ")", (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateSecondaryColor3dv(context, v))
{
context->secondaryColor3dv(v);
}
}
}
void GL_APIENTRY SecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue)
{
EVENT("(GLfloat red = %f, GLfloat green = %f, GLfloat blue = %f)", red, green, blue);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateSecondaryColor3f(context, red, green, blue))
{
context->secondaryColor3f(red, green, blue);
}
}
}
void GL_APIENTRY SecondaryColor3fv(const GLfloat *v)
{
EVENT("(const GLfloat *v = 0x%016" PRIxPTR ")", (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateSecondaryColor3fv(context, v))
{
context->secondaryColor3fv(v);
}
}
}
void GL_APIENTRY SecondaryColor3i(GLint red, GLint green, GLint blue)
{
EVENT("(GLint red = %d, GLint green = %d, GLint blue = %d)", red, green, blue);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateSecondaryColor3i(context, red, green, blue))
{
context->secondaryColor3i(red, green, blue);
}
}
}
void GL_APIENTRY SecondaryColor3iv(const GLint *v)
{
EVENT("(const GLint *v = 0x%016" PRIxPTR ")", (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateSecondaryColor3iv(context, v))
{
context->secondaryColor3iv(v);
}
}
}
void GL_APIENTRY SecondaryColor3s(GLshort red, GLshort green, GLshort blue)
{
EVENT("(GLshort red = %d, GLshort green = %d, GLshort blue = %d)", red, green, blue);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateSecondaryColor3s(context, red, green, blue))
{
context->secondaryColor3s(red, green, blue);
}
}
}
void GL_APIENTRY SecondaryColor3sv(const GLshort *v)
{
EVENT("(const GLshort *v = 0x%016" PRIxPTR ")", (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateSecondaryColor3sv(context, v))
{
context->secondaryColor3sv(v);
}
}
}
void GL_APIENTRY SecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue)
{
EVENT("(GLubyte red = %d, GLubyte green = %d, GLubyte blue = %d)", red, green, blue);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateSecondaryColor3ub(context, red, green, blue))
{
context->secondaryColor3ub(red, green, blue);
}
}
}
void GL_APIENTRY SecondaryColor3ubv(const GLubyte *v)
{
EVENT("(const GLubyte *v = 0x%016" PRIxPTR ")", (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateSecondaryColor3ubv(context, v))
{
context->secondaryColor3ubv(v);
}
}
}
void GL_APIENTRY SecondaryColor3ui(GLuint red, GLuint green, GLuint blue)
{
EVENT("(GLuint red = %u, GLuint green = %u, GLuint blue = %u)", red, green, blue);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateSecondaryColor3ui(context, red, green, blue))
{
context->secondaryColor3ui(red, green, blue);
}
}
}
void GL_APIENTRY SecondaryColor3uiv(const GLuint *v)
{
EVENT("(const GLuint *v = 0x%016" PRIxPTR ")", (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateSecondaryColor3uiv(context, v))
{
context->secondaryColor3uiv(v);
}
}
}
void GL_APIENTRY SecondaryColor3us(GLushort red, GLushort green, GLushort blue)
{
EVENT("(GLushort red = %u, GLushort green = %u, GLushort blue = %u)", red, green, blue);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateSecondaryColor3us(context, red, green, blue))
{
context->secondaryColor3us(red, green, blue);
}
}
}
void GL_APIENTRY SecondaryColor3usv(const GLushort *v)
{
EVENT("(const GLushort *v = 0x%016" PRIxPTR ")", (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateSecondaryColor3usv(context, v))
{
context->secondaryColor3usv(v);
}
}
}
void GL_APIENTRY SecondaryColorPointer(GLint size, GLenum type, GLsizei stride, const void *pointer)
{
EVENT(
"(GLint size = %d, GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = "
"0x%016" PRIxPTR ")",
size, type, stride, (uintptr_t)pointer);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateSecondaryColorPointer(context, size, type, stride, pointer))
{
context->secondaryColorPointer(size, type, stride, pointer);
}
}
}
void GL_APIENTRY WindowPos2d(GLdouble x, GLdouble y)
{
EVENT("(GLdouble x = %f, GLdouble y = %f)", x, y);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateWindowPos2d(context, x, y))
{
context->windowPos2d(x, y);
}
}
}
void GL_APIENTRY WindowPos2dv(const GLdouble *v)
{
EVENT("(const GLdouble *v = 0x%016" PRIxPTR ")", (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateWindowPos2dv(context, v))
{
context->windowPos2dv(v);
}
}
}
void GL_APIENTRY WindowPos2f(GLfloat x, GLfloat y)
{
EVENT("(GLfloat x = %f, GLfloat y = %f)", x, y);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateWindowPos2f(context, x, y))
{
context->windowPos2f(x, y);
}
}
}
void GL_APIENTRY WindowPos2fv(const GLfloat *v)
{
EVENT("(const GLfloat *v = 0x%016" PRIxPTR ")", (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateWindowPos2fv(context, v))
{
context->windowPos2fv(v);
}
}
}
void GL_APIENTRY WindowPos2i(GLint x, GLint y)
{
EVENT("(GLint x = %d, GLint y = %d)", x, y);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateWindowPos2i(context, x, y))
{
context->windowPos2i(x, y);
}
}
}
void GL_APIENTRY WindowPos2iv(const GLint *v)
{
EVENT("(const GLint *v = 0x%016" PRIxPTR ")", (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateWindowPos2iv(context, v))
{
context->windowPos2iv(v);
}
}
}
void GL_APIENTRY WindowPos2s(GLshort x, GLshort y)
{
EVENT("(GLshort x = %d, GLshort y = %d)", x, y);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateWindowPos2s(context, x, y))
{
context->windowPos2s(x, y);
}
}
}
void GL_APIENTRY WindowPos2sv(const GLshort *v)
{
EVENT("(const GLshort *v = 0x%016" PRIxPTR ")", (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateWindowPos2sv(context, v))
{
context->windowPos2sv(v);
}
}
}
void GL_APIENTRY WindowPos3d(GLdouble x, GLdouble y, GLdouble z)
{
EVENT("(GLdouble x = %f, GLdouble y = %f, GLdouble z = %f)", x, y, z);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateWindowPos3d(context, x, y, z))
{
context->windowPos3d(x, y, z);
}
}
}
void GL_APIENTRY WindowPos3dv(const GLdouble *v)
{
EVENT("(const GLdouble *v = 0x%016" PRIxPTR ")", (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateWindowPos3dv(context, v))
{
context->windowPos3dv(v);
}
}
}
void GL_APIENTRY WindowPos3f(GLfloat x, GLfloat y, GLfloat z)
{
EVENT("(GLfloat x = %f, GLfloat y = %f, GLfloat z = %f)", x, y, z);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateWindowPos3f(context, x, y, z))
{
context->windowPos3f(x, y, z);
}
}
}
void GL_APIENTRY WindowPos3fv(const GLfloat *v)
{
EVENT("(const GLfloat *v = 0x%016" PRIxPTR ")", (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateWindowPos3fv(context, v))
{
context->windowPos3fv(v);
}
}
}
void GL_APIENTRY WindowPos3i(GLint x, GLint y, GLint z)
{
EVENT("(GLint x = %d, GLint y = %d, GLint z = %d)", x, y, z);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateWindowPos3i(context, x, y, z))
{
context->windowPos3i(x, y, z);
}
}
}
void GL_APIENTRY WindowPos3iv(const GLint *v)
{
EVENT("(const GLint *v = 0x%016" PRIxPTR ")", (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateWindowPos3iv(context, v))
{
context->windowPos3iv(v);
}
}
}
void GL_APIENTRY WindowPos3s(GLshort x, GLshort y, GLshort z)
{
EVENT("(GLshort x = %d, GLshort y = %d, GLshort z = %d)", x, y, z);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateWindowPos3s(context, x, y, z))
{
context->windowPos3s(x, y, z);
}
}
}
void GL_APIENTRY WindowPos3sv(const GLshort *v)
{
EVENT("(const GLshort *v = 0x%016" PRIxPTR ")", (uintptr_t)v);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateWindowPos3sv(context, v))
{
context->windowPos3sv(v);
}
}
}
} // namespace gl

View File

@@ -0,0 +1,84 @@
// 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.
//
// entry_points_gl_1_4_autogen.h:
// Defines the GL 1.4 entry points.
#ifndef OPENGL32_ENTRY_POINTS_GL_1_4_AUTOGEN_H_
#define OPENGL32_ENTRY_POINTS_GL_1_4_AUTOGEN_H_
#include <export.h>
#include "angle_gl.h"
#include "WGL/wgl.h"
#include "windows.h"
namespace gl
{
ANGLE_EXPORT void GL_APIENTRY BlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
ANGLE_EXPORT void GL_APIENTRY BlendEquation(GLenum mode);
ANGLE_EXPORT void GL_APIENTRY BlendFuncSeparate(GLenum sfactorRGB,
GLenum dfactorRGB,
GLenum sfactorAlpha,
GLenum dfactorAlpha);
ANGLE_EXPORT void GL_APIENTRY FogCoordPointer(GLenum type, GLsizei stride, const void *pointer);
ANGLE_EXPORT void GL_APIENTRY FogCoordd(GLdouble coord);
ANGLE_EXPORT void GL_APIENTRY FogCoorddv(const GLdouble *coord);
ANGLE_EXPORT void GL_APIENTRY FogCoordf(GLfloat coord);
ANGLE_EXPORT void GL_APIENTRY FogCoordfv(const GLfloat *coord);
ANGLE_EXPORT void GL_APIENTRY MultiDrawArrays(GLenum mode,
const GLint *first,
const GLsizei *count,
GLsizei drawcount);
ANGLE_EXPORT void GL_APIENTRY MultiDrawElements(GLenum mode,
const GLsizei *count,
GLenum type,
const void *const *indices,
GLsizei drawcount);
ANGLE_EXPORT void GL_APIENTRY PointParameterf(GLenum pname, GLfloat param);
ANGLE_EXPORT void GL_APIENTRY PointParameterfv(GLenum pname, const GLfloat *params);
ANGLE_EXPORT void GL_APIENTRY PointParameteri(GLenum pname, GLint param);
ANGLE_EXPORT void GL_APIENTRY PointParameteriv(GLenum pname, const GLint *params);
ANGLE_EXPORT void GL_APIENTRY SecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue);
ANGLE_EXPORT void GL_APIENTRY SecondaryColor3bv(const GLbyte *v);
ANGLE_EXPORT void GL_APIENTRY SecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue);
ANGLE_EXPORT void GL_APIENTRY SecondaryColor3dv(const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY SecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue);
ANGLE_EXPORT void GL_APIENTRY SecondaryColor3fv(const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY SecondaryColor3i(GLint red, GLint green, GLint blue);
ANGLE_EXPORT void GL_APIENTRY SecondaryColor3iv(const GLint *v);
ANGLE_EXPORT void GL_APIENTRY SecondaryColor3s(GLshort red, GLshort green, GLshort blue);
ANGLE_EXPORT void GL_APIENTRY SecondaryColor3sv(const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY SecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue);
ANGLE_EXPORT void GL_APIENTRY SecondaryColor3ubv(const GLubyte *v);
ANGLE_EXPORT void GL_APIENTRY SecondaryColor3ui(GLuint red, GLuint green, GLuint blue);
ANGLE_EXPORT void GL_APIENTRY SecondaryColor3uiv(const GLuint *v);
ANGLE_EXPORT void GL_APIENTRY SecondaryColor3us(GLushort red, GLushort green, GLushort blue);
ANGLE_EXPORT void GL_APIENTRY SecondaryColor3usv(const GLushort *v);
ANGLE_EXPORT void GL_APIENTRY SecondaryColorPointer(GLint size,
GLenum type,
GLsizei stride,
const void *pointer);
ANGLE_EXPORT void GL_APIENTRY WindowPos2d(GLdouble x, GLdouble y);
ANGLE_EXPORT void GL_APIENTRY WindowPos2dv(const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY WindowPos2f(GLfloat x, GLfloat y);
ANGLE_EXPORT void GL_APIENTRY WindowPos2fv(const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY WindowPos2i(GLint x, GLint y);
ANGLE_EXPORT void GL_APIENTRY WindowPos2iv(const GLint *v);
ANGLE_EXPORT void GL_APIENTRY WindowPos2s(GLshort x, GLshort y);
ANGLE_EXPORT void GL_APIENTRY WindowPos2sv(const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY WindowPos3d(GLdouble x, GLdouble y, GLdouble z);
ANGLE_EXPORT void GL_APIENTRY WindowPos3dv(const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY WindowPos3f(GLfloat x, GLfloat y, GLfloat z);
ANGLE_EXPORT void GL_APIENTRY WindowPos3fv(const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY WindowPos3i(GLint x, GLint y, GLint z);
ANGLE_EXPORT void GL_APIENTRY WindowPos3iv(const GLint *v);
ANGLE_EXPORT void GL_APIENTRY WindowPos3s(GLshort x, GLshort y, GLshort z);
ANGLE_EXPORT void GL_APIENTRY WindowPos3sv(const GLshort *v);
} // namespace gl
#endif // OPENGL32_ENTRY_POINTS_GL_1_4_AUTOGEN_H_

View File

@@ -0,0 +1,332 @@
// 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.
//
// entry_points_gl_1_5_autogen.cpp:
// Defines the GL 1.5 entry points.
#include "openGL32/entry_points_gl_1_5_autogen.h"
#include "libANGLE/Context.h"
#include "libANGLE/Context.inl.h"
#include "libANGLE/validationEGL.h"
#include "libANGLE/validationES.h"
#include "libANGLE/validationES1.h"
#include "libANGLE/validationES2.h"
#include "libANGLE/validationES3.h"
#include "libANGLE/validationES31.h"
#include "libANGLE/validationESEXT.h"
#include "libANGLE/validationGL15_autogen.h"
#include "libGLESv2/global_state.h"
#include "openGL32/entry_points_utils.h"
namespace gl
{
void GL_APIENTRY BeginQuery(GLenum target, GLuint id)
{
EVENT("(GLenum target = 0x%X, GLuint id = %u)", target, id);
Context *context = GetValidGlobalContext();
if (context)
{
QueryType targetPacked = FromGLenum<QueryType>(target);
if (context->skipValidation() || ValidateBeginQuery(context, targetPacked, id))
{
context->beginQuery(targetPacked, id);
}
}
}
void GL_APIENTRY BindBuffer(GLenum target, GLuint buffer)
{
EVENT("(GLenum target = 0x%X, GLuint buffer = %u)", target, buffer);
Context *context = GetValidGlobalContext();
if (context)
{
BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
if (context->skipValidation() || ValidateBindBuffer(context, targetPacked, buffer))
{
context->bindBuffer(targetPacked, buffer);
}
}
}
void GL_APIENTRY BufferData(GLenum target, GLsizeiptr size, const void *data, GLenum usage)
{
EVENT("(GLenum target = 0x%X, GLsizeiptr size = %llu, const void *data = 0x%016" PRIxPTR
", GLenum usage = 0x%X)",
target, static_cast<unsigned long long>(size), (uintptr_t)data, usage);
Context *context = GetValidGlobalContext();
if (context)
{
BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
BufferUsage usagePacked = FromGLenum<BufferUsage>(usage);
if (context->skipValidation() ||
ValidateBufferData(context, targetPacked, size, data, usagePacked))
{
context->bufferData(targetPacked, size, data, usagePacked);
}
}
}
void GL_APIENTRY BufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const void *data)
{
EVENT(
"(GLenum target = 0x%X, GLintptr offset = %llu, GLsizeiptr size = %llu, const void *data = "
"0x%016" PRIxPTR ")",
target, static_cast<unsigned long long>(offset), static_cast<unsigned long long>(size),
(uintptr_t)data);
Context *context = GetValidGlobalContext();
if (context)
{
BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
if (context->skipValidation() ||
ValidateBufferSubData(context, targetPacked, offset, size, data))
{
context->bufferSubData(targetPacked, offset, size, data);
}
}
}
void GL_APIENTRY DeleteBuffers(GLsizei n, const GLuint *buffers)
{
EVENT("(GLsizei n = %d, const GLuint *buffers = 0x%016" PRIxPTR ")", n, (uintptr_t)buffers);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateDeleteBuffers(context, n, buffers))
{
context->deleteBuffers(n, buffers);
}
}
}
void GL_APIENTRY DeleteQueries(GLsizei n, const GLuint *ids)
{
EVENT("(GLsizei n = %d, const GLuint *ids = 0x%016" PRIxPTR ")", n, (uintptr_t)ids);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateDeleteQueries(context, n, ids))
{
context->deleteQueries(n, ids);
}
}
}
void GL_APIENTRY EndQuery(GLenum target)
{
EVENT("(GLenum target = 0x%X)", target);
Context *context = GetValidGlobalContext();
if (context)
{
QueryType targetPacked = FromGLenum<QueryType>(target);
if (context->skipValidation() || ValidateEndQuery(context, targetPacked))
{
context->endQuery(targetPacked);
}
}
}
void GL_APIENTRY GenBuffers(GLsizei n, GLuint *buffers)
{
EVENT("(GLsizei n = %d, GLuint *buffers = 0x%016" PRIxPTR ")", n, (uintptr_t)buffers);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateGenBuffers(context, n, buffers))
{
context->genBuffers(n, buffers);
}
}
}
void GL_APIENTRY GenQueries(GLsizei n, GLuint *ids)
{
EVENT("(GLsizei n = %d, GLuint *ids = 0x%016" PRIxPTR ")", n, (uintptr_t)ids);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateGenQueries(context, n, ids))
{
context->genQueries(n, ids);
}
}
}
void GL_APIENTRY GetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
{
EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
pname, (uintptr_t)params);
Context *context = GetValidGlobalContext();
if (context)
{
BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
if (context->skipValidation() ||
ValidateGetBufferParameteriv(context, targetPacked, pname, params))
{
context->getBufferParameteriv(targetPacked, pname, params);
}
}
}
void GL_APIENTRY GetBufferPointerv(GLenum target, GLenum pname, void **params)
{
EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, void **params = 0x%016" PRIxPTR ")", target,
pname, (uintptr_t)params);
Context *context = GetValidGlobalContext();
if (context)
{
BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
if (context->skipValidation() ||
ValidateGetBufferPointerv(context, targetPacked, pname, params))
{
context->getBufferPointerv(targetPacked, pname, params);
}
}
}
void GL_APIENTRY GetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, void *data)
{
EVENT(
"(GLenum target = 0x%X, GLintptr offset = %llu, GLsizeiptr size = %llu, void *data = "
"0x%016" PRIxPTR ")",
target, static_cast<unsigned long long>(offset), static_cast<unsigned long long>(size),
(uintptr_t)data);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateGetBufferSubData(context, target, offset, size, data))
{
context->getBufferSubData(target, offset, size, data);
}
}
}
void GL_APIENTRY GetQueryObjectiv(GLuint id, GLenum pname, GLint *params)
{
EVENT("(GLuint id = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", id, pname,
(uintptr_t)params);
Context *context = GetGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateGetQueryObjectiv(context, id, pname, params))
{
context->getQueryObjectiv(id, pname, params);
}
}
}
void GL_APIENTRY GetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
{
EVENT("(GLuint id = %u, GLenum pname = 0x%X, GLuint *params = 0x%016" PRIxPTR ")", id, pname,
(uintptr_t)params);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateGetQueryObjectuiv(context, id, pname, params))
{
context->getQueryObjectuiv(id, pname, params);
}
}
}
void GL_APIENTRY GetQueryiv(GLenum target, GLenum pname, GLint *params)
{
EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
pname, (uintptr_t)params);
Context *context = GetValidGlobalContext();
if (context)
{
QueryType targetPacked = FromGLenum<QueryType>(target);
if (context->skipValidation() || ValidateGetQueryiv(context, targetPacked, pname, params))
{
context->getQueryiv(targetPacked, pname, params);
}
}
}
GLboolean GL_APIENTRY IsBuffer(GLuint buffer)
{
EVENT("(GLuint buffer = %u)", buffer);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateIsBuffer(context, buffer))
{
return context->isBuffer(buffer);
}
}
return GetDefaultReturnValue<EntryPoint::IsBuffer, GLboolean>();
}
GLboolean GL_APIENTRY IsQuery(GLuint id)
{
EVENT("(GLuint id = %u)", id);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateIsQuery(context, id))
{
return context->isQuery(id);
}
}
return GetDefaultReturnValue<EntryPoint::IsQuery, GLboolean>();
}
void *GL_APIENTRY MapBuffer(GLenum target, GLenum access)
{
EVENT("(GLenum target = 0x%X, GLenum access = 0x%X)", target, access);
Context *context = GetValidGlobalContext();
if (context)
{
BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
if (context->skipValidation() || ValidateMapBuffer(context, targetPacked, access))
{
return context->mapBuffer(targetPacked, access);
}
}
return GetDefaultReturnValue<EntryPoint::MapBuffer, void *>();
}
GLboolean GL_APIENTRY UnmapBuffer(GLenum target)
{
EVENT("(GLenum target = 0x%X)", target);
Context *context = GetValidGlobalContext();
if (context)
{
BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
if (context->skipValidation() || ValidateUnmapBuffer(context, targetPacked))
{
return context->unmapBuffer(targetPacked);
}
}
return GetDefaultReturnValue<EntryPoint::UnmapBuffer, GLboolean>();
}
} // namespace gl

View File

@@ -0,0 +1,52 @@
// 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.
//
// entry_points_gl_1_5_autogen.h:
// Defines the GL 1.5 entry points.
#ifndef OPENGL32_ENTRY_POINTS_GL_1_5_AUTOGEN_H_
#define OPENGL32_ENTRY_POINTS_GL_1_5_AUTOGEN_H_
#include <export.h>
#include "angle_gl.h"
#include "WGL/wgl.h"
#include "windows.h"
namespace gl
{
ANGLE_EXPORT void GL_APIENTRY BeginQuery(GLenum target, GLuint id);
ANGLE_EXPORT void GL_APIENTRY BindBuffer(GLenum target, GLuint buffer);
ANGLE_EXPORT void GL_APIENTRY BufferData(GLenum target,
GLsizeiptr size,
const void *data,
GLenum usage);
ANGLE_EXPORT void GL_APIENTRY BufferSubData(GLenum target,
GLintptr offset,
GLsizeiptr size,
const void *data);
ANGLE_EXPORT void GL_APIENTRY DeleteBuffers(GLsizei n, const GLuint *buffers);
ANGLE_EXPORT void GL_APIENTRY DeleteQueries(GLsizei n, const GLuint *ids);
ANGLE_EXPORT void GL_APIENTRY EndQuery(GLenum target);
ANGLE_EXPORT void GL_APIENTRY GenBuffers(GLsizei n, GLuint *buffers);
ANGLE_EXPORT void GL_APIENTRY GenQueries(GLsizei n, GLuint *ids);
ANGLE_EXPORT void GL_APIENTRY GetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
ANGLE_EXPORT void GL_APIENTRY GetBufferPointerv(GLenum target, GLenum pname, void **params);
ANGLE_EXPORT void GL_APIENTRY GetBufferSubData(GLenum target,
GLintptr offset,
GLsizeiptr size,
void *data);
ANGLE_EXPORT void GL_APIENTRY GetQueryObjectiv(GLuint id, GLenum pname, GLint *params);
ANGLE_EXPORT void GL_APIENTRY GetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
ANGLE_EXPORT void GL_APIENTRY GetQueryiv(GLenum target, GLenum pname, GLint *params);
ANGLE_EXPORT GLboolean GL_APIENTRY IsBuffer(GLuint buffer);
ANGLE_EXPORT GLboolean GL_APIENTRY IsQuery(GLuint id);
ANGLE_EXPORT void *GL_APIENTRY MapBuffer(GLenum target, GLenum access);
ANGLE_EXPORT GLboolean GL_APIENTRY UnmapBuffer(GLenum target);
} // namespace gl
#endif // OPENGL32_ENTRY_POINTS_GL_1_5_AUTOGEN_H_

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,166 @@
// 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.
//
// entry_points_gl_2_0_autogen.h:
// Defines the GL 2.0 entry points.
#ifndef OPENGL32_ENTRY_POINTS_GL_2_0_AUTOGEN_H_
#define OPENGL32_ENTRY_POINTS_GL_2_0_AUTOGEN_H_
#include <export.h>
#include "angle_gl.h"
#include "WGL/wgl.h"
#include "windows.h"
namespace gl
{
ANGLE_EXPORT void GL_APIENTRY AttachShader(GLuint program, GLuint shader);
ANGLE_EXPORT void GL_APIENTRY BindAttribLocation(GLuint program, GLuint index, const GLchar *name);
ANGLE_EXPORT void GL_APIENTRY BlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
ANGLE_EXPORT void GL_APIENTRY CompileShader(GLuint shader);
ANGLE_EXPORT GLuint GL_APIENTRY CreateProgram();
ANGLE_EXPORT GLuint GL_APIENTRY CreateShader(GLenum type);
ANGLE_EXPORT void GL_APIENTRY DeleteProgram(GLuint program);
ANGLE_EXPORT void GL_APIENTRY DeleteShader(GLuint shader);
ANGLE_EXPORT void GL_APIENTRY DetachShader(GLuint program, GLuint shader);
ANGLE_EXPORT void GL_APIENTRY DisableVertexAttribArray(GLuint index);
ANGLE_EXPORT void GL_APIENTRY DrawBuffers(GLsizei n, const GLenum *bufs);
ANGLE_EXPORT void GL_APIENTRY EnableVertexAttribArray(GLuint index);
ANGLE_EXPORT void GL_APIENTRY GetActiveAttrib(GLuint program,
GLuint index,
GLsizei bufSize,
GLsizei *length,
GLint *size,
GLenum *type,
GLchar *name);
ANGLE_EXPORT void GL_APIENTRY GetActiveUniform(GLuint program,
GLuint index,
GLsizei bufSize,
GLsizei *length,
GLint *size,
GLenum *type,
GLchar *name);
ANGLE_EXPORT void GL_APIENTRY GetAttachedShaders(GLuint program,
GLsizei maxCount,
GLsizei *count,
GLuint *shaders);
ANGLE_EXPORT GLint GL_APIENTRY GetAttribLocation(GLuint program, const GLchar *name);
ANGLE_EXPORT void GL_APIENTRY GetProgramInfoLog(GLuint program,
GLsizei bufSize,
GLsizei *length,
GLchar *infoLog);
ANGLE_EXPORT void GL_APIENTRY GetProgramiv(GLuint program, GLenum pname, GLint *params);
ANGLE_EXPORT void GL_APIENTRY GetShaderInfoLog(GLuint shader,
GLsizei bufSize,
GLsizei *length,
GLchar *infoLog);
ANGLE_EXPORT void GL_APIENTRY GetShaderSource(GLuint shader,
GLsizei bufSize,
GLsizei *length,
GLchar *source);
ANGLE_EXPORT void GL_APIENTRY GetShaderiv(GLuint shader, GLenum pname, GLint *params);
ANGLE_EXPORT GLint GL_APIENTRY GetUniformLocation(GLuint program, const GLchar *name);
ANGLE_EXPORT void GL_APIENTRY GetUniformfv(GLuint program, GLint location, GLfloat *params);
ANGLE_EXPORT void GL_APIENTRY GetUniformiv(GLuint program, GLint location, GLint *params);
ANGLE_EXPORT void GL_APIENTRY GetVertexAttribPointerv(GLuint index, GLenum pname, void **pointer);
ANGLE_EXPORT void GL_APIENTRY GetVertexAttribdv(GLuint index, GLenum pname, GLdouble *params);
ANGLE_EXPORT void GL_APIENTRY GetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
ANGLE_EXPORT void GL_APIENTRY GetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
ANGLE_EXPORT GLboolean GL_APIENTRY IsProgram(GLuint program);
ANGLE_EXPORT GLboolean GL_APIENTRY IsShader(GLuint shader);
ANGLE_EXPORT void GL_APIENTRY LinkProgram(GLuint program);
ANGLE_EXPORT void GL_APIENTRY ShaderSource(GLuint shader,
GLsizei count,
const GLchar *const *string,
const GLint *length);
ANGLE_EXPORT void GL_APIENTRY StencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
ANGLE_EXPORT void GL_APIENTRY StencilMaskSeparate(GLenum face, GLuint mask);
ANGLE_EXPORT void GL_APIENTRY StencilOpSeparate(GLenum face,
GLenum sfail,
GLenum dpfail,
GLenum dppass);
ANGLE_EXPORT void GL_APIENTRY Uniform1f(GLint location, GLfloat v0);
ANGLE_EXPORT void GL_APIENTRY Uniform1fv(GLint location, GLsizei count, const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY Uniform1i(GLint location, GLint v0);
ANGLE_EXPORT void GL_APIENTRY Uniform1iv(GLint location, GLsizei count, const GLint *value);
ANGLE_EXPORT void GL_APIENTRY Uniform2f(GLint location, GLfloat v0, GLfloat v1);
ANGLE_EXPORT void GL_APIENTRY Uniform2fv(GLint location, GLsizei count, const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY Uniform2i(GLint location, GLint v0, GLint v1);
ANGLE_EXPORT void GL_APIENTRY Uniform2iv(GLint location, GLsizei count, const GLint *value);
ANGLE_EXPORT void GL_APIENTRY Uniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
ANGLE_EXPORT void GL_APIENTRY Uniform3fv(GLint location, GLsizei count, const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY Uniform3i(GLint location, GLint v0, GLint v1, GLint v2);
ANGLE_EXPORT void GL_APIENTRY Uniform3iv(GLint location, GLsizei count, const GLint *value);
ANGLE_EXPORT void GL_APIENTRY
Uniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
ANGLE_EXPORT void GL_APIENTRY Uniform4fv(GLint location, GLsizei count, const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY Uniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
ANGLE_EXPORT void GL_APIENTRY Uniform4iv(GLint location, GLsizei count, const GLint *value);
ANGLE_EXPORT void GL_APIENTRY UniformMatrix2fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY UniformMatrix3fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY UniformMatrix4fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY UseProgram(GLuint program);
ANGLE_EXPORT void GL_APIENTRY ValidateProgram(GLuint program);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib1d(GLuint index, GLdouble x);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib1dv(GLuint index, const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib1f(GLuint index, GLfloat x);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib1fv(GLuint index, const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib1s(GLuint index, GLshort x);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib1sv(GLuint index, const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib2d(GLuint index, GLdouble x, GLdouble y);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib2dv(GLuint index, const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib2fv(GLuint index, const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib2s(GLuint index, GLshort x, GLshort y);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib2sv(GLuint index, const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib3dv(GLuint index, const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib3fv(GLuint index, const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib3sv(GLuint index, const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib4Nbv(GLuint index, const GLbyte *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib4Niv(GLuint index, const GLint *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib4Nsv(GLuint index, const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY
VertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib4Nubv(GLuint index, const GLubyte *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib4Nuiv(GLuint index, const GLuint *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib4Nusv(GLuint index, const GLushort *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib4bv(GLuint index, const GLbyte *v);
ANGLE_EXPORT void GL_APIENTRY
VertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib4dv(GLuint index, const GLdouble *v);
ANGLE_EXPORT void GL_APIENTRY
VertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib4fv(GLuint index, const GLfloat *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib4iv(GLuint index, const GLint *v);
ANGLE_EXPORT void GL_APIENTRY
VertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib4sv(GLuint index, const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib4ubv(GLuint index, const GLubyte *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib4uiv(GLuint index, const GLuint *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttrib4usv(GLuint index, const GLushort *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttribPointer(GLuint index,
GLint size,
GLenum type,
GLboolean normalized,
GLsizei stride,
const void *pointer);
} // namespace gl
#endif // OPENGL32_ENTRY_POINTS_GL_2_0_AUTOGEN_H_

View File

@@ -0,0 +1,153 @@
// 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.
//
// entry_points_gl_2_1_autogen.cpp:
// Defines the GL 2.1 entry points.
#include "openGL32/entry_points_gl_2_1_autogen.h"
#include "libANGLE/Context.h"
#include "libANGLE/Context.inl.h"
#include "libANGLE/validationEGL.h"
#include "libANGLE/validationES.h"
#include "libANGLE/validationES1.h"
#include "libANGLE/validationES2.h"
#include "libANGLE/validationES3.h"
#include "libANGLE/validationES31.h"
#include "libANGLE/validationESEXT.h"
#include "libANGLE/validationGL21_autogen.h"
#include "libGLESv2/global_state.h"
#include "openGL32/entry_points_utils.h"
namespace gl
{
void GL_APIENTRY UniformMatrix2x3fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value)
{
EVENT(
"(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
"= 0x%016" PRIxPTR ")",
location, count, transpose, (uintptr_t)value);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateUniformMatrix2x3fv(context, location, count, transpose, value))
{
context->uniformMatrix2x3fv(location, count, transpose, value);
}
}
}
void GL_APIENTRY UniformMatrix2x4fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value)
{
EVENT(
"(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
"= 0x%016" PRIxPTR ")",
location, count, transpose, (uintptr_t)value);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateUniformMatrix2x4fv(context, location, count, transpose, value))
{
context->uniformMatrix2x4fv(location, count, transpose, value);
}
}
}
void GL_APIENTRY UniformMatrix3x2fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value)
{
EVENT(
"(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
"= 0x%016" PRIxPTR ")",
location, count, transpose, (uintptr_t)value);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateUniformMatrix3x2fv(context, location, count, transpose, value))
{
context->uniformMatrix3x2fv(location, count, transpose, value);
}
}
}
void GL_APIENTRY UniformMatrix3x4fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value)
{
EVENT(
"(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
"= 0x%016" PRIxPTR ")",
location, count, transpose, (uintptr_t)value);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateUniformMatrix3x4fv(context, location, count, transpose, value))
{
context->uniformMatrix3x4fv(location, count, transpose, value);
}
}
}
void GL_APIENTRY UniformMatrix4x2fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value)
{
EVENT(
"(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
"= 0x%016" PRIxPTR ")",
location, count, transpose, (uintptr_t)value);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateUniformMatrix4x2fv(context, location, count, transpose, value))
{
context->uniformMatrix4x2fv(location, count, transpose, value);
}
}
}
void GL_APIENTRY UniformMatrix4x3fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value)
{
EVENT(
"(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
"= 0x%016" PRIxPTR ")",
location, count, transpose, (uintptr_t)value);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateUniformMatrix4x3fv(context, location, count, transpose, value))
{
context->uniformMatrix4x3fv(location, count, transpose, value);
}
}
}
} // namespace gl

View File

@@ -0,0 +1,48 @@
// 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.
//
// entry_points_gl_2_1_autogen.h:
// Defines the GL 2.1 entry points.
#ifndef OPENGL32_ENTRY_POINTS_GL_2_1_AUTOGEN_H_
#define OPENGL32_ENTRY_POINTS_GL_2_1_AUTOGEN_H_
#include <export.h>
#include "angle_gl.h"
#include "WGL/wgl.h"
#include "windows.h"
namespace gl
{
ANGLE_EXPORT void GL_APIENTRY UniformMatrix2x3fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY UniformMatrix2x4fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY UniformMatrix3x2fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY UniformMatrix3x4fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY UniformMatrix4x2fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY UniformMatrix4x3fv(GLint location,
GLsizei count,
GLboolean transpose,
const GLfloat *value);
} // namespace gl
#endif // OPENGL32_ENTRY_POINTS_GL_2_1_AUTOGEN_H_

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,170 @@
// 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.
//
// entry_points_gl_3_0_autogen.h:
// Defines the GL 3.0 entry points.
#ifndef OPENGL32_ENTRY_POINTS_GL_3_0_AUTOGEN_H_
#define OPENGL32_ENTRY_POINTS_GL_3_0_AUTOGEN_H_
#include <export.h>
#include "angle_gl.h"
#include "WGL/wgl.h"
#include "windows.h"
namespace gl
{
ANGLE_EXPORT void GL_APIENTRY BeginConditionalRender(GLuint id, GLenum mode);
ANGLE_EXPORT void GL_APIENTRY BeginTransformFeedback(GLenum primitiveMode);
ANGLE_EXPORT void GL_APIENTRY BindBufferBase(GLenum target, GLuint index, GLuint buffer);
ANGLE_EXPORT void GL_APIENTRY
BindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
ANGLE_EXPORT void GL_APIENTRY BindFragDataLocation(GLuint program,
GLuint color,
const GLchar *name);
ANGLE_EXPORT void GL_APIENTRY BindFramebuffer(GLenum target, GLuint framebuffer);
ANGLE_EXPORT void GL_APIENTRY BindRenderbuffer(GLenum target, GLuint renderbuffer);
ANGLE_EXPORT void GL_APIENTRY BindVertexArray(GLuint array);
ANGLE_EXPORT void GL_APIENTRY BlitFramebuffer(GLint srcX0,
GLint srcY0,
GLint srcX1,
GLint srcY1,
GLint dstX0,
GLint dstY0,
GLint dstX1,
GLint dstY1,
GLbitfield mask,
GLenum filter);
ANGLE_EXPORT GLenum GL_APIENTRY CheckFramebufferStatus(GLenum target);
ANGLE_EXPORT void GL_APIENTRY ClampColor(GLenum target, GLenum clamp);
ANGLE_EXPORT void GL_APIENTRY ClearBufferfi(GLenum buffer,
GLint drawbuffer,
GLfloat depth,
GLint stencil);
ANGLE_EXPORT void GL_APIENTRY ClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
ANGLE_EXPORT void GL_APIENTRY ClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
ANGLE_EXPORT void GL_APIENTRY ClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
ANGLE_EXPORT void GL_APIENTRY
ColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
ANGLE_EXPORT void GL_APIENTRY DeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
ANGLE_EXPORT void GL_APIENTRY DeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
ANGLE_EXPORT void GL_APIENTRY DeleteVertexArrays(GLsizei n, const GLuint *arrays);
ANGLE_EXPORT void GL_APIENTRY Disablei(GLenum target, GLuint index);
ANGLE_EXPORT void GL_APIENTRY Enablei(GLenum target, GLuint index);
ANGLE_EXPORT void GL_APIENTRY EndConditionalRender();
ANGLE_EXPORT void GL_APIENTRY EndTransformFeedback();
ANGLE_EXPORT void GL_APIENTRY FlushMappedBufferRange(GLenum target,
GLintptr offset,
GLsizeiptr length);
ANGLE_EXPORT void GL_APIENTRY FramebufferRenderbuffer(GLenum target,
GLenum attachment,
GLenum renderbuffertarget,
GLuint renderbuffer);
ANGLE_EXPORT void GL_APIENTRY FramebufferTexture1D(GLenum target,
GLenum attachment,
GLenum textarget,
GLuint texture,
GLint level);
ANGLE_EXPORT void GL_APIENTRY FramebufferTexture2D(GLenum target,
GLenum attachment,
GLenum textarget,
GLuint texture,
GLint level);
ANGLE_EXPORT void GL_APIENTRY FramebufferTexture3D(GLenum target,
GLenum attachment,
GLenum textarget,
GLuint texture,
GLint level,
GLint zoffset);
ANGLE_EXPORT void GL_APIENTRY
FramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
ANGLE_EXPORT void GL_APIENTRY GenFramebuffers(GLsizei n, GLuint *framebuffers);
ANGLE_EXPORT void GL_APIENTRY GenRenderbuffers(GLsizei n, GLuint *renderbuffers);
ANGLE_EXPORT void GL_APIENTRY GenVertexArrays(GLsizei n, GLuint *arrays);
ANGLE_EXPORT void GL_APIENTRY GenerateMipmap(GLenum target);
ANGLE_EXPORT void GL_APIENTRY GetBooleani_v(GLenum target, GLuint index, GLboolean *data);
ANGLE_EXPORT GLint GL_APIENTRY GetFragDataLocation(GLuint program, const GLchar *name);
ANGLE_EXPORT void GL_APIENTRY GetFramebufferAttachmentParameteriv(GLenum target,
GLenum attachment,
GLenum pname,
GLint *params);
ANGLE_EXPORT void GL_APIENTRY GetIntegeri_v(GLenum target, GLuint index, GLint *data);
ANGLE_EXPORT void GL_APIENTRY GetRenderbufferParameteriv(GLenum target,
GLenum pname,
GLint *params);
ANGLE_EXPORT const GLubyte *GL_APIENTRY GetStringi(GLenum name, GLuint index);
ANGLE_EXPORT void GL_APIENTRY GetTexParameterIiv(GLenum target, GLenum pname, GLint *params);
ANGLE_EXPORT void GL_APIENTRY GetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params);
ANGLE_EXPORT void GL_APIENTRY GetTransformFeedbackVarying(GLuint program,
GLuint index,
GLsizei bufSize,
GLsizei *length,
GLsizei *size,
GLenum *type,
GLchar *name);
ANGLE_EXPORT void GL_APIENTRY GetUniformuiv(GLuint program, GLint location, GLuint *params);
ANGLE_EXPORT void GL_APIENTRY GetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
ANGLE_EXPORT void GL_APIENTRY GetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
ANGLE_EXPORT GLboolean GL_APIENTRY IsEnabledi(GLenum target, GLuint index);
ANGLE_EXPORT GLboolean GL_APIENTRY IsFramebuffer(GLuint framebuffer);
ANGLE_EXPORT GLboolean GL_APIENTRY IsRenderbuffer(GLuint renderbuffer);
ANGLE_EXPORT GLboolean GL_APIENTRY IsVertexArray(GLuint array);
ANGLE_EXPORT void *GL_APIENTRY MapBufferRange(GLenum target,
GLintptr offset,
GLsizeiptr length,
GLbitfield access);
ANGLE_EXPORT void GL_APIENTRY RenderbufferStorage(GLenum target,
GLenum internalformat,
GLsizei width,
GLsizei height);
ANGLE_EXPORT void GL_APIENTRY RenderbufferStorageMultisample(GLenum target,
GLsizei samples,
GLenum internalformat,
GLsizei width,
GLsizei height);
ANGLE_EXPORT void GL_APIENTRY TexParameterIiv(GLenum target, GLenum pname, const GLint *params);
ANGLE_EXPORT void GL_APIENTRY TexParameterIuiv(GLenum target, GLenum pname, const GLuint *params);
ANGLE_EXPORT void GL_APIENTRY TransformFeedbackVaryings(GLuint program,
GLsizei count,
const GLchar *const *varyings,
GLenum bufferMode);
ANGLE_EXPORT void GL_APIENTRY Uniform1ui(GLint location, GLuint v0);
ANGLE_EXPORT void GL_APIENTRY Uniform1uiv(GLint location, GLsizei count, const GLuint *value);
ANGLE_EXPORT void GL_APIENTRY Uniform2ui(GLint location, GLuint v0, GLuint v1);
ANGLE_EXPORT void GL_APIENTRY Uniform2uiv(GLint location, GLsizei count, const GLuint *value);
ANGLE_EXPORT void GL_APIENTRY Uniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
ANGLE_EXPORT void GL_APIENTRY Uniform3uiv(GLint location, GLsizei count, const GLuint *value);
ANGLE_EXPORT void GL_APIENTRY
Uniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
ANGLE_EXPORT void GL_APIENTRY Uniform4uiv(GLint location, GLsizei count, const GLuint *value);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI1i(GLuint index, GLint x);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI1iv(GLuint index, const GLint *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI1ui(GLuint index, GLuint x);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI1uiv(GLuint index, const GLuint *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI2i(GLuint index, GLint x, GLint y);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI2iv(GLuint index, const GLint *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI2ui(GLuint index, GLuint x, GLuint y);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI2uiv(GLuint index, const GLuint *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI3i(GLuint index, GLint x, GLint y, GLint z);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI3iv(GLuint index, const GLint *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI3uiv(GLuint index, const GLuint *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI4bv(GLuint index, const GLbyte *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI4iv(GLuint index, const GLint *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI4sv(GLuint index, const GLshort *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI4ubv(GLuint index, const GLubyte *v);
ANGLE_EXPORT void GL_APIENTRY
VertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI4uiv(GLuint index, const GLuint *v);
ANGLE_EXPORT void GL_APIENTRY VertexAttribI4usv(GLuint index, const GLushort *v);
ANGLE_EXPORT void GL_APIENTRY
VertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer);
} // namespace gl
#endif // OPENGL32_ENTRY_POINTS_GL_3_0_AUTOGEN_H_

View File

@@ -0,0 +1,272 @@
// 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.
//
// entry_points_gl_3_1_autogen.cpp:
// Defines the GL 3.1 entry points.
#include "openGL32/entry_points_gl_3_1_autogen.h"
#include "libANGLE/Context.h"
#include "libANGLE/Context.inl.h"
#include "libANGLE/validationEGL.h"
#include "libANGLE/validationES.h"
#include "libANGLE/validationES1.h"
#include "libANGLE/validationES2.h"
#include "libANGLE/validationES3.h"
#include "libANGLE/validationES31.h"
#include "libANGLE/validationESEXT.h"
#include "libANGLE/validationGL31_autogen.h"
#include "libGLESv2/global_state.h"
#include "openGL32/entry_points_utils.h"
namespace gl
{
void GL_APIENTRY CopyBufferSubData(GLenum readTarget,
GLenum writeTarget,
GLintptr readOffset,
GLintptr writeOffset,
GLsizeiptr size)
{
EVENT(
"(GLenum readTarget = 0x%X, GLenum writeTarget = 0x%X, GLintptr readOffset = %llu, "
"GLintptr writeOffset = %llu, GLsizeiptr size = %llu)",
readTarget, writeTarget, static_cast<unsigned long long>(readOffset),
static_cast<unsigned long long>(writeOffset), static_cast<unsigned long long>(size));
Context *context = GetValidGlobalContext();
if (context)
{
BufferBinding readTargetPacked = FromGLenum<BufferBinding>(readTarget);
BufferBinding writeTargetPacked = FromGLenum<BufferBinding>(writeTarget);
if (context->skipValidation() ||
ValidateCopyBufferSubData(context, readTargetPacked, writeTargetPacked, readOffset,
writeOffset, size))
{
context->copyBufferSubData(readTargetPacked, writeTargetPacked, readOffset, writeOffset,
size);
}
}
}
void GL_APIENTRY DrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
{
EVENT("(GLenum mode = 0x%X, GLint first = %d, GLsizei count = %d, GLsizei instancecount = %d)",
mode, first, count, instancecount);
Context *context = GetValidGlobalContext();
if (context)
{
PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
if (context->skipValidation() ||
ValidateDrawArraysInstanced(context, modePacked, first, count, instancecount))
{
context->drawArraysInstanced(modePacked, first, count, instancecount);
}
}
}
void GL_APIENTRY DrawElementsInstanced(GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
GLsizei instancecount)
{
EVENT(
"(GLenum mode = 0x%X, GLsizei count = %d, GLenum type = 0x%X, const void *indices = "
"0x%016" PRIxPTR ", GLsizei instancecount = %d)",
mode, count, type, (uintptr_t)indices, instancecount);
Context *context = GetValidGlobalContext();
if (context)
{
PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
if (context->skipValidation() ||
ValidateDrawElementsInstanced(context, modePacked, count, typePacked, indices,
instancecount))
{
context->drawElementsInstanced(modePacked, count, typePacked, indices, instancecount);
}
}
}
void GL_APIENTRY GetActiveUniformBlockName(GLuint program,
GLuint uniformBlockIndex,
GLsizei bufSize,
GLsizei *length,
GLchar *uniformBlockName)
{
EVENT(
"(GLuint program = %u, GLuint uniformBlockIndex = %u, GLsizei bufSize = %d, GLsizei "
"*length = 0x%016" PRIxPTR ", GLchar *uniformBlockName = 0x%016" PRIxPTR ")",
program, uniformBlockIndex, bufSize, (uintptr_t)length, (uintptr_t)uniformBlockName);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateGetActiveUniformBlockName(context, program, uniformBlockIndex, bufSize, length,
uniformBlockName))
{
context->getActiveUniformBlockName(program, uniformBlockIndex, bufSize, length,
uniformBlockName);
}
}
}
void GL_APIENTRY GetActiveUniformBlockiv(GLuint program,
GLuint uniformBlockIndex,
GLenum pname,
GLint *params)
{
EVENT(
"(GLuint program = %u, GLuint uniformBlockIndex = %u, GLenum pname = 0x%X, GLint *params = "
"0x%016" PRIxPTR ")",
program, uniformBlockIndex, pname, (uintptr_t)params);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateGetActiveUniformBlockiv(context, program, uniformBlockIndex, pname, params))
{
context->getActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
}
}
}
void GL_APIENTRY GetActiveUniformName(GLuint program,
GLuint uniformIndex,
GLsizei bufSize,
GLsizei *length,
GLchar *uniformName)
{
EVENT(
"(GLuint program = %u, GLuint uniformIndex = %u, GLsizei bufSize = %d, GLsizei *length = "
"0x%016" PRIxPTR ", GLchar *uniformName = 0x%016" PRIxPTR ")",
program, uniformIndex, bufSize, (uintptr_t)length, (uintptr_t)uniformName);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateGetActiveUniformName(context, program, uniformIndex, bufSize, length,
uniformName))
{
context->getActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
}
}
}
void GL_APIENTRY GetActiveUniformsiv(GLuint program,
GLsizei uniformCount,
const GLuint *uniformIndices,
GLenum pname,
GLint *params)
{
EVENT(
"(GLuint program = %u, GLsizei uniformCount = %d, const GLuint *uniformIndices = "
"0x%016" PRIxPTR ", GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")",
program, uniformCount, (uintptr_t)uniformIndices, pname, (uintptr_t)params);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateGetActiveUniformsiv(context, program, uniformCount,
uniformIndices, pname, params))
{
context->getActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
}
}
}
GLuint GL_APIENTRY GetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
{
EVENT("(GLuint program = %u, const GLchar *uniformBlockName = 0x%016" PRIxPTR ")", program,
(uintptr_t)uniformBlockName);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateGetUniformBlockIndex(context, program, uniformBlockName))
{
return context->getUniformBlockIndex(program, uniformBlockName);
}
}
return GetDefaultReturnValue<EntryPoint::GetUniformBlockIndex, GLuint>();
}
void GL_APIENTRY GetUniformIndices(GLuint program,
GLsizei uniformCount,
const GLchar *const *uniformNames,
GLuint *uniformIndices)
{
EVENT(
"(GLuint program = %u, GLsizei uniformCount = %d, const GLchar *const*uniformNames = "
"0x%016" PRIxPTR ", GLuint *uniformIndices = 0x%016" PRIxPTR ")",
program, uniformCount, (uintptr_t)uniformNames, (uintptr_t)uniformIndices);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateGetUniformIndices(context, program, uniformCount, uniformNames, uniformIndices))
{
context->getUniformIndices(program, uniformCount, uniformNames, uniformIndices);
}
}
}
void GL_APIENTRY PrimitiveRestartIndex(GLuint index)
{
EVENT("(GLuint index = %u)", index);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidatePrimitiveRestartIndex(context, index))
{
context->primitiveRestartIndex(index);
}
}
}
void GL_APIENTRY TexBuffer(GLenum target, GLenum internalformat, GLuint buffer)
{
EVENT("(GLenum target = 0x%X, GLenum internalformat = 0x%X, GLuint buffer = %u)", target,
internalformat, buffer);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() || ValidateTexBuffer(context, target, internalformat, buffer))
{
context->texBuffer(target, internalformat, buffer);
}
}
}
void GL_APIENTRY UniformBlockBinding(GLuint program,
GLuint uniformBlockIndex,
GLuint uniformBlockBinding)
{
EVENT("(GLuint program = %u, GLuint uniformBlockIndex = %u, GLuint uniformBlockBinding = %u)",
program, uniformBlockIndex, uniformBlockBinding);
Context *context = GetValidGlobalContext();
if (context)
{
if (context->skipValidation() ||
ValidateUniformBlockBinding(context, program, uniformBlockIndex, uniformBlockBinding))
{
context->uniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
}
}
}
} // namespace gl

View File

@@ -0,0 +1,68 @@
// 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.
//
// entry_points_gl_3_1_autogen.h:
// Defines the GL 3.1 entry points.
#ifndef OPENGL32_ENTRY_POINTS_GL_3_1_AUTOGEN_H_
#define OPENGL32_ENTRY_POINTS_GL_3_1_AUTOGEN_H_
#include <export.h>
#include "angle_gl.h"
#include "WGL/wgl.h"
#include "windows.h"
namespace gl
{
ANGLE_EXPORT void GL_APIENTRY CopyBufferSubData(GLenum readTarget,
GLenum writeTarget,
GLintptr readOffset,
GLintptr writeOffset,
GLsizeiptr size);
ANGLE_EXPORT void GL_APIENTRY DrawArraysInstanced(GLenum mode,
GLint first,
GLsizei count,
GLsizei instancecount);
ANGLE_EXPORT void GL_APIENTRY DrawElementsInstanced(GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
GLsizei instancecount);
ANGLE_EXPORT void GL_APIENTRY GetActiveUniformBlockName(GLuint program,
GLuint uniformBlockIndex,
GLsizei bufSize,
GLsizei *length,
GLchar *uniformBlockName);
ANGLE_EXPORT void GL_APIENTRY GetActiveUniformBlockiv(GLuint program,
GLuint uniformBlockIndex,
GLenum pname,
GLint *params);
ANGLE_EXPORT void GL_APIENTRY GetActiveUniformName(GLuint program,
GLuint uniformIndex,
GLsizei bufSize,
GLsizei *length,
GLchar *uniformName);
ANGLE_EXPORT void GL_APIENTRY GetActiveUniformsiv(GLuint program,
GLsizei uniformCount,
const GLuint *uniformIndices,
GLenum pname,
GLint *params);
ANGLE_EXPORT GLuint GL_APIENTRY GetUniformBlockIndex(GLuint program,
const GLchar *uniformBlockName);
ANGLE_EXPORT void GL_APIENTRY GetUniformIndices(GLuint program,
GLsizei uniformCount,
const GLchar *const *uniformNames,
GLuint *uniformIndices);
ANGLE_EXPORT void GL_APIENTRY PrimitiveRestartIndex(GLuint index);
ANGLE_EXPORT void GL_APIENTRY TexBuffer(GLenum target, GLenum internalformat, GLuint buffer);
ANGLE_EXPORT void GL_APIENTRY UniformBlockBinding(GLuint program,
GLuint uniformBlockIndex,
GLuint uniformBlockBinding);
} // namespace gl
#endif // OPENGL32_ENTRY_POINTS_GL_3_1_AUTOGEN_H_

View File

@@ -0,0 +1,72 @@
//
// Copyright 2018 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.
//
// entry_point_utils:
// These helpers are used in GL entry point routines.
#ifndef OPENGL32_ENTRY_POINT_UTILS_H_
#define OPENGL32_ENTRY_POINT_UTILS_H_
#include "angle_gl.h"
#include "common/Optional.h"
#include "common/PackedEnums.h"
#include "common/angleutils.h"
#include "common/mathutil.h"
#include "openGL32/entry_points_enum_autogen.h"
namespace gl
{
// A template struct for determining the default value to return for each entry point.
template <EntryPoint EP, typename ReturnType>
struct DefaultReturnValue;
// Default return values for each basic return type.
template <EntryPoint EP>
struct DefaultReturnValue<EP, GLint>
{
static constexpr GLint kValue = -1;
};
// This doubles as the GLenum return value.
template <EntryPoint EP>
struct DefaultReturnValue<EP, GLuint>
{
static constexpr GLuint kValue = 0;
};
template <EntryPoint EP>
struct DefaultReturnValue<EP, GLboolean>
{
static constexpr GLboolean kValue = GL_FALSE;
};
// Catch-all rules for pointer types.
template <EntryPoint EP, typename PointerType>
struct DefaultReturnValue<EP, const PointerType *>
{
static constexpr const PointerType *kValue = nullptr;
};
template <EntryPoint EP, typename PointerType>
struct DefaultReturnValue<EP, PointerType *>
{
static constexpr PointerType *kValue = nullptr;
};
// Overloaded to return invalid index
template <>
struct DefaultReturnValue<EntryPoint::GetUniformBlockIndex, GLuint>
{
static constexpr GLuint kValue = GL_INVALID_INDEX;
};
template <EntryPoint EP, typename ReturnType>
constexpr ANGLE_INLINE ReturnType GetDefaultReturnValue()
{
return DefaultReturnValue<EP, ReturnType>::kValue;
}
} // namespace gl
#endif // OPENGL32_ENTRY_POINT_UTILS_H_

View File

@@ -0,0 +1,319 @@
//
// 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.
//
// entry_points_wgl.cpp: Implements the exported WGL functions.
#include "entry_points_wgl.h"
#include "common/debug.h"
#include "common/event_tracer.h"
#include "common/utilities.h"
#include "common/version.h"
#include "libANGLE/Context.h"
#include "libANGLE/Display.h"
#include "libANGLE/EGLSync.h"
#include "libANGLE/Surface.h"
#include "libANGLE/Texture.h"
#include "libANGLE/Thread.h"
#include "libANGLE/queryutils.h"
#include "libANGLE/validationEGL.h"
#include "libGLESv2/global_state.h"
#include "openGL32/proc_table_wgl.h"
using namespace wgl;
using namespace egl;
namespace
{
bool CompareProc(const ProcEntry &a, const char *b)
{
return strcmp(a.first, b) < 0;
}
void ClipConfigs(const std::vector<const Config *> &filteredConfigs,
EGLConfig *output_configs,
EGLint config_size,
EGLint *num_config)
{
EGLint result_size = static_cast<EGLint>(filteredConfigs.size());
if (output_configs)
{
result_size = std::max(std::min(result_size, config_size), 0);
for (EGLint i = 0; i < result_size; i++)
{
output_configs[i] = const_cast<Config *>(filteredConfigs[i]);
}
}
*num_config = result_size;
}
} // anonymous namespace
extern "C" {
// WGL 1.0
int GL_APIENTRY wglChoosePixelFormat(HDC hDc, const PIXELFORMATDESCRIPTOR *pPfd)
{
UNIMPLEMENTED();
return 1;
}
int GL_APIENTRY wglDescribePixelFormat(HDC hdc, int ipfd, UINT cjpfd, PIXELFORMATDESCRIPTOR *ppfd)
{
UNIMPLEMENTED();
if (ppfd)
{
ppfd->dwFlags = ppfd->dwFlags | PFD_DRAW_TO_WINDOW;
ppfd->dwFlags = ppfd->dwFlags | PFD_SUPPORT_OPENGL;
ppfd->dwFlags = ppfd->dwFlags | PFD_GENERIC_ACCELERATED;
ppfd->dwFlags = ppfd->dwFlags | PFD_DOUBLEBUFFER;
ppfd->iPixelType = PFD_TYPE_RGBA;
ppfd->cRedBits = 8;
ppfd->cGreenBits = 8;
ppfd->cBlueBits = 8;
ppfd->cAlphaBits = 8;
ppfd->cDepthBits = 24;
ppfd->cStencilBits = 8;
ppfd->nVersion = 3;
}
return 1;
}
UINT GL_APIENTRY wglGetEnhMetaFilePixelFormat(HENHMETAFILE hemf,
UINT cbBuffer,
PIXELFORMATDESCRIPTOR *ppfd)
{
UNIMPLEMENTED();
return 1u;
}
int GL_APIENTRY wglGetPixelFormat(HDC hdc)
{
UNIMPLEMENTED();
return 1;
}
BOOL GL_APIENTRY wglSetPixelFormat(HDC hdc, int ipfd, const PIXELFORMATDESCRIPTOR *ppfd)
{
UNIMPLEMENTED();
return TRUE;
}
BOOL GL_APIENTRY wglSwapBuffers(HDC hdc)
{
UNIMPLEMENTED();
return TRUE;
}
BOOL GL_APIENTRY wglCopyContext(HGLRC hglrcSrc, HGLRC hglrcDst, UINT mask)
{
UNIMPLEMENTED();
return TRUE;
}
HGLRC GL_APIENTRY wglCreateContext(HDC hDc)
{
GLenum platformType = EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE;
std::vector<EGLint> displayAttributes;
displayAttributes.push_back(EGL_PLATFORM_ANGLE_TYPE_ANGLE);
displayAttributes.push_back(platformType);
displayAttributes.push_back(EGL_PLATFORM_ANGLE_MAX_VERSION_MAJOR_ANGLE);
displayAttributes.push_back(EGL_DONT_CARE);
displayAttributes.push_back(EGL_PLATFORM_ANGLE_MAX_VERSION_MINOR_ANGLE);
displayAttributes.push_back(EGL_DONT_CARE);
displayAttributes.push_back(EGL_PLATFORM_ANGLE_DEVICE_TYPE_ANGLE);
displayAttributes.push_back(EGL_PLATFORM_ANGLE_DEVICE_TYPE_HARDWARE_ANGLE);
displayAttributes.push_back(EGL_NONE);
const auto &attribMapDisplay =
AttributeMap::CreateFromAttribArray((const EGLAttrib *)&displayAttributes[0]);
EGLDisplay mDisplay = egl::Display::GetDisplayFromNativeDisplay(hDc, attribMapDisplay);
egl::Display *display = static_cast<egl::Display *>(mDisplay);
auto error = display->initialize();
// Don't have a thread to bind API to, so just use this API
// eglBindAPI(EGL_OPENGL_ES_API);
// Default config
const EGLint configAttributes[] = {EGL_RED_SIZE,
EGL_DONT_CARE,
EGL_GREEN_SIZE,
EGL_DONT_CARE,
EGL_BLUE_SIZE,
EGL_DONT_CARE,
EGL_ALPHA_SIZE,
EGL_DONT_CARE,
EGL_DEPTH_SIZE,
EGL_DONT_CARE,
EGL_STENCIL_SIZE,
EGL_DONT_CARE,
EGL_SAMPLE_BUFFERS,
0,
EGL_NONE};
// Choose config
EGLint configCount;
EGLConfig mConfig;
AttributeMap attribMapConfig = AttributeMap::CreateFromIntArray(configAttributes);
ClipConfigs(display->chooseConfig(attribMapConfig), &mConfig, 1, &configCount);
// Initialize surface
std::vector<EGLint> surfaceAttributes;
surfaceAttributes.push_back(EGL_NONE);
surfaceAttributes.push_back(EGL_NONE);
// Create first window surface
// EGLSurface mWindowSurface = eglCreateWindowSurface(mDisplay, mConfig,
// (EGLNativeWindowType)hDc, &surfaceAttributes[0]);
// Initialize context
EGLint contextAttibutes[] = {EGL_CONTEXT_CLIENT_VERSION, 2, EGL_NONE};
Config *configuration = static_cast<Config *>(mConfig);
gl::Context *sharedGLContext = static_cast<gl::Context *>(nullptr);
AttributeMap attributes = AttributeMap::CreateFromIntArray(contextAttibutes);
gl::Context *context = nullptr;
auto error1 = display->createContext(configuration, sharedGLContext, attributes, &context);
EGLContext mContext = static_cast<EGLContext>(context);
return (HGLRC)mContext;
}
HGLRC GL_APIENTRY wglCreateLayerContext(HDC hDc, int level)
{
UNIMPLEMENTED();
return nullptr;
}
BOOL GL_APIENTRY wglDeleteContext(HGLRC oldContext)
{
UNIMPLEMENTED();
return FALSE;
}
BOOL GL_APIENTRY wglDescribeLayerPlane(HDC hDc,
int pixelFormat,
int layerPlane,
UINT nBytes,
LAYERPLANEDESCRIPTOR *plpd)
{
UNIMPLEMENTED();
return FALSE;
}
HGLRC GL_APIENTRY wglGetCurrentContext()
{
UNIMPLEMENTED();
return nullptr;
}
HDC GL_APIENTRY wglGetCurrentDC()
{
UNIMPLEMENTED();
return nullptr;
}
int GL_APIENTRY
wglGetLayerPaletteEntries(HDC hdc, int iLayerPlane, int iStart, int cEntries, COLORREF *pcr)
{
UNIMPLEMENTED();
return 0;
}
PROC GL_APIENTRY wglGetProcAddress(LPCSTR lpszProc)
{
ANGLE_SCOPED_GLOBAL_LOCK();
EVENT("(const char *procname = \"%s\")", lpszProc);
egl::Thread *thread = egl::GetCurrentThread();
ProcEntry *entry =
std::lower_bound(&g_procTable[0], &g_procTable[g_numProcs], lpszProc, CompareProc);
thread->setSuccess();
if (entry == &g_procTable[g_numProcs] || strcmp(entry->first, lpszProc) != 0)
{
return nullptr;
}
return entry->second;
}
BOOL GL_APIENTRY wglMakeCurrent(HDC hDc, HGLRC newContext)
{
UNIMPLEMENTED();
return FALSE;
}
BOOL GL_APIENTRY wglRealizeLayerPalette(HDC hdc, int iLayerPlane, BOOL bRealize)
{
UNIMPLEMENTED();
return FALSE;
}
int GL_APIENTRY
wglSetLayerPaletteEntries(HDC hdc, int iLayerPlane, int iStart, int cEntries, const COLORREF *pcr)
{
UNIMPLEMENTED();
return 0;
}
BOOL GL_APIENTRY wglShareLists(HGLRC hrcSrvShare, HGLRC hrcSrvSource)
{
UNIMPLEMENTED();
return FALSE;
}
BOOL GL_APIENTRY wglSwapLayerBuffers(HDC hdc, UINT fuFlags)
{
UNIMPLEMENTED();
return FALSE;
}
BOOL GL_APIENTRY wglUseFontBitmapsA(HDC hDC, DWORD first, DWORD count, DWORD listBase)
{
UNIMPLEMENTED();
return FALSE;
}
BOOL GL_APIENTRY wglUseFontBitmapsW(HDC hDC, DWORD first, DWORD count, DWORD listBase)
{
UNIMPLEMENTED();
return FALSE;
}
BOOL GL_APIENTRY wglUseFontOutlinesA(HDC hDC,
DWORD first,
DWORD count,
DWORD listBase,
FLOAT deviation,
FLOAT extrusion,
int format,
LPGLYPHMETRICSFLOAT lpgmf)
{
UNIMPLEMENTED();
return FALSE;
}
BOOL GL_APIENTRY wglUseFontOutlinesW(HDC hDC,
DWORD first,
DWORD count,
DWORD listBase,
FLOAT deviation,
FLOAT extrusion,
int format,
LPGLYPHMETRICSFLOAT lpgmf)
{
UNIMPLEMENTED();
return FALSE;
}
} // extern "C"

View File

@@ -0,0 +1,40 @@
//
// 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.
//
// entry_points_wgl.h: Declares the exported WGL functions.
#ifndef OPENGL32_WGL_H_
#define OPENGL32_WGL_H_
// Define _GDI32_ so that wingdi.h doesn't declare functions as imports
#ifndef _GDI32_
# define _GDI32_
#endif
#include <windows.h>
#include "angle_gl.h"
#include "WGL/wgl.h"
extern "C" {
// WGL 1.0
int GL_APIENTRY wglChoosePixelFormat(HDC hDc, const PIXELFORMATDESCRIPTOR *pPfd);
int GL_APIENTRY wglDescribePixelFormat(HDC hdc, int ipfd, UINT cjpfd, PIXELFORMATDESCRIPTOR *ppfd);
UINT GL_APIENTRY wglGetEnhMetaFilePixelFormat(HENHMETAFILE hemf,
UINT cbBuffer,
PIXELFORMATDESCRIPTOR *ppfd);
int GL_APIENTRY wglGetPixelFormat(HDC hdc);
BOOL GL_APIENTRY wglSetPixelFormat(HDC hdc, int ipfd, const PIXELFORMATDESCRIPTOR *ppfd);
BOOL GL_APIENTRY wglSwapBuffers(HDC hdc);
} // extern "C"
#endif // OPENGL32_WGL_H_

103
src/openGL32/openGL32.rc Normal file
View File

@@ -0,0 +1,103 @@
// Microsoft Visual C++ generated resource script.
//
#include "resource.h"
#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include <windows.h>
#include "../common/version.h"
/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
// English (U.S.) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
#ifdef _WIN32
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
#pragma code_page(1252)
#endif //_WIN32
#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//
1 TEXTINCLUDE
BEGIN
"resource.h\0"
END
2 TEXTINCLUDE
BEGIN
"#include ""afxres.h""\r\n"
"#include ""../common/version.h""\0"
END
3 TEXTINCLUDE
BEGIN
"\r\n"
"\0"
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Version
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION ANGLE_MAJOR_VERSION,ANGLE_MINOR_VERSION,ANGLE_REVISION,0
PRODUCTVERSION ANGLE_MAJOR_VERSION,ANGLE_MINOR_VERSION,ANGLE_REVISION,0
FILEFLAGSMASK 0x17L
#ifdef _DEBUG
FILEFLAGS 0x1L
#else
FILEFLAGS 0x0L
#endif
FILEOS 0x4L
FILETYPE 0x2L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904b0"
BEGIN
VALUE "FileDescription", "ANGLE openGL32 Dynamic Link Library"
VALUE "FileVersion", ANGLE_VERSION_STRING
VALUE "InternalName", "openGL32"
VALUE "LegalCopyright", "Copyright (C) 2019 Google Inc."
VALUE "OriginalFilename", "openGL32.dll"
VALUE "PrivateBuild", ANGLE_VERSION_STRING
VALUE "ProductName", "ANGLE OpenGL32 Dynamic Link Library"
VALUE "ProductVersion", ANGLE_VERSION_STRING
VALUE "Comments", "Build Date: " ANGLE_COMMIT_DATE
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x409, 1200
END
END
#endif // English (U.S.) resources
/////////////////////////////////////////////////////////////////////////////
#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,701 @@
; GENERATED FILE - DO NOT EDIT.
; Generated by generate_entry_points.py using data from Khronos and ANGLE XML files.
;
; 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.
LIBRARY openGL32
EXPORTS
; OpenGL32 1.0
glAccum
glAlphaFunc
glBegin
glBitmap
glBlendFunc
glCallList
glCallLists
glClear
glClearAccum
glClearColor
glClearDepth
glClearIndex
glClearStencil
glClipPlane
glColor3b
glColor3bv
glColor3d
glColor3dv
glColor3f
glColor3fv
glColor3i
glColor3iv
glColor3s
glColor3sv
glColor3ub
glColor3ubv
glColor3ui
glColor3uiv
glColor3us
glColor3usv
glColor4b
glColor4bv
glColor4d
glColor4dv
glColor4f
glColor4fv
glColor4i
glColor4iv
glColor4s
glColor4sv
glColor4ub
glColor4ubv
glColor4ui
glColor4uiv
glColor4us
glColor4usv
glColorMask
glColorMaterial
glCopyPixels
glCullFace
glDeleteLists
glDepthFunc
glDepthMask
glDepthRange
glDisable
glDrawBuffer
glDrawPixels
glEdgeFlag
glEdgeFlagv
glEnable
glEnd
glEndList
glEvalCoord1d
glEvalCoord1dv
glEvalCoord1f
glEvalCoord1fv
glEvalCoord2d
glEvalCoord2dv
glEvalCoord2f
glEvalCoord2fv
glEvalMesh1
glEvalMesh2
glEvalPoint1
glEvalPoint2
glFeedbackBuffer
glFinish
glFlush
glFogf
glFogfv
glFogi
glFogiv
glFrontFace
glFrustum
glGenLists
glGetBooleanv
glGetClipPlane
glGetDoublev
glGetError
glGetFloatv
glGetIntegerv
glGetLightfv
glGetLightiv
glGetMapdv
glGetMapfv
glGetMapiv
glGetMaterialfv
glGetMaterialiv
glGetPixelMapfv
glGetPixelMapuiv
glGetPixelMapusv
glGetPolygonStipple
glGetString
glGetTexEnvfv
glGetTexEnviv
glGetTexGendv
glGetTexGenfv
glGetTexGeniv
glGetTexImage
glGetTexLevelParameterfv
glGetTexLevelParameteriv
glGetTexParameterfv
glGetTexParameteriv
glHint
glIndexMask
glIndexd
glIndexdv
glIndexf
glIndexfv
glIndexi
glIndexiv
glIndexs
glIndexsv
glInitNames
glIsEnabled
glIsList
glLightModelf
glLightModelfv
glLightModeli
glLightModeliv
glLightf
glLightfv
glLighti
glLightiv
glLineStipple
glLineWidth
glListBase
glLoadIdentity
glLoadMatrixd
glLoadMatrixf
glLoadName
glLogicOp
glMap1d
glMap1f
glMap2d
glMap2f
glMapGrid1d
glMapGrid1f
glMapGrid2d
glMapGrid2f
glMaterialf
glMaterialfv
glMateriali
glMaterialiv
glMatrixMode
glMultMatrixd
glMultMatrixf
glNewList
glNormal3b
glNormal3bv
glNormal3d
glNormal3dv
glNormal3f
glNormal3fv
glNormal3i
glNormal3iv
glNormal3s
glNormal3sv
glOrtho
glPassThrough
glPixelMapfv
glPixelMapuiv
glPixelMapusv
glPixelStoref
glPixelStorei
glPixelTransferf
glPixelTransferi
glPixelZoom
glPointSize
glPolygonMode
glPolygonStipple
glPopAttrib
glPopMatrix
glPopName
glPushAttrib
glPushMatrix
glPushName
glRasterPos2d
glRasterPos2dv
glRasterPos2f
glRasterPos2fv
glRasterPos2i
glRasterPos2iv
glRasterPos2s
glRasterPos2sv
glRasterPos3d
glRasterPos3dv
glRasterPos3f
glRasterPos3fv
glRasterPos3i
glRasterPos3iv
glRasterPos3s
glRasterPos3sv
glRasterPos4d
glRasterPos4dv
glRasterPos4f
glRasterPos4fv
glRasterPos4i
glRasterPos4iv
glRasterPos4s
glRasterPos4sv
glReadBuffer
glReadPixels
glRectd
glRectdv
glRectf
glRectfv
glRecti
glRectiv
glRects
glRectsv
glRenderMode
glRotated
glRotatef
glScaled
glScalef
glScissor
glSelectBuffer
glShadeModel
glStencilFunc
glStencilMask
glStencilOp
glTexCoord1d
glTexCoord1dv
glTexCoord1f
glTexCoord1fv
glTexCoord1i
glTexCoord1iv
glTexCoord1s
glTexCoord1sv
glTexCoord2d
glTexCoord2dv
glTexCoord2f
glTexCoord2fv
glTexCoord2i
glTexCoord2iv
glTexCoord2s
glTexCoord2sv
glTexCoord3d
glTexCoord3dv
glTexCoord3f
glTexCoord3fv
glTexCoord3i
glTexCoord3iv
glTexCoord3s
glTexCoord3sv
glTexCoord4d
glTexCoord4dv
glTexCoord4f
glTexCoord4fv
glTexCoord4i
glTexCoord4iv
glTexCoord4s
glTexCoord4sv
glTexEnvf
glTexEnvfv
glTexEnvi
glTexEnviv
glTexGend
glTexGendv
glTexGenf
glTexGenfv
glTexGeni
glTexGeniv
glTexImage1D
glTexImage2D
glTexParameterf
glTexParameterfv
glTexParameteri
glTexParameteriv
glTranslated
glTranslatef
glVertex2d
glVertex2dv
glVertex2f
glVertex2fv
glVertex2i
glVertex2iv
glVertex2s
glVertex2sv
glVertex3d
glVertex3dv
glVertex3f
glVertex3fv
glVertex3i
glVertex3iv
glVertex3s
glVertex3sv
glVertex4d
glVertex4dv
glVertex4f
glVertex4fv
glVertex4i
glVertex4iv
glVertex4s
glVertex4sv
glViewport
; OpenGL32 1.1
glAreTexturesResident
glArrayElement
glBindTexture
glColorPointer
glCopyTexImage1D
glCopyTexImage2D
glCopyTexSubImage1D
glCopyTexSubImage2D
glDeleteTextures
glDisableClientState
glDrawArrays
glDrawElements
glEdgeFlagPointer
glEnableClientState
glGenTextures
glGetPointerv
glIndexPointer
glIndexub
glIndexubv
glInterleavedArrays
glIsTexture
glNormalPointer
glPolygonOffset
glPopClientAttrib
glPrioritizeTextures
glPushClientAttrib
glTexCoordPointer
glTexSubImage1D
glTexSubImage2D
glVertexPointer
; OpenGL32 1.2
glCopyTexSubImage3D
glDrawRangeElements
glTexImage3D
glTexSubImage3D
; OpenGL32 1.3
glActiveTexture
glClientActiveTexture
glCompressedTexImage1D
glCompressedTexImage2D
glCompressedTexImage3D
glCompressedTexSubImage1D
glCompressedTexSubImage2D
glCompressedTexSubImage3D
glGetCompressedTexImage
glLoadTransposeMatrixd
glLoadTransposeMatrixf
glMultTransposeMatrixd
glMultTransposeMatrixf
glMultiTexCoord1d
glMultiTexCoord1dv
glMultiTexCoord1f
glMultiTexCoord1fv
glMultiTexCoord1i
glMultiTexCoord1iv
glMultiTexCoord1s
glMultiTexCoord1sv
glMultiTexCoord2d
glMultiTexCoord2dv
glMultiTexCoord2f
glMultiTexCoord2fv
glMultiTexCoord2i
glMultiTexCoord2iv
glMultiTexCoord2s
glMultiTexCoord2sv
glMultiTexCoord3d
glMultiTexCoord3dv
glMultiTexCoord3f
glMultiTexCoord3fv
glMultiTexCoord3i
glMultiTexCoord3iv
glMultiTexCoord3s
glMultiTexCoord3sv
glMultiTexCoord4d
glMultiTexCoord4dv
glMultiTexCoord4f
glMultiTexCoord4fv
glMultiTexCoord4i
glMultiTexCoord4iv
glMultiTexCoord4s
glMultiTexCoord4sv
glSampleCoverage
; OpenGL32 1.4
glBlendColor
glBlendEquation
glBlendFuncSeparate
glFogCoordPointer
glFogCoordd
glFogCoorddv
glFogCoordf
glFogCoordfv
glMultiDrawArrays
glMultiDrawElements
glPointParameterf
glPointParameterfv
glPointParameteri
glPointParameteriv
glSecondaryColor3b
glSecondaryColor3bv
glSecondaryColor3d
glSecondaryColor3dv
glSecondaryColor3f
glSecondaryColor3fv
glSecondaryColor3i
glSecondaryColor3iv
glSecondaryColor3s
glSecondaryColor3sv
glSecondaryColor3ub
glSecondaryColor3ubv
glSecondaryColor3ui
glSecondaryColor3uiv
glSecondaryColor3us
glSecondaryColor3usv
glSecondaryColorPointer
glWindowPos2d
glWindowPos2dv
glWindowPos2f
glWindowPos2fv
glWindowPos2i
glWindowPos2iv
glWindowPos2s
glWindowPos2sv
glWindowPos3d
glWindowPos3dv
glWindowPos3f
glWindowPos3fv
glWindowPos3i
glWindowPos3iv
glWindowPos3s
glWindowPos3sv
; OpenGL32 1.5
glBeginQuery
glBindBuffer
glBufferData
glBufferSubData
glDeleteBuffers
glDeleteQueries
glEndQuery
glGenBuffers
glGenQueries
glGetBufferParameteriv
glGetBufferPointerv
glGetBufferSubData
glGetQueryObjectiv
glGetQueryObjectuiv
glGetQueryiv
glIsBuffer
glIsQuery
glMapBuffer
glUnmapBuffer
; OpenGL32 2.0
glAttachShader
glBindAttribLocation
glBlendEquationSeparate
glCompileShader
glCreateProgram
glCreateShader
glDeleteProgram
glDeleteShader
glDetachShader
glDisableVertexAttribArray
glDrawBuffers
glEnableVertexAttribArray
glGetActiveAttrib
glGetActiveUniform
glGetAttachedShaders
glGetAttribLocation
glGetProgramInfoLog
glGetProgramiv
glGetShaderInfoLog
glGetShaderSource
glGetShaderiv
glGetUniformLocation
glGetUniformfv
glGetUniformiv
glGetVertexAttribPointerv
glGetVertexAttribdv
glGetVertexAttribfv
glGetVertexAttribiv
glIsProgram
glIsShader
glLinkProgram
glShaderSource
glStencilFuncSeparate
glStencilMaskSeparate
glStencilOpSeparate
glUniform1f
glUniform1fv
glUniform1i
glUniform1iv
glUniform2f
glUniform2fv
glUniform2i
glUniform2iv
glUniform3f
glUniform3fv
glUniform3i
glUniform3iv
glUniform4f
glUniform4fv
glUniform4i
glUniform4iv
glUniformMatrix2fv
glUniformMatrix3fv
glUniformMatrix4fv
glUseProgram
glValidateProgram
glVertexAttrib1d
glVertexAttrib1dv
glVertexAttrib1f
glVertexAttrib1fv
glVertexAttrib1s
glVertexAttrib1sv
glVertexAttrib2d
glVertexAttrib2dv
glVertexAttrib2f
glVertexAttrib2fv
glVertexAttrib2s
glVertexAttrib2sv
glVertexAttrib3d
glVertexAttrib3dv
glVertexAttrib3f
glVertexAttrib3fv
glVertexAttrib3s
glVertexAttrib3sv
glVertexAttrib4Nbv
glVertexAttrib4Niv
glVertexAttrib4Nsv
glVertexAttrib4Nub
glVertexAttrib4Nubv
glVertexAttrib4Nuiv
glVertexAttrib4Nusv
glVertexAttrib4bv
glVertexAttrib4d
glVertexAttrib4dv
glVertexAttrib4f
glVertexAttrib4fv
glVertexAttrib4iv
glVertexAttrib4s
glVertexAttrib4sv
glVertexAttrib4ubv
glVertexAttrib4uiv
glVertexAttrib4usv
glVertexAttribPointer
; OpenGL32 2.1
glUniformMatrix2x3fv
glUniformMatrix2x4fv
glUniformMatrix3x2fv
glUniformMatrix3x4fv
glUniformMatrix4x2fv
glUniformMatrix4x3fv
; OpenGL32 3.0
glBeginConditionalRender
glBeginTransformFeedback
glBindBufferBase
glBindBufferRange
glBindFragDataLocation
glBindFramebuffer
glBindRenderbuffer
glBindVertexArray
glBlitFramebuffer
glCheckFramebufferStatus
glClampColor
glClearBufferfi
glClearBufferfv
glClearBufferiv
glClearBufferuiv
glColorMaski
glDeleteFramebuffers
glDeleteRenderbuffers
glDeleteVertexArrays
glDisablei
glEnablei
glEndConditionalRender
glEndTransformFeedback
glFlushMappedBufferRange
glFramebufferRenderbuffer
glFramebufferTexture1D
glFramebufferTexture2D
glFramebufferTexture3D
glFramebufferTextureLayer
glGenFramebuffers
glGenRenderbuffers
glGenVertexArrays
glGenerateMipmap
glGetBooleani_v
glGetFragDataLocation
glGetFramebufferAttachmentParameteriv
glGetIntegeri_v
glGetRenderbufferParameteriv
glGetStringi
glGetTexParameterIiv
glGetTexParameterIuiv
glGetTransformFeedbackVarying
glGetUniformuiv
glGetVertexAttribIiv
glGetVertexAttribIuiv
glIsEnabledi
glIsFramebuffer
glIsRenderbuffer
glIsVertexArray
glMapBufferRange
glRenderbufferStorage
glRenderbufferStorageMultisample
glTexParameterIiv
glTexParameterIuiv
glTransformFeedbackVaryings
glUniform1ui
glUniform1uiv
glUniform2ui
glUniform2uiv
glUniform3ui
glUniform3uiv
glUniform4ui
glUniform4uiv
glVertexAttribI1i
glVertexAttribI1iv
glVertexAttribI1ui
glVertexAttribI1uiv
glVertexAttribI2i
glVertexAttribI2iv
glVertexAttribI2ui
glVertexAttribI2uiv
glVertexAttribI3i
glVertexAttribI3iv
glVertexAttribI3ui
glVertexAttribI3uiv
glVertexAttribI4bv
glVertexAttribI4i
glVertexAttribI4iv
glVertexAttribI4sv
glVertexAttribI4ubv
glVertexAttribI4ui
glVertexAttribI4uiv
glVertexAttribI4usv
glVertexAttribIPointer
; OpenGL32 3.1
glCopyBufferSubData
glDrawArraysInstanced
glDrawElementsInstanced
glGetActiveUniformBlockName
glGetActiveUniformBlockiv
glGetActiveUniformName
glGetActiveUniformsiv
glGetUniformBlockIndex
glGetUniformIndices
glPrimitiveRestartIndex
glTexBuffer
glUniformBlockBinding
; WGL 1.0
wglChoosePixelFormat
wglCopyContext
wglCreateContext
wglCreateLayerContext
wglDeleteContext
wglDescribeLayerPlane
wglDescribePixelFormat
wglGetCurrentContext
wglGetCurrentDC
wglGetEnhMetaFilePixelFormat
wglGetLayerPaletteEntries
wglGetPixelFormat
wglGetProcAddress
wglMakeCurrent
wglRealizeLayerPalette
wglSetLayerPaletteEntries
wglSetPixelFormat
wglShareLists
wglSwapBuffers
wglSwapLayerBuffers
wglUseFontBitmapsA
wglUseFontBitmapsW
wglUseFontOutlinesA
wglUseFontOutlinesW

View File

@@ -0,0 +1,32 @@
//
// Copyright 2017 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.
//
// getProcAddress loader table:
// Mapping from a string entry point name to function address.
//
#ifndef OPENGL32_PROC_TABLE_H_
#define OPENGL32_PROC_TABLE_H_
// Define _GDI32_ so that wingdi.h doesn't declare functions as imports
#ifndef _GDI32_
# define _GDI32_
#endif
#include <angle_gl.h>
#include <WGL/wgl.h>
#include <stddef.h>
#include <utility>
namespace wgl
{
using ProcEntry = std::pair<const char *, PROC>;
extern wgl::ProcEntry g_procTable[];
extern size_t g_numProcs;
} // namespace wgl
#endif // OPENGL32_PROC_TABLE_H_

View File

@@ -0,0 +1,437 @@
// GENERATED FILE - DO NOT EDIT.
// Generated by gen_proc_table.py using data from gl.xml, wgl.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.
//
// getProcAddress loader table:
// Mapping from a string entry point name to function address.
//
#include "openGL32/proc_table_wgl.h"
#include "openGL32/entry_points_gl_1_0_autogen.h"
#include "openGL32/entry_points_gl_1_1_autogen.h"
#include "openGL32/entry_points_gl_1_2_autogen.h"
#include "openGL32/entry_points_gl_1_3_autogen.h"
#include "openGL32/entry_points_gl_1_4_autogen.h"
#include "openGL32/entry_points_gl_1_5_autogen.h"
#include "openGL32/entry_points_gl_2_0_autogen.h"
#include "openGL32/entry_points_gl_2_1_autogen.h"
#include "openGL32/entry_points_gl_3_0_autogen.h"
#include "openGL32/entry_points_gl_3_1_autogen.h"
#include "openGL32/entry_points_wgl.h"
#include "platform/Platform.h"
#define P(FUNC) reinterpret_cast<PROC>(FUNC)
namespace wgl
{
ProcEntry g_procTable[] = {{"glAccum", P(gl::Accum)},
{"glAreTexturesResident", P(gl::AreTexturesResident)},
{"glArrayElement", P(gl::ArrayElement)},
{"glBegin", P(gl::Begin)},
{"glBeginConditionalRender", P(gl::BeginConditionalRender)},
{"glBitmap", P(gl::Bitmap)},
{"glCallList", P(gl::CallList)},
{"glCallLists", P(gl::CallLists)},
{"glClampColor", P(gl::ClampColor)},
{"glClearAccum", P(gl::ClearAccum)},
{"glClearDepth", P(gl::ClearDepth)},
{"glClearIndex", P(gl::ClearIndex)},
{"glClipPlane", P(gl::ClipPlane)},
{"glColor3b", P(gl::Color3b)},
{"glColor3bv", P(gl::Color3bv)},
{"glColor3d", P(gl::Color3d)},
{"glColor3dv", P(gl::Color3dv)},
{"glColor3f", P(gl::Color3f)},
{"glColor3fv", P(gl::Color3fv)},
{"glColor3i", P(gl::Color3i)},
{"glColor3iv", P(gl::Color3iv)},
{"glColor3s", P(gl::Color3s)},
{"glColor3sv", P(gl::Color3sv)},
{"glColor3ub", P(gl::Color3ub)},
{"glColor3ubv", P(gl::Color3ubv)},
{"glColor3ui", P(gl::Color3ui)},
{"glColor3uiv", P(gl::Color3uiv)},
{"glColor3us", P(gl::Color3us)},
{"glColor3usv", P(gl::Color3usv)},
{"glColor4b", P(gl::Color4b)},
{"glColor4bv", P(gl::Color4bv)},
{"glColor4d", P(gl::Color4d)},
{"glColor4dv", P(gl::Color4dv)},
{"glColor4fv", P(gl::Color4fv)},
{"glColor4i", P(gl::Color4i)},
{"glColor4iv", P(gl::Color4iv)},
{"glColor4s", P(gl::Color4s)},
{"glColor4sv", P(gl::Color4sv)},
{"glColor4ubv", P(gl::Color4ubv)},
{"glColor4ui", P(gl::Color4ui)},
{"glColor4uiv", P(gl::Color4uiv)},
{"glColor4us", P(gl::Color4us)},
{"glColor4usv", P(gl::Color4usv)},
{"glColorMaski", P(gl::ColorMaski)},
{"glColorMaterial", P(gl::ColorMaterial)},
{"glCompressedTexImage1D", P(gl::CompressedTexImage1D)},
{"glCompressedTexSubImage1D", P(gl::CompressedTexSubImage1D)},
{"glCopyPixels", P(gl::CopyPixels)},
{"glCopyTexImage1D", P(gl::CopyTexImage1D)},
{"glCopyTexSubImage1D", P(gl::CopyTexSubImage1D)},
{"glDeleteLists", P(gl::DeleteLists)},
{"glDepthRange", P(gl::DepthRange)},
{"glDisablei", P(gl::Disablei)},
{"glDrawBuffer", P(gl::DrawBuffer)},
{"glDrawPixels", P(gl::DrawPixels)},
{"glEdgeFlag", P(gl::EdgeFlag)},
{"glEdgeFlagPointer", P(gl::EdgeFlagPointer)},
{"glEdgeFlagv", P(gl::EdgeFlagv)},
{"glEnablei", P(gl::Enablei)},
{"glEnd", P(gl::End)},
{"glEndConditionalRender", P(gl::EndConditionalRender)},
{"glEndList", P(gl::EndList)},
{"glEvalCoord1d", P(gl::EvalCoord1d)},
{"glEvalCoord1dv", P(gl::EvalCoord1dv)},
{"glEvalCoord1f", P(gl::EvalCoord1f)},
{"glEvalCoord1fv", P(gl::EvalCoord1fv)},
{"glEvalCoord2d", P(gl::EvalCoord2d)},
{"glEvalCoord2dv", P(gl::EvalCoord2dv)},
{"glEvalCoord2f", P(gl::EvalCoord2f)},
{"glEvalCoord2fv", P(gl::EvalCoord2fv)},
{"glEvalMesh1", P(gl::EvalMesh1)},
{"glEvalMesh2", P(gl::EvalMesh2)},
{"glEvalPoint1", P(gl::EvalPoint1)},
{"glEvalPoint2", P(gl::EvalPoint2)},
{"glFeedbackBuffer", P(gl::FeedbackBuffer)},
{"glFogCoordPointer", P(gl::FogCoordPointer)},
{"glFogCoordd", P(gl::FogCoordd)},
{"glFogCoorddv", P(gl::FogCoorddv)},
{"glFogCoordf", P(gl::FogCoordf)},
{"glFogCoordfv", P(gl::FogCoordfv)},
{"glFogi", P(gl::Fogi)},
{"glFogiv", P(gl::Fogiv)},
{"glFramebufferTexture1D", P(gl::FramebufferTexture1D)},
{"glFrustum", P(gl::Frustum)},
{"glGenLists", P(gl::GenLists)},
{"glGetActiveUniformName", P(gl::GetActiveUniformName)},
{"glGetBufferSubData", P(gl::GetBufferSubData)},
{"glGetClipPlane", P(gl::GetClipPlane)},
{"glGetCompressedTexImage", P(gl::GetCompressedTexImage)},
{"glGetDoublev", P(gl::GetDoublev)},
{"glGetLightiv", P(gl::GetLightiv)},
{"glGetMapdv", P(gl::GetMapdv)},
{"glGetMapfv", P(gl::GetMapfv)},
{"glGetMapiv", P(gl::GetMapiv)},
{"glGetMaterialiv", P(gl::GetMaterialiv)},
{"glGetPixelMapfv", P(gl::GetPixelMapfv)},
{"glGetPixelMapuiv", P(gl::GetPixelMapuiv)},
{"glGetPixelMapusv", P(gl::GetPixelMapusv)},
{"glGetPolygonStipple", P(gl::GetPolygonStipple)},
{"glGetTexGendv", P(gl::GetTexGendv)},
{"glGetTexImage", P(gl::GetTexImage)},
{"glGetVertexAttribdv", P(gl::GetVertexAttribdv)},
{"glIndexMask", P(gl::IndexMask)},
{"glIndexPointer", P(gl::IndexPointer)},
{"glIndexd", P(gl::Indexd)},
{"glIndexdv", P(gl::Indexdv)},
{"glIndexf", P(gl::Indexf)},
{"glIndexfv", P(gl::Indexfv)},
{"glIndexi", P(gl::Indexi)},
{"glIndexiv", P(gl::Indexiv)},
{"glIndexs", P(gl::Indexs)},
{"glIndexsv", P(gl::Indexsv)},
{"glIndexub", P(gl::Indexub)},
{"glIndexubv", P(gl::Indexubv)},
{"glInitNames", P(gl::InitNames)},
{"glInterleavedArrays", P(gl::InterleavedArrays)},
{"glIsEnabledi", P(gl::IsEnabledi)},
{"glIsList", P(gl::IsList)},
{"glLightModeli", P(gl::LightModeli)},
{"glLightModeliv", P(gl::LightModeliv)},
{"glLighti", P(gl::Lighti)},
{"glLightiv", P(gl::Lightiv)},
{"glLineStipple", P(gl::LineStipple)},
{"glListBase", P(gl::ListBase)},
{"glLoadMatrixd", P(gl::LoadMatrixd)},
{"glLoadName", P(gl::LoadName)},
{"glLoadTransposeMatrixd", P(gl::LoadTransposeMatrixd)},
{"glLoadTransposeMatrixf", P(gl::LoadTransposeMatrixf)},
{"glMap1d", P(gl::Map1d)},
{"glMap1f", P(gl::Map1f)},
{"glMap2d", P(gl::Map2d)},
{"glMap2f", P(gl::Map2f)},
{"glMapGrid1d", P(gl::MapGrid1d)},
{"glMapGrid1f", P(gl::MapGrid1f)},
{"glMapGrid2d", P(gl::MapGrid2d)},
{"glMapGrid2f", P(gl::MapGrid2f)},
{"glMateriali", P(gl::Materiali)},
{"glMaterialiv", P(gl::Materialiv)},
{"glMultMatrixd", P(gl::MultMatrixd)},
{"glMultTransposeMatrixd", P(gl::MultTransposeMatrixd)},
{"glMultTransposeMatrixf", P(gl::MultTransposeMatrixf)},
{"glMultiTexCoord1d", P(gl::MultiTexCoord1d)},
{"glMultiTexCoord1dv", P(gl::MultiTexCoord1dv)},
{"glMultiTexCoord1f", P(gl::MultiTexCoord1f)},
{"glMultiTexCoord1fv", P(gl::MultiTexCoord1fv)},
{"glMultiTexCoord1i", P(gl::MultiTexCoord1i)},
{"glMultiTexCoord1iv", P(gl::MultiTexCoord1iv)},
{"glMultiTexCoord1s", P(gl::MultiTexCoord1s)},
{"glMultiTexCoord1sv", P(gl::MultiTexCoord1sv)},
{"glMultiTexCoord2d", P(gl::MultiTexCoord2d)},
{"glMultiTexCoord2dv", P(gl::MultiTexCoord2dv)},
{"glMultiTexCoord2f", P(gl::MultiTexCoord2f)},
{"glMultiTexCoord2fv", P(gl::MultiTexCoord2fv)},
{"glMultiTexCoord2i", P(gl::MultiTexCoord2i)},
{"glMultiTexCoord2iv", P(gl::MultiTexCoord2iv)},
{"glMultiTexCoord2s", P(gl::MultiTexCoord2s)},
{"glMultiTexCoord2sv", P(gl::MultiTexCoord2sv)},
{"glMultiTexCoord3d", P(gl::MultiTexCoord3d)},
{"glMultiTexCoord3dv", P(gl::MultiTexCoord3dv)},
{"glMultiTexCoord3f", P(gl::MultiTexCoord3f)},
{"glMultiTexCoord3fv", P(gl::MultiTexCoord3fv)},
{"glMultiTexCoord3i", P(gl::MultiTexCoord3i)},
{"glMultiTexCoord3iv", P(gl::MultiTexCoord3iv)},
{"glMultiTexCoord3s", P(gl::MultiTexCoord3s)},
{"glMultiTexCoord3sv", P(gl::MultiTexCoord3sv)},
{"glMultiTexCoord4d", P(gl::MultiTexCoord4d)},
{"glMultiTexCoord4dv", P(gl::MultiTexCoord4dv)},
{"glMultiTexCoord4fv", P(gl::MultiTexCoord4fv)},
{"glMultiTexCoord4i", P(gl::MultiTexCoord4i)},
{"glMultiTexCoord4iv", P(gl::MultiTexCoord4iv)},
{"glMultiTexCoord4s", P(gl::MultiTexCoord4s)},
{"glMultiTexCoord4sv", P(gl::MultiTexCoord4sv)},
{"glNewList", P(gl::NewList)},
{"glNormal3b", P(gl::Normal3b)},
{"glNormal3bv", P(gl::Normal3bv)},
{"glNormal3d", P(gl::Normal3d)},
{"glNormal3dv", P(gl::Normal3dv)},
{"glNormal3fv", P(gl::Normal3fv)},
{"glNormal3i", P(gl::Normal3i)},
{"glNormal3iv", P(gl::Normal3iv)},
{"glNormal3s", P(gl::Normal3s)},
{"glNormal3sv", P(gl::Normal3sv)},
{"glOrtho", P(gl::Ortho)},
{"glPassThrough", P(gl::PassThrough)},
{"glPixelMapfv", P(gl::PixelMapfv)},
{"glPixelMapuiv", P(gl::PixelMapuiv)},
{"glPixelMapusv", P(gl::PixelMapusv)},
{"glPixelStoref", P(gl::PixelStoref)},
{"glPixelTransferf", P(gl::PixelTransferf)},
{"glPixelTransferi", P(gl::PixelTransferi)},
{"glPixelZoom", P(gl::PixelZoom)},
{"glPointParameteri", P(gl::PointParameteri)},
{"glPointParameteriv", P(gl::PointParameteriv)},
{"glPolygonMode", P(gl::PolygonMode)},
{"glPolygonStipple", P(gl::PolygonStipple)},
{"glPopAttrib", P(gl::PopAttrib)},
{"glPopClientAttrib", P(gl::PopClientAttrib)},
{"glPopName", P(gl::PopName)},
{"glPrimitiveRestartIndex", P(gl::PrimitiveRestartIndex)},
{"glPrioritizeTextures", P(gl::PrioritizeTextures)},
{"glPushAttrib", P(gl::PushAttrib)},
{"glPushClientAttrib", P(gl::PushClientAttrib)},
{"glPushName", P(gl::PushName)},
{"glRasterPos2d", P(gl::RasterPos2d)},
{"glRasterPos2dv", P(gl::RasterPos2dv)},
{"glRasterPos2f", P(gl::RasterPos2f)},
{"glRasterPos2fv", P(gl::RasterPos2fv)},
{"glRasterPos2i", P(gl::RasterPos2i)},
{"glRasterPos2iv", P(gl::RasterPos2iv)},
{"glRasterPos2s", P(gl::RasterPos2s)},
{"glRasterPos2sv", P(gl::RasterPos2sv)},
{"glRasterPos3d", P(gl::RasterPos3d)},
{"glRasterPos3dv", P(gl::RasterPos3dv)},
{"glRasterPos3f", P(gl::RasterPos3f)},
{"glRasterPos3fv", P(gl::RasterPos3fv)},
{"glRasterPos3i", P(gl::RasterPos3i)},
{"glRasterPos3iv", P(gl::RasterPos3iv)},
{"glRasterPos3s", P(gl::RasterPos3s)},
{"glRasterPos3sv", P(gl::RasterPos3sv)},
{"glRasterPos4d", P(gl::RasterPos4d)},
{"glRasterPos4dv", P(gl::RasterPos4dv)},
{"glRasterPos4f", P(gl::RasterPos4f)},
{"glRasterPos4fv", P(gl::RasterPos4fv)},
{"glRasterPos4i", P(gl::RasterPos4i)},
{"glRasterPos4iv", P(gl::RasterPos4iv)},
{"glRasterPos4s", P(gl::RasterPos4s)},
{"glRasterPos4sv", P(gl::RasterPos4sv)},
{"glRectd", P(gl::Rectd)},
{"glRectdv", P(gl::Rectdv)},
{"glRectf", P(gl::Rectf)},
{"glRectfv", P(gl::Rectfv)},
{"glRecti", P(gl::Recti)},
{"glRectiv", P(gl::Rectiv)},
{"glRects", P(gl::Rects)},
{"glRectsv", P(gl::Rectsv)},
{"glRenderMode", P(gl::RenderMode)},
{"glRotated", P(gl::Rotated)},
{"glScaled", P(gl::Scaled)},
{"glSecondaryColor3b", P(gl::SecondaryColor3b)},
{"glSecondaryColor3bv", P(gl::SecondaryColor3bv)},
{"glSecondaryColor3d", P(gl::SecondaryColor3d)},
{"glSecondaryColor3dv", P(gl::SecondaryColor3dv)},
{"glSecondaryColor3f", P(gl::SecondaryColor3f)},
{"glSecondaryColor3fv", P(gl::SecondaryColor3fv)},
{"glSecondaryColor3i", P(gl::SecondaryColor3i)},
{"glSecondaryColor3iv", P(gl::SecondaryColor3iv)},
{"glSecondaryColor3s", P(gl::SecondaryColor3s)},
{"glSecondaryColor3sv", P(gl::SecondaryColor3sv)},
{"glSecondaryColor3ub", P(gl::SecondaryColor3ub)},
{"glSecondaryColor3ubv", P(gl::SecondaryColor3ubv)},
{"glSecondaryColor3ui", P(gl::SecondaryColor3ui)},
{"glSecondaryColor3uiv", P(gl::SecondaryColor3uiv)},
{"glSecondaryColor3us", P(gl::SecondaryColor3us)},
{"glSecondaryColor3usv", P(gl::SecondaryColor3usv)},
{"glSecondaryColorPointer", P(gl::SecondaryColorPointer)},
{"glSelectBuffer", P(gl::SelectBuffer)},
{"glTexBuffer", P(gl::TexBuffer)},
{"glTexCoord1d", P(gl::TexCoord1d)},
{"glTexCoord1dv", P(gl::TexCoord1dv)},
{"glTexCoord1f", P(gl::TexCoord1f)},
{"glTexCoord1fv", P(gl::TexCoord1fv)},
{"glTexCoord1i", P(gl::TexCoord1i)},
{"glTexCoord1iv", P(gl::TexCoord1iv)},
{"glTexCoord1s", P(gl::TexCoord1s)},
{"glTexCoord1sv", P(gl::TexCoord1sv)},
{"glTexCoord2d", P(gl::TexCoord2d)},
{"glTexCoord2dv", P(gl::TexCoord2dv)},
{"glTexCoord2f", P(gl::TexCoord2f)},
{"glTexCoord2fv", P(gl::TexCoord2fv)},
{"glTexCoord2i", P(gl::TexCoord2i)},
{"glTexCoord2iv", P(gl::TexCoord2iv)},
{"glTexCoord2s", P(gl::TexCoord2s)},
{"glTexCoord2sv", P(gl::TexCoord2sv)},
{"glTexCoord3d", P(gl::TexCoord3d)},
{"glTexCoord3dv", P(gl::TexCoord3dv)},
{"glTexCoord3f", P(gl::TexCoord3f)},
{"glTexCoord3fv", P(gl::TexCoord3fv)},
{"glTexCoord3i", P(gl::TexCoord3i)},
{"glTexCoord3iv", P(gl::TexCoord3iv)},
{"glTexCoord3s", P(gl::TexCoord3s)},
{"glTexCoord3sv", P(gl::TexCoord3sv)},
{"glTexCoord4d", P(gl::TexCoord4d)},
{"glTexCoord4dv", P(gl::TexCoord4dv)},
{"glTexCoord4f", P(gl::TexCoord4f)},
{"glTexCoord4fv", P(gl::TexCoord4fv)},
{"glTexCoord4i", P(gl::TexCoord4i)},
{"glTexCoord4iv", P(gl::TexCoord4iv)},
{"glTexCoord4s", P(gl::TexCoord4s)},
{"glTexCoord4sv", P(gl::TexCoord4sv)},
{"glTexGend", P(gl::TexGend)},
{"glTexGendv", P(gl::TexGendv)},
{"glTexImage1D", P(gl::TexImage1D)},
{"glTexSubImage1D", P(gl::TexSubImage1D)},
{"glTranslated", P(gl::Translated)},
{"glVertex2d", P(gl::Vertex2d)},
{"glVertex2dv", P(gl::Vertex2dv)},
{"glVertex2f", P(gl::Vertex2f)},
{"glVertex2fv", P(gl::Vertex2fv)},
{"glVertex2i", P(gl::Vertex2i)},
{"glVertex2iv", P(gl::Vertex2iv)},
{"glVertex2s", P(gl::Vertex2s)},
{"glVertex2sv", P(gl::Vertex2sv)},
{"glVertex3d", P(gl::Vertex3d)},
{"glVertex3dv", P(gl::Vertex3dv)},
{"glVertex3f", P(gl::Vertex3f)},
{"glVertex3fv", P(gl::Vertex3fv)},
{"glVertex3i", P(gl::Vertex3i)},
{"glVertex3iv", P(gl::Vertex3iv)},
{"glVertex3s", P(gl::Vertex3s)},
{"glVertex3sv", P(gl::Vertex3sv)},
{"glVertex4d", P(gl::Vertex4d)},
{"glVertex4dv", P(gl::Vertex4dv)},
{"glVertex4f", P(gl::Vertex4f)},
{"glVertex4fv", P(gl::Vertex4fv)},
{"glVertex4i", P(gl::Vertex4i)},
{"glVertex4iv", P(gl::Vertex4iv)},
{"glVertex4s", P(gl::Vertex4s)},
{"glVertex4sv", P(gl::Vertex4sv)},
{"glVertexAttrib1d", P(gl::VertexAttrib1d)},
{"glVertexAttrib1dv", P(gl::VertexAttrib1dv)},
{"glVertexAttrib1s", P(gl::VertexAttrib1s)},
{"glVertexAttrib1sv", P(gl::VertexAttrib1sv)},
{"glVertexAttrib2d", P(gl::VertexAttrib2d)},
{"glVertexAttrib2dv", P(gl::VertexAttrib2dv)},
{"glVertexAttrib2s", P(gl::VertexAttrib2s)},
{"glVertexAttrib2sv", P(gl::VertexAttrib2sv)},
{"glVertexAttrib3d", P(gl::VertexAttrib3d)},
{"glVertexAttrib3dv", P(gl::VertexAttrib3dv)},
{"glVertexAttrib3s", P(gl::VertexAttrib3s)},
{"glVertexAttrib3sv", P(gl::VertexAttrib3sv)},
{"glVertexAttrib4Nbv", P(gl::VertexAttrib4Nbv)},
{"glVertexAttrib4Niv", P(gl::VertexAttrib4Niv)},
{"glVertexAttrib4Nsv", P(gl::VertexAttrib4Nsv)},
{"glVertexAttrib4Nub", P(gl::VertexAttrib4Nub)},
{"glVertexAttrib4Nubv", P(gl::VertexAttrib4Nubv)},
{"glVertexAttrib4Nuiv", P(gl::VertexAttrib4Nuiv)},
{"glVertexAttrib4Nusv", P(gl::VertexAttrib4Nusv)},
{"glVertexAttrib4bv", P(gl::VertexAttrib4bv)},
{"glVertexAttrib4d", P(gl::VertexAttrib4d)},
{"glVertexAttrib4dv", P(gl::VertexAttrib4dv)},
{"glVertexAttrib4iv", P(gl::VertexAttrib4iv)},
{"glVertexAttrib4s", P(gl::VertexAttrib4s)},
{"glVertexAttrib4sv", P(gl::VertexAttrib4sv)},
{"glVertexAttrib4ubv", P(gl::VertexAttrib4ubv)},
{"glVertexAttrib4uiv", P(gl::VertexAttrib4uiv)},
{"glVertexAttrib4usv", P(gl::VertexAttrib4usv)},
{"glVertexAttribI1i", P(gl::VertexAttribI1i)},
{"glVertexAttribI1iv", P(gl::VertexAttribI1iv)},
{"glVertexAttribI1ui", P(gl::VertexAttribI1ui)},
{"glVertexAttribI1uiv", P(gl::VertexAttribI1uiv)},
{"glVertexAttribI2i", P(gl::VertexAttribI2i)},
{"glVertexAttribI2iv", P(gl::VertexAttribI2iv)},
{"glVertexAttribI2ui", P(gl::VertexAttribI2ui)},
{"glVertexAttribI2uiv", P(gl::VertexAttribI2uiv)},
{"glVertexAttribI3i", P(gl::VertexAttribI3i)},
{"glVertexAttribI3iv", P(gl::VertexAttribI3iv)},
{"glVertexAttribI3ui", P(gl::VertexAttribI3ui)},
{"glVertexAttribI3uiv", P(gl::VertexAttribI3uiv)},
{"glVertexAttribI4bv", P(gl::VertexAttribI4bv)},
{"glVertexAttribI4sv", P(gl::VertexAttribI4sv)},
{"glVertexAttribI4ubv", P(gl::VertexAttribI4ubv)},
{"glVertexAttribI4usv", P(gl::VertexAttribI4usv)},
{"glWindowPos2d", P(gl::WindowPos2d)},
{"glWindowPos2dv", P(gl::WindowPos2dv)},
{"glWindowPos2f", P(gl::WindowPos2f)},
{"glWindowPos2fv", P(gl::WindowPos2fv)},
{"glWindowPos2i", P(gl::WindowPos2i)},
{"glWindowPos2iv", P(gl::WindowPos2iv)},
{"glWindowPos2s", P(gl::WindowPos2s)},
{"glWindowPos2sv", P(gl::WindowPos2sv)},
{"glWindowPos3d", P(gl::WindowPos3d)},
{"glWindowPos3dv", P(gl::WindowPos3dv)},
{"glWindowPos3f", P(gl::WindowPos3f)},
{"glWindowPos3fv", P(gl::WindowPos3fv)},
{"glWindowPos3i", P(gl::WindowPos3i)},
{"glWindowPos3iv", P(gl::WindowPos3iv)},
{"glWindowPos3s", P(gl::WindowPos3s)},
{"glWindowPos3sv", P(gl::WindowPos3sv)},
{"wglChoosePixelFormat", P(wglChoosePixelFormat)},
{"wglCopyContext", P(wglCopyContext)},
{"wglCreateContext", P(wglCreateContext)},
{"wglCreateLayerContext", P(wglCreateLayerContext)},
{"wglDeleteContext", P(wglDeleteContext)},
{"wglDescribeLayerPlane", P(wglDescribeLayerPlane)},
{"wglDescribePixelFormat", P(wglDescribePixelFormat)},
{"wglGetCurrentContext", P(wglGetCurrentContext)},
{"wglGetCurrentDC", P(wglGetCurrentDC)},
{"wglGetEnhMetaFilePixelFormat", P(wglGetEnhMetaFilePixelFormat)},
{"wglGetLayerPaletteEntries", P(wglGetLayerPaletteEntries)},
{"wglGetPixelFormat", P(wglGetPixelFormat)},
{"wglGetProcAddress", P(wglGetProcAddress)},
{"wglMakeCurrent", P(wglMakeCurrent)},
{"wglRealizeLayerPalette", P(wglRealizeLayerPalette)},
{"wglSetLayerPaletteEntries", P(wglSetLayerPaletteEntries)},
{"wglSetPixelFormat", P(wglSetPixelFormat)},
{"wglShareLists", P(wglShareLists)},
{"wglSwapBuffers", P(wglSwapBuffers)},
{"wglSwapLayerBuffers", P(wglSwapLayerBuffers)},
{"wglUseFontBitmaps", P(wglUseFontBitmaps)},
{"wglUseFontBitmapsA", P(wglUseFontBitmapsA)},
{"wglUseFontBitmapsW", P(wglUseFontBitmapsW)},
{"wglUseFontOutlines", P(wglUseFontOutlines)},
{"wglUseFontOutlinesA", P(wglUseFontOutlinesA)},
{"wglUseFontOutlinesW", P(wglUseFontOutlinesW)}};
size_t g_numProcs = 404;
} // namespace wgl

14
src/openGL32/resource.h Normal file
View File

@@ -0,0 +1,14 @@
//{{NO_DEPENDENCIES}}
// Microsoft Visual C++ generated include file.
// Used by libGLESv2.rc
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
# ifndef APSTUDIO_READONLY_SYMBOLS
# define _APS_NEXT_RESOURCE_VALUE 101
# define _APS_NEXT_COMMAND_VALUE 40001
# define _APS_NEXT_CONTROL_VALUE 1001
# define _APS_NEXT_SYMED_VALUE 101
# endif
#endif