diff options
| author | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2007-04-12 17:36:59 +0000 |
|---|---|---|
| committer | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2007-04-12 17:36:59 +0000 |
| commit | 54c4c8458e71ef9630420e0dead6897165255c5b (patch) | |
| tree | cd67d6302286142d09b9015f14c6d3905ec31e32 /lib/dvb_ci/dvbci.h | |
| parent | 106b392046318fe414f071a63bbff9efe078204b (diff) | |
| download | enigma2-54c4c8458e71ef9630420e0dead6897165255c5b.tar.gz enigma2-54c4c8458e71ef9630420e0dead6897165255c5b.zip | |
add support for multiple CIs with the same caid
Diffstat (limited to 'lib/dvb_ci/dvbci.h')
| -rw-r--r-- | lib/dvb_ci/dvbci.h | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/lib/dvb_ci/dvbci.h b/lib/dvb_ci/dvbci.h index 7605a6d9..2f528d2d 100644 --- a/lib/dvb_ci/dvbci.h +++ b/lib/dvb_ci/dvbci.h @@ -29,6 +29,11 @@ struct queueData } }; +enum data_source +{ + TUNER_A, TUNER_B, TUNER_C, TUNER_D, CI_A, CI_B, CI_C, CI_D +}; + class eDVBCISlot: public iObject, public Object { DECLARE_REF(eDVBCISlot); @@ -47,6 +52,9 @@ private: public: enum {stateRemoved, stateInserted, stateInvalid, stateResetted}; int use_count; + eDVBCISlot *linked_next; // needed for linked CI handling + data_source current_source; + int current_tuner; eDVBCISlot(eMainloop *context, int nr); ~eDVBCISlot(); @@ -73,9 +81,7 @@ public: int sendCAPMT(eDVBServicePMTHandler *ptr, const std::vector<uint16_t> &caids=std::vector<uint16_t>()); void removeService(uint16_t program_number=0xFFFF); int getNumOfServices() { return running_services.size(); } - - int enableTS(int enable, int tuner=0); - + int setSource(data_source source); }; struct CIPmtHandler @@ -103,7 +109,6 @@ DECLARE_REF(eDVBCIInterfaces); private: eSmartPtrList<eDVBCISlot> m_slots; eDVBCISlot *getSlot(int slotid); - PMTHandlerList m_pmt_handlers; public: eDVBCIInterfaces(); @@ -126,8 +131,8 @@ public: int answerEnq(int slot, char *value); int cancelEnq(int slot); int getMMIState(int slot); - int enableTS(int slot, int enable); int sendCAPMT(int slot); + int setInputSource(int tunerno, data_source source); }; #endif |
