Esempio n. 1
0
    def extractArg(self, function, arg, arg_type, lvalue, rvalue):
        # Handle DDCREATE_* flags
        if arg.type is DDCREATE_LPGUID:
            print '    if (%s.toArray()) {' % rvalue
            Retracer.extractArg(self, function, arg, arg_type, lvalue, rvalue)
            print '    } else {'
            print '        %s = static_cast<%s>(%s.toPointer());' % (lvalue, arg_type, rvalue)
            print '    }'
            return

        Retracer.extractArg(self, function, arg, arg_type, lvalue, rvalue)
Esempio n. 2
0
    def extractArg(self, function, arg, arg_type, lvalue, rvalue):
        # Handle DDCREATE_* flags
        if arg.type is DDCREATE_LPGUID:
            print '    if (%s.toArray()) {' % rvalue
            Retracer.extractArg(self, function, arg, arg_type, lvalue, rvalue)
            print '    } else {'
            print '        %s = static_cast<%s>(%s.toPointer());' % (
                lvalue, arg_type, rvalue)
            print '    }'
            return

        Retracer.extractArg(self, function, arg, arg_type, lvalue, rvalue)
Esempio n. 3
0
    def extractArg(self, function, arg, arg_type, lvalue, rvalue):
        # Set object names
        if function.name == 'SetPrivateData' and arg.name == 'pData':
            iid = function.args[0].name
            print r'    if (%s != WKPDID_D3DDebugObjectName) {' % iid
            print r'        return;'
            print r'    }'
            # Interpret argument as string
            Retracer.extractArg(self, function, arg, LPCSTR, lvalue, rvalue)
            print r'    assert(pData);'
            print r'    assert(DataSize == strlen((const char *)pData));'
            return

        Retracer.extractArg(self, function, arg, arg_type, lvalue, rvalue)
Esempio n. 4
0
    def extractArg(self, function, arg, arg_type, lvalue, rvalue):
        # Set object names
        if function.name == 'SetPrivateData' and arg.name == 'pData':
            iid = function.args[0].name
            print r'    if (%s != WKPDID_D3DDebugObjectName) {' % iid
            print r'        return;'
            print r'    }'
            # Interpret argument as string
            Retracer.extractArg(self, function, arg, LPCSTR, lvalue, rvalue)
            print r'    assert(pData);'
            print r'    assert(DataSize == strlen((const char *)pData));'
            return

        Retracer.extractArg(self, function, arg, arg_type, lvalue, rvalue)
Esempio n. 5
0
    def extractArg(self, function, arg, arg_type, lvalue, rvalue):
        # Set object names
        if function.name == "SetPrivateData" and arg.name == "pData":
            iid = function.args[0].name
            print r"    if (%s != WKPDID_D3DDebugObjectName) {" % iid
            print r"        return;"
            print r"    }"
            # Interpret argument as string
            Retracer.extractArg(self, function, arg, LPCSTR, lvalue, rvalue)
            print r"    assert(pData);"
            print r"    assert(DataSize == strlen((const char *)pData));"
            return

        Retracer.extractArg(self, function, arg, arg_type, lvalue, rvalue)
Esempio n. 6
0
    def extractArg(self, function, arg, arg_type, lvalue, rvalue):
        # Set object names
        if function.name == 'SetPrivateData' and arg.name == 'pData':
            iid = function.args[0].name
            print r'    if (%s != WKPDID_D3DDebugObjectName) {' % iid
            print r'        return;'
            print r'    }'
            # Interpret argument as string
            Retracer.extractArg(self, function, arg, LPCSTR, lvalue, rvalue)
            print r'    if (!pData) {'
            print r'        return;'
            print r'    }'
            print r'    assert(DataSize >= strlen((const char *)pData));'
            print r'    // Some applications include the trailing zero terminator in the data'
            print r'    DataSize = strlen((const char *)pData);'
            return

        Retracer.extractArg(self, function, arg, arg_type, lvalue, rvalue)
Esempio n. 7
0
    def extractArg(self, function, arg, arg_type, lvalue, rvalue):
        # Set object names
        if function.name == 'SetPrivateData' and arg.name == 'pData':
            iid = function.args[0].name
            print r'    if (%s != WKPDID_D3DDebugObjectName) {' % iid
            print r'        return;'
            print r'    }'
            # Interpret argument as string
            Retracer.extractArg(self, function, arg, LPCSTR, lvalue, rvalue)
            print r'    if (!pData) {'
            print r'        return;'
            print r'    }'
            print r'    assert(DataSize >= strlen((const char *)pData));'
            print r'    // Some applications include the trailing zero terminator in the data'
            print r'    DataSize = strlen((const char *)pData);'
            return

        Retracer.extractArg(self, function, arg, arg_type, lvalue, rvalue)