]> git.cworth.org Git - apitrace/blobdiff - wrappers/d3d10trace.py
retrace: Dump call number on exceptions.
[apitrace] / wrappers / d3d10trace.py
index d43f042b08f2a8e6efa1328f045b524f24cc88ac..1de13927c5bf7fe9562f749029da3848af520fea 100644 (file)
 ##########################################################################/
 
 
-from dlltrace import DllTracer
-from specs import stdapi
+from d3dcommontrace import D3DCommonTracer
+from specs.stdapi import API
+from specs.dxgi import dxgi
 from specs.d3d10misc import d3d10
 
 
-class D3D10Tracer(DllTracer):
-
-    def serializeArgValue(self, function, arg):
-        # Dump shaders as strings
-        if isinstance(arg.type, stdapi.Blob) and arg.name.startswith('pShaderBytecode'):
-            print '    DumpShader(trace::localWriter, %s, %s);' % (arg.name, arg.type.size)
-            return
-
-        DllTracer.serializeArgValue(self, function, arg)
-
 if __name__ == '__main__':
     print '#define INITGUID'
     print
@@ -46,7 +37,12 @@ if __name__ == '__main__':
     print '#include "os.hpp"'
     print
     print '#include "d3d10imports.hpp"'
-    print '#include "d3d10shader.hpp"'
+    print '#include "d3dcommonshader.hpp"'
+    print '#include "d3d10size.hpp"'
     print
-    tracer = D3D10Tracer('d3d10.dll')
-    tracer.traceApi(d3d10)
+
+    api = API()
+    api.addModule(dxgi)
+    api.addModule(d3d10)
+    tracer = D3DCommonTracer()
+    tracer.traceApi(api)