Mercurial > sdl-ios-xcode
comparison include/SDL_compat.h @ 1895:c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Mon, 10 Jul 2006 21:04:37 +0000 |
parents | |
children | 8d384b647307 |
comparison
equal
deleted
inserted
replaced
1894:c69cee13dd76 | 1895:c121d94672cb |
---|---|
1 /* | |
2 SDL - Simple DirectMedia Layer | |
3 Copyright (C) 1997-2006 Sam Lantinga | |
4 | |
5 This library is free software; you can redistribute it and/or | |
6 modify it under the terms of the GNU Lesser General Public | |
7 License as published by the Free Software Foundation; either | |
8 version 2.1 of the License, or (at your option) any later version. | |
9 | |
10 This library is distributed in the hope that it will be useful, | |
11 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
13 Lesser General Public License for more details. | |
14 | |
15 You should have received a copy of the GNU Lesser General Public | |
16 License along with this library; if not, write to the Free Software | |
17 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | |
18 | |
19 Sam Lantinga | |
20 slouken@libsdl.org | |
21 */ | |
22 | |
23 /* This file contains functions for backwards compatibility with SDL 1.2 */ | |
24 | |
25 #ifndef _SDL_compat_h | |
26 #define _SDL_compat_h | |
27 | |
28 #include "SDL_video.h" | |
29 #include "SDL_version.h" | |
30 | |
31 #include "begin_code.h" | |
32 /* Set up for C function definitions, even when using C++ */ | |
33 #ifdef __cplusplus | |
34 /* *INDENT-OFF* */ | |
35 extern "C" { | |
36 /* *INDENT-ON* */ | |
37 #endif | |
38 | |
39 #define SDL_SWSURFACE 0x00000000 | |
40 #define SDL_ANYFORMAT 0x00100000 | |
41 #define SDL_HWPALETTE 0x00200000 | |
42 #define SDL_DOUBLEBUF 0x00400000 | |
43 #define SDL_FULLSCREEN 0x00800000 | |
44 #define SDL_RESIZABLE 0x01000000 | |
45 #define SDL_NOFRAME 0x02000000 | |
46 #define SDL_OPENGL 0x04000000 | |
47 #define SDL_ASYNCBLIT 0x08000000 /* Not used */ | |
48 #define SDL_HWACCEL 0x08000000 /* Not used */ | |
49 | |
50 #define SDL_APPMOUSEFOCUS 0x01 | |
51 #define SDL_APPINPUTFOCUS 0x02 | |
52 #define SDL_APPACTIVE 0x04 | |
53 | |
54 #define SDL_LOGPAL 0x01 | |
55 #define SDL_PHYSPAL 0x02 | |
56 | |
57 #define SDL_ACTIVEEVENT SDL_EVENT_RESERVED1 | |
58 #define SDL_VIDEORESIZE SDL_EVENT_RESERVED2 | |
59 #define SDL_VIDEOEXPOSE SDL_EVENT_RESERVED3 | |
60 #define SDL_ACTIVEEVENTMASK SDL_EVENTMASK(SDL_ACTIVEEVENT) | |
61 #define SDL_VIDEORESIZEMASK SDL_EVENTMASK(SDL_VIDEORESIZE) | |
62 #define SDL_VIDEOEXPOSEMASK SDL_EVENTMASK(SDL_VIDEOEXPOSE) | |
63 | |
64 #define SDL_BUTTON_WHEELUP 4 | |
65 #define SDL_BUTTON_WHEELDOWN 5 | |
66 | |
67 typedef struct SDL_VideoInfo | |
68 { | |
69 Uint32 hw_available:1; | |
70 Uint32 wm_available:1; | |
71 Uint32 UnusedBits1:6; | |
72 Uint32 UnusedBits2:1; | |
73 Uint32 blit_hw:1; | |
74 Uint32 blit_hw_CC:1; | |
75 Uint32 blit_hw_A:1; | |
76 Uint32 blit_sw:1; | |
77 Uint32 blit_sw_CC:1; | |
78 Uint32 blit_sw_A:1; | |
79 Uint32 blit_fill:1; | |
80 Uint32 UnusedBits3:16; | |
81 Uint32 video_mem; | |
82 | |
83 SDL_PixelFormat *vfmt; | |
84 } SDL_VideoInfo; | |
85 | |
86 /* The most common video overlay formats. | |
87 For an explanation of these pixel formats, see: | |
88 http://www.webartz.com/fourcc/indexyuv.htm | |
89 | |
90 For information on the relationship between color spaces, see: | |
91 http://www.neuro.sfc.keio.ac.jp/~aly/polygon/info/color-space-faq.html | |
92 */ | |
93 #define SDL_YV12_OVERLAY 0x32315659 /* Planar mode: Y + V + U (3 planes) */ | |
94 #define SDL_IYUV_OVERLAY 0x56555949 /* Planar mode: Y + U + V (3 planes) */ | |
95 #define SDL_YUY2_OVERLAY 0x32595559 /* Packed mode: Y0+U0+Y1+V0 (1 plane) */ | |
96 #define SDL_UYVY_OVERLAY 0x59565955 /* Packed mode: U0+Y0+V0+Y1 (1 plane) */ | |
97 #define SDL_YVYU_OVERLAY 0x55595659 /* Packed mode: Y0+V0+Y1+U0 (1 plane) */ | |
98 | |
99 /* The YUV hardware video overlay */ | |
100 typedef struct SDL_Overlay | |
101 { | |
102 Uint32 format; /* Read-only */ | |
103 int w, h; /* Read-only */ | |
104 int planes; /* Read-only */ | |
105 Uint16 *pitches; /* Read-only */ | |
106 Uint8 **pixels; /* Read-write */ | |
107 | |
108 /* Hardware-specific surface info */ | |
109 struct private_yuvhwfuncs *hwfuncs; | |
110 struct private_yuvhwdata *hwdata; | |
111 | |
112 /* Special flags */ | |
113 Uint32 hw_overlay:1; /* Flag: This overlay hardware accelerated? */ | |
114 Uint32 UnusedBits:31; | |
115 } SDL_Overlay; | |
116 | |
117 typedef enum | |
118 { | |
119 SDL_GRAB_QUERY = -1, | |
120 SDL_GRAB_OFF = 0, | |
121 SDL_GRAB_ON = 1 | |
122 } SDL_GrabMode; | |
123 | |
124 struct SDL_SysWMinfo; | |
125 | |
126 #define SDL_SetModuleHandle(x) | |
127 #define SDL_AllocSurface SDL_CreateRGBSurface | |
128 | |
129 extern DECLSPEC const SDL_version *SDLCALL SDL_Linked_Version(void); | |
130 extern DECLSPEC char *SDLCALL SDL_AudioDriverName(char *namebuf, int maxlen); | |
131 extern DECLSPEC char *SDLCALL SDL_VideoDriverName(char *namebuf, int maxlen); | |
132 extern DECLSPEC const SDL_VideoInfo *SDLCALL SDL_GetVideoInfo(void); | |
133 extern DECLSPEC int SDLCALL SDL_VideoModeOK(int width, int height, int bpp, | |
134 Uint32 flags); | |
135 extern DECLSPEC SDL_Rect **SDLCALL SDL_ListModes(SDL_PixelFormat * format, | |
136 Uint32 flags); | |
137 extern DECLSPEC SDL_Surface *SDLCALL SDL_SetVideoMode(int width, int height, | |
138 int bpp, Uint32 flags); | |
139 extern DECLSPEC SDL_Surface *SDLCALL SDL_GetVideoSurface(void); | |
140 extern DECLSPEC void SDLCALL SDL_UpdateRects(SDL_Surface * screen, | |
141 int numrects, SDL_Rect * rects); | |
142 extern DECLSPEC void SDLCALL SDL_UpdateRect(SDL_Surface * screen, Sint32 x, | |
143 Sint32 y, Uint32 w, Uint32 h); | |
144 extern DECLSPEC int SDLCALL SDL_Flip(SDL_Surface * screen); | |
145 extern DECLSPEC SDL_Surface *SDLCALL SDL_DisplayFormat(SDL_Surface * surface); | |
146 extern DECLSPEC SDL_Surface *SDLCALL SDL_DisplayFormatAlpha(SDL_Surface * | |
147 surface); | |
148 extern DECLSPEC void SDLCALL SDL_WM_SetCaption(const char *title, | |
149 const char *icon); | |
150 extern DECLSPEC void SDLCALL SDL_WM_GetCaption(char **title, char **icon); | |
151 extern DECLSPEC void SDLCALL SDL_WM_SetIcon(SDL_Surface * icon, Uint8 * mask); | |
152 extern DECLSPEC int SDLCALL SDL_WM_IconifyWindow(void); | |
153 extern DECLSPEC int SDLCALL SDL_WM_ToggleFullScreen(SDL_Surface * surface); | |
154 extern DECLSPEC SDL_GrabMode SDLCALL SDL_WM_GrabInput(SDL_GrabMode mode); | |
155 extern DECLSPEC int SDLCALL SDL_SetPalette(SDL_Surface * surface, int flags, | |
156 const SDL_Color * colors, | |
157 int firstcolor, int ncolors); | |
158 extern DECLSPEC int SDLCALL SDL_SetColors(SDL_Surface * surface, | |
159 const SDL_Color * colors, | |
160 int firstcolor, int ncolors); | |
161 extern DECLSPEC int SDLCALL SDL_GetWMInfo(struct SDL_SysWMinfo *info); | |
162 extern DECLSPEC Uint8 SDLCALL SDL_GetAppState(void); | |
163 extern DECLSPEC void SDLCALL SDL_WarpMouse(Uint16 x, Uint16 y); | |
164 extern DECLSPEC SDL_Overlay *SDLCALL SDL_CreateYUVOverlay(int width, | |
165 int height, | |
166 Uint32 format, | |
167 SDL_Surface * | |
168 display); | |
169 extern DECLSPEC int SDLCALL SDL_LockYUVOverlay(SDL_Overlay * overlay); | |
170 extern DECLSPEC void SDLCALL SDL_UnlockYUVOverlay(SDL_Overlay * overlay); | |
171 extern DECLSPEC int SDLCALL SDL_DisplayYUVOverlay(SDL_Overlay * overlay, | |
172 SDL_Rect * dstrect); | |
173 extern DECLSPEC void SDLCALL SDL_FreeYUVOverlay(SDL_Overlay * overlay); | |
174 extern DECLSPEC int SDLCALL SDL_GL_GetAttribute(SDL_GLattr attr, int *value); | |
175 | |
176 /* Ends C function definitions when using C++ */ | |
177 #ifdef __cplusplus | |
178 /* *INDENT-OFF* */ | |
179 } | |
180 /* *INDENT-ON* */ | |
181 #endif | |
182 #include "close_code.h" | |
183 | |
184 #endif /* _SDL_compat_h */ | |
185 | |
186 /* vi: set ts=4 sw=4 expandtab: */ |