4 #include <lib/service/iservice.h>
5 #include <lib/dvb/idvb.h>
7 #include <lib/dvb/pmt.h>
9 class eServiceFactoryDVB: public virtual iServiceHandler, public virtual iObject
14 virtual ~eServiceFactoryDVB();
18 RESULT play(const eServiceReference &, ePtr<iPlayableService> &ptr);
19 RESULT record(const eServiceReference &, ePtr<iRecordableService> &ptr);
20 RESULT list(const eServiceReference &, ePtr<iListableService> &ptr);
23 class eDVBServicePlay: public virtual iPlayableService, public virtual iObject, public Object, public virtual iServiceInformation
27 friend class eServiceFactoryDVB;
28 eServiceReference m_reference;
30 ePtr<iTSMPEGDecoder> m_decoder;
32 eDVBServicePMTHandler m_serviceHandler;
34 eDVBServicePlay(const eServiceReference &ref);
36 void serviceEvent(int event);
38 virtual ~eDVBServicePlay();
41 RESULT connectEvent(const Slot2<void,iPlayableService*,int> &event, ePtr<eConnection> &connection);
44 RESULT getIPausableService(ePtr<iPauseableService> &ptr);
45 RESULT getIServiceInformation(ePtr<iServiceInformation> &ptr);
47 // iServiceInformation
48 RESULT getName(eString &name);