23#ifndef FREERDP_CHANNEL_RDPEI_SERVER_H
24#define FREERDP_CHANNEL_RDPEI_SERVER_H
26#include <freerdp/channels/wtsvc.h>
27#include <freerdp/channels/rdpei.h>
35 typedef struct s_rdpei_server_private RdpeiServerPrivate;
37 typedef UINT (*psRdpeiServerOpen)(RdpeiServerContext* context);
38 typedef UINT (*psRdpeiServerClose)(RdpeiServerContext* context);
44 RdpeiServerPrivate* priv;
47 UINT16 maxTouchPoints;
51 WINPR_ATTR_NODISCARD UINT (*
onClientReady)(RdpeiServerContext* context);
52 WINPR_ATTR_NODISCARD UINT (*onTouchEvent)(RdpeiServerContext* context,
54 WINPR_ATTR_NODISCARD UINT (*onPenEvent)(RdpeiServerContext* context,
56 WINPR_ATTR_NODISCARD UINT (*onTouchReleased)(RdpeiServerContext* context, BYTE contactId);
72 WINPR_ATTR_NODISCARD psRdpeiServerOpen
Open;
78 WINPR_ATTR_NODISCARD psRdpeiServerClose
Close;
81 FREERDP_API
void rdpei_server_context_free(RdpeiServerContext* context);
83 WINPR_ATTR_MALLOC(rdpei_server_context_free, 1)
85 FREERDP_API RdpeiServerContext* rdpei_server_context_new(HANDLE vcm);
87 FREERDP_API
void rdpei_server_context_reset(RdpeiServerContext* context);
90 FREERDP_API HANDLE rdpei_server_get_event_handle(RdpeiServerContext* context);
93 FREERDP_API UINT rdpei_server_init(RdpeiServerContext* context);
96 FREERDP_API UINT rdpei_server_handle_messages(RdpeiServerContext* context);
99 FREERDP_API UINT rdpei_server_send_sc_ready(RdpeiServerContext* context, UINT32 version,
103 FREERDP_API UINT rdpei_server_suspend(RdpeiServerContext* context);
106 FREERDP_API UINT rdpei_server_resume(RdpeiServerContext* context);
WINPR_ATTR_NODISCARD psRdpeiServerOpen Open
WINPR_ATTR_NODISCARD BOOL(* onChannelIdAssigned)(RdpeiServerContext *context, UINT32 channelId)
WINPR_ATTR_NODISCARD psRdpeiServerClose Close
WINPR_ATTR_NODISCARD UINT(* onClientReady)(RdpeiServerContext *context)