MythTV master
ExternalSignalMonitor.h
Go to the documentation of this file.
1// -*- Mode: c++ -*-
2
3#ifndef EXTERNALSIGNALMONITOR_H
4#define EXTERNALSIGNALMONITOR_H
5
6#include <cstdint>
7
8#include <QMap>
9
11
12#include "dtvsignalmonitor.h"
13#include "ExternalChannel.h"
14
16
17using FilterMap = QMap<uint,int>;
18
20{
21 public:
22 ExternalSignalMonitor(int db_cardnum, ExternalChannel *_channel,
23 bool _release_stream, uint64_t _flags = 0);
24 ~ExternalSignalMonitor() override;
25
26 void Stop(void) override; // SignalMonitor
27
28 protected:
31
32 void UpdateValues(void) override; // SignalMonitor
34 { return dynamic_cast<ExternalChannel*>(m_channel); }
35
36 bool HasLock(void);
38 std::chrono::seconds GetLockTimeout(void);
39
40// void AddHandlerListener(MPEGStreamData *data)
41// { m_streamHandler->AddListener(data); }
42
43 protected:
46 std::chrono::milliseconds m_lockTimeout {0ms};
47 QString m_loc;
48};
49
50#endif // EXTERNALSIGNALMONITOR_H
QMap< uint, int > FilterMap
This class is intended to detect the presence of needed tables.
-*- Mode: c++ -*-
ExternalChannel * GetExternalChannel(void)
void UpdateValues(void) override
Fills in frontend stats and emits status Qt signals.
ExternalStreamHandler * m_streamHandler
std::chrono::seconds GetLockTimeout(void)
void Stop(void) override
Stop signal monitoring and table monitoring threads.
~ExternalSignalMonitor() override
Stops signal monitoring and table monitoring threads.
std::chrono::milliseconds m_lockTimeout
ExternalSignalMonitor(const ExternalSignalMonitor &)
ChannelBase * m_channel