#pragma once #include #include #include class WebServer; class QWebSocket; class Client : public QObject { Q_OBJECT public: explicit Client(WebServer &server, std::unique_ptr &&socket, const QString &serial, const std::set> &serialClients); ~Client() override; signals: void sendTextMessageToOthers(const QString &text); public slots: void sendTextMessage(const QString &text); private slots: void textMessageReceived(const QString &text); void socketDestroyed(); void socketDisconnected(); private: WebServer &m_server; std::unique_ptr m_socket; const QString m_serial; };