First import
[xorg_rtime.git] / xorg-server-1.4 / hw / dmx / doc / html / usb-keyboard_8c.html
blob5da5a0b3b17b50056691a3d3e86268b7268cb2fa
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.3.4 -->
10 <div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a></div>
11 <h1>usb-keyboard.c File Reference</h1><code>#include "atKeynames.h"</code><br>
12 <code>#include "<a class="el" href="usb-private_8h-source.html">usb-private.h</a>"</code><br>
13 <code>#include "<a class="el" href="usb-keyboard_8h-source.html">usb-keyboard.h</a>"</code><br>
14 <table border=0 cellpadding=0 cellspacing=0>
15 <tr><td></td></tr>
16 <tr><td colspan=2><br><h2>Functions</h2></td></tr>
17 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="usb-keyboard_8c.html#a20">kbdUSBCtrl</a> (DevicePtr pDev, KeybdCtrl *ctrl)</td></tr>
19 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="usb-keyboard_8c.html#a21">kbdUSBInit</a> (DevicePtr pDev)</td></tr>
21 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="usb-keyboard_8c.html#a23">kbdUSBRead</a> (DevicePtr pDev, MOTIONPROC motion, ENQUEUEPROC enqueue, CHECKPROC checkspecial, BLOCK block)</td></tr>
23 <tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="usb-keyboard_8c.html#a24">kbdUSBOn</a> (DevicePtr pDev)</td></tr>
25 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="usb-keyboard_8c.html#a26">kbdUSBGetInfo</a> (DevicePtr pDev, <a class="el" href="struct__DMXLocalInitInfo.html">DMXLocalInitInfoPtr</a> info)</td></tr>
27 </table>
28 <hr><a name="_details"></a><h2>Detailed Description</h2>
29 This code implements a low-level device driver for a USB keyboard under Linux. The keymap description is derived from code by Thomas Roell, Orest Zborowski.<hr><h2>Function Documentation</h2>
30 <a class="anchor" name="a20" doxytag="usb-keyboard.c::kbdUSBCtrl" ></a><p>
31 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
32 <tr>
33 <td class="mdRow">
34 <table cellpadding="0" cellspacing="0" border="0">
35 <tr>
36 <td class="md" nowrap valign="top"> void kbdUSBCtrl </td>
37 <td class="md" valign="top">(&nbsp;</td>
38 <td class="md" nowrap valign="top">DevicePtr&nbsp;</td>
39 <td class="mdname" nowrap> <em>pDev</em>, </td>
40 </tr>
41 <tr>
42 <td></td>
43 <td></td>
44 <td class="md" nowrap>KeybdCtrl *&nbsp;</td>
45 <td class="mdname" nowrap> <em>ctrl</em></td>
46 </tr>
47 <tr>
48 <td></td>
49 <td class="md">)&nbsp;</td>
50 <td class="md" colspan="2"></td>
51 </tr>
53 </table>
54 </td>
55 </tr>
56 </table>
57 <table cellspacing=5 cellpadding=0 border=0>
58 <tr>
59 <td>
60 &nbsp;
61 </td>
62 <td>
64 <p>
65 Set the LEDs. </td>
66 </tr>
67 </table>
68 <a class="anchor" name="a26" doxytag="usb-keyboard.c::kbdUSBGetInfo" ></a><p>
69 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
70 <tr>
71 <td class="mdRow">
72 <table cellpadding="0" cellspacing="0" border="0">
73 <tr>
74 <td class="md" nowrap valign="top"> void kbdUSBGetInfo </td>
75 <td class="md" valign="top">(&nbsp;</td>
76 <td class="md" nowrap valign="top">DevicePtr&nbsp;</td>
77 <td class="mdname" nowrap> <em>pDev</em>, </td>
78 </tr>
79 <tr>
80 <td></td>
81 <td></td>
82 <td class="md" nowrap><a class="el" href="struct__DMXLocalInitInfo.html">DMXLocalInitInfoPtr</a>&nbsp;</td>
83 <td class="mdname" nowrap> <em>info</em></td>
84 </tr>
85 <tr>
86 <td></td>
87 <td class="md">)&nbsp;</td>
88 <td class="md" colspan="2"></td>
89 </tr>
91 </table>
92 </td>
93 </tr>
94 </table>
95 <table cellspacing=5 cellpadding=0 border=0>
96 <tr>
97 <td>
98 &nbsp;
99 </td>
100 <td>
103 Fill the <em>info</em> structure with information needed to initialize <em>pDev</em>. </td>
104 </tr>
105 </table>
106 <a class="anchor" name="a21" doxytag="usb-keyboard.c::kbdUSBInit" ></a><p>
107 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
108 <tr>
109 <td class="mdRow">
110 <table cellpadding="0" cellspacing="0" border="0">
111 <tr>
112 <td class="md" nowrap valign="top"> void kbdUSBInit </td>
113 <td class="md" valign="top">(&nbsp;</td>
114 <td class="md" nowrap valign="top">DevicePtr&nbsp;</td>
115 <td class="mdname1" valign="top" nowrap> <em>pDev</em> </td>
116 <td class="md" valign="top">&nbsp;)&nbsp;</td>
117 <td class="md" nowrap></td>
118 </tr>
120 </table>
121 </td>
122 </tr>
123 </table>
124 <table cellspacing=5 cellpadding=0 border=0>
125 <tr>
126 <td>
127 &nbsp;
128 </td>
129 <td>
132 Initialize <em>pDev</em> using <a class="el" href="usb-common_8h.html#a6">usbInit</a>. </td>
133 </tr>
134 </table>
135 <a class="anchor" name="a24" doxytag="usb-keyboard.c::kbdUSBOn" ></a><p>
136 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
137 <tr>
138 <td class="mdRow">
139 <table cellpadding="0" cellspacing="0" border="0">
140 <tr>
141 <td class="md" nowrap valign="top"> int kbdUSBOn </td>
142 <td class="md" valign="top">(&nbsp;</td>
143 <td class="md" nowrap valign="top">DevicePtr&nbsp;</td>
144 <td class="mdname1" valign="top" nowrap> <em>pDev</em> </td>
145 <td class="md" valign="top">&nbsp;)&nbsp;</td>
146 <td class="md" nowrap></td>
147 </tr>
149 </table>
150 </td>
151 </tr>
152 </table>
153 <table cellspacing=5 cellpadding=0 border=0>
154 <tr>
155 <td>
156 &nbsp;
157 </td>
158 <td>
161 Turn <em>pDev</em> on (i.e., take input from <em>pDev</em>). </td>
162 </tr>
163 </table>
164 <a class="anchor" name="a23" doxytag="usb-keyboard.c::kbdUSBRead" ></a><p>
165 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
166 <tr>
167 <td class="mdRow">
168 <table cellpadding="0" cellspacing="0" border="0">
169 <tr>
170 <td class="md" nowrap valign="top"> void kbdUSBRead </td>
171 <td class="md" valign="top">(&nbsp;</td>
172 <td class="md" nowrap valign="top">DevicePtr&nbsp;</td>
173 <td class="mdname" nowrap> <em>pDev</em>, </td>
174 </tr>
175 <tr>
176 <td></td>
177 <td></td>
178 <td class="md" nowrap>MOTIONPROC&nbsp;</td>
179 <td class="mdname" nowrap> <em>motion</em>, </td>
180 </tr>
181 <tr>
182 <td></td>
183 <td></td>
184 <td class="md" nowrap>ENQUEUEPROC&nbsp;</td>
185 <td class="mdname" nowrap> <em>enqueue</em>, </td>
186 </tr>
187 <tr>
188 <td></td>
189 <td></td>
190 <td class="md" nowrap>CHECKPROC&nbsp;</td>
191 <td class="mdname" nowrap> <em>checkspecial</em>, </td>
192 </tr>
193 <tr>
194 <td></td>
195 <td></td>
196 <td class="md" nowrap>BLOCK&nbsp;</td>
197 <td class="mdname" nowrap> <em>block</em></td>
198 </tr>
199 <tr>
200 <td></td>
201 <td class="md">)&nbsp;</td>
202 <td class="md" colspan="2"></td>
203 </tr>
205 </table>
206 </td>
207 </tr>
208 </table>
209 <table cellspacing=5 cellpadding=0 border=0>
210 <tr>
211 <td>
212 &nbsp;
213 </td>
214 <td>
217 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. </td>
218 </tr>
219 </table>
220 <hr>
221 <address>
222 <small>
223 Generated June 29, 2004 for <a
224 href="http://dmx.sourceforge.net">Distributed Multihead X</a> by
225 <a href="http://www.doxygen.org/index.html">doxygen</a>
226 1.3.4.
227 </small>
228 </addres>
229 </hr>
230 </body>
231 </html>