ReactOS  0.4.12-dev-102-g4b7f1e0
orders.h
Go to the documentation of this file.
1 /*
2  rdesktop: A Remote Desktop Protocol client.
3  RDP order processing
4  Copyright (C) Matthew Chapman 1999-2008
5 
6  This program is free software: you can redistribute it and/or modify
7  it under the terms of the GNU General Public License as published by
8  the Free Software Foundation, either version 3 of the License, or
9  (at your option) any later version.
10 
11  This program is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU General Public License for more details.
15 
16  You should have received a copy of the GNU General Public License
17  along with this program. If not, see <http://www.gnu.org/licenses/>.
18 */
19 
20 #define RDP_ORDER_STANDARD 0x01
21 #define RDP_ORDER_SECONDARY 0x02
22 #define RDP_ORDER_BOUNDS 0x04
23 #define RDP_ORDER_CHANGE 0x08
24 #define RDP_ORDER_DELTA 0x10
25 #define RDP_ORDER_LASTBOUNDS 0x20
26 #define RDP_ORDER_SMALL 0x40
27 #define RDP_ORDER_TINY 0x80
28 
30 {
45 };
46 
48 {
56 };
57 
58 typedef struct _DESTBLT_ORDER
59 {
65 
66 }
68 
69 typedef struct _PATBLT_ORDER
70 {
79 
80 }
82 
83 typedef struct _SCREENBLT_ORDER
84 {
92 
93 }
95 
96 typedef struct _LINE_ORDER
97 {
106 
107 }
108 LINE_ORDER;
109 
110 typedef struct _RECT_ORDER
111 {
117 
118 }
119 RECT_ORDER;
120 
121 typedef struct _DESKSAVE_ORDER
122 {
129 
130 }
132 
133 typedef struct _TRIBLT_ORDER
134 {
149 
150 }
152 
153 typedef struct _MEMBLT_ORDER
154 {
165 
166 }
168 
169 #define MAX_DATA 256
170 
171 typedef struct _POLYGON_ORDER
172 {
181 
182 }
184 
185 typedef struct _POLYGON2_ORDER
186 {
197 
198 }
200 
201 typedef struct _POLYLINE_ORDER
202 {
210 
211 }
213 
214 typedef struct _ELLIPSE_ORDER
215 {
223 
224 }
226 
227 typedef struct _ELLIPSE2_ORDER
228 {
238 
239 }
241 
242 #define MAX_TEXT 256
243 
244 typedef struct _TEXT2_ORDER
245 {
265 
266 }
268 
269 typedef struct _RDP_ORDER_STATE
270 {
273 
288 
289 }
291 
293 {
302 
303 }
305 
306 typedef struct _RDP_BMPCACHE_ORDER
307 {
320 
321 }
323 
324 /* RDP_BMPCACHE2_ORDER */
325 #define ID_MASK 0x0007
326 #define MODE_MASK 0x0038
327 #define SQUARE 0x0080
328 #define PERSIST 0x0100
329 #define FLAG_51_UNKNOWN 0x0800
330 
331 #define MODE_SHIFT 3
332 
333 #define LONG_FORMAT 0x80
334 #define BUFSIZE_MASK 0x3FFF /* or 0x1FFF? */
335 
336 #define MAX_GLYPH 32
337 
338 typedef struct _RDP_FONT_GLYPH
339 {
346 
347 }
349 
350 #define MAX_GLYPHS 256
351 
352 typedef struct _RDP_FONTCACHE_ORDER
353 {
357 
358 }
360 
361 typedef struct _RDP_COLCACHE_ORDER
362 {
365 
366 }
sint16 x
Definition: orders.h:203
Definition: types.h:72
uint32 fgcolour
Definition: orders.h:177
struct _RDP_COLCACHE_ORDER RDP_COLCACHE_ORDER
sint16 srcx
Definition: orders.h:162
uint8 datasize
Definition: orders.h:179
struct _DESTBLT_ORDER DESTBLT_ORDER
sint16 bottom
Definition: orders.h:127
uint32 bgcolour
Definition: orders.h:250
struct _ELLIPSE2_ORDER ELLIPSE2_ORDER
sint16 x
Definition: orders.h:60
sint16 y
Definition: orders.h:113
uint8 opcode
Definition: orders.h:233
sint16 top
Definition: orders.h:230
sint16 cy
Definition: orders.h:63
sint16 x
Definition: orders.h:157
sint16 y
Definition: orders.h:174
sint16 clipleft
Definition: orders.h:252
sint16 top
Definition: orders.h:125
sint16 x
Definition: orders.h:137
struct _TRIBLT_ORDER TRIBLT_ORDER
uint32 colour
Definition: orders.h:116
uint8 opcode
Definition: orders.h:104
const WCHAR * text
Definition: package.c:1827
unsigned int uint32
Definition: types.h:32
Definition: types.h:82
uint32 offset
Definition: orders.h:123
struct _MEMBLT_ORDER MEMBLT_ORDER
sint16 cx
Definition: orders.h:87
uint16 cache_idx
Definition: orders.h:164
struct _LINE_ORDER LINE_ORDER
uint32 bgcolour
Definition: orders.h:191
COLOURMAP map
Definition: orders.h:364
struct _RDP_ORDER_STATE RDP_ORDER_STATE
LINE_ORDER line
Definition: orders.h:277
struct _RDP_BMPCACHE_ORDER RDP_BMPCACHE_ORDER
sint16 y
Definition: orders.h:158
#define MAX_DATA
Definition: orders.h:169
static UINT UINT LPWORD glyphs
Definition: font.c:44
uint32 fgcolour
Definition: orders.h:222
struct _PATBLT_ORDER PATBLT_ORDER
uint8 opcode
Definition: orders.h:189
sint16 cx
Definition: orders.h:114
PATBLT_ORDER patblt
Definition: orders.h:275
uint8 fillmode
Definition: orders.h:234
BRUSH brush
Definition: orders.h:260
uint8 opcode
Definition: orders.h:161
sint16 left
Definition: orders.h:229
uint32 fgcolour
Definition: orders.h:251
sint16 x
Definition: orders.h:112
sint16 srcx
Definition: orders.h:90
struct _TEXT2_ORDER TEXT2_ORDER
uint8 flags
Definition: orders.h:247
SCREENBLT_ORDER screenblt
Definition: orders.h:276
sint16 boxleft
Definition: orders.h:256
ELLIPSE_ORDER ellipse
Definition: orders.h:285
sint16 cx
Definition: orders.h:139
TRIBLT_ORDER triblt
Definition: orders.h:281
#define MAX_GLYPH
Definition: orders.h:336
uint32 fgcolour
Definition: orders.h:237
DESKSAVE_ORDER desksave
Definition: orders.h:279
BRUSH brush
Definition: orders.h:78
sint16 endy
Definition: orders.h:102
sint16 right
Definition: orders.h:126
uint32 fgcolour
Definition: orders.h:145
sint16 x
Definition: orders.h:71
uint8 colour_table
Definition: orders.h:135
sint16 y
Definition: orders.h:262
sint16 cy
Definition: orders.h:74
sint16 clipright
Definition: orders.h:254
sint16 left
Definition: orders.h:216
DESTBLT_ORDER destblt
Definition: orders.h:274
POLYLINE_ORDER polyline
Definition: orders.h:284
sint16 x
Definition: orders.h:85
uint32 bgcolour
Definition: orders.h:103
uint16 character
Definition: orders.h:340
struct _POLYGON2_ORDER POLYGON2_ORDER
RDP_SECONDARY_ORDER_TYPE
Definition: orders.h:47
sint16 endx
Definition: orders.h:101
sint16 y
Definition: orders.h:204
struct _SCREENBLT_ORDER SCREENBLT_ORDER
sint16 cx
Definition: orders.h:73
MEMBLT_ORDER memblt
Definition: orders.h:280
sint16 boxbottom
Definition: orders.h:259
uint16 final_size
Definition: orders.h:318
BRUSH brush
Definition: orders.h:193
sint16 startx
Definition: orders.h:99
RECT_ORDER rect
Definition: orders.h:278
POLYGON_ORDER polygon
Definition: orders.h:282
RDP_ORDER_TYPE
Definition: orders.h:29
Definition: brush.hpp:15
sint16 cx
Definition: orders.h:62
BOUNDS bounds
Definition: orders.h:272
sint16 y
Definition: orders.h:86
uint8 order_type
Definition: orders.h:271
unsigned char uint8
Definition: types.h:28
sint16 cy
Definition: orders.h:88
uint8 cache_id
Definition: orders.h:136
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
#define MAX_GLYPHS
Definition: orders.h:350
sint16 top
Definition: orders.h:217
uint32 bgcolour
Definition: orders.h:236
uint8 cache_id
Definition: orders.h:156
sint16 x
Definition: orders.h:187
struct _DESKSAVE_ORDER DESKSAVE_ORDER
uint32 fgcolour
Definition: orders.h:192
uint8 datasize
Definition: orders.h:208
uint16 width
Definition: orders.h:343
signed short sint16
Definition: types.h:31
sint16 left
Definition: orders.h:124
sint16 srcy
Definition: orders.h:91
sint16 srcy
Definition: orders.h:143
uint8 mixmode
Definition: orders.h:249
uint8 fillmode
Definition: orders.h:176
uint16 cache_idx
Definition: orders.h:314
struct _RDP_FONTCACHE_ORDER RDP_FONTCACHE_ORDER
uint16 unknown
Definition: orders.h:148
struct _RECT_ORDER RECT_ORDER
sint16 starty
Definition: orders.h:100
sint16 clipbottom
Definition: orders.h:255
sint16 y
Definition: orders.h:188
uint8 opcode
Definition: orders.h:64
struct _RDP_RAW_BMPCACHE_ORDER RDP_RAW_BMPCACHE_ORDER
uint8 opcode
Definition: orders.h:89
sint16 cy
Definition: orders.h:140
uint32 fgcolour
Definition: orders.h:206
sint16 x
Definition: orders.h:173
#define MAX_TEXT
Definition: orders.h:242
BRUSH brush
Definition: orders.h:146
unsigned short uint16
Definition: types.h:30
uint16 cache_idx
Definition: orders.h:147
uint8 lines
Definition: orders.h:207
BRUSH brush
Definition: orders.h:235
struct _RDP_FONT_GLYPH RDP_FONT_GLYPH
uint32 bgcolour
Definition: orders.h:76
uint16 baseline
Definition: orders.h:342
uint8 opcode
Definition: orders.h:141
ELLIPSE2_ORDER ellipse2
Definition: orders.h:286
sint16 boxright
Definition: orders.h:258
uint16 unknown
Definition: orders.h:341
uint16 mixmode
Definition: orders.h:98
sint16 right
Definition: orders.h:218
struct _POLYLINE_ORDER POLYLINE_ORDER
sint16 srcx
Definition: orders.h:142
struct _POLYGON_ORDER POLYGON_ORDER
POLYGON2_ORDER polygon2
Definition: orders.h:283
uint16 height
Definition: orders.h:344
uint8 opcode
Definition: orders.h:175
uint8 opcode
Definition: orders.h:205
sint16 y
Definition: orders.h:61
sint16 cx
Definition: orders.h:159
sint16 x
Definition: orders.h:261
uint8 opcode
Definition: orders.h:248
uint8 opcode
Definition: orders.h:220
sint16 y
Definition: orders.h:138
sint16 bottom
Definition: orders.h:232
sint16 right
Definition: orders.h:231
uint8 npoints
Definition: orders.h:194
sint16 srcy
Definition: orders.h:163
sint16 boxtop
Definition: orders.h:257
sint16 cy
Definition: orders.h:115
uint8 fillmode
Definition: orders.h:190
struct _ELLIPSE_ORDER ELLIPSE_ORDER
sint16 cliptop
Definition: orders.h:253
uint8 action
Definition: orders.h:128
uint8 font
Definition: orders.h:246
TEXT2_ORDER text2
Definition: orders.h:287
uint32 bgcolour
Definition: orders.h:144
uint8 length
Definition: orders.h:263
uint8 colour_table
Definition: orders.h:155
uint8 fillmode
Definition: orders.h:221
uint32 fgcolour
Definition: orders.h:77
uint8 npoints
Definition: orders.h:178
sint16 bottom
Definition: orders.h:219
PEN pen
Definition: orders.h:105
sint16 y
Definition: orders.h:72
uint8 datasize
Definition: orders.h:195
uint8 opcode
Definition: orders.h:75
sint16 cy
Definition: orders.h:160