diff options
author | Lars Hanisch <dvb@flensrocker.de> | 2011-03-25 21:20:07 +0100 |
---|---|---|
committer | Lars Hanisch <dvb@flensrocker.de> | 2011-03-25 21:20:07 +0100 |
commit | 59cb96c4c68c1031d713ee36342643378641ca4e (patch) | |
tree | c6177a5b57eac5f220ca7e9ffcaee4f7505be38e /dynamicdevice.c | |
parent | 2e1250d57513f385d3dbd6527f94d98366c84fc9 (diff) | |
download | vdr-plugin-dynamite-59cb96c4c68c1031d713ee36342643378641ca4e.tar.gz vdr-plugin-dynamite-59cb96c4c68c1031d713ee36342643378641ca4e.tar.bz2 |
add some OSD functionalityv0.0.6a
Diffstat (limited to 'dynamicdevice.c')
-rw-r--r-- | dynamicdevice.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/dynamicdevice.c b/dynamicdevice.c index 9aeccb9..3426994 100644 --- a/dynamicdevice.c +++ b/dynamicdevice.c @@ -1,11 +1,13 @@ #include "dynamicdevice.h" #include "udev.h" #include <glob.h> +#include <vdr/skins.h> #include <vdr/transfer.h> cPlugin *cDynamicDevice::dynamite = NULL; int cDynamicDevice::defaultGetTSTimeout = 0; cDvbDeviceProbe *cDynamicDevice::dvbprobe = NULL; +bool cDynamicDevice::enableOsdMessages = false; int cDynamicDevice::numDynamicDevices = 0; cMutex cDynamicDevice::arrayMutex; cDynamicDevice *cDynamicDevice::dynamicdevice[MAXDEVICES] = { NULL }; @@ -28,6 +30,13 @@ int cDynamicDevice::IndexOf(const char *DevPath, int &NextFreeIndex) return index; } +cDynamicDevice *cDynamicDevice::GetDynamicDevice(int Index) +{ + if ((Index < 0) || (Index >= numDynamicDevices)) + return NULL; + return dynamicdevice[Index]; +} + bool cDynamicDevice::ProcessQueuedCommands(void) { for (cDynamicDeviceProbe::cDynamicDeviceProbeItem *dev = cDynamicDeviceProbe::commandQueue.First(); dev; dev = cDynamicDeviceProbe::commandQueue.Next(dev)) { @@ -184,6 +193,10 @@ attach: isyslog("dynamite: attached device %s to dynamic device slot %d", DevPath, freeIndex + 1); dynamicdevice[freeIndex]->ReadUdevProperties(); cPluginManager::CallAllServices("dynamite-event-DeviceAttached-v0.1", (void*)DevPath); + if (enableOsdMessages) { + cString osdMsg = cString::sprintf("attached %s", DevPath); + Skins.QueueMessage(mtInfo, *osdMsg); + } return ddrcSuccess; } @@ -224,6 +237,10 @@ eDynamicDeviceReturnCode cDynamicDevice::DetachDevice(const char *DevPath, bool dynamicdevice[index]->DeleteSubDevice(); isyslog("dynamite: detached device %s%s", DevPath, (Force ? " (forced)" : "")); + if (enableOsdMessages) { + cString osdMsg = cString::sprintf("detached %s", DevPath); + Skins.QueueMessage(mtInfo, *osdMsg); + } return ddrcSuccess; } |