X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=lib%2Fservice%2Fservicedvbrecord.h;h=7b538031bfcbe40d5429b47b47b3db767ff5708c;hp=856f92b3ce9ec63984fc0f73ee0160b0e4ae4140;hb=1743f5e172cd8815a5a9d687ead3cd051e681ea3;hpb=b3135c06dd527e0ed65b6ffa921f830132f7d8b9 diff --git a/lib/service/servicedvbrecord.h b/lib/service/servicedvbrecord.h index 856f92b..7b53803 100644 --- a/lib/service/servicedvbrecord.h +++ b/lib/service/servicedvbrecord.h @@ -13,35 +13,41 @@ class eDVBServiceRecord: public eDVBServiceBase, public iRecordableService, public iStreamableService, + public iSubserviceList, public Object { DECLARE_REF(eDVBServiceRecord); public: RESULT connectEvent(const Slot2 &event, ePtr &connection); - RESULT prepare(const char *filename, time_t begTime, time_t endTime, int eit_event_id); + RESULT prepare(const char *filename, time_t begTime, time_t endTime, int eit_event_id, const char *name, const char *descr, const char *tags); RESULT prepareStreaming(); RESULT start(bool simulate=false); RESULT stop(); RESULT stream(ePtr &ptr); RESULT getError(int &error) { error = m_error; return 0; } RESULT frontendInfo(ePtr &ptr); + RESULT subServices(ePtr &ptr); - /* streamable service */ + // iStreamableService PyObject *getStreamingData(); + // iSubserviceList + int getNumberOfSubservices(); + RESULT getSubservice(eServiceReference &subservice, unsigned int n); private: enum { stateIdle, statePrepared, stateRecording }; bool m_simulate; int m_state, m_want_record; + bool m_is_stream_client; friend class eServiceFactoryDVB; - eDVBServiceRecord(const eServiceReferenceDVB &ref); + eDVBServiceRecord(const eServiceReferenceDVB &ref, bool isstreamclient = false); eDVBServiceEITHandler m_event_handler; eServiceReferenceDVB m_ref; ePtr m_record; - ePtr m_con_record_event; + ePtr m_con_record_event; int m_recording, m_tuned, m_error; std::set m_pids_active;