20 #ifndef FREERDP_UPDATE_SECONDARY_H
21 #define FREERDP_UPDATE_SECONDARY_H
23 #include <freerdp/types.h>
24 #include <freerdp/primary.h>
31 #define GLYPH_FRAGMENT_NOP 0x00
32 #define GLYPH_FRAGMENT_USE 0xFE
33 #define GLYPH_FRAGMENT_ADD 0xFF
35 #define CBR2_HEIGHT_SAME_AS_WIDTH 0x01
36 #define CBR2_PERSISTENT_KEY_PRESENT 0x02
37 #define CBR2_NO_BITMAP_COMPRESSION_HDR 0x08
38 #define CBR2_DO_NOT_CACHE 0x10
40 #define SCREEN_BITMAP_SURFACE 0xFFFF
41 #define BITMAP_CACHE_WAITING_LIST_INDEX 0x7FFF
43 #define CACHED_BRUSH 0x80
54 #define BS_HATCHED 0x02
55 #define BS_PATTERN 0x03
59 #define HS_HORIZONTAL 0x00
60 #define HS_VERTICAL 0x01
61 #define HS_FDIAGONAL 0x02
62 #define HS_BDIAGONAL 0x03
64 #define HS_DIAGCROSS 0x05
67 #define SO_FLAG_DEFAULT_PLACEMENT 0x01
68 #define SO_HORIZONTAL 0x02
69 #define SO_VERTICAL 0x04
70 #define SO_REVERSED 0x08
71 #define SO_ZERO_BEARINGS 0x10
72 #define SO_CHAR_INC_EQUAL_BM_BASE 0x20
73 #define SO_MAXEXT_EQUAL_BM_SIDE 0x40
84 BYTE bitmapComprHdr[8];
85 BYTE* bitmapDataStream;
100 UINT32 cbCompFirstRowSize;
101 UINT32 cbCompMainBodySize;
103 UINT32 cbUncompressedSize;
104 BYTE* bitmapDataStream;
132 UINT32 colorTable[256];
140 WCHAR* unicodeCharacters;
149 WCHAR* unicodeCharacters;
163 typedef BOOL (*pCacheBitmap)(rdpContext* context,
const CACHE_BITMAP_ORDER* cache_bitmap_order);
166 typedef BOOL (*pCacheColorTable)(rdpContext* context,
168 typedef BOOL (*pCacheGlyph)(rdpContext* context,
const CACHE_GLYPH_ORDER* cache_glyph_order);
169 typedef BOOL (*pCacheGlyphV2)(rdpContext* context,
171 typedef BOOL (*pCacheBrush)(rdpContext* context,
const CACHE_BRUSH_ORDER* cache_brush_order);
172 typedef BOOL (*pCacheOrderInfo)(rdpContext* context, INT16 orderLength, UINT16 extraFlags,
173 UINT8 orderType,
const char* orderName);
178 UINT32 paddingA[16 - 1];
180 pCacheBitmap CacheBitmap;
181 pCacheBitmapV2 CacheBitmapV2;
182 pCacheBitmapV3 CacheBitmapV3;
183 pCacheColorTable CacheColorTable;
184 pCacheGlyph CacheGlyph;
185 pCacheGlyphV2 CacheGlyphV2;
186 pCacheBrush CacheBrush;
188 pCacheOrderInfo CacheOrderInfo;
189 UINT32 paddingE[32 - 24];