21#ifndef __WINE_D3D9TYPES_H
22#define __WINE_D3D9TYPES_H
31#define D3DCLEAR_TARGET 0x00000001L
32#define D3DCLEAR_ZBUFFER 0x00000002L
33#define D3DCLEAR_STENCIL 0x00000004L
35#define D3DCLIPPLANE0 (1 << 0)
36#define D3DCLIPPLANE1 (1 << 1)
37#define D3DCLIPPLANE2 (1 << 2)
38#define D3DCLIPPLANE3 (1 << 3)
39#define D3DCLIPPLANE4 (1 << 4)
40#define D3DCLIPPLANE5 (1 << 5)
42#define D3DCOLOR_ARGB(a,r,g,b) ((D3DCOLOR)((((a)&0xffu)<<24)|(((r)&0xffu)<<16)|(((g)&0xffu)<<8)|((b)&0xffu)))
43#define D3DCOLOR_COLORVALUE(r,g,b,a) D3DCOLOR_RGBA((DWORD)((r)*255.f),(DWORD)((g)*255.f),(DWORD)((b)*255.f),(DWORD)((a)*255.f))
44#define D3DCOLOR_RGBA(r,g,b,a) D3DCOLOR_ARGB(a,r,g,b)
45#define D3DCOLOR_XRGB(r,g,b) D3DCOLOR_ARGB(0xff,r,g,b)
46#define D3DCOLOR_XYUV(y,u,v) D3DCOLOR_ARGB(0xFF,y,u,v)
47#define D3DCOLOR_AYUV(a,y,u,v) D3DCOLOR_ARGB(a,y,u,v)
49#define D3DCS_LEFT 0x001L
50#define D3DCS_RIGHT 0x002L
51#define D3DCS_TOP 0x004L
52#define D3DCS_BOTTOM 0x008L
53#define D3DCS_FRONT 0x010L
54#define D3DCS_BACK 0x020L
55#define D3DCS_PLANE0 0x040L
56#define D3DCS_PLANE1 0x080L
57#define D3DCS_PLANE2 0x100L
58#define D3DCS_PLANE3 0x200L
59#define D3DCS_PLANE4 0x400L
60#define D3DCS_PLANE5 0x800L
61#define D3DCS_ALL 0xFFFL
63#define D3DFVF_TEXTUREFORMAT1 3u
64#define D3DFVF_TEXTUREFORMAT2 0u
65#define D3DFVF_TEXTUREFORMAT3 1u
66#define D3DFVF_TEXTUREFORMAT4 2u
67#define D3DFVF_TEXCOORDSIZE1(CoordIndex) (D3DFVF_TEXTUREFORMAT1 << (CoordIndex*2 + 16))
68#define D3DFVF_TEXCOORDSIZE2(CoordIndex) (D3DFVF_TEXTUREFORMAT2)
69#define D3DFVF_TEXCOORDSIZE3(CoordIndex) (D3DFVF_TEXTUREFORMAT3 << (CoordIndex*2 + 16))
70#define D3DFVF_TEXCOORDSIZE4(CoordIndex) (D3DFVF_TEXTUREFORMAT4 << (CoordIndex*2 + 16))
72#define D3DLOCK_READONLY 0x0010
73#define D3DLOCK_NOSYSLOCK 0x0800
74#define D3DLOCK_NOOVERWRITE 0x1000
75#define D3DLOCK_DISCARD 0x2000
76#define D3DLOCK_DONOTWAIT 0x4000
77#define D3DLOCK_NO_DIRTY_UPDATE 0x8000
79#define D3DMAXUSERCLIPPLANES 32
80#define D3DCLIPPLANE0 (1 << 0)
81#define D3DCLIPPLANE1 (1 << 1)
82#define D3DCLIPPLANE2 (1 << 2)
83#define D3DCLIPPLANE3 (1 << 3)
84#define D3DCLIPPLANE4 (1 << 4)
85#define D3DCLIPPLANE5 (1 << 5)
88#define D3DRENDERSTATE_WRAPBIAS 128UL
91#define D3DTSS_TCI_PASSTHRU 0x00000
92#define D3DTSS_TCI_CAMERASPACENORMAL 0x10000
93#define D3DTSS_TCI_CAMERASPACEPOSITION 0x20000
94#define D3DTSS_TCI_CAMERASPACEREFLECTIONVECTOR 0x30000
95#define D3DTSS_TCI_SPHEREMAP 0x40000
98#define D3DTS_WORLD D3DTS_WORLDMATRIX(0)
99#define D3DTS_WORLD1 D3DTS_WORLDMATRIX(1)
100#define D3DTS_WORLD2 D3DTS_WORLDMATRIX(2)
101#define D3DTS_WORLD3 D3DTS_WORLDMATRIX(3)
102#define D3DTS_WORLDMATRIX(index) (D3DTRANSFORMSTATETYPE)(index + 256)
104#define D3DUSAGE_RENDERTARGET 0x00000001L
105#define D3DUSAGE_DEPTHSTENCIL 0x00000002L
106#define D3DUSAGE_WRITEONLY 0x00000008L
107#define D3DUSAGE_SOFTWAREPROCESSING 0x00000010L
108#define D3DUSAGE_DONOTCLIP 0x00000020L
109#define D3DUSAGE_POINTS 0x00000040L
110#define D3DUSAGE_RTPATCHES 0x00000080L
111#define D3DUSAGE_NPATCHES 0x00000100L
112#define D3DUSAGE_DYNAMIC 0x00000200L
113#define D3DUSAGE_AUTOGENMIPMAP 0x00000400L
114#define D3DUSAGE_DMAP 0x00004000L
116#define D3DUSAGE_QUERY_FILTER 0x00020000L
117#define D3DUSAGE_QUERY_LEGACYBUMPMAP 0x00008000L
118#define D3DUSAGE_QUERY_POSTPIXELSHADER_BLENDING 0x00080000L
119#define D3DUSAGE_QUERY_SRGBREAD 0x00010000L
120#define D3DUSAGE_QUERY_SRGBWRITE 0x00040000L
121#define D3DUSAGE_QUERY_VERTEXTEXTURE 0x00100000L
122#define D3DUSAGE_QUERY_WRAPANDMIP 0x00200000L
127#define D3DWRAPCOORD_0 1
128#define D3DWRAPCOORD_1 2
129#define D3DWRAPCOORD_2 4
130#define D3DWRAPCOORD_3 8
132#define MAX_DEVICE_IDENTIFIER_STRING 512
134#define D3DFVF_RESERVED0 0x0001
135#define D3DFVF_POSITION_MASK 0x400E
136#define D3DFVF_XYZ 0x0002
137#define D3DFVF_XYZRHW 0x0004
138#define D3DFVF_XYZB1 0x0006
139#define D3DFVF_XYZB2 0x0008
140#define D3DFVF_XYZB3 0x000a
141#define D3DFVF_XYZB4 0x000c
142#define D3DFVF_XYZB5 0x000e
143#define D3DFVF_XYZW 0x4002
144#define D3DFVF_NORMAL 0x0010
145#define D3DFVF_PSIZE 0x0020
146#define D3DFVF_DIFFUSE 0x0040
147#define D3DFVF_SPECULAR 0x0080
148#define D3DFVF_TEXCOUNT_MASK 0x0f00
149#define D3DFVF_TEXCOUNT_SHIFT 8
150#define D3DFVF_TEX0 0x0000
151#define D3DFVF_TEX1 0x0100
152#define D3DFVF_TEX2 0x0200
153#define D3DFVF_TEX3 0x0300
154#define D3DFVF_TEX4 0x0400
155#define D3DFVF_TEX5 0x0500
156#define D3DFVF_TEX6 0x0600
157#define D3DFVF_TEX7 0x0700
158#define D3DFVF_TEX8 0x0800
159#define D3DFVF_LASTBETA_UBYTE4 0x1000
160#define D3DFVF_LASTBETA_D3DCOLOR 0x8000
161#define D3DFVF_RESERVED2 0x6000
163#define D3DTA_SELECTMASK 0x0000000f
164#define D3DTA_DIFFUSE 0x00000000
165#define D3DTA_CURRENT 0x00000001
166#define D3DTA_TEXTURE 0x00000002
167#define D3DTA_TFACTOR 0x00000003
168#define D3DTA_SPECULAR 0x00000004
169#define D3DTA_TEMP 0x00000005
170#define D3DTA_CONSTANT 0x00000006
171#define D3DTA_COMPLEMENT 0x00000010
172#define D3DTA_ALPHAREPLICATE 0x00000020
174#define D3DCOLORWRITEENABLE_RED (1L<<0)
175#define D3DCOLORWRITEENABLE_GREEN (1L<<1)
176#define D3DCOLORWRITEENABLE_BLUE (1L<<2)
177#define D3DCOLORWRITEENABLE_ALPHA (1L<<3)
179#define D3DPV_DONOTCOPYDATA (1 << 0)
181#define D3DSTREAMSOURCE_INDEXEDDATA (1u << 30)
182#define D3DSTREAMSOURCE_INSTANCEDATA (2u << 30)
184#define D3D_MAX_SIMULTANEOUS_RENDERTARGETS 4
186#define MAXD3DDECLLENGTH 64
187#define MAXD3DDECLMETHOD D3DDECLMETHOD_LOOKUPPRESAMPLED
188#define MAXD3DDECLTYPE D3DDECLTYPE_UNUSED
189#define MAXD3DDECLUSAGE D3DDECLUSAGE_SAMPLE
190#define MAXD3DDECLUSAGEINDEX 15
192#define D3DDMAPSAMPLER 256
193#define D3DVERTEXTEXTURESAMPLER0 (D3DDMAPSAMPLER+1)
194#define D3DVERTEXTEXTURESAMPLER1 (D3DDMAPSAMPLER+2)
195#define D3DVERTEXTEXTURESAMPLER2 (D3DDMAPSAMPLER+3)
196#define D3DVERTEXTEXTURESAMPLER3 (D3DDMAPSAMPLER+4)
199#define MAKEFOURCC(ch0, ch1, ch2, ch3) \
200 ((DWORD)(BYTE)(ch0) | ((DWORD)(BYTE)(ch1) << 8) | \
201 ((DWORD)(BYTE)(ch2) << 16) | ((DWORD)(BYTE)(ch3) << 24 ))
206#define D3DPRESENTFLAG_LOCKABLE_BACKBUFFER 0x00000001
207#define D3DPRESENTFLAG_DISCARD_DEPTHSTENCIL 0x00000002
208#define D3DPRESENTFLAG_DEVICECLIP 0x00000004
209#define D3DPRESENTFLAG_VIDEO 0x00000010
210#define D3DPRESENTFLAG_NOAUTOROTATE 0x00000020
211#define D3DPRESENTFLAG_UNPRUNEDMODE 0x00000040
213#define D3DPRESENT_RATE_DEFAULT 0x00000000
236#define D3DMAXDECLUSAGE D3DDECLUSAGE_SAMPLE
237#define D3DMAXDECLUSAGEINDEX 15
238#define D3DMAXDECLLENGTH 18
239#define D3DMAXDECLUSAGE_DX8 D3DDECLUSAGE_TEXCOORD
252#define D3DMAXDECLMETHOD D3DDECLMETHOD_LOOKUPPRESAMPLED
276#define D3DMAXDECLTYPE D3DDECLTYPE_UNUSED
306#define D3DISSUE_BEGIN (1 << 1)
307#define D3DISSUE_END (1 << 0)
308#define D3DGETDATA_FLUSH (1 << 0)
311#define D3DDECL_END() {0xFF,0,D3DDECLTYPE_UNUSED,0,0,0}
312#define D3DDP_MAXTEXCOORD 8
315#define D3DVSD_MAKETOKENTYPE(TokenType) \
316 ((TokenType << D3DVSD_TOKENTYPESHIFT) & D3DVSD_TOKENTYPEMASK)
318#define D3DVSD_CONST(ConstantAddress, Count) \
319 (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_CONSTMEM) | ((Count) << D3DVSD_CONSTCOUNTSHIFT) | (ConstantAddress))
321#define D3DVSD_END() 0xFFFFFFFF
323#define D3DVSD_NOP() 0x00000000
325#define D3DVSD_REG(VertexRegister, Type) \
326 (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_STREAMDATA) | ((Type) << D3DVSD_DATATYPESHIFT) | (VertexRegister))
328#define D3DVSD_SKIP(Count) \
329 (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_STREAMDATA) | 0x10000000 | ((Count) << D3DVSD_SKIPCOUNTSHIFT))
331#define D3DVSD_STREAM(StreamNumber) \
332 (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_STREAM) | (StreamNumber))
334#define D3DVSD_STREAM_TESS() \
335 (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_STREAM) | (D3DVSD_STREAMTESSMASK))
337#define D3DVSD_TESSNORMAL(RegisterIn, RegisterOut) \
338 (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_TESSELLATOR) | ((RegisterIn) << D3DVSD_VERTEXREGINSHIFT) | ((0x02) << D3DVSD_DATATYPESHIFT) | (RegisterOut))
340#define D3DVSD_TESSUV(Register) \
341 (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_TESSELLATOR) | 0x10000000 | ((0x01) << D3DVSD_DATATYPESHIFT) | (Register))
349#define D3DDP_MAXTEXCOORD 8
352#define D3DSI_OPCODE_MASK 0x0000FFFF
353#define D3DSI_INSTLENGTH_MASK 0x0F000000
354#define D3DSI_INSTLENGTH_SHIFT 24
449#define D3DSINCOSCONST1 -1.5500992e-006f, -2.1701389e-005f, 0.0026041667f, 0.00026041668f
450#define D3DSINCOSCONST2 -0.020833334f, -0.12500000f, 1.0f, 0.50000000f
452#define D3DSHADER_INSTRUCTION_PREDICATED (1 << 28)
454#define D3DSI_TEXLD_PROJECT 0x00010000
455#define D3DSI_TEXLD_BIAS 0x00020000
458#define D3DSI_COISSUE 0x40000000
460#define D3DSP_DCL_USAGE_SHIFT 0
461#define D3DSP_DCL_USAGE_MASK 0x0000000f
463#define D3DSP_DCL_USAGEINDEX_SHIFT 16
464#define D3DSP_DCL_USAGEINDEX_MASK 0x000f0000
466#define D3DSP_TEXTURETYPE_SHIFT 27
467#define D3DSP_TEXTURETYPE_MASK 0x78000000
479#define D3DSP_REGNUM_MASK 0x000007FF
482#define D3DSP_WRITEMASK_0 0x00010000
483#define D3DSP_WRITEMASK_1 0x00020000
484#define D3DSP_WRITEMASK_2 0x00040000
485#define D3DSP_WRITEMASK_3 0x00080000
486#define D3DSP_WRITEMASK_ALL 0x000F0000
488#define D3DSP_DSTMOD_SHIFT 20
489#define D3DSP_DSTMOD_MASK (0xF << D3DSP_DSTMOD_SHIFT)
501#define D3DSP_DSTSHIFT_SHIFT 24
502#define D3DSP_DSTSHIFT_MASK (0xF << D3DSP_DSTSHIFT_SHIFT)
505#define D3DSP_REGTYPE_SHIFT 28
506#define D3DSP_REGTYPE_SHIFT2 8
507#define D3DSP_REGTYPE_MASK (0x7 << D3DSP_REGTYPE_SHIFT)
508#define D3DSP_REGTYPE_MASK2 0x00001800
550#define D3DVS_ADDRESSMODE_SHIFT 13
551#define D3DVS_ADDRESSMODE_MASK (0x1 << D3DVS_ADDRESSMODE_SHIFT)
560#define D3DSHADER_ADDRESSMODE_SHIFT 13
561#define D3DSHADER_ADDRESSMODE_MASK (1 << D3DSHADER_ADDRESSMODE_SHIFT)
571#define D3DVS_SWIZZLE_SHIFT 16
572#define D3DVS_SWIZZLE_MASK (0xFF << D3DVS_SWIZZLE_SHIFT)
574#define D3DSP_SWIZZLE_SHIFT 16
575#define D3DSP_SWIZZLE_MASK (0xFF << D3DSP_SWIZZLE_SHIFT)
577#define D3DVS_X_X (0 << D3DVS_SWIZZLE_SHIFT)
578#define D3DVS_X_Y (1 << D3DVS_SWIZZLE_SHIFT)
579#define D3DVS_X_Z (2 << D3DVS_SWIZZLE_SHIFT)
580#define D3DVS_X_W (3 << D3DVS_SWIZZLE_SHIFT)
582#define D3DVS_Y_X (0 << (D3DVS_SWIZZLE_SHIFT + 2))
583#define D3DVS_Y_Y (1 << (D3DVS_SWIZZLE_SHIFT + 2))
584#define D3DVS_Y_Z (2 << (D3DVS_SWIZZLE_SHIFT + 2))
585#define D3DVS_Y_W (3 << (D3DVS_SWIZZLE_SHIFT + 2))
587#define D3DVS_Z_X (0 << (D3DVS_SWIZZLE_SHIFT + 4))
588#define D3DVS_Z_Y (1 << (D3DVS_SWIZZLE_SHIFT + 4))
589#define D3DVS_Z_Z (2 << (D3DVS_SWIZZLE_SHIFT + 4))
590#define D3DVS_Z_W (3 << (D3DVS_SWIZZLE_SHIFT + 4))
592#define D3DVS_W_X (0 << (D3DVS_SWIZZLE_SHIFT + 6))
593#define D3DVS_W_Y (1 << (D3DVS_SWIZZLE_SHIFT + 6))
594#define D3DVS_W_Z (2 << (D3DVS_SWIZZLE_SHIFT + 6))
595#define D3DVS_W_W (3 << (D3DVS_SWIZZLE_SHIFT + 6))
597#define D3DVS_NOSWIZZLE (D3DVS_X_X | D3DVS_Y_Y | D3DVS_Z_Z | D3DVS_W_W)
599#define D3DSP_NOSWIZZLE \
600 ((0 << (D3DSP_SWIZZLE_SHIFT + 0)) | (1 << (D3DSP_SWIZZLE_SHIFT + 2)) | (2 << (D3DSP_SWIZZLE_SHIFT + 4)) | (3 << (D3DSP_SWIZZLE_SHIFT + 6)))
602#define D3DSP_SRCMOD_SHIFT 24
603#define D3DSP_SRCMOD_MASK (0xF << D3DSP_SRCMOD_SHIFT)
624#define D3DPS_VERSION(major, minor) (0xFFFF0000 | ((major) << 8) | (minor))
625#define D3DVS_VERSION(major, minor) (0xFFFE0000 | ((major) << 8) | (minor))
626#define D3DSHADER_VERSION_MAJOR(version) (((version) >> 8) & 0xFF)
627#define D3DSHADER_VERSION_MINOR(version) (((version) >> 0) & 0xFF)
629#define D3DSI_COMMENTSIZE_SHIFT 16
630#define D3DSI_COMMENTSIZE_MASK (0x7FFF << D3DSI_COMMENTSIZE_SHIFT)
632#define D3DSHADER_COMMENT(commentSize) \
633 ((((commentSize) << D3DSI_COMMENTSIZE_SHIFT) & D3DSI_COMMENTSIZE_MASK) | D3DSIO_COMMENT)
635#define D3DPS_END() 0x0000FFFF
636#define D3DVS_END() 0x0000FFFF
819#ifndef D3D_DISABLE_9EX
1039#define D3DRTYPECOUNT (D3DRTYPE_INDEXBUFFER+1)
1220#ifndef D3DCOLOR_DEFINED
1222#define D3DCOLOR_DEFINED
1258#ifndef D3DCOLORVALUE_DEFINED
1265#define D3DCOLORVALUE_DEFINED
1365#ifndef D3DVECTOR_DEFINED
1371#define D3DVECTOR_DEFINED
1414#ifndef D3DMATRIX_DEFINED
1426#define D3DMATRIX_DEFINED
1460#ifndef D3DRECT_DEFINED
1467#define D3DRECT_DEFINED
1528#if !defined(D3D_DISABLE_9EX)
_D3DSHADER_PARAM_SRCMOD_TYPE
_D3DTEXTURETRANSFORMFLAGS
enum _D3DRESOURCETYPE D3DRESOURCETYPE
_D3DTEXTURESTAGESTATETYPE
_D3DSHADER_PARAM_DSTMOD_TYPE
enum _D3DDEVTYPE D3DDEVTYPE
enum _D3DORDERTYPE D3DORDERTYPE
_D3DSHADER_INSTRUCTION_OPCODE_TYPE
enum _D3DBASISTYPE D3DBASISTYPE
enum _D3DFORMAT D3DFORMAT
enum _D3DMULTISAMPLE_TYPE D3DMULTISAMPLE_TYPE
_D3DSHADER_PARAM_REGISTER_TYPE
@ D3DRS_ENABLEADAPTIVETESSELLATION
@ D3DRS_SEPARATEALPHABLENDENABLE
@ D3DRS_COLORWRITEENABLE2
@ D3DRS_COLORWRITEENABLE1
@ D3DRS_EMISSIVEMATERIALSOURCE
@ D3DRS_MINTESSELLATIONLEVEL
@ D3DRS_SPECULARMATERIALSOURCE
@ D3DRS_AMBIENTMATERIALSOURCE
@ D3DRS_TWOSIDEDSTENCILMODE
@ D3DRS_COLORWRITEENABLE3
@ D3DRS_POINTSPRITEENABLE
@ D3DRS_SLOPESCALEDEPTHBIAS
@ D3DRS_MAXTESSELLATIONLEVEL
@ D3DRS_ANTIALIASEDLINEENABLE
@ D3DRS_SCISSORTESTENABLE
@ D3DRS_DEBUGMONITORTOKEN
@ D3DRS_DIFFUSEMATERIALSOURCE
@ D3DRS_INDEXEDVERTEXBLENDENABLE
@ D3DRS_MULTISAMPLEANTIALIAS
@ D3DDECLUSAGE_BLENDWEIGHT
@ D3DDECLUSAGE_BLENDINDICES
@ D3DDECLUSAGE_TESSFACTOR
enum _D3DTEXTURESTAGESTATETYPE D3DTEXTURESTAGESTATETYPE
enum _D3DBACKBUFFER_TYPE D3DBACKBUFFER_TYPE
@ D3DTADDRESS_FORCE_DWORD
enum _D3DTEXTUREOP D3DTEXTUREOP
@ D3DDISPLAYROTATION_IDENTITY
struct _D3DLINEPATTERN D3DLINEPATTERN
struct _D3DDEVINFO_D3D9STAGETIMINGS D3DDEVINFO_D3D9STAGETIMINGS
enum _D3DSHADER_MISCTYPE_OFFSETS D3DSHADER_MISCTYPE_OFFSETS
struct _D3DVERTEXELEMENT9 D3DVERTEXELEMENT9
@ D3DBLEND_BOTHINVSRCALPHA
@ D3DBLEND_INVBLENDFACTOR
enum _D3DVS_RASTOUT_OFFSETS D3DVS_RASTOUT_OFFSETS
enum _D3DTEXTUREADDRESS D3DTEXTUREADDRESS
enum _D3DMATERIALCOLORSOURCE D3DMATERIALCOLORSOURCE
struct _D3DVIEWPORT9 D3DVIEWPORT9
enum _D3DQUERYTYPE D3DQUERYTYPE
struct _D3DVECTOR D3DVECTOR
enum _D3DSHADEMODE D3DSHADEMODE
enum _D3DSHADER_ADDRESSMODE_TYPE D3DSHADER_ADDRESSMODE_TYPE
#define D3DSP_TEXTURETYPE_SHIFT
#define D3DVS_ADDRESSMODE_SHIFT
@ D3DCOMPOSERECTS_FORCE_DWORD
struct _D3DLOCKED_RECT D3DLOCKED_RECT
enum _D3DRESOURCETYPE D3DRESOURCETYPE
@ D3DTSS_TEXTURETRANSFORMFLAGS
@ D3DSPDM_PARTIALPRECISION
enum _D3DSAMPLER_TEXTURE_TYPE D3DSAMPLER_TEXTURE_TYPE
enum _D3DDECLMETHOD D3DDECLMETHOD
#define D3DSP_DSTMOD_SHIFT
@ D3DTOP_BUMPENVMAPLUMINANCE
@ D3DTOP_MODULATEINVALPHA_ADDCOLOR
@ D3DTOP_MODULATEALPHA_ADDCOLOR
@ D3DTOP_BLENDCURRENTALPHA
@ D3DTOP_BLENDTEXTUREALPHAPM
@ D3DTOP_MODULATEINVCOLOR_ADDALPHA
@ D3DTOP_BLENDTEXTUREALPHA
@ D3DTOP_MODULATECOLOR_ADDALPHA
@ D3DTOP_BLENDFACTORALPHA
@ D3DTOP_BLENDDIFFUSEALPHA
struct _D3DVERTEXELEMENT9 * LPD3DVERTEXELEMENT9
enum _D3DFILLMODE D3DFILLMODE
enum _D3DDEVTYPE D3DDEVTYPE
#define D3DSHADER_ADDRESSMODE_SHIFT
@ D3DSCANLINEORDERING_INTERLACED
@ D3DSCANLINEORDERING_UNKNOWN
@ D3DSCANLINEORDERING_PROGRESSIVE
enum _D3DBLENDOP D3DBLENDOP
struct _D3DADAPTER_IDENTIFIER9 D3DADAPTER_IDENTIFIER9
enum _D3DSHADER_INSTRUCTION_OPCODE_TYPE D3DSHADER_INSTRUCTION_OPCODE_TYPE
struct _D3DRANGE D3DRANGE
#define D3DSP_SRCMOD_SHIFT
@ D3DMULTISAMPLE_5_SAMPLES
@ D3DMULTISAMPLE_13_SAMPLES
@ D3DMULTISAMPLE_FORCE_DWORD
@ D3DMULTISAMPLE_9_SAMPLES
@ D3DMULTISAMPLE_8_SAMPLES
@ D3DMULTISAMPLE_NONMASKABLE
@ D3DMULTISAMPLE_4_SAMPLES
@ D3DMULTISAMPLE_6_SAMPLES
@ D3DMULTISAMPLE_12_SAMPLES
@ D3DMULTISAMPLE_3_SAMPLES
@ D3DMULTISAMPLE_10_SAMPLES
@ D3DMULTISAMPLE_16_SAMPLES
@ D3DMULTISAMPLE_2_SAMPLES
@ D3DMULTISAMPLE_11_SAMPLES
@ D3DMULTISAMPLE_7_SAMPLES
@ D3DMULTISAMPLE_14_SAMPLES
@ D3DMULTISAMPLE_15_SAMPLES
struct _D3DGAMMARAMP D3DGAMMARAMP
@ D3DBACKBUFFER_TYPE_RIGHT
@ D3DBACKBUFFER_TYPE_LEFT
@ D3DBACKBUFFER_TYPE_MONO
@ D3DBACKBUFFER_TYPE_FORCE_DWORD
enum _D3DCMPFUNC D3DCMPFUNC
struct _D3DRECTPATCH_INFO D3DRECTPATCH_INFO
enum _D3DPRIMITIVETYPE D3DPRIMITIVETYPE
@ D3DPATCHEDGE_CONTINUOUS
@ D3DPATCHEDGE_FORCE_DWORD
struct _D3DSURFACE_DESC D3DSURFACE_DESC
enum _D3DSTENCILOP D3DSTENCILOP
enum _D3DSHADER_COMPARISON D3DSHADER_COMPARISON
enum _D3DSAMPLERSTATETYPE D3DSAMPLERSTATETYPE
enum _D3DCOMPOSERECTSOP D3DCOMPOSERECTSOP
struct _D3DRASTER_STATUS D3DRASTER_STATUS
#define MAKEFOURCC(ch0, ch1, ch2, ch3)
enum _D3DSHADER_PARAM_REGISTER_TYPE D3DSHADER_PARAM_REGISTER_TYPE
enum _D3DSWAPEFFECT D3DSWAPEFFECT
enum _D3DDEBUGMONITORTOKENS D3DDEBUGMONITORTOKENS
#define MAX_DEVICE_IDENTIFIER_STRING
enum _D3DRENDERSTATETYPE D3DRENDERSTATETYPE
enum _D3DPATCHEDGESTYLE D3DPATCHEDGESTYLE
enum _D3DVERTEXBLENDFLAGS D3DVERTEXBLENDFLAGS
struct _D3DDEVINFO_D3D9INTERFACETIMINGS D3DDEVINFO_D3D9INTERFACETIMINGS
@ D3DSWAPEFFECT_FORCE_DWORD
struct _D3DCOLORVALUE D3DCOLORVALUE
@ D3DCUBEMAP_FACE_POSITIVE_Z
@ D3DCUBEMAP_FACE_FORCE_DWORD
@ D3DCUBEMAP_FACE_NEGATIVE_Y
@ D3DCUBEMAP_FACE_POSITIVE_X
@ D3DCUBEMAP_FACE_POSITIVE_Y
@ D3DCUBEMAP_FACE_NEGATIVE_X
@ D3DCUBEMAP_FACE_NEGATIVE_Z
struct _D3DMATRIX D3DMATRIX
struct _D3DDEVINFO_D3D9CACHEUTILIZATION D3DDEVINFO_D3D9CACHEUTILIZATION
struct _D3DINDEXBUFFER_DESC D3DINDEXBUFFER_DESC
enum _D3DTEXTURETRANSFORMFLAGS D3DTEXTURETRANSFORMFLAGS
enum _D3DTRANSFORMSTATETYPE D3DTRANSFORMSTATETYPE
struct _D3DDEVICE_CREATION_PARAMETERS D3DDEVICE_CREATION_PARAMETERS
struct _D3DDISPLAYMODE D3DDISPLAYMODE
struct _D3DLOCKED_BOX D3DLOCKED_BOX
struct _D3DPRESENT_PARAMETERS_ D3DPRESENT_PARAMETERS
struct _D3DDEVINFO_D3D9BANDWIDTHTIMINGS D3DDEVINFO_D3D9BANDWIDTHTIMINGS
struct _D3DDEVINFO_D3D9PIPELINETIMINGS D3DDEVINFO_D3D9PIPELINETIMINGS
enum _D3DDECLTYPE D3DDECLTYPE
enum _D3DZBUFFERTYPE D3DZBUFFERTYPE
enum _D3DDECLUSAGE D3DDECLUSAGE
@ D3DSTENCILOP_FORCE_DWORD
struct _D3DVOLUME_DESC D3DVOLUME_DESC
enum _D3DVS_ADDRESSMODE_TYPE D3DVS_ADDRESSMODE_TYPE
struct _D3DDEVINFO_D3DVERTEXSTATS D3DDEVINFO_D3DVERTEXSTATS
struct _D3DDEVINFO_D3DRESOURCEMANAGER D3DDEVINFO_D3DRESOURCEMANAGER
struct _D3DVERTEXBUFFER_DESC D3DVERTEXBUFFER_DESC
struct _D3DTRIPATCH_INFO D3DTRIPATCH_INFO
struct _D3DLIGHT9 D3DLIGHT9
enum _D3DSHADER_PARAM_SRCMOD_TYPE D3DSHADER_PARAM_SRCMOD_TYPE
enum _D3DBASISTYPE D3DBASISTYPE
struct _D3DCLIPSTATUS9 D3DCLIPSTATUS9
@ D3DQUERYTYPE_TIMESTAMPDISJOINT
@ D3DQUERYTYPE_RESOURCEMANAGER
@ D3DQUERYTYPE_INTERFACETIMINGS
@ D3DQUERYTYPE_BANDWIDTHTIMINGS
@ D3DQUERYTYPE_VERTEXTIMINGS
@ D3DQUERYTYPE_PIXELTIMINGS
@ D3DQUERYTYPE_VERTEXSTATS
@ D3DQUERYTYPE_TIMESTAMPFREQ
@ D3DQUERYTYPE_CACHEUTILIZATION
@ D3DQUERYTYPE_MEMORYPRESSURE
@ D3DQUERYTYPE_PIPELINETIMINGS
enum _D3DFORMAT D3DFORMAT
enum _D3DSHADER_PARAM_DSTMOD_TYPE D3DSHADER_PARAM_DSTMOD_TYPE
@ D3DDECLMETHOD_LOOKUPPRESAMPLED
struct _D3DMATERIAL9 D3DMATERIAL9
enum _D3DDEGREETYPE D3DDEGREETYPE
struct _D3DPRESENTSTATS D3DPRESENTSTATS
_D3DSHADER_MISCTYPE_OFFSETS
enum _D3DCUBEMAP_FACES D3DCUBEMAP_FACES
enum _D3DLIGHTTYPE D3DLIGHTTYPE
@ D3DVS_ADDRMODE_FORCE_DWORD
@ D3DVS_ADDRMODE_RELATIVE
@ D3DVS_ADDRMODE_ABSOLUTE
enum _D3DTEXTUREFILTERTYPE D3DTEXTUREFILTERTYPE
enum _D3DMULTISAMPLE_TYPE D3DMULTISAMPLE_TYPE
_D3DSHADER_ADDRESSMODE_TYPE
@ D3DSHADER_ADDRMODE_RELATIVE
@ D3DSHADER_ADDRMODE_FORCE_DWORD
@ D3DSHADER_ADDRMODE_ABSOLUTE
enum _D3DSTATEBLOCKTYPE D3DSTATEBLOCKTYPE
enum _D3DFOGMODE D3DFOGMODE
D3DSCANLINEORDERING ScanLineOrdering
D3DSCANLINEORDERING ScanLineOrdering
DWORD ApproxBytesDownloaded
char Description[MAX_DEVICE_IDENTIFIER_STRING]
LARGE_INTEGER DriverVersion
float FrontEndUploadMemoryUtilizedPercent
float MaxBandwidthUtilized
float TriangleSetupRateUtilizedPercent
float VertexRateUtilizedPercent
float FillRateUtilizedPercent
float PostTransformVertexCacheHitRate
float TextureCacheHitRate
float WaitingForGPUOtherTimePercent
float WaitingForGPUToAcceptMoreCommandsTimePercent
float WaitingForGPUToUseApplicationResourceTimePercent
float WaitingForGPUExclusiveResourceTimePercent
float WaitingForGPUToStayWithinLatencyTimePercent
float VertexProcessingTimePercent
float OtherGPUProcessingTimePercent
float PixelProcessingTimePercent
float ComputationProcessingPercent
float MemoryProcessingPercent
D3DRESOURCESTATS stats[D3DRTYPECOUNT]
DWORD NumExtraClippingTriangles
DWORD NumRenderedTriangles
struct _D3DMATRIX::@2743::@2744 DUMMYSTRUCTNAME
union _D3DMATRIX::@2743 DUMMYUNIONNAME
LARGE_INTEGER SyncGPUTime
LARGE_INTEGER SyncQPCTime
UINT FullScreen_RefreshRateInHz
BOOL EnableAutoDepthStencil
D3DMULTISAMPLE_TYPE MultiSampleType
D3DFORMAT BackBufferFormat
UINT PresentationInterval
D3DFORMAT AutoDepthStencilFormat
UINT StartVertexOffsetHeight
UINT StartVertexOffsetWidth
D3DMULTISAMPLE_TYPE MultiSampleType
_Must_inspect_result_ _In_ WDFDRIVER Driver
_Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_opt_ PCUNICODE_STRING DeviceName