Advanced Settings Panel
[pierogi] / protocols / irobotprotocol.h
1 #ifndef IROBOTPROTOCOL_H
2 #define IROBOTPROTOCOL_H
3
4 #include "spaceprotocol.h"
5
6 class PIRRX51Hardware;
7
8 // The iRobot protocol is extremely simple, but my sources differ slightly
9 // on its exact properties (particularly how repetition is handled).  So
10 // this may need some reworking in the future.
11
12 class IRobotProtocol: public SpaceProtocol
13 {
14 public:
15   IRobotProtocol(
16     QObject *guiObject,
17     unsigned int index);
18
19 public slots:
20   void startSendingCommand(
21     unsigned int threadableID,
22     PIRKeyName command);
23
24 private:
25   int generateCommand(
26     const PIRKeyBits &bits,
27     PIRRX51Hardware &device);
28 };
29
30 #endif // IROBOTPROTOCOL_H