MythTV  master
v4l2encsignalmonitor.h
Go to the documentation of this file.
1 // -*- Mode: c++ -*-
2 
3 #ifndef V4L2encSignalMonitor_H
4 #define V4L2encSignalMonitor_H
5 
6 #include <QMap>
7 
8 #include "dtvsignalmonitor.h"
9 #include "v4lchannel.h"
10 #include "v4l2util.h"
11 
13 
14 typedef QMap<uint,int> FilterMap;
15 
17 {
18  public:
19  V4L2encSignalMonitor(int db_cardnum, V4LChannel *_channel,
20  bool _release_stream, uint64_t _flags = 0);
21  virtual ~V4L2encSignalMonitor();
22 
23  void Stop(void) override; // SignalMonitor
24 
25  protected:
28 
29  void UpdateValues(void) override; // SignalMonitor
31  { return dynamic_cast<V4LChannel*>(m_channel); }
32 
33  bool HasLock(void);
34  int StableResolution(void);
35 
36  protected:
39  bool m_isTS {false};
40 
41  private:
42  int m_strength {0};
43  int m_stable_time {1500};
44  int m_width {0};
45  int m_height {0};
48  QDateTime m_status_time;
49 };
50 
51 #endif // V4L2encSIGNALMONITOR_H
A QElapsedTimer based timer to replace use of QTime as a timer.
Definition: mythtimer.h:13
unsigned int uint
Definition: compat.h:140
void Stop(void) override
Stop signal monitoring and table monitoring threads.
ChannelBase * m_channel
void UpdateValues(void) override
Fills in frontend stats and emits status Qt signals.
V4L2encStreamHandler * m_stream_handler
Implements tuning for TV cards using the V4L driver API, both versions 1 and 2.
Definition: v4lchannel.h:32
int StableResolution(void)
Wait for a stable signal.
This class is intended to detect the presence of needed tables.
V4LChannel * GetV4L2encChannel(void)
virtual ~V4L2encSignalMonitor()
Stops signal monitoring and table monitoring threads.
QMap< uint, int > FilterMap