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:35
bool DeleteCachedTable(PSIPTable *psip) const override
bool HandleTables(uint pid, const PSIPTable &psip) override
Assembles PSIP packets and processes them.
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