Log In
New Account
  
Home My Page Project Cloud Code Snippets Project Openings Pierogi
Summary Forums Tracker Lists Tasks Docs News SCM Files
1 #ifndef PIRRX51HARDWARE_H
2 #define PIRRX51HARDWARE_H
4 //
5 // Encapsulates communication with the N900's IR hardware, using the LIRC
6 // device that (hopefully) exists on all N900s.
7 //
9 // To my current knowledge, you can send a maximum of 256 integers to the 
10 // N900's IR device driver, so that's probably a good limit to set:
11 #define BUFFER_SIZE 256
13 class PIRRX51Hardware
14 {
15 public:
16   PIRRX51Hardware();
18   PIRRX51Hardware(
19     unsigned int frequency,
20     unsigned int dutyCycle);
22   ~PIRRX51Hardware();
24   // Most remotes will just want to append pairs of on/off times:
25   void addPair(
26     int pulse,
27     int space);
29   // Some remotes need to specify the switching values individually:
30   void addSingle(
31     int single);
33   // Send the buffered pulses to the IR device:
34   void sendCommandToDevice();
36   void setCarrierFrequency(
37     unsigned int frequency);
39   void setDutyCycle(
40     unsigned int dutyCycle);
42 private:
43   void openLircDevice();
45   int fileDescriptor;
47   int buffer[BUFFER_SIZE];
48   int index;
49 };
51 #endif // PIRRX51HARDWARE_H

Terms of Use    Privacy Policy    Contribution Guidelines    Feedback

Powered By GForge Collaborative Development Environment