avswitch
authorRonny Strutz <ronny.strutz@multimedia-labs.de>
Fri, 2 Sep 2005 21:40:11 +0000 (21:40 +0000)
committerRonny Strutz <ronny.strutz@multimedia-labs.de>
Fri, 2 Sep 2005 21:40:11 +0000 (21:40 +0000)
lib/driver/avswitch.cpp [new file with mode: 0644]
lib/driver/avswitch.h [new file with mode: 0644]

diff --git a/lib/driver/avswitch.cpp b/lib/driver/avswitch.cpp
new file mode 100644 (file)
index 0000000..31db25a
--- /dev/null
@@ -0,0 +1,41 @@
+#include <lib/driver/avswitch.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>
+
+eAVSwitch *eAVSwitch::instance = 0;
+
+eAVSwitch::eAVSwitch()
+{
+       ASSERT(!instance);
+       instance = this;
+       
+       avsfd = open("/dev/dbox/avs0", O_RDWR);
+}
+
+eAVSwitch::~eAVSwitch()
+{
+       if(avsfd > 0)
+               close(avsfd);
+}
+
+eAVSwitch *eAVSwitch::getInstance()
+{
+       return instance;
+}
+
+void eAVSwitch::setColorFormat(int format)
+{
+       printf("eAVSwitch::setColorFormat(%d)\n",format);
+       /*there are no ioctl for controling this in avs - scart api needed 
+               no, not the gillem one */
+}
+
+//FIXME: correct "run/startlevel"
+eAutoInitP0<eAVSwitch> init_avswitch(eAutoInitNumbers::rc, "AVSwitch Driver");
diff --git a/lib/driver/avswitch.h b/lib/driver/avswitch.h
new file mode 100644 (file)
index 0000000..d841769
--- /dev/null
@@ -0,0 +1,19 @@
+#ifndef __avswitch_h
+#define __avswitch_h
+
+class eAVSwitch
+{
+       static eAVSwitch *instance;
+       
+       int avsfd;
+protected:     
+public:
+       eAVSwitch();
+       ~eAVSwitch();
+
+       static eAVSwitch *getInstance();
+
+       void setColorFormat(int format);
+};
+
+#endif