21#ifndef __WINE_D3D9TYPES_H
22#define __WINE_D3D9TYPES_H
31#define D3DCLEAR_TARGET __MSABI_LONG(0x00000001)
32#define D3DCLEAR_ZBUFFER __MSABI_LONG(0x00000002)
33#define D3DCLEAR_STENCIL __MSABI_LONG(0x00000004)
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 __MSABI_LONG(0x001)
50#define D3DCS_RIGHT __MSABI_LONG(0x002)
51#define D3DCS_TOP __MSABI_LONG(0x004)
52#define D3DCS_BOTTOM __MSABI_LONG(0x008)
53#define D3DCS_FRONT __MSABI_LONG(0x010)
54#define D3DCS_BACK __MSABI_LONG(0x020)
55#define D3DCS_PLANE0 __MSABI_LONG(0x040)
56#define D3DCS_PLANE1 __MSABI_LONG(0x080)
57#define D3DCS_PLANE2 __MSABI_LONG(0x100)
58#define D3DCS_PLANE3 __MSABI_LONG(0x200)
59#define D3DCS_PLANE4 __MSABI_LONG(0x400)
60#define D3DCS_PLANE5 __MSABI_LONG(0x800)
61#define D3DCS_ALL __MSABI_LONG(0xFFF)
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 __MSABI_LONG(128U)
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 __MSABI_LONG(0x00000001)
105#define D3DUSAGE_DEPTHSTENCIL __MSABI_LONG(0x00000002)
106#define D3DUSAGE_WRITEONLY __MSABI_LONG(0x00000008)
107#define D3DUSAGE_SOFTWAREPROCESSING __MSABI_LONG(0x00000010)
108#define D3DUSAGE_DONOTCLIP __MSABI_LONG(0x00000020)
109#define D3DUSAGE_POINTS __MSABI_LONG(0x00000040)
110#define D3DUSAGE_RTPATCHES __MSABI_LONG(0x00000080)
111#define D3DUSAGE_NPATCHES __MSABI_LONG(0x00000100)
112#define D3DUSAGE_DYNAMIC __MSABI_LONG(0x00000200)
113#define D3DUSAGE_AUTOGENMIPMAP __MSABI_LONG(0x00000400)
114#define D3DUSAGE_DMAP __MSABI_LONG(0x00004000)
117#if !defined(D3D_DISABLE_9EX)
118#define D3DUSAGE_RESTRICTED_CONTENT __MSABI_LONG(0x00000800)
119#define D3DUSAGE_RESTRICT_SHARED_RESOURCE_DRIVER __MSABI_LONG(0x00001000)
120#define D3DUSAGE_RESTRICT_SHARED_RESOURCE __MSABI_LONG(0x00002000)
121#define D3DUSAGE_NONSECURE __MSABI_LONG(0x00800000)
122#define D3DUSAGE_TEXTAPI __MSABI_LONG(0x10000000)
125#define D3DUSAGE_QUERY_LEGACYBUMPMAP __MSABI_LONG(0x00008000)
126#define D3DUSAGE_QUERY_SRGBREAD __MSABI_LONG(0x00010000)
127#define D3DUSAGE_QUERY_FILTER __MSABI_LONG(0x00020000)
128#define D3DUSAGE_QUERY_SRGBWRITE __MSABI_LONG(0x00040000)
129#define D3DUSAGE_QUERY_POSTPIXELSHADER_BLENDING __MSABI_LONG(0x00080000)
130#define D3DUSAGE_QUERY_VERTEXTEXTURE __MSABI_LONG(0x00100000)
131#define D3DUSAGE_QUERY_WRAPANDMIP __MSABI_LONG(0x00200000)
136#define D3DWRAPCOORD_0 1
137#define D3DWRAPCOORD_1 2
138#define D3DWRAPCOORD_2 4
139#define D3DWRAPCOORD_3 8
141#define MAX_DEVICE_IDENTIFIER_STRING 512
143#define D3DFVF_RESERVED0 0x0001
144#define D3DFVF_POSITION_MASK 0x400E
145#define D3DFVF_XYZ 0x0002
146#define D3DFVF_XYZRHW 0x0004
147#define D3DFVF_XYZB1 0x0006
148#define D3DFVF_XYZB2 0x0008
149#define D3DFVF_XYZB3 0x000a
150#define D3DFVF_XYZB4 0x000c
151#define D3DFVF_XYZB5 0x000e
152#define D3DFVF_XYZW 0x4002
153#define D3DFVF_NORMAL 0x0010
154#define D3DFVF_PSIZE 0x0020
155#define D3DFVF_DIFFUSE 0x0040
156#define D3DFVF_SPECULAR 0x0080
157#define D3DFVF_TEXCOUNT_MASK 0x0f00
158#define D3DFVF_TEXCOUNT_SHIFT 8
159#define D3DFVF_TEX0 0x0000
160#define D3DFVF_TEX1 0x0100
161#define D3DFVF_TEX2 0x0200
162#define D3DFVF_TEX3 0x0300
163#define D3DFVF_TEX4 0x0400
164#define D3DFVF_TEX5 0x0500
165#define D3DFVF_TEX6 0x0600
166#define D3DFVF_TEX7 0x0700
167#define D3DFVF_TEX8 0x0800
168#define D3DFVF_LASTBETA_UBYTE4 0x1000
169#define D3DFVF_LASTBETA_D3DCOLOR 0x8000
170#define D3DFVF_RESERVED2 0x6000
172#define D3DTA_SELECTMASK 0x0000000f
173#define D3DTA_DIFFUSE 0x00000000
174#define D3DTA_CURRENT 0x00000001
175#define D3DTA_TEXTURE 0x00000002
176#define D3DTA_TFACTOR 0x00000003
177#define D3DTA_SPECULAR 0x00000004
178#define D3DTA_TEMP 0x00000005
179#define D3DTA_CONSTANT 0x00000006
180#define D3DTA_COMPLEMENT 0x00000010
181#define D3DTA_ALPHAREPLICATE 0x00000020
183#define D3DCOLORWRITEENABLE_RED (__MSABI_LONG(1)<<0)
184#define D3DCOLORWRITEENABLE_GREEN (__MSABI_LONG(1)<<1)
185#define D3DCOLORWRITEENABLE_BLUE (__MSABI_LONG(1)<<2)
186#define D3DCOLORWRITEENABLE_ALPHA (__MSABI_LONG(1)<<3)
188#define D3DPV_DONOTCOPYDATA (1 << 0)
190#define D3DSTREAMSOURCE_INDEXEDDATA (1u << 30)
191#define D3DSTREAMSOURCE_INSTANCEDATA (2u << 30)
193#define D3D_MAX_SIMULTANEOUS_RENDERTARGETS 4
195#define MAXD3DDECLLENGTH 64
196#define MAXD3DDECLMETHOD D3DDECLMETHOD_LOOKUPPRESAMPLED
197#define MAXD3DDECLTYPE D3DDECLTYPE_UNUSED
198#define MAXD3DDECLUSAGE D3DDECLUSAGE_SAMPLE
199#define MAXD3DDECLUSAGEINDEX 15
201#define D3DDMAPSAMPLER 256
202#define D3DVERTEXTEXTURESAMPLER0 (D3DDMAPSAMPLER+1)
203#define D3DVERTEXTEXTURESAMPLER1 (D3DDMAPSAMPLER+2)
204#define D3DVERTEXTEXTURESAMPLER2 (D3DDMAPSAMPLER+3)
205#define D3DVERTEXTEXTURESAMPLER3 (D3DDMAPSAMPLER+4)
208#define MAKEFOURCC(ch0, ch1, ch2, ch3) \
209 ((DWORD)(BYTE)(ch0) | ((DWORD)(BYTE)(ch1) << 8) | \
210 ((DWORD)(BYTE)(ch2) << 16) | ((DWORD)(BYTE)(ch3) << 24 ))
215#define D3DPRESENTFLAG_LOCKABLE_BACKBUFFER 0x00000001
216#define D3DPRESENTFLAG_DISCARD_DEPTHSTENCIL 0x00000002
217#define D3DPRESENTFLAG_DEVICECLIP 0x00000004
218#define D3DPRESENTFLAG_VIDEO 0x00000010
219#ifndef D3D_DISABLE_9EX
220#define D3DPRESENTFLAG_NOAUTOROTATE 0x00000020
221#define D3DPRESENTFLAG_UNPRUNEDMODE 0x00000040
222#define D3DPRESENTFLAG_OVERLAY_LIMITEDRGB 0x00000080
223#define D3DPRESENTFLAG_OVERLAY_YCbCr_BT709 0x00000100
224#define D3DPRESENTFLAG_OVERLAY_YCbCr_xvYCC 0x00000200
225#define D3DPRESENTFLAG_RESTRICTED_CONTENT 0x00000400
226#define D3DPRESENTFLAG_RESTRICT_SHARED_RESOURCE_DRIVER 0x00000800
229#define D3DPRESENT_RATE_DEFAULT 0x00000000
252#define D3DMAXDECLUSAGE D3DDECLUSAGE_SAMPLE
253#define D3DMAXDECLUSAGEINDEX 15
254#define D3DMAXDECLLENGTH 18
255#define D3DMAXDECLUSAGE_DX8 D3DDECLUSAGE_TEXCOORD
268#define D3DMAXDECLMETHOD D3DDECLMETHOD_LOOKUPPRESAMPLED
292#define D3DMAXDECLTYPE D3DDECLTYPE_UNUSED
319#ifndef D3D_DISABLE_9EX
324#define D3DISSUE_BEGIN (1 << 1)
325#define D3DISSUE_END (1 << 0)
326#define D3DGETDATA_FLUSH (1 << 0)
329#define D3DDECL_END() {0xFF,0,D3DDECLTYPE_UNUSED,0,0,0}
330#define D3DDP_MAXTEXCOORD 8
333#define D3DVSD_MAKETOKENTYPE(TokenType) \
334 ((TokenType << D3DVSD_TOKENTYPESHIFT) & D3DVSD_TOKENTYPEMASK)
336#define D3DVSD_CONST(ConstantAddress, Count) \
337 (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_CONSTMEM) | ((Count) << D3DVSD_CONSTCOUNTSHIFT) | (ConstantAddress))
339#define D3DVSD_END() 0xFFFFFFFF
341#define D3DVSD_NOP() 0x00000000
343#define D3DVSD_REG(VertexRegister, Type) \
344 (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_STREAMDATA) | ((Type) << D3DVSD_DATATYPESHIFT) | (VertexRegister))
346#define D3DVSD_SKIP(Count) \
347 (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_STREAMDATA) | 0x10000000 | ((Count) << D3DVSD_SKIPCOUNTSHIFT))
349#define D3DVSD_STREAM(StreamNumber) \
350 (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_STREAM) | (StreamNumber))
352#define D3DVSD_STREAM_TESS() \
353 (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_STREAM) | (D3DVSD_STREAMTESSMASK))
355#define D3DVSD_TESSNORMAL(RegisterIn, RegisterOut) \
356 (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_TESSELLATOR) | ((RegisterIn) << D3DVSD_VERTEXREGINSHIFT) | ((0x02) << D3DVSD_DATATYPESHIFT) | (RegisterOut))
358#define D3DVSD_TESSUV(Register) \
359 (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_TESSELLATOR) | 0x10000000 | ((0x01) << D3DVSD_DATATYPESHIFT) | (Register))
367#define D3DDP_MAXTEXCOORD 8
370#define D3DSI_OPCODE_MASK 0x0000FFFF
371#define D3DSI_INSTLENGTH_MASK 0x0F000000
372#define D3DSI_INSTLENGTH_SHIFT 24
467#define D3DSINCOSCONST1 -1.5500992e-006f, -2.1701389e-005f, 0.0026041667f, 0.00026041668f
468#define D3DSINCOSCONST2 -0.020833334f, -0.12500000f, 1.0f, 0.50000000f
470#define D3DSHADER_INSTRUCTION_PREDICATED (1 << 28)
472#define D3DSI_TEXLD_PROJECT 0x00010000
473#define D3DSI_TEXLD_BIAS 0x00020000
476#define D3DSI_COISSUE 0x40000000
478#define D3DSP_DCL_USAGE_SHIFT 0
479#define D3DSP_DCL_USAGE_MASK 0x0000000f
481#define D3DSP_DCL_USAGEINDEX_SHIFT 16
482#define D3DSP_DCL_USAGEINDEX_MASK 0x000f0000
484#define D3DSP_OPCODESPECIFICCONTROL_SHIFT 16
485#define D3DSP_OPCODESPECIFICCONTROL_MASK 0x00ff0000
487#define D3DSP_TEXTURETYPE_SHIFT 27
488#define D3DSP_TEXTURETYPE_MASK 0x78000000
500#define D3DSP_REGNUM_MASK 0x000007FF
503#define D3DSP_WRITEMASK_0 0x00010000
504#define D3DSP_WRITEMASK_1 0x00020000
505#define D3DSP_WRITEMASK_2 0x00040000
506#define D3DSP_WRITEMASK_3 0x00080000
507#define D3DSP_WRITEMASK_ALL 0x000F0000
509#define D3DSP_DSTMOD_SHIFT 20
510#define D3DSP_DSTMOD_MASK (0xF << D3DSP_DSTMOD_SHIFT)
522#define D3DSP_DSTSHIFT_SHIFT 24
523#define D3DSP_DSTSHIFT_MASK (0xF << D3DSP_DSTSHIFT_SHIFT)
526#define D3DSP_REGTYPE_SHIFT 28
527#define D3DSP_REGTYPE_SHIFT2 8
528#define D3DSP_REGTYPE_MASK (0x7 << D3DSP_REGTYPE_SHIFT)
529#define D3DSP_REGTYPE_MASK2 0x00001800
572#define D3DVS_ADDRESSMODE_SHIFT 13
573#define D3DVS_ADDRESSMODE_MASK (0x1 << D3DVS_ADDRESSMODE_SHIFT)
582#define D3DSHADER_ADDRESSMODE_SHIFT 13
583#define D3DSHADER_ADDRESSMODE_MASK (1 << D3DSHADER_ADDRESSMODE_SHIFT)
593#define D3DVS_SWIZZLE_SHIFT 16
594#define D3DVS_SWIZZLE_MASK (0xFF << D3DVS_SWIZZLE_SHIFT)
596#define D3DSP_SWIZZLE_SHIFT 16
597#define D3DSP_SWIZZLE_MASK (0xFF << D3DSP_SWIZZLE_SHIFT)
599#define D3DVS_X_X (0 << D3DVS_SWIZZLE_SHIFT)
600#define D3DVS_X_Y (1 << D3DVS_SWIZZLE_SHIFT)
601#define D3DVS_X_Z (2 << D3DVS_SWIZZLE_SHIFT)
602#define D3DVS_X_W (3 << D3DVS_SWIZZLE_SHIFT)
604#define D3DVS_Y_X (0 << (D3DVS_SWIZZLE_SHIFT + 2))
605#define D3DVS_Y_Y (1 << (D3DVS_SWIZZLE_SHIFT + 2))
606#define D3DVS_Y_Z (2 << (D3DVS_SWIZZLE_SHIFT + 2))
607#define D3DVS_Y_W (3 << (D3DVS_SWIZZLE_SHIFT + 2))
609#define D3DVS_Z_X (0 << (D3DVS_SWIZZLE_SHIFT + 4))
610#define D3DVS_Z_Y (1 << (D3DVS_SWIZZLE_SHIFT + 4))
611#define D3DVS_Z_Z (2 << (D3DVS_SWIZZLE_SHIFT + 4))
612#define D3DVS_Z_W (3 << (D3DVS_SWIZZLE_SHIFT + 4))
614#define D3DVS_W_X (0 << (D3DVS_SWIZZLE_SHIFT + 6))
615#define D3DVS_W_Y (1 << (D3DVS_SWIZZLE_SHIFT + 6))
616#define D3DVS_W_Z (2 << (D3DVS_SWIZZLE_SHIFT + 6))
617#define D3DVS_W_W (3 << (D3DVS_SWIZZLE_SHIFT + 6))
619#define D3DVS_NOSWIZZLE (D3DVS_X_X | D3DVS_Y_Y | D3DVS_Z_Z | D3DVS_W_W)
621#define D3DSP_NOSWIZZLE \
622 ((0 << (D3DSP_SWIZZLE_SHIFT + 0)) | (1 << (D3DSP_SWIZZLE_SHIFT + 2)) | (2 << (D3DSP_SWIZZLE_SHIFT + 4)) | (3 << (D3DSP_SWIZZLE_SHIFT + 6)))
624#define D3DSP_SRCMOD_SHIFT 24
625#define D3DSP_SRCMOD_MASK (0xF << D3DSP_SRCMOD_SHIFT)
646#define D3DPS_VERSION(major, minor) (0xFFFF0000 | ((major) << 8) | (minor))
647#define D3DVS_VERSION(major, minor) (0xFFFE0000 | ((major) << 8) | (minor))
648#define D3DSHADER_VERSION_MAJOR(version) (((version) >> 8) & 0xFF)
649#define D3DSHADER_VERSION_MINOR(version) (((version) >> 0) & 0xFF)
651#define D3DSI_COMMENTSIZE_SHIFT 16
652#define D3DSI_COMMENTSIZE_MASK (0x7FFF << D3DSI_COMMENTSIZE_SHIFT)
654#define D3DSHADER_COMMENT(commentSize) \
655 ((((commentSize) << D3DSI_COMMENTSIZE_SHIFT) & D3DSI_COMMENTSIZE_MASK) | D3DSIO_COMMENT)
657#define D3DPS_END() 0x0000FFFF
658#define D3DVS_END() 0x0000FFFF
696#ifndef D3D_DISABLE_9EX
844#ifndef D3D_DISABLE_9EX
864#ifndef D3D_DISABLE_9EX
1068#define D3DRTYPECOUNT (D3DRTYPE_INDEXBUFFER+1)
1103#ifndef D3D_DISABLE_9EX
1129#ifndef D3D_DISABLE_9EX
1254#ifndef D3DCOLOR_DEFINED
1256#define D3DCOLOR_DEFINED
1292#ifndef D3DCOLORVALUE_DEFINED
1299#define D3DCOLORVALUE_DEFINED
1399#ifndef D3DVECTOR_DEFINED
1405#define D3DVECTOR_DEFINED
1448#ifndef D3DMATRIX_DEFINED
1460#define D3DMATRIX_DEFINED
1494#ifndef D3DRECT_DEFINED
1501#define D3DRECT_DEFINED
1562#if !defined(D3D_DISABLE_9EX)
COMPILER_DEPENDENT_UINT64 UINT64
_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
@ D3DTEXF_CONVOLUTIONMONO
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
struct _D3DMEMORYPRESSURE D3DMEMORYPRESSURE
#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
@ D3DFMT_A2B10G10R10_XR_BIAS
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
union _D3DMATRIX::@3319 DUMMYUNIONNAME
struct _D3DMATRIX::@3319::@3320 DUMMYSTRUCTNAME
UINT64 SizeOfInefficientAllocation
UINT64 BytesEvictedFromProcess
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