FreeRDP
channels/disp.h
1 
20 #ifndef FREERDP_CHANNEL_DISP_H
21 #define FREERDP_CHANNEL_DISP_H
22 
23 #include <freerdp/api.h>
24 #include <freerdp/types.h>
25 
26 #define DISPLAY_CONTROL_PDU_TYPE_CAPS 0x00000005
27 #define DISPLAY_CONTROL_PDU_TYPE_MONITOR_LAYOUT 0x00000002
28 #define DISPLAY_CONTROL_MONITOR_LAYOUT_SIZE 40
29 
30 #define DISP_CHANNEL_NAME "disp"
31 
32 #define DISP_DVC_CHANNEL_NAME "Microsoft::Windows::RDS::DisplayControl"
33 #define ORIENTATION_LANDSCAPE 0
34 #define ORIENTATION_PORTRAIT 90
35 #define ORIENTATION_LANDSCAPE_FLIPPED 180
36 #define ORIENTATION_PORTRAIT_FLIPPED 270
37 
38 #define DISPLAY_CONTROL_MONITOR_PRIMARY 0x00000001
39 #define DISPLAY_CONTROL_HEADER_LENGTH 0x00000008
40 
41 #define DISPLAY_CONTROL_MIN_MONITOR_WIDTH 200
42 #define DISPLAY_CONTROL_MAX_MONITOR_WIDTH 8192
43 
44 #define DISPLAY_CONTROL_MIN_MONITOR_HEIGHT 200
45 #define DISPLAY_CONTROL_MAX_MONITOR_HEIGHT 8192
46 
47 #define DISPLAY_CONTROL_MIN_PHYSICAL_MONITOR_WIDTH 10
48 #define DISPLAY_CONTROL_MAX_PHYSICAL_MONITOR_WIDTH 10000
49 
50 #define DISPLAY_CONTROL_MIN_PHYSICAL_MONITOR_HEIGHT 10
51 #define DISPLAY_CONTROL_MAX_PHYSICAL_MONITOR_HEIGHT 10000
52 
53 #ifdef __cplusplus
54 extern "C"
55 {
56 #endif
57 
58  typedef struct
59  {
60  UINT32 type;
61  UINT32 length;
63 
64  typedef struct
65  {
66  UINT32 Flags;
67  INT32 Left;
68  INT32 Top;
69  UINT32 Width;
70  UINT32 Height;
71  UINT32 PhysicalWidth;
72  UINT32 PhysicalHeight;
73  UINT32 Orientation;
74  UINT32 DesktopScaleFactor;
75  UINT32 DeviceScaleFactor;
77 
78  typedef struct
79  {
80  UINT32 MonitorLayoutSize;
81  UINT32 NumMonitors;
84 
85 #ifdef __cplusplus
86 }
87 #endif
88 
89 #endif /* FREERDP_CHANNEL_DISP_H */