2 Copyright 2004-2005 Chris Tallon; 2012 Marten Richter
4 This file is part of VOMP.
6 VOMP is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
11 VOMP is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with VOMP; if not, write to the Free Software
18 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
31 #include <libcec/cec.h>
37 class RemoteLinux : public Remote
41 virtual ~RemoteLinux();
43 int init(char *devName);
46 UCHAR getButtonPress(int how);
51 void InitHWCListwithDefaults();
52 const char*HardcodedTranslateStr(UCHAR command);
53 char* HCWDesc(ULLONG hcw);
55 bool loadOptionsfromServer(VDR* vdr);
56 bool saveOptionstoServer();
57 bool addOptionsToPanes(int panenumber,Options *options,WOptionPane* pane);
58 bool handleOptionChanges(Option* option);
60 bool mayHaveFewButtons() {return true;};
62 virtual bool handlesVolume() {return cechandlesvolume;};
63 virtual void volumeUp();
64 virtual void volumeDown();
65 virtual void volumeMute();
77 bool cechandlesvolume;
79 UCHAR TranslateHWCFixed(ULLONG code);
84 CEC::ICECAdapter * cec_adap;
85 CEC::libcec_configuration cec_config;
86 CEC::ICECCallbacks cec_callbacks;
88 void incomingCECkey(int keys);
90 static int cecLogMessage(void *param, const CEC::cec_log_message &message);
91 static int cecKeyPress(void*param, const CEC::cec_keypress &key);
92 static int cecCommand(void *param, const CEC::cec_command &command);
93 static int cecConfigurationChanged(void *param, const CEC::libcec_configuration &config);