blob: bd500ddcc5456615c0583392587ff0a4c0436224 [file] [log] [blame]
Alexandre Julliardb1c3a892002-11-13 04:18:38 +00001/*** Autogenerated by WIDL 0.1 from wtypes.idl - Do not edit ***/
Dimitrie O. Paun53f9c212003-08-28 21:43:34 +00002#include <rpc.h>
3#include <rpcndr.h>
Alexandre Julliardb1c3a892002-11-13 04:18:38 +00004
Ove Kaaven80d80742002-11-13 00:22:16 +00005#ifndef __WIDL_WTYPES_H
6#define __WIDL_WTYPES_H
Ove Kaaven729dd8b2002-12-03 21:42:17 +00007#ifdef __cplusplus
8extern "C" {
9#endif
Dimitrie O. Paun53f9c212003-08-28 21:43:34 +000010#include <basetsd.h>
11#include <guiddef.h>
Ove Kaaven80d80742002-11-13 00:22:16 +000012#if 0 /* winnt.h */
13typedef unsigned char BYTE;
Alexandre Julliard83f52d12000-09-26 22:20:14 +000014
Ove Kaaven80d80742002-11-13 00:22:16 +000015typedef unsigned short WORD;
16
17typedef unsigned long DWORD;
18
19typedef long BOOL;
20
21typedef unsigned char UCHAR;
22
23typedef int INT;
24
25typedef unsigned int UINT;
26
27typedef short SHORT;
28
29typedef unsigned short USHORT;
30
31typedef long LONG;
32
33typedef unsigned long ULONG;
34
35typedef float FLOAT;
36
Ove Kaaven80d80742002-11-13 00:22:16 +000037typedef void *PVOID, *LPVOID;
38
39typedef char CHAR;
40
41typedef CHAR *LPSTR;
42
43typedef const CHAR *LPCSTR;
44
45typedef wchar_t WCHAR;
46
47typedef WCHAR *LPWSTR;
48
49typedef const WCHAR *LPCWSTR;
50
51typedef boolean BOOLEAN;
52
Robert Shearman499cfca2003-06-20 21:30:37 +000053typedef DWORD COLORREF;
54
Ove Kaaven80d80742002-11-13 00:22:16 +000055typedef void *HANDLE;
56
Jon Griffithsb7258b22003-03-15 22:24:26 +000057typedef void *HACCEL;
58
59typedef void *HDC;
60
61typedef void *HFONT;
62
63typedef void *HWND;
64
65typedef void *HMENU;
66
Ove Kaaven729dd8b2002-12-03 21:42:17 +000067typedef void *HMODULE;
68
69typedef void *HINSTANCE;
70
71typedef void *HRGN;
72
73typedef void *HTASK;
74
75typedef void *HKEY;
76
Alexandre Julliard69c90c22003-09-09 19:32:36 +000077typedef void *HICON;
78
Jon Griffithsb7258b22003-03-15 22:24:26 +000079typedef LONG_PTR LRESULT;
80
Ove Kaaven80d80742002-11-13 00:22:16 +000081typedef LONG HRESULT;
82
83typedef DWORD LCID;
84
85typedef unsigned __int64 DWORDLONG;
86
87typedef __int64 LONGLONG;
88
89typedef unsigned __int64 ULONGLONG;
90
Ove Kaaven729dd8b2002-12-03 21:42:17 +000091typedef struct _LARGE_INTEGER {
92 LONGLONG QuadPart;
93} LARGE_INTEGER;
94
95typedef struct _ULARGE_INTEGER {
96 ULONGLONG QuadPart;
97} ULARGE_INTEGER;
98
Ove Kaaven80d80742002-11-13 00:22:16 +000099typedef struct _SID_IDENTIFIER_AUTHORITY {
100 UCHAR Value[6];
101} SID_IDENTIFIER_AUTHORITY, *PSID_IDENTIFIER_AUTHORITY;
102
103typedef struct _SID {
104 UCHAR Revision;
105 UCHAR SubAuthorityCount;
106 SID_IDENTIFIER_AUTHORITY IdentifierAuthority;
107 ULONG SubAuthority[1];
108} SID, *PSID;
109
110typedef USHORT SECURITY_DESCRIPTOR_CONTROL, *PSECURITY_DESCRIPTOR_CONTROL;
111
112typedef struct _ACL {
113 UCHAR AclRevision;
114 UCHAR Sbz1;
115 USHORT AclSize;
116 USHORT AceCount;
117 USHORT Sbz2;
118} ACL;
119
120typedef ACL *PACL;
121
122typedef struct _SECURITY_DESCRIPTOR {
123 UCHAR Revision;
124 UCHAR Sbz1;
125 SECURITY_DESCRIPTOR_CONTROL Control;
126 PSID Owner;
127 PSID Group;
128 PACL Sacl;
129 PACL Dacl;
130} SECURITY_DESCRIPTOR, *PSECURITY_DESCRIPTOR;
131
Alexandre Julliardb7c62802003-09-03 23:52:07 +0000132typedef struct _SECURITY_ATTRIBUTES {
133 DWORD nLength;
134 LPVOID lpSecurityDescriptor;
135 BOOL bInheritHandle;
136} SECURITY_ATTRIBUTES, *PSECURITY_ATTRIBUTES, *LPSECURITY_ATTRIBUTES;
137
Jon Griffithsb7258b22003-03-15 22:24:26 +0000138typedef struct tagSIZE {
139 LONG cx;
140 LONG cy;
141} SIZE, *PSIZE, *LPSIZE;
142
143typedef SIZE SIZEL, *PSIZEL, *LPSIZEL;
144
145typedef struct tagPOINT {
146 LONG x;
147 LONG y;
148} POINT, *PPOINT, *LPPOINT;
149
150typedef struct _POINTL {
151 LONG x;
152 LONG y;
153} POINTL;
154
155typedef struct tagRECT {
156 LONG left;
157 LONG top;
158 LONG right;
159 LONG bottom;
160} RECT, *PRECT, *LPRECT;
161
162typedef const RECT *LPCRECT;
163
164typedef struct _RECTL {
165 LONG left;
166 LONG top;
167 LONG right;
168 LONG bottom;
169} RECTL, *PRECTL, *LPRECTL;
170
171typedef const RECTL *LPCRECTL;
172
173typedef UINT_PTR WPARAM;
174
175typedef LONG_PTR LPARAM;
176
177typedef struct tagMSG {
178 HWND hwnd;
179 UINT message;
180 WPARAM wParam;
181 LPARAM lParam;
182 DWORD time;
183 POINT pt;
184} MSG, *PMSG, *NPMSG, *LPMSG;
185
Ove Kaaven80d80742002-11-13 00:22:16 +0000186#endif /* winnt.h */
Alexandre Julliard1084a8b2003-09-17 04:31:27 +0000187typedef double DOUBLE;
188
Ove Kaaven729dd8b2002-12-03 21:42:17 +0000189#ifndef _PALETTEENTRY_DEFINED
190#define _PALETTEENTRY_DEFINED
191typedef struct tagPALETTEENTRY {
192 BYTE peRed;
193 BYTE peGreen;
194 BYTE peBlue;
195 BYTE peFlags;
196} PALETTEENTRY, *PPALETTEENTRY, *LPPALETTEENTRY;
197
198#endif
199#ifndef _LOGPALETTE_DEFINED
200#define _LOGPALETTE_DEFINED
201typedef struct tagLOGPALETTE {
202 WORD palVersion;
203 WORD palNumEntries;
204 PALETTEENTRY palPalEntry[1];
205} LOGPALETTE, *PLOGPALETTE, *LPLOGPALETTE;
206
207#endif
Ove Kaaven80d80742002-11-13 00:22:16 +0000208#ifndef _FILETIME_
209#define _FILETIME_
210typedef struct _FILETIME {
211 DWORD dwLowDateTime;
212 DWORD dwHighDateTime;
213} FILETIME, *PFILETIME, *LPFILETIME;
214
215#endif
Jon Griffithsb7258b22003-03-15 22:24:26 +0000216#ifndef _TEXTMETRIC_DEFINED
217#define _TEXTMETRIC_DEFINED
218typedef struct {
219 LONG tmHeight;
220 LONG tmAscent;
221 LONG tmDescent;
222 LONG tmInternalLeading;
223 LONG tmExternalLeading;
224 LONG tmAveCharWidth;
225 LONG tmMaxCharWidth;
226 LONG tmWeight;
227 LONG tmOverhang;
228 LONG tmDigitizedAspectX;
229 LONG tmDigitizedAspectY;
230 BYTE tmFirstChar;
231 BYTE tmLastChar;
232 BYTE tmDefaultChar;
233 BYTE tmBreakChar;
234 BYTE tmItalic;
235 BYTE tmUnderlined;
236 BYTE tmStruckOut;
237 BYTE tmPitchAndFamily;
238 BYTE tmCharSet;
239} TEXTMETRICA, *LPTEXTMETRICA, *PTEXTMETRICA;
240
241typedef struct {
242 LONG tmHeight;
243 LONG tmAscent;
244 LONG tmDescent;
245 LONG tmInternalLeading;
246 LONG tmExternalLeading;
247 LONG tmAveCharWidth;
248 LONG tmMaxCharWidth;
249 LONG tmWeight;
250 LONG tmOverhang;
251 LONG tmDigitizedAspectX;
252 LONG tmDigitizedAspectY;
253 WCHAR tmFirstChar;
254 WCHAR tmLastChar;
255 WCHAR tmDefaultChar;
256 WCHAR tmBreakChar;
257 BYTE tmItalic;
258 BYTE tmUnderlined;
259 BYTE tmStruckOut;
260 BYTE tmPitchAndFamily;
261 BYTE tmCharSet;
262} TEXTMETRICW, *LPTEXTMETRICW, *PTEXTMETRICW;
263
264#endif
Ove Kaaven80d80742002-11-13 00:22:16 +0000265typedef WCHAR OLECHAR;
266
267typedef OLECHAR *LPOLESTR;
268
269typedef const OLECHAR *LPCOLESTR;
270
Dimitrie O. Paun8b366812003-01-04 00:52:18 +0000271#ifndef __WINESRC__
Alexandre Julliard04600942003-08-22 05:04:23 +0000272#define OLESTR(str) L##str
François Gouget50510202000-12-19 04:50:49 +0000273#endif
Ove Kaaven158063f2002-12-18 20:50:19 +0000274typedef CHAR OLECHAR16;
275
276typedef LPSTR LPOLESTR16;
277
278typedef LPCSTR LPCOLESTR16;
279
280typedef OLECHAR16 *BSTR16;
281typedef BSTR16 *LPBSTR16;
282#define OLESTR16(x) x
Ove Kaaven80d80742002-11-13 00:22:16 +0000283typedef LONG SCODE;
Alexandre Julliard638f1691999-01-17 16:32:32 +0000284
Ove Kaaven80d80742002-11-13 00:22:16 +0000285typedef struct _COAUTHIDENTITY {
286 USHORT *User;
Francois Gouget87e385f1999-02-17 17:45:54 +0000287 ULONG UserLength;
Ove Kaaven80d80742002-11-13 00:22:16 +0000288 USHORT *Domain;
Francois Gouget87e385f1999-02-17 17:45:54 +0000289 ULONG DomainLength;
Ove Kaaven80d80742002-11-13 00:22:16 +0000290 USHORT *Password;
Francois Gouget87e385f1999-02-17 17:45:54 +0000291 ULONG PasswordLength;
292 ULONG Flags;
293} COAUTHIDENTITY;
294
Ove Kaaven80d80742002-11-13 00:22:16 +0000295typedef struct _COAUTHINFO {
Francois Gouget87e385f1999-02-17 17:45:54 +0000296 DWORD dwAuthnSvc;
297 DWORD dwAuthzSvc;
298 LPWSTR pwszServerPrincName;
299 DWORD dwAuthnLevel;
300 DWORD dwImpersonationLevel;
Ove Kaaven80d80742002-11-13 00:22:16 +0000301 COAUTHIDENTITY *pAuthIdentityData;
Francois Gouget87e385f1999-02-17 17:45:54 +0000302 DWORD dwCapabilities;
303} COAUTHINFO;
304
Ove Kaaven80d80742002-11-13 00:22:16 +0000305typedef struct _COSERVERINFO {
Francois Gouget87e385f1999-02-17 17:45:54 +0000306 DWORD dwReserved1;
307 LPWSTR pwszName;
Ove Kaaven80d80742002-11-13 00:22:16 +0000308 COAUTHINFO *pAuthInfo;
Francois Gouget87e385f1999-02-17 17:45:54 +0000309 DWORD dwReserved2;
310} COSERVERINFO;
311
Ove Kaaven1cd02fa2002-12-19 21:13:58 +0000312typedef enum tagMEMCTX {
313 MEMCTX_TASK = 1,
314 MEMCTX_SHARED = 2,
315 MEMCTX_MACSYSTEM = 3,
316 MEMCTX_UNKNOWN = -1,
317 MEMCTX_SAME = -2
318} MEMCTX;
319
Ove Kaaven80d80742002-11-13 00:22:16 +0000320#ifndef _ROTFLAGS_DEFINED
321#define _ROTFLAGS_DEFINED
322#define ROTFLAGS_REGISTRATIONKEEPSALIVE 0x1
323#define ROTFLAGS_ALLOWANYCLIENT 0x2
324#endif
325typedef enum tagCLSCTX {
Ove Kaaven729dd8b2002-12-03 21:42:17 +0000326 CLSCTX_INPROC_SERVER = 0x1,
327 CLSCTX_INPROC_HANDLER = 0x2,
328 CLSCTX_LOCAL_SERVER = 0x4,
329 CLSCTX_INPROC_SERVER16 = 0x8,
330 CLSCTX_REMOTE_SERVER = 0x10,
331 CLSCTX_INPROC_HANDLER16 = 0x20,
332 CLSCTX_INPROC_SERVERX86 = 0x40,
333 CLSCTX_INPROC_HANDLERX86 = 0x80,
334 CLSCTX_ESERVER_HANDLER = 0x100,
335 CLSCTX_NO_CODE_DOWNLOAD = 0x400,
336 CLSCTX_NO_CUSTOM_MARSHAL = 0x1000,
337 CLSCTX_ENABLE_CODE_DOWNLOAD = 0x2000,
338 CLSCTX_NO_FAILURE_LOG = 0x4000,
339 CLSCTX_DISABLE_AAA = 0x8000,
340 CLSCTX_ENABLE_AAA = 0x10000,
341 CLSCTX_FROM_DEFAULT_CONTEXT = 0x20000
Alexandre Julliard638f1691999-01-17 16:32:32 +0000342} CLSCTX;
343
Ove Kaaven80d80742002-11-13 00:22:16 +0000344#define CLSCTX_INPROC (CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER)
345#define CLSCTX_ALL (CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER | CLSCTX_LOCAL_SERVER | CLSCTX_REMOTE_SERVER)
346#define CLSCTX_SERVER (CLSCTX_INPROC_SERVER | CLSCTX_LOCAL_SERVER | CLSCTX_REMOTE_SERVER)
347typedef enum tagMSHLFLAGS {
348 MSHLFLAGS_NORMAL = 0,
349 MSHLFLAGS_TABLESTRONG = 1,
350 MSHLFLAGS_TABLEWEAK = 2,
351 MSHLFLAGS_NOPING = 4
Francois Gougetafddcfd2000-09-27 22:31:28 +0000352} MSHLFLAGS;
353
Ove Kaaven80d80742002-11-13 00:22:16 +0000354typedef enum tagMSHCTX {
355 MSHCTX_LOCAL = 0,
356 MSHCTX_NOSHAREDMEM = 1,
Francois Gougetafddcfd2000-09-27 22:31:28 +0000357 MSHCTX_DIFFERENTMACHINE = 2,
Ove Kaaven80d80742002-11-13 00:22:16 +0000358 MSHCTX_INPROC = 3,
359 MSHCTX_CROSSCTX = 4
Francois Gougetafddcfd2000-09-27 22:31:28 +0000360} MSHCTX;
361
Ove Kaaven80d80742002-11-13 00:22:16 +0000362typedef struct _BYTE_BLOB {
363 unsigned long clSize;
364 byte abData[1];
365} BYTE_BLOB;
Francois Gouget87e385f1999-02-17 17:45:54 +0000366
Ove Kaaven80d80742002-11-13 00:22:16 +0000367typedef BYTE_BLOB *UP_BYTE_BLOB;
Francois Gouget87e385f1999-02-17 17:45:54 +0000368
Ove Kaaven729dd8b2002-12-03 21:42:17 +0000369typedef struct _FLAGGED_BYTE_BLOB {
370 unsigned long fFlags;
371 unsigned long clSize;
372 byte abData[1];
373} FLAGGED_BYTE_BLOB;
374
375typedef FLAGGED_BYTE_BLOB *UP_FLAGGED_BYTE_BLOB;
376
Ove Kaaven80d80742002-11-13 00:22:16 +0000377typedef struct _FLAGGED_WORD_BLOB {
378 unsigned long fFlags;
379 unsigned long clSize;
380 unsigned short asData[1];
381} FLAGGED_WORD_BLOB;
382
383typedef FLAGGED_WORD_BLOB *UP_FLAGGED_WORD_BLOB;
384
Ove Kaaven729dd8b2002-12-03 21:42:17 +0000385typedef struct _BYTE_SIZEDARR {
386 unsigned long clSize;
387 byte *pData;
388} BYTE_SIZEDARR;
389
390typedef struct _SHORT_SIZEDARR {
391 unsigned long clSize;
392 unsigned short *pData;
393} WORD_SIZEDARR;
394
395typedef struct _LONG_SIZEDARR {
396 unsigned long clSize;
397 unsigned long *pData;
398} DWORD_SIZEDARR;
399
400typedef struct _HYPER_SIZEDARR {
401 unsigned long clSize;
402 hyper *pData;
403} HYPER_SIZEDARR;
404
405#define WDT_INPROC_CALL (0x48746457)
406
407#define WDT_REMOTE_CALL (0x52746457)
408
Ove Kaaven80d80742002-11-13 00:22:16 +0000409typedef struct _userCLIPFORMAT {
410 long fContext;
411 union {
412 DWORD dwValue;
Ove Kaaven729dd8b2002-12-03 21:42:17 +0000413 LPWSTR pwszName;
Ove Kaaven80d80742002-11-13 00:22:16 +0000414 } u;
415} userCLIPFORMAT;
416
417typedef userCLIPFORMAT *wireCLIPFORMAT;
418
419typedef WORD CLIPFORMAT;
Alexandre Julliard8004dec2003-01-09 01:10:14 +0000420unsigned long __RPC_USER CLIPFORMAT_UserSize (unsigned long *, unsigned long, CLIPFORMAT *);
421unsigned char * __RPC_USER CLIPFORMAT_UserMarshal (unsigned long *, unsigned char *, CLIPFORMAT *);
422unsigned char * __RPC_USER CLIPFORMAT_UserUnmarshal(unsigned long *, unsigned char *, CLIPFORMAT *);
423void __RPC_USER CLIPFORMAT_UserFree (unsigned long *, CLIPFORMAT *);
Ove Kaaven80d80742002-11-13 00:22:16 +0000424
Ove Kaaven729dd8b2002-12-03 21:42:17 +0000425typedef struct tagRemHGLOBAL {
426 long fNullHGlobal;
427 unsigned long cbData;
428 byte data[1];
429} RemHGLOBAL;
430
431typedef struct _userHGLOBAL {
432 long fContext;
433 union {
434 long hInproc;
435 FLAGGED_BYTE_BLOB *hRemote;
436 long hGlobal;
437 } u;
438} userHGLOBAL;
439
440typedef userHGLOBAL *wireHGLOBAL;
441
Ove Kaaven80d80742002-11-13 00:22:16 +0000442typedef struct tagRemHMETAFILEPICT {
443 long mm;
444 long xExt;
445 long yExt;
446 unsigned long cbData;
447 byte data[1];
448} RemHMETAFILEPICT;
449
450typedef struct _userHMETAFILE {
451 long fContext;
452 union {
453 long hInproc;
454 BYTE_BLOB *hRemote;
455 long hGlobal;
456 } u;
457} userHMETAFILE;
458
459typedef userHMETAFILE *wireHMETAFILE;
460
461typedef struct _remoteMETAFILEPICT {
462 long mm;
463 long xExt;
464 long yExt;
465 userHMETAFILE *hMF;
466} remoteMETAFILEPICT;
467
468typedef struct _userHMETAFILEPICT {
469 long fContext;
470 union {
471 long hInproc;
472 remoteMETAFILEPICT *hRemote;
473 long hGlobal;
474 } u;
475} userHMETAFILEPICT;
476
477typedef userHMETAFILEPICT *wireHMETAFILEPICT;
478
Ove Kaaven729dd8b2002-12-03 21:42:17 +0000479typedef struct tagRemHENHMETAFILE {
480 unsigned long cbData;
481 byte data[1];
482} RemHENHMETAFILE;
483
484typedef struct _userHENHMETAFILE {
485 long fContext;
486 union {
487 long hInproc;
488 BYTE_BLOB *hRemote;
489 long hGlobal;
490 } u;
491} userHENHMETAFILE;
492
493typedef userHENHMETAFILE *wireHENHMETAFILE;
494
495typedef struct tagRemHBITMAP {
496 unsigned long cbData;
497 byte data[1];
498} RemHBITMAP;
499
500typedef struct _userBITMAP {
501 LONG bmType;
502 LONG bmWidth;
503 LONG bmHeight;
504 LONG bmWidthBytes;
505 WORD bmPlanes;
506 WORD bmBitsPixel;
507 ULONG cbSize;
508 byte pBuffer[1];
509} userBITMAP;
510
511typedef struct _userHBITMAP {
512 long fContext;
513 union {
514 long hInproc;
515 userBITMAP *hRemote;
516 long hGlobal;
517 } u;
518} userHBITMAP;
519
520typedef userHBITMAP *wireHBITMAP;
521
522typedef struct tagRemHPALETTE {
523 unsigned long cbData;
524 byte data[1];
525} RemHPALETTE;
526
527typedef struct tagrpcLOGPALETTE {
528 WORD palVersion;
529 WORD palNumEntries;
530 PALETTEENTRY palPalEntry[1];
531} rpcLOGPALETTE;
532
533typedef struct _userHPALETTE {
534 long fContext;
535 union {
536 long hInproc;
537 rpcLOGPALETTE *hRemote;
538 long hGlobal;
539 } u;
540} userHPALETTE;
541
542typedef userHPALETTE *wireHPALETTE;
543
Ove Kaaven80d80742002-11-13 00:22:16 +0000544#if 0
Ove Kaaven729dd8b2002-12-03 21:42:17 +0000545typedef void *HGLOBAL;
Alexandre Julliard8004dec2003-01-09 01:10:14 +0000546unsigned long __RPC_USER HGLOBAL_UserSize (unsigned long *, unsigned long, HGLOBAL *);
547unsigned char * __RPC_USER HGLOBAL_UserMarshal (unsigned long *, unsigned char *, HGLOBAL *);
548unsigned char * __RPC_USER HGLOBAL_UserUnmarshal(unsigned long *, unsigned char *, HGLOBAL *);
549void __RPC_USER HGLOBAL_UserFree (unsigned long *, HGLOBAL *);
Ove Kaaven729dd8b2002-12-03 21:42:17 +0000550
551typedef HGLOBAL HLOCAL;
552
553typedef void *HBITMAP;
Alexandre Julliard8004dec2003-01-09 01:10:14 +0000554unsigned long __RPC_USER HBITMAP_UserSize (unsigned long *, unsigned long, HBITMAP *);
555unsigned char * __RPC_USER HBITMAP_UserMarshal (unsigned long *, unsigned char *, HBITMAP *);
556unsigned char * __RPC_USER HBITMAP_UserUnmarshal(unsigned long *, unsigned char *, HBITMAP *);
557void __RPC_USER HBITMAP_UserFree (unsigned long *, HBITMAP *);
Ove Kaaven729dd8b2002-12-03 21:42:17 +0000558
559typedef void *HPALETTE;
Alexandre Julliard8004dec2003-01-09 01:10:14 +0000560unsigned long __RPC_USER HPALETTE_UserSize (unsigned long *, unsigned long, HPALETTE *);
561unsigned char * __RPC_USER HPALETTE_UserMarshal (unsigned long *, unsigned char *, HPALETTE *);
562unsigned char * __RPC_USER HPALETTE_UserUnmarshal(unsigned long *, unsigned char *, HPALETTE *);
563void __RPC_USER HPALETTE_UserFree (unsigned long *, HPALETTE *);
Ove Kaaven729dd8b2002-12-03 21:42:17 +0000564
565typedef void *HENHMETAFILE;
Alexandre Julliard8004dec2003-01-09 01:10:14 +0000566unsigned long __RPC_USER HENHMETAFILE_UserSize (unsigned long *, unsigned long, HENHMETAFILE *);
567unsigned char * __RPC_USER HENHMETAFILE_UserMarshal (unsigned long *, unsigned char *, HENHMETAFILE *);
568unsigned char * __RPC_USER HENHMETAFILE_UserUnmarshal(unsigned long *, unsigned char *, HENHMETAFILE *);
569void __RPC_USER HENHMETAFILE_UserFree (unsigned long *, HENHMETAFILE *);
Ove Kaaven729dd8b2002-12-03 21:42:17 +0000570
Ove Kaaven80d80742002-11-13 00:22:16 +0000571typedef void *HMETAFILE;
Alexandre Julliard8004dec2003-01-09 01:10:14 +0000572unsigned long __RPC_USER HMETAFILE_UserSize (unsigned long *, unsigned long, HMETAFILE *);
573unsigned char * __RPC_USER HMETAFILE_UserMarshal (unsigned long *, unsigned char *, HMETAFILE *);
574unsigned char * __RPC_USER HMETAFILE_UserUnmarshal(unsigned long *, unsigned char *, HMETAFILE *);
575void __RPC_USER HMETAFILE_UserFree (unsigned long *, HMETAFILE *);
Ove Kaaven80d80742002-11-13 00:22:16 +0000576
Paul Quinnaaa83061999-06-05 15:23:20 +0000577#endif
Ove Kaaven80d80742002-11-13 00:22:16 +0000578typedef void *HMETAFILEPICT;
Alexandre Julliard8004dec2003-01-09 01:10:14 +0000579unsigned long __RPC_USER HMETAFILEPICT_UserSize (unsigned long *, unsigned long, HMETAFILEPICT *);
580unsigned char * __RPC_USER HMETAFILEPICT_UserMarshal (unsigned long *, unsigned char *, HMETAFILEPICT *);
581unsigned char * __RPC_USER HMETAFILEPICT_UserUnmarshal(unsigned long *, unsigned char *, HMETAFILEPICT *);
582void __RPC_USER HMETAFILEPICT_UserFree (unsigned long *, HMETAFILEPICT *);
Francois Gouget87e385f1999-02-17 17:45:54 +0000583
Ove Kaaven80d80742002-11-13 00:22:16 +0000584#if 0
585typedef GUID *REFGUID;
586
587typedef IID *REFIID;
588
Ove Kaaven729dd8b2002-12-03 21:42:17 +0000589typedef CLSID *REFCLSID;
590
591typedef FMTID *REFFMTID;
592
Ove Kaaven80d80742002-11-13 00:22:16 +0000593#endif
Ove Kaaven80d80742002-11-13 00:22:16 +0000594typedef enum tagDVASPECT {
595 DVASPECT_CONTENT = 1,
596 DVASPECT_THUMBNAIL = 2,
597 DVASPECT_ICON = 4,
598 DVASPECT_DOCPRINT = 8
599} DVASPECT;
600
601typedef enum tagSTGC {
602 STGC_DEFAULT = 0,
603 STGC_OVERWRITE = 1,
604 STGC_ONLYIFCURRENT = 2,
605 STGC_DANGEROUSLYCOMMITMERELYTODISKCACHE = 4,
606 STGC_CONSOLIDATE = 8
607} STGC;
608
609typedef enum tagSTGMOVE {
610 STGMOVE_MOVE = 0,
611 STGMOVE_COPY = 1,
612 STGMOVE_SHALLOWCOPY = 2
613} STGMOVE;
614
Ove Kaaven1cd02fa2002-12-19 21:13:58 +0000615typedef enum tagSTATFLAG {
616 STATFLAG_DEFAULT = 0,
617 STATFLAG_NONAME = 1,
618 STATFLAG_NOOPEN = 2
619} STATFLAG;
620
Alexandre Julliard1084a8b2003-09-17 04:31:27 +0000621typedef double DATE;
622
Ove Kaaven80d80742002-11-13 00:22:16 +0000623#if 0
624typedef struct tagCY {
625 LONGLONG int64;
626} CY;
627
628#else
Patrik Stridvall311e4561999-09-19 14:20:33 +0000629typedef union tagCY {
Francois Gouget87e385f1999-02-17 17:45:54 +0000630 struct {
Alexandre Julliard5f09c962002-06-25 03:03:19 +0000631#ifdef WORDS_BIGENDIAN
Patrik Stridvall311e4561999-09-19 14:20:33 +0000632 LONG Hi;
Jason Edmeades5b6a9ff2002-06-20 23:07:55 +0000633 ULONG Lo;
Alexandre Julliard5f09c962002-06-25 03:03:19 +0000634#else
Patrik Stridvall311e4561999-09-19 14:20:33 +0000635 ULONG Lo;
636 LONG Hi;
Alexandre Julliard5f09c962002-06-25 03:03:19 +0000637#endif
Patrik Stridvall311e4561999-09-19 14:20:33 +0000638 } DUMMYSTRUCTNAME;
Francois Gouget87e385f1999-02-17 17:45:54 +0000639 LONGLONG int64;
640} CY;
Ove Kaaven80d80742002-11-13 00:22:16 +0000641#endif
642typedef CY *LPCY;
Francois Gouget87e385f1999-02-17 17:45:54 +0000643
Jon Griffithsb7258b22003-03-15 22:24:26 +0000644#if 0
Francois Gougetd46cc432001-05-07 18:15:38 +0000645typedef struct tagDEC {
646 USHORT wReserved;
Ove Kaaven80d80742002-11-13 00:22:16 +0000647 BYTE scale;
648 BYTE sign;
Francois Gougetd46cc432001-05-07 18:15:38 +0000649 ULONG Hi32;
Ove Kaaven80d80742002-11-13 00:22:16 +0000650 ULONGLONG Lo64;
Francois Gougetd46cc432001-05-07 18:15:38 +0000651} DECIMAL;
652
Jon Griffithsb7258b22003-03-15 22:24:26 +0000653#else
654typedef struct tagDEC {
655 USHORT wReserved;
656 union {
657 struct {
658 BYTE scale;
659 BYTE sign;
660 } DUMMYSTRUCTNAME;
661 USHORT signscale;
662 } DUMMYUNIONNAME;
663 ULONG Hi32;
664 union {
665 struct {
666#ifdef WORDS_BIGENDIAN
667 ULONG Mid32;
668 ULONG Lo32;
669#else
670 ULONG Lo32;
671 ULONG Mid32;
672#endif
673 } DUMMYSTRUCTNAME1;
674 ULONGLONG Lo64;
675 } DUMMYUNIONNAME1;
676} DECIMAL;
677#endif
678#define DECIMAL_NEG ((BYTE)0x80)
Stefan Leichter053b8392003-05-16 20:13:50 +0000679#define DECIMAL_SETZERO(d) do{ memset(((char*)(d)) + sizeof(USHORT), 0, sizeof(ULONG) * 3u + sizeof(USHORT)); }while (0)
Ove Kaaven80d80742002-11-13 00:22:16 +0000680typedef DECIMAL *LPDECIMAL;
Francois Gougetd46cc432001-05-07 18:15:38 +0000681
Ove Kaaven80d80742002-11-13 00:22:16 +0000682typedef FLAGGED_WORD_BLOB *wireBSTR;
Francois Gouget87e385f1999-02-17 17:45:54 +0000683
Ove Kaaven80d80742002-11-13 00:22:16 +0000684typedef OLECHAR *BSTR;
Alexandre Julliard8004dec2003-01-09 01:10:14 +0000685unsigned long __RPC_USER BSTR_UserSize (unsigned long *, unsigned long, BSTR *);
686unsigned char * __RPC_USER BSTR_UserMarshal (unsigned long *, unsigned char *, BSTR *);
687unsigned char * __RPC_USER BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR *);
688void __RPC_USER BSTR_UserFree (unsigned long *, BSTR *);
Ove Kaaven80d80742002-11-13 00:22:16 +0000689
690typedef BSTR *LPBSTR;
691
692typedef short VARIANT_BOOL;
693
694typedef VARIANT_BOOL _VARIANT_BOOL;
695
696#define VARIANT_TRUE ((VARIANT_BOOL)0xFFFF)
697#define VARIANT_FALSE ((VARIANT_BOOL)0x0000)
Ove Kaaven729dd8b2002-12-03 21:42:17 +0000698typedef struct tagBSTRBLOB {
699 ULONG cbSize;
700 BYTE *pData;
701} BSTRBLOB, *LPBSTRBLOB;
702
Ove Kaaven80d80742002-11-13 00:22:16 +0000703typedef struct tagBLOB {
704 ULONG cbSize;
705 BYTE *pBlobData;
706} BLOB, *LPBLOB;
707
708typedef struct tagCLIPDATA {
Francois Gouget87e385f1999-02-17 17:45:54 +0000709 ULONG cbSize;
710 long ulClipFmt;
711 BYTE *pClipData;
712} CLIPDATA;
713
Ove Kaaven80d80742002-11-13 00:22:16 +0000714#define CBPCLIPDATA(cb) ((cb).cbSize - sizeof((cb).ulClipFmt))
715typedef ULONG PROPID;
Francois Gouget87e385f1999-02-17 17:45:54 +0000716
Ove Kaaven80d80742002-11-13 00:22:16 +0000717typedef unsigned short VARTYPE;
Francois Gouget87e385f1999-02-17 17:45:54 +0000718
Ove Kaaven729dd8b2002-12-03 21:42:17 +0000719enum VARENUM {
720 VT_EMPTY = 0,
721 VT_NULL = 1,
722 VT_I2 = 2,
723 VT_I4 = 3,
724 VT_R4 = 4,
725 VT_R8 = 5,
726 VT_CY = 6,
727 VT_DATE = 7,
728 VT_BSTR = 8,
729 VT_DISPATCH = 9,
730 VT_ERROR = 10,
731 VT_BOOL = 11,
732 VT_VARIANT = 12,
733 VT_UNKNOWN = 13,
734 VT_DECIMAL = 14,
735 VT_I1 = 16,
736 VT_UI1 = 17,
737 VT_UI2 = 18,
738 VT_UI4 = 19,
739 VT_I8 = 20,
740 VT_UI8 = 21,
741 VT_INT = 22,
742 VT_UINT = 23,
743 VT_VOID = 24,
744 VT_HRESULT = 25,
745 VT_PTR = 26,
746 VT_SAFEARRAY = 27,
747 VT_CARRAY = 28,
748 VT_USERDEFINED = 29,
749 VT_LPSTR = 30,
750 VT_LPWSTR = 31,
751 VT_RECORD = 36,
Jon Griffithsb7258b22003-03-15 22:24:26 +0000752 VT_INT_PTR = 37,
753 VT_UINT_PTR = 38,
Ove Kaaven729dd8b2002-12-03 21:42:17 +0000754 VT_FILETIME = 64,
755 VT_BLOB = 65,
756 VT_STREAM = 66,
757 VT_STORAGE = 67,
758 VT_STREAMED_OBJECT = 68,
759 VT_STORED_OBJECT = 69,
760 VT_BLOB_OBJECT = 70,
761 VT_CF = 71,
762 VT_CLSID = 72,
763 VT_BSTR_BLOB = 0xfff,
764 VT_VECTOR = 0x1000,
765 VT_ARRAY = 0x2000,
766 VT_BYREF = 0x4000,
767 VT_RESERVED = 0x8000,
768 VT_ILLEGAL = 0xffff,
769 VT_ILLEGALMASKED = 0xfff,
770 VT_TYPEMASK = 0xfff
771};
772
773#ifdef __cplusplus
774}
775#endif
Ove Kaaven80d80742002-11-13 00:22:16 +0000776#endif /* __WIDL_WTYPES_H */