MythTV  master
scanstreamdata.h
Go to the documentation of this file.
1 // -*- Mode: c++ -*-
2 // Copyright (c) 2003-2004, Daniel Thor Kristjansson
3 #ifndef SCANSTREAMDATA_H_
4 #define SCANSTREAMDATA_H_
5 
6 #include "atscstreamdata.h"
7 #include "dvbstreamdata.h"
8 #include "mythtvexp.h"
9 
11  public virtual MPEGStreamData,
12  public ATSCStreamData,
13  public DVBStreamData
14 {
15  public:
16  explicit ScanStreamData(bool no_default_pid = false);
17  virtual ~ScanStreamData();
18 
19  bool IsRedundant(uint pid, const PSIPTable&) const override; // ATSCStreamData
20  bool HandleTables(uint pid, const PSIPTable &psip) override; // ATSCStreamData
21 
23  void Reset(void) override; // ATSCStreamData
24 
25  bool HasEITPIDChanges(const uint_vec_t& /*in_use_pids*/) const override // ATSCStreamData
26  { return false; }
27  bool GetEITPIDChanges(const uint_vec_t& /*in_use_pids*/,
28  uint_vec_t& /*add_pids*/,
29  uint_vec_t& /*del_pids*/) const override // ATSCStreamData
30  { return false; }
31 
32  QString GetSIStandard(const QString& guess = "mpeg") const;
33 
34  void SetFreesatAdditionalSI(bool freesat_si);
35 
36  private:
37  bool DeleteCachedTable(PSIPTable *psip) const override; // ATSCStreamData
39  bool m_dvb_uk_freesat_si {false};
41 };
42 
43 inline void ScanStreamData::SetFreesatAdditionalSI(bool freesat_si)
44 {
45  QMutexLocker locker(&_listener_lock);
46  m_dvb_uk_freesat_si = freesat_si;
47  if (freesat_si)
49  else
51 }
52 
53 #endif // SCANSTREAMDATA_H_
bool IsRedundant(uint, const PSIPTable &) const override
Returns true if table already seen.
bool m_dvb_uk_freesat_si
listen for additional Freesat service information
unsigned int uint
Definition: compat.h:140
virtual void RemoveListeningPID(uint pid)
A PSIP table is a variant of a PES packet containing an MPEG, ATSC or DVB table.
Definition: mpegtables.h:371
#define MTV_PUBLIC
Definition: mythtvexp.h:15
bool GetEITPIDChanges(const uint_vec_t &, uint_vec_t &, uint_vec_t &) const override
bool HasEITPIDChanges(const uint_vec_t &) const override
void SetFreesatAdditionalSI(bool freesat_si)
vector< uint > uint_vec_t
virtual void AddListeningPID(uint pid, PIDPriority priority=kPIDPriorityNormal)
void Reset(void) override
Definition: dvbstreamdata.h:40
bool DeleteCachedTable(PSIPTable *psip) const override
bool HandleTables(uint pid, const PSIPTable &psip) override
Process PSIP packets.
Encapsulates data about ATSC stream and emits events for most tables.
Encapsulates data about MPEG stream and emits events for each table.
void Reset(void) override