X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=lib%2Fdvb_ci%2Fdvbci.h;h=c11a1203311ab32fd828a29963252cedb55b5414;hp=4e3fcce276bc5345526f8a765f0327e6c72107b4;hb=f8399204b2ce53dfd2c394f9d67b204356f2d40a;hpb=10e7e45ae92d4fe06f70126ed256b87896dbc432 diff --git a/lib/dvb_ci/dvbci.h b/lib/dvb_ci/dvbci.h index 4e3fcce..c11a120 100644 --- a/lib/dvb_ci/dvbci.h +++ b/lib/dvb_ci/dvbci.h @@ -38,6 +38,11 @@ enum data_source TUNER_A, TUNER_B, TUNER_C, TUNER_D, CI_A, CI_B, CI_C, CI_D }; +typedef std::pair providerPair; +typedef std::set providerSet; +typedef std::set caidSet; +typedef std::set serviceSet; + class eDVBCISlot: public iObject, public Object { friend class eDVBCIInterfaces; @@ -51,14 +56,16 @@ class eDVBCISlot: public iObject, public Object eDVBCICAManagerSession *ca_manager; eDVBCIMMISession *mmi_session; std::priority_queue sendqueue; - std::set possible_caids; - std::set possible_services; - std::set possible_providers; + caidSet possible_caids; + serviceSet possible_services; + providerSet possible_providers; int use_count; eDVBCISlot *linked_next; // needed for linked CI handling data_source current_source; int current_tuner; + bool user_mapped; void data(int); + bool first_plugged; public: enum {stateRemoved, stateInserted, stateInvalid, stateResetted}; eDVBCISlot(eMainloop *context, int nr); @@ -146,6 +153,7 @@ public: int getNumOfSlots() { return m_slots.size(); } PyObject *getDescrambleRules(int slotid); RESULT setDescrambleRules(int slotid, SWIG_PYOBJECT(ePyObject) ); + PyObject *readCICaIds(int slotid); }; #endif