<HTML> <STYLE> <!-- A{textdecoration:none} --> </STYLE> <STYLE type="text/css"> A:link, A:visited, A:active { text-decoration: none; } </STYLE> <HEAD> <TITLE>IDirectFBSurface [DirectFB Reference Manual]</TITLE> </HEAD> <BODY bgcolor=#C0C8D8 link=#2369E0 vlink=#2369E0 text=#232323> <TABLE width=100% bgcolor=#8090A0 border=0 cellspacing=0 cellpadding=5> <TR><TD width=30%> <A href="http://www.directfb.org"><IMG border=0 src="dfb_logo-alpha.png"></A> </TD><TD align=right> <A href="index.html"><FONT size=+3 color=#203040>Reference Manual - 1.5.3</FONT></A> </TD></TR> <TR><TD colspan=2 align=center bgcolor=#284460> <TABLE border=0 cellspacing=0 cellpadding=0> <TR><TD nowrap align=right width=50%> <BIG><FONT color=#D0D0D0><A href="index.html"> <FONT color=#D0D0D0>DirectFB Interfaces</FONT></A> </FONT></BIG> </TD><TD nowrap align=left width=50%> <BIG><FONT color=#E09040> IDirectFBSurface</FONT></BIG> </TD></TR> </TABLE> </TD></TR> </TABLE> <P> <i>No summary yet...</i> </P><P> <CENTER><TABLE width=93% border=1 rules=groups cellpadding=4 cellspacing=2> <THEAD> <TR><TH colspan=3>Methods of IDirectFBSurface</TH></TR> </THEAD> <TBODY> <TR><TD valign=top> <B><SMALL>Retrieving information </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_GetCapabilities.html"> <B>GetCapabilities</B></A> </TD><TD valign=top> Return the capabilities of this surface. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_GetPosition.html"> <B>GetPosition</B></A> </TD><TD valign=top> Get the surface's position in pixels. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_GetSize.html"> <B>GetSize</B></A> </TD><TD valign=top> Get the surface's width and height in pixels. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_GetVisibleRectangle.html"> <B>GetVisibleRectangle</B></A> </TD><TD valign=top> Created sub surfaces might be clipped by their parents, this function returns the resulting rectangle relative to this surface. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_GetPixelFormat.html"> <B>GetPixelFormat</B></A> </TD><TD valign=top> Get the current pixel format. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_GetAccelerationMask.html"> <B>GetAccelerationMask</B></A> </TD><TD valign=top> Get a mask of drawing functions that are hardware accelerated with the current settings. </TD></TR> <TR><TD valign=top> <B><SMALL>Palette & Alpha Ramp </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_GetPalette.html"> <B>GetPalette</B></A> </TD><TD valign=top> Get access to the surface's palette. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetPalette.html"> <B>SetPalette</B></A> </TD><TD valign=top> Change the surface's palette. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetAlphaRamp.html"> <B>SetAlphaRamp</B></A> </TD><TD valign=top> Set the alpha ramp for formats with one or two alpha bits. </TD></TR> <TR><TD valign=top> <B><SMALL>Buffer operations </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_GetStereoEye.html"> <B>GetStereoEye</B></A> </TD><TD valign=top> Get the current stereo eye. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetStereoEye.html"> <B>SetStereoEye</B></A> </TD><TD valign=top> Select the stereo eye for future operations. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_Lock.html"> <B>Lock</B></A> </TD><TD valign=top> Lock the surface for the access type specified. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_GetFramebufferOffset.html"> <B>GetFramebufferOffset</B></A> </TD><TD valign=top> Obsolete. Returns DFB_FAILURE always. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_Unlock.html"> <B>Unlock</B></A> </TD><TD valign=top> Unlock the surface after direct access. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_Flip.html"> <B>Flip</B></A> </TD><TD valign=top> Flip/Update surface buffers. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_FlipStereo.html"> <B>FlipStereo</B></A> </TD><TD valign=top> Flip/Update stereo surface buffers. Flips both the left and right buffers simultaneously to ensure synchronization between the two. Only applicable to window and layer surfaces with the DWCAPS_STEREO or DLOP_STEREO option set; will fail with all other surfaces. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetField.html"> <B>SetField</B></A> </TD><TD valign=top> Set the active field. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_Clear.html"> <B>Clear</B></A> </TD><TD valign=top> Clear the surface and its depth buffer if existent. </TD></TR> <TR><TD valign=top> <B><SMALL>Drawing/blitting control </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetClip.html"> <B>SetClip</B></A> </TD><TD valign=top> Set the clipping region used to limit the area for drawing, blitting and text functions. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_GetClip.html"> <B>GetClip</B></A> </TD><TD valign=top> Get the clipping region used to limit the area for drawing, blitting and text functions. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetColor.html"> <B>SetColor</B></A> </TD><TD valign=top> Set the color used for drawing/text functions or alpha/color modulation (blitting functions). </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetColorIndex.html"> <B>SetColorIndex</B></A> </TD><TD valign=top> Set the color like with SetColor() but using an index to the color/alpha lookup table. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetSrcBlendFunction.html"> <B>SetSrcBlendFunction</B></A> </TD><TD valign=top> Set the blend function that applies to the source. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetDstBlendFunction.html"> <B>SetDstBlendFunction</B></A> </TD><TD valign=top> Set the blend function that applies to the destination. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetPorterDuff.html"> <B>SetPorterDuff</B></A> </TD><TD valign=top> Set the source and destination blend function by specifying a Porter/Duff rule. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetSrcColorKey.html"> <B>SetSrcColorKey</B></A> </TD><TD valign=top> Set the source color key, i.e. the color that is excluded when blitting FROM this surface TO another that has source color keying enabled. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetSrcColorKeyIndex.html"> <B>SetSrcColorKeyIndex</B></A> </TD><TD valign=top> Set the source color key like with SetSrcColorKey() but using an index to the color/alpha lookup table. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetDstColorKey.html"> <B>SetDstColorKey</B></A> </TD><TD valign=top> Set the destination color key, i.e. the only color that gets overwritten by drawing and blitting to this surface when destination color keying is enabled. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetDstColorKeyIndex.html"> <B>SetDstColorKeyIndex</B></A> </TD><TD valign=top> Set the destination color key like with SetDstColorKey() but using an index to the color/alpha lookup table. </TD></TR> <TR><TD valign=top> <B><SMALL>Blitting functions </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetBlittingFlags.html"> <B>SetBlittingFlags</B></A> </TD><TD valign=top> Set the flags for all subsequent blitting commands. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_Blit.html"> <B>Blit</B></A> </TD><TD valign=top> Blit an area from the source to this surface. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_TileBlit.html"> <B>TileBlit</B></A> </TD><TD valign=top> Blit an area from the source tiled to this surface. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_BatchBlit.html"> <B>BatchBlit</B></A> </TD><TD valign=top> Blit a bunch of areas at once. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_StretchBlit.html"> <B>StretchBlit</B></A> </TD><TD valign=top> Blit an area scaled from the source to the destination rectangle. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_TextureTriangles.html"> <B>TextureTriangles</B></A> </TD><TD valign=top> Preliminary texture mapping support. </TD></TR> <TR><TD valign=top> <B><SMALL>Drawing functions </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetDrawingFlags.html"> <B>SetDrawingFlags</B></A> </TD><TD valign=top> Set the flags for all subsequent drawing commands. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_FillRectangle.html"> <B>FillRectangle</B></A> </TD><TD valign=top> Fill the specified rectangle with the given color following the specified flags. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_DrawRectangle.html"> <B>DrawRectangle</B></A> </TD><TD valign=top> Draw an outline of the specified rectangle with the given color following the specified flags. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_DrawLine.html"> <B>DrawLine</B></A> </TD><TD valign=top> Draw a line from one point to the other with the given color following the drawing flags. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_DrawLines.html"> <B>DrawLines</B></A> </TD><TD valign=top> Draw 'num_lines' lines with the given color following the drawing flags. Each line specified by a <a href="types.html#DFBRegion">DFBRegion</a>. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_FillTriangle.html"> <B>FillTriangle</B></A> </TD><TD valign=top> Fill a non-textured triangle. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_FillRectangles.html"> <B>FillRectangles</B></A> </TD><TD valign=top> Fill a bunch of rectangles with a single call. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_FillSpans.html"> <B>FillSpans</B></A> </TD><TD valign=top> Fill spans specified by x and width. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_FillTriangles.html"> <B>FillTriangles</B></A> </TD><TD valign=top> Fill a bunch of triangles with a single call. </TD></TR> <TR><TD valign=top> <B><SMALL>Text functions </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetFont.html"> <B>SetFont</B></A> </TD><TD valign=top> Set the font used by DrawString() and DrawGlyph(). You can pass NULL here to unset the font. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_GetFont.html"> <B>GetFont</B></A> </TD><TD valign=top> Get the font associated with a surface. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_DrawString.html"> <B>DrawString</B></A> </TD><TD valign=top> Draw a string at the specified position with the given color following the specified flags. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_DrawGlyph.html"> <B>DrawGlyph</B></A> </TD><TD valign=top> Draw a single glyph specified by its character code at the specified position with the given color following the specified flags. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetEncoding.html"> <B>SetEncoding</B></A> </TD><TD valign=top> Change the encoding used for text rendering. </TD></TR> <TR><TD valign=top> <B><SMALL>Lightweight helpers </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_GetSubSurface.html"> <B>GetSubSurface</B></A> </TD><TD valign=top> Get an interface to a sub area of this surface. </TD></TR> <TR><TD valign=top> <B><SMALL>OpenGL </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_GetGL.html"> <B>GetGL</B></A> </TD><TD valign=top> Get a unique OpenGL context for this surface. </TD></TR> <TR><TD valign=top> <B><SMALL>Debug </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_Dump.html"> <B>Dump</B></A> </TD><TD valign=top> Dump the contents of the surface to one or two files. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_DisableAcceleration.html"> <B>DisableAcceleration</B></A> </TD><TD valign=top> Disable hardware acceleration. </TD></TR> <TR><TD valign=top> <B><SMALL>Resources </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_ReleaseSource.html"> <B>ReleaseSource</B></A> </TD><TD valign=top> Release possible reference to source surface. </TD></TR> <TR><TD valign=top> <B><SMALL>Blitting control </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetIndexTranslation.html"> <B>SetIndexTranslation</B></A> </TD><TD valign=top> Set index translation table. </TD></TR> <TR><TD valign=top> <B><SMALL>Rendering </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetRenderOptions.html"> <B>SetRenderOptions</B></A> </TD><TD valign=top> Set options affecting the output of drawing and blitting operations. </TD></TR> <TR><TD valign=top> <B><SMALL>Drawing/blitting control </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetMatrix.html"> <B>SetMatrix</B></A> </TD><TD valign=top> Set the transformation matrix. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetSourceMask.html"> <B>SetSourceMask</B></A> </TD><TD valign=top> Set the surface to be used as a mask for blitting. </TD></TR> <TR><TD valign=top> <B><SMALL>Lightweight helpers </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_MakeSubSurface.html"> <B>MakeSubSurface</B></A> </TD><TD valign=top> Make this a sub surface or adjust the rectangle of this sub surface. </TD></TR> <TR><TD valign=top> <B><SMALL>Direct Write/Read </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_Write.html"> <B>Write</B></A> </TD><TD valign=top> Write to the surface without the need for (Un)Lock. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_Read.html"> <B>Read</B></A> </TD><TD valign=top> Read from the surface without the need for (Un)Lock. </TD></TR> <TR><TD valign=top> <B><SMALL>Drawing/blitting control </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetColors.html"> <B>SetColors</B></A> </TD><TD valign=top> Sets color values used for drawing/text functions or alpha/color modulation (blitting functions). </TD></TR> <TR><TD valign=top> <B><SMALL>Blitting functions </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_BatchBlit2.html"> <B>BatchBlit2</B></A> </TD><TD valign=top> Blit a bunch of areas at once using secondary source for reading instead of destination. </TD></TR> <TR><TD valign=top> <B><SMALL>Buffer operations </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_GetPhysicalAddress.html"> <B>GetPhysicalAddress</B></A> </TD><TD valign=top> Returns the physical address of a locked surface. </TD></TR> <TR><TD valign=top> <B><SMALL>Drawing functions </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_FillTrapezoids.html"> <B>FillTrapezoids</B></A> </TD><TD valign=top> Fill a bunch of trapezoids with a single call. </TD></TR> <TR><TD valign=top> <B><SMALL>Drawing/blitting control </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetWriteMaskBits.html"> <B>SetWriteMaskBits</B></A> </TD><TD valign=top> Sets write mask bits. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetRop.html"> <B>SetRop</B></A> </TD><TD valign=top> Set Rop operation related parameters. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetSrcColorKeyExtended.html"> <B>SetSrcColorKeyExtended</B></A> </TD><TD valign=top> Sets extended source color keying. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetDstColorKeyExtended.html"> <B>SetDstColorKeyExtended</B></A> </TD><TD valign=top> Sets extended destination color keying. </TD></TR> <TR><TD valign=top> <B><SMALL>Drawing functions </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_DrawMonoGlyphs.html"> <B>DrawMonoGlyphs</B></A> </TD><TD valign=top> Blit monochrome glyph data with attributes. </TD></TR> <TR><TD valign=top> <B><SMALL>Blitting control </SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetSrcColorMatrix.html"> <B>SetSrcColorMatrix</B></A> </TD><TD valign=top> Set the source color matrix. </TD></TR> <TR><TD valign=top> <B><SMALL></SMALL></B> </TD><TD valign=top> <A href="IDirectFBSurface_SetSrcConvolution.html"> <B>SetSrcConvolution</B></A> </TD><TD valign=top> Set the source convolution filter. </TD></TR> </TBODY> </TABLE></CENTER> </P> <TABLE width=100% bgcolor=#E0E8F0 border=0 cellspacing=1 cellpadding=3> <TR><TD width=100> <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/"> <img alt="Creative Commons License" style="border-width:0" border="0" src="http://i.creativecommons.org/l/by-sa/3.0/88x31.png" /> </a> </TD><TD> This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/"> Creative Commons Attribution-Share Alike 3.0 License</a> </TD></TR> </TABLE> </BODY> </HTML>