aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorRonny Strutz <ronny.strutz@multimedia-labs.de>2005-11-10 04:00:03 +0000
committerRonny Strutz <ronny.strutz@multimedia-labs.de>2005-11-10 04:00:03 +0000
commit9d43cb4dd6b2e057bfa80ec98d7422fe9c06e9c8 (patch)
treeb28bcd9cc048d69ebeffe16bf45327ad148f03e8 /lib
parent72bb04e928b096869b458b9cf6ceb1bc636d600e (diff)
downloadenigma2-9d43cb4dd6b2e057bfa80ec98d7422fe9c06e9c8.tar.gz
enigma2-9d43cb4dd6b2e057bfa80ec98d7422fe9c06e9c8.zip
add dvbci_ui class to make ci-comm more simple
Diffstat (limited to 'lib')
-rw-r--r--lib/dvb_ci/Makefile.am3
-rw-r--r--lib/dvb_ci/dvbci_ui.cpp40
-rw-r--r--lib/dvb_ci/dvbci_ui.h20
3 files changed, 62 insertions, 1 deletions
diff --git a/lib/dvb_ci/Makefile.am b/lib/dvb_ci/Makefile.am
index 85940da2..fc7f7625 100644
--- a/lib/dvb_ci/Makefile.am
+++ b/lib/dvb_ci/Makefile.am
@@ -5,5 +5,6 @@ noinst_LIBRARIES = libenigma_dvb_ci.a
libenigma_dvb_ci_a_SOURCES = dvbci.cpp dvbci_session.cpp dvbci_resmgr.cpp \
dvbci_appmgr.cpp dvbci_camgr.cpp \
- dvbci_datetimemgr.cpp dvbci_mmi.cpp
+ dvbci_datetimemgr.cpp dvbci_mmi.cpp \
+ dvbci_ui.cpp
diff --git a/lib/dvb_ci/dvbci_ui.cpp b/lib/dvb_ci/dvbci_ui.cpp
new file mode 100644
index 00000000..8dfb87e3
--- /dev/null
+++ b/lib/dvb_ci/dvbci_ui.cpp
@@ -0,0 +1,40 @@
+#include <lib/dvb_ci/dvbci_ui.h>
+
+#include <unistd.h>
+#include <fcntl.h>
+#include <sys/ioctl.h>
+
+#include <lib/base/init.h>
+#include <lib/base/init_num.h>
+#include <lib/base/econfig.h>
+#include <lib/base/eerror.h>
+
+eDVBCI_UI *eDVBCI_UI::instance = 0;
+
+eDVBCI_UI::eDVBCI_UI()
+{
+ int i;
+
+ for(i=0;i<MAX_SLOTS;i++)
+ state[i] = 0; //no module
+
+ ASSERT(!instance);
+ instance = this;
+}
+
+eDVBCI_UI::~eDVBCI_UI()
+{
+}
+
+eDVBCI_UI *eDVBCI_UI::getInstance()
+{
+ return instance;
+}
+
+int eDVBCI_UI::getState(int slot)
+{
+ return state[slot]; //exploit me ;)
+}
+
+//FIXME: correct "run/startlevel"
+eAutoInitP0<eDVBCI_UI> init_dvbciui(eAutoInitNumbers::rc, "DVB-CI UI");
diff --git a/lib/dvb_ci/dvbci_ui.h b/lib/dvb_ci/dvbci_ui.h
new file mode 100644
index 00000000..b49a675b
--- /dev/null
+++ b/lib/dvb_ci/dvbci_ui.h
@@ -0,0 +1,20 @@
+#ifndef __dvbci_ui_h
+#define __dvbci_ui_h
+
+#define MAX_SLOTS 2
+
+class eDVBCI_UI
+{
+ int state[MAX_SLOTS];
+ static eDVBCI_UI *instance;
+protected:
+public:
+ eDVBCI_UI();
+ ~eDVBCI_UI();
+
+ static eDVBCI_UI *getInstance();
+
+ int eDVBCI_UI::getState(int slot);
+};
+
+#endif