+ RESULT getName(std::string &name);
+ RESULT getEvent(ePtr<eServiceEvent> &evt, int nownext);
+ int getInfo(int w);
+ std::string getInfoString(int w);
+
+ // iAudioTrackSelection
+ int getNumberOfTracks();
+ RESULT selectTrack(unsigned int i);
+ RESULT getTrackInfo(struct iAudioTrackInfo &, unsigned int n);
+
+ // iFrontendStatusInformation
+ int getFrontendInfo(int w);
+
+ // iSubserviceList
+ int getNumberOfSubservices();
+ RESULT getSubservice(eServiceReference &subservice, unsigned int n);
+
+private:
+ friend class eServiceFactoryDVB;
+ eServiceReference m_reference;
+
+ ePtr<eDVBService> m_dvb_service;
+
+ ePtr<iTSMPEGDecoder> m_decoder;
+
+ eDVBServicePMTHandler m_service_handler;
+ eDVBServiceEITHandler m_event_handler;
+
+ eDVBServicePlay(const eServiceReference &ref, eDVBService *service);
+
+ void gotNewEvent();
+
+ void serviceEvent(int event);
+ Signal2<void,iPlayableService*,int> m_event;
+
+ int m_is_pvr, m_is_paused;
+
+ int m_current_audio_stream;
+ int selectAudioStream(int n);