diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2004-01-17 15:38:11 +0100 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2004-01-17 15:38:11 +0100 |
commit | e4960d169e8f1184e571ab60df39e1ab2e584eb6 (patch) | |
tree | 1b1db050aef6f0da1cc4c91a0a678e46a9e16a95 /eitscan.c | |
parent | 004b82d3d44a2fdf455ec5f6f8f95dd7bc3ad659 (diff) | |
download | vdr-e4960d169e8f1184e571ab60df39e1ab2e584eb6.tar.gz vdr-e4960d169e8f1184e571ab60df39e1ab2e584eb6.tar.bz2 |
The "Red" button in the "Setup/EPG" menu can now be used to force an EPG scan on a single DVB card system
Diffstat (limited to 'eitscan.c')
-rw-r--r-- | eitscan.c | 14 |
1 files changed, 12 insertions, 2 deletions
@@ -4,13 +4,14 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: eitscan.c 1.19 2004/01/17 13:13:47 kls Exp $ + * $Id: eitscan.c 1.20 2004/01/17 15:38:11 kls Exp $ */ #include "eitscan.h" #include <stdlib.h> #include "channels.h" #include "dvbdevice.h" +#include "interface.h" // --- cScanData ------------------------------------------------------------- @@ -106,6 +107,11 @@ void cEITScanner::AddTransponder(cChannel *Channel) transponderList->AddTransponder(Channel); } +void cEITScanner::ForceScan(void) +{ + lastActivity = 0; +} + void cEITScanner::Activity(void) { if (currentChannel) { @@ -142,8 +148,10 @@ void cEITScanner::Process(void) if (Channel) { //XXX if (Device->ProvidesTransponder(Channel)) { if ((!Channel->Ca() || Channel->Ca() == Device->DeviceNumber() + 1 || Channel->Ca() >= 0x0100) && Device->ProvidesTransponder(Channel)) { //XXX temporary for the 'sky' plugin - if (Device == cDevice::PrimaryDevice() && !currentChannel) + if (Device == cDevice::PrimaryDevice() && !currentChannel) { currentChannel = Device->CurrentChannel(); + Interface->Info("Starting EPG scan"); + } currentDevice = Device;//XXX see also dvbdevice.c!!! Device->SwitchChannel(Channel, false); currentDevice = NULL; @@ -166,6 +174,8 @@ void cEITScanner::Process(void) if (!scanList->Count()) { delete scanList; scanList = NULL; + if (lastActivity == 0) // this was a triggered scan + Activity(); break; } } |