diff options
Diffstat (limited to 'xorg-server/hw/dmx/doc/html/dmxsync_8c.html')
-rw-r--r-- | xorg-server/hw/dmx/doc/html/dmxsync_8c.html | 139 |
1 files changed, 139 insertions, 0 deletions
diff --git a/xorg-server/hw/dmx/doc/html/dmxsync_8c.html b/xorg-server/hw/dmx/doc/html/dmxsync_8c.html new file mode 100644 index 000000000..76a940dd9 --- /dev/null +++ b/xorg-server/hw/dmx/doc/html/dmxsync_8c.html @@ -0,0 +1,139 @@ +<!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 Page</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Data Structures</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="functions.html">Data Fields</a> | <a class="qindex" href="globals.html">Globals</a></div> +<h1>dmxsync.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="dmxstat_8h-source.html">dmxstat.h</a>"</code><br> +<code>#include "<a class="el" href="dmxlog_8h-source.html">dmxlog.h</a>"</code><br> +<code>#include <sys/time.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 </td><td class="memItemRight" valign=bottom><a class="el" href="dmxsync_8c.html#a7">dmxSyncActivate</a> (const char *interval)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="dmxsync_8c.html#a8">dmxSyncInit</a> (void)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="dmxsync_8c.html#a9">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> +The DMX server code is written to call <a class="el" href="dmxsync_8c.html#a9">dmxSync()</a> whenever an XSync() might be necessary. However, since XSync() requires a two way communication with the other X server, eliminating unnecessary XSync() calls is a key performance optimization. Support for this optimization is provided here. Statistics about XSync() calls and latency are gathered in #dmxstat.c.<p> +During the initial conversion from calling XSync() immediately to the XSync() batching method implemented in this file, it was noted that, out of more than 300 <em>x11perf</em> tests, 8 tests became more than 100 times faster, with 68 more than 50X faster, 114 more than 10X faster, and 181 more than 2X faster.<hr><h2>Function Documentation</h2> +<a class="anchor" name="a9" doxytag="dmxsync.c::dmxSync" ></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 dmxSync </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> * </td> + <td class="mdname" nowrap> <em>dmxScreen</em>, </td> + </tr> + <tr> + <td></td> + <td></td> + <td class="md" nowrap>Bool </td> + <td class="mdname" nowrap> <em>now</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<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#a7">dmxSyncActivate()</a> before <a class="el" href="dmxsync_8c.html#a8">dmxSyncInit()</a> was called, then no XSync() batching is performed and this function always calles XSync() immediately.<p> +(Note that this function uses TimerSet but works correctly in the face of a server generation. See the source for details.)<p> +If <em>dmxScreen</em> is <em>NULL</em>, then all pending syncs will be flushed immediately. </td> + </tr> +</table> +<a class="anchor" name="a7" doxytag="dmxsync.c::dmxSyncActivate" ></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 dmxSyncActivate </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const char * </td> + <td class="mdname1" valign="top" nowrap> <em>interval</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<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> +Note that the parameter to this routine is a string, since it will usually be called from <a class="el" href="dmxinit_8c.html#a40">ddxProcessArgument</a> in #dmxinit.c </td> + </tr> +</table> +<a class="anchor" name="a8" doxytag="dmxsync.c::dmxSyncInit" ></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 dmxSyncInit </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">void </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Initialize the XSync() batching optimization, but only if <a class="el" href="dmxsync_8h.html#a0">dmxSyncActivate</a> was last called with a non-negative value. </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> |