| .TH "SDL_Surface" "3" "Tue 11 Sep 2001, 23:01" "SDL" "SDL API Reference" |
| .SH "NAME" |
| SDL_Surface \- Graphical Surface Structure |
| .SH "STRUCTURE DEFINITION" |
| .PP |
| .nf |
| \f(CWtypedef 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;\fR |
| .fi |
| .PP |
| .SH "STRUCTURE DATA" |
| .TP 20 |
| \fBflags\fR |
| Surface flags |
| .TP 20 |
| \fBformat\fR |
| Pixel \fIformat\fR |
| .TP 20 |
| \fBw, h\fR |
| Width and height of the surface |
| .TP 20 |
| \fBpitch\fR |
| Length of a surface scanline in bytes |
| .TP 20 |
| \fBpixels\fR |
| Pointer to the actual pixel data |
| .TP 20 |
| \fBclip_rect\fR |
| surface clip \fIrectangle\fR |
| .SH "DESCRIPTION" |
| .PP |
| \fBSDL_Surface\fR\&'s represent areas of "graphical" memory, memory that can be drawn to\&. The video framebuffer is returned as a \fBSDL_Surface\fR by \fI\fBSDL_SetVideoMode\fP\fR and \fI\fBSDL_GetVideoSurface\fP\fR\&. Most of the fields should be pretty obvious\&. \fBw\fR and \fBh\fR are the width and height of the surface in pixels\&. \fBpixels\fR is a pointer to the actual pixel data, the surface should be \fIlocked\fR before accessing this field\&. The \fBclip_rect\fR field is the clipping rectangle as set by \fI\fBSDL_SetClipRect\fP\fR\&. |
| .PP |
| The following are supported in the \fBflags\fR field\&. |
| .TP 20 |
| \fBSDL_SWSURFACE\fP |
| Surface is stored in system memory |
| .TP 20 |
| \fBSDL_HWSURFACE\fP |
| Surface is stored in video memory |
| .TP 20 |
| \fBSDL_ASYNCBLIT\fP |
| Surface uses asynchronous blits if possible |
| .TP 20 |
| \fBSDL_ANYFORMAT\fP |
| Allows any pixel-format (Display surface) |
| .TP 20 |
| \fBSDL_HWPALETTE\fP |
| Surface has exclusive palette |
| .TP 20 |
| \fBSDL_DOUBLEBUF\fP |
| Surface is double buffered (Display surface) |
| .TP 20 |
| \fBSDL_FULLSCREEN\fP |
| Surface is full screen (Display Surface) |
| .TP 20 |
| \fBSDL_OPENGL\fP |
| Surface has an OpenGL context (Display Surface) |
| .TP 20 |
| \fBSDL_OPENGLBLIT\fP |
| Surface supports OpenGL blitting (Display Surface) |
| .TP 20 |
| \fBSDL_RESIZABLE\fP |
| Surface is resizable (Display Surface) |
| .TP 20 |
| \fBSDL_HWACCEL\fP |
| Surface blit uses hardware acceleration |
| .TP 20 |
| \fBSDL_SRCCOLORKEY\fP |
| Surface use colorkey blitting |
| .TP 20 |
| \fBSDL_RLEACCEL\fP |
| Colorkey blitting is accelerated with RLE |
| .TP 20 |
| \fBSDL_SRCALPHA\fP |
| Surface blit uses alpha blending |
| .TP 20 |
| \fBSDL_PREALLOC\fP |
| Surface uses preallocated memory |
| .SH "SEE ALSO" |
| .PP |
| \fI\fBSDL_PixelFormat\fR\fR |
| .\" created by instant / docbook-to-man, Tue 11 Sep 2001, 23:01 |