⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 status.c

📁 These files contain the source code of the "Video Disk Recorder", which is based on the DVB driver
💻 C
字号:
/* * status.c: A plugin for the Video Disk Recorder * * See the README file for copyright information and how to reach the author. * * $Id: status.c 1.8 2005/12/31 15:19:45 kls Exp $ */#include <vdr/plugin.h>#include <vdr/status.h>static const char *VERSION        = "0.2.0";static const char *DESCRIPTION    = "Status monitor test";static const char *MAINMENUENTRY  = NULL;// ---class cStatusTest : public cStatus {protected:  virtual void ChannelSwitch(const cDevice *Device, int ChannelNumber);  virtual void Recording(const cDevice *Device, const char *Name, const char *FileName, bool On);  virtual void Replaying(const cControl *Control, const char *Name, const char *FileName, bool On);  virtual void SetVolume(int Volume, bool Absolute);  virtual void OsdClear(void);  virtual void OsdTitle(const char *Title);  virtual void OsdStatusMessage(const char *Message);  virtual void OsdHelpKeys(const char *Red, const char *Green, const char *Yellow, const char *Blue);  virtual void OsdCurrentItem(const char *Text);  virtual void OsdTextItem(const char *Text, bool Scroll);  virtual void OsdChannel(const char *Text);  virtual void OsdProgramme(time_t PresentTime, const char *PresentTitle, const char *PresentSubtitle, time_t FollowingTime, const char *FollowingTitle, const char *FollowingSubtitle);  };void cStatusTest::ChannelSwitch(const cDevice *Device, int ChannelNumber){  dsyslog("status: cStatusTest::ChannelSwitch  %d %d", Device->CardIndex(), ChannelNumber);}void cStatusTest::Recording(const cDevice *Device, const char *Name, const char *FileName, bool On){  dsyslog("status: cStatusTest::Recording  %d %s %s %d", Device->CardIndex(), Name, FileName, On);}void cStatusTest::Replaying(const cControl *Control, const char *Name, const char *FileName, bool On){  dsyslog("status: cStatusTest::Replaying  %s %s %d", Name, FileName, On);}void cStatusTest::SetVolume(int Volume, bool Absolute){  dsyslog("status: cStatusTest::SetVolume  %d %d", Volume, Absolute);}void cStatusTest::OsdClear(void){  dsyslog("status: cStatusTest::OsdClear");}void cStatusTest::OsdTitle(const char *Title){  dsyslog("status: cStatusTest::OsdTitle '%s'", Title);}void cStatusTest::OsdStatusMessage(const char *Message){  dsyslog("status: cStatusTest::OsdStatusMessage '%s'", Message);}void cStatusTest::OsdHelpKeys(const char *Red, const char *Green, const char *Yellow, const char *Blue){  dsyslog("status: cStatusTest::OsdHelpKeys %s - %s - %s - %s", Red, Green, Yellow, Blue);}void cStatusTest::OsdCurrentItem(const char *Text){  dsyslog("status: cStatusTest::OsdCurrentItem %s", Text);}void cStatusTest::OsdTextItem(const char *Text, bool Scroll){  dsyslog("status: cStatusTest::OsdTextItem %s %d", Text, Scroll);}void cStatusTest::OsdChannel(const char *Text){  dsyslog("status: cStatusTest::OsdChannel %s", Text);}void cStatusTest::OsdProgramme(time_t PresentTime, const char *PresentTitle, const char *PresentSubtitle, time_t FollowingTime, const char *FollowingTitle, const char *FollowingSubtitle){  char buffer[25];  struct tm tm_r;  dsyslog("status: cStatusTest::OsdProgramme");  strftime(buffer, sizeof(buffer), "%R", localtime_r(&PresentTime, &tm_r));  dsyslog("%5s %s", buffer, PresentTitle);  dsyslog("%5s %s", "", PresentSubtitle);  strftime(buffer, sizeof(buffer), "%R", localtime_r(&FollowingTime, &tm_r));  dsyslog("%5s %s", buffer, FollowingTitle);  dsyslog("%5s %s", "", FollowingSubtitle);}// ---class cPluginStatus : public cPlugin {private:  // Add any member variables or functions you may need here.  cStatusTest *statusTest;public:  cPluginStatus(void);  virtual ~cPluginStatus();  virtual const char *Version(void) { return VERSION; }  virtual const char *Description(void) { return DESCRIPTION; }  virtual const char *CommandLineHelp(void);  virtual bool ProcessArgs(int argc, char *argv[]);  virtual bool Start(void);  virtual void Housekeeping(void);  virtual const char *MainMenuEntry(void) { return MAINMENUENTRY; }  virtual cOsdObject *MainMenuAction(void);  virtual cMenuSetupPage *SetupMenu(void);  virtual bool SetupParse(const char *Name, const char *Value);  };cPluginStatus::cPluginStatus(void){  // Initialize any member variables here.  // DON'T DO ANYTHING ELSE THAT MAY HAVE SIDE EFFECTS, REQUIRE GLOBAL  // VDR OBJECTS TO EXIST OR PRODUCE ANY OUTPUT!  statusTest = NULL;}cPluginStatus::~cPluginStatus(){  // Clean up after yourself!  delete statusTest;}const char *cPluginStatus::CommandLineHelp(void){  // Return a string that describes all known command line options.  return NULL;}bool cPluginStatus::ProcessArgs(int argc, char *argv[]){  // Implement command line argument processing here if applicable.  return true;}bool cPluginStatus::Start(void){  // Start any background activities the plugin shall perform.  statusTest = new cStatusTest;  return true;}void cPluginStatus::Housekeeping(void){  // Perform any cleanup or other regular tasks.}cOsdObject *cPluginStatus::MainMenuAction(void){  // Perform the action when selected from the main VDR menu.  return NULL;}cMenuSetupPage *cPluginStatus::SetupMenu(void){  // Return a setup menu in case the plugin supports one.  return NULL;}bool cPluginStatus::SetupParse(const char *Name, const char *Value){  // Parse your own setup parameters and store their values.  return false;}VDRPLUGINCREATOR(cPluginStatus); // Don't touch this!

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -