hdirect-0.21.0: comlib/StdTypes.idl
//
// Some common
module StdTypes {
cpp_quote("#ifdef __MINGW32__")
cpp_quote("#define __need_wchar_t")
cpp_quote("#include <stddef.h>")
cpp_quote("#endif")
typedef unsigned int UINT;
typedef int INT;
typedef long BOOL;
typedef unsigned char BYTE;
typedef long LONG;
typedef unsigned long ULONG;
typedef unsigned short WORD;
typedef unsigned long DWORD;
typedef unsigned short VARTYPE;
typedef unsigned short USHORT;
typedef DWORD LCID;
typedef LONG SCODE;
typedef short SHORT;
typedef wchar_t WCHAR;
typedef WCHAR TCHAR;
typedef WCHAR OLECHAR;
typedef [string] OLECHAR *LPOLESTR;
typedef [string] const OLECHAR *LPCOLESTR;
typedef void * PVOID, * LPVOID;
typedef float FLOAT;
//
// Annotate GUID, IID and CLSID with [ignore] - don't want
// to generate stubs/types for them. (they're provided by Com.)
//
typedef [ignore]struct _GUID
{
DWORD Data1;
WORD Data2;
WORD Data3;
BYTE Data4[8];
} GUID;
cpp_quote("typedef struct _GUID {")
cpp_quote("DWORD Data1;")
cpp_quote("WORD Data2;")
cpp_quote("WORD Data3;")
cpp_quote("BYTE Data4[8];")
cpp_quote("} GUID;")
typedef [ignore]GUID IID;
cpp_quote("typedef GUID IID;")
typedef IID *LPIID;
typedef [ignore]GUID CLSID;
cpp_quote("typedef GUID CLSID;")
typedef CLSID *LPCLSID;
typedef GUID FMTID;
typedef FMTID *LPFMTID;
typedef [ptr]void* HWND;
typedef [ptr]void* HMENU;
typedef [ptr]void* HANDLE;
typedef [ref]GUID *REFGUID;
typedef [ref]IID *REFIID;
typedef [ref]CLSID *REFCLSID;
typedef [ref]FMTID *REFFMTID;
enum VARENUM
{
VT_EMPTY = 0,
VT_NULL = 1,
VT_I2 = 2,
VT_I4 = 3,
VT_R4 = 4,
VT_R8 = 5,
VT_CY = 6,
VT_DATE = 7,
VT_BSTR = 8,
VT_DISPATCH = 9,
VT_ERROR = 10,
VT_BOOL = 11,
VT_VARIANT = 12,
VT_UNKNOWN = 13,
VT_DECIMAL = 14,
VT_I1 = 16,
VT_UI1 = 17,
VT_UI2 = 18,
VT_UI4 = 19,
VT_I8 = 20,
VT_UI8 = 21,
VT_INT = 22,
VT_UINT = 23,
VT_VOID = 24,
VT_HRESULT = 25,
VT_PTR = 26,
VT_SAFEARRAY = 27,
VT_CARRAY = 28,
VT_USERDEFINED = 29,
VT_LPSTR = 30,
VT_LPWSTR = 31,
VT_FILETIME = 64,
VT_BLOB = 65,
VT_STREAM = 66,
VT_STORAGE = 67,
VT_STREAMED_OBJECT = 68,
VT_STORED_OBJECT = 69,
VT_BLOB_OBJECT = 70,
VT_CF = 71,
VT_CLSID = 72,
VT_BSTR_BLOB = 0x0fff,
VT_VECTOR = 0x1000,
VT_ARRAY = 0x2000,
VT_BYREF = 0x4000,
VT_RESERVED = 0x8000,
VT_ILLEGAL = 0xffff,
VT_ILLEGALMASKED = 0x0fff,
VT_TYPEMASK = 0x0fff
};
}