46#if defined(SDL_PLATFORM_WIN32) || defined(SDL_PLATFORM_GDK)
48typedef struct tagMSG MSG;
49typedef SDL_bool (SDLCALL *SDL_WindowsMessageHook)(
void *userdata, MSG *msg);
63extern DECLSPEC
void SDLCALL SDL_SetWindowsMessageHook(SDL_WindowsMessageHook callback,
void *userdata);
67#if defined(SDL_PLATFORM_WIN32) || defined(SDL_PLATFORM_WINGDK)
81extern DECLSPEC
int SDLCALL SDL_Direct3D9GetAdapterIndex(
SDL_DisplayID displayID);
85#if defined(SDL_PLATFORM_WIN32) || defined(SDL_PLATFORM_WINGDK)
102extern DECLSPEC
SDL_bool SDLCALL SDL_DXGIGetOutputInfo(
SDL_DisplayID displayID,
int *adapterIndex,
int *outputIndex);
130#ifdef SDL_PLATFORM_LINUX
143extern DECLSPEC
int SDLCALL SDL_LinuxSetThreadPriority(
Sint64 threadID,
int priority);
159extern DECLSPEC
int SDLCALL SDL_LinuxSetThreadPriorityAndPolicy(
Sint64 threadID,
int sdlPriority,
int schedPolicy);
166#ifdef SDL_PLATFORM_IOS
168#define SDL_iOSSetAnimationCallback(window, interval, callback, callbackParam) SDL_iPhoneSetAnimationCallback(window, interval, callback, callbackParam)
202extern DECLSPEC
int SDLCALL SDL_iPhoneSetAnimationCallback(
SDL_Window * window,
int interval,
void (SDLCALL *callback)(
void*),
void *callbackParam);
204#define SDL_iOSSetEventPump(enabled) SDL_iPhoneSetEventPump(enabled)
220extern DECLSPEC
void SDLCALL SDL_iPhoneSetEventPump(
SDL_bool enabled);
228#ifdef SDL_PLATFORM_ANDROID
247extern DECLSPEC
void * SDLCALL SDL_AndroidGetJNIEnv(
void);
269extern DECLSPEC
void * SDLCALL SDL_AndroidGetActivity(
void);
304extern DECLSPEC
int SDLCALL SDL_GetAndroidSDKVersion(
void);
313extern DECLSPEC
SDL_bool SDLCALL SDL_IsAndroidTV(
void);
322extern DECLSPEC
SDL_bool SDLCALL SDL_IsChromebook(
void);
331extern DECLSPEC
SDL_bool SDLCALL SDL_IsDeXMode(
void);
338extern DECLSPEC
void SDLCALL SDL_AndroidBackButton(
void);
344#define SDL_ANDROID_EXTERNAL_STORAGE_READ 0x01
345#define SDL_ANDROID_EXTERNAL_STORAGE_WRITE 0x02
363extern DECLSPEC
const char * SDLCALL SDL_AndroidGetInternalStoragePath(
void);
382extern DECLSPEC
int SDLCALL SDL_AndroidGetExternalStorageState(
Uint32 *state);
400extern DECLSPEC
const char * SDLCALL SDL_AndroidGetExternalStoragePath(
void);
403typedef void (SDLCALL *SDL_AndroidRequestPermissionCallback)(
void *userdata,
const char *permission,
SDL_bool granted);
433extern DECLSPEC
int SDLCALL SDL_AndroidRequestPermission(
const char *permission, SDL_AndroidRequestPermissionCallback cb,
void *userdata);
459extern DECLSPEC
int SDLCALL SDL_AndroidShowToast(
const char* message,
int duration,
int gravity,
int xoffset,
int yoffset);
473extern DECLSPEC
int SDLCALL SDL_AndroidSendMessage(
Uint32 command,
int param);
480#ifdef SDL_PLATFORM_WINRT
489 SDL_WINRT_PATH_INSTALLED_LOCATION,
492 SDL_WINRT_PATH_LOCAL_FOLDER,
498 SDL_WINRT_PATH_ROAMING_FOLDER,
502 SDL_WINRT_PATH_TEMP_FOLDER
512 SDL_WINRT_DEVICEFAMILY_UNKNOWN,
515 SDL_WINRT_DEVICEFAMILY_DESKTOP,
518 SDL_WINRT_DEVICEFAMILY_MOBILE,
521 SDL_WINRT_DEVICEFAMILY_XBOX,
522} SDL_WinRT_DeviceFamily;
546extern DECLSPEC
const wchar_t * SDLCALL SDL_WinRTGetFSPathUNICODE(SDL_WinRT_Path pathType);
569extern DECLSPEC
const char * SDLCALL SDL_WinRTGetFSPathUTF8(SDL_WinRT_Path pathType);
578extern DECLSPEC SDL_WinRT_DeviceFamily SDLCALL SDL_WinRTGetDeviceFamily();
634#ifdef SDL_PLATFORM_IOS
638extern DECLSPEC
void SDLCALL SDL_OnApplicationDidChangeStatusBarOrientation(
void);
644#ifdef SDL_PLATFORM_GDK
645typedef struct XTaskQueueObject *XTaskQueueHandle;
646typedef struct XUser *XUserHandle;
662extern DECLSPEC
int SDLCALL SDL_GDKGetTaskQueue(XTaskQueueHandle * outTaskQueue);
676extern DECLSPEC
int SDLCALL SDL_GDKGetDefaultUser(XUserHandle * outUserHandle);
SDL_bool(* SDL_X11EventHook)(void *userdata, XEvent *xevent)
SDL_bool SDL_IsTablet(void)
void SDL_OnApplicationWillEnterForeground(void)
void SDL_OnApplicationDidBecomeActive(void)
void SDL_OnApplicationDidEnterBackground(void)
void SDL_SetX11EventHook(SDL_X11EventHook callback, void *userdata)
void SDL_OnApplicationDidReceiveMemoryWarning(void)
void SDL_OnApplicationWillResignActive(void)
void SDL_OnApplicationWillTerminate(void)
struct SDL_Window SDL_Window