Go to the documentation of this file.
36 {
return Open(
this); }
40 bool Init(QString &startchannel,
bool setchan)
override;
49 bool IsOpen(
void)
const override;
68 bool HasLock(
bool *ok =
nullptr)
const;
78 double GetSNR(
bool *ok =
nullptr)
const;
91 bool force_reset =
false,
bool same_input =
false);
92 bool Retune(
void)
override;
int GetFd(void) const override
Returns file descriptor, -1 if it does not exist.
bool CheckModulation(DTVModulation modulation) const
Return true iff modulation is supported modulation on the frontend.
double GetUncorrectedBlockCount(bool *ok=nullptr) const
Returns # of uncorrected blocks since last call. First call undefined.
bool Init(QString &startchannel, bool setchan) override
uint64_t m_extModulations
static void ReturnMasterLock(DVBChannel *&dvbm)
DTVModulationSystem m_currentSys
bool IsTuningParamsProbeSupported(void) const
Returns true iff tuning info probing is working.
const DiSEqCDevRotor * GetRotor(void) const
Returns rotor object if it exists, nullptr otherwise.
uint64_t m_frequencyMinimum
DVBChannel(QString device, TVRec *parent=nullptr)
double GetBitErrorRateDVBv5(bool *ok) const
Get Bit Error Rate from the DVBv5 interface.
bool CheckCodeRate(DTVCodeRate rate) const
Return true iff rate is supported rate on the frontend.
bool CanDo(uint64_t capability) const
uint64_t GetCapabilities(void) const
A PMT table maps a program described in the ProgramAssociationTable to various PID's which describe t...
void CheckOptions(DTVMultiplex &t) const override
Checks tuning for problems, and tries to fix them.
virtual bool Tune(const DTVMultiplex &tuning)=0
This performs the actual frequency tuning and in some cases input switching.
double GetSignalStrength(bool *ok=nullptr) const
Returns signal strength in the range [0.0..1.0] (non-calibrated).
void SetPMT(const ProgramMapTable *pmt)
Tells the Conditional Access Module which streams we wish to decode.
uint64_t m_frequencyMaximum
bool SwitchToInput(int newcapchannel, bool setstarting)
static int64_t s_lastTuning
uint GetMinSignalMonitorDelay(void) const
bool IsMaster(void) const override
Returns true if this is the first of a number of multi-rec devs.
DVB-S device settings class.
bool WaitForBackend(int timeout_ms)
DTVMultiplex m_prevTuning
QString GetDevice(void) const override
Returns String representing device, useful for debugging.
bool Tune(const DTVMultiplex &tuning) override
This performs the actual frequency tuning and in some cases input switching.
void Close(void) override
Closes the channel changing hardware to use.
double GetSNR(bool *ok=nullptr) const
Returns signal/noise in the range [0..1.0].
QList< DTVModulationSystem > m_sysList
DiSEqCDevSettings m_diseqcSettings
DTVMultiplex m_desiredTuning
double GetUncorrectedBlockCountDVBv5(bool *ok) const
Get Uncorrected Block Count from the DVBv5 interface.
This is a specialization of DTVRecorder used to handle streams from DVB drivers.
bool Retune(void) override
double GetBitErrorRate(bool *ok=nullptr) const
Returns # of corrected bits since last call. First call undefined.
Provides interface to the tuning hardware when using DVB drivers.
bool Open(void) override
Opens the channel changing hardware for use.
double GetSNRDVBv5(bool *ok) const
Get SNR from the DVBv5 interface [0-1.0] It is transformed to a linear relative scale if provided in ...
bool HasCRCBug(void) const
Returns true iff we have a faulty DVB driver that munges PMT.
QMap< const DVBChannel *, bool > IsOpenMap
QString GetFrontendName(void) const
Returns frontend name as reported by driver.
void SetTimeOffset(double offset)
Tells the Conditional Access Module the offset from the computers utc time to dvb time.
void CheckFrequency(uint64_t frequency) const
Checks tuning frequency.
DiSEqCDevTree * m_diseqcTree
This is the coordinating class of the Recorder Subsystem.
void SetSlowTuning(uint how_slow_in_ms)
bool ProbeTuningParams(DTVMultiplex &tuning) const
Fetches DTVMultiplex params from driver.
bool HasLock(bool *ok=nullptr) const
Returns true iff we have a signal carrier lock.
DVB-S device tree class. Represents a tree of DVB-S devices.
DVBChannel * GetMasterLock(void) const
bool IsOpen(void) const override
Reports whether channel is already open.
int GetChanID(void) const override
Returns Channel ID.
Class providing a generic interface to digital tuning hardware.
void DrainDVBEvents(void)
double GetSignalStrengthDVBv5(bool *ok) const
Get Signal strength from the DVBv5 interface [0-1.0] It is transformed to a linear relative scale if ...
QString GetCardNum(void) const
Returns DVB device number, used to construct filenames for DVB devices.