Commit ef7cdd91 authored by Holmes Futrell's avatar Holmes Futrell

Added retained backing attribute, reference to UIKit renderer

--HG--
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%403195
parent a4d2b489
......@@ -37,15 +37,14 @@ typedef struct SDL_VideoDisplay SDL_VideoDisplay;
typedef struct SDL_VideoDevice SDL_VideoDevice;
/* Define the SDL texture structure */
struct SDL_Texture
{
struct SDL_Texture {
Uint32 id;
Uint32 format; /**< The pixel format of the texture */
int access; /**< SDL_TextureAccess */
int w; /**< The width of the texture */
int h; /**< The height of the texture */
int modMode; /**< The texture modulation mode */
int modMode;/**< The texture modulation mode */
int blendMode; /**< The texture blend mode */
int scaleMode; /**< The texture scale mode */
Uint8 r, g, b, a; /**< Texture modulation values */
......@@ -58,8 +57,7 @@ struct SDL_Texture
};
/* Define the SDL renderer structure */
struct SDL_Renderer
{
struct SDL_Renderer {
int (*ActivateRenderer) (SDL_Renderer * renderer);
int (*DisplayModeChanged) (SDL_Renderer * renderer);
int (*CreateTexture) (SDL_Renderer * renderer, SDL_Texture * texture);
......@@ -107,8 +105,7 @@ struct SDL_Renderer
};
/* Define the SDL render driver structure */
struct SDL_RenderDriver
{
struct SDL_RenderDriver {
SDL_Renderer *(*CreateRenderer) (SDL_Window * window, Uint32 flags);
/* Info about the renderer capabilities */
......@@ -116,8 +113,7 @@ struct SDL_RenderDriver
};
/* Define the SDL window structure, corresponding to toplevel windows */
struct SDL_Window
{
struct SDL_Window {
Uint32 id;
char *title;
......@@ -136,11 +132,11 @@ struct SDL_Window
((W)->flags & SDL_WINDOW_SHOWN) && \
!((W)->flags & SDL_WINDOW_MINIMIZED))
/* Define the SDL display structure
This corresponds to physical monitors attached to the system.
/*
* Define the SDL display structure This corresponds to physical monitors
* attached to the system.
*/
struct SDL_VideoDisplay
{
struct SDL_VideoDisplay {
int max_display_modes;
int num_display_modes;
SDL_DisplayMode *display_modes;
......@@ -171,8 +167,7 @@ struct SDL_VideoDisplay
/* Define the SDL video driver structure */
#define _THIS SDL_VideoDevice *_this
struct SDL_VideoDevice
{
struct SDL_VideoDevice {
/* * * */
/* The name of this video driver */
const char *name;
......@@ -180,29 +175,34 @@ struct SDL_VideoDevice
/* * * */
/* Initialization/Query functions */
/* Initialize the native video subsystem, filling in the list
of displays for this driver, returning 0 or -1 if there's an error.
/*
* Initialize the native video subsystem, filling in the list of
* displays for this driver, returning 0 or -1 if there's an error.
*/
int (*VideoInit) (_THIS);
/* Reverse the effects VideoInit() -- called if VideoInit() fails
or if the application is shutting down the video subsystem.
/*
* Reverse the effects VideoInit() -- called if VideoInit() fails or
* if the application is shutting down the video subsystem.
*/
void (*VideoQuit) (_THIS);
/* * * */
/* Display functions
/*
* Display functions
*/
/* Get a list of the available display modes.
* e.g. SDL_AddDisplayMode(_this->current_display, mode)
/*
* Get a list of the available display modes. e.g.
* SDL_AddDisplayMode(_this->current_display, mode)
*/
void (*GetDisplayModes) (_THIS);
/* Setting the display mode is independent of creating windows,
* so when the display mode is changed, all existing windows
* should have their data updated accordingly, including the
* display surfaces associated with them.
/*
* Setting the display mode is independent of creating windows, so
* when the display mode is changed, all existing windows should have
* their data updated accordingly, including the display surfaces
* associated with them.
*/
int (*SetDisplayMode) (_THIS, SDL_DisplayMode * mode);
......@@ -219,7 +219,8 @@ struct SDL_VideoDevice
int (*GetDisplayGammaRamp) (_THIS, Uint16 * ramp);
/* * * */
/* Window functions
/*
* Window functions
*/
int (*CreateWindow) (_THIS, SDL_Window * window);
int (*CreateWindowFrom) (_THIS, SDL_Window * window, const void *data);
......@@ -240,7 +241,8 @@ struct SDL_VideoDevice
struct SDL_SysWMinfo * info);
/* * * */
/* OpenGL support
/*
* OpenGL support
*/
int (*GL_LoadLibrary) (_THIS, const char *path);
void *(*GL_GetProcAddress) (_THIS, const char *proc);
......@@ -252,7 +254,8 @@ struct SDL_VideoDevice
void (*GL_DeleteContext) (_THIS, SDL_GLContext context);
/* * * */
/* Event manager functions
/*
* Event manager functions
*/
void (*PumpEvents) (_THIS);
......@@ -265,8 +268,7 @@ struct SDL_VideoDevice
/* * * */
/* Data used by the GL drivers */
struct
{
struct {
int red_size;
int green_size;
int blue_size;
......@@ -283,6 +285,7 @@ struct SDL_VideoDevice
int multisamplebuffers;
int multisamplesamples;
int accelerated;
int retained_backing;
int driver_loaded;
char driver_path[256];
void *dll_handle;
......@@ -298,8 +301,7 @@ struct SDL_VideoDevice
void (*free) (_THIS);
};
typedef struct VideoBootStrap
{
typedef struct VideoBootStrap {
const char *name;
const char *desc;
int (*available) (void);
......@@ -366,6 +368,9 @@ extern VideoBootStrap RISCOS_bootstrap;
#if SDL_VIDEO_DRIVER_OS2FS
extern VideoBootStrap OS2FSLib_bootstrap;
#endif
#if SDL_VIDEO_DRIVER_UIKIT
extern VideoBootStrap UIKIT_bootstrap;
#endif
#if SDL_VIDEO_DRIVER_DUMMY
extern VideoBootStrap DUMMY_bootstrap;
#endif
......@@ -378,9 +383,11 @@ extern VideoBootStrap NDS_bootstrap;
extern SDL_VideoDevice *SDL_GetVideoDevice();
extern int SDL_AddBasicVideoDisplay(const SDL_DisplayMode * desktop_mode);
extern int SDL_AddVideoDisplay(const SDL_VideoDisplay * display);
extern SDL_bool SDL_AddDisplayMode(int displayIndex,
extern SDL_bool
SDL_AddDisplayMode(int displayIndex,
const SDL_DisplayMode * mode);
extern void SDL_AddRenderDriver(int displayIndex,
extern void
SDL_AddRenderDriver(int displayIndex,
const SDL_RenderDriver * driver);
extern int SDL_RecreateWindow(SDL_Window * window, Uint32 flags);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment