Keyset Memory Management Bugfix
[pierogi] / keysets / zenith.cpp
1 #include "zenith.h"
2 #include "protocols/necprotocol.h"
3
4 // Based on LIRC Zenith_C32V37 config file
5 ZenithTV1::ZenithTV1(
6   unsigned int index)
7   : PIRKeysetMetaData(
8       "TV Keyset 1",
9       Zenith_Make,
10       index)
11 {
12   addControlledDevice(Zenith_Make, "C32V37", TV_Device);
13 }
14
15
16 void ZenithTV1::populateProtocol(
17   QObject *guiObject)
18 {
19   if (threadableProtocol)
20   {
21     // If the pointer is not null, the keyset must already be populated.
22     return;
23   }
24
25   threadableProtocol = new NECProtocol(guiObject, index, false, true);
26
27 //  setPreData(0x20DF, 16);
28   setPreData(0x04, 8);
29
30   addKey("CH_UP", ChannelUp_Key, 0x00, 8);
31   addKey("CH_DOWN", ChannelDown_Key, 0x01, 8);
32   addKey("VOL_UP", VolumeUp_Key, 0x02, 8);
33   addKey("VOL_DOWN", VolumeDown_Key, 0x03, 8);
34   addKey("right", Right_Key, 0x06, 8);
35   addKey("left", Left_Key, 0x07, 8);
36   addKey("power", Power_Key, 0x08, 8);
37   addKey("mute", Mute_Key, 0x09, 8);
38   addKey("audio", Audio_Key, 0x0A, 8);
39   addKey("tv/video", Input_Key, 0x0B, 8);
40   addKey("timer", Sleep_Key, 0x0E, 8);
41   addKey("0", Zero_Key, 0x10, 8);
42   addKey("1", One_Key, 0x11, 8);
43   addKey("2", Two_Key, 0x12, 8);
44   addKey("3", Three_Key, 0x13, 8);
45   addKey("4", Four_Key, 0x14, 8);
46   addKey("5", Five_Key, 0x15, 8);
47   addKey("6", Six_Key, 0x16, 8);
48   addKey("7", Seven_Key, 0x17, 8);
49   addKey("8", Eight_Key, 0x18, 8);
50   addKey("9", Nine_Key, 0x19, 8);
51   addKey("flashbk", PrevChannel_Key, 0x1A, 8);
52   addKey("surf", Unmapped_Key, 0x1E, 8);
53   addKey("cc", Captions_Key, 0x39, 8);
54   addKey("up", Up_Key, 0x40, 8);
55   addKey("down", Down_Key, 0x41, 8);
56   addKey("menu", Menu_Key, 0x43, 8);
57   addKey("dash", Dash_Key, 0x4C, 8);
58   addKey("video", PictureMode_Key, 0x4D, 8);
59   addKey("front", Unmapped_Key, 0x51, 8);
60   addKey("exit", Exit_Key, 0x5B, 8);
61   addKey("pip", PIP_Key, 0x60, 8);
62   addKey("pcin", PCInput_Key, 0x61, 8);
63   addKey("swap", PIPSwap_Key, 0x63, 8);
64   addKey("freeze", PIPPause_Key, 0x65, 8);
65   addKey("pipch+", PIPChannelUp_Key, 0x71, 8);
66   addKey("pipch-", PIPChannelDown_Key, 0x72, 8);
67   addKey("ratio", AspectRatio_Key, 0x79, 8);
68   addKey("signal", Unmapped_Key, 0x96, 8);
69   addKey("comp/dvi", Unmapped_Key, 0x98, 8);
70   addKey("info", Info_Key, 0xAA, 8);
71 }
72
73
74 ZenithConverterBox1::ZenithConverterBox1(
75   unsigned int index)
76   : PIRKeysetMetaData(
77       "Digital Converter Box 1",
78       Zenith_Make,
79       index)
80 {
81   addControlledDevice(Zenith_Make, "AKB36157102", Other_Device);
82 }
83
84
85 void ZenithConverterBox1::populateProtocol(
86   QObject *guiObject)
87 {
88   if (threadableProtocol)
89   {
90     // Keyset already populated.
91     return;
92   }
93
94   threadableProtocol = new NECProtocol(guiObject, index, false, true);
95
96   setPreData(0x10, 8);
97
98   addKey("CHUP", ChannelUp_Key, 0x00, 8);
99   addKey("CHDOWN", ChannelDown_Key, 0x01, 8);
100   addKey("VOLUP", VolumeUp_Key, 0x02, 8);
101   addKey("VOLDOWN", VolumeDown_Key, 0x03, 8);
102   addKey("UP", Up_Key, 0x04, 8);
103   addKey("DOWN", Down_Key, 0x05, 8);
104   addKey("RIGHT", Right_Key, 0x06, 8);
105   addKey("LEFT", Left_Key, 0x07, 8);
106   addKey("POWER", Power_Key, 0x08, 8);
107   addKey("MUTE", Mute_Key, 0x09, 8);
108   addKey("SAP", Audio_Key, 0x0A, 8);
109   addKey("SLEEP", Sleep_Key, 0x0E, 8);
110   addKey("0", Zero_Key, 0x10, 8);
111   addKey("1", One_Key, 0x11, 8);
112   addKey("2", Two_Key, 0x12, 8);
113   addKey("3", Three_Key, 0x13, 8);
114   addKey("4", Four_Key, 0x14, 8);
115   addKey("5", Five_Key, 0x15, 8);
116   addKey("6", Six_Key, 0x16, 8);
117   addKey("7", Seven_Key, 0x17, 8);
118   addKey("8", Eight_Key, 0x18, 8);
119   addKey("9", Nine_Key, 0x19, 8);
120   addKey("RECALL", PrevChannel_Key, 0x1A, 8);
121   addKey("FAV", Favorites_Key, 0x1E, 8);
122   addKey("CCD", Captions_Key, 0x39, 8);
123   addKey("MENU", Menu_Key, 0x43, 8);
124   addKey("OK", Select_Key, 0x44, 8);
125   addKey("-", Dash_Key, 0x4C, 8);
126   addKey("EXIT", Exit_Key, 0x5B, 8);
127   addKey("ZOOM", Zoom_Key, 0x79, 8);
128   addKey("SIGNAL", Unmapped_Key, 0x96, 8);
129   addKey("GUIDE", Guide_Key, 0xA9, 8);
130   addKey("DISPLAY", Info_Key, 0xAA, 8);
131   addKey("CHUP2", Unmapped_Key, 0x20, 8);
132   addKey("CHDOWN2", Unmapped_Key, 0x21, 8);
133   addKey("OK2", Unmapped_Key, 0x78, 8);
134   addKey("MENU2", Unmapped_Key, 0x7E, 8);
135   addKey("POWER_OFF", PowerOff_Key, 0x5C, 8);
136   addKey("FACTORY_MENU", Unmapped_Key, 0xEA, 8);
137   addKey("FACTORY_RESET", Unmapped_Key, 0xEB, 8);
138 }