SDL_Surface3
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
|
Surface flags |
|---|---|
|
Pixel format |
w, h
|
Width and height of the surface |
|
Length of a surface scanline in bytes |
|
Pointer to the actual pixel data |
|
surface clip rectangle |
Overview
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.
|
Surface is stored in system memory |
|---|---|
|
Surface is stored in video memory |
|
Surface uses asynchronous blits if possible |
|
Allows any pixel-format (Display surface) |
|
Surface has exclusive palette |
|
Surface is double buffered (Display surface) |
|
Surface is full screen (Display Surface) |
|
Surface has an OpenGL context (Display Surface) |
|
Surface supports OpenGL blitting (Display Surface) |
|
Surface is resizable (Display Surface) |
|
Surface blit uses hardware acceleration |
|
Surface use colorkey blitting |
|
Colorkey blitting is accelerated with RLE |
|
Surface blit uses alpha blending |
|
Surface uses preallocated memory |
Releases
11 releases since Debian 3.0 (Woody); the text changed 1 time.