玉兔远程控制
0.1.0-bate11
Toggle main menu visibility
载入中...
搜索中...
未找到
Plugins
FreeRDP
Client
ConnectLayer.h
1
// Author: Kang Lin <kl222@126.com>
2
3
#ifndef CONNECTLAYER_H
4
#define CONNECTLAYER_H
5
6
#pragma once
7
8
#include <QObject>
9
10
#include "BackendFreeRDP.h"
11
17
class
CConnectLayer :
public
QObject
18
{
19
Q_OBJECT
20
public
:
21
explicit
CConnectLayer(
CBackendFreeRDP
* pOperate);
22
virtual
~CConnectLayer();
23
24
int
Initialize(rdpContext* context);
25
int
Clean();
26
27
private
:
28
virtual
int
OnInit(rdpContext* context) = 0;
29
virtual
int
OnClean() = 0;
30
virtual
int
OnLayerRead(
void
* data,
int
bytes) = 0;
31
virtual
int
OnLayerWrite(
const
void
* data,
int
bytes) = 0;
32
virtual
BOOL OnLayerWait(BOOL waitWrite, DWORD timeout) = 0;
33
virtual
HANDLE OnLayerGetEvent() = 0;
34
35
static
rdpTransportLayer* cb_transport_connect_layer(
36
rdpTransport* transport,
37
const
char
* hostname,
int
port, DWORD timeout);
38
virtual
rdpTransportLayer* OnTransportConnectLayer(rdpContext *context);
39
static
int
cbLayerRead(
void
* userContext,
void
* data,
int
bytes);
40
static
int
cbLayerWrite(
void
* userContext,
const
void
* data,
int
bytes);
41
static
BOOL cbLayerClose(
void
* userContext);
42
virtual
BOOL OnLayerClose();
43
static
BOOL cbLayerWait(
void
* userContext, BOOL waitWrite, DWORD timeout);
44
static
HANDLE cbLayerGetEvent(
void
* userContext);
45
46
protected
:
47
CBackendFreeRDP
* m_pOperate;
48
CParameterFreeRDP
* m_pParameter;
49
50
private
:
51
struct
LayerUserData
52
{
53
CConnectLayer* pThis;
54
};
55
};
56
57
#endif
// CONNECTLAYER_H
CBackendFreeRDP
定义
BackendFreeRDP.h:26
CParameterFreeRDP
[Declare CParameterFreeRDP]
定义
ParameterFreeRDP.h:12
CConnectLayer::LayerUserData
定义
ConnectLayer.h:52
作者:康林 (kl222@126.com)
版权所有(c) 康林工作室 保留所有权力