zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

wtypes.h (12693B) - Raw


      1 /*** Autogenerated by WIDL 10.4 from include/wtypes.idl - Do not edit ***/
      2 
      3 #ifdef _WIN32
      4 #ifndef __REQUIRED_RPCNDR_H_VERSION__
      5 #define __REQUIRED_RPCNDR_H_VERSION__ 475
      6 #endif
      7 #include <rpc.h>
      8 #include <rpcndr.h>
      9 #endif
     10 
     11 #ifndef COM_NO_WINDOWS_H
     12 #include <windows.h>
     13 #include <ole2.h>
     14 #endif
     15 
     16 #ifndef __wtypes_h__
     17 #define __wtypes_h__
     18 
     19 /* Forward declarations */
     20 
     21 /* Headers for imported files */
     22 
     23 #include <wtypesbase.h>
     24 
     25 #ifdef __cplusplus
     26 extern "C" {
     27 #endif
     28 
     29 /**
     30  * This file is part of the mingw-w64 runtime package.
     31  * No warranty is given; refer to the file DISCLAIMER within this package.
     32  */
     33 
     34 
     35 /*****************************************************************************
     36  * IWinTypes interface (v0.1)
     37  */
     38 #ifndef __IWinTypes_INTERFACE_DEFINED__
     39 #define __IWinTypes_INTERFACE_DEFINED__
     40 
     41 extern RPC_IF_HANDLE IWinTypes_v0_1_c_ifspec;
     42 extern RPC_IF_HANDLE IWinTypes_v0_1_s_ifspec;
     43 typedef struct tagRemHGLOBAL {
     44     LONG fNullHGlobal;
     45     ULONG cbData;
     46     byte data[1];
     47 } RemHGLOBAL;
     48 
     49 typedef struct tagRemHMETAFILEPICT {
     50     LONG mm;
     51     LONG xExt;
     52     LONG yExt;
     53     ULONG cbData;
     54     byte data[1];
     55 } RemHMETAFILEPICT;
     56 
     57 typedef struct tagRemHENHMETAFILE {
     58     ULONG cbData;
     59     byte data[1];
     60 } RemHENHMETAFILE;
     61 typedef struct tagRemHBITMAP {
     62     ULONG cbData;
     63     byte data[1];
     64 } RemHBITMAP;
     65 
     66 typedef struct tagRemHPALETTE {
     67     ULONG cbData;
     68     byte data[1];
     69 } RemHPALETTE;
     70 
     71 typedef struct tagRemBRUSH {
     72     ULONG cbData;
     73     byte data[1];
     74 } RemHBRUSH;
     75 #if 0
     76 typedef UINT_PTR WPARAM;
     77 typedef LONG_PTR LPARAM;
     78 typedef LONG_PTR LRESULT;
     79 typedef void *HMODULE;
     80 typedef void *HINSTANCE;
     81 typedef void *HTASK;
     82 typedef void *HKEY;
     83 typedef void *HDESK;
     84 typedef void *HMF;
     85 typedef void *HEMF;
     86 typedef void *HPEN;
     87 typedef void *HRSRC;
     88 typedef void *HSTR;
     89 typedef void *HWINSTA;
     90 typedef void *HKL;
     91 typedef void *HGDIOBJ;
     92 typedef HANDLE HDWP;
     93 typedef INT HFILE;
     94 typedef DWORD COLORREF;
     95 typedef DWORD *LPCOLORREF;
     96 typedef struct _RECTL {
     97     LONG left;
     98     LONG top;
     99     LONG right;
    100     LONG bottom;
    101 } RECTL;
    102 typedef struct _RECTL *PRECTL;
    103 typedef struct _RECTL *LPRECTL;
    104 typedef struct tagPOINT {
    105     LONG x;
    106     LONG y;
    107 } POINT;
    108 typedef struct tagPOINT *PPOINT;
    109 typedef struct tagPOINT *LPPOINT;
    110 typedef struct _POINTL {
    111     LONG x;
    112     LONG y;
    113 } POINTL;
    114 typedef struct _POINTL *PPOINTL;
    115 typedef struct tagSIZE {
    116     LONG cx;
    117     LONG cy;
    118 } SIZE;
    119 typedef struct tagSIZE *PSIZE;
    120 typedef struct tagSIZE *LPSIZE;
    121 typedef struct tagSIZEL {
    122     LONG cx;
    123     LONG cy;
    124 } SIZEL;
    125 typedef struct tagSIZEL *PSIZEL;
    126 typedef struct tagSIZEL *LPSIZEL;
    127 #endif
    128 
    129 #ifndef _PALETTEENTRY_DEFINED
    130 #define _PALETTEENTRY_DEFINED
    131 
    132 typedef struct tagPALETTEENTRY {
    133     BYTE peRed;
    134     BYTE peGreen;
    135     BYTE peBlue;
    136     BYTE peFlags;
    137 } PALETTEENTRY;
    138 typedef struct tagPALETTEENTRY *PPALETTEENTRY;
    139 typedef struct tagPALETTEENTRY *LPPALETTEENTRY;
    140 #endif
    141 
    142 #ifndef _LOGPALETTE_DEFINED
    143 #define _LOGPALETTE_DEFINED
    144 
    145 typedef struct tagLOGPALETTE {
    146     WORD palVersion;
    147     WORD palNumEntries;
    148     PALETTEENTRY palPalEntry[1];
    149 } LOGPALETTE;
    150 typedef struct tagLOGPALETTE *PLOGPALETTE;
    151 typedef struct tagLOGPALETTE *LPLOGPALETTE;
    152 #endif
    153 
    154 #ifndef _WINDEF_
    155 typedef const RECTL *LPCRECTL;
    156 typedef struct tagRECT {
    157     LONG left;
    158     LONG top;
    159     LONG right;
    160     LONG bottom;
    161 } RECT;
    162 typedef struct tagRECT *PRECT;
    163 typedef struct tagRECT *LPRECT;
    164 typedef const RECT *LPCRECT;
    165 #endif
    166 
    167 #if 0
    168 typedef FMTID *REFFMTID;
    169 #endif
    170 
    171 #ifndef _ROTFLAGS_DEFINED
    172 #define _ROTFLAGS_DEFINED
    173 #define ROTFLAGS_REGISTRATIONKEEPSALIVE 0x1
    174 #define ROTFLAGS_ALLOWANYCLIENT 0x2
    175 #endif
    176 
    177 #ifndef _ROT_COMPARE_MAX_DEFINED
    178 #define _ROT_COMPARE_MAX_DEFINED
    179 #define ROT_COMPARE_MAX 2048
    180 #endif
    181 
    182 typedef enum tagDVASPECT {
    183     DVASPECT_CONTENT = 1,
    184     DVASPECT_THUMBNAIL = 2,
    185     DVASPECT_ICON = 4,
    186     DVASPECT_DOCPRINT = 8
    187 } DVASPECT;
    188 
    189 typedef enum tagSTGC {
    190     STGC_DEFAULT = 0,
    191     STGC_OVERWRITE = 1,
    192     STGC_ONLYIFCURRENT = 2,
    193     STGC_DANGEROUSLYCOMMITMERELYTODISKCACHE = 4,
    194     STGC_CONSOLIDATE = 8
    195 } STGC;
    196 
    197 typedef enum tagSTGMOVE {
    198     STGMOVE_MOVE = 0,
    199     STGMOVE_COPY = 1,
    200     STGMOVE_SHALLOWCOPY = 2
    201 } STGMOVE;
    202 
    203 typedef enum tagSTATFLAG {
    204     STATFLAG_DEFAULT = 0,
    205     STATFLAG_NONAME = 1,
    206     STATFLAG_NOOPEN = 2
    207 } STATFLAG;
    208 typedef void *HCONTEXT;
    209 
    210 #ifndef _LCID_DEFINED
    211 #define _LCID_DEFINED
    212 typedef DWORD LCID;
    213 #endif
    214 
    215 #ifndef _LANGID_DEFINED
    216 #define _LANGID_DEFINED
    217 typedef USHORT LANGID;
    218 #endif
    219 
    220 #define WDT_INPROC_CALL (0x48746457)
    221 
    222 #define WDT_REMOTE_CALL (0x52746457)
    223 
    224 #define WDT_INPROC64_CALL (0x50746457)
    225 
    226 
    227 typedef struct _userCLIPFORMAT {
    228     LONG fContext;
    229     union __WIDL_wtypes_generated_name_00000001 {
    230         DWORD dwValue;
    231         wchar_t *pwszName;
    232     } u;
    233 } userCLIPFORMAT;
    234 
    235 typedef userCLIPFORMAT *wireCLIPFORMAT;
    236 typedef WORD CLIPFORMAT;
    237 
    238 typedef struct _GDI_NONREMOTE {
    239     LONG fContext;
    240     union __WIDL_wtypes_generated_name_00000002 {
    241         LONG hInproc;
    242         DWORD_BLOB *hRemote;
    243     } u;
    244 } GDI_NONREMOTE;
    245 
    246 typedef struct _userHGLOBAL {
    247     LONG fContext;
    248     union __WIDL_wtypes_generated_name_00000003 {
    249         LONG hInproc;
    250         FLAGGED_BYTE_BLOB *hRemote;
    251         INT64 hInproc64;
    252     } u;
    253 } userHGLOBAL;
    254 
    255 typedef userHGLOBAL *wireHGLOBAL;
    256 
    257 typedef struct _userHMETAFILE {
    258     LONG fContext;
    259     union __WIDL_wtypes_generated_name_00000004 {
    260         LONG hInproc;
    261         BYTE_BLOB *hRemote;
    262         INT64 hInproc64;
    263     } u;
    264 } userHMETAFILE;
    265 
    266 typedef struct _remoteMETAFILEPICT {
    267     LONG mm;
    268     LONG xExt;
    269     LONG yExt;
    270     userHMETAFILE *hMF;
    271 } remoteMETAFILEPICT;
    272 
    273 typedef struct _userHMETAFILEPICT {
    274     LONG fContext;
    275     union __WIDL_wtypes_generated_name_00000005 {
    276         LONG hInproc;
    277         remoteMETAFILEPICT *hRemote;
    278         INT64 hInproc64;
    279     } u;
    280 } userHMETAFILEPICT;
    281 
    282 typedef struct _userHENHMETAFILE {
    283     LONG fContext;
    284     union __WIDL_wtypes_generated_name_00000006 {
    285         LONG hInproc;
    286         BYTE_BLOB *hRemote;
    287         INT64 hInproc64;
    288     } u;
    289 } userHENHMETAFILE;
    290 
    291 typedef struct _userBITMAP {
    292     LONG bmType;
    293     LONG bmWidth;
    294     LONG bmHeight;
    295     LONG bmWidthBytes;
    296     WORD bmPlanes;
    297     WORD bmBitsPixel;
    298     ULONG cbSize;
    299     byte pBuffer[1];
    300 } userBITMAP;
    301 
    302 typedef struct _userHBITMAP {
    303     LONG fContext;
    304     union __WIDL_wtypes_generated_name_00000007 {
    305         LONG hInproc;
    306         userBITMAP *hRemote;
    307         INT64 hInproc64;
    308     } u;
    309 } userHBITMAP;
    310 
    311 typedef struct _userHPALETTE {
    312     LONG fContext;
    313     union __WIDL_wtypes_generated_name_00000008 {
    314         LONG hInproc;
    315         LOGPALETTE *hRemote;
    316         INT64 hInproc64;
    317     } u;
    318 } userHPALETTE;
    319 
    320 typedef struct _RemotableHandle {
    321     LONG fContext;
    322     union __WIDL_wtypes_generated_name_00000009 {
    323         LONG hInproc;
    324         LONG hRemote;
    325     } u;
    326 } RemotableHandle;
    327 
    328 typedef RemotableHandle *wireHWND;
    329 typedef RemotableHandle *wireHMENU;
    330 typedef RemotableHandle *wireHACCEL;
    331 typedef RemotableHandle *wireHBRUSH;
    332 typedef RemotableHandle *wireHFONT;
    333 typedef RemotableHandle *wireHDC;
    334 typedef RemotableHandle *wireHICON;
    335 typedef RemotableHandle *wireHRGN;
    336 typedef RemotableHandle *wireHMONITOR;
    337 
    338 #if 0
    339 typedef void *HWND;
    340 typedef void *HMENU;
    341 typedef void *HACCEL;
    342 typedef void *HBRUSH;
    343 typedef void *HFONT;
    344 typedef void *HDC;
    345 typedef void *HICON;
    346 typedef void *HRGN;
    347 typedef void *HMONITOR;
    348 
    349 #ifndef _HCURSOR_DEFINED
    350 #define _HCURSOR_DEFINED
    351 typedef HICON HCURSOR;
    352 #endif
    353 
    354 #endif
    355 
    356 #ifndef _TEXTMETRIC_DEFINED
    357 #define _TEXTMETRIC_DEFINED
    358 
    359 typedef struct tagTEXTMETRICW {
    360     LONG tmHeight;
    361     LONG tmAscent;
    362     LONG tmDescent;
    363     LONG tmInternalLeading;
    364     LONG tmExternalLeading;
    365     LONG tmAveCharWidth;
    366     LONG tmMaxCharWidth;
    367     LONG tmWeight;
    368     LONG tmOverhang;
    369     LONG tmDigitizedAspectX;
    370     LONG tmDigitizedAspectY;
    371     WCHAR tmFirstChar;
    372     WCHAR tmLastChar;
    373     WCHAR tmDefaultChar;
    374     WCHAR tmBreakChar;
    375     BYTE tmItalic;
    376     BYTE tmUnderlined;
    377     BYTE tmStruckOut;
    378     BYTE tmPitchAndFamily;
    379     BYTE tmCharSet;
    380 } TEXTMETRICW;
    381 typedef struct tagTEXTMETRICW *PTEXTMETRICW;
    382 typedef struct tagTEXTMETRICW *LPTEXTMETRICW;
    383 #endif
    384 
    385 #ifndef _WIN32
    386 #ifndef WINAPI
    387 typedef struct tagMSG {
    388     HWND hwnd;
    389     UINT message;
    390     WPARAM wParam;
    391     LPARAM lParam;
    392     DWORD time;
    393     POINT pt;
    394 } MSG;
    395 typedef struct tagMSG *PMSG;
    396 typedef struct tagMSG *NPMSG;
    397 typedef struct tagMSG *LPMSG;
    398 #endif
    399 #endif
    400 
    401 typedef userHBITMAP *wireHBITMAP;
    402 typedef userHPALETTE *wireHPALETTE;
    403 typedef userHENHMETAFILE *wireHENHMETAFILE;
    404 typedef userHMETAFILE *wireHMETAFILE;
    405 typedef userHMETAFILEPICT *wireHMETAFILEPICT;
    406 
    407 #if 0
    408 typedef void *HGLOBAL;
    409 typedef HGLOBAL HLOCAL;
    410 typedef void *HBITMAP;
    411 typedef void *HPALETTE;
    412 typedef void *HENHMETAFILE;
    413 typedef void *HMETAFILE;
    414 #endif
    415 
    416 typedef void *HMETAFILEPICT;
    417 
    418 #endif  /* __IWinTypes_INTERFACE_DEFINED__ */
    419 
    420 
    421 typedef double DATE;
    422 
    423 #ifndef _tagCY_DEFINED
    424 #define _tagCY_DEFINED
    425 #define _CY_DEFINED
    426 
    427 #if 0
    428 typedef struct tagCY {
    429     LONGLONG int64;
    430 } CY;
    431 #else
    432 typedef union tagCY {
    433   __C89_NAMELESS struct {
    434     unsigned __LONG32 Lo;
    435     __LONG32 Hi;
    436   } DUMMYSTRUCTNAME;
    437   LONGLONG int64;
    438 } CY;
    439 #endif
    440 #endif
    441 
    442 typedef CY *LPCY;
    443 
    444 #if 0
    445 typedef struct tagDEC {
    446     USHORT wReserved;
    447     BYTE scale;
    448     BYTE sign;
    449     ULONG Hi32;
    450     ULONGLONG Lo64;
    451 } DECIMAL;
    452 #else
    453 typedef struct tagDEC {
    454   USHORT wReserved;
    455   __C89_NAMELESS union {
    456     __C89_NAMELESS struct {
    457       BYTE scale;
    458       BYTE sign;
    459     } DUMMYSTRUCTNAME;
    460     USHORT signscale;
    461   } DUMMYUNIONNAME;
    462   ULONG Hi32;
    463   __C89_NAMELESS union {
    464     __C89_NAMELESS struct {
    465       ULONG Lo32;
    466       ULONG Mid32;
    467     } DUMMYSTRUCTNAME2;
    468     ULONGLONG Lo64;
    469   } DUMMYUNIONNAME2;
    470 } DECIMAL;
    471 
    472 #define DECIMAL_NEG ((BYTE)0x80)
    473 #define DECIMAL_SETZERO(dec) { (dec).Lo64 = 0; (dec).Hi32 = 0; (dec).signscale = 0; }
    474 #endif
    475 
    476 typedef DECIMAL *LPDECIMAL;
    477 
    478 typedef FLAGGED_WORD_BLOB *wireBSTR;
    479 typedef OLECHAR *BSTR;
    480 
    481 typedef BSTR *LPBSTR;
    482 
    483 typedef short VARIANT_BOOL;
    484 #if 0
    485 typedef VARIANT_BOOL _VARIANT_BOOL;
    486 #else
    487 #define _VARIANT_BOOL /##/
    488 #endif
    489 
    490 #ifndef _tagBSTRBLOB_DEFINED
    491 #define _tagBSTRBLOB_DEFINED
    492 
    493 typedef struct tagBSTRBLOB {
    494     ULONG cbSize;
    495     BYTE *pData;
    496 } BSTRBLOB;
    497 typedef struct tagBSTRBLOB *LPBSTRBLOB;
    498 #endif
    499 
    500 #define VARIANT_TRUE ((VARIANT_BOOL)-1)
    501 #define VARIANT_FALSE ((VARIANT_BOOL)0)
    502 
    503 typedef struct tagCLIPDATA {
    504     ULONG cbSize;
    505     LONG ulClipFmt;
    506     BYTE *pClipData;
    507 } CLIPDATA;
    508 
    509 #define CBPCLIPDATA(clipdata) ((clipdata).cbSize - sizeof((clipdata).ulClipFmt))
    510 
    511 typedef unsigned short VARTYPE;
    512 
    513 enum VARENUM {
    514     VT_EMPTY = 0,
    515     VT_NULL = 1,
    516     VT_I2 = 2,
    517     VT_I4 = 3,
    518     VT_R4 = 4,
    519     VT_R8 = 5,
    520     VT_CY = 6,
    521     VT_DATE = 7,
    522     VT_BSTR = 8,
    523     VT_DISPATCH = 9,
    524     VT_ERROR = 10,
    525     VT_BOOL = 11,
    526     VT_VARIANT = 12,
    527     VT_UNKNOWN = 13,
    528     VT_DECIMAL = 14,
    529     VT_I1 = 16,
    530     VT_UI1 = 17,
    531     VT_UI2 = 18,
    532     VT_UI4 = 19,
    533     VT_I8 = 20,
    534     VT_UI8 = 21,
    535     VT_INT = 22,
    536     VT_UINT = 23,
    537     VT_VOID = 24,
    538     VT_HRESULT = 25,
    539     VT_PTR = 26,
    540     VT_SAFEARRAY = 27,
    541     VT_CARRAY = 28,
    542     VT_USERDEFINED = 29,
    543     VT_LPSTR = 30,
    544     VT_LPWSTR = 31,
    545     VT_RECORD = 36,
    546     VT_INT_PTR = 37,
    547     VT_UINT_PTR = 38,
    548     VT_FILETIME = 64,
    549     VT_BLOB = 65,
    550     VT_STREAM = 66,
    551     VT_STORAGE = 67,
    552     VT_STREAMED_OBJECT = 68,
    553     VT_STORED_OBJECT = 69,
    554     VT_BLOB_OBJECT = 70,
    555     VT_CF = 71,
    556     VT_CLSID = 72,
    557     VT_VERSIONED_STREAM = 73,
    558     VT_BSTR_BLOB = 0xfff,
    559     VT_VECTOR = 0x1000,
    560     VT_ARRAY = 0x2000,
    561     VT_BYREF = 0x4000,
    562     VT_RESERVED = 0x8000,
    563     VT_ILLEGAL = 0xffff,
    564     VT_ILLEGALMASKED = 0xfff,
    565     VT_TYPEMASK = 0xfff
    566 };
    567 
    568 typedef ULONG PROPID;
    569 
    570 #ifndef PROPERTYKEY_DEFINED
    571 #define PROPERTYKEY_DEFINED
    572 
    573 typedef struct _tagpropertykey {
    574     GUID fmtid;
    575     DWORD pid;
    576 } PROPERTYKEY;
    577 #endif
    578 
    579 typedef struct tagCSPLATFORM {
    580     DWORD dwPlatformId;
    581     DWORD dwVersionHi;
    582     DWORD dwVersionLo;
    583     DWORD dwProcessorArch;
    584 } CSPLATFORM;
    585 
    586 typedef struct tagQUERYCONTEXT {
    587     DWORD dwContext;
    588     CSPLATFORM Platform;
    589     LCID Locale;
    590     DWORD dwVersionHi;
    591     DWORD dwVersionLo;
    592 } QUERYCONTEXT;
    593 
    594 typedef enum tagTYSPEC {
    595     TYSPEC_CLSID = 0,
    596     TYSPEC_FILEEXT = 1,
    597     TYSPEC_MIMETYPE = 2,
    598     TYSPEC_FILENAME = 3,
    599     TYSPEC_PROGID = 4,
    600     TYSPEC_PACKAGENAME = 5,
    601     TYSPEC_OBJECTID = 6
    602 } TYSPEC;
    603 
    604 typedef struct __WIDL_wtypes_generated_name_0000000B {
    605     DWORD tyspec;
    606     union __WIDL_wtypes_generated_name_0000000A {
    607         CLSID clsid;
    608         LPOLESTR pFileExt;
    609         LPOLESTR pMimeType;
    610         LPOLESTR pProgId;
    611         LPOLESTR pFileName;
    612         struct {
    613             LPOLESTR pPackageName;
    614             GUID PolicyId;
    615         } ByName;
    616         struct {
    617             GUID ObjectId;
    618             GUID PolicyId;
    619         } ByObjectId;
    620     } tagged_union;
    621 } uCLSSPEC;
    622 /* Begin additional prototypes for all interfaces */
    623 
    624 
    625 /* End additional prototypes */
    626 
    627 #ifdef __cplusplus
    628 }
    629 #endif
    630 
    631 #endif /* __wtypes_h__ */