Showing preview only (8,079K chars total). Download the full file or copy to clipboard to get everything.
Repository: jcrona/tamatool
Branch: master
Commit: 6941aab9dd54
Files: 499
Total size: 34.3 MB
Directory structure:
gitextract_vltmhidl/
├── .gitignore
├── .gitmodules
├── LICENSE
├── Makefile
├── README.md
├── icons/
│ └── Makefile
├── linux/
│ ├── Makefile
│ └── tamatool.desktop
├── mac/
│ ├── Info.plist
│ ├── Makefile
│ ├── libs/
│ │ ├── bin/
│ │ │ ├── libpng16-config
│ │ │ ├── png-fix-itxt
│ │ │ ├── pngfix
│ │ │ └── sdl2-config
│ │ ├── include/
│ │ │ ├── SDL2/
│ │ │ │ ├── SDL.h
│ │ │ │ ├── SDL_assert.h
│ │ │ │ ├── SDL_atomic.h
│ │ │ │ ├── SDL_audio.h
│ │ │ │ ├── SDL_bits.h
│ │ │ │ ├── SDL_blendmode.h
│ │ │ │ ├── SDL_clipboard.h
│ │ │ │ ├── SDL_config.h
│ │ │ │ ├── SDL_cpuinfo.h
│ │ │ │ ├── SDL_egl.h
│ │ │ │ ├── SDL_endian.h
│ │ │ │ ├── SDL_error.h
│ │ │ │ ├── SDL_events.h
│ │ │ │ ├── SDL_filesystem.h
│ │ │ │ ├── SDL_gamecontroller.h
│ │ │ │ ├── SDL_gesture.h
│ │ │ │ ├── SDL_haptic.h
│ │ │ │ ├── SDL_hints.h
│ │ │ │ ├── SDL_image.h
│ │ │ │ ├── SDL_joystick.h
│ │ │ │ ├── SDL_keyboard.h
│ │ │ │ ├── SDL_keycode.h
│ │ │ │ ├── SDL_loadso.h
│ │ │ │ ├── SDL_locale.h
│ │ │ │ ├── SDL_log.h
│ │ │ │ ├── SDL_main.h
│ │ │ │ ├── SDL_messagebox.h
│ │ │ │ ├── SDL_metal.h
│ │ │ │ ├── SDL_misc.h
│ │ │ │ ├── SDL_mouse.h
│ │ │ │ ├── SDL_mutex.h
│ │ │ │ ├── SDL_name.h
│ │ │ │ ├── SDL_opengl.h
│ │ │ │ ├── SDL_opengl_glext.h
│ │ │ │ ├── SDL_opengles.h
│ │ │ │ ├── SDL_opengles2.h
│ │ │ │ ├── SDL_opengles2_gl2.h
│ │ │ │ ├── SDL_opengles2_gl2ext.h
│ │ │ │ ├── SDL_opengles2_gl2platform.h
│ │ │ │ ├── SDL_opengles2_khrplatform.h
│ │ │ │ ├── SDL_pixels.h
│ │ │ │ ├── SDL_platform.h
│ │ │ │ ├── SDL_power.h
│ │ │ │ ├── SDL_quit.h
│ │ │ │ ├── SDL_rect.h
│ │ │ │ ├── SDL_render.h
│ │ │ │ ├── SDL_revision.h
│ │ │ │ ├── SDL_rwops.h
│ │ │ │ ├── SDL_scancode.h
│ │ │ │ ├── SDL_sensor.h
│ │ │ │ ├── SDL_shape.h
│ │ │ │ ├── SDL_stdinc.h
│ │ │ │ ├── SDL_surface.h
│ │ │ │ ├── SDL_system.h
│ │ │ │ ├── SDL_syswm.h
│ │ │ │ ├── SDL_test.h
│ │ │ │ ├── SDL_test_assert.h
│ │ │ │ ├── SDL_test_common.h
│ │ │ │ ├── SDL_test_compare.h
│ │ │ │ ├── SDL_test_crc32.h
│ │ │ │ ├── SDL_test_font.h
│ │ │ │ ├── SDL_test_fuzzer.h
│ │ │ │ ├── SDL_test_harness.h
│ │ │ │ ├── SDL_test_images.h
│ │ │ │ ├── SDL_test_log.h
│ │ │ │ ├── SDL_test_md5.h
│ │ │ │ ├── SDL_test_memory.h
│ │ │ │ ├── SDL_test_random.h
│ │ │ │ ├── SDL_thread.h
│ │ │ │ ├── SDL_timer.h
│ │ │ │ ├── SDL_touch.h
│ │ │ │ ├── SDL_types.h
│ │ │ │ ├── SDL_version.h
│ │ │ │ ├── SDL_video.h
│ │ │ │ ├── SDL_vulkan.h
│ │ │ │ ├── begin_code.h
│ │ │ │ └── close_code.h
│ │ │ └── libpng16/
│ │ │ ├── png.h
│ │ │ ├── pngconf.h
│ │ │ └── pnglibconf.h
│ │ ├── lib/
│ │ │ ├── cmake/
│ │ │ │ └── SDL2/
│ │ │ │ ├── sdl2-config-version.cmake
│ │ │ │ └── sdl2-config.cmake
│ │ │ ├── libSDL2.a
│ │ │ ├── libSDL2.la
│ │ │ ├── libSDL2_image.a
│ │ │ ├── libSDL2_image.la
│ │ │ ├── libSDL2_test.a
│ │ │ ├── libSDL2_test.la
│ │ │ ├── libSDL2main.a
│ │ │ ├── libSDL2main.la
│ │ │ ├── libpng16.a
│ │ │ ├── libpng16.la
│ │ │ └── pkgconfig/
│ │ │ ├── SDL2_image.pc
│ │ │ ├── libpng16.pc
│ │ │ └── sdl2.pc
│ │ └── share/
│ │ ├── aclocal/
│ │ │ └── sdl2.m4
│ │ └── man/
│ │ ├── man3/
│ │ │ ├── libpng.3
│ │ │ └── libpngpf.3
│ │ └── man5/
│ │ └── png.5
│ └── tamatool.mac
├── src/
│ ├── common.mk
│ ├── hal_types.h
│ ├── image.c
│ ├── image.h
│ ├── mem_edit.c
│ ├── mem_edit.h
│ ├── program.c
│ ├── program.h
│ ├── state.c
│ ├── state.h
│ └── tamatool.c
└── windows/
├── Makefile
├── libs/
│ ├── SDL2-2.0.14/
│ │ ├── BUGS.txt
│ │ ├── COPYING.txt
│ │ ├── CREDITS.txt
│ │ ├── INSTALL.txt
│ │ ├── Makefile
│ │ ├── README-SDL.txt
│ │ ├── README.txt
│ │ ├── WhatsNew.txt
│ │ ├── docs/
│ │ │ ├── README-android.md
│ │ │ ├── README-cmake.md
│ │ │ ├── README-directfb.md
│ │ │ ├── README-dynapi.md
│ │ │ ├── README-emscripten.md
│ │ │ ├── README-gesture.md
│ │ │ ├── README-hg.md
│ │ │ ├── README-ios.md
│ │ │ ├── README-linux.md
│ │ │ ├── README-macosx.md
│ │ │ ├── README-nacl.md
│ │ │ ├── README-os2.md
│ │ │ ├── README-pandora.md
│ │ │ ├── README-platforms.md
│ │ │ ├── README-porting.md
│ │ │ ├── README-psp.md
│ │ │ ├── README-raspberrypi.md
│ │ │ ├── README-touch.md
│ │ │ ├── README-wince.md
│ │ │ ├── README-windows.md
│ │ │ ├── README-winrt.md
│ │ │ ├── README.md
│ │ │ └── doxyfile
│ │ ├── i686-w64-mingw32/
│ │ │ ├── bin/
│ │ │ │ └── sdl2-config
│ │ │ ├── include/
│ │ │ │ └── SDL2/
│ │ │ │ ├── SDL.h
│ │ │ │ ├── SDL_assert.h
│ │ │ │ ├── SDL_atomic.h
│ │ │ │ ├── SDL_audio.h
│ │ │ │ ├── SDL_bits.h
│ │ │ │ ├── SDL_blendmode.h
│ │ │ │ ├── SDL_clipboard.h
│ │ │ │ ├── SDL_config.h
│ │ │ │ ├── SDL_cpuinfo.h
│ │ │ │ ├── SDL_egl.h
│ │ │ │ ├── SDL_endian.h
│ │ │ │ ├── SDL_error.h
│ │ │ │ ├── SDL_events.h
│ │ │ │ ├── SDL_filesystem.h
│ │ │ │ ├── SDL_gamecontroller.h
│ │ │ │ ├── SDL_gesture.h
│ │ │ │ ├── SDL_haptic.h
│ │ │ │ ├── SDL_hints.h
│ │ │ │ ├── SDL_joystick.h
│ │ │ │ ├── SDL_keyboard.h
│ │ │ │ ├── SDL_keycode.h
│ │ │ │ ├── SDL_loadso.h
│ │ │ │ ├── SDL_locale.h
│ │ │ │ ├── SDL_log.h
│ │ │ │ ├── SDL_main.h
│ │ │ │ ├── SDL_messagebox.h
│ │ │ │ ├── SDL_metal.h
│ │ │ │ ├── SDL_misc.h
│ │ │ │ ├── SDL_mouse.h
│ │ │ │ ├── SDL_mutex.h
│ │ │ │ ├── SDL_name.h
│ │ │ │ ├── SDL_opengl.h
│ │ │ │ ├── SDL_opengl_glext.h
│ │ │ │ ├── SDL_opengles.h
│ │ │ │ ├── SDL_opengles2.h
│ │ │ │ ├── SDL_opengles2_gl2.h
│ │ │ │ ├── SDL_opengles2_gl2ext.h
│ │ │ │ ├── SDL_opengles2_gl2platform.h
│ │ │ │ ├── SDL_opengles2_khrplatform.h
│ │ │ │ ├── SDL_pixels.h
│ │ │ │ ├── SDL_platform.h
│ │ │ │ ├── SDL_power.h
│ │ │ │ ├── SDL_quit.h
│ │ │ │ ├── SDL_rect.h
│ │ │ │ ├── SDL_render.h
│ │ │ │ ├── SDL_revision.h
│ │ │ │ ├── SDL_rwops.h
│ │ │ │ ├── SDL_scancode.h
│ │ │ │ ├── SDL_sensor.h
│ │ │ │ ├── SDL_shape.h
│ │ │ │ ├── SDL_stdinc.h
│ │ │ │ ├── SDL_surface.h
│ │ │ │ ├── SDL_system.h
│ │ │ │ ├── SDL_syswm.h
│ │ │ │ ├── SDL_test.h
│ │ │ │ ├── SDL_test_assert.h
│ │ │ │ ├── SDL_test_common.h
│ │ │ │ ├── SDL_test_compare.h
│ │ │ │ ├── SDL_test_crc32.h
│ │ │ │ ├── SDL_test_font.h
│ │ │ │ ├── SDL_test_fuzzer.h
│ │ │ │ ├── SDL_test_harness.h
│ │ │ │ ├── SDL_test_images.h
│ │ │ │ ├── SDL_test_log.h
│ │ │ │ ├── SDL_test_md5.h
│ │ │ │ ├── SDL_test_memory.h
│ │ │ │ ├── SDL_test_random.h
│ │ │ │ ├── SDL_thread.h
│ │ │ │ ├── SDL_timer.h
│ │ │ │ ├── SDL_touch.h
│ │ │ │ ├── SDL_types.h
│ │ │ │ ├── SDL_version.h
│ │ │ │ ├── SDL_video.h
│ │ │ │ ├── SDL_vulkan.h
│ │ │ │ ├── begin_code.h
│ │ │ │ └── close_code.h
│ │ │ ├── lib/
│ │ │ │ ├── cmake/
│ │ │ │ │ └── SDL2/
│ │ │ │ │ ├── sdl2-config-version.cmake
│ │ │ │ │ └── sdl2-config.cmake
│ │ │ │ ├── libSDL2.a
│ │ │ │ ├── libSDL2.dll.a
│ │ │ │ ├── libSDL2.la
│ │ │ │ ├── libSDL2_test.a
│ │ │ │ ├── libSDL2_test.la
│ │ │ │ ├── libSDL2main.a
│ │ │ │ ├── libSDL2main.la
│ │ │ │ └── pkgconfig/
│ │ │ │ └── sdl2.pc
│ │ │ └── share/
│ │ │ └── aclocal/
│ │ │ └── sdl2.m4
│ │ ├── test/
│ │ │ ├── CMakeLists.txt
│ │ │ ├── COPYING
│ │ │ ├── Makefile.in
│ │ │ ├── Makefile.os2
│ │ │ ├── README
│ │ │ ├── acinclude.m4
│ │ │ ├── autogen.sh
│ │ │ ├── checkkeys.c
│ │ │ ├── configure
│ │ │ ├── configure.ac
│ │ │ ├── controllermap.c
│ │ │ ├── emscripten/
│ │ │ │ └── joystick-pre.js
│ │ │ ├── gcc-fat.sh
│ │ │ ├── loopwave.c
│ │ │ ├── loopwavequeue.c
│ │ │ ├── nacl/
│ │ │ │ ├── Makefile
│ │ │ │ ├── background.js
│ │ │ │ ├── common.js
│ │ │ │ ├── index.html
│ │ │ │ └── manifest.json
│ │ │ ├── picture.xbm
│ │ │ ├── relative_mode.markdown
│ │ │ ├── testatomic.c
│ │ │ ├── testaudiocapture.c
│ │ │ ├── testaudiohotplug.c
│ │ │ ├── testaudioinfo.c
│ │ │ ├── testautomation.c
│ │ │ ├── testautomation_audio.c
│ │ │ ├── testautomation_clipboard.c
│ │ │ ├── testautomation_events.c
│ │ │ ├── testautomation_hints.c
│ │ │ ├── testautomation_keyboard.c
│ │ │ ├── testautomation_main.c
│ │ │ ├── testautomation_mouse.c
│ │ │ ├── testautomation_pixels.c
│ │ │ ├── testautomation_platform.c
│ │ │ ├── testautomation_rect.c
│ │ │ ├── testautomation_render.c
│ │ │ ├── testautomation_rwops.c
│ │ │ ├── testautomation_sdltest.c
│ │ │ ├── testautomation_stdlib.c
│ │ │ ├── testautomation_suites.h
│ │ │ ├── testautomation_surface.c
│ │ │ ├── testautomation_syswm.c
│ │ │ ├── testautomation_timer.c
│ │ │ ├── testautomation_video.c
│ │ │ ├── testbounds.c
│ │ │ ├── testcustomcursor.c
│ │ │ ├── testdisplayinfo.c
│ │ │ ├── testdraw2.c
│ │ │ ├── testdrawchessboard.c
│ │ │ ├── testdropfile.c
│ │ │ ├── testerror.c
│ │ │ ├── testevdev.c
│ │ │ ├── testfile.c
│ │ │ ├── testfilesystem.c
│ │ │ ├── testgamecontroller.c
│ │ │ ├── testgesture.c
│ │ │ ├── testgl2.c
│ │ │ ├── testgles.c
│ │ │ ├── testgles2.c
│ │ │ ├── testhaptic.c
│ │ │ ├── testhittesting.c
│ │ │ ├── testhotplug.c
│ │ │ ├── testiconv.c
│ │ │ ├── testime.c
│ │ │ ├── testintersections.c
│ │ │ ├── testjoystick.c
│ │ │ ├── testkeys.c
│ │ │ ├── testloadso.c
│ │ │ ├── testlocale.c
│ │ │ ├── testlock.c
│ │ │ ├── testmessage.c
│ │ │ ├── testmultiaudio.c
│ │ │ ├── testnative.c
│ │ │ ├── testnative.h
│ │ │ ├── testnativecocoa.m
│ │ │ ├── testnativeos2.c
│ │ │ ├── testnativew32.c
│ │ │ ├── testnativex11.c
│ │ │ ├── testoffscreen.c
│ │ │ ├── testoverlay2.c
│ │ │ ├── testplatform.c
│ │ │ ├── testpower.c
│ │ │ ├── testqsort.c
│ │ │ ├── testrelative.c
│ │ │ ├── testrendercopyex.c
│ │ │ ├── testrendertarget.c
│ │ │ ├── testresample.c
│ │ │ ├── testrumble.c
│ │ │ ├── testscale.c
│ │ │ ├── testsem.c
│ │ │ ├── testsensor.c
│ │ │ ├── testshader.c
│ │ │ ├── testshape.c
│ │ │ ├── testsprite2.c
│ │ │ ├── testspriteminimal.c
│ │ │ ├── teststreaming.c
│ │ │ ├── testthread.c
│ │ │ ├── testtimer.c
│ │ │ ├── testurl.c
│ │ │ ├── testver.c
│ │ │ ├── testviewport.c
│ │ │ ├── testvulkan.c
│ │ │ ├── testwm2.c
│ │ │ ├── testyuv.c
│ │ │ ├── testyuv_cvt.c
│ │ │ ├── testyuv_cvt.h
│ │ │ ├── torturethread.c
│ │ │ └── utf8.txt
│ │ └── x86_64-w64-mingw32/
│ │ ├── bin/
│ │ │ └── sdl2-config
│ │ ├── include/
│ │ │ └── SDL2/
│ │ │ ├── SDL.h
│ │ │ ├── SDL_assert.h
│ │ │ ├── SDL_atomic.h
│ │ │ ├── SDL_audio.h
│ │ │ ├── SDL_bits.h
│ │ │ ├── SDL_blendmode.h
│ │ │ ├── SDL_clipboard.h
│ │ │ ├── SDL_config.h
│ │ │ ├── SDL_cpuinfo.h
│ │ │ ├── SDL_egl.h
│ │ │ ├── SDL_endian.h
│ │ │ ├── SDL_error.h
│ │ │ ├── SDL_events.h
│ │ │ ├── SDL_filesystem.h
│ │ │ ├── SDL_gamecontroller.h
│ │ │ ├── SDL_gesture.h
│ │ │ ├── SDL_haptic.h
│ │ │ ├── SDL_hints.h
│ │ │ ├── SDL_joystick.h
│ │ │ ├── SDL_keyboard.h
│ │ │ ├── SDL_keycode.h
│ │ │ ├── SDL_loadso.h
│ │ │ ├── SDL_locale.h
│ │ │ ├── SDL_log.h
│ │ │ ├── SDL_main.h
│ │ │ ├── SDL_messagebox.h
│ │ │ ├── SDL_metal.h
│ │ │ ├── SDL_misc.h
│ │ │ ├── SDL_mouse.h
│ │ │ ├── SDL_mutex.h
│ │ │ ├── SDL_name.h
│ │ │ ├── SDL_opengl.h
│ │ │ ├── SDL_opengl_glext.h
│ │ │ ├── SDL_opengles.h
│ │ │ ├── SDL_opengles2.h
│ │ │ ├── SDL_opengles2_gl2.h
│ │ │ ├── SDL_opengles2_gl2ext.h
│ │ │ ├── SDL_opengles2_gl2platform.h
│ │ │ ├── SDL_opengles2_khrplatform.h
│ │ │ ├── SDL_pixels.h
│ │ │ ├── SDL_platform.h
│ │ │ ├── SDL_power.h
│ │ │ ├── SDL_quit.h
│ │ │ ├── SDL_rect.h
│ │ │ ├── SDL_render.h
│ │ │ ├── SDL_revision.h
│ │ │ ├── SDL_rwops.h
│ │ │ ├── SDL_scancode.h
│ │ │ ├── SDL_sensor.h
│ │ │ ├── SDL_shape.h
│ │ │ ├── SDL_stdinc.h
│ │ │ ├── SDL_surface.h
│ │ │ ├── SDL_system.h
│ │ │ ├── SDL_syswm.h
│ │ │ ├── SDL_test.h
│ │ │ ├── SDL_test_assert.h
│ │ │ ├── SDL_test_common.h
│ │ │ ├── SDL_test_compare.h
│ │ │ ├── SDL_test_crc32.h
│ │ │ ├── SDL_test_font.h
│ │ │ ├── SDL_test_fuzzer.h
│ │ │ ├── SDL_test_harness.h
│ │ │ ├── SDL_test_images.h
│ │ │ ├── SDL_test_log.h
│ │ │ ├── SDL_test_md5.h
│ │ │ ├── SDL_test_memory.h
│ │ │ ├── SDL_test_random.h
│ │ │ ├── SDL_thread.h
│ │ │ ├── SDL_timer.h
│ │ │ ├── SDL_touch.h
│ │ │ ├── SDL_types.h
│ │ │ ├── SDL_version.h
│ │ │ ├── SDL_video.h
│ │ │ ├── SDL_vulkan.h
│ │ │ ├── begin_code.h
│ │ │ └── close_code.h
│ │ ├── lib/
│ │ │ ├── cmake/
│ │ │ │ └── SDL2/
│ │ │ │ ├── sdl2-config-version.cmake
│ │ │ │ └── sdl2-config.cmake
│ │ │ ├── libSDL2.a
│ │ │ ├── libSDL2.dll.a
│ │ │ ├── libSDL2.la
│ │ │ ├── libSDL2_test.a
│ │ │ ├── libSDL2_test.la
│ │ │ ├── libSDL2main.a
│ │ │ ├── libSDL2main.la
│ │ │ └── pkgconfig/
│ │ │ └── sdl2.pc
│ │ └── share/
│ │ └── aclocal/
│ │ └── sdl2.m4
│ ├── SDL2_image-2.0.5/
│ │ ├── CHANGES.txt
│ │ ├── COPYING.txt
│ │ ├── Makefile
│ │ ├── README.txt
│ │ ├── i686-w64-mingw32/
│ │ │ ├── bin/
│ │ │ │ ├── LICENSE.jpeg.txt
│ │ │ │ ├── LICENSE.png.txt
│ │ │ │ ├── LICENSE.tiff.txt
│ │ │ │ ├── LICENSE.webp.txt
│ │ │ │ └── LICENSE.zlib.txt
│ │ │ ├── include/
│ │ │ │ └── SDL2/
│ │ │ │ └── SDL_image.h
│ │ │ └── lib/
│ │ │ ├── libSDL2_image.a
│ │ │ ├── libSDL2_image.dll.a
│ │ │ ├── libSDL2_image.la
│ │ │ └── pkgconfig/
│ │ │ └── SDL2_image.pc
│ │ └── x86_64-w64-mingw32/
│ │ ├── bin/
│ │ │ ├── LICENSE.jpeg.txt
│ │ │ ├── LICENSE.png.txt
│ │ │ ├── LICENSE.tiff.txt
│ │ │ ├── LICENSE.webp.txt
│ │ │ └── LICENSE.zlib.txt
│ │ ├── include/
│ │ │ └── SDL2/
│ │ │ └── SDL_image.h
│ │ └── lib/
│ │ ├── libSDL2_image.a
│ │ ├── libSDL2_image.dll.a
│ │ ├── libSDL2_image.la
│ │ └── pkgconfig/
│ │ └── SDL2_image.pc
│ └── libpng-1.6.37/
│ ├── i686-w64-mingw32/
│ │ ├── bin/
│ │ │ ├── libpng-config
│ │ │ └── libpng16-config
│ │ ├── include/
│ │ │ ├── libpng16/
│ │ │ │ ├── png.h
│ │ │ │ ├── pngconf.h
│ │ │ │ └── pnglibconf.h
│ │ │ ├── png.h
│ │ │ ├── pngconf.h
│ │ │ └── pnglibconf.h
│ │ ├── lib/
│ │ │ ├── libpng.a
│ │ │ ├── libpng.dll.a
│ │ │ ├── libpng16.a
│ │ │ ├── libpng16.dll.a
│ │ │ └── pkgconfig/
│ │ │ ├── libpng.pc
│ │ │ └── libpng16.pc
│ │ └── share/
│ │ └── licenses/
│ │ └── libpng/
│ │ └── LICENSE
│ └── x86_64-w64-mingw32/
│ ├── bin/
│ │ ├── libpng-config
│ │ └── libpng16-config
│ ├── include/
│ │ ├── libpng16/
│ │ │ ├── png.h
│ │ │ ├── pngconf.h
│ │ │ └── pnglibconf.h
│ │ ├── png.h
│ │ ├── pngconf.h
│ │ └── pnglibconf.h
│ ├── lib/
│ │ ├── libpng.a
│ │ ├── libpng.dll.a
│ │ ├── libpng16.a
│ │ ├── libpng16.dll.a
│ │ └── pkgconfig/
│ │ ├── libpng.pc
│ │ └── libpng16.pc
│ └── share/
│ └── licenses/
│ └── libpng/
│ └── LICENSE
├── tamatool.exe.manifest
└── tamatool.rc
================================================
FILE CONTENTS
================================================
================================================
FILE: .gitignore
================================================
*.o
/*/tamatool
/*/tamatool-*.zip
build
tamatool.exe
windows/dist
linux/dist
mac/dist
mac/tamatool.icns
icons/icon-*.*
================================================
FILE: .gitmodules
================================================
[submodule "lib"]
path = src/lib
url = https://github.com/jcrona/tamalib.git
================================================
FILE: LICENSE
================================================
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Lesser General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License.
================================================
FILE: Makefile
================================================
LINUX_PROJECT = linux
WINDOWS_PROJECT = windows
MAC_PROJECT = mac
ICONS_FOLDER = icons
all: linux windows
# The mac target requires an actual Mac
linux:
@$(MAKE) -C $(LINUX_PROJECT) dist
linux-clean:
@$(MAKE) -C $(LINUX_PROJECT) clean-all
windows:
@$(MAKE) -C $(WINDOWS_PROJECT) dist
windows-clean:
@$(MAKE) -C $(WINDOWS_PROJECT) clean-all
mac:
@$(MAKE) -C $(MAC_PROJECT) dist
mac-clean:
@$(MAKE) -C $(MAC_PROJECT) clean-all
icons:
@$(MAKE) -C $(ICONS_FOLDER) install
clean: linux-clean windows-clean
.PHONY: all linux linux-clean windows windows-clean mac mac-clean icons clean
================================================
FILE: README.md
================================================
# TamaTool - A Cross-Platform Explorer for First-Gen Tamagotchi
## Synopsis
TamaTool is a cross-platform explorer for first-gen Tamagotchi (like P1, P2 and Angel) relying on the hardware agnostic first-gen Tamagotchi emulation library [TamaLIB](https://github.com/jcrona/tamalib/), and mainly targeting Linux, Windows and MacOS.
More than a simple emulator, it is an exploration tool featuring a realtime RAM editor, an ASM debugger, an I/Os monitor and a sprite manipulator, allowing to play around with E0C6S46/8 based Tamagotchi ROMs. It also allows to save and restore its emulation state, thus allowing you to backup and share your best friend !

In order to create the background images used in TamaTool, I scanned the background of my own P1, P2 and Angel, that I filtered/enhanced using GIMP. The original scans can be found in the __misc__ folder. The shell is also a photo of my P1.
__Notes regarding the supported platforms__
The Windows build does not include the realtime memory editor. The ASM debugger and I/Os monitor do work, but the emulation is very slow when they are enabled because of the poor console performances.
Android support would be feasible, but a native implementation of TamaLIB without libSDL2 would probably be more efficient.
## Build instruction
First, you need to clone TamaTool and its submodule:
```
$ git clone --recursive https://github.com/jcrona/tamatool.git
```
Then the instructions depend on the targetted platform.
### Linux (or other Unix environments providing the dependencies as system libraries)
TamaTool depends on libSDL2, libSDL2-image and libpng.
On Ubuntu, you can install those libraries using the following command:
```
$ sudo apt-get install libsdl2-dev libsdl2-image-dev libpng-dev
```
Then you can build a distribution package (no library bundled) with:
```
$ make linux
```
The package will be available in the __linux__ folder.
### Windows
Only cross-compiling from linux using MinGW64 is supported. The required dependencies are provided as prebuilt binaries.
On Ubuntu you can install MinGW64 using the following command:
```
$ sudo apt install gcc-mingw-w64
```
Then you can build a distribution package (with the required libraries bundled) with:
```
$ make windows
```
The package will be available in the __windows__ folder.
### MacOS
TamaTool needs to be built on MacOS. The required dependencies are provided as prebuilt binaries.
You can build a distribution package (with the required libraries bundled) with:
```
$ make mac
```
The package will be available in the __mac__ folder.
## Usage
TamaTool being an emulator, it requires a compatible Tamagotchi ROM called __rom.bin__ in its folder. This ROM is not provided here.
For your information, the expected ROM format is 16 bits in big-endian per instruction (the actual E0C6S46 instructions are 12-bit long).
Hatching a new Tamagotchi:
```
$ ./tamatool
```
Using a specific ROM:
```
$ ./tamatool -r some_path/my_rom.bin
```
Starting the memory editor:
```
$ ./tamatool -e
```
Looking at the CPU instructions in realtime:
```
$ ./tamatool -c
```
Extracting the data from the ROM to a PNG file:
```
$ ./tamatool -E data.png
```
Importing back the data into the ROM:
```
$ ./tamatool -M data.png
```
When playing around with the extracted data, you can safely modify the sprites. However, modifying other data will likely result in a broken ROM.
Getting all the supported options:
```
$ ./tamatool -h
```
Once running, you can either click on the shell buttons to interact with the Tamagotchi, or you can press the __left__, __down__ and __right__ arrow keys of your keyboard.
Pressing __SPACE__ or clicking on the screen triggers the vibration sensor (the Angel has one for instance)
Pressing __s__ puts the emulation in step by step mode and executes the next instruction, while __r__ resumes it.
Pressing __w__ fully executes the next instruction or call (no step by step inside a call).
Pressing __x__ stops the execution right after the next call.
Pressing __c__ stops the execution right after the next return.
Pressing __f__ toggles between the original speed, x10 speed and unlimited speed.
Pressing __t__ shows/hides the shell of the Tamagotchi.
Pressing __i__ increases the size of the GUI, while __d__ decreases it.
Pressing __b__ saves the emulation state to a __<rom_basename>_saveN.bin__ file, while __n__ loads the last saved state.
## License
TamaTool is distributed under the GPLv2 license. See the LICENSE file for more information.
## Hardware information
The Tamagotchi P1 and P2 are based on an E0C6S46 Epson MCU, and runs at 32,768 kHz, while the Tamagotchi Angel, Umino (Ocean), Morino (Forest), Mothra, Tamaotch and Genjintch are based on an E0C6S48 Epson MCU running at 32,768 kHz and 1 MHz. Their LCDs are all 32x16 B/W pixels, with 8 icons.
To my knowledge, the P1 ROM available online has been extracted from a high-res picture of a die. The ROM mask was clear enough to be optically read. The pictures can be seen [there](https://siliconpr0n.org/map/bandai/tamagotchi-v1/) (thx asterick for the link!).
~~I would love to see the same work done on a P2 and add support for it in TamaLIB/TamaTool!~~ Someone did the same job for the P2 and other first-gen devices!
__
Copyright (C) 2025 Jean-Christophe Rona
================================================
FILE: icons/Makefile
================================================
SRC_ICON = source-1024x1024.png
LINUX_ICON_BASE_FOLDER = ../linux
WINDOWS_ICON_BASE_FOLDER = ../windows
MAC_ICON_BASE_FOLDER = ../mac/tamatool.iconset
all: linux windows mac
install: linux-install windows-install mac-install
linux: icon-128x128.png
linux-install: linux
@cp icon-128x128.png $(LINUX_ICON_BASE_FOLDER)/tamatool.png
windows: icon-256x256.ico
windows-install: windows
@cp icon-256x256.ico $(WINDOWS_ICON_BASE_FOLDER)/tamatool.ico
mac: icon-16x16.png icon-32x32.png icon-64x64.png icon-128x128.png icon-256x256.png icon-512x512.png
mac-install: mac
@cp icon-16x16.png $(MAC_ICON_BASE_FOLDER)/icon_16x16.png
@cp icon-32x32.png $(MAC_ICON_BASE_FOLDER)/icon_16x16@2x.png
@cp icon-32x32.png $(MAC_ICON_BASE_FOLDER)/icon_32x32.png
@cp icon-64x64.png $(MAC_ICON_BASE_FOLDER)/icon_32x32@2x.png
@cp icon-128x128.png $(MAC_ICON_BASE_FOLDER)/icon_128x128.png
@cp icon-256x256.png $(MAC_ICON_BASE_FOLDER)/icon_128x128@2x.png
@cp icon-256x256.png $(MAC_ICON_BASE_FOLDER)/icon_256x256.png
@cp icon-512x512.png $(MAC_ICON_BASE_FOLDER)/icon_256x256@2x.png
@cp icon-512x512.png $(MAC_ICON_BASE_FOLDER)/icon_512x512.png
@cp $(SRC_ICON) $(MAC_ICON_BASE_FOLDER)/icon_512x512@2x.png
clean:
@$(RM) -rf icon-*.*
icon-%: $(SRC_ICON)
@echo "[$@] ..."
@convert $< -resize $$(echo $@ | cut -d '-' -f 2 | cut -d '.' -f 1)\> $@
.PHONY: all install linux linux-install windows windows-install mac mac-install clean
================================================
FILE: linux/Makefile
================================================
GNU_PREFIX =
CC=$(GNU_PREFIX)gcc
LD=$(GNU_PREFIX)ld
DESKTOP_FILE = tamatool.desktop
ICON_FILE = tamatool.png
VERSION = $(shell git describe --tags --always --dirty)
DIST_PATH = dist
DIST_FILE = tamatool-linux-$(VERSION).zip
RES_PATH = ../res
LDLIBS = -lSDL2 -lSDL2_image -lpng16
CFLAGS += -Wall -I/usr/include/SDL2/
include ../src/common.mk
BUILD_FOLDER = build
OBJECTS := $(addprefix $(BUILD_FOLDER)/, $(OBJECTS))
all: $(TARGET)
dist: all
@rm -rf $(DIST_PATH)
@mkdir -p $(DIST_PATH)
@install -s -m 0755 $(TARGET) $(DIST_PATH)
@install -m 0644 $(DESKTOP_FILE) $(DIST_PATH)
@install -m 0644 $(ICON_FILE) $(DIST_PATH)
@cp -a $(RES_PATH) $(DIST_PATH)/
@rm -f $(DIST_FILE)
@cd $(DIST_PATH) && zip -r ../$(DIST_FILE) *
dist-clean:
@rm -rf $(DIST_PATH) $(DIST_FILE)
$(TARGET): $(BUILD_FOLDER) $(OBJECTS)
@echo
@echo -n "Linking ..."
@$(CC) $(CFLAGS) $(LDFLAGS) $(OBJECTS) -o $@ $(LDLIBS)
@echo " -> $@"
@echo
clean:
$(RM) -rf $(BUILD_FOLDER) $(TARGET)
clean-all: dist-clean clean
$(BUILD_FOLDER):
@mkdir -p $(BUILD_FOLDER)/lib
$(BUILD_FOLDER)/%.o : ../src/%.c
@echo "[$@] ..."
@$(CC) $(CFLAGS) -c $< -o $@
$(BUILD_FOLDER)/lib/%.o : ../src/lib/%.c
@echo "[$@] ..."
@$(CC) $(CFLAGS) -c $< -o $@
.PHONY: all dist dist-clean clean clean-all
================================================
FILE: linux/tamatool.desktop
================================================
[Desktop Entry]
Version=0.1
Type=Application
Name=TamaTool Tamagotchi P1 explorer
GenericName=TamaTool
Exec=tamatool
Icon=tamatool.png
Terminal=false
Categories=Games;
================================================
FILE: mac/Info.plist
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleGetInfoString</key>
<string>TamaTool 0.1</string>
<key>CFBundleExecutable</key>
<string>tamatool.mac</string>
<key>CFBundleIdentifier</key>
<string>com.tamatool.app</string>
<key>CFBundleName</key>
<string>TamaTool</string>
<key>CFBundleIconFile</key>
<string>tamatool.icns</string>
<key>CFBundleShortVersionString</key>
<string>0.1</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>IFMajorVersion</key>
<integer>0</integer>
<key>IFMinorVersion</key>
<integer>1</integer>
</dict>
</plist>
================================================
FILE: mac/Makefile
================================================
GNU_PREFIX =
CC=$(GNU_PREFIX)gcc
LD=$(GNU_PREFIX)ld
SDL_ROOT = libs
SDL_IMAGE_ROOT = libs
LIBPNG_ROOT = libs
SDL_LIB = $(SDL_ROOT)/lib/libSDL2-2.0.0.dylib
SDL_IMAGE_LIB = $(SDL_IMAGE_ROOT)/lib/libSDL2_image-2.0.0.dylib
LIBPNG_LIB = $(SDL_IMAGE_ROOT)/lib/libpng16.16.dylib
VERSION = $(shell git describe --tags --always --dirty)
DIST_PATH = dist
DIST_FILE = tamatool-mac-$(VERSION).zip
APP_NAME = TamaTool.app
PLIST_FILE = Info.plist
ICON_FILE = tamatool.icns
ICONSET_FOLDER = tamatool.iconset
WRAPPER_SCRIPT = tamatool.mac
RES_PATH = ../res
CFLAGS += -I$(SDL_ROOT)/include/SDL2 -I$(SDL_IMAGE_ROOT)/include/SDL2 -I$(LIBPNG_ROOT)/include -Wall
LDLIBS = -L$(SDL_ROOT)/lib -L$(SDL_IMAGE_ROOT)/lib -L$(LIBPNG_ROOT)/lib -lSDL2main -lSDL2 -lSDL2_image -lpng16 -framework CoreFoundation
include ../src/common.mk
BUILD_FOLDER = build
OBJECTS := $(addprefix $(BUILD_FOLDER)/, $(OBJECTS))
all: $(TARGET) $(ICON_FILE)
dist: all
@rm -rf $(DIST_PATH)
@mkdir -p $(DIST_PATH)/${APP_NAME}/Contents/MacOS
@mkdir -p $(DIST_PATH)/${APP_NAME}/Contents/Resources
@install -s -m 0755 $(TARGET) $(DIST_PATH)/${APP_NAME}/Contents/MacOS
@install -m 0755 $(WRAPPER_SCRIPT) $(DIST_PATH)/${APP_NAME}/Contents/MacOS
@install -m 0644 $(SDL_LIB) $(DIST_PATH)/${APP_NAME}/Contents/MacOS
@install -m 0644 $(SDL_IMAGE_LIB) $(DIST_PATH)/${APP_NAME}/Contents/MacOS
@install -m 0644 $(LIBPNG_LIB) $(DIST_PATH)/${APP_NAME}/Contents/MacOS
@install -m 0644 $(PLIST_FILE) $(DIST_PATH)/${APP_NAME}/Contents
@install -m 0644 $(ICON_FILE) $(DIST_PATH)/${APP_NAME}/Contents/Resources
@cp -a $(RES_PATH) $(DIST_PATH)/${APP_NAME}/Contents/MacOS
@rm -f $(DIST_FILE)
@cd $(DIST_PATH) && zip -r ../$(DIST_FILE) *
dist-clean:
@rm -rf $(DIST_PATH) $(DIST_FILE)
$(TARGET): $(BUILD_FOLDER) $(OBJECTS)
@echo
@echo -n "Linking ..."
@$(CC) $(CFLAGS) $(LDFLAGS) $(OBJECTS) -o $@ $(LDLIBS)
echo $(shell pwd)
@install_name_tool -change $$(otool -L $(TARGET) | grep libSDL2-2.0.0.dylib | cut -d ' ' -f 1 | sed -e 's/ //g') @executable_path/libSDL2-2.0.0.dylib $(TARGET)
@install_name_tool -change $$(otool -L $(TARGET) | grep libSDL2_image-2.0.0.dylib | cut -d ' ' -f 1 | sed -e 's/ //g') @executable_path/libSDL2_image-2.0.0.dylib $(TARGET)
@install_name_tool -change $$(otool -L $(TARGET) | grep libpng16.16.dylib | cut -d ' ' -f 1 | sed -e 's/ //g') @executable_path/libpng16.16.dylib $(TARGET)
@echo " -> $@"
@echo
$(ICON_FILE): $(ICONSET_FOLDER)/*
iconutil -c icns $(ICONSET_FOLDER)
clean:
$(RM) -rf $(BUILD_FOLDER) $(TARGET) $(ICON_FILE)
clean-all: dist-clean sdl-lib-clean glew-lib-clean clean
$(BUILD_FOLDER):
@mkdir -p $(BUILD_FOLDER)/lib
$(BUILD_FOLDER)/%.o : ../src/%.c
@echo "[$@] ..."
@$(CC) $(CFLAGS) -c $< -o $@
$(BUILD_FOLDER)/lib/%.o : ../src/lib/%.c
@echo "[$@] ..."
@$(CC) $(CFLAGS) -c $< -o $@
.PHONY: all dist dist-clean sdl-lib-clean glew-lib-clean clean clean-all
================================================
FILE: mac/libs/bin/libpng16-config
================================================
#! /bin/sh
# libpng-config
# provides configuration info for libpng.
# Copyright (C) 2002, 2004, 2006, 2007 Glenn Randers-Pehrson
# This code is released under the libpng license.
# For conditions of distribution and use, see the disclaimer
# and license in png.h
# Modeled after libxml-config.
version="1.6.37"
prefix="/Users/jc/TamaTool/mac/libs/build/lpng-build/../sdl-out"
exec_prefix="${prefix}"
libdir="${exec_prefix}/lib"
includedir="${prefix}/include/libpng16"
libs="-lpng16"
all_libs="-lpng16 -lz "
I_opts="-I${includedir}"
L_opts="-L${libdir}"
R_opts=""
cppflags=""
ccopts=""
ldopts=""
usage()
{
cat <<EOF
Usage: $0 [OPTION] ...
Known values for OPTION are:
--prefix print libpng prefix
--libdir print path to directory containing library
--libs print library linking information
--ccopts print compiler options
--cppflags print pre-processor flags
--cflags print preprocessor flags, I_opts, and compiler options
--I_opts print "-I" include options
--L_opts print linker "-L" flags for dynamic linking
--R_opts print dynamic linker "-R" or "-rpath" flags
--ldopts print linker options
--ldflags print linker flags (ldopts, L_opts, R_opts, and libs)
--static revise subsequent outputs for static linking
--help print this help and exit
--version print version information
EOF
exit $1
}
if test $# -eq 0; then
usage 1
fi
while test $# -gt 0; do
case "$1" in
--prefix)
echo ${prefix}
;;
--version)
echo ${version}
exit 0
;;
--help)
usage 0
;;
--ccopts)
echo ${ccopts}
;;
--cppflags)
echo ${cppflags}
;;
--cflags)
echo ${I_opts} ${cppflags} ${ccopts}
;;
--libdir)
echo ${libdir}
;;
--libs)
echo ${libs}
;;
--I_opts)
echo ${I_opts}
;;
--L_opts)
echo ${L_opts}
;;
--R_opts)
echo ${R_opts}
;;
--ldopts)
echo ${ldopts}
;;
--ldflags)
echo ${ldopts} ${L_opts} ${R_opts} ${libs}
;;
--static)
R_opts=""
libs=${all_libs}
;;
*)
usage
exit 1
;;
esac
shift
done
exit 0
================================================
FILE: mac/libs/bin/sdl2-config
================================================
#!/bin/sh
prefix=/Users/jc/TamaTool/mac/libs/build/sdl-build/../sdl-out
exec_prefix=${prefix}
exec_prefix_set=no
libdir=${exec_prefix}/lib
#usage="\
#Usage: $0 [--prefix[=DIR]] [--exec-prefix[=DIR]] [--version] [--cflags] [--libs]"
usage="\
Usage: $0 [--prefix[=DIR]] [--exec-prefix[=DIR]] [--version] [--cflags] [--libs] [--static-libs]"
if test $# -eq 0; then
echo "${usage}" 1>&2
exit 1
fi
while test $# -gt 0; do
case "$1" in
-*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
*) optarg= ;;
esac
case $1 in
--prefix=*)
prefix=$optarg
if test $exec_prefix_set = no ; then
exec_prefix=$optarg
fi
;;
--prefix)
echo $prefix
;;
--exec-prefix=*)
exec_prefix=$optarg
exec_prefix_set=yes
;;
--exec-prefix)
echo $exec_prefix
;;
--version)
echo 2.0.14
;;
--cflags)
echo -I${prefix}/include/SDL2 -D_THREAD_SAFE
;;
--libs)
echo -L${exec_prefix}/lib -lSDL2
;;
--static-libs)
# --libs|--static-libs)
echo -L${exec_prefix}/lib -lSDL2 -lm -liconv -Wl,-framework,CoreAudio -Wl,-framework,AudioToolbox -Wl,-framework,ForceFeedback -lobjc -Wl,-framework,CoreVideo -Wl,-framework,Cocoa -Wl,-framework,Carbon -Wl,-framework,IOKit
;;
*)
echo "${usage}" 1>&2
exit 1
;;
esac
shift
done
================================================
FILE: mac/libs/include/SDL2/SDL.h
================================================
/*
Simple DirectMedia Layer
Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
*/
/**
* \file SDL.h
*
* Main include header for the SDL library
*/
#ifndef SDL_h_
#define SDL_h_
#include "SDL_main.h"
#include "SDL_stdinc.h"
#include "SDL_assert.h"
#include "SDL_atomic.h"
#include "SDL_audio.h"
#include "SDL_clipboard.h"
#include "SDL_cpuinfo.h"
#include "SDL_endian.h"
#include "SDL_error.h"
#include "SDL_events.h"
#include "SDL_filesystem.h"
#include "SDL_gamecontroller.h"
#include "SDL_haptic.h"
#include "SDL_hints.h"
#include "SDL_joystick.h"
#include "SDL_loadso.h"
#include "SDL_log.h"
#include "SDL_messagebox.h"
#include "SDL_metal.h"
#include "SDL_mutex.h"
#include "SDL_power.h"
#include "SDL_render.h"
#include "SDL_rwops.h"
#include "SDL_sensor.h"
#include "SDL_shape.h"
#include "SDL_system.h"
#include "SDL_thread.h"
#include "SDL_timer.h"
#include "SDL_version.h"
#include "SDL_video.h"
#include "SDL_locale.h"
#include "SDL_misc.h"
#include "begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern "C" {
#endif
/* As of version 0.5, SDL is loaded dynamically into the application */
/**
* \name SDL_INIT_*
*
* These are the flags which may be passed to SDL_Init(). You should
* specify the subsystems which you will be using in your application.
*/
/* @{ */
#define SDL_INIT_TIMER 0x00000001u
#define SDL_INIT_AUDIO 0x00000010u
#define SDL_INIT_VIDEO 0x00000020u /**< SDL_INIT_VIDEO implies SDL_INIT_EVENTS */
#define SDL_INIT_JOYSTICK 0x00000200u /**< SDL_INIT_JOYSTICK implies SDL_INIT_EVENTS */
#define SDL_INIT_HAPTIC 0x00001000u
#define SDL_INIT_GAMECONTROLLER 0x00002000u /**< SDL_INIT_GAMECONTROLLER implies SDL_INIT_JOYSTICK */
#define SDL_INIT_EVENTS 0x00004000u
#define SDL_INIT_SENSOR 0x00008000u
#define SDL_INIT_NOPARACHUTE 0x00100000u /**< compatibility; this flag is ignored. */
#define SDL_INIT_EVERYTHING ( \
SDL_INIT_TIMER | SDL_INIT_AUDIO | SDL_INIT_VIDEO | SDL_INIT_EVENTS | \
SDL_INIT_JOYSTICK | SDL_INIT_HAPTIC | SDL_INIT_GAMECONTROLLER | SDL_INIT_SENSOR \
)
/* @} */
/**
* This function initializes the subsystems specified by \c flags
*/
extern DECLSPEC int SDLCALL SDL_Init(Uint32 flags);
/**
* This function initializes specific SDL subsystems
*
* Subsystem initialization is ref-counted, you must call
* SDL_QuitSubSystem() for each SDL_InitSubSystem() to correctly
* shutdown a subsystem manually (or call SDL_Quit() to force shutdown).
* If a subsystem is already loaded then this call will
* increase the ref-count and return.
*/
extern DECLSPEC int SDLCALL SDL_InitSubSystem(Uint32 flags);
/**
* This function cleans up specific SDL subsystems
*/
extern DECLSPEC void SDLCALL SDL_QuitSubSystem(Uint32 flags);
/**
* This function returns a mask of the specified subsystems which have
* previously been initialized.
*
* If \c flags is 0, it returns a mask of all initialized subsystems.
*/
extern DECLSPEC Uint32 SDLCALL SDL_WasInit(Uint32 flags);
/**
* This function cleans up all initialized subsystems. You should
* call it upon all exit conditions.
*/
extern DECLSPEC void SDLCALL SDL_Quit(void);
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#include "close_code.h"
#endif /* SDL_h_ */
/* vi: set ts=4 sw=4 expandtab: */
================================================
FILE: mac/libs/include/SDL2/SDL_assert.h
================================================
/*
Simple DirectMedia Layer
Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
*/
#ifndef SDL_assert_h_
#define SDL_assert_h_
#include "SDL_config.h"
#include "begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern "C" {
#endif
#ifndef SDL_ASSERT_LEVEL
#ifdef SDL_DEFAULT_ASSERT_LEVEL
#define SDL_ASSERT_LEVEL SDL_DEFAULT_ASSERT_LEVEL
#elif defined(_DEBUG) || defined(DEBUG) || \
(defined(__GNUC__) && !defined(__OPTIMIZE__))
#define SDL_ASSERT_LEVEL 2
#else
#define SDL_ASSERT_LEVEL 1
#endif
#endif /* SDL_ASSERT_LEVEL */
/*
These are macros and not first class functions so that the debugger breaks
on the assertion line and not in some random guts of SDL, and so each
assert can have unique static variables associated with it.
*/
#if defined(_MSC_VER)
/* Don't include intrin.h here because it contains C++ code */
extern void __cdecl __debugbreak(void);
#define SDL_TriggerBreakpoint() __debugbreak()
#elif ( (!defined(__NACL__)) && ((defined(__GNUC__) || defined(__clang__)) && (defined(__i386__) || defined(__x86_64__))) )
#define SDL_TriggerBreakpoint() __asm__ __volatile__ ( "int $3\n\t" )
#elif ( defined(__APPLE__) && defined(__arm64__) ) /* this might work on other ARM targets, but this is a known quantity... */
#define SDL_TriggerBreakpoint() __asm__ __volatile__ ( "brk #22\n\t" )
#elif defined(__386__) && defined(__WATCOMC__)
#define SDL_TriggerBreakpoint() { _asm { int 0x03 } }
#elif defined(HAVE_SIGNAL_H) && !defined(__WATCOMC__)
#include <signal.h>
#define SDL_TriggerBreakpoint() raise(SIGTRAP)
#else
/* How do we trigger breakpoints on this platform? */
#define SDL_TriggerBreakpoint()
#endif
#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) /* C99 supports __func__ as a standard. */
# define SDL_FUNCTION __func__
#elif ((__GNUC__ >= 2) || defined(_MSC_VER) || defined (__WATCOMC__))
# define SDL_FUNCTION __FUNCTION__
#else
# define SDL_FUNCTION "???"
#endif
#define SDL_FILE __FILE__
#define SDL_LINE __LINE__
/*
sizeof (x) makes the compiler still parse the expression even without
assertions enabled, so the code is always checked at compile time, but
doesn't actually generate code for it, so there are no side effects or
expensive checks at run time, just the constant size of what x WOULD be,
which presumably gets optimized out as unused.
This also solves the problem of...
int somevalue = blah();
SDL_assert(somevalue == 1);
...which would cause compiles to complain that somevalue is unused if we
disable assertions.
*/
/* "while (0,0)" fools Microsoft's compiler's /W4 warning level into thinking
this condition isn't constant. And looks like an owl's face! */
#ifdef _MSC_VER /* stupid /W4 warnings. */
#define SDL_NULL_WHILE_LOOP_CONDITION (0,0)
#else
#define SDL_NULL_WHILE_LOOP_CONDITION (0)
#endif
#define SDL_disabled_assert(condition) \
do { (void) sizeof ((condition)); } while (SDL_NULL_WHILE_LOOP_CONDITION)
typedef enum
{
SDL_ASSERTION_RETRY, /**< Retry the assert immediately. */
SDL_ASSERTION_BREAK, /**< Make the debugger trigger a breakpoint. */
SDL_ASSERTION_ABORT, /**< Terminate the program. */
SDL_ASSERTION_IGNORE, /**< Ignore the assert. */
SDL_ASSERTION_ALWAYS_IGNORE /**< Ignore the assert from now on. */
} SDL_AssertState;
typedef struct SDL_AssertData
{
int always_ignore;
unsigned int trigger_count;
const char *condition;
const char *filename;
int linenum;
const char *function;
const struct SDL_AssertData *next;
} SDL_AssertData;
#if (SDL_ASSERT_LEVEL > 0)
/* Never call this directly. Use the SDL_assert* macros. */
extern DECLSPEC SDL_AssertState SDLCALL SDL_ReportAssertion(SDL_AssertData *,
const char *,
const char *, int)
#if defined(__clang__)
#if __has_feature(attribute_analyzer_noreturn)
/* this tells Clang's static analysis that we're a custom assert function,
and that the analyzer should assume the condition was always true past this
SDL_assert test. */
__attribute__((analyzer_noreturn))
#endif
#endif
;
/* the do {} while(0) avoids dangling else problems:
if (x) SDL_assert(y); else blah();
... without the do/while, the "else" could attach to this macro's "if".
We try to handle just the minimum we need here in a macro...the loop,
the static vars, and break points. The heavy lifting is handled in
SDL_ReportAssertion(), in SDL_assert.c.
*/
#define SDL_enabled_assert(condition) \
do { \
while ( !(condition) ) { \
static struct SDL_AssertData sdl_assert_data = { \
0, 0, #condition, 0, 0, 0, 0 \
}; \
const SDL_AssertState sdl_assert_state = SDL_ReportAssertion(&sdl_assert_data, SDL_FUNCTION, SDL_FILE, SDL_LINE); \
if (sdl_assert_state == SDL_ASSERTION_RETRY) { \
continue; /* go again. */ \
} else if (sdl_assert_state == SDL_ASSERTION_BREAK) { \
SDL_TriggerBreakpoint(); \
} \
break; /* not retrying. */ \
} \
} while (SDL_NULL_WHILE_LOOP_CONDITION)
#endif /* enabled assertions support code */
/* Enable various levels of assertions. */
#if SDL_ASSERT_LEVEL == 0 /* assertions disabled */
# define SDL_assert(condition) SDL_disabled_assert(condition)
# define SDL_assert_release(condition) SDL_disabled_assert(condition)
# define SDL_assert_paranoid(condition) SDL_disabled_assert(condition)
#elif SDL_ASSERT_LEVEL == 1 /* release settings. */
# define SDL_assert(condition) SDL_disabled_assert(condition)
# define SDL_assert_release(condition) SDL_enabled_assert(condition)
# define SDL_assert_paranoid(condition) SDL_disabled_assert(condition)
#elif SDL_ASSERT_LEVEL == 2 /* normal settings. */
# define SDL_assert(condition) SDL_enabled_assert(condition)
# define SDL_assert_release(condition) SDL_enabled_assert(condition)
# define SDL_assert_paranoid(condition) SDL_disabled_assert(condition)
#elif SDL_ASSERT_LEVEL == 3 /* paranoid settings. */
# define SDL_assert(condition) SDL_enabled_assert(condition)
# define SDL_assert_release(condition) SDL_enabled_assert(condition)
# define SDL_assert_paranoid(condition) SDL_enabled_assert(condition)
#else
# error Unknown assertion level.
#endif
/* this assertion is never disabled at any level. */
#define SDL_assert_always(condition) SDL_enabled_assert(condition)
typedef SDL_AssertState (SDLCALL *SDL_AssertionHandler)(
const SDL_AssertData* data, void* userdata);
/**
* \brief Set an application-defined assertion handler.
*
* This allows an app to show its own assertion UI and/or force the
* response to an assertion failure. If the app doesn't provide this, SDL
* will try to do the right thing, popping up a system-specific GUI dialog,
* and probably minimizing any fullscreen windows.
*
* This callback may fire from any thread, but it runs wrapped in a mutex, so
* it will only fire from one thread at a time.
*
* Setting the callback to NULL restores SDL's original internal handler.
*
* This callback is NOT reset to SDL's internal handler upon SDL_Quit()!
*
* Return SDL_AssertState value of how to handle the assertion failure.
*
* \param handler Callback function, called when an assertion fails.
* \param userdata A pointer passed to the callback as-is.
*/
extern DECLSPEC void SDLCALL SDL_SetAssertionHandler(
SDL_AssertionHandler handler,
void *userdata);
/**
* \brief Get the default assertion handler.
*
* This returns the function pointer that is called by default when an
* assertion is triggered. This is an internal function provided by SDL,
* that is used for assertions when SDL_SetAssertionHandler() hasn't been
* used to provide a different function.
*
* \return The default SDL_AssertionHandler that is called when an assert triggers.
*/
extern DECLSPEC SDL_AssertionHandler SDLCALL SDL_GetDefaultAssertionHandler(void);
/**
* \brief Get the current assertion handler.
*
* This returns the function pointer that is called when an assertion is
* triggered. This is either the value last passed to
* SDL_SetAssertionHandler(), or if no application-specified function is
* set, is equivalent to calling SDL_GetDefaultAssertionHandler().
*
* \param puserdata Pointer to a void*, which will store the "userdata"
* pointer that was passed to SDL_SetAssertionHandler().
* This value will always be NULL for the default handler.
* If you don't care about this data, it is safe to pass
* a NULL pointer to this function to ignore it.
* \return The SDL_AssertionHandler that is called when an assert triggers.
*/
extern DECLSPEC SDL_AssertionHandler SDLCALL SDL_GetAssertionHandler(void **puserdata);
/**
* \brief Get a list of all assertion failures.
*
* Get all assertions triggered since last call to SDL_ResetAssertionReport(),
* or the start of the program.
*
* The proper way to examine this data looks something like this:
*
* <code>
* const SDL_AssertData *item = SDL_GetAssertionReport();
* while (item) {
* printf("'%s', %s (%s:%d), triggered %u times, always ignore: %s.\\n",
* item->condition, item->function, item->filename,
* item->linenum, item->trigger_count,
* item->always_ignore ? "yes" : "no");
* item = item->next;
* }
* </code>
*
* \return List of all assertions.
* \sa SDL_ResetAssertionReport
*/
extern DECLSPEC const SDL_AssertData * SDLCALL SDL_GetAssertionReport(void);
/**
* \brief Reset the list of all assertion failures.
*
* Reset list of all assertions triggered.
*
* \sa SDL_GetAssertionReport
*/
extern DECLSPEC void SDLCALL SDL_ResetAssertionReport(void);
/* these had wrong naming conventions until 2.0.4. Please update your app! */
#define SDL_assert_state SDL_AssertState
#define SDL_assert_data SDL_AssertData
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#include "close_code.h"
#endif /* SDL_assert_h_ */
/* vi: set ts=4 sw=4 expandtab: */
================================================
FILE: mac/libs/include/SDL2/SDL_atomic.h
================================================
/*
Simple DirectMedia Layer
Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
*/
/**
* \file SDL_atomic.h
*
* Atomic operations.
*
* IMPORTANT:
* If you are not an expert in concurrent lockless programming, you should
* only be using the atomic lock and reference counting functions in this
* file. In all other cases you should be protecting your data structures
* with full mutexes.
*
* The list of "safe" functions to use are:
* SDL_AtomicLock()
* SDL_AtomicUnlock()
* SDL_AtomicIncRef()
* SDL_AtomicDecRef()
*
* Seriously, here be dragons!
* ^^^^^^^^^^^^^^^^^^^^^^^^^^^
*
* You can find out a little more about lockless programming and the
* subtle issues that can arise here:
* http://msdn.microsoft.com/en-us/library/ee418650%28v=vs.85%29.aspx
*
* There's also lots of good information here:
* http://www.1024cores.net/home/lock-free-algorithms
* http://preshing.com/
*
* These operations may or may not actually be implemented using
* processor specific atomic operations. When possible they are
* implemented as true processor specific atomic operations. When that
* is not possible the are implemented using locks that *do* use the
* available atomic operations.
*
* All of the atomic operations that modify memory are full memory barriers.
*/
#ifndef SDL_atomic_h_
#define SDL_atomic_h_
#include "SDL_stdinc.h"
#include "SDL_platform.h"
#include "begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern "C" {
#endif
/**
* \name SDL AtomicLock
*
* The atomic locks are efficient spinlocks using CPU instructions,
* but are vulnerable to starvation and can spin forever if a thread
* holding a lock has been terminated. For this reason you should
* minimize the code executed inside an atomic lock and never do
* expensive things like API or system calls while holding them.
*
* The atomic locks are not safe to lock recursively.
*
* Porting Note:
* The spin lock functions and type are required and can not be
* emulated because they are used in the atomic emulation code.
*/
/* @{ */
typedef int SDL_SpinLock;
/**
* \brief Try to lock a spin lock by setting it to a non-zero value.
*
* \param lock Points to the lock.
*
* \return SDL_TRUE if the lock succeeded, SDL_FALSE if the lock is already held.
*/
extern DECLSPEC SDL_bool SDLCALL SDL_AtomicTryLock(SDL_SpinLock *lock);
/**
* \brief Lock a spin lock by setting it to a non-zero value.
*
* \param lock Points to the lock.
*/
extern DECLSPEC void SDLCALL SDL_AtomicLock(SDL_SpinLock *lock);
/**
* \brief Unlock a spin lock by setting it to 0. Always returns immediately
*
* \param lock Points to the lock.
*/
extern DECLSPEC void SDLCALL SDL_AtomicUnlock(SDL_SpinLock *lock);
/* @} *//* SDL AtomicLock */
/**
* The compiler barrier prevents the compiler from reordering
* reads and writes to globally visible variables across the call.
*/
#if defined(_MSC_VER) && (_MSC_VER > 1200) && !defined(__clang__)
void _ReadWriteBarrier(void);
#pragma intrinsic(_ReadWriteBarrier)
#define SDL_CompilerBarrier() _ReadWriteBarrier()
#elif (defined(__GNUC__) && !defined(__EMSCRIPTEN__)) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x5120))
/* This is correct for all CPUs when using GCC or Solaris Studio 12.1+. */
#define SDL_CompilerBarrier() __asm__ __volatile__ ("" : : : "memory")
#elif defined(__WATCOMC__)
extern _inline void SDL_CompilerBarrier (void);
#pragma aux SDL_CompilerBarrier = "" parm [] modify exact [];
#else
#define SDL_CompilerBarrier() \
{ SDL_SpinLock _tmp = 0; SDL_AtomicLock(&_tmp); SDL_AtomicUnlock(&_tmp); }
#endif
/**
* Memory barriers are designed to prevent reads and writes from being
* reordered by the compiler and being seen out of order on multi-core CPUs.
*
* A typical pattern would be for thread A to write some data and a flag,
* and for thread B to read the flag and get the data. In this case you
* would insert a release barrier between writing the data and the flag,
* guaranteeing that the data write completes no later than the flag is
* written, and you would insert an acquire barrier between reading the
* flag and reading the data, to ensure that all the reads associated
* with the flag have completed.
*
* In this pattern you should always see a release barrier paired with
* an acquire barrier and you should gate the data reads/writes with a
* single flag variable.
*
* For more information on these semantics, take a look at the blog post:
* http://preshing.com/20120913/acquire-and-release-semantics
*/
extern DECLSPEC void SDLCALL SDL_MemoryBarrierReleaseFunction(void);
extern DECLSPEC void SDLCALL SDL_MemoryBarrierAcquireFunction(void);
#if defined(__GNUC__) && (defined(__powerpc__) || defined(__ppc__))
#define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("lwsync" : : : "memory")
#define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("lwsync" : : : "memory")
#elif defined(__GNUC__) && defined(__aarch64__)
#define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("dmb ish" : : : "memory")
#define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("dmb ish" : : : "memory")
#elif defined(__GNUC__) && defined(__arm__)
#if 0 /* defined(__LINUX__) || defined(__ANDROID__) */
/* Information from:
https://chromium.googlesource.com/chromium/chromium/+/trunk/base/atomicops_internals_arm_gcc.h#19
The Linux kernel provides a helper function which provides the right code for a memory barrier,
hard-coded at address 0xffff0fa0
*/
typedef void (*SDL_KernelMemoryBarrierFunc)();
#define SDL_MemoryBarrierRelease() ((SDL_KernelMemoryBarrierFunc)0xffff0fa0)()
#define SDL_MemoryBarrierAcquire() ((SDL_KernelMemoryBarrierFunc)0xffff0fa0)()
#elif 0 /* defined(__QNXNTO__) */
#include <sys/cpuinline.h>
#define SDL_MemoryBarrierRelease() __cpu_membarrier()
#define SDL_MemoryBarrierAcquire() __cpu_membarrier()
#else
#if defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7S__) || defined(__ARM_ARCH_8A__)
#define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("dmb ish" : : : "memory")
#define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("dmb ish" : : : "memory")
#elif defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6T2__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_5TE__)
#ifdef __thumb__
/* The mcr instruction isn't available in thumb mode, use real functions */
#define SDL_MEMORY_BARRIER_USES_FUNCTION
#define SDL_MemoryBarrierRelease() SDL_MemoryBarrierReleaseFunction()
#define SDL_MemoryBarrierAcquire() SDL_MemoryBarrierAcquireFunction()
#else
#define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("mcr p15, 0, %0, c7, c10, 5" : : "r"(0) : "memory")
#define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("mcr p15, 0, %0, c7, c10, 5" : : "r"(0) : "memory")
#endif /* __thumb__ */
#else
#define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("" : : : "memory")
#define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("" : : : "memory")
#endif /* __LINUX__ || __ANDROID__ */
#endif /* __GNUC__ && __arm__ */
#else
#if (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x5120))
/* This is correct for all CPUs on Solaris when using Solaris Studio 12.1+. */
#include <mbarrier.h>
#define SDL_MemoryBarrierRelease() __machine_rel_barrier()
#define SDL_MemoryBarrierAcquire() __machine_acq_barrier()
#else
/* This is correct for the x86 and x64 CPUs, and we'll expand this over time. */
#define SDL_MemoryBarrierRelease() SDL_CompilerBarrier()
#define SDL_MemoryBarrierAcquire() SDL_CompilerBarrier()
#endif
#endif
/**
* \brief A type representing an atomic integer value. It is a struct
* so people don't accidentally use numeric operations on it.
*/
typedef struct { int value; } SDL_atomic_t;
/**
* \brief Set an atomic variable to a new value if it is currently an old value.
*
* \return SDL_TRUE if the atomic variable was set, SDL_FALSE otherwise.
*
* \note If you don't know what this function is for, you shouldn't use it!
*/
extern DECLSPEC SDL_bool SDLCALL SDL_AtomicCAS(SDL_atomic_t *a, int oldval, int newval);
/**
* \brief Set an atomic variable to a value.
*
* \return The previous value of the atomic variable.
*/
extern DECLSPEC int SDLCALL SDL_AtomicSet(SDL_atomic_t *a, int v);
/**
* \brief Get the value of an atomic variable
*/
extern DECLSPEC int SDLCALL SDL_AtomicGet(SDL_atomic_t *a);
/**
* \brief Add to an atomic variable.
*
* \return The previous value of the atomic variable.
*
* \note This same style can be used for any number operation
*/
extern DECLSPEC int SDLCALL SDL_AtomicAdd(SDL_atomic_t *a, int v);
/**
* \brief Increment an atomic variable used as a reference count.
*/
#ifndef SDL_AtomicIncRef
#define SDL_AtomicIncRef(a) SDL_AtomicAdd(a, 1)
#endif
/**
* \brief Decrement an atomic variable used as a reference count.
*
* \return SDL_TRUE if the variable reached zero after decrementing,
* SDL_FALSE otherwise
*/
#ifndef SDL_AtomicDecRef
#define SDL_AtomicDecRef(a) (SDL_AtomicAdd(a, -1) == 1)
#endif
/**
* \brief Set a pointer to a new value if it is currently an old value.
*
* \return SDL_TRUE if the pointer was set, SDL_FALSE otherwise.
*
* \note If you don't know what this function is for, you shouldn't use it!
*/
extern DECLSPEC SDL_bool SDLCALL SDL_AtomicCASPtr(void **a, void *oldval, void *newval);
/**
* \brief Set a pointer to a value atomically.
*
* \return The previous value of the pointer.
*/
extern DECLSPEC void* SDLCALL SDL_AtomicSetPtr(void **a, void* v);
/**
* \brief Get the value of a pointer atomically.
*/
extern DECLSPEC void* SDLCALL SDL_AtomicGetPtr(void **a);
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#include "close_code.h"
#endif /* SDL_atomic_h_ */
/* vi: set ts=4 sw=4 expandtab: */
================================================
FILE: mac/libs/include/SDL2/SDL_audio.h
================================================
/*
Simple DirectMedia Layer
Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
*/
/**
* \file SDL_audio.h
*
* Access to the raw audio mixing buffer for the SDL library.
*/
#ifndef SDL_audio_h_
#define SDL_audio_h_
#include "SDL_stdinc.h"
#include "SDL_error.h"
#include "SDL_endian.h"
#include "SDL_mutex.h"
#include "SDL_thread.h"
#include "SDL_rwops.h"
#include "begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern "C" {
#endif
/**
* \brief Audio format flags.
*
* These are what the 16 bits in SDL_AudioFormat currently mean...
* (Unspecified bits are always zero).
*
* \verbatim
++-----------------------sample is signed if set
||
|| ++-----------sample is bigendian if set
|| ||
|| || ++---sample is float if set
|| || ||
|| || || +---sample bit size---+
|| || || | |
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
\endverbatim
*
* There are macros in SDL 2.0 and later to query these bits.
*/
typedef Uint16 SDL_AudioFormat;
/**
* \name Audio flags
*/
/* @{ */
#define SDL_AUDIO_MASK_BITSIZE (0xFF)
#define SDL_AUDIO_MASK_DATATYPE (1<<8)
#define SDL_AUDIO_MASK_ENDIAN (1<<12)
#define SDL_AUDIO_MASK_SIGNED (1<<15)
#define SDL_AUDIO_BITSIZE(x) (x & SDL_AUDIO_MASK_BITSIZE)
#define SDL_AUDIO_ISFLOAT(x) (x & SDL_AUDIO_MASK_DATATYPE)
#define SDL_AUDIO_ISBIGENDIAN(x) (x & SDL_AUDIO_MASK_ENDIAN)
#define SDL_AUDIO_ISSIGNED(x) (x & SDL_AUDIO_MASK_SIGNED)
#define SDL_AUDIO_ISINT(x) (!SDL_AUDIO_ISFLOAT(x))
#define SDL_AUDIO_ISLITTLEENDIAN(x) (!SDL_AUDIO_ISBIGENDIAN(x))
#define SDL_AUDIO_ISUNSIGNED(x) (!SDL_AUDIO_ISSIGNED(x))
/**
* \name Audio format flags
*
* Defaults to LSB byte order.
*/
/* @{ */
#define AUDIO_U8 0x0008 /**< Unsigned 8-bit samples */
#define AUDIO_S8 0x8008 /**< Signed 8-bit samples */
#define AUDIO_U16LSB 0x0010 /**< Unsigned 16-bit samples */
#define AUDIO_S16LSB 0x8010 /**< Signed 16-bit samples */
#define AUDIO_U16MSB 0x1010 /**< As above, but big-endian byte order */
#define AUDIO_S16MSB 0x9010 /**< As above, but big-endian byte order */
#define AUDIO_U16 AUDIO_U16LSB
#define AUDIO_S16 AUDIO_S16LSB
/* @} */
/**
* \name int32 support
*/
/* @{ */
#define AUDIO_S32LSB 0x8020 /**< 32-bit integer samples */
#define AUDIO_S32MSB 0x9020 /**< As above, but big-endian byte order */
#define AUDIO_S32 AUDIO_S32LSB
/* @} */
/**
* \name float32 support
*/
/* @{ */
#define AUDIO_F32LSB 0x8120 /**< 32-bit floating point samples */
#define AUDIO_F32MSB 0x9120 /**< As above, but big-endian byte order */
#define AUDIO_F32 AUDIO_F32LSB
/* @} */
/**
* \name Native audio byte ordering
*/
/* @{ */
#if SDL_BYTEORDER == SDL_LIL_ENDIAN
#define AUDIO_U16SYS AUDIO_U16LSB
#define AUDIO_S16SYS AUDIO_S16LSB
#define AUDIO_S32SYS AUDIO_S32LSB
#define AUDIO_F32SYS AUDIO_F32LSB
#else
#define AUDIO_U16SYS AUDIO_U16MSB
#define AUDIO_S16SYS AUDIO_S16MSB
#define AUDIO_S32SYS AUDIO_S32MSB
#define AUDIO_F32SYS AUDIO_F32MSB
#endif
/* @} */
/**
* \name Allow change flags
*
* Which audio format changes are allowed when opening a device.
*/
/* @{ */
#define SDL_AUDIO_ALLOW_FREQUENCY_CHANGE 0x00000001
#define SDL_AUDIO_ALLOW_FORMAT_CHANGE 0x00000002
#define SDL_AUDIO_ALLOW_CHANNELS_CHANGE 0x00000004
#define SDL_AUDIO_ALLOW_SAMPLES_CHANGE 0x00000008
#define SDL_AUDIO_ALLOW_ANY_CHANGE (SDL_AUDIO_ALLOW_FREQUENCY_CHANGE|SDL_AUDIO_ALLOW_FORMAT_CHANGE|SDL_AUDIO_ALLOW_CHANNELS_CHANGE|SDL_AUDIO_ALLOW_SAMPLES_CHANGE)
/* @} */
/* @} *//* Audio flags */
/**
* This function is called when the audio device needs more data.
*
* \param userdata An application-specific parameter saved in
* the SDL_AudioSpec structure
* \param stream A pointer to the audio data buffer.
* \param len The length of that buffer in bytes.
*
* Once the callback returns, the buffer will no longer be valid.
* Stereo samples are stored in a LRLRLR ordering.
*
* You can choose to avoid callbacks and use SDL_QueueAudio() instead, if
* you like. Just open your audio device with a NULL callback.
*/
typedef void (SDLCALL * SDL_AudioCallback) (void *userdata, Uint8 * stream,
int len);
/**
* The calculated values in this structure are calculated by SDL_OpenAudio().
*
* For multi-channel audio, the default SDL channel mapping is:
* 2: FL FR (stereo)
* 3: FL FR LFE (2.1 surround)
* 4: FL FR BL BR (quad)
* 5: FL FR FC BL BR (quad + center)
* 6: FL FR FC LFE SL SR (5.1 surround - last two can also be BL BR)
* 7: FL FR FC LFE BC SL SR (6.1 surround)
* 8: FL FR FC LFE BL BR SL SR (7.1 surround)
*/
typedef struct SDL_AudioSpec
{
int freq; /**< DSP frequency -- samples per second */
SDL_AudioFormat format; /**< Audio data format */
Uint8 channels; /**< Number of channels: 1 mono, 2 stereo */
Uint8 silence; /**< Audio buffer silence value (calculated) */
Uint16 samples; /**< Audio buffer size in sample FRAMES (total samples divided by channel count) */
Uint16 padding; /**< Necessary for some compile environments */
Uint32 size; /**< Audio buffer size in bytes (calculated) */
SDL_AudioCallback callback; /**< Callback that feeds the audio device (NULL to use SDL_QueueAudio()). */
void *userdata; /**< Userdata passed to callback (ignored for NULL callbacks). */
} SDL_AudioSpec;
struct SDL_AudioCVT;
typedef void (SDLCALL * SDL_AudioFilter) (struct SDL_AudioCVT * cvt,
SDL_AudioFormat format);
/**
* \brief Upper limit of filters in SDL_AudioCVT
*
* The maximum number of SDL_AudioFilter functions in SDL_AudioCVT is
* currently limited to 9. The SDL_AudioCVT.filters array has 10 pointers,
* one of which is the terminating NULL pointer.
*/
#define SDL_AUDIOCVT_MAX_FILTERS 9
/**
* \struct SDL_AudioCVT
* \brief A structure to hold a set of audio conversion filters and buffers.
*
* Note that various parts of the conversion pipeline can take advantage
* of SIMD operations (like SSE2, for example). SDL_AudioCVT doesn't require
* you to pass it aligned data, but can possibly run much faster if you
* set both its (buf) field to a pointer that is aligned to 16 bytes, and its
* (len) field to something that's a multiple of 16, if possible.
*/
#ifdef __GNUC__
/* This structure is 84 bytes on 32-bit architectures, make sure GCC doesn't
pad it out to 88 bytes to guarantee ABI compatibility between compilers.
vvv
The next time we rev the ABI, make sure to size the ints and add padding.
*/
#define SDL_AUDIOCVT_PACKED __attribute__((packed))
#else
#define SDL_AUDIOCVT_PACKED
#endif
/* */
typedef struct SDL_AudioCVT
{
int needed; /**< Set to 1 if conversion possible */
SDL_AudioFormat src_format; /**< Source audio format */
SDL_AudioFormat dst_format; /**< Target audio format */
double rate_incr; /**< Rate conversion increment */
Uint8 *buf; /**< Buffer to hold entire audio data */
int len; /**< Length of original audio buffer */
int len_cvt; /**< Length of converted audio buffer */
int len_mult; /**< buffer must be len*len_mult big */
double len_ratio; /**< Given len, final size is len*len_ratio */
SDL_AudioFilter filters[SDL_AUDIOCVT_MAX_FILTERS + 1]; /**< NULL-terminated list of filter functions */
int filter_index; /**< Current audio conversion function */
} SDL_AUDIOCVT_PACKED SDL_AudioCVT;
/* Function prototypes */
/**
* \name Driver discovery functions
*
* These functions return the list of built in audio drivers, in the
* order that they are normally initialized by default.
*/
/* @{ */
extern DECLSPEC int SDLCALL SDL_GetNumAudioDrivers(void);
extern DECLSPEC const char *SDLCALL SDL_GetAudioDriver(int index);
/* @} */
/**
* \name Initialization and cleanup
*
* \internal These functions are used internally, and should not be used unless
* you have a specific need to specify the audio driver you want to
* use. You should normally use SDL_Init() or SDL_InitSubSystem().
*/
/* @{ */
extern DECLSPEC int SDLCALL SDL_AudioInit(const char *driver_name);
extern DECLSPEC void SDLCALL SDL_AudioQuit(void);
/* @} */
/**
* This function returns the name of the current audio driver, or NULL
* if no driver has been initialized.
*/
extern DECLSPEC const char *SDLCALL SDL_GetCurrentAudioDriver(void);
/**
* This function opens the audio device with the desired parameters, and
* returns 0 if successful, placing the actual hardware parameters in the
* structure pointed to by \c obtained. If \c obtained is NULL, the audio
* data passed to the callback function will be guaranteed to be in the
* requested format, and will be automatically converted to the hardware
* audio format if necessary. This function returns -1 if it failed
* to open the audio device, or couldn't set up the audio thread.
*
* When filling in the desired audio spec structure,
* - \c desired->freq should be the desired audio frequency in samples-per-
* second.
* - \c desired->format should be the desired audio format.
* - \c desired->samples is the desired size of the audio buffer, in
* samples. This number should be a power of two, and may be adjusted by
* the audio driver to a value more suitable for the hardware. Good values
* seem to range between 512 and 8096 inclusive, depending on the
* application and CPU speed. Smaller values yield faster response time,
* but can lead to underflow if the application is doing heavy processing
* and cannot fill the audio buffer in time. A stereo sample consists of
* both right and left channels in LR ordering.
* Note that the number of samples is directly related to time by the
* following formula: \code ms = (samples*1000)/freq \endcode
* - \c desired->size is the size in bytes of the audio buffer, and is
* calculated by SDL_OpenAudio().
* - \c desired->silence is the value used to set the buffer to silence,
* and is calculated by SDL_OpenAudio().
* - \c desired->callback should be set to a function that will be called
* when the audio device is ready for more data. It is passed a pointer
* to the audio buffer, and the length in bytes of the audio buffer.
* This function usually runs in a separate thread, and so you should
* protect data structures that it accesses by calling SDL_LockAudio()
* and SDL_UnlockAudio() in your code. Alternately, you may pass a NULL
* pointer here, and call SDL_QueueAudio() with some frequency, to queue
* more audio samples to be played (or for capture devices, call
* SDL_DequeueAudio() with some frequency, to obtain audio samples).
* - \c desired->userdata is passed as the first parameter to your callback
* function. If you passed a NULL callback, this value is ignored.
*
* The audio device starts out playing silence when it's opened, and should
* be enabled for playing by calling \c SDL_PauseAudio(0) when you are ready
* for your audio callback function to be called. Since the audio driver
* may modify the requested size of the audio buffer, you should allocate
* any local mixing buffers after you open the audio device.
*/
extern DECLSPEC int SDLCALL SDL_OpenAudio(SDL_AudioSpec * desired,
SDL_AudioSpec * obtained);
/**
* SDL Audio Device IDs.
*
* A successful call to SDL_OpenAudio() is always device id 1, and legacy
* SDL audio APIs assume you want this device ID. SDL_OpenAudioDevice() calls
* always returns devices >= 2 on success. The legacy calls are good both
* for backwards compatibility and when you don't care about multiple,
* specific, or capture devices.
*/
typedef Uint32 SDL_AudioDeviceID;
/**
* Get the number of available devices exposed by the current driver.
* Only valid after a successfully initializing the audio subsystem.
* Returns -1 if an explicit list of devices can't be determined; this is
* not an error. For example, if SDL is set up to talk to a remote audio
* server, it can't list every one available on the Internet, but it will
* still allow a specific host to be specified to SDL_OpenAudioDevice().
*
* In many common cases, when this function returns a value <= 0, it can still
* successfully open the default device (NULL for first argument of
* SDL_OpenAudioDevice()).
*/
extern DECLSPEC int SDLCALL SDL_GetNumAudioDevices(int iscapture);
/**
* Get the human-readable name of a specific audio device.
* Must be a value between 0 and (number of audio devices-1).
* Only valid after a successfully initializing the audio subsystem.
* The values returned by this function reflect the latest call to
* SDL_GetNumAudioDevices(); recall that function to redetect available
* hardware.
*
* The string returned by this function is UTF-8 encoded, read-only, and
* managed internally. You are not to free it. If you need to keep the
* string for any length of time, you should make your own copy of it, as it
* will be invalid next time any of several other SDL functions is called.
*/
extern DECLSPEC const char *SDLCALL SDL_GetAudioDeviceName(int index,
int iscapture);
/**
* Open a specific audio device. Passing in a device name of NULL requests
* the most reasonable default (and is equivalent to calling SDL_OpenAudio()).
*
* The device name is a UTF-8 string reported by SDL_GetAudioDeviceName(), but
* some drivers allow arbitrary and driver-specific strings, such as a
* hostname/IP address for a remote audio server, or a filename in the
* diskaudio driver.
*
* \return 0 on error, a valid device ID that is >= 2 on success.
*
* SDL_OpenAudio(), unlike this function, always acts on device ID 1.
*/
extern DECLSPEC SDL_AudioDeviceID SDLCALL SDL_OpenAudioDevice(const char
*device,
int iscapture,
const
SDL_AudioSpec *
desired,
SDL_AudioSpec *
obtained,
int
allowed_changes);
/**
* \name Audio state
*
* Get the current audio state.
*/
/* @{ */
typedef enum
{
SDL_AUDIO_STOPPED = 0,
SDL_AUDIO_PLAYING,
SDL_AUDIO_PAUSED
} SDL_AudioStatus;
extern DECLSPEC SDL_AudioStatus SDLCALL SDL_GetAudioStatus(void);
extern DECLSPEC SDL_AudioStatus SDLCALL
SDL_GetAudioDeviceStatus(SDL_AudioDeviceID dev);
/* @} *//* Audio State */
/**
* \name Pause audio functions
*
* These functions pause and unpause the audio callback processing.
* They should be called with a parameter of 0 after opening the audio
* device to start playing sound. This is so you can safely initialize
* data for your callback function after opening the audio device.
* Silence will be written to the audio device during the pause.
*/
/* @{ */
extern DECLSPEC void SDLCALL SDL_PauseAudio(int pause_on);
extern DECLSPEC void SDLCALL SDL_PauseAudioDevice(SDL_AudioDeviceID dev,
int pause_on);
/* @} *//* Pause audio functions */
/**
* \brief Load the audio data of a WAVE file into memory
*
* Loading a WAVE file requires \c src, \c spec, \c audio_buf and \c audio_len
* to be valid pointers. The entire data portion of the file is then loaded
* into memory and decoded if necessary.
*
* If \c freesrc is non-zero, the data source gets automatically closed and
* freed before the function returns.
*
* Supported are RIFF WAVE files with the formats PCM (8, 16, 24, and 32 bits),
* IEEE Float (32 bits), Microsoft ADPCM and IMA ADPCM (4 bits), and A-law and
* µ-law (8 bits). Other formats are currently unsupported and cause an error.
*
* If this function succeeds, the pointer returned by it is equal to \c spec
* and the pointer to the audio data allocated by the function is written to
* \c audio_buf and its length in bytes to \c audio_len. The \ref SDL_AudioSpec
* members \c freq, \c channels, and \c format are set to the values of the
* audio data in the buffer. The \c samples member is set to a sane default and
* all others are set to zero.
*
* It's necessary to use SDL_FreeWAV() to free the audio data returned in
* \c audio_buf when it is no longer used.
*
* Because of the underspecification of the Waveform format, there are many
* problematic files in the wild that cause issues with strict decoders. To
* provide compatibility with these files, this decoder is lenient in regards
* to the truncation of the file, the fact chunk, and the size of the RIFF
* chunk. The hints SDL_HINT_WAVE_RIFF_CHUNK_SIZE, SDL_HINT_WAVE_TRUNCATION,
* and SDL_HINT_WAVE_FACT_CHUNK can be used to tune the behavior of the
* loading process.
*
* Any file that is invalid (due to truncation, corruption, or wrong values in
* the headers), too big, or unsupported causes an error. Additionally, any
* critical I/O error from the data source will terminate the loading process
* with an error. The function returns NULL on error and in all cases (with the
* exception of \c src being NULL), an appropriate error message will be set.
*
* It is required that the data source supports seeking.
*
* Example:
* \code
* SDL_LoadWAV_RW(SDL_RWFromFile("sample.wav", "rb"), 1, ...);
* \endcode
*
* \param src The data source with the WAVE data
* \param freesrc A integer value that makes the function close the data source if non-zero
* \param spec A pointer filled with the audio format of the audio data
* \param audio_buf A pointer filled with the audio data allocated by the function
* \param audio_len A pointer filled with the length of the audio data buffer in bytes
* \return NULL on error, or non-NULL on success.
*/
extern DECLSPEC SDL_AudioSpec *SDLCALL SDL_LoadWAV_RW(SDL_RWops * src,
int freesrc,
SDL_AudioSpec * spec,
Uint8 ** audio_buf,
Uint32 * audio_len);
/**
* Loads a WAV from a file.
* Compatibility convenience function.
*/
#define SDL_LoadWAV(file, spec, audio_buf, audio_len) \
SDL_LoadWAV_RW(SDL_RWFromFile(file, "rb"),1, spec,audio_buf,audio_len)
/**
* This function frees data previously allocated with SDL_LoadWAV_RW()
*/
extern DECLSPEC void SDLCALL SDL_FreeWAV(Uint8 * audio_buf);
/**
* This function takes a source format and rate and a destination format
* and rate, and initializes the \c cvt structure with information needed
* by SDL_ConvertAudio() to convert a buffer of audio data from one format
* to the other. An unsupported format causes an error and -1 will be returned.
*
* \return 0 if no conversion is needed, 1 if the audio filter is set up,
* or -1 on error.
*/
extern DECLSPEC int SDLCALL SDL_BuildAudioCVT(SDL_AudioCVT * cvt,
SDL_AudioFormat src_format,
Uint8 src_channels,
int src_rate,
SDL_AudioFormat dst_format,
Uint8 dst_channels,
int dst_rate);
/**
* Once you have initialized the \c cvt structure using SDL_BuildAudioCVT(),
* created an audio buffer \c cvt->buf, and filled it with \c cvt->len bytes of
* audio data in the source format, this function will convert it in-place
* to the desired format.
*
* The data conversion may expand the size of the audio data, so the buffer
* \c cvt->buf should be allocated after the \c cvt structure is initialized by
* SDL_BuildAudioCVT(), and should be \c cvt->len*cvt->len_mult bytes long.
*
* \return 0 on success or -1 if \c cvt->buf is NULL.
*/
extern DECLSPEC int SDLCALL SDL_ConvertAudio(SDL_AudioCVT * cvt);
/* SDL_AudioStream is a new audio conversion interface.
The benefits vs SDL_AudioCVT:
- it can handle resampling data in chunks without generating
artifacts, when it doesn't have the complete buffer available.
- it can handle incoming data in any variable size.
- You push data as you have it, and pull it when you need it
*/
/* this is opaque to the outside world. */
struct _SDL_AudioStream;
typedef struct _SDL_AudioStream SDL_AudioStream;
/**
* Create a new audio stream
*
* \param src_format The format of the source audio
* \param src_channels The number of channels of the source audio
* \param src_rate The sampling rate of the source audio
* \param dst_format The format of the desired audio output
* \param dst_channels The number of channels of the desired audio output
* \param dst_rate The sampling rate of the desired audio output
* \return 0 on success, or -1 on error.
*
* \sa SDL_AudioStreamPut
* \sa SDL_AudioStreamGet
* \sa SDL_AudioStreamAvailable
* \sa SDL_AudioStreamFlush
* \sa SDL_AudioStreamClear
* \sa SDL_FreeAudioStream
*/
extern DECLSPEC SDL_AudioStream * SDLCALL SDL_NewAudioStream(const SDL_AudioFormat src_format,
const Uint8 src_channels,
const int src_rate,
const SDL_AudioFormat dst_format,
const Uint8 dst_channels,
const int dst_rate);
/**
* Add data to be converted/resampled to the stream
*
* \param stream The stream the audio data is being added to
* \param buf A pointer to the audio data to add
* \param len The number of bytes to write to the stream
* \return 0 on success, or -1 on error.
*
* \sa SDL_NewAudioStream
* \sa SDL_AudioStreamGet
* \sa SDL_AudioStreamAvailable
* \sa SDL_AudioStreamFlush
* \sa SDL_AudioStreamClear
* \sa SDL_FreeAudioStream
*/
extern DECLSPEC int SDLCALL SDL_AudioStreamPut(SDL_AudioStream *stream, const void *buf, int len);
/**
* Get converted/resampled data from the stream
*
* \param stream The stream the audio is being requested from
* \param buf A buffer to fill with audio data
* \param len The maximum number of bytes to fill
* \return The number of bytes read from the stream, or -1 on error
*
* \sa SDL_NewAudioStream
* \sa SDL_AudioStreamPut
* \sa SDL_AudioStreamAvailable
* \sa SDL_AudioStreamFlush
* \sa SDL_AudioStreamClear
* \sa SDL_FreeAudioStream
*/
extern DECLSPEC int SDLCALL SDL_AudioStreamGet(SDL_AudioStream *stream, void *buf, int len);
/**
* Get the number of converted/resampled bytes available. The stream may be
* buffering data behind the scenes until it has enough to resample
* correctly, so this number might be lower than what you expect, or even
* be zero. Add more data or flush the stream if you need the data now.
*
* \sa SDL_NewAudioStream
* \sa SDL_AudioStreamPut
* \sa SDL_AudioStreamGet
* \sa SDL_AudioStreamFlush
* \sa SDL_AudioStreamClear
* \sa SDL_FreeAudioStream
*/
extern DECLSPEC int SDLCALL SDL_AudioStreamAvailable(SDL_AudioStream *stream);
/**
* Tell the stream that you're done sending data, and anything being buffered
* should be converted/resampled and made available immediately.
*
* It is legal to add more data to a stream after flushing, but there will
* be audio gaps in the output. Generally this is intended to signal the
* end of input, so the complete output becomes available.
*
* \sa SDL_NewAudioStream
* \sa SDL_AudioStreamPut
* \sa SDL_AudioStreamGet
* \sa SDL_AudioStreamAvailable
* \sa SDL_AudioStreamClear
* \sa SDL_FreeAudioStream
*/
extern DECLSPEC int SDLCALL SDL_AudioStreamFlush(SDL_AudioStream *stream);
/**
* Clear any pending data in the stream without converting it
*
* \sa SDL_NewAudioStream
* \sa SDL_AudioStreamPut
* \sa SDL_AudioStreamGet
* \sa SDL_AudioStreamAvailable
* \sa SDL_AudioStreamFlush
* \sa SDL_FreeAudioStream
*/
extern DECLSPEC void SDLCALL SDL_AudioStreamClear(SDL_AudioStream *stream);
/**
* Free an audio stream
*
* \sa SDL_NewAudioStream
* \sa SDL_AudioStreamPut
* \sa SDL_AudioStreamGet
* \sa SDL_AudioStreamAvailable
* \sa SDL_AudioStreamFlush
* \sa SDL_AudioStreamClear
*/
extern DECLSPEC void SDLCALL SDL_FreeAudioStream(SDL_AudioStream *stream);
#define SDL_MIX_MAXVOLUME 128
/**
* This takes two audio buffers of the playing audio format and mixes
* them, performing addition, volume adjustment, and overflow clipping.
* The volume ranges from 0 - 128, and should be set to ::SDL_MIX_MAXVOLUME
* for full audio volume. Note this does not change hardware volume.
* This is provided for convenience -- you can mix your own audio data.
*/
extern DECLSPEC void SDLCALL SDL_MixAudio(Uint8 * dst, const Uint8 * src,
Uint32 len, int volume);
/**
* This works like SDL_MixAudio(), but you specify the audio format instead of
* using the format of audio device 1. Thus it can be used when no audio
* device is open at all.
*/
extern DECLSPEC void SDLCALL SDL_MixAudioFormat(Uint8 * dst,
const Uint8 * src,
SDL_AudioFormat format,
Uint32 len, int volume);
/**
* Queue more audio on non-callback devices.
*
* (If you are looking to retrieve queued audio from a non-callback capture
* device, you want SDL_DequeueAudio() instead. This will return -1 to
* signify an error if you use it with capture devices.)
*
* SDL offers two ways to feed audio to the device: you can either supply a
* callback that SDL triggers with some frequency to obtain more audio
* (pull method), or you can supply no callback, and then SDL will expect
* you to supply data at regular intervals (push method) with this function.
*
* There are no limits on the amount of data you can queue, short of
* exhaustion of address space. Queued data will drain to the device as
* necessary without further intervention from you. If the device needs
* audio but there is not enough queued, it will play silence to make up
* the difference. This means you will have skips in your audio playback
* if you aren't routinely queueing sufficient data.
*
* This function copies the supplied data, so you are safe to free it when
* the function returns. This function is thread-safe, but queueing to the
* same device from two threads at once does not promise which buffer will
* be queued first.
*
* You may not queue audio on a device that is using an application-supplied
* callback; doing so returns an error. You have to use the audio callback
* or queue audio with this function, but not both.
*
* You should not call SDL_LockAudio() on the device before queueing; SDL
* handles locking internally for this function.
*
* \param dev The device ID to which we will queue audio.
* \param data The data to queue to the device for later playback.
* \param len The number of bytes (not samples!) to which (data) points.
* \return 0 on success, or -1 on error.
*
* \sa SDL_GetQueuedAudioSize
* \sa SDL_ClearQueuedAudio
*/
extern DECLSPEC int SDLCALL SDL_QueueAudio(SDL_AudioDeviceID dev, const void *data, Uint32 len);
/**
* Dequeue more audio on non-callback devices.
*
* (If you are looking to queue audio for output on a non-callback playback
* device, you want SDL_QueueAudio() instead. This will always return 0
* if you use it with playback devices.)
*
* SDL offers two ways to retrieve audio from a capture device: you can
* either supply a callback that SDL triggers with some frequency as the
* device records more audio data, (push method), or you can supply no
* callback, and then SDL will expect you to retrieve data at regular
* intervals (pull method) with this function.
*
* There are no limits on the amount of data you can queue, short of
* exhaustion of address space. Data from the device will keep queuing as
* necessary without further intervention from you. This means you will
* eventually run out of memory if you aren't routinely dequeueing data.
*
* Capture devices will not queue data when paused; if you are expecting
* to not need captured audio for some length of time, use
* SDL_PauseAudioDevice() to stop the capture device from queueing more
* data. This can be useful during, say, level loading times. When
* unpaused, capture devices will start queueing data from that point,
* having flushed any capturable data available while paused.
*
* This function is thread-safe, but dequeueing from the same device from
* two threads at once does not promise which thread will dequeued data
* first.
*
* You may not dequeue audio from a device that is using an
* application-supplied callback; doing so returns an error. You have to use
* the audio callback, or dequeue audio with this function, but not both.
*
* You should not call SDL_LockAudio() on the device before queueing; SDL
* handles locking internally for this function.
*
* \param dev The device ID from which we will dequeue audio.
* \param data A pointer into where audio data should be copied.
* \param len The number of bytes (not samples!) to which (data) points.
* \return number of bytes dequeued, which could be less than requested.
*
* \sa SDL_GetQueuedAudioSize
* \sa SDL_ClearQueuedAudio
*/
extern DECLSPEC Uint32 SDLCALL SDL_DequeueAudio(SDL_AudioDeviceID dev, void *data, Uint32 len);
/**
* Get the number of bytes of still-queued audio.
*
* For playback device:
*
* This is the number of bytes that have been queued for playback with
* SDL_QueueAudio(), but have not yet been sent to the hardware. This
* number may shrink at any time, so this only informs of pending data.
*
* Once we've sent it to the hardware, this function can not decide the
* exact byte boundary of what has been played. It's possible that we just
* gave the hardware several kilobytes right before you called this
* function, but it hasn't played any of it yet, or maybe half of it, etc.
*
* For capture devices:
*
* This is the number of bytes that have been captured by the device and
* are waiting for you to dequeue. This number may grow at any time, so
* this only informs of the lower-bound of available data.
*
* You may not queue audio on a device that is using an application-supplied
* callback; calling this function on such a device always returns 0.
* You have to queue audio with SDL_QueueAudio()/SDL_DequeueAudio(), or use
* the audio callback, but not both.
*
* You should not call SDL_LockAudio() on the device before querying; SDL
* handles locking internally for this function.
*
* \param dev The device ID of which we will query queued audio size.
* \return Number of bytes (not samples!) of queued audio.
*
* \sa SDL_QueueAudio
* \sa SDL_ClearQueuedAudio
*/
extern DECLSPEC Uint32 SDLCALL SDL_GetQueuedAudioSize(SDL_AudioDeviceID dev);
/**
* Drop any queued audio data. For playback devices, this is any queued data
* still waiting to be submitted to the hardware. For capture devices, this
* is any data that was queued by the device that hasn't yet been dequeued by
* the application.
*
* Immediately after this call, SDL_GetQueuedAudioSize() will return 0. For
* playback devices, the hardware will start playing silence if more audio
* isn't queued. Unpaused capture devices will start filling the queue again
* as soon as they have more data available (which, depending on the state
* of the hardware and the thread, could be before this function call
* returns!).
*
* This will not prevent playback of queued audio that's already been sent
* to the hardware, as we can not undo that, so expect there to be some
* fraction of a second of audio that might still be heard. This can be
* useful if you want to, say, drop any pending music during a level change
* in your game.
*
* You may not queue audio on a device that is using an application-supplied
* callback; calling this function on such a device is always a no-op.
* You have to queue audio with SDL_QueueAudio()/SDL_DequeueAudio(), or use
* the audio callback, but not both.
*
* You should not call SDL_LockAudio() on the device before clearing the
* queue; SDL handles locking internally for this function.
*
* This function always succeeds and thus returns void.
*
* \param dev The device ID of which to clear the audio queue.
*
* \sa SDL_QueueAudio
* \sa SDL_GetQueuedAudioSize
*/
extern DECLSPEC void SDLCALL SDL_ClearQueuedAudio(SDL_AudioDeviceID dev);
/**
* \name Audio lock functions
*
* The lock manipulated by these functions protects the callback function.
* During a SDL_LockAudio()/SDL_UnlockAudio() pair, you can be guaranteed that
* the callback function is not running. Do not call these from the callback
* function or you will cause deadlock.
*/
/* @{ */
extern DECLSPEC void SDLCALL SDL_LockAudio(void);
extern DECLSPEC void SDLCALL SDL_LockAudioDevice(SDL_AudioDeviceID dev);
extern DECLSPEC void SDLCALL SDL_UnlockAudio(void);
extern DECLSPEC void SDLCALL SDL_UnlockAudioDevice(SDL_AudioDeviceID dev);
/* @} *//* Audio lock functions */
/**
* This function shuts down audio processing and closes the audio device.
*/
extern DECLSPEC void SDLCALL SDL_CloseAudio(void);
extern DECLSPEC void SDLCALL SDL_CloseAudioDevice(SDL_AudioDeviceID dev);
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#include "close_code.h"
#endif /* SDL_audio_h_ */
/* vi: set ts=4 sw=4 expandtab: */
================================================
FILE: mac/libs/include/SDL2/SDL_bits.h
================================================
/*
Simple DirectMedia Layer
Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
*/
/**
* \file SDL_bits.h
*
* Functions for fiddling with bits and bitmasks.
*/
#ifndef SDL_bits_h_
#define SDL_bits_h_
#include "SDL_stdinc.h"
#include "begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern "C" {
#endif
/**
* \file SDL_bits.h
*/
/**
* Get the index of the most significant bit. Result is undefined when called
* with 0. This operation can also be stated as "count leading zeroes" and
* "log base 2".
*
* \return Index of the most significant bit, or -1 if the value is 0.
*/
#if defined(__WATCOMC__) && defined(__386__)
extern _inline int _SDL_clz_watcom (Uint32);
#pragma aux _SDL_clz_watcom = \
"bsr eax, eax" \
"xor eax, 31" \
parm [eax] nomemory \
value [eax] \
modify exact [eax] nomemory;
#endif
SDL_FORCE_INLINE int
SDL_MostSignificantBitIndex32(Uint32 x)
{
#if defined(__GNUC__) && (__GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
/* Count Leading Zeroes builtin in GCC.
* http://gcc.gnu.org/onlinedocs/gcc-4.3.4/gcc/Other-Builtins.html
*/
if (x == 0) {
return -1;
}
return 31 - __builtin_clz(x);
#elif defined(__WATCOMC__) && defined(__386__)
if (x == 0) {
return -1;
}
return 31 - _SDL_clz_watcom(x);
#else
/* Based off of Bit Twiddling Hacks by Sean Eron Anderson
* <seander@cs.stanford.edu>, released in the public domain.
* http://graphics.stanford.edu/~seander/bithacks.html#IntegerLog
*/
const Uint32 b[] = {0x2, 0xC, 0xF0, 0xFF00, 0xFFFF0000};
const int S[] = {1, 2, 4, 8, 16};
int msbIndex = 0;
int i;
if (x == 0) {
return -1;
}
for (i = 4; i >= 0; i--)
{
if (x & b[i])
{
x >>= S[i];
msbIndex |= S[i];
}
}
return msbIndex;
#endif
}
SDL_FORCE_INLINE SDL_bool
SDL_HasExactlyOneBitSet32(Uint32 x)
{
if (x && !(x & (x - 1))) {
return SDL_TRUE;
}
return SDL_FALSE;
}
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#include "close_code.h"
#endif /* SDL_bits_h_ */
/* vi: set ts=4 sw=4 expandtab: */
================================================
FILE: mac/libs/include/SDL2/SDL_blendmode.h
================================================
/*
Simple DirectMedia Layer
Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
*/
/**
* \file SDL_blendmode.h
*
* Header file declaring the SDL_BlendMode enumeration
*/
#ifndef SDL_blendmode_h_
#define SDL_blendmode_h_
#include "begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern "C" {
#endif
/**
* \brief The blend mode used in SDL_RenderCopy() and drawing operations.
*/
typedef enum
{
SDL_BLENDMODE_NONE = 0x00000000, /**< no blending
dstRGBA = srcRGBA */
SDL_BLENDMODE_BLEND = 0x00000001, /**< alpha blending
dstRGB = (srcRGB * srcA) + (dstRGB * (1-srcA))
dstA = srcA + (dstA * (1-srcA)) */
SDL_BLENDMODE_ADD = 0x00000002, /**< additive blending
dstRGB = (srcRGB * srcA) + dstRGB
dstA = dstA */
SDL_BLENDMODE_MOD = 0x00000004, /**< color modulate
dstRGB = srcRGB * dstRGB
dstA = dstA */
SDL_BLENDMODE_MUL = 0x00000008, /**< color multiply
dstRGB = (srcRGB * dstRGB) + (dstRGB * (1-srcA))
dstA = (srcA * dstA) + (dstA * (1-srcA)) */
SDL_BLENDMODE_INVALID = 0x7FFFFFFF
/* Additional custom blend modes can be returned by SDL_ComposeCustomBlendMode() */
} SDL_BlendMode;
/**
* \brief The blend operation used when combining source and destination pixel components
*/
typedef enum
{
SDL_BLENDOPERATION_ADD = 0x1, /**< dst + src: supported by all renderers */
SDL_BLENDOPERATION_SUBTRACT = 0x2, /**< dst - src : supported by D3D9, D3D11, OpenGL, OpenGLES */
SDL_BLENDOPERATION_REV_SUBTRACT = 0x3, /**< src - dst : supported by D3D9, D3D11, OpenGL, OpenGLES */
SDL_BLENDOPERATION_MINIMUM = 0x4, /**< min(dst, src) : supported by D3D11 */
SDL_BLENDOPERATION_MAXIMUM = 0x5 /**< max(dst, src) : supported by D3D11 */
} SDL_BlendOperation;
/**
* \brief The normalized factor used to multiply pixel components
*/
typedef enum
{
SDL_BLENDFACTOR_ZERO = 0x1, /**< 0, 0, 0, 0 */
SDL_BLENDFACTOR_ONE = 0x2, /**< 1, 1, 1, 1 */
SDL_BLENDFACTOR_SRC_COLOR = 0x3, /**< srcR, srcG, srcB, srcA */
SDL_BLENDFACTOR_ONE_MINUS_SRC_COLOR = 0x4, /**< 1-srcR, 1-srcG, 1-srcB, 1-srcA */
SDL_BLENDFACTOR_SRC_ALPHA = 0x5, /**< srcA, srcA, srcA, srcA */
SDL_BLENDFACTOR_ONE_MINUS_SRC_ALPHA = 0x6, /**< 1-srcA, 1-srcA, 1-srcA, 1-srcA */
SDL_BLENDFACTOR_DST_COLOR = 0x7, /**< dstR, dstG, dstB, dstA */
SDL_BLENDFACTOR_ONE_MINUS_DST_COLOR = 0x8, /**< 1-dstR, 1-dstG, 1-dstB, 1-dstA */
SDL_BLENDFACTOR_DST_ALPHA = 0x9, /**< dstA, dstA, dstA, dstA */
SDL_BLENDFACTOR_ONE_MINUS_DST_ALPHA = 0xA /**< 1-dstA, 1-dstA, 1-dstA, 1-dstA */
} SDL_BlendFactor;
/**
* \brief Create a custom blend mode, which may or may not be supported by a given renderer
*
* \param srcColorFactor source color factor
* \param dstColorFactor destination color factor
* \param colorOperation color operation
* \param srcAlphaFactor source alpha factor
* \param dstAlphaFactor destination alpha factor
* \param alphaOperation alpha operation
*
* The result of the blend mode operation will be:
* dstRGB = dstRGB * dstColorFactor colorOperation srcRGB * srcColorFactor
* and
* dstA = dstA * dstAlphaFactor alphaOperation srcA * srcAlphaFactor
*/
extern DECLSPEC SDL_BlendMode SDLCALL SDL_ComposeCustomBlendMode(SDL_BlendFactor srcColorFactor,
SDL_BlendFactor dstColorFactor,
SDL_BlendOperation colorOperation,
SDL_BlendFactor srcAlphaFactor,
SDL_BlendFactor dstAlphaFactor,
SDL_BlendOperation alphaOperation);
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#include "close_code.h"
#endif /* SDL_blendmode_h_ */
/* vi: set ts=4 sw=4 expandtab: */
================================================
FILE: mac/libs/include/SDL2/SDL_clipboard.h
================================================
/*
Simple DirectMedia Layer
Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
*/
/**
* \file SDL_clipboard.h
*
* Include file for SDL clipboard handling
*/
#ifndef SDL_clipboard_h_
#define SDL_clipboard_h_
#include "SDL_stdinc.h"
#include "begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern "C" {
#endif
/* Function prototypes */
/**
* \brief Put UTF-8 text into the clipboard
*
* \sa SDL_GetClipboardText()
*/
extern DECLSPEC int SDLCALL SDL_SetClipboardText(const char *text);
/**
* \brief Get UTF-8 text from the clipboard, which must be freed with SDL_free()
*
* \sa SDL_SetClipboardText()
*/
extern DECLSPEC char * SDLCALL SDL_GetClipboardText(void);
/**
* \brief Returns a flag indicating whether the clipboard exists and contains a text string that is non-empty
*
* \sa SDL_GetClipboardText()
*/
extern DECLSPEC SDL_bool SDLCALL SDL_HasClipboardText(void);
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#include "close_code.h"
#endif /* SDL_clipboard_h_ */
/* vi: set ts=4 sw=4 expandtab: */
================================================
FILE: mac/libs/include/SDL2/SDL_config.h
================================================
/* include/SDL_config.h. Generated from SDL_config.h.in by configure. */
/*
Simple DirectMedia Layer
Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
*/
#ifndef SDL_config_h_
#define SDL_config_h_
/**
* \file SDL_config.h.in
*
* This is a set of defines to configure the SDL features
*/
/* General platform specific identifiers */
#include "SDL_platform.h"
/* Make sure that this isn't included by Visual C++ */
#ifdef _MSC_VER
#error You should run hg revert SDL_config.h
#endif
/* C language features */
/* #undef const */
/* #undef inline */
/* #undef volatile */
/* C datatypes */
#ifdef __LP64__
#define SIZEOF_VOIDP 8
#else
#define SIZEOF_VOIDP 4
#endif
#define HAVE_GCC_ATOMICS 1
/* #undef HAVE_GCC_SYNC_LOCK_TEST_AND_SET */
/* Comment this if you want to build without any C library requirements */
#define HAVE_LIBC 1
#if HAVE_LIBC
/* Useful headers */
#define STDC_HEADERS 1
#define HAVE_ALLOCA_H 1
#define HAVE_CTYPE_H 1
#define HAVE_FLOAT_H 1
#define HAVE_ICONV_H 1
#define HAVE_INTTYPES_H 1
#define HAVE_LIMITS_H 1
/* #undef HAVE_MALLOC_H */
#define HAVE_MATH_H 1
#define HAVE_MEMORY_H 1
#define HAVE_SIGNAL_H 1
#define HAVE_STDARG_H 1
#define HAVE_STDINT_H 1
#define HAVE_STDIO_H 1
#define HAVE_STDLIB_H 1
#define HAVE_STRINGS_H 1
#define HAVE_STRING_H 1
#define HAVE_SYS_TYPES_H 1
#define HAVE_WCHAR_H 1
/* #undef HAVE_PTHREAD_NP_H */
#define HAVE_LIBUNWIND_H 1
/* C library functions */
#define HAVE_MALLOC 1
#define HAVE_CALLOC 1
#define HAVE_REALLOC 1
#define HAVE_FREE 1
#define HAVE_ALLOCA 1
#ifndef __WIN32__ /* Don't use C runtime versions of these on Windows */
#define HAVE_GETENV 1
#define HAVE_SETENV 1
#define HAVE_PUTENV 1
#define HAVE_UNSETENV 1
#endif
#define HAVE_QSORT 1
#define HAVE_ABS 1
#define HAVE_BCOPY 1
#define HAVE_MEMSET 1
#define HAVE_MEMCPY 1
#define HAVE_MEMMOVE 1
#define HAVE_MEMCMP 1
#define HAVE_WCSLEN 1
#define HAVE_WCSLCPY 1
#define HAVE_WCSLCAT 1
#define HAVE_WCSDUP 1
#define HAVE_WCSSTR 1
#define HAVE_WCSCMP 1
#define HAVE_WCSNCMP 1
#define HAVE_WCSCASECMP 1
/* #undef HAVE__WCSICMP */
#define HAVE_WCSNCASECMP 1
/* #undef HAVE__WCSNICMP */
#define HAVE_STRLEN 1
#define HAVE_STRLCPY 1
#define HAVE_STRLCAT 1
/* #undef HAVE__STRREV */
/* #undef HAVE__STRUPR */
/* #undef HAVE__STRLWR */
/* #undef HAVE_INDEX */
/* #undef HAVE_RINDEX */
#define HAVE_STRCHR 1
#define HAVE_STRRCHR 1
#define HAVE_STRSTR 1
#define HAVE_STRTOK_R 1
/* #undef HAVE_STRTOK_S */
/* #undef HAVE_ITOA */
/* #undef HAVE__LTOA */
/* #undef HAVE__UITOA */
/* #undef HAVE__ULTOA */
#define HAVE_STRTOL 1
#define HAVE_STRTOUL 1
/* #undef HAVE__I64TOA */
/* #undef HAVE__UI64TOA */
#define HAVE_STRTOLL 1
#define HAVE_STRTOULL 1
#define HAVE_STRTOD 1
#define HAVE_ATOI 1
#define HAVE_ATOF 1
#define HAVE_STRCMP 1
#define HAVE_STRNCMP 1
/* #undef HAVE__STRICMP */
#define HAVE_STRCASECMP 1
/* #undef HAVE__STRNICMP */
#define HAVE_STRNCASECMP 1
/* #undef HAVE_SSCANF */
#define HAVE_VSSCANF 1
/* #undef HAVE_SNPRINTF */
#define HAVE_VSNPRINTF 1
#define HAVE_M_PI /**/
#define HAVE_ACOS 1
#define HAVE_ACOSF 1
#define HAVE_ASIN 1
#define HAVE_ASINF 1
#define HAVE_ATAN 1
#define HAVE_ATANF 1
#define HAVE_ATAN2 1
#define HAVE_ATAN2F 1
#define HAVE_CEIL 1
#define HAVE_CEILF 1
#define HAVE_COPYSIGN 1
#define HAVE_COPYSIGNF 1
#define HAVE_COS 1
#define HAVE_COSF 1
#define HAVE_EXP 1
#define HAVE_EXPF 1
#define HAVE_FABS 1
#define HAVE_FABSF 1
#define HAVE_FLOOR 1
#define HAVE_FLOORF 1
#define HAVE_FMOD 1
#define HAVE_FMODF 1
#define HAVE_LOG 1
#define HAVE_LOGF 1
#define HAVE_LOG10 1
#define HAVE_LOG10F 1
#define HAVE_POW 1
#define HAVE_POWF 1
#define HAVE_SCALBN 1
#define HAVE_SCALBNF 1
#define HAVE_SIN 1
#define HAVE_SINF 1
#define HAVE_SQRT 1
#define HAVE_SQRTF 1
#define HAVE_TAN 1
#define HAVE_TANF 1
#define HAVE_TRUNC 1
#define HAVE_TRUNCF 1
/* #undef HAVE_FOPEN64 */
#define HAVE_FSEEKO 1
/* #undef HAVE_FSEEKO64 */
#define HAVE_SIGACTION 1
#define HAVE_SA_SIGACTION 1
#define HAVE_SETJMP 1
#define HAVE_NANOSLEEP 1
#define HAVE_SYSCONF 1
#define HAVE_SYSCTLBYNAME 1
/* #undef HAVE_CLOCK_GETTIME */
/* #undef HAVE_GETPAGESIZE */
#define HAVE_MPROTECT 1
#define HAVE_ICONV 1
#define HAVE_PTHREAD_SETNAME_NP 1
/* #undef HAVE_PTHREAD_SET_NAME_NP */
/* #undef HAVE_SEM_TIMEDWAIT */
/* #undef HAVE_GETAUXVAL */
/* #undef HAVE_ELF_AUX_INFO */
#define HAVE_POLL 1
#define HAVE__EXIT 1
#else
#define HAVE_STDARG_H 1
#define HAVE_STDDEF_H 1
#define HAVE_STDINT_H 1
#endif /* HAVE_LIBC */
/* #undef HAVE_ALTIVEC_H */
/* #undef HAVE_DBUS_DBUS_H */
/* #undef HAVE_FCITX */
/* #undef HAVE_SYS_INOTIFY_H */
/* #undef HAVE_INOTIFY_INIT */
/* #undef HAVE_INOTIFY_INIT1 */
/* #undef HAVE_INOTIFY */
/* #undef HAVE_IBUS_IBUS_H */
#define HAVE_IMMINTRIN_H 1
/* #undef HAVE_LIBUDEV_H */
/* #undef HAVE_LIBSAMPLERATE_H */
/* #undef HAVE_DDRAW_H */
/* #undef HAVE_DINPUT_H */
/* #undef HAVE_DSOUND_H */
/* #undef HAVE_DXGI_H */
/* #undef HAVE_XINPUT_H */
/* #undef HAVE_MMDEVICEAPI_H */
/* #undef HAVE_AUDIOCLIENT_H */
/* #undef HAVE_SENSORSAPI_H */
/* #undef HAVE_XINPUT_GAMEPAD_EX */
/* #undef HAVE_XINPUT_STATE_EX */
/* SDL internal assertion support */
/* #undef SDL_DEFAULT_ASSERT_LEVEL */
/* Allow disabling of core subsystems */
/* #undef SDL_ATOMIC_DISABLED */
/* #undef SDL_AUDIO_DISABLED */
/* #undef SDL_CPUINFO_DISABLED */
/* #undef SDL_EVENTS_DISABLED */
/* #undef SDL_FILE_DISABLED */
/* #undef SDL_JOYSTICK_DISABLED */
/* #undef SDL_HAPTIC_DISABLED */
/* #undef SDL_SENSOR_DISABLED */
/* #undef SDL_LOADSO_DISABLED */
/* #undef SDL_RENDER_DISABLED */
/* #undef SDL_THREADS_DISABLED */
/* #undef SDL_TIMERS_DISABLED */
/* #undef SDL_VIDEO_DISABLED */
/* #undef SDL_POWER_DISABLED */
/* #undef SDL_FILESYSTEM_DISABLED */
/* Enable various audio drivers */
/* #undef SDL_AUDIO_DRIVER_ALSA */
/* #undef SDL_AUDIO_DRIVER_ALSA_DYNAMIC */
/* #undef SDL_AUDIO_DRIVER_ANDROID */
/* #undef SDL_AUDIO_DRIVER_ARTS */
/* #undef SDL_AUDIO_DRIVER_ARTS_DYNAMIC */
#define SDL_AUDIO_DRIVER_COREAUDIO 1
#define SDL_AUDIO_DRIVER_DISK 1
/* #undef SDL_AUDIO_DRIVER_DSOUND */
#define SDL_AUDIO_DRIVER_DUMMY 1
/* #undef SDL_AUDIO_DRIVER_EMSCRIPTEN */
/* #undef SDL_AUDIO_DRIVER_ESD */
/* #undef SDL_AUDIO_DRIVER_ESD_DYNAMIC */
/* #undef SDL_AUDIO_DRIVER_FUSIONSOUND */
/* #undef SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC */
/* #undef SDL_AUDIO_DRIVER_HAIKU */
/* #undef SDL_AUDIO_DRIVER_JACK */
/* #undef SDL_AUDIO_DRIVER_JACK_DYNAMIC */
/* #undef SDL_AUDIO_DRIVER_NACL */
/* #undef SDL_AUDIO_DRIVER_NAS */
/* #undef SDL_AUDIO_DRIVER_NAS_DYNAMIC */
/* #undef SDL_AUDIO_DRIVER_NETBSD */
/* #undef SDL_AUDIO_DRIVER_OSS */
/* #undef SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H */
/* #undef SDL_AUDIO_DRIVER_PAUDIO */
/* #undef SDL_AUDIO_DRIVER_PULSEAUDIO */
/* #undef SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC */
/* #undef SDL_AUDIO_DRIVER_QSA */
/* #undef SDL_AUDIO_DRIVER_SNDIO */
/* #undef SDL_AUDIO_DRIVER_SNDIO_DYNAMIC */
/* #undef SDL_AUDIO_DRIVER_SUNAUDIO */
/* #undef SDL_AUDIO_DRIVER_WASAPI */
/* #undef SDL_AUDIO_DRIVER_WINMM */
/* Enable various input drivers */
/* #undef SDL_INPUT_LINUXEV */
/* #undef SDL_INPUT_FBSDKBIO */
/* #undef SDL_INPUT_LINUXKD */
/* #undef SDL_JOYSTICK_HAIKU */
/* #undef SDL_JOYSTICK_DINPUT */
/* #undef SDL_JOYSTICK_XINPUT */
/* #undef SDL_JOYSTICK_DUMMY */
#define SDL_JOYSTICK_IOKIT 1
/* #undef SDL_JOYSTICK_MFI */
/* #undef SDL_JOYSTICK_LINUX */
/* #undef SDL_JOYSTICK_ANDROID */
/* #undef SDL_JOYSTICK_WINMM */
/* #undef SDL_JOYSTICK_USBHID */
/* #undef SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H */
#define SDL_JOYSTICK_HIDAPI 1
/* #undef SDL_JOYSTICK_RAWINPUT */
/* #undef SDL_JOYSTICK_EMSCRIPTEN */
#define SDL_JOYSTICK_VIRTUAL 1
/* #undef SDL_HAPTIC_DUMMY */
/* #undef SDL_HAPTIC_ANDROID */
/* #undef SDL_HAPTIC_LINUX */
#define SDL_HAPTIC_IOKIT 1
/* #undef SDL_HAPTIC_DINPUT */
/* #undef SDL_HAPTIC_XINPUT */
/* Enable various sensor drivers */
/* #undef SDL_SENSOR_ANDROID */
/* #undef SDL_SENSOR_COREMOTION */
/* #undef SDL_SENSOR_WINDOWS */
#define SDL_SENSOR_DUMMY 1
/* Enable various shared object loading systems */
#define SDL_LOADSO_DLOPEN 1
/* #undef SDL_LOADSO_DUMMY */
/* #undef SDL_LOADSO_LDG */
/* #undef SDL_LOADSO_WINDOWS */
/* Enable various threading systems */
#define SDL_THREAD_PTHREAD 1
#define SDL_THREAD_PTHREAD_RECURSIVE_MUTEX 1
/* #undef SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP */
/* #undef SDL_THREAD_WINDOWS */
/* Enable various timer systems */
/* #undef SDL_TIMER_HAIKU */
/* #undef SDL_TIMER_DUMMY */
#define SDL_TIMER_UNIX 1
/* #undef SDL_TIMER_WINDOWS */
/* Enable various video drivers */
/* #undef SDL_VIDEO_DRIVER_HAIKU */
#define SDL_VIDEO_DRIVER_COCOA 1
/* #undef SDL_VIDEO_DRIVER_DIRECTFB */
/* #undef SDL_VIDEO_DRIVER_DIRECTFB_DYNAMIC */
#define SDL_VIDEO_DRIVER_DUMMY 1
/* #undef SDL_VIDEO_DRIVER_WINDOWS */
/* #undef SDL_VIDEO_DRIVER_WAYLAND */
/* #undef SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH */
/* #undef SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC */
/* #undef SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_EGL */
/* #undef SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_CURSOR */
/* #undef SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_XKBCOMMON */
/* #undef SDL_VIDEO_DRIVER_X11 */
/* #undef SDL_VIDEO_DRIVER_RPI */
/* #undef SDL_VIDEO_DRIVER_KMSDRM */
/* #undef SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC */
/* #undef SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC_GBM */
/* #undef SDL_VIDEO_DRIVER_ANDROID */
/* #undef SDL_VIDEO_DRIVER_EMSCRIPTEN */
/* #undef SDL_VIDEO_DRIVER_X11_DYNAMIC */
/* #undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT */
/* #undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XCURSOR */
/* #undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XINERAMA */
/* #undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2 */
/* #undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR */
/* #undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS */
/* #undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XVIDMODE */
/* #undef SDL_VIDEO_DRIVER_X11_XCURSOR */
/* #undef SDL_VIDEO_DRIVER_X11_XDBE */
/* #undef SDL_VIDEO_DRIVER_X11_XINERAMA */
/* #undef SDL_VIDEO_DRIVER_X11_XINPUT2 */
/* #undef SDL_VIDEO_DRIVER_X11_XINPUT2_SUPPORTS_MULTITOUCH */
/* #undef SDL_VIDEO_DRIVER_X11_XRANDR */
/* #undef SDL_VIDEO_DRIVER_X11_XSCRNSAVER */
/* #undef SDL_VIDEO_DRIVER_X11_XSHAPE */
/* #undef SDL_VIDEO_DRIVER_X11_XVIDMODE */
/* #undef SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS */
/* #undef SDL_VIDEO_DRIVER_X11_CONST_PARAM_XEXTADDDISPLAY */
/* #undef SDL_VIDEO_DRIVER_X11_HAS_XKBKEYCODETOKEYSYM */
/* #undef SDL_VIDEO_DRIVER_NACL */
/* #undef SDL_VIDEO_DRIVER_VIVANTE */
/* #undef SDL_VIDEO_DRIVER_VIVANTE_VDK */
/* #undef SDL_VIDEO_DRIVER_QNX */
/* #undef SDL_VIDEO_RENDER_D3D */
/* #undef SDL_VIDEO_RENDER_D3D11 */
#define SDL_VIDEO_RENDER_OGL 1
/* #undef SDL_VIDEO_RENDER_OGL_ES */
#define SDL_VIDEO_RENDER_OGL_ES2 1
/* #undef SDL_VIDEO_RENDER_DIRECTFB */
/* #undef SDL_VIDEO_RENDER_METAL */
/* Enable OpenGL support */
#define SDL_VIDEO_OPENGL 1
/* #undef SDL_VIDEO_OPENGL_ES */
#define SDL_VIDEO_OPENGL_ES2 1
/* #undef SDL_VIDEO_OPENGL_BGL */
#define SDL_VIDEO_OPENGL_CGL 1
#define SDL_VIDEO_OPENGL_EGL 1
/* #undef SDL_VIDEO_OPENGL_GLX */
/* #undef SDL_VIDEO_OPENGL_WGL */
/* #undef SDL_VIDEO_OPENGL_OSMESA */
/* #undef SDL_VIDEO_OPENGL_OSMESA_DYNAMIC */
/* Enable Vulkan support */
/* #undef SDL_VIDEO_VULKAN */
/* Enable Metal support */
/* #undef SDL_VIDEO_METAL */
/* Enable system power support */
/* #undef SDL_POWER_LINUX */
/* #undef SDL_POWER_WINDOWS */
#define SDL_POWER_MACOSX 1
/* #undef SDL_POWER_HAIKU */
/* #undef SDL_POWER_ANDROID */
/* #undef SDL_POWER_EMSCRIPTEN */
/* #undef SDL_POWER_HARDWIRED */
/* Enable system filesystem support */
/* #undef SDL_FILESYSTEM_HAIKU */
#define SDL_FILESYSTEM_COCOA 1
/* #undef SDL_FILESYSTEM_DUMMY */
/* #undef SDL_FILESYSTEM_UNIX */
/* #undef SDL_FILESYSTEM_WINDOWS */
/* #undef SDL_FILESYSTEM_NACL */
/* #undef SDL_FILESYSTEM_ANDROID */
/* #undef SDL_FILESYSTEM_EMSCRIPTEN */
/* Enable assembly routines */
#define SDL_ASSEMBLY_ROUTINES 1
/* #undef SDL_ALTIVEC_BLITTERS */
/* #undef SDL_ARM_SIMD_BLITTERS */
/* #undef SDL_ARM_NEON_BLITTERS */
/* Enable ime support */
/* #undef SDL_USE_IME */
/* Enable dynamic udev support */
/* #undef SDL_UDEV_DYNAMIC */
/* Enable dynamic libusb support */
/* #undef SDL_LIBUSB_DYNAMIC */
/* Enable dynamic libsamplerate support */
/* #undef SDL_LIBSAMPLERATE_DYNAMIC */
#endif /* SDL_config_h_ */
================================================
FILE: mac/libs/include/SDL2/SDL_cpuinfo.h
================================================
/*
Simple DirectMedia Layer
Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
*/
/**
* \file SDL_cpuinfo.h
*
* CPU feature detection for SDL.
*/
#ifndef SDL_cpuinfo_h_
#define SDL_cpuinfo_h_
#include "SDL_stdinc.h"
/* Need to do this here because intrin.h has C++ code in it */
/* Visual Studio 2005 has a bug where intrin.h conflicts with winnt.h */
#if defined(_MSC_VER) && (_MSC_VER >= 1500) && (defined(_M_IX86) || defined(_M_X64))
#ifdef __clang__
/* Many of the intrinsics SDL uses are not implemented by clang with Visual Studio */
#undef __MMX__
#undef __SSE__
#undef __SSE2__
#else
#include <intrin.h>
#ifndef _WIN64
#ifndef __MMX__
#define __MMX__
#endif
#ifndef __3dNOW__
#define __3dNOW__
#endif
#endif
#ifndef __SSE__
#define __SSE__
#endif
#ifndef __SSE2__
#define __SSE2__
#endif
#endif /* __clang__ */
#elif defined(__MINGW64_VERSION_MAJOR)
#include <intrin.h>
#else
/* altivec.h redefining bool causes a number of problems, see bugs 3993 and 4392, so you need to explicitly define SDL_ENABLE_ALTIVEC_H to have it included. */
#if defined(HAVE_ALTIVEC_H) && defined(__ALTIVEC__) && !defined(__APPLE_ALTIVEC__) && defined(SDL_ENABLE_ALTIVEC_H)
#include <altivec.h>
#endif
#if !defined(SDL_DISABLE_ARM_NEON_H)
# if defined(__ARM_NEON)
# include <arm_neon.h>
# elif defined(__WINDOWS__) || defined(__WINRT__)
/* Visual Studio doesn't define __ARM_ARCH, but _M_ARM (if set, always 7), and _M_ARM64 (if set, always 1). */
# if defined(_M_ARM)
# include <armintr.h>
# include <arm_neon.h>
# define __ARM_NEON 1 /* Set __ARM_NEON so that it can be used elsewhere, at compile time */
# endif
# if defined (_M_ARM64)
# include <arm64intr.h>
# include <arm64_neon.h>
# define __ARM_NEON 1 /* Set __ARM_NEON so that it can be used elsewhere, at compile time */
# endif
# endif
#endif
#if defined(__3dNOW__) && !defined(SDL_DISABLE_MM3DNOW_H)
#include <mm3dnow.h>
#endif
#if defined(HAVE_IMMINTRIN_H) && !defined(SDL_DISABLE_IMMINTRIN_H)
#include <immintrin.h>
#else
#if defined(__MMX__) && !defined(SDL_DISABLE_MMINTRIN_H)
#include <mmintrin.h>
#endif
#if defined(__SSE__) && !defined(SDL_DISABLE_XMMINTRIN_H)
#include <xmmintrin.h>
#endif
#if defined(__SSE2__) && !defined(SDL_DISABLE_EMMINTRIN_H)
#include <emmintrin.h>
#endif
#if defined(__SSE3__) && !defined(SDL_DISABLE_PMMINTRIN_H)
#include <pmmintrin.h>
#endif
#endif /* HAVE_IMMINTRIN_H */
#endif /* compiler version */
#include "begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern "C" {
#endif
/* This is a guess for the cacheline size used for padding.
* Most x86 processors have a 64 byte cache line.
* The 64-bit PowerPC processors have a 128 byte cache line.
* We'll use the larger value to be generally safe.
*/
#define SDL_CACHELINE_SIZE 128
/**
* This function returns the number of CPU cores available.
*/
extern DECLSPEC int SDLCALL SDL_GetCPUCount(void);
/**
* This function returns the L1 cache line size of the CPU
*
* This is useful for determining multi-threaded structure padding
* or SIMD prefetch sizes.
*/
extern DECLSPEC int SDLCALL SDL_GetCPUCacheLineSize(void);
/**
* This function returns true if the CPU has the RDTSC instruction.
*/
extern DECLSPEC SDL_bool SDLCALL SDL_HasRDTSC(void);
/**
* This function returns true if the CPU has AltiVec features.
*/
extern DECLSPEC SDL_bool SDLCALL SDL_HasAltiVec(void);
/**
* This function returns true if the CPU has MMX features.
*/
extern DECLSPEC SDL_bool SDLCALL SDL_HasMMX(void);
/**
* This function returns true if the CPU has 3DNow! features.
*/
extern DECLSPEC SDL_bool SDLCALL SDL_Has3DNow(void);
/**
* This function returns true if the CPU has SSE features.
*/
extern DECLSPEC SDL_bool SDLCALL SDL_HasSSE(void);
/**
* This function returns true if the CPU has SSE2 features.
*/
extern DECLSPEC SDL_bool SDLCALL SDL_HasSSE2(void);
/**
* This function returns true if the CPU has SSE3 features.
*/
extern DECLSPEC SDL_bool SDLCALL SDL_HasSSE3(void);
/**
* This function returns true if the CPU has SSE4.1 features.
*/
extern DECLSPEC SDL_bool SDLCALL SDL_HasSSE41(void);
/**
* This function returns true if the CPU has SSE4.2 features.
*/
extern DECLSPEC SDL_bool SDLCALL SDL_HasSSE42(void);
/**
* This function returns true if the CPU has AVX features.
*/
extern DECLSPEC SDL_bool SDLCALL SDL_HasAVX(void);
/**
* This function returns true if the CPU has AVX2 features.
*/
extern DECLSPEC SDL_bool SDLCALL SDL_HasAVX2(void);
/**
* This function returns true if the CPU has AVX-512F (foundation) features.
*/
extern DECLSPEC SDL_bool SDLCALL SDL_HasAVX512F(void);
/**
* This function returns true if the CPU has ARM SIMD (ARMv6) features.
*/
extern DECLSPEC SDL_bool SDLCALL SDL_HasARMSIMD(void);
/**
* This function returns true if the CPU has NEON (ARM SIMD) features.
*/
extern DECLSPEC SDL_bool SDLCALL SDL_HasNEON(void);
/**
* This function returns the amount of RAM configured in the system, in MB.
*/
extern DECLSPEC int SDLCALL SDL_GetSystemRAM(void);
/**
* \brief Report the alignment this system needs for SIMD allocations.
*
* This will return the minimum number of bytes to which a pointer must be
* aligned to be compatible with SIMD instructions on the current machine.
* For example, if the machine supports SSE only, it will return 16, but if
* it supports AVX-512F, it'll return 64 (etc). This only reports values for
* instruction sets SDL knows about, so if your SDL build doesn't have
* SDL_HasAVX512F(), then it might return 16 for the SSE support it sees and
* not 64 for the AVX-512 instructions that exist but SDL doesn't know about.
* Plan accordingly.
*/
extern DECLSPEC size_t SDLCALL SDL_SIMDGetAlignment(void);
/**
* \brief Allocate memory in a SIMD-friendly way.
*
* This will allocate a block of memory that is suitable for use with SIMD
* instructions. Specifically, it will be properly aligned and padded for
* the system's supported vector instructions.
*
* The memory returned will be padded such that it is safe to read or write
* an incomplete vector at the end of the memory block. This can be useful
* so you don't have to drop back to a scalar fallback at the end of your
* SIMD processing loop to deal with the final elements without overflowing
* the allocated buffer.
*
* You must free this memory with SDL_FreeSIMD(), not free() or SDL_free()
* or delete[], etc.
*
* Note that SDL will only deal with SIMD instruction sets it is aware of;
* for example, SDL 2.0.8 knows that SSE wants 16-byte vectors
* (SDL_HasSSE()), and AVX2 wants 32 bytes (SDL_HasAVX2()), but doesn't
* know that AVX-512 wants 64. To be clear: if you can't decide to use an
* instruction set with an SDL_Has*() function, don't use that instruction
* set with memory allocated through here.
*
* SDL_AllocSIMD(0) will return a non-NULL pointer, assuming the system isn't
* out of memory.
*
* \param len The length, in bytes, of the block to allocated. The actual
* allocated block might be larger due to padding, etc.
* \return Pointer to newly-allocated block, NULL if out of memory.
*
* \sa SDL_SIMDAlignment
* \sa SDL_SIMDRealloc
* \sa SDL_SIMDFree
*/
extern DECLSPEC void * SDLCALL SDL_SIMDAlloc(const size_t len);
/**
* \brief Reallocate memory obtained from SDL_SIMDAlloc
*
* It is not valid to use this function on a pointer from anything but
* SDL_SIMDAlloc(). It can't be used on pointers from malloc, realloc,
* SDL_malloc, memalign, new[], etc.
*
* \param mem The pointer obtained from SDL_SIMDAlloc. This function also
* accepts NULL, at which point this function is the same as
* calling SDL_realloc with a NULL pointer.
* \param len The length, in bytes, of the block to allocated. The actual
* allocated block might be larger due to padding, etc. Passing 0
* will return a non-NULL pointer, assuming the system isn't out of
* memory.
* \return Pointer to newly-reallocated block, NULL if out of memory.
*
* \sa SDL_SIMDAlignment
* \sa SDL_SIMDAlloc
* \sa SDL_SIMDFree
*/
extern DECLSPEC void * SDLCALL SDL_SIMDRealloc(void *mem, const size_t len);
/**
* \brief Deallocate memory obtained from SDL_SIMDAlloc
*
* It is not valid to use this function on a pointer from anything but
* SDL_SIMDAlloc(). It can't be used on pointers from malloc, realloc,
* SDL_malloc, memalign, new[], etc.
*
* However, SDL_SIMDFree(NULL) is a legal no-op.
*
* \sa SDL_SIMDAlloc
* \sa SDL_SIMDRealloc
*/
extern DECLSPEC void SDLCALL SDL_SIMDFree(void *ptr);
/* vi: set ts=4 sw=4 expandtab: */
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#include "close_code.h"
#endif /* SDL_cpuinfo_h_ */
/* vi: set ts=4 sw=4 expandtab: */
================================================
FILE: mac/libs/include/SDL2/SDL_egl.h
================================================
/*
Simple DirectMedia Layer
Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
*/
/**
* \file SDL_egl.h
*
* This is a simple file to encapsulate the EGL API headers.
*/
#if !defined(_MSC_VER) && !defined(__ANDROID__)
#include <EGL/egl.h>
#include <EGL/eglext.h>
#else /* _MSC_VER */
/* EGL headers for Visual Studio */
#ifndef __khrplatform_h_
#define __khrplatform_h_
/*
** Copyright (c) 2008-2009 The Khronos Group Inc.
**
** Permission is hereby granted, free of charge, to any person obtaining a
** copy of this software and/or associated documentation files (the
** "Materials"), to deal in the Materials without restriction, including
** without limitation the rights to use, copy, modify, merge, publish,
** distribute, sublicense, and/or sell copies of the Materials, and to
** permit persons to whom the Materials are furnished to do so, subject to
** the following conditions:
**
** The above copyright notice and this permission notice shall be included
** in all copies or substantial portions of the Materials.
**
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
*/
/* Khronos platform-specific types and definitions.
*
* $Revision: 23298 $ on $Date: 2013-09-30 17:07:13 -0700 (Mon, 30 Sep 2013) $
*
* Adopters may modify this file to suit their platform. Adopters are
* encouraged to submit platform specific modifications to the Khronos
* group so that they can be included in future versions of this file.
* Please submit changes by sending them to the public Khronos Bugzilla
* (http://khronos.org/bugzilla) by filing a bug against product
* "Khronos (general)" component "Registry".
*
* A predefined template which fills in some of the bug fields can be
* reached using http://tinyurl.com/khrplatform-h-bugreport, but you
* must create a Bugzilla login first.
*
*
* See the Implementer's Guidelines for information about where this file
* should be located on your system and for more details of its use:
* http://www.khronos.org/registry/implementers_guide.pdf
*
* This file should be included as
* #include <KHR/khrplatform.h>
* by Khronos client API header files that use its types and defines.
*
* The types in khrplatform.h should only be used to define API-specific types.
*
* Types defined in khrplatform.h:
* khronos_int8_t signed 8 bit
* khronos_uint8_t unsigned 8 bit
* khronos_int16_t signed 16 bit
* khronos_uint16_t unsigned 16 bit
* khronos_int32_t signed 32 bit
* khronos_uint32_t unsigned 32 bit
* khronos_int64_t signed 64 bit
* khronos_uint64_t unsigned 64 bit
* khronos_intptr_t signed same number of bits as a pointer
* khronos_uintptr_t unsigned same number of bits as a pointer
* khronos_ssize_t signed size
* khronos_usize_t unsigned size
* khronos_float_t signed 32 bit floating point
* khronos_time_ns_t unsigned 64 bit time in nanoseconds
* khronos_utime_nanoseconds_t unsigned time interval or absolute time in
* nanoseconds
* khronos_stime_nanoseconds_t signed time interval in nanoseconds
* khronos_boolean_enum_t enumerated boolean type. This should
* only be used as a base type when a client API's boolean type is
* an enum. Client APIs which use an integer or other type for
* booleans cannot use this as the base type for their boolean.
*
* Tokens defined in khrplatform.h:
*
* KHRONOS_FALSE, KHRONOS_TRUE Enumerated boolean false/true values.
*
* KHRONOS_SUPPORT_INT64 is 1 if 64 bit integers are supported; otherwise 0.
* KHRONOS_SUPPORT_FLOAT is 1 if floats are supported; otherwise 0.
*
* Calling convention macros defined in this file:
* KHRONOS_APICALL
* KHRONOS_APIENTRY
* KHRONOS_APIATTRIBUTES
*
* These may be used in function prototypes as:
*
* KHRONOS_APICALL void KHRONOS_APIENTRY funcname(
* int arg1,
* int arg2) KHRONOS_APIATTRIBUTES;
*/
/*-------------------------------------------------------------------------
* Definition of KHRONOS_APICALL
*-------------------------------------------------------------------------
* This precedes the return type of the function in the function prototype.
*/
#if defined(_WIN32) && !defined(__SCITECH_SNAP__) && !defined(SDL_VIDEO_STATIC_ANGLE)
# define KHRONOS_APICALL __declspec(dllimport)
#elif defined (__SYMBIAN32__)
# define KHRONOS_APICALL IMPORT_C
#else
# define KHRONOS_APICALL
#endif
/*-------------------------------------------------------------------------
* Definition of KHRONOS_APIENTRY
*-------------------------------------------------------------------------
* This follows the return type of the function and precedes the function
* name in the function prototype.
*/
#if defined(_WIN32) && !defined(_WIN32_WCE) && !defined(__SCITECH_SNAP__)
/* Win32 but not WinCE */
# define KHRONOS_APIENTRY __stdcall
#else
# define KHRONOS_APIENTRY
#endif
/*-------------------------------------------------------------------------
* Definition of KHRONOS_APIATTRIBUTES
*-------------------------------------------------------------------------
* This follows the closing parenthesis of the function prototype arguments.
*/
#if defined (__ARMCC_2__)
#define KHRONOS_APIATTRIBUTES __softfp
#else
#define KHRONOS_APIATTRIBUTES
#endif
/*-------------------------------------------------------------------------
* basic type definitions
*-----------------------------------------------------------------------*/
#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || defined(__GNUC__) || defined(__SCO__) || defined(__USLC__)
/*
* Using <stdint.h>
*/
#include <stdint.h>
typedef int32_t khronos_int32_t;
typedef uint32_t khronos_uint32_t;
typedef int64_t khronos_int64_t;
typedef uint64_t khronos_uint64_t;
#define KHRONOS_SUPPORT_INT64 1
#define KHRONOS_SUPPORT_FLOAT 1
#elif defined(__VMS ) || defined(__sgi)
/*
* Using <inttypes.h>
*/
#include <inttypes.h>
typedef int32_t khronos_int32_t;
typedef uint32_t khronos_uint32_t;
typedef int64_t khronos_int64_t;
typedef uint64_t khronos_uint64_t;
#define KHRONOS_SUPPORT_INT64 1
#define KHRONOS_SUPPORT_FLOAT 1
#elif defined(_WIN32) && !defined(__SCITECH_SNAP__)
/*
* Win32
*/
typedef __int32 khronos_int32_t;
typedef unsigned __int32 khronos_uint32_t;
typedef __int64 khronos_int64_t;
typedef unsigned __int64 khronos_uint64_t;
#define KHRONOS_SUPPORT_INT64 1
#define KHRONOS_SUPPORT_FLOAT 1
#elif defined(__sun__) || defined(__digital__)
/*
* Sun or Digital
*/
typedef int khronos_int32_t;
typedef unsigned int khronos_uint32_t;
#if defined(__arch64__) || defined(_LP64)
typedef long int khronos_int64_t;
typedef unsigned long int khronos_uint64_t;
#else
typedef long long int khronos_int64_t;
typedef unsigned long long int khronos_uint64_t;
#endif /* __arch64__ */
#define KHRONOS_SUPPORT_INT64 1
#define KHRONOS_SUPPORT_FLOAT 1
#elif 0
/*
* Hypothetical platform with no float or int64 support
*/
typedef int khronos_int32_t;
typedef unsigned int khronos_uint32_t;
#define KHRONOS_SUPPORT_INT64 0
#define KHRONOS_SUPPORT_FLOAT 0
#else
/*
* Generic fallback
*/
#include <stdint.h>
typedef int32_t khronos_int32_t;
typedef uint32_t khronos_uint32_t;
typedef int64_t khronos_int64_t;
typedef uint64_t khronos_uint64_t;
#define KHRONOS_SUPPORT_INT64 1
#define KHRONOS_SUPPORT_FLOAT 1
#endif
/*
* Types that are (so far) the same on all platforms
*/
typedef signed char khronos_int8_t;
typedef unsigned char khronos_uint8_t;
typedef signed short int khronos_int16_t;
typedef unsigned short int khronos_uint16_t;
/*
* Types that differ between LLP64 and LP64 architectures - in LLP64,
* pointers are 64 bits, but 'long' is still 32 bits. Win64 appears
* to be the only LLP64 architecture in current use.
*/
#ifdef _WIN64
typedef signed long long int khronos_intptr_t;
typedef unsigned long long int khronos_uintptr_t;
typedef signed long long int khronos_ssize_t;
typedef unsigned long long int khronos_usize_t;
#else
typedef signed long int khronos_intptr_t;
typedef unsigned long int khronos_uintptr_t;
typedef signed long int khronos_ssize_t;
typedef unsigned long int khronos_usize_t;
#endif
#if KHRONOS_SUPPORT_FLOAT
/*
* Float type
*/
typedef float khronos_float_t;
#endif
#if KHRONOS_SUPPORT_INT64
/* Time types
*
* These types can be used to represent a time interval in nanoseconds or
* an absolute Unadjusted System Time. Unadjusted System Time is the number
* of nanoseconds since some arbitrary system event (e.g. since the last
* time the system booted). The Unadjusted System Time is an unsigned
* 64 bit value that wraps back to 0 every 584 years. Time intervals
* may be either signed or unsigned.
*/
typedef khronos_uint64_t khronos_utime_nanoseconds_t;
typedef khronos_int64_t khronos_stime_nanoseconds_t;
#endif
/*
* Dummy value used to pad enum types to 32 bits.
*/
#ifndef KHRONOS_MAX_ENUM
#define KHRONOS_MAX_ENUM 0x7FFFFFFF
#endif
/*
* Enumerated boolean type
*
* Values other than zero should be considered to be true. Therefore
* comparisons should not be made against KHRONOS_TRUE.
*/
typedef enum {
KHRONOS_FALSE = 0,
KHRONOS_TRUE = 1,
KHRONOS_BOOLEAN_ENUM_FORCE_SIZE = KHRONOS_MAX_ENUM
} khronos_boolean_enum_t;
#endif /* __khrplatform_h_ */
#ifndef __eglplatform_h_
#define __eglplatform_h_
/*
** Copyright (c) 2007-2009 The Khronos Group Inc.
**
** Permission is hereby granted, free of charge, to any person obtaining a
** copy of this software and/or associated documentation files (the
** "Materials"), to deal in the Materials without restriction, including
** without limitation the rights to use, copy, modify, merge, publish,
** distribute, sublicense, and/or sell copies of the Materials, and to
** permit persons to whom the Materials are furnished to do so, subject to
** the following conditions:
**
** The above copyright notice and this permission notice shall be included
** in all copies or substantial portions of the Materials.
**
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
*/
/* Platform-specific types and definitions for egl.h
* $Revision: 12306 $ on $Date: 2010-08-25 09:51:28 -0700 (Wed, 25 Aug 2010) $
*
* Adopters may modify khrplatform.h and this file to suit their platform.
* You are encouraged to submit all modifications to the Khronos group so that
* they can be included in future versions of this file. Please submit changes
* by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla)
* by filing a bug against product "EGL" component "Registry".
*/
/*#include <KHR/khrplatform.h>*/
/* Macros used in EGL function prototype declarations.
*
* EGL functions should be prototyped as:
*
* EGLAPI return-type EGLAPIENTRY eglFunction(arguments);
* typedef return-type (EXPAPIENTRYP PFNEGLFUNCTIONPROC) (arguments);
*
* KHRONOS_APICALL and KHRONOS_APIENTRY are defined in KHR/khrplatform.h
*/
#ifndef EGLAPI
#define EGLAPI KHRONOS_APICALL
#endif
#ifndef EGLAPIENTRY
#define EGLAPIENTRY KHRONOS_APIENTRY
#endif
#define EGLAPIENTRYP EGLAPIENTRY*
/* The types NativeDisplayType, NativeWindowType, and NativePixmapType
* are aliases of window-system-dependent types, such as X Display * or
* Windows Device Context. They must be defined in platform-specific
* code below. The EGL-prefixed versions of Native*Type are the same
* types, renamed in EGL 1.3 so all types in the API start with "EGL".
*
* Khronos STRONGLY RECOMMENDS that you use the default definitions
* provided below, since these changes affect both binary and source
* portability of applications using EGL running on different EGL
* implementations.
*/
#if defined(_WIN32) || defined(__VC32__) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__) /* Win32 and WinCE */
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN 1
#endif
#ifndef NOMINMAX /* don't define min() and max(). */
#define NOMINMAX
#endif
#include <windows.h>
#if __WINRT__
#include <Unknwn.h>
typedef IUnknown * EGLNativeWindowType;
typedef IUnknown * EGLNativePixmapType;
typedef IUnknown * EGLNativeDisplayType;
#else
typedef HDC EGLNativeDisplayType;
typedef HBITMAP EGLNativePixmapType;
typedef HWND EGLNativeWindowType;
#endif
#elif defined(__WINSCW__) || defined(__SYMBIAN32__) /* Symbian */
typedef int EGLNativeDisplayType;
typedef void *EGLNativeWindowType;
typedef void *EGLNativePixmapType;
#elif defined(WL_EGL_PLATFORM)
typedef struct wl_display *EGLNativeDisplayType;
typedef struct wl_egl_pixmap *EGLNativePixmapType;
typedef struct wl_egl_window *EGLNativeWindowType;
#elif defined(__GBM__)
typedef struct gbm_device *EGLNativeDisplayType;
typedef struct gbm_bo *EGLNativePixmapType;
typedef void *EGLNativeWindowType;
#elif defined(__ANDROID__) /* Android */
struct ANativeWindow;
struct egl_native_pixmap_t;
typedef struct ANativeWindow *EGLNativeWindowType;
typedef struct egl_native_pixmap_t *EGLNativePixmapType;
typedef void *EGLNativeDisplayType;
#elif defined(MIR_EGL_PLATFORM)
#include <mir_toolkit/mir_client_library.h>
typedef MirEGLNativeDisplayType EGLNativeDisplayType;
typedef void *EGLNativePixmapType;
typedef MirEGLNativeWindowType EGLNativeWindowType;
#elif defined(__unix__)
#ifdef MESA_EGL_NO_X11_HEADERS
typedef void *EGLNativeDisplayType;
typedef khronos_uintptr_t EGLNativePixmapType;
typedef khronos_uintptr_t EGLNativeWindowType;
#else
/* X11 (tentative) */
#include <X11/Xlib.h>
#include <X11/Xutil.h>
typedef Display *EGLNativeDisplayType;
typedef Pixmap EGLNativePixmapType;
typedef Window EGLNativeWindowType;
#endif /* MESA_EGL_NO_X11_HEADERS */
#else
#error "Platform not recognized"
#endif
/* EGL 1.2 types, renamed for consistency in EGL 1.3 */
typedef EGLNativeDisplayType NativeDisplayType;
typedef EGLNativePixmapType NativePixmapType;
typedef EGLNativeWindowType NativeWindowType;
/* Define EGLint. This must be a signed integral type large enough to contain
* all legal attribute names and values passed into and out of EGL, whether
* their type is boolean, bitmask, enumerant (symbolic constant), integer,
* handle, or other. While in general a 32-bit integer will suffice, if
* handles are 64 bit types, then EGLint should be defined as a signed 64-bit
* integer type.
*/
typedef khronos_int32_t EGLint;
#endif /* __eglplatform_h */
#ifndef __egl_h_
#define __egl_h_ 1
#ifdef __cplusplus
extern "C" {
#endif
/*
** Copyright (c) 2013-2015 The Khronos Group Inc.
**
** Permission is hereby granted, free of charge, to any person obtaining a
** copy of this software and/or associated documentation files (the
** "Materials"), to deal in the Materials without restriction, including
** without limitation the rights to use, copy, modify, merge, publish,
** distribute, sublicense, and/or sell copies of the Materials, and to
** permit persons to whom the Materials are furnished to do so, subject to
** the following conditions:
**
** The above copyright notice and this permission notice shall be included
** in all copies or substantial portions of the Materials.
**
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
*/
/*
** This header is generated from the Khronos OpenGL / OpenGL ES XML
** API Registry. The current version of the Registry, generator scripts
** used to make the header, and the header can be found at
** http://www.opengl.org/registry/
**
** Khronos $Revision: 31566 $ on $Date: 2015-06-23 08:48:48 -0700 (Tue, 23 Jun 2015) $
*/
/*#include <EGL/eglplatform.h>*/
/* Generated on date 20150623 */
/* Generated C header for:
* API: egl
* Versions considered: .*
* Versions emitted: .*
* Default extensions included: None
* Additional extensions included: _nomatch_^
* Extensions removed: _nomatch_^
*/
#ifndef EGL_VERSION_1_0
#define EGL_VERSION_1_0 1
typedef unsigned int EGLBoolean;
typedef void *EGLDisplay;
typedef void *EGLConfig;
typedef void *EGLSurface;
typedef void *EGLContext;
typedef void (*__eglMustCastToProperFunctionPointerType)(void);
#define EGL_ALPHA_SIZE 0x3021
#define EGL_BAD_ACCESS 0x3002
#define EGL_BAD_ALLOC 0x3003
#define EGL_BAD_ATTRIBUTE 0x3004
#define EGL_BAD_CONFIG 0x3005
#define EGL_BAD_CONTEXT 0x3006
#define EGL_BAD_CURRENT_SURFACE 0x3007
#define EGL_BAD_DISPLAY 0x3008
#define EGL_BAD_MATCH 0x3009
#define EGL_BAD_NATIVE_PIXMAP 0x300A
#define EGL_BAD_NATIVE_WINDOW 0x300B
#define EGL_BAD_PARAMETER 0x300C
#define EGL_BAD_SURFACE 0x300D
#define EGL_BLUE_SIZE 0x3022
#define EGL_BUFFER_SIZE 0x3020
#define EGL_CONFIG_CAVEAT 0x3027
#define EGL_CONFIG_ID 0x3028
#define EGL_CORE_NATIVE_ENGINE 0x305B
#define EGL_DEPTH_SIZE 0x3025
#define EGL_DONT_CARE ((EGLint)-1)
#define EGL_DRAW 0x3059
#define EGL_EXTENSIONS 0x3055
#define EGL_FALSE 0
#define EGL_GREEN_SIZE 0x3023
#define EGL_HEIGHT 0x3056
#define EGL_LARGEST_PBUFFER 0x3058
#define EGL_LEVEL 0x3029
#define EGL_MAX_PBUFFER_HEIGHT 0x302A
#define EGL_MAX_PBUFFER_PIXELS 0x302B
#define EGL_MAX_PBUFFER_WIDTH 0x302C
#define EGL_NATIVE_RENDERABLE 0x302D
#define EGL_NATIVE_VISUAL_ID 0x302E
#define EGL_NATIVE_VISUAL_TYPE 0x302F
#define EGL_NONE 0x3038
#define EGL_NON_CONFORMANT_CONFIG 0x3051
#define EGL_NOT_INITIALIZED 0x3001
#define EGL_NO_CONTEXT ((EGLContext)0)
#define EGL_NO_DISPLAY ((EGLDisplay)0)
#define EGL_NO_SURFACE ((EGLSurface)0)
#define EGL_PBUFFER_BIT 0x0001
#define EGL_PIXMAP_BIT 0x0002
#define EGL_READ 0x305A
#define EGL_RED_SIZE 0x3024
#define EGL_SAMPLES 0x3031
#define EGL_SAMPLE_BUFFERS 0x3032
#define EGL_SLOW_CONFIG 0x3050
#define EGL_STENCIL_SIZE 0x3026
#define EGL_SUCCESS 0x3000
#define EGL_SURFACE_TYPE 0x3033
#define EGL_TRANSPARENT_BLUE_VALUE 0x3035
#define EGL_TRANSPARENT_GREEN_VALUE 0x3036
#define EGL_TRANSPARENT_RED_VALUE 0x3037
#define EGL_TRANSPARENT_RGB 0x3052
#define EGL_TRANSPARENT_TYPE 0x3034
#define EGL_TRUE 1
#define EGL_VENDOR 0x3053
#define EGL_VERSION 0x3054
#define EGL_WIDTH 0x3057
#define EGL_WINDOW_BIT 0x0004
EGLAPI EGLBoolean EGLAPIENTRY eglChooseConfig (EGLDisplay dpy, const EGLint *attrib_list, EGLConfig *configs, EGLint config_size, EGLint *num_config);
EGLAPI EGLBoolean EGLAPIENTRY eglCopyBuffers (EGLDisplay dpy, EGLSurface surface, EGLNativePixmapType target);
EGLAPI EGLContext EGLAPIENTRY eglCreateContext (EGLDisplay dpy, EGLConfig config, EGLContext share_context, const EGLint *attrib_list);
EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferSurface (EGLDisplay dpy, EGLConfig config, const EGLint *attrib_list);
EGLAPI EGLSurface EGLAPIENTRY eglCreatePixmapSurface (EGLDisplay dpy, EGLConfig config, EGLNativePixmapType pixmap, const EGLint *attrib_list);
EGLAPI EGLSurface EGLAPIENTRY eglCreateWindowSurface (EGLDisplay dpy, EGLConfig config, EGLNativeWindowType win, const EGLint *attrib_list);
EGLAPI EGLBoolean EGLAPIENTRY eglDestroyContext (EGLDisplay dpy, EGLContext ctx);
EGLAPI EGLBoolean EGLAPIENTRY eglDestroySurface (EGLDisplay dpy, EGLSurface surface);
EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigAttrib (EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint *value);
EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigs (EGLDisplay dpy, EGLConfig *configs, EGLint config_size, EGLint *num_config);
EGLAPI EGLDisplay EGLAPIENTRY eglGetCurrentDisplay (void);
EGLAPI EGLSurface EGLAPIENTRY eglGetCurrentSurface (EGLint readdraw);
EGLAPI EGLDisplay EGLAPIENTRY eglGetDisplay (EGLNativeDisplayType display_id);
EGLAPI EGLint EGLAPIENTRY eglGetError (void);
EGLAPI __eglMustCastToProperFunctionPointerType EGLAPIENTRY eglGetProcAddress (const char *procname);
EGLAPI EGLBoolean EGLAPIENTRY eglInitialize (EGLDisplay dpy, EGLint *major, EGLint *minor);
EGLAPI EGLBoolean EGLAPIENTRY eglMakeCurrent (EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx);
EGLAPI EGLBoolean EGLAPIENTRY eglQueryContext (EGLDisplay dpy, EGLContext ctx, EGLint attribute, EGLint *value);
EGLAPI const char *EGLAPIENTRY eglQueryString (EGLDisplay dpy, EGLint name);
EGLAPI EGLBoolean EGLAPIENTRY eglQuerySurface (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint *value);
EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffers (EGLDisplay dpy, EGLSurface surface);
EGLAPI EGLBoolean EGLAPIENTRY eglTerminate (EGLDisplay dpy);
EGLAPI EGLBoolean EGLAPIENTRY eglWaitGL (void);
EGLAPI EGLBoolean EGLAPIENTRY eglWaitNative (EGLint engine);
#endif /* EGL_VERSION_1_0 */
#ifndef EGL_VERSION_1_1
#define EGL_VERSION_1_1 1
#define EGL_BACK_BUFFER 0x3084
#define EGL_BIND_TO_TEXTURE_RGB 0x3039
#define EGL_BIND_TO_TEXTURE_RGBA 0x303A
#define EGL_CONTEXT_LOST 0x300E
#define EGL_MIN_SWAP_INTERVAL 0x303B
#define EGL_MAX_SWAP_INTERVAL 0x303C
#define EGL_MIPMAP_TEXTURE 0x3082
#define EGL_MIPMAP_LEVEL 0x3083
#define EGL_NO_TEXTURE 0x305C
#define EGL_TEXTURE_2D 0x305F
#define EGL_TEXTURE_FORMAT 0x3080
#define EGL_TEXTURE_RGB 0x305D
#define EGL_TEXTURE_RGBA 0x305E
#define EGL_TEXTURE_TARGET 0x3081
EGLAPI EGLBoolean EGLAPIENTRY eglBindTexImage (EGLDisplay dpy, EGLSurface surface, EGLint buffer);
EGLAPI EGLBoolean EGLAPIENTRY eglReleaseTexImage (EGLDisplay dpy, EGLSurface surface, EGLint buffer);
EGLAPI EGLBoolean EGLAPIENTRY eglSurfaceAttrib (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint value);
EGLAPI EGLBoolean EGLAPIENTRY eglSwapInterval (EGLDisplay dpy, EGLint interval);
#endif /* EGL_VERSION_1_1 */
#ifndef EGL_VERSION_1_2
#define EGL_VERSION_1_2 1
typedef unsigned int EGLenum;
typedef void *EGLClientBuffer;
#define EGL_ALPHA_FORMAT 0x3088
#define EGL_ALPHA_FORMAT_NONPRE 0x308B
#define EGL_ALPHA_FORMAT_PRE 0x308C
#define EGL_ALPHA_MASK_SIZE 0x303E
#define EGL_BUFFER_PRESERVED 0x3094
#define EGL_BUFFER_DESTROYED 0x3095
#define EGL_CLIENT_APIS 0x308D
#define EGL_COLORSPACE 0x3087
#define EGL_COLORSPACE_sRGB 0x3089
#define EGL_COLORSPACE_LINEAR 0x308A
#define EGL_COLOR_BUFFER_TYPE 0x303F
#define EGL_CONTEXT_CLIENT_TYPE 0x3097
#define EGL_DISPLAY_SCALING 10000
#define EGL_HORIZONTAL_RESOLUTION 0x3090
#define EGL_LUMINANCE_BUFFER 0x308F
#define EGL_LUMINANCE_SIZE 0x303D
#define EGL_OPENGL_ES_BIT 0x0001
#define EGL_OPENVG_BIT 0x0002
#define EGL_OPENGL_ES_API 0x30A0
#define EGL_OPENVG_API 0x30A1
#define EGL_OPENVG_IMAGE 0x3096
#define EGL_PIXEL_ASPECT_RATIO 0x3092
#define EGL_RENDERABLE_TYPE 0x3040
#define EGL_RENDER_BUFFER 0x3086
#define EGL_RGB_BUFFER 0x308E
#define EGL_SINGLE_BUFFER 0x3085
#define EGL_SWAP_BEHAVIOR 0x3093
#define EGL_UNKNOWN ((EGLint)-1)
#define EGL_VERTICAL_RESOLUTION 0x3091
EGLAPI EGLBoolean EGLAPIENTRY eglBindAPI (EGLenum api);
EGLAPI EGLenum EGLAPIENTRY eglQueryAPI (void);
EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferFromClientBuffer (EGLDisplay dpy, EGLenum buftype, EGLClientBuffer buffer, EGLConfig config, const EGLint *attrib_list);
EGLAPI EGLBoolean EGLAPIENTRY eglReleaseThread (void);
EGLAPI EGLBoolean EGLAPIENTRY eglWaitClient (void);
#endif /* EGL_VERSION_1_2 */
#ifndef EGL_VERSION_1_3
#define EGL_VERSION_1_3 1
#define EGL_CONFORMANT 0x3042
#define EGL_CONTEXT_CLIENT_VERSION 0x3098
#define EGL_MATCH_NATIVE_PIXMAP 0x3041
#define EGL_OPENGL_ES2_BIT 0x0004
#define EGL_VG_ALPHA_FORMAT 0x3088
#define EGL_VG_ALPHA_FORMAT_NONPRE 0x308B
#define EGL_VG_ALPHA_FORMAT_PRE 0x308C
#define EGL_VG_ALPHA_FORMAT_PRE_BIT 0x0040
#define EGL_VG_COLORSPACE 0x3087
#define EGL_VG_COLORSPACE_sRGB 0x3089
#define EGL_VG_COLORSPACE_LINEAR 0x308A
#define EGL_VG_COLORSPACE_LINEAR_BIT 0x0020
#endif /* EGL_VERSION_1_3 */
#ifndef EGL_VERSION_1_4
#define EGL_VERSION_1_4 1
#define EGL_DEFAULT_DISPLAY ((EGLNativeDisplayType)0)
#define EGL_MULTISAMPLE_RESOLVE_BOX_BIT 0x0200
#define EGL_MULTISAMPLE_RESOLVE 0x3099
#define EGL_MULTISAMPLE_RESOLVE_DEFAULT 0x309A
#define EGL_MULTISAMPLE_RESOLVE_BOX 0x309B
#define EGL_OPENGL_API 0x30A2
#define EGL_OPENGL_BIT 0x0008
#define EGL_SWAP_BEHAVIOR_PRESERVED_BIT 0x0400
EGLAPI EGLContext EGLAPIENTRY eglGetCurrentContext (void);
#endif /* EGL_VERSION_1_4 */
#ifndef EGL_VERSION_1_5
#define EGL_VERSION_1_5 1
typedef void *EGLSync;
typedef intptr_t EGLAttrib;
typedef khronos_utime_nanoseconds_t EGLTime;
typedef void *EGLImage;
#define EGL_CONTEXT_MAJOR_VERSION 0x3098
#define EGL_CONTEXT_MINOR_VERSION 0x30FB
#define EGL_CONTEXT_OPENGL_PROFILE_MASK 0x30FD
#define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY 0x31BD
#define EGL_NO_RESET_NOTIFICATION 0x31BE
#define EGL_LOSE_CONTEXT_ON_RESET 0x31BF
#define EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT 0x00000001
#define EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT 0x00000002
#define EGL_CONTEXT_OPENGL_DEBUG 0x31B0
#define EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE 0x31B1
#define EGL_CONTEXT_OPENGL_ROBUST_ACCESS 0x31B2
#define EGL_OPENGL_ES3_BIT 0x00000040
#define EGL_CL_EVENT_HANDLE 0x309C
#define EGL_SYNC_CL_EVENT 0x30FE
#define EGL_SYNC_CL_EVENT_COMPLETE 0x30FF
#define EGL_SYNC_PRIOR_COMMANDS_COMPLETE 0x30F0
#define EGL_SYNC_TYPE 0x30F7
#define EGL_SYNC_STATUS 0x30F1
#define EGL_SYNC_CONDITION 0x30F8
#define EGL_SIGNALED 0x30F2
#define EGL_UNSIGNALED 0x30F3
#define EGL_SYNC_FLUSH_COMMANDS_BIT 0x0001
#define EGL_FOREVER 0xFFFFFFFFFFFFFFFFull
#define EGL_TIMEOUT_EXPIRED 0x30F5
#define EGL_CONDITION_SATISFIED 0x30F6
#define EGL_NO_SYNC ((EGLSync)0)
#define EGL_SYNC_FENCE 0x30F9
#define EGL_GL_COLORSPACE 0x309D
#define EGL_GL_COLORSPACE_SRGB 0x3089
#define EGL_GL_COLORSPACE_LINEAR 0x308A
#define EGL_GL_RENDERBUFFER 0x30B9
#define EGL_GL_TEXTURE_2D 0x30B1
#define EGL_GL_TEXTURE_LEVEL 0x30BC
#define EGL_GL_TEXTURE_3D 0x30B2
#define EGL_GL_TEXTURE_ZOFFSET 0x30BD
#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x30B3
#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x30B4
#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x30B5
#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x30B6
#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x30B7
#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x30B8
#define EGL_IMAGE_PRESERVED 0x30D2
#define EGL_NO_IMAGE ((EGLImage)0)
EGLAPI EGLSync EGLAPIENTRY eglCreateSync (EGLDisplay dpy, EGLenum type, const EGLAttrib *attrib_list);
EGLAPI EGLBoolean EGLAPIENTRY eglDestroySync (EGLDisplay dpy, EGLSync sync);
EGLAPI EGLint EGLAPIENTRY eglClientWaitSync (EGLDisplay dpy, EGLSync sync, EGLint flags, EGLTime timeout);
EGLAPI EGLBoolean EGLAPIENTRY eglGetSyncAttrib (EGLDisplay dpy, EGLSync sync, EGLint attribute, EGLAttrib *value);
EGLAPI EGLImage EGLAPIENTRY eglCreateImage (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLAttrib *attrib_list);
EGLAPI EGLBoolean EGLAPIENTRY eglDestroyImage (EGLDisplay dpy, EGLImage image);
EGLAPI EGLDisplay EGLAPIENTRY eglGetPlatformDisplay (EGLenum platform, void *native_display, const EGLAttrib *attrib_list);
EGLAPI EGLSurface EGLAPIENTRY eglCreatePlatformWindowSurface (EGLDisplay dpy, EGLConfig config, void *native_window, const EGLAttrib *attrib_list);
EGLAPI EGLSurface EGLAPIENTRY eglCreatePlatformPixmapSurface (EGLDisplay dpy, EGLConfig config, void *native_pixmap, const EGLAttrib *attrib_list);
EGLAPI EGLBoolean EGLAPIENTRY eglWaitSync (EGLDisplay dpy, EGLSync sync, EGLint flags);
#endif /* EGL_VERSION_1_5 */
#ifdef __cplusplus
}
#endif
#endif /* __egl_h_ */
#ifndef __eglext_h_
#define __eglext_h_ 1
#ifdef __cplusplus
extern "C" {
#endif
/*
** Copyright (c) 2013-2015 The Khronos Group Inc.
**
** Permission is hereby granted, free of charge, to any person obtaining a
** copy of this software and/or associated documentation files (the
** "Materials"), to deal in the Materials without restriction, including
** without limitation the rights to use, copy, modify, merge, publish,
** distribute, sublicense, and/or sell copies of the Materials, and to
** permit persons to whom the Materials are furnished to do so, subject to
** the following conditions:
**
** The above copyright notice and this permission notice shall be included
** in all copies or substantial portions of the Materials.
**
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
*/
/*
** This header is generated from the Khronos OpenGL / OpenGL ES XML
** API Registry. The current version of the Registry, generator scripts
** used to make the header, and the header can be found at
** http://www.opengl.org/registry/
**
** Khronos $Revision: 31566 $ on $Date: 2015-06-23 08:48:48 -0700 (Tue, 23 Jun 2015) $
*/
/*#include <EGL/eglplatform.h>*/
#define EGL_EGLEXT_VERSION 20150623
/* Generated C header for:
* API: egl
* Versions considered: .*
* Versions emitted: _nomatch_^
* Default extensions included: egl
* Additional extensions included: _nomatch_^
* Extensions removed: _nomatch_^
*/
#ifndef EGL_KHR_cl_event
#define EGL_KHR_cl_event 1
#define EGL_CL_EVENT_HANDLE_KHR 0x309C
#define EGL_SYNC_CL_EVENT_KHR 0x30FE
#define EGL_SYNC_CL_EVENT_COMPLETE_KHR 0x30FF
#endif /* EGL_KHR_cl_event */
#ifndef EGL_KHR_cl_event2
#define EGL_KHR_cl_event2 1
typedef void *EGLSyncKHR;
typedef intptr_t EGLAttribKHR;
typedef EGLSyncKHR (EGLAPIENTRYP PFNEGLCREATESYNC64KHRPROC) (EGLDisplay dpy, EGLenum type, const EGLAttribKHR *attrib_list);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLSyncKHR EGLAPIENTRY eglCreateSync64KHR (EGLDisplay dpy, EGLenum type, const EGLAttribKHR *attrib_list);
#endif
#endif /* EGL_KHR_cl_event2 */
#ifndef EGL_KHR_client_get_all_proc_addresses
#define EGL_KHR_client_get_all_proc_addresses 1
#endif /* EGL_KHR_client_get_all_proc_addresses */
#ifndef EGL_KHR_config_attribs
#define EGL_KHR_config_attribs 1
#define EGL_CONFORMANT_KHR 0x3042
#define EGL_VG_COLORSPACE_LINEAR_BIT_KHR 0x0020
#define EGL_VG_ALPHA_FORMAT_PRE_BIT_KHR 0x0040
#endif /* EGL_KHR_config_attribs */
#ifndef EGL_KHR_create_context
#define EGL_KHR_create_context 1
#define EGL_CONTEXT_MAJOR_VERSION_KHR 0x3098
#define EGL_CONTEXT_MINOR_VERSION_KHR 0x30FB
#define EGL_CONTEXT_FLAGS_KHR 0x30FC
#define EGL_CONTEXT_OPENGL_PROFILE_MASK_KHR 0x30FD
#define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_KHR 0x31BD
#define EGL_NO_RESET_NOTIFICATION_KHR 0x31BE
#define EGL_LOSE_CONTEXT_ON_RESET_KHR 0x31BF
#define EGL_CONTEXT_OPENGL_DEBUG_BIT_KHR 0x00000001
#define EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE_BIT_KHR 0x00000002
#define EGL_CONTEXT_OPENGL_ROBUST_ACCESS_BIT_KHR 0x00000004
#define EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT_KHR 0x00000001
#define EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT_KHR 0x00000002
#define EGL_OPENGL_ES3_BIT_KHR 0x00000040
#endif /* EGL_KHR_create_context */
#ifndef EGL_KHR_create_context_no_error
#define EGL_KHR_create_context_no_error 1
#define EGL_CONTEXT_OPENGL_NO_ERROR_KHR 0x31B3
#endif /* EGL_KHR_create_context_no_error */
#ifndef EGL_KHR_fence_sync
#define EGL_KHR_fence_sync 1
typedef khronos_utime_nanoseconds_t EGLTimeKHR;
#ifdef KHRONOS_SUPPORT_INT64
#define EGL_SYNC_PRIOR_COMMANDS_COMPLETE_KHR 0x30F0
#define EGL_SYNC_CONDITION_KHR 0x30F8
#define EGL_SYNC_FENCE_KHR 0x30F9
typedef EGLSyncKHR (EGLAPIENTRYP PFNEGLCREATESYNCKHRPROC) (EGLDisplay dpy, EGLenum type, const EGLint *attrib_list);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync);
typedef EGLint (EGLAPIENTRYP PFNEGLCLIENTWAITSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETSYNCATTRIBKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLSyncKHR EGLAPIENTRY eglCreateSyncKHR (EGLDisplay dpy, EGLenum type, const EGLint *attrib_list);
EGLAPI EGLBoolean EGLAPIENTRY eglDestroySyncKHR (EGLDisplay dpy, EGLSyncKHR sync);
EGLAPI EGLint EGLAPIENTRY eglClientWaitSyncKHR (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout);
EGLAPI EGLBoolean EGLAPIENTRY eglGetSyncAttribKHR (EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value);
#endif
#endif /* KHRONOS_SUPPORT_INT64 */
#endif /* EGL_KHR_fence_sync */
#ifndef EGL_KHR_get_all_proc_addresses
#define EGL_KHR_get_all_proc_addresses 1
#endif /* EGL_KHR_get_all_proc_addresses */
#ifndef EGL_KHR_gl_colorspace
#define EGL_KHR_gl_colorspace 1
#define EGL_GL_COLORSPACE_KHR 0x309D
#define EGL_GL_COLORSPACE_SRGB_KHR 0x3089
#define EGL_GL_COLORSPACE_LINEAR_KHR 0x308A
#endif /* EGL_KHR_gl_colorspace */
#ifndef EGL_KHR_gl_renderbuffer_image
#define EGL_KHR_gl_renderbuffer_image 1
#define EGL_GL_RENDERBUFFER_KHR 0x30B9
#endif /* EGL_KHR_gl_renderbuffer_image */
#ifndef EGL_KHR_gl_texture_2D_image
#define EGL_KHR_gl_texture_2D_image 1
#define EGL_GL_TEXTURE_2D_KHR 0x30B1
#define EGL_GL_TEXTURE_LEVEL_KHR 0x30BC
#endif /* EGL_KHR_gl_texture_2D_image */
#ifndef EGL_KHR_gl_texture_3D_image
#define EGL_KHR_gl_texture_3D_image 1
#define EGL_GL_TEXTURE_3D_KHR 0x30B2
#define EGL_GL_TEXTURE_ZOFFSET_KHR 0x30BD
#endif /* EGL_KHR_gl_texture_3D_image */
#ifndef EGL_KHR_gl_texture_cubemap_image
#define EGL_KHR_gl_texture_cubemap_image 1
#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X_KHR 0x30B3
#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X_KHR 0x30B4
#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y_KHR 0x30B5
#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_KHR 0x30B6
#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z_KHR 0x30B7
#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_KHR 0x30B8
#endif /* EGL_KHR_gl_texture_cubemap_image */
#ifndef EGL_KHR_image
#define EGL_KHR_image 1
typedef void *EGLImageKHR;
#define EGL_NATIVE_PIXMAP_KHR 0x30B0
#define EGL_NO_IMAGE_KHR ((EGLImageKHR)0)
typedef EGLImageKHR (EGLAPIENTRYP PFNEGLCREATEIMAGEKHRPROC) (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYIMAGEKHRPROC) (EGLDisplay dpy, EGLImageKHR image);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLImageKHR EGLAPIENTRY eglCreateImageKHR (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list);
EGLAPI EGLBoolean EGLAPIENTRY eglDestroyImageKHR (EGLDisplay dpy, EGLImageKHR image);
#endif
#endif /* EGL_KHR_image */
#ifndef EGL_KHR_image_base
#define EGL_KHR_image_base 1
#define EGL_IMAGE_PRESERVED_KHR 0x30D2
#endif /* EGL_KHR_image_base */
#ifndef EGL_KHR_image_pixmap
#define EGL_KHR_image_pixmap 1
#endif /* EGL_KHR_image_pixmap */
#ifndef EGL_KHR_lock_surface
#define EGL_KHR_lock_surface 1
#define EGL_READ_SURFACE_BIT_KHR 0x0001
#define EGL_WRITE_SURFACE_BIT_KHR 0x0002
#define EGL_LOCK_SURFACE_BIT_KHR 0x0080
#define EGL_OPTIMAL_FORMAT_BIT_KHR 0x0100
#define EGL_MATCH_FORMAT_KHR 0x3043
#define EGL_FORMAT_RGB_565_EXACT_KHR 0x30C0
#define EGL_FORMAT_RGB_565_KHR 0x30C1
#define EGL_FORMAT_RGBA_8888_EXACT_KHR 0x30C2
#define EGL_FORMAT_RGBA_8888_KHR 0x30C3
#define EGL_MAP_PRESERVE_PIXELS_KHR 0x30C4
#define EGL_LOCK_USAGE_HINT_KHR 0x30C5
#define EGL_BITMAP_POINTER_KHR 0x30C6
#define EGL_BITMAP_PITCH_KHR 0x30C7
#define EGL_BITMAP_ORIGIN_KHR 0x30C8
#define EGL_BITMAP_PIXEL_RED_OFFSET_KHR 0x30C9
#define EGL_BITMAP_PIXEL_GREEN_OFFSET_KHR 0x30CA
#define EGL_BITMAP_PIXEL_BLUE_OFFSET_KHR 0x30CB
#define EGL_BITMAP_PIXEL_ALPHA_OFFSET_KHR 0x30CC
#define EGL_BITMAP_PIXEL_LUMINANCE_OFFSET_KHR 0x30CD
#define EGL_LOWER_LEFT_KHR 0x30CE
#define EGL_UPPER_LEFT_KHR 0x30CF
typedef EGLBoolean (EGLAPIENTRYP PFNEGLLOCKSURFACEKHRPROC) (EGLDisplay dpy, EGLSurface surface, const EGLint *attrib_list);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLUNLOCKSURFACEKHRPROC) (EGLDisplay dpy, EGLSurface surface);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLBoolean EGLAPIENTRY eglLockSurfaceKHR (EGLDisplay dpy, EGLSurface surface, const EGLint *attrib_list);
EGLAPI EGLBoolean EGLAPIENTRY eglUnlockSurfaceKHR (EGLDisplay dpy, EGLSurface surface);
#endif
#endif /* EGL_KHR_lock_surface */
#ifndef EGL_KHR_lock_surface2
#define EGL_KHR_lock_surface2 1
#define EGL_BITMAP_PIXEL_SIZE_KHR 0x3110
#endif /* EGL_KHR_lock_surface2 */
#ifndef EGL_KHR_lock_surface3
#define EGL_KHR_lock_surface3 1
typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSURFACE64KHRPROC) (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLAttribKHR *value);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLBoolean EGLAPIENTRY eglQuerySurface64KHR (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLAttribKHR *value);
#endif
#endif /* EGL_KHR_lock_surface3 */
#ifndef EGL_KHR_partial_update
#define EGL_KHR_partial_update 1
#define EGL_BUFFER_AGE_KHR 0x313D
typedef EGLBoolean (EGLAPIENTRYP PFNEGLSETDAMAGEREGIONKHRPROC) (EGLDisplay dpy, EGLSurface surface, EGLint *rects, EGLint n_rects);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLBoolean EGLAPIENTRY eglSetDamageRegionKHR (EGLDisplay dpy, EGLSurface surface, EGLint *rects, EGLint n_rects);
#endif
#endif /* EGL_KHR_partial_update */
#ifndef EGL_KHR_platform_android
#define EGL_KHR_platform_android 1
#define EGL_PLATFORM_ANDROID_KHR 0x3141
#endif /* EGL_KHR_platform_android */
#ifndef EGL_KHR_platform_gbm
#define EGL_KHR_platform_gbm 1
#define EGL_PLATFORM_GBM_KHR 0x31D7
#endif /* EGL_KHR_platform_gbm */
#ifndef EGL_KHR_platform_wayland
#define EGL_KHR_platform_wayland 1
#define EGL_PLATFORM_WAYLAND_KHR 0x31D8
#endif /* EGL_KHR_platform_wayland */
#ifndef EGL_KHR_platform_x11
#define EGL_KHR_platform_x11 1
#define EGL_PLATFORM_X11_KHR 0x31D5
#define EGL_PLATFORM_X11_SCREEN_KHR 0x31D6
#endif /* EGL_KHR_platform_x11 */
#ifndef EGL_KHR_reusable_sync
#define EGL_KHR_reusable_sync 1
#ifdef KHRONOS_SUPPORT_INT64
#define EGL_SYNC_STATUS_KHR 0x30F1
#define EGL_SIGNALED_KHR 0x30F2
#define EGL_UNSIGNALED_KHR 0x30F3
#define EGL_TIMEOUT_EXPIRED_KHR 0x30F5
#define EGL_CONDITION_SATISFIED_KHR 0x30F6
#define EGL_SYNC_TYPE_KHR 0x30F7
#define EGL_SYNC_REUSABLE_KHR 0x30FA
#define EGL_SYNC_FLUSH_COMMANDS_BIT_KHR 0x0001
#define EGL_FOREVER_KHR 0xFFFFFFFFFFFFFFFFull
#define EGL_NO_SYNC_KHR ((EGLSyncKHR)0)
typedef EGLBoolean (EGLAPIENTRYP PFNEGLSIGNALSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLBoolean EGLAPIENTRY eglSignalSyncKHR (EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode);
#endif
#endif /* KHRONOS_SUPPORT_INT64 */
#endif /* EGL_KHR_reusable_sync */
#ifndef EGL_KHR_stream
#define EGL_KHR_stream 1
typedef void *EGLStreamKHR;
typedef khronos_uint64_t EGLuint64KHR;
#ifdef KHRONOS_SUPPORT_INT64
#define EGL_NO_STREAM_KHR ((EGLStreamKHR)0)
#define EGL_CONSUMER_LATENCY_USEC_KHR 0x3210
#define EGL_PRODUCER_FRAME_KHR 0x3212
#define EGL_CONSUMER_FRAME_KHR 0x3213
#define EGL_STREAM_STATE_KHR 0x3214
#define EGL_STREAM_STATE_CREATED_KHR 0x3215
#define EGL_STREAM_STATE_CONNECTING_KHR 0x3216
#define EGL_STREAM_STATE_EMPTY_KHR 0x3217
#define EGL_STREAM_STATE_NEW_FRAME_AVAILABLE_KHR 0x3218
#define EGL_STREAM_STATE_OLD_FRAME_AVAILABLE_KHR 0x3219
#define EGL_STREAM_STATE_DISCONNECTED_KHR 0x321A
#define EGL_BAD_STREAM_KHR 0x321B
#define EGL_BAD_STATE_KHR 0x321C
typedef EGLStreamKHR (EGLAPIENTRYP PFNEGLCREATESTREAMKHRPROC) (EGLDisplay dpy, const EGLint *attrib_list);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSTREAMKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMATTRIBKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint value);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSTREAMKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint *value);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSTREAMU64KHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLuint64KHR *value);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLStreamKHR EGLAPIENTRY eglCreateStreamKHR (EGLDisplay dpy, const EGLint *attrib_list);
EGLAPI EGLBoolean EGLAPIENTRY eglDestroyStreamKHR (EGLDisplay dpy, EGLStreamKHR stream);
EGLAPI EGLBoolean EGLAPIENTRY eglStreamAttribKHR (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint value);
EGLAPI EGLBoolean EGLAPIENTRY eglQueryStreamKHR (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint *value);
EGLAPI EGLBoolean EGLAPIENTRY eglQueryStreamu64KHR (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLuint64KHR *value);
#endif
#endif /* KHRONOS_SUPPORT_INT64 */
#endif /* EGL_KHR_stream */
#ifndef EGL_KHR_stream_consumer_gltexture
#define EGL_KHR_stream_consumer_gltexture 1
#ifdef EGL_KHR_stream
#define EGL_CONSUMER_ACQUIRE_TIMEOUT_USEC_KHR 0x321E
typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMERACQUIREKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMERRELEASEKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerGLTextureExternalKHR (EGLDisplay dpy, EGLStreamKHR stream);
EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerAcquireKHR (EGLDisplay dpy, EGLStreamKHR stream);
EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerReleaseKHR (EGLDisplay dpy, EGLStreamKHR stream);
#endif
#endif /* EGL_KHR_stream */
#endif /* EGL_KHR_stream_consumer_gltexture */
#ifndef EGL_KHR_stream_cross_process_fd
#define EGL_KHR_stream_cross_process_fd 1
typedef int EGLNativeFileDescriptorKHR;
#ifdef EGL_KHR_stream
#define EGL_NO_FILE_DESCRIPTOR_KHR ((EGLNativeFileDescriptorKHR)(-1))
typedef EGLNativeFileDescriptorKHR (EGLAPIENTRYP PFNEGLGETSTREAMFILEDESCRIPTORKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream);
typedef EGLStreamKHR (EGLAPIENTRYP PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC) (EGLDisplay dpy, EGLNativeFileDescriptorKHR file_descriptor);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLNativeFileDescriptorKHR EGLAPIENTRY eglGetStreamFileDescriptorKHR (EGLDisplay dpy, EGLStreamKHR stream);
EGLAPI EGLStreamKHR EGLAPIENTRY eglCreateStreamFromFileDescriptorKHR (EGLDisplay dpy, EGLNativeFileDescriptorKHR file_descriptor);
#endif
#endif /* EGL_KHR_stream */
#endif /* EGL_KHR_stream_cross_process_fd */
#ifndef EGL_KHR_stream_fifo
#define EGL_KHR_stream_fifo 1
#ifdef EGL_KHR_stream
#define EGL_STREAM_FIFO_LENGTH_KHR 0x31FC
#define EGL_STREAM_TIME_NOW_KHR 0x31FD
#define EGL_STREAM_TIME_CONSUMER_KHR 0x31FE
#define EGL_STREAM_TIME_PRODUCER_KHR 0x31FF
typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSTREAMTIMEKHRPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLTimeKHR *value);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLBoolean EGLAPIENTRY eglQueryStreamTimeKHR (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLTimeKHR *value);
#endif
#endif /* EGL_KHR_stream */
#endif /* EGL_KHR_stream_fifo */
#ifndef EGL_KHR_stream_producer_aldatalocator
#define EGL_KHR_stream_producer_aldatalocator 1
#ifdef EGL_KHR_stream
#endif /* EGL_KHR_stream */
#endif /* EGL_KHR_stream_producer_aldatalocator */
#ifndef EGL_KHR_stream_producer_eglsurface
#define EGL_KHR_stream_producer_eglsurface 1
#ifdef EGL_KHR_stream
#define EGL_STREAM_BIT_KHR 0x0800
typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC) (EGLDisplay dpy, EGLConfig config, EGLStreamKHR stream, const EGLint *attrib_list);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLSurface EGLAPIENTRY eglCreateStreamProducerSurfaceKHR (EGLDisplay dpy, EGLConfig config, EGLStreamKHR stream, const EGLint *attrib_list);
#endif
#endif /* EGL_KHR_stream */
#endif /* EGL_KHR_stream_producer_eglsurface */
#ifndef EGL_KHR_surfaceless_context
#define EGL_KHR_surfaceless_context 1
#endif /* EGL_KHR_surfaceless_context */
#ifndef EGL_KHR_swap_buffers_with_damage
#define EGL_KHR_swap_buffers_with_damage 1
typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPBUFFERSWITHDAMAGEKHRPROC) (EGLDisplay dpy, EGLSurface surface, EGLint *rects, EGLint n_rects);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffersWithDamageKHR (EGLDisplay dpy, EGLSurface surface, EGLint *rects, EGLint n_rects);
#endif
#endif /* EGL_KHR_swap_buffers_with_damage */
#ifndef EGL_KHR_vg_parent_image
#define EGL_KHR_vg_parent_image 1
#define EGL_VG_PARENT_IMAGE_KHR 0x30BA
#endif /* EGL_KHR_vg_parent_image */
#ifndef EGL_KHR_wait_sync
#define EGL_KHR_wait_sync 1
typedef EGLint (EGLAPIENTRYP PFNEGLWAITSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLint EGLAPIENTRY eglWaitSyncKHR (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags);
#endif
#endif /* EGL_KHR_wait_sync */
#ifndef EGL_ANDROID_blob_cache
#define EGL_ANDROID_blob_cache 1
typedef khronos_ssize_t EGLsizeiANDROID;
typedef void (*EGLSetBlobFuncANDROID) (const void *key, EGLsizeiANDROID keySize, const void *value, EGLsizeiANDROID valueSize);
typedef EGLsizeiANDROID (*EGLGetBlobFuncANDROID) (const void *key, EGLsizeiANDROID keySize, void *value, EGLsizeiANDROID valueSize);
typedef void (EGLAPIENTRYP PFNEGLSETBLOBCACHEFUNCSANDROIDPROC) (EGLDisplay dpy, EGLSetBlobFuncANDROID set, EGLGetBlobFuncANDROID get);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI void EGLAPIENTRY eglSetBlobCacheFuncsANDROID (EGLDisplay dpy, EGLSetBlobFuncANDROID set, EGLGetBlobFuncANDROID get);
#endif
#endif /* EGL_ANDROID_blob_cache */
#ifndef EGL_ANDROID_framebuffer_target
#define EGL_ANDROID_framebuffer_target 1
#define EGL_FRAMEBUFFER_TARGET_ANDROID 0x3147
#endif /* EGL_ANDROID_framebuffer_target */
#ifndef EGL_ANDROID_image_native_buffer
#define EGL_ANDROID_image_native_buffer 1
#define EGL_NATIVE_BUFFER_ANDROID 0x3140
#endif /* EGL_ANDROID_image_native_buffer */
#ifndef EGL_ANDROID_native_fence_sync
#define EGL_ANDROID_native_fence_sync 1
#define EGL_SYNC_NATIVE_FENCE_ANDROID 0x3144
#define EGL_SYNC_NATIVE_FENCE_FD_ANDROID 0x3145
#define EGL_SYNC_NATIVE_FENCE_SIGNALED_ANDROID 0x3146
#define EGL_NO_NATIVE_FENCE_FD_ANDROID -1
typedef EGLint (EGLAPIENTRYP PFNEGLDUPNATIVEFENCEFDANDROIDPROC) (EGLDisplay dpy, EGLSyncKHR sync);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLint EGLAPIENTRY eglDupNativeFenceFDANDROID (EGLDisplay dpy, EGLSyncKHR sync);
#endif
#endif /* EGL_ANDROID_native_fence_sync */
#ifndef EGL_ANDROID_recordable
#define EGL_ANDROID_recordable 1
#define EGL_RECORDABLE_ANDROID 0x3142
#endif /* EGL_ANDROID_recordable */
#ifndef EGL_ANGLE_d3d_share_handle_client_buffer
#define EGL_ANGLE_d3d_share_handle_client_buffer 1
#define EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE 0x3200
#endif /* EGL_ANGLE_d3d_share_handle_client_buffer */
#ifndef EGL_ANGLE_device_d3d
#define EGL_ANGLE_device_d3d 1
#define EGL_D3D9_DEVICE_ANGLE 0x33A0
#define EGL_D3D11_DEVICE_ANGLE 0x33A1
#endif /* EGL_ANGLE_device_d3d */
#ifndef EGL_ANGLE_query_surface_pointer
#define EGL_ANGLE_query_surface_pointer 1
typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYSURFACEPOINTERANGLEPROC) (EGLDisplay dpy, EGLSurface surface, EGLint attribute, void **value);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLBoolean EGLAPIENTRY eglQuerySurfacePointerANGLE (EGLDisplay dpy, EGLSurface surface, EGLint attribute, void **value);
#endif
#endif /* EGL_ANGLE_query_surface_pointer */
#ifndef EGL_ANGLE_surface_d3d_texture_2d_share_handle
#define EGL_ANGLE_surface_d3d_texture_2d_share_handle 1
#endif /* EGL_ANGLE_surface_d3d_texture_2d_share_handle */
#ifndef EGL_ANGLE_window_fixed_size
#define EGL_ANGLE_window_fixed_size 1
#define EGL_FIXED_SIZE_ANGLE 0x3201
#endif /* EGL_ANGLE_window_fixed_size */
#ifndef EGL_ARM_pixmap_multisample_discard
#define EGL_ARM_pixmap_multisample_discard 1
#define EGL_DISCARD_SAMPLES_ARM 0x3286
#endif /* EGL_ARM_pixmap_multisample_discard */
#ifndef EGL_EXT_buffer_age
#define EGL_EXT_buffer_age 1
#define EGL_BUFFER_AGE_EXT 0x313D
#endif /* EGL_EXT_buffer_age */
#ifndef EGL_EXT_client_extensions
#define EGL_EXT_client_extensions 1
#endif /* EGL_EXT_client_extensions */
#ifndef EGL_EXT_create_context_robustness
#define EGL_EXT_create_context_robustness 1
#define EGL_CONTEXT_OPENGL_ROBUST_ACCESS_EXT 0x30BF
#define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_EXT 0x3138
#define EGL_NO_RESET_NOTIFICATION_EXT 0x31BE
#define EGL_LOSE_CONTEXT_ON_RESET_EXT 0x31BF
#endif /* EGL_EXT_create_context_robustness */
#ifndef EGL_EXT_device_base
#define EGL_EXT_device_base 1
typedef void *EGLDeviceEXT;
#define EGL_NO_DEVICE_EXT ((EGLDeviceEXT)(0))
#define EGL_BAD_DEVICE_EXT 0x322B
#define EGL_DEVICE_EXT 0x322C
typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYDEVICEATTRIBEXTPROC) (EGLDeviceEXT device, EGLint attribute, EGLAttrib *value);
typedef const char *(EGLAPIENTRYP PFNEGLQUERYDEVICESTRINGEXTPROC) (EGLDeviceEXT device, EGLint name);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYDEVICESEXTPROC) (EGLint max_devices, EGLDeviceEXT *devices, EGLint *num_devices);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYDISPLAYATTRIBEXTPROC) (EGLDisplay dpy, EGLint attribute, EGLAttrib *value);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLBoolean EGLAPIENTRY eglQueryDeviceAttribEXT (EGLDeviceEXT device, EGLint attribute, EGLAttrib *value);
EGLAPI const char *EGLAPIENTRY eglQueryDeviceStringEXT (EGLDeviceEXT device, EGLint name);
EGLAPI EGLBoolean EGLAPIENTRY eglQueryDevicesEXT (EGLint max_devices, EGLDeviceEXT *devices, EGLint *num_devices);
EGLAPI EGLBoolean EGLAPIENTRY eglQueryDisplayAttribEXT (EGLDisplay dpy, EGLint attribute, EGLAttrib *value);
#endif
#endif /* EGL_EXT_device_base */
#ifndef EGL_EXT_device_drm
#define EGL_EXT_device_drm 1
#define EGL_DRM_DEVICE_FILE_EXT 0x3233
#endif /* EGL_EXT_device_drm */
#ifndef EGL_EXT_device_enumeration
#define EGL_EXT_device_enumeration 1
#endif /* EGL_EXT_device_enumeration */
#ifndef EGL_EXT_device_openwf
#define EGL_EXT_device_openwf 1
#define EGL_OPENWF_DEVICE_ID_EXT 0x3237
#endif /* EGL_EXT_device_openwf */
#ifndef EGL_EXT_device_query
#define EGL_EXT_device_query 1
#endif /* EGL_EXT_device_query */
#ifndef EGL_EXT_image_dma_buf_import
#define EGL_EXT_image_dma_buf_import 1
#define EGL_LINUX_DMA_BUF_EXT 0x3270
#define EGL_LINUX_DRM_FOURCC_EXT 0x3271
#define EGL_DMA_BUF_PLANE0_FD_EXT 0x3272
#define EGL_DMA_BUF_PLANE0_OFFSET_EXT 0x3273
#define EGL_DMA_BUF_PLANE0_PITCH_EXT 0x3274
#define EGL_DMA_BUF_PLANE1_FD_EXT 0x3275
#define EGL_DMA_BUF_PLANE1_OFFSET_EXT 0x3276
#define EGL_DMA_BUF_PLANE1_PITCH_EXT 0x3277
#define EGL_DMA_BUF_PLANE2_FD_EXT 0x3278
#define EGL_DMA_BUF_PLANE2_OFFSET_EXT 0x3279
#define EGL_DMA_BUF_PLANE2_PITCH_EXT 0x327A
#define EGL_YUV_COLOR_SPACE_HINT_EXT 0x327B
#define EGL_SAMPLE_RANGE_HINT_EXT 0x327C
#define EGL_YUV_CHROMA_HORIZONTAL_SITING_HINT_EXT 0x327D
#define EGL_YUV_CHROMA_VERTICAL_SITING_HINT_EXT 0x327E
#define EGL_ITU_REC601_EXT 0x327F
#define EGL_ITU_REC709_EXT 0x3280
#define EGL_ITU_REC2020_EXT 0x3281
#define EGL_YUV_FULL_RANGE_EXT 0x3282
#define EGL_YUV_NARROW_RANGE_EXT 0x3283
#define EGL_YUV_CHROMA_SITING_0_EXT 0x3284
#define EGL_YUV_CHROMA_SITING_0_5_EXT 0x3285
#endif /* EGL_EXT_image_dma_buf_import */
#ifndef EGL_EXT_multiview_window
#define EGL_EXT_multiview_window 1
#define EGL_MULTIVIEW_VIEW_COUNT_EXT 0x3134
#endif /* EGL_EXT_multiview_window */
#ifndef EGL_EXT_output_base
#define EGL_EXT_output_base 1
typedef void *EGLOutputLayerEXT;
typedef void *EGLOutputPortEXT;
#define EGL_NO_OUTPUT_LAYER_EXT ((EGLOutputLayerEXT)0)
#define EGL_NO_OUTPUT_PORT_EXT ((EGLOutputPortEXT)0)
#define EGL_BAD_OUTPUT_LAYER_EXT 0x322D
#define EGL_BAD_OUTPUT_PORT_EXT 0x322E
#define EGL_SWAP_INTERVAL_EXT 0x322F
typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETOUTPUTLAYERSEXTPROC) (EGLDisplay dpy, const EGLAttrib *attrib_list, EGLOutputLayerEXT *layers, EGLint max_layers, EGLint *num_layers);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETOUTPUTPORTSEXTPROC) (EGLDisplay dpy, const EGLAttrib *attrib_list, EGLOutputPortEXT *ports, EGLint max_ports, EGLint *num_ports);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLOUTPUTLAYERATTRIBEXTPROC) (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib value);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYOUTPUTLAYERATTRIBEXTPROC) (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib *value);
typedef const char *(EGLAPIENTRYP PFNEGLQUERYOUTPUTLAYERSTRINGEXTPROC) (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint name);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLOUTPUTPORTATTRIBEXTPROC) (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib value);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYOUTPUTPORTATTRIBEXTPROC) (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib *value);
typedef const char *(EGLAPIENTRYP PFNEGLQUERYOUTPUTPORTSTRINGEXTPROC) (EGLDisplay dpy, EGLOutputPortEXT port, EGLint name);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLBoolean EGLAPIENTRY eglGetOutputLayersEXT (EGLDisplay dpy, const EGLAttrib *attrib_list, EGLOutputLayerEXT *layers, EGLint max_layers, EGLint *num_layers);
EGLAPI EGLBoolean EGLAPIENTRY eglGetOutputPortsEXT (EGLDisplay dpy, const EGLAttrib *attrib_list, EGLOutputPortEXT *ports, EGLint max_ports, EGLint *num_ports);
EGLAPI EGLBoolean EGLAPIENTRY eglOutputLayerAttribEXT (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib value);
EGLAPI EGLBoolean EGLAPIENTRY eglQueryOutputLayerAttribEXT (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib *value);
EGLAPI const char *EGLAPIENTRY eglQueryOutputLayerStringEXT (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint name);
EGLAPI EGLBoolean EGLAPIENTRY eglOutputPortAttribEXT (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib value);
EGLAPI EGLBoolean EGLAPIENTRY eglQueryOutputPortAttribEXT (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib *value);
EGLAPI const char *EGLAPIENTRY eglQueryOutputPortStringEXT (EGLDisplay dpy, EGLOutputPortEXT port, EGLint name);
#endif
#endif /* EGL_EXT_output_base */
#ifndef EGL_EXT_output_drm
#define EGL_EXT_output_drm 1
#define EGL_DRM_CRTC_EXT 0x3234
#define EGL_DRM_PLANE_EXT 0x3235
#define EGL_DRM_CONNECTOR_EXT 0x3236
#endif /* EGL_EXT_output_drm */
#ifndef EGL_EXT_output_openwf
#define EGL_EXT_output_openwf 1
#define EGL_OPENWF_PIPELINE_ID_EXT 0x3238
#define EGL_OPENWF_PORT_ID_EXT 0x3239
#endif /* EGL_EXT_output_openwf */
#ifndef EGL_EXT_platform_base
#define EGL_EXT_platform_base 1
typedef EGLDisplay (EGLAPIENTRYP PFNEGLGETPLATFORMDISPLAYEXTPROC) (EGLenum platform, void *native_display, const EGLint *attrib_list);
typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC) (EGLDisplay dpy, EGLConfig config, void *native_window, const EGLint *attrib_list);
typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPROC) (EGLDisplay dpy, EGLConfig config, void *native_pixmap, const EGLint *attrib_list);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLDisplay EGLAPIENTRY eglGetPlatformDisplayEXT (EGLenum platform, void *native_display, const EGLint *attrib_list);
EGLAPI EGLSurface EGLAPIENTRY eglCreatePlatformWindowSurfaceEXT (EGLDisplay dpy, EGLConfig config, void *native_window, const EGLint *attrib_list);
EGLAPI EGLSurface EGLAPIENTRY eglCreatePlatformPixmapSurfaceEXT (EGLDisplay dpy, EGLConfig config, void *native_pixmap, const EGLint *attrib_list);
#endif
#endif /* EGL_EXT_platform_base */
#ifndef EGL_EXT_platform_device
#define EGL_EXT_platform_device 1
#define EGL_PLATFORM_DEVICE_EXT 0x313F
#endif /* EGL_EXT_platform_device */
#ifndef EGL_EXT_platform_wayland
#define EGL_EXT_platform_wayland 1
#define EGL_PLATFORM_WAYLAND_EXT 0x31D8
#endif /* EGL_EXT_platform_wayland */
#ifndef EGL_EXT_platform_x11
#define EGL_EXT_platform_x11 1
#define EGL_PLATFORM_X11_EXT 0x31D5
#define EGL_PLATFORM_X11_SCREEN_EXT 0x31D6
#endif /* EGL_EXT_platform_x11 */
#ifndef EGL_EXT_protected_surface
#define EGL_EXT_protected_surface 1
#define EGL_PROTECTED_CONTENT_EXT 0x32C0
#endif /* EGL_EXT_protected_surface */
#ifndef EGL_EXT_stream_consumer_egloutput
#define EGL_EXT_stream_consumer_egloutput 1
typedef EGLBoolean (EGLAPIENTRYP PFNEGLSTREAMCONSUMEROUTPUTEXTPROC) (EGLDisplay dpy, EGLStreamKHR stream, EGLOutputLayerEXT layer);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLBoolean EGLAPIENTRY eglStreamConsumerOutputEXT (EGLDisplay dpy, EGLStreamKHR stream, EGLOutputLayerEXT layer);
#endif
#endif /* EGL_EXT_stream_consumer_egloutput */
#ifndef EGL_EXT_swap_buffers_with_damage
#define EGL_EXT_swap_buffers_with_damage 1
typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC) (EGLDisplay dpy, EGLSurface surface, EGLint *rects, EGLint n_rects);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffersWithDamageEXT (EGLDisplay dpy, EGLSurface surface, EGLint *rects, EGLint n_rects);
#endif
#endif /* EGL_EXT_swap_buffers_with_damage */
#ifndef EGL_EXT_yuv_surface
#define EGL_EXT_yuv_surface 1
#define EGL_YUV_ORDER_EXT 0x3301
#define EGL_YUV_NUMBER_OF_PLANES_EXT 0x3311
#define EGL_YUV_SUBSAMPLE_EXT 0x3312
#define EGL_YUV_DEPTH_RANGE_EXT 0x3317
#define EGL_YUV_CSC_STANDARD_EXT 0x330A
#define EGL_YUV_PLANE_BPP_EXT 0x331A
#define EGL_YUV_BUFFER_EXT 0x3300
#define EGL_YUV_ORDER_YUV_EXT 0x3302
#define EGL_YUV_ORDER_YVU_EXT 0x3303
#define EGL_YUV_ORDER_YUYV_EXT 0x3304
#define EGL_YUV_ORDER_UYVY_EXT 0x3305
#define EGL_YUV_ORDER_YVYU_EXT 0x3306
#define EGL_YUV_ORDER_VYUY_EXT 0x3307
#define EGL_YUV_ORDER_AYUV_EXT 0x3308
#define EGL_YUV_SUBSAMPLE_4_2_0_EXT 0x3313
#define EGL_YUV_SUBSAMPLE_4_2_2_EXT 0x3314
#define EGL_YUV_SUBSAMPLE_4_4_4_EXT 0x3315
#define EGL_YUV_DEPTH_RANGE_LIMITED_EXT 0x3318
#define EGL_YUV_DEPTH_RANGE_FULL_EXT 0x3319
#define EGL_YUV_CSC_STANDARD_601_EXT 0x330B
#define EGL_YUV_CSC_STANDARD_709_EXT 0x330C
#define EGL_YUV_CSC_STANDARD_2020_EXT 0x330D
#define EGL_YUV_PLANE_BPP_0_EXT 0x331B
#define EGL_YUV_PLANE_BPP_8_EXT 0x331C
#define EGL_YUV_PLANE_BPP_10_EXT 0x331D
#endif /* EGL_EXT_yuv_surface */
#ifndef EGL_HI_clientpixmap
#define EGL_HI_clientpixmap 1
struct EGLClientPixmapHI {
void *pData;
EGLint iWidth;
EGLint iHeight;
EGLint iStride;
};
#define EGL_CLIENT_PIXMAP_POINTER_HI 0x8F74
typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPIXMAPSURFACEHIPROC) (EGLDisplay dpy, EGLConfig config, struct EGLClientPixmapHI *pixmap);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLSurface EGLAPIENTRY eglCreatePixmapSurfaceHI (EGLDisplay dpy, EGLConfig config, struct EGLClientPixmapHI *pixmap);
#endif
#endif /* EGL_HI_clientpixmap */
#ifndef EGL_HI_colorformats
#define EGL_HI_colorformats 1
#define EGL_COLOR_FORMAT_HI 0x8F70
#define EGL_COLOR_RGB_HI 0x8F71
#define EGL_COLOR_RGBA_HI 0x8F72
#define EGL_COLOR_ARGB_HI 0x8F73
#endif /* EGL_HI_colorformats */
#ifndef EGL_IMG_context_priority
#define EGL_IMG_context_priority 1
#define EGL_CONTEXT_PRIORITY_LEVEL_IMG 0x3100
#define EGL_CONTEXT_PRIORITY_HIGH_IMG 0x3101
#define EGL_CONTEXT_PRIORITY_MEDIUM_IMG 0x3102
#define EGL_CONTEXT_PRIORITY_LOW_IMG 0x3103
#endif /* EGL_IMG_context_priority */
#ifndef EGL_MESA_drm_image
#define EGL_MESA_drm_image 1
#define EGL_DRM_BUFFER_FORMAT_MESA 0x31D0
#define EGL_DRM_BUFFER_USE_MESA 0x31D1
#define EGL_DRM_BUFFER_FORMAT_ARGB32_MESA 0x31D2
#define EGL_DRM_BUFFER_MESA 0x31D3
#define EGL_DRM_BUFFER_STRIDE_MESA 0x31D4
#define EGL_DRM_BUFFER_USE_SCANOUT_MESA 0x00000001
#define EGL_DRM_BUFFER_USE_SHARE_MESA 0x00000002
typedef EGLImageKHR (EGLAPIENTRYP PFNEGLCREATEDRMIMAGEMESAPROC) (EGLDisplay dpy, const EGLint *attrib_list);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLEXPORTDRMIMAGEMESAPROC) (EGLDisplay dpy, EGLImageKHR image, EGLint *name, EGLint *handle, EGLint *stride);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLImageKHR EGLAPIENTRY eglCreateDRMImageMESA (EGLDisplay dpy, const EGLint *attrib_list);
EGLAPI EGLBoolean EGLAPIENTRY eglExportDRMImageMESA (EGLDisplay dpy, EGLImageKHR image, EGLint *name, EGLint *handle, EGLint *stride);
#endif
#endif /* EGL_MESA_drm_image */
#ifndef EGL_MESA_image_dma_buf_export
#define EGL_MESA_image_dma_buf_export 1
typedef EGLBoolean (EGLAPIENTRYP PFNEGLEXPORTDMABUFIMAGEQUERYMESAPROC) (EGLDisplay dpy, EGLImageKHR image, int *fourcc, int *num_planes, EGLuint64KHR *modifiers);
typedef EGLBoolean (EGLAPIENTRYP PFNEGLEXPORTDMABUFIMAGEMESAPROC) (EGLDisplay dpy, EGLImageKHR image, int *fds, EGLint *strides, EGLint *offsets);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLBoolean EGLAPIENTRY eglExportDMABUFImageQueryMESA (EGLDisplay dpy, EGLImageKHR image, int *fourcc, int *num_planes, EGLuint64KHR *modifiers);
EGLAPI EGLBoolean EGLAPIENTRY eglExportDMABUFImageMESA (EGLDisplay dpy, EGLImageKHR image, int *fds, EGLint *strides, EGLint *offsets);
#endif
#endif /* EGL_MESA_image_dma_buf_export */
#ifndef EGL_MESA_platform_gbm
#define EGL_MESA_platform_gbm 1
#define EGL_PLATFORM_GBM_MESA 0x31D7
#endif /* EGL_MESA_platform_gbm */
#ifndef EGL_NOK_swap_region
#define EGL_NOK_swap_region 1
typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPBUFFERSREGIONNOKPROC) (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint *rects);
#ifdef EGL_EGLEXT_PROTOTYPES
EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffersRegionNOK (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint *rects);
#endif
#endif /* EGL_NOK_swap_region */
#ifndef EGL_NOK_swap_region2
#define EGL_NOK_swap_region2 1
typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPBUFFERSREGION2NOKPROC) (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint *rects);
#ifdef EGL_EGLE
gitextract_vltmhidl/
├── .gitignore
├── .gitmodules
├── LICENSE
├── Makefile
├── README.md
├── icons/
│ └── Makefile
├── linux/
│ ├── Makefile
│ └── tamatool.desktop
├── mac/
│ ├── Info.plist
│ ├── Makefile
│ ├── libs/
│ │ ├── bin/
│ │ │ ├── libpng16-config
│ │ │ ├── png-fix-itxt
│ │ │ ├── pngfix
│ │ │ └── sdl2-config
│ │ ├── include/
│ │ │ ├── SDL2/
│ │ │ │ ├── SDL.h
│ │ │ │ ├── SDL_assert.h
│ │ │ │ ├── SDL_atomic.h
│ │ │ │ ├── SDL_audio.h
│ │ │ │ ├── SDL_bits.h
│ │ │ │ ├── SDL_blendmode.h
│ │ │ │ ├── SDL_clipboard.h
│ │ │ │ ├── SDL_config.h
│ │ │ │ ├── SDL_cpuinfo.h
│ │ │ │ ├── SDL_egl.h
│ │ │ │ ├── SDL_endian.h
│ │ │ │ ├── SDL_error.h
│ │ │ │ ├── SDL_events.h
│ │ │ │ ├── SDL_filesystem.h
│ │ │ │ ├── SDL_gamecontroller.h
│ │ │ │ ├── SDL_gesture.h
│ │ │ │ ├── SDL_haptic.h
│ │ │ │ ├── SDL_hints.h
│ │ │ │ ├── SDL_image.h
│ │ │ │ ├── SDL_joystick.h
│ │ │ │ ├── SDL_keyboard.h
│ │ │ │ ├── SDL_keycode.h
│ │ │ │ ├── SDL_loadso.h
│ │ │ │ ├── SDL_locale.h
│ │ │ │ ├── SDL_log.h
│ │ │ │ ├── SDL_main.h
│ │ │ │ ├── SDL_messagebox.h
│ │ │ │ ├── SDL_metal.h
│ │ │ │ ├── SDL_misc.h
│ │ │ │ ├── SDL_mouse.h
│ │ │ │ ├── SDL_mutex.h
│ │ │ │ ├── SDL_name.h
│ │ │ │ ├── SDL_opengl.h
│ │ │ │ ├── SDL_opengl_glext.h
│ │ │ │ ├── SDL_opengles.h
│ │ │ │ ├── SDL_opengles2.h
│ │ │ │ ├── SDL_opengles2_gl2.h
│ │ │ │ ├── SDL_opengles2_gl2ext.h
│ │ │ │ ├── SDL_opengles2_gl2platform.h
│ │ │ │ ├── SDL_opengles2_khrplatform.h
│ │ │ │ ├── SDL_pixels.h
│ │ │ │ ├── SDL_platform.h
│ │ │ │ ├── SDL_power.h
│ │ │ │ ├── SDL_quit.h
│ │ │ │ ├── SDL_rect.h
│ │ │ │ ├── SDL_render.h
│ │ │ │ ├── SDL_revision.h
│ │ │ │ ├── SDL_rwops.h
│ │ │ │ ├── SDL_scancode.h
│ │ │ │ ├── SDL_sensor.h
│ │ │ │ ├── SDL_shape.h
│ │ │ │ ├── SDL_stdinc.h
│ │ │ │ ├── SDL_surface.h
│ │ │ │ ├── SDL_system.h
│ │ │ │ ├── SDL_syswm.h
│ │ │ │ ├── SDL_test.h
│ │ │ │ ├── SDL_test_assert.h
│ │ │ │ ├── SDL_test_common.h
│ │ │ │ ├── SDL_test_compare.h
│ │ │ │ ├── SDL_test_crc32.h
│ │ │ │ ├── SDL_test_font.h
│ │ │ │ ├── SDL_test_fuzzer.h
│ │ │ │ ├── SDL_test_harness.h
│ │ │ │ ├── SDL_test_images.h
│ │ │ │ ├── SDL_test_log.h
│ │ │ │ ├── SDL_test_md5.h
│ │ │ │ ├── SDL_test_memory.h
│ │ │ │ ├── SDL_test_random.h
│ │ │ │ ├── SDL_thread.h
│ │ │ │ ├── SDL_timer.h
│ │ │ │ ├── SDL_touch.h
│ │ │ │ ├── SDL_types.h
│ │ │ │ ├── SDL_version.h
│ │ │ │ ├── SDL_video.h
│ │ │ │ ├── SDL_vulkan.h
│ │ │ │ ├── begin_code.h
│ │ │ │ └── close_code.h
│ │ │ └── libpng16/
│ │ │ ├── png.h
│ │ │ ├── pngconf.h
│ │ │ └── pnglibconf.h
│ │ ├── lib/
│ │ │ ├── cmake/
│ │ │ │ └── SDL2/
│ │ │ │ ├── sdl2-config-version.cmake
│ │ │ │ └── sdl2-config.cmake
│ │ │ ├── libSDL2.a
│ │ │ ├── libSDL2.la
│ │ │ ├── libSDL2_image.a
│ │ │ ├── libSDL2_image.la
│ │ │ ├── libSDL2_test.a
│ │ │ ├── libSDL2_test.la
│ │ │ ├── libSDL2main.a
│ │ │ ├── libSDL2main.la
│ │ │ ├── libpng16.a
│ │ │ ├── libpng16.la
│ │ │ └── pkgconfig/
│ │ │ ├── SDL2_image.pc
│ │ │ ├── libpng16.pc
│ │ │ └── sdl2.pc
│ │ └── share/
│ │ ├── aclocal/
│ │ │ └── sdl2.m4
│ │ └── man/
│ │ ├── man3/
│ │ │ ├── libpng.3
│ │ │ └── libpngpf.3
│ │ └── man5/
│ │ └── png.5
│ └── tamatool.mac
├── src/
│ ├── common.mk
│ ├── hal_types.h
│ ├── image.c
│ ├── image.h
│ ├── mem_edit.c
│ ├── mem_edit.h
│ ├── program.c
│ ├── program.h
│ ├── state.c
│ ├── state.h
│ └── tamatool.c
└── windows/
├── Makefile
├── libs/
│ ├── SDL2-2.0.14/
│ │ ├── BUGS.txt
│ │ ├── COPYING.txt
│ │ ├── CREDITS.txt
│ │ ├── INSTALL.txt
│ │ ├── Makefile
│ │ ├── README-SDL.txt
│ │ ├── README.txt
│ │ ├── WhatsNew.txt
│ │ ├── docs/
│ │ │ ├── README-android.md
│ │ │ ├── README-cmake.md
│ │ │ ├── README-directfb.md
│ │ │ ├── README-dynapi.md
│ │ │ ├── README-emscripten.md
│ │ │ ├── README-gesture.md
│ │ │ ├── README-hg.md
│ │ │ ├── README-ios.md
│ │ │ ├── README-linux.md
│ │ │ ├── README-macosx.md
│ │ │ ├── README-nacl.md
│ │ │ ├── README-os2.md
│ │ │ ├── README-pandora.md
│ │ │ ├── README-platforms.md
│ │ │ ├── README-porting.md
│ │ │ ├── README-psp.md
│ │ │ ├── README-raspberrypi.md
│ │ │ ├── README-touch.md
│ │ │ ├── README-wince.md
│ │ │ ├── README-windows.md
│ │ │ ├── README-winrt.md
│ │ │ ├── README.md
│ │ │ └── doxyfile
│ │ ├── i686-w64-mingw32/
│ │ │ ├── bin/
│ │ │ │ └── sdl2-config
│ │ │ ├── include/
│ │ │ │ └── SDL2/
│ │ │ │ ├── SDL.h
│ │ │ │ ├── SDL_assert.h
│ │ │ │ ├── SDL_atomic.h
│ │ │ │ ├── SDL_audio.h
│ │ │ │ ├── SDL_bits.h
│ │ │ │ ├── SDL_blendmode.h
│ │ │ │ ├── SDL_clipboard.h
│ │ │ │ ├── SDL_config.h
│ │ │ │ ├── SDL_cpuinfo.h
│ │ │ │ ├── SDL_egl.h
│ │ │ │ ├── SDL_endian.h
│ │ │ │ ├── SDL_error.h
│ │ │ │ ├── SDL_events.h
│ │ │ │ ├── SDL_filesystem.h
│ │ │ │ ├── SDL_gamecontroller.h
│ │ │ │ ├── SDL_gesture.h
│ │ │ │ ├── SDL_haptic.h
│ │ │ │ ├── SDL_hints.h
│ │ │ │ ├── SDL_joystick.h
│ │ │ │ ├── SDL_keyboard.h
│ │ │ │ ├── SDL_keycode.h
│ │ │ │ ├── SDL_loadso.h
│ │ │ │ ├── SDL_locale.h
│ │ │ │ ├── SDL_log.h
│ │ │ │ ├── SDL_main.h
│ │ │ │ ├── SDL_messagebox.h
│ │ │ │ ├── SDL_metal.h
│ │ │ │ ├── SDL_misc.h
│ │ │ │ ├── SDL_mouse.h
│ │ │ │ ├── SDL_mutex.h
│ │ │ │ ├── SDL_name.h
│ │ │ │ ├── SDL_opengl.h
│ │ │ │ ├── SDL_opengl_glext.h
│ │ │ │ ├── SDL_opengles.h
│ │ │ │ ├── SDL_opengles2.h
│ │ │ │ ├── SDL_opengles2_gl2.h
│ │ │ │ ├── SDL_opengles2_gl2ext.h
│ │ │ │ ├── SDL_opengles2_gl2platform.h
│ │ │ │ ├── SDL_opengles2_khrplatform.h
│ │ │ │ ├── SDL_pixels.h
│ │ │ │ ├── SDL_platform.h
│ │ │ │ ├── SDL_power.h
│ │ │ │ ├── SDL_quit.h
│ │ │ │ ├── SDL_rect.h
│ │ │ │ ├── SDL_render.h
│ │ │ │ ├── SDL_revision.h
│ │ │ │ ├── SDL_rwops.h
│ │ │ │ ├── SDL_scancode.h
│ │ │ │ ├── SDL_sensor.h
│ │ │ │ ├── SDL_shape.h
│ │ │ │ ├── SDL_stdinc.h
│ │ │ │ ├── SDL_surface.h
│ │ │ │ ├── SDL_system.h
│ │ │ │ ├── SDL_syswm.h
│ │ │ │ ├── SDL_test.h
│ │ │ │ ├── SDL_test_assert.h
│ │ │ │ ├── SDL_test_common.h
│ │ │ │ ├── SDL_test_compare.h
│ │ │ │ ├── SDL_test_crc32.h
│ │ │ │ ├── SDL_test_font.h
│ │ │ │ ├── SDL_test_fuzzer.h
│ │ │ │ ├── SDL_test_harness.h
│ │ │ │ ├── SDL_test_images.h
│ │ │ │ ├── SDL_test_log.h
│ │ │ │ ├── SDL_test_md5.h
│ │ │ │ ├── SDL_test_memory.h
│ │ │ │ ├── SDL_test_random.h
│ │ │ │ ├── SDL_thread.h
│ │ │ │ ├── SDL_timer.h
│ │ │ │ ├── SDL_touch.h
│ │ │ │ ├── SDL_types.h
│ │ │ │ ├── SDL_version.h
│ │ │ │ ├── SDL_video.h
│ │ │ │ ├── SDL_vulkan.h
│ │ │ │ ├── begin_code.h
│ │ │ │ └── close_code.h
│ │ │ ├── lib/
│ │ │ │ ├── cmake/
│ │ │ │ │ └── SDL2/
│ │ │ │ │ ├── sdl2-config-version.cmake
│ │ │ │ │ └── sdl2-config.cmake
│ │ │ │ ├── libSDL2.a
│ │ │ │ ├── libSDL2.dll.a
│ │ │ │ ├── libSDL2.la
│ │ │ │ ├── libSDL2_test.a
│ │ │ │ ├── libSDL2_test.la
│ │ │ │ ├── libSDL2main.a
│ │ │ │ ├── libSDL2main.la
│ │ │ │ └── pkgconfig/
│ │ │ │ └── sdl2.pc
│ │ │ └── share/
│ │ │ └── aclocal/
│ │ │ └── sdl2.m4
│ │ ├── test/
│ │ │ ├── CMakeLists.txt
│ │ │ ├── COPYING
│ │ │ ├── Makefile.in
│ │ │ ├── Makefile.os2
│ │ │ ├── README
│ │ │ ├── acinclude.m4
│ │ │ ├── autogen.sh
│ │ │ ├── checkkeys.c
│ │ │ ├── configure
│ │ │ ├── configure.ac
│ │ │ ├── controllermap.c
│ │ │ ├── emscripten/
│ │ │ │ └── joystick-pre.js
│ │ │ ├── gcc-fat.sh
│ │ │ ├── loopwave.c
│ │ │ ├── loopwavequeue.c
│ │ │ ├── nacl/
│ │ │ │ ├── Makefile
│ │ │ │ ├── background.js
│ │ │ │ ├── common.js
│ │ │ │ ├── index.html
│ │ │ │ └── manifest.json
│ │ │ ├── picture.xbm
│ │ │ ├── relative_mode.markdown
│ │ │ ├── testatomic.c
│ │ │ ├── testaudiocapture.c
│ │ │ ├── testaudiohotplug.c
│ │ │ ├── testaudioinfo.c
│ │ │ ├── testautomation.c
│ │ │ ├── testautomation_audio.c
│ │ │ ├── testautomation_clipboard.c
│ │ │ ├── testautomation_events.c
│ │ │ ├── testautomation_hints.c
│ │ │ ├── testautomation_keyboard.c
│ │ │ ├── testautomation_main.c
│ │ │ ├── testautomation_mouse.c
│ │ │ ├── testautomation_pixels.c
│ │ │ ├── testautomation_platform.c
│ │ │ ├── testautomation_rect.c
│ │ │ ├── testautomation_render.c
│ │ │ ├── testautomation_rwops.c
│ │ │ ├── testautomation_sdltest.c
│ │ │ ├── testautomation_stdlib.c
│ │ │ ├── testautomation_suites.h
│ │ │ ├── testautomation_surface.c
│ │ │ ├── testautomation_syswm.c
│ │ │ ├── testautomation_timer.c
│ │ │ ├── testautomation_video.c
│ │ │ ├── testbounds.c
│ │ │ ├── testcustomcursor.c
│ │ │ ├── testdisplayinfo.c
│ │ │ ├── testdraw2.c
│ │ │ ├── testdrawchessboard.c
│ │ │ ├── testdropfile.c
│ │ │ ├── testerror.c
│ │ │ ├── testevdev.c
│ │ │ ├── testfile.c
│ │ │ ├── testfilesystem.c
│ │ │ ├── testgamecontroller.c
│ │ │ ├── testgesture.c
│ │ │ ├── testgl2.c
│ │ │ ├── testgles.c
│ │ │ ├── testgles2.c
│ │ │ ├── testhaptic.c
│ │ │ ├── testhittesting.c
│ │ │ ├── testhotplug.c
│ │ │ ├── testiconv.c
│ │ │ ├── testime.c
│ │ │ ├── testintersections.c
│ │ │ ├── testjoystick.c
│ │ │ ├── testkeys.c
│ │ │ ├── testloadso.c
│ │ │ ├── testlocale.c
│ │ │ ├── testlock.c
│ │ │ ├── testmessage.c
│ │ │ ├── testmultiaudio.c
│ │ │ ├── testnative.c
│ │ │ ├── testnative.h
│ │ │ ├── testnativecocoa.m
│ │ │ ├── testnativeos2.c
│ │ │ ├── testnativew32.c
│ │ │ ├── testnativex11.c
│ │ │ ├── testoffscreen.c
│ │ │ ├── testoverlay2.c
│ │ │ ├── testplatform.c
│ │ │ ├── testpower.c
│ │ │ ├── testqsort.c
│ │ │ ├── testrelative.c
│ │ │ ├── testrendercopyex.c
│ │ │ ├── testrendertarget.c
│ │ │ ├── testresample.c
│ │ │ ├── testrumble.c
│ │ │ ├── testscale.c
│ │ │ ├── testsem.c
│ │ │ ├── testsensor.c
│ │ │ ├── testshader.c
│ │ │ ├── testshape.c
│ │ │ ├── testsprite2.c
│ │ │ ├── testspriteminimal.c
│ │ │ ├── teststreaming.c
│ │ │ ├── testthread.c
│ │ │ ├── testtimer.c
│ │ │ ├── testurl.c
│ │ │ ├── testver.c
│ │ │ ├── testviewport.c
│ │ │ ├── testvulkan.c
│ │ │ ├── testwm2.c
│ │ │ ├── testyuv.c
│ │ │ ├── testyuv_cvt.c
│ │ │ ├── testyuv_cvt.h
│ │ │ ├── torturethread.c
│ │ │ └── utf8.txt
│ │ └── x86_64-w64-mingw32/
│ │ ├── bin/
│ │ │ └── sdl2-config
│ │ ├── include/
│ │ │ └── SDL2/
│ │ │ ├── SDL.h
│ │ │ ├── SDL_assert.h
│ │ │ ├── SDL_atomic.h
│ │ │ ├── SDL_audio.h
│ │ │ ├── SDL_bits.h
│ │ │ ├── SDL_blendmode.h
│ │ │ ├── SDL_clipboard.h
│ │ │ ├── SDL_config.h
│ │ │ ├── SDL_cpuinfo.h
│ │ │ ├── SDL_egl.h
│ │ │ ├── SDL_endian.h
│ │ │ ├── SDL_error.h
│ │ │ ├── SDL_events.h
│ │ │ ├── SDL_filesystem.h
│ │ │ ├── SDL_gamecontroller.h
│ │ │ ├── SDL_gesture.h
│ │ │ ├── SDL_haptic.h
│ │ │ ├── SDL_hints.h
│ │ │ ├── SDL_joystick.h
│ │ │ ├── SDL_keyboard.h
│ │ │ ├── SDL_keycode.h
│ │ │ ├── SDL_loadso.h
│ │ │ ├── SDL_locale.h
│ │ │ ├── SDL_log.h
│ │ │ ├── SDL_main.h
│ │ │ ├── SDL_messagebox.h
│ │ │ ├── SDL_metal.h
│ │ │ ├── SDL_misc.h
│ │ │ ├── SDL_mouse.h
│ │ │ ├── SDL_mutex.h
│ │ │ ├── SDL_name.h
│ │ │ ├── SDL_opengl.h
│ │ │ ├── SDL_opengl_glext.h
│ │ │ ├── SDL_opengles.h
│ │ │ ├── SDL_opengles2.h
│ │ │ ├── SDL_opengles2_gl2.h
│ │ │ ├── SDL_opengles2_gl2ext.h
│ │ │ ├── SDL_opengles2_gl2platform.h
│ │ │ ├── SDL_opengles2_khrplatform.h
│ │ │ ├── SDL_pixels.h
│ │ │ ├── SDL_platform.h
│ │ │ ├── SDL_power.h
│ │ │ ├── SDL_quit.h
│ │ │ ├── SDL_rect.h
│ │ │ ├── SDL_render.h
│ │ │ ├── SDL_revision.h
│ │ │ ├── SDL_rwops.h
│ │ │ ├── SDL_scancode.h
│ │ │ ├── SDL_sensor.h
│ │ │ ├── SDL_shape.h
│ │ │ ├── SDL_stdinc.h
│ │ │ ├── SDL_surface.h
│ │ │ ├── SDL_system.h
│ │ │ ├── SDL_syswm.h
│ │ │ ├── SDL_test.h
│ │ │ ├── SDL_test_assert.h
│ │ │ ├── SDL_test_common.h
│ │ │ ├── SDL_test_compare.h
│ │ │ ├── SDL_test_crc32.h
│ │ │ ├── SDL_test_font.h
│ │ │ ├── SDL_test_fuzzer.h
│ │ │ ├── SDL_test_harness.h
│ │ │ ├── SDL_test_images.h
│ │ │ ├── SDL_test_log.h
│ │ │ ├── SDL_test_md5.h
│ │ │ ├── SDL_test_memory.h
│ │ │ ├── SDL_test_random.h
│ │ │ ├── SDL_thread.h
│ │ │ ├── SDL_timer.h
│ │ │ ├── SDL_touch.h
│ │ │ ├── SDL_types.h
│ │ │ ├── SDL_version.h
│ │ │ ├── SDL_video.h
│ │ │ ├── SDL_vulkan.h
│ │ │ ├── begin_code.h
│ │ │ └── close_code.h
│ │ ├── lib/
│ │ │ ├── cmake/
│ │ │ │ └── SDL2/
│ │ │ │ ├── sdl2-config-version.cmake
│ │ │ │ └── sdl2-config.cmake
│ │ │ ├── libSDL2.a
│ │ │ ├── libSDL2.dll.a
│ │ │ ├── libSDL2.la
│ │ │ ├── libSDL2_test.a
│ │ │ ├── libSDL2_test.la
│ │ │ ├── libSDL2main.a
│ │ │ ├── libSDL2main.la
│ │ │ └── pkgconfig/
│ │ │ └── sdl2.pc
│ │ └── share/
│ │ └── aclocal/
│ │ └── sdl2.m4
│ ├── SDL2_image-2.0.5/
│ │ ├── CHANGES.txt
│ │ ├── COPYING.txt
│ │ ├── Makefile
│ │ ├── README.txt
│ │ ├── i686-w64-mingw32/
│ │ │ ├── bin/
│ │ │ │ ├── LICENSE.jpeg.txt
│ │ │ │ ├── LICENSE.png.txt
│ │ │ │ ├── LICENSE.tiff.txt
│ │ │ │ ├── LICENSE.webp.txt
│ │ │ │ └── LICENSE.zlib.txt
│ │ │ ├── include/
│ │ │ │ └── SDL2/
│ │ │ │ └── SDL_image.h
│ │ │ └── lib/
│ │ │ ├── libSDL2_image.a
│ │ │ ├── libSDL2_image.dll.a
│ │ │ ├── libSDL2_image.la
│ │ │ └── pkgconfig/
│ │ │ └── SDL2_image.pc
│ │ └── x86_64-w64-mingw32/
│ │ ├── bin/
│ │ │ ├── LICENSE.jpeg.txt
│ │ │ ├── LICENSE.png.txt
│ │ │ ├── LICENSE.tiff.txt
│ │ │ ├── LICENSE.webp.txt
│ │ │ └── LICENSE.zlib.txt
│ │ ├── include/
│ │ │ └── SDL2/
│ │ │ └── SDL_image.h
│ │ └── lib/
│ │ ├── libSDL2_image.a
│ │ ├── libSDL2_image.dll.a
│ │ ├── libSDL2_image.la
│ │ └── pkgconfig/
│ │ └── SDL2_image.pc
│ └── libpng-1.6.37/
│ ├── i686-w64-mingw32/
│ │ ├── bin/
│ │ │ ├── libpng-config
│ │ │ └── libpng16-config
│ │ ├── include/
│ │ │ ├── libpng16/
│ │ │ │ ├── png.h
│ │ │ │ ├── pngconf.h
│ │ │ │ └── pnglibconf.h
│ │ │ ├── png.h
│ │ │ ├── pngconf.h
│ │ │ └── pnglibconf.h
│ │ ├── lib/
│ │ │ ├── libpng.a
│ │ │ ├── libpng.dll.a
│ │ │ ├── libpng16.a
│ │ │ ├── libpng16.dll.a
│ │ │ └── pkgconfig/
│ │ │ ├── libpng.pc
│ │ │ └── libpng16.pc
│ │ └── share/
│ │ └── licenses/
│ │ └── libpng/
│ │ └── LICENSE
│ └── x86_64-w64-mingw32/
│ ├── bin/
│ │ ├── libpng-config
│ │ └── libpng16-config
│ ├── include/
│ │ ├── libpng16/
│ │ │ ├── png.h
│ │ │ ├── pngconf.h
│ │ │ └── pnglibconf.h
│ │ ├── png.h
│ │ ├── pngconf.h
│ │ └── pnglibconf.h
│ ├── lib/
│ │ ├── libpng.a
│ │ ├── libpng.dll.a
│ │ ├── libpng16.a
│ │ ├── libpng16.dll.a
│ │ └── pkgconfig/
│ │ ├── libpng.pc
│ │ └── libpng16.pc
│ └── share/
│ └── licenses/
│ └── libpng/
│ └── LICENSE
├── tamatool.exe.manifest
└── tamatool.rc
SYMBOL INDEX (2382 symbols across 261 files)
FILE: mac/libs/include/SDL2/SDL_assert.h
type SDL_AssertState (line 104) | typedef enum
type SDL_AssertData (line 113) | typedef struct SDL_AssertData
FILE: mac/libs/include/SDL2/SDL_atomic.h
type SDL_SpinLock (line 89) | typedef int SDL_SpinLock;
type SDL_atomic_t (line 216) | typedef struct { int value; } SDL_atomic_t;
FILE: mac/libs/include/SDL2/SDL_audio.h
type Uint16 (line 64) | typedef Uint16 SDL_AudioFormat;
type SDL_AudioSpec (line 178) | typedef struct SDL_AudioSpec
type SDL_AudioCVT (line 192) | struct SDL_AudioCVT
type SDL_AudioCVT (line 193) | struct SDL_AudioCVT
type SDL_AUDIOCVT_PACKED (line 226) | typedef struct SDL_AudioCVT
type Uint32 (line 330) | typedef Uint32 SDL_AudioDeviceID;
type SDL_AudioStatus (line 395) | typedef enum
type _SDL_AudioStream (line 531) | struct _SDL_AudioStream
type SDL_AudioStream (line 532) | typedef struct _SDL_AudioStream SDL_AudioStream;
FILE: mac/libs/include/SDL2/SDL_bits.h
function SDL_FORCE_INLINE (line 60) | SDL_FORCE_INLINE int
function SDL_FORCE_INLINE (line 104) | SDL_FORCE_INLINE SDL_bool
FILE: mac/libs/include/SDL2/SDL_blendmode.h
type SDL_BlendMode (line 40) | typedef enum
type SDL_BlendOperation (line 65) | typedef enum
type SDL_BlendFactor (line 78) | typedef enum
FILE: mac/libs/include/SDL2/SDL_egl.h
type khronos_int32_t (line 177) | typedef int32_t khronos_int32_t;
type khronos_uint32_t (line 178) | typedef uint32_t khronos_uint32_t;
type khronos_int64_t (line 179) | typedef int64_t khronos_int64_t;
type khronos_uint64_t (line 180) | typedef uint64_t khronos_uint64_t;
type khronos_int32_t (line 190) | typedef int32_t khronos_int32_t;
type khronos_uint32_t (line 191) | typedef uint32_t khronos_uint32_t;
type khronos_int64_t (line 192) | typedef int64_t khronos_int64_t;
type khronos_uint64_t (line 193) | typedef uint64_t khronos_uint64_t;
type __int32 (line 202) | typedef __int32 khronos_int32_t;
type khronos_uint32_t (line 203) | typedef unsigned __int32 khronos_uint32_t;
type __int64 (line 204) | typedef __int64 khronos_int64_t;
type khronos_uint64_t (line 205) | typedef unsigned __int64 khronos_uint64_t;
type khronos_int32_t (line 214) | typedef int khronos_int32_t;
type khronos_uint32_t (line 215) | typedef unsigned int khronos_uint32_t;
type khronos_int64_t (line 217) | typedef long int khronos_int64_t;
type khronos_uint64_t (line 218) | typedef unsigned long int khronos_uint64_t;
type khronos_int64_t (line 220) | typedef long long int khronos_int64_t;
type khronos_uint64_t (line 221) | typedef unsigned long long int khronos_uint64_t;
type khronos_int32_t (line 231) | typedef int khronos_int32_t;
type khronos_uint32_t (line 232) | typedef unsigned int khronos_uint32_t;
type khronos_int32_t (line 242) | typedef int32_t khronos_int32_t;
type khronos_uint32_t (line 243) | typedef uint32_t khronos_uint32_t;
type khronos_int64_t (line 244) | typedef int64_t khronos_int64_t;
type khronos_uint64_t (line 245) | typedef uint64_t khronos_uint64_t;
type khronos_int8_t (line 255) | typedef signed char khronos_int8_t;
type khronos_uint8_t (line 256) | typedef unsigned char khronos_uint8_t;
type khronos_int16_t (line 257) | typedef signed short int khronos_int16_t;
type khronos_uint16_t (line 258) | typedef unsigned short int khronos_uint16_t;
type khronos_intptr_t (line 266) | typedef signed long long int khronos_intptr_t;
type khronos_uintptr_t (line 267) | typedef unsigned long long int khronos_uintptr_t;
type khronos_ssize_t (line 268) | typedef signed long long int khronos_ssize_t;
type khronos_usize_t (line 269) | typedef unsigned long long int khronos_usize_t;
type khronos_intptr_t (line 271) | typedef signed long int khronos_intptr_t;
type khronos_uintptr_t (line 272) | typedef unsigned long int khronos_uintptr_t;
type khronos_ssize_t (line 273) | typedef signed long int khronos_ssize_t;
type khronos_usize_t (line 274) | typedef unsigned long int khronos_usize_t;
type khronos_float_t (line 281) | typedef float khronos_float_t;
type khronos_uint64_t (line 294) | typedef khronos_uint64_t khronos_utime_nanoseconds_t;
type khronos_int64_t (line 295) | typedef khronos_int64_t khronos_stime_nanoseconds_t;
type khronos_boolean_enum_t (line 311) | typedef enum {
type IUnknown (line 400) | typedef IUnknown * EGLNativeWindowType;
type IUnknown (line 401) | typedef IUnknown * EGLNativePixmapType;
type IUnknown (line 402) | typedef IUnknown * EGLNativeDisplayType;
type HDC (line 404) | typedef HDC EGLNativeDisplayType;
type HBITMAP (line 405) | typedef HBITMAP EGLNativePixmapType;
type HWND (line 406) | typedef HWND EGLNativeWindowType;
type EGLNativeDisplayType (line 411) | typedef int EGLNativeDisplayType;
type wl_display (line 417) | struct wl_display
type wl_egl_pixmap (line 418) | struct wl_egl_pixmap
type wl_egl_window (line 419) | struct wl_egl_window
type gbm_device (line 423) | struct gbm_device
type gbm_bo (line 424) | struct gbm_bo
type ANativeWindow (line 429) | struct ANativeWindow
type egl_native_pixmap_t (line 430) | struct egl_native_pixmap_t
type ANativeWindow (line 432) | struct ANativeWindow
type egl_native_pixmap_t (line 433) | struct egl_native_pixmap_t
type MirEGLNativeDisplayType (line 439) | typedef MirEGLNativeDisplayType EGLNativeDisplayType;
type MirEGLNativeWindowType (line 441) | typedef MirEGLNativeWindowType EGLNativeWindowType;
type khronos_uintptr_t (line 448) | typedef khronos_uintptr_t EGLNativePixmapType;
type khronos_uintptr_t (line 449) | typedef khronos_uintptr_t EGLNativeWindowType;
type Display (line 457) | typedef Display *EGLNativeDisplayType;
type Pixmap (line 458) | typedef Pixmap EGLNativePixmapType;
type Window (line 459) | typedef Window EGLNativeWindowType;
type EGLNativeDisplayType (line 468) | typedef EGLNativeDisplayType NativeDisplayType;
type EGLNativePixmapType (line 469) | typedef EGLNativePixmapType NativePixmapType;
type EGLNativeWindowType (line 470) | typedef EGLNativeWindowType NativeWindowType;
type khronos_int32_t (line 480) | typedef khronos_int32_t EGLint;
type EGLBoolean (line 537) | typedef unsigned int EGLBoolean;
type EGLenum (line 652) | typedef unsigned int EGLenum;
type EGLAttrib (line 722) | typedef intptr_t EGLAttrib;
type khronos_utime_nanoseconds_t (line 723) | typedef khronos_utime_nanoseconds_t EGLTime;
type EGLAttribKHR (line 849) | typedef intptr_t EGLAttribKHR;
type EGLAttribKHR (line 850) | typedef EGLSyncKHR (EGLAPIENTRYP PFNEGLCREATESYNC64KHRPROC) (EGLDisplay ...
type khronos_utime_nanoseconds_t (line 891) | typedef khronos_utime_nanoseconds_t EGLTimeKHR;
type khronos_uint64_t (line 1066) | typedef khronos_uint64_t EGLuint64KHR;
type EGLNativeFileDescriptorKHR (line 1113) | typedef int EGLNativeFileDescriptorKHR;
type khronos_ssize_t (line 1183) | typedef khronos_ssize_t EGLsizeiANDROID;
type EGLsizeiANDROID (line 1185) | typedef EGLsizeiANDROID (*EGLGetBlobFuncANDROID) (const void *key, EGLsi...
type EGLAttrib (line 1345) | typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETOUTPUTLAYERSEXTPROC) (EGLDispl...
type EGLAttrib (line 1346) | typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETOUTPUTPORTSEXTPROC) (EGLDispla...
type const (line 1380) | typedef EGLDisplay (EGLAPIENTRYP PFNEGLGETPLATFORMDISPLAYEXTPROC) (EGLen...
type const (line 1381) | typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPRO...
type const (line 1382) | typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPRO...
type EGLClientPixmapHI (line 1458) | struct EGLClientPixmapHI {
type EGLClientPixmapHI (line 1465) | struct EGLClientPixmapHI
type EGLClientPixmapHI (line 1467) | struct EGLClientPixmapHI
type khronos_utime_nanoseconds_t (line 1614) | typedef khronos_utime_nanoseconds_t EGLTimeNV;
type khronos_utime_nanoseconds_t (line 1648) | typedef khronos_utime_nanoseconds_t EGLuint64NV;
FILE: mac/libs/include/SDL2/SDL_endian.h
function SDL_FORCE_INLINE (line 73) | SDL_FORCE_INLINE Uint16
function SDL_FORCE_INLINE (line 80) | SDL_FORCE_INLINE Uint16
function SDL_FORCE_INLINE (line 87) | SDL_FORCE_INLINE Uint16
function SDL_FORCE_INLINE (line 96) | SDL_FORCE_INLINE Uint16
function SDL_FORCE_INLINE (line 109) | SDL_FORCE_INLINE Uint16
function SDL_FORCE_INLINE (line 117) | SDL_FORCE_INLINE Uint32
function SDL_FORCE_INLINE (line 124) | SDL_FORCE_INLINE Uint32
function SDL_FORCE_INLINE (line 131) | SDL_FORCE_INLINE Uint32
function SDL_FORCE_INLINE (line 142) | SDL_FORCE_INLINE Uint32
function SDL_FORCE_INLINE (line 164) | SDL_FORCE_INLINE Uint32
function SDL_FORCE_INLINE (line 173) | SDL_FORCE_INLINE Uint64
function SDL_FORCE_INLINE (line 191) | SDL_FORCE_INLINE Uint64
function SDL_FORCE_INLINE (line 198) | SDL_FORCE_INLINE Uint64
function SDL_FORCE_INLINE (line 215) | SDL_FORCE_INLINE float
FILE: mac/libs/include/SDL2/SDL_error.h
type SDL_errorcode (line 91) | typedef enum
FILE: mac/libs/include/SDL2/SDL_events.h
type SDL_EventType (line 55) | typedef enum
type SDL_CommonEvent (line 177) | typedef struct SDL_CommonEvent
type SDL_DisplayEvent (line 186) | typedef struct SDL_DisplayEvent
type SDL_WindowEvent (line 201) | typedef struct SDL_WindowEvent
type SDL_KeyboardEvent (line 217) | typedef struct SDL_KeyboardEvent
type SDL_TextEditingEvent (line 233) | typedef struct SDL_TextEditingEvent
type SDL_TextInputEvent (line 248) | typedef struct SDL_TextInputEvent
type SDL_MouseMotionEvent (line 259) | typedef struct SDL_MouseMotionEvent
type SDL_MouseButtonEvent (line 275) | typedef struct SDL_MouseButtonEvent
type SDL_MouseWheelEvent (line 292) | typedef struct SDL_MouseWheelEvent
type SDL_JoyAxisEvent (line 306) | typedef struct SDL_JoyAxisEvent
type SDL_JoyBallEvent (line 322) | typedef struct SDL_JoyBallEvent
type SDL_JoyHatEvent (line 338) | typedef struct SDL_JoyHatEvent
type SDL_JoyButtonEvent (line 358) | typedef struct SDL_JoyButtonEvent
type SDL_JoyDeviceEvent (line 372) | typedef struct SDL_JoyDeviceEvent
type SDL_ControllerAxisEvent (line 383) | typedef struct SDL_ControllerAxisEvent
type SDL_ControllerButtonEvent (line 400) | typedef struct SDL_ControllerButtonEvent
type SDL_ControllerDeviceEvent (line 415) | typedef struct SDL_ControllerDeviceEvent
type SDL_ControllerTouchpadEvent (line 425) | typedef struct SDL_ControllerTouchpadEvent
type SDL_ControllerSensorEvent (line 440) | typedef struct SDL_ControllerSensorEvent
type SDL_AudioDeviceEvent (line 452) | typedef struct SDL_AudioDeviceEvent
type SDL_TouchFingerEvent (line 467) | typedef struct SDL_TouchFingerEvent
type SDL_MultiGestureEvent (line 485) | typedef struct SDL_MultiGestureEvent
type SDL_DollarGestureEvent (line 502) | typedef struct SDL_DollarGestureEvent
type SDL_DropEvent (line 520) | typedef struct SDL_DropEvent
type SDL_SensorEvent (line 532) | typedef struct SDL_SensorEvent
type SDL_QuitEvent (line 543) | typedef struct SDL_QuitEvent
type SDL_OSEvent (line 552) | typedef struct SDL_OSEvent
type SDL_UserEvent (line 561) | typedef struct SDL_UserEvent
type SDL_SysWMmsg (line 572) | struct SDL_SysWMmsg
type SDL_SysWMmsg (line 573) | typedef struct SDL_SysWMmsg SDL_SysWMmsg;
type SDL_SysWMEvent (line 581) | typedef struct SDL_SysWMEvent
type SDL_Event (line 591) | typedef union SDL_Event
type SDL_eventaction (line 649) | typedef enum
FILE: mac/libs/include/SDL2/SDL_gamecontroller.h
type _SDL_GameController (line 58) | struct _SDL_GameController
type SDL_GameController (line 59) | typedef struct _SDL_GameController SDL_GameController;
type SDL_GameControllerType (line 61) | typedef enum
type SDL_GameControllerBindType (line 73) | typedef enum
type SDL_GameControllerButtonBind (line 84) | typedef struct SDL_GameControllerButtonBind
type SDL_GameControllerAxis (line 312) | typedef enum
type SDL_GameControllerButton (line 361) | typedef enum
FILE: mac/libs/include/SDL2/SDL_gesture.h
type Sint64 (line 44) | typedef Sint64 SDL_GestureID;
FILE: mac/libs/include/SDL2/SDL_haptic.h
type _SDL_Haptic (line 140) | struct _SDL_Haptic
type SDL_Haptic (line 141) | typedef struct _SDL_Haptic SDL_Haptic;
type SDL_HapticDirection (line 459) | typedef struct SDL_HapticDirection
type SDL_HapticConstant (line 477) | typedef struct SDL_HapticConstant
type SDL_HapticPeriodic (line 558) | typedef struct SDL_HapticPeriodic
type SDL_HapticCondition (line 611) | typedef struct SDL_HapticCondition
type SDL_HapticRamp (line 648) | typedef struct SDL_HapticRamp
type SDL_HapticLeftRight (line 685) | typedef struct SDL_HapticLeftRight
type SDL_HapticCustom (line 713) | typedef struct SDL_HapticCustom
type SDL_HapticEffect (line 809) | typedef union SDL_HapticEffect
FILE: mac/libs/include/SDL2/SDL_hints.h
type SDL_HintPriority (line 1492) | typedef enum
FILE: mac/libs/include/SDL2/SDL_image.h
type IMG_InitFlags (line 70) | typedef enum
FILE: mac/libs/include/SDL2/SDL_joystick.h
type _SDL_Joystick (line 66) | struct _SDL_Joystick
type SDL_Joystick (line 67) | typedef struct _SDL_Joystick SDL_Joystick;
type SDL_JoystickGUID (line 70) | typedef struct {
type Sint32 (line 81) | typedef Sint32 SDL_JoystickID;
type SDL_JoystickType (line 83) | typedef enum
type SDL_JoystickPowerLevel (line 97) | typedef enum
FILE: mac/libs/include/SDL2/SDL_keyboard.h
type SDL_Keysym (line 47) | typedef struct SDL_Keysym
FILE: mac/libs/include/SDL2/SDL_keycode.h
type Sint32 (line 45) | typedef Sint32 SDL_Keycode;
type SDL_KeyCode (line 50) | typedef enum
type SDL_Keymod (line 327) | typedef enum
FILE: mac/libs/include/SDL2/SDL_locale.h
type SDL_Locale (line 43) | typedef struct SDL_Locale
FILE: mac/libs/include/SDL2/SDL_log.h
type SDL_LogCategory (line 64) | typedef enum
type SDL_LogPriority (line 102) | typedef enum
FILE: mac/libs/include/SDL2/SDL_messagebox.h
type SDL_MessageBoxFlags (line 37) | typedef enum
type SDL_MessageBoxButtonFlags (line 49) | typedef enum
type SDL_MessageBoxButtonData (line 58) | typedef struct
type SDL_MessageBoxColor (line 68) | typedef struct
type SDL_MessageBoxColorType (line 73) | typedef enum
type SDL_MessageBoxColorScheme (line 86) | typedef struct
type SDL_MessageBoxData (line 94) | typedef struct
FILE: mac/libs/include/SDL2/SDL_mouse.h
type SDL_Cursor (line 41) | typedef struct SDL_Cursor SDL_Cursor;
type SDL_SystemCursor (line 46) | typedef enum
type SDL_MouseWheelDirection (line 66) | typedef enum
FILE: mac/libs/include/SDL2/SDL_mutex.h
type SDL_mutex (line 58) | struct SDL_mutex
type SDL_mutex (line 59) | typedef struct SDL_mutex SDL_mutex;
type SDL_semaphore (line 106) | struct SDL_semaphore
type SDL_sem (line 107) | typedef struct SDL_semaphore SDL_sem;
type SDL_cond (line 166) | struct SDL_cond
type SDL_cond (line 167) | typedef struct SDL_cond SDL_cond;
FILE: mac/libs/include/SDL2/SDL_opengl.h
type GLenum (line 176) | typedef unsigned int GLenum;
type GLboolean (line 177) | typedef unsigned char GLboolean;
type GLbitfield (line 178) | typedef unsigned int GLbitfield;
type GLvoid (line 179) | typedef void GLvoid;
type GLbyte (line 180) | typedef signed char GLbyte;
type GLshort (line 181) | typedef short GLshort;
type GLint (line 182) | typedef int GLint;
type GLubyte (line 183) | typedef unsigned char GLubyte;
type GLushort (line 184) | typedef unsigned short GLushort;
type GLuint (line 185) | typedef unsigned int GLuint;
type GLsizei (line 186) | typedef int GLsizei;
type GLfloat (line 187) | typedef float GLfloat;
type GLclampf (line 188) | typedef float GLclampf;
type GLdouble (line 189) | typedef double GLdouble;
type GLclampd (line 190) | typedef double GLclampd;
FILE: mac/libs/include/SDL2/SDL_opengl_glext.h
type GLsizeiptr (line 472) | typedef long GLsizeiptr;
type GLintptr (line 473) | typedef long GLintptr;
type GLsizeiptr (line 475) | typedef ptrdiff_t GLsizeiptr;
type GLintptr (line 476) | typedef ptrdiff_t GLintptr;
type GLchar (line 572) | typedef char GLchar;
type GLhalf (line 890) | typedef unsigned short GLhalf;
type GLubyte (line 1169) | typedef const GLubyte *(APIENTRYP PFNGLGETSTRINGIPROC) (GLenum name, GLu...
type __GLsync (line 1374) | struct __GLsync
type __int32 (line 1404) | typedef __int32 int32_t;
type __int64 (line 1405) | typedef __int64 int64_t;
type GLuint64 (line 1412) | typedef uint64_t GLuint64;
type GLint64 (line 1413) | typedef int64_t GLint64;
type const (line 1762) | typedef GLint (APIENTRYP PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC) (GLuint ...
type const (line 1763) | typedef GLuint (APIENTRYP PFNGLGETSUBROUTINEINDEXPROC) (GLuint program, ...
type const (line 2466) | typedef GLuint (APIENTRYP PFNGLGETPROGRAMRESOURCEINDEXPROC) (GLuint prog...
type const (line 2469) | typedef GLint (APIENTRYP PFNGLGETPROGRAMRESOURCELOCATIONPROC) (GLuint pr...
type const (line 2470) | typedef GLint (APIENTRYP PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC) (GLui...
type GLuint64EXT (line 2600) | typedef uint64_t GLuint64EXT;
type _cl_context (line 2648) | struct _cl_context
type _cl_event (line 2649) | struct _cl_event
type struct (line 2652) | typedef GLsync (APIENTRYP PFNGLCREATESYNCFROMCLEVENTARBPROC) (struct _cl...
type _cl_context (line 2654) | struct _cl_context
type _cl_event (line 2654) | struct _cl_event
type GLhalfARB (line 3045) | typedef unsigned short GLhalfARB;
type GLhandleARB (line 3578) | typedef unsigned int GLhandleARB;
type GLcharARB (line 3580) | typedef char GLcharARB;
type GLchar (line 3734) | typedef GLboolean (APIENTRYP PFNGLISNAMEDSTRINGARBPROC) (GLint namelen, ...
type GLsizeiptrARB (line 4152) | typedef long GLsizeiptrARB;
type GLintptrARB (line 4153) | typedef long GLintptrARB;
type GLsizeiptrARB (line 4155) | typedef ptrdiff_t GLsizeiptrARB;
type GLintptrARB (line 4156) | typedef ptrdiff_t GLintptrARB;
type GLint (line 4498) | typedef GLint GLfixed;
type GLint64EXT (line 4831) | typedef int64_t GLint64EXT;
type GLenum (line 5632) | typedef GLuint (APIENTRYP PFNGLNEWOBJECTBUFFERATIPROC) (GLsizei size, co...
type GLuint (line 7590) | typedef GLboolean (APIENTRYP PFNGLARETEXTURESRESIDENTEXTPROC) (GLsizei n...
type GLhalfNV (line 8859) | typedef unsigned short GLhalfNV;
type GLintptr (line 9743) | typedef GLintptr GLvdpauSurfaceNV;
type const (line 9750) | typedef GLvdpauSurfaceNV (APIENTRYP PFNGLVDPAUREGISTERVIDEOSURFACENVPROC...
type const (line 9751) | typedef GLvdpauSurfaceNV (APIENTRYP PFNGLVDPAUREGISTEROUTPUTSURFACENVPRO...
type GLuint (line 9976) | typedef GLboolean (APIENTRYP PFNGLAREPROGRAMSRESIDENTNVPROC) (GLsizei n,...
FILE: mac/libs/include/SDL2/SDL_opengles2_gl2.h
type GLvoid (line 21) | typedef void GLvoid;
type GLchar (line 22) | typedef char GLchar;
type GLenum (line 23) | typedef unsigned int GLenum;
type GLboolean (line 24) | typedef unsigned char GLboolean;
type GLbitfield (line 25) | typedef unsigned int GLbitfield;
type khronos_int8_t (line 26) | typedef khronos_int8_t GLbyte;
type GLshort (line 27) | typedef short GLshort;
type GLint (line 28) | typedef int GLint;
type GLsizei (line 29) | typedef int GLsizei;
type khronos_uint8_t (line 30) | typedef khronos_uint8_t GLubyte;
type GLushort (line 31) | typedef unsigned short GLushort;
type GLuint (line 32) | typedef unsigned int GLuint;
type khronos_float_t (line 33) | typedef khronos_float_t GLfloat;
type khronos_float_t (line 34) | typedef khronos_float_t GLclampf;
type khronos_int32_t (line 35) | typedef khronos_int32_t GLfixed;
type khronos_intptr_t (line 38) | typedef khronos_intptr_t GLintptr;
type khronos_ssize_t (line 39) | typedef khronos_ssize_t GLsizeiptr;
FILE: mac/libs/include/SDL2/SDL_opengles2_gl2ext.h
type khronos_int64_t (line 27) | typedef khronos_int64_t GLint64;
type khronos_uint64_t (line 28) | typedef khronos_uint64_t GLuint64;
type __GLsync (line 29) | struct __GLsync
FILE: mac/libs/include/SDL2/SDL_opengles2_khrplatform.h
type khronos_int32_t (line 142) | typedef int32_t khronos_int32_t;
type khronos_uint32_t (line 143) | typedef uint32_t khronos_uint32_t;
type khronos_int64_t (line 144) | typedef int64_t khronos_int64_t;
type khronos_uint64_t (line 145) | typedef uint64_t khronos_uint64_t;
type khronos_int32_t (line 155) | typedef int32_t khronos_int32_t;
type khronos_uint32_t (line 156) | typedef uint32_t khronos_uint32_t;
type khronos_int64_t (line 157) | typedef int64_t khronos_int64_t;
type khronos_uint64_t (line 158) | typedef uint64_t khronos_uint64_t;
type __int32 (line 167) | typedef __int32 khronos_int32_t;
type khronos_uint32_t (line 168) | typedef unsigned __int32 khronos_uint32_t;
type __int64 (line 169) | typedef __int64 khronos_int64_t;
type khronos_uint64_t (line 170) | typedef unsigned __int64 khronos_uint64_t;
type khronos_int32_t (line 179) | typedef int khronos_int32_t;
type khronos_uint32_t (line 180) | typedef unsigned int khronos_uint32_t;
type khronos_int64_t (line 182) | typedef long int khronos_int64_t;
type khronos_uint64_t (line 183) | typedef unsigned long int khronos_uint64_t;
type khronos_int64_t (line 185) | typedef long long int khronos_int64_t;
type khronos_uint64_t (line 186) | typedef unsigned long long int khronos_uint64_t;
type khronos_int32_t (line 196) | typedef int khronos_int32_t;
type khronos_uint32_t (line 197) | typedef unsigned int khronos_uint32_t;
type khronos_int32_t (line 207) | typedef int32_t khronos_int32_t;
type khronos_uint32_t (line 208) | typedef uint32_t khronos_uint32_t;
type khronos_int64_t (line 209) | typedef int64_t khronos_int64_t;
type khronos_uint64_t (line 210) | typedef uint64_t khronos_uint64_t;
type khronos_int8_t (line 220) | typedef signed char khronos_int8_t;
type khronos_uint8_t (line 221) | typedef unsigned char khronos_uint8_t;
type khronos_int16_t (line 222) | typedef signed short int khronos_int16_t;
type khronos_uint16_t (line 223) | typedef unsigned short int khronos_uint16_t;
type khronos_intptr_t (line 231) | typedef signed long long int khronos_intptr_t;
type khronos_uintptr_t (line 232) | typedef unsigned long long int khronos_uintptr_t;
type khronos_ssize_t (line 233) | typedef signed long long int khronos_ssize_t;
type khronos_usize_t (line 234) | typedef unsigned long long int khronos_usize_t;
type khronos_intptr_t (line 236) | typedef signed long int khronos_intptr_t;
type khronos_uintptr_t (line 237) | typedef unsigned long int khronos_uintptr_t;
type khronos_ssize_t (line 238) | typedef signed long int khronos_ssize_t;
type khronos_usize_t (line 239) | typedef unsigned long int khronos_usize_t;
type khronos_float_t (line 246) | typedef float khronos_float_t;
type khronos_uint64_t (line 259) | typedef khronos_uint64_t khronos_utime_nanoseconds_t;
type khronos_int64_t (line 260) | typedef khronos_int64_t khronos_stime_nanoseconds_t;
type khronos_boolean_enum_t (line 276) | typedef enum {
FILE: mac/libs/include/SDL2/SDL_pixels.h
type SDL_PixelType (line 51) | typedef enum
type SDL_BitmapOrder (line 68) | typedef enum
type SDL_PackedOrder (line 76) | typedef enum
type SDL_ArrayOrder (line 92) | typedef enum
type SDL_PackedLayout (line 104) | typedef enum
type SDL_PixelFormatEnum (line 171) | typedef enum
type SDL_Color (line 304) | typedef struct SDL_Color
type SDL_Palette (line 313) | typedef struct SDL_Palette
type SDL_PixelFormat (line 324) | typedef struct SDL_PixelFormat
FILE: mac/libs/include/SDL2/SDL_power.h
type SDL_PowerState (line 42) | typedef enum
FILE: mac/libs/include/SDL2/SDL_rect.h
type SDL_Point (line 48) | typedef struct SDL_Point
type SDL_FPoint (line 60) | typedef struct SDL_FPoint
type SDL_Rect (line 77) | typedef struct SDL_Rect
type SDL_FRect (line 87) | typedef struct SDL_FRect
function SDL_FORCE_INLINE (line 99) | SDL_FORCE_INLINE SDL_bool SDL_PointInRect(const SDL_Point *p, const SDL_...
function SDL_FORCE_INLINE (line 108) | SDL_FORCE_INLINE SDL_bool SDL_RectEmpty(const SDL_Rect *r)
function SDL_FORCE_INLINE (line 116) | SDL_FORCE_INLINE SDL_bool SDL_RectEquals(const SDL_Rect *a, const SDL_Re...
FILE: mac/libs/include/SDL2/SDL_render.h
type SDL_RendererFlags (line 64) | typedef enum
type SDL_RendererInfo (line 78) | typedef struct SDL_RendererInfo
type SDL_ScaleMode (line 91) | typedef enum
type SDL_TextureAccess (line 101) | typedef enum
type SDL_TextureModulate (line 111) | typedef enum
type SDL_RendererFlip (line 121) | typedef enum
type SDL_Renderer (line 131) | struct SDL_Renderer
type SDL_Renderer (line 132) | typedef struct SDL_Renderer SDL_Renderer;
type SDL_Texture (line 137) | struct SDL_Texture
type SDL_Texture (line 138) | typedef struct SDL_Texture SDL_Texture;
FILE: mac/libs/include/SDL2/SDL_rwops.h
type SDL_RWops (line 52) | typedef struct SDL_RWops
FILE: mac/libs/include/SDL2/SDL_scancode.h
type SDL_Scancode (line 43) | typedef enum
FILE: mac/libs/include/SDL2/SDL_sensor.h
type _SDL_Sensor (line 51) | struct _SDL_Sensor
type SDL_Sensor (line 52) | typedef struct _SDL_Sensor SDL_Sensor;
type Sint32 (line 60) | typedef Sint32 SDL_SensorID;
type SDL_SensorType (line 69) | typedef enum
FILE: mac/libs/include/SDL2/SDL_shape.h
type WindowShapeMode (line 80) | typedef enum {
type SDL_WindowShapeParams (line 94) | typedef union {
type SDL_WindowShapeMode (line 101) | typedef struct SDL_WindowShapeMode {
FILE: mac/libs/include/SDL2/SDL_stdinc.h
type SDL_bool (line 165) | typedef int SDL_bool;
type SDL_bool (line 167) | typedef enum
type Sint8 (line 179) | typedef int8_t Sint8;
type Uint8 (line 185) | typedef uint8_t Uint8;
type Sint16 (line 191) | typedef int16_t Sint16;
type Uint16 (line 197) | typedef uint16_t Uint16;
type Sint32 (line 203) | typedef int32_t Sint32;
type Uint32 (line 209) | typedef uint32_t Uint32;
type Sint64 (line 216) | typedef int64_t Sint64;
type Uint64 (line 222) | typedef uint64_t Uint64;
type SDL_DUMMY_ENUM (line 343) | typedef enum
function SDL_FORCE_INLINE (line 431) | SDL_FORCE_INLINE void SDL_memset4(void *dst, Uint32 val, size_t dwords)
type _SDL_iconv_t (line 568) | struct _SDL_iconv_t
FILE: mac/libs/include/SDL2/SDL_surface.h
type SDL_Surface (line 70) | typedef struct SDL_Surface
type SDL_Surface (line 100) | struct SDL_Surface
type SDL_Surface (line 101) | struct SDL_Surface
type SDL_YUV_CONVERSION_MODE (line 106) | typedef enum
FILE: mac/libs/include/SDL2/SDL_system.h
type IDirect3DDevice9 (line 60) | typedef struct IDirect3DDevice9 IDirect3DDevice9;
type SDL_WinRT_Path (line 218) | typedef enum
type SDL_WinRT_DeviceFamily (line 242) | typedef enum
FILE: mac/libs/include/SDL2/SDL_syswm.h
type SDL_SysWMinfo (line 44) | struct SDL_SysWMinfo
type NSWindow (line 87) | typedef struct _NSWindow NSWindow;
type UIWindow (line 95) | typedef struct _UIWindow UIWindow;
type UIViewController (line 96) | typedef struct _UIViewController UIViewController;
type Uint32 (line 98) | typedef Uint32 GLuint;
type ANativeWindow (line 102) | typedef struct ANativeWindow ANativeWindow;
type SDL_SYSWM_TYPE (line 127) | typedef enum
type SDL_SysWMmsg (line 147) | struct SDL_SysWMmsg
type SDL_SysWMinfo (line 216) | struct SDL_SysWMinfo
type SDL_SysWMinfo (line 322) | typedef struct SDL_SysWMinfo SDL_SysWMinfo;
FILE: mac/libs/include/SDL2/SDL_test_common.h
type SDLTest_CommonState (line 51) | typedef struct
FILE: mac/libs/include/SDL2/SDL_test_crc32.h
type SDLTest_Crc32Context (line 66) | typedef struct {
FILE: mac/libs/include/SDL2/SDL_test_harness.h
type SDLTest_TestCaseReference (line 75) | typedef struct SDLTest_TestCaseReference {
type SDLTest_TestSuiteReference (line 89) | typedef struct SDLTest_TestSuiteReference {
FILE: mac/libs/include/SDL2/SDL_test_images.h
type SDLTest_SurfaceImage_t (line 50) | typedef struct SDLTest_SurfaceImage_s {
FILE: mac/libs/include/SDL2/SDL_test_md5.h
type MD5UINT4 (line 68) | typedef unsigned long int MD5UINT4;
type SDLTest_Md5Context (line 71) | typedef struct {
FILE: mac/libs/include/SDL2/SDL_test_random.h
type SDLTest_RandomContext (line 59) | typedef struct {
FILE: mac/libs/include/SDL2/SDL_thread.h
type SDL_Thread (line 45) | struct SDL_Thread
type SDL_Thread (line 46) | typedef struct SDL_Thread SDL_Thread;
type SDL_threadID (line 49) | typedef unsigned long SDL_threadID;
type SDL_TLSID (line 52) | typedef unsigned int SDL_TLSID;
type SDL_ThreadPriority (line 64) | typedef enum {
FILE: mac/libs/include/SDL2/SDL_timer.h
type SDL_TimerID (line 86) | typedef int SDL_TimerID;
FILE: mac/libs/include/SDL2/SDL_touch.h
type Sint64 (line 41) | typedef Sint64 SDL_TouchID;
type Sint64 (line 42) | typedef Sint64 SDL_FingerID;
type SDL_TouchDeviceType (line 44) | typedef enum
type SDL_Finger (line 52) | typedef struct SDL_Finger
FILE: mac/libs/include/SDL2/SDL_version.h
type SDL_version (line 51) | typedef struct SDL_version
FILE: mac/libs/include/SDL2/SDL_video.h
type SDL_DisplayMode (line 53) | typedef struct
type SDL_Window (line 90) | typedef struct SDL_Window SDL_Window;
type SDL_WindowFlags (line 97) | typedef enum
type SDL_WindowEventID (line 146) | typedef enum
type SDL_DisplayEventID (line 175) | typedef enum
type SDL_DisplayOrientation (line 183) | typedef enum
type SDL_GLattr (line 200) | typedef enum
type SDL_GLprofile (line 231) | typedef enum
type SDL_GLcontextFlag (line 238) | typedef enum
type SDL_GLcontextReleaseFlag (line 246) | typedef enum
type SDL_GLContextResetNotification (line 252) | typedef enum
type SDL_HitTestResult (line 1026) | typedef enum
type SDL_Point (line 1045) | typedef SDL_HitTestResult (SDLCALL *SDL_HitTest)(SDL_Window *win,
FILE: mac/libs/include/SDL2/SDL_vulkan.h
type VkInstance (line 57) | typedef VkInstance SDL_vulkanInstance;
type VkSurfaceKHR (line 58) | typedef VkSurfaceKHR SDL_vulkanSurface;
FILE: mac/libs/include/libpng16/png.h
type png_struct (line 439) | typedef struct png_struct_def png_struct;
type png_struct (line 440) | typedef const png_struct * png_const_structp;
type png_struct (line 441) | typedef png_struct * png_structp;
type png_struct (line 442) | typedef png_struct * * png_structpp;
type png_info (line 453) | typedef struct png_info_def png_info;
type png_info (line 454) | typedef png_info * png_infop;
type png_info (line 455) | typedef const png_info * png_const_infop;
type png_info (line 456) | typedef png_info * * png_infopp;
type png_struct (line 469) | typedef png_struct * PNG_RESTRICT
type png_struct (line 470) | typedef const png_struct * PNG_RESTRICT
type png_info (line 471) | typedef png_info * PNG_RESTRICT
type png_info (line 472) | typedef const png_info * PNG_RESTRICT
type png_color (line 478) | typedef struct png_color_struct
type png_color (line 484) | typedef png_color * png_colorp;
type png_color (line 485) | typedef const png_color * png_const_colorp;
type png_color (line 486) | typedef png_color * * png_colorpp;
type png_color_16 (line 488) | typedef struct png_color_16_struct
type png_color_16 (line 496) | typedef png_color_16 * png_color_16p;
type png_color_16 (line 497) | typedef const png_color_16 * png_const_color_16p;
type png_color_16 (line 498) | typedef png_color_16 * * png_color_16pp;
type png_color_8 (line 500) | typedef struct png_color_8_struct
type png_color_8 (line 508) | typedef png_color_8 * png_color_8p;
type png_color_8 (line 509) | typedef const png_color_8 * png_const_color_8p;
type png_color_8 (line 510) | typedef png_color_8 * * png_color_8pp;
type png_sPLT_entry (line 516) | typedef struct png_sPLT_entry_struct
type png_sPLT_entry (line 524) | typedef png_sPLT_entry * png_sPLT_entryp;
type png_sPLT_entry (line 525) | typedef const png_sPLT_entry * png_const_sPLT_entryp;
type png_sPLT_entry (line 526) | typedef png_sPLT_entry * * png_sPLT_entrypp;
type png_sPLT_t (line 533) | typedef struct png_sPLT_struct
type png_sPLT_t (line 540) | typedef png_sPLT_t * png_sPLT_tp;
type png_sPLT_t (line 541) | typedef const png_sPLT_t * png_const_sPLT_tp;
type png_sPLT_t (line 542) | typedef png_sPLT_t * * png_sPLT_tpp;
type png_text (line 562) | typedef struct png_text_struct
type png_text (line 579) | typedef png_text * png_textp;
type png_text (line 580) | typedef const png_text * png_const_textp;
type png_text (line 581) | typedef png_text * * png_textpp;
type png_time (line 600) | typedef struct png_time_struct
type png_time (line 609) | typedef png_time * png_timep;
type png_time (line 610) | typedef const png_time * png_const_timep;
type png_time (line 611) | typedef png_time * * png_timepp;
type png_unknown_chunk (line 622) | typedef struct png_unknown_chunk_t
type png_unknown_chunk (line 638) | typedef png_unknown_chunk * png_unknown_chunkp;
type png_unknown_chunk (line 639) | typedef const png_unknown_chunk * png_const_unknown_chunkp;
type png_unknown_chunk (line 640) | typedef png_unknown_chunk * * png_unknown_chunkpp;
type png_row_info (line 754) | typedef struct png_row_info_struct
type png_row_info (line 764) | typedef png_row_info * png_row_infop;
type png_row_info (line 765) | typedef png_row_info * * png_row_infopp;
type PNG_CALLBACK (line 775) | typedef PNG_CALLBACK(void, *png_error_ptr, (png_structp, png_const_charp));
type PNG_CALLBACK (line 776) | typedef PNG_CALLBACK(void, *png_rw_ptr, (png_structp, png_bytep, size_t));
type PNG_CALLBACK (line 777) | typedef PNG_CALLBACK(void, *png_flush_ptr, (png_structp));
type PNG_CALLBACK (line 778) | typedef PNG_CALLBACK(void, *png_read_status_ptr, (png_structp, png_uint_32,
type PNG_CALLBACK (line 780) | typedef PNG_CALLBACK(void, *png_write_status_ptr, (png_structp, png_uint...
type PNG_CALLBACK (line 784) | typedef PNG_CALLBACK(void, *png_progressive_info_ptr, (png_structp, png_...
type PNG_CALLBACK (line 785) | typedef PNG_CALLBACK(void, *png_progressive_end_ptr, (png_structp, png_i...
type PNG_CALLBACK (line 797) | typedef PNG_CALLBACK(void, *png_progressive_row_ptr, (png_structp, png_b...
type PNG_CALLBACK (line 803) | typedef PNG_CALLBACK(void, *png_user_transform_ptr, (png_structp, png_ro...
type PNG_CALLBACK (line 808) | typedef PNG_CALLBACK(int, *png_user_chunk_ptr, (png_structp,
type PNG_CALLBACK (line 867) | typedef PNG_CALLBACK(png_voidp, *png_malloc_ptr, (png_structp,
type PNG_CALLBACK (line 869) | typedef PNG_CALLBACK(void, *png_free_ptr, (png_structp, png_voidp));
type png_control (line 2671) | struct png_control
type png_image (line 2672) | typedef struct
FILE: mac/libs/include/libpng16/pngconf.h
type png_byte (line 481) | typedef unsigned char png_byte;
type png_int_16 (line 487) | typedef int png_int_16;
type png_int_16 (line 489) | typedef short png_int_16;
type png_uint_16 (line 495) | typedef unsigned int png_uint_16;
type png_uint_16 (line 497) | typedef unsigned short png_uint_16;
type png_int_32 (line 503) | typedef int png_int_32;
type png_int_32 (line 505) | typedef long int png_int_32;
type png_uint_32 (line 511) | typedef unsigned int png_uint_32;
type png_uint_32 (line 513) | typedef unsigned long int png_uint_32;
type png_size_t (line 523) | typedef size_t png_size_t;
type png_ptrdiff_t (line 524) | typedef ptrdiff_t png_ptrdiff_t;
type png_uint_32 (line 555) | typedef png_uint_32 png_alloc_size_t;
type png_alloc_size_t (line 557) | typedef size_t png_alloc_size_t;
type png_int_32 (line 574) | typedef png_int_32 png_fixed_point;
type png_byte (line 579) | typedef png_byte * png_bytep;
type png_byte (line 580) | typedef const png_byte * png_const_bytep;
type png_uint_32 (line 581) | typedef png_uint_32 * png_uint_32p;
type png_uint_32 (line 582) | typedef const png_uint_32 * png_const_uint_32p;
type png_int_32 (line 583) | typedef png_int_32 * png_int_32p;
type png_int_32 (line 584) | typedef const png_int_32 * png_const_int_32p;
type png_uint_16 (line 585) | typedef png_uint_16 * png_uint_16p;
type png_uint_16 (line 586) | typedef const png_uint_16 * png_const_uint_16p;
type png_int_16 (line 587) | typedef png_int_16 * png_int_16p;
type png_int_16 (line 588) | typedef const png_int_16 * png_const_int_16p;
type png_fixed_point (line 591) | typedef png_fixed_point * png_fixed_point_p;
type png_fixed_point (line 592) | typedef const png_fixed_point * png_const_fixed_point_p;
type FILE (line 597) | typedef FILE * png_FILE_p;
type png_byte (line 606) | typedef png_byte * * png_bytepp;
type png_uint_32 (line 607) | typedef png_uint_32 * * png_uint_32pp;
type png_int_32 (line 608) | typedef png_int_32 * * png_int_32pp;
type png_uint_16 (line 609) | typedef png_uint_16 * * png_uint_16pp;
type png_int_16 (line 610) | typedef png_int_16 * * png_int_16pp;
type png_fixed_point (line 613) | typedef png_fixed_point * * png_fixed_point_pp;
FILE: src/hal_types.h
type bool_t (line 25) | typedef uint8_t bool_t;
type u4_t (line 26) | typedef uint8_t u4_t;
type u5_t (line 27) | typedef uint8_t u5_t;
type u8_t (line 28) | typedef uint8_t u8_t;
type u12_t (line 29) | typedef uint16_t u12_t;
type u13_t (line 30) | typedef uint16_t u13_t;
type u32_t (line 31) | typedef uint32_t u32_t;
type timestamp_t (line 32) | typedef uint32_t timestamp_t;
FILE: src/image.c
function image_alloc (line 32) | void image_alloc(image_t *image)
function image_free (line 42) | void image_free(image_t *image)
function image_read_file (line 52) | void image_read_file(char* file_name, image_t *image)
function image_write_file (line 119) | void image_write_file(char* file_name, image_t *image)
FILE: src/image.h
type image_t (line 25) | typedef struct {
FILE: src/mem_edit.c
type termios (line 34) | struct termios
function mem_edit_reset_terminal (line 37) | void mem_edit_reset_terminal(void)
function mem_edit_configure_terminal (line 45) | void mem_edit_configure_terminal(void)
function kbhit (line 59) | static int kbhit()
function getch (line 70) | static int getch()
function print_editor_field (line 82) | static void print_editor_field(char *name, u32_t val, uint8_t depth, u12...
function mem_edit_update (line 100) | void mem_edit_update(void)
function mem_edit_reset_terminal (line 264) | void mem_edit_reset_terminal(void) {}
function mem_edit_configure_terminal (line 265) | void mem_edit_configure_terminal(void) {}
function mem_edit_update (line 266) | void mem_edit_update(void) {}
FILE: src/program.c
type map_t (line 36) | typedef struct map {
function u12_t (line 51) | u12_t * program_load(char *path, uint32_t *size)
function program_save (line 90) | void program_save(char *path, u12_t *program, uint32_t size)
function program_to_header (line 116) | void program_to_header(u12_t *program, uint32_t size)
function generate_data_map (line 135) | static uint32_t generate_data_map(map_t *map, u12_t *program, uint32_t s...
function program_get_data (line 172) | void program_get_data(u12_t *program, uint32_t size, char *path)
function program_set_data (line 241) | void program_set_data(u12_t *program, uint32_t size, char *path)
function crc32 (line 283) | static uint32_t crc32(const char *data, uint32_t length) {
function rom_type_t (line 297) | rom_type_t program_detect_type(u12_t *program)
FILE: src/program.h
type rom_type_t (line 27) | typedef enum {
FILE: src/state.c
function find_next_slot (line 36) | static uint32_t find_next_slot(char *rom_name)
function state_find_next_name (line 51) | void state_find_next_name(char *path, char *rom_name)
function state_find_last_name (line 56) | void state_find_last_name(char *path, char *rom_name)
function state_save (line 67) | void state_save(char *path)
function state_load (line 228) | void state_load(char *path)
FILE: src/tamatool.c
type emulation_speed_t (line 107) | typedef enum {
function hal_free (line 167) | static void hal_free(void *ptr)
function hal_halt (line 172) | static void hal_halt(void)
function bool_t (line 177) | static bool_t hal_is_log_enabled(log_level_t level)
function hal_log (line 182) | static void hal_log(log_level_t level, char *buff, ...)
function timestamp_t (line 197) | static timestamp_t hal_get_timestamp(void)
function hal_sleep_until (line 212) | static void hal_sleep_until(timestamp_t ts)
function hal_update_screen (line 237) | static void hal_update_screen(void)
function hal_set_lcd_matrix (line 295) | static void hal_set_lcd_matrix(u8_t x, u8_t y, bool_t val)
function hal_set_lcd_icon (line 300) | static void hal_set_lcd_icon(u8_t icon, bool_t val)
function hal_set_frequency (line 305) | static void hal_set_frequency(u32_t freq)
function hal_play_frequency (line 313) | static void hal_play_frequency(bool_t en)
function compute_layout (line 320) | static void compute_layout(void)
function handle_click (line 362) | static void handle_click(int32_t x, int32_t y, uint8_t pressed) {
function handle_sdl_events (line 382) | static int handle_sdl_events(SDL_Event *event)
function hal_handler (line 559) | static int hal_handler(void)
function audio_callback (line 598) | static void audio_callback(void *userdata, Uint8 *stream, int len)
function sdl_release (line 618) | static void sdl_release(void)
function bool_t (line 629) | static bool_t sdl_init(void)
function rom_not_found_msg (line 702) | static void rom_not_found_msg(void)
function set_rom_basename (line 713) | static void set_rom_basename(char *path)
function usage (line 728) | static void usage(FILE * fp, int argc, char **argv)
type option (line 766) | struct option
function main (line 784) | int main(int argc, char **argv)
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_assert.h
type SDL_AssertState (line 104) | typedef enum
type SDL_AssertData (line 113) | typedef struct SDL_AssertData
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_atomic.h
type SDL_SpinLock (line 89) | typedef int SDL_SpinLock;
type SDL_atomic_t (line 216) | typedef struct { int value; } SDL_atomic_t;
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_audio.h
type Uint16 (line 64) | typedef Uint16 SDL_AudioFormat;
type SDL_AudioSpec (line 178) | typedef struct SDL_AudioSpec
type SDL_AudioCVT (line 192) | struct SDL_AudioCVT
type SDL_AudioCVT (line 193) | struct SDL_AudioCVT
type SDL_AUDIOCVT_PACKED (line 226) | typedef struct SDL_AudioCVT
type Uint32 (line 330) | typedef Uint32 SDL_AudioDeviceID;
type SDL_AudioStatus (line 395) | typedef enum
type _SDL_AudioStream (line 531) | struct _SDL_AudioStream
type SDL_AudioStream (line 532) | typedef struct _SDL_AudioStream SDL_AudioStream;
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_bits.h
function SDL_FORCE_INLINE (line 60) | SDL_FORCE_INLINE int
function SDL_FORCE_INLINE (line 104) | SDL_FORCE_INLINE SDL_bool
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_blendmode.h
type SDL_BlendMode (line 40) | typedef enum
type SDL_BlendOperation (line 65) | typedef enum
type SDL_BlendFactor (line 78) | typedef enum
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_egl.h
type khronos_int32_t (line 177) | typedef int32_t khronos_int32_t;
type khronos_uint32_t (line 178) | typedef uint32_t khronos_uint32_t;
type khronos_int64_t (line 179) | typedef int64_t khronos_int64_t;
type khronos_uint64_t (line 180) | typedef uint64_t khronos_uint64_t;
type khronos_int32_t (line 190) | typedef int32_t khronos_int32_t;
type khronos_uint32_t (line 191) | typedef uint32_t khronos_uint32_t;
type khronos_int64_t (line 192) | typedef int64_t khronos_int64_t;
type khronos_uint64_t (line 193) | typedef uint64_t khronos_uint64_t;
type __int32 (line 202) | typedef __int32 khronos_int32_t;
type khronos_uint32_t (line 203) | typedef unsigned __int32 khronos_uint32_t;
type __int64 (line 204) | typedef __int64 khronos_int64_t;
type khronos_uint64_t (line 205) | typedef unsigned __int64 khronos_uint64_t;
type khronos_int32_t (line 214) | typedef int khronos_int32_t;
type khronos_uint32_t (line 215) | typedef unsigned int khronos_uint32_t;
type khronos_int64_t (line 217) | typedef long int khronos_int64_t;
type khronos_uint64_t (line 218) | typedef unsigned long int khronos_uint64_t;
type khronos_int64_t (line 220) | typedef long long int khronos_int64_t;
type khronos_uint64_t (line 221) | typedef unsigned long long int khronos_uint64_t;
type khronos_int32_t (line 231) | typedef int khronos_int32_t;
type khronos_uint32_t (line 232) | typedef unsigned int khronos_uint32_t;
type khronos_int32_t (line 242) | typedef int32_t khronos_int32_t;
type khronos_uint32_t (line 243) | typedef uint32_t khronos_uint32_t;
type khronos_int64_t (line 244) | typedef int64_t khronos_int64_t;
type khronos_uint64_t (line 245) | typedef uint64_t khronos_uint64_t;
type khronos_int8_t (line 255) | typedef signed char khronos_int8_t;
type khronos_uint8_t (line 256) | typedef unsigned char khronos_uint8_t;
type khronos_int16_t (line 257) | typedef signed short int khronos_int16_t;
type khronos_uint16_t (line 258) | typedef unsigned short int khronos_uint16_t;
type khronos_intptr_t (line 266) | typedef signed long long int khronos_intptr_t;
type khronos_uintptr_t (line 267) | typedef unsigned long long int khronos_uintptr_t;
type khronos_ssize_t (line 268) | typedef signed long long int khronos_ssize_t;
type khronos_usize_t (line 269) | typedef unsigned long long int khronos_usize_t;
type khronos_intptr_t (line 271) | typedef signed long int khronos_intptr_t;
type khronos_uintptr_t (line 272) | typedef unsigned long int khronos_uintptr_t;
type khronos_ssize_t (line 273) | typedef signed long int khronos_ssize_t;
type khronos_usize_t (line 274) | typedef unsigned long int khronos_usize_t;
type khronos_float_t (line 281) | typedef float khronos_float_t;
type khronos_uint64_t (line 294) | typedef khronos_uint64_t khronos_utime_nanoseconds_t;
type khronos_int64_t (line 295) | typedef khronos_int64_t khronos_stime_nanoseconds_t;
type khronos_boolean_enum_t (line 311) | typedef enum {
type IUnknown (line 400) | typedef IUnknown * EGLNativeWindowType;
type IUnknown (line 401) | typedef IUnknown * EGLNativePixmapType;
type IUnknown (line 402) | typedef IUnknown * EGLNativeDisplayType;
type HDC (line 404) | typedef HDC EGLNativeDisplayType;
type HBITMAP (line 405) | typedef HBITMAP EGLNativePixmapType;
type HWND (line 406) | typedef HWND EGLNativeWindowType;
type EGLNativeDisplayType (line 411) | typedef int EGLNativeDisplayType;
type wl_display (line 417) | struct wl_display
type wl_egl_pixmap (line 418) | struct wl_egl_pixmap
type wl_egl_window (line 419) | struct wl_egl_window
type gbm_device (line 423) | struct gbm_device
type gbm_bo (line 424) | struct gbm_bo
type ANativeWindow (line 429) | struct ANativeWindow
type egl_native_pixmap_t (line 430) | struct egl_native_pixmap_t
type ANativeWindow (line 432) | struct ANativeWindow
type egl_native_pixmap_t (line 433) | struct egl_native_pixmap_t
type MirEGLNativeDisplayType (line 439) | typedef MirEGLNativeDisplayType EGLNativeDisplayType;
type MirEGLNativeWindowType (line 441) | typedef MirEGLNativeWindowType EGLNativeWindowType;
type khronos_uintptr_t (line 448) | typedef khronos_uintptr_t EGLNativePixmapType;
type khronos_uintptr_t (line 449) | typedef khronos_uintptr_t EGLNativeWindowType;
type Display (line 457) | typedef Display *EGLNativeDisplayType;
type Pixmap (line 458) | typedef Pixmap EGLNativePixmapType;
type Window (line 459) | typedef Window EGLNativeWindowType;
type EGLNativeDisplayType (line 468) | typedef EGLNativeDisplayType NativeDisplayType;
type EGLNativePixmapType (line 469) | typedef EGLNativePixmapType NativePixmapType;
type EGLNativeWindowType (line 470) | typedef EGLNativeWindowType NativeWindowType;
type khronos_int32_t (line 480) | typedef khronos_int32_t EGLint;
type EGLBoolean (line 537) | typedef unsigned int EGLBoolean;
type EGLenum (line 652) | typedef unsigned int EGLenum;
type EGLAttrib (line 722) | typedef intptr_t EGLAttrib;
type khronos_utime_nanoseconds_t (line 723) | typedef khronos_utime_nanoseconds_t EGLTime;
type EGLAttribKHR (line 849) | typedef intptr_t EGLAttribKHR;
type EGLAttribKHR (line 850) | typedef EGLSyncKHR (EGLAPIENTRYP PFNEGLCREATESYNC64KHRPROC) (EGLDisplay ...
type khronos_utime_nanoseconds_t (line 891) | typedef khronos_utime_nanoseconds_t EGLTimeKHR;
type khronos_uint64_t (line 1066) | typedef khronos_uint64_t EGLuint64KHR;
type EGLNativeFileDescriptorKHR (line 1113) | typedef int EGLNativeFileDescriptorKHR;
type khronos_ssize_t (line 1183) | typedef khronos_ssize_t EGLsizeiANDROID;
type EGLsizeiANDROID (line 1185) | typedef EGLsizeiANDROID (*EGLGetBlobFuncANDROID) (const void *key, EGLsi...
type EGLAttrib (line 1345) | typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETOUTPUTLAYERSEXTPROC) (EGLDispl...
type EGLAttrib (line 1346) | typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETOUTPUTPORTSEXTPROC) (EGLDispla...
type const (line 1380) | typedef EGLDisplay (EGLAPIENTRYP PFNEGLGETPLATFORMDISPLAYEXTPROC) (EGLen...
type const (line 1381) | typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPRO...
type const (line 1382) | typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPRO...
type EGLClientPixmapHI (line 1458) | struct EGLClientPixmapHI {
type EGLClientPixmapHI (line 1465) | struct EGLClientPixmapHI
type EGLClientPixmapHI (line 1467) | struct EGLClientPixmapHI
type khronos_utime_nanoseconds_t (line 1614) | typedef khronos_utime_nanoseconds_t EGLTimeNV;
type khronos_utime_nanoseconds_t (line 1648) | typedef khronos_utime_nanoseconds_t EGLuint64NV;
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_endian.h
function SDL_FORCE_INLINE (line 73) | SDL_FORCE_INLINE Uint16
function SDL_FORCE_INLINE (line 80) | SDL_FORCE_INLINE Uint16
function SDL_FORCE_INLINE (line 87) | SDL_FORCE_INLINE Uint16
function SDL_FORCE_INLINE (line 96) | SDL_FORCE_INLINE Uint16
function SDL_FORCE_INLINE (line 109) | SDL_FORCE_INLINE Uint16
function SDL_FORCE_INLINE (line 117) | SDL_FORCE_INLINE Uint32
function SDL_FORCE_INLINE (line 124) | SDL_FORCE_INLINE Uint32
function SDL_FORCE_INLINE (line 131) | SDL_FORCE_INLINE Uint32
function SDL_FORCE_INLINE (line 142) | SDL_FORCE_INLINE Uint32
function SDL_FORCE_INLINE (line 164) | SDL_FORCE_INLINE Uint32
function SDL_FORCE_INLINE (line 173) | SDL_FORCE_INLINE Uint64
function SDL_FORCE_INLINE (line 191) | SDL_FORCE_INLINE Uint64
function SDL_FORCE_INLINE (line 198) | SDL_FORCE_INLINE Uint64
function SDL_FORCE_INLINE (line 215) | SDL_FORCE_INLINE float
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_error.h
type SDL_errorcode (line 91) | typedef enum
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_events.h
type SDL_EventType (line 55) | typedef enum
type SDL_CommonEvent (line 177) | typedef struct SDL_CommonEvent
type SDL_DisplayEvent (line 186) | typedef struct SDL_DisplayEvent
type SDL_WindowEvent (line 201) | typedef struct SDL_WindowEvent
type SDL_KeyboardEvent (line 217) | typedef struct SDL_KeyboardEvent
type SDL_TextEditingEvent (line 233) | typedef struct SDL_TextEditingEvent
type SDL_TextInputEvent (line 248) | typedef struct SDL_TextInputEvent
type SDL_MouseMotionEvent (line 259) | typedef struct SDL_MouseMotionEvent
type SDL_MouseButtonEvent (line 275) | typedef struct SDL_MouseButtonEvent
type SDL_MouseWheelEvent (line 292) | typedef struct SDL_MouseWheelEvent
type SDL_JoyAxisEvent (line 306) | typedef struct SDL_JoyAxisEvent
type SDL_JoyBallEvent (line 322) | typedef struct SDL_JoyBallEvent
type SDL_JoyHatEvent (line 338) | typedef struct SDL_JoyHatEvent
type SDL_JoyButtonEvent (line 358) | typedef struct SDL_JoyButtonEvent
type SDL_JoyDeviceEvent (line 372) | typedef struct SDL_JoyDeviceEvent
type SDL_ControllerAxisEvent (line 383) | typedef struct SDL_ControllerAxisEvent
type SDL_ControllerButtonEvent (line 400) | typedef struct SDL_ControllerButtonEvent
type SDL_ControllerDeviceEvent (line 415) | typedef struct SDL_ControllerDeviceEvent
type SDL_ControllerTouchpadEvent (line 425) | typedef struct SDL_ControllerTouchpadEvent
type SDL_ControllerSensorEvent (line 440) | typedef struct SDL_ControllerSensorEvent
type SDL_AudioDeviceEvent (line 452) | typedef struct SDL_AudioDeviceEvent
type SDL_TouchFingerEvent (line 467) | typedef struct SDL_TouchFingerEvent
type SDL_MultiGestureEvent (line 485) | typedef struct SDL_MultiGestureEvent
type SDL_DollarGestureEvent (line 502) | typedef struct SDL_DollarGestureEvent
type SDL_DropEvent (line 520) | typedef struct SDL_DropEvent
type SDL_SensorEvent (line 532) | typedef struct SDL_SensorEvent
type SDL_QuitEvent (line 543) | typedef struct SDL_QuitEvent
type SDL_OSEvent (line 552) | typedef struct SDL_OSEvent
type SDL_UserEvent (line 561) | typedef struct SDL_UserEvent
type SDL_SysWMmsg (line 572) | struct SDL_SysWMmsg
type SDL_SysWMmsg (line 573) | typedef struct SDL_SysWMmsg SDL_SysWMmsg;
type SDL_SysWMEvent (line 581) | typedef struct SDL_SysWMEvent
type SDL_Event (line 591) | typedef union SDL_Event
type SDL_eventaction (line 649) | typedef enum
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_gamecontroller.h
type _SDL_GameController (line 58) | struct _SDL_GameController
type SDL_GameController (line 59) | typedef struct _SDL_GameController SDL_GameController;
type SDL_GameControllerType (line 61) | typedef enum
type SDL_GameControllerBindType (line 73) | typedef enum
type SDL_GameControllerButtonBind (line 84) | typedef struct SDL_GameControllerButtonBind
type SDL_GameControllerAxis (line 312) | typedef enum
type SDL_GameControllerButton (line 361) | typedef enum
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_gesture.h
type Sint64 (line 44) | typedef Sint64 SDL_GestureID;
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_haptic.h
type _SDL_Haptic (line 140) | struct _SDL_Haptic
type SDL_Haptic (line 141) | typedef struct _SDL_Haptic SDL_Haptic;
type SDL_HapticDirection (line 459) | typedef struct SDL_HapticDirection
type SDL_HapticConstant (line 477) | typedef struct SDL_HapticConstant
type SDL_HapticPeriodic (line 558) | typedef struct SDL_HapticPeriodic
type SDL_HapticCondition (line 611) | typedef struct SDL_HapticCondition
type SDL_HapticRamp (line 648) | typedef struct SDL_HapticRamp
type SDL_HapticLeftRight (line 685) | typedef struct SDL_HapticLeftRight
type SDL_HapticCustom (line 713) | typedef struct SDL_HapticCustom
type SDL_HapticEffect (line 809) | typedef union SDL_HapticEffect
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_hints.h
type SDL_HintPriority (line 1492) | typedef enum
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_joystick.h
type _SDL_Joystick (line 66) | struct _SDL_Joystick
type SDL_Joystick (line 67) | typedef struct _SDL_Joystick SDL_Joystick;
type SDL_JoystickGUID (line 70) | typedef struct {
type Sint32 (line 81) | typedef Sint32 SDL_JoystickID;
type SDL_JoystickType (line 83) | typedef enum
type SDL_JoystickPowerLevel (line 97) | typedef enum
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_keyboard.h
type SDL_Keysym (line 47) | typedef struct SDL_Keysym
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_keycode.h
type Sint32 (line 45) | typedef Sint32 SDL_Keycode;
type SDL_KeyCode (line 50) | typedef enum
type SDL_Keymod (line 327) | typedef enum
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_locale.h
type SDL_Locale (line 43) | typedef struct SDL_Locale
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_log.h
type SDL_LogCategory (line 64) | typedef enum
type SDL_LogPriority (line 102) | typedef enum
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_messagebox.h
type SDL_MessageBoxFlags (line 37) | typedef enum
type SDL_MessageBoxButtonFlags (line 49) | typedef enum
type SDL_MessageBoxButtonData (line 58) | typedef struct
type SDL_MessageBoxColor (line 68) | typedef struct
type SDL_MessageBoxColorType (line 73) | typedef enum
type SDL_MessageBoxColorScheme (line 86) | typedef struct
type SDL_MessageBoxData (line 94) | typedef struct
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_mouse.h
type SDL_Cursor (line 41) | typedef struct SDL_Cursor SDL_Cursor;
type SDL_SystemCursor (line 46) | typedef enum
type SDL_MouseWheelDirection (line 66) | typedef enum
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_mutex.h
type SDL_mutex (line 58) | struct SDL_mutex
type SDL_mutex (line 59) | typedef struct SDL_mutex SDL_mutex;
type SDL_semaphore (line 106) | struct SDL_semaphore
type SDL_sem (line 107) | typedef struct SDL_semaphore SDL_sem;
type SDL_cond (line 166) | struct SDL_cond
type SDL_cond (line 167) | typedef struct SDL_cond SDL_cond;
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_opengl.h
type GLenum (line 176) | typedef unsigned int GLenum;
type GLboolean (line 177) | typedef unsigned char GLboolean;
type GLbitfield (line 178) | typedef unsigned int GLbitfield;
type GLvoid (line 179) | typedef void GLvoid;
type GLbyte (line 180) | typedef signed char GLbyte;
type GLshort (line 181) | typedef short GLshort;
type GLint (line 182) | typedef int GLint;
type GLubyte (line 183) | typedef unsigned char GLubyte;
type GLushort (line 184) | typedef unsigned short GLushort;
type GLuint (line 185) | typedef unsigned int GLuint;
type GLsizei (line 186) | typedef int GLsizei;
type GLfloat (line 187) | typedef float GLfloat;
type GLclampf (line 188) | typedef float GLclampf;
type GLdouble (line 189) | typedef double GLdouble;
type GLclampd (line 190) | typedef double GLclampd;
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_opengl_glext.h
type GLsizeiptr (line 472) | typedef long GLsizeiptr;
type GLintptr (line 473) | typedef long GLintptr;
type GLsizeiptr (line 475) | typedef ptrdiff_t GLsizeiptr;
type GLintptr (line 476) | typedef ptrdiff_t GLintptr;
type GLchar (line 572) | typedef char GLchar;
type GLhalf (line 890) | typedef unsigned short GLhalf;
type GLubyte (line 1169) | typedef const GLubyte *(APIENTRYP PFNGLGETSTRINGIPROC) (GLenum name, GLu...
type __GLsync (line 1374) | struct __GLsync
type __int32 (line 1404) | typedef __int32 int32_t;
type __int64 (line 1405) | typedef __int64 int64_t;
type GLuint64 (line 1412) | typedef uint64_t GLuint64;
type GLint64 (line 1413) | typedef int64_t GLint64;
type const (line 1762) | typedef GLint (APIENTRYP PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC) (GLuint ...
type const (line 1763) | typedef GLuint (APIENTRYP PFNGLGETSUBROUTINEINDEXPROC) (GLuint program, ...
type const (line 2466) | typedef GLuint (APIENTRYP PFNGLGETPROGRAMRESOURCEINDEXPROC) (GLuint prog...
type const (line 2469) | typedef GLint (APIENTRYP PFNGLGETPROGRAMRESOURCELOCATIONPROC) (GLuint pr...
type const (line 2470) | typedef GLint (APIENTRYP PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC) (GLui...
type GLuint64EXT (line 2600) | typedef uint64_t GLuint64EXT;
type _cl_context (line 2648) | struct _cl_context
type _cl_event (line 2649) | struct _cl_event
type struct (line 2652) | typedef GLsync (APIENTRYP PFNGLCREATESYNCFROMCLEVENTARBPROC) (struct _cl...
type _cl_context (line 2654) | struct _cl_context
type _cl_event (line 2654) | struct _cl_event
type GLhalfARB (line 3045) | typedef unsigned short GLhalfARB;
type GLhandleARB (line 3578) | typedef unsigned int GLhandleARB;
type GLcharARB (line 3580) | typedef char GLcharARB;
type GLchar (line 3734) | typedef GLboolean (APIENTRYP PFNGLISNAMEDSTRINGARBPROC) (GLint namelen, ...
type GLsizeiptrARB (line 4152) | typedef long GLsizeiptrARB;
type GLintptrARB (line 4153) | typedef long GLintptrARB;
type GLsizeiptrARB (line 4155) | typedef ptrdiff_t GLsizeiptrARB;
type GLintptrARB (line 4156) | typedef ptrdiff_t GLintptrARB;
type GLint (line 4498) | typedef GLint GLfixed;
type GLint64EXT (line 4831) | typedef int64_t GLint64EXT;
type GLenum (line 5632) | typedef GLuint (APIENTRYP PFNGLNEWOBJECTBUFFERATIPROC) (GLsizei size, co...
type GLuint (line 7590) | typedef GLboolean (APIENTRYP PFNGLARETEXTURESRESIDENTEXTPROC) (GLsizei n...
type GLhalfNV (line 8859) | typedef unsigned short GLhalfNV;
type GLintptr (line 9743) | typedef GLintptr GLvdpauSurfaceNV;
type const (line 9750) | typedef GLvdpauSurfaceNV (APIENTRYP PFNGLVDPAUREGISTERVIDEOSURFACENVPROC...
type const (line 9751) | typedef GLvdpauSurfaceNV (APIENTRYP PFNGLVDPAUREGISTEROUTPUTSURFACENVPRO...
type GLuint (line 9976) | typedef GLboolean (APIENTRYP PFNGLAREPROGRAMSRESIDENTNVPROC) (GLsizei n,...
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_opengles2_gl2.h
type GLvoid (line 21) | typedef void GLvoid;
type GLchar (line 22) | typedef char GLchar;
type GLenum (line 23) | typedef unsigned int GLenum;
type GLboolean (line 24) | typedef unsigned char GLboolean;
type GLbitfield (line 25) | typedef unsigned int GLbitfield;
type khronos_int8_t (line 26) | typedef khronos_int8_t GLbyte;
type GLshort (line 27) | typedef short GLshort;
type GLint (line 28) | typedef int GLint;
type GLsizei (line 29) | typedef int GLsizei;
type khronos_uint8_t (line 30) | typedef khronos_uint8_t GLubyte;
type GLushort (line 31) | typedef unsigned short GLushort;
type GLuint (line 32) | typedef unsigned int GLuint;
type khronos_float_t (line 33) | typedef khronos_float_t GLfloat;
type khronos_float_t (line 34) | typedef khronos_float_t GLclampf;
type khronos_int32_t (line 35) | typedef khronos_int32_t GLfixed;
type khronos_intptr_t (line 38) | typedef khronos_intptr_t GLintptr;
type khronos_ssize_t (line 39) | typedef khronos_ssize_t GLsizeiptr;
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_opengles2_gl2ext.h
type khronos_int64_t (line 27) | typedef khronos_int64_t GLint64;
type khronos_uint64_t (line 28) | typedef khronos_uint64_t GLuint64;
type __GLsync (line 29) | struct __GLsync
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_opengles2_khrplatform.h
type khronos_int32_t (line 142) | typedef int32_t khronos_int32_t;
type khronos_uint32_t (line 143) | typedef uint32_t khronos_uint32_t;
type khronos_int64_t (line 144) | typedef int64_t khronos_int64_t;
type khronos_uint64_t (line 145) | typedef uint64_t khronos_uint64_t;
type khronos_int32_t (line 155) | typedef int32_t khronos_int32_t;
type khronos_uint32_t (line 156) | typedef uint32_t khronos_uint32_t;
type khronos_int64_t (line 157) | typedef int64_t khronos_int64_t;
type khronos_uint64_t (line 158) | typedef uint64_t khronos_uint64_t;
type __int32 (line 167) | typedef __int32 khronos_int32_t;
type khronos_uint32_t (line 168) | typedef unsigned __int32 khronos_uint32_t;
type __int64 (line 169) | typedef __int64 khronos_int64_t;
type khronos_uint64_t (line 170) | typedef unsigned __int64 khronos_uint64_t;
type khronos_int32_t (line 179) | typedef int khronos_int32_t;
type khronos_uint32_t (line 180) | typedef unsigned int khronos_uint32_t;
type khronos_int64_t (line 182) | typedef long int khronos_int64_t;
type khronos_uint64_t (line 183) | typedef unsigned long int khronos_uint64_t;
type khronos_int64_t (line 185) | typedef long long int khronos_int64_t;
type khronos_uint64_t (line 186) | typedef unsigned long long int khronos_uint64_t;
type khronos_int32_t (line 196) | typedef int khronos_int32_t;
type khronos_uint32_t (line 197) | typedef unsigned int khronos_uint32_t;
type khronos_int32_t (line 207) | typedef int32_t khronos_int32_t;
type khronos_uint32_t (line 208) | typedef uint32_t khronos_uint32_t;
type khronos_int64_t (line 209) | typedef int64_t khronos_int64_t;
type khronos_uint64_t (line 210) | typedef uint64_t khronos_uint64_t;
type khronos_int8_t (line 220) | typedef signed char khronos_int8_t;
type khronos_uint8_t (line 221) | typedef unsigned char khronos_uint8_t;
type khronos_int16_t (line 222) | typedef signed short int khronos_int16_t;
type khronos_uint16_t (line 223) | typedef unsigned short int khronos_uint16_t;
type khronos_intptr_t (line 231) | typedef signed long long int khronos_intptr_t;
type khronos_uintptr_t (line 232) | typedef unsigned long long int khronos_uintptr_t;
type khronos_ssize_t (line 233) | typedef signed long long int khronos_ssize_t;
type khronos_usize_t (line 234) | typedef unsigned long long int khronos_usize_t;
type khronos_intptr_t (line 236) | typedef signed long int khronos_intptr_t;
type khronos_uintptr_t (line 237) | typedef unsigned long int khronos_uintptr_t;
type khronos_ssize_t (line 238) | typedef signed long int khronos_ssize_t;
type khronos_usize_t (line 239) | typedef unsigned long int khronos_usize_t;
type khronos_float_t (line 246) | typedef float khronos_float_t;
type khronos_uint64_t (line 259) | typedef khronos_uint64_t khronos_utime_nanoseconds_t;
type khronos_int64_t (line 260) | typedef khronos_int64_t khronos_stime_nanoseconds_t;
type khronos_boolean_enum_t (line 276) | typedef enum {
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_pixels.h
type SDL_PixelType (line 51) | typedef enum
type SDL_BitmapOrder (line 68) | typedef enum
type SDL_PackedOrder (line 76) | typedef enum
type SDL_ArrayOrder (line 92) | typedef enum
type SDL_PackedLayout (line 104) | typedef enum
type SDL_PixelFormatEnum (line 171) | typedef enum
type SDL_Color (line 304) | typedef struct SDL_Color
type SDL_Palette (line 313) | typedef struct SDL_Palette
type SDL_PixelFormat (line 324) | typedef struct SDL_PixelFormat
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_power.h
type SDL_PowerState (line 42) | typedef enum
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_rect.h
type SDL_Point (line 48) | typedef struct SDL_Point
type SDL_FPoint (line 60) | typedef struct SDL_FPoint
type SDL_Rect (line 77) | typedef struct SDL_Rect
type SDL_FRect (line 87) | typedef struct SDL_FRect
function SDL_FORCE_INLINE (line 99) | SDL_FORCE_INLINE SDL_bool SDL_PointInRect(const SDL_Point *p, const SDL_...
function SDL_FORCE_INLINE (line 108) | SDL_FORCE_INLINE SDL_bool SDL_RectEmpty(const SDL_Rect *r)
function SDL_FORCE_INLINE (line 116) | SDL_FORCE_INLINE SDL_bool SDL_RectEquals(const SDL_Rect *a, const SDL_Re...
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_render.h
type SDL_RendererFlags (line 64) | typedef enum
type SDL_RendererInfo (line 78) | typedef struct SDL_RendererInfo
type SDL_ScaleMode (line 91) | typedef enum
type SDL_TextureAccess (line 101) | typedef enum
type SDL_TextureModulate (line 111) | typedef enum
type SDL_RendererFlip (line 121) | typedef enum
type SDL_Renderer (line 131) | struct SDL_Renderer
type SDL_Renderer (line 132) | typedef struct SDL_Renderer SDL_Renderer;
type SDL_Texture (line 137) | struct SDL_Texture
type SDL_Texture (line 138) | typedef struct SDL_Texture SDL_Texture;
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_rwops.h
type SDL_RWops (line 52) | typedef struct SDL_RWops
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_scancode.h
type SDL_Scancode (line 43) | typedef enum
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_sensor.h
type _SDL_Sensor (line 51) | struct _SDL_Sensor
type SDL_Sensor (line 52) | typedef struct _SDL_Sensor SDL_Sensor;
type Sint32 (line 60) | typedef Sint32 SDL_SensorID;
type SDL_SensorType (line 69) | typedef enum
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_shape.h
type WindowShapeMode (line 80) | typedef enum {
type SDL_WindowShapeParams (line 94) | typedef union {
type SDL_WindowShapeMode (line 101) | typedef struct SDL_WindowShapeMode {
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_stdinc.h
type SDL_bool (line 165) | typedef int SDL_bool;
type SDL_bool (line 167) | typedef enum
type Sint8 (line 179) | typedef int8_t Sint8;
type Uint8 (line 185) | typedef uint8_t Uint8;
type Sint16 (line 191) | typedef int16_t Sint16;
type Uint16 (line 197) | typedef uint16_t Uint16;
type Sint32 (line 203) | typedef int32_t Sint32;
type Uint32 (line 209) | typedef uint32_t Uint32;
type Sint64 (line 216) | typedef int64_t Sint64;
type Uint64 (line 222) | typedef uint64_t Uint64;
type SDL_DUMMY_ENUM (line 343) | typedef enum
function SDL_FORCE_INLINE (line 431) | SDL_FORCE_INLINE void SDL_memset4(void *dst, Uint32 val, size_t dwords)
type _SDL_iconv_t (line 568) | struct _SDL_iconv_t
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_surface.h
type SDL_Surface (line 70) | typedef struct SDL_Surface
type SDL_Surface (line 100) | struct SDL_Surface
type SDL_Surface (line 101) | struct SDL_Surface
type SDL_YUV_CONVERSION_MODE (line 106) | typedef enum
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_system.h
type IDirect3DDevice9 (line 60) | typedef struct IDirect3DDevice9 IDirect3DDevice9;
type SDL_WinRT_Path (line 218) | typedef enum
type SDL_WinRT_DeviceFamily (line 242) | typedef enum
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_syswm.h
type SDL_SysWMinfo (line 44) | struct SDL_SysWMinfo
type NSWindow (line 87) | typedef struct _NSWindow NSWindow;
type UIWindow (line 95) | typedef struct _UIWindow UIWindow;
type UIViewController (line 96) | typedef struct _UIViewController UIViewController;
type Uint32 (line 98) | typedef Uint32 GLuint;
type ANativeWindow (line 102) | typedef struct ANativeWindow ANativeWindow;
type SDL_SYSWM_TYPE (line 127) | typedef enum
type SDL_SysWMmsg (line 147) | struct SDL_SysWMmsg
type SDL_SysWMinfo (line 216) | struct SDL_SysWMinfo
type SDL_SysWMinfo (line 322) | typedef struct SDL_SysWMinfo SDL_SysWMinfo;
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_test_common.h
type SDLTest_CommonState (line 51) | typedef struct
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_test_crc32.h
type SDLTest_Crc32Context (line 66) | typedef struct {
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_test_harness.h
type SDLTest_TestCaseReference (line 75) | typedef struct SDLTest_TestCaseReference {
type SDLTest_TestSuiteReference (line 89) | typedef struct SDLTest_TestSuiteReference {
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_test_images.h
type SDLTest_SurfaceImage_t (line 50) | typedef struct SDLTest_SurfaceImage_s {
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_test_md5.h
type MD5UINT4 (line 68) | typedef unsigned long int MD5UINT4;
type SDLTest_Md5Context (line 71) | typedef struct {
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_test_random.h
type SDLTest_RandomContext (line 59) | typedef struct {
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_thread.h
type SDL_Thread (line 45) | struct SDL_Thread
type SDL_Thread (line 46) | typedef struct SDL_Thread SDL_Thread;
type SDL_threadID (line 49) | typedef unsigned long SDL_threadID;
type SDL_TLSID (line 52) | typedef unsigned int SDL_TLSID;
type SDL_ThreadPriority (line 64) | typedef enum {
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_timer.h
type SDL_TimerID (line 86) | typedef int SDL_TimerID;
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_touch.h
type Sint64 (line 41) | typedef Sint64 SDL_TouchID;
type Sint64 (line 42) | typedef Sint64 SDL_FingerID;
type SDL_TouchDeviceType (line 44) | typedef enum
type SDL_Finger (line 52) | typedef struct SDL_Finger
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_version.h
type SDL_version (line 51) | typedef struct SDL_version
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_video.h
type SDL_DisplayMode (line 53) | typedef struct
type SDL_Window (line 90) | typedef struct SDL_Window SDL_Window;
type SDL_WindowFlags (line 97) | typedef enum
type SDL_WindowEventID (line 146) | typedef enum
type SDL_DisplayEventID (line 175) | typedef enum
type SDL_DisplayOrientation (line 183) | typedef enum
type SDL_GLattr (line 200) | typedef enum
type SDL_GLprofile (line 231) | typedef enum
type SDL_GLcontextFlag (line 238) | typedef enum
type SDL_GLcontextReleaseFlag (line 246) | typedef enum
type SDL_GLContextResetNotification (line 252) | typedef enum
type SDL_HitTestResult (line 1026) | typedef enum
type SDL_Point (line 1045) | typedef SDL_HitTestResult (SDLCALL *SDL_HitTest)(SDL_Window *win,
FILE: windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_vulkan.h
type VkInstance (line 57) | typedef VkInstance SDL_vulkanInstance;
type VkSurfaceKHR (line 58) | typedef VkSurfaceKHR SDL_vulkanSurface;
FILE: windows/libs/SDL2-2.0.14/test/checkkeys.c
function quit (line 31) | static void
function print_string (line 38) | static void
function print_modifiers (line 57) | static void
function PrintModifierState (line 91) | static void
function PrintKey (line 105) | static void
function PrintText (line 137) | static void
function loop (line 151) | void
function main (line 198) | int
FILE: windows/libs/SDL2-2.0.14/test/controllermap.c
type SDL_GameControllerExtendedBind (line 123) | typedef struct
type AxisState (line 149) | typedef struct
function SDL_Texture (line 167) | SDL_Texture *
function StandardizeAxisValue (line 200) | static int
function SetCurrentBinding (line 212) | static void
function SDL_bool (line 239) | static SDL_bool
function ConfigureBinding (line 268) | static void
function SDL_bool (line 348) | static SDL_bool
function WatchJoystick (line 366) | static void
function main (line 713) | int
function main (line 800) | int
FILE: windows/libs/SDL2-2.0.14/test/loopwave.c
function quit (line 40) | static void
function close_audio (line 47) | static void
function open_audio (line 56) | static void
function reopen_audio (line 72) | static void reopen_audio()
function fillerup (line 79) | void SDLCALL
function loop (line 105) | void
function main (line 113) | int
FILE: windows/libs/SDL2-2.0.14/test/loopwavequeue.c
function quit (line 37) | static void
function poked (line 45) | void
function loop (line 51) | void
function main (line 74) | int
FILE: windows/libs/SDL2-2.0.14/test/nacl/background.js
function makeURL (line 5) | function makeURL(toolchain, config) {
function createWindow (line 9) | function createWindow(url) {
function onLaunched (line 18) | function onLaunched(launchData) {
FILE: windows/libs/SDL2-2.0.14/test/nacl/common.js
function isHostToolchain (line 21) | function isHostToolchain(tool) {
function mimeTypeForTool (line 32) | function mimeTypeForTool(tool) {
function browserSupportsNaCl (line 55) | function browserSupportsNaCl(tool) {
function injectScript (line 73) | function injectScript(url, onload, onerror) {
function runTests (line 89) | function runTests(moduleEl) {
function createNaClModule (line 123) | function createNaClModule(name, tool, path, width, height, attrs) {
function attachDefaultListeners (line 190) | function attachDefaultListeners() {
function handleError (line 206) | function handleError(event) {
function handleCrash (line 218) | function handleCrash(event) {
function moduleDidLoad (line 234) | function moduleDidLoad() {
function hideModule (line 251) | function hideModule() {
function removeModule (line 260) | function removeModule() {
function startsWith (line 271) | function startsWith(s, prefix) {
function logMessage (line 290) | function logMessage(message) {
function handleMessage (line 315) | function handleMessage(message_event) {
function domContentLoaded (line 348) | function domContentLoaded(name, tool, path, width, height, attrs) {
function updateStatus (line 385) | function updateStatus(opt_message) {
FILE: windows/libs/SDL2-2.0.14/test/testatomic.c
function RunBasicTest (line 36) | static
function adder (line 119) | static
function runAdder (line 133) | static
function RunEpicTest (line 158) | static
type SDL_EventQueueEntry (line 262) | typedef struct
type SDL_EventQueue (line 268) | typedef struct
function InitEventQueue (line 297) | static void InitEventQueue(SDL_EventQueue *queue)
function SDL_bool (line 314) | static SDL_bool EnqueueEvent_LockFree(SDL_EventQueue *queue, const SDL_E...
function SDL_bool (line 361) | static SDL_bool DequeueEvent_LockFree(SDL_EventQueue *queue, SDL_Event *...
function SDL_bool (line 408) | static SDL_bool EnqueueEvent_Mutex(SDL_EventQueue *queue, const SDL_Even...
function SDL_bool (line 441) | static SDL_bool DequeueEvent_Mutex(SDL_EventQueue *queue, SDL_Event *event)
type WriterData (line 479) | typedef struct
type ReaderData (line 489) | typedef struct
function FIFO_Writer (line 498) | static int SDLCALL FIFO_Writer(void* _data)
function FIFO_Reader (line 533) | static int SDLCALL FIFO_Reader(void* _data)
function FIFO_Watcher (line 573) | static int SDLCALL FIFO_Watcher(void* _data)
function RunFIFOTest (line 594) | static void RunFIFOTest(SDL_bool lock_free)
function main (line 711) | int
FILE: windows/libs/SDL2-2.0.14/test/testaudiocapture.c
function loop (line 26) | static void
function main (line 89) | int
FILE: windows/libs/SDL2-2.0.14/test/testaudiohotplug.c
function quit (line 38) | static void
function fillerup (line 45) | void SDLCALL
function poked (line 71) | void
function iteration (line 83) | static void
function loop (line 126) | void
function main (line 136) | int
FILE: windows/libs/SDL2-2.0.14/test/testaudioinfo.c
function print_devices (line 15) | static void
function main (line 40) | int
FILE: windows/libs/SDL2-2.0.14/test/testautomation.c
function quit (line 25) | static void
function main (line 32) | int
FILE: windows/libs/SDL2-2.0.14/test/testautomation_audio.c
function _audioSetUp (line 19) | void
function _audioTearDown (line 31) | void
function _audio_testCallback (line 49) | void SDLCALL _audio_testCallback(void *userdata, Uint8 *stream, int len)
function audio_quitInitAudioSubSystem (line 65) | int audio_quitInitAudioSubSystem()
function audio_initQuitAudio (line 83) | int audio_initQuitAudio()
function audio_initOpenCloseQuitAudio (line 139) | int audio_initOpenCloseQuitAudio()
function audio_pauseUnpauseAudio (line 225) | int audio_pauseUnpauseAudio()
function audio_enumerateAndNameAudioDevices (line 346) | int audio_enumerateAndNameAudioDevices()
function audio_enumerateAndNameAudioDevicesNegativeTests (line 404) | int audio_enumerateAndNameAudioDevicesNegativeTests()
function audio_printAudioDrivers (line 451) | int audio_printAudioDrivers()
function audio_printCurrentAudioDriver (line 483) | int audio_printCurrentAudioDriver()
function audio_buildAudioCVT (line 515) | int audio_buildAudioCVT()
function audio_buildAudioCVTNegative (line 579) | int audio_buildAudioCVTNegative()
function audio_getAudioStatus (line 674) | int audio_getAudioStatus()
function audio_openCloseAndGetAudioStatus (line 695) | int audio_openCloseAndGetAudioStatus()
function audio_lockUnlockOpenAudioDevice (line 754) | int audio_lockUnlockOpenAudioDevice()
function audio_convertAudio (line 817) | int audio_convertAudio()
function audio_openCloseAudioDeviceConnected (line 915) | int audio_openCloseAudioDeviceConnected()
FILE: windows/libs/SDL2-2.0.14/test/testautomation_clipboard.c
function clipboard_testHasClipboardText (line 21) | int
function clipboard_testGetClipboardText (line 37) | int
function clipboard_testSetClipboardText (line 54) | int
function clipboard_testClipboardTextFunctions (line 85) | int
FILE: windows/libs/SDL2-2.0.14/test/testautomation_events.c
function _events_sampleNullEventFilter (line 28) | int SDLCALL _events_sampleNullEventFilter(void *userdata, SDL_Event *event)
function events_pushPumpAndPollUserevent (line 48) | int
function events_addDelEventWatch (line 83) | int
function events_addDelEventWatchWithUserdata (line 133) | int
FILE: windows/libs/SDL2-2.0.14/test/testautomation_hints.c
function hints_getHint (line 75) | int
function hints_setHint (line 100) | int
FILE: windows/libs/SDL2-2.0.14/test/testautomation_keyboard.c
function keyboard_getKeyboardState (line 21) | int
function keyboard_getKeyboardFocus (line 47) | int
function keyboard_getKeyFromName (line 64) | int
function _checkInvalidScancodeError (line 110) | void
function keyboard_getKeyFromScancode (line 131) | int
function keyboard_getKeyName (line 170) | int
function keyboard_getScancodeNameNegative (line 226) | int
function keyboard_getKeyNameNegative (line 253) | int
function keyboard_getSetModState (line 291) | int
function keyboard_startStopTextInput (line 352) | int
function _testSetTextInputRect (line 379) | void _testSetTextInputRect(SDL_Rect refRect)
function keyboard_setTextInputRect (line 398) | int
function keyboard_setTextInputRectNegative (line 478) | int
function keyboard_getScancodeFromKey (line 517) | int
function keyboard_getScancodeFromName (line 541) | int
function _checkInvalidNameError (line 592) | void
function keyboard_getScancodeFromNameNegative (line 614) | int
FILE: windows/libs/SDL2-2.0.14/test/testautomation_main.c
function main_testInitQuitJoystickHaptic (line 19) | static int main_testInitQuitJoystickHaptic (void *arg)
function main_testInitQuitSubSystem (line 47) | static int main_testInitQuitSubSystem (void *arg)
function main_testImpliedJoystickInit (line 75) | static int main_testImpliedJoystickInit (void *arg)
function main_testImpliedJoystickQuit (line 100) | static int main_testImpliedJoystickQuit (void *arg)
FILE: windows/libs/SDL2-2.0.14/test/testautomation_mouse.c
function _mouseStateCheck (line 16) | int _mouseStateCheck(Uint32 state)
function mouse_getMouseState (line 30) | int
function mouse_getRelativeMouseState (line 76) | int
function SDL_Cursor (line 157) | static SDL_Cursor *_initArrowCursor(const char *image[])
function mouse_createFreeCursor (line 198) | int
function mouse_createFreeColorCursor (line 224) | int
function _changeCursorVisibility (line 255) | void _changeCursorVisibility(int state)
function mouse_showCursor (line 280) | int
function mouse_setCursor (line 310) | int
function mouse_getCursor (line 343) | int
function mouse_getSetRelativeMouseMode (line 362) | int
function SDL_Window (line 418) | SDL_Window *_createMouseSuiteTestWindow()
function _destroyMouseSuiteTestWindow (line 431) | void _destroyMouseSuiteTestWindow(SDL_Window *window)
function mouse_warpMouseInWindow (line 445) | int
function mouse_getMouseFocus (line 507) | int
FILE: windows/libs/SDL2-2.0.14/test/testautomation_pixels.c
function pixels_allocFreeFormat (line 127) | int
function pixels_getPixelFormatName (line 233) | int
function pixels_allocFreePalette (line 318) | int
function pixels_calcGammaRamp (line 407) | int
FILE: windows/libs/SDL2-2.0.14/test/testautomation_platform.c
function _compareSizeOfType (line 22) | static int _compareSizeOfType( size_t sizeoftype, size_t hardcodetype )
function platform_testTypes (line 32) | int platform_testTypes(void *arg)
function platform_testEndianessAndSwap (line 54) | int platform_testEndianessAndSwap(void *arg)
function platform_testGetFunctions (line 110) | int platform_testGetFunctions (void *arg)
function platform_testHasFunctions (line 164) | int platform_testHasFunctions (void *arg)
function platform_testGetVersion (line 208) | int platform_testGetVersion(void *arg)
function platform_testSDLVersion (line 231) | int platform_testSDLVersion(void *arg)
function platform_testDefaultInit (line 254) | int platform_testDefaultInit(void *arg)
function platform_testGetSetClearError (line 280) | int platform_testGetSetClearError(void *arg)
function platform_testSetErrorEmptyInput (line 332) | int platform_testSetErrorEmptyInput(void *arg)
function platform_testSetErrorInvalidInput (line 370) | int platform_testSetErrorInvalidInput(void *arg)
function platform_testGetPowerInfo (line 453) | int platform_testGetPowerInfo(void *arg)
FILE: windows/libs/SDL2-2.0.14/test/testautomation_rect.c
function _validateIntersectRectAndLineResults (line 18) | void _validateIntersectRectAndLineResults(
function rect_testIntersectRectAndLine (line 48) | int
function rect_testIntersectRectAndLineInside (line 119) | int
function rect_testIntersectRectAndLineOutside (line 186) | int
function rect_testIntersectRectAndLineEmpty (line 241) | int
function rect_testIntersectRectAndLineParam (line 276) | int
function _validateHasIntersectionResults (line 308) | void _validateHasIntersectionResults(
function _validateIntersectRectResults (line 331) | void _validateIntersectRectResults(
function _validateUnionRectResults (line 350) | void _validateUnionRectResults(
function _validateRectEmptyResults (line 373) | void _validateRectEmptyResults(
function _validateRectEqualsResults (line 391) | void _validateRectEqualsResults(
function rect_testIntersectRectInside (line 417) | int rect_testIntersectRectInside (void *arg)
function rect_testIntersectRectOutside (line 445) | int rect_testIntersectRectOutside (void *arg)
function rect_testIntersectRectPartial (line 473) | int rect_testIntersectRectPartial (void *arg)
function rect_testIntersectRectPoint (line 562) | int rect_testIntersectRectPoint (void *arg)
function rect_testIntersectRectEmpty (line 609) | int rect_testIntersectRectEmpty (void *arg)
function rect_testIntersectRectParam (line 681) | int rect_testIntersectRectParam(void *arg)
function rect_testHasIntersectionInside (line 711) | int rect_testHasIntersectionInside (void *arg)
function rect_testHasIntersectionOutside (line 738) | int rect_testHasIntersectionOutside (void *arg)
function rect_testHasIntersectionPartial (line 765) | int rect_testHasIntersectionPartial (void *arg)
function rect_testHasIntersectionPoint (line 832) | int rect_testHasIntersectionPoint (void *arg)
function rect_testHasIntersectionEmpty (line 878) | int rect_testHasIntersectionEmpty (void *arg)
function rect_testHasIntersectionParam (line 936) | int rect_testHasIntersectionParam(void *arg)
function rect_testEnclosePoints (line 959) | int rect_testEnclosePoints(void *arg)
function rect_testEnclosePointsRepeatedInput (line 1029) | int rect_testEnclosePointsRepeatedInput(void *arg)
function rect_testEnclosePointsWithClipping (line 1105) | int rect_testEnclosePointsWithClipping(void *arg)
function rect_testEnclosePointsParam (line 1204) | int rect_testEnclosePointsParam(void *arg)
function rect_testUnionRectOutside (line 1232) | int rect_testUnionRectOutside(void *arg)
function rect_testUnionRectEmpty (line 1303) | int rect_testUnionRectEmpty(void *arg)
function rect_testUnionRectInside (line 1368) | int rect_testUnionRectInside(void *arg)
function rect_testUnionRectParam (line 1432) | int rect_testUnionRectParam(void *arg)
function rect_testRectEmpty (line 1460) | int rect_testRectEmpty(void *arg)
function rect_testRectEmptyParam (line 1503) | int rect_testRectEmptyParam(void *arg)
function rect_testRectEquals (line 1520) | int rect_testRectEquals(void *arg)
function rect_testRectEqualsParam (line 1550) | int rect_testRectEqualsParam(void *arg)
FILE: windows/libs/SDL2-2.0.14/test/testautomation_render.c
function InitCreateRenderer (line 43) | void InitCreateRenderer(void *arg)
function CleanupDestroyRenderer (line 66) | void CleanupDestroyRenderer(void *arg)
function render_testGetNumRenderDrivers (line 88) | int
function render_testPrimitives (line 107) | int render_testPrimitives (void *arg)
function render_testPrimitivesBlend (line 213) | int render_testPrimitivesBlend (void *arg)
function render_testBlit (line 361) | int
function render_testBlitColor (line 431) | int
function render_testBlitAlpha (line 505) | int
function _testBlitBlendMode (line 582) | static void
function render_testBlitBlend (line 634) | int
function _isSupported (line 772) | static int
function _hasDrawColor (line 785) | static int
function _hasBlendModes (line 823) | static int
function SDL_Texture (line 879) | static SDL_Texture *
function _hasTexColor (line 909) | static int
function _hasTexAlpha (line 949) | static int
function _compare (line 991) | static void
function _clearScreen (line 1035) | static int
FILE: windows/libs/SDL2-2.0.14/test/testautomation_rwops.c
function RWopsSetUp (line 32) | void
function RWopsTearDown (line 72) | void
function _testGenericRWopsValidations (line 94) | void
function rwops_testParamNegative (line 174) | int
function rwops_testMem (line 221) | int
function rwops_testConstMem (line 261) | int
function rwops_testFileRead (line 297) | int
function rwops_testFileWrite (line 344) | int
function rwops_testFPRead (line 393) | int
function rwops_testFPWrite (line 443) | int
function rwops_testAllocFree (line 490) | int
function rwops_testCompareRWFromMemWithRWFromFile (line 517) | int
function rwops_testFileWriteReadEndian (line 586) | int
FILE: windows/libs/SDL2-2.0.14/test/testautomation_sdltest.c
function sdltest_generateRunSeed (line 33) | int
function sdltest_getFuzzerInvocationCount (line 64) | int
function sdltest_randomNumber (line 88) | int
function sdltest_randomBoundaryNumberUint8 (line 157) | int
function sdltest_randomBoundaryNumberUint16 (line 267) | int
function sdltest_randomBoundaryNumberUint32 (line 377) | int
function sdltest_randomBoundaryNumberUint64 (line 487) | int
function sdltest_randomBoundaryNumberSint8 (line 597) | int
function sdltest_randomBoundaryNumberSint16 (line 707) | int
function sdltest_randomBoundaryNumberSint32 (line 817) | int
function sdltest_randomBoundaryNumberSint64 (line 934) | int
function sdltest_randomIntegerInRange (line 1044) | int
function sdltest_randomAsciiString (line 1119) | int
function sdltest_randomAsciiStringWithMaximumLength (line 1153) | int
function sdltest_randomAsciiStringOfSize (line 1206) | int
FILE: windows/libs/SDL2-2.0.14/test/testautomation_stdlib.c
function stdlib_strlcpy (line 17) | int
function stdlib_snprintf (line 43) | int
function stdlib_getsetenv (line 125) | int
function stdlib_sscanf (line 260) | int
FILE: windows/libs/SDL2-2.0.14/test/testautomation_surface.c
function _surfaceSetUp (line 38) | void
function _surfaceTearDown (line 70) | void
function _clearTestSurface (line 82) | void _clearTestSurface()
function _testBlitBlendMode (line 98) | void _testBlitBlendMode(int mode)
function _AssertFileExist (line 204) | void
function surface_testSaveLoadBitmap (line 219) | int
function surface_testSurfaceConversion (line 265) | int
function surface_testCompleteSurfaceConversion (line 306) | int
function surface_testLoadFailure (line 397) | int
function surface_testBlit (line 409) | int
function surface_testBlitColorMod (line 432) | int
function surface_testBlitAlphaMod (line 455) | int
function surface_testBlitBlendNone (line 479) | int
function surface_testBlitBlendBlend (line 502) | int
function surface_testBlitBlendAdd (line 525) | int
function surface_testBlitBlendMod (line 548) | int
function surface_testBlitBlendLoop (line 571) | int
FILE: windows/libs/SDL2-2.0.14/test/testautomation_syswm.c
function syswm_getWindowWMInfo (line 16) | int
FILE: windows/libs/SDL2-2.0.14/test/testautomation_timer.c
function _timerSetUp (line 21) | void
function timer_getPerformanceCounter (line 38) | int
function timer_getPerformanceFrequency (line 53) | int
function timer_delayAndGetTicks (line 68) | int
function Uint32 (line 107) | Uint32 SDLCALL _timerTestCallback(Uint32 interval, void *param)
function timer_addRemoveTimer (line 124) | int
FILE: windows/libs/SDL2-2.0.14/test/testautomation_video.c
function SDL_Window (line 26) | SDL_Window *_createVideoSuiteTestWindow(const char *title)
function _destroyVideoSuiteTestWindow (line 49) | void _destroyVideoSuiteTestWindow(SDL_Window *window)
function video_enableDisableScreensaver (line 63) | int
function video_createWindowVariousPositions (line 115) | int
function video_createWindowVariousSizes (line 196) | int
function video_createWindowVariousFlags (line 253) | int
function video_getWindowFlags (line 330) | int
function video_getNumDisplayModes (line 358) | int
function video_getNumDisplayModesNegative (line 382) | int
function video_getClosestDisplayModeCurrentResolution (line 416) | int
function video_getClosestDisplayModeRandomResolution (line 472) | int
function video_getWindowBrightness (line 513) | int
function video_getWindowBrightnessNegative (line 539) | int
function video_getWindowDisplayMode (line 568) | int
function _checkInvalidWindowError (line 599) | void _checkInvalidWindowError()
function video_getWindowDisplayModeNegative (line 622) | int
function video_getWindowGammaRamp (line 666) | int
function video_getWindowGammaRampNegative (line 727) | int
function _setAndCheckWindowGrabState (line 748) | void
function video_getSetWindowGrab (line 773) | int
function video_getWindowId (line 842) | int
function video_getWindowPixelFormat (line 897) | int
function video_getSetWindowPosition (line 932) | int
function _checkInvalidParameterError (line 1051) | void _checkInvalidParameterError()
function video_getSetWindowSize (line 1075) | int
function video_getSetWindowMinimumSize (line 1237) | int
function video_getSetWindowMaximumSize (line 1376) | int
function video_getSetWindowData (line 1514) | int
FILE: windows/libs/SDL2-2.0.14/test/testbounds.c
function main (line 15) | int main(int argc, char **argv)
FILE: windows/libs/SDL2-2.0.14/test/testcustomcursor.c
function SDL_Cursor (line 70) | static SDL_Cursor*
function SDL_Cursor (line 100) | static SDL_Cursor*
function quit (line 142) | static void
function loop (line 149) | void
function main (line 183) | int
FILE: windows/libs/SDL2-2.0.14/test/testdisplayinfo.c
function print_mode (line 20) | static void
function main (line 31) | int
FILE: windows/libs/SDL2-2.0.14/test/testdraw2.c
function DrawPoints (line 38) | void
function DrawLines (line 81) | void
function DrawRects (line 133) | void
function loop (line 178) | void
function main (line 208) | int
FILE: windows/libs/SDL2-2.0.14/test/testdrawchessboard.c
function DrawChessBoard (line 31) | void
function loop (line 58) | void
function main (line 100) | int
FILE: windows/libs/SDL2-2.0.14/test/testdropfile.c
function quit (line 21) | static void
function main (line 28) | int
FILE: windows/libs/SDL2-2.0.14/test/testerror.c
function quit (line 23) | static void
function ThreadFunc (line 30) | int SDLCALL
function main (line 44) | int
FILE: windows/libs/SDL2-2.0.14/test/testevdev.c
type GuessTest (line 48) | typedef struct
function run_test (line 945) | static int
function run_test (line 1018) | static int
function main (line 1027) | int
FILE: windows/libs/SDL2-2.0.14/test/testfile.c
function cleanup (line 43) | static void
function rwops_error_quit (line 50) | static void
function main (line 65) | int
FILE: windows/libs/SDL2-2.0.14/test/testfilesystem.c
function main (line 17) | int
FILE: windows/libs/SDL2-2.0.14/test/testgamecontroller.c
function UpdateWindowTitle (line 74) | static void UpdateWindowTitle()
function FindController (line 105) | static int FindController(SDL_JoystickID controller_id)
function AddController (line 117) | static void AddController(int device_index, SDL_bool verbose)
function SetController (line 172) | static void SetController(SDL_JoystickID controller)
function DelController (line 186) | static void DelController(SDL_JoystickID controller)
function SDL_Texture (line 209) | static SDL_Texture *
function Uint16 (line 237) | static Uint16 ConvertAxisToRumble(Sint16 axis)
function loop (line 248) | void
function main (line 418) | int
function main (line 566) | int
FILE: windows/libs/SDL2-2.0.14/test/testgesture.c
type Point (line 44) | typedef struct
type Knob (line 49) | typedef struct
function setpix (line 58) | static void
function drawLine (line 93) | static void
function drawCircle (line 102) | static void
function drawKnob (line 119) | static void
function DrawScreen (line 127) | static void
function loop (line 171) | static void
function main (line 269) | int main(int argc, char* argv[])
FILE: windows/libs/SDL2-2.0.14/test/testgl2.c
type GL_Context (line 27) | typedef struct GL_Context
function LoadContext (line 42) | static int LoadContext(GL_Context * data)
function quit (line 71) | static void
function Render (line 82) | static void
function main (line 210) | int
function main (line 433) | int
FILE: windows/libs/SDL2-2.0.14/test/testgles.c
function quit (line 32) | static void
function Render (line 51) | static void
function main (line 102) | int
function main (line 346) | int
FILE: windows/libs/SDL2-2.0.14/test/testgles2.c
type GLES2_Context (line 32) | typedef struct GLES2_Context
function LoadContext (line 45) | static int LoadContext(GLES2_Context * data)
function quit (line 73) | static void
function rotate_matrix (line 106) | static void
function perspective_matrix (line 146) | static void
function multiply_matrix (line 170) | static void
function process_shader (line 198) | void
type shader_data (line 364) | typedef struct shader_data
function Render (line 375) | static void
function loop (line 420) | void loop()
function main (line 477) | int
function main (line 723) | int
FILE: windows/libs/SDL2-2.0.14/test/testhaptic.c
function main (line 40) | int
function abort_execution (line 301) | static void
function HapticPrintSupported (line 316) | static void
function main (line 362) | int
FILE: windows/libs/SDL2-2.0.14/test/testhittesting.c
function SDL_HitTestResult (line 17) | static SDL_HitTestResult SDLCALL
function main (line 60) | int main(int argc, char **argv)
FILE: windows/libs/SDL2-2.0.14/test/testhotplug.c
function main (line 23) | int
function main (line 155) | int
FILE: windows/libs/SDL2-2.0.14/test/testiconv.c
function widelen (line 17) | static size_t
function main (line 28) | int
FILE: windows/libs/SDL2-2.0.14/test/testime.c
type UnifontGlyph (line 62) | struct UnifontGlyph {
function Uint8 (line 71) | static Uint8 dehex(char c)
function Uint8 (line 82) | static Uint8 dehex2(char c1, char c2)
function Uint8 (line 87) | static Uint8 validate_hex(const char *cp, size_t len, Uint32 *np)
function unifont_init (line 102) | static int unifont_init(const char *fontname)
function unifont_make_rgba (line 227) | static void unifont_make_rgba(Uint8 *src, Uint8 *dst, Uint8 width)
function unifont_load_texture (line 263) | static int unifont_load_texture(Uint32 textureID)
function Sint32 (line 320) | static Sint32 unifont_draw_glyph(Uint32 codepoint, int rendererID, SDL_R...
function unifont_cleanup (line 345) | static void unifont_cleanup()
function utf8_length (line 371) | size_t utf8_length(unsigned char c)
function Uint32 (line 412) | Uint32 utf8_decode(char *p, size_t len)
function usage (line 436) | void usage()
function InitInput (line 441) | void InitInput()
function CleanupVideo (line 455) | void CleanupVideo()
function _Redraw (line 466) | void _Redraw(int rendererID)
function Redraw (line 615) | void Redraw()
function main (line 632) | int main(int argc, char *argv[])
FILE: windows/libs/SDL2-2.0.14/test/testintersections.c
function DrawPoints (line 40) | void
function add_line (line 86) | static int
function DrawLines (line 104) | void
function add_rect (line 130) | static int
function DrawRects (line 154) | static void
function DrawRectLineIntersections (line 161) | static void
function DrawRectRectIntersections (line 185) | static void
function loop (line 201) | void
function main (line 267) | int
FILE: windows/libs/SDL2-2.0.14/test/testjoystick.c
function PrintJoystick (line 40) | static void
function DrawRect (line 92) | static void
function loop (line 99) | void
function main (line 264) | int
function main (line 317) | int
FILE: windows/libs/SDL2-2.0.14/test/testkeys.c
function main (line 22) | int
FILE: windows/libs/SDL2-2.0.14/test/testloadso.c
function main (line 24) | int
FILE: windows/libs/SDL2-2.0.14/test/testlocale.c
function log_locales (line 17) | static void log_locales(void)
function main (line 36) | int main(int argc, char **argv)
FILE: windows/libs/SDL2-2.0.14/test/testlock.c
function SDL_Quit_Wrapper (line 32) | static void
function printid (line 38) | void
function terminate (line 44) | void
function closemutex (line 51) | void
function Run (line 64) | int SDLCALL
function main (line 92) | int
FILE: windows/libs/SDL2-2.0.14/test/testmessage.c
function quit (line 21) | static void
function button_messagebox (line 28) | static int SDLCALL
function main (line 83) | int
FILE: windows/libs/SDL2-2.0.14/test/testmultiaudio.c
type callback_data (line 24) | typedef struct
function play_through_once (line 33) | void SDLCALL
function loop (line 53) | void
function test_multi_audio (line 67) | static void
function main (line 163) | int
FILE: windows/libs/SDL2-2.0.14/test/testnative.c
function quit (line 45) | static void
function SDL_Texture (line 55) | SDL_Texture *
function MoveSprites (line 86) | void
function main (line 125) | int
FILE: windows/libs/SDL2-2.0.14/test/testnative.h
type NativeWindowFactory (line 22) | typedef struct
FILE: windows/libs/SDL2-2.0.14/test/testnativeos2.c
function DestroyWindowNative (line 54) | static void DestroyWindowNative(void *window)
FILE: windows/libs/SDL2-2.0.14/test/testnativew32.c
function LRESULT (line 26) | LRESULT CALLBACK
function DestroyWindowNative (line 80) | static void
FILE: windows/libs/SDL2-2.0.14/test/testnativex11.c
function DestroyWindowX11 (line 44) | static void
FILE: windows/libs/SDL2-2.0.14/test/testoffscreen.c
function draw (line 35) | void
function save_surface_to_bmp (line 54) | void
function loop (line 76) | void
function main (line 100) | int
FILE: windows/libs/SDL2-2.0.14/test/testoverlay2.c
function quit (line 155) | static void
function PrintUsage (line 162) | static void
function loop (line 179) | void
function main (line 237) | int
FILE: windows/libs/SDL2-2.0.14/test/testplatform.c
function badsize (line 22) | static int
function TestTypes (line 28) | int
function TestEndian (line 83) | int
function TST_allmul (line 151) | static int TST_allmul (void *a, void *b, int arg, void *result, void *ex...
function TST_alldiv (line 157) | static int TST_alldiv (void *a, void *b, int arg, void *result, void *ex...
function TST_allrem (line 163) | static int TST_allrem (void *a, void *b, int arg, void *result, void *ex...
function TST_ualldiv (line 169) | static int TST_ualldiv (void *a, void *b, int arg, void *result, void *e...
function TST_uallrem (line 175) | static int TST_uallrem (void *a, void *b, int arg, void *result, void *e...
function TST_allshl (line 181) | static int TST_allshl (void *a, void *b, int arg, void *result, void *ex...
function TST_aullshl (line 187) | static int TST_aullshl (void *a, void *b, int arg, void *result, void *e...
function TST_allshr (line 193) | static int TST_allshr (void *a, void *b, int arg, void *result, void *ex...
function TST_aullshr (line 199) | static int TST_aullshr (void *a, void *b, int arg, void *result, void *e...
type LL_Test (line 208) | typedef struct {
function Test64Bit (line 341) | int
function TestCPUInfo (line 366) | int
function TestAssertions (line 390) | int
function main (line 419) | int
FILE: windows/libs/SDL2-2.0.14/test/testpower.c
function report_power (line 17) | static void
function main (line 63) | int
FILE: windows/libs/SDL2-2.0.14/test/testqsort.c
function num_compare (line 15) | static int
function test_sort (line 23) | static void
function main (line 44) | int
FILE: windows/libs/SDL2-2.0.14/test/testrelative.c
function DrawRects (line 30) | static void
function loop (line 37) | static void
function main (line 77) | int
FILE: windows/libs/SDL2-2.0.14/test/testrendercopyex.c
type DrawState (line 27) | typedef struct {
function quit (line 40) | static void
function SDL_Texture (line 47) | SDL_Texture *
function Draw (line 97) | void
function loop (line 140) | void loop()
function main (line 162) | int
FILE: windows/libs/SDL2-2.0.14/test/testrendertarget.c
type DrawState (line 27) | typedef struct {
function quit (line 41) | static void
function SDL_Texture (line 48) | SDL_Texture *
function SDL_bool (line 98) | SDL_bool
function SDL_bool (line 181) | SDL_bool
function loop (line 225) | void
function main (line 251) | int
FILE: windows/libs/SDL2-2.0.14/test/testresample.c
function main (line 15) | int
FILE: windows/libs/SDL2-2.0.14/test/testrumble.c
function main (line 44) | int
function main (line 146) | int
FILE: windows/libs/SDL2-2.0.14/test/testscale.c
type DrawState (line 29) | typedef struct {
function quit (line 42) | static void
function SDL_Texture (line 49) | SDL_Texture *
function Draw (line 99) | void
function loop (line 130) | void
function main (line 152) | int
FILE: windows/libs/SDL2-2.0.14/test/testsem.c
function ThreadFunc (line 26) | int SDLCALL
function killed (line 44) | static void
function TestWaitTimeout (line 50) | static void
function main (line 78) | int
FILE: windows/libs/SDL2-2.0.14/test/testsensor.c
function HandleSensorEvent (line 37) | static void HandleSensorEvent(SDL_SensorEvent *event)
function main (line 58) | int
FILE: windows/libs/SDL2-2.0.14/test/testshader.c
type ShaderData (line 31) | typedef struct {
function SDL_bool (line 127) | static SDL_bool CompileShader(GLhandleARB shader, const char *source)
function SDL_bool (line 150) | static SDL_bool CompileShaderProgram(ShaderData *data)
function DestroyShaderProgram (line 193) | static void DestroyShaderProgram(ShaderData *data)
function SDL_bool (line 202) | static SDL_bool InitShaders()
function QuitShaders (line 256) | static void QuitShaders()
function power_of_two (line 266) | static int
function GLuint (line 277) | GLuint
function InitGL (line 335) | void InitGL(int Width, int Height) /* We call this ri...
function DrawGLScene (line 356) | void DrawGLScene(SDL_Window *window, GLuint texture, GLfloat * texcoord)
function main (line 416) | int main(int argc, char **argv)
function main (line 491) | int
FILE: windows/libs/SDL2-2.0.14/test/testshape.c
type LoadedPicture (line 22) | typedef struct LoadedPicture {
function render (line 29) | void render(SDL_Renderer *renderer,SDL_Texture *texture,SDL_Rect texture...
function main (line 41) | int main(int argc,char** argv)
FILE: windows/libs/SDL2-2.0.14/test/testsprite2.c
function quit (line 50) | static void
function LoadSprite (line 60) | int
function MoveSprites (line 117) | void
function loop (line 246) | void
function main (line 281) | int
FILE: windows/libs/SDL2-2.0.14/test/testspriteminimal.c
function quit (line 38) | static void
function LoadSprite (line 45) | int
function MoveSprites (line 94) | void
function loop (line 129) | void loop()
function main (line 147) | int
FILE: windows/libs/SDL2-2.0.14/test/teststreaming.c
function quit (line 64) | void quit(int rc)
function UpdateTexture (line 70) | void UpdateTexture(SDL_Texture *texture, int frame)
function loop (line 94) | void
function main (line 126) | int
FILE: windows/libs/SDL2-2.0.14/test/testthread.c
function quit (line 26) | static void
function ThreadFunc (line 47) | int SDLCALL
function killed (line 70) | static void
function main (line 79) | int
FILE: windows/libs/SDL2-2.0.14/test/testtimer.c
function Uint32 (line 26) | static Uint32 SDLCALL
function Uint32 (line 33) | static Uint32 SDLCALL
function main (line 40) | int
FILE: windows/libs/SDL2-2.0.14/test/testurl.c
function main (line 14) | int main(int argc, char **argv)
FILE: windows/libs/SDL2-2.0.14/test/testver.c
function main (line 23) | int
FILE: windows/libs/SDL2-2.0.14/test/testviewport.c
function quit (line 38) | static void
function LoadSprite (line 45) | int
function DrawOnViewport (line 94) | void
function loop (line 148) | void
function main (line 197) | int
FILE: windows/libs/SDL2-2.0.14/test/testvulkan.c
function main (line 21) | int main(int argc, char *argv[])
type VulkanContext (line 175) | typedef struct VulkanContext
function quit (line 210) | static void quit(int rc)
function loadGlobalFunctions (line 217) | static void loadGlobalFunctions(void)
function createInstance (line 244) | static void createInstance(void)
function loadInstanceFunctions (line 292) | static void loadInstanceFunctions(void)
function createSurface (line 310) | static void createSurface(void)
function findPhysicalDevice (line 323) | static void findPhysicalDevice(void)
function createDevice (line 496) | static void createDevice(void)
function loadDeviceFunctions (line 528) | static void loadDeviceFunctions(void)
function getQueues (line 548) | static void getQueues(void)
function createSemaphore (line 563) | static void createSemaphore(VkSemaphore *semaphore)
function createSemaphores (line 580) | static void createSemaphores(void)
function getSurfaceCaps (line 586) | static void getSurfaceCaps(void)
function getSurfaceFormats (line 607) | static void getSurfaceFormats(void)
function getSwapchainImages (line 648) | static void getSwapchainImages(void)
function SDL_bool (line 686) | static SDL_bool createSwapchain(void)
function destroySwapchain (line 757) | static void destroySwapchain(void)
function destroyCommandBuffers (line 766) | static void destroyCommandBuffers(void)
function destroyCommandPool (line 777) | static void destroyCommandPool(void)
function createCommandPool (line 784) | static void createCommandPool(void)
function createCommandBuffers (line 805) | static void createCommandBuffers(void)
function createFences (line 829) | static void createFences(void)
function destroyFences (line 864) | static void destroyFences(void)
function recordPipelineImageBarrier (line 878) | static void recordPipelineImageBarrier(VkCommandBuffer commandBuffer,
function rerecordCommandBuffer (line 911) | static void rerecordCommandBuffer(uint32_t frameIndex, const VkClearColo...
function destroySwapchainAndSwapchainSpecificStuff (line 965) | static void destroySwapchainAndSwapchainSpecificStuff(SDL_bool doDestroy...
function SDL_bool (line 974) | static SDL_bool createNewSwapchainAndSwapchainSpecificStuff(void)
function initVulkan (line 987) | static void initVulkan(void)
function shutdownVulkan (line 1003) | static void shutdownVulkan(void)
function SDL_bool (line 1022) | static SDL_bool render(void)
function main (line 1118) | int main(int argc, char *argv[])
FILE: windows/libs/SDL2-2.0.14/test/testwm2.c
function quit (line 43) | static void
function loop (line 50) | void
function main (line 117) | int
FILE: windows/libs/SDL2-2.0.14/test/testyuv.c
function SDL_bool (line 26) | static SDL_bool is_packed_yuv_format(Uint32 format)
function SDL_Surface (line 34) | static SDL_Surface *generate_test_pattern(int pattern_size)
function SDL_bool (line 74) | static SDL_bool verify_yuv_data(Uint32 format, const Uint8 *yuv, int yuv...
function run_automated_tests (line 114) | static int run_automated_tests(int pattern_size, int extra_pitch)
function main (line 219) | int
FILE: windows/libs/SDL2-2.0.14/test/testyuv_cvt.c
function clip3 (line 18) | static float clip3(float x, float y, float z)
function RGBtoYUV (line 23) | static void RGBtoYUV(Uint8 * rgb, int *yuv, SDL_YUV_CONVERSION_MODE mode...
function ConvertRGBtoPlanar2x2 (line 76) | static void ConvertRGBtoPlanar2x2(Uint32 format, Uint8 *src, int pitch, ...
function ConvertRGBtoPacked4 (line 192) | static void ConvertRGBtoPacked4(Uint32 format, Uint8 *src, int pitch, Ui...
function SDL_bool (line 262) | SDL_bool ConvertRGBtoYUV(Uint32 format, Uint8 *src, int pitch, Uint8 *ou...
function CalculateYUVPitch (line 282) | int CalculateYUVPitch(Uint32 format, int width)
FILE: windows/libs/SDL2-2.0.14/test/torturethread.c
function quit (line 27) | static void
function SubThreadFunc (line 34) | int SDLCALL
function ThreadFunc (line 43) | int SDLCALL
function main (line 76) | int
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_assert.h
type SDL_AssertState (line 104) | typedef enum
type SDL_AssertData (line 113) | typedef struct SDL_AssertData
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_atomic.h
type SDL_SpinLock (line 89) | typedef int SDL_SpinLock;
type SDL_atomic_t (line 216) | typedef struct { int value; } SDL_atomic_t;
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_audio.h
type Uint16 (line 64) | typedef Uint16 SDL_AudioFormat;
type SDL_AudioSpec (line 178) | typedef struct SDL_AudioSpec
type SDL_AudioCVT (line 192) | struct SDL_AudioCVT
type SDL_AudioCVT (line 193) | struct SDL_AudioCVT
type SDL_AUDIOCVT_PACKED (line 226) | typedef struct SDL_AudioCVT
type Uint32 (line 330) | typedef Uint32 SDL_AudioDeviceID;
type SDL_AudioStatus (line 395) | typedef enum
type _SDL_AudioStream (line 531) | struct _SDL_AudioStream
type SDL_AudioStream (line 532) | typedef struct _SDL_AudioStream SDL_AudioStream;
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_bits.h
function SDL_FORCE_INLINE (line 60) | SDL_FORCE_INLINE int
function SDL_FORCE_INLINE (line 104) | SDL_FORCE_INLINE SDL_bool
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_blendmode.h
type SDL_BlendMode (line 40) | typedef enum
type SDL_BlendOperation (line 65) | typedef enum
type SDL_BlendFactor (line 78) | typedef enum
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_egl.h
type khronos_int32_t (line 177) | typedef int32_t khronos_int32_t;
type khronos_uint32_t (line 178) | typedef uint32_t khronos_uint32_t;
type khronos_int64_t (line 179) | typedef int64_t khronos_int64_t;
type khronos_uint64_t (line 180) | typedef uint64_t khronos_uint64_t;
type khronos_int32_t (line 190) | typedef int32_t khronos_int32_t;
type khronos_uint32_t (line 191) | typedef uint32_t khronos_uint32_t;
type khronos_int64_t (line 192) | typedef int64_t khronos_int64_t;
type khronos_uint64_t (line 193) | typedef uint64_t khronos_uint64_t;
type __int32 (line 202) | typedef __int32 khronos_int32_t;
type khronos_uint32_t (line 203) | typedef unsigned __int32 khronos_uint32_t;
type __int64 (line 204) | typedef __int64 khronos_int64_t;
type khronos_uint64_t (line 205) | typedef unsigned __int64 khronos_uint64_t;
type khronos_int32_t (line 214) | typedef int khronos_int32_t;
type khronos_uint32_t (line 215) | typedef unsigned int khronos_uint32_t;
type khronos_int64_t (line 217) | typedef long int khronos_int64_t;
type khronos_uint64_t (line 218) | typedef unsigned long int khronos_uint64_t;
type khronos_int64_t (line 220) | typedef long long int khronos_int64_t;
type khronos_uint64_t (line 221) | typedef unsigned long long int khronos_uint64_t;
type khronos_int32_t (line 231) | typedef int khronos_int32_t;
type khronos_uint32_t (line 232) | typedef unsigned int khronos_uint32_t;
type khronos_int32_t (line 242) | typedef int32_t khronos_int32_t;
type khronos_uint32_t (line 243) | typedef uint32_t khronos_uint32_t;
type khronos_int64_t (line 244) | typedef int64_t khronos_int64_t;
type khronos_uint64_t (line 245) | typedef uint64_t khronos_uint64_t;
type khronos_int8_t (line 255) | typedef signed char khronos_int8_t;
type khronos_uint8_t (line 256) | typedef unsigned char khronos_uint8_t;
type khronos_int16_t (line 257) | typedef signed short int khronos_int16_t;
type khronos_uint16_t (line 258) | typedef unsigned short int khronos_uint16_t;
type khronos_intptr_t (line 266) | typedef signed long long int khronos_intptr_t;
type khronos_uintptr_t (line 267) | typedef unsigned long long int khronos_uintptr_t;
type khronos_ssize_t (line 268) | typedef signed long long int khronos_ssize_t;
type khronos_usize_t (line 269) | typedef unsigned long long int khronos_usize_t;
type khronos_intptr_t (line 271) | typedef signed long int khronos_intptr_t;
type khronos_uintptr_t (line 272) | typedef unsigned long int khronos_uintptr_t;
type khronos_ssize_t (line 273) | typedef signed long int khronos_ssize_t;
type khronos_usize_t (line 274) | typedef unsigned long int khronos_usize_t;
type khronos_float_t (line 281) | typedef float khronos_float_t;
type khronos_uint64_t (line 294) | typedef khronos_uint64_t khronos_utime_nanoseconds_t;
type khronos_int64_t (line 295) | typedef khronos_int64_t khronos_stime_nanoseconds_t;
type khronos_boolean_enum_t (line 311) | typedef enum {
type IUnknown (line 400) | typedef IUnknown * EGLNativeWindowType;
type IUnknown (line 401) | typedef IUnknown * EGLNativePixmapType;
type IUnknown (line 402) | typedef IUnknown * EGLNativeDisplayType;
type HDC (line 404) | typedef HDC EGLNativeDisplayType;
type HBITMAP (line 405) | typedef HBITMAP EGLNativePixmapType;
type HWND (line 406) | typedef HWND EGLNativeWindowType;
type EGLNativeDisplayType (line 411) | typedef int EGLNativeDisplayType;
type wl_display (line 417) | struct wl_display
type wl_egl_pixmap (line 418) | struct wl_egl_pixmap
type wl_egl_window (line 419) | struct wl_egl_window
type gbm_device (line 423) | struct gbm_device
type gbm_bo (line 424) | struct gbm_bo
type ANativeWindow (line 429) | struct ANativeWindow
type egl_native_pixmap_t (line 430) | struct egl_native_pixmap_t
type ANativeWindow (line 432) | struct ANativeWindow
type egl_native_pixmap_t (line 433) | struct egl_native_pixmap_t
type MirEGLNativeDisplayType (line 439) | typedef MirEGLNativeDisplayType EGLNativeDisplayType;
type MirEGLNativeWindowType (line 441) | typedef MirEGLNativeWindowType EGLNativeWindowType;
type khronos_uintptr_t (line 448) | typedef khronos_uintptr_t EGLNativePixmapType;
type khronos_uintptr_t (line 449) | typedef khronos_uintptr_t EGLNativeWindowType;
type Display (line 457) | typedef Display *EGLNativeDisplayType;
type Pixmap (line 458) | typedef Pixmap EGLNativePixmapType;
type Window (line 459) | typedef Window EGLNativeWindowType;
type EGLNativeDisplayType (line 468) | typedef EGLNativeDisplayType NativeDisplayType;
type EGLNativePixmapType (line 469) | typedef EGLNativePixmapType NativePixmapType;
type EGLNativeWindowType (line 470) | typedef EGLNativeWindowType NativeWindowType;
type khronos_int32_t (line 480) | typedef khronos_int32_t EGLint;
type EGLBoolean (line 537) | typedef unsigned int EGLBoolean;
type EGLenum (line 652) | typedef unsigned int EGLenum;
type EGLAttrib (line 722) | typedef intptr_t EGLAttrib;
type khronos_utime_nanoseconds_t (line 723) | typedef khronos_utime_nanoseconds_t EGLTime;
type EGLAttribKHR (line 849) | typedef intptr_t EGLAttribKHR;
type EGLAttribKHR (line 850) | typedef EGLSyncKHR (EGLAPIENTRYP PFNEGLCREATESYNC64KHRPROC) (EGLDisplay ...
type khronos_utime_nanoseconds_t (line 891) | typedef khronos_utime_nanoseconds_t EGLTimeKHR;
type khronos_uint64_t (line 1066) | typedef khronos_uint64_t EGLuint64KHR;
type EGLNativeFileDescriptorKHR (line 1113) | typedef int EGLNativeFileDescriptorKHR;
type khronos_ssize_t (line 1183) | typedef khronos_ssize_t EGLsizeiANDROID;
type EGLsizeiANDROID (line 1185) | typedef EGLsizeiANDROID (*EGLGetBlobFuncANDROID) (const void *key, EGLsi...
type EGLAttrib (line 1345) | typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETOUTPUTLAYERSEXTPROC) (EGLDispl...
type EGLAttrib (line 1346) | typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETOUTPUTPORTSEXTPROC) (EGLDispla...
type const (line 1380) | typedef EGLDisplay (EGLAPIENTRYP PFNEGLGETPLATFORMDISPLAYEXTPROC) (EGLen...
type const (line 1381) | typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPRO...
type const (line 1382) | typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPRO...
type EGLClientPixmapHI (line 1458) | struct EGLClientPixmapHI {
type EGLClientPixmapHI (line 1465) | struct EGLClientPixmapHI
type EGLClientPixmapHI (line 1467) | struct EGLClientPixmapHI
type khronos_utime_nanoseconds_t (line 1614) | typedef khronos_utime_nanoseconds_t EGLTimeNV;
type khronos_utime_nanoseconds_t (line 1648) | typedef khronos_utime_nanoseconds_t EGLuint64NV;
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_endian.h
function SDL_FORCE_INLINE (line 73) | SDL_FORCE_INLINE Uint16
function SDL_FORCE_INLINE (line 80) | SDL_FORCE_INLINE Uint16
function SDL_FORCE_INLINE (line 87) | SDL_FORCE_INLINE Uint16
function SDL_FORCE_INLINE (line 96) | SDL_FORCE_INLINE Uint16
function SDL_FORCE_INLINE (line 109) | SDL_FORCE_INLINE Uint16
function SDL_FORCE_INLINE (line 117) | SDL_FORCE_INLINE Uint32
function SDL_FORCE_INLINE (line 124) | SDL_FORCE_INLINE Uint32
function SDL_FORCE_INLINE (line 131) | SDL_FORCE_INLINE Uint32
function SDL_FORCE_INLINE (line 142) | SDL_FORCE_INLINE Uint32
function SDL_FORCE_INLINE (line 164) | SDL_FORCE_INLINE Uint32
function SDL_FORCE_INLINE (line 173) | SDL_FORCE_INLINE Uint64
function SDL_FORCE_INLINE (line 191) | SDL_FORCE_INLINE Uint64
function SDL_FORCE_INLINE (line 198) | SDL_FORCE_INLINE Uint64
function SDL_FORCE_INLINE (line 215) | SDL_FORCE_INLINE float
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_error.h
type SDL_errorcode (line 91) | typedef enum
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_events.h
type SDL_EventType (line 55) | typedef enum
type SDL_CommonEvent (line 177) | typedef struct SDL_CommonEvent
type SDL_DisplayEvent (line 186) | typedef struct SDL_DisplayEvent
type SDL_WindowEvent (line 201) | typedef struct SDL_WindowEvent
type SDL_KeyboardEvent (line 217) | typedef struct SDL_KeyboardEvent
type SDL_TextEditingEvent (line 233) | typedef struct SDL_TextEditingEvent
type SDL_TextInputEvent (line 248) | typedef struct SDL_TextInputEvent
type SDL_MouseMotionEvent (line 259) | typedef struct SDL_MouseMotionEvent
type SDL_MouseButtonEvent (line 275) | typedef struct SDL_MouseButtonEvent
type SDL_MouseWheelEvent (line 292) | typedef struct SDL_MouseWheelEvent
type SDL_JoyAxisEvent (line 306) | typedef struct SDL_JoyAxisEvent
type SDL_JoyBallEvent (line 322) | typedef struct SDL_JoyBallEvent
type SDL_JoyHatEvent (line 338) | typedef struct SDL_JoyHatEvent
type SDL_JoyButtonEvent (line 358) | typedef struct SDL_JoyButtonEvent
type SDL_JoyDeviceEvent (line 372) | typedef struct SDL_JoyDeviceEvent
type SDL_ControllerAxisEvent (line 383) | typedef struct SDL_ControllerAxisEvent
type SDL_ControllerButtonEvent (line 400) | typedef struct SDL_ControllerButtonEvent
type SDL_ControllerDeviceEvent (line 415) | typedef struct SDL_ControllerDeviceEvent
type SDL_ControllerTouchpadEvent (line 425) | typedef struct SDL_ControllerTouchpadEvent
type SDL_ControllerSensorEvent (line 440) | typedef struct SDL_ControllerSensorEvent
type SDL_AudioDeviceEvent (line 452) | typedef struct SDL_AudioDeviceEvent
type SDL_TouchFingerEvent (line 467) | typedef struct SDL_TouchFingerEvent
type SDL_MultiGestureEvent (line 485) | typedef struct SDL_MultiGestureEvent
type SDL_DollarGestureEvent (line 502) | typedef struct SDL_DollarGestureEvent
type SDL_DropEvent (line 520) | typedef struct SDL_DropEvent
type SDL_SensorEvent (line 532) | typedef struct SDL_SensorEvent
type SDL_QuitEvent (line 543) | typedef struct SDL_QuitEvent
type SDL_OSEvent (line 552) | typedef struct SDL_OSEvent
type SDL_UserEvent (line 561) | typedef struct SDL_UserEvent
type SDL_SysWMmsg (line 572) | struct SDL_SysWMmsg
type SDL_SysWMmsg (line 573) | typedef struct SDL_SysWMmsg SDL_SysWMmsg;
type SDL_SysWMEvent (line 581) | typedef struct SDL_SysWMEvent
type SDL_Event (line 591) | typedef union SDL_Event
type SDL_eventaction (line 649) | typedef enum
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_gamecontroller.h
type _SDL_GameController (line 58) | struct _SDL_GameController
type SDL_GameController (line 59) | typedef struct _SDL_GameController SDL_GameController;
type SDL_GameControllerType (line 61) | typedef enum
type SDL_GameControllerBindType (line 73) | typedef enum
type SDL_GameControllerButtonBind (line 84) | typedef struct SDL_GameControllerButtonBind
type SDL_GameControllerAxis (line 312) | typedef enum
type SDL_GameControllerButton (line 361) | typedef enum
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_gesture.h
type Sint64 (line 44) | typedef Sint64 SDL_GestureID;
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_haptic.h
type _SDL_Haptic (line 140) | struct _SDL_Haptic
type SDL_Haptic (line 141) | typedef struct _SDL_Haptic SDL_Haptic;
type SDL_HapticDirection (line 459) | typedef struct SDL_HapticDirection
type SDL_HapticConstant (line 477) | typedef struct SDL_HapticConstant
type SDL_HapticPeriodic (line 558) | typedef struct SDL_HapticPeriodic
type SDL_HapticCondition (line 611) | typedef struct SDL_HapticCondition
type SDL_HapticRamp (line 648) | typedef struct SDL_HapticRamp
type SDL_HapticLeftRight (line 685) | typedef struct SDL_HapticLeftRight
type SDL_HapticCustom (line 713) | typedef struct SDL_HapticCustom
type SDL_HapticEffect (line 809) | typedef union SDL_HapticEffect
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_hints.h
type SDL_HintPriority (line 1492) | typedef enum
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_joystick.h
type _SDL_Joystick (line 66) | struct _SDL_Joystick
type SDL_Joystick (line 67) | typedef struct _SDL_Joystick SDL_Joystick;
type SDL_JoystickGUID (line 70) | typedef struct {
type Sint32 (line 81) | typedef Sint32 SDL_JoystickID;
type SDL_JoystickType (line 83) | typedef enum
type SDL_JoystickPowerLevel (line 97) | typedef enum
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_keyboard.h
type SDL_Keysym (line 47) | typedef struct SDL_Keysym
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_keycode.h
type Sint32 (line 45) | typedef Sint32 SDL_Keycode;
type SDL_KeyCode (line 50) | typedef enum
type SDL_Keymod (line 327) | typedef enum
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_locale.h
type SDL_Locale (line 43) | typedef struct SDL_Locale
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_log.h
type SDL_LogCategory (line 64) | typedef enum
type SDL_LogPriority (line 102) | typedef enum
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_messagebox.h
type SDL_MessageBoxFlags (line 37) | typedef enum
type SDL_MessageBoxButtonFlags (line 49) | typedef enum
type SDL_MessageBoxButtonData (line 58) | typedef struct
type SDL_MessageBoxColor (line 68) | typedef struct
type SDL_MessageBoxColorType (line 73) | typedef enum
type SDL_MessageBoxColorScheme (line 86) | typedef struct
type SDL_MessageBoxData (line 94) | typedef struct
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_mouse.h
type SDL_Cursor (line 41) | typedef struct SDL_Cursor SDL_Cursor;
type SDL_SystemCursor (line 46) | typedef enum
type SDL_MouseWheelDirection (line 66) | typedef enum
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_mutex.h
type SDL_mutex (line 58) | struct SDL_mutex
type SDL_mutex (line 59) | typedef struct SDL_mutex SDL_mutex;
type SDL_semaphore (line 106) | struct SDL_semaphore
type SDL_sem (line 107) | typedef struct SDL_semaphore SDL_sem;
type SDL_cond (line 166) | struct SDL_cond
type SDL_cond (line 167) | typedef struct SDL_cond SDL_cond;
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_opengl.h
type GLenum (line 176) | typedef unsigned int GLenum;
type GLboolean (line 177) | typedef unsigned char GLboolean;
type GLbitfield (line 178) | typedef unsigned int GLbitfield;
type GLvoid (line 179) | typedef void GLvoid;
type GLbyte (line 180) | typedef signed char GLbyte;
type GLshort (line 181) | typedef short GLshort;
type GLint (line 182) | typedef int GLint;
type GLubyte (line 183) | typedef unsigned char GLubyte;
type GLushort (line 184) | typedef unsigned short GLushort;
type GLuint (line 185) | typedef unsigned int GLuint;
type GLsizei (line 186) | typedef int GLsizei;
type GLfloat (line 187) | typedef float GLfloat;
type GLclampf (line 188) | typedef float GLclampf;
type GLdouble (line 189) | typedef double GLdouble;
type GLclampd (line 190) | typedef double GLclampd;
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_opengl_glext.h
type GLsizeiptr (line 472) | typedef long GLsizeiptr;
type GLintptr (line 473) | typedef long GLintptr;
type GLsizeiptr (line 475) | typedef ptrdiff_t GLsizeiptr;
type GLintptr (line 476) | typedef ptrdiff_t GLintptr;
type GLchar (line 572) | typedef char GLchar;
type GLhalf (line 890) | typedef unsigned short GLhalf;
type GLubyte (line 1169) | typedef const GLubyte *(APIENTRYP PFNGLGETSTRINGIPROC) (GLenum name, GLu...
type __GLsync (line 1374) | struct __GLsync
type __int32 (line 1404) | typedef __int32 int32_t;
type __int64 (line 1405) | typedef __int64 int64_t;
type GLuint64 (line 1412) | typedef uint64_t GLuint64;
type GLint64 (line 1413) | typedef int64_t GLint64;
type const (line 1762) | typedef GLint (APIENTRYP PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC) (GLuint ...
type const (line 1763) | typedef GLuint (APIENTRYP PFNGLGETSUBROUTINEINDEXPROC) (GLuint program, ...
type const (line 2466) | typedef GLuint (APIENTRYP PFNGLGETPROGRAMRESOURCEINDEXPROC) (GLuint prog...
type const (line 2469) | typedef GLint (APIENTRYP PFNGLGETPROGRAMRESOURCELOCATIONPROC) (GLuint pr...
type const (line 2470) | typedef GLint (APIENTRYP PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC) (GLui...
type GLuint64EXT (line 2600) | typedef uint64_t GLuint64EXT;
type _cl_context (line 2648) | struct _cl_context
type _cl_event (line 2649) | struct _cl_event
type struct (line 2652) | typedef GLsync (APIENTRYP PFNGLCREATESYNCFROMCLEVENTARBPROC) (struct _cl...
type _cl_context (line 2654) | struct _cl_context
type _cl_event (line 2654) | struct _cl_event
type GLhalfARB (line 3045) | typedef unsigned short GLhalfARB;
type GLhandleARB (line 3578) | typedef unsigned int GLhandleARB;
type GLcharARB (line 3580) | typedef char GLcharARB;
type GLchar (line 3734) | typedef GLboolean (APIENTRYP PFNGLISNAMEDSTRINGARBPROC) (GLint namelen, ...
type GLsizeiptrARB (line 4152) | typedef long GLsizeiptrARB;
type GLintptrARB (line 4153) | typedef long GLintptrARB;
type GLsizeiptrARB (line 4155) | typedef ptrdiff_t GLsizeiptrARB;
type GLintptrARB (line 4156) | typedef ptrdiff_t GLintptrARB;
type GLint (line 4498) | typedef GLint GLfixed;
type GLint64EXT (line 4831) | typedef int64_t GLint64EXT;
type GLenum (line 5632) | typedef GLuint (APIENTRYP PFNGLNEWOBJECTBUFFERATIPROC) (GLsizei size, co...
type GLuint (line 7590) | typedef GLboolean (APIENTRYP PFNGLARETEXTURESRESIDENTEXTPROC) (GLsizei n...
type GLhalfNV (line 8859) | typedef unsigned short GLhalfNV;
type GLintptr (line 9743) | typedef GLintptr GLvdpauSurfaceNV;
type const (line 9750) | typedef GLvdpauSurfaceNV (APIENTRYP PFNGLVDPAUREGISTERVIDEOSURFACENVPROC...
type const (line 9751) | typedef GLvdpauSurfaceNV (APIENTRYP PFNGLVDPAUREGISTEROUTPUTSURFACENVPRO...
type GLuint (line 9976) | typedef GLboolean (APIENTRYP PFNGLAREPROGRAMSRESIDENTNVPROC) (GLsizei n,...
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_opengles2_gl2.h
type GLvoid (line 21) | typedef void GLvoid;
type GLchar (line 22) | typedef char GLchar;
type GLenum (line 23) | typedef unsigned int GLenum;
type GLboolean (line 24) | typedef unsigned char GLboolean;
type GLbitfield (line 25) | typedef unsigned int GLbitfield;
type khronos_int8_t (line 26) | typedef khronos_int8_t GLbyte;
type GLshort (line 27) | typedef short GLshort;
type GLint (line 28) | typedef int GLint;
type GLsizei (line 29) | typedef int GLsizei;
type khronos_uint8_t (line 30) | typedef khronos_uint8_t GLubyte;
type GLushort (line 31) | typedef unsigned short GLushort;
type GLuint (line 32) | typedef unsigned int GLuint;
type khronos_float_t (line 33) | typedef khronos_float_t GLfloat;
type khronos_float_t (line 34) | typedef khronos_float_t GLclampf;
type khronos_int32_t (line 35) | typedef khronos_int32_t GLfixed;
type khronos_intptr_t (line 38) | typedef khronos_intptr_t GLintptr;
type khronos_ssize_t (line 39) | typedef khronos_ssize_t GLsizeiptr;
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_opengles2_gl2ext.h
type khronos_int64_t (line 27) | typedef khronos_int64_t GLint64;
type khronos_uint64_t (line 28) | typedef khronos_uint64_t GLuint64;
type __GLsync (line 29) | struct __GLsync
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_opengles2_khrplatform.h
type khronos_int32_t (line 142) | typedef int32_t khronos_int32_t;
type khronos_uint32_t (line 143) | typedef uint32_t khronos_uint32_t;
type khronos_int64_t (line 144) | typedef int64_t khronos_int64_t;
type khronos_uint64_t (line 145) | typedef uint64_t khronos_uint64_t;
type khronos_int32_t (line 155) | typedef int32_t khronos_int32_t;
type khronos_uint32_t (line 156) | typedef uint32_t khronos_uint32_t;
type khronos_int64_t (line 157) | typedef int64_t khronos_int64_t;
type khronos_uint64_t (line 158) | typedef uint64_t khronos_uint64_t;
type __int32 (line 167) | typedef __int32 khronos_int32_t;
type khronos_uint32_t (line 168) | typedef unsigned __int32 khronos_uint32_t;
type __int64 (line 169) | typedef __int64 khronos_int64_t;
type khronos_uint64_t (line 170) | typedef unsigned __int64 khronos_uint64_t;
type khronos_int32_t (line 179) | typedef int khronos_int32_t;
type khronos_uint32_t (line 180) | typedef unsigned int khronos_uint32_t;
type khronos_int64_t (line 182) | typedef long int khronos_int64_t;
type khronos_uint64_t (line 183) | typedef unsigned long int khronos_uint64_t;
type khronos_int64_t (line 185) | typedef long long int khronos_int64_t;
type khronos_uint64_t (line 186) | typedef unsigned long long int khronos_uint64_t;
type khronos_int32_t (line 196) | typedef int khronos_int32_t;
type khronos_uint32_t (line 197) | typedef unsigned int khronos_uint32_t;
type khronos_int32_t (line 207) | typedef int32_t khronos_int32_t;
type khronos_uint32_t (line 208) | typedef uint32_t khronos_uint32_t;
type khronos_int64_t (line 209) | typedef int64_t khronos_int64_t;
type khronos_uint64_t (line 210) | typedef uint64_t khronos_uint64_t;
type khronos_int8_t (line 220) | typedef signed char khronos_int8_t;
type khronos_uint8_t (line 221) | typedef unsigned char khronos_uint8_t;
type khronos_int16_t (line 222) | typedef signed short int khronos_int16_t;
type khronos_uint16_t (line 223) | typedef unsigned short int khronos_uint16_t;
type khronos_intptr_t (line 231) | typedef signed long long int khronos_intptr_t;
type khronos_uintptr_t (line 232) | typedef unsigned long long int khronos_uintptr_t;
type khronos_ssize_t (line 233) | typedef signed long long int khronos_ssize_t;
type khronos_usize_t (line 234) | typedef unsigned long long int khronos_usize_t;
type khronos_intptr_t (line 236) | typedef signed long int khronos_intptr_t;
type khronos_uintptr_t (line 237) | typedef unsigned long int khronos_uintptr_t;
type khronos_ssize_t (line 238) | typedef signed long int khronos_ssize_t;
type khronos_usize_t (line 239) | typedef unsigned long int khronos_usize_t;
type khronos_float_t (line 246) | typedef float khronos_float_t;
type khronos_uint64_t (line 259) | typedef khronos_uint64_t khronos_utime_nanoseconds_t;
type khronos_int64_t (line 260) | typedef khronos_int64_t khronos_stime_nanoseconds_t;
type khronos_boolean_enum_t (line 276) | typedef enum {
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_pixels.h
type SDL_PixelType (line 51) | typedef enum
type SDL_BitmapOrder (line 68) | typedef enum
type SDL_PackedOrder (line 76) | typedef enum
type SDL_ArrayOrder (line 92) | typedef enum
type SDL_PackedLayout (line 104) | typedef enum
type SDL_PixelFormatEnum (line 171) | typedef enum
type SDL_Color (line 304) | typedef struct SDL_Color
type SDL_Palette (line 313) | typedef struct SDL_Palette
type SDL_PixelFormat (line 324) | typedef struct SDL_PixelFormat
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_power.h
type SDL_PowerState (line 42) | typedef enum
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_rect.h
type SDL_Point (line 48) | typedef struct SDL_Point
type SDL_FPoint (line 60) | typedef struct SDL_FPoint
type SDL_Rect (line 77) | typedef struct SDL_Rect
type SDL_FRect (line 87) | typedef struct SDL_FRect
function SDL_FORCE_INLINE (line 99) | SDL_FORCE_INLINE SDL_bool SDL_PointInRect(const SDL_Point *p, const SDL_...
function SDL_FORCE_INLINE (line 108) | SDL_FORCE_INLINE SDL_bool SDL_RectEmpty(const SDL_Rect *r)
function SDL_FORCE_INLINE (line 116) | SDL_FORCE_INLINE SDL_bool SDL_RectEquals(const SDL_Rect *a, const SDL_Re...
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_render.h
type SDL_RendererFlags (line 64) | typedef enum
type SDL_RendererInfo (line 78) | typedef struct SDL_RendererInfo
type SDL_ScaleMode (line 91) | typedef enum
type SDL_TextureAccess (line 101) | typedef enum
type SDL_TextureModulate (line 111) | typedef enum
type SDL_RendererFlip (line 121) | typedef enum
type SDL_Renderer (line 131) | struct SDL_Renderer
type SDL_Renderer (line 132) | typedef struct SDL_Renderer SDL_Renderer;
type SDL_Texture (line 137) | struct SDL_Texture
type SDL_Texture (line 138) | typedef struct SDL_Texture SDL_Texture;
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_rwops.h
type SDL_RWops (line 52) | typedef struct SDL_RWops
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_scancode.h
type SDL_Scancode (line 43) | typedef enum
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_sensor.h
type _SDL_Sensor (line 51) | struct _SDL_Sensor
type SDL_Sensor (line 52) | typedef struct _SDL_Sensor SDL_Sensor;
type Sint32 (line 60) | typedef Sint32 SDL_SensorID;
type SDL_SensorType (line 69) | typedef enum
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_shape.h
type WindowShapeMode (line 80) | typedef enum {
type SDL_WindowShapeParams (line 94) | typedef union {
type SDL_WindowShapeMode (line 101) | typedef struct SDL_WindowShapeMode {
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_stdinc.h
type SDL_bool (line 165) | typedef int SDL_bool;
type SDL_bool (line 167) | typedef enum
type Sint8 (line 179) | typedef int8_t Sint8;
type Uint8 (line 185) | typedef uint8_t Uint8;
type Sint16 (line 191) | typedef int16_t Sint16;
type Uint16 (line 197) | typedef uint16_t Uint16;
type Sint32 (line 203) | typedef int32_t Sint32;
type Uint32 (line 209) | typedef uint32_t Uint32;
type Sint64 (line 216) | typedef int64_t Sint64;
type Uint64 (line 222) | typedef uint64_t Uint64;
type SDL_DUMMY_ENUM (line 343) | typedef enum
function SDL_FORCE_INLINE (line 431) | SDL_FORCE_INLINE void SDL_memset4(void *dst, Uint32 val, size_t dwords)
type _SDL_iconv_t (line 568) | struct _SDL_iconv_t
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_surface.h
type SDL_Surface (line 70) | typedef struct SDL_Surface
type SDL_Surface (line 100) | struct SDL_Surface
type SDL_Surface (line 101) | struct SDL_Surface
type SDL_YUV_CONVERSION_MODE (line 106) | typedef enum
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_system.h
type IDirect3DDevice9 (line 60) | typedef struct IDirect3DDevice9 IDirect3DDevice9;
type SDL_WinRT_Path (line 218) | typedef enum
type SDL_WinRT_DeviceFamily (line 242) | typedef enum
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_syswm.h
type SDL_SysWMinfo (line 44) | struct SDL_SysWMinfo
type NSWindow (line 87) | typedef struct _NSWindow NSWindow;
type UIWindow (line 95) | typedef struct _UIWindow UIWindow;
type UIViewController (line 96) | typedef struct _UIViewController UIViewController;
type Uint32 (line 98) | typedef Uint32 GLuint;
type ANativeWindow (line 102) | typedef struct ANativeWindow ANativeWindow;
type SDL_SYSWM_TYPE (line 127) | typedef enum
type SDL_SysWMmsg (line 147) | struct SDL_SysWMmsg
type SDL_SysWMinfo (line 216) | struct SDL_SysWMinfo
type SDL_SysWMinfo (line 322) | typedef struct SDL_SysWMinfo SDL_SysWMinfo;
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_test_common.h
type SDLTest_CommonState (line 51) | typedef struct
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_test_crc32.h
type SDLTest_Crc32Context (line 66) | typedef struct {
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_test_harness.h
type SDLTest_TestCaseReference (line 75) | typedef struct SDLTest_TestCaseReference {
type SDLTest_TestSuiteReference (line 89) | typedef struct SDLTest_TestSuiteReference {
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_test_images.h
type SDLTest_SurfaceImage_t (line 50) | typedef struct SDLTest_SurfaceImage_s {
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_test_md5.h
type MD5UINT4 (line 68) | typedef unsigned long int MD5UINT4;
type SDLTest_Md5Context (line 71) | typedef struct {
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_test_random.h
type SDLTest_RandomContext (line 59) | typedef struct {
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_thread.h
type SDL_Thread (line 45) | struct SDL_Thread
type SDL_Thread (line 46) | typedef struct SDL_Thread SDL_Thread;
type SDL_threadID (line 49) | typedef unsigned long SDL_threadID;
type SDL_TLSID (line 52) | typedef unsigned int SDL_TLSID;
type SDL_ThreadPriority (line 64) | typedef enum {
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_timer.h
type SDL_TimerID (line 86) | typedef int SDL_TimerID;
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_touch.h
type Sint64 (line 41) | typedef Sint64 SDL_TouchID;
type Sint64 (line 42) | typedef Sint64 SDL_FingerID;
type SDL_TouchDeviceType (line 44) | typedef enum
type SDL_Finger (line 52) | typedef struct SDL_Finger
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_version.h
type SDL_version (line 51) | typedef struct SDL_version
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_video.h
type SDL_DisplayMode (line 53) | typedef struct
type SDL_Window (line 90) | typedef struct SDL_Window SDL_Window;
type SDL_WindowFlags (line 97) | typedef enum
type SDL_WindowEventID (line 146) | typedef enum
type SDL_DisplayEventID (line 175) | typedef enum
type SDL_DisplayOrientation (line 183) | typedef enum
type SDL_GLattr (line 200) | typedef enum
type SDL_GLprofile (line 231) | typedef enum
type SDL_GLcontextFlag (line 238) | typedef enum
type SDL_GLcontextReleaseFlag (line 246) | typedef enum
type SDL_GLContextResetNotification (line 252) | typedef enum
type SDL_HitTestResult (line 1026) | typedef enum
type SDL_Point (line 1045) | typedef SDL_HitTestResult (SDLCALL *SDL_HitTest)(SDL_Window *win,
FILE: windows/libs/SDL2-2.0.14/x86_64-w64-mingw32/include/SDL2/SDL_vulkan.h
type VkInstance (line 57) | typedef VkInstance SDL_vulkanInstance;
type VkSurfaceKHR (line 58) | typedef VkSurfaceKHR SDL_vulkanSurface;
FILE: windows/libs/SDL2_image-2.0.5/i686-w64-mingw32/include/SDL2/SDL_image.h
type IMG_InitFlags (line 70) | typedef enum
FILE: windows/libs/SDL2_image-2.0.5/x86_64-w64-mingw32/include/SDL2/SDL_image.h
type IMG_InitFlags (line 70) | typedef enum
FILE: windows/libs/libpng-1.6.37/i686-w64-mingw32/include/libpng16/png.h
type png_struct (line 454) | typedef struct png_struct_def png_struct;
type png_struct (line 455) | typedef const png_struct * png_const_structp;
type png_struct (line 456) | typedef png_struct * png_structp;
type png_struct (line 457) | typedef png_struct * * png_structpp;
type png_info (line 468) | typedef struct png_info_def png_info;
type png_info (line 469) | typedef png_info * png_infop;
type png_info (line 470) | typedef const png_info * png_const_infop;
type png_info (line 471) | typedef png_info * * png_infopp;
type png_struct (line 484) | typedef png_struct * PNG_RESTRICT
type png_struct (line 485) | typedef const png_struct * PNG_RESTRICT
type png_info (line 486) | typedef png_info * PNG_RESTRICT
type png_info (line 487) | typedef const png_info * PNG_RESTRICT
type png_color (line 493) | typedef struct png_color_struct
type png_color (line 499) | typedef png_color * png_colorp;
type png_color (line 500) | typedef const png_color * png_const_colorp;
type png_color (line 501) | typedef png_color * * png_colorpp;
type png_color_16 (line 503) | typedef struct png_color_16_struct
type png_color_16 (line 511) | typedef png_color_16 * png_color_16p;
type png_color_16 (line 512) | typedef const png_color_16 * png_const_color_16p;
type png_color_16 (line 513) | typedef png_color_16 * * png_color_16pp;
type png_color_8 (line 515) | typedef struct png_color_8_struct
type png_color_8 (line 523) | typedef png_color_8 * png_color_8p;
type png_color_8 (line 524) | typedef const png_color_8 * png_const_color_8p;
type png_color_8 (line 525) | typedef png_color_8 * * png_color_8pp;
type png_sPLT_entry (line 531) | typedef struct png_sPLT_entry_struct
type png_sPLT_entry (line 539) | typedef png_sPLT_entry * png_sPLT_entryp;
type png_sPLT_entry (line 540) | typedef const png_sPLT_entry * png_const_sPLT_entryp;
type png_sPLT_entry (line 541) | typedef png_sPLT_entry * * png_sPLT_entrypp;
type png_sPLT_t (line 548) | typedef struct png_sPLT_struct
type png_sPLT_t (line 555) | typedef png_sPLT_t * png_sPLT_tp;
type png_sPLT_t (line 556) | typedef const png_sPLT_t * png_const_sPLT_tp;
type png_sPLT_t (line 557) | typedef png_sPLT_t * * png_sPLT_tpp;
type png_text (line 577) | typedef struct png_text_struct
type png_text (line 594) | typedef png_text * png_textp;
type png_text (line 595) | typedef const png_text * png_const_textp;
type png_text (line 596) | typedef png_text * * png_textpp;
type png_time (line 615) | typedef struct png_time_struct
type png_time (line 624) | typedef png_time * png_timep;
type png_time (line 625) | typedef const png_time * png_const_timep;
type png_time (line 626) | typedef png_time * * png_timepp;
type png_unknown_chunk (line 637) | typedef struct png_unknown_chunk_t
type png_unknown_chunk (line 653) | typedef png_unknown_chunk * png_unknown_chunkp;
type png_unknown_chunk (line 654) | typedef const png_unknown_chunk * png_const_unknown_chunkp;
type png_unknown_chunk (line 655) | typedef png_unknown_chunk * * png_unknown_chunkpp;
type png_row_info (line 773) | typedef struct png_row_info_struct
type png_row_info (line 783) | typedef png_row_info * png_row_infop;
type png_row_info (line 784) | typedef png_row_info * * png_row_infopp;
type PNG_CALLBACK (line 794) | typedef PNG_CALLBACK(void, *png_error_ptr, (png_structp, png_const_charp));
type PNG_CALLBACK (line 795) | typedef PNG_CALLBACK(void, *png_rw_ptr, (png_structp, png_bytep, size_t));
type PNG_CALLBACK (line 796) | typedef PNG_CALLBACK(void, *png_flush_ptr, (png_structp));
type PNG_CALLBACK (line 797) | typedef PNG_CALLBACK(void, *png_read_status_ptr, (png_structp, png_uint_32,
type PNG_CALLBACK (line 799) | typedef PNG_CALLBACK(void, *png_write_status_ptr, (png_structp, png_uint...
type PNG_CALLBACK (line 803) | typedef PNG_CALLBACK(void, *png_progressive_info_ptr, (png_structp, png_...
type PNG_CALLBACK (line 804) | typedef PNG_CALLBACK(void, *png_progressive_end_ptr, (png_structp, png_i...
type PNG_CALLBACK (line 806) | typedef PNG_CALLBACK(void, *png_progressive_frame_ptr, (png_structp,
type PNG_CALLBACK (line 820) | typedef PNG_CALLBACK(void, *png_progressive_row_ptr, (png_structp, png_b...
type PNG_CALLBACK (line 826) | typedef PNG_CALLBACK(void, *png_user_transform_ptr, (png_structp, png_ro...
type PNG_CALLBACK (line 831) | typedef PNG_CALLBACK(int, *png_user_chunk_ptr, (png_structp,
type PNG_CALLBACK (line 890) | typedef PNG_CALLBACK(png_voidp, *png_malloc_ptr, (png_structp,
type PNG_CALLBACK (line 892) | typedef PNG_CALLBACK(void, *png_free_ptr, (png_structp, png_voidp));
type png_control (line 2694) | struct png_control
type png_image (line 2695) | typedef struct
FILE: windows/libs/libpng-1.6.37/i686-w64-mingw32/include/libpng16/pngconf.h
type png_byte (line 481) | typedef unsigned char png_byte;
type png_int_16 (line 487) | typedef int png_int_16;
type png_int_16 (line 489) | typedef short png_int_16;
type png_uint_16 (line 495) | typedef unsigned int png_uint_16;
type png_uint_16 (line 497) | typedef unsigned short png_uint_16;
type png_int_32 (line 503) | typedef int png_int_32;
type png_int_32 (line 505) | typedef long int png_int_32;
type png_uint_32 (line 511) | typedef unsigned int png_uint_32;
type png_uint_32 (line 513) | typedef unsigned long int png_uint_32;
type png_size_t (line 523) | typedef size_t png_size_t;
type png_ptrdiff_t (line 524) | typedef ptrdiff_t png_ptrdiff_t;
type png_uint_32 (line 555) | typedef png_uint_32 png_alloc_size_t;
type png_alloc_size_t (line 557) | typedef size_t png_alloc_size_t;
type png_int_32 (line 574) | typedef png_int_32 png_fixed_point;
type png_byte (line 579) | typedef png_byte * png_bytep;
type png_byte (line 580) | typedef const png_byte * png_const_bytep;
type png_uint_32 (line 581) | typedef png_uint_32 * png_uint_32p;
type png_uint_32 (line 582) | typedef const png_uint_32 * png_const_uint_32p;
type png_int_32 (line 583) | typedef png_int_32 * png_int_32p;
type png_int_32 (line 584) | typedef const png_int_32 * png_const_int_32p;
type png_uint_16 (line 585) | typedef png_uint_16 * png_uint_16p;
type png_uint_16 (line 586) | typedef const png_uint_16 * png_const_uint_16p;
type png_int_16 (line 587) | typedef png_int_16 * png_int_16p;
type png_int_16 (line 588) | typedef const png_int_16 * png_const_int_16p;
type png_fixed_point (line 591) | typedef png_fixed_point * png_fixed_point_p;
type png_fixed_point (line 592) | typedef const png_fixed_point * png_const_fixed_point_p;
type FILE (line 597) | typedef FILE * png_FILE_p;
type png_byte (line 606) | typedef png_byte * * png_bytepp;
type png_uint_32 (line 607) | typedef png_uint_32 * * png_uint_32pp;
type png_int_32 (line 608) | typedef png_int_32 * * png_int_32pp;
type png_uint_16 (line 609) | typedef png_uint_16 * * png_uint_16pp;
type png_int_16 (line 610) | typedef png_int_16 * * png_int_16pp;
type png_fixed_point (line 613) | typedef png_fixed_point * * png_fixed_point_pp;
FILE: windows/libs/libpng-1.6.37/i686-w64-mingw32/include/png.h
type png_struct (line 454) | typedef struct png_struct_def png_struct;
type png_struct (line 455) | typedef const png_struct * png_const_structp;
type png_struct (line 456) | typedef png_struct * png_structp;
type png_struct (line 457) | typedef png_struct * * png_structpp;
type png_info (line 468) | typedef struct png_info_def png_info;
type png_info (line 469) | typedef png_info * png_infop;
type png_info (line 470) | typedef const png_info * png_const_infop;
type png_info (line 471) | typedef png_info * * png_infopp;
type png_struct (line 484) | typedef png_struct * PNG_RESTRICT
type png_struct (line 485) | typedef const png_struct * PNG_RESTRICT
type png_info (line 486) | typedef png_info * PNG_RESTRICT
type png_info (line 487) | typedef const png_info * PNG_RESTRICT
type png_color (line 493) | typedef struct png_color_struct
type png_color (line 499) | typedef png_color * png_colorp;
type png_color (line 500) | typedef const png_color * png_const_colorp;
type png_color (line 501) | typedef png_color * * png_colorpp;
type png_color_16 (line 503) | typedef struct png_color_16_struct
type png_color_16 (line 511) | typedef png_color_16 * png_color_16p;
type png_color_16 (line 512) | typedef const png_color_16 * png_const_color_16p;
type png_color_16 (line 513) | typedef png_color_16 * * png_color_16pp;
type png_color_8 (line 515) | typedef struct png_color_8_struct
type png_color_8 (line 523) | typedef png_color_8 * png_color_8p;
type png_color_8 (line 524) | typedef const png_color_8 * png_const_color_8p;
type png_color_8 (line 525) | typedef png_color_8 * * png_color_8pp;
type png_sPLT_entry (line 531) | typedef struct png_sPLT_entry_struct
type png_sPLT_entry (line 539) | typedef png_sPLT_entry * png_sPLT_entryp;
type png_sPLT_entry (line 540) | typedef const png_sPLT_entry * png_const_sPLT_entryp;
type png_sPLT_entry (line 541) | typedef png_sPLT_entry * * png_sPLT_entrypp;
type png_sPLT_t (line 548) | typedef struct png_sPLT_struct
type png_sPLT_t (line 555) | typedef png_sPLT_t * png_sPLT_tp;
type png_sPLT_t (line 556) | typedef const png_sPLT_t * png_const_sPLT_tp;
type png_sPLT_t (line 557) | typedef png_sPLT_t * * png_sPLT_tpp;
type png_text (line 577) | typedef struct png_text_struct
type png_text (line 594) | typedef png_text * png_textp;
type png_text (line 595) | typedef const png_text * png_const_textp;
type png_text (line 596) | typedef png_text * * png_textpp;
type png_time (line 615) | typedef struct png_time_struct
type png_time (line 624) | typedef png_time * png_timep;
type png_time (line 625) | typedef const png_time * png_const_timep;
type png_time (line 626) | typedef png_time * * png_timepp;
type png_unknown_chunk (line 637) | typedef struct png_unknown_chunk_t
type png_unknown_chunk (line 653) | typedef png_unknown_chunk * png_unknown_chunkp;
type png_unknown_chunk (line 654) | typedef const png_unknown_chunk * png_const_unknown_chunkp;
type png_unknown_chunk (line 655) | typedef png_unknown_chunk * * png_unknown_chunkpp;
type png_row_info (line 773) | typedef struct png_row_info_struct
type png_row_info (line 783) | typedef png_row_info * png_row_infop;
type png_row_info (line 784) | typedef png_row_info * * png_row_infopp;
type PNG_CALLBACK (line 794) | typedef PNG_CALLBACK(void, *png_error_ptr, (png_structp, png_const_charp));
type PNG_CALLBACK (line 795) | typedef PNG_CALLBACK(void, *png_rw_ptr, (png_structp, png_bytep, size_t));
type PNG_CALLBACK (line 796) | typedef PNG_CALLBACK(void, *png_flush_ptr, (png_structp));
type PNG_CALLBACK (line 797) | typedef PNG_CALLBACK(void, *png_read_status_ptr, (png_structp, png_uint_32,
type PNG_CALLBACK (line 799) | typedef PNG_CALLBACK(void, *png_write_status_ptr, (png_structp, png_uint...
type PNG_CALLBACK (line 803) | typedef PNG_CALLBACK(void, *png_progressive_info_ptr, (png_structp, png_...
type PNG_CALLBACK (line 804) | typedef PNG_CALLBACK(void, *png_progressive_end_ptr, (png_structp, png_i...
type PNG_CALLBACK (line 806) | typedef PNG_CALLBACK(void, *png_progressive_frame_ptr, (png_structp,
type PNG_CALLBACK (line 820) | typedef PNG_CALLBACK(void, *png_progressive_row_ptr, (png_structp, png_b...
type PNG_CALLBACK (line 826) | typedef PNG_CALLBACK(void, *png_user_transform_ptr, (png_structp, png_ro...
type PNG_CALLBACK (line 831) | typedef PNG_CALLBACK(int, *png_user_chunk_ptr, (png_structp,
type PNG_CALLBACK (line 890) | typedef PNG_CALLBACK(png_voidp, *png_malloc_ptr, (png_structp,
type PNG_CALLBACK (line 892) | typedef PNG_CALLBACK(void, *png_free_ptr, (png_structp, png_voidp));
type png_control (line 2694) | struct png_control
type png_image (line 2695) | typedef struct
FILE: windows/libs/libpng-1.6.37/i686-w64-mingw32/include/pngconf.h
type png_byte (line 481) | typedef unsigned char png_byte;
type png_int_16 (line 487) | typedef int png_int_16;
type png_int_16 (line 489) | typedef short png_int_16;
type png_uint_16 (line 495) | typedef unsigned int png_uint_16;
type png_uint_16 (line 497) | typedef unsigned short png_uint_16;
type png_int_32 (line 503) | typedef int png_int_32;
type png_int_32 (line 505) | typedef long int png_int_32;
type png_uint_32 (line 511) | typedef unsigned int png_uint_32;
type png_uint_32 (line 513) | typedef unsigned long int png_uint_32;
type png_size_t (line 523) | typedef size_t png_size_t;
type png_ptrdiff_t (line 524) | typedef ptrdiff_t png_ptrdiff_t;
type png_uint_32 (line 555) | typedef png_uint_32 png_alloc_size_t;
type png_alloc_size_t (line 557) | typedef size_t png_alloc_size_t;
type png_int_32 (line 574) | typedef png_int_32 png_fixed_point;
type png_byte (line 579) | typedef png_byte * png_bytep;
type png_byte (line 580) | typedef const png_byte * png_const_bytep;
type png_uint_32 (line 581) | typedef png_uint_32 * png_uint_32p;
type png_uint_32 (line 582) | typedef const png_uint_32 * png_const_uint_32p;
type png_int_32 (line 583) | typedef png_int_32 * png_int_32p;
type png_int_32 (line 584) | typedef const png_int_32 * png_const_int_32p;
type png_uint_16 (line 585) | typedef png_uint_16 * png_uint_16p;
type png_uint_16 (line 586) | typedef const png_uint_16 * png_const_uint_16p;
type png_int_16 (line 587) | typedef png_int_16 * png_int_16p;
type png_int_16 (line 588) | typedef const png_int_16 * png_const_int_16p;
type png_fixed_point (line 591) | typedef png_fixed_point * png_fixed_point_p;
type png_fixed_point (line 592) | typedef const png_fixed_point * png_const_fixed_point_p;
type FILE (line 597) | typedef FILE * png_FILE_p;
type png_byte (line 606) | typedef png_byte * * png_bytepp;
type png_uint_32 (line 607) | typedef png_uint_32 * * png_uint_32pp;
type png_int_32 (line 608) | typedef png_int_32 * * png_int_32pp;
type png_uint_16 (line 609) | typedef png_uint_16 * * png_uint_16pp;
type png_int_16 (line 610) | typedef png_int_16 * * png_int_16pp;
type png_fixed_point (line 613) | typedef png_fixed_point * * png_fixed_point_pp;
FILE: windows/libs/libpng-1.6.37/x86_64-w64-mingw32/include/libpng16/png.h
type png_struct (line 454) | typedef struct png_struct_def png_struct;
type png_struct (line 455) | typedef const png_struct * png_const_structp;
type png_struct (line 456) | typedef png_struct * png_structp;
type png_struct (line 457) | typedef png_struct * * png_structpp;
type png_info (line 468) | typedef struct png_info_def png_info;
type png_info (line 469) | typedef png_info * png_infop;
type png_info (line 470) | typedef const png_info * png_const_infop;
type png_info (line 471) | typedef png_info * * png_infopp;
type png_struct (line 484) | typedef png_struct * PNG_RESTRICT
type png_struct (line 485) | typedef const png_struct * PNG_RESTRICT
type png_info (line 486) | typedef png_info * PNG_RESTRICT
type png_info (line 487) | typedef const png_info * PNG_RESTRICT
type png_color (line 493) | typedef struct png_color_struct
type png_color (line 499) | typedef png_color * png_colorp;
type png_color (line 500) | typedef const png_color * png_const_colorp;
type png_color (line 501) | typedef png_color * * png_colorpp;
type png_color_16 (line 503) | typedef struct png_color_16_struct
type png_color_16 (line 511) | typedef png_color_16 * png_color_16p;
type png_color_16 (line 512) | typedef const png_color_16 * png_const_color_16p;
type png_color_16 (line 513) | typedef png_color_16 * * png_color_16pp;
type png_color_8 (line 515) | typedef struct png_color_8_struct
type png_color_8 (line 523) | typedef png_color_8 * png_color_8p;
type png_color_8 (line 524) | typedef const png_color_8 * png_const_color_8p;
type png_color_8 (line 525) | typedef png_color_8 * * png_color_8pp;
type png_sPLT_entry (line 531) | typedef struct png_sPLT_entry_struct
type png_sPLT_entry (line 539) | typedef png_sPLT_entry * png_sPLT_entryp;
type png_sPLT_entry (line 540) | typedef const png_sPLT_entry * png_const_sPLT_entryp;
type png_sPLT_entry (line 541) | typedef png_sPLT_entry * * png_sPLT_entrypp;
type png_sPLT_t (line 548) | typedef struct png_sPLT_struct
type png_sPLT_t (line 555) | typedef png_sPLT_t * png_sPLT_tp;
type png_sPLT_t (line 556) | typedef const png_sPLT_t * png_const_sPLT_tp;
type png_sPLT_t (line 557) | typedef png_sPLT_t * * png_sPLT_tpp;
type png_text (line 577) | typedef struct png_text_struct
type png_text (line 594) | typedef png_text * png_textp;
type png_text (line 595) | typedef const png_text * png_const_textp;
type png_text (line 596) | typedef png_text * * png_textpp;
type png_time (line 615) | typedef struct png_time_struct
type png_time (line 624) | typedef png_time * png_timep;
type png_time (line 625) | typedef const png_time * png_const_timep;
type png_time (line 626) | typedef png_time * * png_timepp;
type png_unknown_chunk (line 637) | typedef struct png_unknown_chunk_t
type png_unknown_chunk (line 653) | typedef png_unknown_chunk * png_unknown_chunkp;
type png_unknown_chunk (line 654) | typedef const png_unknown_chunk * png_const_unknown_chunkp;
type png_unknown_chunk (line 655) | typedef png_unknown_chunk * * png_unknown_chunkpp;
type png_row_info (line 773) | typedef struct png_row_info_struct
type png_row_info (line 783) | typedef png_row_info * png_row_infop;
type png_row_info (line 784) | typedef png_row_info * * png_row_infopp;
type PNG_CALLBACK (line 794) | typedef PNG_CALLBACK(void, *png_error_ptr, (png_structp, png_const_charp));
type PNG_CALLBACK (line 795) | typedef PNG_CALLBACK(void, *png_rw_ptr, (png_structp, png_bytep, size_t));
type PNG_CALLBACK (line 796) | typedef PNG_CALLBACK(void, *png_flush_ptr, (png_structp));
type PNG_CALLBACK (line 797) | typedef PNG_CALLBACK(void, *png_read_status_ptr, (png_structp, png_uint_32,
type PNG_CALLBACK (line 799) | typedef PNG_CALLBACK(void, *png_write_status_ptr, (png_structp, png_uint...
type PNG_CALLBACK (line 803) | typedef PNG_CALLBACK(void, *png_progressive_info_ptr, (png_structp, png_...
type PNG_CALLBACK (line 804) | typedef PNG_CALLBACK(void, *png_progressive_end_ptr, (png_structp, png_i...
type PNG_CALLBACK (line 806) | typedef PNG_CALLBACK(void, *png_progressive_frame_ptr, (png_structp,
type PNG_CALLBACK (line 820) | typedef PNG_CALLBACK(void, *png_progressive_row_ptr, (png_structp, png_b...
type PNG_CALLBACK (line 826) | typedef PNG_CALLBACK(void, *png_user_transform_ptr, (png_structp, png_ro...
type PNG_CALLBACK (line 831) | typedef PNG_CALLBACK(int, *png_user_chunk_ptr, (png_structp,
type PNG_CALLBACK (line 890) | typedef PNG_CALLBACK(png_voidp, *png_malloc_ptr, (png_structp,
type PNG_CALLBACK (line 892) | typedef PNG_CALLBACK(void, *png_free_ptr, (png_structp, png_voidp));
type png_control (line 2694) | struct png_control
type png_image (line 2695) | typedef struct
FILE: windows/libs/libpng-1.6.37/x86_64-w64-mingw32/include/libpng16/pngconf.h
type png_byte (line 481) | typedef unsigned char png_byte;
type png_int_16 (line 487) | typedef int png_int_16;
type png_int_16 (line 489) | typedef short png_int_16;
type png_uint_16 (line 495) | typedef unsigned int png_uint_16;
type png_uint_16 (line 497) | typedef unsigned short png_uint_16;
type png_int_32 (line 503) | typedef int png_int_32;
type png_int_32 (line 505) | typedef long int png_int_32;
type png_uint_32 (line 511) | typedef unsigned int png_uint_32;
type png_uint_32 (line 513) | typedef unsigned long int png_uint_32;
type png_size_t (line 523) | typedef size_t png_size_t;
type png_ptrdiff_t (line 524) | typedef ptrdiff_t png_ptrdiff_t;
type png_uint_32 (line 555) | typedef png_uint_32 png_alloc_size_t;
type png_alloc_size_t (line 557) | typedef size_t png_alloc_size_t;
type png_int_32 (line 574) | typedef png_int_32 png_fixed_point;
type png_byte (line 579) | typedef png_byte * png_bytep;
type png_byte (line 580) | typedef const png_byte * png_const_bytep;
type png_uint_32 (line 581) | typedef png_uint_32 * png_uint_32p;
type png_uint_32 (line 582) | typedef const png_uint_32 * png_const_uint_32p;
type png_int_32 (line 583) | typedef png_int_32 * png_int_32p;
type png_int_32 (line 584) | typedef const png_int_32 * png_const_int_32p;
type png_uint_16 (line 585) | typedef png_uint_16 * png_uint_16p;
type png_uint_16 (line 586) | typedef const png_uint_16 * png_const_uint_16p;
type png_int_16 (line 587) | typedef png_int_16 * png_int_16p;
type png_int_16 (line 588) | typedef const png_int_16 * png_const_int_16p;
type png_fixed_point (line 591) | typedef png_fixed_point * png_fixed_point_p;
type png_fixed_point (line 592) | typedef const png_fixed_point * png_const_fixed_point_p;
type FILE (line 597) | typedef FILE * png_FILE_p;
type png_byte (line 606) | typedef png_byte * * png_bytepp;
type png_uint_32 (line 607) | typedef png_uint_32 * * png_uint_32pp;
type png_int_32 (line 608) | typedef png_int_32 * * png_int_32pp;
type png_uint_16 (line 609) | typedef png_uint_16 * * png_uint_16pp;
type png_int_16 (line 610) | typedef png_int_16 * * png_int_16pp;
type png_fixed_point (line 613) | typedef png_fixed_point * * png_fixed_point_pp;
FILE: windows/libs/libpng-1.6.37/x86_64-w64-mingw32/include/png.h
type png_struct (line 454) | typedef struct png_struct_def png_struct;
type png_struct (line 455) | typedef const png_struct * png_const_structp;
type png_struct (line 456) | typedef png_struct * png_structp;
type png_struct (line 457) | typedef png_struct * * png_structpp;
type png_info (line 468) | typedef struct png_info_def png_info;
type png_info (line 469) | typedef png_info * png_infop;
type png_info (line 470) | typedef const png_info * png_const_infop;
type png_info (line 471) | typedef png_info * * png_infopp;
type png_struct (line 484) | typedef png_struct * PNG_RESTRICT
type png_struct (line 485) | typedef const png_struct * PNG_RESTRICT
type png_info (line 486) | typedef png_info * PNG_RESTRICT
type png_info (line 487) | typedef const png_info * PNG_RESTRICT
type png_color (line 493) | typedef struct png_color_struct
type png_color (line 499) | typedef png_color * png_colorp;
type png_color (line 500) | typedef const png_color * png_const_colorp;
type png_color (line 501) | typedef png_color * * png_colorpp;
type png_color_16 (line 503) | typedef struct png_color_16_struct
type png_color_16 (line 511) | typedef png_color_16 * png_color_16p;
type png_color_16 (line 512) | typedef const png_color_16 * png_const_color_16p;
type png_color_16 (line 513) | typedef png_color_16 * * png_color_16pp;
type png_color_8 (line 515) | typedef struct png_color_8_struct
type png_color_8 (line 523) | typedef png_color_8 * png_color_8p;
type png_color_8 (line 524) | typedef const png_color_8 * png_const_color_8p;
type png_color_8 (line 525) | typedef png_color_8 * * png_color_8pp;
type png_sPLT_entry (line 531) | typedef struct png_sPLT_entry_struct
type png_sPLT_entry (line 539) | typedef png_sPLT_entry * png_sPLT_entryp;
type png_sPLT_entry (line 540) | typedef const png_sPLT_entry * png_const_sPLT_entryp;
type png_sPLT_entry (line 541) | typedef png_sPLT_entry * * png_sPLT_entrypp;
type png_sPLT_t (line 548) | typedef struct png_sPLT_struct
type png_sPLT_t (line 555) | typedef png_sPLT_t * png_sPLT_tp;
type png_sPLT_t (line 556) | typedef const png_sPLT_t * png_const_sPLT_tp;
type png_sPLT_t (line 557) | typedef png_sPLT_t * * png_sPLT_tpp;
type png_text (line 577) | typedef struct png_text_struct
type png_text (line 594) | typedef png_text * png_textp;
type png_text (line 595) | typedef const png_text * png_const_textp;
type png_text (line 596) | typedef png_text * * png_textpp;
type png_time (line 615) | typedef struct png_time_struct
type png_time (line 624) | typedef png_time * png_timep;
type png_time (line 625) | typedef const png_time * png_const_timep;
type png_time (line 626) | typedef png_time * * png_timepp;
type png_unknown_chunk (line 637) | typedef struct png_unknown_chunk_t
type png_unknown_chunk (line 653) | typedef png_unknown_chunk * png_unknown_chunkp;
type png_unknown_chunk (line 654) | typedef const png_unknown_chunk * png_const_unknown_chunkp;
type png_unknown_chunk (line 655) | typedef png_unknown_chunk * * png_unknown_chunkpp;
type png_row_info (line 773) | typedef struct png_row_info_struct
type png_row_info (line 783) | typedef png_row_info * png_row_infop;
type png_row_info (line 784) | typedef png_row_info * * png_row_infopp;
type PNG_CALLBACK (line 794) | typedef PNG_CALLBACK(void, *png_error_ptr, (png_structp, png_const_charp));
type PNG_CALLBACK (line 795) | typedef PNG_CALLBACK(void, *png_rw_ptr, (png_structp, png_bytep, size_t));
type PNG_CALLBACK (line 796) | typedef PNG_CALLBACK(void, *png_flush_ptr, (png_structp));
type PNG_CALLBACK (line 797) | typedef PNG_CALLBACK(void, *png_read_status_ptr, (png_structp, png_uint_32,
type PNG_CALLBACK (line 799) | typedef PNG_CALLBACK(void, *png_write_status_ptr, (png_structp, png_uint...
type PNG_CALLBACK (line 803) | typedef PNG_CALLBACK(void, *png_progressive_info_ptr, (png_structp, png_...
type PNG_CALLBACK (line 804) | typedef PNG_CALLBACK(void, *png_progressive_end_ptr, (png_structp, png_i...
type PNG_CALLBACK (line 806) | typedef PNG_CALLBACK(void, *png_progressive_frame_ptr, (png_structp,
type PNG_CALLBACK (line 820) | typedef PNG_CALLBACK(void, *png_progressive_row_ptr, (png_structp, png_b...
type PNG_CALLBACK (line 826) | typedef PNG_CALLBACK(void, *png_user_transform_ptr, (png_structp, png_ro...
type PNG_CALLBACK (line 831) | typedef PNG_CALLBACK(int, *png_user_chunk_ptr, (png_structp,
type PNG_CALLBACK (line 890) | typedef PNG_CALLBACK(png_voidp, *png_malloc_ptr, (png_structp,
type PNG_CALLBACK (line 892) | typedef PNG_CALLBACK(void, *png_free_ptr, (png_structp, png_voidp));
type png_control (line 2694) | struct png_control
type png_image (line 2695) | typedef struct
FILE: windows/libs/libpng-1.6.37/x86_64-w64-mingw32/include/pngconf.h
type png_byte (line 481) | typedef unsigned char png_byte;
type png_int_16 (line 487) | typedef int png_int_16;
type png_int_16 (line 489) | typedef short png_int_16;
type png_uint_16 (line 495) | typedef unsigned int png_uint_16;
type png_uint_16 (line 497) | typedef unsigned short png_uint_16;
type png_int_32 (line 503) | typedef int png_int_32;
type png_int_32 (line 505) | typedef long int png_int_32;
type png_uint_32 (line 511) | typedef unsigned int png_uint_32;
type png_uint_32 (line 513) | typedef unsigned long int png_uint_32;
type png_size_t (line 523) | typedef size_t png_size_t;
type png_ptrdiff_t (line 524) | typedef ptrdiff_t png_ptrdiff_t;
type png_uint_32 (line 555) | typedef png_uint_32 png_alloc_size_t;
type png_alloc_size_t (line 557) | typedef size_t png_alloc_size_t;
type png_int_32 (line 574) | typedef png_int_32 png_fixed_point;
type png_byte (line 579) | typedef png_byte * png_bytep;
type png_byte (line 580) | typedef const png_byte * png_const_bytep;
type png_uint_32 (line 581) | typedef png_uint_32 * png_uint_32p;
type png_uint_32 (line 582) | typedef const png_uint_32 * png_const_uint_32p;
type png_int_32 (line 583) | typedef png_int_32 * png_int_32p;
type png_int_32 (line 584) | typedef const png_int_32 * png_const_int_32p;
type png_uint_16 (line 585) | typedef png_uint_16 * png_uint_16p;
type png_uint_16 (line 586) | typedef const png_uint_16 * png_const_uint_16p;
type png_int_16 (line 587) | typedef png_int_16 * png_int_16p;
type png_int_16 (line 588) | typedef const png_int_16 * png_const_int_16p;
type png_fixed_point (line 591) | typedef png_fixed_point * png_fixed_point_p;
type png_fixed_point (line 592) | typedef const png_fixed_point * png_const_fixed_point_p;
type FILE (line 597) | typedef FILE * png_FILE_p;
type png_byte (line 606) | typedef png_byte * * png_bytepp;
type png_uint_32 (line 607) | typedef png_uint_32 * * png_uint_32pp;
type png_int_32 (line 608) | typedef png_int_32 * * png_int_32pp;
type png_uint_16 (line 609) | typedef png_uint_16 * * png_uint_16pp;
type png_int_16 (line 610) | typedef png_int_16 * * png_int_16pp;
type png_fixed_point (line 613) | typedef png_fixed_point * * png_fixed_point_pp;
Condensed preview — 499 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (8,253K chars).
[
{
"path": ".gitignore",
"chars": 119,
"preview": "*.o\n/*/tamatool\n/*/tamatool-*.zip\nbuild\ntamatool.exe\nwindows/dist\nlinux/dist\nmac/dist\nmac/tamatool.icns\nicons/icon-*.*\n"
},
{
"path": ".gitmodules",
"chars": 79,
"preview": "[submodule \"lib\"]\n\tpath = src/lib\n\turl = https://github.com/jcrona/tamalib.git\n"
},
{
"path": "LICENSE",
"chars": 18092,
"preview": " GNU GENERAL PUBLIC LICENSE\n Version 2, June 1991\n\n Copyright (C) 1989, 1991 Fr"
},
{
"path": "Makefile",
"chars": 597,
"preview": "LINUX_PROJECT = linux\nWINDOWS_PROJECT = windows\nMAC_PROJECT = mac\n\nICONS_FOLDER = icons\n\nall: linux windows\n# The mac ta"
},
{
"path": "README.md",
"chars": 5395,
"preview": "# TamaTool - A Cross-Platform Explorer for First-Gen Tamagotchi\n\n\n## Synopsis\n\nTamaTool is a cross-platform explorer for"
},
{
"path": "icons/Makefile",
"chars": 1431,
"preview": "SRC_ICON = source-1024x1024.png\n\nLINUX_ICON_BASE_FOLDER = ../linux\nWINDOWS_ICON_BASE_FOLDER = ../windows\nMAC_ICON_BASE_F"
},
{
"path": "linux/Makefile",
"chars": 1270,
"preview": "GNU_PREFIX =\n\nCC=$(GNU_PREFIX)gcc\nLD=$(GNU_PREFIX)ld\n\nDESKTOP_FILE = tamatool.desktop\nICON_FILE = tamatool.png\n\nVERSION "
},
{
"path": "linux/tamatool.desktop",
"chars": 168,
"preview": "[Desktop Entry]\nVersion=0.1\nType=Application\nName=TamaTool Tamagotchi P1 explorer\nGenericName=TamaTool\nExec=tamatool\nIco"
},
{
"path": "mac/Info.plist",
"chars": 801,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple Computer//DTD PLIST 1.0//EN\" \"http://www.apple.c"
},
{
"path": "mac/Makefile",
"chars": 2877,
"preview": "GNU_PREFIX =\n\nCC=$(GNU_PREFIX)gcc\nLD=$(GNU_PREFIX)ld\n\nSDL_ROOT = libs\nSDL_IMAGE_ROOT = libs\nLIBPNG_ROOT = libs\n\nSDL_LIB "
},
{
"path": "mac/libs/bin/libpng16-config",
"chars": 2364,
"preview": "#! /bin/sh\n\n# libpng-config\n# provides configuration info for libpng.\n\n# Copyright (C) 2002, 2004, 2006, 2007 Glenn Rand"
},
{
"path": "mac/libs/bin/sdl2-config",
"chars": 1385,
"preview": "#!/bin/sh\n\nprefix=/Users/jc/TamaTool/mac/libs/build/sdl-build/../sdl-out\nexec_prefix=${prefix}\nexec_prefix_set=no\nlibdir"
},
{
"path": "mac/libs/include/SDL2/SDL.h",
"chars": 4279,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_assert.h",
"chars": 11248,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_atomic.h",
"chars": 10839,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_audio.h",
"chars": 35787,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_bits.h",
"chars": 3096,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_blendmode.h",
"chars": 5361,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_clipboard.h",
"chars": 1966,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_config.h",
"chars": 12999,
"preview": "/* include/SDL_config.h. Generated from SDL_config.h.in by configure. */\n/*\n Simple DirectMedia Layer\n Copyright (C)"
},
{
"path": "mac/libs/include/SDL2/SDL_cpuinfo.h",
"chars": 9725,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_egl.h",
"chars": 73665,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_endian.h",
"chars": 6516,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_error.h",
"chars": 3304,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_events.h",
"chars": 33076,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_filesystem.h",
"chars": 5255,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_gamecontroller.h",
"chars": 19590,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_gesture.h",
"chars": 2157,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_haptic.h",
"chars": 39581,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_hints.h",
"chars": 66098,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_image.h",
"chars": 6820,
"preview": "/*\n SDL_image: An example image loading library for use with SDL\n Copyright (C) 1997-2019 Sam Lantinga <slouken@libsd"
},
{
"path": "mac/libs/include/SDL2/SDL_joystick.h",
"chars": 17355,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_keyboard.h",
"chars": 6437,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_keycode.h",
"chars": 15271,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_loadso.h",
"chars": 2866,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_locale.h",
"chars": 3794,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_log.h",
"chars": 6515,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_main.h",
"chars": 5375,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_messagebox.h",
"chars": 4826,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_metal.h",
"chars": 3773,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_misc.h",
"chars": 2637,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_mouse.h",
"chars": 10924,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_mutex.h",
"chars": 6665,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_name.h",
"chars": 1155,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_opengl.h",
"chars": 82593,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_opengl_glext.h",
"chars": 731576,
"preview": "#ifndef __glext_h_\n#define __glext_h_ 1\n\n#ifdef __cplusplus\nextern \"C\" {\n#endif\n\n/*\n** Copyright (c) 2013-2014 The Khron"
},
{
"path": "mac/libs/include/SDL2/SDL_opengles.h",
"chars": 1254,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_opengles2.h",
"chars": 1552,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_opengles2_gl2.h",
"chars": 31876,
"preview": "#ifndef __gl2_h_\n#define __gl2_h_\n\n/* $Revision: 20555 $ on $Date:: 2013-02-12 14:32:47 -0800 #$ */\n\n/*#include <GLES2/g"
},
{
"path": "mac/libs/include/SDL2/SDL_opengles2_gl2ext.h",
"chars": 98695,
"preview": "#ifndef __gl2ext_h_\n#define __gl2ext_h_\n\n/* $Revision: 22801 $ on $Date:: 2013-08-21 03:20:48 -0700 #$ */\n\n#ifdef __cplu"
},
{
"path": "mac/libs/include/SDL2/SDL_opengles2_gl2platform.h",
"chars": 913,
"preview": "#ifndef __gl2platform_h_\n#define __gl2platform_h_\n\n/* $Revision: 10602 $ on $Date:: 2010-03-04 22:35:34 -0800 #$ */\n\n/*\n"
},
{
"path": "mac/libs/include/SDL2/SDL_opengles2_khrplatform.h",
"chars": 10022,
"preview": "#ifndef __khrplatform_h_\n#define __khrplatform_h_\n\n/*\n** Copyright (c) 2008-2009 The Khronos Group Inc.\n**\n** Permission"
},
{
"path": "mac/libs/include/SDL2/SDL_pixels.h",
"chars": 17816,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_platform.h",
"chars": 5203,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_power.h",
"chars": 2463,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_quit.h",
"chars": 2106,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_rect.h",
"chars": 4839,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_render.h",
"chars": 45044,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_revision.h",
"chars": 79,
"preview": "#define SDL_REVISION \"hg-14525:e52d96ea04fc\"\n#define SDL_REVISION_NUMBER 14525\n"
},
{
"path": "mac/libs/include/SDL2/SDL_rwops.h",
"chars": 8948,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_scancode.h",
"chars": 15254,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_sensor.h",
"chars": 8219,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_shape.h",
"chars": 5681,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_stdinc.h",
"chars": 23685,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_surface.h",
"chars": 20944,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_system.h",
"chars": 10730,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_syswm.h",
"chars": 10125,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_test.h",
"chars": 2000,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_test_assert.h",
"chars": 3243,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_test_common.h",
"chars": 6253,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_test_compare.h",
"chars": 2163,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_test_crc32.h",
"chars": 3385,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_test_font.h",
"chars": 2439,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_test_fuzzer.h",
"chars": 13122,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_test_harness.h",
"chars": 4612,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_test_images.h",
"chars": 2215,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_test_log.h",
"chars": 1954,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_test_md5.h",
"chars": 4630,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_test_memory.h",
"chars": 1787,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_test_random.h",
"chars": 3156,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_thread.h",
"chars": 13574,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_timer.h",
"chars": 3454,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_touch.h",
"chars": 2946,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_types.h",
"chars": 1031,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_version.h",
"chars": 5162,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_video.h",
"chars": 46860,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/SDL_vulkan.h",
"chars": 10965,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 2017, Mark Callow\n\n This software is provided 'as-is', without any expres"
},
{
"path": "mac/libs/include/SDL2/begin_code.h",
"chars": 4739,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/SDL2/close_code.h",
"chars": 1480,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "mac/libs/include/libpng16/png.h",
"chars": 142860,
"preview": "\n/* png.h - header file for PNG reference library\n *\n * libpng version 1.6.37 - April 14, 2019\n *\n * Copyright (c) 2018-"
},
{
"path": "mac/libs/include/libpng16/pngconf.h",
"chars": 22846,
"preview": "\n/* pngconf.h - machine-configurable file for libpng\n *\n * libpng version 1.6.37\n *\n * Copyright (c) 2018-2019 Cosmin Tr"
},
{
"path": "mac/libs/include/libpng16/pnglibconf.h",
"chars": 7602,
"preview": "/* pnglibconf.h - library build configuration */\n\n/* libpng version 1.6.37 */\n\n/* Copyright (c) 2018-2019 Cosmin Truta *"
},
{
"path": "mac/libs/lib/cmake/SDL2/sdl2-config-version.cmake",
"chars": 278,
"preview": "set(PACKAGE_VERSION \"2.0.14\")\n\nif(PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION)\n set(PACKAGE_VERSION_COMPATIBLE FA"
},
{
"path": "mac/libs/lib/cmake/SDL2/sdl2-config.cmake",
"chars": 2173,
"preview": "# sdl2 cmake project-config input for ./configure scripts\n\nset(prefix \"/Users/jc/TamaTool/mac/libs/build/sdl-build/../sd"
},
{
"path": "mac/libs/lib/libSDL2.la",
"chars": 983,
"preview": "# libSDL2.la - a libtool library file\n# Generated by libtool (GNU libtool) 2.4.2\n#\n# Please DO NOT delete this file!\n# I"
},
{
"path": "mac/libs/lib/libSDL2_image.la",
"chars": 1156,
"preview": "# libSDL2_image.la - a libtool library file\n# Generated by ltmain.sh (GNU libtool) 2.2.6\n#\n# Please DO NOT delete this f"
},
{
"path": "mac/libs/lib/libSDL2_test.la",
"chars": 925,
"preview": "# libSDL2_test.la - a libtool library file\n# Generated by libtool (GNU libtool) 2.4.2\n#\n# Please DO NOT delete this file"
},
{
"path": "mac/libs/lib/libSDL2main.la",
"chars": 922,
"preview": "# libSDL2main.la - a libtool library file\n# Generated by libtool (GNU libtool) 2.4.2\n#\n# Please DO NOT delete this file!"
},
{
"path": "mac/libs/lib/libpng16.la",
"chars": 968,
"preview": "# libpng16.la - a libtool library file\n# Generated by libtool (GNU libtool) 2.4.6\n#\n# Please DO NOT delete this file!\n# "
},
{
"path": "mac/libs/lib/pkgconfig/SDL2_image.pc",
"chars": 327,
"preview": "prefix=/Users/jc/TamaTool/mac/libs/build/sdl-image-build/../sdl-out\nexec_prefix=${prefix}\nlibdir=${exec_prefix}/lib\nincl"
},
{
"path": "mac/libs/lib/pkgconfig/libpng16.pc",
"chars": 302,
"preview": "prefix=/Users/jc/TamaTool/mac/libs/build/lpng-build/../sdl-out\nexec_prefix=${prefix}\nlibdir=${exec_prefix}/lib\nincludedi"
},
{
"path": "mac/libs/lib/pkgconfig/sdl2.pc",
"chars": 697,
"preview": "# sdl pkg-config source file\n\nprefix=/Users/jc/TamaTool/mac/libs/build/sdl-build/../sdl-out\nexec_prefix=${prefix}\nlibdir"
},
{
"path": "mac/libs/share/aclocal/sdl2.m4",
"chars": 8093,
"preview": "# Configure paths for SDL\n# Sam Lantinga 9/21/99\n# stolen from Manish Singh\n# stolen back from Frank Belew\n# stolen from"
},
{
"path": "mac/libs/share/man/man3/libpng.3",
"chars": 266162,
"preview": ".TH LIBPNG 3 \"April 14, 2019\"\n.SH NAME\nlibpng \\- Portable Network Graphics (PNG) Reference Library 1.6.37\n\n.SH SYNOPSIS\n"
},
{
"path": "mac/libs/share/man/man3/libpngpf.3",
"chars": 801,
"preview": ".TH LIBPNGPF 3 \"April 14, 2019\"\n.SH NAME\nlibpng \\- Portable Network Graphics (PNG) Reference Library 1.6.37\n(private fun"
},
{
"path": "mac/libs/share/man/man5/png.5",
"chars": 2493,
"preview": ".TH PNG 5 \"April 14, 2019\"\n.SH NAME\npng \\- Portable Network Graphics (PNG) format\n\n.SH DESCRIPTION\nPNG (Portable Network"
},
{
"path": "mac/tamatool.mac",
"chars": 36,
"preview": "#!/bin/bash\ncd \"${0%/*}\"\n./tamatool\n"
},
{
"path": "src/common.mk",
"chars": 210,
"preview": "TARGET = tamatool\n\nLIB_FOLDER = lib\nLIB_SRCS = $(LIB_FOLDER)/tamalib.c $(LIB_FOLDER)/cpu.c $(LIB_FOLDER)/hw.c\n\nSRCS = ta"
},
{
"path": "src/hal_types.h",
"chars": 1253,
"preview": "/*\n * TamaTool - A Cross-Platform Explorer for First-Gen Tamagotchi\n *\n * Copyright (C) 2021 Jean-Christophe Rona <jc@ro"
},
{
"path": "src/image.c",
"chars": 4457,
"preview": "/*\n * TamaTool - A Cross-Platform Explorer for First-Gen Tamagotchi\n *\n * Copyright (C) 2021 Jean-Christophe Rona <jc@ro"
},
{
"path": "src/image.h",
"chars": 1248,
"preview": "/*\n * TamaTool - A Cross-Platform Explorer for First-Gen Tamagotchi\n *\n * Copyright (C) 2021 Jean-Christophe Rona <jc@ro"
},
{
"path": "src/mem_edit.c",
"chars": 6568,
"preview": "/*\n * TamaTool - A Cross-Platform Explorer for First-Gen Tamagotchi\n *\n * Copyright (C) 2021 Jean-Christophe Rona <jc@ro"
},
{
"path": "src/mem_edit.h",
"chars": 1027,
"preview": "/*\n * TamaTool - A Cross-Platform Explorer for First-Gen Tamagotchi\n *\n * Copyright (C) 2021 Jean-Christophe Rona <jc@ro"
},
{
"path": "src/program.c",
"chars": 8179,
"preview": "/*\n * TamaTool - A Cross-Platform Explorer for First-Gen Tamagotchi\n *\n * Copyright (C) 2021 Jean-Christophe Rona <jc@ro"
},
{
"path": "src/program.h",
"chars": 1556,
"preview": "/*\n * TamaTool - A Cross-Platform Explorer for First-Gen Tamagotchi\n *\n * Copyright (C) 2021 Jean-Christophe Rona <jc@ro"
},
{
"path": "src/state.c",
"chars": 11067,
"preview": "/*\n * TamaTool - A Cross-Platform Explorer for First-Gen Tamagotchi\n *\n * Copyright (C) 2021 Jean-Christophe Rona <jc@ro"
},
{
"path": "src/state.h",
"chars": 1083,
"preview": "/*\n * TamaTool - A Cross-Platform Explorer for First-Gen Tamagotchi\n *\n * Copyright (C) 2021 Jean-Christophe Rona <jc@ro"
},
{
"path": "src/tamatool.c",
"chars": 22791,
"preview": "/*\n * TamaTool - A Cross-Platform Explorer for First-Gen Tamagotchi\n *\n * Copyright (C) 2021 Jean-Christophe Rona <jc@ro"
},
{
"path": "windows/Makefile",
"chars": 2200,
"preview": "WIN_ARCH ?= 64\n\nifeq ($(WIN_ARCH), 64)\nCROSS_COMPILER = x86_64-w64-mingw32\nelse ifeq ($(WIN_ARCH), 32)\nCROSS_COMPILER = "
},
{
"path": "windows/libs/SDL2-2.0.14/BUGS.txt",
"chars": 463,
"preview": "\r\nBugs are now managed in the SDL bug tracker, here:\r\n\r\n https://bugzilla.libsdl.org/\r\n\r\nYou may report bugs there, a"
},
{
"path": "windows/libs/SDL2-2.0.14/COPYING.txt",
"chars": 930,
"preview": "\r\nSimple DirectMedia Layer\r\nCopyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\r\n \r\nThis software is provided 'as"
},
{
"path": "windows/libs/SDL2-2.0.14/CREDITS.txt",
"chars": 1918,
"preview": "\r\nSimple DirectMedia Layer CREDITS\r\nThanks to everyone who made this possible, including:\r\n\r\n* Cliff Matthews, for givin"
},
{
"path": "windows/libs/SDL2-2.0.14/INSTALL.txt",
"chars": 489,
"preview": "\r\nThe 32-bit files are in i686-w64-mingw32\r\nThe 64-bit files are in x86_64-w64-mingw32\r\n\r\nTo install SDL for native deve"
},
{
"path": "windows/libs/SDL2-2.0.14/Makefile",
"chars": 1161,
"preview": "#\n# Makefile for installing the mingw32 version of the SDL library\n\nCROSS_PATH := /usr/local\nARCHITECTURES := i686-w64-m"
},
{
"path": "windows/libs/SDL2-2.0.14/README-SDL.txt",
"chars": 433,
"preview": "\r\nPlease distribute this file with the SDL runtime environment:\r\n\r\nThe Simple DirectMedia Layer (SDL for short) is a cro"
},
{
"path": "windows/libs/SDL2-2.0.14/README.txt",
"chars": 648,
"preview": "\r\n Simple DirectMedia Layer\r\n\r\n (SDL)\r\n\r\n "
},
{
"path": "windows/libs/SDL2-2.0.14/WhatsNew.txt",
"chars": 35930,
"preview": "\r\nThis is a list of major changes in SDL's version history.\r\n\r\n---------------------------------------------------------"
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-android.md",
"chars": 20326,
"preview": "Android\r\n================================================================================\r\n\r\nMatt Styles wrote a tutoria"
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-cmake.md",
"chars": 3406,
"preview": "CMake\r\n================================================================================\r\n(www.cmake.org)\r\n\r\nSDL's build "
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-directfb.md",
"chars": 2660,
"preview": "DirectFB\r\n========\r\n\r\nSupports:\r\n\r\n- Hardware YUV overlays\r\n- OpenGL - software only\r\n- 2D/3D accelerations (depends on "
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-dynapi.md",
"chars": 7111,
"preview": "Dynamic API\r\n================================================================================\r\nOriginally posted by Ryan"
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-emscripten.md",
"chars": 966,
"preview": "Emscripten\r\n================================================================================\r\n\r\nBuild:\r\n\r\n $ mkdir bu"
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-gesture.md",
"chars": 4074,
"preview": "Dollar Gestures\r\n===========================================================================\r\nSDL provides an implementa"
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-hg.md",
"chars": 809,
"preview": "Mercurial\r\n=========\r\n\r\nThe latest development version of SDL is available via Mercurial.\r\nMercurial allows you to get u"
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-ios.md",
"chars": 15984,
"preview": "iOS\r\n======\r\n\r\n==============================================================================\r\nBuilding the Simple Direc"
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-linux.md",
"chars": 3699,
"preview": "Linux\r\n================================================================================\r\n\r\nBy default SDL will only link"
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-macosx.md",
"chars": 10088,
"preview": "Mac OS X\r\n==============================================================================\r\n\r\nThese instructions are for p"
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-nacl.md",
"chars": 4428,
"preview": "Native Client\r\n================================================================================\r\n\r\nRequirements: \r\n\r\n* N"
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-os2.md",
"chars": 1775,
"preview": "Simple DirectMedia Layer 2 for OS/2 & eComStation\n======================================================================"
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-pandora.md",
"chars": 752,
"preview": "Pandora \r\n=====================================================================\r\n\r\n( http://openpandora.org/ )\r\n- A pand"
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-platforms.md",
"chars": 187,
"preview": "Platforms\r\n=========\r\n\r\nWe maintain the list of supported platforms on our wiki now, and how to\r\nbuild and install SDL f"
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-porting.md",
"chars": 2029,
"preview": "Porting\r\n=======\r\n\r\n* Porting To A New Platform\r\n\r\n The first thing you have to do when porting to a new platform, is l"
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-psp.md",
"chars": 354,
"preview": "PSP\r\n======\r\nSDL port for the Sony PSP contributed by \r\n Captian Lex \r\n\r\nCredit to\r\n Marcus R.Brown,Jim Paris,Matthe"
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-raspberrypi.md",
"chars": 8051,
"preview": "Raspberry Pi\r\n================================================================================\r\n\r\nRequirements:\r\n\r\nRaspb"
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-touch.md",
"chars": 4111,
"preview": "Touch\r\n===========================================================================\r\nSystem Specific Notes\r\n============="
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-wince.md",
"chars": 220,
"preview": "WinCE\r\n=====\r\n\r\nWindows CE is no longer supported by SDL.\r\n\r\nWe have left the CE support in SDL 1.2 for those that must "
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-windows.md",
"chars": 2362,
"preview": "Windows\n================================================================================\n\n=============================="
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README-winrt.md",
"chars": 26158,
"preview": "WinRT\r\n=====\r\n\r\nThis port allows SDL applications to run on Microsoft's platforms that require\r\nuse of \"Windows Runtime\""
},
{
"path": "windows/libs/SDL2-2.0.14/docs/README.md",
"chars": 2191,
"preview": "Simple DirectMedia Layer {#mainpage}\r\n========================\r\n\r\n (SDL)\r\n\r\n "
},
{
"path": "windows/libs/SDL2-2.0.14/docs/doxyfile",
"chars": 65794,
"preview": "# Doxyfile 1.5.9\n\n# This file describes the settings to be used by the documentation system\n# doxygen (www.doxygen.org) "
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/bin/sdl2-config",
"chars": 1419,
"preview": "#!/bin/sh\n\nprefix=/opt/local/i686-w64-mingw32\nexec_prefix=${prefix}\nexec_prefix_set=no\nlibdir=${exec_prefix}/lib\n\n#usage"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL.h",
"chars": 4279,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_assert.h",
"chars": 11248,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_atomic.h",
"chars": 10839,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_audio.h",
"chars": 35787,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_bits.h",
"chars": 3096,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_blendmode.h",
"chars": 5361,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_clipboard.h",
"chars": 1966,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_config.h",
"chars": 7515,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_cpuinfo.h",
"chars": 9725,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_egl.h",
"chars": 73665,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_endian.h",
"chars": 6516,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_error.h",
"chars": 3304,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_events.h",
"chars": 33076,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_filesystem.h",
"chars": 5255,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_gamecontroller.h",
"chars": 19590,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_gesture.h",
"chars": 2157,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_haptic.h",
"chars": 39581,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_hints.h",
"chars": 66098,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_joystick.h",
"chars": 17355,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_keyboard.h",
"chars": 6437,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_keycode.h",
"chars": 15271,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_loadso.h",
"chars": 2866,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_locale.h",
"chars": 3794,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_log.h",
"chars": 6515,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_main.h",
"chars": 5375,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_messagebox.h",
"chars": 4826,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_metal.h",
"chars": 3773,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_misc.h",
"chars": 2637,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_mouse.h",
"chars": 10924,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_mutex.h",
"chars": 6665,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_name.h",
"chars": 1155,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_opengl.h",
"chars": 82593,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_opengl_glext.h",
"chars": 731576,
"preview": "#ifndef __glext_h_\n#define __glext_h_ 1\n\n#ifdef __cplusplus\nextern \"C\" {\n#endif\n\n/*\n** Copyright (c) 2013-2014 The Khron"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_opengles.h",
"chars": 1254,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_opengles2.h",
"chars": 1552,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_opengles2_gl2.h",
"chars": 31876,
"preview": "#ifndef __gl2_h_\n#define __gl2_h_\n\n/* $Revision: 20555 $ on $Date:: 2013-02-12 14:32:47 -0800 #$ */\n\n/*#include <GLES2/g"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_opengles2_gl2ext.h",
"chars": 98695,
"preview": "#ifndef __gl2ext_h_\n#define __gl2ext_h_\n\n/* $Revision: 22801 $ on $Date:: 2013-08-21 03:20:48 -0700 #$ */\n\n#ifdef __cplu"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_opengles2_gl2platform.h",
"chars": 913,
"preview": "#ifndef __gl2platform_h_\n#define __gl2platform_h_\n\n/* $Revision: 10602 $ on $Date:: 2010-03-04 22:35:34 -0800 #$ */\n\n/*\n"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_opengles2_khrplatform.h",
"chars": 10022,
"preview": "#ifndef __khrplatform_h_\n#define __khrplatform_h_\n\n/*\n** Copyright (c) 2008-2009 The Khronos Group Inc.\n**\n** Permission"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_pixels.h",
"chars": 17816,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_platform.h",
"chars": 5203,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_power.h",
"chars": 2463,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_quit.h",
"chars": 2106,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_rect.h",
"chars": 4839,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_render.h",
"chars": 45044,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_revision.h",
"chars": 79,
"preview": "#define SDL_REVISION \"hg-14525:e52d96ea04fc\"\n#define SDL_REVISION_NUMBER 14525\n"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_rwops.h",
"chars": 8948,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_scancode.h",
"chars": 15254,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
},
{
"path": "windows/libs/SDL2-2.0.14/i686-w64-mingw32/include/SDL2/SDL_sensor.h",
"chars": 8219,
"preview": "/*\n Simple DirectMedia Layer\n Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>\n\n This software is provided '"
}
]
// ... and 299 more files (download for full content)
About this extraction
This page contains the full source code of the jcrona/tamatool GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 499 files (34.3 MB), approximately 2.0M tokens, and a symbol index with 2382 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.