X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/20fdb2a2af40da98427a702a03a79b1fbec3d7af..456ac28d25e861b4e661c88d573e3258a53d67a5:/lib/dvb/db.cpp diff --git a/lib/dvb/db.cpp b/lib/dvb/db.cpp index 38a062a2..17196f05 100644 --- a/lib/dvb/db.cpp +++ b/lib/dvb/db.cpp @@ -1,5 +1,6 @@ #include #include +#include #include #include #include @@ -148,10 +149,24 @@ RESULT eDVBService::getName(const eServiceReference &ref, std::string &name) return 0; } -RESULT eDVBService::getEvent(const eServiceReference &ref, ePtr &ptr) +RESULT eDVBService::getEvent(const eServiceReference &ref, ePtr &ptr, time_t start_time) { - time_t t=-1; - return eEPGCache::getInstance()->lookupEventTime(ref, t, ptr); + return eEPGCache::getInstance()->lookupEventTime(ref, start_time, ptr); +} + +bool eDVBService::isPlayable(const eServiceReference &ref, const eServiceReference &ignore) +{ + ePtr res_mgr; + if ( eDVBResourceManager::getInstance( res_mgr ) ) + eDebug("isPlayble... no res manager!!"); + else + { + eDVBChannelID chid, chid_ignore; + ((const eServiceReferenceDVB&)ref).getChannelID(chid); + ((const eServiceReferenceDVB&)ignore).getChannelID(chid_ignore); + return res_mgr->canAllocateChannel(chid, chid_ignore); + } + return false; } int eDVBService::checkFilter(const eServiceReferenceDVB &ref, const eDVBChannelQuery &query)