1 <!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 4.0 Transitional//EN">
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">
9 <!-- Generated by Doxygen 1.3.4 -->
10 <div class=
"qindex"><a class=
"qindex" href=
"main.html">Main
Page
</a> |
<a class=
"qindex" href=
"classes.html">Alphabetical
List
</a> |
<a class=
"qindex" href=
"annotated.html">Data
Structures
</a> |
<a class=
"qindex" href=
"files.html">File
List
</a> |
<a class=
"qindex" href=
"functions.html">Data
Fields
</a> |
<a class=
"qindex" href=
"globals.html">Globals
</a></div>
11 <h1>lnx-keyboard.h File Reference
</h1>
13 <a href=
"lnx-keyboard_8h-source.html">Go to the source code of this file.
</a><table border=
0 cellpadding=
0 cellspacing=
0>
15 <tr><td colspan=
2><br><h2>Functions
</h2></td></tr>
16 <tr><td class=
"memItemLeft" nowrap align=right valign=top
>pointer
</td><td class=
"memItemRight" valign=bottom
><a class=
"el" href=
"lnx-keyboard_8h.html#a0">kbdLinuxCreatePrivate
</a> (DeviceIntPtr pKeyboard)
</td></tr>
18 <tr><td class=
"memItemLeft" nowrap align=right valign=top
>void
</td><td class=
"memItemRight" valign=bottom
><a class=
"el" href=
"lnx-keyboard_8h.html#a1">kbdLinuxDestroyPrivate
</a> (pointer private)
</td></tr>
20 <tr><td class=
"memItemLeft" nowrap align=right valign=top
>void
</td><td class=
"memItemRight" valign=bottom
><a class=
"el" href=
"lnx-keyboard_8h.html#a2">kbdLinuxInit
</a> (DevicePtr pDev)
</td></tr>
22 <tr><td class=
"memItemLeft" nowrap align=right valign=top
>void
</td><td class=
"memItemRight" valign=bottom
><a class=
"el" href=
"lnx-keyboard_8h.html#a3">kbdLinuxGetInfo
</a> (DevicePtr pDev,
<a class=
"el" href=
"struct__DMXLocalInitInfo.html">DMXLocalInitInfoPtr
</a> info)
</td></tr>
24 <tr><td class=
"memItemLeft" nowrap align=right valign=top
>int
</td><td class=
"memItemRight" valign=bottom
><a class=
"el" href=
"lnx-keyboard_8h.html#a4">kbdLinuxOn
</a> (DevicePtr pDev)
</td></tr>
26 <tr><td class=
"memItemLeft" nowrap align=right valign=top
>void
</td><td class=
"memItemRight" valign=bottom
><a class=
"el" href=
"lnx-keyboard_8h.html#a5">kbdLinuxOff
</a> (DevicePtr pDev)
</td></tr>
28 <tr><td class=
"memItemLeft" nowrap align=right valign=top
>void
</td><td class=
"memItemRight" valign=bottom
><a class=
"el" href=
"lnx-keyboard_8h.html#a6">kbdLinuxVTPreSwitch
</a> (pointer p)
</td></tr>
30 <tr><td class=
"memItemLeft" nowrap align=right valign=top
>void
</td><td class=
"memItemRight" valign=bottom
><a class=
"el" href=
"lnx-keyboard_8h.html#a7">kbdLinuxVTPostSwitch
</a> (pointer p)
</td></tr>
32 <tr><td class=
"memItemLeft" nowrap align=right valign=top
>void
</td><td class=
"memItemRight" valign=bottom
><a class=
"el" href=
"lnx-keyboard_8h.html#a10">kbdLinuxCtrl
</a> (DevicePtr pDev, KeybdCtrl *ctrl)
</td></tr>
34 <tr><td class=
"memItemLeft" nowrap align=right valign=top
>void
</td><td class=
"memItemRight" valign=bottom
><a class=
"el" href=
"lnx-keyboard_8h.html#a11">kbdLinuxBell
</a> (DevicePtr pDev, int percent, int volume, int pitch, int duration)
</td></tr>
37 <hr><a name=
"_details"></a><h2>Detailed Description
</h2>
38 Interface to Linux keyboard driver.
<dl compact
><dt><b>See also:
</b></dt><dd>lnx-keyboard.c
</dd></dl>
39 <hr><h2>Function Documentation
</h2>
40 <a class=
"anchor" name=
"a11" doxytag=
"lnx-keyboard.h::kbdLinuxBell" ></a><p>
41 <table class=
"mdTable" width=
"100%" cellpadding=
"2" cellspacing=
"0">
44 <table cellpadding=
"0" cellspacing=
"0" border=
"0">
46 <td class=
"md" nowrap
valign=
"top"> void kbdLinuxBell
</td>
47 <td class=
"md" valign=
"top">(
</td>
48 <td class=
"md" nowrap
valign=
"top">DevicePtr
</td>
49 <td class=
"mdname" nowrap
> <em>pDev
</em>,
</td>
54 <td class=
"md" nowrap
>int
</td>
55 <td class=
"mdname" nowrap
> <em>percent
</em>,
</td>
60 <td class=
"md" nowrap
>int
</td>
61 <td class=
"mdname" nowrap
> <em>volume
</em>,
</td>
66 <td class=
"md" nowrap
>int
</td>
67 <td class=
"mdname" nowrap
> <em>pitch
</em>,
</td>
72 <td class=
"md" nowrap
>int
</td>
73 <td class=
"mdname" nowrap
> <em>duration
</em></td>
77 <td class=
"md">)
</td>
78 <td class=
"md" colspan=
"2"></td>
85 <table cellspacing=
5 cellpadding=
0 border=
0>
94 Note: we completely ignore the
<em>volume
</em>, since Linux's ioctl() interface does not provide a way to control it. If it did, the XBell manpage tells how the actual volume is a function of the percent and the (base) volume.
<p>
95 Note that most of the other PC-based bell drivers compute the duration for KDMKTONE as a function of the volume and the duration. For some drivers, the duration is only measured in mS if the volume is
50, and is scaled by the volume for other values. This seems confusing and possibly incorrect (the xset man page says that the bell will be
"as closely as it can to the user's specifications" -- if we ignore the volume and set the duration correctly, then we'll get one parameter
"wrong" -- but if we use the volume to scale the duration, then we'll get both parameters
"wrong").
</td>
98 <a class=
"anchor" name=
"a0" doxytag=
"lnx-keyboard.h::kbdLinuxCreatePrivate" ></a><p>
99 <table class=
"mdTable" width=
"100%" cellpadding=
"2" cellspacing=
"0">
102 <table cellpadding=
"0" cellspacing=
"0" border=
"0">
104 <td class=
"md" nowrap
valign=
"top"> pointer kbdLinuxCreatePrivate
</td>
105 <td class=
"md" valign=
"top">(
</td>
106 <td class=
"md" nowrap
valign=
"top">DeviceIntPtr
</td>
107 <td class=
"mdname1" valign=
"top" nowrap
> <em>pKeyboard
</em> </td>
108 <td class=
"md" valign=
"top"> )
</td>
109 <td class=
"md" nowrap
></td>
116 <table cellspacing=
5 cellpadding=
0 border=
0>
124 Create a private structure for use within this file.
</td>
127 <a class=
"anchor" name=
"a10" doxytag=
"lnx-keyboard.h::kbdLinuxCtrl" ></a><p>
128 <table class=
"mdTable" width=
"100%" cellpadding=
"2" cellspacing=
"0">
131 <table cellpadding=
"0" cellspacing=
"0" border=
"0">
133 <td class=
"md" nowrap
valign=
"top"> void kbdLinuxCtrl
</td>
134 <td class=
"md" valign=
"top">(
</td>
135 <td class=
"md" nowrap
valign=
"top">DevicePtr
</td>
136 <td class=
"mdname" nowrap
> <em>pDev
</em>,
</td>
141 <td class=
"md" nowrap
>KeybdCtrl *
</td>
142 <td class=
"mdname" nowrap
> <em>ctrl
</em></td>
146 <td class=
"md">)
</td>
147 <td class=
"md" colspan=
"2"></td>
154 <table cellspacing=
5 cellpadding=
0 border=
0>
165 <a class=
"anchor" name=
"a1" doxytag=
"lnx-keyboard.h::kbdLinuxDestroyPrivate" ></a><p>
166 <table class=
"mdTable" width=
"100%" cellpadding=
"2" cellspacing=
"0">
169 <table cellpadding=
"0" cellspacing=
"0" border=
"0">
171 <td class=
"md" nowrap
valign=
"top"> void kbdLinuxDestroyPrivate
</td>
172 <td class=
"md" valign=
"top">(
</td>
173 <td class=
"md" nowrap
valign=
"top">pointer
</td>
174 <td class=
"mdname1" valign=
"top" nowrap
> <em>priv
</em> </td>
175 <td class=
"md" valign=
"top"> )
</td>
176 <td class=
"md" nowrap
></td>
183 <table cellspacing=
5 cellpadding=
0 border=
0>
191 Destroy a private structure.
</td>
194 <a class=
"anchor" name=
"a3" doxytag=
"lnx-keyboard.h::kbdLinuxGetInfo" ></a><p>
195 <table class=
"mdTable" width=
"100%" cellpadding=
"2" cellspacing=
"0">
198 <table cellpadding=
"0" cellspacing=
"0" border=
"0">
200 <td class=
"md" nowrap
valign=
"top"> void kbdLinuxGetInfo
</td>
201 <td class=
"md" valign=
"top">(
</td>
202 <td class=
"md" nowrap
valign=
"top">DevicePtr
</td>
203 <td class=
"mdname" nowrap
> <em>pDev
</em>,
</td>
208 <td class=
"md" nowrap
><a class=
"el" href=
"struct__DMXLocalInitInfo.html">DMXLocalInitInfoPtr
</a> </td>
209 <td class=
"mdname" nowrap
> <em>info
</em></td>
213 <td class=
"md">)
</td>
214 <td class=
"md" colspan=
"2"></td>
221 <table cellspacing=
5 cellpadding=
0 border=
0>
229 Fill the
<em>info
</em> structure with information needed to initialize
<em>pDev
</em>.
</td>
232 <a class=
"anchor" name=
"a2" doxytag=
"lnx-keyboard.h::kbdLinuxInit" ></a><p>
233 <table class=
"mdTable" width=
"100%" cellpadding=
"2" cellspacing=
"0">
236 <table cellpadding=
"0" cellspacing=
"0" border=
"0">
238 <td class=
"md" nowrap
valign=
"top"> void kbdLinuxInit
</td>
239 <td class=
"md" valign=
"top">(
</td>
240 <td class=
"md" nowrap
valign=
"top">DevicePtr
</td>
241 <td class=
"mdname1" valign=
"top" nowrap
> <em>pDev
</em> </td>
242 <td class=
"md" valign=
"top"> )
</td>
243 <td class=
"md" nowrap
></td>
250 <table cellspacing=
5 cellpadding=
0 border=
0>
258 Initialize the
<em>pDev
</em> as a Linux keyboard.
</td>
261 <a class=
"anchor" name=
"a5" doxytag=
"lnx-keyboard.h::kbdLinuxOff" ></a><p>
262 <table class=
"mdTable" width=
"100%" cellpadding=
"2" cellspacing=
"0">
265 <table cellpadding=
"0" cellspacing=
"0" border=
"0">
267 <td class=
"md" nowrap
valign=
"top"> void kbdLinuxOff
</td>
268 <td class=
"md" valign=
"top">(
</td>
269 <td class=
"md" nowrap
valign=
"top">DevicePtr
</td>
270 <td class=
"mdname1" valign=
"top" nowrap
> <em>pDev
</em> </td>
271 <td class=
"md" valign=
"top"> )
</td>
272 <td class=
"md" nowrap
></td>
279 <table cellspacing=
5 cellpadding=
0 border=
0>
287 Turn
<em>pDev
</em> off (i.e., stop taking input from
<em>pDev
</em>).
</td>
290 <a class=
"anchor" name=
"a4" doxytag=
"lnx-keyboard.h::kbdLinuxOn" ></a><p>
291 <table class=
"mdTable" width=
"100%" cellpadding=
"2" cellspacing=
"0">
294 <table cellpadding=
"0" cellspacing=
"0" border=
"0">
296 <td class=
"md" nowrap
valign=
"top"> int kbdLinuxOn
</td>
297 <td class=
"md" valign=
"top">(
</td>
298 <td class=
"md" nowrap
valign=
"top">DevicePtr
</td>
299 <td class=
"mdname1" valign=
"top" nowrap
> <em>pDev
</em> </td>
300 <td class=
"md" valign=
"top"> )
</td>
301 <td class=
"md" nowrap
></td>
308 <table cellspacing=
5 cellpadding=
0 border=
0>
316 Turn
<em>pDev
</em> on (i.e., take input from
<em>pDev
</em>).
</td>
319 <a class=
"anchor" name=
"a7" doxytag=
"lnx-keyboard.h::kbdLinuxVTPostSwitch" ></a><p>
320 <table class=
"mdTable" width=
"100%" cellpadding=
"2" cellspacing=
"0">
323 <table cellpadding=
"0" cellspacing=
"0" border=
"0">
325 <td class=
"md" nowrap
valign=
"top"> void kbdLinuxVTPostSwitch
</td>
326 <td class=
"md" valign=
"top">(
</td>
327 <td class=
"md" nowrap
valign=
"top">pointer
</td>
328 <td class=
"mdname1" valign=
"top" nowrap
> <em>p
</em> </td>
329 <td class=
"md" valign=
"top"> )
</td>
330 <td class=
"md" nowrap
></td>
337 <table cellspacing=
5 cellpadding=
0 border=
0>
345 Currently unused hook called after returning from a VT switch.
</td>
348 <a class=
"anchor" name=
"a6" doxytag=
"lnx-keyboard.h::kbdLinuxVTPreSwitch" ></a><p>
349 <table class=
"mdTable" width=
"100%" cellpadding=
"2" cellspacing=
"0">
352 <table cellpadding=
"0" cellspacing=
"0" border=
"0">
354 <td class=
"md" nowrap
valign=
"top"> void kbdLinuxVTPreSwitch
</td>
355 <td class=
"md" valign=
"top">(
</td>
356 <td class=
"md" nowrap
valign=
"top">pointer
</td>
357 <td class=
"mdname1" valign=
"top" nowrap
> <em>p
</em> </td>
358 <td class=
"md" valign=
"top"> )
</td>
359 <td class=
"md" nowrap
></td>
366 <table cellspacing=
5 cellpadding=
0 border=
0>
374 Currently unused hook called prior to an VT switch.
</td>
380 Generated June
29,
2004 for
<a
381 href=
"http://dmx.sourceforge.net">Distributed Multihead X
</a> by
382 <a href=
"http://www.doxygen.org/index.html">doxygen
</a>