1 #############################################################################
3 # Copyright 2008 Tungsten Graphics, Inc.
5 # This program is free software: you can redistribute it and/or modify it
6 # under the terms of the GNU Lesser General Public License as published
7 # by the Free Software Foundation, either version 3 of the License, or
8 # (at your option) any later version.
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU Lesser General Public License for more details.
15 # You should have received a copy of the GNU Lesser General Public License
16 # along with this program. If not, see <http://www.gnu.org/licenses/>.
18 #############################################################################
24 D3DCOLOR = Alias("D3DCOLOR", DWORD)
26 D3DVECTOR = Struct("D3DVECTOR", [
32 D3DCOLORVALUE = Struct("D3DCOLORVALUE", [
39 D3DRECT = Struct("D3DRECT", [
46 D3DMATRIX = Struct("D3DMATRIX", [
47 (Array(Array(Float, "4"), "4"), "m"),
50 D3DVIEWPORT9 = Struct("D3DVIEWPORT9", [
59 D3DCLIP = Flags(DWORD, [
68 D3DCS = Flags(DWORD, [
84 D3DCLIPSTATUS9 = Struct("D3DCLIPSTATUS9", [
86 (DWORD, "ClipIntersection"),
89 D3DMATERIAL9 = Struct("D3DMATERIAL9", [
90 (D3DCOLORVALUE, "Diffuse"),
91 (D3DCOLORVALUE, "Ambient"),
92 (D3DCOLORVALUE, "Specular"),
93 (D3DCOLORVALUE, "Emissive"),
97 D3DLIGHTTYPE = Enum("D3DLIGHTTYPE", [
100 "D3DLIGHT_DIRECTIONAL",
101 "D3DLIGHT_FORCE_DWORD",
104 D3DLIGHT9 = Struct("D3DLIGHT9", [
105 (D3DLIGHTTYPE, "Type"),
106 (D3DCOLORVALUE, "Diffuse"),
107 (D3DCOLORVALUE, "Specular"),
108 (D3DCOLORVALUE, "Ambient"),
109 (D3DVECTOR, "Position"),
110 (D3DVECTOR, "Direction"),
113 (Float, "Attenuation0"),
114 (Float, "Attenuation1"),
115 (Float, "Attenuation2"),
120 D3DCS = Flags(DWORD, [
126 D3DSHADEMODE = Enum("D3DSHADEMODE", [
130 "D3DSHADE_FORCE_DWORD",
133 D3DFILLMODE = Enum("D3DFILLMODE", [
137 "D3DFILL_FORCE_DWORD",
140 D3DBLEND = Enum("D3DBLEND", [
144 "D3DBLEND_INVSRCCOLOR",
146 "D3DBLEND_INVSRCALPHA",
147 "D3DBLEND_DESTALPHA",
148 "D3DBLEND_INVDESTALPHA",
149 "D3DBLEND_DESTCOLOR",
150 "D3DBLEND_INVDESTCOLOR",
151 "D3DBLEND_SRCALPHASAT",
152 "D3DBLEND_BOTHSRCALPHA",
153 "D3DBLEND_BOTHINVSRCALPHA",
154 "D3DBLEND_BLENDFACTOR",
155 "D3DBLEND_INVBLENDFACTOR",
156 "D3DBLEND_SRCCOLOR2",
157 "D3DBLEND_INVSRCCOLOR2",
158 "D3DBLEND_FORCE_DWORD",
161 D3DBLENDOP = Enum("D3DBLENDOP", [
163 "D3DBLENDOP_SUBTRACT",
164 "D3DBLENDOP_REVSUBTRACT",
167 "D3DBLENDOP_FORCE_DWORD",
170 D3DTEXTUREADDRESS = Enum("D3DTEXTUREADDRESS", [
172 "D3DTADDRESS_MIRROR",
174 "D3DTADDRESS_BORDER",
175 "D3DTADDRESS_MIRRORONCE",
176 "D3DTADDRESS_FORCE_DWORD",
179 D3DCULL = Enum("D3DCULL", [
183 "D3DCULL_FORCE_DWORD",
186 D3DCMPFUNC = Enum("D3DCMPFUNC", [
193 "D3DCMP_GREATEREQUAL",
195 "D3DCMP_FORCE_DWORD",
198 D3DSTENCILOP = Enum("D3DSTENCILOP", [
201 "D3DSTENCILOP_REPLACE",
202 "D3DSTENCILOP_INCRSAT",
203 "D3DSTENCILOP_DECRSAT",
204 "D3DSTENCILOP_INVERT",
207 "D3DSTENCILOP_FORCE_DWORD",
210 D3DFOGMODE = Enum("D3DFOGMODE", [
215 "D3DFOG_FORCE_DWORD",
218 D3DZBUFFERTYPE = Enum("D3DZBUFFERTYPE", [
225 D3DPRIMITIVETYPE = Enum("D3DPRIMITIVETYPE", [
229 "D3DPT_TRIANGLELIST",
230 "D3DPT_TRIANGLESTRIP",
235 D3DTRANSFORMSTATETYPE = Enum("D3DTRANSFORMSTATETYPE", [
249 D3DTS = Flags(DWORD, [
256 D3DRENDERSTATETYPE = Enum("D3DRENDERSTATETYPE", [
260 "D3DRS_ZWRITEENABLE",
261 "D3DRS_ALPHATESTENABLE",
269 "D3DRS_DITHERENABLE",
270 "D3DRS_ALPHABLENDENABLE",
272 "D3DRS_SPECULARENABLE",
274 "D3DRS_FOGTABLEMODE",
278 "D3DRS_RANGEFOGENABLE",
279 "D3DRS_STENCILENABLE",
281 "D3DRS_STENCILZFAIL",
286 "D3DRS_STENCILWRITEMASK",
287 "D3DRS_TEXTUREFACTOR",
299 "D3DRS_FOGVERTEXMODE",
302 "D3DRS_NORMALIZENORMALS",
303 "D3DRS_DIFFUSEMATERIALSOURCE",
304 "D3DRS_SPECULARMATERIALSOURCE",
305 "D3DRS_AMBIENTMATERIALSOURCE",
306 "D3DRS_EMISSIVEMATERIALSOURCE",
308 "D3DRS_CLIPPLANEENABLE",
310 "D3DRS_POINTSIZE_MIN",
311 "D3DRS_POINTSPRITEENABLE",
312 "D3DRS_POINTSCALEENABLE",
313 "D3DRS_POINTSCALE_A",
314 "D3DRS_POINTSCALE_B",
315 "D3DRS_POINTSCALE_C",
316 "D3DRS_MULTISAMPLEANTIALIAS",
317 "D3DRS_MULTISAMPLEMASK",
318 "D3DRS_PATCHEDGESTYLE",
319 "D3DRS_DEBUGMONITORTOKEN",
320 "D3DRS_POINTSIZE_MAX",
321 "D3DRS_INDEXEDVERTEXBLENDENABLE",
322 "D3DRS_COLORWRITEENABLE",
325 "D3DRS_POSITIONDEGREE",
326 "D3DRS_NORMALDEGREE",
327 "D3DRS_SCISSORTESTENABLE",
328 "D3DRS_SLOPESCALEDEPTHBIAS",
329 "D3DRS_ANTIALIASEDLINEENABLE",
330 "D3DRS_MINTESSELLATIONLEVEL",
331 "D3DRS_MAXTESSELLATIONLEVEL",
332 "D3DRS_ADAPTIVETESS_X",
333 "D3DRS_ADAPTIVETESS_Y",
334 "D3DRS_ADAPTIVETESS_Z",
335 "D3DRS_ADAPTIVETESS_W",
336 "D3DRS_ENABLEADAPTIVETESSELLATION",
337 "D3DRS_TWOSIDEDSTENCILMODE",
338 "D3DRS_CCW_STENCILFAIL",
339 "D3DRS_CCW_STENCILZFAIL",
340 "D3DRS_CCW_STENCILPASS",
341 "D3DRS_CCW_STENCILFUNC",
342 "D3DRS_COLORWRITEENABLE1",
343 "D3DRS_COLORWRITEENABLE2",
344 "D3DRS_COLORWRITEENABLE3",
346 "D3DRS_SRGBWRITEENABLE",
356 "D3DRS_SEPARATEALPHABLENDENABLE",
357 "D3DRS_SRCBLENDALPHA",
358 "D3DRS_DESTBLENDALPHA",
359 "D3DRS_BLENDOPALPHA",
363 D3DMATERIALCOLORSOURCE = Enum("D3DMATERIALCOLORSOURCE", [
367 "D3DMCS_FORCE_DWORD",
370 D3DWRAP = Flags(DWORD, [
376 D3DWRAPCOORD = Flags(DWORD, [
383 D3DCOLORWRITEENABLE = Flags(DWORD, [
384 "D3DCOLORWRITEENABLE_RED",
385 "D3DCOLORWRITEENABLE_GREEN",
386 "D3DCOLORWRITEENABLE_BLUE",
387 "D3DCOLORWRITEENABLE_ALPHA",
390 D3DTEXTURESTAGESTATETYPE = Enum("D3DTEXTURESTAGESTATETYPE", [
397 "D3DTSS_BUMPENVMAT00",
398 "D3DTSS_BUMPENVMAT01",
399 "D3DTSS_BUMPENVMAT10",
400 "D3DTSS_BUMPENVMAT11",
401 "D3DTSS_TEXCOORDINDEX",
402 "D3DTSS_BUMPENVLSCALE",
403 "D3DTSS_BUMPENVLOFFSET",
404 "D3DTSS_TEXTURETRANSFORMFLAGS",
409 "D3DTSS_FORCE_DWORD",
412 D3DSAMPLERSTATETYPE = Enum("D3DSAMPLERSTATETYPE", [
417 "D3DSAMP_BORDERCOLOR",
421 "D3DSAMP_MIPMAPLODBIAS",
422 "D3DSAMP_MAXMIPLEVEL",
423 "D3DSAMP_MAXANISOTROPY",
424 "D3DSAMP_SRGBTEXTURE",
425 "D3DSAMP_ELEMENTINDEX",
426 "D3DSAMP_DMAPOFFSET",
427 "D3DSAMP_FORCE_DWORD",
430 D3DTSS = Flags(DWORD, [
431 "D3DTSS_TCI_PASSTHRU",
432 "D3DTSS_TCI_CAMERASPACENORMAL",
433 "D3DTSS_TCI_CAMERASPACEPOSITION",
434 "D3DTSS_TCI_CAMERASPACEREFLECTIONVECTOR",
435 "D3DTSS_TCI_SPHEREMAP",
438 D3DTEXTUREOP = Enum("D3DTEXTUREOP", [
447 "D3DTOP_ADDSIGNED2X",
450 "D3DTOP_BLENDDIFFUSEALPHA",
451 "D3DTOP_BLENDTEXTUREALPHA",
452 "D3DTOP_BLENDFACTORALPHA",
453 "D3DTOP_BLENDTEXTUREALPHAPM",
454 "D3DTOP_BLENDCURRENTALPHA",
455 "D3DTOP_PREMODULATE",
456 "D3DTOP_MODULATEALPHA_ADDCOLOR",
457 "D3DTOP_MODULATECOLOR_ADDALPHA",
458 "D3DTOP_MODULATEINVALPHA_ADDCOLOR",
459 "D3DTOP_MODULATEINVCOLOR_ADDALPHA",
461 "D3DTOP_BUMPENVMAPLUMINANCE",
462 "D3DTOP_DOTPRODUCT3",
463 "D3DTOP_MULTIPLYADD",
465 "D3DTOP_FORCE_DWORD",
468 D3DTA = Flags(DWORD, [
478 "D3DTA_ALPHAREPLICATE",
481 D3DTEXTUREFILTERTYPE = Enum("D3DTEXTUREFILTERTYPE", [
485 "D3DTEXF_ANISOTROPIC",
486 "D3DTEXF_PYRAMIDALQUAD",
487 "D3DTEXF_GAUSSIANQUAD",
488 "D3DTEXF_CONVOLUTIONMONO",
489 "D3DTEXF_FORCE_DWORD",
492 D3DPV = Flags(DWORD, [
493 "D3DPV_DONOTCOPYDATA",
496 D3DFVF = Flags(DWORD, [
498 "D3DFVF_POSITION_MASK",
511 "D3DFVF_TEXCOUNT_MASK",
512 "D3DFVF_TEXCOUNT_SHIFT",
522 "D3DFVF_LASTBETA_UBYTE4",
523 "D3DFVF_LASTBETA_D3DCOLOR",
525 "D3DFVF_TEXCOORDSIZE3(0)",
526 "D3DFVF_TEXCOORDSIZE2(0)",
527 "D3DFVF_TEXCOORDSIZE4(0)",
528 "D3DFVF_TEXCOORDSIZE1(0)",
529 "D3DFVF_TEXCOORDSIZE3(1)",
530 "D3DFVF_TEXCOORDSIZE2(1)",
531 "D3DFVF_TEXCOORDSIZE4(1)",
532 "D3DFVF_TEXCOORDSIZE1(1)",
533 "D3DFVF_TEXCOORDSIZE3(2)",
534 "D3DFVF_TEXCOORDSIZE2(2)",
535 "D3DFVF_TEXCOORDSIZE4(2)",
536 "D3DFVF_TEXCOORDSIZE1(2)",
537 "D3DFVF_TEXCOORDSIZE3(3)",
538 "D3DFVF_TEXCOORDSIZE2(3)",
539 "D3DFVF_TEXCOORDSIZE4(3)",
540 "D3DFVF_TEXCOORDSIZE1(3)",
543 D3DDECLUSAGE = Enum("D3DDECLUSAGE", [
544 "D3DDECLUSAGE_POSITION",
545 "D3DDECLUSAGE_BLENDWEIGHT",
546 "D3DDECLUSAGE_BLENDINDICES",
547 "D3DDECLUSAGE_NORMAL",
548 "D3DDECLUSAGE_PSIZE",
549 "D3DDECLUSAGE_TEXCOORD",
550 "D3DDECLUSAGE_TANGENT",
551 "D3DDECLUSAGE_BINORMAL",
552 "D3DDECLUSAGE_TESSFACTOR",
553 "D3DDECLUSAGE_POSITIONT",
554 "D3DDECLUSAGE_COLOR",
556 "D3DDECLUSAGE_DEPTH",
557 "D3DDECLUSAGE_SAMPLE",
560 D3DDECLMETHOD = Enum("D3DDECLMETHOD", [
561 "D3DDECLMETHOD_DEFAULT",
562 "D3DDECLMETHOD_PARTIALU",
563 "D3DDECLMETHOD_PARTIALV",
564 "D3DDECLMETHOD_CROSSUV",
566 "D3DDECLMETHOD_LOOKUP",
567 "D3DDECLMETHOD_LOOKUPPRESAMPLED",
570 D3DDECLTYPE = Enum("D3DDECLTYPE", [
571 "D3DDECLTYPE_FLOAT1",
572 "D3DDECLTYPE_FLOAT2",
573 "D3DDECLTYPE_FLOAT3",
574 "D3DDECLTYPE_FLOAT4",
575 "D3DDECLTYPE_D3DCOLOR",
576 "D3DDECLTYPE_UBYTE4",
577 "D3DDECLTYPE_SHORT2",
578 "D3DDECLTYPE_SHORT4",
579 "D3DDECLTYPE_UBYTE4N",
580 "D3DDECLTYPE_SHORT2N",
581 "D3DDECLTYPE_SHORT4N",
582 "D3DDECLTYPE_USHORT2N",
583 "D3DDECLTYPE_USHORT4N",
586 "D3DDECLTYPE_FLOAT16_2",
587 "D3DDECLTYPE_FLOAT16_4",
588 "D3DDECLTYPE_UNUSED",
591 D3DVERTEXELEMENT9 = Struct("D3DVERTEXELEMENT9", [
597 (BYTE, "UsageIndex"),
600 D3DSHADER_INSTRUCTION_OPCODE_TYPE = Enum("D3DSHADER_INSTRUCTION_OPCODE_TYPE", [
662 "D3DSIO_TEXM3x3SPEC",
663 "D3DSIO_TEXM3x3VSPEC",
670 "D3DSIO_TEXM3x2DEPTH",
686 "D3DSIO_FORCE_DWORD",
689 D3DSHADER_COMPARISON = Enum("D3DSHADER_COMPARISON", [
700 D3DSAMPLER_TEXTURE_TYPE = Enum("D3DSAMPLER_TEXTURE_TYPE", [
705 "D3DSTT_FORCE_DWORD",
708 D3DSP = Flags(DWORD, [
713 "D3DSP_WRITEMASK_ALL",
716 D3DSHADER_PARAM_DSTMOD_TYPE = Flags(DWORD, [
719 "D3DSPDM_PARTIALPRECISION",
720 "D3DSPDM_MSAMPCENTROID",
723 D3DSHADER_PARAM_REGISTER_TYPE = Enum("D3DSHADER_PARAM_REGISTER_TYPE", [
727 "D3DSPR_ADDR|D3DSPR_TEXTURE",
730 "D3DSPR_TEXCRDOUT|D3DSPR_OUTPUT",
740 "D3DSPR_TEMPFLOAT16",
744 "D3DSPR_FORCE_DWORD",
747 D3DSHADER_MISCTYPE_OFFSETS = Enum("D3DSHADER_MISCTYPE_OFFSETS", [
752 D3DVS_RASTOUT_OFFSETS = Enum("D3DVS_RASTOUT_OFFSETS", [
756 "D3DSRO_FORCE_DWORD",
759 D3DVS_ADDRESSMODE_TYPE = Enum("D3DVS_ADDRESSMODE_TYPE", [
760 "D3DVS_ADDRMODE_ABSOLUTE",
761 "D3DVS_ADDRMODE_RELATIVE",
762 "D3DVS_ADDRMODE_FORCE_DWORD",
765 D3DSHADER_ADDRESSMODE_TYPE = Enum("D3DSHADER_ADDRESSMODE_TYPE", [
766 "D3DSHADER_ADDRMODE_ABSOLUTE",
767 "D3DSHADER_ADDRMODE_RELATIVE",
768 "D3DSHADER_ADDRMODE_FORCE_DWORD",
771 D3DVS = Flags(DWORD, [
791 D3DSP = Flags(DWORD, [
793 "D3DSP_REPLICATERED",
794 "D3DSP_REPLICATEGREEN",
795 "D3DSP_REPLICATEBLUE",
796 "D3DSP_REPLICATEALPHA",
799 D3DSHADER_PARAM_SRCMOD_TYPE = Enum("D3DSHADER_PARAM_SRCMOD_TYPE", [
814 "D3DSPSM_FORCE_DWORD",
817 D3DBASISTYPE = Enum("D3DBASISTYPE", [
820 "D3DBASIS_CATMULL_ROM",
821 "D3DBASIS_FORCE_DWORD",
824 D3DDEGREETYPE = Enum("D3DDEGREETYPE", [
826 "D3DDEGREE_QUADRATIC",
829 "D3DDEGREE_FORCE_DWORD",
832 D3DPATCHEDGESTYLE = Enum("D3DPATCHEDGESTYLE", [
833 "D3DPATCHEDGE_DISCRETE",
834 "D3DPATCHEDGE_CONTINUOUS",
835 "D3DPATCHEDGE_FORCE_DWORD",
838 D3DSTATEBLOCKTYPE = Enum("D3DSTATEBLOCKTYPE", [
841 "D3DSBT_VERTEXSTATE",
842 "D3DSBT_FORCE_DWORD",
845 D3DVERTEXBLENDFLAGS = Enum("D3DVERTEXBLENDFLAGS", [
852 "D3DVBF_FORCE_DWORD",
855 D3DTEXTURETRANSFORMFLAGS = Enum("D3DTEXTURETRANSFORMFLAGS", [
862 "D3DTTFF_FORCE_DWORD",
865 D3DDEVTYPE = Enum("D3DDEVTYPE", [
869 "D3DDEVTYPE_NULLREF",
870 "D3DDEVTYPE_FORCE_DWORD",
873 D3DMULTISAMPLE_TYPE = Enum("D3DMULTISAMPLE_TYPE", [
874 "D3DMULTISAMPLE_NONE",
875 "D3DMULTISAMPLE_NONMASKABLE",
876 "D3DMULTISAMPLE_2_SAMPLES",
877 "D3DMULTISAMPLE_3_SAMPLES",
878 "D3DMULTISAMPLE_4_SAMPLES",
879 "D3DMULTISAMPLE_5_SAMPLES",
880 "D3DMULTISAMPLE_6_SAMPLES",
881 "D3DMULTISAMPLE_7_SAMPLES",
882 "D3DMULTISAMPLE_8_SAMPLES",
883 "D3DMULTISAMPLE_9_SAMPLES",
884 "D3DMULTISAMPLE_10_SAMPLES",
885 "D3DMULTISAMPLE_11_SAMPLES",
886 "D3DMULTISAMPLE_12_SAMPLES",
887 "D3DMULTISAMPLE_13_SAMPLES",
888 "D3DMULTISAMPLE_14_SAMPLES",
889 "D3DMULTISAMPLE_15_SAMPLES",
890 "D3DMULTISAMPLE_16_SAMPLES",
891 "D3DMULTISAMPLE_FORCE_DWORD",
894 D3DFORMAT = Enum("D3DFORMAT", [
907 "D3DFMT_A2B10G10R10",
911 "D3DFMT_A2R10G10B10",
912 "D3DFMT_A16B16G16R16",
923 "D3DFMT_A2W10V10U10",
933 "D3DFMT_D16_LOCKABLE",
940 "D3DFMT_D32F_LOCKABLE",
942 "D3DFMT_D32_LOCKABLE",
943 "D3DFMT_S8_LOCKABLE",
948 "D3DFMT_Q16W16V16U16",
949 "D3DFMT_MULTI2_ARGB8",
952 "D3DFMT_A16B16G16R16F",
955 "D3DFMT_A32B32G32R32F",
958 "D3DFMT_BINARYBUFFER",
959 "D3DFMT_FORCE_DWORD",
962 D3DDISPLAYMODE = Struct("D3DDISPLAYMODE", [
965 (UINT, "RefreshRate"),
966 (D3DFORMAT, "Format"),
969 D3DDEVICE_CREATION_PARAMETERS = Struct("D3DDEVICE_CREATION_PARAMETERS", [
970 (UINT, "AdapterOrdinal"),
971 (D3DDEVTYPE, "DeviceType"),
972 (HWND, "hFocusWindow"),
973 (DWORD, "BehaviorFlags"),
976 D3DSWAPEFFECT = Enum("D3DSWAPEFFECT", [
977 "D3DSWAPEFFECT_DISCARD",
978 "D3DSWAPEFFECT_FLIP",
979 "D3DSWAPEFFECT_COPY",
980 "D3DSWAPEFFECT_FORCE_DWORD",
983 D3DPOOL = Enum("D3DPOOL", [
988 "D3DPOOL_FORCE_DWORD",
991 D3DPRESENT = Flags(DWORD, [
992 "D3DPRESENT_RATE_DEFAULT",
995 D3DPRESENT_PARAMETERS = Struct("D3DPRESENT_PARAMETERS", [
996 (UINT, "BackBufferWidth"),
997 (UINT, "BackBufferHeight"),
998 (D3DFORMAT, "BackBufferFormat"),
999 (UINT, "BackBufferCount"),
1000 (D3DMULTISAMPLE_TYPE, "MultiSampleType"),
1001 (DWORD, "MultiSampleQuality"),
1002 (D3DSWAPEFFECT, "SwapEffect"),
1003 (HWND, "hDeviceWindow"),
1005 (BOOL, "EnableAutoDepthStencil"),
1006 (D3DFORMAT, "AutoDepthStencilFormat"),
1008 (UINT, "FullScreen_RefreshRateInHz"),
1009 (UINT, "PresentationInterval"),
1012 D3DPRESENTFLAG = Flags(DWORD, [
1013 "D3DPRESENTFLAG_LOCKABLE_BACKBUFFER",
1014 "D3DPRESENTFLAG_DISCARD_DEPTHSTENCIL",
1015 "D3DPRESENTFLAG_DEVICECLIP",
1016 "D3DPRESENTFLAG_VIDEO",
1017 "D3DPRESENTFLAG_NOAUTOROTATE",
1018 "D3DPRESENTFLAG_UNPRUNEDMODE",
1021 D3DGAMMARAMP = Struct("D3DGAMMARAMP", [
1023 (WORD, "green[256]"),
1024 (WORD, "blue[256]"),
1027 D3DBACKBUFFER_TYPE = Enum("D3DBACKBUFFER_TYPE", [
1028 "D3DBACKBUFFER_TYPE_MONO",
1029 "D3DBACKBUFFER_TYPE_LEFT",
1030 "D3DBACKBUFFER_TYPE_RIGHT",
1031 "D3DBACKBUFFER_TYPE_FORCE_DWORD",
1034 D3DRESOURCETYPE = Enum("D3DRESOURCETYPE", [
1038 "D3DRTYPE_VOLUMETEXTURE",
1039 "D3DRTYPE_CUBETEXTURE",
1040 "D3DRTYPE_VERTEXBUFFER",
1041 "D3DRTYPE_INDEXBUFFER",
1042 "D3DRTYPE_FORCE_DWORD",
1045 D3DUSAGE = Flags(DWORD, [
1046 "D3DUSAGE_RENDERTARGET",
1047 "D3DUSAGE_DEPTHSTENCIL",
1049 "D3DUSAGE_NONSECURE",
1050 "D3DUSAGE_AUTOGENMIPMAP",
1052 "D3DUSAGE_QUERY_LEGACYBUMPMAP",
1053 "D3DUSAGE_QUERY_SRGBREAD",
1054 "D3DUSAGE_QUERY_FILTER",
1055 "D3DUSAGE_QUERY_SRGBWRITE",
1056 "D3DUSAGE_QUERY_POSTPIXELSHADER_BLENDING",
1057 "D3DUSAGE_QUERY_VERTEXTEXTURE",
1058 "D3DUSAGE_QUERY_WRAPANDMIP",
1059 "D3DUSAGE_WRITEONLY",
1060 "D3DUSAGE_SOFTWAREPROCESSING",
1061 "D3DUSAGE_DONOTCLIP",
1063 "D3DUSAGE_RTPATCHES",
1064 "D3DUSAGE_NPATCHES",
1068 D3DCUBEMAP_FACES = Enum("D3DCUBEMAP_FACES", [
1069 "D3DCUBEMAP_FACE_POSITIVE_X",
1070 "D3DCUBEMAP_FACE_NEGATIVE_X",
1071 "D3DCUBEMAP_FACE_POSITIVE_Y",
1072 "D3DCUBEMAP_FACE_NEGATIVE_Y",
1073 "D3DCUBEMAP_FACE_POSITIVE_Z",
1074 "D3DCUBEMAP_FACE_NEGATIVE_Z",
1075 "D3DCUBEMAP_FACE_FORCE_DWORD",
1078 D3DLOCK = Flags(DWORD, [
1081 "D3DLOCK_NOOVERWRITE",
1082 "D3DLOCK_NOSYSLOCK",
1083 "D3DLOCK_DONOTWAIT",
1084 "D3DLOCK_NO_DIRTY_UPDATE",
1087 D3DVERTEXBUFFER_DESC = Struct("D3DVERTEXBUFFER_DESC", [
1088 (D3DFORMAT, "Format"),
1089 (D3DRESOURCETYPE, "Type"),
1096 D3DINDEXBUFFER_DESC = Struct("D3DINDEXBUFFER_DESC", [
1097 (D3DFORMAT, "Format"),
1098 (D3DRESOURCETYPE, "Type"),
1104 D3DSURFACE_DESC = Struct("D3DSURFACE_DESC", [
1105 (D3DFORMAT, "Format"),
1106 (D3DRESOURCETYPE, "Type"),
1109 (D3DMULTISAMPLE_TYPE, "MultiSampleType"),
1110 (DWORD, "MultiSampleQuality"),
1115 D3DVOLUME_DESC = Struct("D3DVOLUME_DESC", [
1116 (D3DFORMAT, "Format"),
1117 (D3DRESOURCETYPE, "Type"),
1125 D3DLOCKED_RECT = Struct("D3DLOCKED_RECT", [
1127 (Pointer(Void), "pBits"),
1130 D3DBOX = Struct("D3DBOX", [
1139 D3DLOCKED_BOX = Struct("D3DLOCKED_BOX", [
1141 (INT, "SlicePitch"),
1142 (Pointer(Void), "pBits"),
1145 D3DRANGE = Struct("D3DRANGE", [
1150 D3DRECTPATCH_INFO = Struct("D3DRECTPATCH_INFO", [
1151 (UINT, "StartVertexOffsetWidth"),
1152 (UINT, "StartVertexOffsetHeight"),
1156 (D3DBASISTYPE, "Basis"),
1157 (D3DDEGREETYPE, "Degree"),
1160 D3DTRIPATCH_INFO = Struct("D3DTRIPATCH_INFO", [
1161 (UINT, "StartVertexOffset"),
1162 (UINT, "NumVertices"),
1163 (D3DBASISTYPE, "Basis"),
1164 (D3DDEGREETYPE, "Degree"),
1167 D3DADAPTER_IDENTIFIER9 = Struct("D3DADAPTER_IDENTIFIER9", [
1169 (String, "Description"),
1170 (String, "DeviceName"),
1171 (LARGE_INTEGER, "DriverVersion"),
1172 (DWORD, "VendorId"),
1173 (DWORD, "DeviceId"),
1174 (DWORD, "SubSysId"),
1175 (DWORD, "Revision"),
1176 (GUID, "DeviceIdentifier"),
1177 (DWORD, "WHQLLevel"),
1180 D3DRASTER_STATUS = Struct("D3DRASTER_STATUS", [
1185 D3DDEBUGMONITORTOKENS = Enum("D3DDEBUGMONITORTOKENS", [
1188 "D3DDMT_FORCE_DWORD",
1191 D3DQUERYTYPE = Enum("D3DQUERYTYPE", [
1192 "D3DQUERYTYPE_VCACHE",
1193 "D3DQUERYTYPE_RESOURCEMANAGER",
1194 "D3DQUERYTYPE_VERTEXSTATS",
1195 "D3DQUERYTYPE_EVENT",
1196 "D3DQUERYTYPE_OCCLUSION",
1197 "D3DQUERYTYPE_TIMESTAMP",
1198 "D3DQUERYTYPE_TIMESTAMPDISJOINT",
1199 "D3DQUERYTYPE_TIMESTAMPFREQ",
1200 "D3DQUERYTYPE_PIPELINETIMINGS",
1201 "D3DQUERYTYPE_INTERFACETIMINGS",
1202 "D3DQUERYTYPE_VERTEXTIMINGS",
1203 "D3DQUERYTYPE_PIXELTIMINGS",
1204 "D3DQUERYTYPE_BANDWIDTHTIMINGS",
1205 "D3DQUERYTYPE_CACHEUTILIZATION",
1208 D3DISSUE = Flags(DWORD, [
1213 D3DGETDATA = Flags(DWORD, [
1217 D3DRESOURCESTATS = Struct("D3DRESOURCESTATS", [
1218 (BOOL, "bThrashing"),
1219 (DWORD, "ApproxBytesDownloaded"),
1220 (DWORD, "NumEvicts"),
1221 (DWORD, "NumVidCreates"),
1224 (DWORD, "NumUsedInVidMem"),
1225 (DWORD, "WorkingSet"),
1226 (DWORD, "WorkingSetBytes"),
1227 (DWORD, "TotalManaged"),
1228 (DWORD, "TotalBytes"),
1231 D3DDEVINFO_RESOURCEMANAGER = Struct("D3DDEVINFO_RESOURCEMANAGER", [
1232 (D3DRESOURCESTATS, "stats[D3DRTYPECOUNT]"),
1233 (D3DRESOURCESTATS, "stats[8]"),
1236 D3DDEVINFO_D3DVERTEXSTATS = Struct("D3DDEVINFO_D3DVERTEXSTATS", [
1237 (DWORD, "NumRenderedTriangles"),
1238 (DWORD, "NumExtraClippingTriangles"),
1241 D3DDEVINFO_VCACHE = Struct("D3DDEVINFO_VCACHE", [
1243 (DWORD, "OptMethod"),
1244 (DWORD, "CacheSize"),
1245 (DWORD, "MagicNumber"),
1248 D3DDEVINFO_D3D9PIPELINETIMINGS = Struct("D3DDEVINFO_D3D9PIPELINETIMINGS", [
1249 (FLOAT, "VertexProcessingTimePercent"),
1250 (FLOAT, "PixelProcessingTimePercent"),
1251 (FLOAT, "OtherGPUProcessingTimePercent"),
1252 (FLOAT, "GPUIdleTimePercent"),
1255 D3DDEVINFO_D3D9INTERFACETIMINGS = Struct("D3DDEVINFO_D3D9INTERFACETIMINGS", [
1256 (FLOAT, "WaitingForGPUToUseApplicationResourceTimePercent"),
1257 (FLOAT, "WaitingForGPUToAcceptMoreCommandsTimePercent"),
1258 (FLOAT, "WaitingForGPUToStayWithinLatencyTimePercent"),
1259 (FLOAT, "WaitingForGPUExclusiveResourceTimePercent"),
1260 (FLOAT, "WaitingForGPUOtherTimePercent"),
1263 D3DDEVINFO_D3D9STAGETIMINGS = Struct("D3DDEVINFO_D3D9STAGETIMINGS", [
1264 (FLOAT, "MemoryProcessingPercent"),
1265 (FLOAT, "ComputationProcessingPercent"),
1268 D3DDEVINFO_D3D9BANDWIDTHTIMINGS = Struct("D3DDEVINFO_D3D9BANDWIDTHTIMINGS", [
1269 (FLOAT, "MaxBandwidthUtilized"),
1270 (FLOAT, "FrontEndUploadMemoryUtilizedPercent"),
1271 (FLOAT, "VertexRateUtilizedPercent"),
1272 (FLOAT, "TriangleSetupRateUtilizedPercent"),
1273 (FLOAT, "FillRateUtilizedPercent"),
1276 D3DDEVINFO_D3D9CACHEUTILIZATION = Struct("D3DDEVINFO_D3D9CACHEUTILIZATION", [
1277 (FLOAT, "TextureCacheHitRate"),
1278 (FLOAT, "PostTransformVertexCacheHitRate"),
1281 D3DCOMPOSERECTSOP = Enum("D3DCOMPOSERECTSOP", [
1282 "D3DCOMPOSERECTS_COPY",
1283 "D3DCOMPOSERECTS_OR",
1284 "D3DCOMPOSERECTS_AND",
1285 "D3DCOMPOSERECTS_NEG",
1286 "D3DCOMPOSERECTS_FORCE_DWORD",
1289 D3DCOMPOSERECTDESC = Struct("D3DCOMPOSERECTDESC", [
1296 D3DCOMPOSERECTDESTINATION = Struct("D3DCOMPOSERECTDESTINATION", [
1297 (USHORT, "SrcRectIndex"),
1298 (USHORT, "Reserved"),
1303 D3DPRESENTSTATS = Struct("D3DPRESENTSTATS", [
1304 (UINT, "PresentCount"),
1305 (UINT, "PresentRefreshCount"),
1306 (UINT, "SyncRefreshCount"),
1307 (LARGE_INTEGER, "SyncQPCTime"),
1308 (LARGE_INTEGER, "SyncGPUTime"),
1311 D3DSCANLINEORDERING = Enum("D3DSCANLINEORDERING", [
1312 "D3DSCANLINEORDERING_UNKNOWN",
1313 "D3DSCANLINEORDERING_PROGRESSIVE",
1314 "D3DSCANLINEORDERING_INTERLACED",
1317 D3DDISPLAYMODEEX = Struct("D3DDISPLAYMODEEX", [
1321 (UINT, "RefreshRate"),
1322 (D3DFORMAT, "Format"),
1323 (D3DSCANLINEORDERING, "ScanLineOrdering"),
1326 D3DDISPLAYMODEFILTER = Struct("D3DDISPLAYMODEFILTER", [
1328 (D3DFORMAT, "Format"),
1329 (D3DSCANLINEORDERING, "ScanLineOrdering"),
1332 D3DDISPLAYROTATION = Enum("D3DDISPLAYROTATION", [
1333 "D3DDISPLAYROTATION_IDENTITY",
1334 "D3DDISPLAYROTATION_90",
1335 "D3DDISPLAYROTATION_180",
1336 "D3DDISPLAYROTATION_270",
1339 D3D9_RESOURCE_PRIORITY = Flags(DWORD, [
1340 "D3D9_RESOURCE_PRIORITY_MINIMUM",
1341 "D3D9_RESOURCE_PRIORITY_LOW",
1342 "D3D9_RESOURCE_PRIORITY_NORMAL",
1343 "D3D9_RESOURCE_PRIORITY_HIGH",
1344 "D3D9_RESOURCE_PRIORITY_MAXIMUM",