FreeRDP
client/rdpei.h
1 
22 #ifndef FREERDP_CHANNEL_RDPEI_CLIENT_RDPEI_H
23 #define FREERDP_CHANNEL_RDPEI_CLIENT_RDPEI_H
24 
25 #include <freerdp/channels/rdpei.h>
26 
27 #ifdef __cplusplus
28 extern "C"
29 {
30 #endif
31 
36  typedef struct s_rdpei_client_context RdpeiClientContext;
37 
38  typedef UINT32 (*pcRdpeiGetVersion)(RdpeiClientContext* context);
39  typedef UINT32 (*pcRdpeiGetFeatures)(RdpeiClientContext* context);
40 
41  typedef UINT (*pcRdpeiAddContact)(RdpeiClientContext* context,
42  const RDPINPUT_CONTACT_DATA* contact);
43 
44  typedef UINT (*pcRdpeiTouchEvent)(RdpeiClientContext* context, INT32 externalId, INT32 x,
45  INT32 y, INT32* contactId);
46  typedef UINT (*pcRdpeiTouchRawEvent)(RdpeiClientContext* context, INT32 externalId, INT32 x,
47  INT32 y, INT32* contactId, UINT32 contactFlags,
48  UINT32 fieldFlags, ...);
49  typedef UINT (*pcRdpeiTouchRawEventVA)(RdpeiClientContext* context, INT32 externalId, INT32 x,
50  INT32 y, INT32* contactId, UINT32 contactFlags,
51  UINT32 fieldFlags, va_list args);
52 
53  typedef UINT (*pcRdpeiAddPen)(RdpeiClientContext* context, INT32 externalId,
54  const RDPINPUT_PEN_CONTACT* contact);
55 
56  typedef UINT (*pcRdpeiPen)(RdpeiClientContext* context, INT32 externalId, UINT32 fieldFlags,
57  INT32 x, INT32 y, ...);
58 
59  typedef UINT (*pcRdpeiPenRawEvent)(RdpeiClientContext* context, INT32 externalId,
60  UINT32 contactFlags, UINT32 fieldFlags, INT32 x, INT32 y,
61  ...);
62  typedef UINT (*pcRdpeiPenRawEventVA)(RdpeiClientContext* context, INT32 externalId,
63  UINT32 contactFlags, UINT32 fieldFlags, INT32 x, INT32 y,
64  va_list args);
65 
66  typedef UINT (*pcRdpeiSuspendTouch)(RdpeiClientContext* context);
67  typedef UINT (*pcRdpeiResumeTouch)(RdpeiClientContext* context);
68 
70  {
71  void* handle;
72  void* custom;
73 
74  pcRdpeiGetVersion GetVersion;
75  pcRdpeiGetFeatures GetFeatures;
76 
77  pcRdpeiAddContact AddContact;
78 
79  pcRdpeiTouchEvent TouchBegin;
80  pcRdpeiTouchEvent TouchUpdate;
81  pcRdpeiTouchEvent TouchEnd;
82 
83  pcRdpeiAddPen AddPen;
84 
85  pcRdpeiPen PenBegin;
86  pcRdpeiPen PenUpdate;
87  pcRdpeiPen PenEnd;
88  pcRdpeiPen PenHoverBegin;
89  pcRdpeiPen PenHoverUpdate;
90  pcRdpeiPen PenHoverCancel;
91 
92  pcRdpeiSuspendTouch SuspendTouch;
93  pcRdpeiResumeTouch ResumeTouch;
94 
95  pcRdpeiTouchEvent TouchCancel;
96  pcRdpeiTouchRawEvent TouchRawEvent;
97  pcRdpeiTouchRawEventVA TouchRawEventVA;
98 
99  pcRdpeiPen PenCancel;
100  pcRdpeiPenRawEvent PenRawEvent;
101  pcRdpeiPenRawEventVA PenRawEventVA;
102 
103  UINT32 clientFeaturesMask;
104  };
105 
106 #ifdef __cplusplus
107 }
108 #endif
109 
110 #endif /* FREERDP_CHANNEL_RDPEI_CLIENT_RDPEI_H */