Gui updated, many keyset changes
[pierogi] / protocols / jvcprotocol.h
1 #ifndef JVCPROTOCOL_H
2 #define JVCPROTOCOL_H
3
4 #include "spaceprotocol.h"
5 #include "pirrx51hardware.h"
6
7 //
8 // JVC has its own protocol, similar in some ways to the popular NEC protocol.
9 // The main differences are that the address and command segments are not
10 // sent with an inverted copy, and that repeats are implemented by sending
11 // the body without a header, rather than a header without a body.
12 //
13
14 class JVCProtocol: public SpaceProtocol
15 {
16 public:
17   JVCProtocol(
18     QObject *guiObject,
19     unsigned int index);
20
21 public slots:
22   void startSendingCommand(
23     unsigned int threadableID,
24     PIRKeyName command);
25
26 private:
27   int generateStandardCommand(
28     const PIRKeyBits &pkb,
29     PIRRX51Hardware &device);
30
31   int generateHeadlessCommand(
32     const PIRKeyBits &pkb,
33     PIRRX51Hardware &device);
34 };
35
36 #endif // JVCPROTOCOL_H