MythTV  master
dvbsignalmonitor.h
Go to the documentation of this file.
1 // -*- Mode: c++ -*-
2 
3 #ifndef DVBSIGNALMONITOR_H
4 #define DVBSIGNALMONITOR_H
5 
6 // Qt headers
7 #include <QStringList>
8 #include <QCoreApplication>
9 
10 // MythTV headers
11 #include "dtvsignalmonitor.h"
12 
13 class DVBChannel;
14 class DVBStreamHandler;
16 
18 {
20 
21  public:
22  DVBSignalMonitor(int db_cardnum, DVBChannel* _channel,
23  bool _release_stream,
24  uint64_t _flags =
27  ~DVBSignalMonitor() override;
28 
29  QStringList GetStatusList(void) const override; // DTVSignalMonitor
30  void Stop(void) override; // SignalMonitor
31 
32  void SetRotorTarget(float target) override; // DTVSignalMonitor
33  void GetRotorStatus(bool &was_moving, bool &is_moving) override; // DTVSignalMonitor
34  void SetRotorValue(int val) override // DTVSignalMonitor
35  {
36  QMutexLocker locker(&m_statusLock);
38  }
39 
40  void EmitStatus(void) override; // SignalMonitor
41 
42  // MPEG
43  void HandlePMT(uint program_num, const ProgramMapTable *pmt) override; // DTVSignalMonitor
44 
45  // ATSC Main
46  void HandleSTT(const SystemTimeTable *stt) override; // DTVSignalMonitor
47 
48  // DVB Main
49  void HandleTDT(const TimeDateTable *tdt) override; // DTVSignalMonitor
50 
51  protected:
54 
55  void UpdateValues(void) override; // SignalMonitor
56  void EmitDVBSignals(void);
57 
59 
60  protected:
65 
68 };
69 
70 #endif // DVBSIGNALMONITOR_H
DVBSignalMonitor::m_signalToNoise
SignalMonitorValue m_signalToNoise
Definition: dvbsignalmonitor.h:61
SignalMonitorValue::SetValue
void SetValue(int _value)
Definition: signalmonitorvalue.h:75
DVBSignalMonitor::m_bitErrorRate
SignalMonitorValue m_bitErrorRate
Definition: dvbsignalmonitor.h:62
TimeDateTable
This table gives the current DVB stream time.
Definition: dvbtables.h:375
DVBSignalMonitor::m_uncorrectedBlocks
SignalMonitorValue m_uncorrectedBlocks
Definition: dvbsignalmonitor.h:63
ProgramMapTable
A PMT table maps a program described in the ProgramAssociationTable to various PID's which describe t...
Definition: mpegtables.h:667
DVBSignalMonitor
Definition: dvbsignalmonitor.h:18
SignalMonitor::kDVBSigMon_WaitForSNR
static const uint64_t kDVBSigMon_WaitForSNR
Wait for the Signal to Noise Ratio to rise above a threshold.
Definition: signalmonitor.h:194
DVBSignalMonitor::SetRotorTarget
void SetRotorTarget(float target) override
Sets rotor target pos from 0.0 to 1.0.
Definition: dvbsignalmonitor.cpp:136
DVBSignalMonitor::m_streamHandler
DVBStreamHandler * m_streamHandler
Definition: dvbsignalmonitor.h:67
DVBSignalMonitor::~DVBSignalMonitor
~DVBSignalMonitor() override
Stops signal monitoring and table monitoring threads.
Definition: dvbsignalmonitor.cpp:129
DVBSignalMonitor::GetStatusList
QStringList GetStatusList(void) const override
Returns QStringList containing all signals and their current values.
Definition: dvbsignalmonitor.cpp:173
SignalMonitor::kDVBSigMon_WaitForBER
static const uint64_t kDVBSigMon_WaitForBER
Wait for the Bit Error Rate to fall below a threshold.
Definition: signalmonitor.h:196
DVBSignalMonitor::HandleTDT
void HandleTDT(const TimeDateTable *tdt) override
Definition: dvbsignalmonitor.cpp:209
DVBSignalMonitor::EmitStatus
void EmitStatus(void) override
Emits signals for lock, signal strength, etc.
Definition: dvbsignalmonitor.cpp:364
DVBSignalMonitor::UpdateValues
void UpdateValues(void) override
Fills in frontend stats and emits status Qt signals.
Definition: dvbsignalmonitor.cpp:228
SignalMonitor::kSigMon_WaitForSig
static const uint64_t kSigMon_WaitForSig
Definition: signalmonitor.h:187
DVBSignalMonitor::GetRotorStatus
void GetRotorStatus(bool &was_moving, bool &is_moving) override
Definition: dvbsignalmonitor.cpp:142
DVBSignalMonitor::m_rotorPosition
SignalMonitorValue m_rotorPosition
Definition: dvbsignalmonitor.h:64
DVBSignalMonitor::SetRotorValue
void SetRotorValue(int val) override
Definition: dvbsignalmonitor.h:34
DVBSignalMonitor::DVBSignalMonitor
DVBSignalMonitor(const DVBSignalMonitor &)
SignalMonitor::kDVBSigMon_WaitForUB
static const uint64_t kDVBSigMon_WaitForUB
Wait for uncorrected FEC blocks to fall below a threshold.
Definition: signalmonitor.h:198
DVBSignalMonitor::GetDVBChannel
DVBChannel * GetDVBChannel(void)
Definition: dvbsignalmonitor.cpp:217
DVBSignalMonitor::HandlePMT
void HandlePMT(uint program_num, const ProgramMapTable *pmt) override
Definition: dvbsignalmonitor.cpp:189
DVBSignalMonitor::EmitDVBSignals
void EmitDVBSignals(void)
DVBSignalMonitor::HandleSTT
void HandleSTT(const SystemTimeTable *stt) override
Definition: dvbsignalmonitor.cpp:201
SignalMonitorValue
Definition: signalmonitorvalue.h:15
uint
unsigned int uint
Definition: compat.h:140
DVBStreamHandler
Definition: dvbstreamhandler.h:34
DVBSignalMonitor::DVBSignalMonitor
DVBSignalMonitor(void)
DVBChannel
Provides interface to the tuning hardware when using DVB drivers.
Definition: dvbchannel.h:30
SignalMonitor::m_statusLock
QMutex m_statusLock
Definition: signalmonitor.h:229
DVBSignalMonitorListener
Definition: signalmonitorlistener.h:58
DTVSignalMonitor
This class is intended to detect the presence of needed tables.
Definition: dtvsignalmonitor.h:20
SystemTimeTable
This table contains the GPS time at the time of transmission.
Definition: atsctables.h:679
DVBSignalMonitor::Stop
void Stop(void) override
Stop signal monitoring and table monitoring threads.
Definition: dvbsignalmonitor.cpp:162
DVBSignalMonitor::Q_DECLARE_TR_FUNCTIONS
Q_DECLARE_TR_FUNCTIONS(DVBSignalMonitor)
dtvsignalmonitor.h
DVBSignalMonitor::m_streamHandlerStarted
bool m_streamHandlerStarted
Definition: dvbsignalmonitor.h:66