Home | History | Annotate | Line # | Download | only in html
      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.7.4 -->
     10   <div id="navrow1" class="tabs">
     11     <ul class="tablist">
     12       <li><a href="index.html"><span>Main&#160;Page</span></a></li>
     13       <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
     14       <li class="current"><a href="files.html"><span>Files</span></a></li>
     15     </ul>
     16   </div>
     17   <div id="navrow2" class="tabs2">
     18     <ul class="tablist">
     19       <li><a href="files.html"><span>File&#160;List</span></a></li>
     20       <li><a href="globals.html"><span>Globals</span></a></li>
     21     </ul>
     22   </div>
     23 </div>
     24 <div id="side-nav" class="ui-resizable side-nav-resizable">
     25   <div id="nav-tree">
     26     <div id="nav-tree-contents">
     27     </div>
     28   </div>
     29   <div id="splitbar" style="-moz-user-select:none;" 
     30        class="ui-resizable-handle">
     31   </div>
     32 </div>
     33 <script type="text/javascript">
     34   initNavTree('dmxcommon_8c.html','');
     35 </script>
     36 <div id="doc-content">
     37 <div class="header">
     38   <div class="summary">
     39 <a href="#nested-classes">Data Structures</a> &#124;
     40 <a href="#define-members">Defines</a> &#124;
     41 <a href="#typedef-members">Typedefs</a> &#124;
     42 <a href="#func-members">Functions</a>  </div>
     43   <div class="headertitle">
     44 <div class="title">dmxcommon.c File Reference</div>  </div>
     45 </div>
     46 <div class="contents">
     47 <div class="textblock"><code>#include &quot;<a class="el" href="dmxinputinit_8h_source.html">dmxinputinit.h</a>&quot;</code><br/>
     48 <code>#include &quot;<a class="el" href="dmxcommon_8h_source.html">dmxcommon.h</a>&quot;</code><br/>
     49 <code>#include &quot;<a class="el" href="dmxconsole_8h_source.html">dmxconsole.h</a>&quot;</code><br/>
     50 <code>#include &quot;<a class="el" href="dmxprop_8h_source.html">dmxprop.h</a>&quot;</code><br/>
     51 <code>#include &quot;<a class="el" href="dmxsync_8h_source.html">dmxsync.h</a>&quot;</code><br/>
     52 <code>#include &quot;<a class="el" href="dmxmap_8h_source.html">dmxmap.h</a>&quot;</code><br/>
     53 <code>#include &quot;inputstr.h&quot;</code><br/>
     54 <code>#include &quot;input.h&quot;</code><br/>
     55 <code>#include &lt;X11/keysym.h&gt;</code><br/>
     56 <code>#include &quot;mipointer.h&quot;</code><br/>
     57 <code>#include &quot;scrnintstr.h&quot;</code><br/>
     58 <code>#include &lt;unistd.h&gt;</code><br/>
     59 </div><table class="memberdecls">
     60 <tr><td colspan="2"><h2><a name="nested-classes"></a>
     61 Data Structures</h2></td></tr>
     62 <tr><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__myPrivate.html">_myPrivate</a></td></tr>
     63 <tr><td colspan="2"><h2><a name="define-members"></a>
     64 Defines</h2></td></tr>
     65 <tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#ac478cb19dda771f00d3b753001a51e09">DMX_STATE_DEBUG</a>&#160;&#160;&#160;0</td></tr>
     66 <tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#adf6865b0bc7ad370c94e3b8682262c13">DMXDBG0</a>(f)</td></tr>
     67 <tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a14111ac8f43949172b152e50dc720aba">NAME</a>(x)&#160;&#160;&#160;priv-&gt;xkb-&gt;names-&gt;x ? XGetAtomName(priv-&gt;<a class="el" href="dmxprop_8c.html#ac49dfab9200d48f835ce64819c4fc878">display</a>,priv-&gt;xkb-&gt;names-&gt;x) : NULL</td></tr>
     68 <tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#ad9bd99dabcb14e9efe85df040d63c4b3">ADD</a>(type)</td></tr>
     69 <tr><td colspan="2"><h2><a name="typedef-members"></a>
     70 Typedefs</h2></td></tr>
     71 <tr><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct__myPrivate.html">_myPrivate</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a25692217bddf2b6c089525b325afccf1">myPrivate</a></td></tr>
     72 <tr><td colspan="2"><h2><a name="func-members"></a>
     73 Functions</h2></td></tr>
     74 <tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a5fe4b4fef83f0ca1aba8cabf76ebccf2">dmxCommonKbdSetAR</a> (Display *<a class="el" href="dmxprop_8c.html#ac49dfab9200d48f835ce64819c4fc878">display</a>, unsigned char *old, unsigned char *new)</td></tr>
     75 <tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a77cfda7cbd3e83a0869b26b782d2b6d4">dmxCommonKbdSetLeds</a> (Display *<a class="el" href="dmxprop_8c.html#ac49dfab9200d48f835ce64819c4fc878">display</a>, unsigned long new)</td></tr>
     76 <tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a029097ed04b236c945e3715910250680">dmxCommonKbdSetCtrl</a> (Display *<a class="el" href="dmxprop_8c.html#ac49dfab9200d48f835ce64819c4fc878">display</a>, KeybdCtrl *old, KeybdCtrl *new)</td></tr>
     77 <tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a71374978838ea5232f72055f152a894e">dmxCommonMouSetCtrl</a> (Display *<a class="el" href="dmxprop_8c.html#ac49dfab9200d48f835ce64819c4fc878">display</a>, PtrCtrl *old, PtrCtrl *new)</td></tr>
     78 <tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a399f0ec4a6e5d0bcd3d07f24b2a6ac9e">dmxCommonKbdCtrl</a> (DevicePtr pDev, KeybdCtrl *ctrl)</td></tr>
     79 <tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a11aa027975061ee6f3e684ee66f0f18c">dmxCommonMouCtrl</a> (DevicePtr pDev, PtrCtrl *ctrl)</td></tr>
     80 <tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#aa069076ebf89f8b89668cffafb731cfe">dmxCommonKbdBell</a> (DevicePtr pDev, int percent, int volume, int pitch, int duration)</td></tr>
     81 <tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a83410e3987567bd35fd146b193a21ed9">dmxCommonKbdGetMap</a> (DevicePtr pDev, KeySymsPtr pKeySyms, CARD8 *pModMap)</td></tr>
     82 <tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a86b1c983a556770efdd1a19e8be44534">dmxCommonKbdGetInfo</a> (DevicePtr pDev, <a class="el" href="struct__DMXLocalInitInfo.html">DMXLocalInitInfoPtr</a> info)</td></tr>
     83 <tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a60cd36c3430ead2858986fe5f93165c1">dmxCommonKbdOn</a> (DevicePtr pDev)</td></tr>
     84 <tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a9ddcdd8a91205b9b0e23022f246190a0">dmxCommonKbdOff</a> (DevicePtr pDev)</td></tr>
     85 <tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a4b8e72433e206d48e6fb471e933800ad">dmxCommonOthOn</a> (DevicePtr pDev)</td></tr>
     86 <tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a45f87ba7a0b02587dd2d1b4cdd3480c6">dmxCommonOthOff</a> (DevicePtr pDev)</td></tr>
     87 <tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a67f944a345e0ba88ac996056914d191c">dmxCommonOthGetInfo</a> (DevicePtr pDev, <a class="el" href="struct__DMXLocalInitInfo.html">DMXLocalInitInfoPtr</a> info)</td></tr>
     88 <tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a9ce209ad340f84644115a165eadfa540">dmxCommonMouGetMap</a> (DevicePtr pDev, unsigned char *<a class="el" href="usb-keyboard_8c.html#a2187a19657fb0b38c67dbafc7dd74c4d">map</a>, int *nButtons)</td></tr>
     89 <tr><td class="memItemLeft" align="right" valign="top">static void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a6e3adb2e48d7cc7a098c542c693d66d0">dmxCommonXSelect</a> (<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *dmxScreen, void *closure)</td></tr>
     90 <tr><td class="memItemLeft" align="right" valign="top">static void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a82d9ce21ede8d533adde28ce8dbabdf7">dmxCommonAddEnabledDevice</a> (<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *dmxScreen, void *closure)</td></tr>
     91 <tr><td class="memItemLeft" align="right" valign="top">static void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#adb5e0faaefc43851e4ebcd01bd9c10ec">dmxCommonRemoveEnabledDevice</a> (<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *dmxScreen, void *closure)</td></tr>
     92 <tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a8ba0ee4f9f09bc9089d480d1f5467cd8">dmxCommonMouOn</a> (DevicePtr pDev)</td></tr>
     93 <tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#acfeaccbc1f2f5be028b3ee8c0f31da89">dmxCommonMouOff</a> (DevicePtr pDev)</td></tr>
     94 <tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a907580b7be71d9be0b771d32210f3cad">dmxFindPointerScreen</a> (int x, int y)</td></tr>
     95 <tr><td class="memItemLeft" align="right" valign="top">pointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a0e7301a2783357ff391172acab00d48a">dmxCommonCopyPrivate</a> (DeviceIntPtr pDevice)</td></tr>
     96 <tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#a14295660e17d34955693cef6654d7bb6">dmxCommonSaveState</a> (pointer private)</td></tr>
     97 <tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxcommon_8c.html#aca953b7500d93577441828156674c64e">dmxCommonRestoreState</a> (pointer private)</td></tr>
     98 </table>
     99 <hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
    100 <div class="textblock"><p>This file implements common routines used by the backend and console input devices. </p>
    101 </div><hr/><h2>Define Documentation</h2>
    102 <a class="anchor" id="ad9bd99dabcb14e9efe85df040d63c4b3"></a><!-- doxytag: member="dmxcommon.c::ADD" ref="ad9bd99dabcb14e9efe85df040d63c4b3" args="(type)" -->
    103 <div class="memitem">
    104 <div class="memproto">
    105       <table class="memname">
    106         <tr>
    107           <td class="memname">#define ADD</td>
    108           <td>(</td>
    109           <td class="paramtype">&#160;</td>
    110           <td class="paramname">type</td><td>)</td>
    111           <td></td>
    112         </tr>
    113       </table>
    114 </div>
    115 <div class="memdoc">
    116 <b>Value:</b><div class="fragment"><pre class="fragment"><span class="keywordflow">if</span> (count &lt; <a class="code" href="dmxinputinit_8h.html#ae754d74afaf08d6e9b46b3bc7581623e">DMX_MAX_XINPUT_EVENT_TYPES</a>) {                                \
    117         type(priv-&gt;xi, event_type[count], event_list[count]);                \
    118         <span class="keywordflow">if</span> (event_type[count]) {                                             \
    119             <a class="code" href="dmxmap_8c.html#ada5a28e0c746708e0f5c45e9e193d907">dmxMapInsert</a>(dmxLocal, event_type[count], XI_##type);            \
    120             ++count;                                                         \
    121         }                                                                    \
    122     } <span class="keywordflow">else</span> {                                                                 \
    123         <a class="code" href="dmxlog_8c.html#ab6259430a57c3cffdfc9f6259df0ad23">dmxLog</a>(<a class="code" href="dmxlog_8h.html#aeed612a5c0be196e23bd6b71b76b917fae81ae2a11fb7ab8eea902f609574210a">dmxWarning</a>, <span class="stringliteral">&quot;More than %d event types for %s\n&quot;</span>,              \
    124                <a class="code" href="dmxinputinit_8h.html#ae754d74afaf08d6e9b46b3bc7581623e">DMX_MAX_XINPUT_EVENT_TYPES</a>, dmxInput-&gt;name);                  \
    125     }
    126 </pre></div>
    127 <p>Referenced by <a class="el" href="dmxcommon_8h.html#a4b8e72433e206d48e6fb471e933800ad">dmxCommonOthOn()</a>.</p>
    128 
    129 </div>
    130 </div>
    131 <a class="anchor" id="ac478cb19dda771f00d3b753001a51e09"></a><!-- doxytag: member="dmxcommon.c::DMX_STATE_DEBUG" ref="ac478cb19dda771f00d3b753001a51e09" args="" -->
    132 <div class="memitem">
    133 <div class="memproto">
    134       <table class="memname">
    135         <tr>
    136           <td class="memname">#define DMX_STATE_DEBUG&#160;&#160;&#160;0</td>
    137         </tr>
    138       </table>
    139 </div>
    140 <div class="memdoc">
    141 
    142 </div>
    143 </div>
    144 <a class="anchor" id="adf6865b0bc7ad370c94e3b8682262c13"></a><!-- doxytag: member="dmxcommon.c::DMXDBG0" ref="adf6865b0bc7ad370c94e3b8682262c13" args="(f)" -->
    145 <div class="memitem">
    146 <div class="memproto">
    147       <table class="memname">
    148         <tr>
    149           <td class="memname">#define DMXDBG0</td>
    150           <td>(</td>
    151           <td class="paramtype">&#160;</td>
    152           <td class="paramname">f</td><td>)</td>
    153           <td></td>
    154         </tr>
    155       </table>
    156 </div>
    157 <div class="memdoc">
    158 
    159 <p>Referenced by <a class="el" href="dmxcommon_8h.html#aca953b7500d93577441828156674c64e">dmxCommonRestoreState()</a>, and <a class="el" href="dmxcommon_8h.html#a14295660e17d34955693cef6654d7bb6">dmxCommonSaveState()</a>.</p>
    160 
    161 </div>
    162 </div>
    163 <a class="anchor" id="a14111ac8f43949172b152e50dc720aba"></a><!-- doxytag: member="dmxcommon.c::NAME" ref="a14111ac8f43949172b152e50dc720aba" args="(x)" -->
    164 <div class="memitem">
    165 <div class="memproto">
    166       <table class="memname">
    167         <tr>
    168           <td class="memname">#define NAME</td>
    169           <td>(</td>
    170           <td class="paramtype">&#160;</td>
    171           <td class="paramname">x</td><td>)</td>
    172           <td>&#160;&#160;&#160;priv-&gt;xkb-&gt;names-&gt;x ? XGetAtomName(priv-&gt;<a class="el" href="dmxprop_8c.html#ac49dfab9200d48f835ce64819c4fc878">display</a>,priv-&gt;xkb-&gt;names-&gt;x) : NULL</td>
    173         </tr>
    174       </table>
    175 </div>
    176 <div class="memdoc">
    177 
    178 <p>Referenced by <a class="el" href="dmxcommon_8h.html#a86b1c983a556770efdd1a19e8be44534">dmxCommonKbdGetInfo()</a>.</p>
    179 
    180 </div>
    181 </div>
    182 <hr/><h2>Typedef Documentation</h2>
    183 <a class="anchor" id="a25692217bddf2b6c089525b325afccf1"></a><!-- doxytag: member="dmxcommon.c::myPrivate" ref="a25692217bddf2b6c089525b325afccf1" args="" -->
    184 <div class="memitem">
    185 <div class="memproto">
    186       <table class="memname">
    187         <tr>
    188           <td class="memname">typedef struct <a class="el" href="struct__myPrivate.html">_myPrivate</a>  <a class="el" href="struct__myPrivate.html">myPrivate</a></td>
    189         </tr>
    190       </table>
    191 </div>
    192 <div class="memdoc">
    193 <p>Each device has a private area that is visible only from inside the driver code. </p>
    194 
    195 </div>
    196 </div>
    197 <hr/><h2>Function Documentation</h2>
    198 <a class="anchor" id="a82d9ce21ede8d533adde28ce8dbabdf7"></a><!-- doxytag: member="dmxcommon.c::dmxCommonAddEnabledDevice" ref="a82d9ce21ede8d533adde28ce8dbabdf7" args="(DMXScreenInfo *dmxScreen, void *closure)" -->
    199 <div class="memitem">
    200 <div class="memproto">
    201       <table class="memname">
    202         <tr>
    203           <td class="memname">static void* dmxCommonAddEnabledDevice </td>
    204           <td>(</td>
    205           <td class="paramtype"><a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *&#160;</td>
    206           <td class="paramname"><em>dmxScreen</em>, </td>
    207         </tr>
    208         <tr>
    209           <td class="paramkey"></td>
    210           <td></td>
    211           <td class="paramtype">void *&#160;</td>
    212           <td class="paramname"><em>closure</em>&#160;</td>
    213         </tr>
    214         <tr>
    215           <td></td>
    216           <td>)</td>
    217           <td></td><td><code> [static]</code></td>
    218         </tr>
    219       </table>
    220 </div>
    221 <div class="memdoc">
    222 
    223 <p>References <a class="el" href="struct__DMXScreenInfo.html#a756ade62a55a52f163a42db6de54c244">_DMXScreenInfo::beDisplay</a>.</p>
    224 
    225 <p>Referenced by <a class="el" href="dmxcommon_8h.html#a8ba0ee4f9f09bc9089d480d1f5467cd8">dmxCommonMouOn()</a>.</p>
    226 
    227 </div>
    228 </div>
    229 <a class="anchor" id="a0e7301a2783357ff391172acab00d48a"></a><!-- doxytag: member="dmxcommon.c::dmxCommonCopyPrivate" ref="a0e7301a2783357ff391172acab00d48a" args="(DeviceIntPtr pDevice)" -->
    230 <div class="memitem">
    231 <div class="memproto">
    232       <table class="memname">
    233         <tr>
    234           <td class="memname">pointer dmxCommonCopyPrivate </td>
    235           <td>(</td>
    236           <td class="paramtype">DeviceIntPtr&#160;</td>
    237           <td class="paramname"><em>pDevice</em></td><td>)</td>
    238           <td></td>
    239         </tr>
    240       </table>
    241 </div>
    242 <div class="memdoc">
    243 <p>Returns a pointer to the private area for the device that comes just prior to <em>pDevice</em> in the current <em>dmxInput</em> device list. This is used as the private area for the current device in some situations (e.g., when a keyboard and mouse form a pair that should share the same private area). If the requested private area cannot be located, then NULL is returned. </p>
    244 
    245 <p>References <a class="el" href="struct__DMXInputInfo.html#a70e88af10d1862603d4dbc65ba936d16">_DMXInputInfo::devs</a>, <a class="el" href="dmxinit_8c.html#a067017d9e67716c251357e9edf917e59">dmxInputs</a>, <a class="el" href="dmxcommon_8h.html#ae60813d58a79b6dae5b98321fd7e1866">GETDMXLOCALFROMPDEVICE</a>, <a class="el" href="struct__DMXInputInfo.html#a25d88463a7385bc47bed58bb4a662f6d">_DMXInputInfo::numDevs</a>, and <a class="el" href="struct__DMXLocalInputInfo.html#a25754def501a2713eb09d4ac2401d624">_DMXLocalInputInfo::private</a>.</p>
    246 
    247 </div>
    248 </div>
    249 <a class="anchor" id="aa069076ebf89f8b89668cffafb731cfe"></a><!-- doxytag: member="dmxcommon.c::dmxCommonKbdBell" ref="aa069076ebf89f8b89668cffafb731cfe" args="(DevicePtr pDev, int percent, int volume, int pitch, int duration)" -->
    250 <div class="memitem">
    251 <div class="memproto">
    252       <table class="memname">
    253         <tr>
    254           <td class="memname">void dmxCommonKbdBell </td>
    255           <td>(</td>
    256           <td class="paramtype">DevicePtr&#160;</td>
    257           <td class="paramname"><em>pDev</em>, </td>
    258         </tr>
    259         <tr>
    260           <td class="paramkey"></td>
    261           <td></td>
    262           <td class="paramtype">int&#160;</td>
    263           <td class="paramname"><em>percent</em>, </td>
    264         </tr>
    265         <tr>
    266           <td class="paramkey"></td>
    267           <td></td>
    268           <td class="paramtype">int&#160;</td>
    269           <td class="paramname"><em>volume</em>, </td>
    270         </tr>
    271         <tr>
    272           <td class="paramkey"></td>
    273           <td></td>
    274           <td class="paramtype">int&#160;</td>
    275           <td class="paramname"><em>pitch</em>, </td>
    276         </tr>
    277         <tr>
    278           <td class="paramkey"></td>
    279           <td></td>
    280           <td class="paramtype">int&#160;</td>
    281           <td class="paramname"><em>duration</em>&#160;</td>
    282         </tr>
    283         <tr>
    284           <td></td>
    285           <td>)</td>
    286           <td></td><td></td>
    287         </tr>
    288       </table>
    289 </div>
    290 <div class="memdoc">
    291 <p>Sound they keyboard bell. </p>
    292 
    293 <p>References <a class="el" href="dmxcommon_8h.html#a162b4980b050465ca21228eb41f207a2">GETPRIVFROMPDEV</a>.</p>
    294 
    295 </div>
    296 </div>
    297 <a class="anchor" id="a399f0ec4a6e5d0bcd3d07f24b2a6ac9e"></a><!-- doxytag: member="dmxcommon.c::dmxCommonKbdCtrl" ref="a399f0ec4a6e5d0bcd3d07f24b2a6ac9e" args="(DevicePtr pDev, KeybdCtrl *ctrl)" -->
    298 <div class="memitem">
    299 <div class="memproto">
    300       <table class="memname">
    301         <tr>
    302           <td class="memname">void dmxCommonKbdCtrl </td>
    303           <td>(</td>
    304           <td class="paramtype">DevicePtr&#160;</td>
    305           <td class="paramname"><em>pDev</em>, </td>
    306         </tr>
    307         <tr>
    308           <td class="paramkey"></td>
    309           <td></td>
    310           <td class="paramtype">KeybdCtrl *&#160;</td>
    311           <td class="paramname"><em>ctrl</em>&#160;</td>
    312         </tr>
    313         <tr>
    314           <td></td>
    315           <td>)</td>
    316           <td></td><td></td>
    317         </tr>
    318       </table>
    319 </div>
    320 <div class="memdoc">
    321 <p>Update the keyboard control. </p>
    322 
    323 <p>References <a class="el" href="dmxcommon_8c.html#a029097ed04b236c945e3715910250680">dmxCommonKbdSetCtrl()</a>, <a class="el" href="dmxcommon_8c.html#a14295660e17d34955693cef6654d7bb6">dmxCommonSaveState()</a>, and <a class="el" href="dmxcommon_8h.html#a162b4980b050465ca21228eb41f207a2">GETPRIVFROMPDEV</a>.</p>
    324 
    325 </div>
    326 </div>
    327 <a class="anchor" id="a86b1c983a556770efdd1a19e8be44534"></a><!-- doxytag: member="dmxcommon.c::dmxCommonKbdGetInfo" ref="a86b1c983a556770efdd1a19e8be44534" args="(DevicePtr pDev, DMXLocalInitInfoPtr info)" -->
    328 <div class="memitem">
    329 <div class="memproto">
    330       <table class="memname">
    331         <tr>
    332           <td class="memname">void dmxCommonKbdGetInfo </td>
    333           <td>(</td>
    334           <td class="paramtype">DevicePtr&#160;</td>
    335           <td class="paramname"><em>pDev</em>, </td>
    336         </tr>
    337         <tr>
    338           <td class="paramkey"></td>
    339           <td></td>
    340           <td class="paramtype"><a class="el" href="struct__DMXLocalInitInfo.html">DMXLocalInitInfoPtr</a>&#160;</td>
    341           <td class="paramname"><em>info</em>&#160;</td>
    342         </tr>
    343         <tr>
    344           <td></td>
    345           <td>)</td>
    346           <td></td><td></td>
    347         </tr>
    348       </table>
    349 </div>
    350 <div class="memdoc">
    351 <p>Fill in the XKEYBOARD parts of the <em>info</em> structure for the specified <em>pDev</em>. </p>
    352 
    353 <p>References <a class="el" href="dmxcommon_8c.html#aca953b7500d93577441828156674c64e">dmxCommonRestoreState()</a>, <a class="el" href="dmxcommon_8c.html#a14295660e17d34955693cef6654d7bb6">dmxCommonSaveState()</a>, <a class="el" href="dmxlog_8c.html#ac8d8dc0ec631bab1d1d95815c238d574">dmxLogInput()</a>, <a class="el" href="struct__DMXLocalInitInfo.html#a20463b784b2d33db44b377cbbabf8b7b">_DMXLocalInitInfo::freenames</a>, <a class="el" href="dmxcommon_8h.html#a2f522c463d79a458d27ac9e1f6b2e30f">GETDMXINPUTFROMPRIV</a>, <a class="el" href="dmxcommon_8h.html#a162b4980b050465ca21228eb41f207a2">GETPRIVFROMPDEV</a>, <a class="el" href="dmxcommon_8c.html#a14111ac8f43949172b152e50dc720aba">NAME</a>, and <a class="el" href="struct__DMXLocalInitInfo.html#a92de3dbbb88844f90aa431f93e16ee05">_DMXLocalInitInfo::names</a>.</p>
    354 
    355 <p>Referenced by <a class="el" href="dmxbackend_8h.html#a1c628b807f62aeeeb2093ad63941eff1">dmxBackendKbdGetInfo()</a>, and <a class="el" href="dmxconsole_8h.html#a710d0bdd587deeb35b430ba48ac209f1">dmxConsoleKbdGetInfo()</a>.</p>
    356 
    357 </div>
    358 </div>
    359 <a class="anchor" id="a83410e3987567bd35fd146b193a21ed9"></a><!-- doxytag: member="dmxcommon.c::dmxCommonKbdGetMap" ref="a83410e3987567bd35fd146b193a21ed9" args="(DevicePtr pDev, KeySymsPtr pKeySyms, CARD8 *pModMap)" -->
    360 <div class="memitem">
    361 <div class="memproto">
    362       <table class="memname">
    363         <tr>
    364           <td class="memname">void dmxCommonKbdGetMap </td>
    365           <td>(</td>
    366           <td class="paramtype">DevicePtr&#160;</td>
    367           <td class="paramname"><em>pDev</em>, </td>
    368         </tr>
    369         <tr>
    370           <td class="paramkey"></td>
    371           <td></td>
    372           <td class="paramtype">KeySymsPtr&#160;</td>
    373           <td class="paramname"><em>pKeySyms</em>, </td>
    374         </tr>
    375         <tr>
    376           <td class="paramkey"></td>
    377           <td></td>
    378           <td class="paramtype">CARD8 *&#160;</td>
    379           <td class="paramname"><em>pModMap</em>&#160;</td>
    380         </tr>
    381         <tr>
    382           <td></td>
    383           <td>)</td>
    384           <td></td><td></td>
    385         </tr>
    386       </table>
    387 </div>
    388 <div class="memdoc">
    389 <p>Get the keyboard mapping. </p>
    390 
    391 <p>References <a class="el" href="dmxcommon_8h.html#a162b4980b050465ca21228eb41f207a2">GETPRIVFROMPDEV</a>.</p>
    392 
    393 <p>Referenced by <a class="el" href="dmxbackend_8h.html#a1c628b807f62aeeeb2093ad63941eff1">dmxBackendKbdGetInfo()</a>, and <a class="el" href="dmxconsole_8h.html#a710d0bdd587deeb35b430ba48ac209f1">dmxConsoleKbdGetInfo()</a>.</p>
    394 
    395 </div>
    396 </div>
    397 <a class="anchor" id="a9ddcdd8a91205b9b0e23022f246190a0"></a><!-- doxytag: member="dmxcommon.c::dmxCommonKbdOff" ref="a9ddcdd8a91205b9b0e23022f246190a0" args="(DevicePtr pDev)" -->
    398 <div class="memitem">
    399 <div class="memproto">
    400       <table class="memname">
    401         <tr>
    402           <td class="memname">void dmxCommonKbdOff </td>
    403           <td>(</td>
    404           <td class="paramtype">DevicePtr&#160;</td>
    405           <td class="paramname"><em>pDev</em></td><td>)</td>
    406           <td></td>
    407         </tr>
    408       </table>
    409 </div>
    410 <div class="memdoc">
    411 <p>Turn <em>pDev</em> off. </p>
    412 
    413 <p>References <a class="el" href="dmxcommon_8h.html#a8ed45b47d9c28c37195b3d10df2319a1">DMX_KEYBOARD_EVENT_MASK</a>, <a class="el" href="dmxcommon_8c.html#aca953b7500d93577441828156674c64e">dmxCommonRestoreState()</a>, and <a class="el" href="dmxcommon_8h.html#a162b4980b050465ca21228eb41f207a2">GETPRIVFROMPDEV</a>.</p>
    414 
    415 </div>
    416 </div>
    417 <a class="anchor" id="a60cd36c3430ead2858986fe5f93165c1"></a><!-- doxytag: member="dmxcommon.c::dmxCommonKbdOn" ref="a60cd36c3430ead2858986fe5f93165c1" args="(DevicePtr pDev)" -->
    418 <div class="memitem">
    419 <div class="memproto">
    420       <table class="memname">
    421         <tr>
    422           <td class="memname">int dmxCommonKbdOn </td>
    423           <td>(</td>
    424           <td class="paramtype">DevicePtr&#160;</td>
    425           <td class="paramname"><em>pDev</em></td><td>)</td>
    426           <td></td>
    427         </tr>
    428       </table>
    429 </div>
    430 <div class="memdoc">
    431 <p>Turn <em>pDev</em> on (i.e., take input from <em>pDev</em>). </p>
    432 
    433 <p>References <a class="el" href="dmxcommon_8h.html#a8ed45b47d9c28c37195b3d10df2319a1">DMX_KEYBOARD_EVENT_MASK</a>, <a class="el" href="dmxcommon_8c.html#a14295660e17d34955693cef6654d7bb6">dmxCommonSaveState()</a>, and <a class="el" href="dmxcommon_8h.html#a162b4980b050465ca21228eb41f207a2">GETPRIVFROMPDEV</a>.</p>
    434 
    435 </div>
    436 </div>
    437 <a class="anchor" id="a5fe4b4fef83f0ca1aba8cabf76ebccf2"></a><!-- doxytag: member="dmxcommon.c::dmxCommonKbdSetAR" ref="a5fe4b4fef83f0ca1aba8cabf76ebccf2" args="(Display *display, unsigned char *old, unsigned char *new)" -->
    438 <div class="memitem">
    439 <div class="memproto">
    440       <table class="memname">
    441         <tr>
    442           <td class="memname">static void dmxCommonKbdSetAR </td>
    443           <td>(</td>
    444           <td class="paramtype">Display *&#160;</td>
    445           <td class="paramname"><em>display</em>, </td>
    446         </tr>
    447         <tr>
    448           <td class="paramkey"></td>
    449           <td></td>
    450           <td class="paramtype">unsigned char *&#160;</td>
    451           <td class="paramname"><em>old</em>, </td>
    452         </tr>
    453         <tr>
    454           <td class="paramkey"></td>
    455           <td></td>
    456           <td class="paramtype">unsigned char *&#160;</td>
    457           <td class="paramname"><em>new</em>&#160;</td>
    458         </tr>
    459         <tr>
    460           <td></td>
    461           <td>)</td>
    462           <td></td><td><code> [static]</code></td>
    463         </tr>
    464       </table>
    465 </div>
    466 <div class="memdoc">
    467 
    468 <p>Referenced by <a class="el" href="dmxcommon_8c.html#a029097ed04b236c945e3715910250680">dmxCommonKbdSetCtrl()</a>.</p>
    469 
    470 </div>
    471 </div>
    472 <a class="anchor" id="a029097ed04b236c945e3715910250680"></a><!-- doxytag: member="dmxcommon.c::dmxCommonKbdSetCtrl" ref="a029097ed04b236c945e3715910250680" args="(Display *display, KeybdCtrl *old, KeybdCtrl *new)" -->
    473 <div class="memitem">
    474 <div class="memproto">
    475       <table class="memname">
    476         <tr>
    477           <td class="memname">static void dmxCommonKbdSetCtrl </td>
    478           <td>(</td>
    479           <td class="paramtype">Display *&#160;</td>
    480           <td class="paramname"><em>display</em>, </td>
    481         </tr>
    482         <tr>
    483           <td class="paramkey"></td>
    484           <td></td>
    485           <td class="paramtype">KeybdCtrl *&#160;</td>
    486           <td class="paramname"><em>old</em>, </td>
    487         </tr>
    488         <tr>
    489           <td class="paramkey"></td>
    490           <td></td>
    491           <td class="paramtype">KeybdCtrl *&#160;</td>
    492           <td class="paramname"><em>new</em>&#160;</td>
    493         </tr>
    494         <tr>
    495           <td></td>
    496           <td>)</td>
    497           <td></td><td><code> [static]</code></td>
    498         </tr>
    499       </table>
    500 </div>
    501 <div class="memdoc">
    502 
    503 <p>References <a class="el" href="dmxcommon_8c.html#a5fe4b4fef83f0ca1aba8cabf76ebccf2">dmxCommonKbdSetAR()</a>, and <a class="el" href="dmxcommon_8c.html#a77cfda7cbd3e83a0869b26b782d2b6d4">dmxCommonKbdSetLeds()</a>.</p>
    504 
    505 <p>Referenced by <a class="el" href="dmxcommon_8h.html#a399f0ec4a6e5d0bcd3d07f24b2a6ac9e">dmxCommonKbdCtrl()</a>, <a class="el" href="dmxcommon_8h.html#aca953b7500d93577441828156674c64e">dmxCommonRestoreState()</a>, and <a class="el" href="dmxcommon_8h.html#a14295660e17d34955693cef6654d7bb6">dmxCommonSaveState()</a>.</p>
    506 
    507 </div>
    508 </div>
    509 <a class="anchor" id="a77cfda7cbd3e83a0869b26b782d2b6d4"></a><!-- doxytag: member="dmxcommon.c::dmxCommonKbdSetLeds" ref="a77cfda7cbd3e83a0869b26b782d2b6d4" args="(Display *display, unsigned long new)" -->
    510 <div class="memitem">
    511 <div class="memproto">
    512       <table class="memname">
    513         <tr>
    514           <td class="memname">static void dmxCommonKbdSetLeds </td>
    515           <td>(</td>
    516           <td class="paramtype">Display *&#160;</td>
    517           <td class="paramname"><em>display</em>, </td>
    518         </tr>
    519         <tr>
    520           <td class="paramkey"></td>
    521           <td></td>
    522           <td class="paramtype">unsigned long&#160;</td>
    523           <td class="paramname"><em>new</em>&#160;</td>
    524         </tr>
    525         <tr>
    526           <td></td>
    527           <td>)</td>
    528           <td></td><td><code> [static]</code></td>
    529         </tr>
    530       </table>
    531 </div>
    532 <div class="memdoc">
    533 
    534 <p>Referenced by <a class="el" href="dmxcommon_8c.html#a029097ed04b236c945e3715910250680">dmxCommonKbdSetCtrl()</a>.</p>
    535 
    536 </div>
    537 </div>
    538 <a class="anchor" id="a11aa027975061ee6f3e684ee66f0f18c"></a><!-- doxytag: member="dmxcommon.c::dmxCommonMouCtrl" ref="a11aa027975061ee6f3e684ee66f0f18c" args="(DevicePtr pDev, PtrCtrl *ctrl)" -->
    539 <div class="memitem">
    540 <div class="memproto">
    541       <table class="memname">
    542         <tr>
    543           <td class="memname">void dmxCommonMouCtrl </td>
    544           <td>(</td>
    545           <td class="paramtype">DevicePtr&#160;</td>
    546           <td class="paramname"><em>pDev</em>, </td>
    547         </tr>
    548         <tr>
    549           <td class="paramkey"></td>
    550           <td></td>
    551           <td class="paramtype">PtrCtrl *&#160;</td>
    552           <td class="paramname"><em>ctrl</em>&#160;</td>
    553         </tr>
    554         <tr>
    555           <td></td>
    556           <td>)</td>
    557           <td></td><td></td>
    558         </tr>
    559       </table>
    560 </div>
    561 <div class="memdoc">
    562 <p>Update the mouse control. </p>
    563 
    564 <p>References <a class="el" href="dmxcommon_8c.html#a71374978838ea5232f72055f152a894e">dmxCommonMouSetCtrl()</a>, and <a class="el" href="dmxcommon_8h.html#a162b4980b050465ca21228eb41f207a2">GETPRIVFROMPDEV</a>.</p>
    565 
    566 </div>
    567 </div>
    568 <a class="anchor" id="a9ce209ad340f84644115a165eadfa540"></a><!-- doxytag: member="dmxcommon.c::dmxCommonMouGetMap" ref="a9ce209ad340f84644115a165eadfa540" args="(DevicePtr pDev, unsigned char *map, int *nButtons)" -->
    569 <div class="memitem">
    570 <div class="memproto">
    571       <table class="memname">
    572         <tr>
    573           <td class="memname">void dmxCommonMouGetMap </td>
    574           <td>(</td>
    575           <td class="paramtype">DevicePtr&#160;</td>
    576           <td class="paramname"><em>pDev</em>, </td>
    577         </tr>
    578         <tr>
    579           <td class="paramkey"></td>
    580           <td></td>
    581           <td class="paramtype">unsigned char *&#160;</td>
    582           <td class="paramname"><em>map</em>, </td>
    583         </tr>
    584         <tr>
    585           <td class="paramkey"></td>
    586           <td></td>
    587           <td class="paramtype">int *&#160;</td>
    588           <td class="paramname"><em>nButtons</em>&#160;</td>
    589         </tr>
    590         <tr>
    591           <td></td>
    592           <td>)</td>
    593           <td></td><td></td>
    594         </tr>
    595       </table>
    596 </div>
    597 <div class="memdoc">
    598 <p>Obtain the mouse button mapping. </p>
    599 
    600 <p>References <a class="el" href="dmxinputinit_8h.html#a612274ec201ce93ff486a18bf84225ec">DMX_MAX_BUTTONS</a>, and <a class="el" href="dmxcommon_8h.html#a162b4980b050465ca21228eb41f207a2">GETPRIVFROMPDEV</a>.</p>
    601 
    602 <p>Referenced by <a class="el" href="dmxbackend_8h.html#a1afb0902ffb9019c943b0c4db6315209">dmxBackendMouGetInfo()</a>, and <a class="el" href="dmxconsole_8h.html#a3d639d0e2a2c3c520f3544f15910ab01">dmxConsoleMouGetInfo()</a>.</p>
    603 
    604 </div>
    605 </div>
    606 <a class="anchor" id="acfeaccbc1f2f5be028b3ee8c0f31da89"></a><!-- doxytag: member="dmxcommon.c::dmxCommonMouOff" ref="acfeaccbc1f2f5be028b3ee8c0f31da89" args="(DevicePtr pDev)" -->
    607 <div class="memitem">
    608 <div class="memproto">
    609       <table class="memname">
    610         <tr>
    611           <td class="memname">void dmxCommonMouOff </td>
    612           <td>(</td>
    613           <td class="paramtype">DevicePtr&#160;</td>
    614           <td class="paramname"><em>pDev</em></td><td>)</td>
    615           <td></td>
    616         </tr>
    617       </table>
    618 </div>
    619 <div class="memdoc">
    620 <p>Turn <em>pDev</em> off. </p>
    621 
    622 <p>References <a class="el" href="dmxcommon_8h.html#aab5b14e925716fa97237594ee0b07d01">DMX_POINTER_EVENT_MASK</a>, <a class="el" href="dmxcommon_8c.html#adb5e0faaefc43851e4ebcd01bd9c10ec">dmxCommonRemoveEnabledDevice()</a>, <a class="el" href="dmxcommon_8c.html#a6e3adb2e48d7cc7a098c542c693d66d0">dmxCommonXSelect()</a>, <a class="el" href="dmxprop_8c.html#a1353800f90c3a1f46d453caa71a41ab6">dmxPropertyIterate()</a>, <a class="el" href="dmxcommon_8h.html#a2f522c463d79a458d27ac9e1f6b2e30f">GETDMXINPUTFROMPRIV</a>, and <a class="el" href="dmxcommon_8h.html#a162b4980b050465ca21228eb41f207a2">GETPRIVFROMPDEV</a>.</p>
    623 
    624 </div>
    625 </div>
    626 <a class="anchor" id="a8ba0ee4f9f09bc9089d480d1f5467cd8"></a><!-- doxytag: member="dmxcommon.c::dmxCommonMouOn" ref="a8ba0ee4f9f09bc9089d480d1f5467cd8" args="(DevicePtr pDev)" -->
    627 <div class="memitem">
    628 <div class="memproto">
    629       <table class="memname">
    630         <tr>
    631           <td class="memname">int dmxCommonMouOn </td>
    632           <td>(</td>
    633           <td class="paramtype">DevicePtr&#160;</td>
    634           <td class="paramname"><em>pDev</em></td><td>)</td>
    635           <td></td>
    636         </tr>
    637       </table>
    638 </div>
    639 <div class="memdoc">
    640 <p>Turn <em>pDev</em> on (i.e., take input from <em>pDev</em>). </p>
    641 
    642 <p>References <a class="el" href="dmxcommon_8h.html#aab5b14e925716fa97237594ee0b07d01">DMX_POINTER_EVENT_MASK</a>, <a class="el" href="dmxcommon_8c.html#a82d9ce21ede8d533adde28ce8dbabdf7">dmxCommonAddEnabledDevice()</a>, <a class="el" href="dmxcommon_8c.html#a6e3adb2e48d7cc7a098c542c693d66d0">dmxCommonXSelect()</a>, <a class="el" href="dmxprop_8c.html#a1353800f90c3a1f46d453caa71a41ab6">dmxPropertyIterate()</a>, <a class="el" href="dmx_8h.html#a3e242a6818df05e547a4776919e3827f">dmxScreens</a>, <a class="el" href="dmx_8h.html#a97d09d0d46e9e7df451072def499e4fe">dmxShadowFB</a>, <a class="el" href="dmxsync_8c.html#ab848762f4d2e30d31b87d3e8e10c5967">dmxSync()</a>, <a class="el" href="dmxcommon_8h.html#a2f522c463d79a458d27ac9e1f6b2e30f">GETDMXINPUTFROMPRIV</a>, and <a class="el" href="dmxcommon_8h.html#a162b4980b050465ca21228eb41f207a2">GETPRIVFROMPDEV</a>.</p>
    643 
    644 </div>
    645 </div>
    646 <a class="anchor" id="a71374978838ea5232f72055f152a894e"></a><!-- doxytag: member="dmxcommon.c::dmxCommonMouSetCtrl" ref="a71374978838ea5232f72055f152a894e" args="(Display *display, PtrCtrl *old, PtrCtrl *new)" -->
    647 <div class="memitem">
    648 <div class="memproto">
    649       <table class="memname">
    650         <tr>
    651           <td class="memname">static void dmxCommonMouSetCtrl </td>
    652           <td>(</td>
    653           <td class="paramtype">Display *&#160;</td>
    654           <td class="paramname"><em>display</em>, </td>
    655         </tr>
    656         <tr>
    657           <td class="paramkey"></td>
    658           <td></td>
    659           <td class="paramtype">PtrCtrl *&#160;</td>
    660           <td class="paramname"><em>old</em>, </td>
    661         </tr>
    662         <tr>
    663           <td class="paramkey"></td>
    664           <td></td>
    665           <td class="paramtype">PtrCtrl *&#160;</td>
    666           <td class="paramname"><em>new</em>&#160;</td>
    667         </tr>
    668         <tr>
    669           <td></td>
    670           <td>)</td>
    671           <td></td><td><code> [static]</code></td>
    672         </tr>
    673       </table>
    674 </div>
    675 <div class="memdoc">
    676 
    677 <p>Referenced by <a class="el" href="dmxcommon_8h.html#a11aa027975061ee6f3e684ee66f0f18c">dmxCommonMouCtrl()</a>.</p>
    678 
    679 </div>
    680 </div>
    681 <a class="anchor" id="a67f944a345e0ba88ac996056914d191c"></a><!-- doxytag: member="dmxcommon.c::dmxCommonOthGetInfo" ref="a67f944a345e0ba88ac996056914d191c" args="(DevicePtr pDev, DMXLocalInitInfoPtr info)" -->
    682 <div class="memitem">
    683 <div class="memproto">
    684       <table class="memname">
    685         <tr>
    686           <td class="memname">void dmxCommonOthGetInfo </td>
    687           <td>(</td>
    688           <td class="paramtype">DevicePtr&#160;</td>
    689           <td class="paramname"><em>pDev</em>, </td>
    690         </tr>
    691         <tr>
    692           <td class="paramkey"></td>
    693           <td></td>
    694           <td class="paramtype"><a class="el" href="struct__DMXLocalInitInfo.html">DMXLocalInitInfoPtr</a>&#160;</td>
    695           <td class="paramname"><em>info</em>&#160;</td>
    696         </tr>
    697         <tr>
    698           <td></td>
    699           <td>)</td>
    700           <td></td><td></td>
    701         </tr>
    702       </table>
    703 </div>
    704 <div class="memdoc">
    705 <p>Fill the <em>info</em> structure with information needed to initialize <em>pDev</em>. </p>
    706 
    707 <p>References <a class="el" href="struct__DMXLocalInitInfo.html#a58b2e6764967add7eda1c1f2f0860abc">_DMXLocalInitInfo::buttonClass</a>, <a class="el" href="dmxprop_8c.html#ac49dfab9200d48f835ce64819c4fc878">display</a>, <a class="el" href="dmxinputinit_8c.html#a50c2f7d406a3aacf3bf95b94d616527c">dmxInputExtensionErrorHandler()</a>, <a class="el" href="struct__DMXLocalInitInfo.html#a24b09c34e0cf80ec33f093e908206be4">_DMXLocalInitInfo::focusClass</a>, <a class="el" href="dmxcommon_8h.html#a2f522c463d79a458d27ac9e1f6b2e30f">GETDMXINPUTFROMPRIV</a>, <a class="el" href="dmxcommon_8h.html#a162b4980b050465ca21228eb41f207a2">GETPRIVFROMPDEV</a>, <a class="el" href="struct__DMXLocalInitInfo.html#af19caac0e20a9106b73714c9c7991ce5">_DMXLocalInitInfo::kbdFeedbackClass</a>, <a class="el" href="struct__DMXLocalInitInfo.html#a214969f0843dcb70d8f7577f58bafa48">_DMXLocalInitInfo::keyboard</a>, <a class="el" href="struct__DMXLocalInitInfo.html#a06626a99542714bbd032e9e12a8c6b55">_DMXLocalInitInfo::keyClass</a>, <a class="el" href="struct__DMXLocalInitInfo.html#a02861e7e9c24381a229567d36e7a68b7">_DMXLocalInitInfo::keySyms</a>, <a class="el" href="struct__DMXLocalInitInfo.html#a5de8a5ac80a30840cba0d9f3074289ca">_DMXLocalInitInfo::maxres</a>, <a class="el" href="struct__DMXLocalInitInfo.html#a63477e691c43eca2dbf569fb0feb74be">_DMXLocalInitInfo::maxval</a>, <a class="el" href="struct__DMXLocalInitInfo.html#a139fed62b89a92d80997166c8cfcdebf">_DMXLocalInitInfo::minres</a>, <a class="el" href="struct__DMXLocalInitInfo.html#a0c47ee21909227a1ea5d40ba473e0e25">_DMXLocalInitInfo::minval</a>, <a class="el" href="struct__DMXLocalInitInfo.html#aa7576ebc7b4f56d51da6a21fcd7b07d4">_DMXLocalInitInfo::numAbsAxes</a>, <a class="el" href="struct__DMXLocalInitInfo.html#a9264f367a1c1e252679299b00f94458c">_DMXLocalInitInfo::numButtons</a>, <a class="el" href="struct__DMXLocalInitInfo.html#a5e192625179bbed020a720e448c789aa">_DMXLocalInitInfo::numRelAxes</a>, <a class="el" href="struct__DMXLocalInitInfo.html#ae870549e09c5ae0ccc6b9d6d01b4c3b5">_DMXLocalInitInfo::proximityClass</a>, <a class="el" href="struct__DMXLocalInitInfo.html#a1c52bc6e1c328ef9e808a111dd050fc2">_DMXLocalInitInfo::ptrFeedbackClass</a>, <a class="el" href="struct__DMXLocalInitInfo.html#abb910012dc1abde90f954354f8ceb2a1">_DMXLocalInitInfo::res</a>, and <a class="el" href="struct__DMXLocalInitInfo.html#a9af277d2da1ade2138488a413e9c5ceb">_DMXLocalInitInfo::valuatorClass</a>.</p>
    708 
    709 </div>
    710 </div>
    711 <a class="anchor" id="a45f87ba7a0b02587dd2d1b4cdd3480c6"></a><!-- doxytag: member="dmxcommon.c::dmxCommonOthOff" ref="a45f87ba7a0b02587dd2d1b4cdd3480c6" args="(DevicePtr pDev)" -->
    712 <div class="memitem">
    713 <div class="memproto">
    714       <table class="memname">
    715         <tr>
    716           <td class="memname">void dmxCommonOthOff </td>
    717           <td>(</td>
    718           <td class="paramtype">DevicePtr&#160;</td>
    719           <td class="paramname"><em>pDev</em></td><td>)</td>
    720           <td></td>
    721         </tr>
    722       </table>
    723 </div>
    724 <div class="memdoc">
    725 <p>Turn <em>pDev</em> off. </p>
    726 
    727 <p>References <a class="el" href="dmxcommon_8h.html#a162b4980b050465ca21228eb41f207a2">GETPRIVFROMPDEV</a>.</p>
    728 
    729 </div>
    730 </div>
    731 <a class="anchor" id="a4b8e72433e206d48e6fb471e933800ad"></a><!-- doxytag: member="dmxcommon.c::dmxCommonOthOn" ref="a4b8e72433e206d48e6fb471e933800ad" args="(DevicePtr pDev)" -->
    732 <div class="memitem">
    733 <div class="memproto">
    734       <table class="memname">
    735         <tr>
    736           <td class="memname">int dmxCommonOthOn </td>
    737           <td>(</td>
    738           <td class="paramtype">DevicePtr&#160;</td>
    739           <td class="paramname"><em>pDev</em></td><td>)</td>
    740           <td></td>
    741         </tr>
    742       </table>
    743 </div>
    744 <div class="memdoc">
    745 <p>Turn <em>pDev</em> on (i.e., take input from <em>pDev</em>). </p>
    746 
    747 <p>References <a class="el" href="dmxcommon_8c.html#ad9bd99dabcb14e9efe85df040d63c4b3">ADD</a>, <a class="el" href="dmxclient_8h.html#a9cdf1d1f5958572f162e6c5d5c19d4a4">ChangeDeviceNotify</a>, <a class="el" href="dmxclient_8h.html#a83d9bb79d3ddadf36469794bf2563482">DeviceFocusIn</a>, <a class="el" href="dmxclient_8h.html#a5da5340a54a4f158c507ee002c4b3824">DeviceFocusOut</a>, <a class="el" href="dmxclient_8h.html#a232c73ad30bfc3116842076bd6fc1151">DeviceMappingNotify</a>, <a class="el" href="dmxclient_8h.html#a989f862a42e735c00e8c23a239920772">DeviceMotionNotify</a>, <a class="el" href="dmxclient_8h.html#a7212800e5b127f95425fb860bb2dcbdf">DeviceStateNotify</a>, <a class="el" href="dmxinputinit_8h.html#ae754d74afaf08d6e9b46b3bc7581623e">DMX_MAX_XINPUT_EVENT_TYPES</a>, <a class="el" href="dmxlog_8c.html#ab6259430a57c3cffdfc9f6259df0ad23">dmxLog()</a>, <a class="el" href="dmxlog_8h.html#aeed612a5c0be196e23bd6b71b76b917fae81ae2a11fb7ab8eea902f609574210a">dmxWarning</a>, <a class="el" href="dmxcommon_8h.html#a2f522c463d79a458d27ac9e1f6b2e30f">GETDMXINPUTFROMPRIV</a>, <a class="el" href="dmxcommon_8h.html#a162b4980b050465ca21228eb41f207a2">GETPRIVFROMPDEV</a>, <a class="el" href="dmxclient_8h.html#ac1fa54a853b3edb8cbf6378dfaa962a6">ProximityIn</a>, and <a class="el" href="dmxclient_8h.html#a606f455d31c949b7f57a51a0e0b5f351">ProximityOut</a>.</p>
    748 
    749 </div>
    750 </div>
    751 <a class="anchor" id="adb5e0faaefc43851e4ebcd01bd9c10ec"></a><!-- doxytag: member="dmxcommon.c::dmxCommonRemoveEnabledDevice" ref="adb5e0faaefc43851e4ebcd01bd9c10ec" args="(DMXScreenInfo *dmxScreen, void *closure)" -->
    752 <div class="memitem">
    753 <div class="memproto">
    754       <table class="memname">
    755         <tr>
    756           <td class="memname">static void* dmxCommonRemoveEnabledDevice </td>
    757           <td>(</td>
    758           <td class="paramtype"><a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *&#160;</td>
    759           <td class="paramname"><em>dmxScreen</em>, </td>
    760         </tr>
    761         <tr>
    762           <td class="paramkey"></td>
    763           <td></td>
    764           <td class="paramtype">void *&#160;</td>
    765           <td class="paramname"><em>closure</em>&#160;</td>
    766         </tr>
    767         <tr>
    768           <td></td>
    769           <td>)</td>
    770           <td></td><td><code> [static]</code></td>
    771         </tr>
    772       </table>
    773 </div>
    774 <div class="memdoc">
    775 
    776 <p>References <a class="el" href="struct__DMXScreenInfo.html#a756ade62a55a52f163a42db6de54c244">_DMXScreenInfo::beDisplay</a>.</p>
    777 
    778 <p>Referenced by <a class="el" href="dmxcommon_8h.html#acfeaccbc1f2f5be028b3ee8c0f31da89">dmxCommonMouOff()</a>.</p>
    779 
    780 </div>
    781 </div>
    782 <a class="anchor" id="aca953b7500d93577441828156674c64e"></a><!-- doxytag: member="dmxcommon.c::dmxCommonRestoreState" ref="aca953b7500d93577441828156674c64e" args="(pointer private)" -->
    783 <div class="memitem">
    784 <div class="memproto">
    785       <table class="memname">
    786         <tr>
    787           <td class="memname">void dmxCommonRestoreState </td>
    788           <td>(</td>
    789           <td class="paramtype">pointer&#160;</td>
    790           <td class="paramname"><em>private</em></td><td>)</td>
    791           <td></td>
    792         </tr>
    793       </table>
    794 </div>
    795 <div class="memdoc">
    796 <p>This routine restores all the information saved by <a class="el" href="dmxcommon_8h.html#a14295660e17d34955693cef6654d7bb6">dmxCommonSaveState</a>. </p>
    797 
    798 <p>References <a class="el" href="dmxcommon_8c.html#a029097ed04b236c945e3715910250680">dmxCommonKbdSetCtrl()</a>, <a class="el" href="dmxcommon_8c.html#adf6865b0bc7ad370c94e3b8682262c13">DMXDBG0</a>, <a class="el" href="dmxlog_8c.html#ab6259430a57c3cffdfc9f6259df0ad23">dmxLog()</a>, <a class="el" href="dmxlog_8c.html#ac8d8dc0ec631bab1d1d95815c238d574">dmxLogInput()</a>, <a class="el" href="dmxlog_8h.html#aeed612a5c0be196e23bd6b71b76b917fae81ae2a11fb7ab8eea902f609574210a">dmxWarning</a>, and <a class="el" href="dmxcommon_8h.html#ae04675e973690cab79ef643f298cb375">GETPRIVFROMPRIVATE</a>.</p>
    799 
    800 <p>Referenced by <a class="el" href="dmxbackend_8h.html#a6e9b6f0743636b93aeb6ae71a3517abf">dmxBackendCollectEvents()</a>, <a class="el" href="dmxconsole_8c.html#a4d898acda21ed431ce0ee21303930153">dmxCloseConsole()</a>, <a class="el" href="dmxcommon_8h.html#a86b1c983a556770efdd1a19e8be44534">dmxCommonKbdGetInfo()</a>, <a class="el" href="dmxcommon_8h.html#a9ddcdd8a91205b9b0e23022f246190a0">dmxCommonKbdOff()</a>, and <a class="el" href="dmxconsole_8h.html#a9c2ec3c63c36955d2458283dbd62b605">dmxConsoleCollectEvents()</a>.</p>
    801 
    802 </div>
    803 </div>
    804 <a class="anchor" id="a14295660e17d34955693cef6654d7bb6"></a><!-- doxytag: member="dmxcommon.c::dmxCommonSaveState" ref="a14295660e17d34955693cef6654d7bb6" args="(pointer private)" -->
    805 <div class="memitem">
    806 <div class="memproto">
    807       <table class="memname">
    808         <tr>
    809           <td class="memname">void dmxCommonSaveState </td>
    810           <td>(</td>
    811           <td class="paramtype">pointer&#160;</td>
    812           <td class="paramname"><em>private</em></td><td>)</td>
    813           <td></td>
    814         </tr>
    815       </table>
    816 </div>
    817 <div class="memdoc">
    818 <p>This routine saves and resets some important state for the backend and console device drivers:</p>
    819 <ul>
    820 <li>the modifier map is saved and set to 0 (so DMX controls the LEDs)</li>
    821 <li>the key click, bell, led, and repeat masks are saved and set to the values that DMX claims to be using</li>
    822 </ul>
    823 <p>This routine and <a class="el" href="dmxcommon_8h.html#aca953b7500d93577441828156674c64e">dmxCommonRestoreState</a> are used when the pointer enters and leaves the console window, or when the backend window is active or not active (for a full-screen window, this only happens at server startup and server shutdown). </p>
    824 
    825 <p>References <a class="el" href="dmxcommon_8c.html#a029097ed04b236c945e3715910250680">dmxCommonKbdSetCtrl()</a>, <a class="el" href="dmxcommon_8c.html#adf6865b0bc7ad370c94e3b8682262c13">DMXDBG0</a>, <a class="el" href="dmxlog_8c.html#ac8d8dc0ec631bab1d1d95815c238d574">dmxLogInput()</a>, <a class="el" href="dmx_8h.html#a3e242a6818df05e547a4776919e3827f">dmxScreens</a>, <a class="el" href="dmxsync_8c.html#ab848762f4d2e30d31b87d3e8e10c5967">dmxSync()</a>, <a class="el" href="dmx_8h.html#ab5b999218612af4136983694943737aa">dmxUseXKB</a>, and <a class="el" href="dmxcommon_8h.html#ae04675e973690cab79ef643f298cb375">GETPRIVFROMPRIVATE</a>.</p>
    826 
    827 <p>Referenced by <a class="el" href="dmxbackend_8h.html#a6e9b6f0743636b93aeb6ae71a3517abf">dmxBackendCollectEvents()</a>, <a class="el" href="dmxcommon_8h.html#a399f0ec4a6e5d0bcd3d07f24b2a6ac9e">dmxCommonKbdCtrl()</a>, <a class="el" href="dmxcommon_8h.html#a86b1c983a556770efdd1a19e8be44534">dmxCommonKbdGetInfo()</a>, <a class="el" href="dmxcommon_8h.html#a60cd36c3430ead2858986fe5f93165c1">dmxCommonKbdOn()</a>, and <a class="el" href="dmxconsole_8h.html#a9c2ec3c63c36955d2458283dbd62b605">dmxConsoleCollectEvents()</a>.</p>
    828 
    829 </div>
    830 </div>
    831 <a class="anchor" id="a6e3adb2e48d7cc7a098c542c693d66d0"></a><!-- doxytag: member="dmxcommon.c::dmxCommonXSelect" ref="a6e3adb2e48d7cc7a098c542c693d66d0" args="(DMXScreenInfo *dmxScreen, void *closure)" -->
    832 <div class="memitem">
    833 <div class="memproto">
    834       <table class="memname">
    835         <tr>
    836           <td class="memname">static void* dmxCommonXSelect </td>
    837           <td>(</td>
    838           <td class="paramtype"><a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *&#160;</td>
    839           <td class="paramname"><em>dmxScreen</em>, </td>
    840         </tr>
    841         <tr>
    842           <td class="paramkey"></td>
    843           <td></td>
    844           <td class="paramtype">void *&#160;</td>
    845           <td class="paramname"><em>closure</em>&#160;</td>
    846         </tr>
    847         <tr>
    848           <td></td>
    849           <td>)</td>
    850           <td></td><td><code> [static]</code></td>
    851         </tr>
    852       </table>
    853 </div>
    854 <div class="memdoc">
    855 
    856 <p>References <a class="el" href="struct__DMXScreenInfo.html#a756ade62a55a52f163a42db6de54c244">_DMXScreenInfo::beDisplay</a>, and <a class="el" href="struct__DMXScreenInfo.html#a78c03cd265e1c64b0d4028f0b27f99c4">_DMXScreenInfo::scrnWin</a>.</p>
    857 
    858 <p>Referenced by <a class="el" href="dmxcommon_8h.html#acfeaccbc1f2f5be028b3ee8c0f31da89">dmxCommonMouOff()</a>, and <a class="el" href="dmxcommon_8h.html#a8ba0ee4f9f09bc9089d480d1f5467cd8">dmxCommonMouOn()</a>.</p>
    859 
    860 </div>
    861 </div>
    862 <a class="anchor" id="a907580b7be71d9be0b771d32210f3cad"></a><!-- doxytag: member="dmxcommon.c::dmxFindPointerScreen" ref="a907580b7be71d9be0b771d32210f3cad" args="(int x, int y)" -->
    863 <div class="memitem">
    864 <div class="memproto">
    865       <table class="memname">
    866         <tr>
    867           <td class="memname">int dmxFindPointerScreen </td>
    868           <td>(</td>
    869           <td class="paramtype">int&#160;</td>
    870           <td class="paramname"><em>x</em>, </td>
    871         </tr>
    872         <tr>
    873           <td class="paramkey"></td>
    874           <td></td>
    875           <td class="paramtype">int&#160;</td>
    876           <td class="paramname"><em>y</em>&#160;</td>
    877         </tr>
    878         <tr>
    879           <td></td>
    880           <td>)</td>
    881           <td></td><td></td>
    882         </tr>
    883       </table>
    884 </div>
    885 <div class="memdoc">
    886 <p>Given the global coordinates <em>x</em> and <em>y</em>, determine the screen with the lowest number on which those coordinates lie. If they are not on any screen, return -1. The number returned is an index into <em>dmxScreenInfo</em> and is between -1 and <em>dmxNumScreens</em> - 1, inclusive. </p>
    887 
    888 <p>References <a class="el" href="dmx_8h.html#a5a881109fe1e32c74cda4a280b09a7c4">dmxNumScreens</a>.</p>
    889 
    890 </div>
    891 </div>
    892 </div>
    893 </div>
    894   <div id="nav-path" class="navpath">
    895     <ul>
    896       <li class="navelem"><a class="el" href="dmxcommon_8c.html">dmxcommon.c</a>      </li>
    897     <hr>
    898     <address>
    899       <small>
    900         Generated June 29, 2004 for <a
    901         href="http://dmx.sourceforge.net">Distributed Multihead X</a> by
    902         <a href="http://www.doxygen.org/index.html">doxygen</a>
    903         1.3.4.
    904       </small>
    905     </addres>
    906     </hr>
    907   </body>
    908 </html>
    909