Possible Uninstall Fix, plus cleanup, more keysets
[pierogi] / protocols / rc6protocol.h
1 #ifndef RC6PROTOCOL_H
2 #define RC6PROTOCOL_H
3
4 #include "pirprotocol.h"
5
6 class PIRRX51Hardware;
7
8 //
9 // The RC6 protocol is a much fancier, much more complex successor to the
10 // RC5 protocol.  The following code does not come close to supporting
11 // all the possible permutations of this protocol!
12 //
13
14 class RC6Protocol: public PIRProtocol
15 {
16 public:
17   RC6Protocol(
18     QObject *guiObject,
19     unsigned int index,
20     unsigned int eightBitControl);
21
22 public slots:
23   void startSendingCommand(
24     unsigned int threadableID,
25     PIRKeyName command);
26
27 protected:
28   unsigned int biphaseUnit;
29
30 private:
31   int pushBits(
32     const CommandSequence &bits,
33     PIRRX51Hardware &device);
34
35   unsigned int buffer;
36   int keypressCount;
37
38   bool bufferContainsSpace;
39   bool bufferContainsPulse;
40 };
41
42 #endif // RC6PROTOCOL_H