1 |
NAME |
2 |
RCU - Remote Control Unit Interface |
3 |
|
4 |
SYNOPSIS |
5 |
use RCU; |
6 |
|
7 |
DESCRIPTION |
8 |
This module provides a generic interface to remote control units (only |
9 |
receivers at the moment, as I cannot test more). It only provides an |
10 |
abstract management interface, other modules are required for the |
11 |
hardware access (RCU::Irman and RCU::Lirc are included, however). |
12 |
|
13 |
GETTING STARTED |
14 |
Please read RCU::Receipts to get some idea on how to proceed after you |
15 |
installed the module (testing & standard techniques). |
16 |
|
17 |
THE RCU CLASS |
18 |
The RCU class provides a general interface to anything you might want to |
19 |
do to, it represents your application. |
20 |
|
21 |
$rcu = new RCU "interface-spec" |
22 |
Creates a new RCU application. "interface" must be an interface |
23 |
specification similar to DBI's DSN: |
24 |
|
25 |
RCU:ifname:arg:arg... |
26 |
|
27 |
Examples: low-level interface (without "RCU::" prefix) or an |
28 |
arrayref containing name and constructor arguments. If the interface |
29 |
name has a "::" prefix it will be used as-is (without that prefix, |
30 |
of course). |
31 |
|
32 |
For a much better interface, see RCU::Event. |
33 |
|
34 |
$rcu->interface |
35 |
Return the RCU::Interface object used by this RCU object. |
36 |
|
37 |
($keycode, $repeat) = $rcu->get |
38 |
($keycode, $repeat) = $rcu->poll |
39 |
Simplified interface to the RCU (See also RCU::Event), return a |
40 |
cooked keycode and a repeat count (initial keypress = 0, increasing |
41 |
while the key is pressed). If "get" is called in scalar context it |
42 |
only returns unrepeated keycodes. |
43 |
|
44 |
This interface is problematic: no key-up events are generated, and |
45 |
the repeat events occur pseudo-randomly and have no time relation |
46 |
between each other, so better use the event-based interface provided |
47 |
by RCU::Event. |
48 |
|
49 |
THE RCU::Key CLASS |
50 |
This class collects information about rcu keys. |
51 |
|
52 |
THE RCU::Interface CLASS |
53 |
"RCU::Interface" provides the base class for all rcu interfaces, it is |
54 |
rarely used directly. |
55 |
|
56 |
fd Return a unix filehandle that can be polled, or -1 if this is not |
57 |
possible. |
58 |
|
59 |
($time, $raw, $cooked) = $if->get |
60 |
($time, $raw, $cooked) = $if->poll |
61 |
Wait until a RCU event happens and return it. If the device can |
62 |
translate raw keys events (e.g. hex key codes) into meaningful names |
63 |
("cooked" keys) it will return the cooked name as second value, |
64 |
otherwise both return values are identical. |
65 |
|
66 |
"get" always returns an event, waiting if neccessary, while "poll" |
67 |
only checks for an event: If one is pending it is returned, |
68 |
otherwise "poll" returns nothing. |
69 |
|
70 |
SEE ALSO |
71 |
RCU::Irman, RCU::Lirc. |
72 |
|
73 |
AUTHOR |
74 |
This perl extension was written by Marc Lehmann <schmorp@schmorp.de>. |
75 |
|
76 |
BUGS |
77 |
No send interface. |
78 |
|