add enq cancel
[enigma2.git] / lib / dvb_ci / dvbci_ui.h
1 #ifndef __dvbci_ui_h
2 #define __dvbci_ui_h
3
4 #include <string>
5 #include <Python.h>
6
7 #define MAX_SLOTS       2       
8
9 class eDVBCI_UI
10 {
11         int state[MAX_SLOTS];
12         static eDVBCI_UI *instance;
13         std::string appName;
14 protected:
15 public:
16         eDVBCI_UI();
17         ~eDVBCI_UI();
18
19         static eDVBCI_UI *getInstance();
20         
21         int getState(int slot);
22         void setState(int slot, int state);
23         std::string getAppName(int slot);
24         void setAppName(int slot, const char *name);
25         void setReset(int slot);
26         int initialize(int slot);
27         int startMMI(int slot);
28         int stopMMI(int slot);
29         int availableMMI(int slot);
30         int getMMIState(int slot);
31
32         int answerMenu(int slot, int answer);
33         int answerEnq(int slot, char *val);
34         int cancelEnq(int slot);
35
36         PyObject *eDVBCI_UI::getMMIScreen(int slot);
37         PyObject *mmiScreen;
38         int mmiTuplePos;
39         int mmiScreenReady;
40
41         int mmiScreenEnq(int slot, int blind, int answerLen, char *text);
42         int mmiScreenBegin(int slot, int listmenu);
43         int mmiScreenAddText(int slot, int type, char *value);
44         int mmiScreenFinish(int slot);
45 };
46
47 #endif