summaryrefslogtreecommitdiff
path: root/hw/dmx/doc/html/lnx-ps2_8c.html
diff options
context:
space:
mode:
Diffstat (limited to 'hw/dmx/doc/html/lnx-ps2_8c.html')
-rw-r--r--hw/dmx/doc/html/lnx-ps2_8c.html762
1 files changed, 762 insertions, 0 deletions
diff --git a/hw/dmx/doc/html/lnx-ps2_8c.html b/hw/dmx/doc/html/lnx-ps2_8c.html
new file mode 100644
index 0000000..350eaee
--- /dev/null
+++ b/hw/dmx/doc/html/lnx-ps2_8c.html
@@ -0,0 +1,762 @@
+<!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.7.3 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+</div>
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+ initNavTree('lnx-ps2_8c.html','');
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Defines</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<h1>lnx-ps2.c File Reference</h1> </div>
+</div>
+<div class="contents">
+<div class="textblock"><code>#include &quot;inputstr.h&quot;</code><br/>
+<code>#include &lt;X11/Xos.h&gt;</code><br/>
+<code>#include &lt;errno.h&gt;</code><br/>
+<code>#include &lt;termios.h&gt;</code><br/>
+<code>#include &quot;<a class="el" href="dmxinputinit_8h_source.html">dmxinputinit.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="lnx-ps2_8h_source.html">lnx-ps2.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr><td colspan="2"><h2><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<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>
+<tr><td colspan="2"><h2><a name="define-members"></a>
+Defines</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#aacf069d346230dd96812d5395728eef2">GETPRIV</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#a837722a322e811d5e42242655f277b87">LOG0</a>(f)&#160;&#160;&#160;dmxLog(dmxDebug,f)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#aab4b3434c36117a2ecdddec40716d97a">LOG1</a>(f, a)&#160;&#160;&#160;dmxLog(dmxDebug,f,a)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#a16da5d597d9bfb9e569a9bfb6996382c">LOG2</a>(f, a, b)&#160;&#160;&#160;dmxLog(dmxDebug,f,a,b)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#a8247f0bca25789d2ac27674eb26e223f">LOG3</a>(f, a, b, c)&#160;&#160;&#160;dmxLog(dmxDebug,f,a,b,c)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#a6bce6020b913db8afe5d94bc63d1b355">FATAL0</a>(f)&#160;&#160;&#160;dmxLog(dmxFatal,f)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#a11bcea7c6bc7dbe400a3855f5b8676ce">FATAL1</a>(f, a)&#160;&#160;&#160;dmxLog(dmxFatal,f,a)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#a7952c9e9fe9c75be4964fc53a4299183">FATAL2</a>(f, a, b)&#160;&#160;&#160;dmxLog(dmxFatal,f,a,b)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#a11a17082bee3b1b8217ce8a12adcf814">MOTIONPROC</a>&#160;&#160;&#160;<a class="el" href="dmxinputinit_8h.html#a1279820425966adabf5c77357e4a289c">dmxMotionProcPtr</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#a017080ce5e42667a6582cf858e7185cd">ENQUEUEPROC</a>&#160;&#160;&#160;<a class="el" href="dmxinputinit_8h.html#adbd955b9ddbc5ffe38ff65e3f068f205">dmxEnqueueProcPtr</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#aa35a985e998ad5e2187e13434dca118a">CHECKPROC</a>&#160;&#160;&#160;<a class="el" href="dmxinputinit_8h.html#a838cb45fd92d5cf506e4179b601f7dbc">dmxCheckSpecialProcPtr</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#a52220397ecea855b3a99746e451426e1">BLOCK</a>&#160;&#160;&#160;<a class="el" href="dmxinput_8h.html#a3a7195ab3516c5354bac4ca80b2eedb7">DMXBlockType</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#a7581da9bfd7ebf4fe3703352df521931">PRESS</a>(b)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#a2b4d2480737f9eb52f80998518486f01">RELEASE</a>(b)</td></tr>
+<tr><td colspan="2"><h2><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<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="lnx-ps2_8c.html#a25692217bddf2b6c089525b325afccf1">myPrivate</a></td></tr>
+<tr><td colspan="2"><h2><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#ad806e9804e49f47d75f252ab0b14c075">ps2LinuxReadBytes</a> (int fd, unsigned char *buf, int len, int min)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#af3ff29bf7e70049ca978bc8fbff4aab6">ps2LinuxButton</a> (DevicePtr pDev, ENQUEUEPROC enqueue, int buttons, BLOCK block)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#a373ac6b94ea32ce3f7329404ba1ae382">ps2LinuxRead</a> (DevicePtr pDev, MOTIONPROC motion, ENQUEUEPROC enqueue, CHECKPROC checkspecial, BLOCK block)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#aa0f0b690de9e5c3a958909000c7f787d">ps2LinuxInit</a> (DevicePtr pDev)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#aaf9aaca79e044d91f072901ad3be1863">ps2LinuxOn</a> (DevicePtr pDev)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#af955e539213ec85f5b6d5d7b38dae89e">ps2LinuxOff</a> (DevicePtr pDev)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#a0f65c382ff39d64cd881a919eb566964">ps2LinuxGetMap</a> (DevicePtr pDev, unsigned char *<a class="el" href="usb-keyboard_8c.html#a2187a19657fb0b38c67dbafc7dd74c4d">map</a>, int *nButtons)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#a3a9ac063b46a191b38d92881367d74d4">ps2LinuxVTPreSwitch</a> (pointer p)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#a11a5bfc4866f86dfe3ea5acb788c4afe">ps2LinuxVTPostSwitch</a> (pointer p)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">pointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#ab6e438a481e24f8c6ef7d731b8ee4fb8">ps2LinuxCreatePrivate</a> (DeviceIntPtr pMouse)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#af67bcdd060164de0c3a0d3e69c8483ac">ps2LinuxDestroyPrivate</a> (pointer priv)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lnx-ps2_8c.html#ab914e24acbae5ce49174e06842ac684b">ps2LinuxGetInfo</a> (DevicePtr pDev, <a class="el" href="struct__DMXLocalInitInfo.html">DMXLocalInitInfoPtr</a> info)</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<div class="textblock"><p>This code implements a low-level device driver for a serial MS mouse. The code is derived from code by Keith Packard (see the source code for complete references). </p>
+</div><hr/><h2>Define Documentation</h2>
+<a class="anchor" id="a52220397ecea855b3a99746e451426e1"></a><!-- doxytag: member="lnx&#45;ps2.c::BLOCK" ref="a52220397ecea855b3a99746e451426e1" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define BLOCK&#160;&#160;&#160;<a class="el" href="dmxinput_8h.html#a3a7195ab3516c5354bac4ca80b2eedb7">DMXBlockType</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa35a985e998ad5e2187e13434dca118a"></a><!-- doxytag: member="lnx&#45;ps2.c::CHECKPROC" ref="aa35a985e998ad5e2187e13434dca118a" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CHECKPROC&#160;&#160;&#160;<a class="el" href="dmxinputinit_8h.html#a838cb45fd92d5cf506e4179b601f7dbc">dmxCheckSpecialProcPtr</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a017080ce5e42667a6582cf858e7185cd"></a><!-- doxytag: member="lnx&#45;ps2.c::ENQUEUEPROC" ref="a017080ce5e42667a6582cf858e7185cd" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ENQUEUEPROC&#160;&#160;&#160;<a class="el" href="dmxinputinit_8h.html#adbd955b9ddbc5ffe38ff65e3f068f205">dmxEnqueueProcPtr</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6bce6020b913db8afe5d94bc63d1b355"></a><!-- doxytag: member="lnx&#45;ps2.c::FATAL0" ref="a6bce6020b913db8afe5d94bc63d1b355" args="(f)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define FATAL0</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">f</td><td>)</td>
+ <td>&#160;&#160;&#160;dmxLog(dmxFatal,f)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a11bcea7c6bc7dbe400a3855f5b8676ce"></a><!-- doxytag: member="lnx&#45;ps2.c::FATAL1" ref="a11bcea7c6bc7dbe400a3855f5b8676ce" args="(f, a)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define FATAL1</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">f, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">a&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;dmxLog(dmxFatal,f,a)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Referenced by <a class="el" href="lnx-ps2_8h.html#aa0f0b690de9e5c3a958909000c7f787d">ps2LinuxInit()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a7952c9e9fe9c75be4964fc53a4299183"></a><!-- doxytag: member="lnx&#45;ps2.c::FATAL2" ref="a7952c9e9fe9c75be4964fc53a4299183" args="(f, a, b)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define FATAL2</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">f, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">a, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">b&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;dmxLog(dmxFatal,f,a,b)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aacf069d346230dd96812d5395728eef2"></a><!-- doxytag: member="lnx&#45;ps2.c::GETPRIV" ref="aacf069d346230dd96812d5395728eef2" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GETPRIV</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="struct__myPrivate.html">myPrivate</a> *priv \
+ = ((<a class="code" href="dmxinput_8h.html#adb148db00fe0adf1938b815b9b934d26">DMXLocalInputInfoPtr</a>)(pDev-&gt;devicePrivate))-&gt;private
+</pre></div>
+<p>Referenced by <a class="el" href="lnx-ps2_8c.html#af3ff29bf7e70049ca978bc8fbff4aab6">ps2LinuxButton()</a>, <a class="el" href="lnx-ps2_8h.html#aa0f0b690de9e5c3a958909000c7f787d">ps2LinuxInit()</a>, <a class="el" href="lnx-ps2_8h.html#af955e539213ec85f5b6d5d7b38dae89e">ps2LinuxOff()</a>, <a class="el" href="lnx-ps2_8h.html#aaf9aaca79e044d91f072901ad3be1863">ps2LinuxOn()</a>, and <a class="el" href="lnx-ps2_8c.html#a373ac6b94ea32ce3f7329404ba1ae382">ps2LinuxRead()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a837722a322e811d5e42242655f277b87"></a><!-- doxytag: member="lnx&#45;ps2.c::LOG0" ref="a837722a322e811d5e42242655f277b87" args="(f)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define LOG0</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">f</td><td>)</td>
+ <td>&#160;&#160;&#160;dmxLog(dmxDebug,f)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aab4b3434c36117a2ecdddec40716d97a"></a><!-- doxytag: member="lnx&#45;ps2.c::LOG1" ref="aab4b3434c36117a2ecdddec40716d97a" args="(f, a)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define LOG1</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">f, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">a&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;dmxLog(dmxDebug,f,a)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a16da5d597d9bfb9e569a9bfb6996382c"></a><!-- doxytag: member="lnx&#45;ps2.c::LOG2" ref="a16da5d597d9bfb9e569a9bfb6996382c" args="(f, a, b)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define LOG2</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">f, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">a, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">b&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;dmxLog(dmxDebug,f,a,b)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8247f0bca25789d2ac27674eb26e223f"></a><!-- doxytag: member="lnx&#45;ps2.c::LOG3" ref="a8247f0bca25789d2ac27674eb26e223f" args="(f, a, b, c)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define LOG3</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">f, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">a, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">b, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">c&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;dmxLog(dmxDebug,f,a,b,c)</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a11a17082bee3b1b8217ce8a12adcf814"></a><!-- doxytag: member="lnx&#45;ps2.c::MOTIONPROC" ref="a11a17082bee3b1b8217ce8a12adcf814" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define MOTIONPROC&#160;&#160;&#160;<a class="el" href="dmxinputinit_8h.html#a1279820425966adabf5c77357e4a289c">dmxMotionProcPtr</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7581da9bfd7ebf4fe3703352df521931"></a><!-- doxytag: member="lnx&#45;ps2.c::PRESS" ref="a7581da9bfd7ebf4fe3703352df521931" args="(b)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define PRESS</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">b</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<b>Value:</b><div class="fragment"><pre class="fragment"><span class="keywordflow">do</span> { \
+ enqueue(pDev, ButtonPress, 0, 0, NULL, block); \
+ } <span class="keywordflow">while</span> (0)
+</pre></div>
+</div>
+</div>
+<a class="anchor" id="a2b4d2480737f9eb52f80998518486f01"></a><!-- doxytag: member="lnx&#45;ps2.c::RELEASE" ref="a2b4d2480737f9eb52f80998518486f01" args="(b)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define RELEASE</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">b</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<b>Value:</b><div class="fragment"><pre class="fragment"><span class="keywordflow">do</span> { \
+ enqueue(pDev, ButtonRelease, 0, 0, NULL, block); \
+ } <span class="keywordflow">while</span> (0)
+</pre></div>
+</div>
+</div>
+<hr/><h2>Typedef Documentation</h2>
+<a class="anchor" id="a25692217bddf2b6c089525b325afccf1"></a><!-- doxytag: member="lnx&#45;ps2.c::myPrivate" ref="a25692217bddf2b6c089525b325afccf1" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct__myPrivate.html">_myPrivate</a> <a class="el" href="struct__myPrivate.html">myPrivate</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+</div>
+</div>
+<hr/><h2>Function Documentation</h2>
+<a class="anchor" id="af3ff29bf7e70049ca978bc8fbff4aab6"></a><!-- doxytag: member="lnx&#45;ps2.c::ps2LinuxButton" ref="af3ff29bf7e70049ca978bc8fbff4aab6" args="(DevicePtr pDev, ENQUEUEPROC enqueue, int buttons, BLOCK block)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void ps2LinuxButton </td>
+ <td>(</td>
+ <td class="paramtype">DevicePtr&#160;</td>
+ <td class="paramname"><em>pDev</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">ENQUEUEPROC&#160;</td>
+ <td class="paramname"><em>enqueue</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>buttons</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">BLOCK&#160;</td>
+ <td class="paramname"><em>block</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td><code> [static]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>References <a class="el" href="lnx-ps2_8c.html#aacf069d346230dd96812d5395728eef2">GETPRIV</a>, <a class="el" href="lnx-ms_8c.html#a7581da9bfd7ebf4fe3703352df521931">PRESS</a>, and <a class="el" href="lnx-ms_8c.html#a2b4d2480737f9eb52f80998518486f01">RELEASE</a>.</p>
+
+<p>Referenced by <a class="el" href="lnx-ps2_8c.html#a373ac6b94ea32ce3f7329404ba1ae382">ps2LinuxRead()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ab6e438a481e24f8c6ef7d731b8ee4fb8"></a><!-- doxytag: member="lnx&#45;ps2.c::ps2LinuxCreatePrivate" ref="ab6e438a481e24f8c6ef7d731b8ee4fb8" args="(DeviceIntPtr pMouse)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pointer ps2LinuxCreatePrivate </td>
+ <td>(</td>
+ <td class="paramtype">DeviceIntPtr&#160;</td>
+ <td class="paramname"><em>pMouse</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>Create a private structure for use within this file. </p>
+
+<p>References <a class="el" href="struct__myPrivate.html#a6b26eb0acc0b932c8dee8277501e6273">_myPrivate::fd</a>, and <a class="el" href="struct__myPrivate.html#a3e46e1ccb546bbadfa5ebb165a8b11d4">_myPrivate::pMouse</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="af67bcdd060164de0c3a0d3e69c8483ac"></a><!-- doxytag: member="lnx&#45;ps2.c::ps2LinuxDestroyPrivate" ref="af67bcdd060164de0c3a0d3e69c8483ac" args="(pointer priv)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ps2LinuxDestroyPrivate </td>
+ <td>(</td>
+ <td class="paramtype">pointer&#160;</td>
+ <td class="paramname"><em>priv</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>Destroy a private structure. </p>
+
+</div>
+</div>
+<a class="anchor" id="ab914e24acbae5ce49174e06842ac684b"></a><!-- doxytag: member="lnx&#45;ps2.c::ps2LinuxGetInfo" ref="ab914e24acbae5ce49174e06842ac684b" args="(DevicePtr pDev, DMXLocalInitInfoPtr info)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ps2LinuxGetInfo </td>
+ <td>(</td>
+ <td class="paramtype">DevicePtr&#160;</td>
+ <td class="paramname"><em>pDev</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="struct__DMXLocalInitInfo.html">DMXLocalInitInfoPtr</a>&#160;</td>
+ <td class="paramname"><em>info</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>Fill the <em>info</em> structure with information needed to initialize <em>pDev</em>. </p>
+
+<p>References <a class="el" href="struct__DMXLocalInitInfo.html#a58b2e6764967add7eda1c1f2f0860abc">_DMXLocalInitInfo::buttonClass</a>, <a class="el" href="struct__DMXLocalInitInfo.html#a43d86cc82219794bba7ba1ee66472a45">_DMXLocalInitInfo::map</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#a9264f367a1c1e252679299b00f94458c">_DMXLocalInitInfo::numButtons</a>, <a class="el" href="struct__DMXLocalInitInfo.html#a5e192625179bbed020a720e448c789aa">_DMXLocalInitInfo::numRelAxes</a>, <a class="el" href="lnx-ps2_8c.html#a0f65c382ff39d64cd881a919eb566964">ps2LinuxGetMap()</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>
+
+</div>
+</div>
+<a class="anchor" id="a0f65c382ff39d64cd881a919eb566964"></a><!-- doxytag: member="lnx&#45;ps2.c::ps2LinuxGetMap" ref="a0f65c382ff39d64cd881a919eb566964" args="(DevicePtr pDev, unsigned char *map, int *nButtons)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void ps2LinuxGetMap </td>
+ <td>(</td>
+ <td class="paramtype">DevicePtr&#160;</td>
+ <td class="paramname"><em>pDev</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned char *&#160;</td>
+ <td class="paramname"><em>map</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>nButtons</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td><code> [static]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Referenced by <a class="el" href="lnx-ps2_8h.html#ab914e24acbae5ce49174e06842ac684b">ps2LinuxGetInfo()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="aa0f0b690de9e5c3a958909000c7f787d"></a><!-- doxytag: member="lnx&#45;ps2.c::ps2LinuxInit" ref="aa0f0b690de9e5c3a958909000c7f787d" args="(DevicePtr pDev)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ps2LinuxInit </td>
+ <td>(</td>
+ <td class="paramtype">DevicePtr&#160;</td>
+ <td class="paramname"><em>pDev</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>Initialize <em>pDev</em>. </p>
+
+<p>References <a class="el" href="lnx-ps2_8c.html#a11bcea7c6bc7dbe400a3855f5b8676ce">FATAL1</a>, <a class="el" href="lnx-ps2_8c.html#aacf069d346230dd96812d5395728eef2">GETPRIV</a>, and <a class="el" href="dmxsigio_8c.html#a39d33ce33804efd4d52606d59071c6d8">O_NONBLOCK</a>.</p>
+
+<p>Referenced by <a class="el" href="lnx-ps2_8h.html#aaf9aaca79e044d91f072901ad3be1863">ps2LinuxOn()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="af955e539213ec85f5b6d5d7b38dae89e"></a><!-- doxytag: member="lnx&#45;ps2.c::ps2LinuxOff" ref="af955e539213ec85f5b6d5d7b38dae89e" args="(DevicePtr pDev)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ps2LinuxOff </td>
+ <td>(</td>
+ <td class="paramtype">DevicePtr&#160;</td>
+ <td class="paramname"><em>pDev</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>Turn <em>pDev</em> off (i.e., stop taking input from <em>pDev</em>). </p>
+
+<p>References <a class="el" href="lnx-ps2_8c.html#aacf069d346230dd96812d5395728eef2">GETPRIV</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="aaf9aaca79e044d91f072901ad3be1863"></a><!-- doxytag: member="lnx&#45;ps2.c::ps2LinuxOn" ref="aaf9aaca79e044d91f072901ad3be1863" args="(DevicePtr pDev)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int ps2LinuxOn </td>
+ <td>(</td>
+ <td class="paramtype">DevicePtr&#160;</td>
+ <td class="paramname"><em>pDev</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>Turn <em>pDev</em> on (i.e., take input from <em>pDev</em>). </p>
+
+<p>References <a class="el" href="lnx-ps2_8c.html#aacf069d346230dd96812d5395728eef2">GETPRIV</a>, and <a class="el" href="lnx-ps2_8c.html#aa0f0b690de9e5c3a958909000c7f787d">ps2LinuxInit()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a373ac6b94ea32ce3f7329404ba1ae382"></a><!-- doxytag: member="lnx&#45;ps2.c::ps2LinuxRead" ref="a373ac6b94ea32ce3f7329404ba1ae382" args="(DevicePtr pDev, MOTIONPROC motion, ENQUEUEPROC enqueue, CHECKPROC checkspecial, BLOCK block)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ps2LinuxRead </td>
+ <td>(</td>
+ <td class="paramtype">DevicePtr&#160;</td>
+ <td class="paramname"><em>pDev</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">MOTIONPROC&#160;</td>
+ <td class="paramname"><em>motion</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">ENQUEUEPROC&#160;</td>
+ <td class="paramname"><em>enqueue</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">CHECKPROC&#160;</td>
+ <td class="paramname"><em>checkspecial</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">BLOCK&#160;</td>
+ <td class="paramname"><em>block</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>Read an event from the <em>pDev</em> device. If the event is a motion event, enqueue it with the <em>motion</em> function. Otherwise, check for special keys with the <em>checkspecial</em> function and enqueue the event with the <em>enqueue</em> function. The <em>block</em> type is passed to the functions so that they may block SIGIO handling as appropriate to the caller of this function. </p>
+
+<p>References <a class="el" href="lnx-ps2_8c.html#aacf069d346230dd96812d5395728eef2">GETPRIV</a>, <a class="el" href="lnx-ps2_8c.html#af3ff29bf7e70049ca978bc8fbff4aab6">ps2LinuxButton()</a>, and <a class="el" href="lnx-ps2_8c.html#ad806e9804e49f47d75f252ab0b14c075">ps2LinuxReadBytes()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ad806e9804e49f47d75f252ab0b14c075"></a><!-- doxytag: member="lnx&#45;ps2.c::ps2LinuxReadBytes" ref="ad806e9804e49f47d75f252ab0b14c075" args="(int fd, unsigned char *buf, int len, int min)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">static int ps2LinuxReadBytes </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>fd</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned char *&#160;</td>
+ <td class="paramname"><em>buf</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>len</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>min</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td><code> [static]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Referenced by <a class="el" href="lnx-ps2_8c.html#a373ac6b94ea32ce3f7329404ba1ae382">ps2LinuxRead()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a11a5bfc4866f86dfe3ea5acb788c4afe"></a><!-- doxytag: member="lnx&#45;ps2.c::ps2LinuxVTPostSwitch" ref="a11a5bfc4866f86dfe3ea5acb788c4afe" args="(pointer p)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ps2LinuxVTPostSwitch </td>
+ <td>(</td>
+ <td class="paramtype">pointer&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>Currently unused hook called after returning from a VT switch. </p>
+
+</div>
+</div>
+<a class="anchor" id="a3a9ac063b46a191b38d92881367d74d4"></a><!-- doxytag: member="lnx&#45;ps2.c::ps2LinuxVTPreSwitch" ref="a3a9ac063b46a191b38d92881367d74d4" args="(pointer p)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ps2LinuxVTPreSwitch </td>
+ <td>(</td>
+ <td class="paramtype">pointer&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+<p>Currently unused hook called prior to an VT switch. </p>
+
+</div>
+</div>
+</div>
+</div>
+ <div id="nav-path" class="navpath">
+ <ul>
+ <li class="navelem"><a class="el" href="lnx-ps2_8c.html">lnx-ps2.c</a> </li>
+ <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>
contact: Jan Huwald // Impressum