diff options
author | Bent Bisballe Nyeng <deva@aasimon.org> | 2022-04-29 17:44:19 +0200 |
---|---|---|
committer | Bent Bisballe Nyeng <deva@aasimon.org> | 2022-05-26 18:41:21 +0200 |
commit | 5e351b7783e5ad135b6918b5f5d92d78723a4a04 (patch) | |
tree | 6af5e4242d424c40425c1d9a80f886c4b3c820d7 /src/client.h | |
parent | 006f0286fd5fbd9655391b3c0ad10a7d000fd907 (diff) |
Add client socket support for 'html-cast' functionality to thin client.
Diffstat (limited to 'src/client.h')
-rw-r--r-- | src/client.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/client.h b/src/client.h new file mode 100644 index 0000000..d590a59 --- /dev/null +++ b/src/client.h @@ -0,0 +1,38 @@ +// -*- c++ -*- +#pragma once + +#include <QtCore> +#include <QtNetwork> + +class QTcpSocket; +class QTimer; + +class Client + : public QObject +{ + Q_OBJECT +public: + Client(QObject *parent = 0); + +public slots: + bool connectToHost(const QString& host); + bool writeData(const QByteArray& data); + void errorOccurred(QAbstractSocket::SocketError socketError); + void connected(); + void disconnected(); + void timeout(); + +signals: + void isConnected(); + void isDisconnected(); + +private: + void retryConnect(); + + QTcpSocket *socket; + QString host; + QTimer *timer; + int retries{10}; + int interval{5}; + int interval_long{120}; +}; |