summaryrefslogtreecommitdiff
path: root/channels.h
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2014-01-05 10:41:46 +0100
committerKlaus Schmidinger <vdr@tvdr.de>2014-01-05 10:41:46 +0100
commitc7256c1c1123f2222c6b272af6472bc568b7d2ec (patch)
treecad2b286deaea4a2c574f7caae74a03231300ac5 /channels.h
parent7cbced0c124a2d03290d82953c09f199602b1f7f (diff)
downloadvdr-2a3d3aed422098cf443d6f8ccc3198980d0c80a9.tar.gz
vdr-2a3d3aed422098cf443d6f8ccc3198980d0c80a9.tar.bz2
Channels that are no longer contained in the current SDT of a transponder are now marked with the keyword OBSOLETE in their name and provider fields2.1.3
Diffstat (limited to 'channels.h')
-rw-r--r--channels.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/channels.h b/channels.h
index f719f1e5..7ca1e3e5 100644
--- a/channels.h
+++ b/channels.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: channels.h 3.1 2013/11/04 09:52:02 kls Exp $
+ * $Id: channels.h 3.2 2014/01/04 15:01:21 kls Exp $
*/
#ifndef __CHANNELS_H
@@ -128,6 +128,7 @@ private:
mutable cString shortNameSource;
cString parameters;
int modification;
+ time_t seen; // When this channel was last seen in the SDT of its transponder
mutable const cSchedule *schedule;
cLinkChannels *linkChannels;
cChannel *refChannel;
@@ -187,6 +188,7 @@ public:
tChannelID GetChannelID(void) const { return tChannelID(source, nid, (nid || tid) ? tid : Transponder(), sid, rid); }
bool HasTimer(void) const;
int Modification(int Mask = CHANNELMOD_ALL);
+ time_t Seen(void) { return seen; }
void CopyTransponderData(const cChannel *Channel);
bool SetTransponderData(int Source, int Frequency, int Srate, const char *Parameters, bool Quiet = false);
void SetId(int Nid, int Tid, int Sid, int Rid = 0);
@@ -198,6 +200,7 @@ public:
void SetLinkChannels(cLinkChannels *LinkChannels);
void SetRefChannel(cChannel *RefChannel);
void SetSubtitlingDescriptors(uchar *SubtitlingTypes, uint16_t *CompositionPageIds, uint16_t *AncillaryPageIds);
+ void SetSeen(void);
};
class cChannels : public cRwLock, public cConfig<cChannel> {
@@ -237,6 +240,7 @@ public:
///< modification has been made, and 2 if the user has made a modification.
///< Calling this function resets the 'modified' flag to 0.
cChannel *NewChannel(const cChannel *Transponder, const char *Name, const char *ShortName, const char *Provider, int Nid, int Tid, int Sid, int Rid = 0);
+ void MarkObsoleteChannels(int Source, int Nid, int Tid);
};
extern cChannels Channels;