📄 ddraw.h
字号:
#define DDOVERLAYCAPS_FOURCC 0x00000004
#define DDOVERLAYCAPS_ZORDER 0x00000008
#define DDOVERLAYCAPS_MIRRORLEFTRIGHT 0x00000010
#define DDOVERLAYCAPS_MIRRORUPDOWN 0x00000020
#define DDOVERLAYCAPS_CKEYSRC 0x00000040
#define DDOVERLAYCAPS_CKEYSRCCLRSPACE 0x00000080
#define DDOVERLAYCAPS_CKEYSRCCLRSPACEYUV 0x00000100
#define DDOVERLAYCAPS_CKEYDEST 0x00000200
#define DDOVERLAYCAPS_CKEYDESTCLRSPACE 0x00000400
#define DDOVERLAYCAPS_CKEYDESTCLRSPACEYUV 0x00000800
#define DDOVERLAYCAPS_CKEYBOTH 0x00001000
#define DDOVERLAYCAPS_ALPHADEST 0x00002000
#define DDOVERLAYCAPS_ALPHASRC 0x00008000
#define DDOVERLAYCAPS_ALPHADESTNEG 0x00002000
#define DDOVERLAYCAPS_ALPHASRCNEG 0x00008000
#define DDOVERLAYCAPS_ALPHACONSTANT 0x00010000
#define DDOVERLAYCAPS_ALPHAPREMULT 0x00040000
#define DDOVERLAYCAPS_ALPHANONPREMULT 0x00080000
#define DDOVERLAYCAPS_ALPHAANDKEYDEST 0x00100000
#define DDOVERLAYCAPS_OVERLAYSUPPORT 0x80000000
#define DDOVERLAYCAPS_VALID (DDOVERLAYCAPS_FLIP | \
DDOVERLAYCAPS_FOURCC | \
DDOVERLAYCAPS_ZORDER | \
DDOVERLAYCAPS_MIRRORLEFTRIGHT | \
DDOVERLAYCAPS_MIRRORUPDOWN | \
DDOVERLAYCAPS_CKEYSRC | \
DDOVERLAYCAPS_CKEYSRCCLRSPACE | \
DDOVERLAYCAPS_CKEYSRCCLRSPACEYUV | \
DDOVERLAYCAPS_CKEYDEST | \
DDOVERLAYCAPS_CKEYDESTCLRSPACE | \
DDOVERLAYCAPS_CKEYDESTCLRSPACEYUV | \
DDOVERLAYCAPS_CKEYBOTH | \
DDOVERLAYCAPS_ALPHADEST | \
DDOVERLAYCAPS_ALPHASRC | \
DDOVERLAYCAPS_ALPHADESTNEG | \
DDOVERLAYCAPS_ALPHASRCNEG | \
DDOVERLAYCAPS_ALPHACONSTANT | \
DDOVERLAYCAPS_ALPHAPREMULT | \
DDOVERLAYCAPS_ALPHANONPREMULT | \
DDOVERLAYCAPS_ALPHAANDKEYDEST | \
DDOVERLAYCAPS_OVERLAYSUPPORT)
/*
* Miscellaneous Capability Flags (For DDCAPS dwMiscCaps member)
*/
#define DDMISCCAPS_READSCANLINE 0x00000001
#define DDMISCCAPS_READMONITORFREQ 0x00000002
#define DDMISCCAPS_READVBLANKSTATUS 0x00000004
#define DDMISCCAPS_FLIPINTERVAL 0x00000008
#define DDMISCCAPS_FLIPODDEVEN 0x00000010
#define DDMISCCAPS_FLIPVSYNCWITHVBI 0x00000020
#define DDMISCCAPS_COLORCONTROLOVERLAY 0x00000040
#define DDMISCCAPS_COLORCONTROLPRIMARY 0x00000080
#define DDMISCCAPS_GAMMACONTROLOVERLAY 0x00000100
#define DDMISCCAPS_GAMMACONTROLPRIMARY 0x00000200
#define DDMISCCAPS_VALID (DDMISCCAPS_READSCANLINE | \
DDMISCCAPS_READMONITORFREQ | \
DDMISCCAPS_READVBLANKSTATUS | \
DDMISCCAPS_FLIPINTERVAL | \
DDMISCCAPS_FLIPODDEVEN | \
DDMISCCAPS_FLIPVSYNCWITHVBI | \
DDMISCCAPS_COLORCONTROLOVERLAY | \
DDMISCCAPS_COLORCONTROLPRIMARY | \
DDMISCCAPS_GAMMACONTROLOVERLAY | \
DDMISCCAPS_GAMMACONTROLPRIMARY)
/*
* DirectDraw method flags
*/
/*
* Flags for IDirectDraw::EnumSurfaces
*/
#define DDENUMSURFACES_ALL 0x00000001
#define DDENUMSURFACES_MATCH 0x00000002
#define DDENUMSURFACES_NOMATCH 0x00000004
#define DDENUMSURFACES_CANBECREATED 0x00000008
#define DDENUMSURFACES_DOESEXIST 0x00000010
#define DDENUMSURFACES_VALID (DDENUMSURFACES_ALL | \
DDENUMSURFACES_MATCH | \
DDENUMSURFACES_NOMATCH | \
DDENUMSURFACES_CANBECREATED | \
DDENUMSURFACES_DOESEXIST)
/*
* Flags for IDirectDraw::SetCooperativeLevel
*/
#define DDSCL_NORMAL 0x00000000
#define DDSCL_FULLSCREEN 0x00000001
#define DDSCL_VALID (DDSCL_FULLSCREEN | \
DDSCL_NORMAL)
/*
* Flags for IDirectDraw::WaitForVerticalBlank
*/
#define DDWAITVB_BLOCKBEGIN 0x00000001
#define DDWAITVB_BLOCKEND 0x00000004
#define DDWAITVB_VALID (DDWAITVB_BLOCKBEGIN | \
DDWAITVB_BLOCKEND)
/*
* Flags for IDirectDrawSurface::GetColorKey and IDirectDrawSurface::SetColorKey
*/
#define DDCKEY_COLORSPACE 0x00000001
#define DDCKEY_DESTBLT 0x00000002
#define DDCKEY_DESTOVERLAY 0x00000004
#define DDCKEY_SRCBLT 0x00000008
#define DDCKEY_SRCOVERLAY 0x00000010
#define DDCKEY_VALID (DDCKEY_DESTBLT | \
DDCKEY_DESTOVERLAY | \
DDCKEY_SRCBLT | \
DDCKEY_SRCOVERLAY)
/*
* Flags for IDirectDrawSurface::Blt
*/
#define DDBLT_COLORFILL 0x00000400
#define DDBLT_KEYDEST 0x00002000
#define DDBLT_KEYDESTOVERRIDE 0x00004000
#define DDBLT_KEYSRC 0x00008000
#define DDBLT_KEYSRCOVERRIDE 0x00010000
#define DDBLT_ROP 0x00020000
#define DDBLT_WAITNOTBUSY 0x01000000
#define DDBLT_WAITVSYNC 0x00000001
#define DDBLT_VALID (DDBLT_COLORFILL | \
DDBLT_KEYDEST | \
DDBLT_KEYDESTOVERRIDE | \
DDBLT_KEYSRC | \
DDBLT_KEYSRCOVERRIDE | \
DDBLT_ROP | \
DDBLT_WAITNOTBUSY | \
DDBLT_WAITVSYNC)
/*
* Flags for IDirectDrawSurface::AlphaBlt
*/
#define DDABLT_NOBLEND 0x02000000
#define DDABLT_COLORFILL 0x00100000
#define DDABLT_ALPHADESTNEG 0x00000004
#define DDABLT_ALPHASRCNEG 0x00000080
#define DDABLT_WAITNOTBUSY 0x01000000
#define DDABLT_WAITVSYNC 0x00000001
#define DDABLT_VALID (DDABLT_NOBLEND | \
DDABLT_COLORFILL | \
DDABLT_ALPHADESTNEG | \
DDABLT_ALPHASRCNEG | \
DDABLT_WAITNOTBUSY | \
DDABLT_WAITVSYNC)
/*
* Flags for IDirectDrawSurface::Flip
*/
#define DDFLIP_EVEN 0x00000002
#define DDFLIP_ODD 0x00000004
#define DDFLIP_INTERVAL1 0x01000000
#define DDFLIP_INTERVAL2 0x02000000
#define DDFLIP_INTERVAL4 0x04000000
#define DDFLIP_WAITNOTBUSY 0x00000008
#define DDFLIP_WAITVSYNC 0x00000001
#define DDFLIP_VALID (DDFLIP_EVEN | \
DDFLIP_ODD | \
DDFLIP_INTERVAL1 | \
DDFLIP_INTERVAL2 | \
DDFLIP_INTERVAL4 | \
DDFLIP_WAITNOTBUSY | \
DDFLIP_WAITVSYNC)
#define DDFLIP_INTERVAL3 (DDFLIP_INTERVAL1 | \
DDFLIP_INTERVAL2)
#define DDFLIP_INTERVALMASK (DDFLIP_INTERVAL1 | \
DDFLIP_INTERVAL2 | \
DDFLIP_INTERVAL4)
/*
* Flag values for IDirectDrawSurface::UpdateOverlay
*/
#define DDOVER_ALPHADEST 0x00000001
#define DDOVER_ALPHADESTNEG 0x00000002
#define DDOVER_ALPHASRC 0x00000004
#define DDOVER_ALPHASRCNEG 0x00000008
#define DDOVER_ALPHACONSTOVERRIDE 0x00000010
#define DDOVER_HIDE 0x00000020
#define DDOVER_KEYDEST 0x00000040
#define DDOVER_KEYDESTOVERRIDE 0x00000080
#define DDOVER_KEYSRC 0x00000100
#define DDOVER_KEYSRCOVERRIDE 0x00000200
#define DDOVER_SHOW 0x00000400
#define DDOVER_MIRRORLEFTRIGHT 0x00001000
#define DDOVER_MIRRORUPDOWN 0x00002000
#define DDOVER_WAITNOTBUSY 0x00004000
#define DDOVER_WAITVSYNC 0x00008000
#define DDOVER_VALID (DDOVER_ALPHADEST | \
DDOVER_ALPHADESTNEG | \
DDOVER_ALPHASRC | \
DDOVER_ALPHASRCNEG | \
DDOVER_ALPHACONSTOVERRIDE | \
DDOVER_HIDE | \
DDOVER_KEYDEST | \
DDOVER_KEYDESTOVERRIDE | \
DDOVER_KEYSRC | \
DDOVER_KEYSRCOVERRIDE | \
DDOVER_SHOW | \
DDOVER_MIRRORLEFTRIGHT | \
DDOVER_MIRRORUPDOWN | \
DDOVER_WAITNOTBUSY | \
DDOVER_WAITVSYNC)
/*
* Flags for IDirectDrawSurface::Lock
*/
#define DDLOCK_READONLY 0x00000001
#define DDLOCK_WRITEONLY 0x00000002
#define DDLOCK_DISCARD 0x00000004
#define DDLOCK_WAITNOTBUSY 0x00000008
#define DDLOCK_VALID (DDLOCK_READONLY | \
DDLOCK_WRITEONLY | \
DDLOCK_DISCARD | \
DDLOCK_WAITNOTBUSY)
/*
* Flags for IDirectDrawSurface::GetFlipStatus
*/
#define DDGFS_CANFLIP 0x00000001
#define DDGFS_ISFLIPDONE 0x00000002
#define DDGFS_VALID (DDGFS_CANFLIP | \
DDGFS_ISFLIPDONE)
/*
* Flags for IDirectDrawSurface::GetBltStatus
*/
#define DDGBS_CANBLT 0x00000001
#define DDGBS_ISBLTDONE 0x00000002
#define DDGBS_VALID (DDGBS_CANBLT | \
DDGBS_ISBLTDONE)
/*
* Flags for IDirectDrawSurface::EnumOverlayZOrders
*/
#define DDENUMOVERLAYZ_FRONTTOBACK 0x00000001
#define DDENUMOVERLAYZ_VALID DDENUMOVERLAYZ_FRONTTOBACK
/*
* Flags for IDirectDrawSurface::UpdateOverlayZOrder
*/
#define DDOVERZ_SENDTOFRONT 0x00000000
#define DDOVERZ_SENDTOBACK 0x00000001
#define DDOVERZ_MOVEFORWARD 0x00000002
#define DDOVERZ_MOVEBACKWARD 0x00000003
#define DDOVERZ_INSERTINFRONTOF 0x00000004
#define DDOVERZ_INSERTINBACKOF 0x00000005
/*
* DirectDraw Return Codes
*/
/*
* Enumeration function return values.
*/
#define DDENUMRET_CANCEL ((HRESULT)(0))
#define DDENUMRET_OK ((HRESULT)(1))
/*
* DirectDraw error codes.
*/
#define _FACDD 0x876
#define MAKE_DDHRESULT( code ) MAKE_HRESULT( 1, _FACDD, code )
#define DD_OK NOERROR
#define DDERR_CURRENTLYNOTAVAIL MAKE_DDHRESULT( 40 )
#define DDERR_GENERIC E_FAIL
#define DDERR_HEIGHTALIGN MAKE_DDHRESULT( 90 )
#define DDERR_INCOMPATIBLEPRIMARY MAKE_DDHRESULT( 95 )
#define DDERR_INVALIDCAPS MAKE_DDHRESULT( 100 )
#define DDERR_INVALIDCLIPLIST MAKE_DDHRESULT( 110 )
#define DDERR_INVALIDMODE MAKE_DDHRESULT( 120 )
#define DDERR_INVALIDOBJECT MAKE_DDHRESULT( 130 )
#define DDERR_INVALIDPARAMS E_INVALIDARG
#define DDERR_INVALIDPIXELFORMAT MAKE_DDHRESULT( 145 )
#define DDERR_INVALIDRECT MAKE_DDHRESULT( 150 )
#define DDERR_LOCKEDSURFACES MAKE_DDHRESULT( 160 )
#define DDERR_NOCLIPLIST MAKE_DDHRESULT( 205 )
#define DDERR_NOALPHAHW MAKE_DDHRESULT( 180 )
#define DDERR_NOCOLORCONVHW MAKE_DDHRESULT( 210 )
#define DDERR_NOCOOPERATIVELEVELSET MAKE_DDHRESULT( 212 )
#define DDERR_NOCOLORKEYHW MAKE_DDHRESULT( 215 )
#define DDERR_NOFLIPHW MAKE_DDHRESULT( 230 )
#define DDERR_NOTFOUND MAKE_DDHRESULT( 255 )
#define DDERR_NOOVERLAYHW MAKE_DDHRESULT( 260 )
#define DDERR_OVERLAPPINGRECTS MAKE_DDHRESULT( 270 )
#define DDERR_NORASTEROPHW MAKE_DDHRESULT( 280 )
#define DDERR_NOSTRETCHHW MAKE_DDHRESULT( 310 )
#define DDERR_NOVSYNCHW MAKE_DDHRESULT( 335 )
#define DDERR_NOZOVERLAYHW MAKE_DDHRESULT( 350 )
#define DDERR_OUTOFCAPS MAKE_DDHRESULT( 360 )
#define DDERR_OUTOFMEMORY E_OUTOFMEMORY
#define DDERR_OUTOFVIDEOMEMORY MAKE_DDHRESULT( 380 )
#define DDERR_PALETTEBUSY MAKE_DDHRESULT( 387 )
#define DDERR_COLORKEYNOTSET MAKE_DDHRESULT( 400 )
#define DDERR_SURFACEBUSY MAKE_DDHRESULT( 430 )
#define DDERR_CANTLOCKSURFACE MAKE_DDHRESULT( 435 )
#define DDERR_SURFACELOST MAKE_DDHRESULT( 450 )
#define DDERR_TOOBIGHEIGHT MAKE_DDHRESULT( 470 )
#define DDERR_TOOBIGSIZE MAKE_DDHRESULT( 480 )
#define DDERR_TOOBIGWIDTH MAKE_DDHRESULT( 490 )
#define DDERR_UNSUPPORTED E_NOTIMPL
#define DDERR_UNSUPPORTEDFORMAT MAKE_DDHRESULT( 536 )
#define DDERR_VERTICALBLANKINPROGRESS MAKE_DDHRESULT( 537 )
#define DDERR_WASSTILLDRAWING MAKE_DDHRESULT( 540 )
#define DDERR_DIRECTDRAWALREADYCREATED MAKE_DDHRESULT( 562 )
#define DDERR_PRIMARYSURFACEALREADYEXISTS MAKE_DDHRESULT( 564 )
#define DDERR_REGIONTOOSMALL MAKE_DDHRESULT( 566 )
#define DDERR_CLIPPERISUSINGHWND MAKE_DDHRESULT( 567 )
#define DDERR_NOCLIPPERATTACHED MAKE_DDHRESULT( 568 )
#define DDERR_NOPALETTEATTACHED MAKE_DDHRESULT( 572 )
#define DDERR_NOPALETTEHW MAKE_DDHRESULT( 573 )
#define DDERR_NOBLTHW MAKE_DDHRESULT( 575 )
#define DDERR_OVERLAYNOTVISIBLE MAKE_DDHRESULT( 577 )
#define DDERR_NOOVERLAYDEST MAKE_DDHRESULT( 578 )
#define DDERR_INVALIDPOSITION MAKE_DDHRESULT( 579 )
#define DDERR_NOTAOVERLAYSURFACE MAKE_DDHRESULT( 580 )
#define DDERR_EXCLUSIVEMODEALREADYSET MAKE_DDHRESULT( 581 )
#define DDERR_NOTFLIPPABLE MAKE_DDHRESULT( 582 )
#define DDERR_NOTLOCKED MAKE_DDHRESULT( 584 )
#define DDERR_CANTCREATEDC MAKE_DDHRESULT( 585 )
#define DDERR_NODC MAKE_DDHRESULT( 586 )
#define DDERR_WRONGMODE MAKE_DDHRESULT( 587 )
#define DDERR_IMPLICITLYCREATED MAKE_DDHRESULT( 588 )
#define DDERR_NOTPALETTIZED MAKE_DDHRESULT( 589 )
#define DDERR_DCALREADYCREATED MAKE_DDHRESULT( 620 )
#define DDERR_MOREDATA MAKE_DDHRESULT( 690 )
#define DDERR_VIDEONOTACTIVE MAKE_DDHRESULT( 695 )
#define DDERR_DEVICEDOESNTOWNSURFACE MAKE_DDHRESULT( 699 )
#ifdef __cplusplus
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -