summaryrefslogtreecommitdiff
path: root/device.h
diff options
context:
space:
mode:
Diffstat (limited to 'device.h')
-rw-r--r--device.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/device.h b/device.h
index cb3bc2c..da6d095 100644
--- a/device.h
+++ b/device.h
@@ -159,6 +159,40 @@ public:
static void Shutdown(void);
///< Closes down all devices.
///< Must be called at the end of the program.
+//ML
+public:
+ static void SetLnbNr(void);
+ ///< Called after changes in setup
+ ///< call SetLNBNrFromSetup for each device
+ virtual void SetLnbNrFromSetup(void) {};
+ ///< Called after changes in setup
+ ///< Read Setup.CardUsesLNBnr, write value to member variable of this class
+ ///< Only implemented in dvbdevice, other devices don't use LNBs
+ virtual int LnbNr(void) const { return ( cardIndex + 1 ) * -1; };
+ ///< Number of LNB. This is -cardIndex for all non-DVB devices.
+ ///< So, there will be no LNB conflicts for non-DVB devices.
+ virtual bool IsShareLnb(const cDevice *Device) { return false; };
+ ///< True if both devices differ (this != Device) and share the same LNB
+ virtual bool IsLnbConflict(const cChannel *Channel) { return false; };
+ ///< false if 'Channel' can be recieved with the same
+ ///< LNB as 'this' device is using
+ ///< Otherwise, true
+ cDevice *GetBadDevice(const cChannel *Channel) ;
+ ///< Returns NULL if there is no device which uses the same LNB or if
+ ///< all of those devices are tuned to the same frequency band and
+ ///< polarization as of the requested channel.
+ ///< Otherwise returns the first device found.
+ int GetMaxBadPriority(const cChannel *Channel) const;
+ ///< Returns the highest priority of all receiving devices which use
+ ///< the same LNB and are tuned to a different frequency band or
+ ///< polarization as of the requested channel.
+ ///< Returns -1 if there are no such devices, but the 'actual' device
+ ///< (device recieving live view) would be affected by switching to the requested channel.
+ ///< Returns -2 if there are no such devices and the actual device
+ ///< would not be affected by switching to the requested channel.
+//ML-Ende
+
+
private:
static int nextCardIndex;
int cardIndex;