-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathhardware.cpp
More file actions
74 lines (58 loc) · 1.83 KB
/
hardware.cpp
File metadata and controls
74 lines (58 loc) · 1.83 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
/*
* This file is part of the WinLIRC package, which was derived from
* LIRC (Linux Infrared Remote Control) 0.8.6.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published
* by the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* Copyright (C) 2010 Ian Curtis
*/
#include "Globals.h"
#include "hardware.h"
#include "Decode.h"
struct hardware hw;
ir_code get_ir_code() {
//==================
ir_code currentCode;
//==================
EnterCriticalSection(&criticalSection);
currentCode = irCode;
ResetEvent(dataReadyEvent);
LeaveCriticalSection(&criticalSection);
return currentCode;
}
void wait_for_data(lirc_t timeout) {
if(!sendReceiveData)
return;
sendReceiveData->waitTillDataIsReady(timeout);
}
int data_ready() {
if(!sendReceiveData)
return 0;
return sendReceiveData->dataReady();
}
void initHardwareStruct() {
hw.decode_func = &beholder_decode;
hw.readdata = NULL;
hw.wait_for_data= &wait_for_data;
hw.data_ready = &data_ready;
hw.get_ir_code = &get_ir_code;
hw.features = LIRC_CAN_REC_LIRCCODE;
hw.send_mode = 0;
hw.rec_mode = LIRC_MODE_LIRCCODE;
hw.code_length = 32;
hw.resolution = 0;
strcpy(hw.device,"hw");
strcpy(hw.name,"Beholder");
}