]> git.cworth.org Git - apitrace/blob - d3d8caps.py
More instructions and copyright updates.
[apitrace] / d3d8caps.py
1 #############################################################################
2 #
3 # Copyright 2008 Jose Fonseca, Tungsten Graphics, Inc.
4 #
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.
9 #
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.
14 #
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/>.
17 #
18 #############################################################################
19
20 """d3d8caps.h"""
21
22 from windows import *
23 from d3d8types import *
24
25 D3DCAPS = Flags(DWORD, [
26     "D3DCAPS_READ_SCANLINE",
27 ])
28
29 D3DCAPS2 = Flags(DWORD, [
30     "D3DCAPS2_NO2DDURING3DSCENE",
31     "D3DCAPS2_FULLSCREENGAMMA",
32     "D3DCAPS2_CANRENDERWINDOWED",
33     "D3DCAPS2_CANCALIBRATEGAMMA",
34     "D3DCAPS2_RESERVED",
35     "D3DCAPS2_CANMANAGERESOURCE",
36     "D3DCAPS2_DYNAMICTEXTURES",
37 ])
38
39 D3DCAPS3 = Flags(DWORD, [
40     "D3DCAPS3_RESERVED",
41     "D3DCAPS3_ALPHA_FULLSCREEN_FLIP_OR_DISCARD",
42 ])
43
44 D3DPRESENT_INTERVAL = Flags(DWORD, [
45     "D3DPRESENT_INTERVAL_DEFAULT",
46     "D3DPRESENT_INTERVAL_ONE",
47     "D3DPRESENT_INTERVAL_TWO",
48     "D3DPRESENT_INTERVAL_THREE",
49     "D3DPRESENT_INTERVAL_FOUR",
50     "D3DPRESENT_INTERVAL_IMMEDIATE",
51 ])
52
53 D3DCURSORCAPS = Flags(DWORD, [
54     "D3DCURSORCAPS_COLOR",
55     "D3DCURSORCAPS_LOWRES",
56 ])
57
58 D3DDEVCAPS = Flags(DWORD, [
59     "D3DDEVCAPS_EXECUTESYSTEMMEMORY",
60     "D3DDEVCAPS_EXECUTEVIDEOMEMORY",
61     "D3DDEVCAPS_TLVERTEXSYSTEMMEMORY",
62     "D3DDEVCAPS_TLVERTEXVIDEOMEMORY",
63     "D3DDEVCAPS_TEXTURESYSTEMMEMORY",
64     "D3DDEVCAPS_TEXTUREVIDEOMEMORY",
65     "D3DDEVCAPS_DRAWPRIMTLVERTEX",
66     "D3DDEVCAPS_CANRENDERAFTERFLIP",
67     "D3DDEVCAPS_TEXTURENONLOCALVIDMEM",
68     "D3DDEVCAPS_DRAWPRIMITIVES2",
69     "D3DDEVCAPS_SEPARATETEXTUREMEMORIES",
70     "D3DDEVCAPS_DRAWPRIMITIVES2EX",
71     "D3DDEVCAPS_HWTRANSFORMANDLIGHT",
72     "D3DDEVCAPS_CANBLTSYSTONONLOCAL",
73     "D3DDEVCAPS_HWRASTERIZATION",
74     "D3DDEVCAPS_PUREDEVICE",
75     "D3DDEVCAPS_QUINTICRTPATCHES",
76     "D3DDEVCAPS_RTPATCHES",
77     "D3DDEVCAPS_RTPATCHHANDLEZERO",
78     "D3DDEVCAPS_NPATCHES",
79 ])
80
81 D3DPMISCCAPS = Flags(DWORD, [
82     "D3DPMISCCAPS_MASKZ",
83     "D3DPMISCCAPS_LINEPATTERNREP",
84     "D3DPMISCCAPS_CULLNONE",
85     "D3DPMISCCAPS_CULLCW",
86     "D3DPMISCCAPS_CULLCCW",
87     "D3DPMISCCAPS_COLORWRITEENABLE",
88     "D3DPMISCCAPS_CLIPPLANESCALEDPOINTS",
89     "D3DPMISCCAPS_CLIPTLVERTS",
90     "D3DPMISCCAPS_TSSARGTEMP",
91     "D3DPMISCCAPS_BLENDOP",
92     "D3DPMISCCAPS_NULLREFERENCE",
93 ])
94
95 D3DLINECAPS = Flags(DWORD, [
96     "D3DLINECAPS_TEXTURE",
97     "D3DLINECAPS_ZTEST",
98     "D3DLINECAPS_BLEND",
99     "D3DLINECAPS_ALPHACMP",
100     "D3DLINECAPS_FOG",
101 ])
102
103 D3DPRASTERCAPS = Flags(DWORD, [
104     "D3DPRASTERCAPS_DITHER",
105     "D3DPRASTERCAPS_PAT",
106     "D3DPRASTERCAPS_ZTEST",
107     "D3DPRASTERCAPS_FOGVERTEX",
108     "D3DPRASTERCAPS_FOGTABLE",
109     "D3DPRASTERCAPS_ANTIALIASEDGES",
110     "D3DPRASTERCAPS_MIPMAPLODBIAS",
111     "D3DPRASTERCAPS_ZBIAS",
112     "D3DPRASTERCAPS_ZBUFFERLESSHSR",
113     "D3DPRASTERCAPS_FOGRANGE",
114     "D3DPRASTERCAPS_ANISOTROPY",
115     "D3DPRASTERCAPS_WBUFFER",
116     "D3DPRASTERCAPS_WFOG",
117     "D3DPRASTERCAPS_ZFOG",
118     "D3DPRASTERCAPS_COLORPERSPECTIVE",
119     "D3DPRASTERCAPS_STRETCHBLTMULTISAMPLE",
120 ])
121
122 D3DPCMPCAPS = Flags(DWORD, [
123     "D3DPCMPCAPS_NEVER",
124     "D3DPCMPCAPS_LESS",
125     "D3DPCMPCAPS_EQUAL",
126     "D3DPCMPCAPS_LESSEQUAL",
127     "D3DPCMPCAPS_GREATER",
128     "D3DPCMPCAPS_NOTEQUAL",
129     "D3DPCMPCAPS_GREATEREQUAL",
130     "D3DPCMPCAPS_ALWAYS",
131 ])
132
133 D3DPBLENDCAPS = Flags(DWORD, [
134     "D3DPBLENDCAPS_ZERO",
135     "D3DPBLENDCAPS_ONE",
136     "D3DPBLENDCAPS_SRCCOLOR",
137     "D3DPBLENDCAPS_INVSRCCOLOR",
138     "D3DPBLENDCAPS_SRCALPHA",
139     "D3DPBLENDCAPS_INVSRCALPHA",
140     "D3DPBLENDCAPS_DESTALPHA",
141     "D3DPBLENDCAPS_INVDESTALPHA",
142     "D3DPBLENDCAPS_DESTCOLOR",
143     "D3DPBLENDCAPS_INVDESTCOLOR",
144     "D3DPBLENDCAPS_SRCALPHASAT",
145     "D3DPBLENDCAPS_BOTHSRCALPHA",
146     "D3DPBLENDCAPS_BOTHINVSRCALPHA",
147 ])
148
149 D3DPSHADECAPS = Flags(DWORD, [
150     "D3DPSHADECAPS_COLORGOURAUDRGB",
151     "D3DPSHADECAPS_SPECULARGOURAUDRGB",
152     "D3DPSHADECAPS_ALPHAGOURAUDBLEND",
153     "D3DPSHADECAPS_FOGGOURAUD",
154 ])
155
156 D3DPTEXTURECAPS = Flags(DWORD, [
157     "D3DPTEXTURECAPS_PERSPECTIVE",
158     "D3DPTEXTURECAPS_POW2",
159     "D3DPTEXTURECAPS_ALPHA",
160     "D3DPTEXTURECAPS_SQUAREONLY",
161     "D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE",
162     "D3DPTEXTURECAPS_ALPHAPALETTE",
163     "D3DPTEXTURECAPS_NONPOW2CONDITIONAL",
164     "D3DPTEXTURECAPS_PROJECTED",
165     "D3DPTEXTURECAPS_CUBEMAP",
166     "D3DPTEXTURECAPS_VOLUMEMAP",
167     "D3DPTEXTURECAPS_MIPMAP",
168     "D3DPTEXTURECAPS_MIPVOLUMEMAP",
169     "D3DPTEXTURECAPS_MIPCUBEMAP",
170     "D3DPTEXTURECAPS_CUBEMAP_POW2",
171     "D3DPTEXTURECAPS_VOLUMEMAP_POW2",
172 ])
173
174 D3DPTFILTERCAPS = Flags(DWORD, [
175     "D3DPTFILTERCAPS_MINFPOINT",
176     "D3DPTFILTERCAPS_MINFLINEAR",
177     "D3DPTFILTERCAPS_MINFANISOTROPIC",
178     "D3DPTFILTERCAPS_MIPFPOINT",
179     "D3DPTFILTERCAPS_MIPFLINEAR",
180     "D3DPTFILTERCAPS_MAGFPOINT",
181     "D3DPTFILTERCAPS_MAGFLINEAR",
182     "D3DPTFILTERCAPS_MAGFANISOTROPIC",
183     "D3DPTFILTERCAPS_MAGFAFLATCUBIC",
184     "D3DPTFILTERCAPS_MAGFGAUSSIANCUBIC",
185 ])
186
187 D3DPTADDRESSCAPS = Flags(DWORD, [
188     "D3DPTADDRESSCAPS_WRAP",
189     "D3DPTADDRESSCAPS_MIRROR",
190     "D3DPTADDRESSCAPS_CLAMP",
191     "D3DPTADDRESSCAPS_BORDER",
192     "D3DPTADDRESSCAPS_INDEPENDENTUV",
193     "D3DPTADDRESSCAPS_MIRRORONCE",
194 ])
195
196 D3DSTENCILCAPS = Flags(DWORD, [
197     "D3DSTENCILCAPS_KEEP",
198     "D3DSTENCILCAPS_ZERO",
199     "D3DSTENCILCAPS_REPLACE",
200     "D3DSTENCILCAPS_INCRSAT",
201     "D3DSTENCILCAPS_DECRSAT",
202     "D3DSTENCILCAPS_INVERT",
203     "D3DSTENCILCAPS_INCR",
204     "D3DSTENCILCAPS_DECR",
205 ])
206
207 D3DTEXOPCAPS = Flags(DWORD, [
208     "D3DTEXOPCAPS_DISABLE",
209     "D3DTEXOPCAPS_SELECTARG1",
210     "D3DTEXOPCAPS_SELECTARG2",
211     "D3DTEXOPCAPS_MODULATE",
212     "D3DTEXOPCAPS_MODULATE2X",
213     "D3DTEXOPCAPS_MODULATE4X",
214     "D3DTEXOPCAPS_ADD",
215     "D3DTEXOPCAPS_ADDSIGNED",
216     "D3DTEXOPCAPS_ADDSIGNED2X",
217     "D3DTEXOPCAPS_SUBTRACT",
218     "D3DTEXOPCAPS_ADDSMOOTH",
219     "D3DTEXOPCAPS_BLENDDIFFUSEALPHA",
220     "D3DTEXOPCAPS_BLENDTEXTUREALPHA",
221     "D3DTEXOPCAPS_BLENDFACTORALPHA",
222     "D3DTEXOPCAPS_BLENDTEXTUREALPHAPM",
223     "D3DTEXOPCAPS_BLENDCURRENTALPHA",
224     "D3DTEXOPCAPS_PREMODULATE",
225     "D3DTEXOPCAPS_MODULATEALPHA_ADDCOLOR",
226     "D3DTEXOPCAPS_MODULATECOLOR_ADDALPHA",
227     "D3DTEXOPCAPS_MODULATEINVALPHA_ADDCOLOR",
228     "D3DTEXOPCAPS_MODULATEINVCOLOR_ADDALPHA",
229     "D3DTEXOPCAPS_BUMPENVMAP",
230     "D3DTEXOPCAPS_BUMPENVMAPLUMINANCE",
231     "D3DTEXOPCAPS_DOTPRODUCT3",
232     "D3DTEXOPCAPS_MULTIPLYADD",
233     "D3DTEXOPCAPS_LERP",
234 ])
235
236 D3DFVFCAPS = Flags(DWORD, [
237     "D3DFVFCAPS_TEXCOORDCOUNTMASK",
238     "D3DFVFCAPS_DONOTSTRIPELEMENTS",
239     "D3DFVFCAPS_PSIZE",
240 ])
241
242 D3DVTXPCAPS = Flags(DWORD, [
243     "D3DVTXPCAPS_TEXGEN",
244     "D3DVTXPCAPS_MATERIALSOURCE7",
245     "D3DVTXPCAPS_DIRECTIONALLIGHTS",
246     "D3DVTXPCAPS_POSITIONALLIGHTS",
247     "D3DVTXPCAPS_LOCALVIEWER",
248     "D3DVTXPCAPS_TWEENING",
249     "D3DVTXPCAPS_NO_VSDT_UBYTE4",
250 ])
251
252 #D3DPS_VERSION = Enum("DWORD", [
253 #    "D3DPS_VERSION(0,0)",
254 #    "D3DPS_VERSION(1,0)",
255 #    "D3DPS_VERSION(1,1)",
256 #    "D3DPS_VERSION(1,2)",
257 #    "D3DPS_VERSION(1,3)",
258 #    "D3DPS_VERSION(1,4)",
259 #    "D3DPS_VERSION(2,0)",
260 #    "D3DPS_VERSION(3,0)",
261 #])
262 D3DPS_VERSION = DWORD
263
264 #D3DVS_VERSION = Enum("DWORD", [
265 #    "D3DVS_VERSION(0,0)",
266 #    "D3DVS_VERSION(1,0)",
267 #    "D3DVS_VERSION(1,1)",
268 #    "D3DVS_VERSION(2,0)",
269 #    "D3DVS_VERSION(3,0)",
270 #])
271 D3DVS_VERSION = DWORD
272
273
274 D3DCAPS8 = Struct("D3DCAPS8", [
275     (D3DDEVTYPE, "DeviceType"),
276     (UINT, "AdapterOrdinal"),
277     (D3DCAPS, "Caps"),
278     (D3DCAPS2, "Caps2"),
279     (D3DCAPS3, "Caps3"),
280     (D3DPRESENT_INTERVAL, "PresentationIntervals"),
281     (D3DCURSORCAPS, "CursorCaps"),
282     (D3DDEVCAPS, "DevCaps"),
283     (D3DPMISCCAPS, "PrimitiveMiscCaps"),
284     (D3DPRASTERCAPS, "RasterCaps"),
285     (D3DPCMPCAPS, "ZCmpCaps"),
286     (D3DPBLENDCAPS, "SrcBlendCaps"),
287     (D3DPBLENDCAPS, "DestBlendCaps"),
288     (D3DPCMPCAPS, "AlphaCmpCaps"),
289     (D3DPSHADECAPS, "ShadeCaps"),
290     (D3DPTEXTURECAPS, "TextureCaps"),
291     (D3DPTFILTERCAPS, "TextureFilterCaps"),
292     (D3DPTFILTERCAPS, "CubeTextureFilterCaps"),
293     (D3DPTFILTERCAPS, "VolumeTextureFilterCaps"),
294     (D3DPTADDRESSCAPS, "TextureAddressCaps"),
295     (D3DPTADDRESSCAPS, "VolumeTextureAddressCaps"),
296     (D3DLINECAPS, "LineCaps"),
297     (DWORD, "MaxTextureWidth"),
298     (DWORD, "MaxTextureHeight"),
299     (DWORD, "MaxVolumeExtent"),
300     (DWORD, "MaxTextureRepeat"),
301     (DWORD, "MaxTextureAspectRatio"),
302     (DWORD, "MaxAnisotropy"),
303     (Float, "MaxVertexW"),
304     (Float, "GuardBandLeft"),
305     (Float, "GuardBandTop"),
306     (Float, "GuardBandRight"),
307     (Float, "GuardBandBottom"),
308     (Float, "ExtentsAdjust"),
309     (D3DSTENCILCAPS, "StencilCaps"),
310     (D3DFVFCAPS, "FVFCaps"),
311     (D3DTEXOPCAPS, "TextureOpCaps"),
312     (DWORD, "MaxTextureBlendStages"),
313     (DWORD, "MaxSimultaneousTextures"),
314     (D3DVTXPCAPS, "VertexProcessingCaps"),
315     (DWORD, "MaxActiveLights"),
316     (DWORD, "MaxUserClipPlanes"),
317     (DWORD, "MaxVertexBlendMatrices"),
318     (DWORD, "MaxVertexBlendMatrixIndex"),
319     (Float, "MaxPointSize"),
320     (DWORD, "MaxPrimitiveCount"),
321     (DWORD, "MaxVertexIndex"),
322     (DWORD, "MaxStreams"),
323     (DWORD, "MaxStreamStride"),
324     (D3DVS_VERSION, "VertexShaderVersion"),
325     (DWORD, "MaxVertexShaderConst"),
326     (D3DPS_VERSION, "PixelShaderVersion"),
327     (Float, "MaxPixelShaderValue"),
328 ])
329