]> git.cworth.org Git - apitrace/blobdiff - specs/d3d9types.py
More polymorphic types in D3D9.
[apitrace] / specs / d3d9types.py
index 6dc250c81733dd0d0a1a0f4905402a44932e294d..ca9340ca65ab326b2c9213786912f71358e333da 100644 (file)
@@ -403,50 +403,12 @@ D3DRENDERSTATEVALUE = Polymorphic(DWORD, "State", [
     # XXX: D3DRENDERSTATE_WRAPBIAS + n
 ])
 
-D3DRENDERSTATETYPE = Enum("D3DRENDERSTATETYPE",
-    [expr for expr, types in D3DRENDERSTATEVALUE.switch_types]
-)
-
-D3DTEXTURESTAGESTATETYPE = Enum("D3DTEXTURESTAGESTATETYPE", [
-    "D3DTSS_COLOROP",
-    "D3DTSS_COLORARG1",
-    "D3DTSS_COLORARG2",
-    "D3DTSS_ALPHAOP",
-    "D3DTSS_ALPHAARG1",
-    "D3DTSS_ALPHAARG2",
-    "D3DTSS_BUMPENVMAT00",
-    "D3DTSS_BUMPENVMAT01",
-    "D3DTSS_BUMPENVMAT10",
-    "D3DTSS_BUMPENVMAT11",
-    "D3DTSS_TEXCOORDINDEX",
-    "D3DTSS_BUMPENVLSCALE",
-    "D3DTSS_BUMPENVLOFFSET",
-    "D3DTSS_TEXTURETRANSFORMFLAGS",
-    "D3DTSS_COLORARG0",
-    "D3DTSS_ALPHAARG0",
-    "D3DTSS_RESULTARG",
-    "D3DTSS_CONSTANT",
+D3DRENDERSTATETYPE = Enum("D3DRENDERSTATETYPE", [
+    expr for expr, types in D3DRENDERSTATEVALUE.switch_types
 ])
 
-D3DSAMPLERSTATETYPE = Enum("D3DSAMPLERSTATETYPE", [
-
-    "D3DSAMP_ADDRESSU",
-    "D3DSAMP_ADDRESSV",
-    "D3DSAMP_ADDRESSW",
-    "D3DSAMP_BORDERCOLOR",
-    "D3DSAMP_MAGFILTER",
-    "D3DSAMP_MINFILTER",
-    "D3DSAMP_MIPFILTER",
-    "D3DSAMP_MIPMAPLODBIAS",
-    "D3DSAMP_MAXMIPLEVEL",
-    "D3DSAMP_MAXANISOTROPY",
-    "D3DSAMP_SRGBTEXTURE",
-    "D3DSAMP_ELEMENTINDEX",
-    "D3DSAMP_DMAPOFFSET",
-])
-
-D3DTSS = Flags(DWORD, [
-    "D3DTSS_TCI_PASSTHRU",
+D3DTSS_TCI = Flags(DWORD, [
+    #"D3DTSS_TCI_PASSTHRU", 0
     "D3DTSS_TCI_CAMERASPACENORMAL",
     "D3DTSS_TCI_CAMERASPACEPOSITION",
     "D3DTSS_TCI_CAMERASPACEREFLECTIONVECTOR",
@@ -495,6 +457,41 @@ D3DTA = Flags(DWORD, [
     "D3DTA_ALPHAREPLICATE",
 ])
 
+D3DTEXTURETRANSFORMFLAGS = Enum("D3DTEXTURETRANSFORMFLAGS", [
+    "D3DTTFF_DISABLE",
+    "D3DTTFF_COUNT1",
+    "D3DTTFF_COUNT2",
+    "D3DTTFF_COUNT3",
+    "D3DTTFF_COUNT4",
+    "D3DTTFF_PROJECTED",
+])
+
+
+D3DTEXTURESTAGESTATEVALUE = Polymorphic(DWORD, "Type", [
+    ("D3DTSS_COLOROP", D3DTEXTUREOP),
+    ("D3DTSS_COLORARG1", D3DTA),
+    ("D3DTSS_COLORARG2", D3DTA),
+    ("D3DTSS_ALPHAOP", D3DTEXTUREOP),
+    ("D3DTSS_ALPHAARG1", D3DTA),
+    ("D3DTSS_ALPHAARG2", D3DTA),
+    ("D3DTSS_BUMPENVMAT00", FLOAT_AS_DWORD),
+    ("D3DTSS_BUMPENVMAT01", FLOAT_AS_DWORD),
+    ("D3DTSS_BUMPENVMAT10", FLOAT_AS_DWORD),
+    ("D3DTSS_BUMPENVMAT11", FLOAT_AS_DWORD),
+    ("D3DTSS_TEXCOORDINDEX", D3DTSS_TCI,),
+    ("D3DTSS_BUMPENVLSCALE", FLOAT_AS_DWORD),
+    ("D3DTSS_BUMPENVLOFFSET", FLOAT_AS_DWORD),
+    ("D3DTSS_TEXTURETRANSFORMFLAGS", D3DTEXTURETRANSFORMFLAGS),
+    ("D3DTSS_COLORARG0", D3DTA,),
+    ("D3DTSS_ALPHAARG0", D3DTA,),
+    ("D3DTSS_RESULTARG", D3DTA,),
+    ("D3DTSS_CONSTANT", D3DCOLOR),
+])
+
+D3DTEXTURESTAGESTATETYPE = Enum("D3DTEXTURESTAGESTATETYPE", [
+    expr for expr, types in D3DTEXTURESTAGESTATEVALUE.switch_types
+])
+
 D3DTEXTUREFILTERTYPE = Enum("D3DTEXTUREFILTERTYPE", [
     "D3DTEXF_NONE",
     "D3DTEXF_POINT",
@@ -505,6 +502,26 @@ D3DTEXTUREFILTERTYPE = Enum("D3DTEXTUREFILTERTYPE", [
     "D3DTEXF_CONVOLUTIONMONO",
 ])
 
+D3DSAMPLERSTATEVALUE = Polymorphic(DWORD, "Type", [
+    ("D3DSAMP_ADDRESSU", D3DTEXTUREADDRESS),
+    ("D3DSAMP_ADDRESSV", D3DTEXTUREADDRESS),
+    ("D3DSAMP_ADDRESSW", D3DTEXTUREADDRESS),
+    ("D3DSAMP_BORDERCOLOR", D3DCOLOR),
+    ("D3DSAMP_MAGFILTER", D3DTEXTUREFILTERTYPE),
+    ("D3DSAMP_MINFILTER", D3DTEXTUREFILTERTYPE),
+    ("D3DSAMP_MIPFILTER", D3DTEXTUREFILTERTYPE),
+    ("D3DSAMP_MIPMAPLODBIAS", FLOAT_AS_DWORD),
+    ("D3DSAMP_MAXMIPLEVEL", DWORD),
+    ("D3DSAMP_MAXANISOTROPY", DWORD),
+    ("D3DSAMP_SRGBTEXTURE", BOOL),
+    ("D3DSAMP_ELEMENTINDEX", DWORD),
+    ("D3DSAMP_DMAPOFFSET", DWORD),
+])
+
+D3DSAMPLERSTATETYPE = Enum("D3DSAMPLERSTATETYPE", [
+    expr for expr, types in D3DSAMPLERSTATEVALUE.switch_types
+])
+
 D3DPV = Flags(DWORD, [
     "D3DPV_DONOTCOPYDATA",
 ])
@@ -835,15 +852,6 @@ D3DSTATEBLOCKTYPE = Enum("D3DSTATEBLOCKTYPE", [
     "D3DSBT_VERTEXSTATE",
 ])
 
-D3DTEXTURETRANSFORMFLAGS = Enum("D3DTEXTURETRANSFORMFLAGS", [
-    "D3DTTFF_DISABLE",
-    "D3DTTFF_COUNT1",
-    "D3DTTFF_COUNT2",
-    "D3DTTFF_COUNT3",
-    "D3DTTFF_COUNT4",
-    "D3DTTFF_PROJECTED",
-])
-
 D3DDEVTYPE = Enum("D3DDEVTYPE", [
     "D3DDEVTYPE_HAL",
     "D3DDEVTYPE_REF",