summaryrefslogtreecommitdiff
path: root/device.h
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2004-01-04 12:30:00 +0100
committerKlaus Schmidinger <vdr@tvdr.de>2004-01-04 12:30:00 +0100
commit8976ebcec5ca1ac03c54209b7cc12e9d14915c6b (patch)
tree8562202f489ee585c1252b2cb4a9e61b3e200efe /device.h
parent3a1058fe1fca6d10cea42786aa54abf3d0bd0b94 (diff)
downloadvdr-8976ebcec5ca1ac03c54209b7cc12e9d14915c6b.tar.gz
vdr-8976ebcec5ca1ac03c54209b7cc12e9d14915c6b.tar.bz2
Implemented automatic PID switching and channel detection
Diffstat (limited to 'device.h')
-rw-r--r--device.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/device.h b/device.h
index 33b4ad80..196ccfe9 100644
--- a/device.h
+++ b/device.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: device.h 1.36 2003/12/22 10:52:39 kls Exp $
+ * $Id: device.h 1.37 2004/01/04 11:52:00 kls Exp $
*/
#ifndef __DEVICE_H
@@ -14,6 +14,7 @@
#include "eit.h"
#include "filter.h"
#include "pat.h"
+#include "sdt.h"
#include "sections.h"
#include "thread.h"
#include "tools.h"
@@ -131,7 +132,8 @@ public:
///< Returns the card index of this device (0 ... MAXDEVICES - 1).
int DeviceNumber(void) const;
///< Returns the number of this device (0 ... MAXDEVICES - 1).
- int ProvidesCa(int Ca) const;
+ virtual int ProvidesCa(const cChannel *Channel) const;//XXX PLUGINS.html!!!
+ //XXX describe changed functionality!!!
///< Checks whether this device provides the given value in its
///< caCaps. Returns 0 if the value is not provided, 1 if only this
///< value is provided, and > 1 if this and other values are provided.
@@ -161,6 +163,8 @@ protected:
public:
virtual bool ProvidesSource(int Source) const;
///< Returns true if this device can provide the given source.
+ virtual bool ProvidesTransponder(const cChannel *Channel) const;
+ ///< XXX -> PLUGINS.html!
virtual bool ProvidesChannel(const cChannel *Channel, int Priority = -1, bool *NeedsDetachReceivers = NULL) const;
///< Returns true if this device can provide the given channel.
///< In case the device has cReceivers attached to it or it is the primary
@@ -192,6 +196,10 @@ protected:
public:
static int CurrentChannel(void) { return primaryDevice ? currentChannel : 0; }
///< Returns the number of the current channel on the primary device.
+ virtual bool HasLock(void);//XXX PLUGINS.html
+ ///< Returns true if the device has a lock on the requested transponder.
+ ///< Default is true, a specific device implementation may return false
+ ///< to indicate that it is not ready yet.
virtual bool HasProgramme(void);
///< Returns true if the device is currently showing any programme to
///< the user, either through replaying or live.
@@ -232,6 +240,7 @@ private:
cSectionHandler *sectionHandler;
cEitFilter *eitFilter;
cPatFilter *patFilter;
+ cSdtFilter *sdtFilter;
protected:
void StartSectionHandler(void);
///< A derived device that provides section data must call