166 lines
6.1 KiB
PHP
166 lines
6.1 KiB
PHP
;----------------------------------------------------------------------------
|
|
;
|
|
; DCIDDI.INC
|
|
;
|
|
; Copyright (c) 1994 Microsoft Corporation
|
|
;
|
|
; DCI 1.0 Interface Definitions
|
|
;
|
|
;----------------------------------------------------------------------------
|
|
|
|
ifndef _INC_DCIDDI
|
|
_INC_DCIDDI equ 1
|
|
|
|
DCICOMMAND equ 3075 ; GDI Escape for DCI
|
|
DCI_VERSION equ 0x0100 ; version number of DCI 1.0
|
|
|
|
;----------------------------------------------------------------------------
|
|
; DCI command codes.
|
|
;----------------------------------------------------------------------------
|
|
DCICREATEPRIMARYSURFACE equ 1 ; used to create primary surface
|
|
DCICREATEOFFSCREENSURFACE equ 2 ; used to create offscreen surface
|
|
DCICREATEOVERLAYSURFACE equ 3
|
|
DCIENUMSURFACE equ 4 ; used to enumerate
|
|
DCIESCAPE equ 5
|
|
|
|
;----------------------------------------------------------------------------
|
|
; error codes
|
|
;----------------------------------------------------------------------------
|
|
DCI_OK equ 0
|
|
|
|
DCI_FAIL_GENERIC equ (-1)
|
|
DCI_FAIL_UNSUPPORTEDVERSION equ (-2)
|
|
DCI_FAIL_INVALIDSURFACE equ (-3)
|
|
DCI_FAIL_NOTSUPPORTED equ (-4)
|
|
|
|
DCI_ERR_CURRENTLYNOTAVAIL equ (-5)
|
|
DCI_ERR_INVALIDRECT equ (-6)
|
|
DCI_ERR_UNSUPPORTEDFORMAT equ (-7)
|
|
DCI_ERR_UNSUPPORTEDMASK equ (-8)
|
|
DCI_ERR_TOOBIGHEIGHT equ (-9)
|
|
DCI_ERR_TOOBIGWIDTH equ (-10)
|
|
DCI_ERR_TOOBIGSIZE equ (-11)
|
|
DCI_ERR_OUTOFMEMORY equ (-12)
|
|
DCI_ERR_INVALIDPOSITION equ (-13)
|
|
DCI_ERR_INVALIDSTRETCH equ (-14)
|
|
DCI_ERR_INVALIDCLIPLIST equ (-15)
|
|
DCI_ERR_SURFACEISOBSCURED equ (-16)
|
|
DCI_ERR_XALIGN equ (-18)
|
|
DCI_ERR_YALIGN equ (-19)
|
|
DCI_ERR_XYALIGN equ (-20)
|
|
DCI_ERR_WIDTHALIGN equ (-21)
|
|
DCI_ERR_HEIGHTALIGN equ (-22)
|
|
|
|
DCI_STATUS_POINTERCHANGED equ 1
|
|
DCI_STATUS_STRIDECHANGED equ 2
|
|
DCI_STATUS_FORMATCHANGED equ 4
|
|
DCI_STATUS_SURFACEINFOCHANGED equ 8
|
|
DCI_STATUS_CHROMAKEYCHANGED equ 16
|
|
DCI_STATUS_WASSTILLDRAWING equ 32
|
|
|
|
;----------------------------------------------------------------------------
|
|
; Definitions for DCISURFACE::dwFlags
|
|
;----------------------------------------------------------------------------
|
|
DCI_SURFACE_TYPE equ 0000000Fh ; 16 types
|
|
DCI_PRIMARY equ 00000000h ; primary surface
|
|
DCI_OFFSCREEN equ 00000001h ; offscreen surface
|
|
DCI_OVERLAY equ 00000002h ; overlay surface
|
|
|
|
DCI_VISIBLE equ 00000010h ; surface is visible
|
|
DCI_CHROMAKEY equ 00000020h ; chroma key surface
|
|
DCI_1632_ACCESS equ 00000040h ; must access using 16:32 pointers
|
|
DCI_DWORDSIZE equ 00000080h ; support only aligned dest. sizes
|
|
DCI_DWORDALIGN equ 00000100h ; support only aligned dest. positions
|
|
DCI_WRITEONLY equ 00000200h ; write access only.
|
|
DCI_ASYNC equ 00000400h ; supports async draw
|
|
|
|
DCI_CAN_STRETCHX equ 00001000h ; can stretchX
|
|
DCI_CAN_STRETCHY equ 00002000h ; can stretchY
|
|
DCI_CAN_STRETCHXY equ 00003000h ; can stretchXY
|
|
DCI_CAN_STRETCHXN equ 00004000h ; can stretchX by integer
|
|
DCI_CAN_STRETCHYN equ 00008000h ; can stretchY by integer
|
|
DCI_CAN_STRETCHXYN equ 0000C000h ; can stretchXY by integer
|
|
|
|
DCI_CAN_OVERLAY equ 00010000h ; supports overlay.
|
|
|
|
;----------------------------------------------------------------------------
|
|
; common DCI command structure
|
|
;----------------------------------------------------------------------------
|
|
DCICMD struc
|
|
dciCommandCode dd ? ; DCI command
|
|
dciDWParam1 dd ? ; dwParam1
|
|
dciDWParam2 dd ? ; dwParam2
|
|
dciVersion dd ? ; version
|
|
dd ? ; reserved
|
|
DCICMD ends
|
|
|
|
;----------------------------------------------------------------------------
|
|
; used in DCICREATE... calls
|
|
;----------------------------------------------------------------------------
|
|
DCICREATEINPUT struc
|
|
dcicCmd db size DCICMD dup (?)
|
|
dcicDWCompression dd ? ; biCompression
|
|
dcicDWMask dd 3 dup(?) ; BI_BITFIELD masks
|
|
dcicDWWidth dd ? ; width in pixels
|
|
dcicDWHeight dd ? ; height in pixels
|
|
dcicDWDCICaps dd ?
|
|
dcicDWSurface dd ?
|
|
DCICREATEINPUT ends
|
|
|
|
;----------------------------------------------------------------------------
|
|
; used with DCIENUMINPUT
|
|
;----------------------------------------------------------------------------
|
|
DCIENUMINPUT struc
|
|
dcieCmd db size DCICMD dup(?)
|
|
dcieSourceRect dw 4 dup(?) ; source
|
|
dcieDestRect dw 4 dup(?) ; dest
|
|
dcieDWCallback dd ? ; callback
|
|
dcieDWCallbackParam dd ? ; callback lParam
|
|
DCIENUMINPUT ends
|
|
|
|
;----------------------------------------------------------------------------
|
|
; DCISURFACE structure
|
|
;----------------------------------------------------------------------------
|
|
DCISURFACEINFO struc
|
|
dciDWSize dd ?
|
|
dciDWDCICaps dd ?
|
|
dciDWCompression dd ?
|
|
dciDWMasks dd 3 dup(?)
|
|
dciDWWidth dd ?
|
|
dciDWHeight dd ?
|
|
dciLStride dd ?
|
|
dciDWBitCount dd ?
|
|
dciDWOffSurface dd ?
|
|
dciWSelSurface dw ?
|
|
dciWReserved dw ?
|
|
dciDWReserved1 dd ?
|
|
dciDWReserved2 dd ?
|
|
dciDWReserved3 dd ?
|
|
dciDWBeginAccess dd ?
|
|
dciDWEndAccess dd ?
|
|
dciDWDestroySurface dd ?
|
|
DCISURFACEINFO ends
|
|
|
|
;----------------------------------------------------------------------------
|
|
; used with DCICREATEOFFSCREENSURFACE
|
|
;----------------------------------------------------------------------------
|
|
DCIOFFSCREEN struc
|
|
dcioInfo db size DCISURFACEINFO dup (?)
|
|
dcioDWDraw dd ?
|
|
dcioDWSetClipList dd ?
|
|
dcioDWSetDestination dd ?
|
|
DCIOFFSCREEN ends
|
|
|
|
;----------------------------------------------------------------------------
|
|
; used with DCICREATEOVERLAYSURFACE
|
|
;----------------------------------------------------------------------------
|
|
DCIOVERLAY struc
|
|
dcivInfo db size DCISURFACEINFO dup (?)
|
|
dcivDWChromaKeyValue dd (?)
|
|
dcivDWChromaKeyMask dd (?)
|
|
DCIOVERLAY ends
|
|
|
|
endif ; _INC_DCIDDI
|
|
|
|
|