X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/3cddda083f4ace59e279f9f4f6ae12bad079d33b..59efe28a00e5713ad5279ed976430da31292a129:/lib/service/servicedvbrecord.h?ds=sidebyside diff --git a/lib/service/servicedvbrecord.h b/lib/service/servicedvbrecord.h index 93118bed..17e3d166 100644 --- a/lib/service/servicedvbrecord.h +++ b/lib/service/servicedvbrecord.h @@ -6,6 +6,7 @@ #include #include +#include #include @@ -13,15 +14,27 @@ class eDVBServiceRecord: public iRecordableService, public Object { DECLARE_REF(eDVBServiceRecord); public: + RESULT prepare(const char *filename); RESULT start(); RESULT stop(); private: + enum { stateIdle, statePrepared, stateRecording }; + int m_state, m_want_record; friend class eServiceFactoryDVB; eDVBServiceRecord(const eServiceReferenceDVB &ref); eDVBServicePMTHandler m_service_handler; eServiceReferenceDVB m_ref; void serviceEvent(int event); + + ePtr m_record; + + int m_recording; + std::set m_pids_active; + std::string m_filename; + + int doPrepare(); + int doRecord(); }; #endif