X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=lib%2Fdvb_ci%2Fdvbci_ui.h;h=5237e2f421483c4905ab51525de03db1bbc34fcc;hp=abf6173a8338aa4fc42d6aa15a7d110b9a4d4ec9;hb=7d7ca8ee2eaae704989a1552ad429794d402f550;hpb=627b8a76459a646b1590ddb18e9fe95a18763338 diff --git a/lib/dvb_ci/dvbci_ui.h b/lib/dvb_ci/dvbci_ui.h index abf6173..5237e2f 100644 --- a/lib/dvb_ci/dvbci_ui.h +++ b/lib/dvb_ci/dvbci_ui.h @@ -5,50 +5,62 @@ /* avoid warnigs :) */ #undef _POSIX_C_SOURCE #define _POSIX_C_SOURCE 200112L -#include +#include +#include -#define MAX_SLOTS 2 +#define MAX_SLOTS 4 -class eDVBCI_UI +#ifndef SWIG +struct slot_ui_data { - int state[MAX_SLOTS]; - static eDVBCI_UI *instance; std::string appName; + int state; PyObject *mmiScreen; int mmiTuplePos; int mmiScreenReady; -#ifdef SWIG +}; +#endif + +class eDVBCI_UI +{ + static eDVBCI_UI *instance; +#ifndef SWIG + slot_ui_data slotdata[MAX_SLOTS]; +#else eDVBCI_UI(); ~eDVBCI_UI(); #endif public: + PSignal1 ciStateChanged; #ifndef SWIG eDVBCI_UI(); ~eDVBCI_UI(); #endif static eDVBCI_UI *getInstance(); - + int getState(int slot); void setState(int slot, int state); std::string getAppName(int slot); void setAppName(int slot, const char *name); + void setInit(int slot); void setReset(int slot); - int initialize(int slot); int startMMI(int slot); int stopMMI(int slot); int availableMMI(int slot); int getMMIState(int slot); - int answerMenu(int slot, int answer); int answerEnq(int slot, char *val); int cancelEnq(int slot); - PyObject *eDVBCI_UI::getMMIScreen(int slot); - + PyObject *getMMIScreen(int slot); +#ifndef SWIG + int mmiScreenClose(int slot, int timeout); int mmiScreenEnq(int slot, int blind, int answerLen, char *text); int mmiScreenBegin(int slot, int listmenu); int mmiScreenAddText(int slot, int type, char *value); int mmiScreenFinish(int slot); + void mmiSessionDestroyed(int slot); +#endif }; #endif