22 #ifndef FREERDP_CHANNEL_RDPEI_H
23 #define FREERDP_CHANNEL_RDPEI_H
25 #include <winpr/wtypes.h>
32 #define RDPINPUT_HEADER_LENGTH 6
38 #define RDPEI_CHANNEL_NAME "rdpei"
39 #define RDPEI_DVC_CHANNEL_NAME "Microsoft::Windows::RDS::Input"
44 RDPINPUT_PROTOCOL_V10 = 0x00010000,
45 RDPINPUT_PROTOCOL_V101 = 0x00010001,
46 RDPINPUT_PROTOCOL_V200 = 0x00020000,
47 RDPINPUT_PROTOCOL_V300 = 0x00030000
51 #define SC_READY_MULTIPEN_INJECTION_SUPPORTED 0x0001
54 #define CS_READY_FLAGS_SHOW_TOUCH_VISUALS 0x00000001
55 #define CS_READY_FLAGS_DISABLE_TIMESTAMP_INJECTION 0x00000002
56 #define CS_READY_FLAGS_ENABLE_MULTIPEN_INJECTION 0x00000004
59 #define CONTACT_DATA_CONTACTRECT_PRESENT 0x0001
60 #define CONTACT_DATA_ORIENTATION_PRESENT 0x0002
61 #define CONTACT_DATA_PRESSURE_PRESENT 0x0004
65 RDPINPUT_PEN_CONTACT_PENFLAGS_PRESENT = 0x0001,
66 RDPINPUT_PEN_CONTACT_PRESSURE_PRESENT = 0x0002,
67 RDPINPUT_PEN_CONTACT_ROTATION_PRESENT = 0x0004,
68 RDPINPUT_PEN_CONTACT_TILTX_PRESENT = 0x0008,
69 RDPINPUT_PEN_CONTACT_TILTY_PRESENT = 0x0010
70 } RDPINPUT_PEN_FIELDS_PRESENT;
88 RDPINPUT_CONTACT_FLAG_DOWN = 0x0001,
89 RDPINPUT_CONTACT_FLAG_UPDATE = 0x0002,
90 RDPINPUT_CONTACT_FLAG_UP = 0x0004,
91 RDPINPUT_CONTACT_FLAG_INRANGE = 0x0008,
92 RDPINPUT_CONTACT_FLAG_INCONTACT = 0x0010,
93 RDPINPUT_CONTACT_FLAG_CANCELED = 0x0020
94 } RDPINPUT_CONTACT_FLAGS;
98 RDPINPUT_PEN_FLAG_BARREL_PRESSED = 0x0001,
99 RDPINPUT_PEN_FLAG_ERASER_PRESSED = 0x0002,
100 RDPINPUT_PEN_FLAG_INVERTED = 0x0004
101 } RDPINPUT_PEN_FLAGS;
107 UINT16 fieldsPresent;
111 INT16 contactRectLeft;
112 INT16 contactRectTop;
113 INT16 contactRectRight;
114 INT16 contactRectBottom;
138 UINT16 fieldsPresent;