Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Valentin Platzgummer
qgroundcontrol
Commits
e318c0a5
Commit
e318c0a5
authored
Jul 11, 2010
by
pixhawk
Browse files
Added SDL to ease deployment, fixed deploy script
parent
f7dbc9c4
Changes
141
Show whitespace changes
Inline
Side-by-side
deploy/SDL.framework/Headers/SDL.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
/** @file SDL.h
* Main include header for the SDL library
*/
#ifndef _SDL_H
#define _SDL_H
#include
"SDL_main.h"
#include
"SDL_stdinc.h"
#include
"SDL_audio.h"
#include
"SDL_cdrom.h"
#include
"SDL_cpuinfo.h"
#include
"SDL_endian.h"
#include
"SDL_error.h"
#include
"SDL_events.h"
#include
"SDL_loadso.h"
#include
"SDL_mutex.h"
#include
"SDL_rwops.h"
#include
"SDL_thread.h"
#include
"SDL_timer.h"
#include
"SDL_video.h"
#include
"SDL_version.h"
#include
"begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern
"C"
{
#endif
/** @file SDL.h
* @note As of version 0.5, SDL is loaded dynamically into the application
*/
/** @name SDL_INIT Flags
* These are the flags which may be passed to SDL_Init() -- you should
* specify the subsystems which you will be using in your application.
*/
/*@{*/
#define SDL_INIT_TIMER 0x00000001
#define SDL_INIT_AUDIO 0x00000010
#define SDL_INIT_VIDEO 0x00000020
#define SDL_INIT_CDROM 0x00000100
#define SDL_INIT_JOYSTICK 0x00000200
#define SDL_INIT_NOPARACHUTE 0x00100000
/**< Don't catch fatal signals */
#define SDL_INIT_EVENTTHREAD 0x01000000
/**< Not supported on all OS's */
#define SDL_INIT_EVERYTHING 0x0000FFFF
/*@}*/
/** This function loads the SDL dynamically linked library and initializes
* the subsystems specified by 'flags' (and those satisfying dependencies)
* Unless the SDL_INIT_NOPARACHUTE flag is set, it will install cleanup
* signal handlers for some commonly ignored fatal signals (like SIGSEGV)
*/
extern
DECLSPEC
int
SDLCALL
SDL_Init
(
Uint32
flags
);
/** This function initializes specific SDL subsystems */
extern
DECLSPEC
int
SDLCALL
SDL_InitSubSystem
(
Uint32
flags
);
/** This function cleans up specific SDL subsystems */
extern
DECLSPEC
void
SDLCALL
SDL_QuitSubSystem
(
Uint32
flags
);
/** This function returns mask of the specified subsystems which have
* been initialized.
* If 'flags' is 0, it returns a mask of all initialized subsystems.
*/
extern
DECLSPEC
Uint32
SDLCALL
SDL_WasInit
(
Uint32
flags
);
/** This function cleans up all initialized subsystems and unloads the
* dynamically linked library. You should call it upon all exit conditions.
*/
extern
DECLSPEC
void
SDLCALL
SDL_Quit
(
void
);
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#include
"close_code.h"
#endif
/* _SDL_H */
deploy/SDL.framework/Headers/SDL_active.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
/**
* @file SDL_active.h
* Include file for SDL application focus event handling
*/
#ifndef _SDL_active_h
#define _SDL_active_h
#include
"SDL_stdinc.h"
#include
"SDL_error.h"
#include
"begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern
"C"
{
#endif
/** @name The available application states */
/*@{*/
#define SDL_APPMOUSEFOCUS 0x01
/**< The app has mouse coverage */
#define SDL_APPINPUTFOCUS 0x02
/**< The app has input focus */
#define SDL_APPACTIVE 0x04
/**< The application is active */
/*@}*/
/* Function prototypes */
/**
* This function returns the current state of the application, which is a
* bitwise combination of SDL_APPMOUSEFOCUS, SDL_APPINPUTFOCUS, and
* SDL_APPACTIVE. If SDL_APPACTIVE is set, then the user is able to
* see your application, otherwise it has been iconified or disabled.
*/
extern
DECLSPEC
Uint8
SDLCALL
SDL_GetAppState
(
void
);
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#include
"close_code.h"
#endif
/* _SDL_active_h */
deploy/SDL.framework/Headers/SDL_audio.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
/**
* @file SDL_audio.h
* Access to the raw audio mixing buffer for the SDL library
*/
#ifndef _SDL_audio_h
#define _SDL_audio_h
#include
"SDL_stdinc.h"
#include
"SDL_error.h"
#include
"SDL_endian.h"
#include
"SDL_mutex.h"
#include
"SDL_thread.h"
#include
"SDL_rwops.h"
#include
"begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern
"C"
{
#endif
/**
* When filling in the desired audio spec structure,
* - 'desired->freq' should be the desired audio frequency in samples-per-second.
* - 'desired->format' should be the desired audio format.
* - 'desired->samples' is the desired size of the audio buffer, in samples.
* This number should be a power of two, and may be adjusted by the audio
* driver to a value more suitable for the hardware. Good values seem to
* range between 512 and 8096 inclusive, depending on the application and
* CPU speed. Smaller values yield faster response time, but can lead
* to underflow if the application is doing heavy processing and cannot
* fill the audio buffer in time. A stereo sample consists of both right
* and left channels in LR ordering.
* Note that the number of samples is directly related to time by the
* following formula: ms = (samples*1000)/freq
* - 'desired->size' is the size in bytes of the audio buffer, and is
* calculated by SDL_OpenAudio().
* - 'desired->silence' is the value used to set the buffer to silence,
* and is calculated by SDL_OpenAudio().
* - 'desired->callback' should be set to a function that will be called
* when the audio device is ready for more data. It is passed a pointer
* to the audio buffer, and the length in bytes of the audio buffer.
* This function usually runs in a separate thread, and so you should
* protect data structures that it accesses by calling SDL_LockAudio()
* and SDL_UnlockAudio() in your code.
* - 'desired->userdata' is passed as the first parameter to your callback
* function.
*
* @note The calculated values in this structure are calculated by SDL_OpenAudio()
*
*/
typedef
struct
SDL_AudioSpec
{
int
freq
;
/**< DSP frequency -- samples per second */
Uint16
format
;
/**< Audio data format */
Uint8
channels
;
/**< Number of channels: 1 mono, 2 stereo */
Uint8
silence
;
/**< Audio buffer silence value (calculated) */
Uint16
samples
;
/**< Audio buffer size in samples (power of 2) */
Uint16
padding
;
/**< Necessary for some compile environments */
Uint32
size
;
/**< Audio buffer size in bytes (calculated) */
/**
* This function is called when the audio device needs more data.
*
* @param[out] stream A pointer to the audio data buffer
* @param[in] len The length of the audio buffer in bytes.
*
* Once the callback returns, the buffer will no longer be valid.
* Stereo samples are stored in a LRLRLR ordering.
*/
void
(
SDLCALL
*
callback
)(
void
*
userdata
,
Uint8
*
stream
,
int
len
);
void
*
userdata
;
}
SDL_AudioSpec
;
/**
* @name Audio format flags
* defaults to LSB byte order
*/
/*@{*/
#define AUDIO_U8 0x0008
/**< Unsigned 8-bit samples */
#define AUDIO_S8 0x8008
/**< Signed 8-bit samples */
#define AUDIO_U16LSB 0x0010
/**< Unsigned 16-bit samples */
#define AUDIO_S16LSB 0x8010
/**< Signed 16-bit samples */
#define AUDIO_U16MSB 0x1010
/**< As above, but big-endian byte order */
#define AUDIO_S16MSB 0x9010
/**< As above, but big-endian byte order */
#define AUDIO_U16 AUDIO_U16LSB
#define AUDIO_S16 AUDIO_S16LSB
/**
* @name Native audio byte ordering
*/
/*@{*/
#if SDL_BYTEORDER == SDL_LIL_ENDIAN
#define AUDIO_U16SYS AUDIO_U16LSB
#define AUDIO_S16SYS AUDIO_S16LSB
#else
#define AUDIO_U16SYS AUDIO_U16MSB
#define AUDIO_S16SYS AUDIO_S16MSB
#endif
/*@}*/
/*@}*/
/** A structure to hold a set of audio conversion filters and buffers */
typedef
struct
SDL_AudioCVT
{
int
needed
;
/**< Set to 1 if conversion possible */
Uint16
src_format
;
/**< Source audio format */
Uint16
dst_format
;
/**< Target audio format */
double
rate_incr
;
/**< Rate conversion increment */
Uint8
*
buf
;
/**< Buffer to hold entire audio data */
int
len
;
/**< Length of original audio buffer */
int
len_cvt
;
/**< Length of converted audio buffer */
int
len_mult
;
/**< buffer must be len*len_mult big */
double
len_ratio
;
/**< Given len, final size is len*len_ratio */
void
(
SDLCALL
*
filters
[
10
])(
struct
SDL_AudioCVT
*
cvt
,
Uint16
format
);
int
filter_index
;
/**< Current audio conversion function */
}
SDL_AudioCVT
;
/* Function prototypes */
/**
* @name Audio Init and Quit
* These functions are used internally, and should not be used unless you
* have a specific need to specify the audio driver you want to use.
* You should normally use SDL_Init() or SDL_InitSubSystem().
*/
/*@{*/
extern
DECLSPEC
int
SDLCALL
SDL_AudioInit
(
const
char
*
driver_name
);
extern
DECLSPEC
void
SDLCALL
SDL_AudioQuit
(
void
);
/*@}*/
/**
* This function fills the given character buffer with the name of the
* current audio driver, and returns a pointer to it if the audio driver has
* been initialized. It returns NULL if no driver has been initialized.
*/
extern
DECLSPEC
char
*
SDLCALL
SDL_AudioDriverName
(
char
*
namebuf
,
int
maxlen
);
/**
* This function opens the audio device with the desired parameters, and
* returns 0 if successful, placing the actual hardware parameters in the
* structure pointed to by 'obtained'. If 'obtained' is NULL, the audio
* data passed to the callback function will be guaranteed to be in the
* requested format, and will be automatically converted to the hardware
* audio format if necessary. This function returns -1 if it failed
* to open the audio device, or couldn't set up the audio thread.
*
* The audio device starts out playing silence when it's opened, and should
* be enabled for playing by calling SDL_PauseAudio(0) when you are ready
* for your audio callback function to be called. Since the audio driver
* may modify the requested size of the audio buffer, you should allocate
* any local mixing buffers after you open the audio device.
*
* @sa SDL_AudioSpec
*/
extern
DECLSPEC
int
SDLCALL
SDL_OpenAudio
(
SDL_AudioSpec
*
desired
,
SDL_AudioSpec
*
obtained
);
typedef
enum
{
SDL_AUDIO_STOPPED
=
0
,
SDL_AUDIO_PLAYING
,
SDL_AUDIO_PAUSED
}
SDL_audiostatus
;
/** Get the current audio state */
extern
DECLSPEC
SDL_audiostatus
SDLCALL
SDL_GetAudioStatus
(
void
);
/**
* This function pauses and unpauses the audio callback processing.
* It should be called with a parameter of 0 after opening the audio
* device to start playing sound. This is so you can safely initialize
* data for your callback function after opening the audio device.
* Silence will be written to the audio device during the pause.
*/
extern
DECLSPEC
void
SDLCALL
SDL_PauseAudio
(
int
pause_on
);
/**
* This function loads a WAVE from the data source, automatically freeing
* that source if 'freesrc' is non-zero. For example, to load a WAVE file,
* you could do:
* @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
* 'audio_buf' to a malloc()'d buffer containing the audio data,
* and sets '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.
*/
extern
DECLSPEC
SDL_AudioSpec
*
SDLCALL
SDL_LoadWAV_RW
(
SDL_RWops
*
src
,
int
freesrc
,
SDL_AudioSpec
*
spec
,
Uint8
**
audio_buf
,
Uint32
*
audio_len
);
/** Compatibility convenience function -- loads a WAV from a file */
#define SDL_LoadWAV(file, spec, audio_buf, audio_len) \
SDL_LoadWAV_RW(SDL_RWFromFile(file, "rb"),1, spec,audio_buf,audio_len)
/**
* This function frees data previously allocated with SDL_LoadWAV_RW()
*/
extern
DECLSPEC
void
SDLCALL
SDL_FreeWAV
(
Uint8
*
audio_buf
);
/**
* This function takes a source format and rate and a destination format
* and rate, and initializes the 'cvt' structure with information needed
* by SDL_ConvertAudio() to convert a buffer of audio data from one format
* to the other.
*
* @return This function returns 0, or -1 if there was an error.
*/
extern
DECLSPEC
int
SDLCALL
SDL_BuildAudioCVT
(
SDL_AudioCVT
*
cvt
,
Uint16
src_format
,
Uint8
src_channels
,
int
src_rate
,
Uint16
dst_format
,
Uint8
dst_channels
,
int
dst_rate
);
/**
* Once you have initialized the 'cvt' structure using SDL_BuildAudioCVT(),
* created an audio buffer cvt->buf, and filled it with cvt->len bytes of
* audio data in the source format, this function will convert it in-place
* to the desired format.
* The data conversion may expand the size of the audio data, so the buffer
* cvt->buf should be allocated after the cvt structure is initialized by
* SDL_BuildAudioCVT(), and should be cvt->len*cvt->len_mult bytes long.
*/
extern
DECLSPEC
int
SDLCALL
SDL_ConvertAudio
(
SDL_AudioCVT
*
cvt
);
#define SDL_MIX_MAXVOLUME 128
/**
* This takes two audio buffers of the playing audio format and mixes
* them, performing addition, volume adjustment, and overflow clipping.
* The volume ranges from 0 - 128, and should be set to SDL_MIX_MAXVOLUME
* for full audio volume. Note this does not change hardware volume.
* This is provided for convenience -- you can mix your own audio data.
*/
extern
DECLSPEC
void
SDLCALL
SDL_MixAudio
(
Uint8
*
dst
,
const
Uint8
*
src
,
Uint32
len
,
int
volume
);
/**
* @name Audio Locks
* The lock manipulated by these functions protects the callback function.
* During a LockAudio/UnlockAudio pair, you can be guaranteed that the
* callback function is not running. Do not call these from the callback
* function or you will cause deadlock.
*/
/*@{*/
extern
DECLSPEC
void
SDLCALL
SDL_LockAudio
(
void
);
extern
DECLSPEC
void
SDLCALL
SDL_UnlockAudio
(
void
);
/*@}*/
/**
* This function shuts down audio processing and closes the audio device.
*/
extern
DECLSPEC
void
SDLCALL
SDL_CloseAudio
(
void
);
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#include
"close_code.h"
#endif
/* _SDL_audio_h */
deploy/SDL.framework/Headers/SDL_byteorder.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
/**
* @file SDL_byteorder.h
* @deprecated Use SDL_endian.h instead
*/
/* DEPRECATED */
#include
"SDL_endian.h"
deploy/SDL.framework/Headers/SDL_cdrom.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
/**
* @file SDL_cdrom.h
* This is the CD-audio control API for Simple DirectMedia Layer
*/
#ifndef _SDL_cdrom_h
#define _SDL_cdrom_h
#include
"SDL_stdinc.h"
#include
"SDL_error.h"
#include
"begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern
"C"
{
#endif
/**
* @file SDL_cdrom.h
* In order to use these functions, SDL_Init() must have been called
* with the SDL_INIT_CDROM flag. This causes SDL to scan the system
* for CD-ROM drives, and load appropriate drivers.
*/
/** The maximum number of CD-ROM tracks on a disk */
#define SDL_MAX_TRACKS 99
/** @name Track Types
* The types of CD-ROM track possible
*/
/*@{*/
#define SDL_AUDIO_TRACK 0x00
#define SDL_DATA_TRACK 0x04
/*@}*/
/** The possible states which a CD-ROM drive can be in. */
typedef
enum
{
CD_TRAYEMPTY
,
CD_STOPPED
,
CD_PLAYING
,
CD_PAUSED
,
CD_ERROR
=
-
1
}
CDstatus
;
/** Given a status, returns true if there's a disk in the drive */
#define CD_INDRIVE(status) ((int)(status) > 0)
typedef
struct
SDL_CDtrack
{
Uint8
id
;
/**< Track number */
Uint8
type
;
/**< Data or audio track */
Uint16
unused
;
Uint32
length
;
/**< Length, in frames, of this track */
Uint32
offset
;
/**< Offset, in frames, from start of disk */
}
SDL_CDtrack
;
/** This structure is only current as of the last call to SDL_CDStatus() */
typedef
struct
SDL_CD
{
int
id
;
/**< Private drive identifier */
CDstatus
status
;
/**< Current drive status */
/** The rest of this structure is only valid if there's a CD in drive */
/*@{*/
int
numtracks
;
/**< Number of tracks on disk */
int
cur_track
;
/**< Current track position */
int
cur_frame
;
/**< Current frame offset within current track */
SDL_CDtrack
track
[
SDL_MAX_TRACKS
+
1
];
/*@}*/
}
SDL_CD
;
/** @name Frames / MSF Conversion Functions
* Conversion functions from frames to Minute/Second/Frames and vice versa
*/
/*@{*/
#define CD_FPS 75
#define FRAMES_TO_MSF(f, M,S,F) { \
int value = f; \
*(F) = value%CD_FPS; \
value /= CD_FPS; \
*(S) = value%60; \
value /= 60; \
*(M) = value; \
}
#define MSF_TO_FRAMES(M, S, F) ((M)*60*CD_FPS+(S)*CD_FPS+(F))
/*@}*/
/* CD-audio API functions: */
/**
* Returns the number of CD-ROM drives on the system, or -1 if
* SDL_Init() has not been called with the SDL_INIT_CDROM flag.
*/
extern
DECLSPEC
int
SDLCALL
SDL_CDNumDrives
(
void
);
/**
* Returns a human-readable, system-dependent identifier for the CD-ROM.
* Example:
* - "/dev/cdrom"
* - "E:"
* - "/dev/disk/ide/1/master"
*/
extern
DECLSPEC
const
char
*
SDLCALL
SDL_CDName
(
int
drive
);
/**
* Opens a CD-ROM drive for access. It returns a drive handle on success,
* or NULL if the drive was invalid or busy. This newly opened CD-ROM
* becomes the default CD used when other CD functions are passed a NULL
* CD-ROM handle.
* Drives are numbered starting with 0. Drive 0 is the system default CD-ROM.
*/
extern
DECLSPEC
SDL_CD
*
SDLCALL
SDL_CDOpen
(
int
drive
);
/**
* This function returns the current status of the given drive.
* If the drive has a CD in it, the table of contents of the CD and current
* play position of the CD will be stored in the SDL_CD structure.
*/
extern
DECLSPEC
CDstatus
SDLCALL
SDL_CDStatus
(
SDL_CD
*
cdrom
);
/**
* Play the given CD starting at 'start_track' and 'start_frame' for 'ntracks'
* tracks and 'nframes' frames. If both 'ntrack' and 'nframe' are 0, play
* until the end of the CD. This function will skip data tracks.
* This function should only be called after calling SDL_CDStatus() to
* get track information about the CD.
* For example:
* @code
* // Play entire CD:
* if ( CD_INDRIVE(SDL_CDStatus(cdrom)) )
* SDL_CDPlayTracks(cdrom, 0, 0, 0, 0);
* // Play last track:
* if ( CD_INDRIVE(SDL_CDStatus(cdrom)) ) {
* SDL_CDPlayTracks(cdrom, cdrom->numtracks-1, 0, 0, 0);
* }
* // Play first and second track and 10 seconds of third track:
* if ( CD_INDRIVE(SDL_CDStatus(cdrom)) )
* SDL_CDPlayTracks(cdrom, 0, 0, 2, 10);
* @endcode
*
* @return This function returns 0, or -1 if there was an error.
*/
extern
DECLSPEC
int
SDLCALL
SDL_CDPlayTracks
(
SDL_CD
*
cdrom
,
int
start_track
,
int
start_frame
,
int
ntracks
,
int
nframes
);
/**
* Play the given CD starting at 'start' frame for 'length' frames.
* @return It returns 0, or -1 if there was an error.
*/
extern
DECLSPEC
int
SDLCALL
SDL_CDPlay
(
SDL_CD
*
cdrom
,
int
start
,
int
length
);
/** Pause play
* @return returns 0, or -1 on error
*/
extern
DECLSPEC
int
SDLCALL
SDL_CDPause
(
SDL_CD
*
cdrom
);
/** Resume play
* @return returns 0, or -1 on error
*/
extern
DECLSPEC
int
SDLCALL
SDL_CDResume
(
SDL_CD
*
cdrom
);
/** Stop play
* @return returns 0, or -1 on error
*/
extern
DECLSPEC
int
SDLCALL
SDL_CDStop
(
SDL_CD
*
cdrom
);
/** Eject CD-ROM
* @return returns 0, or -1 on error
*/
extern
DECLSPEC
int
SDLCALL
SDL_CDEject
(
SDL_CD
*
cdrom
);
/** Closes the handle for the CD-ROM drive */
extern
DECLSPEC
void
SDLCALL
SDL_CDClose
(
SDL_CD
*
cdrom
);
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#include
"close_code.h"
#endif
/* _SDL_video_h */
deploy/SDL.framework/Headers/SDL_config.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
#ifndef _SDL_config_h
#define _SDL_config_h
#include
"SDL_platform.h"
/* Add any platform that doesn't build using the configure system */
#if defined(__DREAMCAST__)
#include
"SDL_config_dreamcast.h"
#elif defined(__MACOS__)
#include
"SDL_config_macos.h"
#elif defined(__MACOSX__)
#include
"SDL_config_macosx.h"
#elif defined(__SYMBIAN32__)
#include
"SDL_config_symbian.h"
/* must be before win32! */
#elif defined(__WIN32__)
#include
"SDL_config_win32.h"
#elif defined(__OS2__)
#include
"SDL_config_os2.h"
#else
#include
"SDL_config_minimal.h"
#endif
/* platform config */
#endif
/* _SDL_config_h */
deploy/SDL.framework/Headers/SDL_config_dreamcast.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
#ifndef _SDL_config_dreamcast_h
#define _SDL_config_dreamcast_h
#include
"SDL_platform.h"
/* This is a set of defines to configure the SDL features */
typedef
signed
char
int8_t
;
typedef
unsigned
char
uint8_t
;
typedef
signed
short
int16_t
;
typedef
unsigned
short
uint16_t
;
typedef
signed
int
int32_t
;
typedef
unsigned
int
uint32_t
;
typedef
signed
long
long
int64_t
;
typedef
unsigned
long
long
uint64_t
;
typedef
unsigned
long
uintptr_t
;
#define SDL_HAS_64BIT_TYPE 1
/* Useful headers */
#define HAVE_SYS_TYPES_H 1
#define HAVE_STDIO_H 1
#define STDC_HEADERS 1
#define HAVE_STRING_H 1
#define HAVE_CTYPE_H 1
/* C library functions */
#define HAVE_MALLOC 1
#define HAVE_CALLOC 1
#define HAVE_REALLOC 1
#define HAVE_FREE 1
#define HAVE_ALLOCA 1
#define HAVE_GETENV 1
#define HAVE_PUTENV 1
#define HAVE_QSORT 1
#define HAVE_ABS 1
#define HAVE_BCOPY 1
#define HAVE_MEMSET 1
#define HAVE_MEMCPY 1
#define HAVE_MEMMOVE 1
#define HAVE_MEMCMP 1
#define HAVE_STRLEN 1
#define HAVE_STRDUP 1
#define HAVE_INDEX 1
#define HAVE_RINDEX 1
#define HAVE_STRCHR 1
#define HAVE_STRRCHR 1
#define HAVE_STRSTR 1
#define HAVE_STRTOL 1
#define HAVE_STRTOD 1
#define HAVE_ATOI 1
#define HAVE_ATOF 1
#define HAVE_STRCMP 1
#define HAVE_STRNCMP 1
#define HAVE_STRICMP 1
#define HAVE_STRCASECMP 1
#define HAVE_SSCANF 1
#define HAVE_SNPRINTF 1
#define HAVE_VSNPRINTF 1
/* Enable various audio drivers */
#define SDL_AUDIO_DRIVER_DC 1
#define SDL_AUDIO_DRIVER_DISK 1
#define SDL_AUDIO_DRIVER_DUMMY 1
/* Enable various cdrom drivers */
#define SDL_CDROM_DC 1
/* Enable various input drivers */
#define SDL_JOYSTICK_DC 1
/* Enable various shared object loading systems */
#define SDL_LOADSO_DUMMY 1
/* Enable various threading systems */
#define SDL_THREAD_DC 1
/* Enable various timer systems */
#define SDL_TIMER_DC 1
/* Enable various video drivers */
#define SDL_VIDEO_DRIVER_DC 1
#define SDL_VIDEO_DRIVER_DUMMY 1
#endif
/* _SDL_config_dreamcast_h */
deploy/SDL.framework/Headers/SDL_config_macos.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
#ifndef _SDL_config_macos_h
#define _SDL_config_macos_h
#include
"SDL_platform.h"
/* This is a set of defines to configure the SDL features */
#include
<MacTypes.h>
typedef
SInt8
int8_t
;
typedef
UInt8
uint8_t
;
typedef
SInt16
int16_t
;
typedef
UInt16
uint16_t
;
typedef
SInt32
int32_t
;
typedef
UInt32
uint32_t
;
typedef
SInt64
int64_t
;
typedef
UInt64
uint64_t
;
typedef
unsigned
long
uintptr_t
;
#define SDL_HAS_64BIT_TYPE 1
/* Useful headers */
#define HAVE_STDIO_H 1
#define STDC_HEADERS 1
#define HAVE_STRING_H 1
#define HAVE_CTYPE_H 1
#define HAVE_MATH_H 1
#define HAVE_SIGNAL_H 1
/* C library functions */
#define HAVE_MALLOC 1
#define HAVE_CALLOC 1
#define HAVE_REALLOC 1
#define HAVE_FREE 1
#define HAVE_ALLOCA 1
#define HAVE_ABS 1
#define HAVE_MEMSET 1
#define HAVE_MEMCPY 1
#define HAVE_MEMMOVE 1
#define HAVE_MEMCMP 1
#define HAVE_STRLEN 1
#define HAVE_STRCHR 1
#define HAVE_STRRCHR 1
#define HAVE_STRSTR 1
#define HAVE_ITOA 1
#define HAVE_STRTOL 1
#define HAVE_STRTOD 1
#define HAVE_ATOI 1
#define HAVE_ATOF 1
#define HAVE_STRCMP 1
#define HAVE_STRNCMP 1
#define HAVE_SSCANF 1
/* Enable various audio drivers */
#define SDL_AUDIO_DRIVER_SNDMGR 1
#define SDL_AUDIO_DRIVER_DISK 1
#define SDL_AUDIO_DRIVER_DUMMY 1
/* Enable various cdrom drivers */
#if TARGET_API_MAC_CARBON
#define SDL_CDROM_DUMMY 1
#else
#define SDL_CDROM_MACOS 1
#endif
/* Enable various input drivers */
#if TARGET_API_MAC_CARBON
#define SDL_JOYSTICK_DUMMY 1
#else
#define SDL_JOYSTICK_MACOS 1
#endif
/* Enable various shared object loading systems */
#define SDL_LOADSO_MACOS 1
/* Enable various threading systems */
#define SDL_THREADS_DISABLED 1
/* Enable various timer systems */
#define SDL_TIMER_MACOS 1
/* Enable various video drivers */
#define SDL_VIDEO_DRIVER_DUMMY 1
#define SDL_VIDEO_DRIVER_DRAWSPROCKET 1
#define SDL_VIDEO_DRIVER_TOOLBOX 1
/* Enable OpenGL support */
#define SDL_VIDEO_OPENGL 1
#endif
/* _SDL_config_macos_h */
deploy/SDL.framework/Headers/SDL_config_macosx.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
#ifndef _SDL_config_macosx_h
#define _SDL_config_macosx_h
#include
"SDL_platform.h"
/* This gets us MAC_OS_X_VERSION_MIN_REQUIRED... */
#include
<AvailabilityMacros.h>
/* This is a set of defines to configure the SDL features */
#define SDL_HAS_64BIT_TYPE 1
/* Useful headers */
/* If we specified an SDK or have a post-PowerPC chip, then alloca.h exists. */
#if ( (MAC_OS_X_VERSION_MIN_REQUIRED >= 1030) || (!defined(__POWERPC__)) )
#define HAVE_ALLOCA_H 1
#endif
#define HAVE_SYS_TYPES_H 1
#define HAVE_STDIO_H 1
#define STDC_HEADERS 1
#define HAVE_STRING_H 1
#define HAVE_INTTYPES_H 1
#define HAVE_STDINT_H 1
#define HAVE_CTYPE_H 1
#define HAVE_MATH_H 1
#define HAVE_SIGNAL_H 1
/* C library functions */
#define HAVE_MALLOC 1
#define HAVE_CALLOC 1
#define HAVE_REALLOC 1
#define HAVE_FREE 1
#define HAVE_ALLOCA 1
#define HAVE_GETENV 1
#define HAVE_PUTENV 1
#define HAVE_UNSETENV 1
#define HAVE_QSORT 1
#define HAVE_ABS 1
#define HAVE_BCOPY 1
#define HAVE_MEMSET 1
#define HAVE_MEMCPY 1
#define HAVE_MEMMOVE 1
#define HAVE_MEMCMP 1
#define HAVE_STRLEN 1
#define HAVE_STRLCPY 1
#define HAVE_STRLCAT 1
#define HAVE_STRDUP 1
#define HAVE_STRCHR 1
#define HAVE_STRRCHR 1
#define HAVE_STRSTR 1
#define HAVE_STRTOL 1
#define HAVE_STRTOUL 1
#define HAVE_STRTOLL 1
#define HAVE_STRTOULL 1
#define HAVE_STRTOD 1
#define HAVE_ATOI 1
#define HAVE_ATOF 1
#define HAVE_STRCMP 1
#define HAVE_STRNCMP 1
#define HAVE_STRCASECMP 1
#define HAVE_STRNCASECMP 1
#define HAVE_SSCANF 1
#define HAVE_SNPRINTF 1
#define HAVE_VSNPRINTF 1
#define HAVE_SIGACTION 1
#define HAVE_SETJMP 1
#define HAVE_NANOSLEEP 1
/* Enable various audio drivers */
#define SDL_AUDIO_DRIVER_COREAUDIO 1
#define SDL_AUDIO_DRIVER_DISK 1
#define SDL_AUDIO_DRIVER_DUMMY 1
/* Enable various cdrom drivers */
#define SDL_CDROM_MACOSX 1
/* Enable various input drivers */
#define SDL_JOYSTICK_IOKIT 1
/* Enable various shared object loading systems */
#ifdef __ppc__
/* For Mac OS X 10.2 compatibility */
#define SDL_LOADSO_DLCOMPAT 1
#else
#define SDL_LOADSO_DLOPEN 1
#endif
/* Enable various threading systems */
#define SDL_THREAD_PTHREAD 1
#define SDL_THREAD_PTHREAD_RECURSIVE_MUTEX 1
/* Enable various timer systems */
#define SDL_TIMER_UNIX 1
/* Enable various video drivers */
#define SDL_VIDEO_DRIVER_DUMMY 1
#if ((defined TARGET_API_MAC_CARBON) && (TARGET_API_MAC_CARBON))
#define SDL_VIDEO_DRIVER_TOOLBOX 1
#else
#define SDL_VIDEO_DRIVER_QUARTZ 1
#endif
#define SDL_VIDEO_DRIVER_DGA 1
#define SDL_VIDEO_DRIVER_X11 1
#define SDL_VIDEO_DRIVER_X11_DGAMOUSE 1
#define SDL_VIDEO_DRIVER_X11_DYNAMIC "/usr/X11R6/lib/libX11.6.dylib"
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT "/usr/X11R6/lib/libXext.6.dylib"
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR "/usr/X11R6/lib/libXrandr.2.dylib"
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XRENDER "/usr/X11R6/lib/libXrender.1.dylib"
#define SDL_VIDEO_DRIVER_X11_VIDMODE 1
#define SDL_VIDEO_DRIVER_X11_XINERAMA 1
#define SDL_VIDEO_DRIVER_X11_XME 1
#define SDL_VIDEO_DRIVER_X11_XRANDR 1
#define SDL_VIDEO_DRIVER_X11_XV 1
/* Enable OpenGL support */
#define SDL_VIDEO_OPENGL 1
#define SDL_VIDEO_OPENGL_GLX 1
/* Disable screensaver */
#define SDL_VIDEO_DISABLE_SCREENSAVER 1
/* Enable assembly routines */
#define SDL_ASSEMBLY_ROUTINES 1
#ifdef __ppc__
#define SDL_ALTIVEC_BLITTERS 1
#endif
#endif
/* _SDL_config_macosx_h */
deploy/SDL.framework/Headers/SDL_config_os2.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
#ifndef _SDL_config_os2_h
#define _SDL_config_os2_h
#include
"SDL_platform.h"
/* This is a set of defines to configure the SDL features */
typedef
signed
char
int8_t
;
typedef
unsigned
char
uint8_t
;
typedef
signed
short
int16_t
;
typedef
unsigned
short
uint16_t
;
typedef
signed
int
int32_t
;
typedef
unsigned
int
uint32_t
;
typedef
unsigned
int
size_t
;
typedef
unsigned
long
uintptr_t
;
typedef
signed
long
long
int64_t
;
typedef
unsigned
long
long
uint64_t
;
#define SDL_HAS_64BIT_TYPE 1
/* Use Watcom's LIBC */
#define HAVE_LIBC 1
/* Useful headers */
#define HAVE_SYS_TYPES_H 1
#define HAVE_STDIO_H 1
#define STDC_HEADERS 1
#define HAVE_STDLIB_H 1
#define HAVE_STDARG_H 1
#define HAVE_MALLOC_H 1
#define HAVE_MEMORY_H 1
#define HAVE_STRING_H 1
#define HAVE_STRINGS_H 1
#define HAVE_INTTYPES_H 1
#define HAVE_STDINT_H 1
#define HAVE_CTYPE_H 1
#define HAVE_MATH_H 1
#define HAVE_SIGNAL_H 1
/* C library functions */
#define HAVE_MALLOC 1
#define HAVE_CALLOC 1
#define HAVE_REALLOC 1
#define HAVE_FREE 1
#define HAVE_ALLOCA 1
#define HAVE_GETENV 1
#define HAVE_PUTENV 1
#define HAVE_UNSETENV 1
#define HAVE_QSORT 1
#define HAVE_ABS 1
#define HAVE_BCOPY 1
#define HAVE_MEMSET 1
#define HAVE_MEMCPY 1
#define HAVE_MEMMOVE 1
#define HAVE_MEMCMP 1
#define HAVE_STRLEN 1
#define HAVE_STRLCPY 1
#define HAVE_STRLCAT 1
#define HAVE_STRDUP 1
#define HAVE__STRREV 1
#define HAVE__STRUPR 1
#define HAVE__STRLWR 1
#define HAVE_INDEX 1
#define HAVE_RINDEX 1
#define HAVE_STRCHR 1
#define HAVE_STRRCHR 1
#define HAVE_STRSTR 1
#define HAVE_ITOA 1
#define HAVE__LTOA 1
#define HAVE__UITOA 1
#define HAVE__ULTOA 1
#define HAVE_STRTOL 1
#define HAVE__I64TOA 1
#define HAVE__UI64TOA 1
#define HAVE_STRTOLL 1
#define HAVE_STRTOD 1
#define HAVE_ATOI 1
#define HAVE_ATOF 1
#define HAVE_STRCMP 1
#define HAVE_STRNCMP 1
#define HAVE_STRICMP 1
#define HAVE_STRCASECMP 1
#define HAVE_SSCANF 1
#define HAVE_SNPRINTF 1
#define HAVE_VSNPRINTF 1
#define HAVE_SETJMP 1
#define HAVE_CLOCK_GETTIME 1
/* Enable various audio drivers */
#define SDL_AUDIO_DRIVER_DART 1
#define SDL_AUDIO_DRIVER_DISK 1
#define SDL_AUDIO_DRIVER_DUMMY 1
/* Enable various cdrom drivers */
#define SDL_CDROM_OS2 1
/* Enable various input drivers */
#define SDL_JOYSTICK_OS2 1
/* Enable various shared object loading systems */
#define SDL_LOADSO_OS2 1
/* Enable various threading systems */
#define SDL_THREAD_OS2 1
/* Enable various timer systems */
#define SDL_TIMER_OS2 1
/* Enable various video drivers */
#define SDL_VIDEO_DRIVER_DUMMY 1
#define SDL_VIDEO_DRIVER_OS2FS 1
/* Enable OpenGL support */
/* Nothing here yet for OS/2... :( */
/* Enable assembly routines where available */
#define SDL_ASSEMBLY_ROUTINES 1
#endif
/* _SDL_config_os2_h */
deploy/SDL.framework/Headers/SDL_config_win32.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
#ifndef _SDL_config_win32_h
#define _SDL_config_win32_h
#include
"SDL_platform.h"
/* This is a set of defines to configure the SDL features */
#if defined(__GNUC__) || defined(__DMC__)
#define HAVE_STDINT_H 1
#elif defined(_MSC_VER)
typedef
signed
__int8
int8_t
;
typedef
unsigned
__int8
uint8_t
;
typedef
signed
__int16
int16_t
;
typedef
unsigned
__int16
uint16_t
;
typedef
signed
__int32
int32_t
;
typedef
unsigned
__int32
uint32_t
;
typedef
signed
__int64
int64_t
;
typedef
unsigned
__int64
uint64_t
;
#ifndef _UINTPTR_T_DEFINED
#ifdef _WIN64
typedef
unsigned
__int64
uintptr_t
;
#else
typedef
unsigned
int
uintptr_t
;
#endif
#define _UINTPTR_T_DEFINED
#endif
/* Older Visual C++ headers don't have the Win64-compatible typedefs... */
#if ((_MSC_VER <= 1200) && (!defined(DWORD_PTR)))
#define DWORD_PTR DWORD
#endif
#if ((_MSC_VER <= 1200) && (!defined(LONG_PTR)))
#define LONG_PTR LONG
#endif
#else
/* !__GNUC__ && !_MSC_VER */
typedef
signed
char
int8_t
;
typedef
unsigned
char
uint8_t
;
typedef
signed
short
int16_t
;
typedef
unsigned
short
uint16_t
;
typedef
signed
int
int32_t
;
typedef
unsigned
int
uint32_t
;
typedef
signed
long
long
int64_t
;
typedef
unsigned
long
long
uint64_t
;
#ifndef _SIZE_T_DEFINED_
#define _SIZE_T_DEFINED_
typedef
unsigned
int
size_t
;
#endif
typedef
unsigned
int
uintptr_t
;
#endif
/* __GNUC__ || _MSC_VER */
#define SDL_HAS_64BIT_TYPE 1
/* Enabled for SDL 1.2 (binary compatibility) */
#define HAVE_LIBC 1
#ifdef HAVE_LIBC
/* Useful headers */
#define HAVE_STDIO_H 1
#define STDC_HEADERS 1
#define HAVE_STRING_H 1
#define HAVE_CTYPE_H 1
#define HAVE_MATH_H 1
#ifndef _WIN32_WCE
#define HAVE_SIGNAL_H 1
#endif
/* C library functions */
#define HAVE_MALLOC 1
#define HAVE_CALLOC 1
#define HAVE_REALLOC 1
#define HAVE_FREE 1
#define HAVE_ALLOCA 1
#define HAVE_QSORT 1
#define HAVE_ABS 1
#define HAVE_MEMSET 1
#define HAVE_MEMCPY 1
#define HAVE_MEMMOVE 1
#define HAVE_MEMCMP 1
#define HAVE_STRLEN 1
#define HAVE__STRREV 1
#define HAVE__STRUPR 1
#define HAVE__STRLWR 1
#define HAVE_STRCHR 1
#define HAVE_STRRCHR 1
#define HAVE_STRSTR 1
#define HAVE_ITOA 1
#define HAVE__LTOA 1
#define HAVE__ULTOA 1
#define HAVE_STRTOL 1
#define HAVE_STRTOUL 1
#define HAVE_STRTOLL 1
#define HAVE_STRTOD 1
#define HAVE_ATOI 1
#define HAVE_ATOF 1
#define HAVE_STRCMP 1
#define HAVE_STRNCMP 1
#define HAVE__STRICMP 1
#define HAVE__STRNICMP 1
#define HAVE_SSCANF 1
#else
#define HAVE_STDARG_H 1
#define HAVE_STDDEF_H 1
#endif
/* Enable various audio drivers */
#ifndef _WIN32_WCE
#define SDL_AUDIO_DRIVER_DSOUND 1
#endif
#define SDL_AUDIO_DRIVER_WAVEOUT 1
#define SDL_AUDIO_DRIVER_DISK 1
#define SDL_AUDIO_DRIVER_DUMMY 1
/* Enable various cdrom drivers */
#ifdef _WIN32_WCE
#define SDL_CDROM_DISABLED 1
#else
#define SDL_CDROM_WIN32 1
#endif
/* Enable various input drivers */
#ifdef _WIN32_WCE
#define SDL_JOYSTICK_DISABLED 1
#else
#define SDL_JOYSTICK_WINMM 1
#endif
/* Enable various shared object loading systems */
#define SDL_LOADSO_WIN32 1
/* Enable various threading systems */
#define SDL_THREAD_WIN32 1
/* Enable various timer systems */
#ifdef _WIN32_WCE
#define SDL_TIMER_WINCE 1
#else
#define SDL_TIMER_WIN32 1
#endif
/* Enable various video drivers */
#ifdef _WIN32_WCE
#define SDL_VIDEO_DRIVER_GAPI 1
#endif
#ifndef _WIN32_WCE
#define SDL_VIDEO_DRIVER_DDRAW 1
#endif
#define SDL_VIDEO_DRIVER_DUMMY 1
#define SDL_VIDEO_DRIVER_WINDIB 1
/* Enable OpenGL support */
#ifndef _WIN32_WCE
#define SDL_VIDEO_OPENGL 1
#define SDL_VIDEO_OPENGL_WGL 1
#endif
/* Disable screensaver */
#define SDL_VIDEO_DISABLE_SCREENSAVER 1
/* Enable assembly routines (Win64 doesn't have inline asm) */
#ifndef _WIN64
#define SDL_ASSEMBLY_ROUTINES 1
#endif
#endif
/* _SDL_config_win32_h */
deploy/SDL.framework/Headers/SDL_copying.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
deploy/SDL.framework/Headers/SDL_cpuinfo.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
/**
* @file SDL_cpuinfo.h
* CPU feature detection for SDL
*/
#ifndef _SDL_cpuinfo_h
#define _SDL_cpuinfo_h
#include
"SDL_stdinc.h"
#include
"begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern
"C"
{
#endif
/** This function returns true if the CPU has the RDTSC instruction */
extern
DECLSPEC
SDL_bool
SDLCALL
SDL_HasRDTSC
(
void
);
/** This function returns true if the CPU has MMX features */
extern
DECLSPEC
SDL_bool
SDLCALL
SDL_HasMMX
(
void
);
/** This function returns true if the CPU has MMX Ext. features */
extern
DECLSPEC
SDL_bool
SDLCALL
SDL_HasMMXExt
(
void
);
/** This function returns true if the CPU has 3DNow features */
extern
DECLSPEC
SDL_bool
SDLCALL
SDL_Has3DNow
(
void
);
/** This function returns true if the CPU has 3DNow! Ext. features */
extern
DECLSPEC
SDL_bool
SDLCALL
SDL_Has3DNowExt
(
void
);
/** This function returns true if the CPU has SSE features */
extern
DECLSPEC
SDL_bool
SDLCALL
SDL_HasSSE
(
void
);
/** This function returns true if the CPU has SSE2 features */
extern
DECLSPEC
SDL_bool
SDLCALL
SDL_HasSSE2
(
void
);
/** This function returns true if the CPU has AltiVec features */
extern
DECLSPEC
SDL_bool
SDLCALL
SDL_HasAltiVec
(
void
);
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#include
"close_code.h"
#endif
/* _SDL_cpuinfo_h */
deploy/SDL.framework/Headers/SDL_endian.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
/**
* @file SDL_endian.h
* Functions for reading and writing endian-specific values
*/
#ifndef _SDL_endian_h
#define _SDL_endian_h
#include
"SDL_stdinc.h"
/** @name SDL_ENDIANs
* The two types of endianness
*/
/*@{*/
#define SDL_LIL_ENDIAN 1234
#define SDL_BIG_ENDIAN 4321
/*@}*/
#ifndef SDL_BYTEORDER
/* Not defined in SDL_config.h? */
#if defined(__hppa__) || \
defined(__m68k__) || defined(mc68000) || defined(_M_M68K) || \
(defined(__MIPS__) && defined(__MISPEB__)) || \
defined(__ppc__) || defined(__POWERPC__) || defined(_M_PPC) || \
defined(__sparc__)
#define SDL_BYTEORDER SDL_BIG_ENDIAN
#else
#define SDL_BYTEORDER SDL_LIL_ENDIAN
#endif
#endif
/* !SDL_BYTEORDER */
#include
"begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern
"C"
{
#endif
/**
* @name SDL_Swap Functions
* Use inline functions for compilers that support them, and static
* functions for those that do not. Because these functions become
* static for compilers that do not support inline functions, this
* header should only be included in files that actually use them.
*/
/*@{*/
#if defined(__GNUC__) && defined(__i386__) && \
!(__GNUC__ == 2 && __GNUC_MINOR__ <= 95
/* broken gcc version */
)
static
__inline__
Uint16
SDL_Swap16
(
Uint16
x
)
{
__asm__
(
"xchgb %b0,%h0"
:
"=q"
(
x
)
:
"0"
(
x
));
return
x
;
}
#elif defined(__GNUC__) && defined(__x86_64__)
static
__inline__
Uint16
SDL_Swap16
(
Uint16
x
)
{
__asm__
(
"xchgb %b0,%h0"
:
"=Q"
(
x
)
:
"0"
(
x
));
return
x
;
}
#elif defined(__GNUC__) && (defined(__powerpc__) || defined(__ppc__))
static
__inline__
Uint16
SDL_Swap16
(
Uint16
x
)
{
Uint16
result
;
__asm__
(
"rlwimi %0,%2,8,16,23"
:
"=&r"
(
result
)
:
"0"
(
x
>>
8
),
"r"
(
x
));
return
result
;
}
#elif defined(__GNUC__) && (defined(__M68000__) || defined(__M68020__))
static
__inline__
Uint16
SDL_Swap16
(
Uint16
x
)
{
__asm__
(
"rorw #8,%0"
:
"=d"
(
x
)
:
"0"
(
x
)
:
"cc"
);
return
x
;
}
#else
static
__inline__
Uint16
SDL_Swap16
(
Uint16
x
)
{
return
((
x
<<
8
)
|
(
x
>>
8
));
}
#endif
#if defined(__GNUC__) && defined(__i386__) && \
!(__GNUC__ == 2 && __GNUC_MINOR__ <= 95
/* broken gcc version */
)
static
__inline__
Uint32
SDL_Swap32
(
Uint32
x
)
{
__asm__
(
"bswap %0"
:
"=r"
(
x
)
:
"0"
(
x
));
return
x
;
}
#elif defined(__GNUC__) && defined(__x86_64__)
static
__inline__
Uint32
SDL_Swap32
(
Uint32
x
)
{
__asm__
(
"bswapl %0"
:
"=r"
(
x
)
:
"0"
(
x
));
return
x
;
}
#elif defined(__GNUC__) && (defined(__powerpc__) || defined(__ppc__))
static
__inline__
Uint32
SDL_Swap32
(
Uint32
x
)
{
Uint32
result
;
__asm__
(
"rlwimi %0,%2,24,16,23"
:
"=&r"
(
result
)
:
"0"
(
x
>>
24
),
"r"
(
x
));
__asm__
(
"rlwimi %0,%2,8,8,15"
:
"=&r"
(
result
)
:
"0"
(
result
),
"r"
(
x
));
__asm__
(
"rlwimi %0,%2,24,0,7"
:
"=&r"
(
result
)
:
"0"
(
result
),
"r"
(
x
));
return
result
;
}
#elif defined(__GNUC__) && (defined(__M68000__) || defined(__M68020__))
static
__inline__
Uint32
SDL_Swap32
(
Uint32
x
)
{
__asm__
(
"rorw #8,%0
\n\t
swap %0
\n\t
rorw #8,%0"
:
"=d"
(
x
)
:
"0"
(
x
)
:
"cc"
);
return
x
;
}
#else
static
__inline__
Uint32
SDL_Swap32
(
Uint32
x
)
{
return
((
x
<<
24
)
|
((
x
<<
8
)
&
0x00FF0000
)
|
((
x
>>
8
)
&
0x0000FF00
)
|
(
x
>>
24
));
}
#endif
#ifdef SDL_HAS_64BIT_TYPE
#if defined(__GNUC__) && defined(__i386__) && \
!(__GNUC__ == 2 && __GNUC_MINOR__ <= 95
/* broken gcc version */
)
static
__inline__
Uint64
SDL_Swap64
(
Uint64
x
)
{
union
{
struct
{
Uint32
a
,
b
;
}
s
;
Uint64
u
;
}
v
;
v
.
u
=
x
;
__asm__
(
"bswapl %0 ; bswapl %1 ; xchgl %0,%1"
:
"=r"
(
v
.
s
.
a
),
"=r"
(
v
.
s
.
b
)
:
"0"
(
v
.
s
.
a
),
"1"
(
v
.
s
.
b
));
return
v
.
u
;
}
#elif defined(__GNUC__) && defined(__x86_64__)
static
__inline__
Uint64
SDL_Swap64
(
Uint64
x
)
{
__asm__
(
"bswapq %0"
:
"=r"
(
x
)
:
"0"
(
x
));
return
x
;
}
#else
static
__inline__
Uint64
SDL_Swap64
(
Uint64
x
)
{
Uint32
hi
,
lo
;
/* Separate into high and low 32-bit values and swap them */
lo
=
SDL_static_cast
(
Uint32
,
x
&
0xFFFFFFFF
);
x
>>=
32
;
hi
=
SDL_static_cast
(
Uint32
,
x
&
0xFFFFFFFF
);
x
=
SDL_Swap32
(
lo
);
x
<<=
32
;
x
|=
SDL_Swap32
(
hi
);
return
(
x
);
}
#endif
#else
/* This is mainly to keep compilers from complaining in SDL code.
* If there is no real 64-bit datatype, then compilers will complain about
* the fake 64-bit datatype that SDL provides when it compiles user code.
*/
#define SDL_Swap64(X) (X)
#endif
/* SDL_HAS_64BIT_TYPE */
/*@}*/
/**
* @name SDL_SwapLE and SDL_SwapBE Functions
* Byteswap item from the specified endianness to the native endianness
*/
/*@{*/
#if SDL_BYTEORDER == SDL_LIL_ENDIAN
#define SDL_SwapLE16(X) (X)
#define SDL_SwapLE32(X) (X)
#define SDL_SwapLE64(X) (X)
#define SDL_SwapBE16(X) SDL_Swap16(X)
#define SDL_SwapBE32(X) SDL_Swap32(X)
#define SDL_SwapBE64(X) SDL_Swap64(X)
#else
#define SDL_SwapLE16(X) SDL_Swap16(X)
#define SDL_SwapLE32(X) SDL_Swap32(X)
#define SDL_SwapLE64(X) SDL_Swap64(X)
#define SDL_SwapBE16(X) (X)
#define SDL_SwapBE32(X) (X)
#define SDL_SwapBE64(X) (X)
#endif
/*@}*/
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#include
"close_code.h"
#endif
/* _SDL_endian_h */
deploy/SDL.framework/Headers/SDL_error.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
/**
* @file SDL_error.h
* Simple error message routines for SDL
*/
#ifndef _SDL_error_h
#define _SDL_error_h
#include
"SDL_stdinc.h"
#include
"begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern
"C"
{
#endif
/**
* @name Public functions
*/
/*@{*/
extern
DECLSPEC
void
SDLCALL
SDL_SetError
(
const
char
*
fmt
,
...);
extern
DECLSPEC
char
*
SDLCALL
SDL_GetError
(
void
);
extern
DECLSPEC
void
SDLCALL
SDL_ClearError
(
void
);
/*@}*/
/**
* @name Private functions
* @internal Private error message function - used internally
*/
/*@{*/
#define SDL_OutOfMemory() SDL_Error(SDL_ENOMEM)
#define SDL_Unsupported() SDL_Error(SDL_UNSUPPORTED)
typedef
enum
{
SDL_ENOMEM
,
SDL_EFREAD
,
SDL_EFWRITE
,
SDL_EFSEEK
,
SDL_UNSUPPORTED
,
SDL_LASTERROR
}
SDL_errorcode
;
extern
DECLSPEC
void
SDLCALL
SDL_Error
(
SDL_errorcode
code
);
/*@}*/
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#include
"close_code.h"
#endif
/* _SDL_error_h */
deploy/SDL.framework/Headers/SDL_events.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
/**
* @file SDL_events.h
* Include file for SDL event handling
*/
#ifndef _SDL_events_h
#define _SDL_events_h
#include
"SDL_stdinc.h"
#include
"SDL_error.h"
#include
"SDL_active.h"
#include
"SDL_keyboard.h"
#include
"SDL_mouse.h"
#include
"SDL_joystick.h"
#include
"SDL_quit.h"
#include
"begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern
"C"
{
#endif
/** @name General keyboard/mouse state definitions */
/*@{*/
#define SDL_RELEASED 0
#define SDL_PRESSED 1
/*@}*/
/** Event enumerations */
typedef
enum
{
SDL_NOEVENT
=
0
,
/**< Unused (do not remove) */
SDL_ACTIVEEVENT
,
/**< Application loses/gains visibility */
SDL_KEYDOWN
,
/**< Keys pressed */
SDL_KEYUP
,
/**< Keys released */
SDL_MOUSEMOTION
,
/**< Mouse moved */
SDL_MOUSEBUTTONDOWN
,
/**< Mouse button pressed */
SDL_MOUSEBUTTONUP
,
/**< Mouse button released */
SDL_JOYAXISMOTION
,
/**< Joystick axis motion */
SDL_JOYBALLMOTION
,
/**< Joystick trackball motion */
SDL_JOYHATMOTION
,
/**< Joystick hat position change */
SDL_JOYBUTTONDOWN
,
/**< Joystick button pressed */
SDL_JOYBUTTONUP
,
/**< Joystick button released */
SDL_QUIT
,
/**< User-requested quit */
SDL_SYSWMEVENT
,
/**< System specific event */
SDL_EVENT_RESERVEDA
,
/**< Reserved for future use.. */
SDL_EVENT_RESERVEDB
,
/**< Reserved for future use.. */
SDL_VIDEORESIZE
,
/**< User resized video mode */
SDL_VIDEOEXPOSE
,
/**< Screen needs to be redrawn */
SDL_EVENT_RESERVED2
,
/**< Reserved for future use.. */
SDL_EVENT_RESERVED3
,
/**< Reserved for future use.. */
SDL_EVENT_RESERVED4
,
/**< Reserved for future use.. */
SDL_EVENT_RESERVED5
,
/**< Reserved for future use.. */
SDL_EVENT_RESERVED6
,
/**< Reserved for future use.. */
SDL_EVENT_RESERVED7
,
/**< Reserved for future use.. */
/** Events SDL_USEREVENT through SDL_MAXEVENTS-1 are for your use */
SDL_USEREVENT
=
24
,
/** This last event is only for bounding internal arrays
* It is the number of bits in the event mask datatype -- Uint32
*/
SDL_NUMEVENTS
=
32
}
SDL_EventType
;
/** @name Predefined event masks */
/*@{*/
#define SDL_EVENTMASK(X) (1<<(X))
typedef
enum
{
SDL_ACTIVEEVENTMASK
=
SDL_EVENTMASK
(
SDL_ACTIVEEVENT
),
SDL_KEYDOWNMASK
=
SDL_EVENTMASK
(
SDL_KEYDOWN
),
SDL_KEYUPMASK
=
SDL_EVENTMASK
(
SDL_KEYUP
),
SDL_KEYEVENTMASK
=
SDL_EVENTMASK
(
SDL_KEYDOWN
)
|
SDL_EVENTMASK
(
SDL_KEYUP
),
SDL_MOUSEMOTIONMASK
=
SDL_EVENTMASK
(
SDL_MOUSEMOTION
),
SDL_MOUSEBUTTONDOWNMASK
=
SDL_EVENTMASK
(
SDL_MOUSEBUTTONDOWN
),
SDL_MOUSEBUTTONUPMASK
=
SDL_EVENTMASK
(
SDL_MOUSEBUTTONUP
),
SDL_MOUSEEVENTMASK
=
SDL_EVENTMASK
(
SDL_MOUSEMOTION
)
|
SDL_EVENTMASK
(
SDL_MOUSEBUTTONDOWN
)
|
SDL_EVENTMASK
(
SDL_MOUSEBUTTONUP
),
SDL_JOYAXISMOTIONMASK
=
SDL_EVENTMASK
(
SDL_JOYAXISMOTION
),
SDL_JOYBALLMOTIONMASK
=
SDL_EVENTMASK
(
SDL_JOYBALLMOTION
),
SDL_JOYHATMOTIONMASK
=
SDL_EVENTMASK
(
SDL_JOYHATMOTION
),
SDL_JOYBUTTONDOWNMASK
=
SDL_EVENTMASK
(
SDL_JOYBUTTONDOWN
),
SDL_JOYBUTTONUPMASK
=
SDL_EVENTMASK
(
SDL_JOYBUTTONUP
),
SDL_JOYEVENTMASK
=
SDL_EVENTMASK
(
SDL_JOYAXISMOTION
)
|
SDL_EVENTMASK
(
SDL_JOYBALLMOTION
)
|
SDL_EVENTMASK
(
SDL_JOYHATMOTION
)
|
SDL_EVENTMASK
(
SDL_JOYBUTTONDOWN
)
|
SDL_EVENTMASK
(
SDL_JOYBUTTONUP
),
SDL_VIDEORESIZEMASK
=
SDL_EVENTMASK
(
SDL_VIDEORESIZE
),
SDL_VIDEOEXPOSEMASK
=
SDL_EVENTMASK
(
SDL_VIDEOEXPOSE
),
SDL_QUITMASK
=
SDL_EVENTMASK
(
SDL_QUIT
),
SDL_SYSWMEVENTMASK
=
SDL_EVENTMASK
(
SDL_SYSWMEVENT
)
}
SDL_EventMask
;
#define SDL_ALLEVENTS 0xFFFFFFFF
/*@}*/
/** Application visibility event structure */
typedef
struct
SDL_ActiveEvent
{
Uint8
type
;
/**< SDL_ACTIVEEVENT */
Uint8
gain
;
/**< Whether given states were gained or lost (1/0) */
Uint8
state
;
/**< A mask of the focus states */
}
SDL_ActiveEvent
;
/** Keyboard event structure */
typedef
struct
SDL_KeyboardEvent
{
Uint8
type
;
/**< SDL_KEYDOWN or SDL_KEYUP */
Uint8
which
;
/**< The keyboard device index */
Uint8
state
;
/**< SDL_PRESSED or SDL_RELEASED */
SDL_keysym
keysym
;
}
SDL_KeyboardEvent
;
/** Mouse motion event structure */
typedef
struct
SDL_MouseMotionEvent
{
Uint8
type
;
/**< SDL_MOUSEMOTION */
Uint8
which
;
/**< The mouse device index */
Uint8
state
;
/**< The current button state */
Uint16
x
,
y
;
/**< The X/Y coordinates of the mouse */
Sint16
xrel
;
/**< The relative motion in the X direction */
Sint16
yrel
;
/**< The relative motion in the Y direction */
}
SDL_MouseMotionEvent
;
/** Mouse button event structure */
typedef
struct
SDL_MouseButtonEvent
{
Uint8
type
;
/**< SDL_MOUSEBUTTONDOWN or SDL_MOUSEBUTTONUP */
Uint8
which
;
/**< The mouse device index */
Uint8
button
;
/**< The mouse button index */
Uint8
state
;
/**< SDL_PRESSED or SDL_RELEASED */
Uint16
x
,
y
;
/**< The X/Y coordinates of the mouse at press time */
}
SDL_MouseButtonEvent
;
/** Joystick axis motion event structure */
typedef
struct
SDL_JoyAxisEvent
{
Uint8
type
;
/**< SDL_JOYAXISMOTION */
Uint8
which
;
/**< The joystick device index */
Uint8
axis
;
/**< The joystick axis index */
Sint16
value
;
/**< The axis value (range: -32768 to 32767) */
}
SDL_JoyAxisEvent
;
/** Joystick trackball motion event structure */
typedef
struct
SDL_JoyBallEvent
{
Uint8
type
;
/**< SDL_JOYBALLMOTION */
Uint8
which
;
/**< The joystick device index */
Uint8
ball
;
/**< The joystick trackball index */
Sint16
xrel
;
/**< The relative motion in the X direction */
Sint16
yrel
;
/**< The relative motion in the Y direction */
}
SDL_JoyBallEvent
;
/** Joystick hat position change event structure */
typedef
struct
SDL_JoyHatEvent
{
Uint8
type
;
/**< SDL_JOYHATMOTION */
Uint8
which
;
/**< The joystick device index */
Uint8
hat
;
/**< The joystick hat index */
Uint8
value
;
/**< The hat position value:
* SDL_HAT_LEFTUP SDL_HAT_UP SDL_HAT_RIGHTUP
* SDL_HAT_LEFT SDL_HAT_CENTERED SDL_HAT_RIGHT
* SDL_HAT_LEFTDOWN SDL_HAT_DOWN SDL_HAT_RIGHTDOWN
* Note that zero means the POV is centered.
*/
}
SDL_JoyHatEvent
;
/** Joystick button event structure */
typedef
struct
SDL_JoyButtonEvent
{
Uint8
type
;
/**< SDL_JOYBUTTONDOWN or SDL_JOYBUTTONUP */
Uint8
which
;
/**< The joystick device index */
Uint8
button
;
/**< The joystick button index */
Uint8
state
;
/**< SDL_PRESSED or SDL_RELEASED */
}
SDL_JoyButtonEvent
;
/** The "window resized" event
* When you get this event, you are responsible for setting a new video
* mode with the new width and height.
*/
typedef
struct
SDL_ResizeEvent
{
Uint8
type
;
/**< SDL_VIDEORESIZE */
int
w
;
/**< New width */
int
h
;
/**< New height */
}
SDL_ResizeEvent
;
/** The "screen redraw" event */
typedef
struct
SDL_ExposeEvent
{
Uint8
type
;
/**< SDL_VIDEOEXPOSE */
}
SDL_ExposeEvent
;
/** The "quit requested" event */
typedef
struct
SDL_QuitEvent
{
Uint8
type
;
/**< SDL_QUIT */
}
SDL_QuitEvent
;
/** A user-defined event type */
typedef
struct
SDL_UserEvent
{
Uint8
type
;
/**< SDL_USEREVENT through SDL_NUMEVENTS-1 */
int
code
;
/**< User defined event code */
void
*
data1
;
/**< User defined data pointer */
void
*
data2
;
/**< User defined data pointer */
}
SDL_UserEvent
;
/** If you want to use this event, you should include SDL_syswm.h */
struct
SDL_SysWMmsg
;
typedef
struct
SDL_SysWMmsg
SDL_SysWMmsg
;
typedef
struct
SDL_SysWMEvent
{
Uint8
type
;
SDL_SysWMmsg
*
msg
;
}
SDL_SysWMEvent
;
/** General event structure */
typedef
union
SDL_Event
{
Uint8
type
;
SDL_ActiveEvent
active
;
SDL_KeyboardEvent
key
;
SDL_MouseMotionEvent
motion
;
SDL_MouseButtonEvent
button
;
SDL_JoyAxisEvent
jaxis
;
SDL_JoyBallEvent
jball
;
SDL_JoyHatEvent
jhat
;
SDL_JoyButtonEvent
jbutton
;
SDL_ResizeEvent
resize
;
SDL_ExposeEvent
expose
;
SDL_QuitEvent
quit
;
SDL_UserEvent
user
;
SDL_SysWMEvent
syswm
;
}
SDL_Event
;
/* Function prototypes */
/** Pumps the event loop, gathering events from the input devices.
* This function updates the event queue and internal input device state.
* This should only be run in the thread that sets the video mode.
*/
extern
DECLSPEC
void
SDLCALL
SDL_PumpEvents
(
void
);
typedef
enum
{
SDL_ADDEVENT
,
SDL_PEEKEVENT
,
SDL_GETEVENT
}
SDL_eventaction
;
/**
* Checks the event queue for messages and optionally returns them.
*
* If 'action' is SDL_ADDEVENT, up to 'numevents' events will be added to
* the back of the event queue.
* If 'action' is SDL_PEEKEVENT, up to 'numevents' events at the front
* of the event queue, matching 'mask', will be returned and will not
* be removed from the queue.
* If 'action' is SDL_GETEVENT, up to 'numevents' events at the front
* of the event queue, matching 'mask', will be returned and will be
* removed from the queue.
*
* @return
* This function returns the number of events actually stored, or -1
* if there was an error.
*
* This function is thread-safe.
*/
extern
DECLSPEC
int
SDLCALL
SDL_PeepEvents
(
SDL_Event
*
events
,
int
numevents
,
SDL_eventaction
action
,
Uint32
mask
);
/** Polls for currently pending events, and returns 1 if there are any pending
* events, or 0 if there are none available. If 'event' is not NULL, the next
* event is removed from the queue and stored in that area.
*/
extern
DECLSPEC
int
SDLCALL
SDL_PollEvent
(
SDL_Event
*
event
);
/** Waits indefinitely for the next available event, returning 1, or 0 if there
* was an error while waiting for events. If 'event' is not NULL, the next
* event is removed from the queue and stored in that area.
*/
extern
DECLSPEC
int
SDLCALL
SDL_WaitEvent
(
SDL_Event
*
event
);
/** Add an event to the event queue.
* This function returns 0 on success, or -1 if the event queue was full
* or there was some other error.
*/
extern
DECLSPEC
int
SDLCALL
SDL_PushEvent
(
SDL_Event
*
event
);
/** @name Event Filtering */
/*@{*/
typedef
int
(
SDLCALL
*
SDL_EventFilter
)(
const
SDL_Event
*
event
);
/**
* This function sets up a filter to process all events before they
* change internal state and are posted to the internal event queue.
*
* The filter is protypted as:
* @code typedef int (SDLCALL *SDL_EventFilter)(const SDL_Event *event); @endcode
*
* If the filter returns 1, then the event will be added to the internal queue.
* If it returns 0, then the event will be dropped from the queue, but the
* internal state will still be updated. This allows selective filtering of
* dynamically arriving events.
*
* @warning Be very careful of what you do in the event filter function, as
* it may run in a different thread!
*
* There is one caveat when dealing with the SDL_QUITEVENT event type. The
* event filter is only called when the window manager desires to close the
* application window. If the event filter returns 1, then the window will
* be closed, otherwise the window will remain open if possible.
* If the quit event is generated by an interrupt signal, it will bypass the
* internal queue and be delivered to the application at the next event poll.
*/
extern
DECLSPEC
void
SDLCALL
SDL_SetEventFilter
(
SDL_EventFilter
filter
);
/**
* Return the current event filter - can be used to "chain" filters.
* If there is no event filter set, this function returns NULL.
*/
extern
DECLSPEC
SDL_EventFilter
SDLCALL
SDL_GetEventFilter
(
void
);
/*@}*/
/** @name Event State */
/*@{*/
#define SDL_QUERY -1
#define SDL_IGNORE 0
#define SDL_DISABLE 0
#define SDL_ENABLE 1
/*@}*/
/**
* This function allows you to set the state of processing certain events.
* If 'state' is set to SDL_IGNORE, that event will be automatically dropped
* from the event queue and will not event be filtered.
* If 'state' is set to SDL_ENABLE, that event will be processed normally.
* If 'state' is set to SDL_QUERY, SDL_EventState() will return the
* current processing state of the specified event.
*/
extern
DECLSPEC
Uint8
SDLCALL
SDL_EventState
(
Uint8
type
,
int
state
);
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#include
"close_code.h"
#endif
/* _SDL_events_h */
deploy/SDL.framework/Headers/SDL_getenv.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
/** @file SDL_getenv.h
* @deprecated Use SDL_stdinc.h instead
*/
/* DEPRECATED */
#include
"SDL_stdinc.h"
deploy/SDL.framework/Headers/SDL_joystick.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
/** @file SDL_joystick.h
* Include file for SDL joystick event handling
*/
#ifndef _SDL_joystick_h
#define _SDL_joystick_h
#include
"SDL_stdinc.h"
#include
"SDL_error.h"
#include
"begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern
"C"
{
#endif
/** @file SDL_joystick.h
* @note In order to use these functions, SDL_Init() must have been called
* with the SDL_INIT_JOYSTICK flag. This causes SDL to scan the system
* for joysticks, and load appropriate drivers.
*/
/** The joystick structure used to identify an SDL joystick */
struct
_SDL_Joystick
;
typedef
struct
_SDL_Joystick
SDL_Joystick
;
/* Function prototypes */
/**
* Count the number of joysticks attached to the system
*/
extern
DECLSPEC
int
SDLCALL
SDL_NumJoysticks
(
void
);
/**
* Get the implementation dependent name of a joystick.
*
* This can be called before any joysticks are opened.
* If no name can be found, this function returns NULL.
*/
extern
DECLSPEC
const
char
*
SDLCALL
SDL_JoystickName
(
int
device_index
);
/**
* Open a joystick for use.
*
* @param[in] device_index
* The index passed as an argument refers to
* the N'th joystick on the system. This index is the value which will
* identify this joystick in future joystick events.
*
* @return This function returns a joystick identifier, or NULL if an error occurred.
*/
extern
DECLSPEC
SDL_Joystick
*
SDLCALL
SDL_JoystickOpen
(
int
device_index
);
/**
* Returns 1 if the joystick has been opened, or 0 if it has not.
*/
extern
DECLSPEC
int
SDLCALL
SDL_JoystickOpened
(
int
device_index
);
/**
* Get the device index of an opened joystick.
*/
extern
DECLSPEC
int
SDLCALL
SDL_JoystickIndex
(
SDL_Joystick
*
joystick
);
/**
* Get the number of general axis controls on a joystick
*/
extern
DECLSPEC
int
SDLCALL
SDL_JoystickNumAxes
(
SDL_Joystick
*
joystick
);
/**
* Get the number of trackballs on a joystick
*
* Joystick trackballs have only relative motion events associated
* with them and their state cannot be polled.
*/
extern
DECLSPEC
int
SDLCALL
SDL_JoystickNumBalls
(
SDL_Joystick
*
joystick
);
/**
* Get the number of POV hats on a joystick
*/
extern
DECLSPEC
int
SDLCALL
SDL_JoystickNumHats
(
SDL_Joystick
*
joystick
);
/**
* Get the number of buttons on a joystick
*/
extern
DECLSPEC
int
SDLCALL
SDL_JoystickNumButtons
(
SDL_Joystick
*
joystick
);
/**
* Update the current state of the open joysticks.
*
* This is called automatically by the event loop if any joystick
* events are enabled.
*/
extern
DECLSPEC
void
SDLCALL
SDL_JoystickUpdate
(
void
);
/**
* Enable/disable joystick event polling.
*
* If joystick events are disabled, you must call SDL_JoystickUpdate()
* yourself and check the state of the joystick when you want joystick
* information.
*
* @param[in] state The state can be one of SDL_QUERY, SDL_ENABLE or SDL_IGNORE.
*/
extern
DECLSPEC
int
SDLCALL
SDL_JoystickEventState
(
int
state
);
/**
* Get the current state of an axis control on a joystick
*
* @param[in] axis The axis indices start at index 0.
*
* @return The state is a value ranging from -32768 to 32767.
*/
extern
DECLSPEC
Sint16
SDLCALL
SDL_JoystickGetAxis
(
SDL_Joystick
*
joystick
,
int
axis
);
/**
* @name Hat Positions
* The return value of SDL_JoystickGetHat() is one of the following positions:
*/
/*@{*/
#define SDL_HAT_CENTERED 0x00
#define SDL_HAT_UP 0x01
#define SDL_HAT_RIGHT 0x02
#define SDL_HAT_DOWN 0x04
#define SDL_HAT_LEFT 0x08
#define SDL_HAT_RIGHTUP (SDL_HAT_RIGHT|SDL_HAT_UP)
#define SDL_HAT_RIGHTDOWN (SDL_HAT_RIGHT|SDL_HAT_DOWN)
#define SDL_HAT_LEFTUP (SDL_HAT_LEFT|SDL_HAT_UP)
#define SDL_HAT_LEFTDOWN (SDL_HAT_LEFT|SDL_HAT_DOWN)
/*@}*/
/**
* Get the current state of a POV hat on a joystick
*
* @param[in] hat The hat indices start at index 0.
*/
extern
DECLSPEC
Uint8
SDLCALL
SDL_JoystickGetHat
(
SDL_Joystick
*
joystick
,
int
hat
);
/**
* Get the ball axis change since the last poll
*
* @param[in] ball The ball indices start at index 0.
*
* @return This returns 0, or -1 if you passed it invalid parameters.
*/
extern
DECLSPEC
int
SDLCALL
SDL_JoystickGetBall
(
SDL_Joystick
*
joystick
,
int
ball
,
int
*
dx
,
int
*
dy
);
/**
* Get the current state of a button on a joystick
*
* @param[in] button The button indices start at index 0.
*/
extern
DECLSPEC
Uint8
SDLCALL
SDL_JoystickGetButton
(
SDL_Joystick
*
joystick
,
int
button
);
/**
* Close a joystick previously opened with SDL_JoystickOpen()
*/
extern
DECLSPEC
void
SDLCALL
SDL_JoystickClose
(
SDL_Joystick
*
joystick
);
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#include
"close_code.h"
#endif
/* _SDL_joystick_h */
deploy/SDL.framework/Headers/SDL_keyboard.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
/** @file SDL_keyboard.h
* Include file for SDL keyboard event handling
*/
#ifndef _SDL_keyboard_h
#define _SDL_keyboard_h
#include
"SDL_stdinc.h"
#include
"SDL_error.h"
#include
"SDL_keysym.h"
#include
"begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern
"C"
{
#endif
/** Keysym structure
*
* - The scancode is hardware dependent, and should not be used by general
* applications. If no hardware scancode is available, it will be 0.
*
* - The 'unicode' translated character is only available when character
* translation is enabled by the SDL_EnableUNICODE() API. If non-zero,
* this is a UNICODE character corresponding to the keypress. If the
* high 9 bits of the character are 0, then this maps to the equivalent
* ASCII character:
* @code
* char ch;
* if ( (keysym.unicode & 0xFF80) == 0 ) {
* ch = keysym.unicode & 0x7F;
* } else {
* An international character..
* }
* @endcode
*/
typedef
struct
SDL_keysym
{
Uint8
scancode
;
/**< hardware specific scancode */
SDLKey
sym
;
/**< SDL virtual keysym */
SDLMod
mod
;
/**< current key modifiers */
Uint16
unicode
;
/**< translated character */
}
SDL_keysym
;
/** This is the mask which refers to all hotkey bindings */
#define SDL_ALL_HOTKEYS 0xFFFFFFFF
/* Function prototypes */
/**
* Enable/Disable UNICODE translation of keyboard input.
*
* This translation has some overhead, so translation defaults off.
*
* @param[in] enable
* If 'enable' is 1, translation is enabled.
* If 'enable' is 0, translation is disabled.
* If 'enable' is -1, the translation state is not changed.
*
* @return It returns the previous state of keyboard translation.
*/
extern
DECLSPEC
int
SDLCALL
SDL_EnableUNICODE
(
int
enable
);
#define SDL_DEFAULT_REPEAT_DELAY 500
#define SDL_DEFAULT_REPEAT_INTERVAL 30
/**
* Enable/Disable keyboard repeat. Keyboard repeat defaults to off.
*
* @param[in] delay
* 'delay' is the initial delay in ms between the time when a key is
* pressed, and keyboard repeat begins.
*
* @param[in] interval
* 'interval' is the time in ms between keyboard repeat events.
*
* If 'delay' is set to 0, keyboard repeat is disabled.
*/
extern
DECLSPEC
int
SDLCALL
SDL_EnableKeyRepeat
(
int
delay
,
int
interval
);
extern
DECLSPEC
void
SDLCALL
SDL_GetKeyRepeat
(
int
*
delay
,
int
*
interval
);
/**
* Get a snapshot of the current state of the keyboard.
* Returns an array of keystates, indexed by the SDLK_* syms.
* Usage:
* @code
* Uint8 *keystate = SDL_GetKeyState(NULL);
* if ( keystate[SDLK_RETURN] ) //... \<RETURN> is pressed.
* @endcode
*/
extern
DECLSPEC
Uint8
*
SDLCALL
SDL_GetKeyState
(
int
*
numkeys
);
/**
* Get the current key modifier state
*/
extern
DECLSPEC
SDLMod
SDLCALL
SDL_GetModState
(
void
);
/**
* Set the current key modifier state.
* This does not change the keyboard state, only the key modifier flags.
*/
extern
DECLSPEC
void
SDLCALL
SDL_SetModState
(
SDLMod
modstate
);
/**
* Get the name of an SDL virtual keysym
*/
extern
DECLSPEC
char
*
SDLCALL
SDL_GetKeyName
(
SDLKey
key
);
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#include
"close_code.h"
#endif
/* _SDL_keyboard_h */
deploy/SDL.framework/Headers/SDL_keysym.h
0 → 100644
View file @
e318c0a5
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
#ifndef _SDL_keysym_h
#define _SDL_keysym_h
/** What we really want is a mapping of every raw key on the keyboard.
* To support international keyboards, we use the range 0xA1 - 0xFF
* as international virtual keycodes. We'll follow in the footsteps of X11...
* @brief The names of the keys
*/
typedef
enum
{
/** @name ASCII mapped keysyms
* The keyboard syms have been cleverly chosen to map to ASCII
*/
/*@{*/
SDLK_UNKNOWN
=
0
,
SDLK_FIRST
=
0
,
SDLK_BACKSPACE
=
8
,
SDLK_TAB
=
9
,
SDLK_CLEAR
=
12
,
SDLK_RETURN
=
13
,
SDLK_PAUSE
=
19
,
SDLK_ESCAPE
=
27
,
SDLK_SPACE
=
32
,
SDLK_EXCLAIM
=
33
,
SDLK_QUOTEDBL
=
34
,
SDLK_HASH
=
35
,
SDLK_DOLLAR
=
36
,
SDLK_AMPERSAND
=
38
,
SDLK_QUOTE
=
39
,
SDLK_LEFTPAREN
=
40
,
SDLK_RIGHTPAREN
=
41
,
SDLK_ASTERISK
=
42
,
SDLK_PLUS
=
43
,
SDLK_COMMA
=
44
,
SDLK_MINUS
=
45
,
SDLK_PERIOD
=
46
,
SDLK_SLASH
=
47
,
SDLK_0
=
48
,
SDLK_1
=
49
,
SDLK_2
=
50
,
SDLK_3
=
51
,
SDLK_4
=
52
,
SDLK_5
=
53
,
SDLK_6
=
54
,
SDLK_7
=
55
,
SDLK_8
=
56
,
SDLK_9
=
57
,
SDLK_COLON
=
58
,
SDLK_SEMICOLON
=
59
,
SDLK_LESS
=
60
,
SDLK_EQUALS
=
61
,
SDLK_GREATER
=
62
,
SDLK_QUESTION
=
63
,
SDLK_AT
=
64
,
/*
Skip uppercase letters
*/
SDLK_LEFTBRACKET
=
91
,
SDLK_BACKSLASH
=
92
,
SDLK_RIGHTBRACKET
=
93
,
SDLK_CARET
=
94
,
SDLK_UNDERSCORE
=
95
,
SDLK_BACKQUOTE
=
96
,
SDLK_a
=
97
,
SDLK_b
=
98
,
SDLK_c
=
99
,
SDLK_d
=
100
,
SDLK_e
=
101
,
SDLK_f
=
102
,
SDLK_g
=
103
,
SDLK_h
=
104
,
SDLK_i
=
105
,
SDLK_j
=
106
,
SDLK_k
=
107
,
SDLK_l
=
108
,
SDLK_m
=
109
,
SDLK_n
=
110
,
SDLK_o
=
111
,
SDLK_p
=
112
,
SDLK_q
=
113
,
SDLK_r
=
114
,
SDLK_s
=
115
,
SDLK_t
=
116
,
SDLK_u
=
117
,
SDLK_v
=
118
,
SDLK_w
=
119
,
SDLK_x
=
120
,
SDLK_y
=
121
,
SDLK_z
=
122
,
SDLK_DELETE
=
127
,
/* End of ASCII mapped keysyms */
/*@}*/
/** @name International keyboard syms */
/*@{*/
SDLK_WORLD_0
=
160
,
/* 0xA0 */
SDLK_WORLD_1
=
161
,
SDLK_WORLD_2
=
162
,
SDLK_WORLD_3
=
163
,
SDLK_WORLD_4
=
164
,
SDLK_WORLD_5
=
165
,
SDLK_WORLD_6
=
166
,
SDLK_WORLD_7
=
167
,
SDLK_WORLD_8
=
168
,
SDLK_WORLD_9
=
169
,
SDLK_WORLD_10
=
170
,
SDLK_WORLD_11
=
171
,
SDLK_WORLD_12
=
172
,
SDLK_WORLD_13
=
173
,
SDLK_WORLD_14
=
174
,
SDLK_WORLD_15
=
175
,
SDLK_WORLD_16
=
176
,
SDLK_WORLD_17
=
177
,
SDLK_WORLD_18
=
178
,
SDLK_WORLD_19
=
179
,
SDLK_WORLD_20
=
180
,
SDLK_WORLD_21
=
181
,
SDLK_WORLD_22
=
182
,
SDLK_WORLD_23
=
183
,
SDLK_WORLD_24
=
184
,
SDLK_WORLD_25
=
185
,
SDLK_WORLD_26
=
186
,
SDLK_WORLD_27
=
187
,
SDLK_WORLD_28
=
188
,
SDLK_WORLD_29
=
189
,
SDLK_WORLD_30
=
190
,
SDLK_WORLD_31
=
191
,
SDLK_WORLD_32
=
192
,
SDLK_WORLD_33
=
193
,
SDLK_WORLD_34
=
194
,
SDLK_WORLD_35
=
195
,
SDLK_WORLD_36
=
196
,
SDLK_WORLD_37
=
197
,
SDLK_WORLD_38
=
198
,
SDLK_WORLD_39
=
199
,
SDLK_WORLD_40
=
200
,
SDLK_WORLD_41
=
201
,
SDLK_WORLD_42
=
202
,
SDLK_WORLD_43
=
203
,
SDLK_WORLD_44
=
204
,
SDLK_WORLD_45
=
205
,
SDLK_WORLD_46
=
206
,
SDLK_WORLD_47
=
207
,
SDLK_WORLD_48
=
208
,
SDLK_WORLD_49
=
209
,
SDLK_WORLD_50
=
210
,
SDLK_WORLD_51
=
211
,
SDLK_WORLD_52
=
212
,
SDLK_WORLD_53
=
213
,
SDLK_WORLD_54
=
214
,
SDLK_WORLD_55
=
215
,
SDLK_WORLD_56
=
216
,
SDLK_WORLD_57
=
217
,
SDLK_WORLD_58
=
218
,
SDLK_WORLD_59
=
219
,
SDLK_WORLD_60
=
220
,
SDLK_WORLD_61
=
221
,
SDLK_WORLD_62
=
222
,
SDLK_WORLD_63
=
223
,
SDLK_WORLD_64
=
224
,
SDLK_WORLD_65
=
225
,
SDLK_WORLD_66
=
226
,
SDLK_WORLD_67
=
227
,
SDLK_WORLD_68
=
228
,
SDLK_WORLD_69
=
229
,
SDLK_WORLD_70
=
230
,
SDLK_WORLD_71
=
231
,
SDLK_WORLD_72
=
232
,
SDLK_WORLD_73
=
233
,
SDLK_WORLD_74
=
234
,
SDLK_WORLD_75
=
235
,
SDLK_WORLD_76
=
236
,
SDLK_WORLD_77
=
237
,
SDLK_WORLD_78
=
238
,
SDLK_WORLD_79
=
239
,
SDLK_WORLD_80
=
240
,
SDLK_WORLD_81
=
241
,
SDLK_WORLD_82
=
242
,
SDLK_WORLD_83
=
243
,
SDLK_WORLD_84
=
244
,
SDLK_WORLD_85
=
245
,
SDLK_WORLD_86
=
246
,
SDLK_WORLD_87
=
247
,
SDLK_WORLD_88
=
248
,
SDLK_WORLD_89
=
249
,
SDLK_WORLD_90
=
250
,
SDLK_WORLD_91
=
251
,
SDLK_WORLD_92
=
252
,
SDLK_WORLD_93
=
253
,
SDLK_WORLD_94
=
254
,
SDLK_WORLD_95
=
255
,
/* 0xFF */
/*@}*/
/** @name Numeric keypad */
/*@{*/
SDLK_KP0
=
256
,
SDLK_KP1
=
257
,
SDLK_KP2
=
258
,
SDLK_KP3
=
259
,
SDLK_KP4
=
260
,
SDLK_KP5
=
261
,
SDLK_KP6
=
262
,
SDLK_KP7
=
263
,
SDLK_KP8
=
264
,
SDLK_KP9
=
265
,
SDLK_KP_PERIOD
=
266
,
SDLK_KP_DIVIDE
=
267
,
SDLK_KP_MULTIPLY
=
268
,
SDLK_KP_MINUS
=
269
,
SDLK_KP_PLUS
=
270
,
SDLK_KP_ENTER
=
271
,
SDLK_KP_EQUALS
=
272
,
/*@}*/
/** @name Arrows + Home/End pad */
/*@{*/
SDLK_UP
=
273
,
SDLK_DOWN
=
274
,
SDLK_RIGHT
=
275
,
SDLK_LEFT
=
276
,
SDLK_INSERT
=
277
,
SDLK_HOME
=
278
,
SDLK_END
=
279
,
SDLK_PAGEUP
=
280
,
SDLK_PAGEDOWN
=
281
,
/*@}*/
/** @name Function keys */
/*@{*/
SDLK_F1
=
282
,
SDLK_F2
=
283
,
SDLK_F3
=
284
,
SDLK_F4
=
285
,
SDLK_F5
=
286
,
SDLK_F6
=
287
,
SDLK_F7
=
288
,
SDLK_F8
=
289
,
SDLK_F9
=
290
,
SDLK_F10
=
291
,
SDLK_F11
=
292
,
SDLK_F12
=
293
,
SDLK_F13
=
294
,
SDLK_F14
=
295
,
SDLK_F15
=
296
,
/*@}*/
/** @name Key state modifier keys */
/*@{*/
SDLK_NUMLOCK
=
300
,
SDLK_CAPSLOCK
=
301
,
SDLK_SCROLLOCK
=
302
,
SDLK_RSHIFT
=
303
,
SDLK_LSHIFT
=
304
,
SDLK_RCTRL
=
305
,
SDLK_LCTRL
=
306
,
SDLK_RALT
=
307
,
SDLK_LALT
=
308
,
SDLK_RMETA
=
309
,
SDLK_LMETA
=
310
,
SDLK_LSUPER
=
311
,
/**< Left "Windows" key */
SDLK_RSUPER
=
312
,
/**< Right "Windows" key */
SDLK_MODE
=
313
,
/**< "Alt Gr" key */
SDLK_COMPOSE
=
314
,
/**< Multi-key compose key */
/*@}*/
/** @name Miscellaneous function keys */
/*@{*/
SDLK_HELP
=
315
,
SDLK_PRINT
=
316
,
SDLK_SYSREQ
=
317
,
SDLK_BREAK
=
318
,
SDLK_MENU
=
319
,
SDLK_POWER
=
320
,
/**< Power Macintosh power key */
SDLK_EURO
=
321
,
/**< Some european keyboards */
SDLK_UNDO
=
322
,
/**< Atari keyboard has Undo */
/*@}*/
/* Add any other keys here */
SDLK_LAST
}
SDLKey
;
/** Enumeration of valid key mods (possibly OR'd together) */
typedef
enum
{
KMOD_NONE
=
0x0000
,
KMOD_LSHIFT
=
0x0001
,
KMOD_RSHIFT
=
0x0002
,
KMOD_LCTRL
=
0x0040
,
KMOD_RCTRL
=
0x0080
,
KMOD_LALT
=
0x0100
,
KMOD_RALT
=
0x0200
,
KMOD_LMETA
=
0x0400
,
KMOD_RMETA
=
0x0800
,
KMOD_NUM
=
0x1000
,
KMOD_CAPS
=
0x2000
,
KMOD_MODE
=
0x4000
,
KMOD_RESERVED
=
0x8000
}
SDLMod
;
#define KMOD_CTRL (KMOD_LCTRL|KMOD_RCTRL)
#define KMOD_SHIFT (KMOD_LSHIFT|KMOD_RSHIFT)
#define KMOD_ALT (KMOD_LALT|KMOD_RALT)
#define KMOD_META (KMOD_LMETA|KMOD_RMETA)
#endif
/* _SDL_keysym_h */
Prev
1
2
3
4
5
…
8
Next
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment