xenocara/xserver/hw/dmx/doc/html/dmxpict_8c.html
2006-11-26 18:13:41 +00:00

1185 lines
40 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>File Index</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head>
<body>
<!-- Generated by Doxygen 1.3.4 -->
<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a></div>
<h1>dmxpict.c File Reference</h1><code>#include "<a class="el" href="dmx_8h-source.html">dmx.h</a>"</code><br>
<code>#include "<a class="el" href="dmxsync_8h-source.html">dmxsync.h</a>"</code><br>
<code>#include "<a class="el" href="dmxpict_8h-source.html">dmxpict.h</a>"</code><br>
<code>#include "<a class="el" href="dmxwindow_8h-source.html">dmxwindow.h</a>"</code><br>
<code>#include "<a class="el" href="dmxpixmap_8h-source.html">dmxpixmap.h</a>"</code><br>
<code>#include "fb.h"</code><br>
<code>#include "pixmapstr.h"</code><br>
<code>#include "dixstruct.h"</code><br>
<code>#include "render.h"</code><br>
<code>#include "renderproto.h"</code><br>
<code>#include "picture.h"</code><br>
<code>#include "picturestr.h"</code><br>
<code>#include "mipict.h"</code><br>
<code>#include "fbpict.h"</code><br>
<table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
<tr><td colspan=2><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a12">dmxInitRender</a> (void)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a13">dmxResetRender</a> (void)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>Bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a14">dmxPictureInit</a> (ScreenPtr pScreen, PictFormatPtr formats, int nformats)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>Bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a16">dmxBEFreeGlyphSet</a> (ScreenPtr pScreen, GlyphSetPtr glyphSet)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a18">dmxCreatePictureList</a> (WindowPtr pWindow)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a19">dmxCreatePicture</a> (PicturePtr pPicture)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>Bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a20">dmxBEFreePicture</a> (PicturePtr pPicture)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>Bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a21">dmxDestroyPictureList</a> (WindowPtr pWindow)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a22">dmxDestroyPicture</a> (PicturePtr pPicture)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a23">dmxChangePictureClip</a> (PicturePtr pPicture, int clipType, pointer value, int n)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a24">dmxDestroyPictureClip</a> (PicturePtr pPicture)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a25">dmxChangePicture</a> (PicturePtr pPicture, Mask mask)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a26">dmxValidatePicture</a> (PicturePtr pPicture, Mask mask)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a27">dmxComposite</a> (CARD8 op, PicturePtr pSrc, PicturePtr pMask, PicturePtr pDst, INT16 xSrc, INT16 ySrc, INT16 xMask, INT16 yMask, INT16 xDst, INT16 yDst, CARD16 width, CARD16 height)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a28">dmxGlyphs</a> (CARD8 op, PicturePtr pSrc, PicturePtr pDst, PictFormatPtr maskFormat, INT16 xSrc, INT16 ySrc, int nlists, GlyphListPtr lists, GlyphPtr *glyphs)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a29">dmxCompositeRects</a> (CARD8 op, PicturePtr pDst, xRenderColor *color, int nRect, xRectangle *rects)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>Bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a30">dmxInitIndexed</a> (ScreenPtr pScreen, PictFormatPtr pFormat)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a31">dmxCloseIndexed</a> (ScreenPtr pScreen, PictFormatPtr pFormat)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a32">dmxUpdateIndexed</a> (ScreenPtr pScreen, PictFormatPtr pFormat, int ndef, xColorItem *pdef)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a33">dmxTrapezoids</a> (CARD8 op, PicturePtr pSrc, PicturePtr pDst, PictFormatPtr maskFormat, INT16 xSrc, INT16 ySrc, int ntrap, xTrapezoid *traps)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a34">dmxTriangles</a> (CARD8 op, PicturePtr pSrc, PicturePtr pDst, PictFormatPtr maskFormat, INT16 xSrc, INT16 ySrc, int ntri, xTriangle *tris)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a35">dmxTriStrip</a> (CARD8 op, PicturePtr pSrc, PicturePtr pDst, PictFormatPtr maskFormat, INT16 xSrc, INT16 ySrc, int npoint, xPointFixed *points)</td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="dmxpict_8c.html#a36">dmxTriFan</a> (CARD8 op, PicturePtr pSrc, PicturePtr pDst, PictFormatPtr maskFormat, INT16 xSrc, INT16 ySrc, int npoint, xPointFixed *points)</td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Provide support for the RENDER extension (version 0.8).<hr><h2>Function Documentation</h2>
<a class="anchor" name="a16" doxytag="dmxpict.c::dmxBEFreeGlyphSet" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> Bool dmxBEFreeGlyphSet </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">ScreenPtr&nbsp;</td>
<td class="mdname" nowrap> <em>pScreen</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>GlyphSetPtr&nbsp;</td>
<td class="mdname" nowrap> <em>glyphSet</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Free <em>glyphSet</em> on back-end screen number <em>idx</em>. </td>
</tr>
</table>
<a class="anchor" name="a20" doxytag="dmxpict.c::dmxBEFreePicture" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> Bool dmxBEFreePicture </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">PicturePtr&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>pPicture</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Destroy <em>pPicture</em> on the back-end server. </td>
</tr>
</table>
<a class="anchor" name="a25" doxytag="dmxpict.c::dmxChangePicture" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> void dmxChangePicture </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">PicturePtr&nbsp;</td>
<td class="mdname" nowrap> <em>pPicture</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>Mask&nbsp;</td>
<td class="mdname" nowrap> <em>mask</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Change the attributes of the pictures. If the picture has not yet been created due to lazy window creation, save the mask so that it can be used to appropriately initialize the picture's attributes when it is created later. </td>
</tr>
</table>
<a class="anchor" name="a23" doxytag="dmxpict.c::dmxChangePictureClip" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> int dmxChangePictureClip </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">PicturePtr&nbsp;</td>
<td class="mdname" nowrap> <em>pPicture</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>clipType</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>pointer&nbsp;</td>
<td class="mdname" nowrap> <em>value</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>n</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Change the picture's list of clip rectangles. </td>
</tr>
</table>
<a class="anchor" name="a31" doxytag="dmxpict.c::dmxCloseIndexed" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> void dmxCloseIndexed </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">ScreenPtr&nbsp;</td>
<td class="mdname" nowrap> <em>pScreen</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PictFormatPtr&nbsp;</td>
<td class="mdname" nowrap> <em>pFormat</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Indexed color visuals are not yet supported. </td>
</tr>
</table>
<a class="anchor" name="a27" doxytag="dmxpict.c::dmxComposite" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> void dmxComposite </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">CARD8&nbsp;</td>
<td class="mdname" nowrap> <em>op</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PicturePtr&nbsp;</td>
<td class="mdname" nowrap> <em>pSrc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PicturePtr&nbsp;</td>
<td class="mdname" nowrap> <em>pMask</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PicturePtr&nbsp;</td>
<td class="mdname" nowrap> <em>pDst</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>INT16&nbsp;</td>
<td class="mdname" nowrap> <em>xSrc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>INT16&nbsp;</td>
<td class="mdname" nowrap> <em>ySrc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>INT16&nbsp;</td>
<td class="mdname" nowrap> <em>xMask</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>INT16&nbsp;</td>
<td class="mdname" nowrap> <em>yMask</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>INT16&nbsp;</td>
<td class="mdname" nowrap> <em>xDst</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>INT16&nbsp;</td>
<td class="mdname" nowrap> <em>yDst</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>CARD16&nbsp;</td>
<td class="mdname" nowrap> <em>width</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>CARD16&nbsp;</td>
<td class="mdname" nowrap> <em>height</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Composite a picture on the appropriate screen by combining the specified rectangle of the transformed src and mask operands with the specified rectangle of the dst using op as the compositing operator. For a complete description see the protocol document of the RENDER library. </td>
</tr>
</table>
<a class="anchor" name="a29" doxytag="dmxpict.c::dmxCompositeRects" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> void dmxCompositeRects </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">CARD8&nbsp;</td>
<td class="mdname" nowrap> <em>op</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PicturePtr&nbsp;</td>
<td class="mdname" nowrap> <em>pDst</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>xRenderColor *&nbsp;</td>
<td class="mdname" nowrap> <em>color</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>nRect</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>xRectangle *&nbsp;</td>
<td class="mdname" nowrap> <em>rects</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Fill a rectangle on the appropriate screen by combining the color with the dest picture in the area specified by the list of rectangles. For a complete description see the protocol document of the RENDER library. </td>
</tr>
</table>
<a class="anchor" name="a19" doxytag="dmxpict.c::dmxCreatePicture" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> int dmxCreatePicture </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">PicturePtr&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>pPicture</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Create a picture. This function handles the CreatePicture unwrapping/wrapping and calls dmxDoCreatePicture to actually create the picture on the appropriate screen. </td>
</tr>
</table>
<a class="anchor" name="a18" doxytag="dmxpict.c::dmxCreatePictureList" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> void dmxCreatePictureList </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">WindowPtr&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>pWindow</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Create a list of pictures. This function is called by <a class="el" href="dmxwindow_8c.html#a9">dmxCreateAndRealizeWindow()</a> during the lazy window creation realization process. It creates the entire list of pictures that are associated with the given window. </td>
</tr>
</table>
<a class="anchor" name="a22" doxytag="dmxpict.c::dmxDestroyPicture" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> void dmxDestroyPicture </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">PicturePtr&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>pPicture</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Destroy a picture. This function calls the wrapped function that frees the resources in the DMX server associated with this picture. </td>
</tr>
</table>
<a class="anchor" name="a24" doxytag="dmxpict.c::dmxDestroyPictureClip" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> void dmxDestroyPictureClip </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">PicturePtr&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>pPicture</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Destroy the picture's list of clip rectangles. </td>
</tr>
</table>
<a class="anchor" name="a21" doxytag="dmxpict.c::dmxDestroyPictureList" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> Bool dmxDestroyPictureList </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">WindowPtr&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>pWindow</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Destroy a list of pictures that are associated with the window that is being destroyed. This function is called by <a class="el" href="dmxwindow_8c.html#a12">dmxDestroyWindow()</a>. </td>
</tr>
</table>
<a class="anchor" name="a28" doxytag="dmxpict.c::dmxGlyphs" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> void dmxGlyphs </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">CARD8&nbsp;</td>
<td class="mdname" nowrap> <em>op</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PicturePtr&nbsp;</td>
<td class="mdname" nowrap> <em>pSrc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PicturePtr&nbsp;</td>
<td class="mdname" nowrap> <em>pDst</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PictFormatPtr&nbsp;</td>
<td class="mdname" nowrap> <em>maskFormat</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>INT16&nbsp;</td>
<td class="mdname" nowrap> <em>xSrc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>INT16&nbsp;</td>
<td class="mdname" nowrap> <em>ySrc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>nlists</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>GlyphListPtr&nbsp;</td>
<td class="mdname" nowrap> <em>lists</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>GlyphPtr *&nbsp;</td>
<td class="mdname" nowrap> <em>glyphs</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Null function to catch when/if RENDER calls lower level mi hooks. Compositing glyphs is handled by <a class="el" href="dmxpict_8c.html#a8">dmxProcRenderCompositeGlyphs()</a>. This function should never be called. </td>
</tr>
</table>
<a class="anchor" name="a30" doxytag="dmxpict.c::dmxInitIndexed" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> Bool dmxInitIndexed </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">ScreenPtr&nbsp;</td>
<td class="mdname" nowrap> <em>pScreen</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PictFormatPtr&nbsp;</td>
<td class="mdname" nowrap> <em>pFormat</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Indexed color visuals are not yet supported. </td>
</tr>
</table>
<a class="anchor" name="a12" doxytag="dmxpict.c::dmxInitRender" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> void dmxInitRender </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">void&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Initialize the Proc Vector for the RENDER extension. The functions here cannot be handled by the mi layer RENDER hooks either because the required information is no longer available when it reaches the mi layer or no mi layer hooks exist. This function is called from <a class="el" href="dmxinit_8c.html#a34">InitOutput()</a> since it should be initialized only once per server generation. </td>
</tr>
</table>
<a class="anchor" name="a14" doxytag="dmxpict.c::dmxPictureInit" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> Bool dmxPictureInit </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">ScreenPtr&nbsp;</td>
<td class="mdname" nowrap> <em>pScreen</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PictFormatPtr&nbsp;</td>
<td class="mdname" nowrap> <em>formats</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>nformats</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Initialize the RENDER extension, allocate the picture privates and wrap mi function hooks. If the shadow frame buffer is used, then call the appropriate fb initialization function. </td>
</tr>
</table>
<a class="anchor" name="a13" doxytag="dmxpict.c::dmxResetRender" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> void dmxResetRender </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">void&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Reset the Proc Vector for the RENDER extension back to the original functions. This function is called from <a class="el" href="dmxscrinit_8c.html#a9">dmxCloseScreen()</a> during the server reset (only for screen #0). </td>
</tr>
</table>
<a class="anchor" name="a33" doxytag="dmxpict.c::dmxTrapezoids" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> void dmxTrapezoids </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">CARD8&nbsp;</td>
<td class="mdname" nowrap> <em>op</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PicturePtr&nbsp;</td>
<td class="mdname" nowrap> <em>pSrc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PicturePtr&nbsp;</td>
<td class="mdname" nowrap> <em>pDst</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PictFormatPtr&nbsp;</td>
<td class="mdname" nowrap> <em>maskFormat</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>INT16&nbsp;</td>
<td class="mdname" nowrap> <em>xSrc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>INT16&nbsp;</td>
<td class="mdname" nowrap> <em>ySrc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>ntrap</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>xTrapezoid *&nbsp;</td>
<td class="mdname" nowrap> <em>traps</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Composite a list of trapezoids on the appropriate screen. For a complete description see the protocol document of the RENDER library. </td>
</tr>
</table>
<a class="anchor" name="a34" doxytag="dmxpict.c::dmxTriangles" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> void dmxTriangles </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">CARD8&nbsp;</td>
<td class="mdname" nowrap> <em>op</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PicturePtr&nbsp;</td>
<td class="mdname" nowrap> <em>pSrc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PicturePtr&nbsp;</td>
<td class="mdname" nowrap> <em>pDst</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PictFormatPtr&nbsp;</td>
<td class="mdname" nowrap> <em>maskFormat</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>INT16&nbsp;</td>
<td class="mdname" nowrap> <em>xSrc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>INT16&nbsp;</td>
<td class="mdname" nowrap> <em>ySrc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>ntri</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>xTriangle *&nbsp;</td>
<td class="mdname" nowrap> <em>tris</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Composite a list of triangles on the appropriate screen. For a complete description see the protocol document of the RENDER library. </td>
</tr>
</table>
<a class="anchor" name="a36" doxytag="dmxpict.c::dmxTriFan" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> void dmxTriFan </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">CARD8&nbsp;</td>
<td class="mdname" nowrap> <em>op</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PicturePtr&nbsp;</td>
<td class="mdname" nowrap> <em>pSrc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PicturePtr&nbsp;</td>
<td class="mdname" nowrap> <em>pDst</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PictFormatPtr&nbsp;</td>
<td class="mdname" nowrap> <em>maskFormat</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>INT16&nbsp;</td>
<td class="mdname" nowrap> <em>xSrc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>INT16&nbsp;</td>
<td class="mdname" nowrap> <em>ySrc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>npoint</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>xPointFixed *&nbsp;</td>
<td class="mdname" nowrap> <em>points</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Composite a triangle fan on the appropriate screen. For a complete description see the protocol document of the RENDER library. </td>
</tr>
</table>
<a class="anchor" name="a35" doxytag="dmxpict.c::dmxTriStrip" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> void dmxTriStrip </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">CARD8&nbsp;</td>
<td class="mdname" nowrap> <em>op</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PicturePtr&nbsp;</td>
<td class="mdname" nowrap> <em>pSrc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PicturePtr&nbsp;</td>
<td class="mdname" nowrap> <em>pDst</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PictFormatPtr&nbsp;</td>
<td class="mdname" nowrap> <em>maskFormat</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>INT16&nbsp;</td>
<td class="mdname" nowrap> <em>xSrc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>INT16&nbsp;</td>
<td class="mdname" nowrap> <em>ySrc</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>npoint</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>xPointFixed *&nbsp;</td>
<td class="mdname" nowrap> <em>points</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Composite a triangle strip on the appropriate screen. For a complete description see the protocol document of the RENDER library. </td>
</tr>
</table>
<a class="anchor" name="a32" doxytag="dmxpict.c::dmxUpdateIndexed" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> void dmxUpdateIndexed </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">ScreenPtr&nbsp;</td>
<td class="mdname" nowrap> <em>pScreen</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>PictFormatPtr&nbsp;</td>
<td class="mdname" nowrap> <em>pFormat</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>ndef</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>xColorItem *&nbsp;</td>
<td class="mdname" nowrap> <em>pdef</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Indexed color visuals are not yet supported. </td>
</tr>
</table>
<a class="anchor" name="a26" doxytag="dmxpict.c::dmxValidatePicture" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> void dmxValidatePicture </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">PicturePtr&nbsp;</td>
<td class="mdname" nowrap> <em>pPicture</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>Mask&nbsp;</td>
<td class="mdname" nowrap> <em>mask</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Validate the picture's attributes before rendering to it. Update any picture attributes that have been changed by one of the higher layers. </td>
</tr>
</table>
<hr>
<address>
<small>
Generated June 29, 2004 for <a
href="http://dmx.sourceforge.net">Distributed Multihead X</a> by
<a href="http://www.doxygen.org/index.html">doxygen</a>
1.3.4.
</small>
</addres>
</hr>
</body>
</html>