Rabbit Remote Control 0.1.0-bate14
Loading...
Searching...
No Matches
ConnectLayerQTcpSocket.h
1// Author: Kang Lin <kl222@126.com>
2
3#pragma once
4
5#include <QObject>
6#include <QTcpSocket>
7#include "ConnectLayer.h"
8
9class CConnectLayerQTcpSocket : public CConnectLayer
10{
11 Q_OBJECT
12public:
13 explicit CConnectLayerQTcpSocket(CBackendFreeRDP* connect = nullptr);
14 virtual ~CConnectLayerQTcpSocket();
15
16private Q_SLOTS:
17 void slotError(QAbstractSocket::SocketError e);
18 void slotConnected();
19 void slotReadyRead();
20
21private:
22 virtual int OnInit(rdpContext *context) override;
23 virtual int OnClean() override;
24 virtual int OnLayerRead(void *data, int bytes) override;
25 virtual int OnLayerWrite(const void *data, int bytes) override;
26 virtual BOOL OnLayerWait(BOOL waitWrite, DWORD timeout) override;
27 virtual HANDLE OnLayerGetEvent() override;
28
29private:
30 QTcpSocket m_TcpSocket;
31 HANDLE m_hSocket;
32};