4 #include "spaceprotocol.h"
9 // LIRC does not itself have an actual protocol; what it does do is attempt
10 // to capture IR pulses in more-or-less the most general method possible.
11 // I'm attempting to push all my keysets into using code paths specific to
12 // their actual protocols, but I still don't know all the protocols myself.
13 // Where I don't have that information, I'll use LIRC's system. The following
14 // pretty much follows LIRC's system for space-based encoding patterns.
17 class LIRCProtocol: public SpaceProtocol
27 unsigned int gapSpace,
41 void setRepeatNeedsHeader(
44 void setFullHeadlessRepeat(
48 void startSendingCommand(
49 unsigned int threadableID,
57 unsigned int repeatPulse;
58 unsigned int repeatSpace;
60 bool repeatNeedsHeader; // Put the header ahead of the repeat pulse
61 bool fullHeadlessRepeat; // Repeat full command but without header
63 int generateStandardCommand(
64 const PIRKeyBits &bits,
65 PIRRX51Hardware &device);
67 int generateHeadlessCommand(
68 const PIRKeyBits &bits,
69 PIRRX51Hardware &device);
71 int generateRepeatCommand(
72 PIRRX51Hardware &device);
75 #endif // LIRCPROTOCOL_H