MythTV master
cetonstreamhandler.h
Go to the documentation of this file.
1
8#ifndef CETONSTREAMHANDLER_H
9#define CETONSTREAMHANDLER_H
10
11// Qt headers
12#include <QString>
13#include <QMutex>
14#include <QTime>
15#include <QMap>
16
17// MythTV headers
19#include "iptvstreamhandler.h"
20
22class CetonChannel;
23class QUrlQuery;
24
26{
27 public:
28 static CetonStreamHandler *Get(const QString &devname, int inputid);
29 static void Return(CetonStreamHandler * & ref, int inputid);
30
31 bool IsConnected(void) const;
32 bool IsCableCardInstalled() const { return m_usingCablecard; };
33
34 // Commands
35 bool EnterPowerSavingMode(void);
36 bool TuneFrequency(uint frequency, const QString &modulation);
37 bool TuneProgram(uint program);
38 bool TuneVChannel(const QString &vchannel);
39
40 uint GetProgramNumber(void) const;
41
42 private:
43 explicit CetonStreamHandler(const QString &device, int inputid);
44
45 bool Connect(void);
46
47 bool Open(void);
48 void Close(void);
49
50 bool VerifyTuning(void);
51 void RepeatTuning(void);
52
53 bool TunerOff(void);
54 bool PerformTuneVChannel(const QString &vchannel);
55 void ClearProgramNumber(void);
56
57 QString GetVar(const QString &section, const QString &variable) const;
58 QStringList GetProgramList();
59 bool HttpRequest(const QString &method, const QString &script,
60 const QUrlQuery &params,
61 QString &response, uint &status_code) const;
62
63
64 private:
65 QString m_ipAddress;
68 bool m_usingCablecard {false};
69 bool m_connected {false};
70 bool m_valid {false};
71
76
77 // for implementing Get & Return
78 static QMutex s_handlersLock;
79 static QMap<QString, CetonStreamHandler*> s_handlers;
80 static QMap<QString, uint> s_handlersRefCnt;
81 static QMap<QString, bool> s_infoQueried;
82};
83
84#endif // CETONSTREAMHANDLER_H
CetonStreamHandler(const QString &device, int inputid)
bool IsCableCardInstalled() const
static void Return(CetonStreamHandler *&ref, int inputid)
static QMap< QString, uint > s_handlersRefCnt
static QMap< QString, bool > s_infoQueried
static QMutex s_handlersLock
bool TuneVChannel(const QString &vchannel)
bool IsConnected(void) const
static CetonStreamHandler * Get(const QString &devname, int inputid)
bool TuneFrequency(uint frequency, const QString &modulation)
uint GetProgramNumber(void) const
bool TuneProgram(uint program)
QString GetVar(const QString &section, const QString &variable) const
QStringList GetProgramList()
bool HttpRequest(const QString &method, const QString &script, const QUrlQuery &params, QString &response, uint &status_code) const
static QMap< QString, CetonStreamHandler * > s_handlers
bool PerformTuneVChannel(const QString &vchannel)
unsigned int uint
Definition: freesurround.h:24