mirror of
				https://github.com/KartKrewDev/RingRacers.git
				synced 2025-10-30 08:01:28 +00:00 
			
		
		
		
	Revert "Merge branch 'revert-34a41977' into 'master'"
This reverts merge request !435
This commit is contained in:
		
							parent
							
								
									ea085a4c5b
								
							
						
					
					
						commit
						77e1c7090f
					
				
					 960 changed files with 153444 additions and 48152 deletions
				
			
		| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
 | 
			
		||||
Simple DirectMedia Layer
 | 
			
		||||
Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,38 @@
 | 
			
		|||
 | 
			
		||||
This is a list of major changes in SDL's version history.
 | 
			
		||||
 | 
			
		||||
---------------------------------------------------------------------------
 | 
			
		||||
2.0.10:
 | 
			
		||||
---------------------------------------------------------------------------
 | 
			
		||||
 | 
			
		||||
General:
 | 
			
		||||
* The SDL_RW* macros have been turned into functions that are available only in 2.0.10 and onward
 | 
			
		||||
* Added SDL_SIMDGetAlignment(), SDL_SIMDAlloc(), and SDL_SIMDFree(), to allocate memory aligned for SIMD operations for the current CPU
 | 
			
		||||
* Added SDL_RenderDrawPointF(), SDL_RenderDrawPointsF(), SDL_RenderDrawLineF(), SDL_RenderDrawLinesF(), SDL_RenderDrawRectF(), SDL_RenderDrawRectsF(), SDL_RenderFillRectF(), SDL_RenderFillRectsF(), SDL_RenderCopyF(), SDL_RenderCopyExF(), to allow floating point precision in the SDL rendering API.
 | 
			
		||||
* Added SDL_GetTouchDeviceType() to get the type of a touch device, which can be a touch screen or a trackpad in relative or absolute coordinate mode.
 | 
			
		||||
* The SDL rendering API now uses batched rendering by default, for improved performance
 | 
			
		||||
* Added SDL_RenderFlush() to force batched render commands to execute, if you're going to mix SDL rendering with native rendering
 | 
			
		||||
* Added the hint SDL_HINT_RENDER_BATCHING to control whether batching should be used for the rendering API. This defaults to "1" if you don't specify what rendering driver to use when creating the renderer.
 | 
			
		||||
* Added the hint SDL_HINT_EVENT_LOGGING to enable logging of SDL events for debugging purposes
 | 
			
		||||
* Added the hint SDL_HINT_GAMECONTROLLERCONFIG_FILE to specify a file that will be loaded at joystick initialization with game controller bindings
 | 
			
		||||
* Added the hint SDL_HINT_MOUSE_TOUCH_EVENTS to control whether SDL will synthesize touch events from mouse events
 | 
			
		||||
* Improved handling of malformed WAVE and BMP files, fixing potential security exploits
 | 
			
		||||
 | 
			
		||||
Linux:
 | 
			
		||||
* Removed the Mir video driver in favor of Wayland
 | 
			
		||||
 | 
			
		||||
iOS / tvOS:
 | 
			
		||||
* Added support for Xbox and PS4 wireless controllers in iOS 13 and tvOS 13
 | 
			
		||||
* Added support for text input using Bluetooth keyboards
 | 
			
		||||
 | 
			
		||||
Android:
 | 
			
		||||
* Added low latency audio using OpenSL ES
 | 
			
		||||
* Removed SDL_HINT_ANDROID_SEPARATE_MOUSE_AND_TOUCH (replaced by SDL_HINT_MOUSE_TOUCH_EVENTS and SDL_HINT_TOUCH_MOUSE_EVENTS)
 | 
			
		||||
  SDL_HINT_ANDROID_SEPARATE_MOUSE_AND_TOUCH=1, should be replaced by setting both previous hints to 0.
 | 
			
		||||
  SDL_HINT_ANDROID_SEPARATE_MOUSE_AND_TOUCH=0, should be replaced by setting both previous hints to 1.
 | 
			
		||||
* Added the hint SDL_HINT_ANDROID_BLOCK_ON_PAUSE to set whether the event loop will block itself when the app is paused.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
---------------------------------------------------------------------------
 | 
			
		||||
2.0.9:
 | 
			
		||||
---------------------------------------------------------------------------
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -20,7 +20,7 @@ https://developer.android.com/sdk/index.html
 | 
			
		|||
Android NDK r15c or later
 | 
			
		||||
https://developer.android.com/tools/sdk/ndk/index.html
 | 
			
		||||
 | 
			
		||||
Minimum API level supported by SDL: 14 (Android 4.0.1)
 | 
			
		||||
Minimum API level supported by SDL: 16 (Android 4.1)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
================================================================================
 | 
			
		||||
| 
						 | 
				
			
			@ -174,7 +174,7 @@ http://ponystyle.com/blog/2010/03/26/dealing-with-asset-compression-in-android-a
 | 
			
		|||
 Pause / Resume behaviour
 | 
			
		||||
================================================================================
 | 
			
		||||
 | 
			
		||||
If SDL is compiled with SDL_ANDROID_BLOCK_ON_PAUSE defined (the default),
 | 
			
		||||
If SDL_HINT_ANDROID_BLOCK_ON_PAUSE hint is set (the default),
 | 
			
		||||
the event loop will block itself when the app is paused (ie, when the user
 | 
			
		||||
returns to the main Android dashboard). Blocking is better in terms of battery
 | 
			
		||||
use, and it allows your app to spring back to life instantaneously after resume
 | 
			
		||||
| 
						 | 
				
			
			@ -380,13 +380,13 @@ https://developer.nvidia.com/tegra-graphics-debugger
 | 
			
		|||
 | 
			
		||||
 | 
			
		||||
================================================================================
 | 
			
		||||
 Why is API level 14 the minimum required?
 | 
			
		||||
 Why is API level 16 the minimum required?
 | 
			
		||||
================================================================================
 | 
			
		||||
 | 
			
		||||
The latest NDK toolchain doesn't support targeting earlier than API level 14.
 | 
			
		||||
The latest NDK toolchain doesn't support targeting earlier than API level 16.
 | 
			
		||||
As of this writing, according to https://developer.android.com/about/dashboards/index.html
 | 
			
		||||
about 99% of the Android devices accessing Google Play support API level 14 or
 | 
			
		||||
higher (October 2017).
 | 
			
		||||
about 99% of the Android devices accessing Google Play support API level 16 or
 | 
			
		||||
higher (January 2018).
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
================================================================================
 | 
			
		||||
| 
						 | 
				
			
			@ -408,6 +408,24 @@ screen each frame.
 | 
			
		|||
Reference: http://www.khronos.org/registry/egl/specs/EGLTechNote0001.html
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
================================================================================
 | 
			
		||||
 Ending your application
 | 
			
		||||
================================================================================
 | 
			
		||||
 | 
			
		||||
Two legitimate ways:
 | 
			
		||||
 | 
			
		||||
- return from your main() function. Java side will automatically terminate the
 | 
			
		||||
Activity by calling Activity.finish().
 | 
			
		||||
 | 
			
		||||
- Android OS can decide to terminate your application by calling onDestroy()
 | 
			
		||||
(see Activity life cycle). Your application will receive a SDL_QUIT event you 
 | 
			
		||||
can handle to save things and quit.
 | 
			
		||||
 | 
			
		||||
Don't call exit() as it stops the activity badly.
 | 
			
		||||
 | 
			
		||||
NB: "Back button" can be handled as a SDL_KEYDOWN/UP events, with Keycode
 | 
			
		||||
SDLK_AC_BACK, for any purpose.
 | 
			
		||||
 | 
			
		||||
================================================================================
 | 
			
		||||
 Known issues
 | 
			
		||||
================================================================================
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,9 +25,6 @@ fcitx-libs-dev libsamplerate0-dev libsndio-dev
 | 
			
		|||
Ubuntu 16.04+ can also add "libwayland-dev libxkbcommon-dev wayland-protocols"
 | 
			
		||||
to that command line for Wayland support.
 | 
			
		||||
 | 
			
		||||
Ubuntu 16.10 can also add "libmirclient-dev libxkbcommon-dev" to that command
 | 
			
		||||
line for Mir support.
 | 
			
		||||
 | 
			
		||||
NOTES:
 | 
			
		||||
- This includes all the audio targets except arts, because Ubuntu pulled the 
 | 
			
		||||
  artsc0-dev package, but in theory SDL still supports it.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -100,7 +100,7 @@ You should replace EXE_NAME with the name of the executable. APP_NAME is what
 | 
			
		|||
will be visible to the user in the Finder. Usually it will be the same
 | 
			
		||||
as EXE_NAME but capitalized. E.g. if EXE_NAME is "testgame" then APP_NAME 
 | 
			
		||||
usually is "TestGame". You might also want to use `@PACKAGE@` to use the package
 | 
			
		||||
name as specified in your configure.in file.
 | 
			
		||||
name as specified in your configure.ac file.
 | 
			
		||||
 | 
			
		||||
If your project builds more than one application, you will have to do a bit
 | 
			
		||||
more. For each of your target applications, you need a separate rule.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -13,7 +13,7 @@ There are two basic ways of building SDL at the moment:
 | 
			
		|||
 | 
			
		||||
1. The "UNIX" way:  ./configure; make; make install
 | 
			
		||||
 | 
			
		||||
   If you have a GNUish system, then you might try this.  Edit configure.in,
 | 
			
		||||
   If you have a GNUish system, then you might try this.  Edit configure.ac,
 | 
			
		||||
   take a look at the large section labelled:
 | 
			
		||||
 | 
			
		||||
	"Set up the configuration based on the host platform!"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -296,7 +296,7 @@ A few files should be included directly in your app's MSVC project, specifically
 | 
			
		|||
   included, mouse-position reporting may fail if and when the cursor is
 | 
			
		||||
   hidden, due to possible bugs/design-oddities in Windows itself.*
 | 
			
		||||
 | 
			
		||||
To include these files:
 | 
			
		||||
To include these files for C/C++ projects:
 | 
			
		||||
 | 
			
		||||
1. right-click on your project (again, in Visual C++'s Solution Explorer), 
 | 
			
		||||
   navigate to "Add", then choose "Existing Item...".
 | 
			
		||||
| 
						 | 
				
			
			@ -313,11 +313,14 @@ To include these files:
 | 
			
		|||
7. change the setting for "Consume Windows Runtime Extension" to "Yes (/ZW)".
 | 
			
		||||
8. click the OK button.  This will close the dialog.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
**NOTE: C++/CX compilation is currently required in at least one file of your 
 | 
			
		||||
app's project.  This is to make sure that Visual C++'s linker builds a 'Windows 
 | 
			
		||||
Metadata' file (.winmd) for your app.  Not doing so can lead to build errors.**
 | 
			
		||||
 | 
			
		||||
For non-C++ projects, you will need to call SDL_WinRTRunApp from your language's
 | 
			
		||||
main function, and generate SDL2-WinRTResources.res manually by using `rc` via
 | 
			
		||||
the Developer Command Prompt and including it as a <Win32Resource> within the
 | 
			
		||||
first <PropertyGroup> block in your Visual Studio project file.
 | 
			
		||||
 | 
			
		||||
### 6. Add app code and assets ###
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -39,7 +39,7 @@ while test $# -gt 0; do
 | 
			
		|||
      echo $exec_prefix
 | 
			
		||||
      ;;
 | 
			
		||||
    --version)
 | 
			
		||||
      echo 2.0.9
 | 
			
		||||
      echo 2.0.10
 | 
			
		||||
      ;;
 | 
			
		||||
    --cflags)
 | 
			
		||||
      echo -I${prefix}/include/SDL2  -Dmain=SDL_main
 | 
			
		||||
| 
						 | 
				
			
			@ -49,7 +49,7 @@ while test $# -gt 0; do
 | 
			
		|||
      ;;
 | 
			
		||||
    --static-libs)
 | 
			
		||||
#    --libs|--static-libs)
 | 
			
		||||
      echo -L${exec_prefix}/lib  -lmingw32 -lSDL2main -lSDL2 -mwindows  -Wl,--no-undefined -lm -ldinput8 -ldxguid -ldxerr8 -luser32 -lgdi32 -lwinmm -limm32 -lole32 -loleaut32 -lshell32 -lsetupapi -lversion -luuid -static-libgcc
 | 
			
		||||
      echo -L${exec_prefix}/lib  -lmingw32 -lSDL2main -lSDL2 -mwindows  -Wl,--no-undefined -Wl,--dynamicbase -Wl,--nxcompat -lm -ldinput8 -ldxguid -ldxerr8 -luser32 -lgdi32 -lwinmm -limm32 -lole32 -loleaut32 -lshell32 -lsetupapi -lversion -luuid -static-libgcc
 | 
			
		||||
      ;;
 | 
			
		||||
    *)
 | 
			
		||||
      echo "${usage}" 1>&2
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -162,12 +162,29 @@ extern DECLSPEC void SDLCALL SDL_MemoryBarrierAcquireFunction(void);
 | 
			
		|||
#define SDL_MemoryBarrierRelease()   __asm__ __volatile__ ("dmb ish" : : : "memory")
 | 
			
		||||
#define SDL_MemoryBarrierAcquire()   __asm__ __volatile__ ("dmb ish" : : : "memory")
 | 
			
		||||
#elif defined(__GNUC__) && defined(__arm__)
 | 
			
		||||
#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__)
 | 
			
		||||
#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
 | 
			
		||||
| 
						 | 
				
			
			@ -177,6 +194,7 @@ extern DECLSPEC void SDLCALL SDL_MemoryBarrierAcquireFunction(void);
 | 
			
		|||
#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))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -420,23 +420,56 @@ extern DECLSPEC void SDLCALL SDL_PauseAudioDevice(SDL_AudioDeviceID dev,
 | 
			
		|||
/* @} *//* Pause audio functions */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  This function loads a WAVE from the data source, automatically freeing
 | 
			
		||||
 *  that source if \c freesrc is non-zero.  For example, to load a WAVE file,
 | 
			
		||||
 *  you could do:
 | 
			
		||||
 *  \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
 | 
			
		||||
 *
 | 
			
		||||
 *  If this function succeeds, it returns the given SDL_AudioSpec,
 | 
			
		||||
 *  filled with the audio data format of the wave data, and sets
 | 
			
		||||
 *  \c *audio_buf to a malloc()'d buffer containing the audio data,
 | 
			
		||||
 *  and sets \c *audio_len to the length of that audio buffer, in bytes.
 | 
			
		||||
 *  You need to free the audio buffer with SDL_FreeWAV() when you are
 | 
			
		||||
 *  done with it.
 | 
			
		||||
 *
 | 
			
		||||
 *  This function returns NULL and sets the SDL error message if the
 | 
			
		||||
 *  wave file cannot be opened, uses an unknown data format, or is
 | 
			
		||||
 *  corrupt.  Currently raw and MS-ADPCM WAVE files are supported.
 | 
			
		||||
 *  \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,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -101,6 +101,15 @@ SDL_MostSignificantBitIndex32(Uint32 x)
 | 
			
		|||
#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
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -90,12 +90,12 @@ typedef enum
 | 
			
		|||
/**
 | 
			
		||||
 *  \brief Create a custom blend mode, which may or may not be supported by a given renderer
 | 
			
		||||
 *
 | 
			
		||||
 *  \param srcColorFactor
 | 
			
		||||
 *  \param dstColorFactor
 | 
			
		||||
 *  \param colorOperation
 | 
			
		||||
 *  \param srcAlphaFactor
 | 
			
		||||
 *  \param dstAlphaFactor
 | 
			
		||||
 *  \param alphaOperation
 | 
			
		||||
 *  \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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -41,24 +41,43 @@
 | 
			
		|||
#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
 | 
			
		||||
#ifdef __ALTIVEC__
 | 
			
		||||
#if defined(HAVE_ALTIVEC_H) && !defined(__APPLE_ALTIVEC__) && !defined(SDL_DISABLE_ALTIVEC_H)
 | 
			
		||||
/* 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>
 | 
			
		||||
#undef pixel
 | 
			
		||||
#undef bool
 | 
			
		||||
#endif
 | 
			
		||||
#endif
 | 
			
		||||
#if defined(__ARM_NEON__) && !defined(SDL_DISABLE_ARM_NEON_H)
 | 
			
		||||
#include <arm_neon.h>
 | 
			
		||||
#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 <armintr.h>
 | 
			
		||||
#      include <arm_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>
 | 
			
		||||
| 
						 | 
				
			
			@ -177,6 +196,69 @@ extern DECLSPEC SDL_bool SDLCALL SDL_HasNEON(void);
 | 
			
		|||
 */
 | 
			
		||||
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_SIMDFree
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC void * SDLCALL SDL_SIMDAlloc(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
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC void SDLCALL SDL_SIMDFree(void *ptr);
 | 
			
		||||
 | 
			
		||||
/* vi: set ts=4 sw=4 expandtab: */
 | 
			
		||||
/* Ends C function definitions when using C++ */
 | 
			
		||||
#ifdef __cplusplus
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -594,6 +594,9 @@ typedef union SDL_Event
 | 
			
		|||
    Uint8 padding[56];
 | 
			
		||||
} SDL_Event;
 | 
			
		||||
 | 
			
		||||
/* Make sure we haven't broken binary compatibility */
 | 
			
		||||
SDL_COMPILE_TIME_ASSERT(SDL_Event, sizeof(SDL_Event) == 56);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/* Function prototypes */
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -315,6 +315,16 @@ extern "C" {
 | 
			
		|||
 */
 | 
			
		||||
#define SDL_HINT_TOUCH_MOUSE_EVENTS    "SDL_TOUCH_MOUSE_EVENTS"
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief  A variable controlling whether mouse events should generate synthetic touch events
 | 
			
		||||
 *
 | 
			
		||||
 *  This variable can be set to the following values:
 | 
			
		||||
 *    "0"       - Mouse events will not generate touch events (default for desktop platforms)
 | 
			
		||||
 *    "1"       - Mouse events will generate touch events (default for mobile platforms, such as Android and iOS)
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#define SDL_HINT_MOUSE_TOUCH_EVENTS    "SDL_MOUSE_TOUCH_EVENTS"
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief Minimize your SDL_Window if it loses key focus when in fullscreen mode. Defaults to true.
 | 
			
		||||
 *
 | 
			
		||||
| 
						 | 
				
			
			@ -436,6 +446,16 @@ extern "C" {
 | 
			
		|||
 */
 | 
			
		||||
#define SDL_HINT_GAMECONTROLLERCONFIG "SDL_GAMECONTROLLERCONFIG"
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief  A variable that lets you provide a file with extra gamecontroller db entries.
 | 
			
		||||
 *
 | 
			
		||||
 *  The file should contain lines of gamecontroller config data, see SDL_gamecontroller.h
 | 
			
		||||
 *
 | 
			
		||||
 *  This hint must be set before calling SDL_Init(SDL_INIT_GAMECONTROLLER)
 | 
			
		||||
 *  You can update mappings after the system is initialized with SDL_GameControllerMappingForGUID() and SDL_GameControllerAddMapping()
 | 
			
		||||
 */
 | 
			
		||||
#define SDL_HINT_GAMECONTROLLERCONFIG_FILE "SDL_GAMECONTROLLERCONFIG_FILE"
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief  A variable containing a list of devices to skip when scanning for game controllers.
 | 
			
		||||
 *
 | 
			
		||||
| 
						 | 
				
			
			@ -836,19 +856,7 @@ extern "C" {
 | 
			
		|||
 */
 | 
			
		||||
#define SDL_HINT_IME_INTERNAL_EDITING "SDL_IME_INTERNAL_EDITING"
 | 
			
		||||
 | 
			
		||||
 /**
 | 
			
		||||
 * \brief A variable to control whether mouse and touch events are to be treated together or separately
 | 
			
		||||
 *
 | 
			
		||||
 * The variable can be set to the following values:
 | 
			
		||||
 *   "0"       - Mouse events will be handled as touch events, and touch will raise fake mouse
 | 
			
		||||
 *               events. This is the behaviour of SDL <= 2.0.3. (default)
 | 
			
		||||
 *   "1"       - Mouse events will be handled separately from pure touch events.
 | 
			
		||||
 *
 | 
			
		||||
 * The value of this hint is used at runtime, so it can be changed at any time.
 | 
			
		||||
 */
 | 
			
		||||
#define SDL_HINT_ANDROID_SEPARATE_MOUSE_AND_TOUCH "SDL_ANDROID_SEPARATE_MOUSE_AND_TOUCH"
 | 
			
		||||
 | 
			
		||||
 /**
 | 
			
		||||
/**
 | 
			
		||||
 * \brief A variable to control whether we trap the Android back button to handle it manually.
 | 
			
		||||
 *        This is necessary for the right mouse button to work on some Android devices, or
 | 
			
		||||
 *        to be able to trap the back button for use in your code reliably.  If set to true,
 | 
			
		||||
| 
						 | 
				
			
			@ -865,6 +873,17 @@ extern "C" {
 | 
			
		|||
 */
 | 
			
		||||
#define SDL_HINT_ANDROID_TRAP_BACK_BUTTON "SDL_ANDROID_TRAP_BACK_BUTTON"
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * \brief A variable to control whether the event loop will block itself when the app is paused.
 | 
			
		||||
 *
 | 
			
		||||
 * The variable can be set to the following values:
 | 
			
		||||
 *   "0"       - Non blocking.
 | 
			
		||||
 *   "1"       - Blocking. (default)
 | 
			
		||||
 *
 | 
			
		||||
 * The value should be set before SDL is initialized.
 | 
			
		||||
 */
 | 
			
		||||
#define SDL_HINT_ANDROID_BLOCK_ON_PAUSE "SDL_ANDROID_BLOCK_ON_PAUSE"
 | 
			
		||||
 | 
			
		||||
 /**
 | 
			
		||||
 * \brief A variable to control whether the return key on the soft keyboard
 | 
			
		||||
 *        should hide the soft keyboard on Android and iOS.
 | 
			
		||||
| 
						 | 
				
			
			@ -1043,6 +1062,118 @@ extern "C" {
 | 
			
		|||
 */
 | 
			
		||||
#define SDL_HINT_AUDIO_CATEGORY   "SDL_AUDIO_CATEGORY"
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief  A variable controlling whether the 2D render API is compatible or efficient.
 | 
			
		||||
 *
 | 
			
		||||
 *  This variable can be set to the following values:
 | 
			
		||||
 *
 | 
			
		||||
 *    "0"     - Don't use batching to make rendering more efficient.
 | 
			
		||||
 *    "1"     - Use batching, but might cause problems if app makes its own direct OpenGL calls.
 | 
			
		||||
 *
 | 
			
		||||
 *  Up to SDL 2.0.9, the render API would draw immediately when requested. Now
 | 
			
		||||
 *  it batches up draw requests and sends them all to the GPU only when forced
 | 
			
		||||
 *  to (during SDL_RenderPresent, when changing render targets, by updating a
 | 
			
		||||
 *  texture that the batch needs, etc). This is significantly more efficient,
 | 
			
		||||
 *  but it can cause problems for apps that expect to render on top of the
 | 
			
		||||
 *  render API's output. As such, SDL will disable batching if a specific
 | 
			
		||||
 *  render backend is requested (since this might indicate that the app is
 | 
			
		||||
 *  planning to use the underlying graphics API directly). This hint can
 | 
			
		||||
 *  be used to explicitly request batching in this instance. It is a contract
 | 
			
		||||
 *  that you will either never use the underlying graphics API directly, or
 | 
			
		||||
 *  if you do, you will call SDL_RenderFlush() before you do so any current
 | 
			
		||||
 *  batch goes to the GPU before your work begins. Not following this contract
 | 
			
		||||
 *  will result in undefined behavior.
 | 
			
		||||
 */
 | 
			
		||||
#define SDL_HINT_RENDER_BATCHING  "SDL_RENDER_BATCHING"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief  A variable controlling whether SDL logs all events pushed onto its internal queue.
 | 
			
		||||
 *
 | 
			
		||||
 *  This variable can be set to the following values:
 | 
			
		||||
 *
 | 
			
		||||
 *    "0"     - Don't log any events (default)
 | 
			
		||||
 *    "1"     - Log all events except mouse and finger motion, which are pretty spammy.
 | 
			
		||||
 *    "2"     - Log all events.
 | 
			
		||||
 *
 | 
			
		||||
 *  This is generally meant to be used to debug SDL itself, but can be useful
 | 
			
		||||
 *  for application developers that need better visibility into what is going
 | 
			
		||||
 *  on in the event queue. Logged events are sent through SDL_Log(), which
 | 
			
		||||
 *  means by default they appear on stdout on most platforms or maybe
 | 
			
		||||
 *  OutputDebugString() on Windows, and can be funneled by the app with
 | 
			
		||||
 *  SDL_LogSetOutputFunction(), etc.
 | 
			
		||||
 *
 | 
			
		||||
 *  This hint can be toggled on and off at runtime, if you only need to log
 | 
			
		||||
 *  events for a small subset of program execution.
 | 
			
		||||
 */
 | 
			
		||||
#define SDL_HINT_EVENT_LOGGING   "SDL_EVENT_LOGGING"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief  Controls how the size of the RIFF chunk affects the loading of a WAVE file.
 | 
			
		||||
 *
 | 
			
		||||
 *  The size of the RIFF chunk (which includes all the sub-chunks of the WAVE
 | 
			
		||||
 *  file) is not always reliable. In case the size is wrong, it's possible to
 | 
			
		||||
 *  just ignore it and step through the chunks until a fixed limit is reached.
 | 
			
		||||
 *
 | 
			
		||||
 *  Note that files that have trailing data unrelated to the WAVE file or
 | 
			
		||||
 *  corrupt files may slow down the loading process without a reliable boundary.
 | 
			
		||||
 *  By default, SDL stops after 10000 chunks to prevent wasting time. Use the
 | 
			
		||||
 *  environment variable SDL_WAVE_CHUNK_LIMIT to adjust this value.
 | 
			
		||||
 *
 | 
			
		||||
 *  This variable can be set to the following values:
 | 
			
		||||
 *
 | 
			
		||||
 *    "force"        - Always use the RIFF chunk size as a boundary for the chunk search
 | 
			
		||||
 *    "ignorezero"   - Like "force", but a zero size searches up to 4 GiB (default)
 | 
			
		||||
 *    "ignore"       - Ignore the RIFF chunk size and always search up to 4 GiB
 | 
			
		||||
 *    "maximum"      - Search for chunks until the end of file (not recommended)
 | 
			
		||||
 */
 | 
			
		||||
#define SDL_HINT_WAVE_RIFF_CHUNK_SIZE   "SDL_WAVE_RIFF_CHUNK_SIZE"
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief  Controls how a truncated WAVE file is handled.
 | 
			
		||||
 *
 | 
			
		||||
 *  A WAVE file is considered truncated if any of the chunks are incomplete or
 | 
			
		||||
 *  the data chunk size is not a multiple of the block size. By default, SDL
 | 
			
		||||
 *  decodes until the first incomplete block, as most applications seem to do.
 | 
			
		||||
 *
 | 
			
		||||
 *  This variable can be set to the following values:
 | 
			
		||||
 *
 | 
			
		||||
 *    "verystrict" - Raise an error if the file is truncated
 | 
			
		||||
 *    "strict"     - Like "verystrict", but the size of the RIFF chunk is ignored
 | 
			
		||||
 *    "dropframe"  - Decode until the first incomplete sample frame
 | 
			
		||||
 *    "dropblock"  - Decode until the first incomplete block (default)
 | 
			
		||||
 */
 | 
			
		||||
#define SDL_HINT_WAVE_TRUNCATION   "SDL_WAVE_TRUNCATION"
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief  Controls how the fact chunk affects the loading of a WAVE file.
 | 
			
		||||
 *
 | 
			
		||||
 *  The fact chunk stores information about the number of samples of a WAVE
 | 
			
		||||
 *  file. The Standards Update from Microsoft notes that this value can be used
 | 
			
		||||
 *  to 'determine the length of the data in seconds'. This is especially useful
 | 
			
		||||
 *  for compressed formats (for which this is a mandatory chunk) if they produce
 | 
			
		||||
 *  multiple sample frames per block and truncating the block is not allowed.
 | 
			
		||||
 *  The fact chunk can exactly specify how many sample frames there should be
 | 
			
		||||
 *  in this case.
 | 
			
		||||
 *
 | 
			
		||||
 *  Unfortunately, most application seem to ignore the fact chunk and so SDL
 | 
			
		||||
 *  ignores it by default as well.
 | 
			
		||||
 *
 | 
			
		||||
 *  This variable can be set to the following values:
 | 
			
		||||
 *
 | 
			
		||||
 *    "truncate"    - Use the number of samples to truncate the wave data if
 | 
			
		||||
 *                    the fact chunk is present and valid
 | 
			
		||||
 *    "strict"      - Like "truncate", but raise an error if the fact chunk
 | 
			
		||||
 *                    is invalid, not present for non-PCM formats, or if the
 | 
			
		||||
 *                    data chunk doesn't have that many samples
 | 
			
		||||
 *    "ignorezero"  - Like "truncate", but ignore fact chunk if the number of
 | 
			
		||||
 *                    samples is zero
 | 
			
		||||
 *    "ignore"      - Ignore fact chunk entirely (default)
 | 
			
		||||
 */
 | 
			
		||||
#define SDL_HINT_WAVE_FACT_CHUNK   "SDL_WAVE_FACT_CHUNK"
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief  An enumeration of hint priorities
 | 
			
		||||
 */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -55,6 +55,10 @@
 | 
			
		|||
/* On iOS SDL provides a main function that creates an application delegate
 | 
			
		||||
   and starts the iOS application run loop.
 | 
			
		||||
 | 
			
		||||
   If you link with SDL dynamically on iOS, the main function can't be in a
 | 
			
		||||
   shared library, so you need to link with libSDLmain.a, which includes a
 | 
			
		||||
   stub main function that calls into the shared library to start execution.
 | 
			
		||||
 | 
			
		||||
   See src/video/uikit/SDL_uikitappdelegate.m for more details.
 | 
			
		||||
 */
 | 
			
		||||
#define SDL_MAIN_NEEDED
 | 
			
		||||
| 
						 | 
				
			
			@ -82,12 +86,6 @@
 | 
			
		|||
#endif
 | 
			
		||||
#endif /* SDL_MAIN_HANDLED */
 | 
			
		||||
 | 
			
		||||
#ifdef __cplusplus
 | 
			
		||||
#define C_LINKAGE   "C"
 | 
			
		||||
#else
 | 
			
		||||
#define C_LINKAGE
 | 
			
		||||
#endif /* __cplusplus */
 | 
			
		||||
 | 
			
		||||
#ifndef SDLMAIN_DECLSPEC
 | 
			
		||||
#define SDLMAIN_DECLSPEC
 | 
			
		||||
#endif
 | 
			
		||||
| 
						 | 
				
			
			@ -111,17 +109,18 @@
 | 
			
		|||
#define main    SDL_main
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  The prototype for the application's main() function
 | 
			
		||||
 */
 | 
			
		||||
extern C_LINKAGE SDLMAIN_DECLSPEC int SDL_main(int argc, char *argv[]);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#include "begin_code.h"
 | 
			
		||||
#ifdef __cplusplus
 | 
			
		||||
extern "C" {
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  The prototype for the application's main() function
 | 
			
		||||
 */
 | 
			
		||||
typedef int (*SDL_main_func)(int argc, char *argv[]);
 | 
			
		||||
extern SDLMAIN_DECLSPEC int SDL_main(int argc, char *argv[]);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  This is called by the real SDL main function to let the rest of the
 | 
			
		||||
 *  library know that initialization was done properly.
 | 
			
		||||
| 
						 | 
				
			
			@ -136,8 +135,7 @@ extern DECLSPEC void SDLCALL SDL_SetMainReady(void);
 | 
			
		|||
/**
 | 
			
		||||
 *  This can be called to set the application class at startup
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC int SDLCALL SDL_RegisterApp(char *name, Uint32 style,
 | 
			
		||||
                                            void *hInst);
 | 
			
		||||
extern DECLSPEC int SDLCALL SDL_RegisterApp(char *name, Uint32 style, void *hInst);
 | 
			
		||||
extern DECLSPEC void SDLCALL SDL_UnregisterApp(void);
 | 
			
		||||
 | 
			
		||||
#endif /* __WIN32__ */
 | 
			
		||||
| 
						 | 
				
			
			@ -153,10 +151,24 @@ extern DECLSPEC void SDLCALL SDL_UnregisterApp(void);
 | 
			
		|||
 *  \return 0 on success, -1 on failure.  On failure, use SDL_GetError to retrieve more
 | 
			
		||||
 *      information on the failure.
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC int SDLCALL SDL_WinRTRunApp(int (*mainFunction)(int, char **), void * reserved);
 | 
			
		||||
extern DECLSPEC int SDLCALL SDL_WinRTRunApp(SDL_main_func mainFunction, void * reserved);
 | 
			
		||||
 | 
			
		||||
#endif /* __WINRT__ */
 | 
			
		||||
 | 
			
		||||
#if defined(__IPHONEOS__)
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief Initializes and launches an SDL application.
 | 
			
		||||
 *
 | 
			
		||||
 *  \param argc The argc parameter from the application's main() function
 | 
			
		||||
 *  \param argv The argv parameter from the application's main() function
 | 
			
		||||
 *  \param mainFunction The SDL app's C-style main().
 | 
			
		||||
 *  \return the return value from mainFunction
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC int SDLCALL SDL_UIKitRunApp(int argc, char *argv[], SDL_main_func mainFunction);
 | 
			
		||||
 | 
			
		||||
#endif /* __IPHONEOS__ */
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#ifdef __cplusplus
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -168,7 +168,7 @@ enum
 | 
			
		|||
    ((format) && (SDL_PIXELFLAG(format) != 1))
 | 
			
		||||
 | 
			
		||||
/* Note: If you modify this list, update SDL_GetPixelFormatName() */
 | 
			
		||||
enum
 | 
			
		||||
typedef enum
 | 
			
		||||
{
 | 
			
		||||
    SDL_PIXELFORMAT_UNKNOWN,
 | 
			
		||||
    SDL_PIXELFORMAT_INDEX1LSB =
 | 
			
		||||
| 
						 | 
				
			
			@ -290,7 +290,7 @@ enum
 | 
			
		|||
        SDL_DEFINE_PIXELFOURCC('N', 'V', '2', '1'),
 | 
			
		||||
    SDL_PIXELFORMAT_EXTERNAL_OES =      /**< Android video texture format */
 | 
			
		||||
        SDL_DEFINE_PIXELFOURCC('O', 'E', 'S', ' ')
 | 
			
		||||
};
 | 
			
		||||
} SDL_PixelFormatEnum;
 | 
			
		||||
 | 
			
		||||
typedef struct SDL_Color
 | 
			
		||||
{
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -40,7 +40,7 @@ extern "C" {
 | 
			
		|||
#endif
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief  The structure that defines a point
 | 
			
		||||
 *  \brief  The structure that defines a point (integer)
 | 
			
		||||
 *
 | 
			
		||||
 *  \sa SDL_EnclosePoints
 | 
			
		||||
 *  \sa SDL_PointInRect
 | 
			
		||||
| 
						 | 
				
			
			@ -52,7 +52,20 @@ typedef struct SDL_Point
 | 
			
		|||
} SDL_Point;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief A rectangle, with the origin at the upper left.
 | 
			
		||||
 *  \brief  The structure that defines a point (floating point)
 | 
			
		||||
 *
 | 
			
		||||
 *  \sa SDL_EnclosePoints
 | 
			
		||||
 *  \sa SDL_PointInRect
 | 
			
		||||
 */
 | 
			
		||||
typedef struct SDL_FPoint
 | 
			
		||||
{
 | 
			
		||||
    float x;
 | 
			
		||||
    float y;
 | 
			
		||||
} SDL_FPoint;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief A rectangle, with the origin at the upper left (integer).
 | 
			
		||||
 *
 | 
			
		||||
 *  \sa SDL_RectEmpty
 | 
			
		||||
 *  \sa SDL_RectEquals
 | 
			
		||||
| 
						 | 
				
			
			@ -67,6 +80,19 @@ typedef struct SDL_Rect
 | 
			
		|||
    int w, h;
 | 
			
		||||
} SDL_Rect;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief A rectangle, with the origin at the upper left (floating point).
 | 
			
		||||
 */
 | 
			
		||||
typedef struct SDL_FRect
 | 
			
		||||
{
 | 
			
		||||
    float x;
 | 
			
		||||
    float y;
 | 
			
		||||
    float w;
 | 
			
		||||
    float h;
 | 
			
		||||
} SDL_FRect;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief Returns true if point resides inside a rectangle.
 | 
			
		||||
 */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -835,6 +835,148 @@ extern DECLSPEC int SDLCALL SDL_RenderCopyEx(SDL_Renderer * renderer,
 | 
			
		|||
                                           const SDL_Point *center,
 | 
			
		||||
                                           const SDL_RendererFlip flip);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief Draw a point on the current rendering target.
 | 
			
		||||
 *
 | 
			
		||||
 *  \param renderer The renderer which should draw a point.
 | 
			
		||||
 *  \param x The x coordinate of the point.
 | 
			
		||||
 *  \param y The y coordinate of the point.
 | 
			
		||||
 *
 | 
			
		||||
 *  \return 0 on success, or -1 on error
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC int SDLCALL SDL_RenderDrawPointF(SDL_Renderer * renderer,
 | 
			
		||||
                                                 float x, float y);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief Draw multiple points on the current rendering target.
 | 
			
		||||
 *
 | 
			
		||||
 *  \param renderer The renderer which should draw multiple points.
 | 
			
		||||
 *  \param points The points to draw
 | 
			
		||||
 *  \param count The number of points to draw
 | 
			
		||||
 *
 | 
			
		||||
 *  \return 0 on success, or -1 on error
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC int SDLCALL SDL_RenderDrawPointsF(SDL_Renderer * renderer,
 | 
			
		||||
                                                  const SDL_FPoint * points,
 | 
			
		||||
                                                  int count);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief Draw a line on the current rendering target.
 | 
			
		||||
 *
 | 
			
		||||
 *  \param renderer The renderer which should draw a line.
 | 
			
		||||
 *  \param x1 The x coordinate of the start point.
 | 
			
		||||
 *  \param y1 The y coordinate of the start point.
 | 
			
		||||
 *  \param x2 The x coordinate of the end point.
 | 
			
		||||
 *  \param y2 The y coordinate of the end point.
 | 
			
		||||
 *
 | 
			
		||||
 *  \return 0 on success, or -1 on error
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC int SDLCALL SDL_RenderDrawLineF(SDL_Renderer * renderer,
 | 
			
		||||
                                                float x1, float y1, float x2, float y2);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief Draw a series of connected lines on the current rendering target.
 | 
			
		||||
 *
 | 
			
		||||
 *  \param renderer The renderer which should draw multiple lines.
 | 
			
		||||
 *  \param points The points along the lines
 | 
			
		||||
 *  \param count The number of points, drawing count-1 lines
 | 
			
		||||
 *
 | 
			
		||||
 *  \return 0 on success, or -1 on error
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC int SDLCALL SDL_RenderDrawLinesF(SDL_Renderer * renderer,
 | 
			
		||||
                                                const SDL_FPoint * points,
 | 
			
		||||
                                                int count);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief Draw a rectangle on the current rendering target.
 | 
			
		||||
 *
 | 
			
		||||
 *  \param renderer The renderer which should draw a rectangle.
 | 
			
		||||
 *  \param rect A pointer to the destination rectangle, or NULL to outline the entire rendering target.
 | 
			
		||||
 *
 | 
			
		||||
 *  \return 0 on success, or -1 on error
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC int SDLCALL SDL_RenderDrawRectF(SDL_Renderer * renderer,
 | 
			
		||||
                                               const SDL_FRect * rect);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief Draw some number of rectangles on the current rendering target.
 | 
			
		||||
 *
 | 
			
		||||
 *  \param renderer The renderer which should draw multiple rectangles.
 | 
			
		||||
 *  \param rects A pointer to an array of destination rectangles.
 | 
			
		||||
 *  \param count The number of rectangles.
 | 
			
		||||
 *
 | 
			
		||||
 *  \return 0 on success, or -1 on error
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC int SDLCALL SDL_RenderDrawRectsF(SDL_Renderer * renderer,
 | 
			
		||||
                                                 const SDL_FRect * rects,
 | 
			
		||||
                                                 int count);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief Fill a rectangle on the current rendering target with the drawing color.
 | 
			
		||||
 *
 | 
			
		||||
 *  \param renderer The renderer which should fill a rectangle.
 | 
			
		||||
 *  \param rect A pointer to the destination rectangle, or NULL for the entire
 | 
			
		||||
 *              rendering target.
 | 
			
		||||
 *
 | 
			
		||||
 *  \return 0 on success, or -1 on error
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC int SDLCALL SDL_RenderFillRectF(SDL_Renderer * renderer,
 | 
			
		||||
                                                const SDL_FRect * rect);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief Fill some number of rectangles on the current rendering target with the drawing color.
 | 
			
		||||
 *
 | 
			
		||||
 *  \param renderer The renderer which should fill multiple rectangles.
 | 
			
		||||
 *  \param rects A pointer to an array of destination rectangles.
 | 
			
		||||
 *  \param count The number of rectangles.
 | 
			
		||||
 *
 | 
			
		||||
 *  \return 0 on success, or -1 on error
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC int SDLCALL SDL_RenderFillRectsF(SDL_Renderer * renderer,
 | 
			
		||||
                                                 const SDL_FRect * rects,
 | 
			
		||||
                                                 int count);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief Copy a portion of the texture to the current rendering target.
 | 
			
		||||
 *
 | 
			
		||||
 *  \param renderer The renderer which should copy parts of a texture.
 | 
			
		||||
 *  \param texture The source texture.
 | 
			
		||||
 *  \param srcrect   A pointer to the source rectangle, or NULL for the entire
 | 
			
		||||
 *                   texture.
 | 
			
		||||
 *  \param dstrect   A pointer to the destination rectangle, or NULL for the
 | 
			
		||||
 *                   entire rendering target.
 | 
			
		||||
 *
 | 
			
		||||
 *  \return 0 on success, or -1 on error
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC int SDLCALL SDL_RenderCopyF(SDL_Renderer * renderer,
 | 
			
		||||
                                            SDL_Texture * texture,
 | 
			
		||||
                                            const SDL_Rect * srcrect,
 | 
			
		||||
                                            const SDL_FRect * dstrect);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief Copy a portion of the source texture to the current rendering target, rotating it by angle around the given center
 | 
			
		||||
 *
 | 
			
		||||
 *  \param renderer The renderer which should copy parts of a texture.
 | 
			
		||||
 *  \param texture The source texture.
 | 
			
		||||
 *  \param srcrect   A pointer to the source rectangle, or NULL for the entire
 | 
			
		||||
 *                   texture.
 | 
			
		||||
 *  \param dstrect   A pointer to the destination rectangle, or NULL for the
 | 
			
		||||
 *                   entire rendering target.
 | 
			
		||||
 *  \param angle    An angle in degrees that indicates the rotation that will be applied to dstrect, rotating it in a clockwise direction
 | 
			
		||||
 *  \param center   A pointer to a point indicating the point around which dstrect will be rotated (if NULL, rotation will be done around dstrect.w/2, dstrect.h/2).
 | 
			
		||||
 *  \param flip     An SDL_RendererFlip value stating which flipping actions should be performed on the texture
 | 
			
		||||
 *
 | 
			
		||||
 *  \return 0 on success, or -1 on error
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC int SDLCALL SDL_RenderCopyExF(SDL_Renderer * renderer,
 | 
			
		||||
                                            SDL_Texture * texture,
 | 
			
		||||
                                            const SDL_Rect * srcrect,
 | 
			
		||||
                                            const SDL_FRect * dstrect,
 | 
			
		||||
                                            const double angle,
 | 
			
		||||
                                            const SDL_FPoint *center,
 | 
			
		||||
                                            const SDL_RendererFlip flip);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief Read pixels from the current rendering target.
 | 
			
		||||
 *
 | 
			
		||||
| 
						 | 
				
			
			@ -876,6 +1018,31 @@ extern DECLSPEC void SDLCALL SDL_DestroyTexture(SDL_Texture * texture);
 | 
			
		|||
 */
 | 
			
		||||
extern DECLSPEC void SDLCALL SDL_DestroyRenderer(SDL_Renderer * renderer);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief Force the rendering context to flush any pending commands to the
 | 
			
		||||
 *         underlying rendering API.
 | 
			
		||||
 *
 | 
			
		||||
 *  You do not need to (and in fact, shouldn't) call this function unless
 | 
			
		||||
 *  you are planning to call into OpenGL/Direct3D/Metal/whatever directly
 | 
			
		||||
 *  in addition to using an SDL_Renderer.
 | 
			
		||||
 *
 | 
			
		||||
 *  This is for a very-specific case: if you are using SDL's render API,
 | 
			
		||||
 *  you asked for a specific renderer backend (OpenGL, Direct3D, etc),
 | 
			
		||||
 *  you set SDL_HINT_RENDER_BATCHING to "1", and you plan to make
 | 
			
		||||
 *  OpenGL/D3D/whatever calls in addition to SDL render API calls. If all of
 | 
			
		||||
 *  this applies, you should call SDL_RenderFlush() between calls to SDL's
 | 
			
		||||
 *  render API and the low-level API you're using in cooperation.
 | 
			
		||||
 *
 | 
			
		||||
 *  In all other cases, you can ignore this function. This is only here to
 | 
			
		||||
 *  get maximum performance out of a specific situation. In all other cases,
 | 
			
		||||
 *  SDL will do the right thing, perhaps at a performance loss.
 | 
			
		||||
 *
 | 
			
		||||
 *  This function is first available in SDL 2.0.10, and is not needed in
 | 
			
		||||
 *  2.0.9 and earlier, as earlier versions did not queue rendering commands
 | 
			
		||||
 *  at all, instead flushing them to the OS immediately.
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC int SDLCALL SDL_RenderFlush(SDL_Renderer * renderer);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief Bind the texture to the current OpenGL/ES/ES2 context for use with
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,2 +1,2 @@
 | 
			
		|||
#define SDL_REVISION "hg-12373:8feb5da6f2fb"
 | 
			
		||||
#define SDL_REVISION_NUMBER 12373
 | 
			
		||||
#define SDL_REVISION "hg-12952:bc90ce38f1e2"
 | 
			
		||||
#define SDL_REVISION_NUMBER 12952
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -176,19 +176,48 @@ extern DECLSPEC void SDLCALL SDL_FreeRW(SDL_RWops * area);
 | 
			
		|||
#define RW_SEEK_END 2       /**< Seek relative to the end of data */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \name Read/write macros
 | 
			
		||||
 *
 | 
			
		||||
 *  Macros to easily read and write from an SDL_RWops structure.
 | 
			
		||||
 *  Return the size of the file in this rwops, or -1 if unknown
 | 
			
		||||
 */
 | 
			
		||||
/* @{ */
 | 
			
		||||
#define SDL_RWsize(ctx)         (ctx)->size(ctx)
 | 
			
		||||
#define SDL_RWseek(ctx, offset, whence) (ctx)->seek(ctx, offset, whence)
 | 
			
		||||
#define SDL_RWtell(ctx)         (ctx)->seek(ctx, 0, RW_SEEK_CUR)
 | 
			
		||||
#define SDL_RWread(ctx, ptr, size, n)   (ctx)->read(ctx, ptr, size, n)
 | 
			
		||||
#define SDL_RWwrite(ctx, ptr, size, n)  (ctx)->write(ctx, ptr, size, n)
 | 
			
		||||
#define SDL_RWclose(ctx)        (ctx)->close(ctx)
 | 
			
		||||
/* @} *//* Read/write macros */
 | 
			
		||||
extern DECLSPEC Sint64 SDLCALL SDL_RWsize(SDL_RWops *context);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  Seek to \c offset relative to \c whence, one of stdio's whence values:
 | 
			
		||||
 *  RW_SEEK_SET, RW_SEEK_CUR, RW_SEEK_END
 | 
			
		||||
 *
 | 
			
		||||
 *  \return the final offset in the data stream, or -1 on error.
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC Sint64 SDLCALL SDL_RWseek(SDL_RWops *context,
 | 
			
		||||
                                          Sint64 offset, int whence);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  Return the current offset in the data stream, or -1 on error.
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC Sint64 SDLCALL SDL_RWtell(SDL_RWops *context);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  Read up to \c maxnum objects each of size \c size from the data
 | 
			
		||||
 *  stream to the area pointed at by \c ptr.
 | 
			
		||||
 *
 | 
			
		||||
 *  \return the number of objects read, or 0 at error or end of file.
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC size_t SDLCALL SDL_RWread(SDL_RWops *context,
 | 
			
		||||
                                          void *ptr, size_t size, size_t maxnum);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  Write exactly \c num objects each of size \c size from the area
 | 
			
		||||
 *  pointed at by \c ptr to data stream.
 | 
			
		||||
 *
 | 
			
		||||
 *  \return the number of objects written, or 0 at error or end of file.
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC size_t SDLCALL SDL_RWwrite(SDL_RWops *context,
 | 
			
		||||
                                           const void *ptr, size_t size, size_t num);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  Close and free an allocated SDL_RWops structure.
 | 
			
		||||
 *
 | 
			
		||||
 *  \return 0 if successful or -1 on write error when flushing data.
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC int SDLCALL SDL_RWclose(SDL_RWops *context);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  Load all the data from an SDL data stream.
 | 
			
		||||
| 
						 | 
				
			
			@ -209,9 +238,17 @@ extern DECLSPEC void *SDLCALL SDL_LoadFile_RW(SDL_RWops * src, size_t *datasize,
 | 
			
		|||
/**
 | 
			
		||||
 *  Load an entire file.
 | 
			
		||||
 *
 | 
			
		||||
 *  Convenience macro.
 | 
			
		||||
 *  The data is allocated with a zero byte at the end (null terminated)
 | 
			
		||||
 *
 | 
			
		||||
 *  If \c datasize is not NULL, it is filled with the size of the data read.
 | 
			
		||||
 *
 | 
			
		||||
 *  If \c freesrc is non-zero, the stream will be closed after being read.
 | 
			
		||||
 *
 | 
			
		||||
 *  The data should be freed with SDL_free().
 | 
			
		||||
 *
 | 
			
		||||
 *  \return the data, or NULL if there was an error.
 | 
			
		||||
 */
 | 
			
		||||
#define SDL_LoadFile(file, datasize)   SDL_LoadFile_RW(SDL_RWFromFile(file, "rb"), datasize, 1)
 | 
			
		||||
extern DECLSPEC void *SDLCALL SDL_LoadFile(const char *file, size_t *datasize);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \name Read endian functions
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -38,7 +38,7 @@
 | 
			
		|||
 *  SDL_Event structure.
 | 
			
		||||
 *
 | 
			
		||||
 *  The values in this enumeration are based on the USB usage page standard:
 | 
			
		||||
 *  http://www.usb.org/developers/hidpage/Hut1_12v2.pdf
 | 
			
		||||
 *  https://www.usb.org/sites/default/files/documents/hut1_12v2.pdf
 | 
			
		||||
 */
 | 
			
		||||
typedef enum
 | 
			
		||||
{
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -26,8 +26,8 @@
 | 
			
		|||
 *
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef _SDL_sensor_h
 | 
			
		||||
#define _SDL_sensor_h
 | 
			
		||||
#ifndef SDL_sensor_h_
 | 
			
		||||
#define SDL_sensor_h_
 | 
			
		||||
 | 
			
		||||
#include "SDL_stdinc.h"
 | 
			
		||||
#include "SDL_error.h"
 | 
			
		||||
| 
						 | 
				
			
			@ -246,6 +246,6 @@ extern DECLSPEC void SDLCALL SDL_SensorUpdate(void);
 | 
			
		|||
#endif
 | 
			
		||||
#include "close_code.h"
 | 
			
		||||
 | 
			
		||||
#endif /* _SDL_sensor_h */
 | 
			
		||||
#endif /* SDL_sensor_h_ */
 | 
			
		||||
 | 
			
		||||
/* vi: set ts=4 sw=4 expandtab: */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -53,6 +53,7 @@ extern "C" {
 | 
			
		|||
#define SDL_PREALLOC        0x00000001  /**< Surface uses preallocated memory */
 | 
			
		||||
#define SDL_RLEACCEL        0x00000002  /**< Surface is RLE encoded */
 | 
			
		||||
#define SDL_DONTFREE        0x00000004  /**< Surface is referenced internally */
 | 
			
		||||
#define SDL_SIMD_ALIGNED    0x00000008  /**< Surface uses aligned memory */
 | 
			
		||||
/* @} *//* Surface flags */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -34,16 +34,16 @@
 | 
			
		|||
#include "SDL_version.h"
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \file SDL_syswm.h
 | 
			
		||||
 *  \brief SDL_syswm.h
 | 
			
		||||
 *
 | 
			
		||||
 *  Your application has access to a special type of event ::SDL_SYSWMEVENT,
 | 
			
		||||
 *  which contains window-manager specific information and arrives whenever
 | 
			
		||||
 *  an unhandled window event occurs.  This event is ignored by default, but
 | 
			
		||||
 *  you can enable it with SDL_EventState().
 | 
			
		||||
 */
 | 
			
		||||
#ifdef SDL_PROTOTYPES_ONLY
 | 
			
		||||
struct SDL_SysWMinfo;
 | 
			
		||||
#else
 | 
			
		||||
 | 
			
		||||
#if !defined(SDL_PROTOTYPES_ONLY)
 | 
			
		||||
 | 
			
		||||
#if defined(SDL_VIDEO_DRIVER_WINDOWS)
 | 
			
		||||
#ifndef WIN32_LEAN_AND_MEAN
 | 
			
		||||
| 
						 | 
				
			
			@ -103,6 +103,8 @@ typedef void *EGLSurface;
 | 
			
		|||
#if defined(SDL_VIDEO_DRIVER_VIVANTE)
 | 
			
		||||
#include "SDL_egl.h"
 | 
			
		||||
#endif
 | 
			
		||||
#endif /* SDL_PROTOTYPES_ONLY */
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#include "begin_code.h"
 | 
			
		||||
/* Set up for C function definitions, even when using C++ */
 | 
			
		||||
| 
						 | 
				
			
			@ -110,6 +112,7 @@ typedef void *EGLSurface;
 | 
			
		|||
extern "C" {
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#if !defined(SDL_PROTOTYPES_ONLY)
 | 
			
		||||
/**
 | 
			
		||||
 *  These are the various supported windowing subsystems
 | 
			
		||||
 */
 | 
			
		||||
| 
						 | 
				
			
			@ -122,7 +125,7 @@ typedef enum
 | 
			
		|||
    SDL_SYSWM_COCOA,
 | 
			
		||||
    SDL_SYSWM_UIKIT,
 | 
			
		||||
    SDL_SYSWM_WAYLAND,
 | 
			
		||||
    SDL_SYSWM_MIR,
 | 
			
		||||
    SDL_SYSWM_MIR,  /* no longer available, left for API/ABI compatibility. Remove in 2.1! */
 | 
			
		||||
    SDL_SYSWM_WINRT,
 | 
			
		||||
    SDL_SYSWM_ANDROID,
 | 
			
		||||
    SDL_SYSWM_VIVANTE,
 | 
			
		||||
| 
						 | 
				
			
			@ -257,11 +260,11 @@ struct SDL_SysWMinfo
 | 
			
		|||
            struct wl_shell_surface *shell_surface; /**< Wayland shell_surface (window manager handle) */
 | 
			
		||||
        } wl;
 | 
			
		||||
#endif
 | 
			
		||||
#if defined(SDL_VIDEO_DRIVER_MIR)
 | 
			
		||||
#if defined(SDL_VIDEO_DRIVER_MIR)  /* no longer available, left for API/ABI compatibility. Remove in 2.1! */
 | 
			
		||||
        struct
 | 
			
		||||
        {
 | 
			
		||||
            struct MirConnection *connection;  /**< Mir display server connection */
 | 
			
		||||
            struct MirSurface *surface;  /**< Mir surface */
 | 
			
		||||
            void *connection;  /**< Mir display server connection */
 | 
			
		||||
            void *surface;  /**< Mir surface */
 | 
			
		||||
        } mir;
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -140,14 +140,20 @@ SDLTest_CommonState *SDLTest_CommonCreateState(char **argv, Uint32 flags);
 | 
			
		|||
 */
 | 
			
		||||
int SDLTest_CommonArg(SDLTest_CommonState * state, int index);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * \brief Returns common usage information
 | 
			
		||||
 * \brief Logs command line usage info.
 | 
			
		||||
 *
 | 
			
		||||
 * \param state The common state describing the test window to create.
 | 
			
		||||
 * This logs the appropriate command line options for the subsystems in use
 | 
			
		||||
 *  plus other common options, and then any application-specific options.
 | 
			
		||||
 *  This uses the SDL_Log() function and splits up output to be friendly to
 | 
			
		||||
 *  80-character-wide terminals.
 | 
			
		||||
 *
 | 
			
		||||
 * \returns String with usage information
 | 
			
		||||
 * \param state The common state describing the test window for the app.
 | 
			
		||||
 * \param argv0 argv[0], as passed to main/SDL_main.
 | 
			
		||||
 * \param options an array of strings for application specific options. The last element of the array should be NULL.
 | 
			
		||||
 */
 | 
			
		||||
const char *SDLTest_CommonUsage(SDLTest_CommonState * state);
 | 
			
		||||
void SDLTest_CommonLogUsage(SDLTest_CommonState * state, const char *argv0, const char **options);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * \brief Open test window.
 | 
			
		||||
| 
						 | 
				
			
			@ -158,6 +164,17 @@ const char *SDLTest_CommonUsage(SDLTest_CommonState * state);
 | 
			
		|||
 */
 | 
			
		||||
SDL_bool SDLTest_CommonInit(SDLTest_CommonState * state);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * \brief Easy argument handling when test app doesn't need any custom args.
 | 
			
		||||
 *
 | 
			
		||||
 * \param state The common state describing the test window to create.
 | 
			
		||||
 * \param argc argc, as supplied to SDL_main
 | 
			
		||||
 * \param argv argv, as supplied to SDL_main
 | 
			
		||||
 *
 | 
			
		||||
 * \returns False if app should quit, true otherwise.
 | 
			
		||||
 */
 | 
			
		||||
SDL_bool SDLTest_CommonDefaultArgs(SDLTest_CommonState * state, const int argc, char **argv);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * \brief Common event handler for test windows.
 | 
			
		||||
 *
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -42,14 +42,14 @@ extern "C" {
 | 
			
		|||
 * 
 | 
			
		||||
 * \note This should be called before any other SDL functions for complete tracking coverage
 | 
			
		||||
 */
 | 
			
		||||
int SDLTest_TrackAllocations();
 | 
			
		||||
int SDLTest_TrackAllocations(void);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * \brief Print a log of any outstanding allocations
 | 
			
		||||
 *
 | 
			
		||||
 * \note This can be called after SDL_Quit()
 | 
			
		||||
 */
 | 
			
		||||
void SDLTest_LogAllocations();
 | 
			
		||||
void SDLTest_LogAllocations(void);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/* Ends C function definitions when using C++ */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -41,6 +41,14 @@ extern "C" {
 | 
			
		|||
typedef Sint64 SDL_TouchID;
 | 
			
		||||
typedef Sint64 SDL_FingerID;
 | 
			
		||||
 | 
			
		||||
typedef enum
 | 
			
		||||
{
 | 
			
		||||
    SDL_TOUCH_DEVICE_INVALID = -1,
 | 
			
		||||
    SDL_TOUCH_DEVICE_DIRECT,            /* touch screen with window-relative coordinates */
 | 
			
		||||
    SDL_TOUCH_DEVICE_INDIRECT_ABSOLUTE, /* trackpad with absolute device coordinates */
 | 
			
		||||
    SDL_TOUCH_DEVICE_INDIRECT_RELATIVE  /* trackpad with screen cursor-relative coordinates */
 | 
			
		||||
} SDL_TouchDeviceType;
 | 
			
		||||
 | 
			
		||||
typedef struct SDL_Finger
 | 
			
		||||
{
 | 
			
		||||
    SDL_FingerID id;
 | 
			
		||||
| 
						 | 
				
			
			@ -52,6 +60,9 @@ typedef struct SDL_Finger
 | 
			
		|||
/* Used as the device ID for mouse events simulated with touch input */
 | 
			
		||||
#define SDL_TOUCH_MOUSEID ((Uint32)-1)
 | 
			
		||||
 | 
			
		||||
/* Used as the SDL_TouchID for touch events simulated with mouse input */
 | 
			
		||||
#define SDL_MOUSE_TOUCHID ((Sint64)-1)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/* Function prototypes */
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -65,6 +76,11 @@ extern DECLSPEC int SDLCALL SDL_GetNumTouchDevices(void);
 | 
			
		|||
 */
 | 
			
		||||
extern DECLSPEC SDL_TouchID SDLCALL SDL_GetTouchDevice(int index);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * \brief Get the type of the given touch device.
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC SDL_TouchDeviceType SDLCALL SDL_GetTouchDeviceType(SDL_TouchID touchID);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief Get the number of active fingers for a given touch device.
 | 
			
		||||
 */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -59,7 +59,7 @@ typedef struct SDL_version
 | 
			
		|||
*/
 | 
			
		||||
#define SDL_MAJOR_VERSION   2
 | 
			
		||||
#define SDL_MINOR_VERSION   0
 | 
			
		||||
#define SDL_PATCHLEVEL      9
 | 
			
		||||
#define SDL_PATCHLEVEL      10
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  \brief Macro to determine SDL version program was compiled against.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -98,8 +98,8 @@ typedef VkSurfaceKHR SDL_vulkanSurface; /* for compatibility with Tizen */
 | 
			
		|||
 *        applications to link with libvulkan (and historically MoltenVK was
 | 
			
		||||
 *        provided as a static library). If it is not found then, on macOS, SDL
 | 
			
		||||
 *        will attempt to load \c vulkan.framework/vulkan, \c libvulkan.1.dylib,
 | 
			
		||||
 *        \c MoltenVK.framework/MoltenVK and \c libMoltenVK.dylib in that order.
 | 
			
		||||
 *        On iOS SDL will attempt to load \c libMoltenVK.dylib. Applications
 | 
			
		||||
 *        followed by \c libvulkan.dylib, in that order.
 | 
			
		||||
 *        On iOS SDL will attempt to load \c libvulkan.dylib only. Applications
 | 
			
		||||
 *        using a dynamic framework or .dylib must ensure it is included in its
 | 
			
		||||
 *        application bundle.
 | 
			
		||||
 *
 | 
			
		||||
| 
						 | 
				
			
			@ -153,7 +153,7 @@ extern DECLSPEC void SDLCALL SDL_Vulkan_UnloadLibrary(void);
 | 
			
		|||
 *  is smaller than the number of required extensions, \c SDL_FALSE will be
 | 
			
		||||
 *  returned instead of \c SDL_TRUE, to indicate that not all the required
 | 
			
		||||
 *  extensions were returned.
 | 
			
		||||
 * 
 | 
			
		||||
 *
 | 
			
		||||
 *  \note If \c window is not NULL, it will be checked against its creation
 | 
			
		||||
 *        flags to ensure that the Vulkan flag is present. This parameter
 | 
			
		||||
 *        will be removed in a future major release.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -105,6 +105,9 @@
 | 
			
		|||
#ifdef _MSC_VER
 | 
			
		||||
#pragma warning(disable: 4103)
 | 
			
		||||
#endif
 | 
			
		||||
#ifdef __clang__
 | 
			
		||||
#pragma clang diagnostic ignored "-Wpragma-pack"
 | 
			
		||||
#endif
 | 
			
		||||
#ifdef __BORLANDC__
 | 
			
		||||
#pragma nopackwarning
 | 
			
		||||
#endif
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -26,6 +26,9 @@
 | 
			
		|||
 *  after you finish any function and structure declarations in your headers
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef _begin_code_h
 | 
			
		||||
#error close_code.h included without matching begin_code.h
 | 
			
		||||
#endif
 | 
			
		||||
#undef _begin_code_h
 | 
			
		||||
 | 
			
		||||
/* Reset structure packing at previous byte alignment */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -23,8 +23,8 @@ dependency_libs=' -ldinput8 -ldxguid -ldxerr8 -luser32 -lgdi32 -lwinmm -limm32 -
 | 
			
		|||
weak_library_names=''
 | 
			
		||||
 | 
			
		||||
# Version information for libSDL2.
 | 
			
		||||
current=9
 | 
			
		||||
age=9
 | 
			
		||||
current=10
 | 
			
		||||
age=10
 | 
			
		||||
revision=0
 | 
			
		||||
 | 
			
		||||
# Is this an already installed library?
 | 
			
		||||
| 
						 | 
				
			
			@ -38,4 +38,4 @@ dlopen=''
 | 
			
		|||
dlpreopen=''
 | 
			
		||||
 | 
			
		||||
# Directory that this library needs to be installed in:
 | 
			
		||||
libdir='/Users/valve/release/SDL/SDL2-2.0.9/i686-w64-mingw32/lib'
 | 
			
		||||
libdir='/Users/valve/release/SDL/SDL2-2.0.10/i686-w64-mingw32/lib'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -38,4 +38,4 @@ dlopen=''
 | 
			
		|||
dlpreopen=''
 | 
			
		||||
 | 
			
		||||
# Directory that this library needs to be installed in:
 | 
			
		||||
libdir='/Users/valve/release/SDL/SDL2-2.0.9/i686-w64-mingw32/lib'
 | 
			
		||||
libdir='/Users/valve/release/SDL/SDL2-2.0.10/i686-w64-mingw32/lib'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -38,4 +38,4 @@ dlopen=''
 | 
			
		|||
dlpreopen=''
 | 
			
		||||
 | 
			
		||||
# Directory that this library needs to be installed in:
 | 
			
		||||
libdir='/Users/valve/release/SDL/SDL2-2.0.9/i686-w64-mingw32/lib'
 | 
			
		||||
libdir='/Users/valve/release/SDL/SDL2-2.0.10/i686-w64-mingw32/lib'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -7,9 +7,9 @@ includedir=${prefix}/include
 | 
			
		|||
 | 
			
		||||
Name: sdl2
 | 
			
		||||
Description: Simple DirectMedia Layer is a cross-platform multimedia library designed to provide low level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL, and 2D video framebuffer.
 | 
			
		||||
Version: 2.0.9
 | 
			
		||||
Version: 2.0.10
 | 
			
		||||
Requires:
 | 
			
		||||
Conflicts:
 | 
			
		||||
Libs: -L${libdir}  -lmingw32 -lSDL2main -lSDL2 -mwindows
 | 
			
		||||
Libs.private: -lmingw32 -lSDL2main -lSDL2 -mwindows  -Wl,--no-undefined -lm -ldinput8 -ldxguid -ldxerr8 -luser32 -lgdi32 -lwinmm -limm32 -lole32 -loleaut32 -lshell32 -lsetupapi -lversion -luuid -static-libgcc
 | 
			
		||||
Libs.private: -lmingw32 -lSDL2main -lSDL2 -mwindows  -Wl,--no-undefined -Wl,--dynamicbase -Wl,--nxcompat -lm -ldinput8 -ldxguid -ldxerr8 -luser32 -lgdi32 -lwinmm -limm32 -lole32 -loleaut32 -lshell32 -lsetupapi -lversion -luuid -static-libgcc
 | 
			
		||||
Cflags: -I${includedir}/SDL2  -Dmain=SDL_main
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -74,7 +74,7 @@ AC_ARG_VAR(SDL2_FRAMEWORK, [Path to SDL2.framework])
 | 
			
		|||
        done
 | 
			
		||||
      fi
 | 
			
		||||
 | 
			
		||||
      if test -d $sdl_framework; then
 | 
			
		||||
      if test x"$sdl_framework" != x && test -d "$sdl_framework"; then
 | 
			
		||||
        AC_MSG_RESULT($sdl_framework)
 | 
			
		||||
        sdl_framework_dir=`dirname $sdl_framework`
 | 
			
		||||
        SDL_CFLAGS="-F$sdl_framework_dir -Wl,-framework,SDL2 -I$sdl_framework/include"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -162,12 +162,29 @@ extern DECLSPEC void SDLCALL SDL_MemoryBarrierAcquireFunction(void);
 | 
			
		|||
#define SDL_MemoryBarrierRelease()   __asm__ __volatile__ ("dmb ish" : : : "memory")
 | 
			
		||||
#define SDL_MemoryBarrierAcquire()   __asm__ __volatile__ ("dmb ish" : : : "memory")
 | 
			
		||||
#elif defined(__GNUC__) && defined(__arm__)
 | 
			
		||||
#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__)
 | 
			
		||||
#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
 | 
			
		||||
| 
						 | 
				
			
			@ -177,6 +194,7 @@ extern DECLSPEC void SDLCALL SDL_MemoryBarrierAcquireFunction(void);
 | 
			
		|||
#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))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -420,23 +420,56 @@ extern DECLSPEC void SDLCALL SDL_PauseAudioDevice(SDL_AudioDeviceID dev,
 | 
			
		|||
/* @} *//* Pause audio functions */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 *  This function loads a WAVE from the data source, automatically freeing
 | 
			
		||||
 *  that source if \c freesrc is non-zero.  For example, to load a WAVE file,
 | 
			
		||||
 *  you could do:
 | 
			
		||||
 *  \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
 | 
			
		||||
 *
 | 
			
		||||
 *  If this function succeeds, it returns the given SDL_AudioSpec,
 | 
			
		||||
 *  filled with the audio data format of the wave data, and sets
 | 
			
		||||
 *  \c *audio_buf to a malloc()'d buffer containing the audio data,
 | 
			
		||||
 *  and sets \c *audio_len to the length of that audio buffer, in bytes.
 | 
			
		||||
 *  You need to free the audio buffer with SDL_FreeWAV() when you are
 | 
			
		||||
 *  done with it.
 | 
			
		||||
 *
 | 
			
		||||
 *  This function returns NULL and sets the SDL error message if the
 | 
			
		||||
 *  wave file cannot be opened, uses an unknown data format, or is
 | 
			
		||||
 *  corrupt.  Currently raw and MS-ADPCM WAVE files are supported.
 | 
			
		||||
 *  \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,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -101,6 +101,15 @@ SDL_MostSignificantBitIndex32(Uint32 x)
 | 
			
		|||
#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
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -90,12 +90,12 @@ typedef enum
 | 
			
		|||
/**
 | 
			
		||||
 *  \brief Create a custom blend mode, which may or may not be supported by a given renderer
 | 
			
		||||
 *
 | 
			
		||||
 *  \param srcColorFactor
 | 
			
		||||
 *  \param dstColorFactor
 | 
			
		||||
 *  \param colorOperation
 | 
			
		||||
 *  \param srcAlphaFactor
 | 
			
		||||
 *  \param dstAlphaFactor
 | 
			
		||||
 *  \param alphaOperation
 | 
			
		||||
 *  \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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -41,24 +41,43 @@
 | 
			
		|||
#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
 | 
			
		||||
#ifdef __ALTIVEC__
 | 
			
		||||
#if defined(HAVE_ALTIVEC_H) && !defined(__APPLE_ALTIVEC__) && !defined(SDL_DISABLE_ALTIVEC_H)
 | 
			
		||||
/* 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>
 | 
			
		||||
#undef pixel
 | 
			
		||||
#undef bool
 | 
			
		||||
#endif
 | 
			
		||||
#endif
 | 
			
		||||
#if defined(__ARM_NEON__) && !defined(SDL_DISABLE_ARM_NEON_H)
 | 
			
		||||
#include <arm_neon.h>
 | 
			
		||||
#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 <armintr.h>
 | 
			
		||||
#      include <arm_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>
 | 
			
		||||
| 
						 | 
				
			
			@ -177,6 +196,69 @@ extern DECLSPEC SDL_bool SDLCALL SDL_HasNEON(void);
 | 
			
		|||
 */
 | 
			
		||||
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_SIMDFree
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC void * SDLCALL SDL_SIMDAlloc(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
 | 
			
		||||
 */
 | 
			
		||||
extern DECLSPEC void SDLCALL SDL_SIMDFree(void *ptr);
 | 
			
		||||
 | 
			
		||||
/* vi: set ts=4 sw=4 expandtab: */
 | 
			
		||||
/* Ends C function definitions when using C++ */
 | 
			
		||||
#ifdef __cplusplus
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			@ -594,6 +594,9 @@ typedef union SDL_Event
 | 
			
		|||
    Uint8 padding[56];
 | 
			
		||||
} SDL_Event;
 | 
			
		||||
 | 
			
		||||
/* Make sure we haven't broken binary compatibility */
 | 
			
		||||
SDL_COMPILE_TIME_ASSERT(SDL_Event, sizeof(SDL_Event) == 56);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/* Function prototypes */
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
/*
 | 
			
		||||
  Simple DirectMedia Layer
 | 
			
		||||
  Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org>
 | 
			
		||||
  Copyright (C) 1997-2019 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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
Some files were not shown because too many files have changed in this diff Show more
		Loading…
	
	Add table
		
		Reference in a new issue