#define __dvbci_ui_h
#include <string>
-#include <Python.h>
+#include <lib/mmi/mmi_ui.h>
+#include <lib/python/connections.h>
-#define MAX_SLOTS 2
-
-class eDVBCI_UI
+class eDVBCI_UI: public eMMI_UI
{
- int state[MAX_SLOTS];
static eDVBCI_UI *instance;
- std::string appName;
-protected:
+#ifdef SWIG
+ eDVBCI_UI();
+#endif
+ void stateChanged(int val) { ciStateChanged(val); }
public:
+ enum { rateNormal, rateHigh };
+ PSignal1<void,int> 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, int answer, char *val);
-
- PyObject *eDVBCI_UI::getMMIScreen(int slot);
- PyObject *mmiScreen;
- int mmiTuplePos;
- int mmiScreenReady;
-
- int mmiScreenBegin(int slot, int listmenu);
- int mmiScreenAddText(int slot, int type, char *value);
- int mmiScreenFinish(int slot);
+ int answerEnq(int slot, char *val);
+ int cancelEnq(int slot);
+ int setClockRate(int slot, int rate);
};
#endif