00001 // -*- Mode: c++ -*- 00002 // Copyright (c) 2003-2004, Daniel Thor Kristjansson 00003 #ifndef SCANSTREAMDATA_H_ 00004 #define SCANSTREAMDATA_H_ 00005 00006 #include "atscstreamdata.h" 00007 #include "dvbstreamdata.h" 00008 #include "mythtvexp.h" 00009 00010 class MTV_PUBLIC ScanStreamData : 00011 public virtual MPEGStreamData, 00012 public ATSCStreamData, 00013 public DVBStreamData 00014 { 00015 public: 00016 ScanStreamData(bool no_default_pid = false); 00017 virtual ~ScanStreamData(); 00018 00019 bool IsRedundant(uint pid, const PSIPTable&) const; 00020 bool HandleTables(uint pid, const PSIPTable &psip); 00021 00022 void Reset(void); 00023 00024 bool HasEITPIDChanges(const uint_vec_t& /*in_use_pids*/) const 00025 { return false; } 00026 bool GetEITPIDChanges(const uint_vec_t& /*in_use_pids*/, 00027 uint_vec_t& /*add_pids*/, 00028 uint_vec_t& /*del_pids*/) const { return false; } 00029 00030 QString GetSIStandard(QString guess = "mpeg") const; 00031 00032 void SetFreesatAdditionalSI(bool freesat_si); 00033 00034 private: 00035 virtual bool DeleteCachedTable(PSIPTable *psip) const; 00037 int dvb_uk_freesat_si; 00038 bool m_no_default_pid; 00039 }; 00040 00041 inline void ScanStreamData::SetFreesatAdditionalSI(bool freesat_si) 00042 { 00043 QMutexLocker locker(&_listener_lock); 00044 dvb_uk_freesat_si = freesat_si; 00045 } 00046 00047 #endif // SCANSTREAMDATA_H_
1.6.3