80 if (ch->Source() == Channel->
Source() && ch->Transponder() == Channel->
Transponder()) {
131 time_t now = time(NULL);
144 bool AnyDeviceSwitched =
false;
149 const cChannel *Channel = ScanData->GetChannel();
160 if (!MaySwitchTransponder) {
170 AnyDeviceSwitched =
true;
int DeviceNumber(void) const
Returns the number of this device (0 ... numDevices - 1).
int Transponder(void) const
static const cChannels * GetChannelsRead(cStateKey &StateKey, int TimeoutMs=0)
Gets the list of channels for read access.
virtual bool ProvidesEIT(void) const
Returns true if this device provides EIT data and thus wants to be tuned to the channels it can recei...
void Add(cListObject *Object, cListObject *After=NULL)
int Ca(int Index=0) const
void Remove(bool IncState=true)
Removes this key from the lock it was previously used with.
static cDevice * GetDevice(int Index)
Gets the device with the given Index.
virtual int Compare(const cListObject &ListObject) const
Must return 0 if this object is equal to ListObject, a positive value if it is "greater", and a negative value if it is "smaller".
static int NumDevices(void)
Returns the total number of devices.
int Transponder(void) const
Returns the transponder frequency in MHz, plus the polarization in case of sat.
cScanData(const cChannel *Channel)
A steerable satellite dish generally points to the south on the northern hemisphere, and to the north on the southern hemisphere (unless you're located directly on the equator, in which case the general direction is "up").
virtual bool MaySwitchTransponder(const cChannel *Channel) const
Returns true if it is ok to switch to the Channel's transponder on this device, without disturbing an...
const cChannel * GetChannel(void) const
static int CurrentChannel(void)
Returns the number of the current channel on the primary device.
void AddTransponder(const cChannel *Channel)
#define ISTRANSPONDER(f1, f2)
bool SwitchChannel(const cChannel *Channel, bool LiveView)
Switches the device to the given Channel, initiating transfer mode if necessary.
#define LOCK_CHANNELS_READ
void AddTransponders(const cList< cChannel > *Channels)
const T * Next(const T *Object) const
< Returns the element immediately before Object in this list, or NULL if Object is the first element ...
virtual bool ProvidesTransponder(const cChannel *Channel) const
Returns true if this device can provide the transponder of the given Channel (which implies that it c...
eKeys Message(eMessageType Type, const char *s, int Seconds=0)
Displays the given message, either through a currently visible display object that is capable of doin...
int Priority(void) const
Returns the priority of the current receiving session (-MAXPRIORITY..MAXPRIORITY), or IDLEPRIORITY if no receiver is currently active.
void Del(cListObject *Object, bool DeleteObject=true)
static cDevice * PrimaryDevice(void)
Returns the primary device.
void StopReplay(void)
Stops the current replay session (if any).
virtual bool ProvidesTransponderExclusively(const cChannel *Channel) const
Returns true if this is the only device that is able to provide the given channel's transponder...
static cDevice * ActualDevice(void)
Returns the actual receiving device in case of Transfer Mode, or the primary device otherwise...
int Position(void)
Returns the orbital position of the satellite in case this is a DVB-S source (zero otherwise)...
void AddTransponder(cChannel *Channel)
const T * First(void) const
Returns the first element in this list, or NULL if the list is empty.
cTransponderList * transponderList
void AddTransponder(cChannel *Channel)
virtual const cPositioner * Positioner(void) const
Returns a pointer to the positioner (if any) this device has used to move the satellite dish to the r...