First import
[xorg_rtime.git] / xorg-server-1.4 / hw / dmx / doc / html / dmxpict_8c.html
blob96fd4fe5f4cb7b778e7946da293606a09eee0d44
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
5 <title>File Index</title>
6 <link href="doxygen.css" rel="stylesheet" type="text/css">
7 </head>
8 <body>
9 <!-- Generated by Doxygen 1.3.4 -->
10 <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>
11 <h1>dmxpict.c File Reference</h1><code>#include "<a class="el" href="dmx_8h-source.html">dmx.h</a>"</code><br>
12 <code>#include "<a class="el" href="dmxsync_8h-source.html">dmxsync.h</a>"</code><br>
13 <code>#include "<a class="el" href="dmxpict_8h-source.html">dmxpict.h</a>"</code><br>
14 <code>#include "<a class="el" href="dmxwindow_8h-source.html">dmxwindow.h</a>"</code><br>
15 <code>#include "<a class="el" href="dmxpixmap_8h-source.html">dmxpixmap.h</a>"</code><br>
16 <code>#include "fb.h"</code><br>
17 <code>#include "pixmapstr.h"</code><br>
18 <code>#include "dixstruct.h"</code><br>
19 <code>#include "render.h"</code><br>
20 <code>#include "renderproto.h"</code><br>
21 <code>#include "picture.h"</code><br>
22 <code>#include "picturestr.h"</code><br>
23 <code>#include "mipict.h"</code><br>
24 <code>#include "fbpict.h"</code><br>
25 <table border=0 cellpadding=0 cellspacing=0>
26 <tr><td></td></tr>
27 <tr><td colspan=2><br><h2>Functions</h2></td></tr>
28 <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>
30 <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>
32 <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>
34 <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>
36 <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>
38 <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>
40 <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>
42 <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>
44 <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>
46 <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>
48 <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>
50 <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>
52 <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>
54 <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>
56 <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>
58 <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>
60 <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>
62 <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>
64 <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>
66 <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>
68 <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>
70 <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>
72 <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>
74 </table>
75 <hr><a name="_details"></a><h2>Detailed Description</h2>
76 Provide support for the RENDER extension (version 0.8).<hr><h2>Function Documentation</h2>
77 <a class="anchor" name="a16" doxytag="dmxpict.c::dmxBEFreeGlyphSet" ></a><p>
78 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
79 <tr>
80 <td class="mdRow">
81 <table cellpadding="0" cellspacing="0" border="0">
82 <tr>
83 <td class="md" nowrap valign="top"> Bool dmxBEFreeGlyphSet </td>
84 <td class="md" valign="top">(&nbsp;</td>
85 <td class="md" nowrap valign="top">ScreenPtr&nbsp;</td>
86 <td class="mdname" nowrap> <em>pScreen</em>, </td>
87 </tr>
88 <tr>
89 <td></td>
90 <td></td>
91 <td class="md" nowrap>GlyphSetPtr&nbsp;</td>
92 <td class="mdname" nowrap> <em>glyphSet</em></td>
93 </tr>
94 <tr>
95 <td></td>
96 <td class="md">)&nbsp;</td>
97 <td class="md" colspan="2"></td>
98 </tr>
100 </table>
101 </td>
102 </tr>
103 </table>
104 <table cellspacing=5 cellpadding=0 border=0>
105 <tr>
106 <td>
107 &nbsp;
108 </td>
109 <td>
112 Free <em>glyphSet</em> on back-end screen number <em>idx</em>. </td>
113 </tr>
114 </table>
115 <a class="anchor" name="a20" doxytag="dmxpict.c::dmxBEFreePicture" ></a><p>
116 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
117 <tr>
118 <td class="mdRow">
119 <table cellpadding="0" cellspacing="0" border="0">
120 <tr>
121 <td class="md" nowrap valign="top"> Bool dmxBEFreePicture </td>
122 <td class="md" valign="top">(&nbsp;</td>
123 <td class="md" nowrap valign="top">PicturePtr&nbsp;</td>
124 <td class="mdname1" valign="top" nowrap> <em>pPicture</em> </td>
125 <td class="md" valign="top">&nbsp;)&nbsp;</td>
126 <td class="md" nowrap></td>
127 </tr>
129 </table>
130 </td>
131 </tr>
132 </table>
133 <table cellspacing=5 cellpadding=0 border=0>
134 <tr>
135 <td>
136 &nbsp;
137 </td>
138 <td>
141 Destroy <em>pPicture</em> on the back-end server. </td>
142 </tr>
143 </table>
144 <a class="anchor" name="a25" doxytag="dmxpict.c::dmxChangePicture" ></a><p>
145 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
146 <tr>
147 <td class="mdRow">
148 <table cellpadding="0" cellspacing="0" border="0">
149 <tr>
150 <td class="md" nowrap valign="top"> void dmxChangePicture </td>
151 <td class="md" valign="top">(&nbsp;</td>
152 <td class="md" nowrap valign="top">PicturePtr&nbsp;</td>
153 <td class="mdname" nowrap> <em>pPicture</em>, </td>
154 </tr>
155 <tr>
156 <td></td>
157 <td></td>
158 <td class="md" nowrap>Mask&nbsp;</td>
159 <td class="mdname" nowrap> <em>mask</em></td>
160 </tr>
161 <tr>
162 <td></td>
163 <td class="md">)&nbsp;</td>
164 <td class="md" colspan="2"></td>
165 </tr>
167 </table>
168 </td>
169 </tr>
170 </table>
171 <table cellspacing=5 cellpadding=0 border=0>
172 <tr>
173 <td>
174 &nbsp;
175 </td>
176 <td>
179 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>
180 </tr>
181 </table>
182 <a class="anchor" name="a23" doxytag="dmxpict.c::dmxChangePictureClip" ></a><p>
183 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
184 <tr>
185 <td class="mdRow">
186 <table cellpadding="0" cellspacing="0" border="0">
187 <tr>
188 <td class="md" nowrap valign="top"> int dmxChangePictureClip </td>
189 <td class="md" valign="top">(&nbsp;</td>
190 <td class="md" nowrap valign="top">PicturePtr&nbsp;</td>
191 <td class="mdname" nowrap> <em>pPicture</em>, </td>
192 </tr>
193 <tr>
194 <td></td>
195 <td></td>
196 <td class="md" nowrap>int&nbsp;</td>
197 <td class="mdname" nowrap> <em>clipType</em>, </td>
198 </tr>
199 <tr>
200 <td></td>
201 <td></td>
202 <td class="md" nowrap>pointer&nbsp;</td>
203 <td class="mdname" nowrap> <em>value</em>, </td>
204 </tr>
205 <tr>
206 <td></td>
207 <td></td>
208 <td class="md" nowrap>int&nbsp;</td>
209 <td class="mdname" nowrap> <em>n</em></td>
210 </tr>
211 <tr>
212 <td></td>
213 <td class="md">)&nbsp;</td>
214 <td class="md" colspan="2"></td>
215 </tr>
217 </table>
218 </td>
219 </tr>
220 </table>
221 <table cellspacing=5 cellpadding=0 border=0>
222 <tr>
223 <td>
224 &nbsp;
225 </td>
226 <td>
229 Change the picture's list of clip rectangles. </td>
230 </tr>
231 </table>
232 <a class="anchor" name="a31" doxytag="dmxpict.c::dmxCloseIndexed" ></a><p>
233 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
234 <tr>
235 <td class="mdRow">
236 <table cellpadding="0" cellspacing="0" border="0">
237 <tr>
238 <td class="md" nowrap valign="top"> void dmxCloseIndexed </td>
239 <td class="md" valign="top">(&nbsp;</td>
240 <td class="md" nowrap valign="top">ScreenPtr&nbsp;</td>
241 <td class="mdname" nowrap> <em>pScreen</em>, </td>
242 </tr>
243 <tr>
244 <td></td>
245 <td></td>
246 <td class="md" nowrap>PictFormatPtr&nbsp;</td>
247 <td class="mdname" nowrap> <em>pFormat</em></td>
248 </tr>
249 <tr>
250 <td></td>
251 <td class="md">)&nbsp;</td>
252 <td class="md" colspan="2"></td>
253 </tr>
255 </table>
256 </td>
257 </tr>
258 </table>
259 <table cellspacing=5 cellpadding=0 border=0>
260 <tr>
261 <td>
262 &nbsp;
263 </td>
264 <td>
267 Indexed color visuals are not yet supported. </td>
268 </tr>
269 </table>
270 <a class="anchor" name="a27" doxytag="dmxpict.c::dmxComposite" ></a><p>
271 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
272 <tr>
273 <td class="mdRow">
274 <table cellpadding="0" cellspacing="0" border="0">
275 <tr>
276 <td class="md" nowrap valign="top"> void dmxComposite </td>
277 <td class="md" valign="top">(&nbsp;</td>
278 <td class="md" nowrap valign="top">CARD8&nbsp;</td>
279 <td class="mdname" nowrap> <em>op</em>, </td>
280 </tr>
281 <tr>
282 <td></td>
283 <td></td>
284 <td class="md" nowrap>PicturePtr&nbsp;</td>
285 <td class="mdname" nowrap> <em>pSrc</em>, </td>
286 </tr>
287 <tr>
288 <td></td>
289 <td></td>
290 <td class="md" nowrap>PicturePtr&nbsp;</td>
291 <td class="mdname" nowrap> <em>pMask</em>, </td>
292 </tr>
293 <tr>
294 <td></td>
295 <td></td>
296 <td class="md" nowrap>PicturePtr&nbsp;</td>
297 <td class="mdname" nowrap> <em>pDst</em>, </td>
298 </tr>
299 <tr>
300 <td></td>
301 <td></td>
302 <td class="md" nowrap>INT16&nbsp;</td>
303 <td class="mdname" nowrap> <em>xSrc</em>, </td>
304 </tr>
305 <tr>
306 <td></td>
307 <td></td>
308 <td class="md" nowrap>INT16&nbsp;</td>
309 <td class="mdname" nowrap> <em>ySrc</em>, </td>
310 </tr>
311 <tr>
312 <td></td>
313 <td></td>
314 <td class="md" nowrap>INT16&nbsp;</td>
315 <td class="mdname" nowrap> <em>xMask</em>, </td>
316 </tr>
317 <tr>
318 <td></td>
319 <td></td>
320 <td class="md" nowrap>INT16&nbsp;</td>
321 <td class="mdname" nowrap> <em>yMask</em>, </td>
322 </tr>
323 <tr>
324 <td></td>
325 <td></td>
326 <td class="md" nowrap>INT16&nbsp;</td>
327 <td class="mdname" nowrap> <em>xDst</em>, </td>
328 </tr>
329 <tr>
330 <td></td>
331 <td></td>
332 <td class="md" nowrap>INT16&nbsp;</td>
333 <td class="mdname" nowrap> <em>yDst</em>, </td>
334 </tr>
335 <tr>
336 <td></td>
337 <td></td>
338 <td class="md" nowrap>CARD16&nbsp;</td>
339 <td class="mdname" nowrap> <em>width</em>, </td>
340 </tr>
341 <tr>
342 <td></td>
343 <td></td>
344 <td class="md" nowrap>CARD16&nbsp;</td>
345 <td class="mdname" nowrap> <em>height</em></td>
346 </tr>
347 <tr>
348 <td></td>
349 <td class="md">)&nbsp;</td>
350 <td class="md" colspan="2"></td>
351 </tr>
353 </table>
354 </td>
355 </tr>
356 </table>
357 <table cellspacing=5 cellpadding=0 border=0>
358 <tr>
359 <td>
360 &nbsp;
361 </td>
362 <td>
365 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>
366 </tr>
367 </table>
368 <a class="anchor" name="a29" doxytag="dmxpict.c::dmxCompositeRects" ></a><p>
369 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
370 <tr>
371 <td class="mdRow">
372 <table cellpadding="0" cellspacing="0" border="0">
373 <tr>
374 <td class="md" nowrap valign="top"> void dmxCompositeRects </td>
375 <td class="md" valign="top">(&nbsp;</td>
376 <td class="md" nowrap valign="top">CARD8&nbsp;</td>
377 <td class="mdname" nowrap> <em>op</em>, </td>
378 </tr>
379 <tr>
380 <td></td>
381 <td></td>
382 <td class="md" nowrap>PicturePtr&nbsp;</td>
383 <td class="mdname" nowrap> <em>pDst</em>, </td>
384 </tr>
385 <tr>
386 <td></td>
387 <td></td>
388 <td class="md" nowrap>xRenderColor *&nbsp;</td>
389 <td class="mdname" nowrap> <em>color</em>, </td>
390 </tr>
391 <tr>
392 <td></td>
393 <td></td>
394 <td class="md" nowrap>int&nbsp;</td>
395 <td class="mdname" nowrap> <em>nRect</em>, </td>
396 </tr>
397 <tr>
398 <td></td>
399 <td></td>
400 <td class="md" nowrap>xRectangle *&nbsp;</td>
401 <td class="mdname" nowrap> <em>rects</em></td>
402 </tr>
403 <tr>
404 <td></td>
405 <td class="md">)&nbsp;</td>
406 <td class="md" colspan="2"></td>
407 </tr>
409 </table>
410 </td>
411 </tr>
412 </table>
413 <table cellspacing=5 cellpadding=0 border=0>
414 <tr>
415 <td>
416 &nbsp;
417 </td>
418 <td>
421 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>
422 </tr>
423 </table>
424 <a class="anchor" name="a19" doxytag="dmxpict.c::dmxCreatePicture" ></a><p>
425 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
426 <tr>
427 <td class="mdRow">
428 <table cellpadding="0" cellspacing="0" border="0">
429 <tr>
430 <td class="md" nowrap valign="top"> int dmxCreatePicture </td>
431 <td class="md" valign="top">(&nbsp;</td>
432 <td class="md" nowrap valign="top">PicturePtr&nbsp;</td>
433 <td class="mdname1" valign="top" nowrap> <em>pPicture</em> </td>
434 <td class="md" valign="top">&nbsp;)&nbsp;</td>
435 <td class="md" nowrap></td>
436 </tr>
438 </table>
439 </td>
440 </tr>
441 </table>
442 <table cellspacing=5 cellpadding=0 border=0>
443 <tr>
444 <td>
445 &nbsp;
446 </td>
447 <td>
450 Create a picture. This function handles the CreatePicture unwrapping/wrapping and calls dmxDoCreatePicture to actually create the picture on the appropriate screen. </td>
451 </tr>
452 </table>
453 <a class="anchor" name="a18" doxytag="dmxpict.c::dmxCreatePictureList" ></a><p>
454 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
455 <tr>
456 <td class="mdRow">
457 <table cellpadding="0" cellspacing="0" border="0">
458 <tr>
459 <td class="md" nowrap valign="top"> void dmxCreatePictureList </td>
460 <td class="md" valign="top">(&nbsp;</td>
461 <td class="md" nowrap valign="top">WindowPtr&nbsp;</td>
462 <td class="mdname1" valign="top" nowrap> <em>pWindow</em> </td>
463 <td class="md" valign="top">&nbsp;)&nbsp;</td>
464 <td class="md" nowrap></td>
465 </tr>
467 </table>
468 </td>
469 </tr>
470 </table>
471 <table cellspacing=5 cellpadding=0 border=0>
472 <tr>
473 <td>
474 &nbsp;
475 </td>
476 <td>
479 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>
480 </tr>
481 </table>
482 <a class="anchor" name="a22" doxytag="dmxpict.c::dmxDestroyPicture" ></a><p>
483 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
484 <tr>
485 <td class="mdRow">
486 <table cellpadding="0" cellspacing="0" border="0">
487 <tr>
488 <td class="md" nowrap valign="top"> void dmxDestroyPicture </td>
489 <td class="md" valign="top">(&nbsp;</td>
490 <td class="md" nowrap valign="top">PicturePtr&nbsp;</td>
491 <td class="mdname1" valign="top" nowrap> <em>pPicture</em> </td>
492 <td class="md" valign="top">&nbsp;)&nbsp;</td>
493 <td class="md" nowrap></td>
494 </tr>
496 </table>
497 </td>
498 </tr>
499 </table>
500 <table cellspacing=5 cellpadding=0 border=0>
501 <tr>
502 <td>
503 &nbsp;
504 </td>
505 <td>
508 Destroy a picture. This function calls the wrapped function that frees the resources in the DMX server associated with this picture. </td>
509 </tr>
510 </table>
511 <a class="anchor" name="a24" doxytag="dmxpict.c::dmxDestroyPictureClip" ></a><p>
512 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
513 <tr>
514 <td class="mdRow">
515 <table cellpadding="0" cellspacing="0" border="0">
516 <tr>
517 <td class="md" nowrap valign="top"> void dmxDestroyPictureClip </td>
518 <td class="md" valign="top">(&nbsp;</td>
519 <td class="md" nowrap valign="top">PicturePtr&nbsp;</td>
520 <td class="mdname1" valign="top" nowrap> <em>pPicture</em> </td>
521 <td class="md" valign="top">&nbsp;)&nbsp;</td>
522 <td class="md" nowrap></td>
523 </tr>
525 </table>
526 </td>
527 </tr>
528 </table>
529 <table cellspacing=5 cellpadding=0 border=0>
530 <tr>
531 <td>
532 &nbsp;
533 </td>
534 <td>
537 Destroy the picture's list of clip rectangles. </td>
538 </tr>
539 </table>
540 <a class="anchor" name="a21" doxytag="dmxpict.c::dmxDestroyPictureList" ></a><p>
541 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
542 <tr>
543 <td class="mdRow">
544 <table cellpadding="0" cellspacing="0" border="0">
545 <tr>
546 <td class="md" nowrap valign="top"> Bool dmxDestroyPictureList </td>
547 <td class="md" valign="top">(&nbsp;</td>
548 <td class="md" nowrap valign="top">WindowPtr&nbsp;</td>
549 <td class="mdname1" valign="top" nowrap> <em>pWindow</em> </td>
550 <td class="md" valign="top">&nbsp;)&nbsp;</td>
551 <td class="md" nowrap></td>
552 </tr>
554 </table>
555 </td>
556 </tr>
557 </table>
558 <table cellspacing=5 cellpadding=0 border=0>
559 <tr>
560 <td>
561 &nbsp;
562 </td>
563 <td>
566 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>
567 </tr>
568 </table>
569 <a class="anchor" name="a28" doxytag="dmxpict.c::dmxGlyphs" ></a><p>
570 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
571 <tr>
572 <td class="mdRow">
573 <table cellpadding="0" cellspacing="0" border="0">
574 <tr>
575 <td class="md" nowrap valign="top"> void dmxGlyphs </td>
576 <td class="md" valign="top">(&nbsp;</td>
577 <td class="md" nowrap valign="top">CARD8&nbsp;</td>
578 <td class="mdname" nowrap> <em>op</em>, </td>
579 </tr>
580 <tr>
581 <td></td>
582 <td></td>
583 <td class="md" nowrap>PicturePtr&nbsp;</td>
584 <td class="mdname" nowrap> <em>pSrc</em>, </td>
585 </tr>
586 <tr>
587 <td></td>
588 <td></td>
589 <td class="md" nowrap>PicturePtr&nbsp;</td>
590 <td class="mdname" nowrap> <em>pDst</em>, </td>
591 </tr>
592 <tr>
593 <td></td>
594 <td></td>
595 <td class="md" nowrap>PictFormatPtr&nbsp;</td>
596 <td class="mdname" nowrap> <em>maskFormat</em>, </td>
597 </tr>
598 <tr>
599 <td></td>
600 <td></td>
601 <td class="md" nowrap>INT16&nbsp;</td>
602 <td class="mdname" nowrap> <em>xSrc</em>, </td>
603 </tr>
604 <tr>
605 <td></td>
606 <td></td>
607 <td class="md" nowrap>INT16&nbsp;</td>
608 <td class="mdname" nowrap> <em>ySrc</em>, </td>
609 </tr>
610 <tr>
611 <td></td>
612 <td></td>
613 <td class="md" nowrap>int&nbsp;</td>
614 <td class="mdname" nowrap> <em>nlists</em>, </td>
615 </tr>
616 <tr>
617 <td></td>
618 <td></td>
619 <td class="md" nowrap>GlyphListPtr&nbsp;</td>
620 <td class="mdname" nowrap> <em>lists</em>, </td>
621 </tr>
622 <tr>
623 <td></td>
624 <td></td>
625 <td class="md" nowrap>GlyphPtr *&nbsp;</td>
626 <td class="mdname" nowrap> <em>glyphs</em></td>
627 </tr>
628 <tr>
629 <td></td>
630 <td class="md">)&nbsp;</td>
631 <td class="md" colspan="2"></td>
632 </tr>
634 </table>
635 </td>
636 </tr>
637 </table>
638 <table cellspacing=5 cellpadding=0 border=0>
639 <tr>
640 <td>
641 &nbsp;
642 </td>
643 <td>
646 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>
647 </tr>
648 </table>
649 <a class="anchor" name="a30" doxytag="dmxpict.c::dmxInitIndexed" ></a><p>
650 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
651 <tr>
652 <td class="mdRow">
653 <table cellpadding="0" cellspacing="0" border="0">
654 <tr>
655 <td class="md" nowrap valign="top"> Bool dmxInitIndexed </td>
656 <td class="md" valign="top">(&nbsp;</td>
657 <td class="md" nowrap valign="top">ScreenPtr&nbsp;</td>
658 <td class="mdname" nowrap> <em>pScreen</em>, </td>
659 </tr>
660 <tr>
661 <td></td>
662 <td></td>
663 <td class="md" nowrap>PictFormatPtr&nbsp;</td>
664 <td class="mdname" nowrap> <em>pFormat</em></td>
665 </tr>
666 <tr>
667 <td></td>
668 <td class="md">)&nbsp;</td>
669 <td class="md" colspan="2"></td>
670 </tr>
672 </table>
673 </td>
674 </tr>
675 </table>
676 <table cellspacing=5 cellpadding=0 border=0>
677 <tr>
678 <td>
679 &nbsp;
680 </td>
681 <td>
684 Indexed color visuals are not yet supported. </td>
685 </tr>
686 </table>
687 <a class="anchor" name="a12" doxytag="dmxpict.c::dmxInitRender" ></a><p>
688 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
689 <tr>
690 <td class="mdRow">
691 <table cellpadding="0" cellspacing="0" border="0">
692 <tr>
693 <td class="md" nowrap valign="top"> void dmxInitRender </td>
694 <td class="md" valign="top">(&nbsp;</td>
695 <td class="md" nowrap valign="top">void&nbsp;</td>
696 <td class="mdname1" valign="top" nowrap> </td>
697 <td class="md" valign="top">&nbsp;)&nbsp;</td>
698 <td class="md" nowrap></td>
699 </tr>
701 </table>
702 </td>
703 </tr>
704 </table>
705 <table cellspacing=5 cellpadding=0 border=0>
706 <tr>
707 <td>
708 &nbsp;
709 </td>
710 <td>
713 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>
714 </tr>
715 </table>
716 <a class="anchor" name="a14" doxytag="dmxpict.c::dmxPictureInit" ></a><p>
717 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
718 <tr>
719 <td class="mdRow">
720 <table cellpadding="0" cellspacing="0" border="0">
721 <tr>
722 <td class="md" nowrap valign="top"> Bool dmxPictureInit </td>
723 <td class="md" valign="top">(&nbsp;</td>
724 <td class="md" nowrap valign="top">ScreenPtr&nbsp;</td>
725 <td class="mdname" nowrap> <em>pScreen</em>, </td>
726 </tr>
727 <tr>
728 <td></td>
729 <td></td>
730 <td class="md" nowrap>PictFormatPtr&nbsp;</td>
731 <td class="mdname" nowrap> <em>formats</em>, </td>
732 </tr>
733 <tr>
734 <td></td>
735 <td></td>
736 <td class="md" nowrap>int&nbsp;</td>
737 <td class="mdname" nowrap> <em>nformats</em></td>
738 </tr>
739 <tr>
740 <td></td>
741 <td class="md">)&nbsp;</td>
742 <td class="md" colspan="2"></td>
743 </tr>
745 </table>
746 </td>
747 </tr>
748 </table>
749 <table cellspacing=5 cellpadding=0 border=0>
750 <tr>
751 <td>
752 &nbsp;
753 </td>
754 <td>
757 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>
758 </tr>
759 </table>
760 <a class="anchor" name="a13" doxytag="dmxpict.c::dmxResetRender" ></a><p>
761 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
762 <tr>
763 <td class="mdRow">
764 <table cellpadding="0" cellspacing="0" border="0">
765 <tr>
766 <td class="md" nowrap valign="top"> void dmxResetRender </td>
767 <td class="md" valign="top">(&nbsp;</td>
768 <td class="md" nowrap valign="top">void&nbsp;</td>
769 <td class="mdname1" valign="top" nowrap> </td>
770 <td class="md" valign="top">&nbsp;)&nbsp;</td>
771 <td class="md" nowrap></td>
772 </tr>
774 </table>
775 </td>
776 </tr>
777 </table>
778 <table cellspacing=5 cellpadding=0 border=0>
779 <tr>
780 <td>
781 &nbsp;
782 </td>
783 <td>
786 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>
787 </tr>
788 </table>
789 <a class="anchor" name="a33" doxytag="dmxpict.c::dmxTrapezoids" ></a><p>
790 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
791 <tr>
792 <td class="mdRow">
793 <table cellpadding="0" cellspacing="0" border="0">
794 <tr>
795 <td class="md" nowrap valign="top"> void dmxTrapezoids </td>
796 <td class="md" valign="top">(&nbsp;</td>
797 <td class="md" nowrap valign="top">CARD8&nbsp;</td>
798 <td class="mdname" nowrap> <em>op</em>, </td>
799 </tr>
800 <tr>
801 <td></td>
802 <td></td>
803 <td class="md" nowrap>PicturePtr&nbsp;</td>
804 <td class="mdname" nowrap> <em>pSrc</em>, </td>
805 </tr>
806 <tr>
807 <td></td>
808 <td></td>
809 <td class="md" nowrap>PicturePtr&nbsp;</td>
810 <td class="mdname" nowrap> <em>pDst</em>, </td>
811 </tr>
812 <tr>
813 <td></td>
814 <td></td>
815 <td class="md" nowrap>PictFormatPtr&nbsp;</td>
816 <td class="mdname" nowrap> <em>maskFormat</em>, </td>
817 </tr>
818 <tr>
819 <td></td>
820 <td></td>
821 <td class="md" nowrap>INT16&nbsp;</td>
822 <td class="mdname" nowrap> <em>xSrc</em>, </td>
823 </tr>
824 <tr>
825 <td></td>
826 <td></td>
827 <td class="md" nowrap>INT16&nbsp;</td>
828 <td class="mdname" nowrap> <em>ySrc</em>, </td>
829 </tr>
830 <tr>
831 <td></td>
832 <td></td>
833 <td class="md" nowrap>int&nbsp;</td>
834 <td class="mdname" nowrap> <em>ntrap</em>, </td>
835 </tr>
836 <tr>
837 <td></td>
838 <td></td>
839 <td class="md" nowrap>xTrapezoid *&nbsp;</td>
840 <td class="mdname" nowrap> <em>traps</em></td>
841 </tr>
842 <tr>
843 <td></td>
844 <td class="md">)&nbsp;</td>
845 <td class="md" colspan="2"></td>
846 </tr>
848 </table>
849 </td>
850 </tr>
851 </table>
852 <table cellspacing=5 cellpadding=0 border=0>
853 <tr>
854 <td>
855 &nbsp;
856 </td>
857 <td>
860 Composite a list of trapezoids on the appropriate screen. For a complete description see the protocol document of the RENDER library. </td>
861 </tr>
862 </table>
863 <a class="anchor" name="a34" doxytag="dmxpict.c::dmxTriangles" ></a><p>
864 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
865 <tr>
866 <td class="mdRow">
867 <table cellpadding="0" cellspacing="0" border="0">
868 <tr>
869 <td class="md" nowrap valign="top"> void dmxTriangles </td>
870 <td class="md" valign="top">(&nbsp;</td>
871 <td class="md" nowrap valign="top">CARD8&nbsp;</td>
872 <td class="mdname" nowrap> <em>op</em>, </td>
873 </tr>
874 <tr>
875 <td></td>
876 <td></td>
877 <td class="md" nowrap>PicturePtr&nbsp;</td>
878 <td class="mdname" nowrap> <em>pSrc</em>, </td>
879 </tr>
880 <tr>
881 <td></td>
882 <td></td>
883 <td class="md" nowrap>PicturePtr&nbsp;</td>
884 <td class="mdname" nowrap> <em>pDst</em>, </td>
885 </tr>
886 <tr>
887 <td></td>
888 <td></td>
889 <td class="md" nowrap>PictFormatPtr&nbsp;</td>
890 <td class="mdname" nowrap> <em>maskFormat</em>, </td>
891 </tr>
892 <tr>
893 <td></td>
894 <td></td>
895 <td class="md" nowrap>INT16&nbsp;</td>
896 <td class="mdname" nowrap> <em>xSrc</em>, </td>
897 </tr>
898 <tr>
899 <td></td>
900 <td></td>
901 <td class="md" nowrap>INT16&nbsp;</td>
902 <td class="mdname" nowrap> <em>ySrc</em>, </td>
903 </tr>
904 <tr>
905 <td></td>
906 <td></td>
907 <td class="md" nowrap>int&nbsp;</td>
908 <td class="mdname" nowrap> <em>ntri</em>, </td>
909 </tr>
910 <tr>
911 <td></td>
912 <td></td>
913 <td class="md" nowrap>xTriangle *&nbsp;</td>
914 <td class="mdname" nowrap> <em>tris</em></td>
915 </tr>
916 <tr>
917 <td></td>
918 <td class="md">)&nbsp;</td>
919 <td class="md" colspan="2"></td>
920 </tr>
922 </table>
923 </td>
924 </tr>
925 </table>
926 <table cellspacing=5 cellpadding=0 border=0>
927 <tr>
928 <td>
929 &nbsp;
930 </td>
931 <td>
934 Composite a list of triangles on the appropriate screen. For a complete description see the protocol document of the RENDER library. </td>
935 </tr>
936 </table>
937 <a class="anchor" name="a36" doxytag="dmxpict.c::dmxTriFan" ></a><p>
938 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
939 <tr>
940 <td class="mdRow">
941 <table cellpadding="0" cellspacing="0" border="0">
942 <tr>
943 <td class="md" nowrap valign="top"> void dmxTriFan </td>
944 <td class="md" valign="top">(&nbsp;</td>
945 <td class="md" nowrap valign="top">CARD8&nbsp;</td>
946 <td class="mdname" nowrap> <em>op</em>, </td>
947 </tr>
948 <tr>
949 <td></td>
950 <td></td>
951 <td class="md" nowrap>PicturePtr&nbsp;</td>
952 <td class="mdname" nowrap> <em>pSrc</em>, </td>
953 </tr>
954 <tr>
955 <td></td>
956 <td></td>
957 <td class="md" nowrap>PicturePtr&nbsp;</td>
958 <td class="mdname" nowrap> <em>pDst</em>, </td>
959 </tr>
960 <tr>
961 <td></td>
962 <td></td>
963 <td class="md" nowrap>PictFormatPtr&nbsp;</td>
964 <td class="mdname" nowrap> <em>maskFormat</em>, </td>
965 </tr>
966 <tr>
967 <td></td>
968 <td></td>
969 <td class="md" nowrap>INT16&nbsp;</td>
970 <td class="mdname" nowrap> <em>xSrc</em>, </td>
971 </tr>
972 <tr>
973 <td></td>
974 <td></td>
975 <td class="md" nowrap>INT16&nbsp;</td>
976 <td class="mdname" nowrap> <em>ySrc</em>, </td>
977 </tr>
978 <tr>
979 <td></td>
980 <td></td>
981 <td class="md" nowrap>int&nbsp;</td>
982 <td class="mdname" nowrap> <em>npoint</em>, </td>
983 </tr>
984 <tr>
985 <td></td>
986 <td></td>
987 <td class="md" nowrap>xPointFixed *&nbsp;</td>
988 <td class="mdname" nowrap> <em>points</em></td>
989 </tr>
990 <tr>
991 <td></td>
992 <td class="md">)&nbsp;</td>
993 <td class="md" colspan="2"></td>
994 </tr>
996 </table>
997 </td>
998 </tr>
999 </table>
1000 <table cellspacing=5 cellpadding=0 border=0>
1001 <tr>
1002 <td>
1003 &nbsp;
1004 </td>
1005 <td>
1008 Composite a triangle fan on the appropriate screen. For a complete description see the protocol document of the RENDER library. </td>
1009 </tr>
1010 </table>
1011 <a class="anchor" name="a35" doxytag="dmxpict.c::dmxTriStrip" ></a><p>
1012 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1013 <tr>
1014 <td class="mdRow">
1015 <table cellpadding="0" cellspacing="0" border="0">
1016 <tr>
1017 <td class="md" nowrap valign="top"> void dmxTriStrip </td>
1018 <td class="md" valign="top">(&nbsp;</td>
1019 <td class="md" nowrap valign="top">CARD8&nbsp;</td>
1020 <td class="mdname" nowrap> <em>op</em>, </td>
1021 </tr>
1022 <tr>
1023 <td></td>
1024 <td></td>
1025 <td class="md" nowrap>PicturePtr&nbsp;</td>
1026 <td class="mdname" nowrap> <em>pSrc</em>, </td>
1027 </tr>
1028 <tr>
1029 <td></td>
1030 <td></td>
1031 <td class="md" nowrap>PicturePtr&nbsp;</td>
1032 <td class="mdname" nowrap> <em>pDst</em>, </td>
1033 </tr>
1034 <tr>
1035 <td></td>
1036 <td></td>
1037 <td class="md" nowrap>PictFormatPtr&nbsp;</td>
1038 <td class="mdname" nowrap> <em>maskFormat</em>, </td>
1039 </tr>
1040 <tr>
1041 <td></td>
1042 <td></td>
1043 <td class="md" nowrap>INT16&nbsp;</td>
1044 <td class="mdname" nowrap> <em>xSrc</em>, </td>
1045 </tr>
1046 <tr>
1047 <td></td>
1048 <td></td>
1049 <td class="md" nowrap>INT16&nbsp;</td>
1050 <td class="mdname" nowrap> <em>ySrc</em>, </td>
1051 </tr>
1052 <tr>
1053 <td></td>
1054 <td></td>
1055 <td class="md" nowrap>int&nbsp;</td>
1056 <td class="mdname" nowrap> <em>npoint</em>, </td>
1057 </tr>
1058 <tr>
1059 <td></td>
1060 <td></td>
1061 <td class="md" nowrap>xPointFixed *&nbsp;</td>
1062 <td class="mdname" nowrap> <em>points</em></td>
1063 </tr>
1064 <tr>
1065 <td></td>
1066 <td class="md">)&nbsp;</td>
1067 <td class="md" colspan="2"></td>
1068 </tr>
1070 </table>
1071 </td>
1072 </tr>
1073 </table>
1074 <table cellspacing=5 cellpadding=0 border=0>
1075 <tr>
1076 <td>
1077 &nbsp;
1078 </td>
1079 <td>
1082 Composite a triangle strip on the appropriate screen. For a complete description see the protocol document of the RENDER library. </td>
1083 </tr>
1084 </table>
1085 <a class="anchor" name="a32" doxytag="dmxpict.c::dmxUpdateIndexed" ></a><p>
1086 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1087 <tr>
1088 <td class="mdRow">
1089 <table cellpadding="0" cellspacing="0" border="0">
1090 <tr>
1091 <td class="md" nowrap valign="top"> void dmxUpdateIndexed </td>
1092 <td class="md" valign="top">(&nbsp;</td>
1093 <td class="md" nowrap valign="top">ScreenPtr&nbsp;</td>
1094 <td class="mdname" nowrap> <em>pScreen</em>, </td>
1095 </tr>
1096 <tr>
1097 <td></td>
1098 <td></td>
1099 <td class="md" nowrap>PictFormatPtr&nbsp;</td>
1100 <td class="mdname" nowrap> <em>pFormat</em>, </td>
1101 </tr>
1102 <tr>
1103 <td></td>
1104 <td></td>
1105 <td class="md" nowrap>int&nbsp;</td>
1106 <td class="mdname" nowrap> <em>ndef</em>, </td>
1107 </tr>
1108 <tr>
1109 <td></td>
1110 <td></td>
1111 <td class="md" nowrap>xColorItem *&nbsp;</td>
1112 <td class="mdname" nowrap> <em>pdef</em></td>
1113 </tr>
1114 <tr>
1115 <td></td>
1116 <td class="md">)&nbsp;</td>
1117 <td class="md" colspan="2"></td>
1118 </tr>
1120 </table>
1121 </td>
1122 </tr>
1123 </table>
1124 <table cellspacing=5 cellpadding=0 border=0>
1125 <tr>
1126 <td>
1127 &nbsp;
1128 </td>
1129 <td>
1132 Indexed color visuals are not yet supported. </td>
1133 </tr>
1134 </table>
1135 <a class="anchor" name="a26" doxytag="dmxpict.c::dmxValidatePicture" ></a><p>
1136 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1137 <tr>
1138 <td class="mdRow">
1139 <table cellpadding="0" cellspacing="0" border="0">
1140 <tr>
1141 <td class="md" nowrap valign="top"> void dmxValidatePicture </td>
1142 <td class="md" valign="top">(&nbsp;</td>
1143 <td class="md" nowrap valign="top">PicturePtr&nbsp;</td>
1144 <td class="mdname" nowrap> <em>pPicture</em>, </td>
1145 </tr>
1146 <tr>
1147 <td></td>
1148 <td></td>
1149 <td class="md" nowrap>Mask&nbsp;</td>
1150 <td class="mdname" nowrap> <em>mask</em></td>
1151 </tr>
1152 <tr>
1153 <td></td>
1154 <td class="md">)&nbsp;</td>
1155 <td class="md" colspan="2"></td>
1156 </tr>
1158 </table>
1159 </td>
1160 </tr>
1161 </table>
1162 <table cellspacing=5 cellpadding=0 border=0>
1163 <tr>
1164 <td>
1165 &nbsp;
1166 </td>
1167 <td>
1170 Validate the picture's attributes before rendering to it. Update any picture attributes that have been changed by one of the higher layers. </td>
1171 </tr>
1172 </table>
1173 <hr>
1174 <address>
1175 <small>
1176 Generated June 29, 2004 for <a
1177 href="http://dmx.sourceforge.net">Distributed Multihead X</a> by
1178 <a href="http://www.doxygen.org/index.html">doxygen</a>
1179 1.3.4.
1180 </small>
1181 </addres>
1182 </hr>
1183 </body>
1184 </html>