vdr  2.2.0
dvbhddevice.c
Go to the documentation of this file.
1 /*
2  * dvbhddevice.c: A plugin for the Video Disk Recorder
3  *
4  * See the README file for copyright information and how to reach the author.
5  */
6 
7 #include <vdr/plugin.h>
8 #include <vdr/shutdown.h>
9 #include "dvbhdffdevice.h"
10 #include "menu.h"
11 #include "setup.h"
12 
13 static const char *VERSION = "2.2.0";
14 static const char *DESCRIPTION = trNOOP("HD Full Featured DVB device");
15 static const char *MAINMENUENTRY = "dvbhddevice";
16 
17 class cPluginDvbhddevice : public cPlugin {
18 private:
21 public:
22  cPluginDvbhddevice(void);
23  virtual ~cPluginDvbhddevice();
24  virtual const char *Version(void) { return VERSION; }
25  virtual const char *Description(void) { return tr(DESCRIPTION); }
26  virtual void MainThreadHook(void);
27  virtual void Stop(void);
28  virtual const char *MainMenuEntry(void);
29  virtual cOsdObject *MainMenuAction(void);
30  virtual cMenuSetupPage *SetupMenu(void);
31  virtual bool SetupParse(const char *Name, const char *Value);
32  };
33 
35 : mIsUserInactive(true)
36 {
38 }
39 
41 {
42  delete probe;
43 }
44 
46 {
47  bool isUserInactive = ShutdownHandler.IsUserInactive();
48  if (isUserInactive != mIsUserInactive)
49  {
50  mIsUserInactive = isUserInactive;
52  {
54  if (hdffCmdIf && !mIsUserInactive)
55  {
57  }
58  }
59  }
60 }
61 
63 {
65  {
67  if (hdffCmdIf)
68  {
70  isyslog("HDFF_CEC_COMMAND_TV_OFF");
71  }
72  }
73 }
74 
76 {
77  return gHdffSetup.HideMainMenu ? NULL : MAINMENUENTRY;
78 }
79 
81 {
83  return hdffCmdIf ? new cHdffMenu(hdffCmdIf) : NULL;
84 }
85 
87 {
89  return hdffCmdIf ? new cHdffSetupPage(hdffCmdIf) : NULL;
90 }
91 
92 bool cPluginDvbhddevice::SetupParse(const char *Name, const char *Value)
93 {
94  return gHdffSetup.SetupParse(Name, Value);
95 }
96 
97 VDRPLUGINCREATOR(cPluginDvbhddevice); // Don't touch this!
virtual const char * Version(void)
Definition: dvbhddevice.c:24
void CmdHdmiSendCecCommand(HdffCecCommand_t Command)
Definition: hdffcmd.c:384
bool IsUserInactive(time_t AtTime=0)
Check whether VDR is in interactive mode or non-interactive mode (waiting for shutdown).
Definition: shutdown.h:72
virtual cOsdObject * MainMenuAction(void)
Definition: dvbhddevice.c:80
const char * Name(void)
Definition: plugin.h:34
cHdffSetup gHdffSetup
Definition: setup.c:16
static const char * DESCRIPTION
Definition: dvbhddevice.c:14
Definition: plugin.h:20
VDRPLUGINCREATOR(cPluginDvbhddevice)
static const char * MAINMENUENTRY
Definition: dvbhddevice.c:15
virtual const char * Description(void)
Definition: dvbhddevice.c:25
virtual cMenuSetupPage * SetupMenu(void)
Definition: dvbhddevice.c:86
#define trNOOP(s)
Definition: i18n.h:88
int HideMainMenu
Definition: setup.h:42
cShutdownHandler ShutdownHandler
Definition: shutdown.c:27
virtual bool SetupParse(const char *Name, const char *Value)
Definition: dvbhddevice.c:92
int CecTvOff
Definition: setup.h:34
cPluginDvbhddevice(void)
Definition: dvbhddevice.c:34
#define tr(s)
Definition: i18n.h:85
int CecTvOn
Definition: setup.h:33
cDvbHdFfDeviceProbe * probe
Definition: dvbhddevice.c:19
static const char * VERSION
Definition: dvbhddevice.c:13
#define isyslog(a...)
Definition: tools.h:35
int CecEnabled
Definition: setup.h:32
virtual void Stop(void)
Definition: dvbhddevice.c:62
static HDFF::cHdffCmdIf * GetHdffCmdHandler(void)
bool SetupParse(const char *Name, const char *Value)
Definition: setup.c:40
virtual const char * MainMenuEntry(void)
Definition: dvbhddevice.c:75
virtual ~cPluginDvbhddevice()
Definition: dvbhddevice.c:40
virtual void MainThreadHook(void)
Definition: dvbhddevice.c:45