19 #ifndef IR_REMOTE_TYPES_H    20 #define IR_REMOTE_TYPES_H    33 #if defined(__linux__)    34 #include <linux/types.h>    37 #ifdef HAVE_KERNEL_LIRC_H    38 #include <linux/lirc.h>    40 #include "media/lirc.h"    99 #define IR_PROTOCOL_MASK 0x07ff   104 #define RAW_CODES       0x0001     106 #define SHIFT_ENC          RC5     113 #define SPACE_ENC       0x0010     114 #define SPACE_FIRST     0x0020     115 #define GOLDSTAR        0x0040     116 #define GRUNDIG         0x0080     118 #define SERIAL          0x0200     122 #define REVERSE         0x0800   123 #define NO_HEAD_REP     0x1000             124 #define NO_FOOT_REP     0x2000             125 #define CONST_LENGTH    0x4000             126 #define REPEAT_HEADER   0x8000             128 #define COMPAT_REVERSE  0x00010000         133 #define REPEAT_MAX_DEFAULT 600   135 #define DEFAULT_FREQ 38000   137 #define IR_PARITY_NONE 0   138 #define IR_PARITY_EVEN 1   139 #define IR_PARITY_ODD  2   225         ir_code                 toggle_bit_mask_state;
   226         int                     toggle_mask_state;
   227         int                     repeat_countdown;
   231         struct timeval          last_send;                      
   239         lirc_t                  min_pulse_length, max_pulse_length;
   240         lirc_t                  min_space_length, max_space_length;
 lirc_t min_remaining_gap
remember gap for CONST_LENGTH remotes 
One remote as represented in the configuration file. 
int bits
bits (length of code) 
lirc_t min_total_signal_length
how long is the shortest signal including gap 
An ir_code for entering into (singly) linked lists, i.e. 
unsigned int freq
modulation frequency 
lirc_t max_gap_length
how long is the longest gap 
lirc_t max_total_signal_length
how long is the longest signal including gap 
ir_code post_data
data which the remote sends after actual keycode 
lirc_t post_s
signal between keycode and post_code 
lirc_t plead
leading pulse 
ir_code repeat_mask
mask defines which bits are inverted for repeats 
struct ir_ncode * toggle_code
toggle code received or sent last 
struct ir_code_node * next
Linked list of the subsequent ir_code's, after the first one. 
unsigned int baud
can be overridden by [p|s]zero, [p|s]one 
const char * name
name of remote control 
lirc_t * signals
(private) 
int eps
eps (relative tolerance) 
struct ir_ncode * last_code
code received or sent last 
unsigned int parity
currently unsupported 
ir_code pre
pre data, before code. 
lirc_t ptrail
trailing pulse 
int pre_data_bits
length of pre_data 
lirc_t min_gap_length
how long is the shortest gap 
int manual_sort
If set in any remote, disables automatic sorting. 
char * name
Name of command. 
struct ir_code_node * current
Should point at the ir_code currently being transmitted, or NULL if none. 
unsigned int duty_cycle
0<duty cycle<=100 default: 50 
int post_data_bits
length of post_data 
lirc_t sthree
3 (only used for RC-MM) 
ir_code toggle_mask
Sharp (?) error detection scheme. 
ir_code pre_data
data which the remote sends before actual keycode 
ir_code post
post data, sent after code. 
uint32_t gap
time between signals in usecs 
char * dyncodes_name
name for unknown buttons 
uint32_t repeat_gap
time between two repeat codes if different from gap 
lirc_t max_remaining_gap
Estimated max time of trailing gap. 
ir_code code
Code part, matched to code defintion. 
uint32_t gap2
time between signals in usecs 
unsigned int stop_bits
mapping: 1->2 1.5->3 2->4 
lirc_t pre_s
signal between pre_data and keycode 
int dyncode
last received code 
IR Command, corresponding to one (command defining) line of the configuration file. 
lirc_t stwo
2 (only used for RC-MM) 
unsigned int aeps
detecting very short pulses is difficult with relative tolerance for some remotes, this is an absolute tolerance to solve this problem usually you can say 0 here. 
lirc_t srepeat
indicate repeating 
State describing code, pre, post + gap and repeat state. 
int release_detected
set by release generator 
lirc_t min_remaining_gap
Estimated min time of trailing gap. 
struct ir_code_node * transmit_state
(private) 
lirc_t max_remaining_gap
gap range 
int suppress_repeat
suppress unwanted repeats 
ir_code code
The first code of the command. 
const char * driver
Name of driver for LIRCCODE cases. 
struct ir_ncode * next_ncode
Next code in recorded buttons list. 
unsigned int min_code_repeat
meaningful only if remote sends a repeat code: in this case this value indicates how often the real c...
ir_code rc6_mask
RC-6 doubles signal length of some bits. 
int repeat_flag
True if code is a repeated one. 
ir_code toggle_bit_mask
previously only one bit called toggle_bit 
int min_repeat
code is repeated at least x times code sent once -> min_repeat=0 
ir_code ignore_mask
mask defines which bits can be ignored when matching a code 
uint64_t ir_code
Denotes an internal coded representation for an IR transmission. 
unsigned int bits_in_byte
default: 8