X-Git-Url: http://code.vuplus.com/gitweb/?a=blobdiff_plain;f=lib%2Fservice%2Fservicedvbrecord.h;h=6a58fc84cdb0972c69b2c96ae4efd401feda5621;hb=9511adb1e0b28923cd05f5bcb74575d49e57f650;hp=dd00ee8f0190b63107ab74db2ae428cbcab310c7;hpb=e7bc6dda564f72ea1ed33a4d420cbce75b37879c;p=vuplus_dvbapp diff --git a/lib/service/servicedvbrecord.h b/lib/service/servicedvbrecord.h index dd00ee8..6a58fc8 100644 --- a/lib/service/servicedvbrecord.h +++ b/lib/service/servicedvbrecord.h @@ -10,13 +10,16 @@ #include -class eDVBServiceRecord: public iRecordableService, public Object +class eDVBServiceRecord: public eDVBServiceBase, + public iRecordableService, 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 start(); RESULT stop(); + RESULT getError(int &error) { error = m_error; m_error = 0; return 0; } private: enum { stateIdle, statePrepared, stateRecording }; int m_state, m_want_record; @@ -24,18 +27,22 @@ private: eDVBServiceRecord(const eServiceReferenceDVB &ref); eServiceReferenceDVB m_ref; - eDVBServicePMTHandler m_service_handler; - void serviceEvent(int event); ePtr m_record; - int m_recording, m_tuned; + int m_recording, m_tuned, m_error; std::set m_pids_active; std::string m_filename; int m_target_fd; int doPrepare(); int doRecord(); + RESULT frontendInfo(ePtr &ptr); + + /* events */ + void serviceEvent(int event); + Signal2 m_event; + }; #endif