21#ifndef FREERDP_CHANNEL_AINPUT_SERVER_H
22#define FREERDP_CHANNEL_AINPUT_SERVER_H
24#include <freerdp/channels/wtsvc.h>
25#include <freerdp/channels/ainput.h>
32 typedef enum AINPUT_SERVER_OPEN_RESULT
34 AINPUT_SERVER_OPEN_RESULT_OK = 0,
35 AINPUT_SERVER_OPEN_RESULT_CLOSED = 1,
36 AINPUT_SERVER_OPEN_RESULT_NOTSUPPORTED = 2,
37 AINPUT_SERVER_OPEN_RESULT_ERROR = 3
38 } AINPUT_SERVER_OPEN_RESULT;
42 typedef BOOL (*psAInputChannelIdAssigned)(ainput_server_context* context, UINT32 channelId);
44 typedef UINT (*psAInputServerInitialize)(ainput_server_context* context, BOOL externalThread);
45 typedef UINT (*psAInputServerPoll)(ainput_server_context* context);
46 typedef BOOL (*psAInputServerChannelHandle)(ainput_server_context* context, HANDLE* handle);
48 typedef UINT (*psAInputServerOpen)(ainput_server_context* context);
49 typedef UINT (*psAInputServerClose)(ainput_server_context* context);
50 typedef BOOL (*psAInputServerIsOpen)(ainput_server_context* context);
52 typedef UINT (*psAInputServerOpenResult)(ainput_server_context* context,
53 AINPUT_SERVER_OPEN_RESULT result);
54 typedef UINT (*psAInputServerMouseEvent)(ainput_server_context* context, UINT64 timestamp,
55 UINT64 flags, INT32 x, INT32 y);
68 WINPR_ATTR_NODISCARD psAInputServerOpen
Open;
77 WINPR_ATTR_NODISCARD psAInputServerInitialize
Initialize;
83 WINPR_ATTR_NODISCARD psAInputServerPoll
Poll;
94 WINPR_ATTR_NODISCARD psAInputServerClose
Close;
98 WINPR_ATTR_NODISCARD psAInputServerIsOpen
IsOpen;
107 rdpContext* rdpcontext;
115 FREERDP_API
void ainput_server_context_free(ainput_server_context* context);
117 WINPR_ATTR_MALLOC(ainput_server_context_free, 1)
119 FREERDP_API ainput_server_context* ainput_server_context_new(HANDLE vcm);
WINPR_ATTR_NODISCARD psAInputChannelIdAssigned ChannelIdAssigned
WINPR_ATTR_NODISCARD psAInputServerMouseEvent MouseEvent
WINPR_ATTR_NODISCARD psAInputServerInitialize Initialize
WINPR_ATTR_NODISCARD psAInputServerOpen Open
WINPR_ATTR_NODISCARD psAInputServerIsOpen IsOpen
WINPR_ATTR_NODISCARD psAInputServerChannelHandle ChannelHandle
Poll When externalThread=TRUE call to get a handle to wait for events. Will return FALSE until the ha...
WINPR_ATTR_NODISCARD psAInputServerClose Close
WINPR_ATTR_NODISCARD psAInputServerPoll Poll
Poll When externalThread=TRUE call periodically from your main loop. if externalThread=FALSE do not c...