Add controller input and a laser-pointer-driven menu quad
build / build (push) Successful in 2m26s

- xr_input.c/h: an OpenXR action set (aim pose, trigger/select click, a
  menu-toggle button) plus ray/quad hit-testing, and a visible
  laser-pointer line drawn from the controller toward the hit point.
- xr_menu.c/h + MenuOverlay.java: a second composition-layer quad,
  toggled by a controller button, showing an off-screen, never-attached
  Android View tree (one "Keyboard" button so far) driven by synthetic
  touch events computed from the laser ray's hit UV.
- Migrate gl4es from a prebuilt binary baked into the Docker build-image
  to a vendored source snapshot (android/gl4es-src/) compiled from
  source at APK build time via CMake add_subdirectory(), patched through
  a new android/gl4es-patches/ (mirrors the existing engine-patches/
  pattern). This was needed to track down and fix a bug hit while
  building the menu: gl4es's fixed-pipeline emulation (fpe.c) was
  unconditionally substituting its own shader onto the menu's draw call
  (fpe_ReleventState() always sets alphafunc to a nonzero sentinel, so
  its fpe_IsEmpty() check could never see the state as empty), making
  the menu quad show the game's own rendering instead of its own
  content. Fixed by routing the menu's blit through a real
  glBlitFramebuffer() call instead of a shader-based draw, which gl4es's
  fpe.c has nothing to intercept - documented in README.md's new
  "Debugging notes" section.
- Renumber android/engine-patches/ to close the gap left by removing an
  unrelated diagnostic-only patch, and strip investigation-journal
  comments and dead diagnostic code (temporary tracing, env-var probes)
  left over from finding the bug above.
- Restructure README.md into numbered sections, document every
  engine/gl4es patch, add Android Studio dev/testing-cycle instructions,
  and generalize Quest-specific wording to any OpenXR headset. Update
  NOTICE.txt to match (gl4es is now vendored/patched source, not a
  prebuilt binary; add the OpenXR-SDK loader).
This commit is contained in:
ml
2026-08-02 06:27:49 +02:00
parent 2300d081c3
commit d2dc58391b
310 changed files with 141458 additions and 226 deletions
+18
View File
@@ -0,0 +1,18 @@
#!/bin/bash -ux
cd "$(dirname "$0")"
base=../src/
if [ -e yml/gles-1.1-full.yml ]; then rm yml/gles-1.1-full.yml ;fi
touch yml/gles-1.1-full.yml
cat yml/*-1.1.yml >> yml/gles-1.1-full.yml
#gles1=$(ls -1 yml/*-1.1-full.yml | tr '\n' ',' | sed -e 's/,$//')
#gles=$(ls -1 yml/*es-1.1.yml | tr '\n' ',' | sed -e 's/,$//')
#glext=$(ls -1 yml/*ext-1.1.yml | tr '\n' ',' | sed -e 's/,$//')
gles1="yml/gles-1.1-full.yml"
#./gen.py "$gles" gleswrap.c.j2 gleswrap.c gles.h > "$base/gl/wrap/gles.c"
#./gen.py "$glext" glextwrap.c.j2 glextwrap.c gles.h > "$base/gl/wrap/glesext.c"
./gen.py "$gles1" gleswrap.c.j2 gleswrap.c gles.h ../gl4es.h ../loader.h skips.h > "$base/gl/wrap/gles.c"
./gen.py "$gles1" glwrap.h.j2 gleswrap.h ../gles.h > "$base/gl/wrap/gles.h"
./gen.py "$gles1" glxfuncs.j2 glxfuncs.inc ../gl/gl4es.h > "$base/glx/glesfuncs.inc"
+169
View File
@@ -0,0 +1,169 @@
#!/usr/bin/env python
import argparse
import jinja2
import re
from yaml import safe_load
split_re = re.compile(r'^(?P<type>.*?)\s*(?P<name>\w+)$')
env = jinja2.Environment(
trim_blocks=True,
lstrip_blocks=True,
loader=jinja2.FileSystemLoader('template'),
)
def args(args, add_type=True):
return ', '.join(
'{} {}'.format(arg['type'], arg['name']) if add_type else arg['name']
for arg in args
)
f = '0.2f'
printf_lookup = {
'GLbitfield': 'd',
'GLboolean': 'd',
'GLbyte': 'c',
'GLubyte': 'c',
'GLchar': 'c',
'GLdouble': '0.2f',
'GLenum': 'u',
'GLfloat': '0.2f',
'GLint': 'd',
'GLintptr': 'd',
'GLintptrARB': 'd',
'GLshort': 'd',
'GLsizei': 'd',
'GLsizeiptr': 'd',
'GLsizeiptrARB': 'd',
'GLuint': 'u',
'GLushort': 'u',
'GLvoid': 'p',
}
def printf(args):
types = []
for arg in args:
typ = arg['type']
if '*' in typ:
t = 'p'
else:
t = printf_lookup.get(typ, 'p')
types.append(t)
return ', '.join('%' + t for t in types)
def unconst(s):
split = s.split(' ')
while 'const' in split:
split.remove('const')
return ' '.join(split)
env.filters['args'] = args
env.filters['printf'] = printf
env.filters['unconst'] = unconst
def split_arg(arg):
match = split_re.match(arg)
if match:
return match.groupdict()
else:
return {'type': 'unknown', 'name': arg}
def gen(files, template, guard_name, headers,
deep=False, cats=(), ifdef=None, ifndef=None):
funcs = {}
formats = []
unique_formats = set()
for data in files:
if deep and not isinstance(data.values()[0], list):
functions = []
for cat, f in data.items():
if not cats or cat in cats:
functions.extend(f.items())
else:
functions = data.items()
for name, args in sorted(functions):
props = {}
if args:
ret = args.pop(0)
else:
ret = 'void'
loadlib = 'LOAD_GLES'
if name.endswith('_OES_'):
loadlib = 'LOAD_GLES_OES'
name = name[:-5]
elif name.endswith('_EXT_'):
loadlib = 'LOAD_GLES_EXT'
name = name[:-5]
args = [split_arg(arg) for arg in args if not arg == 'void']
if any(arg.get('type') == 'unknown' for arg in args):
continue
if args:
args[0]['first'] = True
args[-1]['last'] = True
for i, arg in enumerate(args):
arg['index'] = i
types = '_'.join(
arg['type'].replace(' ', '_').replace('*', '__GENPT__')
for arg in [{'type': ret}] + args)
props.update({
'return': ret,
'name': name,
'args': args,
'types': types,
'void': ret == 'void',
'loadlib': loadlib,
})
if not types in unique_formats:
unique_formats.add(types)
formats.append(props)
funcs[name] = props
context = {
'functions': [i[1] for i in sorted(funcs.items())],
'formats': formats,
'headers': headers,
'name': guard_name,
'ifdef': ifdef,
'ifndef': ifndef,
}
t = env.get_template(template)
return t.render(**context).rstrip('\n')
if __name__ == '__main__':
parser = argparse.ArgumentParser(description='Generate code with yml/jinja.')
parser.add_argument('yaml', help='spec files')
parser.add_argument('template', help='jinja template to load')
parser.add_argument('name', help='header guard name')
parser.add_argument('headers', nargs='*', help='headers to include')
parser.add_argument('--deep', help='nested definitions', action='store_true')
parser.add_argument('--cats', help='deep category filter')
parser.add_argument('--ifdef', help='wrap with ifdef')
parser.add_argument('--ifndef', help='wrap with ifndef')
args = parser.parse_args()
files = []
for name in args.yaml.split(','):
with open(name) as f:
data = safe_load(f)
if data:
files.append(data)
if args.cats:
cats = args.cats.split(',')
else:
cats = None
print(gen(files, args.template, args.name,
args.headers, args.deep, cats,
args.ifdef, args.ifndef))
+2
View File
@@ -0,0 +1,2 @@
jinja2
pyyaml
@@ -0,0 +1,7 @@
{% if ifdef %}#ifdef {{ ifdef }}
{% endif %}
{% if ifndef %}#ifndef {{ ifndef }}
{% endif %}
{% block main %}{% endblock %}
{% if ifdef %}#endif{% endif %}
{% if ifndef %}#endif{% endif %}
@@ -0,0 +1,13 @@
packed_call_t* glCopyPackedCall(const packed_call_t *packed) {
switch (packed->format) {
{% for f in formats %}
case FORMAT_{{ f.types }}: {
int sizeofpacked = sizeof(PACKED_{{ f.types }});
PACKED_{{ f.types }} *newpacked = (PACKED_{{ f.types }}*)malloc(sizeofpacked);
memcpy(newpacked, packed, sizeofpacked);
return (packed_call_t*)newpacked;
break;
}
{% endfor %}
}
}
@@ -0,0 +1,5 @@
{% if func.args %}
printf("{{ func.name }}({{ func.args|printf }});\n", {{ func.args|args(0) }});
{% else %}
printf("{{ func.name }}();\n");
{% endif %}
@@ -0,0 +1,10 @@
{% extends "base/base.j2" %}
{% block main %}
{% include "base/headers.j2" %}
{% set guard = name.upper().replace('.', '_') -%}
#ifndef {{ guard }}
#define {{ guard }}
{% block content %}{% endblock %}
#endif
{% endblock %}
@@ -0,0 +1,9 @@
{% block headers %}
{% for header in headers %}
{% if "<" in header %}
#include {{ header }}
{% else %}
#include "{{ header }}"
{% endif %}
{% endfor %}
{% endblock %}
@@ -0,0 +1,22 @@
void glIndexedCall(const indexed_call_t *packed, void *ret_v) {
switch (packed->func) {
{% for f in functions %}
#ifndef skip_index_{{ f.name }}
case {{ f.name }}_INDEX: {
INDEXED_{{ f.types }} *unpacked = (INDEXED_{{ f.types }} *)packed;
{% if f.args %}
ARGS_{{ f.types }} args = unpacked->args;
{% endif %}
{% if not f.void %}
{{ f.return }} *ret = ({{ f.return }} *)ret_v;
*ret =
{% endif %}
{{ f.name }}({% for arg in f.args -%}
args.a{{ loop.index }}{% if not arg.last %}, {% endif %}
{% endfor %});
break;
}
#endif
{% endfor %}
}
}
@@ -0,0 +1,16 @@
void glPackedCall(const packed_call_t *packed) {
switch (packed->format) {
{% for f in formats %}
case FORMAT_{{ f.types }}: {
PACKED_{{ f.types }} *unpacked = (PACKED_{{ f.types }} *)packed;
{% if f.args %}
ARGS_{{ f.types }} args = unpacked->args;
{% endif %}
unpacked->func({% for arg in f.args -%}
args.a{{ loop.index }}{% if not arg.last %}, {% endif %}
{% endfor %});
break;
}
{% endfor %}
}
}
@@ -0,0 +1,16 @@
{% extends "base/base.j2" %}
{% block main %}
{% include "base/headers.j2" %}
{% for func in functions %}
{% block definition scoped %}
{{ func.return }} gl4es_{{ func.name }}({{ func.args|args }}) {
{% block load scoped %}{% endblock %}
{% block call scoped %}
{% if not func.void %}return {% endif %}{% block prefix %}wrap{% endblock %}_{{ func.name }}({{ func.args|args(0) }});
{%- endblock %}
}
{{ func.return }} {{ func.name }}({{ func.args|args }}) AliasExport("gl4es_{{ func.name }}");
{% endblock %}
{% endfor %}
{% block content %}{% endblock %}
{% endblock %}
@@ -0,0 +1,65 @@
{% extends "base/header.j2" %}
{% block content %}
typedef struct {
int format;
void *func;
void *args;
} packed_call_t;
typedef struct {
int func;
void *args;
} indexed_call_t;
enum FORMAT {
{% for f in formats %}
FORMAT_{{ f.types }},
{% endfor %}
};
{% for f in formats %}
typedef {{ f.return }} (*FUNC_{{ f.types }})({{ f.args|args }});
{% if f.args %}
typedef struct {
{% for arg in f.args %}
{{ arg.type|unconst }} a{{ loop.index }}{% if arg.type == 'GLdouble' %} __attribute__ ((aligned(8))){% endif %};
{% endfor %}
} ARGS_{{ f.types }};
{% endif %}
typedef struct {
int format;
FUNC_{{ f.types }} func;
{% if f.args %}
ARGS_{{ f.types }} args;
{% endif %}
} PACKED_{{ f.types }};
typedef struct {
int func;
{% if f.args %}
ARGS_{{ f.types }} args;
{% endif %}
} INDEXED_{{ f.types }};
{% endfor %}
extern void glPushCall(void *data);
void glPackedCall(const packed_call_t *packed);
void glIndexedCall(const indexed_call_t *packed, void *ret_v);
packed_call_t* glCopyPackedCall(const packed_call_t *packed);
{% for func in functions %}
#define {{ func.name }}_INDEX {{ loop.index }}
#define {{ func.name }}_RETURN {{ func.return }}
#define {{ func.name }}_ARG_NAMES {{ func.args|args(0) }}
#define {{ func.name }}_ARG_EXPAND {{ func.args|args }}
#define {{ func.name }}_PACKED PACKED_{{ func.types }}
#define {{ func.name }}_INDEXED INDEXED_{{ func.types }}
#define {{ func.name }}_FORMAT FORMAT_{{ func.types }}
{% endfor %}
{% for func in functions %}
{{ func.return }} APIENTRY_GL4ES gl4es_{{ func.name }}({{ func.name }}_ARG_EXPAND);
typedef {{ func.return }} (* APIENTRY_GLES {{ func.name }}_PTR)({{ func.name }}_ARG_EXPAND);
{% endfor %}
{% endblock %}
@@ -0,0 +1,52 @@
{% extends "base/wrap.c.j2" %}
{% block headers %}
#include <sys/syscall.h>
#include <unistd.h>
#include <string.h>
#include <stdio.h>
{{ super() }}
{% endblock %}
{% block main %}
{{ super() }}
snd_config_t *snd_config = NULL;
__GLXextFuncPtr glXGetProcAddressARB(const GLubyte *name) {
{% for func in functions %}
{% if not func.name.startswith('snd_') %}
if (strcmp(name, "{{ func.name }}") == 0) {
return (void *){{ func.name }};
}
{% endif %}
{% endfor %}
printf("glXGetProcAddress(%s) not found\n", name);
return NULL;
}
__GLXextFuncPtr glXGetProcAddress(const GLubyte *name) {
return glXGetProcAddressARB(name);
}
{% endblock %}
{% block definition %}
#if !defined(skip_client_{{ func.name }}) && !defined(skip_index_{{ func.name }})
{{ super() -}}
#endif
{% endblock %}
{% block call %}
{{ func.name }}_INDEXED packed_data;
packed_data.func = {{ func.name }}_INDEX;
{% for arg in func.args %}
packed_data.args.a{{ loop.index }} = ({{ arg.type|unconst }}){{ arg.name }};
{% endfor %}
{% if not func.void %}
{{ func.return }} ret;
syscall(SYS_proxy, (void *)&packed_data, &ret);
return ret;
{% else %}
syscall(SYS_proxy, (void *)&packed_data, NULL);
{% endif %}
{% endblock %}
@@ -0,0 +1,23 @@
{% extends "base/wrap.c.j2" %}
{% block headers %}
{{ super() }}
void *egl_lib;
#define WARN_NULL(name) if (name == NULL) printf("LIBGL: warning, " #name " is NULL\n");
#define LOAD_EGL(type, name, args...) \
typedef type (*eglptr_##name)(args); \
static eglptr_##name egl_##name; \
if (egl##name == NULL) { \
if (egl_lib == NULL) { \
egl_lib = dlopen("libEGL.so", RTLD_LOCAL | RTLD_LAZY); \
WARN_NULL(egl_lib); \
} \
egl_##name = (eglptr_##name)dlsym(egl_lib, #name); \
WARN_NULL(egl_lib_##name); \
} \
{% endblock %}
{% block load %}
LOAD_EGL({{ func.return }}, {{ func.name }}
{%- if func.args %}, {{ func.args|args }}{% endif %});
{% endblock %}
{% block prefix %}egl{% endblock %}
@@ -0,0 +1,29 @@
{% extends "base/wrap.c.j2" %}
{% block headers %}
{{ super() }}
{% endblock %}
{% block content %}
{% include "base/packed_call.j2" %}
/*
{% include "base/copy_packed_call.j2" %}
*/
{% endblock %}
{% block definition %}
#ifndef skip_{{ func.name }}
{{ super() -}}
#endif
{% endblock %}
{% block load %}
{{ func.loadlib }}({{ func.name }});
{% endblock %}
{% block call %}
#ifndef direct_{{ func.name }}
PUSH_IF_COMPILING({{ func.name }})
#endif
{{ super() }}
{% endblock %}
{% block prefix %}gles{% endblock %}
@@ -0,0 +1,20 @@
{% extends "base/wrap.c.j2" %}
{% block headers %}
{{ super() }}
{% endblock %}
{% block definition %}
#ifndef skip_{{ func.name }}
{{ super() -}}
#endif
{% endblock %}
{% block load %}
{{ func.loadlib }}({{ func.name }});
{% endblock %}
{% block call %}
#ifndef direct_{{ func.name }}
PUSH_IF_COMPILING({{ func.name }})
#endif
{{ super() }}
{% endblock %}
{% block prefix %}gles{% endblock %}
@@ -0,0 +1,20 @@
{% extends "base/wrap.h.j2" %}
{% block content %}
{{ super() }}
{% for func in functions %}
#ifndef direct_{{ func.name }}
#define push_{{ func.name }}({{ func.args|args(0) }}) { \
{{ func.name }}_PACKED *packed_data = malloc(sizeof({{ func.name }}_PACKED)); \
packed_data->format = {{ func.name }}_FORMAT; \
packed_data->func = gl4es_{{ func.name }}; \
{% if func.args %}
{% for arg in func.args %}
packed_data->args.a{{ loop.index }} = ({{ arg.type|unconst }}){{ arg.name }}; \
{% endfor %}
{% endif %}
glPushCall((void *)packed_data); \
}
#endif
{% endfor %}
{% endblock %}
@@ -0,0 +1,3 @@
{% for func in functions %}
_EX({{ func.name }});
{% endfor %}
@@ -0,0 +1,6 @@
{% extends "base/header.j2" %}
{% block content %}
{% include "base/indexed_call.j2" %}
{% endblock %}
@@ -0,0 +1 @@
{% extends "base/wrap.h.j2" %}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+112
View File
@@ -0,0 +1,112 @@
#!/usr/bin/env python
from collections import defaultdict
import re
import xml.etree.ElementTree as ET
import yaml
def etna_to_yml(xml):
defs = xml.find('functions')
functions = defaultdict(dict)
for f in defs.findall('function'):
name = f.get('name')
ret = f.find('return')
if ret is not None:
ret = ret.get('type')
if ret is None:
ret = 'void'
params = []
for p in f.findall('param'):
params.append('{} {}'.format(p.get('type'), p.get('name')))
functions[name] = [ret] + params
return functions
def lua_to_yml(xml):
typemap = xml.find('typemap')
types = {}
for t in typemap:
name = t.get('typename')
types[name] = t.get('C-lang', name)
defs = xml.find('functions').find('function-defs')
functions = defaultdict(dict)
for f in defs.findall('function'):
cat = f.get('category')
ret = f.get('return')
ret = types.get(ret, ret)
func = f.get('name')
params = []
for param in f.findall('param'):
typ = param.get('type')
typ = types.get(typ, typ)
name = param.get('name')
kind = param.get('kind')
if kind in ('array', 'reference', 'array[size]'):
typ = typ.rstrip()
if not typ.endswith('*') or kind == 'reference':
typ += ' *'
if not 'const' in typ and param.get('input', 'false') == 'true':
typ = 'const ' + typ
p = '{} {}'.format(typ, name)
p = p.replace('* ', '*')
params.append(p)
args = [ret]
args.extend(params)
functions[cat][func] = args
return functions
def khronos_to_yml(xml):
def extract(node):
return node.findtext('ptype') or node.text, node.findtext('name')
def clean(s):
return re.sub('\s+', ' ', s).strip()
defs = xml.find('commands')
functions = defaultdict(dict)
for f in defs.findall('command'):
proto = f.find('proto')
ret, name = extract(proto)
params = []
for param in f.findall('param'):
params.append(clean(' '.join((param.itertext()))))
functions[name] = [ret] + params
return functions
def to_yml(filename):
with open(filename, 'r') as f:
data = f.read()
data = re.sub(' xmlns="[^"]+"', '', data, count=1)
xml = ET.fromstring(data)
if xml.tag == 'root':
functions = etna_to_yml(xml)
elif xml.tag == 'specification':
functions = lua_to_yml(xml)
elif xml.tag == 'registry':
functions = khronos_to_yml(xml)
else:
print 'unrecognized root tag:', xml.tag
yml = yaml.dump(dict(functions))
with open(filename.replace('xml', 'yml'), 'w') as o:
o.write(yml)
if __name__ == '__main__':
import sys
if len(sys.argv) < 2:
print 'Usage: {} <file.xml> [file.xml...]'.format(sys.argv[0])
sys.exit(1)
for name in sys.argv[1:]:
to_yml(name)
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+108
View File
@@ -0,0 +1,108 @@
eglBindAPI: [EGLBoolean, EGLenum api]
eglBindTexImage: [EGLBoolean, EGLDisplay dpy, EGLSurface surface, EGLint buffer]
eglChooseConfig: [EGLBoolean, EGLDisplay dpy, const EGLint * attrib_list, EGLConfig
* configs, EGLint config_size, EGLint * num_config]
eglClientWaitSyncKHR: [EGLint, EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR
timeout]
eglClientWaitSyncNV: [EGLint, EGLSyncNV sync, EGLint flags, EGLTimeNV timeout]
eglCopyBuffers: [EGLBoolean, EGLDisplay dpy, EGLSurface surface, EGLNativePixmapType
target]
eglCreateContext: [EGLContext, EGLDisplay dpy, EGLConfig config, EGLContext share_context,
const EGLint * attrib_list]
eglCreateDRMImageMESA: [EGLImageKHR, EGLDisplay dpy, const EGLint * attrib_list]
eglCreateFenceSyncNV: [EGLSyncNV, EGLDisplay dpy, EGLenum condition, const EGLint
* attrib_list]
eglCreateImageKHR: [EGLImageKHR, EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer
buffer, const EGLint * attrib_list]
eglCreatePbufferFromClientBuffer: [EGLSurface, EGLDisplay dpy, EGLenum buftype, EGLClientBuffer
buffer, EGLConfig config, const EGLint * attrib_list]
eglCreatePbufferSurface: [EGLSurface, EGLDisplay dpy, EGLConfig config, const EGLint
* attrib_list]
eglCreatePixmapSurface: [EGLSurface, EGLDisplay dpy, EGLConfig config, EGLNativePixmapType
pixmap, const EGLint * attrib_list]
eglCreatePixmapSurfaceHI: [EGLSurface, EGLDisplay dpy, EGLConfig config, struct EGLClientPixmapHI
* pixmap]
eglCreateStreamFromFileDescriptorKHR: [EGLStreamKHR, EGLDisplay dpy, EGLNativeFileDescriptorKHR
file_descriptor]
eglCreateStreamKHR: [EGLStreamKHR, EGLDisplay dpy, const EGLint * attrib_list]
eglCreateStreamProducerSurfaceKHR: [EGLSurface, EGLDisplay dpy, EGLConfig config,
EGLStreamKHR stream, const EGLint * attrib_list]
eglCreateSyncKHR: [EGLSyncKHR, EGLDisplay dpy, EGLenum type, const EGLint * attrib_list]
eglCreateWindowSurface: [EGLSurface, EGLDisplay dpy, EGLConfig config, EGLNativeWindowType
win, const EGLint * attrib_list]
eglDestroyContext: [EGLBoolean, EGLDisplay dpy, EGLContext ctx]
eglDestroyImageKHR: [EGLBoolean, EGLDisplay dpy, EGLImageKHR image]
eglDestroyStreamKHR: [EGLBoolean, EGLDisplay dpy, EGLStreamKHR stream]
eglDestroySurface: [EGLBoolean, EGLDisplay dpy, EGLSurface surface]
eglDestroySyncKHR: [EGLBoolean, EGLDisplay dpy, EGLSyncKHR sync]
eglDestroySyncNV: [EGLBoolean, EGLSyncNV sync]
eglDupNativeFenceFDANDROID: [EGLint, EGLDisplay dpy, EGLSyncKHR sync]
eglExportDRMImageMESA: [EGLBoolean, EGLDisplay dpy, EGLImageKHR image, EGLint * name,
EGLint * handle, EGLint * stride]
eglFenceNV: [EGLBoolean, EGLSyncNV sync]
eglGetConfigAttrib: [EGLBoolean, EGLDisplay dpy, EGLConfig config, EGLint attribute,
EGLint * value]
eglGetConfigs: [EGLBoolean, EGLDisplay dpy, EGLConfig * configs, EGLint config_size,
EGLint * num_config]
eglGetCurrentContext: [EGLContext]
eglGetCurrentDisplay: [EGLDisplay]
eglGetCurrentSurface: [EGLSurface, EGLint readdraw]
eglGetDisplay: [EGLDisplay, EGLNativeDisplayType display_id]
eglGetError: [EGLint]
eglGetProcAddress: [__eglMustCastToProperFunctionPointerType, const char * procname]
eglGetStreamFileDescriptorKHR: [EGLNativeFileDescriptorKHR, EGLDisplay dpy, EGLStreamKHR
stream]
eglGetSyncAttribKHR: [EGLBoolean, EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute,
EGLint * value]
eglGetSyncAttribNV: [EGLBoolean, EGLSyncNV sync, EGLint attribute, EGLint * value]
eglGetSystemTimeFrequencyNV: [EGLuint64NV]
eglGetSystemTimeNV: [EGLuint64NV]
eglInitialize: [EGLBoolean, EGLDisplay dpy, EGLint * major, EGLint * minor]
eglLockSurfaceKHR: [EGLBoolean, EGLDisplay display, EGLSurface surface, const EGLint
* attrib_list]
eglMakeCurrent: [EGLBoolean, EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext
ctx]
eglPostSubBufferNV: [EGLBoolean, EGLDisplay dpy, EGLSurface surface, EGLint x, EGLint
y, EGLint width, EGLint height]
eglQueryAPI: [EGLenum]
eglQueryContext: [EGLBoolean, EGLDisplay dpy, EGLContext ctx, EGLint attribute, EGLint
* value]
eglQueryNativeDisplayNV: [EGLBoolean, EGLDisplay dpy, EGLNativeDisplayType * display_id]
eglQueryNativePixmapNV: [EGLBoolean, EGLDisplay dpy, EGLSurface surf, EGLNativePixmapType
* pixmap]
eglQueryNativeWindowNV: [EGLBoolean, EGLDisplay dpy, EGLSurface surf, EGLNativeWindowType
* window]
eglQueryStreamKHR: [EGLBoolean, EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute,
EGLint * value]
eglQueryStreamTimeKHR: [EGLBoolean, EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute,
EGLTimeKHR * value]
eglQueryStreamu64KHR: [EGLBoolean, EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute,
EGLuint64KHR * value]
eglQueryString: [const char *, EGLDisplay dpy, EGLint name]
eglQuerySurface: [EGLBoolean, EGLDisplay dpy, EGLSurface surface, EGLint attribute,
EGLint * value]
eglQuerySurfacePointerANGLE: [EGLBoolean, EGLDisplay dpy, EGLSurface surface, EGLint
attribute, void ** value]
eglReleaseTexImage: [EGLBoolean, EGLDisplay dpy, EGLSurface surface, EGLint buffer]
eglReleaseThread: [EGLBoolean]
eglSetBlobCacheFuncsANDROID: ['void ', EGLDisplay dpy, EGLSetBlobFuncANDROID set,
EGLGetBlobFuncANDROID get]
eglSignalSyncKHR: [EGLBoolean, EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode]
eglSignalSyncNV: [EGLBoolean, EGLSyncNV sync, EGLenum mode]
eglStreamAttribKHR: [EGLBoolean, EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute,
EGLint value]
eglStreamConsumerAcquireKHR: [EGLBoolean, EGLDisplay dpy, EGLStreamKHR stream]
eglStreamConsumerGLTextureExternalKHR: [EGLBoolean, EGLDisplay dpy, EGLStreamKHR stream]
eglStreamConsumerReleaseKHR: [EGLBoolean, EGLDisplay dpy, EGLStreamKHR stream]
eglSurfaceAttrib: [EGLBoolean, EGLDisplay dpy, EGLSurface surface, EGLint attribute,
EGLint value]
eglSwapBuffers: [EGLBoolean, EGLDisplay dpy, EGLSurface surface]
eglSwapBuffersWithDamageEXT: [EGLBoolean, EGLDisplay dpy, EGLSurface surface, EGLint
* rects, EGLint n_rects]
eglSwapInterval: [EGLBoolean, EGLDisplay dpy, EGLint interval]
eglTerminate: [EGLBoolean, EGLDisplay dpy]
eglUnlockSurfaceKHR: [EGLBoolean, EGLDisplay display, EGLSurface surface]
eglWaitClient: [EGLBoolean]
eglWaitGL: [EGLBoolean]
eglWaitNative: [EGLBoolean, EGLint engine]
eglWaitSyncKHR: [EGLint, EGLDisplay dpy, EGLSyncKHR sync, EGLint flags]
+148
View File
@@ -0,0 +1,148 @@
#GLES 1.1 Core
glActiveTexture: [void, GLenum texture]
glAlphaFunc: [void, GLenum func, GLclampf ref]
glAlphaFuncx: [void, GLenum func, GLclampx ref]
glBindBuffer: [void, GLenum target, GLuint buffer]
glBindTexture: [void, GLenum target, GLuint texture]
glBlendFunc: [void, GLenum sfactor, GLenum dfactor]
glBufferData: [void, GLenum target, GLsizeiptr size, "const GLvoid *data", GLenum usage]
glBufferSubData: [void, GLenum target, GLintptr offset, GLsizeiptr size, "const GLvoid *data"]
glClear: [void, GLbitfield mask]
glClearColor: [void, GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha]
glClearColorx: [void, GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha]
glClearDepthf: [void, GLclampf depth]
glClearDepthx: [void, GLclampx depth]
glClearStencil: [void, GLint s]
glClientActiveTexture: [void, GLenum texture]
glClipPlanef: [void, GLenum plane, "const GLfloat *equation"]
glClipPlanex: [void, GLenum plane, "const GLfixed *equation"]
glColor4f: [void, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha]
glColor4ub: [void, GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha]
glColor4x: [void, GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha]
glColorMask: [void, GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha]
glColorPointer: [void, GLint size, GLenum type, GLsizei stride, "const GLvoid *pointer"]
glCompressedTexImage2D: [void, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, "const GLvoid *data"]
glCompressedTexSubImage2D: [void, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, "const GLvoid *data"]
glCopyTexImage2D: [void, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border]
glCopyTexSubImage2D: [void, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height]
glCullFace: [void, GLenum mode]
glDeleteBuffers: [void, GLsizei n, "const GLuint *buffers"]
glDeleteTextures: [void, GLsizei n, "const GLuint *textures"]
glDepthFunc: [void, GLenum func]
glDepthMask: [void, GLboolean flag]
glDepthRangef: [void, GLclampf near, GLclampf far]
glDepthRangex: [void, GLclampx near, GLclampx far]
glDisable: [void, GLenum cap]
glDisableClientState: [void, GLenum array]
glDisableClientState: [void, GLenum array]
glDrawArrays: [void, GLenum mode, GLint first, GLsizei count]
glDrawElements: [void, GLenum mode, GLsizei count, GLenum type, "const GLvoid *indices"]
glEnable: [void, GLenum cap]
glEnableClientState: [void, GLenum array]
glEnableClientState: [void, GLenum array]
glFinish: [void, void]
glFlush: [void, void]
glFogf: [void, GLenum pname, GLfloat param]
glFogfv: [void, GLenum pname, "const GLfloat *params"]
glFogx: [void, GLenum pname, GLfixed param]
glFogxv: [void, GLenum pname, "const GLfixed *params"]
glFrontFace: [void, GLenum mode]
glFrustumf: [void, GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat near, GLfloat far]
glFrustumx: [void, GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed near, GLfixed far]
glGenBuffers: [void, GLsizei n, "GLuint *buffers"]
glGenTextures: [void, GLsizei n, "GLuint *textures"]
glGetBooleanv: [void, GLenum pname, "GLboolean *params"]
glGetBufferParameteriv: [void, GLenum target, GLenum pname, "GLint *params"]
glGetClipPlanef: [void, GLenum plane, "GLfloat *equation"]
glGetClipPlanex: [void, GLenum plane, "GLfixed *equation"]
glGetError: [GLenum, void]
glGetFixedv: [void, GLenum pname, "GLfixed *params"]
glGetFloatv: [void, GLenum pname, "GLfloat *params"]
glGetIntegerv: [void, GLenum pname, "GLint *params"]
glGetLightfv: [void, GLenum light, GLenum pname, "GLfloat *params"]
glGetLightxv: [void, GLenum light, GLenum pname, "GLfixed *params"]
glGetMaterialfv: [void, GLenum face, GLenum pname, "GLfloat *params"]
glGetMaterialxv: [void, GLenum face, GLenum pname, "GLfixed *params"]
glGetPointerv: [void, GLenum pname, "GLvoid **params"]
glGetString: [const GLubyte *, GLenum name]
glGetTexEnvfv: [void, GLenum target, GLenum pname, "GLfloat *params"]
glGetTexEnviv: [void, GLenum target, GLenum pname, "GLint *params"]
glGetTexEnvxv: [void, GLenum target, GLenum pname, "GLfixed *params"]
glGetTexParameterfv: [void, GLenum target, GLenum pname, "GLfloat *params"]
glGetTexParameteriv: [void, GLenum target, GLenum pname, "GLint *params"]
glGetTexParameterxv: [void, GLenum target, GLenum pname, "GLfixed *params"]
glHint: [void, GLenum target, GLenum mode]
glIsBuffer: [GLboolean, GLuint buffer]
glIsEnabled: [GLboolean, GLenum cap]
glIsTexture: [GLboolean, GLuint texture]
glLightf: [void, GLenum light, GLenum pname, GLfloat param]
glLightfv: [void, GLenum light, GLenum pname, "const GLfloat *params"]
glLightModelf: [void, GLenum pname, GLfloat param]
glLightModelfv: [void, GLenum pname, "const GLfloat *params"]
glLightModelx: [void, GLenum pname, GLfixed param]
glLightModelxv: [void, GLenum pname, "const GLfixed *params"]
glLightx: [void, GLenum light, GLenum pname, GLfixed param]
glLightxv: [void, GLenum light, GLenum pname, "const GLfixed *params"]
glLineWidth: [void, GLfloat width]
glLineWidthx: [void, GLfixed width]
glLoadIdentity: [void, void]
glLoadMatrixf: [void, "const GLfloat *m"]
glLoadMatrixx: [void, "const GLfixed *m"]
glLogicOp: [void, GLenum opcode]
glMaterialf: [void, GLenum face, GLenum pname, GLfloat param]
glMaterialfv: [void, GLenum face, GLenum pname, "const GLfloat *params"]
glMaterialx: [void, GLenum face, GLenum pname, GLfixed param]
glMaterialxv: [void, GLenum face, GLenum pname, "const GLfixed *params"]
glMatrixMode: [void, GLenum mode]
glMultiTexCoord4f: [void, GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q]
glMultiTexCoord4x: [void, GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q]
glMultMatrixf: [void, "const GLfloat *m"]
glMultMatrixx: [void, "const GLfixed *m"]
glNormal3f: [void, GLfloat nx, GLfloat ny, GLfloat nz]
glNormal3x: [void, GLfixed nx, GLfixed ny, GLfixed nz]
glNormalPointer: [void, GLenum type, GLsizei stride, "const GLvoid *pointer"]
glOrthof: [void, GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat near, GLfloat far]
glOrthox: [void, GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed near, GLfixed far]
glPixelStorei: [void, GLenum pname, GLint param]
glPointParameterf: [void, GLenum pname, GLfloat param]
glPointParameterfv: [void, GLenum pname, "const GLfloat *params"]
glPointParameterx: [void, GLenum pname, GLfixed param]
glPointParameterxv: [void, GLenum pname, "const GLfixed *params"]
glPointSize: [void, GLfloat size]
glPointSizePointerOES: [void, GLenum type, GLsizei stride, "const GLvoid *pointer"]
glPointSizex: [void, GLfixed size]
glPolygonOffset: [void, GLfloat factor, GLfloat units]
glPolygonOffsetx: [void, GLfixed factor, GLfixed units]
glPopMatrix: [void, void]
glPushMatrix: [void, void]
glReadPixels: [void, GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, "GLvoid *pixels"]
glRotatef: [void, GLfloat angle, GLfloat x, GLfloat y, GLfloat z]
glRotatex: [void, GLfixed angle, GLfixed x, GLfixed y, GLfixed z]
glSampleCoverage: [void, GLclampf value, GLboolean invert]
glSampleCoveragex: [void, GLclampx value, GLboolean invert]
glScalef: [void, GLfloat x, GLfloat y, GLfloat z]
glScalex: [void, GLfixed x, GLfixed y, GLfixed z]
glScissor: [void, GLint x, GLint y, GLsizei width, GLsizei height]
glShadeModel: [void, GLenum mode]
glStencilFunc: [void, GLenum func, GLint ref, GLuint mask]
glStencilMask: [void, GLuint mask]
glStencilOp: [void, GLenum fail, GLenum zfail, GLenum zpass]
glTexCoordPointer: [void, GLint size, GLenum type, GLsizei stride, "const GLvoid *pointer"]
glTexEnvf: [void, GLenum target, GLenum pname, GLfloat param]
glTexEnvfv: [void, GLenum target, GLenum pname, "const GLfloat *params"]
glTexEnvi: [void, GLenum target, GLenum pname, GLint param]
glTexEnviv: [void, GLenum target, GLenum pname, "const GLint *params"]
glTexEnvx: [void, GLenum target, GLenum pname, GLfixed param]
glTexEnvxv: [void, GLenum target, GLenum pname, "const GLfixed *params"]
glTexImage2D: [void, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, "const GLvoid *data"]
glTexParameterf: [void, GLenum target, GLenum pname, GLfloat param]
glTexParameterfv: [void, GLenum target, GLenum pname, "const GLfloat *params"]
glTexParameteri: [void, GLenum target, GLenum pname, GLint param]
glTexParameteriv: [void, GLenum target, GLenum pname, "const GLint *params"]
glTexParameterx: [void, GLenum target, GLenum pname, GLfixed param]
glTexParameterxv: [void, GLenum target, GLenum pname, "const GLfixed *params"]
glTexSubImage2D: [void, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, "const GLvoid *data"]
glTranslatef: [void, GLfloat x, GLfloat y, GLfloat z]
glTranslatex: [void, GLfixed x, GLfixed y, GLfixed z]
glVertexPointer: [void, GLint size, GLenum type, GLsizei stride, "const GLvoid *pointer"]
glViewport: [void, GLint x, GLint y, GLsizei width, GLsizei height]
+169
View File
@@ -0,0 +1,169 @@
glActiveTexture: [void, GLenum texture]
glAttachShader: [void, GLuint program, GLuint shader]
glBindAttribLocation: [void, GLuint program, GLuint index, const GLchar * name]
glBindBuffer: [void, GLenum target, GLuint buffer]
glBindFramebuffer: [void, GLenum target, GLuint framebuffer]
glBindRenderbuffer: [void, GLenum target, GLuint renderbuffer]
glBindTexture: [void, GLenum target, GLuint texture]
glBlendColor: [void, GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha]
glBlendEquation: [void, GLenum mode]
glBlendEquationSeparate: [void, GLenum modeRGB, GLenum modeA]
glBlendFunc: [void, GLenum sfactor, GLenum dfactor]
glBlendFuncSeparate: [void, GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha,
GLenum dfactorAlpha]
glBufferData: [void, GLenum target, GLsizeiptr size, const GLvoid * data, GLenum usage]
glBufferSubData: [void, GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid
* data]
glCheckFramebufferStatus: [GLenum, GLenum target]
glClear: [void, GLbitfield mask]
glClearColor: [void, GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha]
glClearDepthf: [void, GLclampf depth]
glClearStencil: [void, GLint s]
glColorMask: [void, GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha]
glCompileShader: [void, GLuint shader]
glCompressedTexImage2D: [void, GLenum target, GLint level, GLenum internalformat,
GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid * data]
glCompressedTexSubImage2D: [void, GLenum target, GLint level, GLint xoffset, GLint
yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const
GLvoid * data]
glCopyTexImage2D: [void, GLenum target, GLint level, GLenum internalformat, GLint
x, GLint y, GLsizei width, GLsizei height, GLint border]
glCopyTexSubImage2D: [void, GLenum target, GLint level, GLint xoffset, GLint yoffset,
GLint x, GLint y, GLsizei width, GLsizei height]
glCreateProgram: [GLuint]
glCreateShader: [GLuint, GLenum type]
glCullFace: [void, GLenum mode]
glDeleteBuffers: [void, GLsizei n, const GLuint * buffer]
glDeleteFramebuffers: [void, GLsizei n, const GLuint * framebuffers]
glDeleteProgram: [void, GLuint program]
glDeleteRenderbuffers: [void, GLsizei n, const GLuint * renderbuffers]
glDeleteShader: [void, GLuint program]
glDeleteTextures: [void, GLsizei n, const GLuint * textures]
glDepthFunc: [void, GLenum func]
glDepthMask: [void, GLboolean flag]
glDepthRangef: [void, GLclampf zNear, GLclampf zFar]
glDetachShader: [void, GLuint program, GLuint shader]
glDisable: [void, GLenum cap]
glDisableVertexAttribArray: [void, GLuint index]
glDrawArrays: [void, GLenum mode, GLint first, GLsizei count]
glDrawElements: [void, GLenum mode, GLsizei count, GLenum type, const GLvoid * indices]
glEnable: [void, GLenum cap]
glEnableVertexAttribArray: [void, GLuint index]
glFinish: [void]
glFlush: [void]
glFramebufferRenderbuffer: [void, GLenum target, GLenum attachment, GLenum renderbuffertarget,
GLuint renderbuffer]
glFramebufferTexture2D: [void, GLenum target, GLenum attachment, GLenum textarget,
GLuint texture, GLint level]
glFrontFace: [void, GLenum mode]
glGenBuffers: [void, GLsizei n, GLuint * buffer]
glGenFramebuffers: [void, GLsizei n, GLuint * framebuffers]
glGenRenderbuffers: [void, GLsizei n, GLuint * renderbuffers]
glGenTextures: [void, GLsizei n, GLuint * textures]
glGenerateMipmap: [void, GLenum target]
glGetActiveAttrib: [void, GLuint program, GLuint index, GLsizei bufSize, GLsizei *
length, GLint * size, GLenum * type, GLchar * name]
glGetActiveUniform: [void, GLuint program, GLuint index, GLsizei bufSize, GLsizei
* length, GLint * size, GLenum * type, GLchar * name]
glGetAttachedShaders: [void, GLuint program, GLsizei maxCount, GLsizei * count, GLuint
* obj]
glGetAttribLocation: [GLint, GLuint program, const GLchar * name]
glGetBooleanv: [void, GLenum pname, GLboolean * params]
glGetBufferParameteriv: [void, GLenum target, GLenum pname, GLint * params]
glGetError: [GLenum]
glGetFloatv: [void, GLenum pname, GLfloat * params]
glGetFramebufferAttachmentParameteriv: [void, GLenum target, GLenum attachment, GLenum
pname, GLint * params]
glGetIntegerv: [void, GLenum pname, GLint * params]
glGetProgramInfoLog: [void, GLuint program, GLsizei bufSize, GLsizei * length, GLchar
* infoLog]
glGetProgramiv: [void, GLuint program, GLenum pname, GLint * params]
glGetRenderbufferParameteriv: [void, GLenum target, GLenum pname, GLint * params]
glGetShaderInfoLog: [void, GLuint shader, GLsizei bufSize, GLsizei * length, GLchar
* infoLog]
glGetShaderPrecisionFormat: [void, GLenum shadertype, GLenum precisiontype, GLint
* range, GLint * precision]
glGetShaderSource: [void, GLuint shader, GLsizei bufSize, GLsizei * length, GLchar
* source]
glGetShaderiv: [void, GLuint shader, GLenum pname, GLint * params]
glGetString: [const GLubyte *, GLenum name]
glGetTexParameterfv: [void, GLenum target, GLenum pname, GLfloat * params]
glGetTexParameteriv: [void, GLenum target, GLenum pname, GLint * params]
glGetUniformLocation: [GLint, GLuint program, const GLchar * name]
glGetUniformfv: [void, GLuint program, GLint location, GLfloat * params]
glGetUniformiv: [void, GLuint program, GLint location, GLint * params]
glGetVertexAttribPointerv: [void, GLuint index, GLenum pname, GLvoid ** pointer]
glGetVertexAttribfv: [void, GLuint index, GLenum pname, GLfloat * params]
glGetVertexAttribiv: [void, GLuint index, GLenum pname, GLint * params]
glHint: [void, GLenum target, GLenum mode]
glIsBuffer: [GLboolean, GLuint buffer]
glIsEnabled: [GLboolean, GLenum cap]
glIsFramebuffer: [GLboolean, GLuint framebuffer]
glIsProgram: [GLboolean, GLuint program]
glIsRenderbuffer: [GLboolean, GLuint renderbuffer]
glIsShader: [GLboolean, GLuint shader]
glIsTexture: [GLboolean, GLuint texture]
glLineWidth: [void, GLfloat width]
glLinkProgram: [void, GLuint program]
glPixelStorei: [void, GLenum pname, GLint param]
glPolygonOffset: [void, GLfloat factor, GLfloat units]
glReadPixels: [void, GLint x, GLint y, GLsizei width, GLsizei height, GLenum format,
GLenum type, GLvoid * pixels]
glReleaseShaderCompiler: [void]
glRenderbufferStorage: [void, GLenum target, GLenum internalformat, GLsizei width,
GLsizei height]
glSampleCoverage: [void, GLclampf value, GLboolean invert]
glScissor: [void, GLint x, GLint y, GLsizei width, GLsizei height]
glShaderBinary: [void, GLsizei n, const GLuint * shaders, GLenum binaryformat, const
GLvoid * binary, GLsizei length]
glShaderSource: [void, GLuint shader, GLsizei count, const GLchar * const * string,
const GLint * length]
glStencilFunc: [void, GLenum func, GLint ref, GLuint mask]
glStencilFuncSeparate: [void, GLenum face, GLenum func, GLint ref, GLuint mask]
glStencilMask: [void, GLuint mask]
glStencilMaskSeparate: [void, GLenum face, GLuint mask]
glStencilOp: [void, GLenum fail, GLenum zfail, GLenum zpass]
glStencilOpSeparate: [void, GLenum face, GLenum sfail, GLenum zfail, GLenum zpass]
glTexImage2D: [void, GLenum target, GLint level, GLint internalformat, GLsizei width,
GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid * pixels]
glTexParameterf: [void, GLenum target, GLenum pname, GLfloat param]
glTexParameterfv: [void, GLenum target, GLenum pname, const GLfloat * params]
glTexParameteri: [void, GLenum target, GLenum pname, GLint param]
glTexParameteriv: [void, GLenum target, GLenum pname, const GLint * params]
glTexSubImage2D: [void, GLenum target, GLint level, GLint xoffset, GLint yoffset,
GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels]
glUniform1f: [void, GLint location, GLfloat v0]
glUniform1fv: [void, GLint location, GLsizei count, const GLfloat * value]
glUniform1i: [void, GLint location, GLint v0]
glUniform1iv: [void, GLint location, GLsizei count, const GLint * value]
glUniform2f: [void, GLint location, GLfloat v0, GLfloat v1]
glUniform2fv: [void, GLint location, GLsizei count, const GLfloat * value]
glUniform2i: [void, GLint location, GLint v0, GLint v1]
glUniform2iv: [void, GLint location, GLsizei count, const GLint * value]
glUniform3f: [void, GLint location, GLfloat v0, GLfloat v1, GLfloat v2]
glUniform3fv: [void, GLint location, GLsizei count, const GLfloat * value]
glUniform3i: [void, GLint location, GLint v0, GLint v1, GLint v2]
glUniform3iv: [void, GLint location, GLsizei count, const GLint * value]
glUniform4f: [void, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3]
glUniform4fv: [void, GLint location, GLsizei count, const GLfloat * value]
glUniform4i: [void, GLint location, GLint v0, GLint v1, GLint v2, GLint v3]
glUniform4iv: [void, GLint location, GLsizei count, const GLint * value]
glUniformMatrix2fv: [void, GLint location, GLsizei count, GLboolean transpose, const
GLfloat * value]
glUniformMatrix3fv: [void, GLint location, GLsizei count, GLboolean transpose, const
GLfloat * value]
glUniformMatrix4fv: [void, GLint location, GLsizei count, GLboolean transpose, const
GLfloat * value]
glUseProgram: [void, GLuint program]
glValidateProgram: [void, GLuint program]
glVertexAttrib1f: [void, GLuint index, GLfloat x]
glVertexAttrib1fv: [void, GLuint index, const GLfloat * v]
glVertexAttrib2f: [void, GLuint index, GLfloat x, GLfloat y]
glVertexAttrib2fv: [void, GLuint index, const GLfloat * v]
glVertexAttrib3f: [void, GLuint index, GLfloat x, GLfloat y, GLfloat z]
glVertexAttrib3fv: [void, GLuint index, const GLfloat * v]
glVertexAttrib4f: [void, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w]
glVertexAttrib4fv: [void, GLuint index, const GLfloat * v]
glVertexAttribPointer: [void, GLuint index, GLint size, GLenum type, GLboolean normalized,
GLsizei stride, const GLvoid * pointer]
glViewport: [void, GLint x, GLint y, GLsizei width, GLsizei height]
+36
View File
@@ -0,0 +1,36 @@
#GLES 1.1 Extensions (might be GLES 2.0 Core)
glBlendColor_OES_: [void, GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha]
glBlendEquation_OES_: [void, GLenum mode]
glBlendEquationSeparate_OES_: [void, GLenum modeRGB, GLenum modeA]
glBlendFuncSeparate_OES_: [void, GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha]
# glTexGenfOES_OES_: [void, GLenum coord, GLenum pname, GLfloat param]
glTexGenfv_OES_: [void, GLenum coord, GLenum pname, "const GLfloat *params"]
glTexGeni_OES_: [void, GLenum coord, GLenum pname, GLint param]
# glTexGenivOES_OES_: [void, GLenum coord, GLenum pname, "const GLint *params"]
glGenFramebuffers_OES_: [void, GLsizei n, "GLuint *ids"]
glDeleteFramebuffers_OES_: [void, GLsizei n, "GLuint *framebuffers"]
glIsFramebuffer_OES_: [GLboolean, GLuint framebuffer]
glCheckFramebufferStatus_OES_: [GLenum, GLenum target]
glBindFramebuffer_OES_: [void, GLenum target, GLuint framebuffer]
glFramebufferTexture2D_OES_: [void, GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level]
glGenRenderbuffers_OES_: [void, GLsizei n, "GLuint *renderbuffers"]
glFramebufferRenderbuffer_OES_: [void, GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer]
glDeleteRenderbuffers_OES_: [void, GLsizei n, "GLuint *renderbuffers"]
glRenderbufferStorage_OES_: [void, GLenum target, GLenum internalformat, GLsizei width, GLsizei height]
glBindRenderbuffer_OES_: [void, GLenum target, GLuint renderbuffer]
glIsRenderbuffer_OES_: [GLboolean, GLuint renderbuffer]
glGenerateMipmap_OES_: [void, GLenum target]
glGetFramebufferAttachmentParameteriv_OES_: [void, GLenum target, GLenum attachment, GLenum pname, "GLint *params"]
glGetRenderbufferParameteriv_OES_: [void, GLenum target, GLenum pname, "GLint * params"]
glDrawTexi_OES_: [void, GLint x, GLint y, GLint z, GLint width, GLint height]
glDrawTexf_OES_: [void, GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height]
glMultiDrawArrays_OES_: [void, GLenum mode, "const GLint *first", "const GLsizei *count", GLsizei primcount]
glMultiDrawElements_OES_: [void, GLenum mode, "GLsizei *count", GLenum type, "const void * const *indices", GLsizei primcount]
glGetProgramBinary_OES_ : [void, GLuint program, GLsizei bufSize, "GLsizei *length", "GLenum *binaryFormat", "GLvoid *binary"]
glProgramBinary_OES_ : [void, GLuint program, GLenum binaryFormat, "const GLvoid *binary", GLint length]
glDrawBuffers_EXT_ : [void, GLsizei n, "const GLenum *bufs"]
@@ -0,0 +1,93 @@
#GLES 2.0 Core (minus GLES 1.1 core+ext functions)
glAttachShader: [void, GLuint program, GLuint shader]
glBindAttribLocation: [void, GLuint program, GLuint index, const GLchar * name]
glBindBuffer: [void, GLenum target, GLuint buffer]
glBufferData: [void, GLenum target, GLsizeiptr size, const GLvoid * data, GLenum usage]
glBufferSubData: [void, GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid
* data]
glCompileShader: [void, GLuint shader]
glCreateProgram: [GLuint]
glCreateShader: [GLuint, GLenum type]
glDeleteBuffers: [void, GLsizei n, const GLuint * buffer]
glDeleteProgram: [void, GLuint program]
glDeleteShader: [void, GLuint shader]
glDetachShader: [void, GLuint program, GLuint shader]
glDisableVertexAttribArray: [void, GLuint index]
glEnableVertexAttribArray: [void, GLuint index]
glGenBuffers: [void, GLsizei n, GLuint * buffer]
glGetActiveAttrib: [void, GLuint program, GLuint index, GLsizei bufSize, GLsizei *
length, GLint * size, GLenum * type, GLchar * name]
glGetActiveUniform: [void, GLuint program, GLuint index, GLsizei bufSize, GLsizei
* length, GLint * size, GLenum * type, GLchar * name]
glGetAttachedShaders: [void, GLuint program, GLsizei maxCount, GLsizei * count, GLuint
* obj]
glGetAttribLocation: [GLint, GLuint program, const GLchar * name]
glGetBufferParameteriv: [void, GLenum target, GLenum pname, GLint * params]
glGetProgramInfoLog: [void, GLuint program, GLsizei bufSize, GLsizei * length, GLchar
* infoLog]
glGetProgramiv: [void, GLuint program, GLenum pname, GLint * params]
glGetShaderInfoLog: [void, GLuint shader, GLsizei bufSize, GLsizei * length, GLchar
* infoLog]
glGetShaderPrecisionFormat: [void, GLenum shadertype, GLenum precisiontype, GLint
* range, GLint * precision]
glGetShaderSource: [void, GLuint shader, GLsizei bufSize, GLsizei * length, GLchar
* source]
glGetShaderiv: [void, GLuint shader, GLenum pname, GLint * params]
glGetUniformLocation: [GLint, GLuint program, const GLchar * name]
glGetUniformfv: [void, GLuint program, GLint location, GLfloat * params]
glGetUniformiv: [void, GLuint program, GLint location, GLint * params]
glGetVertexAttribPointerv: [void, GLuint index, GLenum pname, GLvoid ** pointer]
glGetVertexAttribfv: [void, GLuint index, GLenum pname, GLfloat * params]
glGetVertexAttribiv: [void, GLuint index, GLenum pname, GLint * params]
glIsBuffer: [GLboolean, GLuint buffer]
glIsProgram: [GLboolean, GLuint program]
glIsShader: [GLboolean, GLuint shader]
glLinkProgram: [void, GLuint program]
glReleaseShaderCompiler: [void]
glShaderBinary: [void, GLsizei n, const GLuint * shaders, GLenum binaryformat, const
GLvoid * binary, GLsizei length]
glShaderSource: [void, GLuint shader, GLsizei count, const GLchar * const * string,
const GLint * length]
glStencilFuncSeparate: [void, GLenum face, GLenum func, GLint ref, GLuint mask]
glStencilMaskSeparate: [void, GLenum face, GLuint mask]
glStencilOpSeparate: [void, GLenum face, GLenum sfail, GLenum zfail, GLenum zpass]
glUniform1f: [void, GLint location, GLfloat v0]
glUniform1fv: [void, GLint location, GLsizei count, const GLfloat * value]
glUniform1i: [void, GLint location, GLint v0]
glUniform1iv: [void, GLint location, GLsizei count, const GLint * value]
glUniform2f: [void, GLint location, GLfloat v0, GLfloat v1]
glUniform2fv: [void, GLint location, GLsizei count, const GLfloat * value]
glUniform2i: [void, GLint location, GLint v0, GLint v1]
glUniform2iv: [void, GLint location, GLsizei count, const GLint * value]
glUniform3f: [void, GLint location, GLfloat v0, GLfloat v1, GLfloat v2]
glUniform3fv: [void, GLint location, GLsizei count, const GLfloat * value]
glUniform3i: [void, GLint location, GLint v0, GLint v1, GLint v2]
glUniform3iv: [void, GLint location, GLsizei count, const GLint * value]
glUniform4f: [void, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3]
glUniform4fv: [void, GLint location, GLsizei count, const GLfloat * value]
glUniform4i: [void, GLint location, GLint v0, GLint v1, GLint v2, GLint v3]
glUniform4iv: [void, GLint location, GLsizei count, const GLint * value]
glUniformMatrix2fv: [void, GLint location, GLsizei count, GLboolean transpose, const
GLfloat * value]
glUniformMatrix3fv: [void, GLint location, GLsizei count, GLboolean transpose, const
GLfloat * value]
glUniformMatrix4fv: [void, GLint location, GLsizei count, GLboolean transpose, const
GLfloat * value]
glUseProgram: [void, GLuint program]
glValidateProgram: [void, GLuint program]
glVertexAttrib1f: [void, GLuint index, GLfloat x]
glVertexAttrib1fv: [void, GLuint index, const GLfloat * v]
glVertexAttrib2f: [void, GLuint index, GLfloat x, GLfloat y]
glVertexAttrib2fv: [void, GLuint index, const GLfloat * v]
glVertexAttrib3f: [void, GLuint index, GLfloat x, GLfloat y, GLfloat z]
glVertexAttrib3fv: [void, GLuint index, const GLfloat * v]
glVertexAttrib4f: [void, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w]
glVertexAttrib4fv: [void, GLuint index, const GLfloat * v]
glVertexAttribPointer: [void, GLuint index, GLint size, GLenum type, GLboolean normalized,
GLsizei stride, const GLvoid * pointer]
#Other function, probably in no GLES version
glFogCoordf: [void, GLfloat coord]
glFogCoordfv: [void, const GLfloat * coord]
glFogCoordPointer: [void, GLenum type, GLsizei stride, const GLvoid * pointer]
+68
View File
@@ -0,0 +1,68 @@
glx:
glXBindHyperpipeSGIX: [int, Display *dpy, int hpId]
glXBindSwapBarrierSGIX: [void, uint32_t window, uint32_t barrier]
glXChangeDrawableAttributes: [void, uint32_t drawable]
glXChangeDrawableAttributesSGIX: [void, uint32_t drawable]
glXClientInfo: [void]
glXCopyContext: [void, uint32_t source, uint32_t dest, uint32_t mask]
glXCreateContext: [void, uint32_t gc_id, uint32_t screen, uint32_t visual, uint32_t
share_list]
glXCreateContextWithConfigSGIX: [void, uint32_t gc_id, uint32_t screen, uint32_t
config, uint32_t share_list]
glXCreateGLXPbufferSGIX: [void, uint32_t config, uint32_t pbuffer]
glXCreateGLXPixmap: [void, uint32_t visual, uint32_t pixmap, uint32_t glxpixmap]
glXCreateGLXPixmapWithConfigSGIX: [void, uint32_t config, uint32_t pixmap, uint32_t
glxpixmap]
glXCreateGLXVideoSourceSGIX: [void, uint32_t dpy, uint32_t screen, uint32_t server,
uint32_t path, uint32_t class, uint32_t node]
glXCreateNewContext: [void, uint32_t config, uint32_t render_type, uint32_t share_list,
uint32_t direct]
glXCreatePbuffer: [void, uint32_t config, uint32_t pbuffer]
glXCreatePixmap: [void, uint32_t config, uint32_t pixmap, uint32_t glxpixmap]
glXCreateWindow: [void, uint32_t config, uint32_t window, uint32_t glxwindow]
glXDestroyContext: [void, uint32_t context]
glXDestroyGLXPbufferSGIX: [void, uint32_t pbuffer]
glXDestroyGLXPixmap: [void, uint32_t pixmap]
glXDestroyGLXVideoSourceSGIX: [void, uint32_t dpy, uint32_t glxvideosource]
glXDestroyHyperpipeConfigSGIX: [int, Display *dpy, int hpId]
glXDestroyPbuffer: [void, uint32_t pbuffer]
glXDestroyPixmap: [void, uint32_t glxpixmap]
glXDestroyWindow: [void, uint32_t glxwindow]
glXGetDrawableAttributes: [void, uint32_t drawable]
glXGetDrawableAttributesSGIX: [void, uint32_t drawable]
glXGetFBConfigs: [void]
glXGetFBConfigsSGIX: [void]
glXGetVisualConfigs: [void]
glXHyperpipeAttribSGIX: [int, Display *dpy, int timeSlice, int attrib, int size,
const void *attribList]
glXHyperpipeConfigSGIX: [int, Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX
cfg, int *hpId]
glXIsDirect: [void, uint32_t dpy, uint32_t context]
glXJoinSwapGroupSGIX: [void, uint32_t window, uint32_t group]
glXMakeContextCurrent: [void, uint32_t drawable, uint32_t readdrawable, uint32_t
context]
glXMakeCurrent: [void, uint32_t drawable, uint32_t context]
glXMakeCurrentReadSGI: [void, uint32_t drawable, uint32_t readdrawable, uint32_t
context]
glXQueryContext: [void]
glXQueryContextInfoEXT: [void]
glXQueryExtensionsString: [void, uint32_t screen]
glXQueryHyperpipeAttribSGIX: [int, Display *dpy, int timeSlice, int attrib, int
size, const void *returnAttribList]
glXQueryHyperpipeBestAttribSGIX: [int, Display *dpy, int timeSlice, int attrib,
int size, const void *attribList, void *returnAttribList]
glXQueryHyperpipeConfigSGIX: [GLXHyperpipeConfigSGIX *, Display *dpy, int hpId,
int *npipes]
glXQueryHyperpipeNetworkSGIX: [GLXHyperpipeNetworkSGIX *, Display *dpy, int *npipes]
glXQueryMaxSwapBarriersSGIX: [void]
glXQueryServerString: [void, uint32_t screen, uint32_t name]
glXQueryVersion: [void, uint32_t *major, uint32_t *minor]
glXRender: [void]
glXRenderLarge: [void]
glXSwapBuffers: [void, uint32_t drawable]
glXSwapIntervalSGI: [void]
glXUseXFont: [void, uint32_t font, uint32_t first, uint32_t count, uint32_t list_base]
glXVendorPrivate: [void]
glXVendorPrivateWithReply: [void]
glXWaitGL: [void, uint32_t context]
glXWaitX: [void]
+178
View File
@@ -0,0 +1,178 @@
ARB_create_context:
glXCreateContextAttribsARB: [GLXContext, Display *dpy, GLXFBConfig config, GLXContext
share_context, Bool direct, const int *attrib_list]
ARB_get_proc_address:
glXGetProcAddressARB: [__GLXextFuncPtr, const GLubyte *procName]
EXT_import_context:
glXFreeContextEXT: [void, Display *dpy, GLXContext context]
glXGetContextIDEXT: [GLXContextID, const GLXContext context]
glXGetCurrentDisplayEXT: [Display *]
glXImportContextEXT: [GLXContext, Display *dpy, GLXContextID contextID]
glXQueryContextInfoEXT: [int, Display *dpy, GLXContext context, int attribute, int
*value]
EXT_swap_control:
glXSwapIntervalEXT: [void, Display *dpy, GLXDrawable drawable, int interval]
EXT_texture_from_pixmap:
glXBindTexImageEXT: [void, Display *dpy, GLXDrawable drawable, int buffer, const
int *attrib_list]
glXReleaseTexImageEXT: [void, Display *dpy, GLXDrawable drawable, int buffer]
MESA_agp_offset:
glXGetAGPOffsetMESA: [unsigned int, const void *pointer]
MESA_copy_sub_buffer:
glXCopySubBufferMESA: [void, Display *dpy, GLXDrawable drawable, int x, int y, int
width, int height]
MESA_pixmap_colormap:
glXCreateGLXPixmapMESA: [GLXPixmap, Display *dpy, XVisualInfo *visual, Pixmap pixmap,
Colormap cmap]
MESA_release_buffers:
glXReleaseBuffersMESA: [Bool, Display *dpy, GLXDrawable drawable]
MESA_set_3dfx_mode:
glXSet3DfxModeMESA: [Bool, int mode]
NV_copy_image:
glXCopyImageSubDataNV: [void, Display *dpy, GLXContext srcCtx, GLuint srcName, GLenum
srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLXContext dstCtx,
GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint
dstZ, GLsizei width, GLsizei height, GLsizei depth]
NV_present_video:
glXBindVideoDeviceNV: [int, Display *dpy, unsigned int video_slot, unsigned int
video_device, const int *attrib_list]
glXEnumerateVideoDevicesNV: [unsigned int *, Display *dpy, int screen, int *nelements]
NV_swap_group:
glXBindSwapBarrierNV: [Bool, Display *dpy, GLuint group, GLuint barrier]
glXJoinSwapGroupNV: [Bool, Display *dpy, GLXDrawable drawable, GLuint group]
glXQueryFrameCountNV: [Bool, Display *dpy, int screen, GLuint *count]
glXQueryMaxSwapGroupsNV: [Bool, Display *dpy, int screen, GLuint *maxGroups, GLuint
*maxBarriers]
glXQuerySwapGroupNV: [Bool, Display *dpy, GLXDrawable drawable, GLuint *group, GLuint
*barrier]
glXResetFrameCountNV: [Bool, Display *dpy, int screen]
NV_video_capture:
glXBindVideoCaptureDeviceNV: [int, Display *dpy, unsigned int video_capture_slot,
GLXVideoCaptureDeviceNV device]
glXEnumerateVideoCaptureDevicesNV: [GLXVideoCaptureDeviceNV *, Display *dpy, int
screen, int *nelements]
glXLockVideoCaptureDeviceNV: [void, Display *dpy, GLXVideoCaptureDeviceNV device]
glXQueryVideoCaptureDeviceNV: [int, Display *dpy, GLXVideoCaptureDeviceNV device,
int attribute, int *value]
glXReleaseVideoCaptureDeviceNV: [void, Display *dpy, GLXVideoCaptureDeviceNV device]
NV_video_output:
glXBindVideoImageNV: [int, Display *dpy, GLXVideoDeviceNV VideoDevice, GLXPbuffer
pbuf, int iVideoBuffer]
glXGetVideoDeviceNV: [int, Display *dpy, int screen, int numVideoDevices, GLXVideoDeviceNV
*pVideoDevice]
glXGetVideoInfoNV: [int, Display *dpy, int screen, GLXVideoDeviceNV VideoDevice,
unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo]
glXReleaseVideoDeviceNV: [int, Display *dpy, int screen, GLXVideoDeviceNV VideoDevice]
glXReleaseVideoImageNV: [int, Display *dpy, GLXPbuffer pbuf]
glXSendPbufferToVideoNV: [int, Display *dpy, GLXPbuffer pbuf, int iBufferType, unsigned
long *pulCounterPbuffer, GLboolean bBlock]
OML_sync_control:
glXGetMscRateOML: [Bool, Display *dpy, GLXDrawable drawable, int32_t *numerator,
int32_t *denominator]
glXGetSyncValuesOML: [Bool, Display *dpy, GLXDrawable drawable, int64_t *ust, int64_t
*msc, int64_t *sbc]
glXSwapBuffersMscOML: [int64_t, Display *dpy, GLXDrawable drawable, int64_t target_msc,
int64_t divisor, int64_t remainder]
glXWaitForMscOML: [Bool, Display *dpy, GLXDrawable drawable, int64_t target_msc,
int64_t divisor, int64_t remainder, int64_t *ust, int64_t *msc, int64_t *sbc]
glXWaitForSbcOML: [Bool, Display *dpy, GLXDrawable drawable, int64_t target_sbc,
int64_t *ust, int64_t *msc, int64_t *sbc]
SGIX_dmbuffer:
glXAssociateDMPbufferSGIX: [Bool, Display *dpy, GLXPbufferSGIX pbuffer, DMparams
*params, DMbuffer dmbuffer]
SGIX_fbconfig:
glXChooseFBConfigSGIX: [GLXFBConfigSGIX *, Display *dpy, int screen, int *attrib_list,
int *nelements]
glXCreateContextWithConfigSGIX: [GLXContext, Display *dpy, GLXFBConfigSGIX config,
int render_type, GLXContext share_list, Bool direct]
glXCreateGLXPixmapWithConfigSGIX: [GLXPixmap, Display *dpy, GLXFBConfigSGIX config,
Pixmap pixmap]
glXGetFBConfigAttribSGIX: [int, Display *dpy, GLXFBConfigSGIX config, int attribute,
int *value]
glXGetFBConfigFromVisualSGIX: [GLXFBConfigSGIX, Display *dpy, XVisualInfo *vis]
glXGetVisualFromFBConfigSGIX: [XVisualInfo *, Display *dpy, GLXFBConfigSGIX config]
SGIX_hyperpipe:
glXBindHyperpipeSGIX: [int, Display *dpy, int hpId]
glXDestroyHyperpipeConfigSGIX: [int, Display *dpy, int hpId]
glXHyperpipeAttribSGIX: [int, Display *dpy, int timeSlice, int attrib, int size,
void *attribList]
glXHyperpipeConfigSGIX: [int, Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX
*cfg, int *hpId]
glXQueryHyperpipeAttribSGIX: [int, Display *dpy, int timeSlice, int attrib, int
size, void *returnAttribList]
glXQueryHyperpipeBestAttribSGIX: [int, Display *dpy, int timeSlice, int attrib,
int size, void *attribList, void *returnAttribList]
glXQueryHyperpipeConfigSGIX: [GLXHyperpipeConfigSGIX *, Display *dpy, int hpId,
int *npipes]
glXQueryHyperpipeNetworkSGIX: [GLXHyperpipeNetworkSGIX *, Display *dpy, int *npipes]
SGIX_pbuffer:
glXCreateGLXPbufferSGIX: [GLXPbufferSGIX, Display *dpy, GLXFBConfigSGIX config,
unsigned int width, unsigned int height, int *attrib_list]
glXDestroyGLXPbufferSGIX: [void, Display *dpy, GLXPbufferSGIX pbuf]
glXGetSelectedEventSGIX: [void, Display *dpy, GLXDrawable drawable, unsigned long
*mask]
glXQueryGLXPbufferSGIX: [int, Display *dpy, GLXPbufferSGIX pbuf, int attribute,
unsigned int *value]
glXSelectEventSGIX: [void, Display *dpy, GLXDrawable drawable, unsigned long mask]
SGIX_swap_barrier:
glXBindSwapBarrierSGIX: [void, Display *dpy, GLXDrawable drawable, int barrier]
glXQueryMaxSwapBarriersSGIX: [Bool, Display *dpy, int screen, int *max]
SGIX_swap_group:
glXJoinSwapGroupSGIX: [void, Display *dpy, GLXDrawable drawable, GLXDrawable member]
SGIX_video_resize:
glXBindChannelToWindowSGIX: [int, Display *display, int screen, int channel, Window
window]
glXChannelRectSGIX: [int, Display *display, int screen, int channel, int x, int
y, int w, int h]
glXChannelRectSyncSGIX: [int, Display *display, int screen, int channel, GLenum
synctype]
glXQueryChannelDeltasSGIX: [int, Display *display, int screen, int channel, int
*x, int *y, int *w, int *h]
glXQueryChannelRectSGIX: [int, Display *display, int screen, int channel, int *dx,
int *dy, int *dw, int *dh]
SGIX_video_source:
glXCreateGLXVideoSourceSGIX: [GLXVideoSourceSGIX, Display *display, int screen,
VLServer server, VLPath path, int nodeClass, VLNode drainNode]
glXDestroyGLXVideoSourceSGIX: [void, Display *dpy, GLXVideoSourceSGIX glxvideosource]
SGI_cushion:
glXCushionSGI: [void, Display *dpy, Window window, float cushion]
SGI_make_current_read:
glXGetCurrentReadDrawableSGI: [GLXDrawable]
glXMakeCurrentReadSGI: [Bool, Display *dpy, GLXDrawable draw, GLXDrawable read,
GLXContext ctx]
SGI_swap_control:
glXSwapIntervalSGI: [int, int interval]
SGI_video_sync:
glXGetVideoSyncSGI: [int, unsigned int *count]
glXWaitVideoSyncSGI: [int, int divisor, int remainder, unsigned int *count]
SUN_get_transparent_index:
glXGetTransparentIndexSUN: [Status, Display *dpy, Window overlay, Window underlay,
long *pTransparentIndex]
VERSION_1_3:
glXChooseFBConfig: [GLXFBConfig *, Display *dpy, int screen, const int *attrib_list,
int *nelements]
glXCreateNewContext: [GLXContext, Display *dpy, GLXFBConfig config, int render_type,
GLXContext share_list, Bool direct]
glXCreatePbuffer: [GLXPbuffer, Display *dpy, GLXFBConfig config, const int *attrib_list]
glXCreatePixmap: [GLXPixmap, Display *dpy, GLXFBConfig config, Pixmap pixmap, const
int *attrib_list]
glXCreateWindow: [GLXWindow, Display *dpy, GLXFBConfig config, Window win, const
int *attrib_list]
glXDestroyPbuffer: [void, Display *dpy, GLXPbuffer pbuf]
glXDestroyPixmap: [void, Display *dpy, GLXPixmap pixmap]
glXDestroyWindow: [void, Display *dpy, GLXWindow win]
glXGetCurrentDisplay: [Display *]
glXGetCurrentReadDrawable: [GLXDrawable]
glXGetFBConfigAttrib: [int, Display *dpy, GLXFBConfig config, int attribute, int
*value]
glXGetFBConfigs: [GLXFBConfig *, Display *dpy, int screen, int *nelements]
glXGetSelectedEvent: [void, Display *dpy, GLXDrawable draw, unsigned long *event_mask]
glXGetVisualFromFBConfig: [XVisualInfo *, Display *dpy, GLXFBConfig config]
glXMakeContextCurrent: [Bool, Display *dpy, GLXDrawable draw, GLXDrawable read,
GLXContext ctx]
glXQueryContext: [int, Display *dpy, GLXContext ctx, int attribute, int *value]
glXQueryDrawable: [void, Display *dpy, GLXDrawable draw, int attribute, unsigned
int *value]
glXSelectEvent: [void, Display *dpy, GLXDrawable draw, unsigned long event_mask]
VERSION_1_4:
glXGetProcAddress: [__GLXextFuncPtr, const GLubyte *procName]
+76
View File
@@ -0,0 +1,76 @@
glx:
glXChooseVisual: [XVisualInfo *, Display *dpy, int screen, int *attribList]
glXBindHyperpipeSGIX: [int, Display *dpy, int hpId]
glXBindSwapBarrierSGIX: [void, uint32_t window, uint32_t barrier]
glXChangeDrawableAttributes: [void, uint32_t drawable]
glXChangeDrawableAttributesSGIX: [void, uint32_t drawable]
glXClientInfo: [void]
glXCopyContext: [void, Display *dpy, GLXContext src, GLXContext dst, unsigned long mask]
glXCreateContext: [GLXContext, Display *dpy, XVisualInfo *vis, GLXContext shareList, Bool direct]
glXCreateContextAttribsARB: [GLXContext, Display *display, void *config, GLXContext share_context, Bool direct, const int *attrib_list]
glXCreateContextWithConfigSGIX: [void, uint32_t gc_id, uint32_t screen, uint32_t
config, uint32_t share_list]
glXCreateGLXPbufferSGIX: [void, uint32_t config, uint32_t pbuffer]
glXCreateGLXPixmap: [GLXPixmap, Display *dpy, XVisualInfo *visual, Pixmap pixmap]
glXCreateGLXPixmapWithConfigSGIX: [void, uint32_t config, uint32_t pixmap, uint32_t
glxpixmap]
glXCreateGLXVideoSourceSGIX: [void, Display *dpy, uint32_t screen, uint32_t server,
uint32_t path, uint32_t class, uint32_t node]
glXCreateNewContext: [void, uint32_t config, uint32_t render_type, uint32_t share_list,
uint32_t direct]
glXCreatePbuffer: [void, uint32_t config, uint32_t pbuffer]
glXCreatePixmap: [void, uint32_t config, uint32_t pixmap, uint32_t glxpixmap]
glXCreateWindow: [void, uint32_t config, uint32_t window, uint32_t glxwindow]
glXDestroyContext: [void, Display *dpy, GLXContext ctx]
glXDestroyGLXPbufferSGIX: [void, uint32_t pbuffer]
glXDestroyGLXPixmap: [void, Display *dpy, GLXPixmap pixmap]
glXDestroyGLXVideoSourceSGIX: [void, Display *dpy, uint32_t glxvideosource]
glXDestroyHyperpipeConfigSGIX: [int, Display *dpy, int hpId]
glXDestroyPbuffer: [void, uint32_t pbuffer]
glXDestroyPixmap: [void, uint32_t glxpixmap]
glXDestroyWindow: [void, uint32_t glxwindow]
glXGetDrawableAttributes: [void, uint32_t drawable]
glXGetDrawableAttributesSGIX: [void, uint32_t drawable]
glXGetClientString: [const char *, Display *display, int name]
glXGetCurrentContext: [GLXContext]
glXGetCurrentDrawable: [GLXDrawable]
glXGetConfig: [int, Display *display, XVisualInfo *visual, int attribute, int *value]
glXGetFBConfigs: [void]
glXGetFBConfigsSGIX: [void]
glXGetVisualConfigs: [void]
glXHyperpipeAttribSGIX: [int, Display *dpy, int timeSlice, int attrib, int size,
const void *attribList]
glXHyperpipeConfigSGIX: [int, Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX
cfg, int *hpId]
glXIsDirect: [Bool, Display *dpy, GLXContext ctx]
glXJoinSwapGroupSGIX: [void, uint32_t window, uint32_t group]
glXMakeContextCurrent: [void, uint32_t drawable, uint32_t readdrawable, uint32_t
context]
glXMakeCurrent: [Bool, Display *dpy, GLXDrawable drawable, GLXContext ctx]
glXMakeCurrentReadSGI: [void, uint32_t drawable, uint32_t readdrawable, uint32_t
context]
glXQueryContext: [void]
glXQueryContextInfoEXT: [void]
glXQueryExtension: [Bool, Display *display, int *errorBase, int *eventBase]
glXQueryExtensionsString: [const char *, Display *dpy, int screen]
glXQueryHyperpipeAttribSGIX: [int, Display *dpy, int timeSlice, int attrib, int
size, const void *returnAttribList]
glXQueryHyperpipeBestAttribSGIX: [int, Display *dpy, int timeSlice, int attrib,
int size, const void *attribList, void *returnAttribList]
glXQueryHyperpipeConfigSGIX: [GLXHyperpipeConfigSGIX *, Display *dpy, int hpId,
int *npipes]
glXQueryHyperpipeNetworkSGIX: [GLXHyperpipeNetworkSGIX *, Display *dpy, int *npipes]
glXQueryMaxSwapBarriersSGIX: [void]
glXQueryServerString: [const char *, Display *dpy, int screen, int name]
glXQueryVersion: [Bool, Display *dpy, int *maj, int *min]
glXReleaseBuffersMESA: [Bool, Display *dpy, GLXDrawable drawable]
glXRender: [void]
glXRenderLarge: [void]
glXSwapBuffers: [void, Display *dpy, GLXDrawable drawable]
glXSwapIntervalSGI: [void, unsigned int interval]
glXSwapIntervalMESA: [int, unsigned int interval]
glXUseXFont: [void, Font font, int first, int count, int list]
glXVendorPrivate: [void]
glXVendorPrivateWithReply: [void]
glXWaitGL: [void]
glXWaitX: [void]
File diff suppressed because it is too large Load Diff
+177
View File
@@ -0,0 +1,177 @@
3DL_stereo_control:
wglSetStereoEmitterState3DL: [BOOL, HDC hDC, UINT uState]
AMD_gpu_association:
wglBlitContextFramebufferAMD: [VOID, HGLRC dstCtx, GLint srcX0, GLint srcY0, GLint
srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield
mask, GLenum filter]
wglCreateAssociatedContextAMD: [HGLRC, UINT id]
wglCreateAssociatedContextAttribsAMD: [HGLRC, UINT id, HGLRC hShareContext, const
int *attribList]
wglDeleteAssociatedContextAMD: [BOOL, HGLRC hglrc]
wglGetContextGPUIDAMD: [UINT, HGLRC hglrc]
wglGetCurrentAssociatedContextAMD: [HGLRC]
wglGetGPUIDsAMD: [UINT, UINT maxCount, UINT *ids]
wglGetGPUInfoAMD: [INT, UINT id, int property, GLenum dataType, UINT size, void
*data]
wglMakeAssociatedContextCurrentAMD: [BOOL, HGLRC hglrc]
ARB_buffer_region:
wglCreateBufferRegionARB: [HANDLE, HDC hDC, int iLayerPlane, UINT uType]
wglDeleteBufferRegionARB: [VOID, HANDLE hRegion]
wglRestoreBufferRegionARB: [BOOL, HANDLE hRegion, int x, int y, int width, int height,
int xSrc, int ySrc]
wglSaveBufferRegionARB: [BOOL, HANDLE hRegion, int x, int y, int width, int height]
ARB_create_context:
wglCreateContextAttribsARB: [HGLRC, HDC hDC, HGLRC hShareContext, const int *attribList]
ARB_extensions_string:
wglGetExtensionsStringARB: [const char *, HDC hdc]
ARB_make_current_read:
wglGetCurrentReadDCARB: [HDC]
wglMakeContextCurrentARB: [BOOL, HDC hDrawDC, HDC hReadDC, HGLRC hglrc]
ARB_pbuffer:
wglCreatePbufferARB: [HPBUFFERARB, HDC hDC, int iPixelFormat, int iWidth, int iHeight,
const int *piAttribList]
wglDestroyPbufferARB: [BOOL, HPBUFFERARB hPbuffer]
wglGetPbufferDCARB: [HDC, HPBUFFERARB hPbuffer]
wglQueryPbufferARB: [BOOL, HPBUFFERARB hPbuffer, int iAttribute, int *piValue]
wglReleasePbufferDCARB: [int, HPBUFFERARB hPbuffer, HDC hDC]
ARB_pixel_format:
wglChoosePixelFormatARB: [BOOL, HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList,
UINT nMaxFormats, int *piFormats, UINT *nNumFormats]
wglGetPixelFormatAttribfvARB: [BOOL, HDC hdc, int iPixelFormat, int iLayerPlane,
UINT nAttributes, const int *piAttributes, FLOAT *pfValues]
wglGetPixelFormatAttribivARB: [BOOL, HDC hdc, int iPixelFormat, int iLayerPlane,
UINT nAttributes, const int *piAttributes, int *piValues]
ARB_render_texture:
wglBindTexImageARB: [BOOL, HPBUFFERARB hPbuffer, int iBuffer]
wglReleaseTexImageARB: [BOOL, HPBUFFERARB hPbuffer, int iBuffer]
wglSetPbufferAttribARB: [BOOL, HPBUFFERARB hPbuffer, const int *piAttribList]
EXT_display_color_table:
wglBindDisplayColorTableEXT: [GLboolean, GLushort id]
wglCreateDisplayColorTableEXT: [GLboolean, GLushort id]
wglDestroyDisplayColorTableEXT: [VOID, GLushort id]
wglLoadDisplayColorTableEXT: [GLboolean, const GLushort *table, GLuint length]
EXT_extensions_string:
wglGetExtensionsStringEXT: [const char *]
EXT_make_current_read:
wglGetCurrentReadDCEXT: [HDC]
wglMakeContextCurrentEXT: [BOOL, HDC hDrawDC, HDC hReadDC, HGLRC hglrc]
EXT_pbuffer:
wglCreatePbufferEXT: [HPBUFFEREXT, HDC hDC, int iPixelFormat, int iWidth, int iHeight,
const int *piAttribList]
wglDestroyPbufferEXT: [BOOL, HPBUFFEREXT hPbuffer]
wglGetPbufferDCEXT: [HDC, HPBUFFEREXT hPbuffer]
wglQueryPbufferEXT: [BOOL, HPBUFFEREXT hPbuffer, int iAttribute, int *piValue]
wglReleasePbufferDCEXT: [int, HPBUFFEREXT hPbuffer, HDC hDC]
EXT_pixel_format:
wglChoosePixelFormatEXT: [BOOL, HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList,
UINT nMaxFormats, int *piFormats, UINT *nNumFormats]
wglGetPixelFormatAttribfvEXT: [BOOL, HDC hdc, int iPixelFormat, int iLayerPlane,
UINT nAttributes, int *piAttributes, FLOAT *pfValues]
wglGetPixelFormatAttribivEXT: [BOOL, HDC hdc, int iPixelFormat, int iLayerPlane,
UINT nAttributes, int *piAttributes, int *piValues]
EXT_swap_control:
wglGetSwapIntervalEXT: [int]
wglSwapIntervalEXT: [BOOL, int interval]
I3D_digital_video_control:
wglGetDigitalVideoParametersI3D: [BOOL, HDC hDC, int iAttribute, int *piValue]
wglSetDigitalVideoParametersI3D: [BOOL, HDC hDC, int iAttribute, const int *piValue]
I3D_gamma:
wglGetGammaTableI3D: [BOOL, HDC hDC, int iEntries, USHORT *puRed, USHORT *puGreen,
USHORT *puBlue]
wglGetGammaTableParametersI3D: [BOOL, HDC hDC, int iAttribute, int *piValue]
wglSetGammaTableI3D: [BOOL, HDC hDC, int iEntries, const USHORT *puRed, const USHORT
*puGreen, const USHORT *puBlue]
wglSetGammaTableParametersI3D: [BOOL, HDC hDC, int iAttribute, const int *piValue]
I3D_genlock:
wglDisableGenlockI3D: [BOOL, HDC hDC]
wglEnableGenlockI3D: [BOOL, HDC hDC]
wglGenlockSampleRateI3D: [BOOL, HDC hDC, UINT uRate]
wglGenlockSourceDelayI3D: [BOOL, HDC hDC, UINT uDelay]
wglGenlockSourceEdgeI3D: [BOOL, HDC hDC, UINT uEdge]
wglGenlockSourceI3D: [BOOL, HDC hDC, UINT uSource]
wglGetGenlockSampleRateI3D: [BOOL, HDC hDC, UINT *uRate]
wglGetGenlockSourceDelayI3D: [BOOL, HDC hDC, UINT *uDelay]
wglGetGenlockSourceEdgeI3D: [BOOL, HDC hDC, UINT *uEdge]
wglGetGenlockSourceI3D: [BOOL, HDC hDC, UINT *uSource]
wglIsEnabledGenlockI3D: [BOOL, HDC hDC, BOOL *pFlag]
wglQueryGenlockMaxSourceDelayI3D: [BOOL, HDC hDC, UINT *uMaxLineDelay, UINT *uMaxPixelDelay]
I3D_image_buffer:
wglAssociateImageBufferEventsI3D: [BOOL, HDC hDC, const HANDLE *pEvent, const LPVOID
*pAddress, const DWORD *pSize, UINT count]
wglCreateImageBufferI3D: [LPVOID, HDC hDC, DWORD dwSize, UINT uFlags]
wglDestroyImageBufferI3D: [BOOL, HDC hDC, LPVOID pAddress]
wglReleaseImageBufferEventsI3D: [BOOL, HDC hDC, const LPVOID *pAddress, UINT count]
I3D_swap_frame_lock:
wglDisableFrameLockI3D: [BOOL]
wglEnableFrameLockI3D: [BOOL]
wglIsEnabledFrameLockI3D: [BOOL, BOOL *pFlag]
wglQueryFrameLockMasterI3D: [BOOL, BOOL *pFlag]
I3D_swap_frame_usage:
wglBeginFrameTrackingI3D: [BOOL]
wglEndFrameTrackingI3D: [BOOL]
wglGetFrameUsageI3D: [BOOL, float *pUsage]
wglQueryFrameTrackingI3D: [BOOL, DWORD *pFrameCount, DWORD *pMissedFrames, float
*pLastMissedUsage]
NV_DX_interop:
wglDXCloseDeviceNV: [BOOL, HANDLE hDevice]
wglDXLockObjectsNV: [BOOL, HANDLE hDevice, GLint count, HANDLE *hObjects]
wglDXObjectAccessNV: [BOOL, HANDLE hObject, GLenum access]
wglDXOpenDeviceNV: [HANDLE, void *dxDevice]
wglDXRegisterObjectNV: [HANDLE, HANDLE hDevice, void *dxObject, GLuint name, GLenum
type, GLenum access]
wglDXSetResourceShareHandleNV: [BOOL, void *dxObject, HANDLE shareHandle]
wglDXUnlockObjectsNV: [BOOL, HANDLE hDevice, GLint count, HANDLE *hObjects]
wglDXUnregisterObjectNV: [BOOL, HANDLE hDevice, HANDLE hObject]
NV_copy_image:
wglCopyImageSubDataNV: [BOOL, HGLRC hSrcRC, GLuint srcName, GLenum srcTarget, GLint
srcLevel, GLint srcX, GLint srcY, GLint srcZ, HGLRC hDstRC, GLuint dstName,
GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei
width, GLsizei height, GLsizei depth]
NV_gpu_affinity:
wglCreateAffinityDCNV: [HDC, const HGPUNV *phGpuList]
wglDeleteDCNV: [BOOL, HDC hdc]
wglEnumGpuDevicesNV: [BOOL, HGPUNV hGpu, UINT iDeviceIndex, PGPU_DEVICE lpGpuDevice]
wglEnumGpusFromAffinityDCNV: [BOOL, HDC hAffinityDC, UINT iGpuIndex, HGPUNV *hGpu]
wglEnumGpusNV: [BOOL, UINT iGpuIndex, HGPUNV *phGpu]
NV_present_video:
wglBindVideoDeviceNV: [BOOL, HDC hDC, unsigned int uVideoSlot, HVIDEOOUTPUTDEVICENV
hVideoDevice, const int *piAttribList]
wglEnumerateVideoDevicesNV: [int, HDC hDC, HVIDEOOUTPUTDEVICENV *phDeviceList]
wglQueryCurrentContextNV: [BOOL, int iAttribute, int *piValue]
NV_swap_group:
wglBindSwapBarrierNV: [BOOL, GLuint group, GLuint barrier]
wglJoinSwapGroupNV: [BOOL, HDC hDC, GLuint group]
wglQueryFrameCountNV: [BOOL, HDC hDC, GLuint *count]
wglQueryMaxSwapGroupsNV: [BOOL, HDC hDC, GLuint *maxGroups, GLuint *maxBarriers]
wglQuerySwapGroupNV: [BOOL, HDC hDC, GLuint *group, GLuint *barrier]
wglResetFrameCountNV: [BOOL, HDC hDC]
NV_vertex_array_range:
wglAllocateMemoryNV: [void *, GLsizei size, GLfloat readfreq, GLfloat writefreq,
GLfloat priority]
wglFreeMemoryNV: [void *, void *pointer]
NV_video_capture:
wglBindVideoCaptureDeviceNV: [BOOL, UINT uVideoSlot, HVIDEOINPUTDEVICENV hDevice]
wglEnumerateVideoCaptureDevicesNV: [UINT, HDC hDc, HVIDEOINPUTDEVICENV *phDeviceList]
wglLockVideoCaptureDeviceNV: [BOOL, HDC hDc, HVIDEOINPUTDEVICENV hDevice]
wglQueryVideoCaptureDeviceNV: [BOOL, HDC hDc, HVIDEOINPUTDEVICENV hDevice, int iAttribute,
int *piValue]
wglReleaseVideoCaptureDeviceNV: [BOOL, HDC hDc, HVIDEOINPUTDEVICENV hDevice]
NV_video_output:
wglBindVideoImageNV: [BOOL, HPVIDEODEV hVideoDevice, HPBUFFERARB hPbuffer, int iVideoBuffer]
wglGetVideoDeviceNV: [BOOL, HDC hDC, int numDevices, HPVIDEODEV *hVideoDevice]
wglGetVideoInfoNV: [BOOL, HPVIDEODEV hpVideoDevice, unsigned long *pulCounterOutputPbuffer,
unsigned long *pulCounterOutputVideo]
wglReleaseVideoDeviceNV: [BOOL, HPVIDEODEV hVideoDevice]
wglReleaseVideoImageNV: [BOOL, HPBUFFERARB hPbuffer, int iVideoBuffer]
wglSendPbufferToVideoNV: [BOOL, HPBUFFERARB hPbuffer, int iBufferType, unsigned
long *pulCounterPbuffer, BOOL bBlock]
OML_sync_control:
wglGetMscRateOML: [BOOL, HDC hdc, INT32 *numerator, INT32 *denominator]
wglGetSyncValuesOML: [BOOL, HDC hdc, INT64 *ust, INT64 *msc, INT64 *sbc]
wglSwapBuffersMscOML: [INT64, HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder]
wglSwapLayerBuffersMscOML: [INT64, HDC hdc, int fuPlanes, INT64 target_msc, INT64
divisor, INT64 remainder]
wglWaitForMscOML: [BOOL, HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder,
INT64 *ust, INT64 *msc, INT64 *sbc]
wglWaitForSbcOML: [BOOL, HDC hdc, INT64 target_sbc, INT64 *ust, INT64 *msc, INT64
*sbc]