1 /** 2 * FreeRDP: A Remote Desktop Protocol Implementation 3 * Asynchronous Message Interface 4 * 5 * Copyright 2012 Marc-Andre Moreau <marcandre.moreau@gmail.com> 6 * 7 * Licensed under the Apache License, Version 2.0 (the "License"); 8 * you may not use this file except in compliance with the License. 9 * You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, software 14 * distributed under the License is distributed on an "AS IS" BASIS, 15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 * See the License for the specific language governing permissions and 17 * limitations under the License. 18 */ 19 20 #ifndef FREERDP_CORE_MESSAGE_H 21 #define FREERDP_CORE_MESSAGE_H 22 23 #define GetMessageType(_id) (_id & 0xFF) 24 #define GetMessageClass(_id) ((_id >> 16) & 0xFF) 25 26 #define GetMessageId(_class, _type) ((_class << 16) | _type) 27 28 #define MakeMessageId(_class, _type) (((_class##_Class) << 16) | (_class##_##_type)) 29 30 /** 31 * Update Message Queue 32 */ 33 34 #define FREERDP_UPDATE_MESSAGE_QUEUE 1 35 36 #define Update_Base 0 37 38 /* Update */ 39 40 #define Update_Class (Update_Base + 1) 41 42 #define Update_BeginPaint 1 43 #define Update_EndPaint 2 44 #define Update_SetBounds 3 45 #define Update_Synchronize 4 46 #define Update_DesktopResize 5 47 #define Update_BitmapUpdate 6 48 #define Update_Palette 7 49 #define Update_PlaySound 8 50 #define Update_RefreshRect 9 51 #define Update_SuppressOutput 10 52 #define Update_SurfaceCommand 11 53 #define Update_SurfaceBits 12 54 #define Update_SurfaceFrameMarker 13 55 #define Update_SurfaceFrameAcknowledge 14 56 #define Update_SetKeyboardIndicators 15 57 #define Update_SetKeyboardImeStatus 16 58 59 #define FREERDP_UPDATE_BEGIN_PAINT MakeMessageId(Update, BeginPaint) 60 #define FREERDP_UPDATE_ END_PAINT MakeMessageId(Update, EndPaint) 61 #define FREERDP_UPDATE_SET_BOUNDS MakeMessageId(Update, SetBounds) 62 #define FREERDP_UPDATE_SYNCHRONIZE MakeMessageId(Update, Synchronize) 63 #define FREERDP_UPDATE_DESKTOP_RESIZE MakeMessageId(Update, DesktopResize) 64 #define FREERDP_UPDATE_BITMAP_UPDATE MakeMessageId(Update, BitmapUpdate) 65 #define FREERDP_UPDATE_PALETTE MakeMessageId(Update, Palette) 66 #define FREERDP_UPDATE_PLAY_SOUND MakeMessageId(Update, PlaySound) 67 #define FREERDP_UPDATE_REFRESH_RECT MakeMessageId(Update, RefreshRect) 68 #define FREERDP_UPDATE_SUPPRESS_OUTPUT MakeMessageId(Update, SuppressOutput) 69 #define FREERDP_UPDATE_SURFACE_COMMAND MakeMessageId(Update, SurfaceCommand) 70 #define FREERDP_UPDATE_SURFACE_BITS MakeMessageId(Update, SurfaceBits) 71 #define FREERDP_UPDATE_SURFACE_FRAME_MARKER MakeMessageId(Update, SurfaceFrameMarker) 72 #define FREERDP_UPDATE_SURFACE_FRAME_ACKNOWLEDGE MakeMessageId(Update, SurfaceFrameAcknowledge) 73 #define FREERDP_UPDATE_SET_KEYBOARD_INDICATORS MakeMessageId(Update, SetKeyboardIndicators) 74 75 /* Primary Update */ 76 77 #define PrimaryUpdate_Class (Update_Base + 2) 78 79 #define PrimaryUpdate_DstBlt 1 80 #define PrimaryUpdate_PatBlt 2 81 #define PrimaryUpdate_ScrBlt 3 82 #define PrimaryUpdate_OpaqueRect 4 83 #define PrimaryUpdate_DrawNineGrid 5 84 #define PrimaryUpdate_MultiDstBlt 6 85 #define PrimaryUpdate_MultiPatBlt 7 86 #define PrimaryUpdate_MultiScrBlt 8 87 #define PrimaryUpdate_MultiOpaqueRect 9 88 #define PrimaryUpdate_MultiDrawNineGrid 10 89 #define PrimaryUpdate_LineTo 11 90 #define PrimaryUpdate_Polyline 12 91 #define PrimaryUpdate_MemBlt 13 92 #define PrimaryUpdate_Mem3Blt 14 93 #define PrimaryUpdate_SaveBitmap 15 94 #define PrimaryUpdate_GlyphIndex 16 95 #define PrimaryUpdate_FastIndex 17 96 #define PrimaryUpdate_FastGlyph 18 97 #define PrimaryUpdate_PolygonSC 19 98 #define PrimaryUpdate_PolygonCB 20 99 #define PrimaryUpdate_EllipseSC 21 100 #define PrimaryUpdate_EllipseCB 22 101 102 #define FREERDP_PRIMARY_UPDATE_DSTBLT MakeMessageId(PrimaryUpdate, DstBlt) 103 #define FREERDP_PRIMARY_UPDATE_PATBLT MakeMessageId(PrimaryUpdate, PatBlt) 104 #define FREERDP_PRIMARY_UPDATE_SCRBLT MakeMessageId(PrimaryUpdate, ScrBlt) 105 #define FREERDP_PRIMARY_UPDATE_OPAQUE_RECT MakeMessageId(PrimaryUpdate, OpaqueRect) 106 #define FREERDP_PRIMARY_UPDATE_DRAW_NINE_GRID MakeMessageId(PrimaryUpdate, DrawNineGrid) 107 #define FREERDP_PRIMARY_UPDATE_MULTI_DSTBLT MakeMessageId(PrimaryUpdate, MultiDstBlt) 108 #define FREERDP_PRIMARY_UPDATE_MULTI_PATBLT MakeMessageId(PrimaryUpdate, MultiPatBlt) 109 #define FREERDP_PRIMARY_UPDATE_MULTI_SCRBLT MakeMessageId(PrimaryUpdate, MultiScrBlt) 110 #define FREERDP_PRIMARY_UPDATE_MULTI_OPAQUE_RECT MakeMessageId(PrimaryUpdate, MultiOpaqueRect) 111 #define FREERDP_PRIMARY_UPDATE_MULTI_DRAW_NINE_GRID MakeMessageId(PrimaryUpdate, MultiDrawNineGrid) 112 #define FREERDP_PRIMARY_UPDATE_LINE_TO MakeMessageId(PrimaryUpdate, LineTo) 113 #define FREERDP_PRIMARY_UPDATE_POLYLINE MakeMessageId(PrimaryUpdate, Polyline) 114 #define FREERDP_PRIMARY_UPDATE_MEMBLT MakeMessageId(PrimaryUpdate, MemBlt) 115 #define FREERDP_PRIMARY_UPDATE_MEM3BLT MakeMessageId(PrimaryUpdate, Mem3Blt) 116 #define FREERDP_PRIMARY_UPDATE_SAVE_BITMAP MakeMessageId(PrimaryUpdate, SaveBitmap) 117 #define FREERDP_PRIMARY_UPDATE_GLYPH_INDEX MakeMessageId(PrimaryUpdate, GlyphIndex) 118 #define FREERDP_PRIMARY_UPDATE_FAST_INDEX MakeMessageId(PrimaryUpdate, FastIndex) 119 #define FREERDP_PRIMARY_UPDATE_FAST_GLYPH MakeMessageId(PrimaryUpdate, FastGlyph) 120 #define FREERDP_PRIMARY_UPDATE_POLYGON_SC MakeMessageId(PrimaryUpdate, PolygonSC) 121 #define FREERDP_PRIMARY_UPDATE_POLYGON_CB MakeMessageId(PrimaryUpdate, PolygonCB) 122 #define FREERDP_PRIMARY_UPDATE_ELLIPSE_SC MakeMessageId(PrimaryUpdate, EllipseSC) 123 #define FREERDP_PRIMARY_UPDATE_ELLIPSE_CB MakeMessageId(PrimaryUpdate, EllipseCB) 124 125 /* Secondary Update */ 126 127 #define SecondaryUpdate_Class (Update_Base + 3) 128 129 #define SecondaryUpdate_CacheBitmap 1 130 #define SecondaryUpdate_CacheBitmapV2 2 131 #define SecondaryUpdate_CacheBitmapV3 3 132 #define SecondaryUpdate_CacheColorTable 4 133 #define SecondaryUpdate_CacheGlyph 5 134 #define SecondaryUpdate_CacheGlyphV2 6 135 #define SecondaryUpdate_CacheBrush 7 136 137 #define FREERDP_SECONDARY_UPDATE_CACHE_BITMAP MakeMessageId(SecondaryUpdate, CacheBitmap) 138 #define FREERDP_SECONDARY_UPDATE_CACHE_BITMAP_V2 MakeMessageId(SecondaryUpdate, CacheBitmapV2) 139 #define FREERDP_SECONDARY_UPDATE_CACHE_BITMAP_V3 MakeMessageId(SecondaryUpdate, CacheBitmapV3) 140 #define FREERDP_SECONDARY_UPDATE_CACHE_COLOR_TABLE MakeMessageId(SecondaryUpdate, CacheColorTable) 141 #define FREERDP_SECONDARY_UPDATE_CACHE_GLYPH MakeMessageId(SecondaryUpdate, CacheGlyph) 142 #define FREERDP_SECONDARY_UPDATE_CACHE_GLYPH_V2 MakeMessageId(SecondaryUpdate, CacheGlyphV2) 143 #define FREERDP_SECONDARY_UPDATE_CACHE_BRUSH MakeMessageId(SecondaryUpdate, CacheBrush) 144 145 /* Alternate Secondary Update */ 146 147 #define AltSecUpdate_Class (Update_Base + 4) 148 149 #define AltSecUpdate_CreateOffscreenBitmap 1 150 #define AltSecUpdate_SwitchSurface 2 151 #define AltSecUpdate_CreateNineGridBitmap 3 152 #define AltSecUpdate_FrameMarker 4 153 #define AltSecUpdate_StreamBitmapFirst 5 154 #define AltSecUpdate_StreamBitmapNext 6 155 #define AltSecUpdate_DrawGdiPlusFirst 7 156 #define AltSecUpdate_DrawGdiPlusNext 8 157 #define AltSecUpdate_DrawGdiPlusEnd 9 158 #define AltSecUpdate_DrawGdiPlusCacheFirst 10 159 #define AltSecUpdate_DrawGdiPlusCacheNext 11 160 #define AltSecUpdate_DrawGdiPlusCacheEnd 12 161 162 #define FREERDP_ALTSEC_UPDATE_CREATE_OFFSCREEN_BITMAP \ 163 MakeMessageId(AltSecUpdate, CreateOffscreenBitmap) 164 #define FREERDP_ALTSEC_UPDATE_SWITCH_SURFACE MakeMessageId(AltSecUpdate, SwitchSurface) 165 #define FREERDP_ALTSEC_UPDATE_CREATE_NINE_GRID_BITMAP \ 166 MakeMessageId(AltSecUpdate, CreateNineGridBitmap) 167 #define FREERDP_ALTSEC_UPDATE_FRAME_MARKER MakeMessageId(AltSecUpdate, FrameMarker) 168 #define FREERDP_ALTSEC_UPDATE_STREAM_BITMAP_FIRST MakeMessageId(AltSecUpdate, StreamBitmapFirst) 169 #define FREERDP_ALTSEC_UPDATE_STREAM_BITMAP_NEXT MakeMessageId(AltSecUpdate, StreamBitmapNext) 170 #define FREERDP_ALTSEC_UPDATE_DRAW_GDI_PLUS_FIRST MakeMessageId(AltSecUpdate, DrawGdiPlusFirst) 171 #define FREERDP_ALTSEC_UPDATE_DRAW_GDI_PLUS_NEXT MakeMessageId(AltSecUpdate, DrawGdiPlusNext) 172 #define FREERDP_ALTSEC_UPDATE_DRAW_GDI_PLUS_END MakeMessageId(AltSecUpdate, DrawGdiPlusEnd) 173 #define FREERDP_ALTSEC_UPDATE_DRAW_GDI_PLUS_CACHE_FIRST \ 174 MakeMessageId(AltSecUpdate, DrawGdiPlusCacheFirst) 175 #define FREERDP_ALTSEC_UPDATE_DRAW_GDI_PLUS_CACHE_NEXT \ 176 MakeMessageId(AltSecUpdate, DrawGdiPlusCacheNext) 177 #define FREERDP_ALTSEC_UPDATE_DRAW_GDI_PLUS_CACHE_END \ 178 MakeMessageId(AltSecUpdate, DrawGdiPlusCacheEnd) 179 180 /* Window Update */ 181 182 #define WindowUpdate_Class (Update_Base + 5) 183 184 #define WindowUpdate_WindowCreate 1 185 #define WindowUpdate_WindowUpdate 2 186 #define WindowUpdate_WindowIcon 3 187 #define WindowUpdate_WindowCachedIcon 4 188 #define WindowUpdate_WindowDelete 5 189 #define WindowUpdate_NotifyIconCreate 6 190 #define WindowUpdate_NotifyIconUpdate 7 191 #define WindowUpdate_NotifyIconDelete 8 192 #define WindowUpdate_MonitoredDesktop 9 193 #define WindowUpdate_NonMonitoredDesktop 10 194 195 #define FREERDP_WINDOW_UPDATE_WINDOW_CREATE MakeMessageId(WindowUpdate, WindowCreate) 196 #define FREERDP_WINDOW_UPDATE_WINDOW_UPDATE MakeMessageId(WindowUpdate, WindowUpdate) 197 #define FREERDP_WINDOW_UPDATE_WINDOW_ICON MakeMessageId(WindowUpdate, WindowIcon) 198 #define FREERDP_WINDOW_UPDATE_WINDOW_CACHED_ICON MakeMessageId(WindowUpdate, WindowCachedIcon) 199 #define FREERDP_WINDOW_UPDATE_WINDOW_DELETE MakeMessageId(WindowUpdate, WindowDelete) 200 #define FREERDP_WINDOW_UPDATE_NOTIFY_ICON_CREATE MakeMessageId(WindowUpdate, NotifyIconCreate) 201 #define FREERDP_WINDOW_UPDATE_NOTIFY_ICON_UPDATE MakeMessageId(WindowUpdate, NotifyIconUpdate) 202 #define FREERDP_WINDOW_UPDATE_NOTIFY_ICON_DELETE MakeMessageId(WindowUpdate, NotifyIconDelete) 203 #define FREERDP_WINDOW_UPDATE_MONITORED_DESKTOP MakeMessageId(WindowUpdate, MonitoredDesktop) 204 #define FREERDP_WINDOW_UPDATE_NON_MONITORED_DESKTOP MakeMessageId(WindowUpdate, NonMonitoredDesktop) 205 206 /* Pointer Update */ 207 208 #define PointerUpdate_Class (Update_Base + 6) 209 210 #define PointerUpdate_PointerPosition 1 211 #define PointerUpdate_PointerSystem 2 212 #define PointerUpdate_PointerColor 3 213 #define PointerUpdate_PointerNew 4 214 #define PointerUpdate_PointerCached 5 215 #define PointerUpdate_PointerLarge 6 216 217 #define FREERDP_POINTER_UPDATE_ POINTER_POSITION MakeMessageId(PointerUpdate, PointerPosition) 218 #define FREERDP_POINTER_UPDATE_POINTER_SYSTEM MakeMessageId(PointerUpdate, PointerSystem) 219 #define FREERDP_POINTER_UPDATE_POINTER_COLOR MakeMessageId(PointerUpdate, PointerColor) 220 #define FREERDP_POINTER_UPDATE_POINTER_NEW MakeMessageId(PointerUpdate, PointerNew) 221 #define FREERDP_POINTER_UPDATE_POINTER_CACHED MakeMessageId(PointerUpdate, PointerCached) 222 #define FREERDP_POINTER_UPDATE_POINTER_LARGE MakeMessageId(PointerUpdate, PointerLarge) 223 224 /** 225 * Input Message Queue 226 */ 227 228 #define FREERDP_INPUT_MESSAGE_QUEUE 2 229 230 #define Input_Base 16 231 232 /* Input */ 233 234 #define Input_Class (Input_Base + 1) 235 236 #define Input_SynchronizeEvent 1 237 #define Input_KeyboardEvent 2 238 #define Input_UnicodeKeyboardEvent 3 239 #define Input_MouseEvent 4 240 #define Input_ExtendedMouseEvent 5 241 #define Input_FocusInEvent 6 242 #define Input_KeyboardPauseEvent 7 243 244 #define FREERDP_INPUT_SYNCHRONIZE_EVENT MakeMessageId(Input, SynchronizeEvent) 245 #define FREERDP_INPUT_KEYBOARD_EVENT MakeMessageId(Input, KeyboardEvent) 246 #define FREERDP_INPUT_UNICODE_KEYBOARD_EVENT MakeMessageId(Input, UnicodeKeyboardEvent) 247 #define FREERDP_INPUT_MOUSE_EVENT MakeMessageId(Input, MouseEvent) 248 #define FREERDP_INPUT_EXTENDED_MOUSE_EVENT MakeMessageId(Input, ExtendedMouseEvent) 249 #define FREERDP_INPUT_FOCUS_IN_EVENT MakeMessageId(Input, FocusInEvent) 250 #define FREERDP_INPUT_KEYBOARD_PAUSE_EVENT MakeMessageId(Input, KeyboardPauseEvent) 251 252 /** 253 * Static Channel Message Queues 254 */ 255 256 #define FREERDP_CHANNEL_MESSAGE_QUEUE 3 257 258 #define Channel_Base 20 259 260 /** 261 * Debug Channel 262 */ 263 264 #define DebugChannel_Class (Channel_Base + 1) 265 266 /** 267 * Clipboard Channel 268 */ 269 270 #define CliprdrChannel_Class (Channel_Base + 2) 271 272 #define CliprdrChannel_MonitorReady 1 273 #define CliprdrChannel_FormatList 2 274 #define CliprdrChannel_DataRequest 3 275 #define CliprdrChannel_DataResponse 4 276 #define CliprdrChannel_ClipCaps 5 277 #define CliprdrChannel_FilecontentsRequest 6 278 #define CliprdrChannel_FilecontentsResponse 7 279 #define CliprdrChannel_LockClipdata 8 280 #define CliprdrChannel_UnLockClipdata 9 281 #define CliprdrChannel_TemporaryDirectory 10 282 283 #define FREERDP_CLIPRDR_CHANNEL_MONITOR_READY MakeMessageId(CliprdrChannel, MonitorReady) 284 #define FREERDP_CLIPRDR_CHANNEL_FORMAT_LIST MakeMessageId(CliprdrChannel, FormatList) 285 #define FREERDP_CLIPRDR_CHANNEL_DATA_REQUEST MakeMessageId(CliprdrChannel, DataRequest) 286 #define FREERDP_CLIPRDR_CHANNEL_DATA_RESPONSE MakeMessageId(CliprdrChannel, DataResponse) 287 #define FREERDP_CLIPRDR_CHANNEL_CLIP_CAPS MakeMessageId(CliprdrChannel, ClipCaps) 288 289 /** 290 * Multimedia Redirection Channel 291 */ 292 293 #define TsmfChannel_Class (Channel_Base + 3) 294 295 #define TsmfChannel_VideoFrame 1 296 #define TsmfChannel_Redraw 2 297 298 #define FREERDP_TSMF_CHANNEL_VIDEO_FRAME MakeMessageId(TsmfChannel, VideoFrame) 299 #define FREERDP_TSMF_CHANNEL_REDRAW MakeMessageId(TsmfChannel, Redraw) 300 301 /** 302 * RemoteApp Channel 303 */ 304 305 #define RailChannel_Class (Channel_Base + 4) 306 307 #define RailChannel_ClientExecute 1 308 #define RailChannel_ClientActivate 2 309 #define RailChannel_GetSystemParam 3 310 #define RailChannel_ClientSystemParam 4 311 #define RailChannel_ServerSystemParam 5 312 #define RailChannel_ClientSystemCommand 6 313 #define RailChannel_ClientHandshake 7 314 #define RailChannel_ServerHandshake 8 315 #define RailChannel_ClientNotifyEvent 9 316 #define RailChannel_ClientWindowMove 10 317 #define RailChannel_ServerLocalMoveSize 11 318 #define RailChannel_ServerMinMaxInfo 12 319 #define RailChannel_ClientInformation 13 320 #define RailChannel_ClientSystemMenu 14 321 #define RailChannel_ClientLanguageBarInfo 15 322 #define RailChannel_ServerLanguageBarInfo 16 323 #define RailChannel_ServerExecuteResult 17 324 #define RailChannel_ClientGetAppIdRequest 18 325 #define RailChannel_ServerGetAppIdResponse 19 326 #define RailChannel_ClientHandshakeEx 20 327 #define RailChannel_ServerHandshakeEx 21 328 329 #define FREERDP_RAIL_CHANNEL_CLIENT_EXECUTE MakeMessageId(RailChannel, ClientExecute) 330 #define FREERDP_RAIL_CHANNEL_CLIENT_ACTIVATE MakeMessageId(RailChannel, ClientActivate) 331 #define FREERDP_RAIL_CHANNEL_GET_SYSTEM_PARAM MakeMessageId(RailChannel, GetSystemParam) 332 #define FREERDP_RAIL_CHANNEL_CLIENT_SYSTEM_PARAM MakeMessageId(RailChannel, ClientSystemParam) 333 #define FREERDP_RAIL_CHANNEL_SERVER_SYSTEM_PARAM MakeMessageId(RailChannel, ClientSystemParam) 334 #define FREERDP_RAIL_CHANNEL_CLIENT_SYSTEM_COMMAND MakeMessageId(RailChannel, ClientSystemCommand) 335 #define FREERDP_RAIL_CHANNEL_CLIENT_HANDSHAKE MakeMessageId(RailChannel, ClientHandshake) 336 #define FREERDP_RAIL_CHANNEL_SERVER_HANDSHAKE MakeMessageId(RailChannel, ServerHandshake) 337 #define FREERDP_RAIL_CHANNEL_CLIENT_NOTIFY_EVENT MakeMessageId(RailChannel, ClientNotifyEvent) 338 #define FREERDP_RAIL_CHANNEL_CLIENT_WINDOW_MOVE MakeMessageId(RailChannel, ClientWindowMove) 339 #define FREERDP_RAIL_CHANNEL_SERVER_LOCAL_MOVE_SIZE MakeMessageId(RailChannel, ServerLocalMoveSize) 340 #define FREERDP_RAIL_CHANNEL_SERVER_MIN_MAX_INFO MakeMessageId(RailChannel, ServerMinMaxInfo) 341 #define FREERDP_RAIL_CHANNEL_CLIENT_INFORMATION MakeMessageId(RailChannel, ClientInformation) 342 #define FREERDP_RAIL_CHANNEL_CLIENT_SYSTEM_MENU MakeMessageId(RailChannel, ClientSystemMenu) 343 #define FREERDP_RAIL_CHANNEL_CLIENT_LANGUAGE_BAR_INFO \ 344 MakeMessageId(RailChannel, ClientLanguageBarInfo) 345 #define FREERDP_RAIL_CHANNEL_SERVER_LANGUAGE_BAR_INFO \ 346 MakeMessageId(RailChannel, ServerLanguageBarInfo) 347 #define FREERDP_RAIL_CHANNEL_SERVER_EXECUTE_RESULT MakeMessageId(RailChannel, ServerExecuteResult) 348 #define FREERDP_RAIL_CHANNEL_CLIENT_GET_APP_ID_REQUEST \ 349 MakeMessageId(RailChannel, ClientGetAppIdRequest) 350 #define FREERDP_RAIL_CHANNEL_SERVER_GET_APP_ID_RESPONSE \ 351 MakeMessageId(RailChannel, ServerGetAppIdResponse) 352 #define FREERDP_RAIL_CHANNEL_CLIENT_HANDSHAKE_EX MakeMessageId(RailChannel, ClientHandshakeEx) 353 #define FREERDP_RAIL_CHANNEL_SERVER_HANDSHAKE_EX MakeMessageId(RailChannel, ServerHandshakeEx) 354 355 /** 356 * MultiTouch Input Channel Extension (MS-RDPEDI) 357 */ 358 359 #define RdpeiChannel_Class (Channel_Base + 5) 360 361 #define RdpeiChannel_ServerReady 1 362 #define RdpeiChannel_ClientReady 2 363 #define RdpeiChannel_TouchEvent 3 364 #define RdpeiChannel_SuspendTouch 4 365 #define RdpeiChannel_ResumeTouch 5 366 #define RdpeiChannel_DismissHoveringContact 6 367 368 #define FREERDP_RDPEI_CHANNEL_SERVER_READY MakeMessageId(RdpeiChannel, ServerReady) 369 #define FREERDP_RDPEI_CHANNEL_CLIENT_READY MakeMessageId(RdpeiChannel, ClientReady) 370 #define FREERDP_RDPEI_CHANNEL_TOUCH_EVENT MakeMessageId(RdpeiChannel, TouchEvent) 371 #define FREERDP_RDPEI_CHANNEL_SUSPEND_TOUCH MakeMessageId(RdpeiChannel, SuspendTouch) 372 #define FREERDP_RDPEI_CHANNEL_RESUME_TOUCH MakeMessageId(RdpeiChannel, ResumeTouch) 373 #define FREERDP_RDPEI_CHANNEL_DISMISS_HOVERING_CONTACT \ 374 MakeMessageId(RdpeiChannel, DismissHoveringContact) 375 376 #endif /* FREERDP_CORE_MESSAGE_H */ 377