ReactOS 0.4.15-dev-5664-g3bf4ef6
types.h
Go to the documentation of this file.
1/*
2 rdesktop: A Remote Desktop Protocol client.
3 Common data types
4 Copyright (C) Matthew Chapman 1999-2005
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 2 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 along
17 with this program; if not, write to the Free Software Foundation, Inc.,
18 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
19*/
20
21#if 0
22typedef int BOOL;
23#endif
24
25#ifndef True
26#define True (1)
27#define False (0)
28#endif
29
30typedef unsigned char uint8;
31typedef signed char sint8;
32typedef unsigned short uint16;
33typedef signed short sint16;
34typedef unsigned int uint32;
35typedef signed int sint32;
36
37// TODO: detect Win32, avoid this mess
38#if 0
39typedef void *HBITMAP;
40typedef void *HCURSOR;
41#endif
42typedef void *HGLYPH;
43
44// TODO: nuke, use HPALETTE
45typedef void *HCOLOURMAP;
46
47#if 0
48typedef struct _POINT
49{
50 sint16 x, y;
51}
52POINT;
53#endif
54
55// TODO: nuke, use COLORREF
56typedef struct _COLOURENTRY
57{
58 uint8 red;
60 uint8 blue;
61
62}
64
65// TODO: nuke, use LOGPALETTE
66typedef struct _COLOURMAP
67{
70
71}
73
74// TODO: nuke, use RECT
75typedef struct _BOUNDS
76{
78 sint16 top;
81
82}
84
85// TODO: nuke, use LOGPEN
86typedef struct _PEN
87{
91
92}
94
95typedef struct _BRUSH
96{
100 uint8 pattern[8];
101
102}
104
105typedef struct _FONTGLYPH
106{
112
113}
115
116typedef struct _DATABLOB
117{
118 void *data;
119 int size;
120
121}
123
124typedef struct _key_translation
125{
126 /* For normal scancode translations */
129 /* For sequences. If keysym is nonzero, the fields above are not used. */
130 uint32 seq_keysym; /* Really KeySym */
131 struct _key_translation *next;
132}
134
135typedef struct _VCHANNEL
136{
137 CHANNEL_DEF def;
139 struct stream in;
141}
143
144/* PSTCACHE */
145typedef uint8 HASH_KEY[8];
146
147/* Header for an entry in the persistent bitmap cache file */
148typedef struct _PSTCACHE_CELLHEADER
149{
154}
156
157#define MAX_CBSIZE 256
158
159/* RDPSND */
160#if 0
161typedef struct
162{
163 uint16 wFormatTag;
165 uint32 nSamplesPerSec;
166 uint32 nAvgBytesPerSec;
167 uint16 nBlockAlign;
168 uint16 wBitsPerSample;
169 uint16 cbSize;
172#endif
173typedef struct _RDPCOMP
174{
175 uint32 roff;
177 struct stream ns;
178}
180
181#if 0
182/* RDPDR */
183typedef uint32 NTSTATUS;
184typedef uint32 NTHANDLE;
185
186typedef struct _DEVICE_FNS
187{
188 NTSTATUS(*create) (RDPCLIENT * This, uint32 device, uint32 desired_access, uint32 share_mode,
189 uint32 create_disposition, uint32 flags_and_attributes, char *filename,
190 NTHANDLE * handle);
191 NTSTATUS(*close) (RDPCLIENT * This, NTHANDLE handle);
193 uint32 * result);
195 uint32 * result);
197}
199
200
201typedef struct rdpdr_device_info
202{
204 NTHANDLE handle;
205 char name[8];
206 char *local_path;
207 void *pdevice_data;
208}
210
211typedef struct rdpdr_serial_device_info
212{
213 int dtr;
214 int rts;
219 wait_mask,
225 uint8 chars[6];
226 struct termios *ptermios, *pold_termios;
228}
230
231typedef struct rdpdr_parallel_device_info
232{
233 char *driver, *printer;
236 wait_mask,
242 uint8 *blob;
243}
245
246typedef struct rdpdr_printer_info
247{
249 char *driver, *printer;
251 uint8 *blob;
253}
254PRINTER;
255
256typedef struct notify_data
257{
261 unsigned int num_entries;
262}
263NOTIFY;
264
265#ifndef PATH_MAX
266#define PATH_MAX 256
267#endif
268
269typedef struct fileinfo
270{
272 char path[PATH_MAX];
273 DIR *pdir;
274 struct dirent *pdirent;
275 char pattern[PATH_MAX];
279}
281#endif
282
283typedef BOOL(*str_handle_lines_t) (RDPCLIENT * This, const char *line, void *data);
#define RDP_MPPC_DICT_SIZE
Definition: constants.h:358
struct stream * STREAM
struct rdpdr_parallel_device_info PARALLEL_DEVICE
signed int sint32
Definition: types.h:33
unsigned short uint16
Definition: types.h:30
struct _VCHANNEL VCHANNEL
unsigned int uint32
Definition: types.h:32
signed char sint8
Definition: types.h:29
struct rdpdr_device_info RDPDR_DEVICE
struct _DATABLOB DATABLOB
struct _FONTGLYPH FONTGLYPH
struct rdpdr_serial_device_info SERIAL_DEVICE
struct _RDPCOMP RDPCOMP
RD_BOOL(* str_handle_lines_t)(const char *line, void *data)
Definition: types.h:296
uint8 HASH_KEY[8]
Definition: types.h:161
signed short sint16
Definition: types.h:31
struct notify_data NOTIFY
struct _BRUSH BRUSH
struct _PEN PEN
struct _key_translation key_translation
struct fileinfo FILEINFO
struct rdpdr_printer_info PRINTER
struct _COLOURMAP COLOURMAP
struct _PSTCACHE_CELLHEADER CELLHEADER
struct _BOUNDS BOUNDS
unsigned char uint8
Definition: types.h:28
struct _DEVICE_FNS DEVICE_FNS
#define PATH_MAX
Definition: types.h:280
struct _COLOURENTRY COLOURENTRY
#define NTSTATUS
Definition: precomp.h:20
__kernel_time_t time_t
Definition: linux.h:252
unsigned int BOOL
Definition: ntddk_ex.h:94
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
GLubyte * pattern
Definition: glext.h:7787
GLuint in
Definition: glext.h:9616
GLuint GLsizei GLsizei * length
Definition: glext.h:6040
GLuint64EXT * result
Definition: glext.h:11304
GLintptr offset
Definition: glext.h:5920
const char * filename
Definition: ioapi.h:137
unsigned short uint16
Definition: types.h:32
void * HCOLOURMAP
Definition: types.h:45
#define MAX_CBSIZE
Definition: types.h:157
uint8 HASH_KEY[8]
Definition: types.h:145
void * HGLYPH
Definition: types.h:42
static HBITMAP
Definition: button.c:44
static HMODULE MODULEINFO DWORD cb
Definition: module.c:33
#define BOOL
Definition: nt_native.h:43
int nChannels
Definition: pcmconverter.c:95
static FILE * out
Definition: regtests2xml.c:44
Definition: dirent.h:40
Definition: types.h:73
sint16 left
Definition: types.h:74
sint16 top
Definition: types.h:75
sint16 right
Definition: types.h:76
sint16 bottom
Definition: types.h:77
Definition: types.h:101
uint8 xorigin
Definition: types.h:102
uint8 yorigin
Definition: types.h:103
uint8 style
Definition: types.h:104
uint8 red
Definition: types.h:57
uint8 blue
Definition: types.h:59
uint8 green
Definition: types.h:58
uint16 ncolours
Definition: types.h:66
COLOURENTRY * colours
Definition: types.h:67
void * data
Definition: types.h:123
int size
Definition: types.h:124
RD_NTSTATUS(* read)(RD_NTHANDLE handle, uint8 *data, uint32 length, uint32 offset, uint32 *result)
Definition: types.h:206
RD_NTSTATUS(* close)(RD_NTHANDLE handle)
Definition: types.h:205
RD_NTSTATUS(* device_control)(RD_NTHANDLE handle, uint32 request, STREAM in, STREAM out)
Definition: types.h:210
RD_NTSTATUS(* create)(uint32 device, uint32 desired_access, uint32 share_mode, uint32 create_disposition, uint32 flags_and_attributes, char *filename, RD_NTHANDLE *handle)
Definition: types.h:202
RD_NTSTATUS(* write)(RD_NTHANDLE handle, uint8 *data, uint32 length, uint32 offset, uint32 *result)
Definition: types.h:208
uint16 width
Definition: types.h:114
sint16 baseline
Definition: types.h:113
uint16 height
Definition: types.h:115
HBITMAP pixmap
Definition: types.h:111
sint16 offset
Definition: types.h:112
Definition: types.h:83
uint8 style
Definition: types.h:84
uint8 width
Definition: types.h:85
uint32 colour
Definition: types.h:86
HASH_KEY key
Definition: types.h:166
uint32 roff
Definition: types.h:190
uint8 hist[RDP_MPPC_DICT_SIZE]
Definition: types.h:191
CHANNEL_DEF def
Definition: types.h:137
uint16 mcs_id
Definition: types.h:152
uint16 modifiers
Definition: types.h:133
uint8 scancode
Definition: types.h:132
uint32 seq_keysym
Definition: types.h:135
struct _key_translation * next
Definition: types.h:136
Definition: devices.h:37
Definition: fatfs.h:198
uint32 info_class
Definition: types.h:292
uint32 device_id
Definition: types.h:285
RD_BOOL delete_on_close
Definition: types.h:290
struct dirent * pdirent
Definition: types.h:288
NOTIFY notify
Definition: types.h:291
uint32 accessmask
Definition: types.h:285
uint32 flags_and_attributes
Definition: types.h:285
DIR * pdir
Definition: types.h:287
Definition: parser.c:49
Definition: name.c:39
time_t total_time
Definition: types.h:274
time_t status_time
Definition: types.h:273
unsigned int num_entries
Definition: types.h:275
time_t modify_time
Definition: types.h:272
Definition: mxnamespace.c:45
uint32 device_type
Definition: types.h:217
char * local_path
Definition: types.h:220
void * pdevice_data
Definition: types.h:221
RD_NTHANDLE handle
Definition: types.h:218
uint32 write_total_timeout_multiplier
Definition: types.h:254
uint32 read_total_timeout_constant
Definition: types.h:253
uint32 read_total_timeout_multiplier
Definition: types.h:252
uint32 write_total_timeout_constant
Definition: types.h:255
uint32 read_interval_timeout
Definition: types.h:251
char * printer
Definition: types.h:263
char * driver
Definition: types.h:263
uint32 bloblen
Definition: types.h:264
RD_BOOL default_printer
Definition: types.h:266
FILE * printer_fp
Definition: types.h:262
uint8 * blob
Definition: types.h:265
struct termios * ptermios
Definition: types.h:240
struct termios * pold_termios
Definition: types.h:240
uint32 read_interval_timeout
Definition: types.h:234
uint32 read_total_timeout_multiplier
Definition: types.h:235
uint32 write_total_timeout_multiplier
Definition: types.h:237
uint32 write_total_timeout_constant
Definition: types.h:237
uint32 read_total_timeout_constant
Definition: types.h:236
Definition: tftpd.h:86
Definition: parse.h:23
#define POINT
Definition: precomp.h:30
HICON HCURSOR
Definition: windef.h:299