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 Page</span></a></li> 13 <li><a href="annotated.html"><span>Data 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 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('usb-other_8c.html',''); 35 </script> 36 <div id="doc-content"> 37 <div class="header"> 38 <div class="summary"> 39 <a href="#define-members">Defines</a> | 40 <a href="#func-members">Functions</a> </div> 41 <div class="headertitle"> 42 <div class="title">usb-other.c File Reference</div> </div> 43 </div> 44 <div class="contents"> 45 <div class="textblock"><code>#include "<a class="el" href="usb-private_8h_source.html">usb-private.h</a>"</code><br/> 46 <code>#include "<a class="el" href="dmxinputinit_8h_source.html">dmxinputinit.h</a>"</code><br/> 47 <code>#include "<a class="el" href="usb-other_8h_source.html">usb-other.h</a>"</code><br/> 48 </div><table class="memberdecls"> 49 <tr><td colspan="2"><h2><a name="define-members"></a> 50 Defines</h2></td></tr> 51 <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="usb-other_8c.html#aacf069d346230dd96812d5395728eef2">GETPRIV</a></td></tr> 52 <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="usb-other_8c.html#a837722a322e811d5e42242655f277b87">LOG0</a>(f)   dmxLog(dmxDebug,f)</td></tr> 53 <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="usb-other_8c.html#aab4b3434c36117a2ecdddec40716d97a">LOG1</a>(f, a)   dmxLog(dmxDebug,f,a)</td></tr> 54 <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="usb-other_8c.html#a16da5d597d9bfb9e569a9bfb6996382c">LOG2</a>(f, a, b)   dmxLog(dmxDebug,f,a,b)</td></tr> 55 <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="usb-other_8c.html#a8247f0bca25789d2ac27674eb26e223f">LOG3</a>(f, a, b, c)   dmxLog(dmxDebug,f,a,b,c)</td></tr> 56 <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="usb-other_8c.html#a6bce6020b913db8afe5d94bc63d1b355">FATAL0</a>(f)   dmxLog(dmxFatal,f)</td></tr> 57 <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="usb-other_8c.html#a11bcea7c6bc7dbe400a3855f5b8676ce">FATAL1</a>(f, a)   dmxLog(dmxFatal,f,a)</td></tr> 58 <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="usb-other_8c.html#a7952c9e9fe9c75be4964fc53a4299183">FATAL2</a>(f, a, b)   dmxLog(dmxFatal,f,a,b)</td></tr> 59 <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="usb-other_8c.html#a11a17082bee3b1b8217ce8a12adcf814">MOTIONPROC</a>   <a class="el" href="dmxinputinit_8h.html#a1279820425966adabf5c77357e4a289c">dmxMotionProcPtr</a></td></tr> 60 <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="usb-other_8c.html#a017080ce5e42667a6582cf858e7185cd">ENQUEUEPROC</a>   <a class="el" href="dmxinputinit_8h.html#adbd955b9ddbc5ffe38ff65e3f068f205">dmxEnqueueProcPtr</a></td></tr> 61 <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="usb-other_8c.html#aa35a985e998ad5e2187e13434dca118a">CHECKPROC</a>   <a class="el" href="dmxinputinit_8h.html#a838cb45fd92d5cf506e4179b601f7dbc">dmxCheckSpecialProcPtr</a></td></tr> 62 <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="usb-other_8c.html#a52220397ecea855b3a99746e451426e1">BLOCK</a>   <a class="el" href="dmxinput_8h.html#a3a7195ab3516c5354bac4ca80b2eedb7">DMXBlockType</a></td></tr> 63 <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="usb-other_8c.html#a36b621e66020a8ee4641d56c73c4226b">test_bit</a>(bit)   (priv->mask[(bit)/8] & (1 << ((bit)%8)))</td></tr> 64 <tr><td colspan="2"><h2><a name="func-members"></a> 65 Functions</h2></td></tr> 66 <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="usb-other_8c.html#a3c2a6d36c58f4372068d019364831151">othUSBRead</a> (DevicePtr pDev, MOTIONPROC motion, ENQUEUEPROC enqueue, CHECKPROC checkspecial, BLOCK block)</td></tr> 67 <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="usb-other_8c.html#ad1b551c84928693ea1b2edebf6c4fcff">othUSBInit</a> (DevicePtr pDev)</td></tr> 68 <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="usb-other_8c.html#a1f1af19f36fcccfc6b67c814fb360573">othUSBOn</a> (DevicePtr pDev)</td></tr> 69 <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="usb-other_8c.html#a35a421bfc49015d8ed37cac84746ba78">othUSBGetInfo</a> (DevicePtr pDev, <a class="el" href="struct__DMXLocalInitInfo.html">DMXLocalInitInfoPtr</a> info)</td></tr> 70 </table> 71 <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> 72 <div class="textblock"><p>This code implements a low-level device driver for a non-keyboard, non-mouse USB device (e.g., a joystick or gamepad). </p> 73 </div><hr/><h2>Define Documentation</h2> 74 <a class="anchor" id="a52220397ecea855b3a99746e451426e1"></a><!-- doxytag: member="usb-other.c::BLOCK" ref="a52220397ecea855b3a99746e451426e1" args="" --> 75 <div class="memitem"> 76 <div class="memproto"> 77 <table class="memname"> 78 <tr> 79 <td class="memname">#define BLOCK   <a class="el" href="dmxinput_8h.html#a3a7195ab3516c5354bac4ca80b2eedb7">DMXBlockType</a></td> 80 </tr> 81 </table> 82 </div> 83 <div class="memdoc"> 84 85 </div> 86 </div> 87 <a class="anchor" id="aa35a985e998ad5e2187e13434dca118a"></a><!-- doxytag: member="usb-other.c::CHECKPROC" ref="aa35a985e998ad5e2187e13434dca118a" args="" --> 88 <div class="memitem"> 89 <div class="memproto"> 90 <table class="memname"> 91 <tr> 92 <td class="memname">#define CHECKPROC   <a class="el" href="dmxinputinit_8h.html#a838cb45fd92d5cf506e4179b601f7dbc">dmxCheckSpecialProcPtr</a></td> 93 </tr> 94 </table> 95 </div> 96 <div class="memdoc"> 97 98 </div> 99 </div> 100 <a class="anchor" id="a017080ce5e42667a6582cf858e7185cd"></a><!-- doxytag: member="usb-other.c::ENQUEUEPROC" ref="a017080ce5e42667a6582cf858e7185cd" args="" --> 101 <div class="memitem"> 102 <div class="memproto"> 103 <table class="memname"> 104 <tr> 105 <td class="memname">#define ENQUEUEPROC   <a class="el" href="dmxinputinit_8h.html#adbd955b9ddbc5ffe38ff65e3f068f205">dmxEnqueueProcPtr</a></td> 106 </tr> 107 </table> 108 </div> 109 <div class="memdoc"> 110 111 </div> 112 </div> 113 <a class="anchor" id="a6bce6020b913db8afe5d94bc63d1b355"></a><!-- doxytag: member="usb-other.c::FATAL0" ref="a6bce6020b913db8afe5d94bc63d1b355" args="(f)" --> 114 <div class="memitem"> 115 <div class="memproto"> 116 <table class="memname"> 117 <tr> 118 <td class="memname">#define FATAL0</td> 119 <td>(</td> 120 <td class="paramtype"> </td> 121 <td class="paramname">f</td><td>)</td> 122 <td>   dmxLog(dmxFatal,f)</td> 123 </tr> 124 </table> 125 </div> 126 <div class="memdoc"> 127 128 </div> 129 </div> 130 <a class="anchor" id="a11bcea7c6bc7dbe400a3855f5b8676ce"></a><!-- doxytag: member="usb-other.c::FATAL1" ref="a11bcea7c6bc7dbe400a3855f5b8676ce" args="(f, a)" --> 131 <div class="memitem"> 132 <div class="memproto"> 133 <table class="memname"> 134 <tr> 135 <td class="memname">#define FATAL1</td> 136 <td>(</td> 137 <td class="paramtype"> </td> 138 <td class="paramname">f, </td> 139 </tr> 140 <tr> 141 <td class="paramkey"></td> 142 <td></td> 143 <td class="paramtype"> </td> 144 <td class="paramname">a </td> 145 </tr> 146 <tr> 147 <td></td> 148 <td>)</td> 149 <td></td><td>   dmxLog(dmxFatal,f,a)</td> 150 </tr> 151 </table> 152 </div> 153 <div class="memdoc"> 154 155 </div> 156 </div> 157 <a class="anchor" id="a7952c9e9fe9c75be4964fc53a4299183"></a><!-- doxytag: member="usb-other.c::FATAL2" ref="a7952c9e9fe9c75be4964fc53a4299183" args="(f, a, b)" --> 158 <div class="memitem"> 159 <div class="memproto"> 160 <table class="memname"> 161 <tr> 162 <td class="memname">#define FATAL2</td> 163 <td>(</td> 164 <td class="paramtype"> </td> 165 <td class="paramname">f, </td> 166 </tr> 167 <tr> 168 <td class="paramkey"></td> 169 <td></td> 170 <td class="paramtype"> </td> 171 <td class="paramname">a, </td> 172 </tr> 173 <tr> 174 <td class="paramkey"></td> 175 <td></td> 176 <td class="paramtype"> </td> 177 <td class="paramname">b </td> 178 </tr> 179 <tr> 180 <td></td> 181 <td>)</td> 182 <td></td><td>   dmxLog(dmxFatal,f,a,b)</td> 183 </tr> 184 </table> 185 </div> 186 <div class="memdoc"> 187 188 </div> 189 </div> 190 <a class="anchor" id="aacf069d346230dd96812d5395728eef2"></a><!-- doxytag: member="usb-other.c::GETPRIV" ref="aacf069d346230dd96812d5395728eef2" args="" --> 191 <div class="memitem"> 192 <div class="memproto"> 193 <table class="memname"> 194 <tr> 195 <td class="memname">#define GETPRIV</td> 196 </tr> 197 </table> 198 </div> 199 <div class="memdoc"> 200 <b>Value:</b><div class="fragment"><pre class="fragment"><a class="code" href="struct__myPrivate.html">myPrivate</a> *priv \ 201 = ((<a class="code" href="dmxinput_8h.html#adb148db00fe0adf1938b815b9b934d26">DMXLocalInputInfoPtr</a>)(pDev->devicePrivate))->private 202 </pre></div> 203 <p>Referenced by <a class="el" href="usb-other_8h.html#a35a421bfc49015d8ed37cac84746ba78">othUSBGetInfo()</a>, and <a class="el" href="usb-other_8h.html#a1f1af19f36fcccfc6b67c814fb360573">othUSBOn()</a>.</p> 204 205 </div> 206 </div> 207 <a class="anchor" id="a837722a322e811d5e42242655f277b87"></a><!-- doxytag: member="usb-other.c::LOG0" ref="a837722a322e811d5e42242655f277b87" args="(f)" --> 208 <div class="memitem"> 209 <div class="memproto"> 210 <table class="memname"> 211 <tr> 212 <td class="memname">#define LOG0</td> 213 <td>(</td> 214 <td class="paramtype"> </td> 215 <td class="paramname">f</td><td>)</td> 216 <td>   dmxLog(dmxDebug,f)</td> 217 </tr> 218 </table> 219 </div> 220 <div class="memdoc"> 221 222 </div> 223 </div> 224 <a class="anchor" id="aab4b3434c36117a2ecdddec40716d97a"></a><!-- doxytag: member="usb-other.c::LOG1" ref="aab4b3434c36117a2ecdddec40716d97a" args="(f, a)" --> 225 <div class="memitem"> 226 <div class="memproto"> 227 <table class="memname"> 228 <tr> 229 <td class="memname">#define LOG1</td> 230 <td>(</td> 231 <td class="paramtype"> </td> 232 <td class="paramname">f, </td> 233 </tr> 234 <tr> 235 <td class="paramkey"></td> 236 <td></td> 237 <td class="paramtype"> </td> 238 <td class="paramname">a </td> 239 </tr> 240 <tr> 241 <td></td> 242 <td>)</td> 243 <td></td><td>   dmxLog(dmxDebug,f,a)</td> 244 </tr> 245 </table> 246 </div> 247 <div class="memdoc"> 248 249 </div> 250 </div> 251 <a class="anchor" id="a16da5d597d9bfb9e569a9bfb6996382c"></a><!-- doxytag: member="usb-other.c::LOG2" ref="a16da5d597d9bfb9e569a9bfb6996382c" args="(f, a, b)" --> 252 <div class="memitem"> 253 <div class="memproto"> 254 <table class="memname"> 255 <tr> 256 <td class="memname">#define LOG2</td> 257 <td>(</td> 258 <td class="paramtype"> </td> 259 <td class="paramname">f, </td> 260 </tr> 261 <tr> 262 <td class="paramkey"></td> 263 <td></td> 264 <td class="paramtype"> </td> 265 <td class="paramname">a, </td> 266 </tr> 267 <tr> 268 <td class="paramkey"></td> 269 <td></td> 270 <td class="paramtype"> </td> 271 <td class="paramname">b </td> 272 </tr> 273 <tr> 274 <td></td> 275 <td>)</td> 276 <td></td><td>   dmxLog(dmxDebug,f,a,b)</td> 277 </tr> 278 </table> 279 </div> 280 <div class="memdoc"> 281 282 </div> 283 </div> 284 <a class="anchor" id="a8247f0bca25789d2ac27674eb26e223f"></a><!-- doxytag: member="usb-other.c::LOG3" ref="a8247f0bca25789d2ac27674eb26e223f" args="(f, a, b, c)" --> 285 <div class="memitem"> 286 <div class="memproto"> 287 <table class="memname"> 288 <tr> 289 <td class="memname">#define LOG3</td> 290 <td>(</td> 291 <td class="paramtype"> </td> 292 <td class="paramname">f, </td> 293 </tr> 294 <tr> 295 <td class="paramkey"></td> 296 <td></td> 297 <td class="paramtype"> </td> 298 <td class="paramname">a, </td> 299 </tr> 300 <tr> 301 <td class="paramkey"></td> 302 <td></td> 303 <td class="paramtype"> </td> 304 <td class="paramname">b, </td> 305 </tr> 306 <tr> 307 <td class="paramkey"></td> 308 <td></td> 309 <td class="paramtype"> </td> 310 <td class="paramname">c </td> 311 </tr> 312 <tr> 313 <td></td> 314 <td>)</td> 315 <td></td><td>   dmxLog(dmxDebug,f,a,b,c)</td> 316 </tr> 317 </table> 318 </div> 319 <div class="memdoc"> 320 321 </div> 322 </div> 323 <a class="anchor" id="a11a17082bee3b1b8217ce8a12adcf814"></a><!-- doxytag: member="usb-other.c::MOTIONPROC" ref="a11a17082bee3b1b8217ce8a12adcf814" args="" --> 324 <div class="memitem"> 325 <div class="memproto"> 326 <table class="memname"> 327 <tr> 328 <td class="memname">#define MOTIONPROC   <a class="el" href="dmxinputinit_8h.html#a1279820425966adabf5c77357e4a289c">dmxMotionProcPtr</a></td> 329 </tr> 330 </table> 331 </div> 332 <div class="memdoc"> 333 334 </div> 335 </div> 336 <a class="anchor" id="a36b621e66020a8ee4641d56c73c4226b"></a><!-- doxytag: member="usb-other.c::test_bit" ref="a36b621e66020a8ee4641d56c73c4226b" args="(bit)" --> 337 <div class="memitem"> 338 <div class="memproto"> 339 <table class="memname"> 340 <tr> 341 <td class="memname">#define test_bit</td> 342 <td>(</td> 343 <td class="paramtype"> </td> 344 <td class="paramname">bit</td><td>)</td> 345 <td>   (priv->mask[(bit)/8] & (1 << ((bit)%8)))</td> 346 </tr> 347 </table> 348 </div> 349 <div class="memdoc"> 350 351 </div> 352 </div> 353 <hr/><h2>Function Documentation</h2> 354 <a class="anchor" id="a35a421bfc49015d8ed37cac84746ba78"></a><!-- doxytag: member="usb-other.c::othUSBGetInfo" ref="a35a421bfc49015d8ed37cac84746ba78" args="(DevicePtr pDev, DMXLocalInitInfoPtr info)" --> 355 <div class="memitem"> 356 <div class="memproto"> 357 <table class="memname"> 358 <tr> 359 <td class="memname">void othUSBGetInfo </td> 360 <td>(</td> 361 <td class="paramtype">DevicePtr </td> 362 <td class="paramname"><em>pDev</em>, </td> 363 </tr> 364 <tr> 365 <td class="paramkey"></td> 366 <td></td> 367 <td class="paramtype"><a class="el" href="struct__DMXLocalInitInfo.html">DMXLocalInitInfoPtr</a> </td> 368 <td class="paramname"><em>info</em> </td> 369 </tr> 370 <tr> 371 <td></td> 372 <td>)</td> 373 <td></td><td></td> 374 </tr> 375 </table> 376 </div> 377 <div class="memdoc"> 378 <p>Fill the <em>info</em> structure with information needed to initialize <em>pDev</em>. </p> 379 380 <p>References <a class="el" href="struct__DMXLocalInitInfo.html#a088c60acc5806ebcc401fa1da108b3f5">_DMXLocalInitInfo::belFeedbackClass</a>, <a class="el" href="dmxevents_8c.html#a144e2f1a618a0d14e2c9ce4fda50104a">DMX_MAX_AXES</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="usb-other_8c.html#aacf069d346230dd96812d5395728eef2">GETPRIV</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#accf423e8cf2614500108be41ed23492d">_DMXLocalInitInfo::ledFeedbackClass</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#a5e192625179bbed020a720e448c789aa">_DMXLocalInitInfo::numRelAxes</a>, <a class="el" href="struct__DMXLocalInitInfo.html#abb910012dc1abde90f954354f8ceb2a1">_DMXLocalInitInfo::res</a>, <a class="el" href="usb-common_8c.html#a36b621e66020a8ee4641d56c73c4226b">test_bit</a>, and <a class="el" href="struct__DMXLocalInitInfo.html#a9af277d2da1ade2138488a413e9c5ceb">_DMXLocalInitInfo::valuatorClass</a>.</p> 381 382 </div> 383 </div> 384 <a class="anchor" id="ad1b551c84928693ea1b2edebf6c4fcff"></a><!-- doxytag: member="usb-other.c::othUSBInit" ref="ad1b551c84928693ea1b2edebf6c4fcff" args="(DevicePtr pDev)" --> 385 <div class="memitem"> 386 <div class="memproto"> 387 <table class="memname"> 388 <tr> 389 <td class="memname">void othUSBInit </td> 390 <td>(</td> 391 <td class="paramtype">DevicePtr </td> 392 <td class="paramname"><em>pDev</em></td><td>)</td> 393 <td></td> 394 </tr> 395 </table> 396 </div> 397 <div class="memdoc"> 398 <p>Initialize <em>pDev</em> using <a class="el" href="usb-common_8h.html#a7f9b3a6d320a9ddbed689f4e12acb443">usbInit</a>. </p> 399 400 <p>References <a class="el" href="usb-common_8c.html#a7f9b3a6d320a9ddbed689f4e12acb443">usbInit()</a>, and <a class="el" href="usb-common_8h.html#a5e4410bf95babe73bcecc612691fc2d0acf68ef2e5cae37647c412e73c93960fb">usbOther</a>.</p> 401 402 <p>Referenced by <a class="el" href="usb-other_8h.html#a1f1af19f36fcccfc6b67c814fb360573">othUSBOn()</a>.</p> 403 404 </div> 405 </div> 406 <a class="anchor" id="a1f1af19f36fcccfc6b67c814fb360573"></a><!-- doxytag: member="usb-other.c::othUSBOn" ref="a1f1af19f36fcccfc6b67c814fb360573" args="(DevicePtr pDev)" --> 407 <div class="memitem"> 408 <div class="memproto"> 409 <table class="memname"> 410 <tr> 411 <td class="memname">int othUSBOn </td> 412 <td>(</td> 413 <td class="paramtype">DevicePtr </td> 414 <td class="paramname"><em>pDev</em></td><td>)</td> 415 <td></td> 416 </tr> 417 </table> 418 </div> 419 <div class="memdoc"> 420 <p>Turn <em>pDev</em> on (i.e., take input from <em>pDev</em>). </p> 421 422 <p>References <a class="el" href="usb-other_8c.html#aacf069d346230dd96812d5395728eef2">GETPRIV</a>, and <a class="el" href="usb-other_8c.html#ad1b551c84928693ea1b2edebf6c4fcff">othUSBInit()</a>.</p> 423 424 </div> 425 </div> 426 <a class="anchor" id="a3c2a6d36c58f4372068d019364831151"></a><!-- doxytag: member="usb-other.c::othUSBRead" ref="a3c2a6d36c58f4372068d019364831151" args="(DevicePtr pDev, MOTIONPROC motion, ENQUEUEPROC enqueue, CHECKPROC checkspecial, BLOCK block)" --> 427 <div class="memitem"> 428 <div class="memproto"> 429 <table class="memname"> 430 <tr> 431 <td class="memname">void othUSBRead </td> 432 <td>(</td> 433 <td class="paramtype">DevicePtr </td> 434 <td class="paramname"><em>pDev</em>, </td> 435 </tr> 436 <tr> 437 <td class="paramkey"></td> 438 <td></td> 439 <td class="paramtype">MOTIONPROC </td> 440 <td class="paramname"><em>motion</em>, </td> 441 </tr> 442 <tr> 443 <td class="paramkey"></td> 444 <td></td> 445 <td class="paramtype">ENQUEUEPROC </td> 446 <td class="paramname"><em>enqueue</em>, </td> 447 </tr> 448 <tr> 449 <td class="paramkey"></td> 450 <td></td> 451 <td class="paramtype">CHECKPROC </td> 452 <td class="paramname"><em>checkspecial</em>, </td> 453 </tr> 454 <tr> 455 <td class="paramkey"></td> 456 <td></td> 457 <td class="paramtype">BLOCK </td> 458 <td class="paramname"><em>block</em> </td> 459 </tr> 460 <tr> 461 <td></td> 462 <td>)</td> 463 <td></td><td></td> 464 </tr> 465 </table> 466 </div> 467 <div class="memdoc"> 468 <p>Read the USB device using <a class="el" href="usb-common_8h.html#aea8c9cef438c8851ef7f47d7167152cb">usbRead</a>. </p> 469 470 <p>References <a class="el" href="usb-common_8c.html#ae20f3b14463c8e288041f9970e388950">usbRead()</a>.</p> 471 472 </div> 473 </div> 474 </div> 475 </div> 476 <div id="nav-path" class="navpath"> 477 <ul> 478 <li class="navelem"><a class="el" href="usb-other_8c.html">usb-other.c</a> </li> 479 <hr> 480 <address> 481 <small> 482 Generated June 29, 2004 for <a 483 href="http://dmx.sourceforge.net">Distributed Multihead X</a> by 484 <a href="http://www.doxygen.org/index.html">doxygen</a> 485 1.3.4. 486 </small> 487 </addres> 488 </hr> 489 </body> 490 </html> 491