From b0893e16bf462fe563ca325408256a4aa7ae640e Mon Sep 17 00:00:00 2001 From: lubomyr Date: Sun, 13 Sep 2015 21:17:37 +0300 Subject: [PATCH] glshim update --- project/jni/glshim/LICENSE | 0 project/jni/glshim/README.md | 0 project/jni/glshim/bc_cat.h | 0 project/jni/glshim/flags.cmake | 6 - project/jni/glshim/include/EGL/egl.h | 0 project/jni/glshim/include/EGL/eglext.h | 0 project/jni/glshim/include/EGL/eglplatform.h | 0 project/jni/glshim/include/GL/gl.h | 0 project/jni/glshim/include/GL/gl_mangle.h | 0 project/jni/glshim/include/GL/glext.h | 0 project/jni/glshim/include/GL/glu.h | 0 project/jni/glshim/include/GL/glu_mangle.h | 0 project/jni/glshim/include/GL/glx.h | 6 +- project/jni/glshim/include/GL/glx_mangle.h | 0 project/jni/glshim/include/GL/glxext.h | 0 .../include/GL/internal/dri_interface.h | 0 project/jni/glshim/include/GLES/egl.h | 0 project/jni/glshim/include/GLES/gl.h | 0 project/jni/glshim/include/GLES/gl2.h | 0 project/jni/glshim/include/GLES/gl2ext.h | 0 project/jni/glshim/include/GLES/gl2platform.h | 0 project/jni/glshim/include/GLES/gl3.h | 0 project/jni/glshim/include/GLES/gl3ext.h | 0 project/jni/glshim/include/GLES/gl3platform.h | 0 project/jni/glshim/include/GLES/glext.h | 0 project/jni/glshim/include/GLES/glplatform.h | 0 project/jni/glshim/include/KHR/khrplatform.h | 0 project/jni/glshim/spec/build | 29 +- project/jni/glshim/spec/gen.py | 43 +- project/jni/glshim/spec/requirements.txt | 0 project/jni/glshim/spec/template/base/base.j2 | 1 + .../jni/glshim/spec/template/base/fprint.j2 | 0 .../jni/glshim/spec/template/base/header.j2 | 0 .../jni/glshim/spec/template/base/headers.j2 | 2 + .../glshim/spec/template/base/indexed_call.j2 | 0 .../glshim/spec/template/base/packed_call.j2 | 0 .../jni/glshim/spec/template/base/wrap.c.j2 | 4 +- .../jni/glshim/spec/template/base/wrap.h.j2 | 12 +- project/jni/glshim/spec/template/client.c.j2 | 52 + project/jni/glshim/spec/template/eglwrap.c.j2 | 23 + .../jni/glshim/spec/template/gleswrap.c.j2 | 6 +- .../jni/glshim/spec/template/glextwrap.c.j2 | 20 + project/jni/glshim/spec/template/glwrap.h.j2 | 3 +- project/jni/glshim/spec/template/glxfuncs.j2 | 3 + project/jni/glshim/spec/template/host.c.j2 | 6 + project/jni/glshim/spec/template/mock.c.j2 | 83 - project/jni/glshim/spec/template/mock.h.j2 | 132 - project/jni/glshim/spec/template/proxy.h.j2 | 1 + project/jni/glshim/spec/xml/egl.xml | 0 project/jni/glshim/spec/xml/gles-2.0.xml | 0 project/jni/glshim/spec/xml/glx.xml | 0 project/jni/glshim/spec/xml/glxext.xml | 0 project/jni/glshim/spec/xml/opengl.xml | 0 project/jni/glshim/spec/xml/wgl.xml | 0 project/jni/glshim/spec/yml/alsa.yml | 1229 +++ project/jni/glshim/spec/yml/egl.yml | 108 + project/jni/glshim/spec/yml/gles-2.0.yml | 0 project/jni/glshim/spec/yml/glext-1.1.yml | 27 +- project/jni/glshim/spec/yml/glx.yml | 68 + project/jni/glshim/spec/yml/glxext.yml | 178 + project/jni/glshim/spec/yml/my_glx.yml | 76 + project/jni/glshim/spec/yml/oes.yml | 4 - project/jni/glshim/spec/yml/opengl.yml | 0 project/jni/glshim/spec/yml/wgl.yml | 177 + project/jni/glshim/src/CMakeLists.txt | 3 +- project/jni/glshim/src/gl/eval.h | 0 project/jni/glshim/src/gl/gl.c | 4 +- project/jni/glshim/src/gl/line.h | 0 project/jni/glshim/src/gl/math/eval.c | 0 project/jni/glshim/src/gl/math/eval.h | 0 project/jni/glshim/src/gl/wrap/es.h | 0 project/jni/glshim/src/gl/wrap/gles2.h | 0 project/jni/glshim/src/glx/gles2funcs.inc | 0 project/jni/glshim/src/glx/glx.h | 1 - project/jni/glshim/src/glx/lookup.c | 3 +- project/jni/glshim/src/preload/preload.c | 0 project/jni/glshim/src/proxy/CMakeLists.txt | 0 .../glshim/src/proxy/client/CMakeLists.txt | 0 project/jni/glshim/src/proxy/client/Versions | 0 .../jni/glshim/src/proxy/client/src/client.c | 0 project/jni/glshim/src/proxy/config.h | 0 project/jni/glshim/src/proxy/gl.h | 0 project/jni/glshim/src/proxy/host/host.c | 0 project/jni/glshim/src/proxy/host/host.h | 0 project/jni/glshim/src/proxy/proxy.h | 0 project/jni/glshim/src/tests/main.c | 0 project/jni/glshim/src/util/khash.h | 0 project/jni/glshim/test/requirements.txt | 2 - project/jni/glshim/test/run | 4 - project/jni/glshim/test/tests/array/skip.c | 27 - project/jni/glshim/test/tests/block/quads.c | 52 - project/jni/glshim/test/tests/block/rect.c | 18 - project/jni/glshim/test/tests/block/tri.c | 18 - project/jni/glshim/test/tests/list/nested.c | 30 - project/jni/glshim/test/tests/list/new.c | 6 - project/jni/glshim/test/tests/meta/test.py | 20 - .../jni/glshim/test/tests/render/feedback.c | 35 - project/jni/glshim/test/tests/state/default.c | 17 - project/jni/glshim/test/tests/util/gl_str.c | 10 - project/jni/glshim/test/tests/util/tack.c | 30 - project/jni/glshim/test/util/mock.c | 1548 --- project/jni/glshim/test/util/mock.h | 9208 ----------------- project/jni/glshim/test/util/run.py | 242 - .../test/util/template/CMakeLists.txt.j2 | 18 - project/jni/glshim/test/util/test.h | 9 - 105 files changed, 2033 insertions(+), 11571 deletions(-) mode change 100755 => 100644 project/jni/glshim/LICENSE mode change 100755 => 100644 project/jni/glshim/README.md mode change 100755 => 100644 project/jni/glshim/bc_cat.h delete mode 100755 project/jni/glshim/flags.cmake mode change 100755 => 100644 project/jni/glshim/include/EGL/egl.h mode change 100755 => 100644 project/jni/glshim/include/EGL/eglext.h mode change 100755 => 100644 project/jni/glshim/include/EGL/eglplatform.h mode change 100755 => 100644 project/jni/glshim/include/GL/gl.h mode change 100755 => 100644 project/jni/glshim/include/GL/gl_mangle.h mode change 100755 => 100644 project/jni/glshim/include/GL/glext.h mode change 100755 => 100644 project/jni/glshim/include/GL/glu.h mode change 100755 => 100644 project/jni/glshim/include/GL/glu_mangle.h mode change 100755 => 100644 project/jni/glshim/include/GL/glx.h mode change 100755 => 100644 project/jni/glshim/include/GL/glx_mangle.h mode change 100755 => 100644 project/jni/glshim/include/GL/glxext.h mode change 100755 => 100644 project/jni/glshim/include/GL/internal/dri_interface.h mode change 100755 => 100644 project/jni/glshim/include/GLES/egl.h mode change 100755 => 100644 project/jni/glshim/include/GLES/gl.h mode change 100755 => 100644 project/jni/glshim/include/GLES/gl2.h mode change 100755 => 100644 project/jni/glshim/include/GLES/gl2ext.h mode change 100755 => 100644 project/jni/glshim/include/GLES/gl2platform.h mode change 100755 => 100644 project/jni/glshim/include/GLES/gl3.h mode change 100755 => 100644 project/jni/glshim/include/GLES/gl3ext.h mode change 100755 => 100644 project/jni/glshim/include/GLES/gl3platform.h mode change 100755 => 100644 project/jni/glshim/include/GLES/glext.h mode change 100755 => 100644 project/jni/glshim/include/GLES/glplatform.h mode change 100755 => 100644 project/jni/glshim/include/KHR/khrplatform.h mode change 100755 => 100644 project/jni/glshim/spec/requirements.txt mode change 100755 => 100644 project/jni/glshim/spec/template/base/fprint.j2 mode change 100755 => 100644 project/jni/glshim/spec/template/base/header.j2 mode change 100755 => 100644 project/jni/glshim/spec/template/base/indexed_call.j2 mode change 100755 => 100644 project/jni/glshim/spec/template/base/packed_call.j2 mode change 100755 => 100644 project/jni/glshim/spec/template/base/wrap.c.j2 mode change 100755 => 100644 project/jni/glshim/spec/template/base/wrap.h.j2 create mode 100644 project/jni/glshim/spec/template/client.c.j2 create mode 100644 project/jni/glshim/spec/template/eglwrap.c.j2 create mode 100755 project/jni/glshim/spec/template/glextwrap.c.j2 mode change 100755 => 100644 project/jni/glshim/spec/template/glwrap.h.j2 create mode 100644 project/jni/glshim/spec/template/glxfuncs.j2 create mode 100644 project/jni/glshim/spec/template/host.c.j2 delete mode 100755 project/jni/glshim/spec/template/mock.c.j2 delete mode 100755 project/jni/glshim/spec/template/mock.h.j2 create mode 100644 project/jni/glshim/spec/template/proxy.h.j2 mode change 100755 => 100644 project/jni/glshim/spec/xml/egl.xml mode change 100755 => 100644 project/jni/glshim/spec/xml/gles-2.0.xml mode change 100755 => 100644 project/jni/glshim/spec/xml/glx.xml mode change 100755 => 100644 project/jni/glshim/spec/xml/glxext.xml mode change 100755 => 100644 project/jni/glshim/spec/xml/opengl.xml mode change 100755 => 100644 project/jni/glshim/spec/xml/wgl.xml create mode 100644 project/jni/glshim/spec/yml/alsa.yml create mode 100644 project/jni/glshim/spec/yml/egl.yml mode change 100755 => 100644 project/jni/glshim/spec/yml/gles-2.0.yml create mode 100644 project/jni/glshim/spec/yml/glx.yml create mode 100644 project/jni/glshim/spec/yml/glxext.yml create mode 100644 project/jni/glshim/spec/yml/my_glx.yml delete mode 100755 project/jni/glshim/spec/yml/oes.yml mode change 100755 => 100644 project/jni/glshim/spec/yml/opengl.yml create mode 100644 project/jni/glshim/spec/yml/wgl.yml mode change 100755 => 100644 project/jni/glshim/src/gl/eval.h mode change 100755 => 100644 project/jni/glshim/src/gl/line.h mode change 100755 => 100644 project/jni/glshim/src/gl/math/eval.c mode change 100755 => 100644 project/jni/glshim/src/gl/math/eval.h mode change 100755 => 100644 project/jni/glshim/src/gl/wrap/es.h mode change 100755 => 100644 project/jni/glshim/src/gl/wrap/gles2.h mode change 100755 => 100644 project/jni/glshim/src/glx/gles2funcs.inc mode change 100755 => 100644 project/jni/glshim/src/preload/preload.c mode change 100755 => 100644 project/jni/glshim/src/proxy/CMakeLists.txt mode change 100755 => 100644 project/jni/glshim/src/proxy/client/CMakeLists.txt mode change 100755 => 100644 project/jni/glshim/src/proxy/client/Versions mode change 100755 => 100644 project/jni/glshim/src/proxy/client/src/client.c mode change 100755 => 100644 project/jni/glshim/src/proxy/config.h mode change 100755 => 100644 project/jni/glshim/src/proxy/gl.h mode change 100755 => 100644 project/jni/glshim/src/proxy/host/host.c mode change 100755 => 100644 project/jni/glshim/src/proxy/host/host.h mode change 100755 => 100644 project/jni/glshim/src/proxy/proxy.h mode change 100755 => 100644 project/jni/glshim/src/tests/main.c mode change 100755 => 100644 project/jni/glshim/src/util/khash.h delete mode 100755 project/jni/glshim/test/requirements.txt delete mode 100755 project/jni/glshim/test/run delete mode 100755 project/jni/glshim/test/tests/array/skip.c delete mode 100755 project/jni/glshim/test/tests/block/quads.c delete mode 100755 project/jni/glshim/test/tests/block/rect.c delete mode 100755 project/jni/glshim/test/tests/block/tri.c delete mode 100755 project/jni/glshim/test/tests/list/nested.c delete mode 100755 project/jni/glshim/test/tests/list/new.c delete mode 100755 project/jni/glshim/test/tests/meta/test.py delete mode 100755 project/jni/glshim/test/tests/render/feedback.c delete mode 100755 project/jni/glshim/test/tests/state/default.c delete mode 100755 project/jni/glshim/test/tests/util/gl_str.c delete mode 100755 project/jni/glshim/test/tests/util/tack.c delete mode 100755 project/jni/glshim/test/util/mock.c delete mode 100755 project/jni/glshim/test/util/mock.h delete mode 100755 project/jni/glshim/test/util/run.py delete mode 100755 project/jni/glshim/test/util/template/CMakeLists.txt.j2 delete mode 100755 project/jni/glshim/test/util/test.h diff --git a/project/jni/glshim/LICENSE b/project/jni/glshim/LICENSE old mode 100755 new mode 100644 diff --git a/project/jni/glshim/README.md b/project/jni/glshim/README.md old mode 100755 new mode 100644 diff --git a/project/jni/glshim/bc_cat.h b/project/jni/glshim/bc_cat.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/flags.cmake b/project/jni/glshim/flags.cmake deleted file mode 100755 index c6a9c13fc..000000000 --- a/project/jni/glshim/flags.cmake +++ /dev/null @@ -1,6 +0,0 @@ -add_definitions(-g -funwind-tables -ffast-math) -set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c99") -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fpermissive") -if(CMAKE_SYSTEM_PROCESSOR MATCHES "^arm") - add_definitions(-fsingle-precision-constant -mfpu=neon -march=armv7-a -mcpu=cortex-a8 -mtune=cortex-a8) -endif() diff --git a/project/jni/glshim/include/EGL/egl.h b/project/jni/glshim/include/EGL/egl.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/EGL/eglext.h b/project/jni/glshim/include/EGL/eglext.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/EGL/eglplatform.h b/project/jni/glshim/include/EGL/eglplatform.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/GL/gl.h b/project/jni/glshim/include/GL/gl.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/GL/gl_mangle.h b/project/jni/glshim/include/GL/gl_mangle.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/GL/glext.h b/project/jni/glshim/include/GL/glext.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/GL/glu.h b/project/jni/glshim/include/GL/glu.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/GL/glu_mangle.h b/project/jni/glshim/include/GL/glu_mangle.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/GL/glx.h b/project/jni/glshim/include/GL/glx.h old mode 100755 new mode 100644 index 49d28a184..18b784d9b --- a/project/jni/glshim/include/GL/glx.h +++ b/project/jni/glshim/include/GL/glx.h @@ -35,8 +35,10 @@ #pragma message disable nosimpint #endif #endif -//#include -//#include +#ifndef ANDROID +#include +#include +#endif //ANDROID #ifdef __VMS # ifdef __cplusplus #pragma message enable nosimpint diff --git a/project/jni/glshim/include/GL/glx_mangle.h b/project/jni/glshim/include/GL/glx_mangle.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/GL/glxext.h b/project/jni/glshim/include/GL/glxext.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/GL/internal/dri_interface.h b/project/jni/glshim/include/GL/internal/dri_interface.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/GLES/egl.h b/project/jni/glshim/include/GLES/egl.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/GLES/gl.h b/project/jni/glshim/include/GLES/gl.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/GLES/gl2.h b/project/jni/glshim/include/GLES/gl2.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/GLES/gl2ext.h b/project/jni/glshim/include/GLES/gl2ext.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/GLES/gl2platform.h b/project/jni/glshim/include/GLES/gl2platform.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/GLES/gl3.h b/project/jni/glshim/include/GLES/gl3.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/GLES/gl3ext.h b/project/jni/glshim/include/GLES/gl3ext.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/GLES/gl3platform.h b/project/jni/glshim/include/GLES/gl3platform.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/GLES/glext.h b/project/jni/glshim/include/GLES/glext.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/GLES/glplatform.h b/project/jni/glshim/include/GLES/glplatform.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/include/KHR/khrplatform.h b/project/jni/glshim/include/KHR/khrplatform.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/spec/build b/project/jni/glshim/spec/build index 0726103c8..85879ebcc 100755 --- a/project/jni/glshim/spec/build +++ b/project/jni/glshim/spec/build @@ -2,18 +2,25 @@ cd "$(dirname "$0")" base=../src/ -gles="yml/gles-1.1.yml,yml/oes.yml" -gles2="yml/gles-2.0.yml" -opengl="yml/opengl.yml" -cats="VERSION_1_0,VERSION_1_1,VERSION_1_2,VERSION_1_3,VERSION_1_4,VERSION_1_5,EXT_swap_control" +gles1=$(ls -1 yml/*-1.1.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/,$//') +gles2=$(ls -1 yml/*-2.0.yml | tr '\n' ',' | sed -e 's/,$//') -./gen.py "$gles" mock.c.j2 mock.c mock.h > "$base/../test/util/mock.c" & -./gen.py "$gles" --ifndef USE_ES2 mock.h.j2 mock.h "gl_str.h" "wrap/gles.h" > "$base/../test/util/mock.h" +./gen.py "$gles" --ifndef USE_ES2 gleswrap.c.j2 gleswrap.c gles.h > "$base/gl/wrap/gles.c" +./gen.py "$glext" --ifndef USE_ES2 glextwrap.c.j2 glextwrap.c gles.h > "$base/gl/wrap/glesext.c" +./gen.py "$gles1" --ifndef USE_ES2 glwrap.h.j2 gleswrap.h ../gl.h > "$base/gl/wrap/gles.h" +./gen.py "$gles1" --ifndef USE_ES2 glxfuncs.j2 glxfuncs.inc ../gl/gl.h > "$base/glx/glesfuncs.inc" -./gen.py "$gles" --ifndef USE_ES2 gleswrap.c.j2 gleswrap.c gles.h ../loader.h ../skip.h > "$base/gl/wrap/gles.c" & -./gen.py --deep "$opengl,$gles" --ifndef USE_ES2 glwrap.h.j2 gleswrap.h ../types.h > "$base/gl/wrap/gles.h" +./gen.py "$gles2" --ifdef USE_ES2 gleswrap.c.j2 gles2wrap.c gles2.h > "$base/gl/wrap/gles2.c" +./gen.py "$gles2" --ifdef USE_ES2 glwrap.h.j2 gles2wrap.h ../gl.h > "$base/gl/wrap/gles2.h" +./gen.py "$gles2" --ifdef USE_ES2 glxfuncs.j2 gles2funcs.inc ../gl/gl.h > "$base/glx/gles2funcs.inc" -./gen.py "$gles2" --ifdef USE_ES2 gleswrap.c.j2 gles2wrap.c gles2.h ../loader.h > "$base/gl/wrap/gles2.c" -./gen.py "$gles2" --ifdef USE_ES2 glwrap.h.j2 gles2wrap.h > "$base/gl/wrap/gles2.h" +# ./gen.py "yml/egl.yml" eglwrap.c.j2 eglwrap.c "" > "$base/gl/wrap/egl.c" & -rm -rf "$base/../test/build" +cats="VERSION_1_0,VERSION_1_1,VERSION_1_2,VERSION_1_3,VERSION_1_4,VERSION_1_5,glx" +proxy='yml/opengl.yml,yml/my_glx.yml,yml/glxext.yml,yml/alsa.yml' +./gen.py --deep --cats "$cats" "$proxy" proxy.h.j2 proxy.h "" "" "" "" "../gl/defines.h" "../config.h" "config.h" > "$base/proxy/proxy.h" +./gen.py --deep --cats "$cats" "$proxy" client.c.j2 client.c "../proxy.h" > "$base/proxy/client/src/client.c" +./gen.py --deep --cats "$cats" "$proxy" host.c.j2 host.c "../proxy.h" > "$base/proxy/host/host.c" +#wait diff --git a/project/jni/glshim/spec/gen.py b/project/jni/glshim/spec/gen.py index 895d246ed..cc0ab3e55 100755 --- a/project/jni/glshim/spec/gen.py +++ b/project/jni/glshim/spec/gen.py @@ -8,6 +8,7 @@ from yaml import load split_re = re.compile(r'^(?P.*?)\s*(?P\w+)$') env = jinja2.Environment( trim_blocks=True, + lstrip_blocks=True, loader=jinja2.FileSystemLoader('template'), ) @@ -19,30 +20,27 @@ def args(args, add_type=True): f = '0.2f' printf_lookup = { - 'GLbitfield': 'd', - 'GLboolean': 'd', - 'GLbyte': 'c', - 'GLubyte': 'c', - 'GLchar': 'c', - 'GLdouble': '0.2f', - 'GLenum': '0x%04X', - 'GLfloat': '0.2f', - 'GLint': 'd', - 'GLintptr': 'd', - 'GLintptrARB': 'd', - 'GLshort': 'd', - 'GLsizei': 'd', - 'GLsizeiptr': 'd', + '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', + 'GLuint': 'u', + 'GLushort': 'u', + 'GLvoid': 'p', } def printf(args): - if isinstance(args, dict): - args = (args,) - types = [] for arg in args: typ = arg['type'] @@ -50,11 +48,10 @@ def printf(args): t = 'p' else: t = printf_lookup.get(typ, 'p') - if not '%' in t: - t = '%' + t + types.append(t) - return ', '.join(types) + return ', '.join('%' + t for t in types) def unconst(s): split = s.split(' ') diff --git a/project/jni/glshim/spec/requirements.txt b/project/jni/glshim/spec/requirements.txt old mode 100755 new mode 100644 diff --git a/project/jni/glshim/spec/template/base/base.j2 b/project/jni/glshim/spec/template/base/base.j2 index 5661d6087..6d4795070 100755 --- a/project/jni/glshim/spec/template/base/base.j2 +++ b/project/jni/glshim/spec/template/base/base.j2 @@ -3,5 +3,6 @@ {% if ifndef %}#ifndef {{ ifndef }} {% endif %} {% block main %}{% endblock %} +{% block content %}{% endblock %} {% if ifdef %}#endif{% endif %} {% if ifndef %}#endif{% endif %} diff --git a/project/jni/glshim/spec/template/base/fprint.j2 b/project/jni/glshim/spec/template/base/fprint.j2 old mode 100755 new mode 100644 diff --git a/project/jni/glshim/spec/template/base/header.j2 b/project/jni/glshim/spec/template/base/header.j2 old mode 100755 new mode 100644 diff --git a/project/jni/glshim/spec/template/base/headers.j2 b/project/jni/glshim/spec/template/base/headers.j2 index 028ceacb2..ffb85a5e5 100755 --- a/project/jni/glshim/spec/template/base/headers.j2 +++ b/project/jni/glshim/spec/template/base/headers.j2 @@ -1,3 +1,4 @@ +{% block headers %} {% for header in headers %} {% if "<" in header %} #include {{ header }} @@ -5,3 +6,4 @@ #include "{{ header }}" {% endif %} {% endfor %} +{% endblock %} diff --git a/project/jni/glshim/spec/template/base/indexed_call.j2 b/project/jni/glshim/spec/template/base/indexed_call.j2 old mode 100755 new mode 100644 diff --git a/project/jni/glshim/spec/template/base/packed_call.j2 b/project/jni/glshim/spec/template/base/packed_call.j2 old mode 100755 new mode 100644 diff --git a/project/jni/glshim/spec/template/base/wrap.c.j2 b/project/jni/glshim/spec/template/base/wrap.c.j2 old mode 100755 new mode 100644 index 34211a1c6..2da425970 --- a/project/jni/glshim/spec/template/base/wrap.c.j2 +++ b/project/jni/glshim/spec/template/base/wrap.c.j2 @@ -1,11 +1,9 @@ {% extends "base/base.j2" %} {% block main %} -{% block headers %} {% include "base/headers.j2" %} -{% endblock %} {% for func in functions %} {% block definition scoped %} -{{ func.return }} {% block func_prefix %}{% endblock %}{{ func.name }}({{ func.args|args }}) { +{{ func.return }} {{ 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) }}); diff --git a/project/jni/glshim/spec/template/base/wrap.h.j2 b/project/jni/glshim/spec/template/base/wrap.h.j2 old mode 100755 new mode 100644 index 4ee719255..277abd46c --- a/project/jni/glshim/spec/template/base/wrap.h.j2 +++ b/project/jni/glshim/spec/template/base/wrap.h.j2 @@ -1,6 +1,17 @@ {% 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 }}, @@ -19,7 +30,6 @@ typedef struct { typedef struct { int format; FUNC_{{ f.types }} func; - int refs; {% if f.args %} ARGS_{{ f.types }} args; {% endif %} diff --git a/project/jni/glshim/spec/template/client.c.j2 b/project/jni/glshim/spec/template/client.c.j2 new file mode 100644 index 000000000..9ed91119b --- /dev/null +++ b/project/jni/glshim/spec/template/client.c.j2 @@ -0,0 +1,52 @@ +{% extends "base/wrap.c.j2" %} +{% block headers %} +#include +#include +#include +#include +{{ 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 %} diff --git a/project/jni/glshim/spec/template/eglwrap.c.j2 b/project/jni/glshim/spec/template/eglwrap.c.j2 new file mode 100644 index 000000000..818c86b57 --- /dev/null +++ b/project/jni/glshim/spec/template/eglwrap.c.j2 @@ -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 %} diff --git a/project/jni/glshim/spec/template/gleswrap.c.j2 b/project/jni/glshim/spec/template/gleswrap.c.j2 index 45e9f5a20..597bd5f88 100755 --- a/project/jni/glshim/spec/template/gleswrap.c.j2 +++ b/project/jni/glshim/spec/template/gleswrap.c.j2 @@ -1,9 +1,13 @@ {% extends "base/wrap.c.j2" %} {% block headers %} {{ super() }} + +{% endblock %} +{% block content %} {% include "base/packed_call.j2" %} {% endblock %} + {% block definition %} #ifndef skip_{{ func.name }} {{ super() -}} @@ -14,7 +18,7 @@ {% endblock %} {% block call %} #ifndef direct_{{ func.name }} - PUSH_IF_COMPILING({{ func.name }}); + PUSH_IF_COMPILING({{ func.name }}) #endif {{ super() }} {% endblock %} diff --git a/project/jni/glshim/spec/template/glextwrap.c.j2 b/project/jni/glshim/spec/template/glextwrap.c.j2 new file mode 100755 index 000000000..d4df290f1 --- /dev/null +++ b/project/jni/glshim/spec/template/glextwrap.c.j2 @@ -0,0 +1,20 @@ +{% extends "base/wrap.c.j2" %} +{% block headers %} +{{ super() }} + +{% endblock %} +{% block definition %} +#ifndef skip_{{ func.name }} +{{ super() -}} +#endif +{% endblock %} +{% block load %} + LOAD_GLES_OES({{ func.name }}); +{% endblock %} +{% block call %} +#ifndef direct_{{ func.name }} + PUSH_IF_COMPILING({{ func.name }}) +#endif + {{ super() }} +{% endblock %} +{% block prefix %}gles{% endblock %} diff --git a/project/jni/glshim/spec/template/glwrap.h.j2 b/project/jni/glshim/spec/template/glwrap.h.j2 old mode 100755 new mode 100644 index c49133347..3c39b7d46 --- a/project/jni/glshim/spec/template/glwrap.h.j2 +++ b/project/jni/glshim/spec/template/glwrap.h.j2 @@ -8,7 +8,6 @@ {{ func.name }}_PACKED *packed_data = malloc(sizeof({{ func.name }}_PACKED)); \ packed_data->format = {{ func.name }}_FORMAT; \ packed_data->func = {{ func.name }}; \ - packed_data->refs = 0; \ {% if func.args %} {% for arg in func.args %} packed_data->args.a{{ loop.index }} = ({{ arg.type|unconst }}){{ arg.name }}; \ @@ -18,4 +17,4 @@ } #endif {% endfor %} -{% endblock %} +{% endblock %} \ No newline at end of file diff --git a/project/jni/glshim/spec/template/glxfuncs.j2 b/project/jni/glshim/spec/template/glxfuncs.j2 new file mode 100644 index 000000000..7a721178b --- /dev/null +++ b/project/jni/glshim/spec/template/glxfuncs.j2 @@ -0,0 +1,3 @@ +{% for func in functions %} +EX({{ func.name }}); +{% endfor %} diff --git a/project/jni/glshim/spec/template/host.c.j2 b/project/jni/glshim/spec/template/host.c.j2 new file mode 100644 index 000000000..38c113372 --- /dev/null +++ b/project/jni/glshim/spec/template/host.c.j2 @@ -0,0 +1,6 @@ +{% extends "base/header.j2" %} + +{% block content %} +{% include "base/indexed_call.j2" %} + +{% endblock %} diff --git a/project/jni/glshim/spec/template/mock.c.j2 b/project/jni/glshim/spec/template/mock.c.j2 deleted file mode 100755 index 8e5a6f346..000000000 --- a/project/jni/glshim/spec/template/mock.c.j2 +++ /dev/null @@ -1,83 +0,0 @@ -{% extends "base/wrap.c.j2" %} -{% block headers %} -{{ super() }} -#include -#include "tack.h" - -static tack_t mock = {0}; - -const char *mock_name(int func) { - switch (func) { - {% for f in functions %} - case {{ f.name }}_INDEX: return "{{ f.name }}"; - {% endfor %} - } -} - -void mock_print(const indexed_call_t *packed) { - if (packed == NULL) { - printf("NULL()\n"); - return; - } - switch (packed->func) { - {% for f in functions %} - case {{ f.name }}_INDEX: { - INDEXED_{{ f.types }} *unpacked = (INDEXED_{{ f.types }} *)packed; - {% if f.args %} - ARGS_{{ f.types }} args = unpacked->args; - {% endif %} - printf("{{ f.name }}({{ f.args|printf }});\n" - {%- for arg in f.args %}, args.a{{ loop.index }}{% endfor -%}); - break; - } - {% endfor %} - } -} - -void *mock_get(int idx) { - return tack_get(&mock, idx); -} - -void *mock_peek() { - return tack_peek(&mock); -} - -void *mock_cur() { - return tack_cur(&mock); -} - -void *mock_shift() { - return tack_shift(&mock); -} - -void *mock_slide(int func) { - if (mock.pos >= mock.len) { - return NULL; - } - indexed_call_t **stack = (indexed_call_t **)mock.data; - for (int i = mock.pos; i < mock.len; i++) { - if (stack[i]->func == func) { - mock.pos = i + 1; - return stack[i]; - } - } - return NULL; -} - -void mock_push(void *call) { - tack_push(&mock, call); -} - -void *mock_pop() { - return tack_pop(&mock); -} - -{% endblock %} - -{% block func_prefix %}gles_{% endblock %} -{% block call %} - emit_{{ func.name }}({{ func.args|args(0) }}); - {% if not func.void %} - return ({{ func.return }})0; - {% endif %} -{% endblock %} diff --git a/project/jni/glshim/spec/template/mock.h.j2 b/project/jni/glshim/spec/template/mock.h.j2 deleted file mode 100755 index 117db41af..000000000 --- a/project/jni/glshim/spec/template/mock.h.j2 +++ /dev/null @@ -1,132 +0,0 @@ -{% extends "base/header.j2" %} -{% block main %} -#ifdef __cplusplus -extern "C" { -#endif -{{ super() }} -#ifdef __cplusplus -} // extern "C" -#endif -{% endblock %} - -{% block content %} -{{ super() }} -const char *mock_name(int func); -void *mock_cur(); -void *mock_get(int idx); -void *mock_peek(); -void *mock_shift(); -void *mock_slide(int func); -void mock_print(const indexed_call_t *packed); -void mock_push(void *call); - -static int verbose_test = 0; -static int failed_test = 0; -#define verbose { verbose_test = 1; } - -#define mock_warningf(...) { printf("WARNING: "), printf(__VA_ARGS__); } -#define mock_errorf(...) { printf("ERROR: "); printf(__VA_ARGS__); failed_test = 1; } -#define mock_assert(cond, ...) { if (!(cond)) { mock_errorf(__VA_ARGS__); }} -#define assert(cond) mock_assert(cond, "%s\n", #cond) - -#define mock_print_ptr(prefix, ptr, size) \ - printf("%s ", prefix); \ - if (ptr == NULL) { \ - printf("NULL"); \ - } else { \ - for (size_t i = 0; i < size; i++) { \ - if (i > 0 && i % 4 == 0) printf(" "); \ - printf("%02X", *(uint8_t *)(ptr+i)); \ - } \ - } \ - printf("\n"); - -#define mock_return { \ - indexed_call_t *call = NULL; \ - while ((call = mock_shift()) != NULL) { \ - mock_warningf("extra "); \ - mock_print(call); \ - } \ - if (state.error) { \ - mock_warningf("Ended with GL error flag: %s\n", gl_str(state.error)); \ - } \ - return failed_test; \ -} - -{% for func in functions %} -#define pack_{{ func.name }}({{ func.args|args(0) }}) ({ \ - {{ func.name }}_INDEXED *packed_data = malloc(sizeof({{ func.name }}_INDEXED)); \ - packed_data->func = {{ func.name }}_INDEX; \ - {% if func.args %} - {% for arg in func.args %} - packed_data->args.a{{ loop.index }} = ({{ arg.type|unconst }}){{ arg.name }}; \ - {% endfor %} - {% endif %} - packed_data; \ -}) -#define emit_{{ func.name }}({{ func.args|args(0) }}) { \ - mock_push(pack_{{ func.name }}({{ func.args|args(0) }})); \ -} -#define test_{{ func.name }}({{ func.args|args(0) }}) { \ - {{ func.name }}_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("{{ func.name }} missing (no calls left)\n"); \ - } else if (packed->func != {{ func.name }}_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide({{ func.name }}_INDEX); \ - if (! packed) { \ - mock_errorf("{{ func.name }} missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for {{ func.name }}:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1; \ - void *a, *b; \ - {% for arg in func.args %} - {% if '*' in arg.type %} - a = packed->args.a{{ loop.index }}, b = {{ arg.name }}; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof({{ arg.name }})) != 0))) { \ - printf(" ERROR: arg mismatch: {{ arg.name }}\n"); \ - mock_print_ptr(" expected:", b, sizeof({{ arg.name }})); \ - mock_print_ptr(" found:", a, sizeof({{ arg.name }})); \ - {% elif 'float' in arg.type or 'double' in arg.type %} - if (packed->args.a{{ loop.index }} - {{ arg.name }} >= 0.01) { \ - {% else %} - if (packed->args.a{{ loop.index }} != {{ arg.name }}) { \ - {% endif %} - match = 0; \ - } \ - {% endfor %} - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: {{ func.name }}({{ func.args|printf }});\n", {{ func.args|args(0) }}); \ - } \ - } \ -} -{% endfor %} - -{% for func in functions %} -#define gles_{{ func.name }}_INDEX {{ loop.index }} -#define gles_{{ func.name }}_RETURN {{ func.return }} -#define gles_{{ func.name }}_ARG_NAMES {{ func.args|args(0) }} -#define gles_{{ func.name }}_ARG_EXPAND {{ func.args|args }} -#define gles_{{ func.name }}_PACKED PACKED_{{ func.types }} -#define gles_{{ func.name }}_INDEXED INDEXED_{{ func.types }} -#define gles_{{ func.name }}_FORMAT FORMAT_{{ func.types }} -{% endfor %} - -{% for func in functions %} -{{ func.return }} gles_{{ func.name }}({{ func.name }}_ARG_EXPAND); -{% endfor %} -{% endblock %} diff --git a/project/jni/glshim/spec/template/proxy.h.j2 b/project/jni/glshim/spec/template/proxy.h.j2 new file mode 100644 index 000000000..ff9f7e8e5 --- /dev/null +++ b/project/jni/glshim/spec/template/proxy.h.j2 @@ -0,0 +1 @@ +{% extends "base/wrap.h.j2" %} diff --git a/project/jni/glshim/spec/xml/egl.xml b/project/jni/glshim/spec/xml/egl.xml old mode 100755 new mode 100644 diff --git a/project/jni/glshim/spec/xml/gles-2.0.xml b/project/jni/glshim/spec/xml/gles-2.0.xml old mode 100755 new mode 100644 diff --git a/project/jni/glshim/spec/xml/glx.xml b/project/jni/glshim/spec/xml/glx.xml old mode 100755 new mode 100644 diff --git a/project/jni/glshim/spec/xml/glxext.xml b/project/jni/glshim/spec/xml/glxext.xml old mode 100755 new mode 100644 diff --git a/project/jni/glshim/spec/xml/opengl.xml b/project/jni/glshim/spec/xml/opengl.xml old mode 100755 new mode 100644 diff --git a/project/jni/glshim/spec/xml/wgl.xml b/project/jni/glshim/spec/xml/wgl.xml old mode 100755 new mode 100644 diff --git a/project/jni/glshim/spec/yml/alsa.yml b/project/jni/glshim/spec/yml/alsa.yml new file mode 100644 index 000000000..d94b6f135 --- /dev/null +++ b/project/jni/glshim/spec/yml/alsa.yml @@ -0,0 +1,1229 @@ +snd_asoundlib_version: [const char *] +# note: dlsym/dlopen need to be implemented in the client proxy lib +snd_dlopen: [void *, const char *file, int mode] +snd_dlsym: [void *, void *handle, const char *name, const char *version] +snd_dlclose: [int, void *handle] + +# global.h +# callback functions won't work :( +snd_async_add_handler: [int, snd_async_handler_t **handler, int fd, snd_async_callback_t callback, void *private_data] +snd_async_del_handler: [int, snd_async_handler_t *handler] +snd_async_handler_get_fd: [int, snd_async_handler_t *handler] +snd_async_handler_get_signo: [int, snd_async_handler_t *handler] +snd_async_handler_get_callback_private: [void *, snd_async_handler_t *handler] +snd_shm_area_create: [struct snd_shm_area *, int shmid, void *ptr] +snd_shm_area_share: [struct snd_shm_area *, struct snd_shm_area *area] +snd_shm_area_destroy: [int, struct snd_shm_area *area] +snd_user_file: [int, const char *file, char **result] + +# input.h +snd_input_stdio_open: [int, snd_input_t **inputp, const char *file, const char *mode] +snd_input_stdio_attach: [int, snd_input_t **inputp, FILE *fp, int _close] +snd_input_buffer_open: [int, snd_input_t **inputp, const char *buffer, ssize_t size] +snd_input_close: [int, snd_input_t *input] +snd_input_scanf: [int, snd_input_t *input, const char *format, ...] +snd_input_gets: [char *, snd_input_t *input, char *str, size_t size] +snd_input_getc: [int, snd_input_t *input] +snd_input_ungetc: [int, snd_input_t *input, int c] + +# output.h +snd_output_stdio_open: [int, snd_output_t **outputp, const char *file, const char *mode] +snd_output_stdio_attach: [int, snd_output_t **outputp, FILE *fp, int _close] +snd_output_buffer_open: [int, snd_output_t **outputp] +snd_output_buffer_string: [size_t, snd_output_t *output, char **buf] +snd_output_close: [int, snd_output_t *output] +snd_output_printf: [int, snd_output_t *output, const char *format, ...] +snd_output_vprintf: [int, snd_output_t *output, const char *format, va_list args] +snd_output_puts: [int, snd_output_t *output, const char *str] +snd_output_putc: [int, snd_output_t *output, int c] +snd_output_flush: [int, snd_output_t *output] + +# error.h +snd_strerror: [const char *, int errnum] +# callback-based functions won't work +snd_lib_error_set_handler: [int, snd_lib_error_handler_t handler] + +# conf.h +snd_config_top: [int, snd_config_t **config] +snd_config_load: [int, snd_config_t *config, snd_input_t *in] +snd_config_load_override: [int, snd_config_t *config, snd_input_t *in] +snd_config_save: [int, snd_config_t *config, snd_output_t *out] +snd_config_update: [int] +snd_config_update_r: [int, snd_config_t **top, snd_config_update_t **update, const char *path] +snd_config_update_free: [int, snd_config_update_t *update] +snd_config_update_free_global: [int] +snd_config_search: [int, snd_config_t *config, const char *key, snd_config_t **result] +snd_config_searchv: [int, snd_config_t *config, snd_config_t **result, ...] +snd_config_search_definition: [int, snd_config_t *config, const char *base, const char *key, snd_config_t **result] +snd_config_expand: [int, snd_config_t *config, snd_config_t *root, const char *args, snd_config_t *private_data, snd_config_t **result] +snd_config_evaluate: [int, snd_config_t *config, snd_config_t *root, snd_config_t *private_data, snd_config_t **result] +snd_config_add: [int, snd_config_t *config, snd_config_t *leaf] +snd_config_delete: [int, snd_config_t *config] +snd_config_delete_compound_members: [int, const snd_config_t *config] +snd_config_copy: [int, snd_config_t **dst, snd_config_t *src] +snd_config_make: [int, snd_config_t **config, const char *key, snd_config_type_t type] +snd_config_make_integer: [int, snd_config_t **config, const char *key] +snd_config_make_integer64: [int, snd_config_t **config, const char *key] +snd_config_make_real: [int, snd_config_t **config, const char *key] +snd_config_make_string: [int, snd_config_t **config, const char *key] +snd_config_make_pointer: [int, snd_config_t **config, const char *key] +snd_config_make_compound: [int, snd_config_t **config, const char *key, int join] +snd_config_imake_integer: [int, snd_config_t **config, const char *key, const long value] +snd_config_imake_integer64: [int, snd_config_t **config, const char *key, const long long value] +snd_config_imake_real: [int, snd_config_t **config, const char *key, const double value] +snd_config_imake_string: [int, snd_config_t **config, const char *key, const char *ascii] +snd_config_imake_pointer: [int, snd_config_t **config, const char *key, const void *ptr] +snd_config_get_type: [snd_config_type_t, const snd_config_t *config] +snd_config_set_id: [int, snd_config_t *config, const char *id] +snd_config_set_integer: [int, snd_config_t *config, long value] +snd_config_set_integer64: [int, snd_config_t *config, long long value] +snd_config_set_real: [int, snd_config_t *config, double value] +snd_config_set_string: [int, snd_config_t *config, const char *value] +snd_config_set_ascii: [int, snd_config_t *config, const char *ascii] +snd_config_set_pointer: [int, snd_config_t *config, const void *ptr] +snd_config_get_id: [int, const snd_config_t *config, const char **value] +snd_config_get_integer: [int, const snd_config_t *config, long *value] +snd_config_get_integer64: [int, const snd_config_t *config, long long *value] +snd_config_get_real: [int, const snd_config_t *config, double *value] +snd_config_get_ireal: [int, const snd_config_t *config, double *value] +snd_config_get_string: [int, const snd_config_t *config, const char **value] +snd_config_get_ascii: [int, const snd_config_t *config, char **value] +snd_config_get_pointer: [int, const snd_config_t *config, const void **value] +snd_config_test_id: [int, const snd_config_t *config, const char *id] +snd_config_iterator_first: [snd_config_iterator_t, const snd_config_t *node] +snd_config_iterator_next: [snd_config_iterator_t, const snd_config_iterator_t iterator] +snd_config_iterator_end: [snd_config_iterator_t, const snd_config_t *node] +snd_config_iterator_entry: [snd_config_t *, const snd_config_iterator_t iterator] +snd_config_get_bool_ascii: [int, const char *ascii] +snd_config_get_bool: [int, const snd_config_t *conf] +snd_config_get_ctl_iface_ascii: [int, const char *ascii] +snd_config_get_ctl_iface: [int, const snd_config_t *conf] +snd_names_list: [int, const char *iface, snd_devname_t **list] +snd_names_list_free: [void, snd_devname_t *list] + +# pcm.h +snd_pcm_format_mask_sizeof: [size_t] +snd_pcm_subformat_mask_sizeof: [size_t] +snd_pcm_status_sizeof: [size_t] +snd_async_add_pcm_handler: [int, snd_async_handler_t **handler, snd_pcm_t *pcm, snd_async_callback_t callback, void *private_data] +snd_async_handler_get_pcm: [snd_pcm_t *, snd_async_handler_t *handler] +snd_pcm_access_mask_any: [void, snd_pcm_access_mask_t *mask] +snd_pcm_access_mask_copy: [void, snd_pcm_access_mask_t *dst, const snd_pcm_access_mask_t *src] +snd_pcm_access_mask_empty: [int, const snd_pcm_access_mask_t *mask] +snd_pcm_access_mask_free: [void, snd_pcm_access_mask_t *obj] +snd_pcm_access_mask_malloc: [int, snd_pcm_access_mask_t **ptr] +snd_pcm_access_mask_none: [void, snd_pcm_access_mask_t *mask] +snd_pcm_access_mask_reset: [void, snd_pcm_access_mask_t *mask, snd_pcm_access_t val] +snd_pcm_access_mask_set: [void, snd_pcm_access_mask_t *mask, snd_pcm_access_t val] +snd_pcm_access_mask_test: [int, const snd_pcm_access_mask_t *mask, snd_pcm_access_t val] +snd_pcm_access_name: [const char *, const snd_pcm_access_t _access] +snd_pcm_area_copy: [int, const snd_pcm_channel_area_t *dst_channel, snd_pcm_uframes_t dst_offset, const snd_pcm_channel_area_t *src_channel, snd_pcm_uframes_t src_offset, unsigned int samples, snd_pcm_format_t format] +snd_pcm_area_silence: [int, const snd_pcm_channel_area_t *dst_channel, snd_pcm_uframes_t dst_offset, unsigned int samples, snd_pcm_format_t format] +snd_pcm_areas_copy: [int, const snd_pcm_channel_area_t *dst_channels, snd_pcm_uframes_t dst_offset, const snd_pcm_channel_area_t *src_channels, snd_pcm_uframes_t src_offset, unsigned int channels, snd_pcm_uframes_t frames, snd_pcm_format_t format] +snd_pcm_areas_silence: [int, const snd_pcm_channel_area_t *dst_channels, snd_pcm_uframes_t dst_offset, unsigned int channels, snd_pcm_uframes_t frames, snd_pcm_format_t format] +snd_pcm_avail_update: [snd_pcm_sframes_t, snd_pcm_t *pcm] +snd_pcm_build_linear_format: [snd_pcm_format_t, int width, int pwidth, int unsignd, int big_endian] +snd_pcm_bytes_to_frames: [snd_pcm_sframes_t, snd_pcm_t *pcm, ssize_t bytes] +snd_pcm_bytes_to_samples: [long, snd_pcm_t *pcm, ssize_t bytes] +snd_pcm_close: [int, snd_pcm_t *pcm] +snd_pcm_delay: [int, snd_pcm_t *pcm, snd_pcm_sframes_t *delayp] +snd_pcm_drain: [int, snd_pcm_t *pcm] +snd_pcm_drop: [int, snd_pcm_t *pcm] +snd_pcm_dump: [int, snd_pcm_t *pcm, snd_output_t *out] +snd_pcm_dump_hw_setup: [int, snd_pcm_t *pcm, snd_output_t *out] +snd_pcm_dump_setup: [int, snd_pcm_t *pcm, snd_output_t *out] +snd_pcm_dump_sw_setup: [int, snd_pcm_t *pcm, snd_output_t *out] +snd_pcm_format_big_endian: [int, snd_pcm_format_t format] +snd_pcm_format_cpu_endian: [int, snd_pcm_format_t format] +snd_pcm_format_description: [const char *, const snd_pcm_format_t format] +snd_pcm_format_float: [int, snd_pcm_format_t format] +snd_pcm_format_linear: [int, snd_pcm_format_t format] +snd_pcm_format_little_endian: [int, snd_pcm_format_t format] +snd_pcm_format_mask_any: [void, snd_pcm_format_mask_t *mask] +snd_pcm_format_mask_copy: [void, snd_pcm_format_mask_t *dst, const snd_pcm_format_mask_t *src] +snd_pcm_format_mask_empty: [int, const snd_pcm_format_mask_t *mask] +snd_pcm_format_mask_free: [void, snd_pcm_format_mask_t *obj] +snd_pcm_format_mask_malloc: [int, snd_pcm_format_mask_t **ptr] +snd_pcm_format_mask_none: [void, snd_pcm_format_mask_t *mask] +snd_pcm_format_mask_reset: [void, snd_pcm_format_mask_t *mask, snd_pcm_format_t val] +snd_pcm_format_mask_set: [void, snd_pcm_format_mask_t *mask, snd_pcm_format_t val] +snd_pcm_format_mask_test: [int, const snd_pcm_format_mask_t *mask, snd_pcm_format_t val] +snd_pcm_format_name: [const char *, const snd_pcm_format_t format] +snd_pcm_format_physical_width: [int, snd_pcm_format_t format] +snd_pcm_format_set_silence: [int, snd_pcm_format_t format, void *buf, unsigned int samples] +snd_pcm_format_signed: [int, snd_pcm_format_t format] +snd_pcm_format_silence: [u_int8_t, snd_pcm_format_t format] +snd_pcm_format_silence_16: [u_int16_t, snd_pcm_format_t format] +snd_pcm_format_silence_32: [u_int32_t, snd_pcm_format_t format] +snd_pcm_format_silence_64: [u_int64_t, snd_pcm_format_t format] +snd_pcm_format_size: [ssize_t, snd_pcm_format_t format, size_t samples] +snd_pcm_format_unsigned: [int, snd_pcm_format_t format] +snd_pcm_format_value: [snd_pcm_format_t, const char* name] +snd_pcm_format_width: [int, snd_pcm_format_t format] +snd_pcm_forward: [snd_pcm_sframes_t, snd_pcm_t *pcm, snd_pcm_uframes_t frames] +snd_pcm_frames_to_bytes: [ssize_t, snd_pcm_t *pcm, snd_pcm_sframes_t frames] +snd_pcm_get_params: [int, snd_pcm_t *pcm, snd_pcm_uframes_t *buffer_size, snd_pcm_uframes_t *period_size] +snd_pcm_hook_add: [int, snd_pcm_hook_t **hookp, snd_pcm_t *pcm, snd_pcm_hook_type_t type, snd_pcm_hook_func_t func, void *private_data] +snd_pcm_hook_get_pcm: [snd_pcm_t *, snd_pcm_hook_t *hook] +snd_pcm_hook_get_private: [void *, snd_pcm_hook_t *hook] +snd_pcm_hook_remove: [int, snd_pcm_hook_t *hook] +snd_pcm_hook_set_private: [void, snd_pcm_hook_t *hook, void *private_data] +snd_pcm_hw_free: [int, snd_pcm_t *pcm] +snd_pcm_hw_params: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params] +snd_pcm_hw_params_any: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params] +snd_pcm_hw_params_can_mmap_sample_resolution: [int, const snd_pcm_hw_params_t *params] +snd_pcm_hw_params_can_overrange: [int, const snd_pcm_hw_params_t *params] +snd_pcm_hw_params_can_pause: [int, const snd_pcm_hw_params_t *params] +snd_pcm_hw_params_can_resume: [int, const snd_pcm_hw_params_t *params] +snd_pcm_hw_params_can_sync_start: [int, const snd_pcm_hw_params_t *params] +snd_pcm_hw_params_copy: [void, snd_pcm_hw_params_t *dst, const snd_pcm_hw_params_t *src] +snd_pcm_hw_params_current: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params] +snd_pcm_hw_params_dump: [int, snd_pcm_hw_params_t *params, snd_output_t *out] +snd_pcm_hw_params_free: [void, snd_pcm_hw_params_t *obj] +snd_pcm_hw_params_get_access: [int, const snd_pcm_hw_params_t *params, snd_pcm_access_t *_access] +snd_pcm_hw_params_get_access_mask: [int, snd_pcm_hw_params_t *params, snd_pcm_access_mask_t *mask] +snd_pcm_hw_params_get_buffer_size: [int, const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val] +snd_pcm_hw_params_get_buffer_size_max: [int, const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val] +snd_pcm_hw_params_get_buffer_size_min: [int, const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val] +snd_pcm_hw_params_get_buffer_time: [int, const snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_get_buffer_time_max: [int, const snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_get_buffer_time_min: [int, const snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_get_channels: [int, const snd_pcm_hw_params_t *params, unsigned int *val] +snd_pcm_hw_params_get_channels_max: [int, const snd_pcm_hw_params_t *params, unsigned int *val] +snd_pcm_hw_params_get_channels_min: [int, const snd_pcm_hw_params_t *params, unsigned int *val] +snd_pcm_hw_params_get_export_buffer: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val] +snd_pcm_hw_params_get_fifo_size: [int, const snd_pcm_hw_params_t *params] +snd_pcm_hw_params_get_format: [int, const snd_pcm_hw_params_t *params, snd_pcm_format_t *val] +snd_pcm_hw_params_get_format_mask: [void, snd_pcm_hw_params_t *params, snd_pcm_format_mask_t *mask] +snd_pcm_hw_params_get_min_align: [int, const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val] +snd_pcm_hw_params_get_period_size: [int, const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *frames, int *dir] +snd_pcm_hw_params_get_period_size_max: [int, const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *frames, int *dir] +snd_pcm_hw_params_get_period_size_min: [int, const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *frames, int *dir] +snd_pcm_hw_params_get_period_time: [int, const snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_get_period_time_max: [int, const snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_get_period_time_min: [int, const snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_get_periods: [int, const snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_get_periods_max: [int, const snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_get_periods_min: [int, const snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_get_rate: [int, const snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_get_rate_max: [int, const snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_get_rate_min: [int, const snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_get_rate_numden: [int, const snd_pcm_hw_params_t *params, unsigned int *rate_num, unsigned int *rate_den] +snd_pcm_hw_params_get_rate_resample: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val] +snd_pcm_hw_params_get_sbits: [int, const snd_pcm_hw_params_t *params] +snd_pcm_hw_params_get_subformat: [int, const snd_pcm_hw_params_t *params, snd_pcm_subformat_t *subformat] +snd_pcm_hw_params_get_subformat_mask: [void, snd_pcm_hw_params_t *params, snd_pcm_subformat_mask_t *mask] +snd_pcm_hw_params_get_tick_time: [int, const snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_get_tick_time_max: [int, const snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_get_tick_time_min: [int, const snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_is_batch: [int, const snd_pcm_hw_params_t *params] +snd_pcm_hw_params_is_block_transfer: [int, const snd_pcm_hw_params_t *params] +snd_pcm_hw_params_is_double: [int, const snd_pcm_hw_params_t *params] +snd_pcm_hw_params_is_half_duplex: [int, const snd_pcm_hw_params_t *params] +snd_pcm_hw_params_is_joint_duplex: [int, const snd_pcm_hw_params_t *params] +snd_pcm_hw_params_malloc: [int, snd_pcm_hw_params_t **ptr] +snd_pcm_hw_params_set_access: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_access_t _access] +snd_pcm_hw_params_set_access_first: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_access_t *_access] +snd_pcm_hw_params_set_access_last: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_access_t *_access] +snd_pcm_hw_params_set_access_mask: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_access_mask_t *mask] +snd_pcm_hw_params_set_buffer_size: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t val] +snd_pcm_hw_params_set_buffer_size_first: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val] +snd_pcm_hw_params_set_buffer_size_last: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val] +snd_pcm_hw_params_set_buffer_size_max: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val] +snd_pcm_hw_params_set_buffer_size_min: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val] +snd_pcm_hw_params_set_buffer_size_minmax: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *min, snd_pcm_uframes_t *max] +snd_pcm_hw_params_set_buffer_size_near: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val] +snd_pcm_hw_params_set_buffer_time: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir] +snd_pcm_hw_params_set_buffer_time_first: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_buffer_time_last: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_buffer_time_max: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_buffer_time_min: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_buffer_time_minmax: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *min, int *mindir, unsigned int *max, int *maxdir] +snd_pcm_hw_params_set_buffer_time_near: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_channels: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val] +snd_pcm_hw_params_set_channels_first: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val] +snd_pcm_hw_params_set_channels_last: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val] +snd_pcm_hw_params_set_channels_max: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val] +snd_pcm_hw_params_set_channels_min: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val] +snd_pcm_hw_params_set_channels_minmax: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *min, unsigned int *max] +snd_pcm_hw_params_set_channels_near: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val] +snd_pcm_hw_params_set_export_buffer: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val] +snd_pcm_hw_params_set_format: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_format_t val] +snd_pcm_hw_params_set_format_first: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_format_t *format] +snd_pcm_hw_params_set_format_last: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_format_t *format] +snd_pcm_hw_params_set_format_mask: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_format_mask_t *mask] +snd_pcm_hw_params_set_period_size: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t val, int dir] +snd_pcm_hw_params_set_period_size_first: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val, int *dir] +snd_pcm_hw_params_set_period_size_integer: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params] +snd_pcm_hw_params_set_period_size_last: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val, int *dir] +snd_pcm_hw_params_set_period_size_max: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val, int *dir] +snd_pcm_hw_params_set_period_size_min: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val, int *dir] +snd_pcm_hw_params_set_period_size_minmax: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *min, int *mindir, snd_pcm_uframes_t *max, int *maxdir] +snd_pcm_hw_params_set_period_size_near: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val, int *dir] +snd_pcm_hw_params_set_period_time: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir] +snd_pcm_hw_params_set_period_time_first: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_period_time_last: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_period_time_max: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_period_time_min: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_period_time_minmax: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *min, int *mindir, unsigned int *max, int *maxdir] +snd_pcm_hw_params_set_period_time_near: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_periods: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir] +snd_pcm_hw_params_set_periods_first: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_periods_integer: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params] +snd_pcm_hw_params_set_periods_last: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_periods_max: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_periods_min: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_periods_minmax: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *min, int *mindir, unsigned int *max, int *maxdir] +snd_pcm_hw_params_set_periods_near: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_rate: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir] +snd_pcm_hw_params_set_rate_first: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_rate_last: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_rate_max: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_rate_min: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_rate_minmax: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *min, int *mindir, unsigned int *max, int *maxdir] +snd_pcm_hw_params_set_rate_near: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_rate_resample: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val] +snd_pcm_hw_params_set_subformat: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_subformat_t subformat] +snd_pcm_hw_params_set_subformat_first: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_subformat_t *subformat] +snd_pcm_hw_params_set_subformat_last: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_subformat_t *subformat] +snd_pcm_hw_params_set_subformat_mask: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_subformat_mask_t *mask] +snd_pcm_hw_params_set_tick_time: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir] +snd_pcm_hw_params_set_tick_time_first: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_tick_time_last: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_tick_time_max: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_tick_time_min: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_set_tick_time_minmax: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *min, int *mindir, unsigned int *max, int *maxdir] +snd_pcm_hw_params_set_tick_time_near: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir] +snd_pcm_hw_params_test_access: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_access_t _access] +snd_pcm_hw_params_test_buffer_size: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t val] +snd_pcm_hw_params_test_buffer_time: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir] +snd_pcm_hw_params_test_channels: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val] +snd_pcm_hw_params_test_format: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_format_t val] +snd_pcm_hw_params_test_period_size: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t val, int dir] +snd_pcm_hw_params_test_period_time: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir] +snd_pcm_hw_params_test_periods: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir] +snd_pcm_hw_params_test_rate: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir] +snd_pcm_hw_params_test_subformat: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_subformat_t subformat] +snd_pcm_hw_params_test_tick_time: [int, snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir] +snd_pcm_hwsync: [int, snd_pcm_t *pcm] +snd_pcm_info: [int, snd_pcm_t *pcm, snd_pcm_info_t *info] +snd_pcm_info_copy: [void, snd_pcm_info_t *dst, const snd_pcm_info_t *src] +snd_pcm_info_free: [void, snd_pcm_info_t *obj] +snd_pcm_info_get_card: [int, const snd_pcm_info_t *obj] +snd_pcm_info_get_class: [snd_pcm_class_t, const snd_pcm_info_t *obj] +snd_pcm_info_get_device: [unsigned int, const snd_pcm_info_t *obj] +snd_pcm_info_get_id: [const char *, const snd_pcm_info_t *obj] +snd_pcm_info_get_name: [const char *, const snd_pcm_info_t *obj] +snd_pcm_info_get_stream: [snd_pcm_stream_t, const snd_pcm_info_t *obj] +snd_pcm_info_get_subclass: [snd_pcm_subclass_t, const snd_pcm_info_t *obj] +snd_pcm_info_get_subdevice: [unsigned int, const snd_pcm_info_t *obj] +snd_pcm_info_get_subdevice_name: [const char *, const snd_pcm_info_t *obj] +snd_pcm_info_get_subdevices_avail: [unsigned int, const snd_pcm_info_t *obj] +snd_pcm_info_get_subdevices_count: [unsigned int, const snd_pcm_info_t *obj] +snd_pcm_info_get_sync: [snd_pcm_sync_id_t, const snd_pcm_info_t *obj] +snd_pcm_info_malloc: [int, snd_pcm_info_t **ptr] +snd_pcm_info_sizeof: [size_t] +snd_pcm_access_mask_sizeof: [size_t] +snd_pcm_info_set_device: [void, snd_pcm_info_t *obj, unsigned int val] +snd_pcm_info_set_stream: [void, snd_pcm_info_t *obj, snd_pcm_stream_t val] +snd_pcm_info_set_subdevice: [void, snd_pcm_info_t *obj, unsigned int val] +snd_pcm_link: [int, snd_pcm_t *pcm1, snd_pcm_t *pcm2] +snd_pcm_meter_add_scope: [int, snd_pcm_t *pcm, snd_pcm_scope_t *scope] +snd_pcm_meter_get_boundary: [snd_pcm_uframes_t, snd_pcm_t *pcm] +snd_pcm_meter_get_bufsize: [snd_pcm_uframes_t, snd_pcm_t *pcm] +snd_pcm_meter_get_channels: [unsigned int, snd_pcm_t *pcm] +snd_pcm_meter_get_now: [snd_pcm_uframes_t, snd_pcm_t *pcm] +snd_pcm_meter_get_rate: [unsigned int, snd_pcm_t *pcm] +snd_pcm_meter_search_scope: [snd_pcm_scope_t *, snd_pcm_t *pcm, const char *name] +snd_pcm_mmap_begin: [int, snd_pcm_t *pcm, const snd_pcm_channel_area_t **areas, snd_pcm_uframes_t *offset, snd_pcm_uframes_t *frames] +snd_pcm_mmap_commit: [snd_pcm_sframes_t, snd_pcm_t *pcm, snd_pcm_uframes_t offset, snd_pcm_uframes_t frames] +snd_pcm_mmap_readi: [snd_pcm_sframes_t, snd_pcm_t *pcm, void *buffer, snd_pcm_uframes_t size] +snd_pcm_mmap_readn: [snd_pcm_sframes_t, snd_pcm_t *pcm, void **bufs, snd_pcm_uframes_t size] +snd_pcm_mmap_writei: [snd_pcm_sframes_t, snd_pcm_t *pcm, const void *buffer, snd_pcm_uframes_t size] +snd_pcm_mmap_writen: [snd_pcm_sframes_t, snd_pcm_t *pcm, void **bufs, snd_pcm_uframes_t size] +snd_pcm_name: [const char *, snd_pcm_t *pcm] +snd_pcm_nonblock: [int, snd_pcm_t *pcm, int nonblock] +snd_pcm_open: [int, snd_pcm_t **pcm, const char *name, snd_pcm_stream_t stream, int mode] +snd_pcm_open_lconf: [int, snd_pcm_t **pcm, const char *name, snd_pcm_stream_t stream, int mode, snd_config_t *lconf] +snd_pcm_pause: [int, snd_pcm_t *pcm, int enable] +snd_pcm_poll_descriptors: [int, snd_pcm_t *pcm, struct pollfd *pfds, unsigned int space] +snd_pcm_poll_descriptors_count: [int, snd_pcm_t *pcm] +snd_pcm_poll_descriptors_revents: [int, snd_pcm_t *pcm, struct pollfd *pfds, unsigned int nfds, unsigned short *revents] +snd_pcm_prepare: [int, snd_pcm_t *pcm] +snd_pcm_readi: [snd_pcm_sframes_t, snd_pcm_t *pcm, void *buffer, snd_pcm_uframes_t size] +snd_pcm_readn: [snd_pcm_sframes_t, snd_pcm_t *pcm, void **bufs, snd_pcm_uframes_t size] +snd_pcm_recover: [int, snd_pcm_t *pcm, int err, int silent] +snd_pcm_reset: [int, snd_pcm_t *pcm] +snd_pcm_resume: [int, snd_pcm_t *pcm] +snd_pcm_rewind: [snd_pcm_sframes_t, snd_pcm_t *pcm, snd_pcm_uframes_t frames] +snd_pcm_samples_to_bytes: [ssize_t, snd_pcm_t *pcm, long samples] +snd_pcm_scope_get_callback_private: [void *, snd_pcm_scope_t *scope] +snd_pcm_scope_get_name: [const char *, snd_pcm_scope_t *scope] +snd_pcm_scope_malloc: [int, snd_pcm_scope_t **ptr] +snd_pcm_scope_s16_get_channel_buffer: [int16_t *, snd_pcm_scope_t *scope, unsigned int channel] +snd_pcm_scope_s16_open: [int, snd_pcm_t *pcm, const char *name, snd_pcm_scope_t **scopep] +snd_pcm_scope_set_callback_private: [void, snd_pcm_scope_t *scope, void *val] +snd_pcm_hw_params_sizeof: [size_t] +snd_pcm_sw_params_sizeof: [size_t] +snd_pcm_hw_params_is_monotonic: [int, const snd_pcm_hw_params_t *params] +snd_pcm_scope_set_name: [void, snd_pcm_scope_t *scope, const char *val] +snd_pcm_scope_set_ops: [void, snd_pcm_scope_t *scope, const snd_pcm_scope_ops_t *val] +snd_pcm_set_params: [int, snd_pcm_t *pcm, snd_pcm_format_t format, snd_pcm_access_t access, unsigned int channels, unsigned int rate, int soft_resample, unsigned int latency] +snd_pcm_start: [int, snd_pcm_t *pcm] +snd_pcm_start_mode_name: [const char *, snd_pcm_start_t mode] +snd_pcm_state: [snd_pcm_state_t, snd_pcm_t *pcm] +snd_pcm_state_name: [const char *, const snd_pcm_state_t state] +snd_pcm_status: [int, snd_pcm_t *pcm, snd_pcm_status_t *status] +snd_pcm_status_copy: [void, snd_pcm_status_t *dst, const snd_pcm_status_t *src] +snd_pcm_status_dump: [int, snd_pcm_status_t *status, snd_output_t *out] +snd_pcm_status_free: [void, snd_pcm_status_t *obj] +snd_pcm_status_get_avail: [snd_pcm_uframes_t, const snd_pcm_status_t *obj] +snd_pcm_status_get_avail_max: [snd_pcm_uframes_t, const snd_pcm_status_t *obj] +snd_pcm_status_get_delay: [snd_pcm_sframes_t, const snd_pcm_status_t *obj] +snd_pcm_status_get_htstamp: [void, const snd_pcm_status_t *obj, snd_htimestamp_t *ptr] +snd_pcm_status_get_overrange: [snd_pcm_uframes_t, const snd_pcm_status_t *obj] +snd_pcm_status_get_state: [snd_pcm_state_t, const snd_pcm_status_t *obj] +snd_pcm_status_get_trigger_htstamp: [void, const snd_pcm_status_t *obj, snd_htimestamp_t *ptr] +snd_pcm_status_get_trigger_tstamp: [void, const snd_pcm_status_t *obj, snd_timestamp_t *ptr] +snd_pcm_status_get_tstamp: [void, const snd_pcm_status_t *obj, snd_timestamp_t *ptr] +snd_pcm_status_malloc: [int, snd_pcm_status_t **ptr] +snd_pcm_stream: [snd_pcm_stream_t, snd_pcm_t *pcm] +snd_pcm_stream_name: [const char *, const snd_pcm_stream_t stream] +snd_pcm_subformat_description: [const char *, const snd_pcm_subformat_t subformat] +snd_pcm_subformat_mask_any: [void, snd_pcm_subformat_mask_t *mask] +snd_pcm_subformat_mask_copy: [void, snd_pcm_subformat_mask_t *dst, const snd_pcm_subformat_mask_t *src] +snd_pcm_subformat_mask_empty: [int, const snd_pcm_subformat_mask_t *mask] +snd_pcm_subformat_mask_free: [void, snd_pcm_subformat_mask_t *obj] +snd_pcm_subformat_mask_malloc: [int, snd_pcm_subformat_mask_t **ptr] +snd_pcm_subformat_mask_none: [void, snd_pcm_subformat_mask_t *mask] +snd_pcm_subformat_mask_reset: [void, snd_pcm_subformat_mask_t *mask, snd_pcm_subformat_t val] +snd_pcm_subformat_mask_set: [void, snd_pcm_subformat_mask_t *mask, snd_pcm_subformat_t val] +snd_pcm_subformat_mask_test: [int, const snd_pcm_subformat_mask_t *mask, snd_pcm_subformat_t val] +snd_pcm_subformat_name: [const char *, const snd_pcm_subformat_t subformat] +snd_pcm_sw_params: [int, snd_pcm_t *pcm, snd_pcm_sw_params_t *params] +snd_pcm_sw_params_copy: [void, snd_pcm_sw_params_t *dst, const snd_pcm_sw_params_t *src] +snd_pcm_sw_params_current: [int, snd_pcm_t *pcm, snd_pcm_sw_params_t *params] +snd_pcm_sw_params_dump: [int, snd_pcm_sw_params_t *params, snd_output_t *out] +snd_pcm_sw_params_free: [void, snd_pcm_sw_params_t *obj] +snd_pcm_sw_params_get_avail_min: [int, const snd_pcm_sw_params_t *params, snd_pcm_uframes_t *val] +snd_pcm_sw_params_get_boundary: [int, const snd_pcm_sw_params_t *params, snd_pcm_uframes_t *val] +snd_pcm_sw_params_get_silence_size: [int, const snd_pcm_sw_params_t *params, snd_pcm_uframes_t *val] +snd_pcm_sw_params_get_silence_threshold: [int, const snd_pcm_sw_params_t *params, snd_pcm_uframes_t *val] +snd_pcm_sw_params_get_sleep_min: [int, const snd_pcm_sw_params_t *params, unsigned int *val] +snd_pcm_sw_params_get_start_mode: [snd_pcm_start_t, const snd_pcm_sw_params_t *params] +snd_pcm_sw_params_get_start_threshold: [int, const snd_pcm_sw_params_t *paramsm, snd_pcm_uframes_t *val] +snd_pcm_sw_params_get_stop_threshold: [int, const snd_pcm_sw_params_t *params, snd_pcm_uframes_t *val] +snd_pcm_sw_params_get_tstamp_mode: [int, const snd_pcm_sw_params_t *params, snd_pcm_tstamp_t *val] +snd_pcm_sw_params_get_xfer_align: [int, const snd_pcm_sw_params_t *params, snd_pcm_uframes_t *val] +snd_pcm_sw_params_get_xrun_mode: [snd_pcm_xrun_t, const snd_pcm_sw_params_t *params] +snd_pcm_sw_params_malloc: [int, snd_pcm_sw_params_t **ptr] +snd_pcm_sw_params_set_avail_min: [int, snd_pcm_t *pcm, snd_pcm_sw_params_t *params, snd_pcm_uframes_t val] +snd_pcm_sw_params_set_silence_size: [int, snd_pcm_t *pcm, snd_pcm_sw_params_t *params, snd_pcm_uframes_t val] +snd_pcm_sw_params_set_silence_threshold: [int, snd_pcm_t *pcm, snd_pcm_sw_params_t *params, snd_pcm_uframes_t val] +snd_pcm_sw_params_set_sleep_min: [int, snd_pcm_t *pcm, snd_pcm_sw_params_t *params, unsigned int val] +snd_pcm_sw_params_set_start_mode: [int, snd_pcm_t *pcm, snd_pcm_sw_params_t *params, snd_pcm_start_t val] +snd_pcm_sw_params_set_start_threshold: [int, snd_pcm_t *pcm, snd_pcm_sw_params_t *params, snd_pcm_uframes_t val] +snd_pcm_sw_params_set_stop_threshold: [int, snd_pcm_t *pcm, snd_pcm_sw_params_t *params, snd_pcm_uframes_t val] +snd_pcm_sw_params_set_tstamp_mode: [int, snd_pcm_t *pcm, snd_pcm_sw_params_t *params, snd_pcm_tstamp_t val] +snd_pcm_sw_params_set_xfer_align: [int, snd_pcm_t *pcm, snd_pcm_sw_params_t *params, snd_pcm_uframes_t val] +snd_pcm_sw_params_set_xrun_mode: [int, snd_pcm_t *pcm, snd_pcm_sw_params_t *params, snd_pcm_xrun_t val] +snd_pcm_tstamp_mode_name: [const char *, const snd_pcm_tstamp_t mode] +snd_pcm_type: [snd_pcm_type_t, snd_pcm_t *pcm] +snd_pcm_type_name: [const char *, snd_pcm_type_t type] +snd_pcm_unlink: [int, snd_pcm_t *pcm] +snd_pcm_wait: [int, snd_pcm_t *pcm, int timeout] +snd_pcm_writei: [snd_pcm_sframes_t, snd_pcm_t *pcm, const void *buffer, snd_pcm_uframes_t size] +snd_pcm_writen: [snd_pcm_sframes_t, snd_pcm_t *pcm, void **bufs, snd_pcm_uframes_t size] +snd_pcm_xrun_mode_name: [const char *, snd_pcm_xrun_t mode] +snd_spcm_init: [int, snd_pcm_t *pcm, unsigned int rate, unsigned int channels, snd_pcm_format_t format, snd_pcm_subformat_t subformat, snd_spcm_latency_t latency, snd_pcm_access_t _access, snd_spcm_xrun_type_t xrun_type] +snd_spcm_init_duplex: [int, snd_pcm_t *playback_pcm, snd_pcm_t *capture_pcm, unsigned int rate, unsigned int channels, snd_pcm_format_t format, snd_pcm_subformat_t subformat, snd_spcm_latency_t latency, snd_pcm_access_t _access, snd_spcm_xrun_type_t xrun_type, snd_spcm_duplex_type_t duplex_type] +snd_spcm_init_get_params: [int, snd_pcm_t *pcm, unsigned int *rate, snd_pcm_uframes_t *buffer_size, snd_pcm_uframes_t *period_size] + +# rawmidi.h +snd_rawmidi_open: [int, snd_rawmidi_t **in_rmidi, snd_rawmidi_t **out_rmidi, const char *name, int mode] +snd_rawmidi_open_lconf: [int, snd_rawmidi_t **in_rmidi, snd_rawmidi_t **out_rmidi, const char *name, int mode, snd_config_t *lconf] +snd_rawmidi_close: [int, snd_rawmidi_t *rmidi] +snd_rawmidi_poll_descriptors_count: [int, snd_rawmidi_t *rmidi] +snd_rawmidi_poll_descriptors: [int, snd_rawmidi_t *rmidi, struct pollfd *pfds, unsigned int space] +snd_rawmidi_poll_descriptors_revents: [int, snd_rawmidi_t *rawmidi, struct pollfd *pfds, unsigned int nfds, unsigned short *revent] +snd_rawmidi_nonblock: [int, snd_rawmidi_t *rmidi, int nonblock] +snd_rawmidi_info_sizeof: [size_t] +snd_rawmidi_info_malloc: [int, snd_rawmidi_info_t **ptr] +snd_rawmidi_info_free: [void, snd_rawmidi_info_t *obj] +snd_rawmidi_info_copy: [void, snd_rawmidi_info_t *dst, const snd_rawmidi_info_t *src] +snd_rawmidi_info_get_device: [unsigned int, const snd_rawmidi_info_t *obj] +snd_rawmidi_info_get_subdevice: [unsigned int, const snd_rawmidi_info_t *obj] +snd_rawmidi_info_get_stream: [snd_rawmidi_stream_t, const snd_rawmidi_info_t *obj] +snd_rawmidi_info_get_card: [int, const snd_rawmidi_info_t *obj] +snd_rawmidi_info_get_flags: [unsigned int, const snd_rawmidi_info_t *obj] +snd_rawmidi_info_get_id: [const char *, const snd_rawmidi_info_t *obj] +snd_rawmidi_info_get_name: [const char *, const snd_rawmidi_info_t *obj] +snd_rawmidi_info_get_subdevice_name: [const char *, const snd_rawmidi_info_t *obj] +snd_rawmidi_info_get_subdevices_count: [unsigned int, const snd_rawmidi_info_t *obj] +snd_rawmidi_info_get_subdevices_avail: [unsigned int, const snd_rawmidi_info_t *obj] +snd_rawmidi_info_set_device: [void, snd_rawmidi_info_t *obj, unsigned int val] +snd_rawmidi_info_set_subdevice: [void, snd_rawmidi_info_t *obj, unsigned int val] +snd_rawmidi_info_set_stream: [void, snd_rawmidi_info_t *obj, snd_rawmidi_stream_t val] +snd_rawmidi_info: [int, snd_rawmidi_t *rmidi, snd_rawmidi_info_t * info] +snd_rawmidi_params_sizeof: [size_t] +snd_rawmidi_params_malloc: [int, snd_rawmidi_params_t **ptr] +snd_rawmidi_params_free: [void, snd_rawmidi_params_t *obj] +snd_rawmidi_params_copy: [void, snd_rawmidi_params_t *dst, const snd_rawmidi_params_t *src] +snd_rawmidi_params_set_buffer_size: [int, snd_rawmidi_t *rmidi, snd_rawmidi_params_t *params, size_t val] +snd_rawmidi_params_get_buffer_size: [size_t, const snd_rawmidi_params_t *params] +snd_rawmidi_params_set_avail_min: [int, snd_rawmidi_t *rmidi, snd_rawmidi_params_t *params, size_t val] +snd_rawmidi_params_get_avail_min: [size_t, const snd_rawmidi_params_t *params] +snd_rawmidi_params_set_no_active_sensing: [int, snd_rawmidi_t *rmidi, snd_rawmidi_params_t *params, int val] +snd_rawmidi_params_get_no_active_sensing: [int, const snd_rawmidi_params_t *params] +snd_rawmidi_params: [int, snd_rawmidi_t *rmidi, snd_rawmidi_params_t * params] +snd_rawmidi_params_current: [int, snd_rawmidi_t *rmidi, snd_rawmidi_params_t *params] +snd_rawmidi_status_sizeof: [size_t] +snd_rawmidi_status_malloc: [int, snd_rawmidi_status_t **ptr] +snd_rawmidi_status_free: [void, snd_rawmidi_status_t *obj] +snd_rawmidi_status_copy: [void, snd_rawmidi_status_t *dst, const snd_rawmidi_status_t *src] +snd_rawmidi_status_get_tstamp: [void, const snd_rawmidi_status_t *obj, snd_htimestamp_t *ptr] +snd_rawmidi_status_get_avail: [size_t, const snd_rawmidi_status_t *obj] +snd_rawmidi_status_get_xruns: [size_t, const snd_rawmidi_status_t *obj] +snd_rawmidi_status: [int, snd_rawmidi_t *rmidi, snd_rawmidi_status_t * status] +snd_rawmidi_drain: [int, snd_rawmidi_t *rmidi] +snd_rawmidi_drop: [int, snd_rawmidi_t *rmidi] +snd_rawmidi_write: [ssize_t, snd_rawmidi_t *rmidi, const void *buffer, size_t size] +snd_rawmidi_read: [ssize_t, snd_rawmidi_t *rmidi, void *buffer, size_t size] +snd_rawmidi_name: [const char *, snd_rawmidi_t *rmidi] +snd_rawmidi_type: [snd_rawmidi_type_t, snd_rawmidi_t *rmidi] +snd_rawmidi_stream: [snd_rawmidi_stream_t, snd_rawmidi_t *rawmidi] + +# timer.h +snd_timer_query_open: [int, snd_timer_query_t **handle, const char *name, int mode] +snd_timer_query_open_lconf: [int, snd_timer_query_t **handle, const char *name, int mode, snd_config_t *lconf] +snd_timer_query_close: [int, snd_timer_query_t *handle] +snd_timer_query_next_device: [int, snd_timer_query_t *handle, snd_timer_id_t *tid] +snd_timer_query_info: [int, snd_timer_query_t *handle, snd_timer_ginfo_t *info] +snd_timer_query_params: [int, snd_timer_query_t *handle, snd_timer_gparams_t *params] +snd_timer_query_status: [int, snd_timer_query_t *handle, snd_timer_gstatus_t *status] +snd_timer_open: [int, snd_timer_t **handle, const char *name, int mode] +snd_timer_open_lconf: [int, snd_timer_t **handle, const char *name, int mode, snd_config_t *lconf] +snd_timer_close: [int, snd_timer_t *handle] +snd_async_add_timer_handler: [int, snd_async_handler_t **handler, snd_timer_t *timer, snd_async_callback_t callback, void *private_data] +snd_async_handler_get_timer: [snd_timer_t *, snd_async_handler_t *handler] +snd_timer_poll_descriptors_count: [int, snd_timer_t *handle] +snd_timer_poll_descriptors: [int, snd_timer_t *handle, struct pollfd *pfds, unsigned int space] +snd_timer_poll_descriptors_revents: [int, snd_timer_t *timer, struct pollfd *pfds, unsigned int nfds, unsigned short *revents] +snd_timer_info: [int, snd_timer_t *handle, snd_timer_info_t *timer] +snd_timer_params: [int, snd_timer_t *handle, snd_timer_params_t *params] +snd_timer_status: [int, snd_timer_t *handle, snd_timer_status_t *status] +snd_timer_start: [int, snd_timer_t *handle] +snd_timer_stop: [int, snd_timer_t *handle] +snd_timer_continue: [int, snd_timer_t *handle] +snd_timer_read: [ssize_t, snd_timer_t *handle, void *buffer, size_t size] +snd_timer_id_sizeof: [size_t] +snd_timer_id_malloc: [int, snd_timer_id_t **ptr] +snd_timer_id_free: [void, snd_timer_id_t *obj] +snd_timer_id_copy: [void, snd_timer_id_t *dst, const snd_timer_id_t *src] +snd_timer_id_set_class: [void, snd_timer_id_t *id, int dev_class] +snd_timer_id_get_class: [int, snd_timer_id_t *id] +snd_timer_id_set_sclass: [void, snd_timer_id_t *id, int dev_sclass] +snd_timer_id_get_sclass: [int, snd_timer_id_t *id] +snd_timer_id_set_card: [void, snd_timer_id_t *id, int card] +snd_timer_id_get_card: [int, snd_timer_id_t *id] +snd_timer_id_set_device: [void, snd_timer_id_t *id, int device] +snd_timer_id_get_device: [int, snd_timer_id_t *id] +snd_timer_id_set_subdevice: [void, snd_timer_id_t *id, int subdevice] +snd_timer_id_get_subdevice: [int, snd_timer_id_t *id] +snd_timer_ginfo_sizeof: [size_t] +snd_timer_ginfo_malloc: [int, snd_timer_ginfo_t **ptr] +snd_timer_ginfo_free: [void, snd_timer_ginfo_t *obj] +snd_timer_ginfo_copy: [void, snd_timer_ginfo_t *dst, const snd_timer_ginfo_t *src] +snd_timer_ginfo_set_tid: [int, snd_timer_ginfo_t *obj, snd_timer_id_t *tid] +snd_timer_ginfo_get_tid: [snd_timer_id_t *, snd_timer_ginfo_t *obj] +snd_timer_ginfo_get_flags: [unsigned int, snd_timer_ginfo_t *obj] +snd_timer_ginfo_get_card: [int, snd_timer_ginfo_t *obj] +snd_timer_ginfo_get_id: [char *, snd_timer_ginfo_t *obj] +snd_timer_ginfo_get_name: [char *, snd_timer_ginfo_t *obj] +snd_timer_ginfo_get_resolution: [unsigned long, snd_timer_ginfo_t *obj] +snd_timer_ginfo_get_resolution_min: [unsigned long, snd_timer_ginfo_t *obj] +snd_timer_ginfo_get_resolution_max: [unsigned long, snd_timer_ginfo_t *obj] +snd_timer_ginfo_get_clients: [unsigned int, snd_timer_ginfo_t *obj] +snd_timer_info_sizeof: [size_t] +snd_timer_info_malloc: [int, snd_timer_info_t **ptr] +snd_timer_info_free: [void, snd_timer_info_t *obj] +snd_timer_info_copy: [void, snd_timer_info_t *dst, const snd_timer_info_t *src] +snd_timer_info_is_slave: [int, snd_timer_info_t * info] +snd_timer_info_get_card: [int, snd_timer_info_t * info] +snd_timer_info_get_id: [const char *, snd_timer_info_t * info] +snd_timer_info_get_name: [const char *, snd_timer_info_t * info] +snd_timer_info_get_resolution: [long, snd_timer_info_t * info] +snd_timer_params_sizeof: [size_t] +snd_timer_params_malloc: [int, snd_timer_params_t **ptr] +snd_timer_params_free: [void, snd_timer_params_t *obj] +snd_timer_params_copy: [void, snd_timer_params_t *dst, const snd_timer_params_t *src] +snd_timer_params_set_auto_start: [int, snd_timer_params_t * params, int auto_start] +snd_timer_params_get_auto_start: [int, snd_timer_params_t * params] +snd_timer_params_set_exclusive: [int, snd_timer_params_t * params, int exclusive] +snd_timer_params_get_exclusive: [int, snd_timer_params_t * params] +snd_timer_params_set_early_event: [int, snd_timer_params_t * params, int early_event] +snd_timer_params_get_early_event: [int, snd_timer_params_t * params] +snd_timer_params_set_ticks: [void, snd_timer_params_t * params, long ticks] +snd_timer_params_get_ticks: [long, snd_timer_params_t * params] +snd_timer_params_set_queue_size: [void, snd_timer_params_t * params, long queue_size] +snd_timer_params_get_queue_size: [long, snd_timer_params_t * params] +snd_timer_params_set_filter: [void, snd_timer_params_t * params, unsigned int filter] +snd_timer_params_get_filter: [unsigned int, snd_timer_params_t * params] +snd_timer_status_sizeof: [size_t] +snd_timer_status_malloc: [int, snd_timer_status_t **ptr] +snd_timer_status_free: [void, snd_timer_status_t *obj] +snd_timer_status_copy: [void, snd_timer_status_t *dst, const snd_timer_status_t *src] +snd_timer_status_get_timestamp: [snd_htimestamp_t, snd_timer_status_t * status] +snd_timer_status_get_resolution: [long, snd_timer_status_t * status] +snd_timer_status_get_lost: [long, snd_timer_status_t * status] +snd_timer_status_get_overrun: [long, snd_timer_status_t * status] +snd_timer_status_get_queue: [long, snd_timer_status_t * status] +snd_timer_info_get_ticks: [long, snd_timer_info_t * info] + +# hwdep.h +snd_hwdep_open: [int, snd_hwdep_t **hwdep, const char *name, int mode] +snd_hwdep_close: [int, snd_hwdep_t *hwdep] +snd_hwdep_poll_descriptors: [int, snd_hwdep_t *hwdep, struct pollfd *pfds, unsigned int space] +snd_hwdep_poll_descriptors_revents: [int, snd_hwdep_t *hwdep, struct pollfd *pfds, unsigned int nfds, unsigned short *revents] +snd_hwdep_nonblock: [int, snd_hwdep_t *hwdep, int nonblock] +snd_hwdep_info: [int, snd_hwdep_t *hwdep, snd_hwdep_info_t * info] +snd_hwdep_dsp_status: [int, snd_hwdep_t *hwdep, snd_hwdep_dsp_status_t *status] +snd_hwdep_dsp_load: [int, snd_hwdep_t *hwdep, snd_hwdep_dsp_image_t *block] +snd_hwdep_ioctl: [int, snd_hwdep_t *hwdep, unsigned int request, void * arg] +snd_hwdep_write: [ssize_t, snd_hwdep_t *hwdep, const void *buffer, size_t size] +snd_hwdep_read: [ssize_t, snd_hwdep_t *hwdep, void *buffer, size_t size] +snd_hwdep_info_sizeof: [size_t] +snd_hwdep_dsp_status_sizeof: [size_t] +snd_hwdep_dsp_status_malloc: [int, snd_hwdep_dsp_status_t **ptr] +snd_hwdep_dsp_status_free: [void, snd_hwdep_dsp_status_t *obj] +snd_hwdep_dsp_status_copy: [void, snd_hwdep_dsp_status_t *dst, const snd_hwdep_dsp_status_t *src] +snd_hwdep_dsp_status_get_version: [unsigned int, const snd_hwdep_dsp_status_t *obj] +snd_hwdep_dsp_status_get_id: [const char *, const snd_hwdep_dsp_status_t *obj] +snd_hwdep_dsp_status_get_num_dsps: [unsigned int, const snd_hwdep_dsp_status_t *obj] +snd_hwdep_dsp_status_get_dsp_loaded: [unsigned int, const snd_hwdep_dsp_status_t *obj] +snd_hwdep_dsp_status_get_chip_ready: [unsigned int, const snd_hwdep_dsp_status_t *obj] +snd_hwdep_dsp_image_sizeof: [size_t] +snd_hwdep_dsp_image_malloc: [int, snd_hwdep_dsp_image_t **ptr] +snd_hwdep_dsp_image_free: [void, snd_hwdep_dsp_image_t *obj] +snd_hwdep_dsp_image_copy: [void, snd_hwdep_dsp_image_t *dst, const snd_hwdep_dsp_image_t *src] +snd_hwdep_dsp_image_get_index: [unsigned int, const snd_hwdep_dsp_image_t *obj] +snd_hwdep_dsp_image_get_name: [const char *, const snd_hwdep_dsp_image_t *obj] +snd_hwdep_dsp_image_get_image: [const void *, const snd_hwdep_dsp_image_t *obj] +snd_hwdep_dsp_image_get_length: [size_t, const snd_hwdep_dsp_image_t *obj] +snd_hwdep_dsp_image_set_index: [void, snd_hwdep_dsp_image_t *obj, unsigned int _index] +snd_hwdep_dsp_image_set_name: [void, snd_hwdep_dsp_image_t *obj, const char *name] +snd_hwdep_dsp_image_set_image: [void, snd_hwdep_dsp_image_t *obj, void *buffer] +snd_hwdep_dsp_image_set_length: [void, snd_hwdep_dsp_image_t *obj, size_t length] + +# control.h +snd_card_load: [int, int card] +snd_card_next: [int, int *card] +snd_card_get_index: [int, const char *name] +snd_card_get_name: [int, int card, char **name] +snd_card_get_longname: [int, int card, char **name] +snd_ctl_open: [int, snd_ctl_t **ctl, const char *name, int mode] +snd_ctl_open_lconf: [int, snd_ctl_t **ctl, const char *name, int mode, snd_config_t *lconf] +snd_ctl_close: [int, snd_ctl_t *ctl] +snd_ctl_nonblock: [int, snd_ctl_t *ctl, int nonblock] +snd_async_add_ctl_handler: [int, snd_async_handler_t **handler, snd_ctl_t *ctl, snd_async_callback_t callback, void *private_data] +snd_async_handler_get_ctl: [snd_ctl_t *, snd_async_handler_t *handler] +snd_ctl_poll_descriptors_count: [int, snd_ctl_t *ctl] +snd_ctl_poll_descriptors: [int, snd_ctl_t *ctl, struct pollfd *pfds, unsigned int space] +snd_ctl_poll_descriptors_revents: [int, snd_ctl_t *ctl, struct pollfd *pfds, unsigned int nfds, unsigned short *revents] +snd_ctl_subscribe_events: [int, snd_ctl_t *ctl, int subscribe] +snd_ctl_card_info: [int, snd_ctl_t *ctl, snd_ctl_card_info_t *info] +snd_ctl_elem_list: [int, snd_ctl_t *ctl, snd_ctl_elem_list_t *list] +snd_ctl_elem_info: [int, snd_ctl_t *ctl, snd_ctl_elem_info_t *info] +snd_ctl_elem_read: [int, snd_ctl_t *ctl, snd_ctl_elem_value_t *value] +snd_ctl_elem_write: [int, snd_ctl_t *ctl, snd_ctl_elem_value_t *value] +snd_ctl_elem_lock: [int, snd_ctl_t *ctl, snd_ctl_elem_id_t *id] +snd_ctl_elem_unlock: [int, snd_ctl_t *ctl, snd_ctl_elem_id_t *id] +snd_ctl_elem_tlv_read: [int, snd_ctl_t *ctl, const snd_ctl_elem_id_t *id, unsigned int *tlv, unsigned int tlv_size] +snd_ctl_elem_tlv_write: [int, snd_ctl_t *ctl, const snd_ctl_elem_id_t *id, const unsigned int *tlv] +snd_ctl_elem_tlv_command: [int, snd_ctl_t *ctl, const snd_ctl_elem_id_t *id, const unsigned int *tlv] +snd_ctl_hwdep_next_device: [int, snd_ctl_t *ctl, int * device] +snd_ctl_hwdep_info: [int, snd_ctl_t *ctl, snd_hwdep_info_t * info] +snd_ctl_pcm_next_device: [int, snd_ctl_t *ctl, int *device] +snd_ctl_pcm_info: [int, snd_ctl_t *ctl, snd_pcm_info_t * info] +snd_ctl_pcm_prefer_subdevice: [int, snd_ctl_t *ctl, int subdev] +snd_ctl_rawmidi_next_device: [int, snd_ctl_t *ctl, int * device] +snd_ctl_rawmidi_info: [int, snd_ctl_t *ctl, snd_rawmidi_info_t * info] +snd_ctl_rawmidi_prefer_subdevice: [int, snd_ctl_t *ctl, int subdev] +snd_ctl_set_power_state: [int, snd_ctl_t *ctl, unsigned int state] +snd_ctl_get_power_state: [int, snd_ctl_t *ctl, unsigned int *state] +snd_ctl_read: [int, snd_ctl_t *ctl, snd_ctl_event_t *event] +snd_ctl_wait: [int, snd_ctl_t *ctl, int timeout] +snd_ctl_name: [const char *, snd_ctl_t *ctl] +snd_ctl_type: [snd_ctl_type_t, snd_ctl_t *ctl] +snd_ctl_elem_type_name: [const char *, snd_ctl_elem_type_t type] +snd_ctl_elem_iface_name: [const char *, snd_ctl_elem_iface_t iface] +snd_ctl_event_type_name: [const char *, snd_ctl_event_type_t type] +snd_ctl_event_elem_get_mask: [unsigned int, const snd_ctl_event_t *obj] +snd_ctl_event_elem_get_numid: [unsigned int, const snd_ctl_event_t *obj] +snd_ctl_event_elem_get_id: [void, const snd_ctl_event_t *obj, snd_ctl_elem_id_t *ptr] +snd_ctl_event_elem_get_interface: [snd_ctl_elem_iface_t, const snd_ctl_event_t *obj] +snd_ctl_event_elem_get_device: [unsigned int, const snd_ctl_event_t *obj] +snd_ctl_event_elem_get_subdevice: [unsigned int, const snd_ctl_event_t *obj] +snd_ctl_event_elem_get_name: [const char *, const snd_ctl_event_t *obj] +snd_ctl_event_elem_get_index: [unsigned int, const snd_ctl_event_t *obj] +snd_ctl_elem_list_alloc_space: [int, snd_ctl_elem_list_t *obj, unsigned int entries] +snd_ctl_elem_list_free_space: [void, snd_ctl_elem_list_t *obj] +snd_ctl_elem_id_sizeof: [size_t] +snd_ctl_elem_id_malloc: [int, snd_ctl_elem_id_t **ptr] +snd_ctl_elem_id_free: [void, snd_ctl_elem_id_t *obj] +snd_ctl_elem_id_clear: [void, snd_ctl_elem_id_t *obj] +snd_ctl_elem_id_copy: [void, snd_ctl_elem_id_t *dst, const snd_ctl_elem_id_t *src] +snd_ctl_elem_id_get_numid: [unsigned int, const snd_ctl_elem_id_t *obj] +snd_ctl_elem_id_get_interface: [snd_ctl_elem_iface_t, const snd_ctl_elem_id_t *obj] +snd_ctl_elem_id_get_device: [unsigned int, const snd_ctl_elem_id_t *obj] +snd_ctl_elem_id_get_subdevice: [unsigned int, const snd_ctl_elem_id_t *obj] +snd_ctl_elem_id_get_name: [const char *, const snd_ctl_elem_id_t *obj] +snd_ctl_elem_id_get_index: [unsigned int, const snd_ctl_elem_id_t *obj] +snd_ctl_elem_id_set_numid: [void, snd_ctl_elem_id_t *obj, unsigned int val] +snd_ctl_elem_id_set_interface: [void, snd_ctl_elem_id_t *obj, snd_ctl_elem_iface_t val] +snd_ctl_elem_id_set_device: [void, snd_ctl_elem_id_t *obj, unsigned int val] +snd_ctl_elem_id_set_subdevice: [void, snd_ctl_elem_id_t *obj, unsigned int val] +snd_ctl_elem_id_set_name: [void, snd_ctl_elem_id_t *obj, const char *val] +snd_ctl_elem_id_set_index: [void, snd_ctl_elem_id_t *obj, unsigned int val] +snd_ctl_card_info_sizeof: [size_t] +snd_ctl_card_info_malloc: [int, snd_ctl_card_info_t **ptr] +snd_ctl_card_info_free: [void, snd_ctl_card_info_t *obj] +snd_ctl_card_info_clear: [void, snd_ctl_card_info_t *obj] +snd_ctl_card_info_copy: [void, snd_ctl_card_info_t *dst, const snd_ctl_card_info_t *src] +snd_ctl_card_info_get_card: [int, const snd_ctl_card_info_t *obj] +snd_ctl_card_info_get_id: [const char *, const snd_ctl_card_info_t *obj] +snd_ctl_card_info_get_driver: [const char *, const snd_ctl_card_info_t *obj] +snd_ctl_card_info_get_name: [const char *, const snd_ctl_card_info_t *obj] +snd_ctl_card_info_get_longname: [const char *, const snd_ctl_card_info_t *obj] +snd_ctl_card_info_get_mixername: [const char *, const snd_ctl_card_info_t *obj] +snd_ctl_card_info_get_components: [const char *, const snd_ctl_card_info_t *obj] +snd_ctl_event_sizeof: [size_t] +snd_ctl_event_malloc: [int, snd_ctl_event_t **ptr] +snd_ctl_event_free: [void, snd_ctl_event_t *obj] +snd_ctl_event_clear: [void, snd_ctl_event_t *obj] +snd_ctl_event_copy: [void, snd_ctl_event_t *dst, const snd_ctl_event_t *src] +snd_ctl_event_get_type: [snd_ctl_event_type_t, const snd_ctl_event_t *obj] +snd_ctl_elem_list_sizeof: [size_t] +snd_ctl_elem_list_malloc: [int, snd_ctl_elem_list_t **ptr] +snd_ctl_elem_list_free: [void, snd_ctl_elem_list_t *obj] +snd_ctl_elem_list_clear: [void, snd_ctl_elem_list_t *obj] +snd_ctl_elem_list_copy: [void, snd_ctl_elem_list_t *dst, const snd_ctl_elem_list_t *src] +snd_ctl_elem_list_set_offset: [void, snd_ctl_elem_list_t *obj, unsigned int val] +snd_ctl_elem_list_get_used: [unsigned int, const snd_ctl_elem_list_t *obj] +snd_ctl_elem_list_get_count: [unsigned int, const snd_ctl_elem_list_t *obj] +snd_ctl_elem_list_get_id: [void, const snd_ctl_elem_list_t *obj, unsigned int idx, snd_ctl_elem_id_t *ptr] +snd_ctl_elem_list_get_numid: [unsigned int, const snd_ctl_elem_list_t *obj, unsigned int idx] +snd_ctl_elem_list_get_interface: [snd_ctl_elem_iface_t, const snd_ctl_elem_list_t *obj, unsigned int idx] +snd_ctl_elem_list_get_device: [unsigned int, const snd_ctl_elem_list_t *obj, unsigned int idx] +snd_ctl_elem_list_get_subdevice: [unsigned int, const snd_ctl_elem_list_t *obj, unsigned int idx] +snd_ctl_elem_list_get_name: [const char *, const snd_ctl_elem_list_t *obj, unsigned int idx] +snd_ctl_elem_list_get_index: [unsigned int, const snd_ctl_elem_list_t *obj, unsigned int idx] +snd_ctl_elem_info_sizeof: [size_t] +snd_ctl_elem_info_malloc: [int, snd_ctl_elem_info_t **ptr] +snd_ctl_elem_info_free: [void, snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_clear: [void, snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_copy: [void, snd_ctl_elem_info_t *dst, const snd_ctl_elem_info_t *src] +snd_ctl_elem_info_get_type: [snd_ctl_elem_type_t, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_is_readable: [int, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_is_writable: [int, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_is_volatile: [int, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_is_inactive: [int, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_is_locked: [int, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_is_tlv_readable: [int, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_is_tlv_writable: [int, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_is_tlv_commandable: [int, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_is_owner: [int, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_is_user: [int, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_get_owner: [pid_t, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_get_count: [unsigned int, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_get_min: [long, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_get_max: [long, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_get_step: [long, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_get_min64: [long long, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_get_max64: [long long, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_get_step64: [long long, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_get_items: [unsigned int, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_set_item: [void, snd_ctl_elem_info_t *obj, unsigned int val] +snd_ctl_elem_info_get_item_name: [const char *, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_get_dimensions: [int, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_get_dimension: [int, const snd_ctl_elem_info_t *obj, unsigned int idx] +snd_ctl_elem_info_get_id: [void, const snd_ctl_elem_info_t *obj, snd_ctl_elem_id_t *ptr] +snd_ctl_elem_info_get_numid: [unsigned int, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_get_interface: [snd_ctl_elem_iface_t, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_get_device: [unsigned int, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_get_subdevice: [unsigned int, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_get_name: [const char *, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_get_index: [unsigned int, const snd_ctl_elem_info_t *obj] +snd_ctl_elem_info_set_id: [void, snd_ctl_elem_info_t *obj, const snd_ctl_elem_id_t *ptr] +snd_ctl_elem_info_set_numid: [void, snd_ctl_elem_info_t *obj, unsigned int val] +snd_ctl_elem_info_set_interface: [void, snd_ctl_elem_info_t *obj, snd_ctl_elem_iface_t val] +snd_ctl_elem_info_set_device: [void, snd_ctl_elem_info_t *obj, unsigned int val] +snd_ctl_elem_info_set_subdevice: [void, snd_ctl_elem_info_t *obj, unsigned int val] +snd_ctl_elem_info_set_name: [void, snd_ctl_elem_info_t *obj, const char *val] +snd_ctl_elem_info_set_index: [void, snd_ctl_elem_info_t *obj, unsigned int val] +snd_ctl_elem_add_integer: [int, snd_ctl_t *ctl, const snd_ctl_elem_id_t *id, unsigned int count, long imin, long imax, long istep] +snd_ctl_elem_add_integer64: [int, snd_ctl_t *ctl, const snd_ctl_elem_id_t *id, unsigned int count, long long imin, long long imax, long long istep] +snd_ctl_elem_add_boolean: [int, snd_ctl_t *ctl, const snd_ctl_elem_id_t *id, unsigned int count] +snd_ctl_elem_add_iec958: [int, snd_ctl_t *ctl, const snd_ctl_elem_id_t *id] +snd_ctl_elem_remove: [int, snd_ctl_t *ctl, snd_ctl_elem_id_t *id] +snd_ctl_elem_value_sizeof: [size_t] +snd_ctl_elem_value_malloc: [int, snd_ctl_elem_value_t **ptr] +snd_ctl_elem_value_free: [void, snd_ctl_elem_value_t *obj] +snd_ctl_elem_value_clear: [void, snd_ctl_elem_value_t *obj] +snd_ctl_elem_value_copy: [void, snd_ctl_elem_value_t *dst, const snd_ctl_elem_value_t *src] +snd_ctl_elem_value_get_id: [void, const snd_ctl_elem_value_t *obj, snd_ctl_elem_id_t *ptr] +snd_ctl_elem_value_get_numid: [unsigned int, const snd_ctl_elem_value_t *obj] +snd_ctl_elem_value_get_interface: [snd_ctl_elem_iface_t, const snd_ctl_elem_value_t *obj] +snd_ctl_elem_value_get_device: [unsigned int, const snd_ctl_elem_value_t *obj] +snd_ctl_elem_value_get_subdevice: [unsigned int, const snd_ctl_elem_value_t *obj] +snd_ctl_elem_value_get_name: [const char *, const snd_ctl_elem_value_t *obj] +snd_ctl_elem_value_get_index: [unsigned int, const snd_ctl_elem_value_t *obj] +snd_ctl_elem_value_set_id: [void, snd_ctl_elem_value_t *obj, const snd_ctl_elem_id_t *ptr] +snd_ctl_elem_value_set_numid: [void, snd_ctl_elem_value_t *obj, unsigned int val] +snd_ctl_elem_value_set_interface: [void, snd_ctl_elem_value_t *obj, snd_ctl_elem_iface_t val] +snd_ctl_elem_value_set_device: [void, snd_ctl_elem_value_t *obj, unsigned int val] +snd_ctl_elem_value_set_subdevice: [void, snd_ctl_elem_value_t *obj, unsigned int val] +snd_ctl_elem_value_set_name: [void, snd_ctl_elem_value_t *obj, const char *val] +snd_ctl_elem_value_set_index: [void, snd_ctl_elem_value_t *obj, unsigned int val] +snd_ctl_elem_value_get_boolean: [int, const snd_ctl_elem_value_t *obj, unsigned int idx] +snd_ctl_elem_value_get_integer: [long, const snd_ctl_elem_value_t *obj, unsigned int idx] +snd_ctl_elem_value_get_integer64: [long long, const snd_ctl_elem_value_t *obj, unsigned int idx] +snd_ctl_elem_value_get_enumerated: [unsigned int, const snd_ctl_elem_value_t *obj, unsigned int idx] +snd_ctl_elem_value_get_byte: [unsigned char, const snd_ctl_elem_value_t *obj, unsigned int idx] +snd_ctl_elem_value_set_boolean: [void, snd_ctl_elem_value_t *obj, unsigned int idx, long val] +snd_ctl_elem_value_set_integer: [void, snd_ctl_elem_value_t *obj, unsigned int idx, long val] +snd_ctl_elem_value_set_integer64: [void, snd_ctl_elem_value_t *obj, unsigned int idx, long long val] +snd_ctl_elem_value_set_enumerated: [void, snd_ctl_elem_value_t *obj, unsigned int idx, unsigned int val] +snd_ctl_elem_value_set_byte: [void, snd_ctl_elem_value_t *obj, unsigned int idx, unsigned char val] +snd_ctl_elem_set_bytes: [void, snd_ctl_elem_value_t *obj, void *data, size_t size] +snd_ctl_elem_value_get_bytes: [const void *, const snd_ctl_elem_value_t *obj] +snd_ctl_elem_value_get_iec958: [void, const snd_ctl_elem_value_t *obj, snd_aes_iec958_t *ptr] +snd_ctl_elem_value_set_iec958: [void, snd_ctl_elem_value_t *obj, const snd_aes_iec958_t *ptr] +snd_hctl_compare_fast: [int, const snd_hctl_elem_t *c1, const snd_hctl_elem_t *c2] +snd_hctl_open: [int, snd_hctl_t **hctl, const char *name, int mode] +snd_hctl_open_ctl: [int, snd_hctl_t **hctlp, snd_ctl_t *ctl] +snd_hctl_close: [int, snd_hctl_t *hctl] +snd_hctl_nonblock: [int, snd_hctl_t *hctl, int nonblock] +snd_hctl_poll_descriptors_count: [int, snd_hctl_t *hctl] +snd_hctl_poll_descriptors: [int, snd_hctl_t *hctl, struct pollfd *pfds, unsigned int space] +snd_hctl_poll_descriptors_revents: [int, snd_hctl_t *ctl, struct pollfd *pfds, unsigned int nfds, unsigned short *revents] +snd_hctl_get_count: [unsigned int, snd_hctl_t *hctl] +snd_hctl_set_compare: [int, snd_hctl_t *hctl, snd_hctl_compare_t hsort] +snd_hctl_first_elem: [snd_hctl_elem_t *, snd_hctl_t *hctl] +snd_hctl_last_elem: [snd_hctl_elem_t *, snd_hctl_t *hctl] +snd_hctl_find_elem: [snd_hctl_elem_t *, snd_hctl_t *hctl, const snd_ctl_elem_id_t *id] +snd_hctl_set_callback: [void, snd_hctl_t *hctl, snd_hctl_callback_t callback] +snd_hctl_set_callback_private: [void, snd_hctl_t *hctl, void *data] +snd_hctl_get_callback_private: [void *, snd_hctl_t *hctl] +snd_hctl_load: [int, snd_hctl_t *hctl] +snd_hctl_free: [int, snd_hctl_t *hctl] +snd_hctl_handle_events: [int, snd_hctl_t *hctl] +snd_hctl_name: [const char *, snd_hctl_t *hctl] +snd_hctl_wait: [int, snd_hctl_t *hctl, int timeout] +snd_hctl_ctl: [snd_ctl_t *, snd_hctl_t *hctl] +snd_hctl_elem_next: [snd_hctl_elem_t *, snd_hctl_elem_t *elem] +snd_hctl_elem_prev: [snd_hctl_elem_t *, snd_hctl_elem_t *elem] +snd_hctl_elem_info: [int, snd_hctl_elem_t *elem, snd_ctl_elem_info_t * info] +snd_hctl_elem_read: [int, snd_hctl_elem_t *elem, snd_ctl_elem_value_t * value] +snd_hctl_elem_write: [int, snd_hctl_elem_t *elem, snd_ctl_elem_value_t * value] +snd_hctl_elem_tlv_read: [int, snd_hctl_elem_t *elem, unsigned int *tlv, unsigned int tlv_size] +snd_hctl_elem_tlv_write: [int, snd_hctl_elem_t *elem, const unsigned int *tlv] +snd_hctl_elem_tlv_command: [int, snd_hctl_elem_t *elem, const unsigned int *tlv] +snd_hctl_elem_get_hctl: [snd_hctl_t *, snd_hctl_elem_t *elem] +snd_hctl_elem_get_id: [void, const snd_hctl_elem_t *obj, snd_ctl_elem_id_t *ptr] +snd_hctl_elem_get_numid: [unsigned int, const snd_hctl_elem_t *obj] +snd_hctl_elem_get_interface: [snd_ctl_elem_iface_t, const snd_hctl_elem_t *obj] +snd_hctl_elem_get_device: [unsigned int, const snd_hctl_elem_t *obj] +snd_hctl_elem_get_subdevice: [unsigned int, const snd_hctl_elem_t *obj] +snd_hctl_elem_get_name: [const char *, const snd_hctl_elem_t *obj] +snd_hctl_elem_get_index: [unsigned int, const snd_hctl_elem_t *obj] +snd_hctl_elem_set_callback: [void, snd_hctl_elem_t *obj, snd_hctl_elem_callback_t val] +snd_hctl_elem_get_callback_private: [void *, const snd_hctl_elem_t *obj] +snd_hctl_elem_set_callback_private: [void, snd_hctl_elem_t *obj, void * val] +snd_sctl_build: [int, snd_sctl_t **ctl, snd_ctl_t *handle, snd_config_t *config, snd_config_t *private_data, int mode] +snd_sctl_free: [int, snd_sctl_t *handle] +snd_sctl_install: [int, snd_sctl_t *handle] +snd_sctl_remove: [int, snd_sctl_t *handle] + +# mixer.h +snd_mixer_open: [int, snd_mixer_t **mixer, int mode] +snd_mixer_close: [int, snd_mixer_t *mixer] +snd_mixer_first_elem: [snd_mixer_elem_t *, snd_mixer_t *mixer] +snd_mixer_last_elem: [snd_mixer_elem_t *, snd_mixer_t *mixer] +snd_mixer_handle_events: [int, snd_mixer_t *mixer] +snd_mixer_attach: [int, snd_mixer_t *mixer, const char *name] +snd_mixer_attach_hctl: [int, snd_mixer_t *mixer, snd_hctl_t *hctl] +snd_mixer_detach: [int, snd_mixer_t *mixer, const char *name] +snd_mixer_detach_hctl: [int, snd_mixer_t *mixer, snd_hctl_t *hctl] +snd_mixer_get_hctl: [int, snd_mixer_t *mixer, const char *name, snd_hctl_t **hctl] +snd_mixer_poll_descriptors_count: [int, snd_mixer_t *mixer] +snd_mixer_poll_descriptors: [int, snd_mixer_t *mixer, struct pollfd *pfds, unsigned int space] +snd_mixer_poll_descriptors_revents: [int, snd_mixer_t *mixer, struct pollfd *pfds, unsigned int nfds, unsigned short *revents] +snd_mixer_load: [int, snd_mixer_t *mixer] +snd_mixer_free: [void, snd_mixer_t *mixer] +snd_mixer_wait: [int, snd_mixer_t *mixer, int timeout] +snd_mixer_set_compare: [int, snd_mixer_t *mixer, snd_mixer_compare_t msort] +snd_mixer_set_callback: [void, snd_mixer_t *obj, snd_mixer_callback_t val] +snd_mixer_get_callback_private: [void *, const snd_mixer_t *obj] +snd_mixer_set_callback_private: [void, snd_mixer_t *obj, void * val] +snd_mixer_get_count: [unsigned int, const snd_mixer_t *obj] +snd_mixer_class_unregister: [int, snd_mixer_class_t *clss] +snd_mixer_elem_next: [snd_mixer_elem_t *, snd_mixer_elem_t *elem] +snd_mixer_elem_prev: [snd_mixer_elem_t *, snd_mixer_elem_t *elem] +snd_mixer_elem_set_callback: [void, snd_mixer_elem_t *obj, snd_mixer_elem_callback_t val] +snd_mixer_elem_get_callback_private: [void *, const snd_mixer_elem_t *obj] +snd_mixer_elem_set_callback_private: [void, snd_mixer_elem_t *obj, void * val] +snd_mixer_elem_get_type: [snd_mixer_elem_type_t, const snd_mixer_elem_t *obj] +snd_mixer_class_register: [int, snd_mixer_class_t *class_, snd_mixer_t *mixer] +# snd_mixer_add_elem: [int, snd_mixer_t *mixer, snd_mixer_elem_t *elem] +# snd_mixer_remove_elem: [int, snd_mixer_t *mixer, snd_mixer_elem_t *elem] +snd_mixer_elem_new: [int, snd_mixer_elem_t **elem, snd_mixer_elem_type_t type, int compare_weight, void *private_data, void *] +snd_mixer_elem_add: [int, snd_mixer_elem_t *elem, snd_mixer_class_t *class_] +snd_mixer_elem_remove: [int, snd_mixer_elem_t *elem] +snd_mixer_elem_free: [void, snd_mixer_elem_t *elem] +snd_mixer_elem_info: [int, snd_mixer_elem_t *elem] +snd_mixer_elem_value: [int, snd_mixer_elem_t *elem] +snd_mixer_elem_attach: [int, snd_mixer_elem_t *melem, snd_hctl_elem_t *helem] +snd_mixer_elem_detach: [int, snd_mixer_elem_t *melem, snd_hctl_elem_t *helem] +snd_mixer_elem_empty: [int, snd_mixer_elem_t *melem] +snd_mixer_elem_get_private: [void *, const snd_mixer_elem_t *melem] +snd_mixer_class_sizeof: [size_t] +snd_mixer_class_malloc: [int, snd_mixer_class_t **ptr] +snd_mixer_class_free: [void, snd_mixer_class_t *obj] +snd_mixer_class_copy: [void, snd_mixer_class_t *dst, const snd_mixer_class_t *src] +snd_mixer_class_get_mixer: [snd_mixer_t *, const snd_mixer_class_t *class_] +snd_mixer_class_get_event: [snd_mixer_event_t, const snd_mixer_class_t *class_] +snd_mixer_class_get_private: [void *, const snd_mixer_class_t *class_] +snd_mixer_class_get_compare: [snd_mixer_compare_t, const snd_mixer_class_t *class_] +snd_mixer_class_set_event: [int, snd_mixer_class_t *class_, snd_mixer_event_t event] +snd_mixer_class_set_private: [int, snd_mixer_class_t *class_, void *private_data] +snd_mixer_class_set_private_free: [int, snd_mixer_class_t *class_, void *] +snd_mixer_class_set_compare: [int, snd_mixer_class_t *class_, snd_mixer_compare_t compare] +snd_mixer_selem_channel_name: [const char *, snd_mixer_selem_channel_id_t channel] +snd_mixer_selem_register: [int, snd_mixer_t *mixer, struct snd_mixer_selem_regopt *options, snd_mixer_class_t **classp] +snd_mixer_selem_get_id: [void, snd_mixer_elem_t *element, snd_mixer_selem_id_t *id] +snd_mixer_selem_get_name: [const char *, snd_mixer_elem_t *elem] +snd_mixer_selem_get_index: [unsigned int, snd_mixer_elem_t *elem] +snd_mixer_find_selem: [snd_mixer_elem_t *, snd_mixer_t *mixer, const snd_mixer_selem_id_t *id] +snd_mixer_selem_is_active: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_is_playback_mono: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_has_playback_channel: [int, snd_mixer_elem_t *obj, snd_mixer_selem_channel_id_t channel] +snd_mixer_selem_is_capture_mono: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_has_capture_channel: [int, snd_mixer_elem_t *obj, snd_mixer_selem_channel_id_t channel] +snd_mixer_selem_get_capture_group: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_has_common_volume: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_has_playback_volume: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_has_playback_volume_joined: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_has_capture_volume: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_has_capture_volume_joined: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_has_common_switch: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_has_playback_switch: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_has_playback_switch_joined: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_has_capture_switch: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_has_capture_switch_joined: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_has_capture_switch_exclusive: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_get_playback_volume: [int, snd_mixer_elem_t *elem, snd_mixer_selem_channel_id_t channel, long *value] +snd_mixer_selem_get_capture_volume: [int, snd_mixer_elem_t *elem, snd_mixer_selem_channel_id_t channel, long *value] +snd_mixer_selem_get_playback_dB: [int, snd_mixer_elem_t *elem, snd_mixer_selem_channel_id_t channel, long *value] +snd_mixer_selem_get_capture_dB: [int, snd_mixer_elem_t *elem, snd_mixer_selem_channel_id_t channel, long *value] +snd_mixer_selem_get_playback_switch: [int, snd_mixer_elem_t *elem, snd_mixer_selem_channel_id_t channel, int *value] +snd_mixer_selem_get_capture_switch: [int, snd_mixer_elem_t *elem, snd_mixer_selem_channel_id_t channel, int *value] +snd_mixer_selem_set_playback_volume: [int, snd_mixer_elem_t *elem, snd_mixer_selem_channel_id_t channel, long value] +snd_mixer_selem_set_capture_volume: [int, snd_mixer_elem_t *elem, snd_mixer_selem_channel_id_t channel, long value] +snd_mixer_selem_set_playback_dB: [int, snd_mixer_elem_t *elem, snd_mixer_selem_channel_id_t channel, long value, int dir] +snd_mixer_selem_set_capture_dB: [int, snd_mixer_elem_t *elem, snd_mixer_selem_channel_id_t channel, long value, int dir] +snd_mixer_selem_set_playback_volume_all: [int, snd_mixer_elem_t *elem, long value] +snd_mixer_selem_set_capture_volume_all: [int, snd_mixer_elem_t *elem, long value] +snd_mixer_selem_set_playback_dB_all: [int, snd_mixer_elem_t *elem, long value, int dir] +snd_mixer_selem_set_capture_dB_all: [int, snd_mixer_elem_t *elem, long value, int dir] +snd_mixer_selem_set_playback_switch: [int, snd_mixer_elem_t *elem, snd_mixer_selem_channel_id_t channel, int value] +snd_mixer_selem_set_capture_switch: [int, snd_mixer_elem_t *elem, snd_mixer_selem_channel_id_t channel, int value] +snd_mixer_selem_set_playback_switch_all: [int, snd_mixer_elem_t *elem, int value] +snd_mixer_selem_set_capture_switch_all: [int, snd_mixer_elem_t *elem, int value] +snd_mixer_selem_get_playback_volume_range: [int, snd_mixer_elem_t *elem, long *min, long *max] +snd_mixer_selem_get_playback_dB_range: [int, snd_mixer_elem_t *elem, long *min, long *max] +snd_mixer_selem_set_playback_volume_range: [int, snd_mixer_elem_t *elem, long min, long max] +snd_mixer_selem_get_capture_volume_range: [int, snd_mixer_elem_t *elem, long *min, long *max] +snd_mixer_selem_get_capture_dB_range: [int, snd_mixer_elem_t *elem, long *min, long *max] +snd_mixer_selem_set_capture_volume_range: [int, snd_mixer_elem_t *elem, long min, long max] +snd_mixer_selem_is_enumerated: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_is_enum_playback: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_is_enum_capture: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_get_enum_items: [int, snd_mixer_elem_t *elem] +snd_mixer_selem_get_enum_item_name: [int, snd_mixer_elem_t *elem, unsigned int idx, size_t maxlen, char *str] +snd_mixer_selem_get_enum_item: [int, snd_mixer_elem_t *elem, snd_mixer_selem_channel_id_t channel, unsigned int *idxp] +snd_mixer_selem_set_enum_item: [int, snd_mixer_elem_t *elem, snd_mixer_selem_channel_id_t channel, unsigned int idx] +snd_mixer_selem_id_sizeof: [size_t] +snd_mixer_selem_id_malloc: [int, snd_mixer_selem_id_t **ptr] +snd_mixer_selem_id_free: [void, snd_mixer_selem_id_t *obj] +snd_mixer_selem_id_copy: [void, snd_mixer_selem_id_t *dst, const snd_mixer_selem_id_t *src] +snd_mixer_selem_id_get_name: [const char *, const snd_mixer_selem_id_t *obj] +snd_mixer_selem_id_get_index: [unsigned int, const snd_mixer_selem_id_t *obj] +snd_mixer_selem_id_set_name: [void, snd_mixer_selem_id_t *obj, const char *val] +snd_mixer_selem_id_set_index: [void, snd_mixer_selem_id_t *obj, unsigned int val] + +# seq.h +snd_seq_open: [int, snd_seq_t **handle, const char *name, int streams, int mode] +snd_seq_open_lconf: [int, snd_seq_t **handle, const char *name, int streams, int mode, snd_config_t *lconf] +snd_seq_name: [const char *, snd_seq_t *seq] +snd_seq_type: [snd_seq_type_t, snd_seq_t *seq] +snd_seq_close: [int, snd_seq_t *handle] +snd_seq_poll_descriptors_count: [int, snd_seq_t *handle, short events] +snd_seq_poll_descriptors: [int, snd_seq_t *handle, struct pollfd *pfds, unsigned int space, short events] +snd_seq_poll_descriptors_revents: [int, snd_seq_t *seq, struct pollfd *pfds, unsigned int nfds, unsigned short *revents] +snd_seq_nonblock: [int, snd_seq_t *handle, int nonblock] +snd_seq_client_id: [int, snd_seq_t *handle] +snd_seq_get_output_buffer_size: [size_t, snd_seq_t *handle] +snd_seq_get_input_buffer_size: [size_t, snd_seq_t *handle] +snd_seq_set_output_buffer_size: [int, snd_seq_t *handle, size_t size] +snd_seq_set_input_buffer_size: [int, snd_seq_t *handle, size_t size] +snd_seq_system_info_sizeof: [size_t] +snd_seq_system_info_malloc: [int, snd_seq_system_info_t **ptr] +snd_seq_system_info_free: [void, snd_seq_system_info_t *ptr] +snd_seq_system_info_copy: [void, snd_seq_system_info_t *dst, const snd_seq_system_info_t *src] +snd_seq_system_info_get_queues: [int, const snd_seq_system_info_t *info] +snd_seq_system_info_get_clients: [int, const snd_seq_system_info_t *info] +snd_seq_system_info_get_ports: [int, const snd_seq_system_info_t *info] +snd_seq_system_info_get_channels: [int, const snd_seq_system_info_t *info] +snd_seq_system_info_get_cur_clients: [int, const snd_seq_system_info_t *info] +snd_seq_system_info_get_cur_queues: [int, const snd_seq_system_info_t *info] +snd_seq_system_info: [int, snd_seq_t *handle, snd_seq_system_info_t *info] +snd_seq_client_info_sizeof: [size_t] +snd_seq_client_info_malloc: [int, snd_seq_client_info_t **ptr] +snd_seq_client_info_free: [void, snd_seq_client_info_t *ptr] +snd_seq_client_info_copy: [void, snd_seq_client_info_t *dst, const snd_seq_client_info_t *src] +snd_seq_client_info_get_client: [int, const snd_seq_client_info_t *info] +snd_seq_client_info_get_type: [snd_seq_client_type_t, const snd_seq_client_info_t *info] +snd_seq_client_info_get_name: [const char *, snd_seq_client_info_t *info] +snd_seq_client_info_get_broadcast_filter: [int, const snd_seq_client_info_t *info] +snd_seq_client_info_get_error_bounce: [int, const snd_seq_client_info_t *info] +snd_seq_client_info_get_event_filter: [const unsigned char *, const snd_seq_client_info_t *info] +snd_seq_client_info_get_num_ports: [int, const snd_seq_client_info_t *info] +snd_seq_client_info_get_event_lost: [int, const snd_seq_client_info_t *info] +snd_seq_client_info_set_client: [void, snd_seq_client_info_t *info, int client] +snd_seq_client_info_set_name: [void, snd_seq_client_info_t *info, const char *name] +snd_seq_client_info_set_broadcast_filter: [void, snd_seq_client_info_t *info, int val] +snd_seq_client_info_set_error_bounce: [void, snd_seq_client_info_t *info, int val] +snd_seq_client_info_set_event_filter: [void, snd_seq_client_info_t *info, unsigned char *filter] +snd_seq_get_client_info: [int, snd_seq_t *handle, snd_seq_client_info_t *info] +snd_seq_get_any_client_info: [int, snd_seq_t *handle, int client, snd_seq_client_info_t *info] +snd_seq_set_client_info: [int, snd_seq_t *handle, snd_seq_client_info_t *info] +snd_seq_query_next_client: [int, snd_seq_t *handle, snd_seq_client_info_t *info] +snd_seq_client_pool_sizeof: [size_t] +snd_seq_client_pool_malloc: [int, snd_seq_client_pool_t **ptr] +snd_seq_client_pool_free: [void, snd_seq_client_pool_t *ptr] +snd_seq_client_pool_copy: [void, snd_seq_client_pool_t *dst, const snd_seq_client_pool_t *src] +snd_seq_client_pool_get_client: [int, const snd_seq_client_pool_t *info] +snd_seq_client_pool_get_output_pool: [size_t, const snd_seq_client_pool_t *info] +snd_seq_client_pool_get_input_pool: [size_t, const snd_seq_client_pool_t *info] +snd_seq_client_pool_get_output_room: [size_t, const snd_seq_client_pool_t *info] +snd_seq_client_pool_get_output_free: [size_t, const snd_seq_client_pool_t *info] +snd_seq_client_pool_get_input_free: [size_t, const snd_seq_client_pool_t *info] +snd_seq_client_pool_set_output_pool: [void, snd_seq_client_pool_t *info, size_t size] +snd_seq_client_pool_set_input_pool: [void, snd_seq_client_pool_t *info, size_t size] +snd_seq_client_pool_set_output_room: [void, snd_seq_client_pool_t *info, size_t size] +snd_seq_get_client_pool: [int, snd_seq_t *handle, snd_seq_client_pool_t *info] +snd_seq_set_client_pool: [int, snd_seq_t *handle, snd_seq_client_pool_t *info] +snd_seq_port_info_sizeof: [size_t] +snd_seq_port_info_malloc: [int, snd_seq_port_info_t **ptr] +snd_seq_port_info_free: [void, snd_seq_port_info_t *ptr] +snd_seq_port_info_copy: [void, snd_seq_port_info_t *dst, const snd_seq_port_info_t *src] +snd_seq_port_info_get_client: [int, const snd_seq_port_info_t *info] +snd_seq_port_info_get_port: [int, const snd_seq_port_info_t *info] +snd_seq_port_info_get_addr: [const snd_seq_addr_t *, const snd_seq_port_info_t *info] +snd_seq_port_info_get_name: [const char *, const snd_seq_port_info_t *info] +snd_seq_port_info_get_capability: [unsigned int, const snd_seq_port_info_t *info] +snd_seq_port_info_get_type: [unsigned int, const snd_seq_port_info_t *info] +snd_seq_port_info_get_midi_channels: [int, const snd_seq_port_info_t *info] +snd_seq_port_info_get_midi_voices: [int, const snd_seq_port_info_t *info] +snd_seq_port_info_get_synth_voices: [int, const snd_seq_port_info_t *info] +snd_seq_port_info_get_read_use: [int, const snd_seq_port_info_t *info] +snd_seq_port_info_get_write_use: [int, const snd_seq_port_info_t *info] +snd_seq_port_info_get_port_specified: [int, const snd_seq_port_info_t *info] +snd_seq_port_info_get_timestamping: [int, const snd_seq_port_info_t *info] +snd_seq_port_info_get_timestamp_real: [int, const snd_seq_port_info_t *info] +snd_seq_port_info_get_timestamp_queue: [int, const snd_seq_port_info_t *info] +snd_seq_port_info_set_client: [void, snd_seq_port_info_t *info, int client] +snd_seq_port_info_set_port: [void, snd_seq_port_info_t *info, int port] +snd_seq_port_info_set_addr: [void, snd_seq_port_info_t *info, const snd_seq_addr_t *addr] +snd_seq_port_info_set_name: [void, snd_seq_port_info_t *info, const char *name] +snd_seq_port_info_set_capability: [void, snd_seq_port_info_t *info, unsigned int capability] +snd_seq_port_info_set_type: [void, snd_seq_port_info_t *info, unsigned int type] +snd_seq_port_info_set_midi_channels: [void, snd_seq_port_info_t *info, int channels] +snd_seq_port_info_set_midi_voices: [void, snd_seq_port_info_t *info, int voices] +snd_seq_port_info_set_synth_voices: [void, snd_seq_port_info_t *info, int voices] +snd_seq_port_info_set_port_specified: [void, snd_seq_port_info_t *info, int val] +snd_seq_port_info_set_timestamping: [void, snd_seq_port_info_t *info, int enable] +snd_seq_port_info_set_timestamp_real: [void, snd_seq_port_info_t *info, int realtime] +snd_seq_port_info_set_timestamp_queue: [void, snd_seq_port_info_t *info, int queue] +snd_seq_create_port: [int, snd_seq_t *handle, snd_seq_port_info_t *info] +snd_seq_delete_port: [int, snd_seq_t *handle, int port] +snd_seq_get_port_info: [int, snd_seq_t *handle, int port, snd_seq_port_info_t *info] +snd_seq_get_any_port_info: [int, snd_seq_t *handle, int client, int port, snd_seq_port_info_t *info] +snd_seq_set_port_info: [int, snd_seq_t *handle, int port, snd_seq_port_info_t *info] +snd_seq_query_next_port: [int, snd_seq_t *handle, snd_seq_port_info_t *info] +snd_seq_port_subscribe_sizeof: [size_t] +snd_seq_port_subscribe_malloc: [int, snd_seq_port_subscribe_t **ptr] +snd_seq_port_subscribe_free: [void, snd_seq_port_subscribe_t *ptr] +snd_seq_port_subscribe_copy: [void, snd_seq_port_subscribe_t *dst, const snd_seq_port_subscribe_t *src] +snd_seq_port_subscribe_get_sender: [const snd_seq_addr_t *, const snd_seq_port_subscribe_t *info] +snd_seq_port_subscribe_get_dest: [const snd_seq_addr_t *, const snd_seq_port_subscribe_t *info] +snd_seq_port_subscribe_get_queue: [int, const snd_seq_port_subscribe_t *info] +snd_seq_port_subscribe_get_exclusive: [int, const snd_seq_port_subscribe_t *info] +snd_seq_port_subscribe_get_time_update: [int, const snd_seq_port_subscribe_t *info] +snd_seq_port_subscribe_get_time_real: [int, const snd_seq_port_subscribe_t *info] +snd_seq_port_subscribe_set_sender: [void, snd_seq_port_subscribe_t *info, const snd_seq_addr_t *addr] +snd_seq_port_subscribe_set_dest: [void, snd_seq_port_subscribe_t *info, const snd_seq_addr_t *addr] +snd_seq_port_subscribe_set_queue: [void, snd_seq_port_subscribe_t *info, int q] +snd_seq_port_subscribe_set_exclusive: [void, snd_seq_port_subscribe_t *info, int val] +snd_seq_port_subscribe_set_time_update: [void, snd_seq_port_subscribe_t *info, int val] +snd_seq_port_subscribe_set_time_real: [void, snd_seq_port_subscribe_t *info, int val] +snd_seq_get_port_subscription: [int, snd_seq_t *handle, snd_seq_port_subscribe_t *sub] +snd_seq_subscribe_port: [int, snd_seq_t *handle, snd_seq_port_subscribe_t *sub] +snd_seq_unsubscribe_port: [int, snd_seq_t *handle, snd_seq_port_subscribe_t *sub] +snd_seq_query_subscribe_sizeof: [size_t] +snd_seq_query_subscribe_malloc: [int, snd_seq_query_subscribe_t **ptr] +snd_seq_query_subscribe_free: [void, snd_seq_query_subscribe_t *ptr] +snd_seq_query_subscribe_copy: [void, snd_seq_query_subscribe_t *dst, const snd_seq_query_subscribe_t *src] +snd_seq_query_subscribe_get_client: [int, const snd_seq_query_subscribe_t *info] +snd_seq_query_subscribe_get_port: [int, const snd_seq_query_subscribe_t *info] +snd_seq_query_subscribe_get_root: [const snd_seq_addr_t *, const snd_seq_query_subscribe_t *info] +snd_seq_query_subscribe_get_type: [snd_seq_query_subs_type_t, const snd_seq_query_subscribe_t *info] +snd_seq_query_subscribe_get_index: [int, const snd_seq_query_subscribe_t *info] +snd_seq_query_subscribe_get_num_subs: [int, const snd_seq_query_subscribe_t *info] +snd_seq_query_subscribe_get_addr: [const snd_seq_addr_t *, const snd_seq_query_subscribe_t *info] +snd_seq_query_subscribe_get_queue: [int, const snd_seq_query_subscribe_t *info] +snd_seq_query_subscribe_get_exclusive: [int, const snd_seq_query_subscribe_t *info] +snd_seq_query_subscribe_get_time_update: [int, const snd_seq_query_subscribe_t *info] +snd_seq_query_subscribe_get_time_real: [int, const snd_seq_query_subscribe_t *info] +snd_seq_query_subscribe_set_client: [void, snd_seq_query_subscribe_t *info, int client] +snd_seq_query_subscribe_set_port: [void, snd_seq_query_subscribe_t *info, int port] +snd_seq_query_subscribe_set_root: [void, snd_seq_query_subscribe_t *info, const snd_seq_addr_t *addr] +snd_seq_query_subscribe_set_type: [void, snd_seq_query_subscribe_t *info, snd_seq_query_subs_type_t type] +snd_seq_query_subscribe_set_index: [void, snd_seq_query_subscribe_t *info, int _index] +snd_seq_query_port_subscribers: [int, snd_seq_t *seq, snd_seq_query_subscribe_t * subs] +snd_seq_queue_info_sizeof: [size_t] +snd_seq_queue_info_malloc: [int, snd_seq_queue_info_t **ptr] +snd_seq_queue_info_free: [void, snd_seq_queue_info_t *ptr] +snd_seq_queue_info_copy: [void, snd_seq_queue_info_t *dst, const snd_seq_queue_info_t *src] +snd_seq_queue_info_get_queue: [int, const snd_seq_queue_info_t *info] +snd_seq_queue_info_get_name: [const char *, const snd_seq_queue_info_t *info] +snd_seq_queue_info_get_owner: [int, const snd_seq_queue_info_t *info] +snd_seq_queue_info_get_locked: [int, const snd_seq_queue_info_t *info] +snd_seq_queue_info_get_flags: [unsigned int, const snd_seq_queue_info_t *info] +snd_seq_queue_info_set_name: [void, snd_seq_queue_info_t *info, const char *name] +snd_seq_queue_info_set_owner: [void, snd_seq_queue_info_t *info, int owner] +snd_seq_queue_info_set_locked: [void, snd_seq_queue_info_t *info, int locked] +snd_seq_queue_info_set_flags: [void, snd_seq_queue_info_t *info, unsigned int flags] +snd_seq_create_queue: [int, snd_seq_t *seq, snd_seq_queue_info_t *info] +snd_seq_alloc_named_queue: [int, snd_seq_t *seq, const char *name] +snd_seq_alloc_queue: [int, snd_seq_t *handle] +snd_seq_free_queue: [int, snd_seq_t *handle, int q] +snd_seq_get_queue_info: [int, snd_seq_t *seq, int q, snd_seq_queue_info_t *info] +snd_seq_set_queue_info: [int, snd_seq_t *seq, int q, snd_seq_queue_info_t *info] +snd_seq_query_named_queue: [int, snd_seq_t *seq, const char *name] +snd_seq_get_queue_usage: [int, snd_seq_t *handle, int q] +snd_seq_set_queue_usage: [int, snd_seq_t *handle, int q, int used] +snd_seq_queue_status_sizeof: [size_t] +snd_seq_queue_status_malloc: [int, snd_seq_queue_status_t **ptr] +snd_seq_queue_status_free: [void, snd_seq_queue_status_t *ptr] +snd_seq_queue_status_copy: [void, snd_seq_queue_status_t *dst, const snd_seq_queue_status_t *src] +snd_seq_queue_status_get_queue: [int, const snd_seq_queue_status_t *info] +snd_seq_queue_status_get_events: [int, const snd_seq_queue_status_t *info] +snd_seq_queue_status_get_tick_time: [snd_seq_tick_time_t, const snd_seq_queue_status_t *info] +snd_seq_queue_status_get_real_time: [const snd_seq_real_time_t *, const snd_seq_queue_status_t *info] +snd_seq_queue_status_get_status: [unsigned int, const snd_seq_queue_status_t *info] +snd_seq_get_queue_status: [int, snd_seq_t *handle, int q, snd_seq_queue_status_t *status] +snd_seq_queue_tempo_sizeof: [size_t] +snd_seq_queue_tempo_malloc: [int, snd_seq_queue_tempo_t **ptr] +snd_seq_queue_tempo_free: [void, snd_seq_queue_tempo_t *ptr] +snd_seq_queue_tempo_copy: [void, snd_seq_queue_tempo_t *dst, const snd_seq_queue_tempo_t *src] +snd_seq_queue_tempo_get_queue: [int, const snd_seq_queue_tempo_t *info] +snd_seq_queue_tempo_get_tempo: [unsigned int, const snd_seq_queue_tempo_t *info] +snd_seq_queue_tempo_get_ppq: [int, const snd_seq_queue_tempo_t *info] +snd_seq_queue_tempo_get_skew: [unsigned int, const snd_seq_queue_tempo_t *info] +snd_seq_queue_tempo_get_skew_base: [unsigned int, const snd_seq_queue_tempo_t *info] +snd_seq_queue_tempo_set_tempo: [void, snd_seq_queue_tempo_t *info, unsigned int tempo] +snd_seq_queue_tempo_set_ppq: [void, snd_seq_queue_tempo_t *info, int ppq] +snd_seq_queue_tempo_set_skew: [void, snd_seq_queue_tempo_t *info, unsigned int skew] +snd_seq_queue_tempo_set_skew_base: [void, snd_seq_queue_tempo_t *info, unsigned int base] +snd_seq_get_queue_tempo: [int, snd_seq_t *handle, int q, snd_seq_queue_tempo_t *tempo] +snd_seq_set_queue_tempo: [int, snd_seq_t *handle, int q, snd_seq_queue_tempo_t *tempo] +snd_seq_queue_timer_sizeof: [size_t] +snd_seq_queue_timer_malloc: [int, snd_seq_queue_timer_t **ptr] +snd_seq_queue_timer_free: [void, snd_seq_queue_timer_t *ptr] +snd_seq_queue_timer_copy: [void, snd_seq_queue_timer_t *dst, const snd_seq_queue_timer_t *src] +snd_seq_queue_timer_get_queue: [int, const snd_seq_queue_timer_t *info] +snd_seq_queue_timer_get_type: [snd_seq_queue_timer_type_t, const snd_seq_queue_timer_t *info] +snd_seq_queue_timer_get_id: [const snd_timer_id_t *, const snd_seq_queue_timer_t *info] +snd_seq_queue_timer_get_resolution: [unsigned int, const snd_seq_queue_timer_t *info] +snd_seq_queue_timer_set_type: [void, snd_seq_queue_timer_t *info, snd_seq_queue_timer_type_t type] +snd_seq_queue_timer_set_id: [void, snd_seq_queue_timer_t *info, const snd_timer_id_t *id] +snd_seq_queue_timer_set_resolution: [void, snd_seq_queue_timer_t *info, unsigned int resolution] +snd_seq_get_queue_timer: [int, snd_seq_t *handle, int q, snd_seq_queue_timer_t *timer] +snd_seq_set_queue_timer: [int, snd_seq_t *handle, int q, snd_seq_queue_timer_t *timer] +snd_seq_free_event: [int, snd_seq_event_t *ev] +snd_seq_event_length: [ssize_t, snd_seq_event_t *ev] +snd_seq_event_output: [int, snd_seq_t *handle, snd_seq_event_t *ev] +snd_seq_event_output_buffer: [int, snd_seq_t *handle, snd_seq_event_t *ev] +snd_seq_event_output_direct: [int, snd_seq_t *handle, snd_seq_event_t *ev] +snd_seq_event_input: [int, snd_seq_t *handle, snd_seq_event_t **ev] +snd_seq_event_input_pending: [int, snd_seq_t *seq, int fetch_sequencer] +snd_seq_drain_output: [int, snd_seq_t *handle] +snd_seq_event_output_pending: [int, snd_seq_t *seq] +snd_seq_extract_output: [int, snd_seq_t *handle, snd_seq_event_t **ev] +snd_seq_drop_output: [int, snd_seq_t *handle] +snd_seq_drop_output_buffer: [int, snd_seq_t *handle] +snd_seq_drop_input: [int, snd_seq_t *handle] +snd_seq_drop_input_buffer: [int, snd_seq_t *handle] +snd_seq_remove_events_sizeof: [size_t] +snd_seq_remove_events_malloc: [int, snd_seq_remove_events_t **ptr] +snd_seq_remove_events_free: [void, snd_seq_remove_events_t *ptr] +snd_seq_remove_events_copy: [void, snd_seq_remove_events_t *dst, const snd_seq_remove_events_t *src] +snd_seq_remove_events_get_condition: [unsigned int, const snd_seq_remove_events_t *info] +snd_seq_remove_events_get_queue: [int, const snd_seq_remove_events_t *info] +snd_seq_remove_events_get_time: [const snd_seq_timestamp_t *, const snd_seq_remove_events_t *info] +snd_seq_remove_events_get_dest: [const snd_seq_addr_t *, const snd_seq_remove_events_t *info] +snd_seq_remove_events_get_channel: [int, const snd_seq_remove_events_t *info] +snd_seq_remove_events_get_event_type: [int, const snd_seq_remove_events_t *info] +snd_seq_remove_events_get_tag: [int, const snd_seq_remove_events_t *info] +snd_seq_remove_events_set_condition: [void, snd_seq_remove_events_t *info, unsigned int flags] +snd_seq_remove_events_set_queue: [void, snd_seq_remove_events_t *info, int queue] +snd_seq_remove_events_set_time: [void, snd_seq_remove_events_t *info, const snd_seq_timestamp_t *time] +snd_seq_remove_events_set_dest: [void, snd_seq_remove_events_t *info, const snd_seq_addr_t *addr] +snd_seq_remove_events_set_channel: [void, snd_seq_remove_events_t *info, int channel] +snd_seq_remove_events_set_event_type: [void, snd_seq_remove_events_t *info, int type] +snd_seq_remove_events_set_tag: [void, snd_seq_remove_events_t *info, int tag] +snd_seq_remove_events: [int, snd_seq_t *handle, snd_seq_remove_events_t *info] +snd_seq_set_bit: [void, int nr, void *array] +snd_seq_change_bit: [int, int nr, void *array] +snd_seq_get_bit: [int, int nr, void *array] + +# seq_midi_event.h +snd_midi_event_new: [int, size_t bufsize, snd_midi_event_t **rdev] +snd_midi_event_resize_buffer: [int, snd_midi_event_t *dev, size_t bufsize] +snd_midi_event_free: [void, snd_midi_event_t *dev] +snd_midi_event_init: [void, snd_midi_event_t *dev] +snd_midi_event_reset_encode: [void, snd_midi_event_t *dev] +snd_midi_event_reset_decode: [void, snd_midi_event_t *dev] +snd_midi_event_no_status: [void, snd_midi_event_t *dev, int on] +snd_midi_event_encode: [long, snd_midi_event_t *dev, const unsigned char *buf, long count, snd_seq_event_t *ev] +snd_midi_event_encode_byte: [int, snd_midi_event_t *dev, int c, snd_seq_event_t *ev] +snd_midi_event_decode: [long, snd_midi_event_t *dev, unsigned char *buf, long count, const snd_seq_event_t *ev] + +# seqmid.c +snd_seq_control_queue: [int, snd_seq_t *seq, int q, int type, int value, snd_seq_event_t *ev] +snd_seq_create_simple_port: [int, snd_seq_t *seq, const char *name, unsigned int caps, unsigned int type] +snd_seq_delete_simple_port: [int, snd_seq_t *seq, int port] +snd_seq_connect_from: [int, snd_seq_t *seq, int myport, int src_client, int src_port] +snd_seq_connect_to: [int, snd_seq_t *seq, int myport, int dest_client, int dest_port] +snd_seq_disconnect_from: [int, snd_seq_t *seq, int myport, int src_client, int src_port] +snd_seq_disconnect_to: [int, snd_seq_t *seq, int myport, int dest_client, int dest_port] +snd_seq_set_client_name: [int, snd_seq_t *seq, const char *name] +snd_seq_set_client_event_filter: [int, snd_seq_t *seq, int event_type] +snd_seq_set_client_pool_output_room: [int, snd_seq_t *seq, size_t size] +snd_seq_set_client_pool_input: [int, snd_seq_t *seq, size_t size] +snd_seq_reset_pool_output: [int, snd_seq_t *seq] +snd_seq_reset_pool_input: [int, snd_seq_t *seq] +snd_seq_sync_output_queue: [int, snd_seq_t *seq] +snd_seq_parse_address: [int, snd_seq_t *seq, snd_seq_addr_t *addr, const char *arg] diff --git a/project/jni/glshim/spec/yml/egl.yml b/project/jni/glshim/spec/yml/egl.yml new file mode 100644 index 000000000..94b0f44ba --- /dev/null +++ b/project/jni/glshim/spec/yml/egl.yml @@ -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] diff --git a/project/jni/glshim/spec/yml/gles-2.0.yml b/project/jni/glshim/spec/yml/gles-2.0.yml old mode 100755 new mode 100644 diff --git a/project/jni/glshim/spec/yml/glext-1.1.yml b/project/jni/glshim/spec/yml/glext-1.1.yml index d587dcf84..c02cb77ca 100755 --- a/project/jni/glshim/spec/yml/glext-1.1.yml +++ b/project/jni/glshim/spec/yml/glext-1.1.yml @@ -1,4 +1,27 @@ +glBlendColor: [void, GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha] +glBlendEquation: [void, GLenum mode] +glBlendEquationSeparate: [void, GLenum modeRGB, GLenum modeA] +glBlendFuncSeparate: [void, GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha] # glTexGenfOES: [void, GLenum coord, GLenum pname, GLfloat param] -# glTexGenfvOES: [void, GLenum coord, GLenum pname, "const GLfloat *params"] -# glTexGeniOES: [void, GLenum coord, GLenum pname, GLint param] +glTexGenfv: [void, GLenum coord, GLenum pname, "const GLfloat *params"] +glTexGeni: [void, GLenum coord, GLenum pname, GLint param] # glTexGenivOES: [void, GLenum coord, GLenum pname, "const GLint *params"] + +glGenFramebuffers: [void, GLsizei n, "GLuint *ids"] +glDeleteFramebuffers: [void, GLsizei n, "GLuint *framebuffers"] +glIsFramebuffer: [GLboolean, GLuint framebuffer] +glCheckFramebufferStatus: [GLenum, GLenum target] +glBindFramebuffer: [void, GLenum target, GLuint framebuffer] +glFramebufferTexture2D: [void, GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level] +glGenRenderbuffers: [void, GLsizei n, "GLuint *renderbuffers"] +glFramebufferRenderbuffer: [void, GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer] +glDeleteRenderbuffers: [void, GLsizei n, "GLuint *renderbuffers"] +glRenderbufferStorage: [void, GLenum target, GLenum internalformat, GLsizei width, GLsizei height] +glBindRenderbuffer: [void, GLenum target, GLuint renderbuffer] +glIsRenderbuffer: [GLboolean, GLuint renderbuffer] +glGenerateMipmap: [void, GLenum target] +glGetFramebufferAttachmentParameteriv: [void, GLenum target, GLenum attachment, GLenum pname, "GLint *params"] +glGetRenderbufferParameteriv: [void, GLenum target, GLenum pname, "GLint * params"] + +glDrawTexi: [void, GLint x, GLint y, GLint z, GLint width, GLint height] +glDrawTexf: [void, GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height] diff --git a/project/jni/glshim/spec/yml/glx.yml b/project/jni/glshim/spec/yml/glx.yml new file mode 100644 index 000000000..2acd025f0 --- /dev/null +++ b/project/jni/glshim/spec/yml/glx.yml @@ -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] diff --git a/project/jni/glshim/spec/yml/glxext.yml b/project/jni/glshim/spec/yml/glxext.yml new file mode 100644 index 000000000..07b139d9b --- /dev/null +++ b/project/jni/glshim/spec/yml/glxext.yml @@ -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] diff --git a/project/jni/glshim/spec/yml/my_glx.yml b/project/jni/glshim/spec/yml/my_glx.yml new file mode 100644 index 000000000..f2674e2ec --- /dev/null +++ b/project/jni/glshim/spec/yml/my_glx.yml @@ -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] diff --git a/project/jni/glshim/spec/yml/oes.yml b/project/jni/glshim/spec/yml/oes.yml deleted file mode 100755 index 93d9334c6..000000000 --- a/project/jni/glshim/spec/yml/oes.yml +++ /dev/null @@ -1,4 +0,0 @@ -glBlendColorOES: [void, GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha] -glBlendEquationOES: [void, GLenum mode] -glBlendEquationSeparateOES: [void, GLenum modeRGB, GLenum modeAlpha] -glBlendFuncSeparateOES: [void, GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha] diff --git a/project/jni/glshim/spec/yml/opengl.yml b/project/jni/glshim/spec/yml/opengl.yml old mode 100755 new mode 100644 diff --git a/project/jni/glshim/spec/yml/wgl.yml b/project/jni/glshim/spec/yml/wgl.yml new file mode 100644 index 000000000..70b6d2b42 --- /dev/null +++ b/project/jni/glshim/spec/yml/wgl.yml @@ -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] diff --git a/project/jni/glshim/src/CMakeLists.txt b/project/jni/glshim/src/CMakeLists.txt index 0f6ae7a9f..36ade27c3 100755 --- a/project/jni/glshim/src/CMakeLists.txt +++ b/project/jni/glshim/src/CMakeLists.txt @@ -15,11 +15,10 @@ add_library(GL SHARED ${GL_SOURCES}) if(BCMHOST) set(PI_LIBS bcm_host vcos pthread) target_link_libraries(GL ${PI_LIBS} GLESv1_CM) - target_link_libraries(GL2 ${PI_LIBS} GLESv2) endif() if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") - target_link_libraries(GL X11 dl) + target_link_libraries(GL X11 m dl) endif() if(CMAKE_SHARED_LIBRARY_SUFFIX MATCHES ".so") diff --git a/project/jni/glshim/src/gl/eval.h b/project/jni/glshim/src/gl/eval.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/src/gl/gl.c b/project/jni/glshim/src/gl/gl.c index c6a68b1d8..300cc58ce 100755 --- a/project/jni/glshim/src/gl/gl.c +++ b/project/jni/glshim/src/gl/gl.c @@ -1667,12 +1667,12 @@ void glBlendFunc(GLenum sfactor, GLenum dfactor) { default: break; } -/* +/* if ((sfactor==GL_SRC_ALPHA) && (dfactor==GL_ONE)) { // special case, as seen in Xash3D, but it breaks torus_trooper, so disabled sfactor = GL_ONE; } -*/ +*/ gles_glBlendFunc(sfactor, dfactor); } diff --git a/project/jni/glshim/src/gl/line.h b/project/jni/glshim/src/gl/line.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/src/gl/math/eval.c b/project/jni/glshim/src/gl/math/eval.c old mode 100755 new mode 100644 diff --git a/project/jni/glshim/src/gl/math/eval.h b/project/jni/glshim/src/gl/math/eval.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/src/gl/wrap/es.h b/project/jni/glshim/src/gl/wrap/es.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/src/gl/wrap/gles2.h b/project/jni/glshim/src/gl/wrap/gles2.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/src/glx/gles2funcs.inc b/project/jni/glshim/src/glx/gles2funcs.inc old mode 100755 new mode 100644 diff --git a/project/jni/glshim/src/glx/glx.h b/project/jni/glshim/src/glx/glx.h index eadde3ef1..071d0eaf4 100755 --- a/project/jni/glshim/src/glx/glx.h +++ b/project/jni/glshim/src/glx/glx.h @@ -245,7 +245,6 @@ Display *glXGetCurrentDisplay(); // GLX 1.3 GLXContext glXGetCurrentContext(); - XVisualInfo *glXGetVisualFromFBConfig(Display *display, GLXFBConfig config); GLXFBConfig *glXChooseFBConfig(Display *display, int screen, const int *attrib_list, int *count); GLXFBConfig *glXGetFBConfigs(Display *display, int screen, int *count); diff --git a/project/jni/glshim/src/glx/lookup.c b/project/jni/glshim/src/glx/lookup.c index f473affbd..07cd60b6f 100755 --- a/project/jni/glshim/src/glx/lookup.c +++ b/project/jni/glshim/src/glx/lookup.c @@ -310,7 +310,7 @@ void *glXGetProcAddressARB(const char *name) { EX(glDrawBuffer); EX(glDrawPixels); EX(glDrawRangeElements); - EXT(glDrawRangeElements); + EX(glDrawRangeElementsEXT); EX(glEdgeFlag); EX(glEnd); EX(glEndList); @@ -465,7 +465,6 @@ void *glXGetProcAddressARB(const char *name) { STUB(glIndexPointer); printf("glXGetProcAddress: %s not found.\n", name); - return NULL; } diff --git a/project/jni/glshim/src/preload/preload.c b/project/jni/glshim/src/preload/preload.c old mode 100755 new mode 100644 diff --git a/project/jni/glshim/src/proxy/CMakeLists.txt b/project/jni/glshim/src/proxy/CMakeLists.txt old mode 100755 new mode 100644 diff --git a/project/jni/glshim/src/proxy/client/CMakeLists.txt b/project/jni/glshim/src/proxy/client/CMakeLists.txt old mode 100755 new mode 100644 diff --git a/project/jni/glshim/src/proxy/client/Versions b/project/jni/glshim/src/proxy/client/Versions old mode 100755 new mode 100644 diff --git a/project/jni/glshim/src/proxy/client/src/client.c b/project/jni/glshim/src/proxy/client/src/client.c old mode 100755 new mode 100644 diff --git a/project/jni/glshim/src/proxy/config.h b/project/jni/glshim/src/proxy/config.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/src/proxy/gl.h b/project/jni/glshim/src/proxy/gl.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/src/proxy/host/host.c b/project/jni/glshim/src/proxy/host/host.c old mode 100755 new mode 100644 diff --git a/project/jni/glshim/src/proxy/host/host.h b/project/jni/glshim/src/proxy/host/host.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/src/proxy/proxy.h b/project/jni/glshim/src/proxy/proxy.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/src/tests/main.c b/project/jni/glshim/src/tests/main.c old mode 100755 new mode 100644 diff --git a/project/jni/glshim/src/util/khash.h b/project/jni/glshim/src/util/khash.h old mode 100755 new mode 100644 diff --git a/project/jni/glshim/test/requirements.txt b/project/jni/glshim/test/requirements.txt deleted file mode 100755 index 66c1c1e77..000000000 --- a/project/jni/glshim/test/requirements.txt +++ /dev/null @@ -1,2 +0,0 @@ -Jinja2 -blessings diff --git a/project/jni/glshim/test/run b/project/jni/glshim/test/run deleted file mode 100755 index 49bc5236b..000000000 --- a/project/jni/glshim/test/run +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/bash -u - -cd $(dirname "$0") -python util/run.py --project="$(pwd)/.." --base "$(pwd)/tests" "$@" diff --git a/project/jni/glshim/test/tests/array/skip.c b/project/jni/glshim/test/tests/array/skip.c deleted file mode 100755 index a03068d5f..000000000 --- a/project/jni/glshim/test/tests/array/skip.c +++ /dev/null @@ -1,27 +0,0 @@ -int main() { -#define STRIDE 0, 0, 0, 0, 0, 0, 0, 0, 0 - GLfloat vert[] = { - 0, 0, 0, STRIDE, - 1, 1, 1, STRIDE, - 2, 2, 2, STRIDE, - 3, 3, 3, STRIDE, - 4, 4, 4, STRIDE, - 5, 5, 5, STRIDE, - }; - glEnableClientState(GL_VERTEX_ARRAY); - glVertexPointer(3, GL_FLOAT, 12 * sizeof(GLfloat), vert); - glDrawArrays(GL_QUADS, 2, 4); - - GLfloat vert_out[] = { - 2, 2, 2, - 3, 3, 3, - 4, 4, 4, - 5, 5, 5, - }; - GLushort indices[] = {0, 1, 3, 1, 2, 3}; - test_glEnableClientState(GL_VERTEX_ARRAY); - test_glVertexPointer(3, GL_FLOAT, 12 * 4, vert); - test_glVertexPointer(3, GL_FLOAT, 0, vert_out); - test_glDrawElements(GL_TRIANGLES, 6, GL_UNSIGNED_SHORT, indices); - mock_return; -} diff --git a/project/jni/glshim/test/tests/block/quads.c b/project/jni/glshim/test/tests/block/quads.c deleted file mode 100755 index 401383a38..000000000 --- a/project/jni/glshim/test/tests/block/quads.c +++ /dev/null @@ -1,52 +0,0 @@ -int main() { - glBegin(GL_QUADS); - glColor4f(0, 0.1, 0.2, 0.3); - glTexCoord2f(0.4, 0.5); - glVertex3f(0, 1, 2); - glVertex3f(3, 4, 5); - glVertex3f(6, 7, 8); - glVertex3f(9, 10, 11); - glEnd(); - - GLfloat verts[] = { - 0, 1, 2, - 3, 4, 5, - 6, 7, 8, - 9, 10, 11, - }; - - GLfloat color[] = { - 0, 0.1, 0.2, 0.3, - 0, 0.1, 0.2, 0.3, - 0, 0.1, 0.2, 0.3, - 0, 0.1, 0.2, 0.3, - }; - - GLfloat tex[] = { - 0.4, 0.5, - 0.4, 0.5, - 0.4, 0.5, - 0.4, 0.5, - }; - - GLushort indices[] = { - 0, 1, 3, - 1, 2, 3, - }; - - // TODO: out of order glEnableClientState? - test_glColor4f(0.0, 0.1, 0.2, 0.3); - - test_glEnableClientState(GL_VERTEX_ARRAY); - test_glVertexPointer(3, GL_FLOAT, 0, verts); - test_glEnableClientState(GL_COLOR_ARRAY); - test_glColorPointer(4, GL_FLOAT, 0, color); - test_glEnableClientState(GL_TEXTURE_COORD_ARRAY); - test_glTexCoordPointer(2, GL_FLOAT, 0, tex); - test_glDrawElements(GL_TRIANGLES, 6, GL_UNSIGNED_SHORT, indices); - - test_glDisableClientState(GL_VERTEX_ARRAY); - test_glDisableClientState(GL_COLOR_ARRAY); - test_glDisableClientState(GL_TEXTURE_COORD_ARRAY); - mock_return; -} diff --git a/project/jni/glshim/test/tests/block/rect.c b/project/jni/glshim/test/tests/block/rect.c deleted file mode 100755 index 899f5cb0e..000000000 --- a/project/jni/glshim/test/tests/block/rect.c +++ /dev/null @@ -1,18 +0,0 @@ -int main() { - for (int i = 0; i < 3; i++) { - glRectf(0, 0, 1, 1); - - test_glEnableClientState(GL_VERTEX_ARRAY); - // TODO: pointers are skipped in verification - GLfloat verts[] = { - 0, 0, 0, - 1, 0, 0, - 1, 1, 0, - 0, 1, 0, - }; - test_glVertexPointer(3, GL_FLOAT, 0, verts); - test_glDrawArrays(GL_TRIANGLE_FAN, 0, 4); - test_glDisableClientState(GL_VERTEX_ARRAY); - } - mock_return; -} diff --git a/project/jni/glshim/test/tests/block/tri.c b/project/jni/glshim/test/tests/block/tri.c deleted file mode 100755 index c2cb21707..000000000 --- a/project/jni/glshim/test/tests/block/tri.c +++ /dev/null @@ -1,18 +0,0 @@ -int main() { - glBegin(GL_TRIANGLES); - glVertex3f(0, 1, 2); - glVertex3f(3, 4, 5); - glVertex3f(6, 7, 8); - glEnd(); - - test_glEnableClientState(GL_VERTEX_ARRAY); - GLfloat verts[] = { - 0, 1, 2, - 3, 4, 5, - 6, 7, 8, - }; - test_glVertexPointer(3, GL_FLOAT, 0, verts); - test_glDrawArrays(GL_TRIANGLES, 0, 3); - test_glDisableClientState(GL_VERTEX_ARRAY); - mock_return; -} diff --git a/project/jni/glshim/test/tests/list/nested.c b/project/jni/glshim/test/tests/list/nested.c deleted file mode 100755 index bd0146db5..000000000 --- a/project/jni/glshim/test/tests/list/nested.c +++ /dev/null @@ -1,30 +0,0 @@ -int main() { - GLuint list = glGenLists(3); - glNewList(list, GL_COMPILE); - glRectf(0, 0, 1, 1); - glEndList(); - - glNewList(list + 1, GL_COMPILE); - glCallList(list); - glEndList(); - - glNewList(list + 2, GL_COMPILE); - glCallList(list + 1); - glEndList(); - - glCallList(list + 2); - - GLfloat verts[] = { - 0, 0, 0, - 1, 0, 0, - 1, 1, 0, - 0, 1, 0, - }; - - test_glEnableClientState(GL_VERTEX_ARRAY); - test_glVertexPointer(3, GL_FLOAT, 0, verts); - test_glDrawArrays(6, 0, 4); - test_glDisableClientState(GL_VERTEX_ARRAY); - - mock_return; -} diff --git a/project/jni/glshim/test/tests/list/new.c b/project/jni/glshim/test/tests/list/new.c deleted file mode 100755 index 57492e082..000000000 --- a/project/jni/glshim/test/tests/list/new.c +++ /dev/null @@ -1,6 +0,0 @@ -int main() { - int list = glGenLists(1); - glNewList(list, GL_COMPILE); - mock_assert(state.list.active, "glNewList failed\n"); - mock_return; -} diff --git a/project/jni/glshim/test/tests/meta/test.py b/project/jni/glshim/test/tests/meta/test.py deleted file mode 100755 index 44e66bbff..000000000 --- a/project/jni/glshim/test/tests/meta/test.py +++ /dev/null @@ -1,20 +0,0 @@ -import os -import sys - -def walk(base): - for root, _, files in os.walk(base): - for name in files: - yield os.path.join(root, name) - -if __name__ == '__main__': - failed = False - for name in walk('tests'): - if name.endswith('.c'): - with open(name, 'r') as f: - data = f.read() - if not 'mock_return;' in data: - print 'ERROR: "{}" has no mock_return;'.format(name) - failed = True - - if failed: - sys.exit(1) diff --git a/project/jni/glshim/test/tests/render/feedback.c b/project/jni/glshim/test/tests/render/feedback.c deleted file mode 100755 index b2b20de05..000000000 --- a/project/jni/glshim/test/tests/render/feedback.c +++ /dev/null @@ -1,35 +0,0 @@ -#include "tack.h" - -int main() { - GLfloat buffer[4096]; - glFeedbackBuffer(4096, GL_2D, buffer); - glRenderMode(GL_FEEDBACK); - - glPassThrough(7); - glRectf(0, 0, 1, 1); - - int size = glRenderMode(GL_RENDER); - assert(size == 15); - - GLfloat *pos = buffer; -#define _(val) assert(*pos++ == val) - _(GL_PASS_THROUGH_TOKEN); - _(7.0f); - _(GL_POLYGON_TOKEN); - _(3.0f); - _(1.0f); - _(0.0f); - _(1.0f); - _(1.0f); - _(0.0f); - _(0.0f); - _(GL_POLYGON_TOKEN); - _(3.0f); - _(1.0f); - _(1.0f); - _(0.0f); - _(1.0f); - _(0.0f); - _(0.0f); - mock_return; -} diff --git a/project/jni/glshim/test/tests/state/default.c b/project/jni/glshim/test/tests/state/default.c deleted file mode 100755 index e560add29..000000000 --- a/project/jni/glshim/test/tests/state/default.c +++ /dev/null @@ -1,17 +0,0 @@ -#define check(name, ...) { \ - GLfloat tmp[] = __VA_ARGS__; \ - assert(memcmp(state.name, tmp, sizeof(tmp)) == 0);} - -int main() { - check(current.color, {1.0f, 1.0f, 1.0f, 1.0f}); - check(current.normal, {0.0f, 0.0f, 1.0f}); - for (int i = 0; i < MAX_TEX; i++) { - check(current.tex[i], {0, 0}); - texgen_state_t *t = &state.texgen[i]; - assert(t->R == GL_EYE_LINEAR); - assert(t->Q == GL_EYE_LINEAR); - assert(t->S == GL_EYE_LINEAR); - assert(t->T == GL_EYE_LINEAR); - } - mock_return; -} diff --git a/project/jni/glshim/test/tests/util/gl_str.c b/project/jni/glshim/test/tests/util/gl_str.c deleted file mode 100755 index f8e4d6361..000000000 --- a/project/jni/glshim/test/tests/util/gl_str.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "gl_str.h" - -int main() { -#define check(func, name) assert(strcmp(func(name), #name) == 0); - check(gl_str_primitive, GL_QUADS); - check(gl_str, GL_FLOAT); - check(gl_bits_glPushClientAttrib, GL_CLIENT_ALL_ATTRIB_BITS); - check(gl_bits_glPushAttrib, GL_CURRENT_BIT | GL_POINT_BIT); - mock_return; -} diff --git a/project/jni/glshim/test/tests/util/tack.c b/project/jni/glshim/test/tests/util/tack.c deleted file mode 100755 index db6613dc1..000000000 --- a/project/jni/glshim/test/tests/util/tack.c +++ /dev/null @@ -1,30 +0,0 @@ -int main() { - tack_t stack = {0}; - tack_push(&stack, 1); - assert(tack_peek(&stack) == 1); - assert(tack_len(&stack) == 1); - - tack_push(&stack, 2); - tack_push(&stack, 3); - assert(tack_get(&stack, 0) == 1); - assert(tack_peek(&stack) == 3); - assert(tack_pop(&stack) == 3); - assert(tack_peek(&stack) == 2); - - tack_clear(&stack); - assert(tack_len(&stack) == 0); - - for (int i = 0; i < 10000; i++) { - tack_push(&stack, i); - assert(tack_peek(&stack) == i); - } - for (int i = 0; i < 10000; i++) { - assert(tack_shift(&stack) == i); - } - - tack_clear(&stack); - tack_set(&stack, 1, "test"); - assert(tack_get(&stack, 0) == NULL); - assert(strcmp(tack_get(&stack, 1), "test") == 0); - mock_return; -} diff --git a/project/jni/glshim/test/util/mock.c b/project/jni/glshim/test/util/mock.c deleted file mode 100755 index 8c7034205..000000000 --- a/project/jni/glshim/test/util/mock.c +++ /dev/null @@ -1,1548 +0,0 @@ -#include "mock.h" - -#include -#include "tack.h" - -static tack_t mock = {0}; - -const char *mock_name(int func) { - switch (func) { - case glActiveTexture_INDEX: return "glActiveTexture"; - case glAlphaFunc_INDEX: return "glAlphaFunc"; - case glAlphaFuncx_INDEX: return "glAlphaFuncx"; - case glBindBuffer_INDEX: return "glBindBuffer"; - case glBindTexture_INDEX: return "glBindTexture"; - case glBlendColorOES_INDEX: return "glBlendColorOES"; - case glBlendEquationOES_INDEX: return "glBlendEquationOES"; - case glBlendEquationSeparateOES_INDEX: return "glBlendEquationSeparateOES"; - case glBlendFunc_INDEX: return "glBlendFunc"; - case glBlendFuncSeparateOES_INDEX: return "glBlendFuncSeparateOES"; - case glBufferData_INDEX: return "glBufferData"; - case glBufferSubData_INDEX: return "glBufferSubData"; - case glClear_INDEX: return "glClear"; - case glClearColor_INDEX: return "glClearColor"; - case glClearColorx_INDEX: return "glClearColorx"; - case glClearDepthf_INDEX: return "glClearDepthf"; - case glClearDepthx_INDEX: return "glClearDepthx"; - case glClearStencil_INDEX: return "glClearStencil"; - case glClientActiveTexture_INDEX: return "glClientActiveTexture"; - case glClipPlanef_INDEX: return "glClipPlanef"; - case glClipPlanex_INDEX: return "glClipPlanex"; - case glColor4f_INDEX: return "glColor4f"; - case glColor4ub_INDEX: return "glColor4ub"; - case glColor4x_INDEX: return "glColor4x"; - case glColorMask_INDEX: return "glColorMask"; - case glColorPointer_INDEX: return "glColorPointer"; - case glCompressedTexImage2D_INDEX: return "glCompressedTexImage2D"; - case glCompressedTexSubImage2D_INDEX: return "glCompressedTexSubImage2D"; - case glCopyTexImage2D_INDEX: return "glCopyTexImage2D"; - case glCopyTexSubImage2D_INDEX: return "glCopyTexSubImage2D"; - case glCullFace_INDEX: return "glCullFace"; - case glDeleteBuffers_INDEX: return "glDeleteBuffers"; - case glDeleteTextures_INDEX: return "glDeleteTextures"; - case glDepthFunc_INDEX: return "glDepthFunc"; - case glDepthMask_INDEX: return "glDepthMask"; - case glDepthRangef_INDEX: return "glDepthRangef"; - case glDepthRangex_INDEX: return "glDepthRangex"; - case glDisable_INDEX: return "glDisable"; - case glDisableClientState_INDEX: return "glDisableClientState"; - case glDrawArrays_INDEX: return "glDrawArrays"; - case glDrawElements_INDEX: return "glDrawElements"; - case glEnable_INDEX: return "glEnable"; - case glEnableClientState_INDEX: return "glEnableClientState"; - case glFinish_INDEX: return "glFinish"; - case glFlush_INDEX: return "glFlush"; - case glFogf_INDEX: return "glFogf"; - case glFogfv_INDEX: return "glFogfv"; - case glFogx_INDEX: return "glFogx"; - case glFogxv_INDEX: return "glFogxv"; - case glFrontFace_INDEX: return "glFrontFace"; - case glFrustumf_INDEX: return "glFrustumf"; - case glFrustumx_INDEX: return "glFrustumx"; - case glGenBuffers_INDEX: return "glGenBuffers"; - case glGenTextures_INDEX: return "glGenTextures"; - case glGetBooleanv_INDEX: return "glGetBooleanv"; - case glGetBufferParameteriv_INDEX: return "glGetBufferParameteriv"; - case glGetClipPlanef_INDEX: return "glGetClipPlanef"; - case glGetClipPlanex_INDEX: return "glGetClipPlanex"; - case glGetError_INDEX: return "glGetError"; - case glGetFixedv_INDEX: return "glGetFixedv"; - case glGetFloatv_INDEX: return "glGetFloatv"; - case glGetIntegerv_INDEX: return "glGetIntegerv"; - case glGetLightfv_INDEX: return "glGetLightfv"; - case glGetLightxv_INDEX: return "glGetLightxv"; - case glGetMaterialfv_INDEX: return "glGetMaterialfv"; - case glGetMaterialxv_INDEX: return "glGetMaterialxv"; - case glGetPointerv_INDEX: return "glGetPointerv"; - case glGetString_INDEX: return "glGetString"; - case glGetTexEnvfv_INDEX: return "glGetTexEnvfv"; - case glGetTexEnviv_INDEX: return "glGetTexEnviv"; - case glGetTexEnvxv_INDEX: return "glGetTexEnvxv"; - case glGetTexParameterfv_INDEX: return "glGetTexParameterfv"; - case glGetTexParameteriv_INDEX: return "glGetTexParameteriv"; - case glGetTexParameterxv_INDEX: return "glGetTexParameterxv"; - case glHint_INDEX: return "glHint"; - case glIsBuffer_INDEX: return "glIsBuffer"; - case glIsEnabled_INDEX: return "glIsEnabled"; - case glIsTexture_INDEX: return "glIsTexture"; - case glLightModelf_INDEX: return "glLightModelf"; - case glLightModelfv_INDEX: return "glLightModelfv"; - case glLightModelx_INDEX: return "glLightModelx"; - case glLightModelxv_INDEX: return "glLightModelxv"; - case glLightf_INDEX: return "glLightf"; - case glLightfv_INDEX: return "glLightfv"; - case glLightx_INDEX: return "glLightx"; - case glLightxv_INDEX: return "glLightxv"; - case glLineWidth_INDEX: return "glLineWidth"; - case glLineWidthx_INDEX: return "glLineWidthx"; - case glLoadIdentity_INDEX: return "glLoadIdentity"; - case glLoadMatrixf_INDEX: return "glLoadMatrixf"; - case glLoadMatrixx_INDEX: return "glLoadMatrixx"; - case glLogicOp_INDEX: return "glLogicOp"; - case glMaterialf_INDEX: return "glMaterialf"; - case glMaterialfv_INDEX: return "glMaterialfv"; - case glMaterialx_INDEX: return "glMaterialx"; - case glMaterialxv_INDEX: return "glMaterialxv"; - case glMatrixMode_INDEX: return "glMatrixMode"; - case glMultMatrixf_INDEX: return "glMultMatrixf"; - case glMultMatrixx_INDEX: return "glMultMatrixx"; - case glMultiTexCoord4f_INDEX: return "glMultiTexCoord4f"; - case glMultiTexCoord4x_INDEX: return "glMultiTexCoord4x"; - case glNormal3f_INDEX: return "glNormal3f"; - case glNormal3x_INDEX: return "glNormal3x"; - case glNormalPointer_INDEX: return "glNormalPointer"; - case glOrthof_INDEX: return "glOrthof"; - case glOrthox_INDEX: return "glOrthox"; - case glPixelStorei_INDEX: return "glPixelStorei"; - case glPointParameterf_INDEX: return "glPointParameterf"; - case glPointParameterfv_INDEX: return "glPointParameterfv"; - case glPointParameterx_INDEX: return "glPointParameterx"; - case glPointParameterxv_INDEX: return "glPointParameterxv"; - case glPointSize_INDEX: return "glPointSize"; - case glPointSizePointerOES_INDEX: return "glPointSizePointerOES"; - case glPointSizex_INDEX: return "glPointSizex"; - case glPolygonOffset_INDEX: return "glPolygonOffset"; - case glPolygonOffsetx_INDEX: return "glPolygonOffsetx"; - case glPopMatrix_INDEX: return "glPopMatrix"; - case glPushMatrix_INDEX: return "glPushMatrix"; - case glReadPixels_INDEX: return "glReadPixels"; - case glRotatef_INDEX: return "glRotatef"; - case glRotatex_INDEX: return "glRotatex"; - case glSampleCoverage_INDEX: return "glSampleCoverage"; - case glSampleCoveragex_INDEX: return "glSampleCoveragex"; - case glScalef_INDEX: return "glScalef"; - case glScalex_INDEX: return "glScalex"; - case glScissor_INDEX: return "glScissor"; - case glShadeModel_INDEX: return "glShadeModel"; - case glStencilFunc_INDEX: return "glStencilFunc"; - case glStencilMask_INDEX: return "glStencilMask"; - case glStencilOp_INDEX: return "glStencilOp"; - case glTexCoordPointer_INDEX: return "glTexCoordPointer"; - case glTexEnvf_INDEX: return "glTexEnvf"; - case glTexEnvfv_INDEX: return "glTexEnvfv"; - case glTexEnvi_INDEX: return "glTexEnvi"; - case glTexEnviv_INDEX: return "glTexEnviv"; - case glTexEnvx_INDEX: return "glTexEnvx"; - case glTexEnvxv_INDEX: return "glTexEnvxv"; - case glTexImage2D_INDEX: return "glTexImage2D"; - case glTexParameterf_INDEX: return "glTexParameterf"; - case glTexParameterfv_INDEX: return "glTexParameterfv"; - case glTexParameteri_INDEX: return "glTexParameteri"; - case glTexParameteriv_INDEX: return "glTexParameteriv"; - case glTexParameterx_INDEX: return "glTexParameterx"; - case glTexParameterxv_INDEX: return "glTexParameterxv"; - case glTexSubImage2D_INDEX: return "glTexSubImage2D"; - case glTranslatef_INDEX: return "glTranslatef"; - case glTranslatex_INDEX: return "glTranslatex"; - case glVertexPointer_INDEX: return "glVertexPointer"; - case glViewport_INDEX: return "glViewport"; - } -} - -void mock_print(const indexed_call_t *packed) { - if (packed == NULL) { - printf("NULL()\n"); - return; - } - switch (packed->func) { - case glActiveTexture_INDEX: { - INDEXED_void_GLenum *unpacked = (INDEXED_void_GLenum *)packed; - ARGS_void_GLenum args = unpacked->args; - printf("glActiveTexture(0x%04X);\n", args.a1); - break; - } - case glAlphaFunc_INDEX: { - INDEXED_void_GLenum_GLclampf *unpacked = (INDEXED_void_GLenum_GLclampf *)packed; - ARGS_void_GLenum_GLclampf args = unpacked->args; - printf("glAlphaFunc(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glAlphaFuncx_INDEX: { - INDEXED_void_GLenum_GLclampx *unpacked = (INDEXED_void_GLenum_GLclampx *)packed; - ARGS_void_GLenum_GLclampx args = unpacked->args; - printf("glAlphaFuncx(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glBindBuffer_INDEX: { - INDEXED_void_GLenum_GLuint *unpacked = (INDEXED_void_GLenum_GLuint *)packed; - ARGS_void_GLenum_GLuint args = unpacked->args; - printf("glBindBuffer(0x%04X, %u);\n", args.a1, args.a2); - break; - } - case glBindTexture_INDEX: { - INDEXED_void_GLenum_GLuint *unpacked = (INDEXED_void_GLenum_GLuint *)packed; - ARGS_void_GLenum_GLuint args = unpacked->args; - printf("glBindTexture(0x%04X, %u);\n", args.a1, args.a2); - break; - } - case glBlendColorOES_INDEX: { - INDEXED_void_GLclampf_GLclampf_GLclampf_GLclampf *unpacked = (INDEXED_void_GLclampf_GLclampf_GLclampf_GLclampf *)packed; - ARGS_void_GLclampf_GLclampf_GLclampf_GLclampf args = unpacked->args; - printf("glBlendColorOES(%p, %p, %p, %p);\n", args.a1, args.a2, args.a3, args.a4); - break; - } - case glBlendEquationOES_INDEX: { - INDEXED_void_GLenum *unpacked = (INDEXED_void_GLenum *)packed; - ARGS_void_GLenum args = unpacked->args; - printf("glBlendEquationOES(0x%04X);\n", args.a1); - break; - } - case glBlendEquationSeparateOES_INDEX: { - INDEXED_void_GLenum_GLenum *unpacked = (INDEXED_void_GLenum_GLenum *)packed; - ARGS_void_GLenum_GLenum args = unpacked->args; - printf("glBlendEquationSeparateOES(0x%04X, 0x%04X);\n", args.a1, args.a2); - break; - } - case glBlendFunc_INDEX: { - INDEXED_void_GLenum_GLenum *unpacked = (INDEXED_void_GLenum_GLenum *)packed; - ARGS_void_GLenum_GLenum args = unpacked->args; - printf("glBlendFunc(0x%04X, 0x%04X);\n", args.a1, args.a2); - break; - } - case glBlendFuncSeparateOES_INDEX: { - INDEXED_void_GLenum_GLenum_GLenum_GLenum *unpacked = (INDEXED_void_GLenum_GLenum_GLenum_GLenum *)packed; - ARGS_void_GLenum_GLenum_GLenum_GLenum args = unpacked->args; - printf("glBlendFuncSeparateOES(0x%04X, 0x%04X, 0x%04X, 0x%04X);\n", args.a1, args.a2, args.a3, args.a4); - break; - } - case glBufferData_INDEX: { - INDEXED_void_GLenum_GLsizeiptr_const_GLvoid___GENPT___GLenum *unpacked = (INDEXED_void_GLenum_GLsizeiptr_const_GLvoid___GENPT___GLenum *)packed; - ARGS_void_GLenum_GLsizeiptr_const_GLvoid___GENPT___GLenum args = unpacked->args; - printf("glBufferData(0x%04X, %d, %p, 0x%04X);\n", args.a1, args.a2, args.a3, args.a4); - break; - } - case glBufferSubData_INDEX: { - INDEXED_void_GLenum_GLintptr_GLsizeiptr_const_GLvoid___GENPT__ *unpacked = (INDEXED_void_GLenum_GLintptr_GLsizeiptr_const_GLvoid___GENPT__ *)packed; - ARGS_void_GLenum_GLintptr_GLsizeiptr_const_GLvoid___GENPT__ args = unpacked->args; - printf("glBufferSubData(0x%04X, %d, %d, %p);\n", args.a1, args.a2, args.a3, args.a4); - break; - } - case glClear_INDEX: { - INDEXED_void_GLbitfield *unpacked = (INDEXED_void_GLbitfield *)packed; - ARGS_void_GLbitfield args = unpacked->args; - printf("glClear(%d);\n", args.a1); - break; - } - case glClearColor_INDEX: { - INDEXED_void_GLclampf_GLclampf_GLclampf_GLclampf *unpacked = (INDEXED_void_GLclampf_GLclampf_GLclampf_GLclampf *)packed; - ARGS_void_GLclampf_GLclampf_GLclampf_GLclampf args = unpacked->args; - printf("glClearColor(%p, %p, %p, %p);\n", args.a1, args.a2, args.a3, args.a4); - break; - } - case glClearColorx_INDEX: { - INDEXED_void_GLclampx_GLclampx_GLclampx_GLclampx *unpacked = (INDEXED_void_GLclampx_GLclampx_GLclampx_GLclampx *)packed; - ARGS_void_GLclampx_GLclampx_GLclampx_GLclampx args = unpacked->args; - printf("glClearColorx(%p, %p, %p, %p);\n", args.a1, args.a2, args.a3, args.a4); - break; - } - case glClearDepthf_INDEX: { - INDEXED_void_GLclampf *unpacked = (INDEXED_void_GLclampf *)packed; - ARGS_void_GLclampf args = unpacked->args; - printf("glClearDepthf(%p);\n", args.a1); - break; - } - case glClearDepthx_INDEX: { - INDEXED_void_GLclampx *unpacked = (INDEXED_void_GLclampx *)packed; - ARGS_void_GLclampx args = unpacked->args; - printf("glClearDepthx(%p);\n", args.a1); - break; - } - case glClearStencil_INDEX: { - INDEXED_void_GLint *unpacked = (INDEXED_void_GLint *)packed; - ARGS_void_GLint args = unpacked->args; - printf("glClearStencil(%d);\n", args.a1); - break; - } - case glClientActiveTexture_INDEX: { - INDEXED_void_GLenum *unpacked = (INDEXED_void_GLenum *)packed; - ARGS_void_GLenum args = unpacked->args; - printf("glClientActiveTexture(0x%04X);\n", args.a1); - break; - } - case glClipPlanef_INDEX: { - INDEXED_void_GLenum_const_GLfloat___GENPT__ *unpacked = (INDEXED_void_GLenum_const_GLfloat___GENPT__ *)packed; - ARGS_void_GLenum_const_GLfloat___GENPT__ args = unpacked->args; - printf("glClipPlanef(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glClipPlanex_INDEX: { - INDEXED_void_GLenum_const_GLfixed___GENPT__ *unpacked = (INDEXED_void_GLenum_const_GLfixed___GENPT__ *)packed; - ARGS_void_GLenum_const_GLfixed___GENPT__ args = unpacked->args; - printf("glClipPlanex(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glColor4f_INDEX: { - INDEXED_void_GLfloat_GLfloat_GLfloat_GLfloat *unpacked = (INDEXED_void_GLfloat_GLfloat_GLfloat_GLfloat *)packed; - ARGS_void_GLfloat_GLfloat_GLfloat_GLfloat args = unpacked->args; - printf("glColor4f(%0.2f, %0.2f, %0.2f, %0.2f);\n", args.a1, args.a2, args.a3, args.a4); - break; - } - case glColor4ub_INDEX: { - INDEXED_void_GLubyte_GLubyte_GLubyte_GLubyte *unpacked = (INDEXED_void_GLubyte_GLubyte_GLubyte_GLubyte *)packed; - ARGS_void_GLubyte_GLubyte_GLubyte_GLubyte args = unpacked->args; - printf("glColor4ub(%c, %c, %c, %c);\n", args.a1, args.a2, args.a3, args.a4); - break; - } - case glColor4x_INDEX: { - INDEXED_void_GLfixed_GLfixed_GLfixed_GLfixed *unpacked = (INDEXED_void_GLfixed_GLfixed_GLfixed_GLfixed *)packed; - ARGS_void_GLfixed_GLfixed_GLfixed_GLfixed args = unpacked->args; - printf("glColor4x(%p, %p, %p, %p);\n", args.a1, args.a2, args.a3, args.a4); - break; - } - case glColorMask_INDEX: { - INDEXED_void_GLboolean_GLboolean_GLboolean_GLboolean *unpacked = (INDEXED_void_GLboolean_GLboolean_GLboolean_GLboolean *)packed; - ARGS_void_GLboolean_GLboolean_GLboolean_GLboolean args = unpacked->args; - printf("glColorMask(%d, %d, %d, %d);\n", args.a1, args.a2, args.a3, args.a4); - break; - } - case glColorPointer_INDEX: { - INDEXED_void_GLint_GLenum_GLsizei_const_GLvoid___GENPT__ *unpacked = (INDEXED_void_GLint_GLenum_GLsizei_const_GLvoid___GENPT__ *)packed; - ARGS_void_GLint_GLenum_GLsizei_const_GLvoid___GENPT__ args = unpacked->args; - printf("glColorPointer(%d, 0x%04X, %d, %p);\n", args.a1, args.a2, args.a3, args.a4); - break; - } - case glCompressedTexImage2D_INDEX: { - INDEXED_void_GLenum_GLint_GLenum_GLsizei_GLsizei_GLint_GLsizei_const_GLvoid___GENPT__ *unpacked = (INDEXED_void_GLenum_GLint_GLenum_GLsizei_GLsizei_GLint_GLsizei_const_GLvoid___GENPT__ *)packed; - ARGS_void_GLenum_GLint_GLenum_GLsizei_GLsizei_GLint_GLsizei_const_GLvoid___GENPT__ args = unpacked->args; - printf("glCompressedTexImage2D(0x%04X, %d, 0x%04X, %d, %d, %d, %d, %p);\n", args.a1, args.a2, args.a3, args.a4, args.a5, args.a6, args.a7, args.a8); - break; - } - case glCompressedTexSubImage2D_INDEX: { - INDEXED_void_GLenum_GLint_GLint_GLint_GLsizei_GLsizei_GLenum_GLsizei_const_GLvoid___GENPT__ *unpacked = (INDEXED_void_GLenum_GLint_GLint_GLint_GLsizei_GLsizei_GLenum_GLsizei_const_GLvoid___GENPT__ *)packed; - ARGS_void_GLenum_GLint_GLint_GLint_GLsizei_GLsizei_GLenum_GLsizei_const_GLvoid___GENPT__ args = unpacked->args; - printf("glCompressedTexSubImage2D(0x%04X, %d, %d, %d, %d, %d, 0x%04X, %d, %p);\n", args.a1, args.a2, args.a3, args.a4, args.a5, args.a6, args.a7, args.a8, args.a9); - break; - } - case glCopyTexImage2D_INDEX: { - INDEXED_void_GLenum_GLint_GLenum_GLint_GLint_GLsizei_GLsizei_GLint *unpacked = (INDEXED_void_GLenum_GLint_GLenum_GLint_GLint_GLsizei_GLsizei_GLint *)packed; - ARGS_void_GLenum_GLint_GLenum_GLint_GLint_GLsizei_GLsizei_GLint args = unpacked->args; - printf("glCopyTexImage2D(0x%04X, %d, 0x%04X, %d, %d, %d, %d, %d);\n", args.a1, args.a2, args.a3, args.a4, args.a5, args.a6, args.a7, args.a8); - break; - } - case glCopyTexSubImage2D_INDEX: { - INDEXED_void_GLenum_GLint_GLint_GLint_GLint_GLint_GLsizei_GLsizei *unpacked = (INDEXED_void_GLenum_GLint_GLint_GLint_GLint_GLint_GLsizei_GLsizei *)packed; - ARGS_void_GLenum_GLint_GLint_GLint_GLint_GLint_GLsizei_GLsizei args = unpacked->args; - printf("glCopyTexSubImage2D(0x%04X, %d, %d, %d, %d, %d, %d, %d);\n", args.a1, args.a2, args.a3, args.a4, args.a5, args.a6, args.a7, args.a8); - break; - } - case glCullFace_INDEX: { - INDEXED_void_GLenum *unpacked = (INDEXED_void_GLenum *)packed; - ARGS_void_GLenum args = unpacked->args; - printf("glCullFace(0x%04X);\n", args.a1); - break; - } - case glDeleteBuffers_INDEX: { - INDEXED_void_GLsizei_const_GLuint___GENPT__ *unpacked = (INDEXED_void_GLsizei_const_GLuint___GENPT__ *)packed; - ARGS_void_GLsizei_const_GLuint___GENPT__ args = unpacked->args; - printf("glDeleteBuffers(%d, %p);\n", args.a1, args.a2); - break; - } - case glDeleteTextures_INDEX: { - INDEXED_void_GLsizei_const_GLuint___GENPT__ *unpacked = (INDEXED_void_GLsizei_const_GLuint___GENPT__ *)packed; - ARGS_void_GLsizei_const_GLuint___GENPT__ args = unpacked->args; - printf("glDeleteTextures(%d, %p);\n", args.a1, args.a2); - break; - } - case glDepthFunc_INDEX: { - INDEXED_void_GLenum *unpacked = (INDEXED_void_GLenum *)packed; - ARGS_void_GLenum args = unpacked->args; - printf("glDepthFunc(0x%04X);\n", args.a1); - break; - } - case glDepthMask_INDEX: { - INDEXED_void_GLboolean *unpacked = (INDEXED_void_GLboolean *)packed; - ARGS_void_GLboolean args = unpacked->args; - printf("glDepthMask(%d);\n", args.a1); - break; - } - case glDepthRangef_INDEX: { - INDEXED_void_GLclampf_GLclampf *unpacked = (INDEXED_void_GLclampf_GLclampf *)packed; - ARGS_void_GLclampf_GLclampf args = unpacked->args; - printf("glDepthRangef(%p, %p);\n", args.a1, args.a2); - break; - } - case glDepthRangex_INDEX: { - INDEXED_void_GLclampx_GLclampx *unpacked = (INDEXED_void_GLclampx_GLclampx *)packed; - ARGS_void_GLclampx_GLclampx args = unpacked->args; - printf("glDepthRangex(%p, %p);\n", args.a1, args.a2); - break; - } - case glDisable_INDEX: { - INDEXED_void_GLenum *unpacked = (INDEXED_void_GLenum *)packed; - ARGS_void_GLenum args = unpacked->args; - printf("glDisable(0x%04X);\n", args.a1); - break; - } - case glDisableClientState_INDEX: { - INDEXED_void_GLenum *unpacked = (INDEXED_void_GLenum *)packed; - ARGS_void_GLenum args = unpacked->args; - printf("glDisableClientState(0x%04X);\n", args.a1); - break; - } - case glDrawArrays_INDEX: { - INDEXED_void_GLenum_GLint_GLsizei *unpacked = (INDEXED_void_GLenum_GLint_GLsizei *)packed; - ARGS_void_GLenum_GLint_GLsizei args = unpacked->args; - printf("glDrawArrays(0x%04X, %d, %d);\n", args.a1, args.a2, args.a3); - break; - } - case glDrawElements_INDEX: { - INDEXED_void_GLenum_GLsizei_GLenum_const_GLvoid___GENPT__ *unpacked = (INDEXED_void_GLenum_GLsizei_GLenum_const_GLvoid___GENPT__ *)packed; - ARGS_void_GLenum_GLsizei_GLenum_const_GLvoid___GENPT__ args = unpacked->args; - printf("glDrawElements(0x%04X, %d, 0x%04X, %p);\n", args.a1, args.a2, args.a3, args.a4); - break; - } - case glEnable_INDEX: { - INDEXED_void_GLenum *unpacked = (INDEXED_void_GLenum *)packed; - ARGS_void_GLenum args = unpacked->args; - printf("glEnable(0x%04X);\n", args.a1); - break; - } - case glEnableClientState_INDEX: { - INDEXED_void_GLenum *unpacked = (INDEXED_void_GLenum *)packed; - ARGS_void_GLenum args = unpacked->args; - printf("glEnableClientState(0x%04X);\n", args.a1); - break; - } - case glFinish_INDEX: { - INDEXED_void *unpacked = (INDEXED_void *)packed; - printf("glFinish();\n"); - break; - } - case glFlush_INDEX: { - INDEXED_void *unpacked = (INDEXED_void *)packed; - printf("glFlush();\n"); - break; - } - case glFogf_INDEX: { - INDEXED_void_GLenum_GLfloat *unpacked = (INDEXED_void_GLenum_GLfloat *)packed; - ARGS_void_GLenum_GLfloat args = unpacked->args; - printf("glFogf(0x%04X, %0.2f);\n", args.a1, args.a2); - break; - } - case glFogfv_INDEX: { - INDEXED_void_GLenum_const_GLfloat___GENPT__ *unpacked = (INDEXED_void_GLenum_const_GLfloat___GENPT__ *)packed; - ARGS_void_GLenum_const_GLfloat___GENPT__ args = unpacked->args; - printf("glFogfv(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glFogx_INDEX: { - INDEXED_void_GLenum_GLfixed *unpacked = (INDEXED_void_GLenum_GLfixed *)packed; - ARGS_void_GLenum_GLfixed args = unpacked->args; - printf("glFogx(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glFogxv_INDEX: { - INDEXED_void_GLenum_const_GLfixed___GENPT__ *unpacked = (INDEXED_void_GLenum_const_GLfixed___GENPT__ *)packed; - ARGS_void_GLenum_const_GLfixed___GENPT__ args = unpacked->args; - printf("glFogxv(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glFrontFace_INDEX: { - INDEXED_void_GLenum *unpacked = (INDEXED_void_GLenum *)packed; - ARGS_void_GLenum args = unpacked->args; - printf("glFrontFace(0x%04X);\n", args.a1); - break; - } - case glFrustumf_INDEX: { - INDEXED_void_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat *unpacked = (INDEXED_void_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat *)packed; - ARGS_void_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat args = unpacked->args; - printf("glFrustumf(%0.2f, %0.2f, %0.2f, %0.2f, %0.2f, %0.2f);\n", args.a1, args.a2, args.a3, args.a4, args.a5, args.a6); - break; - } - case glFrustumx_INDEX: { - INDEXED_void_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed *unpacked = (INDEXED_void_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed *)packed; - ARGS_void_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed args = unpacked->args; - printf("glFrustumx(%p, %p, %p, %p, %p, %p);\n", args.a1, args.a2, args.a3, args.a4, args.a5, args.a6); - break; - } - case glGenBuffers_INDEX: { - INDEXED_void_GLsizei_GLuint___GENPT__ *unpacked = (INDEXED_void_GLsizei_GLuint___GENPT__ *)packed; - ARGS_void_GLsizei_GLuint___GENPT__ args = unpacked->args; - printf("glGenBuffers(%d, %p);\n", args.a1, args.a2); - break; - } - case glGenTextures_INDEX: { - INDEXED_void_GLsizei_GLuint___GENPT__ *unpacked = (INDEXED_void_GLsizei_GLuint___GENPT__ *)packed; - ARGS_void_GLsizei_GLuint___GENPT__ args = unpacked->args; - printf("glGenTextures(%d, %p);\n", args.a1, args.a2); - break; - } - case glGetBooleanv_INDEX: { - INDEXED_void_GLenum_GLboolean___GENPT__ *unpacked = (INDEXED_void_GLenum_GLboolean___GENPT__ *)packed; - ARGS_void_GLenum_GLboolean___GENPT__ args = unpacked->args; - printf("glGetBooleanv(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glGetBufferParameteriv_INDEX: { - INDEXED_void_GLenum_GLenum_GLint___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_GLint___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_GLint___GENPT__ args = unpacked->args; - printf("glGetBufferParameteriv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glGetClipPlanef_INDEX: { - INDEXED_void_GLenum_GLfloat___GENPT__ *unpacked = (INDEXED_void_GLenum_GLfloat___GENPT__ *)packed; - ARGS_void_GLenum_GLfloat___GENPT__ args = unpacked->args; - printf("glGetClipPlanef(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glGetClipPlanex_INDEX: { - INDEXED_void_GLenum_GLfixed___GENPT__ *unpacked = (INDEXED_void_GLenum_GLfixed___GENPT__ *)packed; - ARGS_void_GLenum_GLfixed___GENPT__ args = unpacked->args; - printf("glGetClipPlanex(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glGetError_INDEX: { - INDEXED_GLenum *unpacked = (INDEXED_GLenum *)packed; - printf("glGetError();\n"); - break; - } - case glGetFixedv_INDEX: { - INDEXED_void_GLenum_GLfixed___GENPT__ *unpacked = (INDEXED_void_GLenum_GLfixed___GENPT__ *)packed; - ARGS_void_GLenum_GLfixed___GENPT__ args = unpacked->args; - printf("glGetFixedv(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glGetFloatv_INDEX: { - INDEXED_void_GLenum_GLfloat___GENPT__ *unpacked = (INDEXED_void_GLenum_GLfloat___GENPT__ *)packed; - ARGS_void_GLenum_GLfloat___GENPT__ args = unpacked->args; - printf("glGetFloatv(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glGetIntegerv_INDEX: { - INDEXED_void_GLenum_GLint___GENPT__ *unpacked = (INDEXED_void_GLenum_GLint___GENPT__ *)packed; - ARGS_void_GLenum_GLint___GENPT__ args = unpacked->args; - printf("glGetIntegerv(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glGetLightfv_INDEX: { - INDEXED_void_GLenum_GLenum_GLfloat___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_GLfloat___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_GLfloat___GENPT__ args = unpacked->args; - printf("glGetLightfv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glGetLightxv_INDEX: { - INDEXED_void_GLenum_GLenum_GLfixed___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_GLfixed___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_GLfixed___GENPT__ args = unpacked->args; - printf("glGetLightxv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glGetMaterialfv_INDEX: { - INDEXED_void_GLenum_GLenum_GLfloat___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_GLfloat___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_GLfloat___GENPT__ args = unpacked->args; - printf("glGetMaterialfv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glGetMaterialxv_INDEX: { - INDEXED_void_GLenum_GLenum_GLfixed___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_GLfixed___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_GLfixed___GENPT__ args = unpacked->args; - printf("glGetMaterialxv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glGetPointerv_INDEX: { - INDEXED_void_GLenum_GLvoid___GENPT____GENPT__ *unpacked = (INDEXED_void_GLenum_GLvoid___GENPT____GENPT__ *)packed; - ARGS_void_GLenum_GLvoid___GENPT____GENPT__ args = unpacked->args; - printf("glGetPointerv(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glGetString_INDEX: { - INDEXED_const_GLubyte___GENPT___GLenum *unpacked = (INDEXED_const_GLubyte___GENPT___GLenum *)packed; - ARGS_const_GLubyte___GENPT___GLenum args = unpacked->args; - printf("glGetString(0x%04X);\n", args.a1); - break; - } - case glGetTexEnvfv_INDEX: { - INDEXED_void_GLenum_GLenum_GLfloat___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_GLfloat___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_GLfloat___GENPT__ args = unpacked->args; - printf("glGetTexEnvfv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glGetTexEnviv_INDEX: { - INDEXED_void_GLenum_GLenum_GLint___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_GLint___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_GLint___GENPT__ args = unpacked->args; - printf("glGetTexEnviv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glGetTexEnvxv_INDEX: { - INDEXED_void_GLenum_GLenum_GLfixed___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_GLfixed___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_GLfixed___GENPT__ args = unpacked->args; - printf("glGetTexEnvxv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glGetTexParameterfv_INDEX: { - INDEXED_void_GLenum_GLenum_GLfloat___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_GLfloat___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_GLfloat___GENPT__ args = unpacked->args; - printf("glGetTexParameterfv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glGetTexParameteriv_INDEX: { - INDEXED_void_GLenum_GLenum_GLint___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_GLint___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_GLint___GENPT__ args = unpacked->args; - printf("glGetTexParameteriv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glGetTexParameterxv_INDEX: { - INDEXED_void_GLenum_GLenum_GLfixed___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_GLfixed___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_GLfixed___GENPT__ args = unpacked->args; - printf("glGetTexParameterxv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glHint_INDEX: { - INDEXED_void_GLenum_GLenum *unpacked = (INDEXED_void_GLenum_GLenum *)packed; - ARGS_void_GLenum_GLenum args = unpacked->args; - printf("glHint(0x%04X, 0x%04X);\n", args.a1, args.a2); - break; - } - case glIsBuffer_INDEX: { - INDEXED_GLboolean_GLuint *unpacked = (INDEXED_GLboolean_GLuint *)packed; - ARGS_GLboolean_GLuint args = unpacked->args; - printf("glIsBuffer(%u);\n", args.a1); - break; - } - case glIsEnabled_INDEX: { - INDEXED_GLboolean_GLenum *unpacked = (INDEXED_GLboolean_GLenum *)packed; - ARGS_GLboolean_GLenum args = unpacked->args; - printf("glIsEnabled(0x%04X);\n", args.a1); - break; - } - case glIsTexture_INDEX: { - INDEXED_GLboolean_GLuint *unpacked = (INDEXED_GLboolean_GLuint *)packed; - ARGS_GLboolean_GLuint args = unpacked->args; - printf("glIsTexture(%u);\n", args.a1); - break; - } - case glLightModelf_INDEX: { - INDEXED_void_GLenum_GLfloat *unpacked = (INDEXED_void_GLenum_GLfloat *)packed; - ARGS_void_GLenum_GLfloat args = unpacked->args; - printf("glLightModelf(0x%04X, %0.2f);\n", args.a1, args.a2); - break; - } - case glLightModelfv_INDEX: { - INDEXED_void_GLenum_const_GLfloat___GENPT__ *unpacked = (INDEXED_void_GLenum_const_GLfloat___GENPT__ *)packed; - ARGS_void_GLenum_const_GLfloat___GENPT__ args = unpacked->args; - printf("glLightModelfv(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glLightModelx_INDEX: { - INDEXED_void_GLenum_GLfixed *unpacked = (INDEXED_void_GLenum_GLfixed *)packed; - ARGS_void_GLenum_GLfixed args = unpacked->args; - printf("glLightModelx(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glLightModelxv_INDEX: { - INDEXED_void_GLenum_const_GLfixed___GENPT__ *unpacked = (INDEXED_void_GLenum_const_GLfixed___GENPT__ *)packed; - ARGS_void_GLenum_const_GLfixed___GENPT__ args = unpacked->args; - printf("glLightModelxv(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glLightf_INDEX: { - INDEXED_void_GLenum_GLenum_GLfloat *unpacked = (INDEXED_void_GLenum_GLenum_GLfloat *)packed; - ARGS_void_GLenum_GLenum_GLfloat args = unpacked->args; - printf("glLightf(0x%04X, 0x%04X, %0.2f);\n", args.a1, args.a2, args.a3); - break; - } - case glLightfv_INDEX: { - INDEXED_void_GLenum_GLenum_const_GLfloat___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_const_GLfloat___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_const_GLfloat___GENPT__ args = unpacked->args; - printf("glLightfv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glLightx_INDEX: { - INDEXED_void_GLenum_GLenum_GLfixed *unpacked = (INDEXED_void_GLenum_GLenum_GLfixed *)packed; - ARGS_void_GLenum_GLenum_GLfixed args = unpacked->args; - printf("glLightx(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glLightxv_INDEX: { - INDEXED_void_GLenum_GLenum_const_GLfixed___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_const_GLfixed___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_const_GLfixed___GENPT__ args = unpacked->args; - printf("glLightxv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glLineWidth_INDEX: { - INDEXED_void_GLfloat *unpacked = (INDEXED_void_GLfloat *)packed; - ARGS_void_GLfloat args = unpacked->args; - printf("glLineWidth(%0.2f);\n", args.a1); - break; - } - case glLineWidthx_INDEX: { - INDEXED_void_GLfixed *unpacked = (INDEXED_void_GLfixed *)packed; - ARGS_void_GLfixed args = unpacked->args; - printf("glLineWidthx(%p);\n", args.a1); - break; - } - case glLoadIdentity_INDEX: { - INDEXED_void *unpacked = (INDEXED_void *)packed; - printf("glLoadIdentity();\n"); - break; - } - case glLoadMatrixf_INDEX: { - INDEXED_void_const_GLfloat___GENPT__ *unpacked = (INDEXED_void_const_GLfloat___GENPT__ *)packed; - ARGS_void_const_GLfloat___GENPT__ args = unpacked->args; - printf("glLoadMatrixf(%p);\n", args.a1); - break; - } - case glLoadMatrixx_INDEX: { - INDEXED_void_const_GLfixed___GENPT__ *unpacked = (INDEXED_void_const_GLfixed___GENPT__ *)packed; - ARGS_void_const_GLfixed___GENPT__ args = unpacked->args; - printf("glLoadMatrixx(%p);\n", args.a1); - break; - } - case glLogicOp_INDEX: { - INDEXED_void_GLenum *unpacked = (INDEXED_void_GLenum *)packed; - ARGS_void_GLenum args = unpacked->args; - printf("glLogicOp(0x%04X);\n", args.a1); - break; - } - case glMaterialf_INDEX: { - INDEXED_void_GLenum_GLenum_GLfloat *unpacked = (INDEXED_void_GLenum_GLenum_GLfloat *)packed; - ARGS_void_GLenum_GLenum_GLfloat args = unpacked->args; - printf("glMaterialf(0x%04X, 0x%04X, %0.2f);\n", args.a1, args.a2, args.a3); - break; - } - case glMaterialfv_INDEX: { - INDEXED_void_GLenum_GLenum_const_GLfloat___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_const_GLfloat___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_const_GLfloat___GENPT__ args = unpacked->args; - printf("glMaterialfv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glMaterialx_INDEX: { - INDEXED_void_GLenum_GLenum_GLfixed *unpacked = (INDEXED_void_GLenum_GLenum_GLfixed *)packed; - ARGS_void_GLenum_GLenum_GLfixed args = unpacked->args; - printf("glMaterialx(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glMaterialxv_INDEX: { - INDEXED_void_GLenum_GLenum_const_GLfixed___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_const_GLfixed___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_const_GLfixed___GENPT__ args = unpacked->args; - printf("glMaterialxv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glMatrixMode_INDEX: { - INDEXED_void_GLenum *unpacked = (INDEXED_void_GLenum *)packed; - ARGS_void_GLenum args = unpacked->args; - printf("glMatrixMode(0x%04X);\n", args.a1); - break; - } - case glMultMatrixf_INDEX: { - INDEXED_void_const_GLfloat___GENPT__ *unpacked = (INDEXED_void_const_GLfloat___GENPT__ *)packed; - ARGS_void_const_GLfloat___GENPT__ args = unpacked->args; - printf("glMultMatrixf(%p);\n", args.a1); - break; - } - case glMultMatrixx_INDEX: { - INDEXED_void_const_GLfixed___GENPT__ *unpacked = (INDEXED_void_const_GLfixed___GENPT__ *)packed; - ARGS_void_const_GLfixed___GENPT__ args = unpacked->args; - printf("glMultMatrixx(%p);\n", args.a1); - break; - } - case glMultiTexCoord4f_INDEX: { - INDEXED_void_GLenum_GLfloat_GLfloat_GLfloat_GLfloat *unpacked = (INDEXED_void_GLenum_GLfloat_GLfloat_GLfloat_GLfloat *)packed; - ARGS_void_GLenum_GLfloat_GLfloat_GLfloat_GLfloat args = unpacked->args; - printf("glMultiTexCoord4f(0x%04X, %0.2f, %0.2f, %0.2f, %0.2f);\n", args.a1, args.a2, args.a3, args.a4, args.a5); - break; - } - case glMultiTexCoord4x_INDEX: { - INDEXED_void_GLenum_GLfixed_GLfixed_GLfixed_GLfixed *unpacked = (INDEXED_void_GLenum_GLfixed_GLfixed_GLfixed_GLfixed *)packed; - ARGS_void_GLenum_GLfixed_GLfixed_GLfixed_GLfixed args = unpacked->args; - printf("glMultiTexCoord4x(0x%04X, %p, %p, %p, %p);\n", args.a1, args.a2, args.a3, args.a4, args.a5); - break; - } - case glNormal3f_INDEX: { - INDEXED_void_GLfloat_GLfloat_GLfloat *unpacked = (INDEXED_void_GLfloat_GLfloat_GLfloat *)packed; - ARGS_void_GLfloat_GLfloat_GLfloat args = unpacked->args; - printf("glNormal3f(%0.2f, %0.2f, %0.2f);\n", args.a1, args.a2, args.a3); - break; - } - case glNormal3x_INDEX: { - INDEXED_void_GLfixed_GLfixed_GLfixed *unpacked = (INDEXED_void_GLfixed_GLfixed_GLfixed *)packed; - ARGS_void_GLfixed_GLfixed_GLfixed args = unpacked->args; - printf("glNormal3x(%p, %p, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glNormalPointer_INDEX: { - INDEXED_void_GLenum_GLsizei_const_GLvoid___GENPT__ *unpacked = (INDEXED_void_GLenum_GLsizei_const_GLvoid___GENPT__ *)packed; - ARGS_void_GLenum_GLsizei_const_GLvoid___GENPT__ args = unpacked->args; - printf("glNormalPointer(0x%04X, %d, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glOrthof_INDEX: { - INDEXED_void_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat *unpacked = (INDEXED_void_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat *)packed; - ARGS_void_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat args = unpacked->args; - printf("glOrthof(%0.2f, %0.2f, %0.2f, %0.2f, %0.2f, %0.2f);\n", args.a1, args.a2, args.a3, args.a4, args.a5, args.a6); - break; - } - case glOrthox_INDEX: { - INDEXED_void_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed *unpacked = (INDEXED_void_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed *)packed; - ARGS_void_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed args = unpacked->args; - printf("glOrthox(%p, %p, %p, %p, %p, %p);\n", args.a1, args.a2, args.a3, args.a4, args.a5, args.a6); - break; - } - case glPixelStorei_INDEX: { - INDEXED_void_GLenum_GLint *unpacked = (INDEXED_void_GLenum_GLint *)packed; - ARGS_void_GLenum_GLint args = unpacked->args; - printf("glPixelStorei(0x%04X, %d);\n", args.a1, args.a2); - break; - } - case glPointParameterf_INDEX: { - INDEXED_void_GLenum_GLfloat *unpacked = (INDEXED_void_GLenum_GLfloat *)packed; - ARGS_void_GLenum_GLfloat args = unpacked->args; - printf("glPointParameterf(0x%04X, %0.2f);\n", args.a1, args.a2); - break; - } - case glPointParameterfv_INDEX: { - INDEXED_void_GLenum_const_GLfloat___GENPT__ *unpacked = (INDEXED_void_GLenum_const_GLfloat___GENPT__ *)packed; - ARGS_void_GLenum_const_GLfloat___GENPT__ args = unpacked->args; - printf("glPointParameterfv(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glPointParameterx_INDEX: { - INDEXED_void_GLenum_GLfixed *unpacked = (INDEXED_void_GLenum_GLfixed *)packed; - ARGS_void_GLenum_GLfixed args = unpacked->args; - printf("glPointParameterx(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glPointParameterxv_INDEX: { - INDEXED_void_GLenum_const_GLfixed___GENPT__ *unpacked = (INDEXED_void_GLenum_const_GLfixed___GENPT__ *)packed; - ARGS_void_GLenum_const_GLfixed___GENPT__ args = unpacked->args; - printf("glPointParameterxv(0x%04X, %p);\n", args.a1, args.a2); - break; - } - case glPointSize_INDEX: { - INDEXED_void_GLfloat *unpacked = (INDEXED_void_GLfloat *)packed; - ARGS_void_GLfloat args = unpacked->args; - printf("glPointSize(%0.2f);\n", args.a1); - break; - } - case glPointSizePointerOES_INDEX: { - INDEXED_void_GLenum_GLsizei_const_GLvoid___GENPT__ *unpacked = (INDEXED_void_GLenum_GLsizei_const_GLvoid___GENPT__ *)packed; - ARGS_void_GLenum_GLsizei_const_GLvoid___GENPT__ args = unpacked->args; - printf("glPointSizePointerOES(0x%04X, %d, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glPointSizex_INDEX: { - INDEXED_void_GLfixed *unpacked = (INDEXED_void_GLfixed *)packed; - ARGS_void_GLfixed args = unpacked->args; - printf("glPointSizex(%p);\n", args.a1); - break; - } - case glPolygonOffset_INDEX: { - INDEXED_void_GLfloat_GLfloat *unpacked = (INDEXED_void_GLfloat_GLfloat *)packed; - ARGS_void_GLfloat_GLfloat args = unpacked->args; - printf("glPolygonOffset(%0.2f, %0.2f);\n", args.a1, args.a2); - break; - } - case glPolygonOffsetx_INDEX: { - INDEXED_void_GLfixed_GLfixed *unpacked = (INDEXED_void_GLfixed_GLfixed *)packed; - ARGS_void_GLfixed_GLfixed args = unpacked->args; - printf("glPolygonOffsetx(%p, %p);\n", args.a1, args.a2); - break; - } - case glPopMatrix_INDEX: { - INDEXED_void *unpacked = (INDEXED_void *)packed; - printf("glPopMatrix();\n"); - break; - } - case glPushMatrix_INDEX: { - INDEXED_void *unpacked = (INDEXED_void *)packed; - printf("glPushMatrix();\n"); - break; - } - case glReadPixels_INDEX: { - INDEXED_void_GLint_GLint_GLsizei_GLsizei_GLenum_GLenum_GLvoid___GENPT__ *unpacked = (INDEXED_void_GLint_GLint_GLsizei_GLsizei_GLenum_GLenum_GLvoid___GENPT__ *)packed; - ARGS_void_GLint_GLint_GLsizei_GLsizei_GLenum_GLenum_GLvoid___GENPT__ args = unpacked->args; - printf("glReadPixels(%d, %d, %d, %d, 0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3, args.a4, args.a5, args.a6, args.a7); - break; - } - case glRotatef_INDEX: { - INDEXED_void_GLfloat_GLfloat_GLfloat_GLfloat *unpacked = (INDEXED_void_GLfloat_GLfloat_GLfloat_GLfloat *)packed; - ARGS_void_GLfloat_GLfloat_GLfloat_GLfloat args = unpacked->args; - printf("glRotatef(%0.2f, %0.2f, %0.2f, %0.2f);\n", args.a1, args.a2, args.a3, args.a4); - break; - } - case glRotatex_INDEX: { - INDEXED_void_GLfixed_GLfixed_GLfixed_GLfixed *unpacked = (INDEXED_void_GLfixed_GLfixed_GLfixed_GLfixed *)packed; - ARGS_void_GLfixed_GLfixed_GLfixed_GLfixed args = unpacked->args; - printf("glRotatex(%p, %p, %p, %p);\n", args.a1, args.a2, args.a3, args.a4); - break; - } - case glSampleCoverage_INDEX: { - INDEXED_void_GLclampf_GLboolean *unpacked = (INDEXED_void_GLclampf_GLboolean *)packed; - ARGS_void_GLclampf_GLboolean args = unpacked->args; - printf("glSampleCoverage(%p, %d);\n", args.a1, args.a2); - break; - } - case glSampleCoveragex_INDEX: { - INDEXED_void_GLclampx_GLboolean *unpacked = (INDEXED_void_GLclampx_GLboolean *)packed; - ARGS_void_GLclampx_GLboolean args = unpacked->args; - printf("glSampleCoveragex(%p, %d);\n", args.a1, args.a2); - break; - } - case glScalef_INDEX: { - INDEXED_void_GLfloat_GLfloat_GLfloat *unpacked = (INDEXED_void_GLfloat_GLfloat_GLfloat *)packed; - ARGS_void_GLfloat_GLfloat_GLfloat args = unpacked->args; - printf("glScalef(%0.2f, %0.2f, %0.2f);\n", args.a1, args.a2, args.a3); - break; - } - case glScalex_INDEX: { - INDEXED_void_GLfixed_GLfixed_GLfixed *unpacked = (INDEXED_void_GLfixed_GLfixed_GLfixed *)packed; - ARGS_void_GLfixed_GLfixed_GLfixed args = unpacked->args; - printf("glScalex(%p, %p, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glScissor_INDEX: { - INDEXED_void_GLint_GLint_GLsizei_GLsizei *unpacked = (INDEXED_void_GLint_GLint_GLsizei_GLsizei *)packed; - ARGS_void_GLint_GLint_GLsizei_GLsizei args = unpacked->args; - printf("glScissor(%d, %d, %d, %d);\n", args.a1, args.a2, args.a3, args.a4); - break; - } - case glShadeModel_INDEX: { - INDEXED_void_GLenum *unpacked = (INDEXED_void_GLenum *)packed; - ARGS_void_GLenum args = unpacked->args; - printf("glShadeModel(0x%04X);\n", args.a1); - break; - } - case glStencilFunc_INDEX: { - INDEXED_void_GLenum_GLint_GLuint *unpacked = (INDEXED_void_GLenum_GLint_GLuint *)packed; - ARGS_void_GLenum_GLint_GLuint args = unpacked->args; - printf("glStencilFunc(0x%04X, %d, %u);\n", args.a1, args.a2, args.a3); - break; - } - case glStencilMask_INDEX: { - INDEXED_void_GLuint *unpacked = (INDEXED_void_GLuint *)packed; - ARGS_void_GLuint args = unpacked->args; - printf("glStencilMask(%u);\n", args.a1); - break; - } - case glStencilOp_INDEX: { - INDEXED_void_GLenum_GLenum_GLenum *unpacked = (INDEXED_void_GLenum_GLenum_GLenum *)packed; - ARGS_void_GLenum_GLenum_GLenum args = unpacked->args; - printf("glStencilOp(0x%04X, 0x%04X, 0x%04X);\n", args.a1, args.a2, args.a3); - break; - } - case glTexCoordPointer_INDEX: { - INDEXED_void_GLint_GLenum_GLsizei_const_GLvoid___GENPT__ *unpacked = (INDEXED_void_GLint_GLenum_GLsizei_const_GLvoid___GENPT__ *)packed; - ARGS_void_GLint_GLenum_GLsizei_const_GLvoid___GENPT__ args = unpacked->args; - printf("glTexCoordPointer(%d, 0x%04X, %d, %p);\n", args.a1, args.a2, args.a3, args.a4); - break; - } - case glTexEnvf_INDEX: { - INDEXED_void_GLenum_GLenum_GLfloat *unpacked = (INDEXED_void_GLenum_GLenum_GLfloat *)packed; - ARGS_void_GLenum_GLenum_GLfloat args = unpacked->args; - printf("glTexEnvf(0x%04X, 0x%04X, %0.2f);\n", args.a1, args.a2, args.a3); - break; - } - case glTexEnvfv_INDEX: { - INDEXED_void_GLenum_GLenum_const_GLfloat___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_const_GLfloat___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_const_GLfloat___GENPT__ args = unpacked->args; - printf("glTexEnvfv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glTexEnvi_INDEX: { - INDEXED_void_GLenum_GLenum_GLint *unpacked = (INDEXED_void_GLenum_GLenum_GLint *)packed; - ARGS_void_GLenum_GLenum_GLint args = unpacked->args; - printf("glTexEnvi(0x%04X, 0x%04X, %d);\n", args.a1, args.a2, args.a3); - break; - } - case glTexEnviv_INDEX: { - INDEXED_void_GLenum_GLenum_const_GLint___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_const_GLint___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_const_GLint___GENPT__ args = unpacked->args; - printf("glTexEnviv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glTexEnvx_INDEX: { - INDEXED_void_GLenum_GLenum_GLfixed *unpacked = (INDEXED_void_GLenum_GLenum_GLfixed *)packed; - ARGS_void_GLenum_GLenum_GLfixed args = unpacked->args; - printf("glTexEnvx(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glTexEnvxv_INDEX: { - INDEXED_void_GLenum_GLenum_const_GLfixed___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_const_GLfixed___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_const_GLfixed___GENPT__ args = unpacked->args; - printf("glTexEnvxv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glTexImage2D_INDEX: { - INDEXED_void_GLenum_GLint_GLint_GLsizei_GLsizei_GLint_GLenum_GLenum_const_GLvoid___GENPT__ *unpacked = (INDEXED_void_GLenum_GLint_GLint_GLsizei_GLsizei_GLint_GLenum_GLenum_const_GLvoid___GENPT__ *)packed; - ARGS_void_GLenum_GLint_GLint_GLsizei_GLsizei_GLint_GLenum_GLenum_const_GLvoid___GENPT__ args = unpacked->args; - printf("glTexImage2D(0x%04X, %d, %d, %d, %d, %d, 0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3, args.a4, args.a5, args.a6, args.a7, args.a8, args.a9); - break; - } - case glTexParameterf_INDEX: { - INDEXED_void_GLenum_GLenum_GLfloat *unpacked = (INDEXED_void_GLenum_GLenum_GLfloat *)packed; - ARGS_void_GLenum_GLenum_GLfloat args = unpacked->args; - printf("glTexParameterf(0x%04X, 0x%04X, %0.2f);\n", args.a1, args.a2, args.a3); - break; - } - case glTexParameterfv_INDEX: { - INDEXED_void_GLenum_GLenum_const_GLfloat___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_const_GLfloat___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_const_GLfloat___GENPT__ args = unpacked->args; - printf("glTexParameterfv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glTexParameteri_INDEX: { - INDEXED_void_GLenum_GLenum_GLint *unpacked = (INDEXED_void_GLenum_GLenum_GLint *)packed; - ARGS_void_GLenum_GLenum_GLint args = unpacked->args; - printf("glTexParameteri(0x%04X, 0x%04X, %d);\n", args.a1, args.a2, args.a3); - break; - } - case glTexParameteriv_INDEX: { - INDEXED_void_GLenum_GLenum_const_GLint___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_const_GLint___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_const_GLint___GENPT__ args = unpacked->args; - printf("glTexParameteriv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glTexParameterx_INDEX: { - INDEXED_void_GLenum_GLenum_GLfixed *unpacked = (INDEXED_void_GLenum_GLenum_GLfixed *)packed; - ARGS_void_GLenum_GLenum_GLfixed args = unpacked->args; - printf("glTexParameterx(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glTexParameterxv_INDEX: { - INDEXED_void_GLenum_GLenum_const_GLfixed___GENPT__ *unpacked = (INDEXED_void_GLenum_GLenum_const_GLfixed___GENPT__ *)packed; - ARGS_void_GLenum_GLenum_const_GLfixed___GENPT__ args = unpacked->args; - printf("glTexParameterxv(0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glTexSubImage2D_INDEX: { - INDEXED_void_GLenum_GLint_GLint_GLint_GLsizei_GLsizei_GLenum_GLenum_const_GLvoid___GENPT__ *unpacked = (INDEXED_void_GLenum_GLint_GLint_GLint_GLsizei_GLsizei_GLenum_GLenum_const_GLvoid___GENPT__ *)packed; - ARGS_void_GLenum_GLint_GLint_GLint_GLsizei_GLsizei_GLenum_GLenum_const_GLvoid___GENPT__ args = unpacked->args; - printf("glTexSubImage2D(0x%04X, %d, %d, %d, %d, %d, 0x%04X, 0x%04X, %p);\n", args.a1, args.a2, args.a3, args.a4, args.a5, args.a6, args.a7, args.a8, args.a9); - break; - } - case glTranslatef_INDEX: { - INDEXED_void_GLfloat_GLfloat_GLfloat *unpacked = (INDEXED_void_GLfloat_GLfloat_GLfloat *)packed; - ARGS_void_GLfloat_GLfloat_GLfloat args = unpacked->args; - printf("glTranslatef(%0.2f, %0.2f, %0.2f);\n", args.a1, args.a2, args.a3); - break; - } - case glTranslatex_INDEX: { - INDEXED_void_GLfixed_GLfixed_GLfixed *unpacked = (INDEXED_void_GLfixed_GLfixed_GLfixed *)packed; - ARGS_void_GLfixed_GLfixed_GLfixed args = unpacked->args; - printf("glTranslatex(%p, %p, %p);\n", args.a1, args.a2, args.a3); - break; - } - case glVertexPointer_INDEX: { - INDEXED_void_GLint_GLenum_GLsizei_const_GLvoid___GENPT__ *unpacked = (INDEXED_void_GLint_GLenum_GLsizei_const_GLvoid___GENPT__ *)packed; - ARGS_void_GLint_GLenum_GLsizei_const_GLvoid___GENPT__ args = unpacked->args; - printf("glVertexPointer(%d, 0x%04X, %d, %p);\n", args.a1, args.a2, args.a3, args.a4); - break; - } - case glViewport_INDEX: { - INDEXED_void_GLint_GLint_GLsizei_GLsizei *unpacked = (INDEXED_void_GLint_GLint_GLsizei_GLsizei *)packed; - ARGS_void_GLint_GLint_GLsizei_GLsizei args = unpacked->args; - printf("glViewport(%d, %d, %d, %d);\n", args.a1, args.a2, args.a3, args.a4); - break; - } - } -} - -void *mock_get(int idx) { - return tack_get(&mock, idx); -} - -void *mock_peek() { - return tack_peek(&mock); -} - -void *mock_cur() { - return tack_cur(&mock); -} - -void *mock_shift() { - return tack_shift(&mock); -} - -void *mock_slide(int func) { - if (mock.pos >= mock.len) { - return NULL; - } - indexed_call_t **stack = (indexed_call_t **)mock.data; - for (int i = mock.pos; i < mock.len; i++) { - if (stack[i]->func == func) { - mock.pos = i + 1; - return stack[i]; - } - } - return NULL; -} - -void mock_push(void *call) { - tack_push(&mock, call); -} - -void *mock_pop() { - return tack_pop(&mock); -} - -void gles_glActiveTexture(GLenum texture) { - emit_glActiveTexture(texture); - } -void gles_glAlphaFunc(GLenum func, GLclampf ref) { - emit_glAlphaFunc(func, ref); - } -void gles_glAlphaFuncx(GLenum func, GLclampx ref) { - emit_glAlphaFuncx(func, ref); - } -void gles_glBindBuffer(GLenum target, GLuint buffer) { - emit_glBindBuffer(target, buffer); - } -void gles_glBindTexture(GLenum target, GLuint texture) { - emit_glBindTexture(target, texture); - } -void gles_glBlendColorOES(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) { - emit_glBlendColorOES(red, green, blue, alpha); - } -void gles_glBlendEquationOES(GLenum mode) { - emit_glBlendEquationOES(mode); - } -void gles_glBlendEquationSeparateOES(GLenum modeRGB, GLenum modeAlpha) { - emit_glBlendEquationSeparateOES(modeRGB, modeAlpha); - } -void gles_glBlendFunc(GLenum sfactor, GLenum dfactor) { - emit_glBlendFunc(sfactor, dfactor); - } -void gles_glBlendFuncSeparateOES(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) { - emit_glBlendFuncSeparateOES(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha); - } -void gles_glBufferData(GLenum target, GLsizeiptr size, const GLvoid * data, GLenum usage) { - emit_glBufferData(target, size, data, usage); - } -void gles_glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid * data) { - emit_glBufferSubData(target, offset, size, data); - } -void gles_glClear(GLbitfield mask) { - emit_glClear(mask); - } -void gles_glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) { - emit_glClearColor(red, green, blue, alpha); - } -void gles_glClearColorx(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha) { - emit_glClearColorx(red, green, blue, alpha); - } -void gles_glClearDepthf(GLclampf depth) { - emit_glClearDepthf(depth); - } -void gles_glClearDepthx(GLclampx depth) { - emit_glClearDepthx(depth); - } -void gles_glClearStencil(GLint s) { - emit_glClearStencil(s); - } -void gles_glClientActiveTexture(GLenum texture) { - emit_glClientActiveTexture(texture); - } -void gles_glClipPlanef(GLenum plane, const GLfloat * equation) { - emit_glClipPlanef(plane, equation); - } -void gles_glClipPlanex(GLenum plane, const GLfixed * equation) { - emit_glClipPlanex(plane, equation); - } -void gles_glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) { - emit_glColor4f(red, green, blue, alpha); - } -void gles_glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha) { - emit_glColor4ub(red, green, blue, alpha); - } -void gles_glColor4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha) { - emit_glColor4x(red, green, blue, alpha); - } -void gles_glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) { - emit_glColorMask(red, green, blue, alpha); - } -void gles_glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer) { - emit_glColorPointer(size, type, stride, pointer); - } -void gles_glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid * data) { - emit_glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data); - } -void gles_glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid * data) { - emit_glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data); - } -void gles_glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border) { - emit_glCopyTexImage2D(target, level, internalformat, x, y, width, height, border); - } -void gles_glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height) { - emit_glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height); - } -void gles_glCullFace(GLenum mode) { - emit_glCullFace(mode); - } -void gles_glDeleteBuffers(GLsizei n, const GLuint * buffers) { - emit_glDeleteBuffers(n, buffers); - } -void gles_glDeleteTextures(GLsizei n, const GLuint * textures) { - emit_glDeleteTextures(n, textures); - } -void gles_glDepthFunc(GLenum func) { - emit_glDepthFunc(func); - } -void gles_glDepthMask(GLboolean flag) { - emit_glDepthMask(flag); - } -void gles_glDepthRangef(GLclampf near, GLclampf far) { - emit_glDepthRangef(near, far); - } -void gles_glDepthRangex(GLclampx near, GLclampx far) { - emit_glDepthRangex(near, far); - } -void gles_glDisable(GLenum cap) { - emit_glDisable(cap); - } -void gles_glDisableClientState(GLenum array) { - emit_glDisableClientState(array); - } -void gles_glDrawArrays(GLenum mode, GLint first, GLsizei count) { - emit_glDrawArrays(mode, first, count); - } -void gles_glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices) { - emit_glDrawElements(mode, count, type, indices); - } -void gles_glEnable(GLenum cap) { - emit_glEnable(cap); - } -void gles_glEnableClientState(GLenum array) { - emit_glEnableClientState(array); - } -void gles_glFinish() { - emit_glFinish(); - } -void gles_glFlush() { - emit_glFlush(); - } -void gles_glFogf(GLenum pname, GLfloat param) { - emit_glFogf(pname, param); - } -void gles_glFogfv(GLenum pname, const GLfloat * params) { - emit_glFogfv(pname, params); - } -void gles_glFogx(GLenum pname, GLfixed param) { - emit_glFogx(pname, param); - } -void gles_glFogxv(GLenum pname, const GLfixed * params) { - emit_glFogxv(pname, params); - } -void gles_glFrontFace(GLenum mode) { - emit_glFrontFace(mode); - } -void gles_glFrustumf(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat near, GLfloat far) { - emit_glFrustumf(left, right, bottom, top, near, far); - } -void gles_glFrustumx(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed near, GLfixed far) { - emit_glFrustumx(left, right, bottom, top, near, far); - } -void gles_glGenBuffers(GLsizei n, GLuint * buffers) { - emit_glGenBuffers(n, buffers); - } -void gles_glGenTextures(GLsizei n, GLuint * textures) { - emit_glGenTextures(n, textures); - } -void gles_glGetBooleanv(GLenum pname, GLboolean * params) { - emit_glGetBooleanv(pname, params); - } -void gles_glGetBufferParameteriv(GLenum target, GLenum pname, GLint * params) { - emit_glGetBufferParameteriv(target, pname, params); - } -void gles_glGetClipPlanef(GLenum plane, GLfloat * equation) { - emit_glGetClipPlanef(plane, equation); - } -void gles_glGetClipPlanex(GLenum plane, GLfixed * equation) { - emit_glGetClipPlanex(plane, equation); - } -GLenum gles_glGetError() { - emit_glGetError(); - return (GLenum)0; - } -void gles_glGetFixedv(GLenum pname, GLfixed * params) { - emit_glGetFixedv(pname, params); - } -void gles_glGetFloatv(GLenum pname, GLfloat * params) { - emit_glGetFloatv(pname, params); - } -void gles_glGetIntegerv(GLenum pname, GLint * params) { - emit_glGetIntegerv(pname, params); - } -void gles_glGetLightfv(GLenum light, GLenum pname, GLfloat * params) { - emit_glGetLightfv(light, pname, params); - } -void gles_glGetLightxv(GLenum light, GLenum pname, GLfixed * params) { - emit_glGetLightxv(light, pname, params); - } -void gles_glGetMaterialfv(GLenum face, GLenum pname, GLfloat * params) { - emit_glGetMaterialfv(face, pname, params); - } -void gles_glGetMaterialxv(GLenum face, GLenum pname, GLfixed * params) { - emit_glGetMaterialxv(face, pname, params); - } -void gles_glGetPointerv(GLenum pname, GLvoid ** params) { - emit_glGetPointerv(pname, params); - } -const GLubyte * gles_glGetString(GLenum name) { - emit_glGetString(name); - return (const GLubyte *)0; - } -void gles_glGetTexEnvfv(GLenum target, GLenum pname, GLfloat * params) { - emit_glGetTexEnvfv(target, pname, params); - } -void gles_glGetTexEnviv(GLenum target, GLenum pname, GLint * params) { - emit_glGetTexEnviv(target, pname, params); - } -void gles_glGetTexEnvxv(GLenum target, GLenum pname, GLfixed * params) { - emit_glGetTexEnvxv(target, pname, params); - } -void gles_glGetTexParameterfv(GLenum target, GLenum pname, GLfloat * params) { - emit_glGetTexParameterfv(target, pname, params); - } -void gles_glGetTexParameteriv(GLenum target, GLenum pname, GLint * params) { - emit_glGetTexParameteriv(target, pname, params); - } -void gles_glGetTexParameterxv(GLenum target, GLenum pname, GLfixed * params) { - emit_glGetTexParameterxv(target, pname, params); - } -void gles_glHint(GLenum target, GLenum mode) { - emit_glHint(target, mode); - } -GLboolean gles_glIsBuffer(GLuint buffer) { - emit_glIsBuffer(buffer); - return (GLboolean)0; - } -GLboolean gles_glIsEnabled(GLenum cap) { - emit_glIsEnabled(cap); - return (GLboolean)0; - } -GLboolean gles_glIsTexture(GLuint texture) { - emit_glIsTexture(texture); - return (GLboolean)0; - } -void gles_glLightModelf(GLenum pname, GLfloat param) { - emit_glLightModelf(pname, param); - } -void gles_glLightModelfv(GLenum pname, const GLfloat * params) { - emit_glLightModelfv(pname, params); - } -void gles_glLightModelx(GLenum pname, GLfixed param) { - emit_glLightModelx(pname, param); - } -void gles_glLightModelxv(GLenum pname, const GLfixed * params) { - emit_glLightModelxv(pname, params); - } -void gles_glLightf(GLenum light, GLenum pname, GLfloat param) { - emit_glLightf(light, pname, param); - } -void gles_glLightfv(GLenum light, GLenum pname, const GLfloat * params) { - emit_glLightfv(light, pname, params); - } -void gles_glLightx(GLenum light, GLenum pname, GLfixed param) { - emit_glLightx(light, pname, param); - } -void gles_glLightxv(GLenum light, GLenum pname, const GLfixed * params) { - emit_glLightxv(light, pname, params); - } -void gles_glLineWidth(GLfloat width) { - emit_glLineWidth(width); - } -void gles_glLineWidthx(GLfixed width) { - emit_glLineWidthx(width); - } -void gles_glLoadIdentity() { - emit_glLoadIdentity(); - } -void gles_glLoadMatrixf(const GLfloat * m) { - emit_glLoadMatrixf(m); - } -void gles_glLoadMatrixx(const GLfixed * m) { - emit_glLoadMatrixx(m); - } -void gles_glLogicOp(GLenum opcode) { - emit_glLogicOp(opcode); - } -void gles_glMaterialf(GLenum face, GLenum pname, GLfloat param) { - emit_glMaterialf(face, pname, param); - } -void gles_glMaterialfv(GLenum face, GLenum pname, const GLfloat * params) { - emit_glMaterialfv(face, pname, params); - } -void gles_glMaterialx(GLenum face, GLenum pname, GLfixed param) { - emit_glMaterialx(face, pname, param); - } -void gles_glMaterialxv(GLenum face, GLenum pname, const GLfixed * params) { - emit_glMaterialxv(face, pname, params); - } -void gles_glMatrixMode(GLenum mode) { - emit_glMatrixMode(mode); - } -void gles_glMultMatrixf(const GLfloat * m) { - emit_glMultMatrixf(m); - } -void gles_glMultMatrixx(const GLfixed * m) { - emit_glMultMatrixx(m); - } -void gles_glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q) { - emit_glMultiTexCoord4f(target, s, t, r, q); - } -void gles_glMultiTexCoord4x(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q) { - emit_glMultiTexCoord4x(target, s, t, r, q); - } -void gles_glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz) { - emit_glNormal3f(nx, ny, nz); - } -void gles_glNormal3x(GLfixed nx, GLfixed ny, GLfixed nz) { - emit_glNormal3x(nx, ny, nz); - } -void gles_glNormalPointer(GLenum type, GLsizei stride, const GLvoid * pointer) { - emit_glNormalPointer(type, stride, pointer); - } -void gles_glOrthof(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat near, GLfloat far) { - emit_glOrthof(left, right, bottom, top, near, far); - } -void gles_glOrthox(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed near, GLfixed far) { - emit_glOrthox(left, right, bottom, top, near, far); - } -void gles_glPixelStorei(GLenum pname, GLint param) { - emit_glPixelStorei(pname, param); - } -void gles_glPointParameterf(GLenum pname, GLfloat param) { - emit_glPointParameterf(pname, param); - } -void gles_glPointParameterfv(GLenum pname, const GLfloat * params) { - emit_glPointParameterfv(pname, params); - } -void gles_glPointParameterx(GLenum pname, GLfixed param) { - emit_glPointParameterx(pname, param); - } -void gles_glPointParameterxv(GLenum pname, const GLfixed * params) { - emit_glPointParameterxv(pname, params); - } -void gles_glPointSize(GLfloat size) { - emit_glPointSize(size); - } -void gles_glPointSizePointerOES(GLenum type, GLsizei stride, const GLvoid * pointer) { - emit_glPointSizePointerOES(type, stride, pointer); - } -void gles_glPointSizex(GLfixed size) { - emit_glPointSizex(size); - } -void gles_glPolygonOffset(GLfloat factor, GLfloat units) { - emit_glPolygonOffset(factor, units); - } -void gles_glPolygonOffsetx(GLfixed factor, GLfixed units) { - emit_glPolygonOffsetx(factor, units); - } -void gles_glPopMatrix() { - emit_glPopMatrix(); - } -void gles_glPushMatrix() { - emit_glPushMatrix(); - } -void gles_glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid * pixels) { - emit_glReadPixels(x, y, width, height, format, type, pixels); - } -void gles_glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z) { - emit_glRotatef(angle, x, y, z); - } -void gles_glRotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z) { - emit_glRotatex(angle, x, y, z); - } -void gles_glSampleCoverage(GLclampf value, GLboolean invert) { - emit_glSampleCoverage(value, invert); - } -void gles_glSampleCoveragex(GLclampx value, GLboolean invert) { - emit_glSampleCoveragex(value, invert); - } -void gles_glScalef(GLfloat x, GLfloat y, GLfloat z) { - emit_glScalef(x, y, z); - } -void gles_glScalex(GLfixed x, GLfixed y, GLfixed z) { - emit_glScalex(x, y, z); - } -void gles_glScissor(GLint x, GLint y, GLsizei width, GLsizei height) { - emit_glScissor(x, y, width, height); - } -void gles_glShadeModel(GLenum mode) { - emit_glShadeModel(mode); - } -void gles_glStencilFunc(GLenum func, GLint ref, GLuint mask) { - emit_glStencilFunc(func, ref, mask); - } -void gles_glStencilMask(GLuint mask) { - emit_glStencilMask(mask); - } -void gles_glStencilOp(GLenum fail, GLenum zfail, GLenum zpass) { - emit_glStencilOp(fail, zfail, zpass); - } -void gles_glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer) { - emit_glTexCoordPointer(size, type, stride, pointer); - } -void gles_glTexEnvf(GLenum target, GLenum pname, GLfloat param) { - emit_glTexEnvf(target, pname, param); - } -void gles_glTexEnvfv(GLenum target, GLenum pname, const GLfloat * params) { - emit_glTexEnvfv(target, pname, params); - } -void gles_glTexEnvi(GLenum target, GLenum pname, GLint param) { - emit_glTexEnvi(target, pname, param); - } -void gles_glTexEnviv(GLenum target, GLenum pname, const GLint * params) { - emit_glTexEnviv(target, pname, params); - } -void gles_glTexEnvx(GLenum target, GLenum pname, GLfixed param) { - emit_glTexEnvx(target, pname, param); - } -void gles_glTexEnvxv(GLenum target, GLenum pname, const GLfixed * params) { - emit_glTexEnvxv(target, pname, params); - } -void gles_glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid * pixels) { - emit_glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels); - } -void gles_glTexParameterf(GLenum target, GLenum pname, GLfloat param) { - emit_glTexParameterf(target, pname, param); - } -void gles_glTexParameterfv(GLenum target, GLenum pname, const GLfloat * params) { - emit_glTexParameterfv(target, pname, params); - } -void gles_glTexParameteri(GLenum target, GLenum pname, GLint param) { - emit_glTexParameteri(target, pname, param); - } -void gles_glTexParameteriv(GLenum target, GLenum pname, const GLint * params) { - emit_glTexParameteriv(target, pname, params); - } -void gles_glTexParameterx(GLenum target, GLenum pname, GLfixed param) { - emit_glTexParameterx(target, pname, param); - } -void gles_glTexParameterxv(GLenum target, GLenum pname, const GLfixed * params) { - emit_glTexParameterxv(target, pname, params); - } -void gles_glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels) { - emit_glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels); - } -void gles_glTranslatef(GLfloat x, GLfloat y, GLfloat z) { - emit_glTranslatef(x, y, z); - } -void gles_glTranslatex(GLfixed x, GLfixed y, GLfixed z) { - emit_glTranslatex(x, y, z); - } -void gles_glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer) { - emit_glVertexPointer(size, type, stride, pointer); - } -void gles_glViewport(GLint x, GLint y, GLsizei width, GLsizei height) { - emit_glViewport(x, y, width, height); - } diff --git a/project/jni/glshim/test/util/mock.h b/project/jni/glshim/test/util/mock.h deleted file mode 100755 index 4b7a7eedc..000000000 --- a/project/jni/glshim/test/util/mock.h +++ /dev/null @@ -1,9208 +0,0 @@ -#ifndef USE_ES2 -#ifdef __cplusplus -extern "C" { -#endif -#include "gl_str.h" -#include "wrap/gles.h" - -#ifndef MOCK_H -#define MOCK_H - -const char *mock_name(int func); -void *mock_cur(); -void *mock_get(int idx); -void *mock_peek(); -void *mock_shift(); -void *mock_slide(int func); -void mock_print(const indexed_call_t *packed); -void mock_push(void *call); - -static int verbose_test = 0; -static int failed_test = 0; -#define verbose { verbose_test = 1; } - -#define mock_warningf(...) { printf("WARNING: "), printf(__VA_ARGS__); } -#define mock_errorf(...) { printf("ERROR: "); printf(__VA_ARGS__); failed_test = 1; } -#define mock_assert(cond, ...) { if (!(cond)) { mock_errorf(__VA_ARGS__); }} -#define assert(cond) mock_assert(cond, "%s\n", #cond) - -#define mock_return { \ - indexed_call_t *call = NULL; \ - while ((call = mock_shift()) != NULL) { \ - mock_warningf("extra "); \ - mock_print(call); \ - } \ - if (state.error) { \ - mock_warningf("Ended with GL error flag: %s\n", gl_str(state.error)); \ - } \ - return failed_test; \ -} - -#define pack_glActiveTexture(texture) ({ \ - glActiveTexture_INDEXED *packed_data = malloc(sizeof(glActiveTexture_INDEXED)); \ - packed_data->func = glActiveTexture_INDEX; \ - packed_data->args.a1 = (GLenum)texture; \ - packed_data; \ -}) -#define emit_glActiveTexture(texture) { \ - mock_push(pack_glActiveTexture(texture)); \ -} -#define test_glActiveTexture(texture) { \ - glActiveTexture_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glActiveTexture missing (no calls left)\n"); \ - } else if (packed->func != glActiveTexture_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glActiveTexture_INDEX); \ - if (! packed) { \ - mock_errorf("glActiveTexture missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glActiveTexture:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != texture) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glActiveTexture(0x%04X);\n", texture); \ - } \ - } \ -} -#define pack_glAlphaFunc(func, ref) ({ \ - glAlphaFunc_INDEXED *packed_data = malloc(sizeof(glAlphaFunc_INDEXED)); \ - packed_data->func = glAlphaFunc_INDEX; \ - packed_data->args.a1 = (GLenum)func; \ - packed_data->args.a2 = (GLclampf)ref; \ - packed_data; \ -}) -#define emit_glAlphaFunc(func, ref) { \ - mock_push(pack_glAlphaFunc(func, ref)); \ -} -#define test_glAlphaFunc(func, ref) { \ - glAlphaFunc_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glAlphaFunc missing (no calls left)\n"); \ - } else if (packed->func != glAlphaFunc_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glAlphaFunc_INDEX); \ - if (! packed) { \ - mock_errorf("glAlphaFunc missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glAlphaFunc:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != func) { \ - match = 0; \ - } \ - if (packed->args.a2 != ref) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glAlphaFunc(0x%04X, %p);\n", func, ref); \ - } \ - } \ -} -#define pack_glAlphaFuncx(func, ref) ({ \ - glAlphaFuncx_INDEXED *packed_data = malloc(sizeof(glAlphaFuncx_INDEXED)); \ - packed_data->func = glAlphaFuncx_INDEX; \ - packed_data->args.a1 = (GLenum)func; \ - packed_data->args.a2 = (GLclampx)ref; \ - packed_data; \ -}) -#define emit_glAlphaFuncx(func, ref) { \ - mock_push(pack_glAlphaFuncx(func, ref)); \ -} -#define test_glAlphaFuncx(func, ref) { \ - glAlphaFuncx_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glAlphaFuncx missing (no calls left)\n"); \ - } else if (packed->func != glAlphaFuncx_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glAlphaFuncx_INDEX); \ - if (! packed) { \ - mock_errorf("glAlphaFuncx missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glAlphaFuncx:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != func) { \ - match = 0; \ - } \ - if (packed->args.a2 != ref) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glAlphaFuncx(0x%04X, %p);\n", func, ref); \ - } \ - } \ -} -#define pack_glBindBuffer(target, buffer) ({ \ - glBindBuffer_INDEXED *packed_data = malloc(sizeof(glBindBuffer_INDEXED)); \ - packed_data->func = glBindBuffer_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLuint)buffer; \ - packed_data; \ -}) -#define emit_glBindBuffer(target, buffer) { \ - mock_push(pack_glBindBuffer(target, buffer)); \ -} -#define test_glBindBuffer(target, buffer) { \ - glBindBuffer_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glBindBuffer missing (no calls left)\n"); \ - } else if (packed->func != glBindBuffer_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glBindBuffer_INDEX); \ - if (! packed) { \ - mock_errorf("glBindBuffer missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glBindBuffer:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != buffer) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glBindBuffer(0x%04X, %u);\n", target, buffer); \ - } \ - } \ -} -#define pack_glBindTexture(target, texture) ({ \ - glBindTexture_INDEXED *packed_data = malloc(sizeof(glBindTexture_INDEXED)); \ - packed_data->func = glBindTexture_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLuint)texture; \ - packed_data; \ -}) -#define emit_glBindTexture(target, texture) { \ - mock_push(pack_glBindTexture(target, texture)); \ -} -#define test_glBindTexture(target, texture) { \ - glBindTexture_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glBindTexture missing (no calls left)\n"); \ - } else if (packed->func != glBindTexture_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glBindTexture_INDEX); \ - if (! packed) { \ - mock_errorf("glBindTexture missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glBindTexture:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != texture) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glBindTexture(0x%04X, %u);\n", target, texture); \ - } \ - } \ -} -#define pack_glBlendColorOES(red, green, blue, alpha) ({ \ - glBlendColorOES_INDEXED *packed_data = malloc(sizeof(glBlendColorOES_INDEXED)); \ - packed_data->func = glBlendColorOES_INDEX; \ - packed_data->args.a1 = (GLclampf)red; \ - packed_data->args.a2 = (GLclampf)green; \ - packed_data->args.a3 = (GLclampf)blue; \ - packed_data->args.a4 = (GLclampf)alpha; \ - packed_data; \ -}) -#define emit_glBlendColorOES(red, green, blue, alpha) { \ - mock_push(pack_glBlendColorOES(red, green, blue, alpha)); \ -} -#define test_glBlendColorOES(red, green, blue, alpha) { \ - glBlendColorOES_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glBlendColorOES missing (no calls left)\n"); \ - } else if (packed->func != glBlendColorOES_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glBlendColorOES_INDEX); \ - if (! packed) { \ - mock_errorf("glBlendColorOES missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glBlendColorOES:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != red) { \ - match = 0; \ - } \ - if (packed->args.a2 != green) { \ - match = 0; \ - } \ - if (packed->args.a3 != blue) { \ - match = 0; \ - } \ - if (packed->args.a4 != alpha) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glBlendColorOES(%p, %p, %p, %p);\n", red, green, blue, alpha); \ - } \ - } \ -} -#define pack_glBlendEquationOES(mode) ({ \ - glBlendEquationOES_INDEXED *packed_data = malloc(sizeof(glBlendEquationOES_INDEXED)); \ - packed_data->func = glBlendEquationOES_INDEX; \ - packed_data->args.a1 = (GLenum)mode; \ - packed_data; \ -}) -#define emit_glBlendEquationOES(mode) { \ - mock_push(pack_glBlendEquationOES(mode)); \ -} -#define test_glBlendEquationOES(mode) { \ - glBlendEquationOES_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glBlendEquationOES missing (no calls left)\n"); \ - } else if (packed->func != glBlendEquationOES_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glBlendEquationOES_INDEX); \ - if (! packed) { \ - mock_errorf("glBlendEquationOES missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glBlendEquationOES:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != mode) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glBlendEquationOES(0x%04X);\n", mode); \ - } \ - } \ -} -#define pack_glBlendEquationSeparateOES(modeRGB, modeAlpha) ({ \ - glBlendEquationSeparateOES_INDEXED *packed_data = malloc(sizeof(glBlendEquationSeparateOES_INDEXED)); \ - packed_data->func = glBlendEquationSeparateOES_INDEX; \ - packed_data->args.a1 = (GLenum)modeRGB; \ - packed_data->args.a2 = (GLenum)modeAlpha; \ - packed_data; \ -}) -#define emit_glBlendEquationSeparateOES(modeRGB, modeAlpha) { \ - mock_push(pack_glBlendEquationSeparateOES(modeRGB, modeAlpha)); \ -} -#define test_glBlendEquationSeparateOES(modeRGB, modeAlpha) { \ - glBlendEquationSeparateOES_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glBlendEquationSeparateOES missing (no calls left)\n"); \ - } else if (packed->func != glBlendEquationSeparateOES_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glBlendEquationSeparateOES_INDEX); \ - if (! packed) { \ - mock_errorf("glBlendEquationSeparateOES missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glBlendEquationSeparateOES:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != modeRGB) { \ - match = 0; \ - } \ - if (packed->args.a2 != modeAlpha) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glBlendEquationSeparateOES(0x%04X, 0x%04X);\n", modeRGB, modeAlpha); \ - } \ - } \ -} -#define pack_glBlendFunc(sfactor, dfactor) ({ \ - glBlendFunc_INDEXED *packed_data = malloc(sizeof(glBlendFunc_INDEXED)); \ - packed_data->func = glBlendFunc_INDEX; \ - packed_data->args.a1 = (GLenum)sfactor; \ - packed_data->args.a2 = (GLenum)dfactor; \ - packed_data; \ -}) -#define emit_glBlendFunc(sfactor, dfactor) { \ - mock_push(pack_glBlendFunc(sfactor, dfactor)); \ -} -#define test_glBlendFunc(sfactor, dfactor) { \ - glBlendFunc_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glBlendFunc missing (no calls left)\n"); \ - } else if (packed->func != glBlendFunc_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glBlendFunc_INDEX); \ - if (! packed) { \ - mock_errorf("glBlendFunc missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glBlendFunc:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != sfactor) { \ - match = 0; \ - } \ - if (packed->args.a2 != dfactor) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glBlendFunc(0x%04X, 0x%04X);\n", sfactor, dfactor); \ - } \ - } \ -} -#define pack_glBlendFuncSeparateOES(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha) ({ \ - glBlendFuncSeparateOES_INDEXED *packed_data = malloc(sizeof(glBlendFuncSeparateOES_INDEXED)); \ - packed_data->func = glBlendFuncSeparateOES_INDEX; \ - packed_data->args.a1 = (GLenum)sfactorRGB; \ - packed_data->args.a2 = (GLenum)dfactorRGB; \ - packed_data->args.a3 = (GLenum)sfactorAlpha; \ - packed_data->args.a4 = (GLenum)dfactorAlpha; \ - packed_data; \ -}) -#define emit_glBlendFuncSeparateOES(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha) { \ - mock_push(pack_glBlendFuncSeparateOES(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha)); \ -} -#define test_glBlendFuncSeparateOES(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha) { \ - glBlendFuncSeparateOES_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glBlendFuncSeparateOES missing (no calls left)\n"); \ - } else if (packed->func != glBlendFuncSeparateOES_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glBlendFuncSeparateOES_INDEX); \ - if (! packed) { \ - mock_errorf("glBlendFuncSeparateOES missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glBlendFuncSeparateOES:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != sfactorRGB) { \ - match = 0; \ - } \ - if (packed->args.a2 != dfactorRGB) { \ - match = 0; \ - } \ - if (packed->args.a3 != sfactorAlpha) { \ - match = 0; \ - } \ - if (packed->args.a4 != dfactorAlpha) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glBlendFuncSeparateOES(0x%04X, 0x%04X, 0x%04X, 0x%04X);\n", sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha); \ - } \ - } \ -} -#define pack_glBufferData(target, size, data, usage) ({ \ - glBufferData_INDEXED *packed_data = malloc(sizeof(glBufferData_INDEXED)); \ - packed_data->func = glBufferData_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLsizeiptr)size; \ - packed_data->args.a3 = (GLvoid *)data; \ - packed_data->args.a4 = (GLenum)usage; \ - packed_data; \ -}) -#define emit_glBufferData(target, size, data, usage) { \ - mock_push(pack_glBufferData(target, size, data, usage)); \ -} -#define test_glBufferData(target, size, data, usage) { \ - glBufferData_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glBufferData missing (no calls left)\n"); \ - } else if (packed->func != glBufferData_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glBufferData_INDEX); \ - if (! packed) { \ - mock_errorf("glBufferData missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glBufferData:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != size) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = data; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(data)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (packed->args.a4 != usage) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glBufferData(0x%04X, %d, %p, 0x%04X);\n", target, size, data, usage); \ - } \ - } \ -} -#define pack_glBufferSubData(target, offset, size, data) ({ \ - glBufferSubData_INDEXED *packed_data = malloc(sizeof(glBufferSubData_INDEXED)); \ - packed_data->func = glBufferSubData_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLintptr)offset; \ - packed_data->args.a3 = (GLsizeiptr)size; \ - packed_data->args.a4 = (GLvoid *)data; \ - packed_data; \ -}) -#define emit_glBufferSubData(target, offset, size, data) { \ - mock_push(pack_glBufferSubData(target, offset, size, data)); \ -} -#define test_glBufferSubData(target, offset, size, data) { \ - glBufferSubData_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glBufferSubData missing (no calls left)\n"); \ - } else if (packed->func != glBufferSubData_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glBufferSubData_INDEX); \ - if (! packed) { \ - mock_errorf("glBufferSubData missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glBufferSubData:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != offset) { \ - match = 0; \ - } \ - if (packed->args.a3 != size) { \ - match = 0; \ - } \ - void *a = packed->args.a4, *b = data; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(data)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glBufferSubData(0x%04X, %d, %d, %p);\n", target, offset, size, data); \ - } \ - } \ -} -#define pack_glClear(mask) ({ \ - glClear_INDEXED *packed_data = malloc(sizeof(glClear_INDEXED)); \ - packed_data->func = glClear_INDEX; \ - packed_data->args.a1 = (GLbitfield)mask; \ - packed_data; \ -}) -#define emit_glClear(mask) { \ - mock_push(pack_glClear(mask)); \ -} -#define test_glClear(mask) { \ - glClear_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glClear missing (no calls left)\n"); \ - } else if (packed->func != glClear_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glClear_INDEX); \ - if (! packed) { \ - mock_errorf("glClear missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glClear:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != mask) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glClear(%d);\n", mask); \ - } \ - } \ -} -#define pack_glClearColor(red, green, blue, alpha) ({ \ - glClearColor_INDEXED *packed_data = malloc(sizeof(glClearColor_INDEXED)); \ - packed_data->func = glClearColor_INDEX; \ - packed_data->args.a1 = (GLclampf)red; \ - packed_data->args.a2 = (GLclampf)green; \ - packed_data->args.a3 = (GLclampf)blue; \ - packed_data->args.a4 = (GLclampf)alpha; \ - packed_data; \ -}) -#define emit_glClearColor(red, green, blue, alpha) { \ - mock_push(pack_glClearColor(red, green, blue, alpha)); \ -} -#define test_glClearColor(red, green, blue, alpha) { \ - glClearColor_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glClearColor missing (no calls left)\n"); \ - } else if (packed->func != glClearColor_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glClearColor_INDEX); \ - if (! packed) { \ - mock_errorf("glClearColor missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glClearColor:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != red) { \ - match = 0; \ - } \ - if (packed->args.a2 != green) { \ - match = 0; \ - } \ - if (packed->args.a3 != blue) { \ - match = 0; \ - } \ - if (packed->args.a4 != alpha) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glClearColor(%p, %p, %p, %p);\n", red, green, blue, alpha); \ - } \ - } \ -} -#define pack_glClearColorx(red, green, blue, alpha) ({ \ - glClearColorx_INDEXED *packed_data = malloc(sizeof(glClearColorx_INDEXED)); \ - packed_data->func = glClearColorx_INDEX; \ - packed_data->args.a1 = (GLclampx)red; \ - packed_data->args.a2 = (GLclampx)green; \ - packed_data->args.a3 = (GLclampx)blue; \ - packed_data->args.a4 = (GLclampx)alpha; \ - packed_data; \ -}) -#define emit_glClearColorx(red, green, blue, alpha) { \ - mock_push(pack_glClearColorx(red, green, blue, alpha)); \ -} -#define test_glClearColorx(red, green, blue, alpha) { \ - glClearColorx_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glClearColorx missing (no calls left)\n"); \ - } else if (packed->func != glClearColorx_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glClearColorx_INDEX); \ - if (! packed) { \ - mock_errorf("glClearColorx missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glClearColorx:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != red) { \ - match = 0; \ - } \ - if (packed->args.a2 != green) { \ - match = 0; \ - } \ - if (packed->args.a3 != blue) { \ - match = 0; \ - } \ - if (packed->args.a4 != alpha) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glClearColorx(%p, %p, %p, %p);\n", red, green, blue, alpha); \ - } \ - } \ -} -#define pack_glClearDepthf(depth) ({ \ - glClearDepthf_INDEXED *packed_data = malloc(sizeof(glClearDepthf_INDEXED)); \ - packed_data->func = glClearDepthf_INDEX; \ - packed_data->args.a1 = (GLclampf)depth; \ - packed_data; \ -}) -#define emit_glClearDepthf(depth) { \ - mock_push(pack_glClearDepthf(depth)); \ -} -#define test_glClearDepthf(depth) { \ - glClearDepthf_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glClearDepthf missing (no calls left)\n"); \ - } else if (packed->func != glClearDepthf_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glClearDepthf_INDEX); \ - if (! packed) { \ - mock_errorf("glClearDepthf missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glClearDepthf:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != depth) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glClearDepthf(%p);\n", depth); \ - } \ - } \ -} -#define pack_glClearDepthx(depth) ({ \ - glClearDepthx_INDEXED *packed_data = malloc(sizeof(glClearDepthx_INDEXED)); \ - packed_data->func = glClearDepthx_INDEX; \ - packed_data->args.a1 = (GLclampx)depth; \ - packed_data; \ -}) -#define emit_glClearDepthx(depth) { \ - mock_push(pack_glClearDepthx(depth)); \ -} -#define test_glClearDepthx(depth) { \ - glClearDepthx_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glClearDepthx missing (no calls left)\n"); \ - } else if (packed->func != glClearDepthx_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glClearDepthx_INDEX); \ - if (! packed) { \ - mock_errorf("glClearDepthx missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glClearDepthx:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != depth) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glClearDepthx(%p);\n", depth); \ - } \ - } \ -} -#define pack_glClearStencil(s) ({ \ - glClearStencil_INDEXED *packed_data = malloc(sizeof(glClearStencil_INDEXED)); \ - packed_data->func = glClearStencil_INDEX; \ - packed_data->args.a1 = (GLint)s; \ - packed_data; \ -}) -#define emit_glClearStencil(s) { \ - mock_push(pack_glClearStencil(s)); \ -} -#define test_glClearStencil(s) { \ - glClearStencil_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glClearStencil missing (no calls left)\n"); \ - } else if (packed->func != glClearStencil_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glClearStencil_INDEX); \ - if (! packed) { \ - mock_errorf("glClearStencil missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glClearStencil:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != s) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glClearStencil(%d);\n", s); \ - } \ - } \ -} -#define pack_glClientActiveTexture(texture) ({ \ - glClientActiveTexture_INDEXED *packed_data = malloc(sizeof(glClientActiveTexture_INDEXED)); \ - packed_data->func = glClientActiveTexture_INDEX; \ - packed_data->args.a1 = (GLenum)texture; \ - packed_data; \ -}) -#define emit_glClientActiveTexture(texture) { \ - mock_push(pack_glClientActiveTexture(texture)); \ -} -#define test_glClientActiveTexture(texture) { \ - glClientActiveTexture_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glClientActiveTexture missing (no calls left)\n"); \ - } else if (packed->func != glClientActiveTexture_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glClientActiveTexture_INDEX); \ - if (! packed) { \ - mock_errorf("glClientActiveTexture missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glClientActiveTexture:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != texture) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glClientActiveTexture(0x%04X);\n", texture); \ - } \ - } \ -} -#define pack_glClipPlanef(plane, equation) ({ \ - glClipPlanef_INDEXED *packed_data = malloc(sizeof(glClipPlanef_INDEXED)); \ - packed_data->func = glClipPlanef_INDEX; \ - packed_data->args.a1 = (GLenum)plane; \ - packed_data->args.a2 = (GLfloat *)equation; \ - packed_data; \ -}) -#define emit_glClipPlanef(plane, equation) { \ - mock_push(pack_glClipPlanef(plane, equation)); \ -} -#define test_glClipPlanef(plane, equation) { \ - glClipPlanef_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glClipPlanef missing (no calls left)\n"); \ - } else if (packed->func != glClipPlanef_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glClipPlanef_INDEX); \ - if (! packed) { \ - mock_errorf("glClipPlanef missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glClipPlanef:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != plane) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = equation; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(equation)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glClipPlanef(0x%04X, %p);\n", plane, equation); \ - } \ - } \ -} -#define pack_glClipPlanex(plane, equation) ({ \ - glClipPlanex_INDEXED *packed_data = malloc(sizeof(glClipPlanex_INDEXED)); \ - packed_data->func = glClipPlanex_INDEX; \ - packed_data->args.a1 = (GLenum)plane; \ - packed_data->args.a2 = (GLfixed *)equation; \ - packed_data; \ -}) -#define emit_glClipPlanex(plane, equation) { \ - mock_push(pack_glClipPlanex(plane, equation)); \ -} -#define test_glClipPlanex(plane, equation) { \ - glClipPlanex_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glClipPlanex missing (no calls left)\n"); \ - } else if (packed->func != glClipPlanex_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glClipPlanex_INDEX); \ - if (! packed) { \ - mock_errorf("glClipPlanex missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glClipPlanex:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != plane) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = equation; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(equation)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glClipPlanex(0x%04X, %p);\n", plane, equation); \ - } \ - } \ -} -#define pack_glColor4f(red, green, blue, alpha) ({ \ - glColor4f_INDEXED *packed_data = malloc(sizeof(glColor4f_INDEXED)); \ - packed_data->func = glColor4f_INDEX; \ - packed_data->args.a1 = (GLfloat)red; \ - packed_data->args.a2 = (GLfloat)green; \ - packed_data->args.a3 = (GLfloat)blue; \ - packed_data->args.a4 = (GLfloat)alpha; \ - packed_data; \ -}) -#define emit_glColor4f(red, green, blue, alpha) { \ - mock_push(pack_glColor4f(red, green, blue, alpha)); \ -} -#define test_glColor4f(red, green, blue, alpha) { \ - glColor4f_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glColor4f missing (no calls left)\n"); \ - } else if (packed->func != glColor4f_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glColor4f_INDEX); \ - if (! packed) { \ - mock_errorf("glColor4f missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glColor4f:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 - red >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a2 - green >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a3 - blue >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a4 - alpha >= 0.01) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glColor4f(%0.2f, %0.2f, %0.2f, %0.2f);\n", red, green, blue, alpha); \ - } \ - } \ -} -#define pack_glColor4ub(red, green, blue, alpha) ({ \ - glColor4ub_INDEXED *packed_data = malloc(sizeof(glColor4ub_INDEXED)); \ - packed_data->func = glColor4ub_INDEX; \ - packed_data->args.a1 = (GLubyte)red; \ - packed_data->args.a2 = (GLubyte)green; \ - packed_data->args.a3 = (GLubyte)blue; \ - packed_data->args.a4 = (GLubyte)alpha; \ - packed_data; \ -}) -#define emit_glColor4ub(red, green, blue, alpha) { \ - mock_push(pack_glColor4ub(red, green, blue, alpha)); \ -} -#define test_glColor4ub(red, green, blue, alpha) { \ - glColor4ub_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glColor4ub missing (no calls left)\n"); \ - } else if (packed->func != glColor4ub_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glColor4ub_INDEX); \ - if (! packed) { \ - mock_errorf("glColor4ub missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glColor4ub:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != red) { \ - match = 0; \ - } \ - if (packed->args.a2 != green) { \ - match = 0; \ - } \ - if (packed->args.a3 != blue) { \ - match = 0; \ - } \ - if (packed->args.a4 != alpha) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glColor4ub(%c, %c, %c, %c);\n", red, green, blue, alpha); \ - } \ - } \ -} -#define pack_glColor4x(red, green, blue, alpha) ({ \ - glColor4x_INDEXED *packed_data = malloc(sizeof(glColor4x_INDEXED)); \ - packed_data->func = glColor4x_INDEX; \ - packed_data->args.a1 = (GLfixed)red; \ - packed_data->args.a2 = (GLfixed)green; \ - packed_data->args.a3 = (GLfixed)blue; \ - packed_data->args.a4 = (GLfixed)alpha; \ - packed_data; \ -}) -#define emit_glColor4x(red, green, blue, alpha) { \ - mock_push(pack_glColor4x(red, green, blue, alpha)); \ -} -#define test_glColor4x(red, green, blue, alpha) { \ - glColor4x_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glColor4x missing (no calls left)\n"); \ - } else if (packed->func != glColor4x_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glColor4x_INDEX); \ - if (! packed) { \ - mock_errorf("glColor4x missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glColor4x:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != red) { \ - match = 0; \ - } \ - if (packed->args.a2 != green) { \ - match = 0; \ - } \ - if (packed->args.a3 != blue) { \ - match = 0; \ - } \ - if (packed->args.a4 != alpha) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glColor4x(%p, %p, %p, %p);\n", red, green, blue, alpha); \ - } \ - } \ -} -#define pack_glColorMask(red, green, blue, alpha) ({ \ - glColorMask_INDEXED *packed_data = malloc(sizeof(glColorMask_INDEXED)); \ - packed_data->func = glColorMask_INDEX; \ - packed_data->args.a1 = (GLboolean)red; \ - packed_data->args.a2 = (GLboolean)green; \ - packed_data->args.a3 = (GLboolean)blue; \ - packed_data->args.a4 = (GLboolean)alpha; \ - packed_data; \ -}) -#define emit_glColorMask(red, green, blue, alpha) { \ - mock_push(pack_glColorMask(red, green, blue, alpha)); \ -} -#define test_glColorMask(red, green, blue, alpha) { \ - glColorMask_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glColorMask missing (no calls left)\n"); \ - } else if (packed->func != glColorMask_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glColorMask_INDEX); \ - if (! packed) { \ - mock_errorf("glColorMask missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glColorMask:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != red) { \ - match = 0; \ - } \ - if (packed->args.a2 != green) { \ - match = 0; \ - } \ - if (packed->args.a3 != blue) { \ - match = 0; \ - } \ - if (packed->args.a4 != alpha) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glColorMask(%d, %d, %d, %d);\n", red, green, blue, alpha); \ - } \ - } \ -} -#define pack_glColorPointer(size, type, stride, pointer) ({ \ - glColorPointer_INDEXED *packed_data = malloc(sizeof(glColorPointer_INDEXED)); \ - packed_data->func = glColorPointer_INDEX; \ - packed_data->args.a1 = (GLint)size; \ - packed_data->args.a2 = (GLenum)type; \ - packed_data->args.a3 = (GLsizei)stride; \ - packed_data->args.a4 = (GLvoid *)pointer; \ - packed_data; \ -}) -#define emit_glColorPointer(size, type, stride, pointer) { \ - mock_push(pack_glColorPointer(size, type, stride, pointer)); \ -} -#define test_glColorPointer(size, type, stride, pointer) { \ - glColorPointer_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glColorPointer missing (no calls left)\n"); \ - } else if (packed->func != glColorPointer_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glColorPointer_INDEX); \ - if (! packed) { \ - mock_errorf("glColorPointer missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glColorPointer:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != size) { \ - match = 0; \ - } \ - if (packed->args.a2 != type) { \ - match = 0; \ - } \ - if (packed->args.a3 != stride) { \ - match = 0; \ - } \ - void *a = packed->args.a4, *b = pointer; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(pointer)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glColorPointer(%d, 0x%04X, %d, %p);\n", size, type, stride, pointer); \ - } \ - } \ -} -#define pack_glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data) ({ \ - glCompressedTexImage2D_INDEXED *packed_data = malloc(sizeof(glCompressedTexImage2D_INDEXED)); \ - packed_data->func = glCompressedTexImage2D_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLint)level; \ - packed_data->args.a3 = (GLenum)internalformat; \ - packed_data->args.a4 = (GLsizei)width; \ - packed_data->args.a5 = (GLsizei)height; \ - packed_data->args.a6 = (GLint)border; \ - packed_data->args.a7 = (GLsizei)imageSize; \ - packed_data->args.a8 = (GLvoid *)data; \ - packed_data; \ -}) -#define emit_glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data) { \ - mock_push(pack_glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data)); \ -} -#define test_glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data) { \ - glCompressedTexImage2D_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glCompressedTexImage2D missing (no calls left)\n"); \ - } else if (packed->func != glCompressedTexImage2D_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glCompressedTexImage2D_INDEX); \ - if (! packed) { \ - mock_errorf("glCompressedTexImage2D missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glCompressedTexImage2D:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != level) { \ - match = 0; \ - } \ - if (packed->args.a3 != internalformat) { \ - match = 0; \ - } \ - if (packed->args.a4 != width) { \ - match = 0; \ - } \ - if (packed->args.a5 != height) { \ - match = 0; \ - } \ - if (packed->args.a6 != border) { \ - match = 0; \ - } \ - if (packed->args.a7 != imageSize) { \ - match = 0; \ - } \ - void *a = packed->args.a8, *b = data; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(data)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glCompressedTexImage2D(0x%04X, %d, 0x%04X, %d, %d, %d, %d, %p);\n", target, level, internalformat, width, height, border, imageSize, data); \ - } \ - } \ -} -#define pack_glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data) ({ \ - glCompressedTexSubImage2D_INDEXED *packed_data = malloc(sizeof(glCompressedTexSubImage2D_INDEXED)); \ - packed_data->func = glCompressedTexSubImage2D_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLint)level; \ - packed_data->args.a3 = (GLint)xoffset; \ - packed_data->args.a4 = (GLint)yoffset; \ - packed_data->args.a5 = (GLsizei)width; \ - packed_data->args.a6 = (GLsizei)height; \ - packed_data->args.a7 = (GLenum)format; \ - packed_data->args.a8 = (GLsizei)imageSize; \ - packed_data->args.a9 = (GLvoid *)data; \ - packed_data; \ -}) -#define emit_glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data) { \ - mock_push(pack_glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data)); \ -} -#define test_glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data) { \ - glCompressedTexSubImage2D_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glCompressedTexSubImage2D missing (no calls left)\n"); \ - } else if (packed->func != glCompressedTexSubImage2D_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glCompressedTexSubImage2D_INDEX); \ - if (! packed) { \ - mock_errorf("glCompressedTexSubImage2D missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glCompressedTexSubImage2D:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != level) { \ - match = 0; \ - } \ - if (packed->args.a3 != xoffset) { \ - match = 0; \ - } \ - if (packed->args.a4 != yoffset) { \ - match = 0; \ - } \ - if (packed->args.a5 != width) { \ - match = 0; \ - } \ - if (packed->args.a6 != height) { \ - match = 0; \ - } \ - if (packed->args.a7 != format) { \ - match = 0; \ - } \ - if (packed->args.a8 != imageSize) { \ - match = 0; \ - } \ - void *a = packed->args.a9, *b = data; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(data)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glCompressedTexSubImage2D(0x%04X, %d, %d, %d, %d, %d, 0x%04X, %d, %p);\n", target, level, xoffset, yoffset, width, height, format, imageSize, data); \ - } \ - } \ -} -#define pack_glCopyTexImage2D(target, level, internalformat, x, y, width, height, border) ({ \ - glCopyTexImage2D_INDEXED *packed_data = malloc(sizeof(glCopyTexImage2D_INDEXED)); \ - packed_data->func = glCopyTexImage2D_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLint)level; \ - packed_data->args.a3 = (GLenum)internalformat; \ - packed_data->args.a4 = (GLint)x; \ - packed_data->args.a5 = (GLint)y; \ - packed_data->args.a6 = (GLsizei)width; \ - packed_data->args.a7 = (GLsizei)height; \ - packed_data->args.a8 = (GLint)border; \ - packed_data; \ -}) -#define emit_glCopyTexImage2D(target, level, internalformat, x, y, width, height, border) { \ - mock_push(pack_glCopyTexImage2D(target, level, internalformat, x, y, width, height, border)); \ -} -#define test_glCopyTexImage2D(target, level, internalformat, x, y, width, height, border) { \ - glCopyTexImage2D_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glCopyTexImage2D missing (no calls left)\n"); \ - } else if (packed->func != glCopyTexImage2D_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glCopyTexImage2D_INDEX); \ - if (! packed) { \ - mock_errorf("glCopyTexImage2D missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glCopyTexImage2D:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != level) { \ - match = 0; \ - } \ - if (packed->args.a3 != internalformat) { \ - match = 0; \ - } \ - if (packed->args.a4 != x) { \ - match = 0; \ - } \ - if (packed->args.a5 != y) { \ - match = 0; \ - } \ - if (packed->args.a6 != width) { \ - match = 0; \ - } \ - if (packed->args.a7 != height) { \ - match = 0; \ - } \ - if (packed->args.a8 != border) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glCopyTexImage2D(0x%04X, %d, 0x%04X, %d, %d, %d, %d, %d);\n", target, level, internalformat, x, y, width, height, border); \ - } \ - } \ -} -#define pack_glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height) ({ \ - glCopyTexSubImage2D_INDEXED *packed_data = malloc(sizeof(glCopyTexSubImage2D_INDEXED)); \ - packed_data->func = glCopyTexSubImage2D_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLint)level; \ - packed_data->args.a3 = (GLint)xoffset; \ - packed_data->args.a4 = (GLint)yoffset; \ - packed_data->args.a5 = (GLint)x; \ - packed_data->args.a6 = (GLint)y; \ - packed_data->args.a7 = (GLsizei)width; \ - packed_data->args.a8 = (GLsizei)height; \ - packed_data; \ -}) -#define emit_glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height) { \ - mock_push(pack_glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height)); \ -} -#define test_glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height) { \ - glCopyTexSubImage2D_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glCopyTexSubImage2D missing (no calls left)\n"); \ - } else if (packed->func != glCopyTexSubImage2D_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glCopyTexSubImage2D_INDEX); \ - if (! packed) { \ - mock_errorf("glCopyTexSubImage2D missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glCopyTexSubImage2D:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != level) { \ - match = 0; \ - } \ - if (packed->args.a3 != xoffset) { \ - match = 0; \ - } \ - if (packed->args.a4 != yoffset) { \ - match = 0; \ - } \ - if (packed->args.a5 != x) { \ - match = 0; \ - } \ - if (packed->args.a6 != y) { \ - match = 0; \ - } \ - if (packed->args.a7 != width) { \ - match = 0; \ - } \ - if (packed->args.a8 != height) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glCopyTexSubImage2D(0x%04X, %d, %d, %d, %d, %d, %d, %d);\n", target, level, xoffset, yoffset, x, y, width, height); \ - } \ - } \ -} -#define pack_glCullFace(mode) ({ \ - glCullFace_INDEXED *packed_data = malloc(sizeof(glCullFace_INDEXED)); \ - packed_data->func = glCullFace_INDEX; \ - packed_data->args.a1 = (GLenum)mode; \ - packed_data; \ -}) -#define emit_glCullFace(mode) { \ - mock_push(pack_glCullFace(mode)); \ -} -#define test_glCullFace(mode) { \ - glCullFace_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glCullFace missing (no calls left)\n"); \ - } else if (packed->func != glCullFace_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glCullFace_INDEX); \ - if (! packed) { \ - mock_errorf("glCullFace missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glCullFace:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != mode) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glCullFace(0x%04X);\n", mode); \ - } \ - } \ -} -#define pack_glDeleteBuffers(n, buffers) ({ \ - glDeleteBuffers_INDEXED *packed_data = malloc(sizeof(glDeleteBuffers_INDEXED)); \ - packed_data->func = glDeleteBuffers_INDEX; \ - packed_data->args.a1 = (GLsizei)n; \ - packed_data->args.a2 = (GLuint *)buffers; \ - packed_data; \ -}) -#define emit_glDeleteBuffers(n, buffers) { \ - mock_push(pack_glDeleteBuffers(n, buffers)); \ -} -#define test_glDeleteBuffers(n, buffers) { \ - glDeleteBuffers_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glDeleteBuffers missing (no calls left)\n"); \ - } else if (packed->func != glDeleteBuffers_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glDeleteBuffers_INDEX); \ - if (! packed) { \ - mock_errorf("glDeleteBuffers missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glDeleteBuffers:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != n) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = buffers; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(buffers)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glDeleteBuffers(%d, %p);\n", n, buffers); \ - } \ - } \ -} -#define pack_glDeleteTextures(n, textures) ({ \ - glDeleteTextures_INDEXED *packed_data = malloc(sizeof(glDeleteTextures_INDEXED)); \ - packed_data->func = glDeleteTextures_INDEX; \ - packed_data->args.a1 = (GLsizei)n; \ - packed_data->args.a2 = (GLuint *)textures; \ - packed_data; \ -}) -#define emit_glDeleteTextures(n, textures) { \ - mock_push(pack_glDeleteTextures(n, textures)); \ -} -#define test_glDeleteTextures(n, textures) { \ - glDeleteTextures_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glDeleteTextures missing (no calls left)\n"); \ - } else if (packed->func != glDeleteTextures_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glDeleteTextures_INDEX); \ - if (! packed) { \ - mock_errorf("glDeleteTextures missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glDeleteTextures:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != n) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = textures; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(textures)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glDeleteTextures(%d, %p);\n", n, textures); \ - } \ - } \ -} -#define pack_glDepthFunc(func) ({ \ - glDepthFunc_INDEXED *packed_data = malloc(sizeof(glDepthFunc_INDEXED)); \ - packed_data->func = glDepthFunc_INDEX; \ - packed_data->args.a1 = (GLenum)func; \ - packed_data; \ -}) -#define emit_glDepthFunc(func) { \ - mock_push(pack_glDepthFunc(func)); \ -} -#define test_glDepthFunc(func) { \ - glDepthFunc_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glDepthFunc missing (no calls left)\n"); \ - } else if (packed->func != glDepthFunc_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glDepthFunc_INDEX); \ - if (! packed) { \ - mock_errorf("glDepthFunc missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glDepthFunc:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != func) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glDepthFunc(0x%04X);\n", func); \ - } \ - } \ -} -#define pack_glDepthMask(flag) ({ \ - glDepthMask_INDEXED *packed_data = malloc(sizeof(glDepthMask_INDEXED)); \ - packed_data->func = glDepthMask_INDEX; \ - packed_data->args.a1 = (GLboolean)flag; \ - packed_data; \ -}) -#define emit_glDepthMask(flag) { \ - mock_push(pack_glDepthMask(flag)); \ -} -#define test_glDepthMask(flag) { \ - glDepthMask_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glDepthMask missing (no calls left)\n"); \ - } else if (packed->func != glDepthMask_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glDepthMask_INDEX); \ - if (! packed) { \ - mock_errorf("glDepthMask missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glDepthMask:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != flag) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glDepthMask(%d);\n", flag); \ - } \ - } \ -} -#define pack_glDepthRangef(near, far) ({ \ - glDepthRangef_INDEXED *packed_data = malloc(sizeof(glDepthRangef_INDEXED)); \ - packed_data->func = glDepthRangef_INDEX; \ - packed_data->args.a1 = (GLclampf)near; \ - packed_data->args.a2 = (GLclampf)far; \ - packed_data; \ -}) -#define emit_glDepthRangef(near, far) { \ - mock_push(pack_glDepthRangef(near, far)); \ -} -#define test_glDepthRangef(near, far) { \ - glDepthRangef_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glDepthRangef missing (no calls left)\n"); \ - } else if (packed->func != glDepthRangef_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glDepthRangef_INDEX); \ - if (! packed) { \ - mock_errorf("glDepthRangef missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glDepthRangef:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != near) { \ - match = 0; \ - } \ - if (packed->args.a2 != far) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glDepthRangef(%p, %p);\n", near, far); \ - } \ - } \ -} -#define pack_glDepthRangex(near, far) ({ \ - glDepthRangex_INDEXED *packed_data = malloc(sizeof(glDepthRangex_INDEXED)); \ - packed_data->func = glDepthRangex_INDEX; \ - packed_data->args.a1 = (GLclampx)near; \ - packed_data->args.a2 = (GLclampx)far; \ - packed_data; \ -}) -#define emit_glDepthRangex(near, far) { \ - mock_push(pack_glDepthRangex(near, far)); \ -} -#define test_glDepthRangex(near, far) { \ - glDepthRangex_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glDepthRangex missing (no calls left)\n"); \ - } else if (packed->func != glDepthRangex_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glDepthRangex_INDEX); \ - if (! packed) { \ - mock_errorf("glDepthRangex missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glDepthRangex:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != near) { \ - match = 0; \ - } \ - if (packed->args.a2 != far) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glDepthRangex(%p, %p);\n", near, far); \ - } \ - } \ -} -#define pack_glDisable(cap) ({ \ - glDisable_INDEXED *packed_data = malloc(sizeof(glDisable_INDEXED)); \ - packed_data->func = glDisable_INDEX; \ - packed_data->args.a1 = (GLenum)cap; \ - packed_data; \ -}) -#define emit_glDisable(cap) { \ - mock_push(pack_glDisable(cap)); \ -} -#define test_glDisable(cap) { \ - glDisable_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glDisable missing (no calls left)\n"); \ - } else if (packed->func != glDisable_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glDisable_INDEX); \ - if (! packed) { \ - mock_errorf("glDisable missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glDisable:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != cap) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glDisable(0x%04X);\n", cap); \ - } \ - } \ -} -#define pack_glDisableClientState(array) ({ \ - glDisableClientState_INDEXED *packed_data = malloc(sizeof(glDisableClientState_INDEXED)); \ - packed_data->func = glDisableClientState_INDEX; \ - packed_data->args.a1 = (GLenum)array; \ - packed_data; \ -}) -#define emit_glDisableClientState(array) { \ - mock_push(pack_glDisableClientState(array)); \ -} -#define test_glDisableClientState(array) { \ - glDisableClientState_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glDisableClientState missing (no calls left)\n"); \ - } else if (packed->func != glDisableClientState_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glDisableClientState_INDEX); \ - if (! packed) { \ - mock_errorf("glDisableClientState missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glDisableClientState:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != array) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glDisableClientState(0x%04X);\n", array); \ - } \ - } \ -} -#define pack_glDrawArrays(mode, first, count) ({ \ - glDrawArrays_INDEXED *packed_data = malloc(sizeof(glDrawArrays_INDEXED)); \ - packed_data->func = glDrawArrays_INDEX; \ - packed_data->args.a1 = (GLenum)mode; \ - packed_data->args.a2 = (GLint)first; \ - packed_data->args.a3 = (GLsizei)count; \ - packed_data; \ -}) -#define emit_glDrawArrays(mode, first, count) { \ - mock_push(pack_glDrawArrays(mode, first, count)); \ -} -#define test_glDrawArrays(mode, first, count) { \ - glDrawArrays_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glDrawArrays missing (no calls left)\n"); \ - } else if (packed->func != glDrawArrays_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glDrawArrays_INDEX); \ - if (! packed) { \ - mock_errorf("glDrawArrays missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glDrawArrays:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != mode) { \ - match = 0; \ - } \ - if (packed->args.a2 != first) { \ - match = 0; \ - } \ - if (packed->args.a3 != count) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glDrawArrays(0x%04X, %d, %d);\n", mode, first, count); \ - } \ - } \ -} -#define pack_glDrawElements(mode, count, type, indices) ({ \ - glDrawElements_INDEXED *packed_data = malloc(sizeof(glDrawElements_INDEXED)); \ - packed_data->func = glDrawElements_INDEX; \ - packed_data->args.a1 = (GLenum)mode; \ - packed_data->args.a2 = (GLsizei)count; \ - packed_data->args.a3 = (GLenum)type; \ - packed_data->args.a4 = (GLvoid *)indices; \ - packed_data; \ -}) -#define emit_glDrawElements(mode, count, type, indices) { \ - mock_push(pack_glDrawElements(mode, count, type, indices)); \ -} -#define test_glDrawElements(mode, count, type, indices) { \ - glDrawElements_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glDrawElements missing (no calls left)\n"); \ - } else if (packed->func != glDrawElements_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glDrawElements_INDEX); \ - if (! packed) { \ - mock_errorf("glDrawElements missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glDrawElements:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != mode) { \ - match = 0; \ - } \ - if (packed->args.a2 != count) { \ - match = 0; \ - } \ - if (packed->args.a3 != type) { \ - match = 0; \ - } \ - void *a = packed->args.a4, *b = indices; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(indices)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glDrawElements(0x%04X, %d, 0x%04X, %p);\n", mode, count, type, indices); \ - } \ - } \ -} -#define pack_glEnable(cap) ({ \ - glEnable_INDEXED *packed_data = malloc(sizeof(glEnable_INDEXED)); \ - packed_data->func = glEnable_INDEX; \ - packed_data->args.a1 = (GLenum)cap; \ - packed_data; \ -}) -#define emit_glEnable(cap) { \ - mock_push(pack_glEnable(cap)); \ -} -#define test_glEnable(cap) { \ - glEnable_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glEnable missing (no calls left)\n"); \ - } else if (packed->func != glEnable_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glEnable_INDEX); \ - if (! packed) { \ - mock_errorf("glEnable missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glEnable:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != cap) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glEnable(0x%04X);\n", cap); \ - } \ - } \ -} -#define pack_glEnableClientState(array) ({ \ - glEnableClientState_INDEXED *packed_data = malloc(sizeof(glEnableClientState_INDEXED)); \ - packed_data->func = glEnableClientState_INDEX; \ - packed_data->args.a1 = (GLenum)array; \ - packed_data; \ -}) -#define emit_glEnableClientState(array) { \ - mock_push(pack_glEnableClientState(array)); \ -} -#define test_glEnableClientState(array) { \ - glEnableClientState_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glEnableClientState missing (no calls left)\n"); \ - } else if (packed->func != glEnableClientState_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glEnableClientState_INDEX); \ - if (! packed) { \ - mock_errorf("glEnableClientState missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glEnableClientState:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != array) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glEnableClientState(0x%04X);\n", array); \ - } \ - } \ -} -#define pack_glFinish() ({ \ - glFinish_INDEXED *packed_data = malloc(sizeof(glFinish_INDEXED)); \ - packed_data->func = glFinish_INDEX; \ - packed_data; \ -}) -#define emit_glFinish() { \ - mock_push(pack_glFinish()); \ -} -#define test_glFinish() { \ - glFinish_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glFinish missing (no calls left)\n"); \ - } else if (packed->func != glFinish_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glFinish_INDEX); \ - if (! packed) { \ - mock_errorf("glFinish missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glFinish:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glFinish();\n", ); \ - } \ - } \ -} -#define pack_glFlush() ({ \ - glFlush_INDEXED *packed_data = malloc(sizeof(glFlush_INDEXED)); \ - packed_data->func = glFlush_INDEX; \ - packed_data; \ -}) -#define emit_glFlush() { \ - mock_push(pack_glFlush()); \ -} -#define test_glFlush() { \ - glFlush_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glFlush missing (no calls left)\n"); \ - } else if (packed->func != glFlush_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glFlush_INDEX); \ - if (! packed) { \ - mock_errorf("glFlush missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glFlush:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glFlush();\n", ); \ - } \ - } \ -} -#define pack_glFogf(pname, param) ({ \ - glFogf_INDEXED *packed_data = malloc(sizeof(glFogf_INDEXED)); \ - packed_data->func = glFogf_INDEX; \ - packed_data->args.a1 = (GLenum)pname; \ - packed_data->args.a2 = (GLfloat)param; \ - packed_data; \ -}) -#define emit_glFogf(pname, param) { \ - mock_push(pack_glFogf(pname, param)); \ -} -#define test_glFogf(pname, param) { \ - glFogf_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glFogf missing (no calls left)\n"); \ - } else if (packed->func != glFogf_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glFogf_INDEX); \ - if (! packed) { \ - mock_errorf("glFogf missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glFogf:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != pname) { \ - match = 0; \ - } \ - if (packed->args.a2 - param >= 0.01) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glFogf(0x%04X, %0.2f);\n", pname, param); \ - } \ - } \ -} -#define pack_glFogfv(pname, params) ({ \ - glFogfv_INDEXED *packed_data = malloc(sizeof(glFogfv_INDEXED)); \ - packed_data->func = glFogfv_INDEX; \ - packed_data->args.a1 = (GLenum)pname; \ - packed_data->args.a2 = (GLfloat *)params; \ - packed_data; \ -}) -#define emit_glFogfv(pname, params) { \ - mock_push(pack_glFogfv(pname, params)); \ -} -#define test_glFogfv(pname, params) { \ - glFogfv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glFogfv missing (no calls left)\n"); \ - } else if (packed->func != glFogfv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glFogfv_INDEX); \ - if (! packed) { \ - mock_errorf("glFogfv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glFogfv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glFogfv(0x%04X, %p);\n", pname, params); \ - } \ - } \ -} -#define pack_glFogx(pname, param) ({ \ - glFogx_INDEXED *packed_data = malloc(sizeof(glFogx_INDEXED)); \ - packed_data->func = glFogx_INDEX; \ - packed_data->args.a1 = (GLenum)pname; \ - packed_data->args.a2 = (GLfixed)param; \ - packed_data; \ -}) -#define emit_glFogx(pname, param) { \ - mock_push(pack_glFogx(pname, param)); \ -} -#define test_glFogx(pname, param) { \ - glFogx_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glFogx missing (no calls left)\n"); \ - } else if (packed->func != glFogx_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glFogx_INDEX); \ - if (! packed) { \ - mock_errorf("glFogx missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glFogx:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != pname) { \ - match = 0; \ - } \ - if (packed->args.a2 != param) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glFogx(0x%04X, %p);\n", pname, param); \ - } \ - } \ -} -#define pack_glFogxv(pname, params) ({ \ - glFogxv_INDEXED *packed_data = malloc(sizeof(glFogxv_INDEXED)); \ - packed_data->func = glFogxv_INDEX; \ - packed_data->args.a1 = (GLenum)pname; \ - packed_data->args.a2 = (GLfixed *)params; \ - packed_data; \ -}) -#define emit_glFogxv(pname, params) { \ - mock_push(pack_glFogxv(pname, params)); \ -} -#define test_glFogxv(pname, params) { \ - glFogxv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glFogxv missing (no calls left)\n"); \ - } else if (packed->func != glFogxv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glFogxv_INDEX); \ - if (! packed) { \ - mock_errorf("glFogxv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glFogxv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glFogxv(0x%04X, %p);\n", pname, params); \ - } \ - } \ -} -#define pack_glFrontFace(mode) ({ \ - glFrontFace_INDEXED *packed_data = malloc(sizeof(glFrontFace_INDEXED)); \ - packed_data->func = glFrontFace_INDEX; \ - packed_data->args.a1 = (GLenum)mode; \ - packed_data; \ -}) -#define emit_glFrontFace(mode) { \ - mock_push(pack_glFrontFace(mode)); \ -} -#define test_glFrontFace(mode) { \ - glFrontFace_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glFrontFace missing (no calls left)\n"); \ - } else if (packed->func != glFrontFace_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glFrontFace_INDEX); \ - if (! packed) { \ - mock_errorf("glFrontFace missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glFrontFace:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != mode) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glFrontFace(0x%04X);\n", mode); \ - } \ - } \ -} -#define pack_glFrustumf(left, right, bottom, top, near, far) ({ \ - glFrustumf_INDEXED *packed_data = malloc(sizeof(glFrustumf_INDEXED)); \ - packed_data->func = glFrustumf_INDEX; \ - packed_data->args.a1 = (GLfloat)left; \ - packed_data->args.a2 = (GLfloat)right; \ - packed_data->args.a3 = (GLfloat)bottom; \ - packed_data->args.a4 = (GLfloat)top; \ - packed_data->args.a5 = (GLfloat)near; \ - packed_data->args.a6 = (GLfloat)far; \ - packed_data; \ -}) -#define emit_glFrustumf(left, right, bottom, top, near, far) { \ - mock_push(pack_glFrustumf(left, right, bottom, top, near, far)); \ -} -#define test_glFrustumf(left, right, bottom, top, near, far) { \ - glFrustumf_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glFrustumf missing (no calls left)\n"); \ - } else if (packed->func != glFrustumf_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glFrustumf_INDEX); \ - if (! packed) { \ - mock_errorf("glFrustumf missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glFrustumf:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 - left >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a2 - right >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a3 - bottom >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a4 - top >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a5 - near >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a6 - far >= 0.01) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glFrustumf(%0.2f, %0.2f, %0.2f, %0.2f, %0.2f, %0.2f);\n", left, right, bottom, top, near, far); \ - } \ - } \ -} -#define pack_glFrustumx(left, right, bottom, top, near, far) ({ \ - glFrustumx_INDEXED *packed_data = malloc(sizeof(glFrustumx_INDEXED)); \ - packed_data->func = glFrustumx_INDEX; \ - packed_data->args.a1 = (GLfixed)left; \ - packed_data->args.a2 = (GLfixed)right; \ - packed_data->args.a3 = (GLfixed)bottom; \ - packed_data->args.a4 = (GLfixed)top; \ - packed_data->args.a5 = (GLfixed)near; \ - packed_data->args.a6 = (GLfixed)far; \ - packed_data; \ -}) -#define emit_glFrustumx(left, right, bottom, top, near, far) { \ - mock_push(pack_glFrustumx(left, right, bottom, top, near, far)); \ -} -#define test_glFrustumx(left, right, bottom, top, near, far) { \ - glFrustumx_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glFrustumx missing (no calls left)\n"); \ - } else if (packed->func != glFrustumx_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glFrustumx_INDEX); \ - if (! packed) { \ - mock_errorf("glFrustumx missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glFrustumx:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != left) { \ - match = 0; \ - } \ - if (packed->args.a2 != right) { \ - match = 0; \ - } \ - if (packed->args.a3 != bottom) { \ - match = 0; \ - } \ - if (packed->args.a4 != top) { \ - match = 0; \ - } \ - if (packed->args.a5 != near) { \ - match = 0; \ - } \ - if (packed->args.a6 != far) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glFrustumx(%p, %p, %p, %p, %p, %p);\n", left, right, bottom, top, near, far); \ - } \ - } \ -} -#define pack_glGenBuffers(n, buffers) ({ \ - glGenBuffers_INDEXED *packed_data = malloc(sizeof(glGenBuffers_INDEXED)); \ - packed_data->func = glGenBuffers_INDEX; \ - packed_data->args.a1 = (GLsizei)n; \ - packed_data->args.a2 = (GLuint *)buffers; \ - packed_data; \ -}) -#define emit_glGenBuffers(n, buffers) { \ - mock_push(pack_glGenBuffers(n, buffers)); \ -} -#define test_glGenBuffers(n, buffers) { \ - glGenBuffers_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGenBuffers missing (no calls left)\n"); \ - } else if (packed->func != glGenBuffers_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGenBuffers_INDEX); \ - if (! packed) { \ - mock_errorf("glGenBuffers missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGenBuffers:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != n) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = buffers; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(buffers)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGenBuffers(%d, %p);\n", n, buffers); \ - } \ - } \ -} -#define pack_glGenTextures(n, textures) ({ \ - glGenTextures_INDEXED *packed_data = malloc(sizeof(glGenTextures_INDEXED)); \ - packed_data->func = glGenTextures_INDEX; \ - packed_data->args.a1 = (GLsizei)n; \ - packed_data->args.a2 = (GLuint *)textures; \ - packed_data; \ -}) -#define emit_glGenTextures(n, textures) { \ - mock_push(pack_glGenTextures(n, textures)); \ -} -#define test_glGenTextures(n, textures) { \ - glGenTextures_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGenTextures missing (no calls left)\n"); \ - } else if (packed->func != glGenTextures_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGenTextures_INDEX); \ - if (! packed) { \ - mock_errorf("glGenTextures missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGenTextures:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != n) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = textures; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(textures)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGenTextures(%d, %p);\n", n, textures); \ - } \ - } \ -} -#define pack_glGetBooleanv(pname, params) ({ \ - glGetBooleanv_INDEXED *packed_data = malloc(sizeof(glGetBooleanv_INDEXED)); \ - packed_data->func = glGetBooleanv_INDEX; \ - packed_data->args.a1 = (GLenum)pname; \ - packed_data->args.a2 = (GLboolean *)params; \ - packed_data; \ -}) -#define emit_glGetBooleanv(pname, params) { \ - mock_push(pack_glGetBooleanv(pname, params)); \ -} -#define test_glGetBooleanv(pname, params) { \ - glGetBooleanv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetBooleanv missing (no calls left)\n"); \ - } else if (packed->func != glGetBooleanv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetBooleanv_INDEX); \ - if (! packed) { \ - mock_errorf("glGetBooleanv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetBooleanv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetBooleanv(0x%04X, %p);\n", pname, params); \ - } \ - } \ -} -#define pack_glGetBufferParameteriv(target, pname, params) ({ \ - glGetBufferParameteriv_INDEXED *packed_data = malloc(sizeof(glGetBufferParameteriv_INDEXED)); \ - packed_data->func = glGetBufferParameteriv_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLint *)params; \ - packed_data; \ -}) -#define emit_glGetBufferParameteriv(target, pname, params) { \ - mock_push(pack_glGetBufferParameteriv(target, pname, params)); \ -} -#define test_glGetBufferParameteriv(target, pname, params) { \ - glGetBufferParameteriv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetBufferParameteriv missing (no calls left)\n"); \ - } else if (packed->func != glGetBufferParameteriv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetBufferParameteriv_INDEX); \ - if (! packed) { \ - mock_errorf("glGetBufferParameteriv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetBufferParameteriv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetBufferParameteriv(0x%04X, 0x%04X, %p);\n", target, pname, params); \ - } \ - } \ -} -#define pack_glGetClipPlanef(plane, equation) ({ \ - glGetClipPlanef_INDEXED *packed_data = malloc(sizeof(glGetClipPlanef_INDEXED)); \ - packed_data->func = glGetClipPlanef_INDEX; \ - packed_data->args.a1 = (GLenum)plane; \ - packed_data->args.a2 = (GLfloat *)equation; \ - packed_data; \ -}) -#define emit_glGetClipPlanef(plane, equation) { \ - mock_push(pack_glGetClipPlanef(plane, equation)); \ -} -#define test_glGetClipPlanef(plane, equation) { \ - glGetClipPlanef_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetClipPlanef missing (no calls left)\n"); \ - } else if (packed->func != glGetClipPlanef_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetClipPlanef_INDEX); \ - if (! packed) { \ - mock_errorf("glGetClipPlanef missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetClipPlanef:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != plane) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = equation; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(equation)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetClipPlanef(0x%04X, %p);\n", plane, equation); \ - } \ - } \ -} -#define pack_glGetClipPlanex(plane, equation) ({ \ - glGetClipPlanex_INDEXED *packed_data = malloc(sizeof(glGetClipPlanex_INDEXED)); \ - packed_data->func = glGetClipPlanex_INDEX; \ - packed_data->args.a1 = (GLenum)plane; \ - packed_data->args.a2 = (GLfixed *)equation; \ - packed_data; \ -}) -#define emit_glGetClipPlanex(plane, equation) { \ - mock_push(pack_glGetClipPlanex(plane, equation)); \ -} -#define test_glGetClipPlanex(plane, equation) { \ - glGetClipPlanex_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetClipPlanex missing (no calls left)\n"); \ - } else if (packed->func != glGetClipPlanex_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetClipPlanex_INDEX); \ - if (! packed) { \ - mock_errorf("glGetClipPlanex missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetClipPlanex:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != plane) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = equation; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(equation)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetClipPlanex(0x%04X, %p);\n", plane, equation); \ - } \ - } \ -} -#define pack_glGetError() ({ \ - glGetError_INDEXED *packed_data = malloc(sizeof(glGetError_INDEXED)); \ - packed_data->func = glGetError_INDEX; \ - packed_data; \ -}) -#define emit_glGetError() { \ - mock_push(pack_glGetError()); \ -} -#define test_glGetError() { \ - glGetError_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetError missing (no calls left)\n"); \ - } else if (packed->func != glGetError_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetError_INDEX); \ - if (! packed) { \ - mock_errorf("glGetError missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetError:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetError();\n", ); \ - } \ - } \ -} -#define pack_glGetFixedv(pname, params) ({ \ - glGetFixedv_INDEXED *packed_data = malloc(sizeof(glGetFixedv_INDEXED)); \ - packed_data->func = glGetFixedv_INDEX; \ - packed_data->args.a1 = (GLenum)pname; \ - packed_data->args.a2 = (GLfixed *)params; \ - packed_data; \ -}) -#define emit_glGetFixedv(pname, params) { \ - mock_push(pack_glGetFixedv(pname, params)); \ -} -#define test_glGetFixedv(pname, params) { \ - glGetFixedv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetFixedv missing (no calls left)\n"); \ - } else if (packed->func != glGetFixedv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetFixedv_INDEX); \ - if (! packed) { \ - mock_errorf("glGetFixedv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetFixedv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetFixedv(0x%04X, %p);\n", pname, params); \ - } \ - } \ -} -#define pack_glGetFloatv(pname, params) ({ \ - glGetFloatv_INDEXED *packed_data = malloc(sizeof(glGetFloatv_INDEXED)); \ - packed_data->func = glGetFloatv_INDEX; \ - packed_data->args.a1 = (GLenum)pname; \ - packed_data->args.a2 = (GLfloat *)params; \ - packed_data; \ -}) -#define emit_glGetFloatv(pname, params) { \ - mock_push(pack_glGetFloatv(pname, params)); \ -} -#define test_glGetFloatv(pname, params) { \ - glGetFloatv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetFloatv missing (no calls left)\n"); \ - } else if (packed->func != glGetFloatv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetFloatv_INDEX); \ - if (! packed) { \ - mock_errorf("glGetFloatv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetFloatv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetFloatv(0x%04X, %p);\n", pname, params); \ - } \ - } \ -} -#define pack_glGetIntegerv(pname, params) ({ \ - glGetIntegerv_INDEXED *packed_data = malloc(sizeof(glGetIntegerv_INDEXED)); \ - packed_data->func = glGetIntegerv_INDEX; \ - packed_data->args.a1 = (GLenum)pname; \ - packed_data->args.a2 = (GLint *)params; \ - packed_data; \ -}) -#define emit_glGetIntegerv(pname, params) { \ - mock_push(pack_glGetIntegerv(pname, params)); \ -} -#define test_glGetIntegerv(pname, params) { \ - glGetIntegerv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetIntegerv missing (no calls left)\n"); \ - } else if (packed->func != glGetIntegerv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetIntegerv_INDEX); \ - if (! packed) { \ - mock_errorf("glGetIntegerv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetIntegerv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetIntegerv(0x%04X, %p);\n", pname, params); \ - } \ - } \ -} -#define pack_glGetLightfv(light, pname, params) ({ \ - glGetLightfv_INDEXED *packed_data = malloc(sizeof(glGetLightfv_INDEXED)); \ - packed_data->func = glGetLightfv_INDEX; \ - packed_data->args.a1 = (GLenum)light; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfloat *)params; \ - packed_data; \ -}) -#define emit_glGetLightfv(light, pname, params) { \ - mock_push(pack_glGetLightfv(light, pname, params)); \ -} -#define test_glGetLightfv(light, pname, params) { \ - glGetLightfv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetLightfv missing (no calls left)\n"); \ - } else if (packed->func != glGetLightfv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetLightfv_INDEX); \ - if (! packed) { \ - mock_errorf("glGetLightfv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetLightfv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != light) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetLightfv(0x%04X, 0x%04X, %p);\n", light, pname, params); \ - } \ - } \ -} -#define pack_glGetLightxv(light, pname, params) ({ \ - glGetLightxv_INDEXED *packed_data = malloc(sizeof(glGetLightxv_INDEXED)); \ - packed_data->func = glGetLightxv_INDEX; \ - packed_data->args.a1 = (GLenum)light; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfixed *)params; \ - packed_data; \ -}) -#define emit_glGetLightxv(light, pname, params) { \ - mock_push(pack_glGetLightxv(light, pname, params)); \ -} -#define test_glGetLightxv(light, pname, params) { \ - glGetLightxv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetLightxv missing (no calls left)\n"); \ - } else if (packed->func != glGetLightxv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetLightxv_INDEX); \ - if (! packed) { \ - mock_errorf("glGetLightxv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetLightxv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != light) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetLightxv(0x%04X, 0x%04X, %p);\n", light, pname, params); \ - } \ - } \ -} -#define pack_glGetMaterialfv(face, pname, params) ({ \ - glGetMaterialfv_INDEXED *packed_data = malloc(sizeof(glGetMaterialfv_INDEXED)); \ - packed_data->func = glGetMaterialfv_INDEX; \ - packed_data->args.a1 = (GLenum)face; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfloat *)params; \ - packed_data; \ -}) -#define emit_glGetMaterialfv(face, pname, params) { \ - mock_push(pack_glGetMaterialfv(face, pname, params)); \ -} -#define test_glGetMaterialfv(face, pname, params) { \ - glGetMaterialfv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetMaterialfv missing (no calls left)\n"); \ - } else if (packed->func != glGetMaterialfv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetMaterialfv_INDEX); \ - if (! packed) { \ - mock_errorf("glGetMaterialfv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetMaterialfv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != face) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetMaterialfv(0x%04X, 0x%04X, %p);\n", face, pname, params); \ - } \ - } \ -} -#define pack_glGetMaterialxv(face, pname, params) ({ \ - glGetMaterialxv_INDEXED *packed_data = malloc(sizeof(glGetMaterialxv_INDEXED)); \ - packed_data->func = glGetMaterialxv_INDEX; \ - packed_data->args.a1 = (GLenum)face; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfixed *)params; \ - packed_data; \ -}) -#define emit_glGetMaterialxv(face, pname, params) { \ - mock_push(pack_glGetMaterialxv(face, pname, params)); \ -} -#define test_glGetMaterialxv(face, pname, params) { \ - glGetMaterialxv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetMaterialxv missing (no calls left)\n"); \ - } else if (packed->func != glGetMaterialxv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetMaterialxv_INDEX); \ - if (! packed) { \ - mock_errorf("glGetMaterialxv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetMaterialxv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != face) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetMaterialxv(0x%04X, 0x%04X, %p);\n", face, pname, params); \ - } \ - } \ -} -#define pack_glGetPointerv(pname, params) ({ \ - glGetPointerv_INDEXED *packed_data = malloc(sizeof(glGetPointerv_INDEXED)); \ - packed_data->func = glGetPointerv_INDEX; \ - packed_data->args.a1 = (GLenum)pname; \ - packed_data->args.a2 = (GLvoid **)params; \ - packed_data; \ -}) -#define emit_glGetPointerv(pname, params) { \ - mock_push(pack_glGetPointerv(pname, params)); \ -} -#define test_glGetPointerv(pname, params) { \ - glGetPointerv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetPointerv missing (no calls left)\n"); \ - } else if (packed->func != glGetPointerv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetPointerv_INDEX); \ - if (! packed) { \ - mock_errorf("glGetPointerv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetPointerv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetPointerv(0x%04X, %p);\n", pname, params); \ - } \ - } \ -} -#define pack_glGetString(name) ({ \ - glGetString_INDEXED *packed_data = malloc(sizeof(glGetString_INDEXED)); \ - packed_data->func = glGetString_INDEX; \ - packed_data->args.a1 = (GLenum)name; \ - packed_data; \ -}) -#define emit_glGetString(name) { \ - mock_push(pack_glGetString(name)); \ -} -#define test_glGetString(name) { \ - glGetString_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetString missing (no calls left)\n"); \ - } else if (packed->func != glGetString_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetString_INDEX); \ - if (! packed) { \ - mock_errorf("glGetString missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetString:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != name) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetString(0x%04X);\n", name); \ - } \ - } \ -} -#define pack_glGetTexEnvfv(target, pname, params) ({ \ - glGetTexEnvfv_INDEXED *packed_data = malloc(sizeof(glGetTexEnvfv_INDEXED)); \ - packed_data->func = glGetTexEnvfv_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfloat *)params; \ - packed_data; \ -}) -#define emit_glGetTexEnvfv(target, pname, params) { \ - mock_push(pack_glGetTexEnvfv(target, pname, params)); \ -} -#define test_glGetTexEnvfv(target, pname, params) { \ - glGetTexEnvfv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetTexEnvfv missing (no calls left)\n"); \ - } else if (packed->func != glGetTexEnvfv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetTexEnvfv_INDEX); \ - if (! packed) { \ - mock_errorf("glGetTexEnvfv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetTexEnvfv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetTexEnvfv(0x%04X, 0x%04X, %p);\n", target, pname, params); \ - } \ - } \ -} -#define pack_glGetTexEnviv(target, pname, params) ({ \ - glGetTexEnviv_INDEXED *packed_data = malloc(sizeof(glGetTexEnviv_INDEXED)); \ - packed_data->func = glGetTexEnviv_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLint *)params; \ - packed_data; \ -}) -#define emit_glGetTexEnviv(target, pname, params) { \ - mock_push(pack_glGetTexEnviv(target, pname, params)); \ -} -#define test_glGetTexEnviv(target, pname, params) { \ - glGetTexEnviv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetTexEnviv missing (no calls left)\n"); \ - } else if (packed->func != glGetTexEnviv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetTexEnviv_INDEX); \ - if (! packed) { \ - mock_errorf("glGetTexEnviv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetTexEnviv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetTexEnviv(0x%04X, 0x%04X, %p);\n", target, pname, params); \ - } \ - } \ -} -#define pack_glGetTexEnvxv(target, pname, params) ({ \ - glGetTexEnvxv_INDEXED *packed_data = malloc(sizeof(glGetTexEnvxv_INDEXED)); \ - packed_data->func = glGetTexEnvxv_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfixed *)params; \ - packed_data; \ -}) -#define emit_glGetTexEnvxv(target, pname, params) { \ - mock_push(pack_glGetTexEnvxv(target, pname, params)); \ -} -#define test_glGetTexEnvxv(target, pname, params) { \ - glGetTexEnvxv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetTexEnvxv missing (no calls left)\n"); \ - } else if (packed->func != glGetTexEnvxv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetTexEnvxv_INDEX); \ - if (! packed) { \ - mock_errorf("glGetTexEnvxv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetTexEnvxv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetTexEnvxv(0x%04X, 0x%04X, %p);\n", target, pname, params); \ - } \ - } \ -} -#define pack_glGetTexParameterfv(target, pname, params) ({ \ - glGetTexParameterfv_INDEXED *packed_data = malloc(sizeof(glGetTexParameterfv_INDEXED)); \ - packed_data->func = glGetTexParameterfv_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfloat *)params; \ - packed_data; \ -}) -#define emit_glGetTexParameterfv(target, pname, params) { \ - mock_push(pack_glGetTexParameterfv(target, pname, params)); \ -} -#define test_glGetTexParameterfv(target, pname, params) { \ - glGetTexParameterfv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetTexParameterfv missing (no calls left)\n"); \ - } else if (packed->func != glGetTexParameterfv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetTexParameterfv_INDEX); \ - if (! packed) { \ - mock_errorf("glGetTexParameterfv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetTexParameterfv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetTexParameterfv(0x%04X, 0x%04X, %p);\n", target, pname, params); \ - } \ - } \ -} -#define pack_glGetTexParameteriv(target, pname, params) ({ \ - glGetTexParameteriv_INDEXED *packed_data = malloc(sizeof(glGetTexParameteriv_INDEXED)); \ - packed_data->func = glGetTexParameteriv_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLint *)params; \ - packed_data; \ -}) -#define emit_glGetTexParameteriv(target, pname, params) { \ - mock_push(pack_glGetTexParameteriv(target, pname, params)); \ -} -#define test_glGetTexParameteriv(target, pname, params) { \ - glGetTexParameteriv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetTexParameteriv missing (no calls left)\n"); \ - } else if (packed->func != glGetTexParameteriv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetTexParameteriv_INDEX); \ - if (! packed) { \ - mock_errorf("glGetTexParameteriv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetTexParameteriv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetTexParameteriv(0x%04X, 0x%04X, %p);\n", target, pname, params); \ - } \ - } \ -} -#define pack_glGetTexParameterxv(target, pname, params) ({ \ - glGetTexParameterxv_INDEXED *packed_data = malloc(sizeof(glGetTexParameterxv_INDEXED)); \ - packed_data->func = glGetTexParameterxv_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfixed *)params; \ - packed_data; \ -}) -#define emit_glGetTexParameterxv(target, pname, params) { \ - mock_push(pack_glGetTexParameterxv(target, pname, params)); \ -} -#define test_glGetTexParameterxv(target, pname, params) { \ - glGetTexParameterxv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glGetTexParameterxv missing (no calls left)\n"); \ - } else if (packed->func != glGetTexParameterxv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glGetTexParameterxv_INDEX); \ - if (! packed) { \ - mock_errorf("glGetTexParameterxv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glGetTexParameterxv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glGetTexParameterxv(0x%04X, 0x%04X, %p);\n", target, pname, params); \ - } \ - } \ -} -#define pack_glHint(target, mode) ({ \ - glHint_INDEXED *packed_data = malloc(sizeof(glHint_INDEXED)); \ - packed_data->func = glHint_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)mode; \ - packed_data; \ -}) -#define emit_glHint(target, mode) { \ - mock_push(pack_glHint(target, mode)); \ -} -#define test_glHint(target, mode) { \ - glHint_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glHint missing (no calls left)\n"); \ - } else if (packed->func != glHint_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glHint_INDEX); \ - if (! packed) { \ - mock_errorf("glHint missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glHint:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != mode) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glHint(0x%04X, 0x%04X);\n", target, mode); \ - } \ - } \ -} -#define pack_glIsBuffer(buffer) ({ \ - glIsBuffer_INDEXED *packed_data = malloc(sizeof(glIsBuffer_INDEXED)); \ - packed_data->func = glIsBuffer_INDEX; \ - packed_data->args.a1 = (GLuint)buffer; \ - packed_data; \ -}) -#define emit_glIsBuffer(buffer) { \ - mock_push(pack_glIsBuffer(buffer)); \ -} -#define test_glIsBuffer(buffer) { \ - glIsBuffer_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glIsBuffer missing (no calls left)\n"); \ - } else if (packed->func != glIsBuffer_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glIsBuffer_INDEX); \ - if (! packed) { \ - mock_errorf("glIsBuffer missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glIsBuffer:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != buffer) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glIsBuffer(%u);\n", buffer); \ - } \ - } \ -} -#define pack_glIsEnabled(cap) ({ \ - glIsEnabled_INDEXED *packed_data = malloc(sizeof(glIsEnabled_INDEXED)); \ - packed_data->func = glIsEnabled_INDEX; \ - packed_data->args.a1 = (GLenum)cap; \ - packed_data; \ -}) -#define emit_glIsEnabled(cap) { \ - mock_push(pack_glIsEnabled(cap)); \ -} -#define test_glIsEnabled(cap) { \ - glIsEnabled_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glIsEnabled missing (no calls left)\n"); \ - } else if (packed->func != glIsEnabled_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glIsEnabled_INDEX); \ - if (! packed) { \ - mock_errorf("glIsEnabled missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glIsEnabled:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != cap) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glIsEnabled(0x%04X);\n", cap); \ - } \ - } \ -} -#define pack_glIsTexture(texture) ({ \ - glIsTexture_INDEXED *packed_data = malloc(sizeof(glIsTexture_INDEXED)); \ - packed_data->func = glIsTexture_INDEX; \ - packed_data->args.a1 = (GLuint)texture; \ - packed_data; \ -}) -#define emit_glIsTexture(texture) { \ - mock_push(pack_glIsTexture(texture)); \ -} -#define test_glIsTexture(texture) { \ - glIsTexture_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glIsTexture missing (no calls left)\n"); \ - } else if (packed->func != glIsTexture_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glIsTexture_INDEX); \ - if (! packed) { \ - mock_errorf("glIsTexture missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glIsTexture:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != texture) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glIsTexture(%u);\n", texture); \ - } \ - } \ -} -#define pack_glLightModelf(pname, param) ({ \ - glLightModelf_INDEXED *packed_data = malloc(sizeof(glLightModelf_INDEXED)); \ - packed_data->func = glLightModelf_INDEX; \ - packed_data->args.a1 = (GLenum)pname; \ - packed_data->args.a2 = (GLfloat)param; \ - packed_data; \ -}) -#define emit_glLightModelf(pname, param) { \ - mock_push(pack_glLightModelf(pname, param)); \ -} -#define test_glLightModelf(pname, param) { \ - glLightModelf_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glLightModelf missing (no calls left)\n"); \ - } else if (packed->func != glLightModelf_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glLightModelf_INDEX); \ - if (! packed) { \ - mock_errorf("glLightModelf missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glLightModelf:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != pname) { \ - match = 0; \ - } \ - if (packed->args.a2 - param >= 0.01) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glLightModelf(0x%04X, %0.2f);\n", pname, param); \ - } \ - } \ -} -#define pack_glLightModelfv(pname, params) ({ \ - glLightModelfv_INDEXED *packed_data = malloc(sizeof(glLightModelfv_INDEXED)); \ - packed_data->func = glLightModelfv_INDEX; \ - packed_data->args.a1 = (GLenum)pname; \ - packed_data->args.a2 = (GLfloat *)params; \ - packed_data; \ -}) -#define emit_glLightModelfv(pname, params) { \ - mock_push(pack_glLightModelfv(pname, params)); \ -} -#define test_glLightModelfv(pname, params) { \ - glLightModelfv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glLightModelfv missing (no calls left)\n"); \ - } else if (packed->func != glLightModelfv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glLightModelfv_INDEX); \ - if (! packed) { \ - mock_errorf("glLightModelfv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glLightModelfv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glLightModelfv(0x%04X, %p);\n", pname, params); \ - } \ - } \ -} -#define pack_glLightModelx(pname, param) ({ \ - glLightModelx_INDEXED *packed_data = malloc(sizeof(glLightModelx_INDEXED)); \ - packed_data->func = glLightModelx_INDEX; \ - packed_data->args.a1 = (GLenum)pname; \ - packed_data->args.a2 = (GLfixed)param; \ - packed_data; \ -}) -#define emit_glLightModelx(pname, param) { \ - mock_push(pack_glLightModelx(pname, param)); \ -} -#define test_glLightModelx(pname, param) { \ - glLightModelx_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glLightModelx missing (no calls left)\n"); \ - } else if (packed->func != glLightModelx_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glLightModelx_INDEX); \ - if (! packed) { \ - mock_errorf("glLightModelx missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glLightModelx:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != pname) { \ - match = 0; \ - } \ - if (packed->args.a2 != param) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glLightModelx(0x%04X, %p);\n", pname, param); \ - } \ - } \ -} -#define pack_glLightModelxv(pname, params) ({ \ - glLightModelxv_INDEXED *packed_data = malloc(sizeof(glLightModelxv_INDEXED)); \ - packed_data->func = glLightModelxv_INDEX; \ - packed_data->args.a1 = (GLenum)pname; \ - packed_data->args.a2 = (GLfixed *)params; \ - packed_data; \ -}) -#define emit_glLightModelxv(pname, params) { \ - mock_push(pack_glLightModelxv(pname, params)); \ -} -#define test_glLightModelxv(pname, params) { \ - glLightModelxv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glLightModelxv missing (no calls left)\n"); \ - } else if (packed->func != glLightModelxv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glLightModelxv_INDEX); \ - if (! packed) { \ - mock_errorf("glLightModelxv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glLightModelxv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glLightModelxv(0x%04X, %p);\n", pname, params); \ - } \ - } \ -} -#define pack_glLightf(light, pname, param) ({ \ - glLightf_INDEXED *packed_data = malloc(sizeof(glLightf_INDEXED)); \ - packed_data->func = glLightf_INDEX; \ - packed_data->args.a1 = (GLenum)light; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfloat)param; \ - packed_data; \ -}) -#define emit_glLightf(light, pname, param) { \ - mock_push(pack_glLightf(light, pname, param)); \ -} -#define test_glLightf(light, pname, param) { \ - glLightf_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glLightf missing (no calls left)\n"); \ - } else if (packed->func != glLightf_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glLightf_INDEX); \ - if (! packed) { \ - mock_errorf("glLightf missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glLightf:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != light) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - if (packed->args.a3 - param >= 0.01) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glLightf(0x%04X, 0x%04X, %0.2f);\n", light, pname, param); \ - } \ - } \ -} -#define pack_glLightfv(light, pname, params) ({ \ - glLightfv_INDEXED *packed_data = malloc(sizeof(glLightfv_INDEXED)); \ - packed_data->func = glLightfv_INDEX; \ - packed_data->args.a1 = (GLenum)light; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfloat *)params; \ - packed_data; \ -}) -#define emit_glLightfv(light, pname, params) { \ - mock_push(pack_glLightfv(light, pname, params)); \ -} -#define test_glLightfv(light, pname, params) { \ - glLightfv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glLightfv missing (no calls left)\n"); \ - } else if (packed->func != glLightfv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glLightfv_INDEX); \ - if (! packed) { \ - mock_errorf("glLightfv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glLightfv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != light) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glLightfv(0x%04X, 0x%04X, %p);\n", light, pname, params); \ - } \ - } \ -} -#define pack_glLightx(light, pname, param) ({ \ - glLightx_INDEXED *packed_data = malloc(sizeof(glLightx_INDEXED)); \ - packed_data->func = glLightx_INDEX; \ - packed_data->args.a1 = (GLenum)light; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfixed)param; \ - packed_data; \ -}) -#define emit_glLightx(light, pname, param) { \ - mock_push(pack_glLightx(light, pname, param)); \ -} -#define test_glLightx(light, pname, param) { \ - glLightx_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glLightx missing (no calls left)\n"); \ - } else if (packed->func != glLightx_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glLightx_INDEX); \ - if (! packed) { \ - mock_errorf("glLightx missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glLightx:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != light) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - if (packed->args.a3 != param) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glLightx(0x%04X, 0x%04X, %p);\n", light, pname, param); \ - } \ - } \ -} -#define pack_glLightxv(light, pname, params) ({ \ - glLightxv_INDEXED *packed_data = malloc(sizeof(glLightxv_INDEXED)); \ - packed_data->func = glLightxv_INDEX; \ - packed_data->args.a1 = (GLenum)light; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfixed *)params; \ - packed_data; \ -}) -#define emit_glLightxv(light, pname, params) { \ - mock_push(pack_glLightxv(light, pname, params)); \ -} -#define test_glLightxv(light, pname, params) { \ - glLightxv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glLightxv missing (no calls left)\n"); \ - } else if (packed->func != glLightxv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glLightxv_INDEX); \ - if (! packed) { \ - mock_errorf("glLightxv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glLightxv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != light) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glLightxv(0x%04X, 0x%04X, %p);\n", light, pname, params); \ - } \ - } \ -} -#define pack_glLineWidth(width) ({ \ - glLineWidth_INDEXED *packed_data = malloc(sizeof(glLineWidth_INDEXED)); \ - packed_data->func = glLineWidth_INDEX; \ - packed_data->args.a1 = (GLfloat)width; \ - packed_data; \ -}) -#define emit_glLineWidth(width) { \ - mock_push(pack_glLineWidth(width)); \ -} -#define test_glLineWidth(width) { \ - glLineWidth_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glLineWidth missing (no calls left)\n"); \ - } else if (packed->func != glLineWidth_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glLineWidth_INDEX); \ - if (! packed) { \ - mock_errorf("glLineWidth missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glLineWidth:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 - width >= 0.01) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glLineWidth(%0.2f);\n", width); \ - } \ - } \ -} -#define pack_glLineWidthx(width) ({ \ - glLineWidthx_INDEXED *packed_data = malloc(sizeof(glLineWidthx_INDEXED)); \ - packed_data->func = glLineWidthx_INDEX; \ - packed_data->args.a1 = (GLfixed)width; \ - packed_data; \ -}) -#define emit_glLineWidthx(width) { \ - mock_push(pack_glLineWidthx(width)); \ -} -#define test_glLineWidthx(width) { \ - glLineWidthx_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glLineWidthx missing (no calls left)\n"); \ - } else if (packed->func != glLineWidthx_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glLineWidthx_INDEX); \ - if (! packed) { \ - mock_errorf("glLineWidthx missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glLineWidthx:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != width) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glLineWidthx(%p);\n", width); \ - } \ - } \ -} -#define pack_glLoadIdentity() ({ \ - glLoadIdentity_INDEXED *packed_data = malloc(sizeof(glLoadIdentity_INDEXED)); \ - packed_data->func = glLoadIdentity_INDEX; \ - packed_data; \ -}) -#define emit_glLoadIdentity() { \ - mock_push(pack_glLoadIdentity()); \ -} -#define test_glLoadIdentity() { \ - glLoadIdentity_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glLoadIdentity missing (no calls left)\n"); \ - } else if (packed->func != glLoadIdentity_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glLoadIdentity_INDEX); \ - if (! packed) { \ - mock_errorf("glLoadIdentity missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glLoadIdentity:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glLoadIdentity();\n", ); \ - } \ - } \ -} -#define pack_glLoadMatrixf(m) ({ \ - glLoadMatrixf_INDEXED *packed_data = malloc(sizeof(glLoadMatrixf_INDEXED)); \ - packed_data->func = glLoadMatrixf_INDEX; \ - packed_data->args.a1 = (GLfloat *)m; \ - packed_data; \ -}) -#define emit_glLoadMatrixf(m) { \ - mock_push(pack_glLoadMatrixf(m)); \ -} -#define test_glLoadMatrixf(m) { \ - glLoadMatrixf_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glLoadMatrixf missing (no calls left)\n"); \ - } else if (packed->func != glLoadMatrixf_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glLoadMatrixf_INDEX); \ - if (! packed) { \ - mock_errorf("glLoadMatrixf missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glLoadMatrixf:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - void *a = packed->args.a1, *b = m; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(m)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glLoadMatrixf(%p);\n", m); \ - } \ - } \ -} -#define pack_glLoadMatrixx(m) ({ \ - glLoadMatrixx_INDEXED *packed_data = malloc(sizeof(glLoadMatrixx_INDEXED)); \ - packed_data->func = glLoadMatrixx_INDEX; \ - packed_data->args.a1 = (GLfixed *)m; \ - packed_data; \ -}) -#define emit_glLoadMatrixx(m) { \ - mock_push(pack_glLoadMatrixx(m)); \ -} -#define test_glLoadMatrixx(m) { \ - glLoadMatrixx_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glLoadMatrixx missing (no calls left)\n"); \ - } else if (packed->func != glLoadMatrixx_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glLoadMatrixx_INDEX); \ - if (! packed) { \ - mock_errorf("glLoadMatrixx missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glLoadMatrixx:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - void *a = packed->args.a1, *b = m; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(m)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glLoadMatrixx(%p);\n", m); \ - } \ - } \ -} -#define pack_glLogicOp(opcode) ({ \ - glLogicOp_INDEXED *packed_data = malloc(sizeof(glLogicOp_INDEXED)); \ - packed_data->func = glLogicOp_INDEX; \ - packed_data->args.a1 = (GLenum)opcode; \ - packed_data; \ -}) -#define emit_glLogicOp(opcode) { \ - mock_push(pack_glLogicOp(opcode)); \ -} -#define test_glLogicOp(opcode) { \ - glLogicOp_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glLogicOp missing (no calls left)\n"); \ - } else if (packed->func != glLogicOp_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glLogicOp_INDEX); \ - if (! packed) { \ - mock_errorf("glLogicOp missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glLogicOp:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != opcode) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glLogicOp(0x%04X);\n", opcode); \ - } \ - } \ -} -#define pack_glMaterialf(face, pname, param) ({ \ - glMaterialf_INDEXED *packed_data = malloc(sizeof(glMaterialf_INDEXED)); \ - packed_data->func = glMaterialf_INDEX; \ - packed_data->args.a1 = (GLenum)face; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfloat)param; \ - packed_data; \ -}) -#define emit_glMaterialf(face, pname, param) { \ - mock_push(pack_glMaterialf(face, pname, param)); \ -} -#define test_glMaterialf(face, pname, param) { \ - glMaterialf_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glMaterialf missing (no calls left)\n"); \ - } else if (packed->func != glMaterialf_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glMaterialf_INDEX); \ - if (! packed) { \ - mock_errorf("glMaterialf missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glMaterialf:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != face) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - if (packed->args.a3 - param >= 0.01) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glMaterialf(0x%04X, 0x%04X, %0.2f);\n", face, pname, param); \ - } \ - } \ -} -#define pack_glMaterialfv(face, pname, params) ({ \ - glMaterialfv_INDEXED *packed_data = malloc(sizeof(glMaterialfv_INDEXED)); \ - packed_data->func = glMaterialfv_INDEX; \ - packed_data->args.a1 = (GLenum)face; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfloat *)params; \ - packed_data; \ -}) -#define emit_glMaterialfv(face, pname, params) { \ - mock_push(pack_glMaterialfv(face, pname, params)); \ -} -#define test_glMaterialfv(face, pname, params) { \ - glMaterialfv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glMaterialfv missing (no calls left)\n"); \ - } else if (packed->func != glMaterialfv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glMaterialfv_INDEX); \ - if (! packed) { \ - mock_errorf("glMaterialfv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glMaterialfv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != face) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glMaterialfv(0x%04X, 0x%04X, %p);\n", face, pname, params); \ - } \ - } \ -} -#define pack_glMaterialx(face, pname, param) ({ \ - glMaterialx_INDEXED *packed_data = malloc(sizeof(glMaterialx_INDEXED)); \ - packed_data->func = glMaterialx_INDEX; \ - packed_data->args.a1 = (GLenum)face; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfixed)param; \ - packed_data; \ -}) -#define emit_glMaterialx(face, pname, param) { \ - mock_push(pack_glMaterialx(face, pname, param)); \ -} -#define test_glMaterialx(face, pname, param) { \ - glMaterialx_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glMaterialx missing (no calls left)\n"); \ - } else if (packed->func != glMaterialx_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glMaterialx_INDEX); \ - if (! packed) { \ - mock_errorf("glMaterialx missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glMaterialx:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != face) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - if (packed->args.a3 != param) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glMaterialx(0x%04X, 0x%04X, %p);\n", face, pname, param); \ - } \ - } \ -} -#define pack_glMaterialxv(face, pname, params) ({ \ - glMaterialxv_INDEXED *packed_data = malloc(sizeof(glMaterialxv_INDEXED)); \ - packed_data->func = glMaterialxv_INDEX; \ - packed_data->args.a1 = (GLenum)face; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfixed *)params; \ - packed_data; \ -}) -#define emit_glMaterialxv(face, pname, params) { \ - mock_push(pack_glMaterialxv(face, pname, params)); \ -} -#define test_glMaterialxv(face, pname, params) { \ - glMaterialxv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glMaterialxv missing (no calls left)\n"); \ - } else if (packed->func != glMaterialxv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glMaterialxv_INDEX); \ - if (! packed) { \ - mock_errorf("glMaterialxv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glMaterialxv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != face) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glMaterialxv(0x%04X, 0x%04X, %p);\n", face, pname, params); \ - } \ - } \ -} -#define pack_glMatrixMode(mode) ({ \ - glMatrixMode_INDEXED *packed_data = malloc(sizeof(glMatrixMode_INDEXED)); \ - packed_data->func = glMatrixMode_INDEX; \ - packed_data->args.a1 = (GLenum)mode; \ - packed_data; \ -}) -#define emit_glMatrixMode(mode) { \ - mock_push(pack_glMatrixMode(mode)); \ -} -#define test_glMatrixMode(mode) { \ - glMatrixMode_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glMatrixMode missing (no calls left)\n"); \ - } else if (packed->func != glMatrixMode_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glMatrixMode_INDEX); \ - if (! packed) { \ - mock_errorf("glMatrixMode missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glMatrixMode:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != mode) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glMatrixMode(0x%04X);\n", mode); \ - } \ - } \ -} -#define pack_glMultMatrixf(m) ({ \ - glMultMatrixf_INDEXED *packed_data = malloc(sizeof(glMultMatrixf_INDEXED)); \ - packed_data->func = glMultMatrixf_INDEX; \ - packed_data->args.a1 = (GLfloat *)m; \ - packed_data; \ -}) -#define emit_glMultMatrixf(m) { \ - mock_push(pack_glMultMatrixf(m)); \ -} -#define test_glMultMatrixf(m) { \ - glMultMatrixf_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glMultMatrixf missing (no calls left)\n"); \ - } else if (packed->func != glMultMatrixf_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glMultMatrixf_INDEX); \ - if (! packed) { \ - mock_errorf("glMultMatrixf missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glMultMatrixf:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - void *a = packed->args.a1, *b = m; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(m)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glMultMatrixf(%p);\n", m); \ - } \ - } \ -} -#define pack_glMultMatrixx(m) ({ \ - glMultMatrixx_INDEXED *packed_data = malloc(sizeof(glMultMatrixx_INDEXED)); \ - packed_data->func = glMultMatrixx_INDEX; \ - packed_data->args.a1 = (GLfixed *)m; \ - packed_data; \ -}) -#define emit_glMultMatrixx(m) { \ - mock_push(pack_glMultMatrixx(m)); \ -} -#define test_glMultMatrixx(m) { \ - glMultMatrixx_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glMultMatrixx missing (no calls left)\n"); \ - } else if (packed->func != glMultMatrixx_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glMultMatrixx_INDEX); \ - if (! packed) { \ - mock_errorf("glMultMatrixx missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glMultMatrixx:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - void *a = packed->args.a1, *b = m; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(m)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glMultMatrixx(%p);\n", m); \ - } \ - } \ -} -#define pack_glMultiTexCoord4f(target, s, t, r, q) ({ \ - glMultiTexCoord4f_INDEXED *packed_data = malloc(sizeof(glMultiTexCoord4f_INDEXED)); \ - packed_data->func = glMultiTexCoord4f_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLfloat)s; \ - packed_data->args.a3 = (GLfloat)t; \ - packed_data->args.a4 = (GLfloat)r; \ - packed_data->args.a5 = (GLfloat)q; \ - packed_data; \ -}) -#define emit_glMultiTexCoord4f(target, s, t, r, q) { \ - mock_push(pack_glMultiTexCoord4f(target, s, t, r, q)); \ -} -#define test_glMultiTexCoord4f(target, s, t, r, q) { \ - glMultiTexCoord4f_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glMultiTexCoord4f missing (no calls left)\n"); \ - } else if (packed->func != glMultiTexCoord4f_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glMultiTexCoord4f_INDEX); \ - if (! packed) { \ - mock_errorf("glMultiTexCoord4f missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glMultiTexCoord4f:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 - s >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a3 - t >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a4 - r >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a5 - q >= 0.01) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glMultiTexCoord4f(0x%04X, %0.2f, %0.2f, %0.2f, %0.2f);\n", target, s, t, r, q); \ - } \ - } \ -} -#define pack_glMultiTexCoord4x(target, s, t, r, q) ({ \ - glMultiTexCoord4x_INDEXED *packed_data = malloc(sizeof(glMultiTexCoord4x_INDEXED)); \ - packed_data->func = glMultiTexCoord4x_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLfixed)s; \ - packed_data->args.a3 = (GLfixed)t; \ - packed_data->args.a4 = (GLfixed)r; \ - packed_data->args.a5 = (GLfixed)q; \ - packed_data; \ -}) -#define emit_glMultiTexCoord4x(target, s, t, r, q) { \ - mock_push(pack_glMultiTexCoord4x(target, s, t, r, q)); \ -} -#define test_glMultiTexCoord4x(target, s, t, r, q) { \ - glMultiTexCoord4x_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glMultiTexCoord4x missing (no calls left)\n"); \ - } else if (packed->func != glMultiTexCoord4x_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glMultiTexCoord4x_INDEX); \ - if (! packed) { \ - mock_errorf("glMultiTexCoord4x missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glMultiTexCoord4x:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != s) { \ - match = 0; \ - } \ - if (packed->args.a3 != t) { \ - match = 0; \ - } \ - if (packed->args.a4 != r) { \ - match = 0; \ - } \ - if (packed->args.a5 != q) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glMultiTexCoord4x(0x%04X, %p, %p, %p, %p);\n", target, s, t, r, q); \ - } \ - } \ -} -#define pack_glNormal3f(nx, ny, nz) ({ \ - glNormal3f_INDEXED *packed_data = malloc(sizeof(glNormal3f_INDEXED)); \ - packed_data->func = glNormal3f_INDEX; \ - packed_data->args.a1 = (GLfloat)nx; \ - packed_data->args.a2 = (GLfloat)ny; \ - packed_data->args.a3 = (GLfloat)nz; \ - packed_data; \ -}) -#define emit_glNormal3f(nx, ny, nz) { \ - mock_push(pack_glNormal3f(nx, ny, nz)); \ -} -#define test_glNormal3f(nx, ny, nz) { \ - glNormal3f_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glNormal3f missing (no calls left)\n"); \ - } else if (packed->func != glNormal3f_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glNormal3f_INDEX); \ - if (! packed) { \ - mock_errorf("glNormal3f missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glNormal3f:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 - nx >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a2 - ny >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a3 - nz >= 0.01) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glNormal3f(%0.2f, %0.2f, %0.2f);\n", nx, ny, nz); \ - } \ - } \ -} -#define pack_glNormal3x(nx, ny, nz) ({ \ - glNormal3x_INDEXED *packed_data = malloc(sizeof(glNormal3x_INDEXED)); \ - packed_data->func = glNormal3x_INDEX; \ - packed_data->args.a1 = (GLfixed)nx; \ - packed_data->args.a2 = (GLfixed)ny; \ - packed_data->args.a3 = (GLfixed)nz; \ - packed_data; \ -}) -#define emit_glNormal3x(nx, ny, nz) { \ - mock_push(pack_glNormal3x(nx, ny, nz)); \ -} -#define test_glNormal3x(nx, ny, nz) { \ - glNormal3x_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glNormal3x missing (no calls left)\n"); \ - } else if (packed->func != glNormal3x_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glNormal3x_INDEX); \ - if (! packed) { \ - mock_errorf("glNormal3x missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glNormal3x:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != nx) { \ - match = 0; \ - } \ - if (packed->args.a2 != ny) { \ - match = 0; \ - } \ - if (packed->args.a3 != nz) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glNormal3x(%p, %p, %p);\n", nx, ny, nz); \ - } \ - } \ -} -#define pack_glNormalPointer(type, stride, pointer) ({ \ - glNormalPointer_INDEXED *packed_data = malloc(sizeof(glNormalPointer_INDEXED)); \ - packed_data->func = glNormalPointer_INDEX; \ - packed_data->args.a1 = (GLenum)type; \ - packed_data->args.a2 = (GLsizei)stride; \ - packed_data->args.a3 = (GLvoid *)pointer; \ - packed_data; \ -}) -#define emit_glNormalPointer(type, stride, pointer) { \ - mock_push(pack_glNormalPointer(type, stride, pointer)); \ -} -#define test_glNormalPointer(type, stride, pointer) { \ - glNormalPointer_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glNormalPointer missing (no calls left)\n"); \ - } else if (packed->func != glNormalPointer_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glNormalPointer_INDEX); \ - if (! packed) { \ - mock_errorf("glNormalPointer missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glNormalPointer:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != type) { \ - match = 0; \ - } \ - if (packed->args.a2 != stride) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = pointer; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(pointer)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glNormalPointer(0x%04X, %d, %p);\n", type, stride, pointer); \ - } \ - } \ -} -#define pack_glOrthof(left, right, bottom, top, near, far) ({ \ - glOrthof_INDEXED *packed_data = malloc(sizeof(glOrthof_INDEXED)); \ - packed_data->func = glOrthof_INDEX; \ - packed_data->args.a1 = (GLfloat)left; \ - packed_data->args.a2 = (GLfloat)right; \ - packed_data->args.a3 = (GLfloat)bottom; \ - packed_data->args.a4 = (GLfloat)top; \ - packed_data->args.a5 = (GLfloat)near; \ - packed_data->args.a6 = (GLfloat)far; \ - packed_data; \ -}) -#define emit_glOrthof(left, right, bottom, top, near, far) { \ - mock_push(pack_glOrthof(left, right, bottom, top, near, far)); \ -} -#define test_glOrthof(left, right, bottom, top, near, far) { \ - glOrthof_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glOrthof missing (no calls left)\n"); \ - } else if (packed->func != glOrthof_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glOrthof_INDEX); \ - if (! packed) { \ - mock_errorf("glOrthof missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glOrthof:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 - left >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a2 - right >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a3 - bottom >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a4 - top >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a5 - near >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a6 - far >= 0.01) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glOrthof(%0.2f, %0.2f, %0.2f, %0.2f, %0.2f, %0.2f);\n", left, right, bottom, top, near, far); \ - } \ - } \ -} -#define pack_glOrthox(left, right, bottom, top, near, far) ({ \ - glOrthox_INDEXED *packed_data = malloc(sizeof(glOrthox_INDEXED)); \ - packed_data->func = glOrthox_INDEX; \ - packed_data->args.a1 = (GLfixed)left; \ - packed_data->args.a2 = (GLfixed)right; \ - packed_data->args.a3 = (GLfixed)bottom; \ - packed_data->args.a4 = (GLfixed)top; \ - packed_data->args.a5 = (GLfixed)near; \ - packed_data->args.a6 = (GLfixed)far; \ - packed_data; \ -}) -#define emit_glOrthox(left, right, bottom, top, near, far) { \ - mock_push(pack_glOrthox(left, right, bottom, top, near, far)); \ -} -#define test_glOrthox(left, right, bottom, top, near, far) { \ - glOrthox_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glOrthox missing (no calls left)\n"); \ - } else if (packed->func != glOrthox_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glOrthox_INDEX); \ - if (! packed) { \ - mock_errorf("glOrthox missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glOrthox:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != left) { \ - match = 0; \ - } \ - if (packed->args.a2 != right) { \ - match = 0; \ - } \ - if (packed->args.a3 != bottom) { \ - match = 0; \ - } \ - if (packed->args.a4 != top) { \ - match = 0; \ - } \ - if (packed->args.a5 != near) { \ - match = 0; \ - } \ - if (packed->args.a6 != far) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glOrthox(%p, %p, %p, %p, %p, %p);\n", left, right, bottom, top, near, far); \ - } \ - } \ -} -#define pack_glPixelStorei(pname, param) ({ \ - glPixelStorei_INDEXED *packed_data = malloc(sizeof(glPixelStorei_INDEXED)); \ - packed_data->func = glPixelStorei_INDEX; \ - packed_data->args.a1 = (GLenum)pname; \ - packed_data->args.a2 = (GLint)param; \ - packed_data; \ -}) -#define emit_glPixelStorei(pname, param) { \ - mock_push(pack_glPixelStorei(pname, param)); \ -} -#define test_glPixelStorei(pname, param) { \ - glPixelStorei_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glPixelStorei missing (no calls left)\n"); \ - } else if (packed->func != glPixelStorei_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glPixelStorei_INDEX); \ - if (! packed) { \ - mock_errorf("glPixelStorei missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glPixelStorei:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != pname) { \ - match = 0; \ - } \ - if (packed->args.a2 != param) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glPixelStorei(0x%04X, %d);\n", pname, param); \ - } \ - } \ -} -#define pack_glPointParameterf(pname, param) ({ \ - glPointParameterf_INDEXED *packed_data = malloc(sizeof(glPointParameterf_INDEXED)); \ - packed_data->func = glPointParameterf_INDEX; \ - packed_data->args.a1 = (GLenum)pname; \ - packed_data->args.a2 = (GLfloat)param; \ - packed_data; \ -}) -#define emit_glPointParameterf(pname, param) { \ - mock_push(pack_glPointParameterf(pname, param)); \ -} -#define test_glPointParameterf(pname, param) { \ - glPointParameterf_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glPointParameterf missing (no calls left)\n"); \ - } else if (packed->func != glPointParameterf_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glPointParameterf_INDEX); \ - if (! packed) { \ - mock_errorf("glPointParameterf missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glPointParameterf:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != pname) { \ - match = 0; \ - } \ - if (packed->args.a2 - param >= 0.01) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glPointParameterf(0x%04X, %0.2f);\n", pname, param); \ - } \ - } \ -} -#define pack_glPointParameterfv(pname, params) ({ \ - glPointParameterfv_INDEXED *packed_data = malloc(sizeof(glPointParameterfv_INDEXED)); \ - packed_data->func = glPointParameterfv_INDEX; \ - packed_data->args.a1 = (GLenum)pname; \ - packed_data->args.a2 = (GLfloat *)params; \ - packed_data; \ -}) -#define emit_glPointParameterfv(pname, params) { \ - mock_push(pack_glPointParameterfv(pname, params)); \ -} -#define test_glPointParameterfv(pname, params) { \ - glPointParameterfv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glPointParameterfv missing (no calls left)\n"); \ - } else if (packed->func != glPointParameterfv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glPointParameterfv_INDEX); \ - if (! packed) { \ - mock_errorf("glPointParameterfv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glPointParameterfv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glPointParameterfv(0x%04X, %p);\n", pname, params); \ - } \ - } \ -} -#define pack_glPointParameterx(pname, param) ({ \ - glPointParameterx_INDEXED *packed_data = malloc(sizeof(glPointParameterx_INDEXED)); \ - packed_data->func = glPointParameterx_INDEX; \ - packed_data->args.a1 = (GLenum)pname; \ - packed_data->args.a2 = (GLfixed)param; \ - packed_data; \ -}) -#define emit_glPointParameterx(pname, param) { \ - mock_push(pack_glPointParameterx(pname, param)); \ -} -#define test_glPointParameterx(pname, param) { \ - glPointParameterx_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glPointParameterx missing (no calls left)\n"); \ - } else if (packed->func != glPointParameterx_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glPointParameterx_INDEX); \ - if (! packed) { \ - mock_errorf("glPointParameterx missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glPointParameterx:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != pname) { \ - match = 0; \ - } \ - if (packed->args.a2 != param) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glPointParameterx(0x%04X, %p);\n", pname, param); \ - } \ - } \ -} -#define pack_glPointParameterxv(pname, params) ({ \ - glPointParameterxv_INDEXED *packed_data = malloc(sizeof(glPointParameterxv_INDEXED)); \ - packed_data->func = glPointParameterxv_INDEX; \ - packed_data->args.a1 = (GLenum)pname; \ - packed_data->args.a2 = (GLfixed *)params; \ - packed_data; \ -}) -#define emit_glPointParameterxv(pname, params) { \ - mock_push(pack_glPointParameterxv(pname, params)); \ -} -#define test_glPointParameterxv(pname, params) { \ - glPointParameterxv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glPointParameterxv missing (no calls left)\n"); \ - } else if (packed->func != glPointParameterxv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glPointParameterxv_INDEX); \ - if (! packed) { \ - mock_errorf("glPointParameterxv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glPointParameterxv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a2, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glPointParameterxv(0x%04X, %p);\n", pname, params); \ - } \ - } \ -} -#define pack_glPointSize(size) ({ \ - glPointSize_INDEXED *packed_data = malloc(sizeof(glPointSize_INDEXED)); \ - packed_data->func = glPointSize_INDEX; \ - packed_data->args.a1 = (GLfloat)size; \ - packed_data; \ -}) -#define emit_glPointSize(size) { \ - mock_push(pack_glPointSize(size)); \ -} -#define test_glPointSize(size) { \ - glPointSize_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glPointSize missing (no calls left)\n"); \ - } else if (packed->func != glPointSize_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glPointSize_INDEX); \ - if (! packed) { \ - mock_errorf("glPointSize missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glPointSize:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 - size >= 0.01) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glPointSize(%0.2f);\n", size); \ - } \ - } \ -} -#define pack_glPointSizePointerOES(type, stride, pointer) ({ \ - glPointSizePointerOES_INDEXED *packed_data = malloc(sizeof(glPointSizePointerOES_INDEXED)); \ - packed_data->func = glPointSizePointerOES_INDEX; \ - packed_data->args.a1 = (GLenum)type; \ - packed_data->args.a2 = (GLsizei)stride; \ - packed_data->args.a3 = (GLvoid *)pointer; \ - packed_data; \ -}) -#define emit_glPointSizePointerOES(type, stride, pointer) { \ - mock_push(pack_glPointSizePointerOES(type, stride, pointer)); \ -} -#define test_glPointSizePointerOES(type, stride, pointer) { \ - glPointSizePointerOES_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glPointSizePointerOES missing (no calls left)\n"); \ - } else if (packed->func != glPointSizePointerOES_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glPointSizePointerOES_INDEX); \ - if (! packed) { \ - mock_errorf("glPointSizePointerOES missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glPointSizePointerOES:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != type) { \ - match = 0; \ - } \ - if (packed->args.a2 != stride) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = pointer; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(pointer)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glPointSizePointerOES(0x%04X, %d, %p);\n", type, stride, pointer); \ - } \ - } \ -} -#define pack_glPointSizex(size) ({ \ - glPointSizex_INDEXED *packed_data = malloc(sizeof(glPointSizex_INDEXED)); \ - packed_data->func = glPointSizex_INDEX; \ - packed_data->args.a1 = (GLfixed)size; \ - packed_data; \ -}) -#define emit_glPointSizex(size) { \ - mock_push(pack_glPointSizex(size)); \ -} -#define test_glPointSizex(size) { \ - glPointSizex_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glPointSizex missing (no calls left)\n"); \ - } else if (packed->func != glPointSizex_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glPointSizex_INDEX); \ - if (! packed) { \ - mock_errorf("glPointSizex missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glPointSizex:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != size) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glPointSizex(%p);\n", size); \ - } \ - } \ -} -#define pack_glPolygonOffset(factor, units) ({ \ - glPolygonOffset_INDEXED *packed_data = malloc(sizeof(glPolygonOffset_INDEXED)); \ - packed_data->func = glPolygonOffset_INDEX; \ - packed_data->args.a1 = (GLfloat)factor; \ - packed_data->args.a2 = (GLfloat)units; \ - packed_data; \ -}) -#define emit_glPolygonOffset(factor, units) { \ - mock_push(pack_glPolygonOffset(factor, units)); \ -} -#define test_glPolygonOffset(factor, units) { \ - glPolygonOffset_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glPolygonOffset missing (no calls left)\n"); \ - } else if (packed->func != glPolygonOffset_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glPolygonOffset_INDEX); \ - if (! packed) { \ - mock_errorf("glPolygonOffset missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glPolygonOffset:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 - factor >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a2 - units >= 0.01) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glPolygonOffset(%0.2f, %0.2f);\n", factor, units); \ - } \ - } \ -} -#define pack_glPolygonOffsetx(factor, units) ({ \ - glPolygonOffsetx_INDEXED *packed_data = malloc(sizeof(glPolygonOffsetx_INDEXED)); \ - packed_data->func = glPolygonOffsetx_INDEX; \ - packed_data->args.a1 = (GLfixed)factor; \ - packed_data->args.a2 = (GLfixed)units; \ - packed_data; \ -}) -#define emit_glPolygonOffsetx(factor, units) { \ - mock_push(pack_glPolygonOffsetx(factor, units)); \ -} -#define test_glPolygonOffsetx(factor, units) { \ - glPolygonOffsetx_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glPolygonOffsetx missing (no calls left)\n"); \ - } else if (packed->func != glPolygonOffsetx_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glPolygonOffsetx_INDEX); \ - if (! packed) { \ - mock_errorf("glPolygonOffsetx missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glPolygonOffsetx:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != factor) { \ - match = 0; \ - } \ - if (packed->args.a2 != units) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glPolygonOffsetx(%p, %p);\n", factor, units); \ - } \ - } \ -} -#define pack_glPopMatrix() ({ \ - glPopMatrix_INDEXED *packed_data = malloc(sizeof(glPopMatrix_INDEXED)); \ - packed_data->func = glPopMatrix_INDEX; \ - packed_data; \ -}) -#define emit_glPopMatrix() { \ - mock_push(pack_glPopMatrix()); \ -} -#define test_glPopMatrix() { \ - glPopMatrix_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glPopMatrix missing (no calls left)\n"); \ - } else if (packed->func != glPopMatrix_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glPopMatrix_INDEX); \ - if (! packed) { \ - mock_errorf("glPopMatrix missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glPopMatrix:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glPopMatrix();\n", ); \ - } \ - } \ -} -#define pack_glPushMatrix() ({ \ - glPushMatrix_INDEXED *packed_data = malloc(sizeof(glPushMatrix_INDEXED)); \ - packed_data->func = glPushMatrix_INDEX; \ - packed_data; \ -}) -#define emit_glPushMatrix() { \ - mock_push(pack_glPushMatrix()); \ -} -#define test_glPushMatrix() { \ - glPushMatrix_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glPushMatrix missing (no calls left)\n"); \ - } else if (packed->func != glPushMatrix_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glPushMatrix_INDEX); \ - if (! packed) { \ - mock_errorf("glPushMatrix missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glPushMatrix:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glPushMatrix();\n", ); \ - } \ - } \ -} -#define pack_glReadPixels(x, y, width, height, format, type, pixels) ({ \ - glReadPixels_INDEXED *packed_data = malloc(sizeof(glReadPixels_INDEXED)); \ - packed_data->func = glReadPixels_INDEX; \ - packed_data->args.a1 = (GLint)x; \ - packed_data->args.a2 = (GLint)y; \ - packed_data->args.a3 = (GLsizei)width; \ - packed_data->args.a4 = (GLsizei)height; \ - packed_data->args.a5 = (GLenum)format; \ - packed_data->args.a6 = (GLenum)type; \ - packed_data->args.a7 = (GLvoid *)pixels; \ - packed_data; \ -}) -#define emit_glReadPixels(x, y, width, height, format, type, pixels) { \ - mock_push(pack_glReadPixels(x, y, width, height, format, type, pixels)); \ -} -#define test_glReadPixels(x, y, width, height, format, type, pixels) { \ - glReadPixels_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glReadPixels missing (no calls left)\n"); \ - } else if (packed->func != glReadPixels_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glReadPixels_INDEX); \ - if (! packed) { \ - mock_errorf("glReadPixels missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glReadPixels:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != x) { \ - match = 0; \ - } \ - if (packed->args.a2 != y) { \ - match = 0; \ - } \ - if (packed->args.a3 != width) { \ - match = 0; \ - } \ - if (packed->args.a4 != height) { \ - match = 0; \ - } \ - if (packed->args.a5 != format) { \ - match = 0; \ - } \ - if (packed->args.a6 != type) { \ - match = 0; \ - } \ - void *a = packed->args.a7, *b = pixels; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(pixels)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glReadPixels(%d, %d, %d, %d, 0x%04X, 0x%04X, %p);\n", x, y, width, height, format, type, pixels); \ - } \ - } \ -} -#define pack_glRotatef(angle, x, y, z) ({ \ - glRotatef_INDEXED *packed_data = malloc(sizeof(glRotatef_INDEXED)); \ - packed_data->func = glRotatef_INDEX; \ - packed_data->args.a1 = (GLfloat)angle; \ - packed_data->args.a2 = (GLfloat)x; \ - packed_data->args.a3 = (GLfloat)y; \ - packed_data->args.a4 = (GLfloat)z; \ - packed_data; \ -}) -#define emit_glRotatef(angle, x, y, z) { \ - mock_push(pack_glRotatef(angle, x, y, z)); \ -} -#define test_glRotatef(angle, x, y, z) { \ - glRotatef_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glRotatef missing (no calls left)\n"); \ - } else if (packed->func != glRotatef_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glRotatef_INDEX); \ - if (! packed) { \ - mock_errorf("glRotatef missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glRotatef:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 - angle >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a2 - x >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a3 - y >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a4 - z >= 0.01) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glRotatef(%0.2f, %0.2f, %0.2f, %0.2f);\n", angle, x, y, z); \ - } \ - } \ -} -#define pack_glRotatex(angle, x, y, z) ({ \ - glRotatex_INDEXED *packed_data = malloc(sizeof(glRotatex_INDEXED)); \ - packed_data->func = glRotatex_INDEX; \ - packed_data->args.a1 = (GLfixed)angle; \ - packed_data->args.a2 = (GLfixed)x; \ - packed_data->args.a3 = (GLfixed)y; \ - packed_data->args.a4 = (GLfixed)z; \ - packed_data; \ -}) -#define emit_glRotatex(angle, x, y, z) { \ - mock_push(pack_glRotatex(angle, x, y, z)); \ -} -#define test_glRotatex(angle, x, y, z) { \ - glRotatex_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glRotatex missing (no calls left)\n"); \ - } else if (packed->func != glRotatex_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glRotatex_INDEX); \ - if (! packed) { \ - mock_errorf("glRotatex missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glRotatex:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != angle) { \ - match = 0; \ - } \ - if (packed->args.a2 != x) { \ - match = 0; \ - } \ - if (packed->args.a3 != y) { \ - match = 0; \ - } \ - if (packed->args.a4 != z) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glRotatex(%p, %p, %p, %p);\n", angle, x, y, z); \ - } \ - } \ -} -#define pack_glSampleCoverage(value, invert) ({ \ - glSampleCoverage_INDEXED *packed_data = malloc(sizeof(glSampleCoverage_INDEXED)); \ - packed_data->func = glSampleCoverage_INDEX; \ - packed_data->args.a1 = (GLclampf)value; \ - packed_data->args.a2 = (GLboolean)invert; \ - packed_data; \ -}) -#define emit_glSampleCoverage(value, invert) { \ - mock_push(pack_glSampleCoverage(value, invert)); \ -} -#define test_glSampleCoverage(value, invert) { \ - glSampleCoverage_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glSampleCoverage missing (no calls left)\n"); \ - } else if (packed->func != glSampleCoverage_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glSampleCoverage_INDEX); \ - if (! packed) { \ - mock_errorf("glSampleCoverage missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glSampleCoverage:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != value) { \ - match = 0; \ - } \ - if (packed->args.a2 != invert) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glSampleCoverage(%p, %d);\n", value, invert); \ - } \ - } \ -} -#define pack_glSampleCoveragex(value, invert) ({ \ - glSampleCoveragex_INDEXED *packed_data = malloc(sizeof(glSampleCoveragex_INDEXED)); \ - packed_data->func = glSampleCoveragex_INDEX; \ - packed_data->args.a1 = (GLclampx)value; \ - packed_data->args.a2 = (GLboolean)invert; \ - packed_data; \ -}) -#define emit_glSampleCoveragex(value, invert) { \ - mock_push(pack_glSampleCoveragex(value, invert)); \ -} -#define test_glSampleCoveragex(value, invert) { \ - glSampleCoveragex_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glSampleCoveragex missing (no calls left)\n"); \ - } else if (packed->func != glSampleCoveragex_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glSampleCoveragex_INDEX); \ - if (! packed) { \ - mock_errorf("glSampleCoveragex missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glSampleCoveragex:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != value) { \ - match = 0; \ - } \ - if (packed->args.a2 != invert) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glSampleCoveragex(%p, %d);\n", value, invert); \ - } \ - } \ -} -#define pack_glScalef(x, y, z) ({ \ - glScalef_INDEXED *packed_data = malloc(sizeof(glScalef_INDEXED)); \ - packed_data->func = glScalef_INDEX; \ - packed_data->args.a1 = (GLfloat)x; \ - packed_data->args.a2 = (GLfloat)y; \ - packed_data->args.a3 = (GLfloat)z; \ - packed_data; \ -}) -#define emit_glScalef(x, y, z) { \ - mock_push(pack_glScalef(x, y, z)); \ -} -#define test_glScalef(x, y, z) { \ - glScalef_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glScalef missing (no calls left)\n"); \ - } else if (packed->func != glScalef_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glScalef_INDEX); \ - if (! packed) { \ - mock_errorf("glScalef missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glScalef:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 - x >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a2 - y >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a3 - z >= 0.01) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glScalef(%0.2f, %0.2f, %0.2f);\n", x, y, z); \ - } \ - } \ -} -#define pack_glScalex(x, y, z) ({ \ - glScalex_INDEXED *packed_data = malloc(sizeof(glScalex_INDEXED)); \ - packed_data->func = glScalex_INDEX; \ - packed_data->args.a1 = (GLfixed)x; \ - packed_data->args.a2 = (GLfixed)y; \ - packed_data->args.a3 = (GLfixed)z; \ - packed_data; \ -}) -#define emit_glScalex(x, y, z) { \ - mock_push(pack_glScalex(x, y, z)); \ -} -#define test_glScalex(x, y, z) { \ - glScalex_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glScalex missing (no calls left)\n"); \ - } else if (packed->func != glScalex_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glScalex_INDEX); \ - if (! packed) { \ - mock_errorf("glScalex missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glScalex:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != x) { \ - match = 0; \ - } \ - if (packed->args.a2 != y) { \ - match = 0; \ - } \ - if (packed->args.a3 != z) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glScalex(%p, %p, %p);\n", x, y, z); \ - } \ - } \ -} -#define pack_glScissor(x, y, width, height) ({ \ - glScissor_INDEXED *packed_data = malloc(sizeof(glScissor_INDEXED)); \ - packed_data->func = glScissor_INDEX; \ - packed_data->args.a1 = (GLint)x; \ - packed_data->args.a2 = (GLint)y; \ - packed_data->args.a3 = (GLsizei)width; \ - packed_data->args.a4 = (GLsizei)height; \ - packed_data; \ -}) -#define emit_glScissor(x, y, width, height) { \ - mock_push(pack_glScissor(x, y, width, height)); \ -} -#define test_glScissor(x, y, width, height) { \ - glScissor_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glScissor missing (no calls left)\n"); \ - } else if (packed->func != glScissor_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glScissor_INDEX); \ - if (! packed) { \ - mock_errorf("glScissor missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glScissor:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != x) { \ - match = 0; \ - } \ - if (packed->args.a2 != y) { \ - match = 0; \ - } \ - if (packed->args.a3 != width) { \ - match = 0; \ - } \ - if (packed->args.a4 != height) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glScissor(%d, %d, %d, %d);\n", x, y, width, height); \ - } \ - } \ -} -#define pack_glShadeModel(mode) ({ \ - glShadeModel_INDEXED *packed_data = malloc(sizeof(glShadeModel_INDEXED)); \ - packed_data->func = glShadeModel_INDEX; \ - packed_data->args.a1 = (GLenum)mode; \ - packed_data; \ -}) -#define emit_glShadeModel(mode) { \ - mock_push(pack_glShadeModel(mode)); \ -} -#define test_glShadeModel(mode) { \ - glShadeModel_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glShadeModel missing (no calls left)\n"); \ - } else if (packed->func != glShadeModel_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glShadeModel_INDEX); \ - if (! packed) { \ - mock_errorf("glShadeModel missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glShadeModel:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != mode) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glShadeModel(0x%04X);\n", mode); \ - } \ - } \ -} -#define pack_glStencilFunc(func, ref, mask) ({ \ - glStencilFunc_INDEXED *packed_data = malloc(sizeof(glStencilFunc_INDEXED)); \ - packed_data->func = glStencilFunc_INDEX; \ - packed_data->args.a1 = (GLenum)func; \ - packed_data->args.a2 = (GLint)ref; \ - packed_data->args.a3 = (GLuint)mask; \ - packed_data; \ -}) -#define emit_glStencilFunc(func, ref, mask) { \ - mock_push(pack_glStencilFunc(func, ref, mask)); \ -} -#define test_glStencilFunc(func, ref, mask) { \ - glStencilFunc_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glStencilFunc missing (no calls left)\n"); \ - } else if (packed->func != glStencilFunc_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glStencilFunc_INDEX); \ - if (! packed) { \ - mock_errorf("glStencilFunc missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glStencilFunc:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != func) { \ - match = 0; \ - } \ - if (packed->args.a2 != ref) { \ - match = 0; \ - } \ - if (packed->args.a3 != mask) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glStencilFunc(0x%04X, %d, %u);\n", func, ref, mask); \ - } \ - } \ -} -#define pack_glStencilMask(mask) ({ \ - glStencilMask_INDEXED *packed_data = malloc(sizeof(glStencilMask_INDEXED)); \ - packed_data->func = glStencilMask_INDEX; \ - packed_data->args.a1 = (GLuint)mask; \ - packed_data; \ -}) -#define emit_glStencilMask(mask) { \ - mock_push(pack_glStencilMask(mask)); \ -} -#define test_glStencilMask(mask) { \ - glStencilMask_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glStencilMask missing (no calls left)\n"); \ - } else if (packed->func != glStencilMask_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glStencilMask_INDEX); \ - if (! packed) { \ - mock_errorf("glStencilMask missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glStencilMask:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != mask) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glStencilMask(%u);\n", mask); \ - } \ - } \ -} -#define pack_glStencilOp(fail, zfail, zpass) ({ \ - glStencilOp_INDEXED *packed_data = malloc(sizeof(glStencilOp_INDEXED)); \ - packed_data->func = glStencilOp_INDEX; \ - packed_data->args.a1 = (GLenum)fail; \ - packed_data->args.a2 = (GLenum)zfail; \ - packed_data->args.a3 = (GLenum)zpass; \ - packed_data; \ -}) -#define emit_glStencilOp(fail, zfail, zpass) { \ - mock_push(pack_glStencilOp(fail, zfail, zpass)); \ -} -#define test_glStencilOp(fail, zfail, zpass) { \ - glStencilOp_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glStencilOp missing (no calls left)\n"); \ - } else if (packed->func != glStencilOp_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glStencilOp_INDEX); \ - if (! packed) { \ - mock_errorf("glStencilOp missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glStencilOp:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != fail) { \ - match = 0; \ - } \ - if (packed->args.a2 != zfail) { \ - match = 0; \ - } \ - if (packed->args.a3 != zpass) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glStencilOp(0x%04X, 0x%04X, 0x%04X);\n", fail, zfail, zpass); \ - } \ - } \ -} -#define pack_glTexCoordPointer(size, type, stride, pointer) ({ \ - glTexCoordPointer_INDEXED *packed_data = malloc(sizeof(glTexCoordPointer_INDEXED)); \ - packed_data->func = glTexCoordPointer_INDEX; \ - packed_data->args.a1 = (GLint)size; \ - packed_data->args.a2 = (GLenum)type; \ - packed_data->args.a3 = (GLsizei)stride; \ - packed_data->args.a4 = (GLvoid *)pointer; \ - packed_data; \ -}) -#define emit_glTexCoordPointer(size, type, stride, pointer) { \ - mock_push(pack_glTexCoordPointer(size, type, stride, pointer)); \ -} -#define test_glTexCoordPointer(size, type, stride, pointer) { \ - glTexCoordPointer_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glTexCoordPointer missing (no calls left)\n"); \ - } else if (packed->func != glTexCoordPointer_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glTexCoordPointer_INDEX); \ - if (! packed) { \ - mock_errorf("glTexCoordPointer missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glTexCoordPointer:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != size) { \ - match = 0; \ - } \ - if (packed->args.a2 != type) { \ - match = 0; \ - } \ - if (packed->args.a3 != stride) { \ - match = 0; \ - } \ - void *a = packed->args.a4, *b = pointer; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(pointer)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glTexCoordPointer(%d, 0x%04X, %d, %p);\n", size, type, stride, pointer); \ - } \ - } \ -} -#define pack_glTexEnvf(target, pname, param) ({ \ - glTexEnvf_INDEXED *packed_data = malloc(sizeof(glTexEnvf_INDEXED)); \ - packed_data->func = glTexEnvf_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfloat)param; \ - packed_data; \ -}) -#define emit_glTexEnvf(target, pname, param) { \ - mock_push(pack_glTexEnvf(target, pname, param)); \ -} -#define test_glTexEnvf(target, pname, param) { \ - glTexEnvf_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glTexEnvf missing (no calls left)\n"); \ - } else if (packed->func != glTexEnvf_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glTexEnvf_INDEX); \ - if (! packed) { \ - mock_errorf("glTexEnvf missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glTexEnvf:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - if (packed->args.a3 - param >= 0.01) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glTexEnvf(0x%04X, 0x%04X, %0.2f);\n", target, pname, param); \ - } \ - } \ -} -#define pack_glTexEnvfv(target, pname, params) ({ \ - glTexEnvfv_INDEXED *packed_data = malloc(sizeof(glTexEnvfv_INDEXED)); \ - packed_data->func = glTexEnvfv_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfloat *)params; \ - packed_data; \ -}) -#define emit_glTexEnvfv(target, pname, params) { \ - mock_push(pack_glTexEnvfv(target, pname, params)); \ -} -#define test_glTexEnvfv(target, pname, params) { \ - glTexEnvfv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glTexEnvfv missing (no calls left)\n"); \ - } else if (packed->func != glTexEnvfv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glTexEnvfv_INDEX); \ - if (! packed) { \ - mock_errorf("glTexEnvfv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glTexEnvfv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glTexEnvfv(0x%04X, 0x%04X, %p);\n", target, pname, params); \ - } \ - } \ -} -#define pack_glTexEnvi(target, pname, param) ({ \ - glTexEnvi_INDEXED *packed_data = malloc(sizeof(glTexEnvi_INDEXED)); \ - packed_data->func = glTexEnvi_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLint)param; \ - packed_data; \ -}) -#define emit_glTexEnvi(target, pname, param) { \ - mock_push(pack_glTexEnvi(target, pname, param)); \ -} -#define test_glTexEnvi(target, pname, param) { \ - glTexEnvi_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glTexEnvi missing (no calls left)\n"); \ - } else if (packed->func != glTexEnvi_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glTexEnvi_INDEX); \ - if (! packed) { \ - mock_errorf("glTexEnvi missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glTexEnvi:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - if (packed->args.a3 != param) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glTexEnvi(0x%04X, 0x%04X, %d);\n", target, pname, param); \ - } \ - } \ -} -#define pack_glTexEnviv(target, pname, params) ({ \ - glTexEnviv_INDEXED *packed_data = malloc(sizeof(glTexEnviv_INDEXED)); \ - packed_data->func = glTexEnviv_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLint *)params; \ - packed_data; \ -}) -#define emit_glTexEnviv(target, pname, params) { \ - mock_push(pack_glTexEnviv(target, pname, params)); \ -} -#define test_glTexEnviv(target, pname, params) { \ - glTexEnviv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glTexEnviv missing (no calls left)\n"); \ - } else if (packed->func != glTexEnviv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glTexEnviv_INDEX); \ - if (! packed) { \ - mock_errorf("glTexEnviv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glTexEnviv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glTexEnviv(0x%04X, 0x%04X, %p);\n", target, pname, params); \ - } \ - } \ -} -#define pack_glTexEnvx(target, pname, param) ({ \ - glTexEnvx_INDEXED *packed_data = malloc(sizeof(glTexEnvx_INDEXED)); \ - packed_data->func = glTexEnvx_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfixed)param; \ - packed_data; \ -}) -#define emit_glTexEnvx(target, pname, param) { \ - mock_push(pack_glTexEnvx(target, pname, param)); \ -} -#define test_glTexEnvx(target, pname, param) { \ - glTexEnvx_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glTexEnvx missing (no calls left)\n"); \ - } else if (packed->func != glTexEnvx_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glTexEnvx_INDEX); \ - if (! packed) { \ - mock_errorf("glTexEnvx missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glTexEnvx:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - if (packed->args.a3 != param) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glTexEnvx(0x%04X, 0x%04X, %p);\n", target, pname, param); \ - } \ - } \ -} -#define pack_glTexEnvxv(target, pname, params) ({ \ - glTexEnvxv_INDEXED *packed_data = malloc(sizeof(glTexEnvxv_INDEXED)); \ - packed_data->func = glTexEnvxv_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfixed *)params; \ - packed_data; \ -}) -#define emit_glTexEnvxv(target, pname, params) { \ - mock_push(pack_glTexEnvxv(target, pname, params)); \ -} -#define test_glTexEnvxv(target, pname, params) { \ - glTexEnvxv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glTexEnvxv missing (no calls left)\n"); \ - } else if (packed->func != glTexEnvxv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glTexEnvxv_INDEX); \ - if (! packed) { \ - mock_errorf("glTexEnvxv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glTexEnvxv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glTexEnvxv(0x%04X, 0x%04X, %p);\n", target, pname, params); \ - } \ - } \ -} -#define pack_glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels) ({ \ - glTexImage2D_INDEXED *packed_data = malloc(sizeof(glTexImage2D_INDEXED)); \ - packed_data->func = glTexImage2D_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLint)level; \ - packed_data->args.a3 = (GLint)internalformat; \ - packed_data->args.a4 = (GLsizei)width; \ - packed_data->args.a5 = (GLsizei)height; \ - packed_data->args.a6 = (GLint)border; \ - packed_data->args.a7 = (GLenum)format; \ - packed_data->args.a8 = (GLenum)type; \ - packed_data->args.a9 = (GLvoid *)pixels; \ - packed_data; \ -}) -#define emit_glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels) { \ - mock_push(pack_glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels)); \ -} -#define test_glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels) { \ - glTexImage2D_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glTexImage2D missing (no calls left)\n"); \ - } else if (packed->func != glTexImage2D_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glTexImage2D_INDEX); \ - if (! packed) { \ - mock_errorf("glTexImage2D missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glTexImage2D:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != level) { \ - match = 0; \ - } \ - if (packed->args.a3 != internalformat) { \ - match = 0; \ - } \ - if (packed->args.a4 != width) { \ - match = 0; \ - } \ - if (packed->args.a5 != height) { \ - match = 0; \ - } \ - if (packed->args.a6 != border) { \ - match = 0; \ - } \ - if (packed->args.a7 != format) { \ - match = 0; \ - } \ - if (packed->args.a8 != type) { \ - match = 0; \ - } \ - void *a = packed->args.a9, *b = pixels; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(pixels)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glTexImage2D(0x%04X, %d, %d, %d, %d, %d, 0x%04X, 0x%04X, %p);\n", target, level, internalformat, width, height, border, format, type, pixels); \ - } \ - } \ -} -#define pack_glTexParameterf(target, pname, param) ({ \ - glTexParameterf_INDEXED *packed_data = malloc(sizeof(glTexParameterf_INDEXED)); \ - packed_data->func = glTexParameterf_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfloat)param; \ - packed_data; \ -}) -#define emit_glTexParameterf(target, pname, param) { \ - mock_push(pack_glTexParameterf(target, pname, param)); \ -} -#define test_glTexParameterf(target, pname, param) { \ - glTexParameterf_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glTexParameterf missing (no calls left)\n"); \ - } else if (packed->func != glTexParameterf_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glTexParameterf_INDEX); \ - if (! packed) { \ - mock_errorf("glTexParameterf missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glTexParameterf:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - if (packed->args.a3 - param >= 0.01) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glTexParameterf(0x%04X, 0x%04X, %0.2f);\n", target, pname, param); \ - } \ - } \ -} -#define pack_glTexParameterfv(target, pname, params) ({ \ - glTexParameterfv_INDEXED *packed_data = malloc(sizeof(glTexParameterfv_INDEXED)); \ - packed_data->func = glTexParameterfv_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfloat *)params; \ - packed_data; \ -}) -#define emit_glTexParameterfv(target, pname, params) { \ - mock_push(pack_glTexParameterfv(target, pname, params)); \ -} -#define test_glTexParameterfv(target, pname, params) { \ - glTexParameterfv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glTexParameterfv missing (no calls left)\n"); \ - } else if (packed->func != glTexParameterfv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glTexParameterfv_INDEX); \ - if (! packed) { \ - mock_errorf("glTexParameterfv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glTexParameterfv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glTexParameterfv(0x%04X, 0x%04X, %p);\n", target, pname, params); \ - } \ - } \ -} -#define pack_glTexParameteri(target, pname, param) ({ \ - glTexParameteri_INDEXED *packed_data = malloc(sizeof(glTexParameteri_INDEXED)); \ - packed_data->func = glTexParameteri_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLint)param; \ - packed_data; \ -}) -#define emit_glTexParameteri(target, pname, param) { \ - mock_push(pack_glTexParameteri(target, pname, param)); \ -} -#define test_glTexParameteri(target, pname, param) { \ - glTexParameteri_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glTexParameteri missing (no calls left)\n"); \ - } else if (packed->func != glTexParameteri_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glTexParameteri_INDEX); \ - if (! packed) { \ - mock_errorf("glTexParameteri missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glTexParameteri:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - if (packed->args.a3 != param) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glTexParameteri(0x%04X, 0x%04X, %d);\n", target, pname, param); \ - } \ - } \ -} -#define pack_glTexParameteriv(target, pname, params) ({ \ - glTexParameteriv_INDEXED *packed_data = malloc(sizeof(glTexParameteriv_INDEXED)); \ - packed_data->func = glTexParameteriv_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLint *)params; \ - packed_data; \ -}) -#define emit_glTexParameteriv(target, pname, params) { \ - mock_push(pack_glTexParameteriv(target, pname, params)); \ -} -#define test_glTexParameteriv(target, pname, params) { \ - glTexParameteriv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glTexParameteriv missing (no calls left)\n"); \ - } else if (packed->func != glTexParameteriv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glTexParameteriv_INDEX); \ - if (! packed) { \ - mock_errorf("glTexParameteriv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glTexParameteriv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glTexParameteriv(0x%04X, 0x%04X, %p);\n", target, pname, params); \ - } \ - } \ -} -#define pack_glTexParameterx(target, pname, param) ({ \ - glTexParameterx_INDEXED *packed_data = malloc(sizeof(glTexParameterx_INDEXED)); \ - packed_data->func = glTexParameterx_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfixed)param; \ - packed_data; \ -}) -#define emit_glTexParameterx(target, pname, param) { \ - mock_push(pack_glTexParameterx(target, pname, param)); \ -} -#define test_glTexParameterx(target, pname, param) { \ - glTexParameterx_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glTexParameterx missing (no calls left)\n"); \ - } else if (packed->func != glTexParameterx_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glTexParameterx_INDEX); \ - if (! packed) { \ - mock_errorf("glTexParameterx missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glTexParameterx:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - if (packed->args.a3 != param) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glTexParameterx(0x%04X, 0x%04X, %p);\n", target, pname, param); \ - } \ - } \ -} -#define pack_glTexParameterxv(target, pname, params) ({ \ - glTexParameterxv_INDEXED *packed_data = malloc(sizeof(glTexParameterxv_INDEXED)); \ - packed_data->func = glTexParameterxv_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLenum)pname; \ - packed_data->args.a3 = (GLfixed *)params; \ - packed_data; \ -}) -#define emit_glTexParameterxv(target, pname, params) { \ - mock_push(pack_glTexParameterxv(target, pname, params)); \ -} -#define test_glTexParameterxv(target, pname, params) { \ - glTexParameterxv_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glTexParameterxv missing (no calls left)\n"); \ - } else if (packed->func != glTexParameterxv_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glTexParameterxv_INDEX); \ - if (! packed) { \ - mock_errorf("glTexParameterxv missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glTexParameterxv:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != pname) { \ - match = 0; \ - } \ - void *a = packed->args.a3, *b = params; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(params)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glTexParameterxv(0x%04X, 0x%04X, %p);\n", target, pname, params); \ - } \ - } \ -} -#define pack_glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels) ({ \ - glTexSubImage2D_INDEXED *packed_data = malloc(sizeof(glTexSubImage2D_INDEXED)); \ - packed_data->func = glTexSubImage2D_INDEX; \ - packed_data->args.a1 = (GLenum)target; \ - packed_data->args.a2 = (GLint)level; \ - packed_data->args.a3 = (GLint)xoffset; \ - packed_data->args.a4 = (GLint)yoffset; \ - packed_data->args.a5 = (GLsizei)width; \ - packed_data->args.a6 = (GLsizei)height; \ - packed_data->args.a7 = (GLenum)format; \ - packed_data->args.a8 = (GLenum)type; \ - packed_data->args.a9 = (GLvoid *)pixels; \ - packed_data; \ -}) -#define emit_glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels) { \ - mock_push(pack_glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels)); \ -} -#define test_glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels) { \ - glTexSubImage2D_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glTexSubImage2D missing (no calls left)\n"); \ - } else if (packed->func != glTexSubImage2D_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glTexSubImage2D_INDEX); \ - if (! packed) { \ - mock_errorf("glTexSubImage2D missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glTexSubImage2D:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != target) { \ - match = 0; \ - } \ - if (packed->args.a2 != level) { \ - match = 0; \ - } \ - if (packed->args.a3 != xoffset) { \ - match = 0; \ - } \ - if (packed->args.a4 != yoffset) { \ - match = 0; \ - } \ - if (packed->args.a5 != width) { \ - match = 0; \ - } \ - if (packed->args.a6 != height) { \ - match = 0; \ - } \ - if (packed->args.a7 != format) { \ - match = 0; \ - } \ - if (packed->args.a8 != type) { \ - match = 0; \ - } \ - void *a = packed->args.a9, *b = pixels; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(pixels)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glTexSubImage2D(0x%04X, %d, %d, %d, %d, %d, 0x%04X, 0x%04X, %p);\n", target, level, xoffset, yoffset, width, height, format, type, pixels); \ - } \ - } \ -} -#define pack_glTranslatef(x, y, z) ({ \ - glTranslatef_INDEXED *packed_data = malloc(sizeof(glTranslatef_INDEXED)); \ - packed_data->func = glTranslatef_INDEX; \ - packed_data->args.a1 = (GLfloat)x; \ - packed_data->args.a2 = (GLfloat)y; \ - packed_data->args.a3 = (GLfloat)z; \ - packed_data; \ -}) -#define emit_glTranslatef(x, y, z) { \ - mock_push(pack_glTranslatef(x, y, z)); \ -} -#define test_glTranslatef(x, y, z) { \ - glTranslatef_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glTranslatef missing (no calls left)\n"); \ - } else if (packed->func != glTranslatef_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glTranslatef_INDEX); \ - if (! packed) { \ - mock_errorf("glTranslatef missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glTranslatef:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 - x >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a2 - y >= 0.01) { \ - match = 0; \ - } \ - if (packed->args.a3 - z >= 0.01) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glTranslatef(%0.2f, %0.2f, %0.2f);\n", x, y, z); \ - } \ - } \ -} -#define pack_glTranslatex(x, y, z) ({ \ - glTranslatex_INDEXED *packed_data = malloc(sizeof(glTranslatex_INDEXED)); \ - packed_data->func = glTranslatex_INDEX; \ - packed_data->args.a1 = (GLfixed)x; \ - packed_data->args.a2 = (GLfixed)y; \ - packed_data->args.a3 = (GLfixed)z; \ - packed_data; \ -}) -#define emit_glTranslatex(x, y, z) { \ - mock_push(pack_glTranslatex(x, y, z)); \ -} -#define test_glTranslatex(x, y, z) { \ - glTranslatex_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glTranslatex missing (no calls left)\n"); \ - } else if (packed->func != glTranslatex_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glTranslatex_INDEX); \ - if (! packed) { \ - mock_errorf("glTranslatex missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glTranslatex:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != x) { \ - match = 0; \ - } \ - if (packed->args.a2 != y) { \ - match = 0; \ - } \ - if (packed->args.a3 != z) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glTranslatex(%p, %p, %p);\n", x, y, z); \ - } \ - } \ -} -#define pack_glVertexPointer(size, type, stride, pointer) ({ \ - glVertexPointer_INDEXED *packed_data = malloc(sizeof(glVertexPointer_INDEXED)); \ - packed_data->func = glVertexPointer_INDEX; \ - packed_data->args.a1 = (GLint)size; \ - packed_data->args.a2 = (GLenum)type; \ - packed_data->args.a3 = (GLsizei)stride; \ - packed_data->args.a4 = (GLvoid *)pointer; \ - packed_data; \ -}) -#define emit_glVertexPointer(size, type, stride, pointer) { \ - mock_push(pack_glVertexPointer(size, type, stride, pointer)); \ -} -#define test_glVertexPointer(size, type, stride, pointer) { \ - glVertexPointer_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glVertexPointer missing (no calls left)\n"); \ - } else if (packed->func != glVertexPointer_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glVertexPointer_INDEX); \ - if (! packed) { \ - mock_errorf("glVertexPointer missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glVertexPointer:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != size) { \ - match = 0; \ - } \ - if (packed->args.a2 != type) { \ - match = 0; \ - } \ - if (packed->args.a3 != stride) { \ - match = 0; \ - } \ - void *a = packed->args.a4, *b = pointer; \ - if (b == NULL && a != NULL || (a != NULL && b != NULL && (memcmp(a, b, sizeof(pointer)) != 0))) { \ - ptr_error = 1; \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glVertexPointer(%d, 0x%04X, %d, %p);\n", size, type, stride, pointer); \ - } \ - } \ -} -#define pack_glViewport(x, y, width, height) ({ \ - glViewport_INDEXED *packed_data = malloc(sizeof(glViewport_INDEXED)); \ - packed_data->func = glViewport_INDEX; \ - packed_data->args.a1 = (GLint)x; \ - packed_data->args.a2 = (GLint)y; \ - packed_data->args.a3 = (GLsizei)width; \ - packed_data->args.a4 = (GLsizei)height; \ - packed_data; \ -}) -#define emit_glViewport(x, y, width, height) { \ - mock_push(pack_glViewport(x, y, width, height)); \ -} -#define test_glViewport(x, y, width, height) { \ - glViewport_INDEXED *packed = mock_cur(); \ - if (packed == NULL) { \ - mock_errorf("glViewport missing (no calls left)\n"); \ - } else if (packed->func != glViewport_INDEX) { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - indexed_call_t *tmp = (indexed_call_t *)packed; \ - packed = mock_slide(glViewport_INDEX); \ - if (! packed) { \ - mock_errorf("glViewport missing\n"); \ - } else { \ - mock_warningf("unexpected call while looking for glViewport:\n "); \ - mock_print(tmp); \ - }\ - } else { \ - if (verbose_test) { \ - mock_print(mock_cur()); \ - } \ - mock_shift(); \ - } \ - if (packed) { \ - int match = 1, ptr_error = 0; \ - if (packed->args.a1 != x) { \ - match = 0; \ - } \ - if (packed->args.a2 != y) { \ - match = 0; \ - } \ - if (packed->args.a3 != width) { \ - match = 0; \ - } \ - if (packed->args.a4 != height) { \ - match = 0; \ - } \ - if (! match) { \ - mock_errorf("calls do not match:\n"); \ - if (ptr_error) { \ - printf(" (pointer mismatch)\n"); \ - } \ - printf(" have: "); mock_print((const indexed_call_t *)packed); \ - printf(" want: glViewport(%d, %d, %d, %d);\n", x, y, width, height); \ - } \ - } \ -} - -#define gles_glActiveTexture_INDEX 1 -#define gles_glActiveTexture_RETURN void -#define gles_glActiveTexture_ARG_NAMES texture -#define gles_glActiveTexture_ARG_EXPAND GLenum texture -#define gles_glActiveTexture_PACKED PACKED_void_GLenum -#define gles_glActiveTexture_INDEXED INDEXED_void_GLenum -#define gles_glActiveTexture_FORMAT FORMAT_void_GLenum -#define gles_glAlphaFunc_INDEX 2 -#define gles_glAlphaFunc_RETURN void -#define gles_glAlphaFunc_ARG_NAMES func, ref -#define gles_glAlphaFunc_ARG_EXPAND GLenum func, GLclampf ref -#define gles_glAlphaFunc_PACKED PACKED_void_GLenum_GLclampf -#define gles_glAlphaFunc_INDEXED INDEXED_void_GLenum_GLclampf -#define gles_glAlphaFunc_FORMAT FORMAT_void_GLenum_GLclampf -#define gles_glAlphaFuncx_INDEX 3 -#define gles_glAlphaFuncx_RETURN void -#define gles_glAlphaFuncx_ARG_NAMES func, ref -#define gles_glAlphaFuncx_ARG_EXPAND GLenum func, GLclampx ref -#define gles_glAlphaFuncx_PACKED PACKED_void_GLenum_GLclampx -#define gles_glAlphaFuncx_INDEXED INDEXED_void_GLenum_GLclampx -#define gles_glAlphaFuncx_FORMAT FORMAT_void_GLenum_GLclampx -#define gles_glBindBuffer_INDEX 4 -#define gles_glBindBuffer_RETURN void -#define gles_glBindBuffer_ARG_NAMES target, buffer -#define gles_glBindBuffer_ARG_EXPAND GLenum target, GLuint buffer -#define gles_glBindBuffer_PACKED PACKED_void_GLenum_GLuint -#define gles_glBindBuffer_INDEXED INDEXED_void_GLenum_GLuint -#define gles_glBindBuffer_FORMAT FORMAT_void_GLenum_GLuint -#define gles_glBindTexture_INDEX 5 -#define gles_glBindTexture_RETURN void -#define gles_glBindTexture_ARG_NAMES target, texture -#define gles_glBindTexture_ARG_EXPAND GLenum target, GLuint texture -#define gles_glBindTexture_PACKED PACKED_void_GLenum_GLuint -#define gles_glBindTexture_INDEXED INDEXED_void_GLenum_GLuint -#define gles_glBindTexture_FORMAT FORMAT_void_GLenum_GLuint -#define gles_glBlendColorOES_INDEX 6 -#define gles_glBlendColorOES_RETURN void -#define gles_glBlendColorOES_ARG_NAMES red, green, blue, alpha -#define gles_glBlendColorOES_ARG_EXPAND GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha -#define gles_glBlendColorOES_PACKED PACKED_void_GLclampf_GLclampf_GLclampf_GLclampf -#define gles_glBlendColorOES_INDEXED INDEXED_void_GLclampf_GLclampf_GLclampf_GLclampf -#define gles_glBlendColorOES_FORMAT FORMAT_void_GLclampf_GLclampf_GLclampf_GLclampf -#define gles_glBlendEquationOES_INDEX 7 -#define gles_glBlendEquationOES_RETURN void -#define gles_glBlendEquationOES_ARG_NAMES mode -#define gles_glBlendEquationOES_ARG_EXPAND GLenum mode -#define gles_glBlendEquationOES_PACKED PACKED_void_GLenum -#define gles_glBlendEquationOES_INDEXED INDEXED_void_GLenum -#define gles_glBlendEquationOES_FORMAT FORMAT_void_GLenum -#define gles_glBlendEquationSeparateOES_INDEX 8 -#define gles_glBlendEquationSeparateOES_RETURN void -#define gles_glBlendEquationSeparateOES_ARG_NAMES modeRGB, modeAlpha -#define gles_glBlendEquationSeparateOES_ARG_EXPAND GLenum modeRGB, GLenum modeAlpha -#define gles_glBlendEquationSeparateOES_PACKED PACKED_void_GLenum_GLenum -#define gles_glBlendEquationSeparateOES_INDEXED INDEXED_void_GLenum_GLenum -#define gles_glBlendEquationSeparateOES_FORMAT FORMAT_void_GLenum_GLenum -#define gles_glBlendFunc_INDEX 9 -#define gles_glBlendFunc_RETURN void -#define gles_glBlendFunc_ARG_NAMES sfactor, dfactor -#define gles_glBlendFunc_ARG_EXPAND GLenum sfactor, GLenum dfactor -#define gles_glBlendFunc_PACKED PACKED_void_GLenum_GLenum -#define gles_glBlendFunc_INDEXED INDEXED_void_GLenum_GLenum -#define gles_glBlendFunc_FORMAT FORMAT_void_GLenum_GLenum -#define gles_glBlendFuncSeparateOES_INDEX 10 -#define gles_glBlendFuncSeparateOES_RETURN void -#define gles_glBlendFuncSeparateOES_ARG_NAMES sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha -#define gles_glBlendFuncSeparateOES_ARG_EXPAND GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha -#define gles_glBlendFuncSeparateOES_PACKED PACKED_void_GLenum_GLenum_GLenum_GLenum -#define gles_glBlendFuncSeparateOES_INDEXED INDEXED_void_GLenum_GLenum_GLenum_GLenum -#define gles_glBlendFuncSeparateOES_FORMAT FORMAT_void_GLenum_GLenum_GLenum_GLenum -#define gles_glBufferData_INDEX 11 -#define gles_glBufferData_RETURN void -#define gles_glBufferData_ARG_NAMES target, size, data, usage -#define gles_glBufferData_ARG_EXPAND GLenum target, GLsizeiptr size, const GLvoid * data, GLenum usage -#define gles_glBufferData_PACKED PACKED_void_GLenum_GLsizeiptr_const_GLvoid___GENPT___GLenum -#define gles_glBufferData_INDEXED INDEXED_void_GLenum_GLsizeiptr_const_GLvoid___GENPT___GLenum -#define gles_glBufferData_FORMAT FORMAT_void_GLenum_GLsizeiptr_const_GLvoid___GENPT___GLenum -#define gles_glBufferSubData_INDEX 12 -#define gles_glBufferSubData_RETURN void -#define gles_glBufferSubData_ARG_NAMES target, offset, size, data -#define gles_glBufferSubData_ARG_EXPAND GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid * data -#define gles_glBufferSubData_PACKED PACKED_void_GLenum_GLintptr_GLsizeiptr_const_GLvoid___GENPT__ -#define gles_glBufferSubData_INDEXED INDEXED_void_GLenum_GLintptr_GLsizeiptr_const_GLvoid___GENPT__ -#define gles_glBufferSubData_FORMAT FORMAT_void_GLenum_GLintptr_GLsizeiptr_const_GLvoid___GENPT__ -#define gles_glClear_INDEX 13 -#define gles_glClear_RETURN void -#define gles_glClear_ARG_NAMES mask -#define gles_glClear_ARG_EXPAND GLbitfield mask -#define gles_glClear_PACKED PACKED_void_GLbitfield -#define gles_glClear_INDEXED INDEXED_void_GLbitfield -#define gles_glClear_FORMAT FORMAT_void_GLbitfield -#define gles_glClearColor_INDEX 14 -#define gles_glClearColor_RETURN void -#define gles_glClearColor_ARG_NAMES red, green, blue, alpha -#define gles_glClearColor_ARG_EXPAND GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha -#define gles_glClearColor_PACKED PACKED_void_GLclampf_GLclampf_GLclampf_GLclampf -#define gles_glClearColor_INDEXED INDEXED_void_GLclampf_GLclampf_GLclampf_GLclampf -#define gles_glClearColor_FORMAT FORMAT_void_GLclampf_GLclampf_GLclampf_GLclampf -#define gles_glClearColorx_INDEX 15 -#define gles_glClearColorx_RETURN void -#define gles_glClearColorx_ARG_NAMES red, green, blue, alpha -#define gles_glClearColorx_ARG_EXPAND GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha -#define gles_glClearColorx_PACKED PACKED_void_GLclampx_GLclampx_GLclampx_GLclampx -#define gles_glClearColorx_INDEXED INDEXED_void_GLclampx_GLclampx_GLclampx_GLclampx -#define gles_glClearColorx_FORMAT FORMAT_void_GLclampx_GLclampx_GLclampx_GLclampx -#define gles_glClearDepthf_INDEX 16 -#define gles_glClearDepthf_RETURN void -#define gles_glClearDepthf_ARG_NAMES depth -#define gles_glClearDepthf_ARG_EXPAND GLclampf depth -#define gles_glClearDepthf_PACKED PACKED_void_GLclampf -#define gles_glClearDepthf_INDEXED INDEXED_void_GLclampf -#define gles_glClearDepthf_FORMAT FORMAT_void_GLclampf -#define gles_glClearDepthx_INDEX 17 -#define gles_glClearDepthx_RETURN void -#define gles_glClearDepthx_ARG_NAMES depth -#define gles_glClearDepthx_ARG_EXPAND GLclampx depth -#define gles_glClearDepthx_PACKED PACKED_void_GLclampx -#define gles_glClearDepthx_INDEXED INDEXED_void_GLclampx -#define gles_glClearDepthx_FORMAT FORMAT_void_GLclampx -#define gles_glClearStencil_INDEX 18 -#define gles_glClearStencil_RETURN void -#define gles_glClearStencil_ARG_NAMES s -#define gles_glClearStencil_ARG_EXPAND GLint s -#define gles_glClearStencil_PACKED PACKED_void_GLint -#define gles_glClearStencil_INDEXED INDEXED_void_GLint -#define gles_glClearStencil_FORMAT FORMAT_void_GLint -#define gles_glClientActiveTexture_INDEX 19 -#define gles_glClientActiveTexture_RETURN void -#define gles_glClientActiveTexture_ARG_NAMES texture -#define gles_glClientActiveTexture_ARG_EXPAND GLenum texture -#define gles_glClientActiveTexture_PACKED PACKED_void_GLenum -#define gles_glClientActiveTexture_INDEXED INDEXED_void_GLenum -#define gles_glClientActiveTexture_FORMAT FORMAT_void_GLenum -#define gles_glClipPlanef_INDEX 20 -#define gles_glClipPlanef_RETURN void -#define gles_glClipPlanef_ARG_NAMES plane, equation -#define gles_glClipPlanef_ARG_EXPAND GLenum plane, const GLfloat * equation -#define gles_glClipPlanef_PACKED PACKED_void_GLenum_const_GLfloat___GENPT__ -#define gles_glClipPlanef_INDEXED INDEXED_void_GLenum_const_GLfloat___GENPT__ -#define gles_glClipPlanef_FORMAT FORMAT_void_GLenum_const_GLfloat___GENPT__ -#define gles_glClipPlanex_INDEX 21 -#define gles_glClipPlanex_RETURN void -#define gles_glClipPlanex_ARG_NAMES plane, equation -#define gles_glClipPlanex_ARG_EXPAND GLenum plane, const GLfixed * equation -#define gles_glClipPlanex_PACKED PACKED_void_GLenum_const_GLfixed___GENPT__ -#define gles_glClipPlanex_INDEXED INDEXED_void_GLenum_const_GLfixed___GENPT__ -#define gles_glClipPlanex_FORMAT FORMAT_void_GLenum_const_GLfixed___GENPT__ -#define gles_glColor4f_INDEX 22 -#define gles_glColor4f_RETURN void -#define gles_glColor4f_ARG_NAMES red, green, blue, alpha -#define gles_glColor4f_ARG_EXPAND GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha -#define gles_glColor4f_PACKED PACKED_void_GLfloat_GLfloat_GLfloat_GLfloat -#define gles_glColor4f_INDEXED INDEXED_void_GLfloat_GLfloat_GLfloat_GLfloat -#define gles_glColor4f_FORMAT FORMAT_void_GLfloat_GLfloat_GLfloat_GLfloat -#define gles_glColor4ub_INDEX 23 -#define gles_glColor4ub_RETURN void -#define gles_glColor4ub_ARG_NAMES red, green, blue, alpha -#define gles_glColor4ub_ARG_EXPAND GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha -#define gles_glColor4ub_PACKED PACKED_void_GLubyte_GLubyte_GLubyte_GLubyte -#define gles_glColor4ub_INDEXED INDEXED_void_GLubyte_GLubyte_GLubyte_GLubyte -#define gles_glColor4ub_FORMAT FORMAT_void_GLubyte_GLubyte_GLubyte_GLubyte -#define gles_glColor4x_INDEX 24 -#define gles_glColor4x_RETURN void -#define gles_glColor4x_ARG_NAMES red, green, blue, alpha -#define gles_glColor4x_ARG_EXPAND GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha -#define gles_glColor4x_PACKED PACKED_void_GLfixed_GLfixed_GLfixed_GLfixed -#define gles_glColor4x_INDEXED INDEXED_void_GLfixed_GLfixed_GLfixed_GLfixed -#define gles_glColor4x_FORMAT FORMAT_void_GLfixed_GLfixed_GLfixed_GLfixed -#define gles_glColorMask_INDEX 25 -#define gles_glColorMask_RETURN void -#define gles_glColorMask_ARG_NAMES red, green, blue, alpha -#define gles_glColorMask_ARG_EXPAND GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha -#define gles_glColorMask_PACKED PACKED_void_GLboolean_GLboolean_GLboolean_GLboolean -#define gles_glColorMask_INDEXED INDEXED_void_GLboolean_GLboolean_GLboolean_GLboolean -#define gles_glColorMask_FORMAT FORMAT_void_GLboolean_GLboolean_GLboolean_GLboolean -#define gles_glColorPointer_INDEX 26 -#define gles_glColorPointer_RETURN void -#define gles_glColorPointer_ARG_NAMES size, type, stride, pointer -#define gles_glColorPointer_ARG_EXPAND GLint size, GLenum type, GLsizei stride, const GLvoid * pointer -#define gles_glColorPointer_PACKED PACKED_void_GLint_GLenum_GLsizei_const_GLvoid___GENPT__ -#define gles_glColorPointer_INDEXED INDEXED_void_GLint_GLenum_GLsizei_const_GLvoid___GENPT__ -#define gles_glColorPointer_FORMAT FORMAT_void_GLint_GLenum_GLsizei_const_GLvoid___GENPT__ -#define gles_glCompressedTexImage2D_INDEX 27 -#define gles_glCompressedTexImage2D_RETURN void -#define gles_glCompressedTexImage2D_ARG_NAMES target, level, internalformat, width, height, border, imageSize, data -#define gles_glCompressedTexImage2D_ARG_EXPAND GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid * data -#define gles_glCompressedTexImage2D_PACKED PACKED_void_GLenum_GLint_GLenum_GLsizei_GLsizei_GLint_GLsizei_const_GLvoid___GENPT__ -#define gles_glCompressedTexImage2D_INDEXED INDEXED_void_GLenum_GLint_GLenum_GLsizei_GLsizei_GLint_GLsizei_const_GLvoid___GENPT__ -#define gles_glCompressedTexImage2D_FORMAT FORMAT_void_GLenum_GLint_GLenum_GLsizei_GLsizei_GLint_GLsizei_const_GLvoid___GENPT__ -#define gles_glCompressedTexSubImage2D_INDEX 28 -#define gles_glCompressedTexSubImage2D_RETURN void -#define gles_glCompressedTexSubImage2D_ARG_NAMES target, level, xoffset, yoffset, width, height, format, imageSize, data -#define gles_glCompressedTexSubImage2D_ARG_EXPAND GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid * data -#define gles_glCompressedTexSubImage2D_PACKED PACKED_void_GLenum_GLint_GLint_GLint_GLsizei_GLsizei_GLenum_GLsizei_const_GLvoid___GENPT__ -#define gles_glCompressedTexSubImage2D_INDEXED INDEXED_void_GLenum_GLint_GLint_GLint_GLsizei_GLsizei_GLenum_GLsizei_const_GLvoid___GENPT__ -#define gles_glCompressedTexSubImage2D_FORMAT FORMAT_void_GLenum_GLint_GLint_GLint_GLsizei_GLsizei_GLenum_GLsizei_const_GLvoid___GENPT__ -#define gles_glCopyTexImage2D_INDEX 29 -#define gles_glCopyTexImage2D_RETURN void -#define gles_glCopyTexImage2D_ARG_NAMES target, level, internalformat, x, y, width, height, border -#define gles_glCopyTexImage2D_ARG_EXPAND GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border -#define gles_glCopyTexImage2D_PACKED PACKED_void_GLenum_GLint_GLenum_GLint_GLint_GLsizei_GLsizei_GLint -#define gles_glCopyTexImage2D_INDEXED INDEXED_void_GLenum_GLint_GLenum_GLint_GLint_GLsizei_GLsizei_GLint -#define gles_glCopyTexImage2D_FORMAT FORMAT_void_GLenum_GLint_GLenum_GLint_GLint_GLsizei_GLsizei_GLint -#define gles_glCopyTexSubImage2D_INDEX 30 -#define gles_glCopyTexSubImage2D_RETURN void -#define gles_glCopyTexSubImage2D_ARG_NAMES target, level, xoffset, yoffset, x, y, width, height -#define gles_glCopyTexSubImage2D_ARG_EXPAND GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height -#define gles_glCopyTexSubImage2D_PACKED PACKED_void_GLenum_GLint_GLint_GLint_GLint_GLint_GLsizei_GLsizei -#define gles_glCopyTexSubImage2D_INDEXED INDEXED_void_GLenum_GLint_GLint_GLint_GLint_GLint_GLsizei_GLsizei -#define gles_glCopyTexSubImage2D_FORMAT FORMAT_void_GLenum_GLint_GLint_GLint_GLint_GLint_GLsizei_GLsizei -#define gles_glCullFace_INDEX 31 -#define gles_glCullFace_RETURN void -#define gles_glCullFace_ARG_NAMES mode -#define gles_glCullFace_ARG_EXPAND GLenum mode -#define gles_glCullFace_PACKED PACKED_void_GLenum -#define gles_glCullFace_INDEXED INDEXED_void_GLenum -#define gles_glCullFace_FORMAT FORMAT_void_GLenum -#define gles_glDeleteBuffers_INDEX 32 -#define gles_glDeleteBuffers_RETURN void -#define gles_glDeleteBuffers_ARG_NAMES n, buffers -#define gles_glDeleteBuffers_ARG_EXPAND GLsizei n, const GLuint * buffers -#define gles_glDeleteBuffers_PACKED PACKED_void_GLsizei_const_GLuint___GENPT__ -#define gles_glDeleteBuffers_INDEXED INDEXED_void_GLsizei_const_GLuint___GENPT__ -#define gles_glDeleteBuffers_FORMAT FORMAT_void_GLsizei_const_GLuint___GENPT__ -#define gles_glDeleteTextures_INDEX 33 -#define gles_glDeleteTextures_RETURN void -#define gles_glDeleteTextures_ARG_NAMES n, textures -#define gles_glDeleteTextures_ARG_EXPAND GLsizei n, const GLuint * textures -#define gles_glDeleteTextures_PACKED PACKED_void_GLsizei_const_GLuint___GENPT__ -#define gles_glDeleteTextures_INDEXED INDEXED_void_GLsizei_const_GLuint___GENPT__ -#define gles_glDeleteTextures_FORMAT FORMAT_void_GLsizei_const_GLuint___GENPT__ -#define gles_glDepthFunc_INDEX 34 -#define gles_glDepthFunc_RETURN void -#define gles_glDepthFunc_ARG_NAMES func -#define gles_glDepthFunc_ARG_EXPAND GLenum func -#define gles_glDepthFunc_PACKED PACKED_void_GLenum -#define gles_glDepthFunc_INDEXED INDEXED_void_GLenum -#define gles_glDepthFunc_FORMAT FORMAT_void_GLenum -#define gles_glDepthMask_INDEX 35 -#define gles_glDepthMask_RETURN void -#define gles_glDepthMask_ARG_NAMES flag -#define gles_glDepthMask_ARG_EXPAND GLboolean flag -#define gles_glDepthMask_PACKED PACKED_void_GLboolean -#define gles_glDepthMask_INDEXED INDEXED_void_GLboolean -#define gles_glDepthMask_FORMAT FORMAT_void_GLboolean -#define gles_glDepthRangef_INDEX 36 -#define gles_glDepthRangef_RETURN void -#define gles_glDepthRangef_ARG_NAMES near, far -#define gles_glDepthRangef_ARG_EXPAND GLclampf near, GLclampf far -#define gles_glDepthRangef_PACKED PACKED_void_GLclampf_GLclampf -#define gles_glDepthRangef_INDEXED INDEXED_void_GLclampf_GLclampf -#define gles_glDepthRangef_FORMAT FORMAT_void_GLclampf_GLclampf -#define gles_glDepthRangex_INDEX 37 -#define gles_glDepthRangex_RETURN void -#define gles_glDepthRangex_ARG_NAMES near, far -#define gles_glDepthRangex_ARG_EXPAND GLclampx near, GLclampx far -#define gles_glDepthRangex_PACKED PACKED_void_GLclampx_GLclampx -#define gles_glDepthRangex_INDEXED INDEXED_void_GLclampx_GLclampx -#define gles_glDepthRangex_FORMAT FORMAT_void_GLclampx_GLclampx -#define gles_glDisable_INDEX 38 -#define gles_glDisable_RETURN void -#define gles_glDisable_ARG_NAMES cap -#define gles_glDisable_ARG_EXPAND GLenum cap -#define gles_glDisable_PACKED PACKED_void_GLenum -#define gles_glDisable_INDEXED INDEXED_void_GLenum -#define gles_glDisable_FORMAT FORMAT_void_GLenum -#define gles_glDisableClientState_INDEX 39 -#define gles_glDisableClientState_RETURN void -#define gles_glDisableClientState_ARG_NAMES array -#define gles_glDisableClientState_ARG_EXPAND GLenum array -#define gles_glDisableClientState_PACKED PACKED_void_GLenum -#define gles_glDisableClientState_INDEXED INDEXED_void_GLenum -#define gles_glDisableClientState_FORMAT FORMAT_void_GLenum -#define gles_glDrawArrays_INDEX 40 -#define gles_glDrawArrays_RETURN void -#define gles_glDrawArrays_ARG_NAMES mode, first, count -#define gles_glDrawArrays_ARG_EXPAND GLenum mode, GLint first, GLsizei count -#define gles_glDrawArrays_PACKED PACKED_void_GLenum_GLint_GLsizei -#define gles_glDrawArrays_INDEXED INDEXED_void_GLenum_GLint_GLsizei -#define gles_glDrawArrays_FORMAT FORMAT_void_GLenum_GLint_GLsizei -#define gles_glDrawElements_INDEX 41 -#define gles_glDrawElements_RETURN void -#define gles_glDrawElements_ARG_NAMES mode, count, type, indices -#define gles_glDrawElements_ARG_EXPAND GLenum mode, GLsizei count, GLenum type, const GLvoid * indices -#define gles_glDrawElements_PACKED PACKED_void_GLenum_GLsizei_GLenum_const_GLvoid___GENPT__ -#define gles_glDrawElements_INDEXED INDEXED_void_GLenum_GLsizei_GLenum_const_GLvoid___GENPT__ -#define gles_glDrawElements_FORMAT FORMAT_void_GLenum_GLsizei_GLenum_const_GLvoid___GENPT__ -#define gles_glEnable_INDEX 42 -#define gles_glEnable_RETURN void -#define gles_glEnable_ARG_NAMES cap -#define gles_glEnable_ARG_EXPAND GLenum cap -#define gles_glEnable_PACKED PACKED_void_GLenum -#define gles_glEnable_INDEXED INDEXED_void_GLenum -#define gles_glEnable_FORMAT FORMAT_void_GLenum -#define gles_glEnableClientState_INDEX 43 -#define gles_glEnableClientState_RETURN void -#define gles_glEnableClientState_ARG_NAMES array -#define gles_glEnableClientState_ARG_EXPAND GLenum array -#define gles_glEnableClientState_PACKED PACKED_void_GLenum -#define gles_glEnableClientState_INDEXED INDEXED_void_GLenum -#define gles_glEnableClientState_FORMAT FORMAT_void_GLenum -#define gles_glFinish_INDEX 44 -#define gles_glFinish_RETURN void -#define gles_glFinish_ARG_NAMES -#define gles_glFinish_ARG_EXPAND -#define gles_glFinish_PACKED PACKED_void -#define gles_glFinish_INDEXED INDEXED_void -#define gles_glFinish_FORMAT FORMAT_void -#define gles_glFlush_INDEX 45 -#define gles_glFlush_RETURN void -#define gles_glFlush_ARG_NAMES -#define gles_glFlush_ARG_EXPAND -#define gles_glFlush_PACKED PACKED_void -#define gles_glFlush_INDEXED INDEXED_void -#define gles_glFlush_FORMAT FORMAT_void -#define gles_glFogf_INDEX 46 -#define gles_glFogf_RETURN void -#define gles_glFogf_ARG_NAMES pname, param -#define gles_glFogf_ARG_EXPAND GLenum pname, GLfloat param -#define gles_glFogf_PACKED PACKED_void_GLenum_GLfloat -#define gles_glFogf_INDEXED INDEXED_void_GLenum_GLfloat -#define gles_glFogf_FORMAT FORMAT_void_GLenum_GLfloat -#define gles_glFogfv_INDEX 47 -#define gles_glFogfv_RETURN void -#define gles_glFogfv_ARG_NAMES pname, params -#define gles_glFogfv_ARG_EXPAND GLenum pname, const GLfloat * params -#define gles_glFogfv_PACKED PACKED_void_GLenum_const_GLfloat___GENPT__ -#define gles_glFogfv_INDEXED INDEXED_void_GLenum_const_GLfloat___GENPT__ -#define gles_glFogfv_FORMAT FORMAT_void_GLenum_const_GLfloat___GENPT__ -#define gles_glFogx_INDEX 48 -#define gles_glFogx_RETURN void -#define gles_glFogx_ARG_NAMES pname, param -#define gles_glFogx_ARG_EXPAND GLenum pname, GLfixed param -#define gles_glFogx_PACKED PACKED_void_GLenum_GLfixed -#define gles_glFogx_INDEXED INDEXED_void_GLenum_GLfixed -#define gles_glFogx_FORMAT FORMAT_void_GLenum_GLfixed -#define gles_glFogxv_INDEX 49 -#define gles_glFogxv_RETURN void -#define gles_glFogxv_ARG_NAMES pname, params -#define gles_glFogxv_ARG_EXPAND GLenum pname, const GLfixed * params -#define gles_glFogxv_PACKED PACKED_void_GLenum_const_GLfixed___GENPT__ -#define gles_glFogxv_INDEXED INDEXED_void_GLenum_const_GLfixed___GENPT__ -#define gles_glFogxv_FORMAT FORMAT_void_GLenum_const_GLfixed___GENPT__ -#define gles_glFrontFace_INDEX 50 -#define gles_glFrontFace_RETURN void -#define gles_glFrontFace_ARG_NAMES mode -#define gles_glFrontFace_ARG_EXPAND GLenum mode -#define gles_glFrontFace_PACKED PACKED_void_GLenum -#define gles_glFrontFace_INDEXED INDEXED_void_GLenum -#define gles_glFrontFace_FORMAT FORMAT_void_GLenum -#define gles_glFrustumf_INDEX 51 -#define gles_glFrustumf_RETURN void -#define gles_glFrustumf_ARG_NAMES left, right, bottom, top, near, far -#define gles_glFrustumf_ARG_EXPAND GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat near, GLfloat far -#define gles_glFrustumf_PACKED PACKED_void_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat -#define gles_glFrustumf_INDEXED INDEXED_void_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat -#define gles_glFrustumf_FORMAT FORMAT_void_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat -#define gles_glFrustumx_INDEX 52 -#define gles_glFrustumx_RETURN void -#define gles_glFrustumx_ARG_NAMES left, right, bottom, top, near, far -#define gles_glFrustumx_ARG_EXPAND GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed near, GLfixed far -#define gles_glFrustumx_PACKED PACKED_void_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed -#define gles_glFrustumx_INDEXED INDEXED_void_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed -#define gles_glFrustumx_FORMAT FORMAT_void_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed -#define gles_glGenBuffers_INDEX 53 -#define gles_glGenBuffers_RETURN void -#define gles_glGenBuffers_ARG_NAMES n, buffers -#define gles_glGenBuffers_ARG_EXPAND GLsizei n, GLuint * buffers -#define gles_glGenBuffers_PACKED PACKED_void_GLsizei_GLuint___GENPT__ -#define gles_glGenBuffers_INDEXED INDEXED_void_GLsizei_GLuint___GENPT__ -#define gles_glGenBuffers_FORMAT FORMAT_void_GLsizei_GLuint___GENPT__ -#define gles_glGenTextures_INDEX 54 -#define gles_glGenTextures_RETURN void -#define gles_glGenTextures_ARG_NAMES n, textures -#define gles_glGenTextures_ARG_EXPAND GLsizei n, GLuint * textures -#define gles_glGenTextures_PACKED PACKED_void_GLsizei_GLuint___GENPT__ -#define gles_glGenTextures_INDEXED INDEXED_void_GLsizei_GLuint___GENPT__ -#define gles_glGenTextures_FORMAT FORMAT_void_GLsizei_GLuint___GENPT__ -#define gles_glGetBooleanv_INDEX 55 -#define gles_glGetBooleanv_RETURN void -#define gles_glGetBooleanv_ARG_NAMES pname, params -#define gles_glGetBooleanv_ARG_EXPAND GLenum pname, GLboolean * params -#define gles_glGetBooleanv_PACKED PACKED_void_GLenum_GLboolean___GENPT__ -#define gles_glGetBooleanv_INDEXED INDEXED_void_GLenum_GLboolean___GENPT__ -#define gles_glGetBooleanv_FORMAT FORMAT_void_GLenum_GLboolean___GENPT__ -#define gles_glGetBufferParameteriv_INDEX 56 -#define gles_glGetBufferParameteriv_RETURN void -#define gles_glGetBufferParameteriv_ARG_NAMES target, pname, params -#define gles_glGetBufferParameteriv_ARG_EXPAND GLenum target, GLenum pname, GLint * params -#define gles_glGetBufferParameteriv_PACKED PACKED_void_GLenum_GLenum_GLint___GENPT__ -#define gles_glGetBufferParameteriv_INDEXED INDEXED_void_GLenum_GLenum_GLint___GENPT__ -#define gles_glGetBufferParameteriv_FORMAT FORMAT_void_GLenum_GLenum_GLint___GENPT__ -#define gles_glGetClipPlanef_INDEX 57 -#define gles_glGetClipPlanef_RETURN void -#define gles_glGetClipPlanef_ARG_NAMES plane, equation -#define gles_glGetClipPlanef_ARG_EXPAND GLenum plane, GLfloat * equation -#define gles_glGetClipPlanef_PACKED PACKED_void_GLenum_GLfloat___GENPT__ -#define gles_glGetClipPlanef_INDEXED INDEXED_void_GLenum_GLfloat___GENPT__ -#define gles_glGetClipPlanef_FORMAT FORMAT_void_GLenum_GLfloat___GENPT__ -#define gles_glGetClipPlanex_INDEX 58 -#define gles_glGetClipPlanex_RETURN void -#define gles_glGetClipPlanex_ARG_NAMES plane, equation -#define gles_glGetClipPlanex_ARG_EXPAND GLenum plane, GLfixed * equation -#define gles_glGetClipPlanex_PACKED PACKED_void_GLenum_GLfixed___GENPT__ -#define gles_glGetClipPlanex_INDEXED INDEXED_void_GLenum_GLfixed___GENPT__ -#define gles_glGetClipPlanex_FORMAT FORMAT_void_GLenum_GLfixed___GENPT__ -#define gles_glGetError_INDEX 59 -#define gles_glGetError_RETURN GLenum -#define gles_glGetError_ARG_NAMES -#define gles_glGetError_ARG_EXPAND -#define gles_glGetError_PACKED PACKED_GLenum -#define gles_glGetError_INDEXED INDEXED_GLenum -#define gles_glGetError_FORMAT FORMAT_GLenum -#define gles_glGetFixedv_INDEX 60 -#define gles_glGetFixedv_RETURN void -#define gles_glGetFixedv_ARG_NAMES pname, params -#define gles_glGetFixedv_ARG_EXPAND GLenum pname, GLfixed * params -#define gles_glGetFixedv_PACKED PACKED_void_GLenum_GLfixed___GENPT__ -#define gles_glGetFixedv_INDEXED INDEXED_void_GLenum_GLfixed___GENPT__ -#define gles_glGetFixedv_FORMAT FORMAT_void_GLenum_GLfixed___GENPT__ -#define gles_glGetFloatv_INDEX 61 -#define gles_glGetFloatv_RETURN void -#define gles_glGetFloatv_ARG_NAMES pname, params -#define gles_glGetFloatv_ARG_EXPAND GLenum pname, GLfloat * params -#define gles_glGetFloatv_PACKED PACKED_void_GLenum_GLfloat___GENPT__ -#define gles_glGetFloatv_INDEXED INDEXED_void_GLenum_GLfloat___GENPT__ -#define gles_glGetFloatv_FORMAT FORMAT_void_GLenum_GLfloat___GENPT__ -#define gles_glGetIntegerv_INDEX 62 -#define gles_glGetIntegerv_RETURN void -#define gles_glGetIntegerv_ARG_NAMES pname, params -#define gles_glGetIntegerv_ARG_EXPAND GLenum pname, GLint * params -#define gles_glGetIntegerv_PACKED PACKED_void_GLenum_GLint___GENPT__ -#define gles_glGetIntegerv_INDEXED INDEXED_void_GLenum_GLint___GENPT__ -#define gles_glGetIntegerv_FORMAT FORMAT_void_GLenum_GLint___GENPT__ -#define gles_glGetLightfv_INDEX 63 -#define gles_glGetLightfv_RETURN void -#define gles_glGetLightfv_ARG_NAMES light, pname, params -#define gles_glGetLightfv_ARG_EXPAND GLenum light, GLenum pname, GLfloat * params -#define gles_glGetLightfv_PACKED PACKED_void_GLenum_GLenum_GLfloat___GENPT__ -#define gles_glGetLightfv_INDEXED INDEXED_void_GLenum_GLenum_GLfloat___GENPT__ -#define gles_glGetLightfv_FORMAT FORMAT_void_GLenum_GLenum_GLfloat___GENPT__ -#define gles_glGetLightxv_INDEX 64 -#define gles_glGetLightxv_RETURN void -#define gles_glGetLightxv_ARG_NAMES light, pname, params -#define gles_glGetLightxv_ARG_EXPAND GLenum light, GLenum pname, GLfixed * params -#define gles_glGetLightxv_PACKED PACKED_void_GLenum_GLenum_GLfixed___GENPT__ -#define gles_glGetLightxv_INDEXED INDEXED_void_GLenum_GLenum_GLfixed___GENPT__ -#define gles_glGetLightxv_FORMAT FORMAT_void_GLenum_GLenum_GLfixed___GENPT__ -#define gles_glGetMaterialfv_INDEX 65 -#define gles_glGetMaterialfv_RETURN void -#define gles_glGetMaterialfv_ARG_NAMES face, pname, params -#define gles_glGetMaterialfv_ARG_EXPAND GLenum face, GLenum pname, GLfloat * params -#define gles_glGetMaterialfv_PACKED PACKED_void_GLenum_GLenum_GLfloat___GENPT__ -#define gles_glGetMaterialfv_INDEXED INDEXED_void_GLenum_GLenum_GLfloat___GENPT__ -#define gles_glGetMaterialfv_FORMAT FORMAT_void_GLenum_GLenum_GLfloat___GENPT__ -#define gles_glGetMaterialxv_INDEX 66 -#define gles_glGetMaterialxv_RETURN void -#define gles_glGetMaterialxv_ARG_NAMES face, pname, params -#define gles_glGetMaterialxv_ARG_EXPAND GLenum face, GLenum pname, GLfixed * params -#define gles_glGetMaterialxv_PACKED PACKED_void_GLenum_GLenum_GLfixed___GENPT__ -#define gles_glGetMaterialxv_INDEXED INDEXED_void_GLenum_GLenum_GLfixed___GENPT__ -#define gles_glGetMaterialxv_FORMAT FORMAT_void_GLenum_GLenum_GLfixed___GENPT__ -#define gles_glGetPointerv_INDEX 67 -#define gles_glGetPointerv_RETURN void -#define gles_glGetPointerv_ARG_NAMES pname, params -#define gles_glGetPointerv_ARG_EXPAND GLenum pname, GLvoid ** params -#define gles_glGetPointerv_PACKED PACKED_void_GLenum_GLvoid___GENPT____GENPT__ -#define gles_glGetPointerv_INDEXED INDEXED_void_GLenum_GLvoid___GENPT____GENPT__ -#define gles_glGetPointerv_FORMAT FORMAT_void_GLenum_GLvoid___GENPT____GENPT__ -#define gles_glGetString_INDEX 68 -#define gles_glGetString_RETURN const GLubyte * -#define gles_glGetString_ARG_NAMES name -#define gles_glGetString_ARG_EXPAND GLenum name -#define gles_glGetString_PACKED PACKED_const_GLubyte___GENPT___GLenum -#define gles_glGetString_INDEXED INDEXED_const_GLubyte___GENPT___GLenum -#define gles_glGetString_FORMAT FORMAT_const_GLubyte___GENPT___GLenum -#define gles_glGetTexEnvfv_INDEX 69 -#define gles_glGetTexEnvfv_RETURN void -#define gles_glGetTexEnvfv_ARG_NAMES target, pname, params -#define gles_glGetTexEnvfv_ARG_EXPAND GLenum target, GLenum pname, GLfloat * params -#define gles_glGetTexEnvfv_PACKED PACKED_void_GLenum_GLenum_GLfloat___GENPT__ -#define gles_glGetTexEnvfv_INDEXED INDEXED_void_GLenum_GLenum_GLfloat___GENPT__ -#define gles_glGetTexEnvfv_FORMAT FORMAT_void_GLenum_GLenum_GLfloat___GENPT__ -#define gles_glGetTexEnviv_INDEX 70 -#define gles_glGetTexEnviv_RETURN void -#define gles_glGetTexEnviv_ARG_NAMES target, pname, params -#define gles_glGetTexEnviv_ARG_EXPAND GLenum target, GLenum pname, GLint * params -#define gles_glGetTexEnviv_PACKED PACKED_void_GLenum_GLenum_GLint___GENPT__ -#define gles_glGetTexEnviv_INDEXED INDEXED_void_GLenum_GLenum_GLint___GENPT__ -#define gles_glGetTexEnviv_FORMAT FORMAT_void_GLenum_GLenum_GLint___GENPT__ -#define gles_glGetTexEnvxv_INDEX 71 -#define gles_glGetTexEnvxv_RETURN void -#define gles_glGetTexEnvxv_ARG_NAMES target, pname, params -#define gles_glGetTexEnvxv_ARG_EXPAND GLenum target, GLenum pname, GLfixed * params -#define gles_glGetTexEnvxv_PACKED PACKED_void_GLenum_GLenum_GLfixed___GENPT__ -#define gles_glGetTexEnvxv_INDEXED INDEXED_void_GLenum_GLenum_GLfixed___GENPT__ -#define gles_glGetTexEnvxv_FORMAT FORMAT_void_GLenum_GLenum_GLfixed___GENPT__ -#define gles_glGetTexParameterfv_INDEX 72 -#define gles_glGetTexParameterfv_RETURN void -#define gles_glGetTexParameterfv_ARG_NAMES target, pname, params -#define gles_glGetTexParameterfv_ARG_EXPAND GLenum target, GLenum pname, GLfloat * params -#define gles_glGetTexParameterfv_PACKED PACKED_void_GLenum_GLenum_GLfloat___GENPT__ -#define gles_glGetTexParameterfv_INDEXED INDEXED_void_GLenum_GLenum_GLfloat___GENPT__ -#define gles_glGetTexParameterfv_FORMAT FORMAT_void_GLenum_GLenum_GLfloat___GENPT__ -#define gles_glGetTexParameteriv_INDEX 73 -#define gles_glGetTexParameteriv_RETURN void -#define gles_glGetTexParameteriv_ARG_NAMES target, pname, params -#define gles_glGetTexParameteriv_ARG_EXPAND GLenum target, GLenum pname, GLint * params -#define gles_glGetTexParameteriv_PACKED PACKED_void_GLenum_GLenum_GLint___GENPT__ -#define gles_glGetTexParameteriv_INDEXED INDEXED_void_GLenum_GLenum_GLint___GENPT__ -#define gles_glGetTexParameteriv_FORMAT FORMAT_void_GLenum_GLenum_GLint___GENPT__ -#define gles_glGetTexParameterxv_INDEX 74 -#define gles_glGetTexParameterxv_RETURN void -#define gles_glGetTexParameterxv_ARG_NAMES target, pname, params -#define gles_glGetTexParameterxv_ARG_EXPAND GLenum target, GLenum pname, GLfixed * params -#define gles_glGetTexParameterxv_PACKED PACKED_void_GLenum_GLenum_GLfixed___GENPT__ -#define gles_glGetTexParameterxv_INDEXED INDEXED_void_GLenum_GLenum_GLfixed___GENPT__ -#define gles_glGetTexParameterxv_FORMAT FORMAT_void_GLenum_GLenum_GLfixed___GENPT__ -#define gles_glHint_INDEX 75 -#define gles_glHint_RETURN void -#define gles_glHint_ARG_NAMES target, mode -#define gles_glHint_ARG_EXPAND GLenum target, GLenum mode -#define gles_glHint_PACKED PACKED_void_GLenum_GLenum -#define gles_glHint_INDEXED INDEXED_void_GLenum_GLenum -#define gles_glHint_FORMAT FORMAT_void_GLenum_GLenum -#define gles_glIsBuffer_INDEX 76 -#define gles_glIsBuffer_RETURN GLboolean -#define gles_glIsBuffer_ARG_NAMES buffer -#define gles_glIsBuffer_ARG_EXPAND GLuint buffer -#define gles_glIsBuffer_PACKED PACKED_GLboolean_GLuint -#define gles_glIsBuffer_INDEXED INDEXED_GLboolean_GLuint -#define gles_glIsBuffer_FORMAT FORMAT_GLboolean_GLuint -#define gles_glIsEnabled_INDEX 77 -#define gles_glIsEnabled_RETURN GLboolean -#define gles_glIsEnabled_ARG_NAMES cap -#define gles_glIsEnabled_ARG_EXPAND GLenum cap -#define gles_glIsEnabled_PACKED PACKED_GLboolean_GLenum -#define gles_glIsEnabled_INDEXED INDEXED_GLboolean_GLenum -#define gles_glIsEnabled_FORMAT FORMAT_GLboolean_GLenum -#define gles_glIsTexture_INDEX 78 -#define gles_glIsTexture_RETURN GLboolean -#define gles_glIsTexture_ARG_NAMES texture -#define gles_glIsTexture_ARG_EXPAND GLuint texture -#define gles_glIsTexture_PACKED PACKED_GLboolean_GLuint -#define gles_glIsTexture_INDEXED INDEXED_GLboolean_GLuint -#define gles_glIsTexture_FORMAT FORMAT_GLboolean_GLuint -#define gles_glLightModelf_INDEX 79 -#define gles_glLightModelf_RETURN void -#define gles_glLightModelf_ARG_NAMES pname, param -#define gles_glLightModelf_ARG_EXPAND GLenum pname, GLfloat param -#define gles_glLightModelf_PACKED PACKED_void_GLenum_GLfloat -#define gles_glLightModelf_INDEXED INDEXED_void_GLenum_GLfloat -#define gles_glLightModelf_FORMAT FORMAT_void_GLenum_GLfloat -#define gles_glLightModelfv_INDEX 80 -#define gles_glLightModelfv_RETURN void -#define gles_glLightModelfv_ARG_NAMES pname, params -#define gles_glLightModelfv_ARG_EXPAND GLenum pname, const GLfloat * params -#define gles_glLightModelfv_PACKED PACKED_void_GLenum_const_GLfloat___GENPT__ -#define gles_glLightModelfv_INDEXED INDEXED_void_GLenum_const_GLfloat___GENPT__ -#define gles_glLightModelfv_FORMAT FORMAT_void_GLenum_const_GLfloat___GENPT__ -#define gles_glLightModelx_INDEX 81 -#define gles_glLightModelx_RETURN void -#define gles_glLightModelx_ARG_NAMES pname, param -#define gles_glLightModelx_ARG_EXPAND GLenum pname, GLfixed param -#define gles_glLightModelx_PACKED PACKED_void_GLenum_GLfixed -#define gles_glLightModelx_INDEXED INDEXED_void_GLenum_GLfixed -#define gles_glLightModelx_FORMAT FORMAT_void_GLenum_GLfixed -#define gles_glLightModelxv_INDEX 82 -#define gles_glLightModelxv_RETURN void -#define gles_glLightModelxv_ARG_NAMES pname, params -#define gles_glLightModelxv_ARG_EXPAND GLenum pname, const GLfixed * params -#define gles_glLightModelxv_PACKED PACKED_void_GLenum_const_GLfixed___GENPT__ -#define gles_glLightModelxv_INDEXED INDEXED_void_GLenum_const_GLfixed___GENPT__ -#define gles_glLightModelxv_FORMAT FORMAT_void_GLenum_const_GLfixed___GENPT__ -#define gles_glLightf_INDEX 83 -#define gles_glLightf_RETURN void -#define gles_glLightf_ARG_NAMES light, pname, param -#define gles_glLightf_ARG_EXPAND GLenum light, GLenum pname, GLfloat param -#define gles_glLightf_PACKED PACKED_void_GLenum_GLenum_GLfloat -#define gles_glLightf_INDEXED INDEXED_void_GLenum_GLenum_GLfloat -#define gles_glLightf_FORMAT FORMAT_void_GLenum_GLenum_GLfloat -#define gles_glLightfv_INDEX 84 -#define gles_glLightfv_RETURN void -#define gles_glLightfv_ARG_NAMES light, pname, params -#define gles_glLightfv_ARG_EXPAND GLenum light, GLenum pname, const GLfloat * params -#define gles_glLightfv_PACKED PACKED_void_GLenum_GLenum_const_GLfloat___GENPT__ -#define gles_glLightfv_INDEXED INDEXED_void_GLenum_GLenum_const_GLfloat___GENPT__ -#define gles_glLightfv_FORMAT FORMAT_void_GLenum_GLenum_const_GLfloat___GENPT__ -#define gles_glLightx_INDEX 85 -#define gles_glLightx_RETURN void -#define gles_glLightx_ARG_NAMES light, pname, param -#define gles_glLightx_ARG_EXPAND GLenum light, GLenum pname, GLfixed param -#define gles_glLightx_PACKED PACKED_void_GLenum_GLenum_GLfixed -#define gles_glLightx_INDEXED INDEXED_void_GLenum_GLenum_GLfixed -#define gles_glLightx_FORMAT FORMAT_void_GLenum_GLenum_GLfixed -#define gles_glLightxv_INDEX 86 -#define gles_glLightxv_RETURN void -#define gles_glLightxv_ARG_NAMES light, pname, params -#define gles_glLightxv_ARG_EXPAND GLenum light, GLenum pname, const GLfixed * params -#define gles_glLightxv_PACKED PACKED_void_GLenum_GLenum_const_GLfixed___GENPT__ -#define gles_glLightxv_INDEXED INDEXED_void_GLenum_GLenum_const_GLfixed___GENPT__ -#define gles_glLightxv_FORMAT FORMAT_void_GLenum_GLenum_const_GLfixed___GENPT__ -#define gles_glLineWidth_INDEX 87 -#define gles_glLineWidth_RETURN void -#define gles_glLineWidth_ARG_NAMES width -#define gles_glLineWidth_ARG_EXPAND GLfloat width -#define gles_glLineWidth_PACKED PACKED_void_GLfloat -#define gles_glLineWidth_INDEXED INDEXED_void_GLfloat -#define gles_glLineWidth_FORMAT FORMAT_void_GLfloat -#define gles_glLineWidthx_INDEX 88 -#define gles_glLineWidthx_RETURN void -#define gles_glLineWidthx_ARG_NAMES width -#define gles_glLineWidthx_ARG_EXPAND GLfixed width -#define gles_glLineWidthx_PACKED PACKED_void_GLfixed -#define gles_glLineWidthx_INDEXED INDEXED_void_GLfixed -#define gles_glLineWidthx_FORMAT FORMAT_void_GLfixed -#define gles_glLoadIdentity_INDEX 89 -#define gles_glLoadIdentity_RETURN void -#define gles_glLoadIdentity_ARG_NAMES -#define gles_glLoadIdentity_ARG_EXPAND -#define gles_glLoadIdentity_PACKED PACKED_void -#define gles_glLoadIdentity_INDEXED INDEXED_void -#define gles_glLoadIdentity_FORMAT FORMAT_void -#define gles_glLoadMatrixf_INDEX 90 -#define gles_glLoadMatrixf_RETURN void -#define gles_glLoadMatrixf_ARG_NAMES m -#define gles_glLoadMatrixf_ARG_EXPAND const GLfloat * m -#define gles_glLoadMatrixf_PACKED PACKED_void_const_GLfloat___GENPT__ -#define gles_glLoadMatrixf_INDEXED INDEXED_void_const_GLfloat___GENPT__ -#define gles_glLoadMatrixf_FORMAT FORMAT_void_const_GLfloat___GENPT__ -#define gles_glLoadMatrixx_INDEX 91 -#define gles_glLoadMatrixx_RETURN void -#define gles_glLoadMatrixx_ARG_NAMES m -#define gles_glLoadMatrixx_ARG_EXPAND const GLfixed * m -#define gles_glLoadMatrixx_PACKED PACKED_void_const_GLfixed___GENPT__ -#define gles_glLoadMatrixx_INDEXED INDEXED_void_const_GLfixed___GENPT__ -#define gles_glLoadMatrixx_FORMAT FORMAT_void_const_GLfixed___GENPT__ -#define gles_glLogicOp_INDEX 92 -#define gles_glLogicOp_RETURN void -#define gles_glLogicOp_ARG_NAMES opcode -#define gles_glLogicOp_ARG_EXPAND GLenum opcode -#define gles_glLogicOp_PACKED PACKED_void_GLenum -#define gles_glLogicOp_INDEXED INDEXED_void_GLenum -#define gles_glLogicOp_FORMAT FORMAT_void_GLenum -#define gles_glMaterialf_INDEX 93 -#define gles_glMaterialf_RETURN void -#define gles_glMaterialf_ARG_NAMES face, pname, param -#define gles_glMaterialf_ARG_EXPAND GLenum face, GLenum pname, GLfloat param -#define gles_glMaterialf_PACKED PACKED_void_GLenum_GLenum_GLfloat -#define gles_glMaterialf_INDEXED INDEXED_void_GLenum_GLenum_GLfloat -#define gles_glMaterialf_FORMAT FORMAT_void_GLenum_GLenum_GLfloat -#define gles_glMaterialfv_INDEX 94 -#define gles_glMaterialfv_RETURN void -#define gles_glMaterialfv_ARG_NAMES face, pname, params -#define gles_glMaterialfv_ARG_EXPAND GLenum face, GLenum pname, const GLfloat * params -#define gles_glMaterialfv_PACKED PACKED_void_GLenum_GLenum_const_GLfloat___GENPT__ -#define gles_glMaterialfv_INDEXED INDEXED_void_GLenum_GLenum_const_GLfloat___GENPT__ -#define gles_glMaterialfv_FORMAT FORMAT_void_GLenum_GLenum_const_GLfloat___GENPT__ -#define gles_glMaterialx_INDEX 95 -#define gles_glMaterialx_RETURN void -#define gles_glMaterialx_ARG_NAMES face, pname, param -#define gles_glMaterialx_ARG_EXPAND GLenum face, GLenum pname, GLfixed param -#define gles_glMaterialx_PACKED PACKED_void_GLenum_GLenum_GLfixed -#define gles_glMaterialx_INDEXED INDEXED_void_GLenum_GLenum_GLfixed -#define gles_glMaterialx_FORMAT FORMAT_void_GLenum_GLenum_GLfixed -#define gles_glMaterialxv_INDEX 96 -#define gles_glMaterialxv_RETURN void -#define gles_glMaterialxv_ARG_NAMES face, pname, params -#define gles_glMaterialxv_ARG_EXPAND GLenum face, GLenum pname, const GLfixed * params -#define gles_glMaterialxv_PACKED PACKED_void_GLenum_GLenum_const_GLfixed___GENPT__ -#define gles_glMaterialxv_INDEXED INDEXED_void_GLenum_GLenum_const_GLfixed___GENPT__ -#define gles_glMaterialxv_FORMAT FORMAT_void_GLenum_GLenum_const_GLfixed___GENPT__ -#define gles_glMatrixMode_INDEX 97 -#define gles_glMatrixMode_RETURN void -#define gles_glMatrixMode_ARG_NAMES mode -#define gles_glMatrixMode_ARG_EXPAND GLenum mode -#define gles_glMatrixMode_PACKED PACKED_void_GLenum -#define gles_glMatrixMode_INDEXED INDEXED_void_GLenum -#define gles_glMatrixMode_FORMAT FORMAT_void_GLenum -#define gles_glMultMatrixf_INDEX 98 -#define gles_glMultMatrixf_RETURN void -#define gles_glMultMatrixf_ARG_NAMES m -#define gles_glMultMatrixf_ARG_EXPAND const GLfloat * m -#define gles_glMultMatrixf_PACKED PACKED_void_const_GLfloat___GENPT__ -#define gles_glMultMatrixf_INDEXED INDEXED_void_const_GLfloat___GENPT__ -#define gles_glMultMatrixf_FORMAT FORMAT_void_const_GLfloat___GENPT__ -#define gles_glMultMatrixx_INDEX 99 -#define gles_glMultMatrixx_RETURN void -#define gles_glMultMatrixx_ARG_NAMES m -#define gles_glMultMatrixx_ARG_EXPAND const GLfixed * m -#define gles_glMultMatrixx_PACKED PACKED_void_const_GLfixed___GENPT__ -#define gles_glMultMatrixx_INDEXED INDEXED_void_const_GLfixed___GENPT__ -#define gles_glMultMatrixx_FORMAT FORMAT_void_const_GLfixed___GENPT__ -#define gles_glMultiTexCoord4f_INDEX 100 -#define gles_glMultiTexCoord4f_RETURN void -#define gles_glMultiTexCoord4f_ARG_NAMES target, s, t, r, q -#define gles_glMultiTexCoord4f_ARG_EXPAND GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q -#define gles_glMultiTexCoord4f_PACKED PACKED_void_GLenum_GLfloat_GLfloat_GLfloat_GLfloat -#define gles_glMultiTexCoord4f_INDEXED INDEXED_void_GLenum_GLfloat_GLfloat_GLfloat_GLfloat -#define gles_glMultiTexCoord4f_FORMAT FORMAT_void_GLenum_GLfloat_GLfloat_GLfloat_GLfloat -#define gles_glMultiTexCoord4x_INDEX 101 -#define gles_glMultiTexCoord4x_RETURN void -#define gles_glMultiTexCoord4x_ARG_NAMES target, s, t, r, q -#define gles_glMultiTexCoord4x_ARG_EXPAND GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q -#define gles_glMultiTexCoord4x_PACKED PACKED_void_GLenum_GLfixed_GLfixed_GLfixed_GLfixed -#define gles_glMultiTexCoord4x_INDEXED INDEXED_void_GLenum_GLfixed_GLfixed_GLfixed_GLfixed -#define gles_glMultiTexCoord4x_FORMAT FORMAT_void_GLenum_GLfixed_GLfixed_GLfixed_GLfixed -#define gles_glNormal3f_INDEX 102 -#define gles_glNormal3f_RETURN void -#define gles_glNormal3f_ARG_NAMES nx, ny, nz -#define gles_glNormal3f_ARG_EXPAND GLfloat nx, GLfloat ny, GLfloat nz -#define gles_glNormal3f_PACKED PACKED_void_GLfloat_GLfloat_GLfloat -#define gles_glNormal3f_INDEXED INDEXED_void_GLfloat_GLfloat_GLfloat -#define gles_glNormal3f_FORMAT FORMAT_void_GLfloat_GLfloat_GLfloat -#define gles_glNormal3x_INDEX 103 -#define gles_glNormal3x_RETURN void -#define gles_glNormal3x_ARG_NAMES nx, ny, nz -#define gles_glNormal3x_ARG_EXPAND GLfixed nx, GLfixed ny, GLfixed nz -#define gles_glNormal3x_PACKED PACKED_void_GLfixed_GLfixed_GLfixed -#define gles_glNormal3x_INDEXED INDEXED_void_GLfixed_GLfixed_GLfixed -#define gles_glNormal3x_FORMAT FORMAT_void_GLfixed_GLfixed_GLfixed -#define gles_glNormalPointer_INDEX 104 -#define gles_glNormalPointer_RETURN void -#define gles_glNormalPointer_ARG_NAMES type, stride, pointer -#define gles_glNormalPointer_ARG_EXPAND GLenum type, GLsizei stride, const GLvoid * pointer -#define gles_glNormalPointer_PACKED PACKED_void_GLenum_GLsizei_const_GLvoid___GENPT__ -#define gles_glNormalPointer_INDEXED INDEXED_void_GLenum_GLsizei_const_GLvoid___GENPT__ -#define gles_glNormalPointer_FORMAT FORMAT_void_GLenum_GLsizei_const_GLvoid___GENPT__ -#define gles_glOrthof_INDEX 105 -#define gles_glOrthof_RETURN void -#define gles_glOrthof_ARG_NAMES left, right, bottom, top, near, far -#define gles_glOrthof_ARG_EXPAND GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat near, GLfloat far -#define gles_glOrthof_PACKED PACKED_void_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat -#define gles_glOrthof_INDEXED INDEXED_void_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat -#define gles_glOrthof_FORMAT FORMAT_void_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat_GLfloat -#define gles_glOrthox_INDEX 106 -#define gles_glOrthox_RETURN void -#define gles_glOrthox_ARG_NAMES left, right, bottom, top, near, far -#define gles_glOrthox_ARG_EXPAND GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed near, GLfixed far -#define gles_glOrthox_PACKED PACKED_void_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed -#define gles_glOrthox_INDEXED INDEXED_void_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed -#define gles_glOrthox_FORMAT FORMAT_void_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed_GLfixed -#define gles_glPixelStorei_INDEX 107 -#define gles_glPixelStorei_RETURN void -#define gles_glPixelStorei_ARG_NAMES pname, param -#define gles_glPixelStorei_ARG_EXPAND GLenum pname, GLint param -#define gles_glPixelStorei_PACKED PACKED_void_GLenum_GLint -#define gles_glPixelStorei_INDEXED INDEXED_void_GLenum_GLint -#define gles_glPixelStorei_FORMAT FORMAT_void_GLenum_GLint -#define gles_glPointParameterf_INDEX 108 -#define gles_glPointParameterf_RETURN void -#define gles_glPointParameterf_ARG_NAMES pname, param -#define gles_glPointParameterf_ARG_EXPAND GLenum pname, GLfloat param -#define gles_glPointParameterf_PACKED PACKED_void_GLenum_GLfloat -#define gles_glPointParameterf_INDEXED INDEXED_void_GLenum_GLfloat -#define gles_glPointParameterf_FORMAT FORMAT_void_GLenum_GLfloat -#define gles_glPointParameterfv_INDEX 109 -#define gles_glPointParameterfv_RETURN void -#define gles_glPointParameterfv_ARG_NAMES pname, params -#define gles_glPointParameterfv_ARG_EXPAND GLenum pname, const GLfloat * params -#define gles_glPointParameterfv_PACKED PACKED_void_GLenum_const_GLfloat___GENPT__ -#define gles_glPointParameterfv_INDEXED INDEXED_void_GLenum_const_GLfloat___GENPT__ -#define gles_glPointParameterfv_FORMAT FORMAT_void_GLenum_const_GLfloat___GENPT__ -#define gles_glPointParameterx_INDEX 110 -#define gles_glPointParameterx_RETURN void -#define gles_glPointParameterx_ARG_NAMES pname, param -#define gles_glPointParameterx_ARG_EXPAND GLenum pname, GLfixed param -#define gles_glPointParameterx_PACKED PACKED_void_GLenum_GLfixed -#define gles_glPointParameterx_INDEXED INDEXED_void_GLenum_GLfixed -#define gles_glPointParameterx_FORMAT FORMAT_void_GLenum_GLfixed -#define gles_glPointParameterxv_INDEX 111 -#define gles_glPointParameterxv_RETURN void -#define gles_glPointParameterxv_ARG_NAMES pname, params -#define gles_glPointParameterxv_ARG_EXPAND GLenum pname, const GLfixed * params -#define gles_glPointParameterxv_PACKED PACKED_void_GLenum_const_GLfixed___GENPT__ -#define gles_glPointParameterxv_INDEXED INDEXED_void_GLenum_const_GLfixed___GENPT__ -#define gles_glPointParameterxv_FORMAT FORMAT_void_GLenum_const_GLfixed___GENPT__ -#define gles_glPointSize_INDEX 112 -#define gles_glPointSize_RETURN void -#define gles_glPointSize_ARG_NAMES size -#define gles_glPointSize_ARG_EXPAND GLfloat size -#define gles_glPointSize_PACKED PACKED_void_GLfloat -#define gles_glPointSize_INDEXED INDEXED_void_GLfloat -#define gles_glPointSize_FORMAT FORMAT_void_GLfloat -#define gles_glPointSizePointerOES_INDEX 113 -#define gles_glPointSizePointerOES_RETURN void -#define gles_glPointSizePointerOES_ARG_NAMES type, stride, pointer -#define gles_glPointSizePointerOES_ARG_EXPAND GLenum type, GLsizei stride, const GLvoid * pointer -#define gles_glPointSizePointerOES_PACKED PACKED_void_GLenum_GLsizei_const_GLvoid___GENPT__ -#define gles_glPointSizePointerOES_INDEXED INDEXED_void_GLenum_GLsizei_const_GLvoid___GENPT__ -#define gles_glPointSizePointerOES_FORMAT FORMAT_void_GLenum_GLsizei_const_GLvoid___GENPT__ -#define gles_glPointSizex_INDEX 114 -#define gles_glPointSizex_RETURN void -#define gles_glPointSizex_ARG_NAMES size -#define gles_glPointSizex_ARG_EXPAND GLfixed size -#define gles_glPointSizex_PACKED PACKED_void_GLfixed -#define gles_glPointSizex_INDEXED INDEXED_void_GLfixed -#define gles_glPointSizex_FORMAT FORMAT_void_GLfixed -#define gles_glPolygonOffset_INDEX 115 -#define gles_glPolygonOffset_RETURN void -#define gles_glPolygonOffset_ARG_NAMES factor, units -#define gles_glPolygonOffset_ARG_EXPAND GLfloat factor, GLfloat units -#define gles_glPolygonOffset_PACKED PACKED_void_GLfloat_GLfloat -#define gles_glPolygonOffset_INDEXED INDEXED_void_GLfloat_GLfloat -#define gles_glPolygonOffset_FORMAT FORMAT_void_GLfloat_GLfloat -#define gles_glPolygonOffsetx_INDEX 116 -#define gles_glPolygonOffsetx_RETURN void -#define gles_glPolygonOffsetx_ARG_NAMES factor, units -#define gles_glPolygonOffsetx_ARG_EXPAND GLfixed factor, GLfixed units -#define gles_glPolygonOffsetx_PACKED PACKED_void_GLfixed_GLfixed -#define gles_glPolygonOffsetx_INDEXED INDEXED_void_GLfixed_GLfixed -#define gles_glPolygonOffsetx_FORMAT FORMAT_void_GLfixed_GLfixed -#define gles_glPopMatrix_INDEX 117 -#define gles_glPopMatrix_RETURN void -#define gles_glPopMatrix_ARG_NAMES -#define gles_glPopMatrix_ARG_EXPAND -#define gles_glPopMatrix_PACKED PACKED_void -#define gles_glPopMatrix_INDEXED INDEXED_void -#define gles_glPopMatrix_FORMAT FORMAT_void -#define gles_glPushMatrix_INDEX 118 -#define gles_glPushMatrix_RETURN void -#define gles_glPushMatrix_ARG_NAMES -#define gles_glPushMatrix_ARG_EXPAND -#define gles_glPushMatrix_PACKED PACKED_void -#define gles_glPushMatrix_INDEXED INDEXED_void -#define gles_glPushMatrix_FORMAT FORMAT_void -#define gles_glReadPixels_INDEX 119 -#define gles_glReadPixels_RETURN void -#define gles_glReadPixels_ARG_NAMES x, y, width, height, format, type, pixels -#define gles_glReadPixels_ARG_EXPAND GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid * pixels -#define gles_glReadPixels_PACKED PACKED_void_GLint_GLint_GLsizei_GLsizei_GLenum_GLenum_GLvoid___GENPT__ -#define gles_glReadPixels_INDEXED INDEXED_void_GLint_GLint_GLsizei_GLsizei_GLenum_GLenum_GLvoid___GENPT__ -#define gles_glReadPixels_FORMAT FORMAT_void_GLint_GLint_GLsizei_GLsizei_GLenum_GLenum_GLvoid___GENPT__ -#define gles_glRotatef_INDEX 120 -#define gles_glRotatef_RETURN void -#define gles_glRotatef_ARG_NAMES angle, x, y, z -#define gles_glRotatef_ARG_EXPAND GLfloat angle, GLfloat x, GLfloat y, GLfloat z -#define gles_glRotatef_PACKED PACKED_void_GLfloat_GLfloat_GLfloat_GLfloat -#define gles_glRotatef_INDEXED INDEXED_void_GLfloat_GLfloat_GLfloat_GLfloat -#define gles_glRotatef_FORMAT FORMAT_void_GLfloat_GLfloat_GLfloat_GLfloat -#define gles_glRotatex_INDEX 121 -#define gles_glRotatex_RETURN void -#define gles_glRotatex_ARG_NAMES angle, x, y, z -#define gles_glRotatex_ARG_EXPAND GLfixed angle, GLfixed x, GLfixed y, GLfixed z -#define gles_glRotatex_PACKED PACKED_void_GLfixed_GLfixed_GLfixed_GLfixed -#define gles_glRotatex_INDEXED INDEXED_void_GLfixed_GLfixed_GLfixed_GLfixed -#define gles_glRotatex_FORMAT FORMAT_void_GLfixed_GLfixed_GLfixed_GLfixed -#define gles_glSampleCoverage_INDEX 122 -#define gles_glSampleCoverage_RETURN void -#define gles_glSampleCoverage_ARG_NAMES value, invert -#define gles_glSampleCoverage_ARG_EXPAND GLclampf value, GLboolean invert -#define gles_glSampleCoverage_PACKED PACKED_void_GLclampf_GLboolean -#define gles_glSampleCoverage_INDEXED INDEXED_void_GLclampf_GLboolean -#define gles_glSampleCoverage_FORMAT FORMAT_void_GLclampf_GLboolean -#define gles_glSampleCoveragex_INDEX 123 -#define gles_glSampleCoveragex_RETURN void -#define gles_glSampleCoveragex_ARG_NAMES value, invert -#define gles_glSampleCoveragex_ARG_EXPAND GLclampx value, GLboolean invert -#define gles_glSampleCoveragex_PACKED PACKED_void_GLclampx_GLboolean -#define gles_glSampleCoveragex_INDEXED INDEXED_void_GLclampx_GLboolean -#define gles_glSampleCoveragex_FORMAT FORMAT_void_GLclampx_GLboolean -#define gles_glScalef_INDEX 124 -#define gles_glScalef_RETURN void -#define gles_glScalef_ARG_NAMES x, y, z -#define gles_glScalef_ARG_EXPAND GLfloat x, GLfloat y, GLfloat z -#define gles_glScalef_PACKED PACKED_void_GLfloat_GLfloat_GLfloat -#define gles_glScalef_INDEXED INDEXED_void_GLfloat_GLfloat_GLfloat -#define gles_glScalef_FORMAT FORMAT_void_GLfloat_GLfloat_GLfloat -#define gles_glScalex_INDEX 125 -#define gles_glScalex_RETURN void -#define gles_glScalex_ARG_NAMES x, y, z -#define gles_glScalex_ARG_EXPAND GLfixed x, GLfixed y, GLfixed z -#define gles_glScalex_PACKED PACKED_void_GLfixed_GLfixed_GLfixed -#define gles_glScalex_INDEXED INDEXED_void_GLfixed_GLfixed_GLfixed -#define gles_glScalex_FORMAT FORMAT_void_GLfixed_GLfixed_GLfixed -#define gles_glScissor_INDEX 126 -#define gles_glScissor_RETURN void -#define gles_glScissor_ARG_NAMES x, y, width, height -#define gles_glScissor_ARG_EXPAND GLint x, GLint y, GLsizei width, GLsizei height -#define gles_glScissor_PACKED PACKED_void_GLint_GLint_GLsizei_GLsizei -#define gles_glScissor_INDEXED INDEXED_void_GLint_GLint_GLsizei_GLsizei -#define gles_glScissor_FORMAT FORMAT_void_GLint_GLint_GLsizei_GLsizei -#define gles_glShadeModel_INDEX 127 -#define gles_glShadeModel_RETURN void -#define gles_glShadeModel_ARG_NAMES mode -#define gles_glShadeModel_ARG_EXPAND GLenum mode -#define gles_glShadeModel_PACKED PACKED_void_GLenum -#define gles_glShadeModel_INDEXED INDEXED_void_GLenum -#define gles_glShadeModel_FORMAT FORMAT_void_GLenum -#define gles_glStencilFunc_INDEX 128 -#define gles_glStencilFunc_RETURN void -#define gles_glStencilFunc_ARG_NAMES func, ref, mask -#define gles_glStencilFunc_ARG_EXPAND GLenum func, GLint ref, GLuint mask -#define gles_glStencilFunc_PACKED PACKED_void_GLenum_GLint_GLuint -#define gles_glStencilFunc_INDEXED INDEXED_void_GLenum_GLint_GLuint -#define gles_glStencilFunc_FORMAT FORMAT_void_GLenum_GLint_GLuint -#define gles_glStencilMask_INDEX 129 -#define gles_glStencilMask_RETURN void -#define gles_glStencilMask_ARG_NAMES mask -#define gles_glStencilMask_ARG_EXPAND GLuint mask -#define gles_glStencilMask_PACKED PACKED_void_GLuint -#define gles_glStencilMask_INDEXED INDEXED_void_GLuint -#define gles_glStencilMask_FORMAT FORMAT_void_GLuint -#define gles_glStencilOp_INDEX 130 -#define gles_glStencilOp_RETURN void -#define gles_glStencilOp_ARG_NAMES fail, zfail, zpass -#define gles_glStencilOp_ARG_EXPAND GLenum fail, GLenum zfail, GLenum zpass -#define gles_glStencilOp_PACKED PACKED_void_GLenum_GLenum_GLenum -#define gles_glStencilOp_INDEXED INDEXED_void_GLenum_GLenum_GLenum -#define gles_glStencilOp_FORMAT FORMAT_void_GLenum_GLenum_GLenum -#define gles_glTexCoordPointer_INDEX 131 -#define gles_glTexCoordPointer_RETURN void -#define gles_glTexCoordPointer_ARG_NAMES size, type, stride, pointer -#define gles_glTexCoordPointer_ARG_EXPAND GLint size, GLenum type, GLsizei stride, const GLvoid * pointer -#define gles_glTexCoordPointer_PACKED PACKED_void_GLint_GLenum_GLsizei_const_GLvoid___GENPT__ -#define gles_glTexCoordPointer_INDEXED INDEXED_void_GLint_GLenum_GLsizei_const_GLvoid___GENPT__ -#define gles_glTexCoordPointer_FORMAT FORMAT_void_GLint_GLenum_GLsizei_const_GLvoid___GENPT__ -#define gles_glTexEnvf_INDEX 132 -#define gles_glTexEnvf_RETURN void -#define gles_glTexEnvf_ARG_NAMES target, pname, param -#define gles_glTexEnvf_ARG_EXPAND GLenum target, GLenum pname, GLfloat param -#define gles_glTexEnvf_PACKED PACKED_void_GLenum_GLenum_GLfloat -#define gles_glTexEnvf_INDEXED INDEXED_void_GLenum_GLenum_GLfloat -#define gles_glTexEnvf_FORMAT FORMAT_void_GLenum_GLenum_GLfloat -#define gles_glTexEnvfv_INDEX 133 -#define gles_glTexEnvfv_RETURN void -#define gles_glTexEnvfv_ARG_NAMES target, pname, params -#define gles_glTexEnvfv_ARG_EXPAND GLenum target, GLenum pname, const GLfloat * params -#define gles_glTexEnvfv_PACKED PACKED_void_GLenum_GLenum_const_GLfloat___GENPT__ -#define gles_glTexEnvfv_INDEXED INDEXED_void_GLenum_GLenum_const_GLfloat___GENPT__ -#define gles_glTexEnvfv_FORMAT FORMAT_void_GLenum_GLenum_const_GLfloat___GENPT__ -#define gles_glTexEnvi_INDEX 134 -#define gles_glTexEnvi_RETURN void -#define gles_glTexEnvi_ARG_NAMES target, pname, param -#define gles_glTexEnvi_ARG_EXPAND GLenum target, GLenum pname, GLint param -#define gles_glTexEnvi_PACKED PACKED_void_GLenum_GLenum_GLint -#define gles_glTexEnvi_INDEXED INDEXED_void_GLenum_GLenum_GLint -#define gles_glTexEnvi_FORMAT FORMAT_void_GLenum_GLenum_GLint -#define gles_glTexEnviv_INDEX 135 -#define gles_glTexEnviv_RETURN void -#define gles_glTexEnviv_ARG_NAMES target, pname, params -#define gles_glTexEnviv_ARG_EXPAND GLenum target, GLenum pname, const GLint * params -#define gles_glTexEnviv_PACKED PACKED_void_GLenum_GLenum_const_GLint___GENPT__ -#define gles_glTexEnviv_INDEXED INDEXED_void_GLenum_GLenum_const_GLint___GENPT__ -#define gles_glTexEnviv_FORMAT FORMAT_void_GLenum_GLenum_const_GLint___GENPT__ -#define gles_glTexEnvx_INDEX 136 -#define gles_glTexEnvx_RETURN void -#define gles_glTexEnvx_ARG_NAMES target, pname, param -#define gles_glTexEnvx_ARG_EXPAND GLenum target, GLenum pname, GLfixed param -#define gles_glTexEnvx_PACKED PACKED_void_GLenum_GLenum_GLfixed -#define gles_glTexEnvx_INDEXED INDEXED_void_GLenum_GLenum_GLfixed -#define gles_glTexEnvx_FORMAT FORMAT_void_GLenum_GLenum_GLfixed -#define gles_glTexEnvxv_INDEX 137 -#define gles_glTexEnvxv_RETURN void -#define gles_glTexEnvxv_ARG_NAMES target, pname, params -#define gles_glTexEnvxv_ARG_EXPAND GLenum target, GLenum pname, const GLfixed * params -#define gles_glTexEnvxv_PACKED PACKED_void_GLenum_GLenum_const_GLfixed___GENPT__ -#define gles_glTexEnvxv_INDEXED INDEXED_void_GLenum_GLenum_const_GLfixed___GENPT__ -#define gles_glTexEnvxv_FORMAT FORMAT_void_GLenum_GLenum_const_GLfixed___GENPT__ -#define gles_glTexImage2D_INDEX 138 -#define gles_glTexImage2D_RETURN void -#define gles_glTexImage2D_ARG_NAMES target, level, internalformat, width, height, border, format, type, pixels -#define gles_glTexImage2D_ARG_EXPAND GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid * pixels -#define gles_glTexImage2D_PACKED PACKED_void_GLenum_GLint_GLint_GLsizei_GLsizei_GLint_GLenum_GLenum_const_GLvoid___GENPT__ -#define gles_glTexImage2D_INDEXED INDEXED_void_GLenum_GLint_GLint_GLsizei_GLsizei_GLint_GLenum_GLenum_const_GLvoid___GENPT__ -#define gles_glTexImage2D_FORMAT FORMAT_void_GLenum_GLint_GLint_GLsizei_GLsizei_GLint_GLenum_GLenum_const_GLvoid___GENPT__ -#define gles_glTexParameterf_INDEX 139 -#define gles_glTexParameterf_RETURN void -#define gles_glTexParameterf_ARG_NAMES target, pname, param -#define gles_glTexParameterf_ARG_EXPAND GLenum target, GLenum pname, GLfloat param -#define gles_glTexParameterf_PACKED PACKED_void_GLenum_GLenum_GLfloat -#define gles_glTexParameterf_INDEXED INDEXED_void_GLenum_GLenum_GLfloat -#define gles_glTexParameterf_FORMAT FORMAT_void_GLenum_GLenum_GLfloat -#define gles_glTexParameterfv_INDEX 140 -#define gles_glTexParameterfv_RETURN void -#define gles_glTexParameterfv_ARG_NAMES target, pname, params -#define gles_glTexParameterfv_ARG_EXPAND GLenum target, GLenum pname, const GLfloat * params -#define gles_glTexParameterfv_PACKED PACKED_void_GLenum_GLenum_const_GLfloat___GENPT__ -#define gles_glTexParameterfv_INDEXED INDEXED_void_GLenum_GLenum_const_GLfloat___GENPT__ -#define gles_glTexParameterfv_FORMAT FORMAT_void_GLenum_GLenum_const_GLfloat___GENPT__ -#define gles_glTexParameteri_INDEX 141 -#define gles_glTexParameteri_RETURN void -#define gles_glTexParameteri_ARG_NAMES target, pname, param -#define gles_glTexParameteri_ARG_EXPAND GLenum target, GLenum pname, GLint param -#define gles_glTexParameteri_PACKED PACKED_void_GLenum_GLenum_GLint -#define gles_glTexParameteri_INDEXED INDEXED_void_GLenum_GLenum_GLint -#define gles_glTexParameteri_FORMAT FORMAT_void_GLenum_GLenum_GLint -#define gles_glTexParameteriv_INDEX 142 -#define gles_glTexParameteriv_RETURN void -#define gles_glTexParameteriv_ARG_NAMES target, pname, params -#define gles_glTexParameteriv_ARG_EXPAND GLenum target, GLenum pname, const GLint * params -#define gles_glTexParameteriv_PACKED PACKED_void_GLenum_GLenum_const_GLint___GENPT__ -#define gles_glTexParameteriv_INDEXED INDEXED_void_GLenum_GLenum_const_GLint___GENPT__ -#define gles_glTexParameteriv_FORMAT FORMAT_void_GLenum_GLenum_const_GLint___GENPT__ -#define gles_glTexParameterx_INDEX 143 -#define gles_glTexParameterx_RETURN void -#define gles_glTexParameterx_ARG_NAMES target, pname, param -#define gles_glTexParameterx_ARG_EXPAND GLenum target, GLenum pname, GLfixed param -#define gles_glTexParameterx_PACKED PACKED_void_GLenum_GLenum_GLfixed -#define gles_glTexParameterx_INDEXED INDEXED_void_GLenum_GLenum_GLfixed -#define gles_glTexParameterx_FORMAT FORMAT_void_GLenum_GLenum_GLfixed -#define gles_glTexParameterxv_INDEX 144 -#define gles_glTexParameterxv_RETURN void -#define gles_glTexParameterxv_ARG_NAMES target, pname, params -#define gles_glTexParameterxv_ARG_EXPAND GLenum target, GLenum pname, const GLfixed * params -#define gles_glTexParameterxv_PACKED PACKED_void_GLenum_GLenum_const_GLfixed___GENPT__ -#define gles_glTexParameterxv_INDEXED INDEXED_void_GLenum_GLenum_const_GLfixed___GENPT__ -#define gles_glTexParameterxv_FORMAT FORMAT_void_GLenum_GLenum_const_GLfixed___GENPT__ -#define gles_glTexSubImage2D_INDEX 145 -#define gles_glTexSubImage2D_RETURN void -#define gles_glTexSubImage2D_ARG_NAMES target, level, xoffset, yoffset, width, height, format, type, pixels -#define gles_glTexSubImage2D_ARG_EXPAND GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels -#define gles_glTexSubImage2D_PACKED PACKED_void_GLenum_GLint_GLint_GLint_GLsizei_GLsizei_GLenum_GLenum_const_GLvoid___GENPT__ -#define gles_glTexSubImage2D_INDEXED INDEXED_void_GLenum_GLint_GLint_GLint_GLsizei_GLsizei_GLenum_GLenum_const_GLvoid___GENPT__ -#define gles_glTexSubImage2D_FORMAT FORMAT_void_GLenum_GLint_GLint_GLint_GLsizei_GLsizei_GLenum_GLenum_const_GLvoid___GENPT__ -#define gles_glTranslatef_INDEX 146 -#define gles_glTranslatef_RETURN void -#define gles_glTranslatef_ARG_NAMES x, y, z -#define gles_glTranslatef_ARG_EXPAND GLfloat x, GLfloat y, GLfloat z -#define gles_glTranslatef_PACKED PACKED_void_GLfloat_GLfloat_GLfloat -#define gles_glTranslatef_INDEXED INDEXED_void_GLfloat_GLfloat_GLfloat -#define gles_glTranslatef_FORMAT FORMAT_void_GLfloat_GLfloat_GLfloat -#define gles_glTranslatex_INDEX 147 -#define gles_glTranslatex_RETURN void -#define gles_glTranslatex_ARG_NAMES x, y, z -#define gles_glTranslatex_ARG_EXPAND GLfixed x, GLfixed y, GLfixed z -#define gles_glTranslatex_PACKED PACKED_void_GLfixed_GLfixed_GLfixed -#define gles_glTranslatex_INDEXED INDEXED_void_GLfixed_GLfixed_GLfixed -#define gles_glTranslatex_FORMAT FORMAT_void_GLfixed_GLfixed_GLfixed -#define gles_glVertexPointer_INDEX 148 -#define gles_glVertexPointer_RETURN void -#define gles_glVertexPointer_ARG_NAMES size, type, stride, pointer -#define gles_glVertexPointer_ARG_EXPAND GLint size, GLenum type, GLsizei stride, const GLvoid * pointer -#define gles_glVertexPointer_PACKED PACKED_void_GLint_GLenum_GLsizei_const_GLvoid___GENPT__ -#define gles_glVertexPointer_INDEXED INDEXED_void_GLint_GLenum_GLsizei_const_GLvoid___GENPT__ -#define gles_glVertexPointer_FORMAT FORMAT_void_GLint_GLenum_GLsizei_const_GLvoid___GENPT__ -#define gles_glViewport_INDEX 149 -#define gles_glViewport_RETURN void -#define gles_glViewport_ARG_NAMES x, y, width, height -#define gles_glViewport_ARG_EXPAND GLint x, GLint y, GLsizei width, GLsizei height -#define gles_glViewport_PACKED PACKED_void_GLint_GLint_GLsizei_GLsizei -#define gles_glViewport_INDEXED INDEXED_void_GLint_GLint_GLsizei_GLsizei -#define gles_glViewport_FORMAT FORMAT_void_GLint_GLint_GLsizei_GLsizei - -void gles_glActiveTexture(glActiveTexture_ARG_EXPAND); -void gles_glAlphaFunc(glAlphaFunc_ARG_EXPAND); -void gles_glAlphaFuncx(glAlphaFuncx_ARG_EXPAND); -void gles_glBindBuffer(glBindBuffer_ARG_EXPAND); -void gles_glBindTexture(glBindTexture_ARG_EXPAND); -void gles_glBlendColorOES(glBlendColorOES_ARG_EXPAND); -void gles_glBlendEquationOES(glBlendEquationOES_ARG_EXPAND); -void gles_glBlendEquationSeparateOES(glBlendEquationSeparateOES_ARG_EXPAND); -void gles_glBlendFunc(glBlendFunc_ARG_EXPAND); -void gles_glBlendFuncSeparateOES(glBlendFuncSeparateOES_ARG_EXPAND); -void gles_glBufferData(glBufferData_ARG_EXPAND); -void gles_glBufferSubData(glBufferSubData_ARG_EXPAND); -void gles_glClear(glClear_ARG_EXPAND); -void gles_glClearColor(glClearColor_ARG_EXPAND); -void gles_glClearColorx(glClearColorx_ARG_EXPAND); -void gles_glClearDepthf(glClearDepthf_ARG_EXPAND); -void gles_glClearDepthx(glClearDepthx_ARG_EXPAND); -void gles_glClearStencil(glClearStencil_ARG_EXPAND); -void gles_glClientActiveTexture(glClientActiveTexture_ARG_EXPAND); -void gles_glClipPlanef(glClipPlanef_ARG_EXPAND); -void gles_glClipPlanex(glClipPlanex_ARG_EXPAND); -void gles_glColor4f(glColor4f_ARG_EXPAND); -void gles_glColor4ub(glColor4ub_ARG_EXPAND); -void gles_glColor4x(glColor4x_ARG_EXPAND); -void gles_glColorMask(glColorMask_ARG_EXPAND); -void gles_glColorPointer(glColorPointer_ARG_EXPAND); -void gles_glCompressedTexImage2D(glCompressedTexImage2D_ARG_EXPAND); -void gles_glCompressedTexSubImage2D(glCompressedTexSubImage2D_ARG_EXPAND); -void gles_glCopyTexImage2D(glCopyTexImage2D_ARG_EXPAND); -void gles_glCopyTexSubImage2D(glCopyTexSubImage2D_ARG_EXPAND); -void gles_glCullFace(glCullFace_ARG_EXPAND); -void gles_glDeleteBuffers(glDeleteBuffers_ARG_EXPAND); -void gles_glDeleteTextures(glDeleteTextures_ARG_EXPAND); -void gles_glDepthFunc(glDepthFunc_ARG_EXPAND); -void gles_glDepthMask(glDepthMask_ARG_EXPAND); -void gles_glDepthRangef(glDepthRangef_ARG_EXPAND); -void gles_glDepthRangex(glDepthRangex_ARG_EXPAND); -void gles_glDisable(glDisable_ARG_EXPAND); -void gles_glDisableClientState(glDisableClientState_ARG_EXPAND); -void gles_glDrawArrays(glDrawArrays_ARG_EXPAND); -void gles_glDrawElements(glDrawElements_ARG_EXPAND); -void gles_glEnable(glEnable_ARG_EXPAND); -void gles_glEnableClientState(glEnableClientState_ARG_EXPAND); -void gles_glFinish(glFinish_ARG_EXPAND); -void gles_glFlush(glFlush_ARG_EXPAND); -void gles_glFogf(glFogf_ARG_EXPAND); -void gles_glFogfv(glFogfv_ARG_EXPAND); -void gles_glFogx(glFogx_ARG_EXPAND); -void gles_glFogxv(glFogxv_ARG_EXPAND); -void gles_glFrontFace(glFrontFace_ARG_EXPAND); -void gles_glFrustumf(glFrustumf_ARG_EXPAND); -void gles_glFrustumx(glFrustumx_ARG_EXPAND); -void gles_glGenBuffers(glGenBuffers_ARG_EXPAND); -void gles_glGenTextures(glGenTextures_ARG_EXPAND); -void gles_glGetBooleanv(glGetBooleanv_ARG_EXPAND); -void gles_glGetBufferParameteriv(glGetBufferParameteriv_ARG_EXPAND); -void gles_glGetClipPlanef(glGetClipPlanef_ARG_EXPAND); -void gles_glGetClipPlanex(glGetClipPlanex_ARG_EXPAND); -GLenum gles_glGetError(glGetError_ARG_EXPAND); -void gles_glGetFixedv(glGetFixedv_ARG_EXPAND); -void gles_glGetFloatv(glGetFloatv_ARG_EXPAND); -void gles_glGetIntegerv(glGetIntegerv_ARG_EXPAND); -void gles_glGetLightfv(glGetLightfv_ARG_EXPAND); -void gles_glGetLightxv(glGetLightxv_ARG_EXPAND); -void gles_glGetMaterialfv(glGetMaterialfv_ARG_EXPAND); -void gles_glGetMaterialxv(glGetMaterialxv_ARG_EXPAND); -void gles_glGetPointerv(glGetPointerv_ARG_EXPAND); -const GLubyte * gles_glGetString(glGetString_ARG_EXPAND); -void gles_glGetTexEnvfv(glGetTexEnvfv_ARG_EXPAND); -void gles_glGetTexEnviv(glGetTexEnviv_ARG_EXPAND); -void gles_glGetTexEnvxv(glGetTexEnvxv_ARG_EXPAND); -void gles_glGetTexParameterfv(glGetTexParameterfv_ARG_EXPAND); -void gles_glGetTexParameteriv(glGetTexParameteriv_ARG_EXPAND); -void gles_glGetTexParameterxv(glGetTexParameterxv_ARG_EXPAND); -void gles_glHint(glHint_ARG_EXPAND); -GLboolean gles_glIsBuffer(glIsBuffer_ARG_EXPAND); -GLboolean gles_glIsEnabled(glIsEnabled_ARG_EXPAND); -GLboolean gles_glIsTexture(glIsTexture_ARG_EXPAND); -void gles_glLightModelf(glLightModelf_ARG_EXPAND); -void gles_glLightModelfv(glLightModelfv_ARG_EXPAND); -void gles_glLightModelx(glLightModelx_ARG_EXPAND); -void gles_glLightModelxv(glLightModelxv_ARG_EXPAND); -void gles_glLightf(glLightf_ARG_EXPAND); -void gles_glLightfv(glLightfv_ARG_EXPAND); -void gles_glLightx(glLightx_ARG_EXPAND); -void gles_glLightxv(glLightxv_ARG_EXPAND); -void gles_glLineWidth(glLineWidth_ARG_EXPAND); -void gles_glLineWidthx(glLineWidthx_ARG_EXPAND); -void gles_glLoadIdentity(glLoadIdentity_ARG_EXPAND); -void gles_glLoadMatrixf(glLoadMatrixf_ARG_EXPAND); -void gles_glLoadMatrixx(glLoadMatrixx_ARG_EXPAND); -void gles_glLogicOp(glLogicOp_ARG_EXPAND); -void gles_glMaterialf(glMaterialf_ARG_EXPAND); -void gles_glMaterialfv(glMaterialfv_ARG_EXPAND); -void gles_glMaterialx(glMaterialx_ARG_EXPAND); -void gles_glMaterialxv(glMaterialxv_ARG_EXPAND); -void gles_glMatrixMode(glMatrixMode_ARG_EXPAND); -void gles_glMultMatrixf(glMultMatrixf_ARG_EXPAND); -void gles_glMultMatrixx(glMultMatrixx_ARG_EXPAND); -void gles_glMultiTexCoord4f(glMultiTexCoord4f_ARG_EXPAND); -void gles_glMultiTexCoord4x(glMultiTexCoord4x_ARG_EXPAND); -void gles_glNormal3f(glNormal3f_ARG_EXPAND); -void gles_glNormal3x(glNormal3x_ARG_EXPAND); -void gles_glNormalPointer(glNormalPointer_ARG_EXPAND); -void gles_glOrthof(glOrthof_ARG_EXPAND); -void gles_glOrthox(glOrthox_ARG_EXPAND); -void gles_glPixelStorei(glPixelStorei_ARG_EXPAND); -void gles_glPointParameterf(glPointParameterf_ARG_EXPAND); -void gles_glPointParameterfv(glPointParameterfv_ARG_EXPAND); -void gles_glPointParameterx(glPointParameterx_ARG_EXPAND); -void gles_glPointParameterxv(glPointParameterxv_ARG_EXPAND); -void gles_glPointSize(glPointSize_ARG_EXPAND); -void gles_glPointSizePointerOES(glPointSizePointerOES_ARG_EXPAND); -void gles_glPointSizex(glPointSizex_ARG_EXPAND); -void gles_glPolygonOffset(glPolygonOffset_ARG_EXPAND); -void gles_glPolygonOffsetx(glPolygonOffsetx_ARG_EXPAND); -void gles_glPopMatrix(glPopMatrix_ARG_EXPAND); -void gles_glPushMatrix(glPushMatrix_ARG_EXPAND); -void gles_glReadPixels(glReadPixels_ARG_EXPAND); -void gles_glRotatef(glRotatef_ARG_EXPAND); -void gles_glRotatex(glRotatex_ARG_EXPAND); -void gles_glSampleCoverage(glSampleCoverage_ARG_EXPAND); -void gles_glSampleCoveragex(glSampleCoveragex_ARG_EXPAND); -void gles_glScalef(glScalef_ARG_EXPAND); -void gles_glScalex(glScalex_ARG_EXPAND); -void gles_glScissor(glScissor_ARG_EXPAND); -void gles_glShadeModel(glShadeModel_ARG_EXPAND); -void gles_glStencilFunc(glStencilFunc_ARG_EXPAND); -void gles_glStencilMask(glStencilMask_ARG_EXPAND); -void gles_glStencilOp(glStencilOp_ARG_EXPAND); -void gles_glTexCoordPointer(glTexCoordPointer_ARG_EXPAND); -void gles_glTexEnvf(glTexEnvf_ARG_EXPAND); -void gles_glTexEnvfv(glTexEnvfv_ARG_EXPAND); -void gles_glTexEnvi(glTexEnvi_ARG_EXPAND); -void gles_glTexEnviv(glTexEnviv_ARG_EXPAND); -void gles_glTexEnvx(glTexEnvx_ARG_EXPAND); -void gles_glTexEnvxv(glTexEnvxv_ARG_EXPAND); -void gles_glTexImage2D(glTexImage2D_ARG_EXPAND); -void gles_glTexParameterf(glTexParameterf_ARG_EXPAND); -void gles_glTexParameterfv(glTexParameterfv_ARG_EXPAND); -void gles_glTexParameteri(glTexParameteri_ARG_EXPAND); -void gles_glTexParameteriv(glTexParameteriv_ARG_EXPAND); -void gles_glTexParameterx(glTexParameterx_ARG_EXPAND); -void gles_glTexParameterxv(glTexParameterxv_ARG_EXPAND); -void gles_glTexSubImage2D(glTexSubImage2D_ARG_EXPAND); -void gles_glTranslatef(glTranslatef_ARG_EXPAND); -void gles_glTranslatex(glTranslatex_ARG_EXPAND); -void gles_glVertexPointer(glVertexPointer_ARG_EXPAND); -void gles_glViewport(glViewport_ARG_EXPAND); -#endif - -#ifdef __cplusplus -} // extern "C" -#endif -#endif diff --git a/project/jni/glshim/test/util/run.py b/project/jni/glshim/test/util/run.py deleted file mode 100755 index dd72e379a..000000000 --- a/project/jni/glshim/test/util/run.py +++ /dev/null @@ -1,242 +0,0 @@ -import argparse -import jinja2 -import os -import signal -import subprocess -import sys -import traceback - -from blessings import Terminal -from contextlib import contextmanager - -signals = dict((k, v) for v, k in signal.__dict__.iteritems() if v.startswith('SIG')) -term = Terminal() -TEST_ROOT = os.getcwd() - -env = jinja2.Environment( - trim_blocks=True, - lstrip_blocks=True, - loader=jinja2.FileSystemLoader(os.path.join(TEST_ROOT, 'util', 'template')), -) - - -@contextmanager -def chdir(d): - old = os.getcwd() - os.chdir(d) - yield - os.chdir(old) - - -def shell(*args, **kwargs): - p = subprocess.Popen(args, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE) - output = p.communicate(kwargs.get('input', '')) - out = '\n'.join(((output[0] or '').strip(), (output[1] or '').strip())) - if p.returncode < 0: - sig = signals.get(-p.returncode) - if sig is not None: - out += '\n' + sig - return out.strip(), p.returncode - - -def walk(base): - for root, _, files in os.walk(base): - for name in files: - yield os.path.join(root, name) - - -class Test: - def __init__(self, path, tail): - self.path = path - self.name = os.path.splitext(tail)[0].strip('/') - self.exe = os.path.basename(self.name) - self.dir = self.name.rsplit(self.exe, 1)[0].strip('/') - self.ran = False - self.success = None - self.build_failed = False - self.output = '' - - @classmethod - def find(cls, base, filt): - tests = [] - for path in walk(base): - tail = path.replace(base, '', 1) - test = None - if path.endswith('.c'): - test = Test(path, tail) - elif path.endswith('.py'): - test = PythonTest(path, tail) - else: - continue - - if test and filt: - for f in filt: - if test.name.startswith(f): - break - else: - continue - - tests.append(test) - return tests - - @property - def status(self): - if self.build_failed: - return 'build failed' - elif not self.ran: - return 'skipped' - return 'pass' if self.success else 'fail' - - @property - def status_color(self): - if self.build_failed: - return term.red - elif not self.ran: - return term.yellow - return term.green if self.success else term.red - - def build(self, project): - junk_dir = os.path.join(TEST_ROOT, 'build') - bin_dir = os.path.join(TEST_ROOT, 'bin', self.dir) - if not os.path.exists(junk_dir): - os.makedirs(junk_dir) - - cmakelists = os.path.join(junk_dir, 'CMakeLists.txt') - t = env.get_template('CMakeLists.txt.j2') - txt = t.render( - project=args.project, - exe=self.exe, - sources=self.path, - bin_dir=bin_dir, - util=os.path.join(TEST_ROOT, 'util'), - ) - with open(cmakelists, 'w') as f: - f.write(txt) - - out, status = shell('cmake', cmakelists) - if status: - self.output = out - self.build_failed = True - return False - - with chdir(junk_dir): - out, status = shell('make', '-j2') - if status: - self.output = out - self.build_failed = True - return False - - tmp = os.path.join(bin_dir, 'tmp') - out = os.path.join(bin_dir, self.exe) - if os.path.exists(out): - os.unlink(out) - os.rename(tmp, out) - return True - - def run(self): - bin_dir = os.path.join(TEST_ROOT, 'bin', self.dir) - with chdir(bin_dir): - self.output, status = shell('./' + self.exe) - self.ran = True - self.success = (status == 0) - return self.success - - def __repr__(self): - if self.ran: - return ''.format(self.name, self.status) - else: - return ''.format(self.name) - - -class PythonTest(Test): - def build(self, project): - return True - - def run(self): - with chdir(TEST_ROOT): - self.output, status = shell('python', self.path) - self.ran = True - self.success = (status == 0) - return False - -def run(args): - tests = Test.find(args.base, args.tests) - if not tests: - print 'No tests!' - return - - step_fmt = lambda step: term.bold('[' + step + ']') - status_fmt = lambda test: term.bold('[' + test.status_color(test.status) + ']') - back = lambda mult: '\b' * mult - out = lambda *a: (sys.stdout.write(' '.join(str(s) for s in a)), sys.stdout.flush()) - - duplicate_errors = set() - - for i, test in enumerate(tests): - headline = '[{}/{}] {} ['.format(i + 1, len(tests), test.name) - print term.bold(headline.ljust(79, '-')), - out(back(8) + ' ' + step_fmt('build')) - - try: - build = test.build(args.project) - except Exception: - test.build_failed = True - print - traceback.print_exc() - - out(back(7) + step_fmt(' run ')) - if not test.build_failed: - try: - success = test.run() - except Exception: - test.ran = True - success = test.success = False - print - traceback.print_exc() - - out(back(max(7, len(test.status) + 3)) + ' ' + status_fmt(test)) - print - - if test.output: - if test.build_failed: - if test.output in duplicate_errors: - continue - else: - duplicate_errors.add(test.output) - - for line in test.output.split('\n'): - ERROR = term.bold(term.red('ERROR:')) - WARNING = term.bold(term.yellow('WARNING:')) - if line.startswith('ERROR'): - line = line.replace('ERROR:', ERROR, 1) - elif line.startswith('WARNING'): - line = line.replace('WARNING:', WARNING, 1) - if test.build_failed: - line = line.replace('error:', ERROR) - line = line.replace('warning:', WARNING) - print '> {}'.format(line) - - passed = sum(t.success for t in tests if t.ran) - total = sum(t.ran for t in tests) - results = '{} / {} passed, {} skipped '.format(passed, total, len(tests) - total) - - if total > 0: - pc = passed / float(total) * 100 - percent = '{:.2f}%'.format(pc) - if passed == total: - percent = term.green('100%') - elif pc < 75: - percent = term.red(percent) - else: - percent = term.yellow(percent) - print term.bold((results + '[{}]').format(percent).rjust(80 + len(term.green('')))) - print - - -if __name__ == '__main__': - parser = argparse.ArgumentParser(description='Build and run tests.') - parser.add_argument('--project', help='project directory', default='.') - parser.add_argument('--base', help='test directories to search', required=True) - parser.add_argument('tests', help='test names to run (all by default)', nargs='*') - args = parser.parse_args() - run(args) diff --git a/project/jni/glshim/test/util/template/CMakeLists.txt.j2 b/project/jni/glshim/test/util/template/CMakeLists.txt.j2 deleted file mode 100755 index fd8fbde8d..000000000 --- a/project/jni/glshim/test/util/template/CMakeLists.txt.j2 +++ /dev/null @@ -1,18 +0,0 @@ -cmake_minimum_required(VERSION 2.6) - -project(test) -set(CMAKE_RUNTIME_OUTPUT_DIRECTORY {{ bin_dir }}) - -include_directories({{ util }}) -include_directories({{ project }}/include) -include_directories({{ project }}/src/gl) -include_directories({{ project }}/src/util) - -add_definitions(-include test.h) -include({{ project }}/flags.cmake) - -file(GLOB_RECURSE GL_SOURCES {{ project }}/src/gl/*.c {{ project }}/src/gl/*.cpp) -file(GLOB UTIL_SOURCES {{ project }}/src/util/*.c {{ project }}/src/util/math/*.c) -set(GL_SOURCES ${GL_SOURCES} ${UTIL_SOURCES}) - -add_executable(tmp ${GL_SOURCES} {{ sources }} {{ util }}/mock.c) diff --git a/project/jni/glshim/test/util/test.h b/project/jni/glshim/test/util/test.h deleted file mode 100755 index c5aafa546..000000000 --- a/project/jni/glshim/test/util/test.h +++ /dev/null @@ -1,9 +0,0 @@ -#define LOAD_RAW(...) {} -#define PROXY(...) {} - -#include -#include "mock.h" - -#define free(...) {} -#undef emit_glGetError -#define emit_glGetError(...) {}