diff options
Diffstat (limited to 'lib/service/servicedvb.cpp')
| -rw-r--r-- | lib/service/servicedvb.cpp | 31 |
1 files changed, 23 insertions, 8 deletions
diff --git a/lib/service/servicedvb.cpp b/lib/service/servicedvb.cpp index fc48fa66..62dbee54 100644 --- a/lib/service/servicedvb.cpp +++ b/lib/service/servicedvb.cpp @@ -28,15 +28,8 @@ eServiceFactoryDVB::~eServiceFactoryDVB() RESULT eServiceFactoryDVB::play(const eServiceReference &ref, ePtr<iPlayableService> &ptr) { - RESULT res; // check resources... ptr = new eDVBServicePlay(ref); - res = ptr->start(); - if (res) - { - ptr = 0; - return res; - } return 0; } @@ -138,10 +131,20 @@ void eDVBServicePlay::serviceEvent(int event) RESULT eDVBServicePlay::start() { eDebug("starting DVB service"); - m_serviceHandler.tune((eServiceReferenceDVB&)m_reference); + return m_serviceHandler.tune((eServiceReferenceDVB&)m_reference); +} + +RESULT eDVBServicePlay::stop() +{ + eDebug("stopping.."); return 0; } +RESULT eDVBServicePlay::connectEvent(const Slot2<void,iPlayableService*,int> &event, ePtr<eConnection> &connection) +{ + return -1; +} + RESULT eDVBServicePlay::getIPausableService(ePtr<iPauseableService> &ptr) { // not yet possible, maybe later... @@ -149,6 +152,18 @@ RESULT eDVBServicePlay::getIPausableService(ePtr<iPauseableService> &ptr) return -1; } +RESULT eDVBServicePlay::getIServiceInformation(ePtr<iServiceInformation> &ptr) +{ + ptr = this; + return 0; +} + +RESULT eDVBServicePlay::getName(eString &name) +{ + name = "DVB service"; + return 0; +} + DEFINE_REF(eDVBServicePlay) eAutoInitP0<eServiceFactoryDVB> init_eServiceFactoryDVB(eAutoInitNumbers::service+1, "eServiceFactoryDVB"); |
