Mercurial > games > semicongine
diff fuhtark_test/include/winapi/dciddi.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 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/fuhtark_test/include/winapi/dciddi.h Wed Nov 26 21:36:48 2025 +0700 @@ -0,0 +1,165 @@ +/** + * This file has no copyright assigned and is placed in the Public Domain. + * This file is part of the w64 mingw-runtime package. + * No warranty is given; refer to the file DISCLAIMER within this package. + */ +#ifndef _INC_DCIDDI +#define _INC_DCIDDI + +#ifdef __cplusplus +extern "C" { +#endif + +#define DCICOMMAND 3075 +#define DCI_VERSION 0x0100 + +#define DCICREATEPRIMARYSURFACE 1 +#define DCICREATEOFFSCREENSURFACE 2 +#define DCICREATEOVERLAYSURFACE 3 +#define DCIENUMSURFACE 4 +#define DCIESCAPE 5 + +#define DCI_OK 0 +#define DCI_FAIL_GENERIC -1 +#define DCI_FAIL_UNSUPPORTEDVERSION -2 +#define DCI_FAIL_INVALIDSURFACE -3 +#define DCI_FAIL_UNSUPPORTED -4 + +#define DCI_ERR_CURRENTLYNOTAVAIL -5 +#define DCI_ERR_INVALIDRECT -6 +#define DCI_ERR_UNSUPPORTEDFORMAT -7 +#define DCI_ERR_UNSUPPORTEDMASK -8 +#define DCI_ERR_TOOBIGHEIGHT -9 +#define DCI_ERR_TOOBIGWIDTH -10 +#define DCI_ERR_TOOBIGSIZE -11 +#define DCI_ERR_OUTOFMEMORY -12 +#define DCI_ERR_INVALIDPOSITION -13 +#define DCI_ERR_INVALIDSTRETCH -14 +#define DCI_ERR_INVALIDCLIPLIST -15 +#define DCI_ERR_SURFACEISOBSCURED -16 +#define DCI_ERR_XALIGN -17 +#define DCI_ERR_YALIGN -18 +#define DCI_ERR_XYALIGN -19 +#define DCI_ERR_WIDTHALIGN -20 +#define DCI_ERR_HEIGHTALIGN -21 + +#define DCI_STATUS_POINTERCHANGED 1 +#define DCI_STATUS_STRIDECHANGED 2 +#define DCI_STATUS_FORMATCHANGED 4 +#define DCI_STATUS_SURFACEINFOCHANGED 8 +#define DCI_STATUS_CHROMAKEYCHANGED 16 +#define DCI_STATUS_WASSTILLDRAWING 32 + +#define DCI_SUCCESS(error) (((DCIRVAL)error) >= 0) + +#define DCI_SURFACE_TYPE 0x0000000F +#define DCI_PRIMARY 0x00000000 +#define DCI_OFFSCREEN 0x00000001 +#define DCI_OVERLAY 0x00000002 +#define DCI_VISIBLE 0x00000010 +#define DCI_CHROMAKEY 0x00000020 +#define DCI_1632_ACCESS 0x00000040 +#define DCI_DWORDSIZE 0x00000080 +#define DCI_DWORDALIGN 0x00000100 +#define DCI_WRITEONLY 0x00000200 +#define DCI_ASYNC 0x00000400 + +#define DCI_CAN_STRETCHX 0x00001000 +#define DCI_CAN_STRETCHY 0x00002000 +#define DCI_CAN_STRETCHXY (DCI_CAN_STRETCHX | DCI_CAN_STRETCHY) + +#define DCI_CAN_STRETCHXN 0x00004000 +#define DCI_CAN_STRETCHYN 0x00008000 +#define DCI_CAN_STRETCHXYN (DCI_CAN_STRETCHXN | DCI_CAN_STRETCHYN) + +#define DCI_CANOVERLAY 0x00010000 + + typedef int DCIRVAL; + + typedef struct _DCICMD { + DWORD dwCommand; + DWORD dwParam1; + DWORD dwParam2; + DWORD dwVersion; + DWORD dwReserved; + } DCICMD; + + typedef struct _DCICREATEINPUT { + DCICMD cmd; + DWORD dwCompression; + DWORD dwMask[3]; + DWORD dwWidth; + DWORD dwHeight; + DWORD dwDCICaps; + DWORD dwBitCount; + LPVOID lpSurface; + } DCICREATEINPUT,*LPDCICREATEINPUT; + + typedef struct _DCISURFACEINFO { + DWORD dwSize; + DWORD dwDCICaps; + DWORD dwCompression; + DWORD dwMask[3]; + DWORD dwWidth; + DWORD dwHeight; + LONG lStride; + DWORD dwBitCount; + ULONG_PTR dwOffSurface; + WORD wSelSurface; + WORD wReserved; + DWORD dwReserved1; + DWORD dwReserved2; + DWORD dwReserved3; + DCIRVAL (CALLBACK *BeginAccess) (LPVOID,LPRECT); + void (CALLBACK *EndAccess) (LPVOID); + void (CALLBACK *DestroySurface) (LPVOID); + } DCISURFACEINFO,*LPDCISURFACEINFO; + + typedef void (*ENUM_CALLBACK)(LPDCISURFACEINFO lpSurfaceInfo,LPVOID lpContext); + + typedef struct _DCIENUMINPUT { + DCICMD cmd; + RECT rSrc; + RECT rDst; + void (CALLBACK *EnumCallback)(LPDCISURFACEINFO,LPVOID); + LPVOID lpContext; + } DCIENUMINPUT,*LPDCIENUMINPUT; + + typedef DCISURFACEINFO DCIPRIMARY,*LPDCIPRIMARY; + + typedef struct _DCIOFFSCREEN { + DCISURFACEINFO dciInfo; + DCIRVAL (CALLBACK *Draw) (LPVOID); + DCIRVAL (CALLBACK *SetClipList) (LPVOID,LPRGNDATA); + DCIRVAL (CALLBACK *SetDestination) (LPVOID,LPRECT,LPRECT); + } DCIOFFSCREEN,*LPDCIOFFSCREEN; + + typedef struct _DCIOVERLAY { + DCISURFACEINFO dciInfo; + DWORD dwChromakeyValue; + DWORD dwChromakeyMask; + } DCIOVERLAY,*LPDCIOVERLAY; + +#ifndef YVU9 +#define YVU9 mmioFOURCC('Y','V','U','9') +#endif +#ifndef Y411 +#define Y411 mmioFOURCC('Y','4','1','1') +#endif +#ifndef YUY2 +#define YUY2 mmioFOURCC('Y','U','Y','2') +#endif +#ifndef YVYU +#define YVYU mmioFOURCC('Y','V','Y','U') +#endif +#ifndef UYVY +#define UYVY mmioFOURCC('U','Y','V','Y') +#endif +#ifndef Y211 +#define Y211 mmioFOURCC('Y','2','1','1') +#endif + +#ifdef __cplusplus +} +#endif +#endif
