Mercurial > games > semicongine
comparison fuhtark_test/include/winapi/basetyps.h @ 1500:91c8c3b7cbf0
add: futhark tests for generating vulkan api
| author | sam <sam@basx.dev> |
|---|---|
| date | Wed, 26 Nov 2025 21:36:48 +0700 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 1499:1f58458b7ef7 | 1500:91c8c3b7cbf0 |
|---|---|
| 1 /** | |
| 2 * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 * This file is part of the w64 mingw-runtime package. | |
| 4 * No warranty is given; refer to the file DISCLAIMER within this package. | |
| 5 */ | |
| 6 #if !defined(_BASETYPS_H_) | |
| 7 #define _BASETYPS_H_ | |
| 8 | |
| 9 #ifdef __cplusplus | |
| 10 #define EXTERN_C extern "C" | |
| 11 #else | |
| 12 #define EXTERN_C extern | |
| 13 #endif | |
| 14 | |
| 15 #define STDMETHODCALLTYPE WINAPI | |
| 16 #define STDMETHODVCALLTYPE __cdecl | |
| 17 | |
| 18 #define STDAPICALLTYPE WINAPI | |
| 19 #define STDAPIVCALLTYPE __cdecl | |
| 20 | |
| 21 #define STDAPI EXTERN_C HRESULT WINAPI | |
| 22 #define STDAPI_(type) EXTERN_C type WINAPI | |
| 23 | |
| 24 #define STDMETHODIMP HRESULT WINAPI | |
| 25 #define STDMETHODIMP_(type) type WINAPI | |
| 26 | |
| 27 #define STDAPIV EXTERN_C HRESULT STDAPIVCALLTYPE | |
| 28 #define STDAPIV_(type) EXTERN_C type STDAPIVCALLTYPE | |
| 29 | |
| 30 #define STDMETHODIMPV HRESULT STDMETHODVCALLTYPE | |
| 31 #define STDMETHODIMPV_(type) type STDMETHODVCALLTYPE | |
| 32 | |
| 33 #if defined(__cplusplus) && !defined(CINTERFACE) | |
| 34 | |
| 35 #define __STRUCT__ struct | |
| 36 #define STDMETHOD(method) virtual HRESULT WINAPI method | |
| 37 #define STDMETHOD_(type,method) virtual type WINAPI method | |
| 38 #define STDMETHODV(method) virtual HRESULT STDMETHODVCALLTYPE method | |
| 39 #define STDMETHODV_(type,method) virtual type STDMETHODVCALLTYPE method | |
| 40 #define PURE = 0 | |
| 41 #define THIS_ | |
| 42 #define THIS void | |
| 43 #define DECLARE_INTERFACE(iface) __STRUCT__ iface | |
| 44 #define DECLARE_INTERFACE_(iface,baseiface) __STRUCT__ iface : public baseiface | |
| 45 #else | |
| 46 | |
| 47 #ifndef __OBJC__ | |
| 48 #define interface struct | |
| 49 #endif | |
| 50 | |
| 51 #define STDMETHOD(method) HRESULT (WINAPI *method) | |
| 52 #define STDMETHOD_(type,method) type (WINAPI *method) | |
| 53 #define STDMETHODV(method) HRESULT (STDMETHODVCALLTYPE *method) | |
| 54 #define STDMETHODV_(type,method) type (STDMETHODVCALLTYPE *method) | |
| 55 | |
| 56 #define PURE | |
| 57 #define THIS_ INTERFACE *This, | |
| 58 #define THIS INTERFACE *This | |
| 59 #ifdef CONST_VTABLE | |
| 60 #define DECLARE_INTERFACE(iface) typedef struct iface { \ | |
| 61 const struct iface##Vtbl *lpVtbl; } iface; \ | |
| 62 typedef const struct iface##Vtbl iface##Vtbl; \ | |
| 63 const struct iface##Vtbl | |
| 64 #else | |
| 65 #define DECLARE_INTERFACE(iface) typedef struct iface { \ | |
| 66 struct iface##Vtbl *lpVtbl; \ | |
| 67 } iface; \ | |
| 68 typedef struct iface##Vtbl iface##Vtbl; \ | |
| 69 struct iface##Vtbl | |
| 70 #endif | |
| 71 #define DECLARE_INTERFACE_(iface,baseiface) DECLARE_INTERFACE(iface) | |
| 72 #endif | |
| 73 | |
| 74 #include <guiddef.h> | |
| 75 | |
| 76 #ifndef _ERROR_STATUS_T_DEFINED | |
| 77 #define _ERROR_STATUS_T_DEFINED | |
| 78 typedef unsigned long error_status_t; | |
| 79 #endif | |
| 80 | |
| 81 #ifndef _WCHAR_T_DEFINED | |
| 82 typedef unsigned short wchar_t; | |
| 83 #define _WCHAR_T_DEFINED | |
| 84 #endif | |
| 85 #endif |
