home *** CD-ROM | disk | FTP | other *** search
- <HTML
- ><HEAD
- ><TITLE
- >SDL_Surface</TITLE
- ><META
- NAME="GENERATOR"
- CONTENT="Modular DocBook HTML Stylesheet Version 1.64
- "><LINK
- REL="HOME"
- TITLE="SDL Library Documentation"
- HREF="index.html"><LINK
- REL="UP"
- TITLE="Video"
- HREF="video.html"><LINK
- REL="PREVIOUS"
- TITLE="SDL_PixelFormat"
- HREF="sdlpixelformat.html"><LINK
- REL="NEXT"
- TITLE="SDL_VideoInfo"
- HREF="sdlvideoinfo.html"></HEAD
- ><BODY
- CLASS="REFENTRY"
- BGCOLOR="#FFF8DC"
- TEXT="#000000"
- LINK="#0000ee"
- VLINK="#551a8b"
- ALINK="#ff0000"
- ><DIV
- CLASS="NAVHEADER"
- ><TABLE
- WIDTH="100%"
- BORDER="0"
- CELLPADDING="0"
- CELLSPACING="0"
- ><TR
- ><TH
- COLSPAN="3"
- ALIGN="center"
- >SDL Library Documentation</TH
- ></TR
- ><TR
- ><TD
- WIDTH="10%"
- ALIGN="left"
- VALIGN="bottom"
- ><A
- HREF="sdlpixelformat.html"
- >Prev</A
- ></TD
- ><TD
- WIDTH="80%"
- ALIGN="center"
- VALIGN="bottom"
- ></TD
- ><TD
- WIDTH="10%"
- ALIGN="right"
- VALIGN="bottom"
- ><A
- HREF="sdlvideoinfo.html"
- >Next</A
- ></TD
- ></TR
- ></TABLE
- ><HR
- ALIGN="LEFT"
- WIDTH="100%"></DIV
- ><H1
- ><A
- NAME="SDLSURFACE"
- >SDL_Surface</A
- ></H1
- ><DIV
- CLASS="REFNAMEDIV"
- ><A
- NAME="AEN2847"
- ></A
- ><H2
- >Name</H2
- >SDL_Surface -- Graphical Surface Structure</DIV
- ><DIV
- CLASS="REFSECT1"
- ><A
- NAME="AEN2850"
- ></A
- ><H2
- >Structure Definition</H2
- ><PRE
- CLASS="PROGRAMLISTING"
- >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;</PRE
- ></DIV
- ><DIV
- CLASS="REFSECT1"
- ><A
- NAME="AEN2853"
- ></A
- ><H2
- >Structure Data</H2
- ><DIV
- CLASS="INFORMALTABLE"
- ><A
- NAME="AEN2855"
- ></A
- ><P
- ></P
- ><TABLE
- BORDER="0"
- CLASS="CALSTABLE"
- ><TBODY
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="STRUCTFIELD"
- ><I
- >flags</I
- ></TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Surface flags</TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="STRUCTFIELD"
- ><I
- >format</I
- ></TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Pixel <A
- HREF="sdlpixelformat.html"
- >format</A
- ></TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="STRUCTFIELD"
- ><I
- >w, h</I
- ></TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Width and height of the surface</TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="STRUCTFIELD"
- ><I
- >pitch</I
- ></TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Length of a surface scanline in bytes</TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="STRUCTFIELD"
- ><I
- >pixels</I
- ></TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Pointer to the actual pixel data</TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="STRUCTFIELD"
- ><I
- >clip_rect</I
- ></TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >surface clip <A
- HREF="sdlrect.html"
- >rectangle</A
- ></TD
- ></TR
- ></TBODY
- ></TABLE
- ><P
- ></P
- ></DIV
- ></DIV
- ><DIV
- CLASS="REFSECT1"
- ><A
- NAME="AEN2884"
- ></A
- ><H2
- >Description</H2
- ><P
- ><SPAN
- CLASS="STRUCTNAME"
- >SDL_Surface</SPAN
- >'s represent areas of "graphical"
- memory, memory that can be drawn to. The video framebuffer is returned
- as a <SPAN
- CLASS="STRUCTNAME"
- >SDL_Surface</SPAN
- > by
- <A
- HREF="sdlsetvideomode.html"
- ><TT
- CLASS="FUNCTION"
- >SDL_SetVideoMode</TT
- ></A
- >
- and <A
- HREF="sdlgetvideosurface.html"
- ><TT
- CLASS="FUNCTION"
- >SDL_GetVideoSurface</TT
- ></A
- >.
- Most of the fields should be pretty obvious.
- <TT
- CLASS="STRUCTFIELD"
- ><I
- >w</I
- ></TT
- > and <TT
- CLASS="STRUCTFIELD"
- ><I
- >h</I
- ></TT
- > are the
- width and height of the surface in pixels.
- <TT
- CLASS="STRUCTFIELD"
- ><I
- >pixels</I
- ></TT
- > is a pointer to the actual pixel data,
- the surface should be <A
- HREF="sdllocksurface.html"
- >locked</A
- >
- before accessing this field. The <TT
- CLASS="STRUCTFIELD"
- ><I
- >clip_rect</I
- ></TT
- > field
- is the clipping rectangle as set by
- <A
- HREF="sdlsetcliprect.html"
- ><TT
- CLASS="FUNCTION"
- >SDL_SetClipRect</TT
- ></A
- >.</P
- ><P
- >The following are supported in the
- <TT
- CLASS="STRUCTFIELD"
- ><I
- >flags</I
- ></TT
- > field.</P
- ><DIV
- CLASS="INFORMALTABLE"
- ><A
- NAME="AEN2902"
- ></A
- ><P
- ></P
- ><TABLE
- BORDER="1"
- CLASS="CALSTABLE"
- ><TBODY
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="LITERAL"
- >SDL_SWSURFACE</TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Surface is stored in system memory</TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="LITERAL"
- >SDL_HWSURFACE</TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Surface is stored in video memory</TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="LITERAL"
- >SDL_ASYNCBLIT</TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Surface uses asynchronous blits if possible</TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="LITERAL"
- >SDL_ANYFORMAT</TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Allows any pixel-format (Display surface)</TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="LITERAL"
- >SDL_HWPALETTE</TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Surface has exclusive palette</TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="LITERAL"
- >SDL_DOUBLEBUF</TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Surface is double buffered (Display surface)</TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="LITERAL"
- >SDL_FULLSCREEN</TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Surface is full screen (Display Surface)</TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="LITERAL"
- >SDL_OPENGL</TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Surface has an OpenGL context (Display Surface)</TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="LITERAL"
- >SDL_OPENGLBLIT</TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Surface supports OpenGL blitting (Display Surface)</TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="LITERAL"
- >SDL_RESIZABLE</TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Surface is resizable (Display Surface)</TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="LITERAL"
- >SDL_HWACCEL</TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Surface blit uses hardware acceleration</TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="LITERAL"
- >SDL_SRCCOLORKEY</TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Surface use colorkey blitting</TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="LITERAL"
- >SDL_RLEACCEL</TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Colorkey blitting is accelerated with RLE</TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="LITERAL"
- >SDL_SRCALPHA</TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Surface blit uses alpha blending</TD
- ></TR
- ><TR
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- ><TT
- CLASS="LITERAL"
- >SDL_PREALLOC</TT
- ></TD
- ><TD
- ALIGN="LEFT"
- VALIGN="TOP"
- >Surface uses preallocated memory</TD
- ></TR
- ></TBODY
- ></TABLE
- ><P
- ></P
- ></DIV
- ></DIV
- ><DIV
- CLASS="REFSECT1"
- ><A
- NAME="AEN2965"
- ></A
- ><H2
- >See Also</H2
- ><P
- ><A
- HREF="sdlpixelformat.html"
- ><SPAN
- CLASS="STRUCTNAME"
- >SDL_PixelFormat</SPAN
- ></A
- ></P
- ></DIV
- ><DIV
- CLASS="NAVFOOTER"
- ><HR
- ALIGN="LEFT"
- WIDTH="100%"><TABLE
- WIDTH="100%"
- BORDER="0"
- CELLPADDING="0"
- CELLSPACING="0"
- ><TR
- ><TD
- WIDTH="33%"
- ALIGN="left"
- VALIGN="top"
- ><A
- HREF="sdlpixelformat.html"
- >Prev</A
- ></TD
- ><TD
- WIDTH="34%"
- ALIGN="center"
- VALIGN="top"
- ><A
- HREF="index.html"
- >Home</A
- ></TD
- ><TD
- WIDTH="33%"
- ALIGN="right"
- VALIGN="top"
- ><A
- HREF="sdlvideoinfo.html"
- >Next</A
- ></TD
- ></TR
- ><TR
- ><TD
- WIDTH="33%"
- ALIGN="left"
- VALIGN="top"
- >SDL_PixelFormat</TD
- ><TD
- WIDTH="34%"
- ALIGN="center"
- VALIGN="top"
- ><A
- HREF="video.html"
- >Up</A
- ></TD
- ><TD
- WIDTH="33%"
- ALIGN="right"
- VALIGN="top"
- >SDL_VideoInfo</TD
- ></TR
- ></TABLE
- ></DIV
- ></BODY
- ></HTML
- >