diff options
Diffstat (limited to 'xmltv2vdr.h')
| -rw-r--r-- | xmltv2vdr.h | 263 |
1 files changed, 120 insertions, 143 deletions
diff --git a/xmltv2vdr.h b/xmltv2vdr.h index e140160..4da19f9 100644 --- a/xmltv2vdr.h +++ b/xmltv2vdr.h @@ -34,84 +34,24 @@ public: bool Send(const char *format, ...); }; -class cGlobals +class cEPGTimer : public cThread { private: - char *confdir; - char *epgfile; - char *epdir; - char *epcodeset; - char *imgdir; - char *codeset; - bool epgsearchexists; - int imgdelafter; - cEPGMappings epgmappings; - cTEXTMappings textmappings; - cEPGSources epgsources; + cEPGSources *sources; + cEPGMappings *maps; + cImport import; + int epall; public: - cGlobals(); - ~cGlobals(); - bool DBExists(); - cEPGMappings *EPGMappings() - { - return &epgmappings; - } - cTEXTMappings *TEXTMappings() - { - return &textmappings; - } - cEPGSources *EPGSources() - { - return &epgsources; - } - void SetConfDir(const char *ConfDir) - { - free(confdir); - confdir=strdup(ConfDir); - } - const char *ConfDir() - { - return confdir; - } - void SetEPGFile(const char *EPGFile) - { - free(epgfile); - epgfile=strdup(EPGFile); - } - const char *EPGFile() - { - return epgfile; - } - void SetEPDir(const char *EPDir); - const char *EPDir() - { - return epdir; - } - const char *EPCodeset() - { - return epcodeset; - } - const char *Codeset() - { - return codeset; - } - void SetImgDir(const char *ImgDir); - const char *ImgDir() - { - return imgdir; - } - void SetImgDelAfter(int Value) - { - imgdelafter=Value; - } - int ImgDelAfter() + cEPGTimer(cGlobals *Global); + void Stop() { - return imgdelafter; + Cancel(3); } - bool EPGSearchExists() + void SetEPAll(int Value) { - return epgsearchexists; + epall=Value; } + virtual void Action(); }; #if VDRVERSNUM < 10726 && !EPGHANDLER @@ -179,26 +119,6 @@ public: virtual bool SortSchedule(cSchedule *Schedule); }; -class cEPGTimer : public cThread -{ -private: - cEPGSources *sources; - cEPGMappings *maps; - cImport import; - int epall; -public: - cEPGTimer(cGlobals *Global); - void Stop() - { - Cancel(3); - } - void SetEPAll(int Value) - { - epall=Value; - } - virtual void Action(); -}; - class cHouseKeeping : public cThread { private: @@ -226,101 +146,158 @@ public: virtual void Action(); }; -class cPluginXmltv2vdr : public cPlugin +class cGlobals { private: - cGlobals g; - cEPGHandler *epghandler; - cEPGTimer *epgtimer; - cEPGSeasonEpisode *epgseasonepisode; - cHouseKeeping housekeeping; - cEPGExecutor epgexecutor; - time_t last_housetime_t; - time_t last_maintime_t; - time_t last_timer_t; - time_t last_epcheck_t; + char *confdir; + char *epgfile; + char *epdir; + char *epcodeset; + char *imgdir; + char *codeset; + char *order; char *srcorder; int epall; + int imgdelafter; bool wakeup; - bool insetup; - int GetLastImportSource(); + bool epgsearchexists; + cEPGMappings epgmappings; + cTEXTMappings textmappings; + cEPGSources epgsources; + cEPGTimer *epgtimer; + cEPGSeasonEpisode *epgseasonepisode; public: - void SetSetupState(bool Value) + cGlobals(); + ~cGlobals(); + cEPGHandler *epghandler; + bool DBExists(); + char *GetDefaultOrder(); + void AllocateEPGTimerThread() { - insetup=Value; + epgtimer=new cEPGTimer(this); } - void SetEPAll(int Value) + void AllocateEPGSeasonThread() { - epall=Value; - if (epghandler) epghandler->SetEPAll(Value); - if (epgtimer) epgtimer->SetEPAll(Value); + epgseasonepisode=new cEPGSeasonEpisode(this); } - int EPAll() + cEPGSeasonEpisode *EPGSeasonEpisode() { - return epall; + return epgseasonepisode; } - void SetWakeUp(bool Value) + cEPGTimer *EPGTimer() { - wakeup=Value; + return epgtimer; } - bool WakeUp() + cEPGMappings *EPGMappings() { - return wakeup; + return &epgmappings; } - void SetImgDelAfter(int Value) + cTEXTMappings *TEXTMappings() { - g.SetImgDelAfter(Value); + return &textmappings; } - int ImgDelAfter() + cEPGSources *EPGSources() { - return g.ImgDelAfter(); + return &epgsources; } - const char *ImgDir() + void SetConfDir(const char *ConfDir) + { + free(confdir); + confdir=strdup(ConfDir); + } + const char *ConfDir() + { + return confdir; + } + void SetEPGFile(const char *EPGFile) + { + free(epgfile); + epgfile=strdup(EPGFile); + } + const char *EPGFile() { - return g.ImgDir(); + return epgfile; } + void SetEPDir(const char *EPDir); const char *EPDir() { - return g.EPDir(); + return epdir; } - void ReadInEPGSources(bool Reload=false) + const char *EPCodeset() { - g.EPGSources()->ReadIn(&g,srcorder,Reload); + return epcodeset; } - bool EPGSourceMove(int From, int To); - int EPGSourceCount() + const char *Codeset() { - if (!g.EPGSources()->Count()) return 0; - return g.EPGSources()->Count()-1; + return codeset; } - cEPGSource *EPGSource(int Index) + void SetImgDir(const char *ImgDir); + const char *ImgDir() { - return g.EPGSources()->Get(Index); + return imgdir; } - int EPGMappingCount() + void SetImgDelAfter(int Value) { - return g.EPGMappings()->Count(); + imgdelafter=Value; } - cEPGMapping *EPGMapping(int Index) + int ImgDelAfter() { - return g.EPGMappings()->Get(Index); + return imgdelafter; } - cEPGMapping *EPGMapping(const char *ChannelName) + void SetSrcOrder(const char *NewOrder) { - return g.EPGMappings()->GetMap(ChannelName); + free(srcorder); + srcorder=strdup(NewOrder); } - void EPGMappingAdd(cEPGMapping *Map) + const char *SrcOrder() { - g.EPGMappings()->Add(Map); + return srcorder; } - cTEXTMapping *TEXTMapping(const char *Name) + void SetOrder(const char *NewOrder) { - return g.TEXTMappings()->GetMap(Name); + free(order); + order=strdup(NewOrder); } - void TEXTMappingAdd(cTEXTMapping *TextMap) + const char *Order() + { + return order; + } + bool EPGSearchExists() { - g.TEXTMappings()->Add(TextMap); + return epgsearchexists; + } + void SetEPAll(int Value) + { + epall=Value; + if (epghandler) epghandler->SetEPAll(Value); + if (epgtimer) epgtimer->SetEPAll(Value); } + int EPAll() + { + return epall; + } + void SetWakeUp(bool Value) + { + wakeup=Value; + } + bool WakeUp() + { + return wakeup; + } +}; + +class cPluginXmltv2vdr : public cPlugin +{ +private: + cGlobals g; + cHouseKeeping housekeeping; + cEPGExecutor epgexecutor; + time_t last_housetime_t; + time_t last_maintime_t; + time_t last_timer_t; + time_t last_epcheck_t; + int GetLastImportSource(); +public: cPluginXmltv2vdr(void); virtual ~cPluginXmltv2vdr(); virtual const char *Version(void) |
