summaryrefslogtreecommitdiff
path: root/plugins/control
diff options
context:
space:
mode:
authorroot <root@elwms02.(none)>2010-04-06 16:13:08 +0200
committerroot <root@elwms02.(none)>2010-04-06 16:13:08 +0200
commit0e7005fcc7483c01aa102fbea358c5ac65a48d62 (patch)
tree11517ce0d3d2977c6732b3aa583b0008083e0bd3 /plugins/control
downloadx-vdr-0e7005fcc7483c01aa102fbea358c5ac65a48d62.tar.gz
x-vdr-0e7005fcc7483c01aa102fbea358c5ac65a48d62.tar.bz2
hello world
Diffstat (limited to 'plugins/control')
-rw-r--r--plugins/control/patches/control-0.0.2a.patch72
-rw-r--r--plugins/control/patches/control-0.0.2a_uint64_t.patch69
-rw-r--r--plugins/control/plugin.sh51
3 files changed, 192 insertions, 0 deletions
diff --git a/plugins/control/patches/control-0.0.2a.patch b/plugins/control/patches/control-0.0.2a.patch
new file mode 100644
index 0000000..d4c0fe3
--- /dev/null
+++ b/plugins/control/patches/control-0.0.2a.patch
@@ -0,0 +1,72 @@
+diff -ur control-0.0.2a/gateway.c control-0.0.2a-patched/gateway.c
+--- control-0.0.2a/gateway.c 2006-01-08 17:33:12.000000000 +0100
++++ control-0.0.2a-patched/gateway.c 2006-01-08 17:37:30.000000000 +0100
+@@ -102,7 +102,12 @@
+
+ uint64 Command = 0;
+ uint i = 0;
++#if VDRVERSNUM >= 10318
++ cTimeMs timeout;
++ timeout.Set(100);
++#else
+ int t0 = time_ms();
++#endif
+ while (_active && i < sizeof(Command)) {
+
+ uchar ch;
+@@ -131,7 +136,11 @@
+ // of their codes, so we'll need to wait some 100ms to see if
+ // there is more coming up - or whether this really is the 'ESC'
+ // key (if somebody knows how to clean this up, please let me know):
++#if VDRVERSNUM >= 10318
++ if (Command == 0x1B && !timeout.TimedOut())
++#else
+ if (Command == 0x1B && time_ms() - t0 < 100)
++#endif
+ continue;
+
+ if (Command) {
+diff -ur control-0.0.2a/state.c control-0.0.2a-patched/state.c
+--- control-0.0.2a/state.c 2004-07-02 21:24:22.000000000 +0200
++++ control-0.0.2a-patched/state.c 2006-01-08 18:08:10.000000000 +0100
+@@ -69,7 +69,11 @@
+ // The given DVB device has started recording Name. Name is the name of the
+ // recording, without any directory path.
+ // If Name is NULL, the recording has ended.
++#if VDRVERSNUM >= 10338
++void cCtrlState::Recording(const cDevice *Device, const char *Name, const char *FileName, bool On) {
++#else
+ void cCtrlState::Recording(const cDevice *Device, const char *Name) {
++#endif
+ //printf("Recording %i, %s", Device->CardIndex(), Name );
+ }
+
+@@ -79,7 +83,11 @@
+ // recording, without any directory path. In case of a player that can't provide
+ // a name, Name can be a string that identifies the player type (like, e.g., "DVD").
+ // If Name is NULL, the replay has ended.
++#if VDRVERSNUM >= 10338
++void cCtrlState::Replaying(const cControl *Control, const char *Name, const char *FileName, bool On) {
++#else
+ void cCtrlState::Replaying(const cControl *Control, const char *Name) {
++#endif
+ //printf("Replaying %s", Name );
+ }
+
+diff -ur control-0.0.2a/state.h control-0.0.2a-patched/state.h
+--- control-0.0.2a/state.h 2004-07-02 21:24:22.000000000 +0200
++++ control-0.0.2a-patched/state.h 2006-01-08 18:06:55.000000000 +0100
+@@ -60,8 +60,13 @@
+ // cStatus
+ protected:
+ virtual void ChannelSwitch(const cDevice *Device, int ChannelNumber);
++#if VDRVERSNUM >= 10338
++ virtual void Recording(const cDevice *Device, const char *Name, const char *FileName, bool On);
++ virtual void Replaying(const cControl *Control, const char *Name, const char *FileName, bool On);
++#else
+ virtual void Recording(const cDevice *Device, const char *Name);
+ virtual void Replaying(const cControl *Control, const char *Name);
++#endif
+ virtual void SetVolume(int Volume, bool Absolute);
+ virtual void OsdClear();
+ virtual void OsdTitle(const char *Title);
diff --git a/plugins/control/patches/control-0.0.2a_uint64_t.patch b/plugins/control/patches/control-0.0.2a_uint64_t.patch
new file mode 100644
index 0000000..888df5c
--- /dev/null
+++ b/plugins/control/patches/control-0.0.2a_uint64_t.patch
@@ -0,0 +1,69 @@
+diff -ruN control-0.0.2a-old/gateway.c control-0.0.2a/gateway.c
+--- control-0.0.2a-old/gateway.c 2008-04-29 00:24:07.000000000 +0200
++++ control-0.0.2a/gateway.c 2008-04-29 00:21:16.000000000 +0200
+@@ -100,7 +100,7 @@
+
+ if (_stack.poll(100)) {
+
+- uint64 Command = 0;
++ uint64_t Command = 0;
+ uint i = 0;
+ #if VDRVERSNUM >= 10318
+ cTimeMs timeout;
+diff -ruN control-0.0.2a-old/keyboard.c control-0.0.2a/keyboard.c
+--- control-0.0.2a-old/keyboard.c 2004-07-02 21:24:22.000000000 +0200
++++ control-0.0.2a/keyboard.c 2008-04-29 00:21:32.000000000 +0200
+@@ -18,7 +18,7 @@
+
+ struct tKbdMap {
+ eKbdFunc func;
+- uint64 code;
++ uint64_t code;
+ };
+
+
+@@ -117,7 +117,7 @@
+
+
+
+-bool cCtrlKeyboard::intPut(uint64 Command, bool Repeat, bool Release) {
++bool cCtrlKeyboard::intPut(uint64_t Command, bool Repeat, bool Release) {
+
+ bool ret = cRemote::Put(Command, Repeat, Release);
+ conLOG_KEYB("%s cKbdRemoteForControl::intPut(0x%016LX)", ret ? "true" : "false", Command);
+@@ -126,7 +126,7 @@
+
+
+
+-bool cCtrlKeyboard::Put(uint64 Command, bool Repeat, bool Release) {
++bool cCtrlKeyboard::Put(uint64_t Command, bool Repeat, bool Release) {
+
+ if (! _pRemote)
+ _pRemote = new cCtrlKeyboard();
+@@ -136,7 +136,7 @@
+
+
+
+-int cCtrlKeyboard::MapCodeToFunc(uint64 Code) {
++int cCtrlKeyboard::MapCodeToFunc(uint64_t Code) {
+
+ for (const tKbdMap *p = keyboardKbdMap; p->func != kfNone; p++) {
+ if (p->code == Code)
+diff -ruN control-0.0.2a-old/keyboard.h control-0.0.2a/keyboard.h
+--- control-0.0.2a-old/keyboard.h 2004-07-02 21:24:22.000000000 +0200
++++ control-0.0.2a/keyboard.h 2008-04-29 00:21:37.000000000 +0200
+@@ -30,11 +30,11 @@
+ cCtrlKeyboard();
+ virtual ~cCtrlKeyboard();
+
+- bool intPut(uint64 Command, bool Repeat, bool Release);
++ bool intPut(uint64_t Command, bool Repeat, bool Release);
+
+ public:
+- static bool Put(uint64 Command, bool Repeat = false, bool Release = false);
+- static int MapCodeToFunc(uint64 Code);
++ static bool Put(uint64_t Command, bool Repeat = false, bool Release = false);
++ static int MapCodeToFunc(uint64_t Code);
+ };
+
+
diff --git a/plugins/control/plugin.sh b/plugins/control/plugin.sh
new file mode 100644
index 0000000..63791d0
--- /dev/null
+++ b/plugins/control/plugin.sh
@@ -0,0 +1,51 @@
+#!/bin/sh
+
+ # x-vdr (Installations-Skript fuer einen VDR mit Debian als Basis)
+ # von Marc Wernecke - www.zulu-entertainment.de
+ # 20.08.2006
+ #
+ # vdr-control
+
+ # defaults
+ source ./../../x-vdr.conf
+ source ./../../setup.conf
+ source ./../../functions
+ WEB="http://ricomp.de/vdr/vdr-control-0.0.2a.tgz"
+ VERSION="control-0.0.2a"
+ LINK="control"
+
+ VAR=`basename $WEB`
+ DIR=`pwd`
+
+ # plugin entfernen
+ function clean_plugin() {
+ cd $SOURCEDIR/VDR/PLUGINS/src
+ rm -rf $LINK*
+ rm -f $VDRLIBDIR/libvdr-$LINK*
+ log "cleaning $LINK"
+ }
+
+ # plugin installieren
+ function install_plugin() {
+ download_plugin
+ extract_plugin
+ cd $SOURCEDIR/VDR/PLUGINS/src
+ rm -f $LINK
+ ln -vfs $VERSION $LINK
+ patch_plugin
+
+ ## plugin specials - start ##
+
+ ## plugin specials - ende ##
+ }
+
+ # plugin commands
+ if [ $# \> 0 ]; then
+ cmd=$1
+ cmd_plugin
+ else
+ install_plugin
+ log "install-plugin fuer $VERSION ist fertig"
+ fi
+
+ exit 0 \ No newline at end of file