Go to the documentation of this file.
15 #include <QReadWriteLock>
63 virtual bool Tune(
const QString &) {
return true; }
75 bool Tune([[maybe_unused]]
const QString &freqid,
76 [[maybe_unused]]
int finetune)
override
81 virtual bool Tune([[maybe_unused]] uint64_t frequency)
129 virtual bool IsMaster(
void)
const {
return false; }
133 virtual bool IsIPTV(
void)
const {
return false; }
152 uint mpeg_tsid,
int mpeg_pnum);
182 #endif // DTVCHANNEL_H
virtual std::vector< DTVTunerType > GetTunerTypes(void) const
Returns a vector of supported tuning types.
uint GetMajorChannel(void) const
Returns major channel, 0 if unknown.
virtual void CheckOptions(DTVMultiplex &) const
Checks tuning for problems, and tries to fix them.
void RegisterForMaster(const QString &key)
static void ReturnMasterLock(DTVChannelP &chan)
uint m_currentTransportID
static MasterMap s_master_map
virtual bool IsIPTV(void) const
A PMT table maps a program described in the ProgramAssociationTable to various PID's which describe t...
virtual bool IsPIDTuningSupported(void) const
uint GetMinorChannel(void) const
Returns minor channel, 0 if unknown.
DTVChannel(TVRec *parent)
bool SetChannelByString(const QString &chan) override
void DeregisterForMaster(const QString &key)
static DTVChannel * GetMasterLock(const QString &key)
bool Tune([[maybe_unused]] const QString &freqid, [[maybe_unused]] int finetune) override
This tunes on the frequency Identification parameter for hardware that supports it.
virtual bool Tune(const QString &)
Leave it up to the implementation to map the channnum appropriately.
virtual bool Tune(const DTVMultiplex &tuning)=0
This performs the actual frequency tuning and in some cases input switching.
const ProgramMapTable * GetGeneratedPMT(void) const
QMap< QString, QList< DTVChannel * > > MasterMap
QString GetTuningMode(void) const
Returns tuning mode last set by SetTuningMode().
uint GetOriginalNetworkID(void) const
Returns DVB original_network_id, 0 if unknown.
uint m_currentOriginalNetworkID
uint GetTransportID(void) const
Returns DVB transport_stream_id, 0 if unknown.
Abstract class providing a generic interface to tuning hardware.
ProgramMapTable * m_genPMT
This is a generated PMT for RAW pid tuning.
void SaveCachedPids(const pid_cache_t &pid_cache) const
Saves MPEG PIDs to cache to database.
static const int kTunerTypeUnknown
void SetSIStandard(const QString &si_std)
Sets PSIP table standard: MPEG, DVB, ATSC, or OpenCable.
std::vector< pid_cache_item_t > pid_cache_t
const ProgramAssociationTable * GetGeneratedPAT(void) const
bool HasGeneratedPMT(void) const
virtual bool IsMaster(void) const
Returns true if this is the first of a number of multi-rec devs.
virtual bool Tune(const IPTVTuningData &, bool)
Performs IPTV Tuning. Only implemented by IPTVChannel.
void SetFormat(const QString &format) override
The Program Association Table lists all the programs in a stream, and is always found on PID 0.
virtual bool EnterPowerSavingMode(void)
Enters power saving mode if the card supports it.
QString m_sistandard
PSIP table standard: MPEG, DVB, ATSC, OpenCable.
QString GetSIStandard(void) const
Returns PSIP table standard: MPEG, DVB, ATSC, or OpenCable.
void HandleScriptEnd(bool ok) override
static QReadWriteLock s_master_map_lock
virtual bool TuneMultiplex(uint mplexid, const QString &inputname)
To be used by the channel scanner and possibly the EIT scanner.
ProgramAssociationTable * m_genPAT
This is a generated PAT for RAW pid tuning.
void SetTuningMode(const QString &tuning_mode)
Sets tuning mode: "mpeg", "dvb", "atsc", etc.
This is the coordinating class of the Recorder Subsystem.
int GetProgramNumber(void) const
Returns program number in PAT, -1 if unknown.
virtual bool Tune([[maybe_unused]] uint64_t frequency)
void SetDTVInfo(uint atsc_major, uint atsc_minor, uint dvb_orig_netid, uint mpeg_tsid, int mpeg_pnum)
bool HasGeneratedPAT(void) const
Class providing a generic interface to digital tuning hardware.
void GetCachedPids(pid_cache_t &pid_cache) const
Returns cached MPEG PIDs for last tuned channel.
QString GetSuggestedTuningMode(bool is_live_tv) const
Returns suggested tuning mode: "mpeg", "dvb", or "atsc".
uint m_currentATSCMinorChannel
uint m_currentATSCMajorChannel