78c1cc8e273177433042293e36194db8ae745289
[enigma2.git] / lib / dvb_ci / dvbci.h
1 #ifndef __dvbci_dvbci_h
2 #define __dvbci_dvbci_h
3
4 #include <lib/base/ebase.h>
5
6 class eDVBCISession;
7
8 class eDVBCISlot: public iObject, public Object
9 {
10 DECLARE_REF(eDVBCISlot);
11 private:
12         int fd;
13         void data(int);
14         eSocketNotifier *notifier_data;
15         void event(int);
16         eSocketNotifier *notifier_event;
17
18         int state;
19         enum {stateRemoved, stateInserted};     
20 public:
21         eDVBCISlot(eMainloop *context, int nr);
22         virtual ~eDVBCISlot();
23         
24         int eDVBCISlot::write(const unsigned char *data, size_t len);
25 };
26
27 class eDVBCIInterfaces
28 {
29 private:
30         eSmartPtrList<eDVBCISlot>       m_slots;
31 public:
32         eDVBCIInterfaces();
33         virtual ~eDVBCIInterfaces();
34 };
35
36 #endif