]> git.cworth.org Git - apitrace/blobdiff - trace.py
Reorder wglapi's functions to match wgl.spec.
[apitrace] / trace.py
index 90f1ef6b03914ccad65e5941213a474bdb3e93c3..ab55555c5ec5d12e0225c140d603b9448ccde484 100644 (file)
--- a/trace.py
+++ b/trace.py
@@ -51,7 +51,7 @@ class DumpDeclarator(base.OnceVisitor):
         for type, name in struct.members:
             self.visit(type)
         print 'static void __traceStruct%s(const %s &value) {' % (struct.id, struct.expr)
-        print '    Log::BeginStruct("%s");' % struct.name
+        print '    Log::BeginStruct(%u);' % len(struct.members)
         for type, name in struct.members:
             print '    Log::BeginMember("%s");' % (name,)
             dump_instance(type, 'value.%s' % (name,))
@@ -154,9 +154,11 @@ class DumpImplementer(base.Visitor):
 
     def visit_pointer(self, pointer, instance):
         print '    if(%s) {' % instance
-        print '        Log::BeginPointer((const void *)%s);' % (instance,)
+        print '        Log::BeginArray(1);'
+        print '        Log::BeginElement();'
         dump_instance(pointer.type, "*" + instance)
-        print '        Log::EndPointer();'
+        print '        Log::EndElement();'
+        print '        Log::EndArray();'
         print '    }'
         print '    else'
         print '        Log::LiteralNull();'
@@ -338,7 +340,7 @@ class Tracer:
         print
 
     def dump_arg(self, function, arg):
-        print '    Log::BeginArg("%s");' % (arg.name,)
+        print '    Log::BeginArg(%u, "%s");' % (arg.index, arg.name,)
         dump_instance(arg.type, arg.name)
         print '    Log::EndArg();'
 
@@ -400,7 +402,7 @@ class Tracer:
             print '    %s __result;' % method.type
             result = '__result = '
         print '    Log::BeginCall("%s");' % (interface.name + '::' + method.name)
-        print '    Log::BeginArg("this");'
+        print '    Log::BeginArg(0, "this");'
         print '    Log::LiteralOpaque((const void *)m_pInstance);'
         print '    Log::EndArg();'
         for arg in method.args: