6bd9fb96b756d6d43e16852c2fd92f93c834dc33
[enigma2.git] / lib / service / servicedvbrecord.h
1 #ifndef __servicedvbrecord_h
2 #define __servicedvbrecord_h
3
4 #include <lib/service/iservice.h>
5 #include <lib/dvb/idvb.h>
6
7 #include <lib/dvb/pmt.h>
8 #include <lib/dvb/eit.h>
9 #include <set>
10
11 #include <lib/service/servicedvb.h>
12
13 class eDVBServiceRecord: public iRecordableService, public Object
14 {
15 DECLARE_REF(eDVBServiceRecord);
16 public:
17         RESULT start();
18         RESULT stop();
19 private:
20         friend class eServiceFactoryDVB;
21         eDVBServiceRecord(const eServiceReferenceDVB &ref);
22         
23         eDVBServicePMTHandler m_service_handler;
24         eServiceReferenceDVB m_ref;
25         void serviceEvent(int event);
26         
27         ePtr<iDVBTSRecorder> m_record;
28         
29         int m_recording;
30         std::set<int> m_pids_active;
31 };
32
33 #endif