MythTV  master
hdhrchannel.h
Go to the documentation of this file.
1 
7 #ifndef HDHOMERUNCHANNEL_H
8 #define HDHOMERUNCHANNEL_H
9 
10 // Qt headers
11 #include <QString>
12 
13 // MythTV headers
14 #include "dtvchannel.h"
15 
16 class HDHRChannel;
17 class HDHRStreamHandler;
18 class ProgramMapTable;
19 
20 class HDHRChannel : public DTVChannel
21 {
22  friend class HDHRSignalMonitor;
23  friend class HDHRRecorder;
24 
25  public:
26  HDHRChannel(TVRec *parent, const QString &device);
27  ~HDHRChannel(void);
28 
29  bool Open(void) override; // ChannelBase
30  void Close(void) override; // ChannelBase
31  bool EnterPowerSavingMode(void) override; // DTVChannel
32 
33  // Gets
34  bool IsOpen(void) const override; // ChannelBase
35  QString GetDevice(void) const override // ChannelBase
36  { return m_device_id; }
37  vector<DTVTunerType> GetTunerTypes(void) const override // DTVChannel
38  { return m_tuner_types; }
39  bool IsMaster(void) const override; // DTVChannel
40 
41  // Sets
42  bool SetChannelByString(const QString &channum) override; // DTVChannel
43 
44  using DTVChannel::Tune;
45  // ATSC/DVB scanning/tuning stuff
46  bool Tune(const DTVMultiplex &tuning) override; // DTVChannel
47 
48  // Virtual tuning
49  bool Tune(const QString &freqid, int /*finetune*/) override; // DTVChannel
50 
51  private:
52  QString m_device_id;
54  vector<DTVTunerType> m_tuner_types;
55 };
56 
57 #endif
void Close(void) override
Closes the channel changing hardware to use.
Definition: hdhrchannel.cpp:77
bool IsOpen(void) const override
Reports whether channel is already open.
Definition: hdhrchannel.cpp:93
bool Tune(const DTVMultiplex &tuning) override
This performs the actual frequency tuning and in some cases input switching.
vector< DTVTunerType > GetTunerTypes(void) const override
Returns a vector of supported tuning types.
Definition: hdhrchannel.h:37
bool SetChannelByString(const QString &channum) override
QString GetDevice(void) const override
Returns String representing device, useful for debugging.
Definition: hdhrchannel.h:35
Class providing a generic interface to digital tuning hardware.
Definition: dtvchannel.h:34
This is the coordinating class of the Recorder Subsystem.
Definition: tv_rec.h:150
HDHRStreamHandler * m_stream_handler
Definition: hdhrchannel.h:53
virtual bool Tune(const DTVMultiplex &tuning)=0
This performs the actual frequency tuning and in some cases input switching.
vector< DTVTunerType > m_tuner_types
Definition: hdhrchannel.h:54
bool EnterPowerSavingMode(void) override
Enters power saving mode if the card supports it.
Definition: hdhrchannel.cpp:87
bool IsMaster(void) const override
Returns true if this is the first of a number of multi-rec devs.
Definition: hdhrchannel.cpp:46
~HDHRChannel(void)
Definition: hdhrchannel.cpp:40
A PMT table maps a program described in the ProgramAssociationTable to various PID's which describe t...
Definition: mpegtables.h:656
HDHRChannel(TVRec *parent, const QString &device)
Definition: hdhrchannel.cpp:33
bool Open(void) override
Opens the channel changing hardware for use.
Definition: hdhrchannel.cpp:54
QString m_device_id
Definition: hdhrchannel.h:52