Home | History | Annotate | Download | only in man3
"SDL_Surface" "3" "Tue 11 Sep 2001, 23:01" "SDL" "SDL API Reference"
"NAME"
SDL_Surface - Graphical Surface Structure
"STRUCTURE DEFINITION"

typedef struct SDL_Surface {
 Uint32 flags; /* Read-only */
 SDL_PixelFormat *format; /* Read-only */
 int w, h; /* Read-only */
 Uint16 pitch; /* Read-only */
 void *pixels; /* Read-write */

 /* clipping information */
 SDL_Rect clip_rect; /* Read-only */

 /* Reference count -- used when freeing surface */
 int refcount; /* Read-mostly */

 /* This structure also contains private fields not shown here */
} SDL_Surface;

"STRUCTURE DATA"

20 flags Surface flags

20 format Pixel format

20 w, h Width and height of the surface

20 pitch Length of a surface scanline in bytes

20 pixels Pointer to the actual pixel data

20 clip_rect surface clip rectangle

"DESCRIPTION"

SDL_Surface's represent areas of "graphical" memory, memory that can be drawn to. The video framebuffer is returned as a SDL_Surface by SDL_SetVideoMode and SDL_GetVideoSurface. Most of the fields should be pretty obvious. w and h are the width and height of the surface in pixels. pixels is a pointer to the actual pixel data, the surface should be locked before accessing this field. The clip_rect field is the clipping rectangle as set by SDL_SetClipRect.

The following are supported in the flags field.

20 SDL_SWSURFACE Surface is stored in system memory

20 SDL_HWSURFACE Surface is stored in video memory

20 SDL_ASYNCBLIT Surface uses asynchronous blits if possible

20 SDL_ANYFORMAT Allows any pixel-format (Display surface)

20 SDL_HWPALETTE Surface has exclusive palette

20 SDL_DOUBLEBUF Surface is double buffered (Display surface)

20 SDL_FULLSCREEN Surface is full screen (Display Surface)

20 SDL_OPENGL Surface has an OpenGL context (Display Surface)

20 SDL_OPENGLBLIT Surface supports OpenGL blitting (Display Surface)

20 SDL_RESIZABLE Surface is resizable (Display Surface)

20 SDL_HWACCEL Surface blit uses hardware acceleration

20 SDL_SRCCOLORKEY Surface use colorkey blitting

20 SDL_RLEACCEL Colorkey blitting is accelerated with RLE

20 SDL_SRCALPHA Surface blit uses alpha blending

20 SDL_PREALLOC Surface uses preallocated memory

"SEE ALSO"

SDL_PixelFormat created by instant / docbook-to-man, Tue 11 Sep 2001, 23:01