<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
    <title>File Index</title>
    <link href="doxygen.css" rel="stylesheet" type="text/css">
  </head>
  <body>
<!-- Generated by Doxygen 1.6.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>usb-common.h File Reference</h1>
<p><a href="usb-common_8h_source.html">Go to the source code of this file.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Enumerations</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="usb-common_8h.html#a5e4410bf95babe73bcecc612691fc2d0">usbType</a> { <a class="el" href="usb-common_8h.html#a5e4410bf95babe73bcecc612691fc2d0a6bd9e53b1b5835e304e54ba13a227de7">usbMouse</a>, 
<a class="el" href="usb-common_8h.html#a5e4410bf95babe73bcecc612691fc2d0ac0ee79f0c48b61dfd08fff502a2752a3">usbKeyboard</a>, 
<a class="el" href="usb-common_8h.html#a5e4410bf95babe73bcecc612691fc2d0acf68ef2e5cae37647c412e73c93960fb">usbOther</a>
 }</td></tr>
<tr><td colspan="2"><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">pointer&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="usb-common_8h.html#a580f9f4ac56071b925cbf63d8b9dc706">usbCreatePrivate</a> (DeviceIntPtr pDevice)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="usb-common_8h.html#a0eca0051ed4a3a117d504d6a82c65313">usbDestroyPrivate</a> (pointer priv)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="usb-common_8h.html#aea8c9cef438c8851ef7f47d7167152cb">usbRead</a> (DevicePtr pDev, <a class="el" href="dmxinputinit_8h.html#a1279820425966adabf5c77357e4a289c">dmxMotionProcPtr</a> motion, <a class="el" href="dmxinputinit_8h.html#adbd955b9ddbc5ffe38ff65e3f068f205">dmxEnqueueProcPtr</a> enqueue, int minButton, <a class="el" href="dmxinput_8h.html#a3a7195ab3516c5354bac4ca80b2eedb7">DMXBlockType</a> block)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="usb-common_8h.html#a7f9b3a6d320a9ddbed689f4e12acb443">usbInit</a> (DevicePtr pDev, <a class="el" href="usb-common_8h.html#a5e4410bf95babe73bcecc612691fc2d0">usbType</a> type)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="usb-common_8h.html#aa86d87cabbc0971c51452970b7dc879f">usbOff</a> (DevicePtr pDev)</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Interface to common USB support. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="usb-common_8c.html">usb-common.c</a> </dd>
<dd>
<a class="el" href="usb-mouse_8c.html">usb-mouse.c</a> </dd>
<dd>
<a class="el" href="usb-keyboard_8c.html">usb-keyboard.c</a> </dd>
<dd>
<a class="el" href="usb-other_8c.html">usb-other.c</a> </dd></dl>
<hr/><h2>Enumeration Type Documentation</h2>
<a class="anchor" id="a5e4410bf95babe73bcecc612691fc2d0"></a><!-- doxytag: member="usb&#45;common.h::usbType" ref="a5e4410bf95babe73bcecc612691fc2d0" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="usb-common_8h.html#a5e4410bf95babe73bcecc612691fc2d0">usbType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="a5e4410bf95babe73bcecc612691fc2d0a6bd9e53b1b5835e304e54ba13a227de7"></a><!-- doxytag: member="usbMouse" ref="a5e4410bf95babe73bcecc612691fc2d0a6bd9e53b1b5835e304e54ba13a227de7" args="" -->usbMouse</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a5e4410bf95babe73bcecc612691fc2d0ac0ee79f0c48b61dfd08fff502a2752a3"></a><!-- doxytag: member="usbKeyboard" ref="a5e4410bf95babe73bcecc612691fc2d0ac0ee79f0c48b61dfd08fff502a2752a3" args="" -->usbKeyboard</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a5e4410bf95babe73bcecc612691fc2d0acf68ef2e5cae37647c412e73c93960fb"></a><!-- doxytag: member="usbOther" ref="a5e4410bf95babe73bcecc612691fc2d0acf68ef2e5cae37647c412e73c93960fb" args="" -->usbOther</em>&nbsp;</td><td>
</td></tr>
</table>
</dd>
</dl>

</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="a580f9f4ac56071b925cbf63d8b9dc706"></a><!-- doxytag: member="usb&#45;common.h::usbCreatePrivate" ref="a580f9f4ac56071b925cbf63d8b9dc706" args="(DeviceIntPtr pDevice)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">pointer usbCreatePrivate </td>
          <td>(</td>
          <td class="paramtype">DeviceIntPtr&nbsp;</td>
          <td class="paramname"> <em>pDevice</em></td>
          <td>&nbsp;)&nbsp;</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="lnx-keyboard_8c_source.html#l00178">_myPrivate::fd</a>, and <a class="el" href="usb-private_8h_source.html#l00101">_myPrivate::pDevice</a>.</p>

</div>
</div>
<a class="anchor" id="a0eca0051ed4a3a117d504d6a82c65313"></a><!-- doxytag: member="usb&#45;common.h::usbDestroyPrivate" ref="a0eca0051ed4a3a117d504d6a82c65313" args="(pointer priv)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void usbDestroyPrivate </td>
          <td>(</td>
          <td class="paramtype">pointer&nbsp;</td>
          <td class="paramname"> <em>priv</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Destroy a private structure. </p>

</div>
</div>
<a class="anchor" id="a7f9b3a6d320a9ddbed689f4e12acb443"></a><!-- doxytag: member="usb&#45;common.h::usbInit" ref="a7f9b3a6d320a9ddbed689f4e12acb443" args="(DevicePtr pDev, usbType type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void usbInit </td>
          <td>(</td>
          <td class="paramtype">DevicePtr&nbsp;</td>
          <td class="paramname"> <em>pDev</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="usb-common_8h.html#a5e4410bf95babe73bcecc612691fc2d0">usbType</a>&nbsp;</td>
          <td class="paramname"> <em>type</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Initialized <em>pDev</em> as a <em>usbMouse</em>, <em>usbKeyboard</em>, or <em>usbOther</em> device. </p>

<p>References <a class="el" href="lnx-keyboard_8c_source.html#l00144">FATAL1</a>, <a class="el" href="lnx-keyboard_8c_source.html#l00136">GETPRIV</a>, <a class="el" href="dmxsigio_8c_source.html#l00062">O_NONBLOCK</a>, <a class="el" href="usb-common_8c_source.html#l00162">test_bit</a>, <a class="el" href="usb-common_8c_source.html#l00163">test_bits</a>, <a class="el" href="usb-common_8h_source.html#l00042">usbKeyboard</a>, <a class="el" href="usb-common_8h_source.html#l00041">usbMouse</a>, <a class="el" href="usb-common_8h_source.html#l00043">usbOther</a>, and <a class="el" href="usb-common_8c_source.html#l00165">usbPrint()</a>.</p>

<p>Referenced by <a class="el" href="usb-keyboard_8c_source.html#l00287">kbdUSBInit()</a>, <a class="el" href="usb-mouse_8c_source.html#l00079">mouUSBInit()</a>, and <a class="el" href="usb-other_8c_source.html#l00081">othUSBInit()</a>.</p>

</div>
</div>
<a class="anchor" id="aa86d87cabbc0971c51452970b7dc879f"></a><!-- doxytag: member="usb&#45;common.h::usbOff" ref="aa86d87cabbc0971c51452970b7dc879f" args="(DevicePtr pDev)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void usbOff </td>
          <td>(</td>
          <td class="paramtype">DevicePtr&nbsp;</td>
          <td class="paramname"> <em>pDev</em></td>
          <td>&nbsp;)&nbsp;</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-keyboard_8c_source.html#l00136">GETPRIV</a>.</p>

</div>
</div>
<a class="anchor" id="aea8c9cef438c8851ef7f47d7167152cb"></a><!-- doxytag: member="usb&#45;common.h::usbRead" ref="aea8c9cef438c8851ef7f47d7167152cb" args="(DevicePtr pDev, dmxMotionProcPtr motion, dmxEnqueueProcPtr enqueue, int minButton, DMXBlockType block)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void usbRead </td>
          <td>(</td>
          <td class="paramtype">DevicePtr&nbsp;</td>
          <td class="paramname"> <em>pDev</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="dmxinputinit_8h.html#a1279820425966adabf5c77357e4a289c">dmxMotionProcPtr</a>&nbsp;</td>
          <td class="paramname"> <em>motion</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="dmxinputinit_8h.html#adbd955b9ddbc5ffe38ff65e3f068f205">dmxEnqueueProcPtr</a>&nbsp;</td>
          <td class="paramname"> <em>enqueue</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>minButton</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="dmxinput_8h.html#a3a7195ab3516c5354bac4ca80b2eedb7">DMXBlockType</a>&nbsp;</td>
          <td class="paramname"> <em>block</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
</div>
    <hr>
    <address>
      <small>
        Generated June 29, 2004 for <a
        href="http://dmx.sourceforge.net">Distributed Multihead X</a> by
        <a href="http://www.doxygen.org/index.html">doxygen</a>
        1.3.4.
      </small>
    </addres>
    </hr>
  </body>
</html>