aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/hw/dmx/doc/html/dmxsync_8h.html
blob: b5cbb77a329d04179b314a3955c3e282e4e43a83 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
<!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.6.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>dmxsync.h File Reference</h1>
<p><a href="dmxsync_8h_source.html">Go to the source code of this file.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxsync_8h.html#ae0a769161d6f8d88067a9cac16f9cf6f">dmxSyncActivate</a> (const char *interval)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxsync_8h.html#a0b349896e58d4291d712e31121fdc0ac">dmxSyncInit</a> (void)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxsync_8h.html#ab848762f4d2e30d31b87d3e8e10c5967">dmxSync</a> (<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *dmxScreen, Bool now)</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Interface for sync support. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="dmxsync_8c.html">dmxsync.c</a> </dd></dl>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="ab848762f4d2e30d31b87d3e8e10c5967"></a><!-- doxytag: member="dmxsync.h::dmxSync" ref="ab848762f4d2e30d31b87d3e8e10c5967" args="(DMXScreenInfo *dmxScreen, Bool now)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dmxSync </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *&nbsp;</td>
          <td class="paramname"> <em>dmxScreen</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Bool&nbsp;</td>
          <td class="paramname"> <em>now</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Request an XSync() to the display used by <em>dmxScreen</em>. If <em>now</em> is TRUE, call XSync() immediately instead of waiting for the next XSync() batching point. Note that if XSync() batching was deselected with <a class="el" href="dmxsync_8c.html#ae0a769161d6f8d88067a9cac16f9cf6f">dmxSyncActivate()</a> before <a class="el" href="dmxsync_8c.html#a0b349896e58d4291d712e31121fdc0ac">dmxSyncInit()</a> was called, then no XSync() batching is performed and this function always calles XSync() immediately.</p>
<p>(Note that this function uses TimerSet but works correctly in the face of a server generation. See the source for details.)</p>
<p>If <em>dmxScreen</em> is <em>NULL</em>, then all pending syncs will be flushed immediately. </p>

<p>References <a class="el" href="dmxsync_8c_source.html#l00063">dmxDoSync()</a>, <a class="el" href="dmxlog_8h_source.html#l00051">dmxFatal</a>, <a class="el" href="dmxscrinit_8c_source.html#l00067">dmxGeneration</a>, <a class="el" href="dmxlog_8c_source.html#l00159">dmxLog()</a>, <a class="el" href="dmxsync_8c_source.html#l00082">dmxSyncCallback()</a>, <a class="el" href="dmxsync_8c_source.html#l00059">dmxSyncInterval</a>, <a class="el" href="dmxsync_8c_source.html#l00061">dmxSyncPending</a>, <a class="el" href="dmxsync_8c_source.html#l00060">dmxSyncTimer</a>, <a class="el" href="dmx_8h_source.html#l00094">_DMXScreenInfo::name</a>, and <a class="el" href="dmx_8h_source.html#l00183">_DMXScreenInfo::needsSync</a>.</p>

<p>Referenced by <a class="el" href="dmxcursor_8c_source.html#l00711">_dmxMoveCursor()</a>, <a class="el" href="dmxcursor_8c_source.html#l00729">_dmxSetCursor()</a>, <a class="el" href="dmxextension_8c_source.html#l00248">dmxAddInput()</a>, <a class="el" href="dmxextension_8c_source.html#l01170">dmxAttachScreen()</a>, <a class="el" href="dmxbackend_8c_source.html#l00335">dmxBackendCollectEvents()</a>, <a class="el" href="dmxbackend_8c_source.html#l00468">dmxBackendProcessInput()</a>, <a class="el" href="dmxbackend_8c_source.html#l00240">dmxBackendUpdatePosition()</a>, <a class="el" href="dmxcursor_8c_source.html#l00578">dmxBECreateCursor()</a>, <a class="el" href="dmxpixmap_8c_source.html#l00059">dmxBECreatePixmap()</a>, <a class="el" href="dmxfont_8c_source.html#l00252">dmxBELoadFont()</a>, <a class="el" href="dmxpixmap_8c_source.html#l00191">dmxBitmapToRegion()</a>, <a class="el" href="dmxwindow_8c_source.html#l00910">dmxChangeBorderWidth()</a>, <a class="el" href="dmxgc_8c_source.html#l00190">dmxChangeGC()</a>, <a class="el" href="dmxpict_8c_source.html#l00851">dmxChangePictureClip()</a>, <a class="el" href="dmxwindow_8c_source.html#l00566">dmxChangeWindowAttributes()</a>, <a class="el" href="dmxfont_8c_source.html#l00147">dmxCheckFontPath()</a>, <a class="el" href="dmxfont_8c_source.html#l00098">dmxCheckFontPathElement()</a>, <a class="el" href="dmxcommon_8c_source.html#l00479">dmxCommonMouOn()</a>, <a class="el" href="dmxcommon_8c_source.html#l00567">dmxCommonSaveState()</a>, <a class="el" href="dmxpict_8c_source.html#l01041">dmxComposite()</a>, <a class="el" href="dmxpict_8c_source.html#l01100">dmxCompositeRects()</a>, <a class="el" href="dmxconsole_8c_source.html#l00986">dmxConsoleCapture()</a>, <a class="el" href="dmxconsole_8c_source.html#l01015">dmxConsoleUncapture()</a>, <a class="el" href="dmxgcops_8c_source.html#l00171">dmxCopyArea()</a>, <a class="el" href="dmxgcops_8c_source.html#l00197">dmxCopyPlane()</a>, <a class="el" href="dmxwindow_8c_source.html#l00794">dmxCopyWindow()</a>, <a class="el" href="dmxwindow_8c_source.html#l00280">dmxCreateAndRealizeWindow()</a>, <a class="el" href="dmxwindow_8c_source.html#l00303">dmxCreateWindow()</a>, <a class="el" href="dmxpict_8c_source.html#l00831">dmxDestroyPicture()</a>, <a class="el" href="dmxpict_8c_source.html#l00916">dmxDestroyPictureClip()</a>, <a class="el" href="dmxpixmap_8c_source.html#l00154">dmxDestroyPixmap()</a>, <a class="el" href="dmxwindow_8c_source.html#l00396">dmxDestroyWindow()</a>, <a class="el" href="dmxdpms_8c_source.html#l00130">dmxDPMSInit()</a>, <a class="el" href="dmxdpms_8c_source.html#l00151">dmxDPMSTerm()</a>, <a class="el" href="dmxgcops_8c_source.html#l00325">dmxFillPolygon()</a>, <a class="el" href="dmxextension_8c_source.html#l00292">dmxFlushPendingSyncs()</a>, <a class="el" href="dmxgcops_8c_source.html#l00554">dmxGetImage()</a>, <a class="el" href="dmxgcops_8c_source.html#l00470">dmxImageText16()</a>, <a class="el" href="dmxgcops_8c_source.html#l00450">dmxImageText8()</a>, <a class="el" href="dmxcmap_8c_source.html#l00147">dmxInstallColormap()</a>, <a class="el" href="dmxgcops_8c_source.html#l00305">dmxPolyArc()</a>, <a class="el" href="dmxgcops_8c_source.html#l00365">dmxPolyFillArc()</a>, <a class="el" href="dmxgcops_8c_source.html#l00345">dmxPolyFillRect()</a>, <a class="el" href="dmxgcops_8c_source.html#l00244">dmxPolylines()</a>, <a class="el" href="dmxgcops_8c_source.html#l00224">dmxPolyPoint()</a>, <a class="el" href="dmxgcops_8c_source.html#l00284">dmxPolyRectangle()</a>, <a class="el" href="dmxgcops_8c_source.html#l00264">dmxPolySegment()</a>, <a class="el" href="dmxgcops_8c_source.html#l00417">dmxPolyText16()</a>, <a class="el" href="dmxgcops_8c_source.html#l00385">dmxPolyText8()</a>, <a class="el" href="dmxwindow_8c_source.html#l00431">dmxPositionWindow()</a>, <a class="el" href="dmxpict_8c_source.html#l00342">dmxProcRenderAddGlyphs()</a>, <a class="el" href="dmxpict_8c_source.html#l00437">dmxProcRenderCompositeGlyphs()</a>, <a class="el" href="dmxpict_8c_source.html#l00397">dmxProcRenderFreeGlyphs()</a>, <a class="el" href="dmxpict_8c_source.html#l00311">dmxProcRenderFreeGlyphSet()</a>, <a class="el" href="dmxpict_8c_source.html#l00655">dmxProcRenderSetPictureFilter()</a>, <a class="el" href="dmxpict_8c_source.html#l00616">dmxProcRenderSetPictureTransform()</a>, <a class="el" href="dmxgcops_8c_source.html#l00097">dmxPutImage()</a>, <a class="el" href="dmxwindow_8c_source.html#l00601">dmxRealizeWindow()</a>, <a class="el" href="dmxwindow_8c_source.html#l00879">dmxReparentWindow()</a>, <a class="el" href="dmxwindow_8c_source.html#l00143">dmxResizeRootWindow()</a>, <a class="el" href="dmxwindow_8c_source.html#l00120">dmxResizeScreenWindow()</a>, <a class="el" href="dmxwindow_8c_source.html#l00835">dmxResizeWindow()</a>, <a class="el" href="dmxwindow_8c_source.html#l00723">dmxRestackWindow()</a>, <a class="el" href="dmxscrinit_8c_source.html#l00512">dmxSaveScreen()</a>, <a class="el" href="dmxfont_8c_source.html#l00114">dmxSetFontPath()</a>, <a class="el" href="dmxwindow_8c_source.html#l01002">dmxSetShape()</a>, <a class="el" href="dmxshadow_8c_source.html#l00047">dmxShadowUpdateProc()</a>, <a class="el" href="dmxcmap_8c_source.html#l00166">dmxStoreColors()</a>, <a class="el" href="dmxpict_8c_source.html#l01150">dmxTrapezoids()</a>, <a class="el" href="dmxpict_8c_source.html#l01193">dmxTriangles()</a>, <a class="el" href="dmxpict_8c_source.html#l01278">dmxTriFan()</a>, <a class="el" href="dmxpict_8c_source.html#l01236">dmxTriStrip()</a>, <a class="el" href="dmxwindow_8c_source.html#l00640">dmxUnrealizeWindow()</a>, <a class="el" href="dmxpict_8c_source.html#l00968">dmxValidatePicture()</a>, and <a class="el" href="dmxwindow_8c_source.html#l00758">dmxWindowExposures()</a>.</p>

</div>
</div>
<a class="anchor" id="ae0a769161d6f8d88067a9cac16f9cf6f"></a><!-- doxytag: member="dmxsync.h::dmxSyncActivate" ref="ae0a769161d6f8d88067a9cac16f9cf6f" args="(const char *interval)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dmxSyncActivate </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>interval</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Request the XSync() batching optimization with the specified <em>interval</em> (in mS). If the <em>interval</em> is 0, 100mS is used. If the <em>interval</em> is less than 0, then the XSync() batching optimization is not requested (e.g., so the -syncbatch -1 command line option can turn off the default 100mS XSync() batching).</p>
<p>Note that the parameter to this routine is a string, since it will usually be called from <a class="el" href="dmxinit_8c.html#a6ed0a235a6d852bfe0cc0250159a5daf">ddxProcessArgument</a> in <em><a class="el" href="dmxinit_8c.html">dmxinit.c</a></em> </p>

<p>References <a class="el" href="dmxsync_8c_source.html#l00059">dmxSyncInterval</a>.</p>

<p>Referenced by <a class="el" href="dmxinit_8c_source.html#l00878">ddxProcessArgument()</a>.</p>

</div>
</div>
<a class="anchor" id="a0b349896e58d4291d712e31121fdc0ac"></a><!-- doxytag: member="dmxsync.h::dmxSyncInit" ref="a0b349896e58d4291d712e31121fdc0ac" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dmxSyncInit </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Initialize the XSync() batching optimization, but only if <a class="el" href="dmxsync_8h.html#ae0a769161d6f8d88067a9cac16f9cf6f">dmxSyncActivate</a> was last called with a non-negative value. </p>

<p>References <a class="el" href="dmxlog_8h_source.html#l00044">dmxInfo</a>, <a class="el" href="dmxlog_8c_source.html#l00159">dmxLog()</a>, <a class="el" href="dmxsync_8c_source.html#l00096">dmxSyncBlockHandler()</a>, <a class="el" href="dmxsync_8c_source.html#l00059">dmxSyncInterval</a>, and <a class="el" href="dmxsync_8c_source.html#l00102">dmxSyncWakeupHandler()</a>.</p>

<p>Referenced by <a class="el" href="dmxinit_8c_source.html#l00561">InitOutput()</a>.</p>

</div>
</div>
</div>
    <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>