Unify IUnknown COM interface

This commit is contained in:
gingerBill
2024-07-10 15:20:07 +01:00
parent 733b7c704c
commit 7e41340510
2 changed files with 12 additions and 15 deletions
+4 -2
View File
@@ -26,9 +26,11 @@ COINIT :: enum DWORD {
} }
IUnknown :: struct { IUnknown :: struct {
using Vtbl: ^IUnknownVtbl, using _iunknown_vtable: ^IUnknown_VTable,
} }
IUnknownVtbl :: struct {
IUnknownVtbl :: IUnknown_VTable
IUnknown_VTable :: struct {
QueryInterface: proc "system" (This: ^IUnknown, riid: REFIID, ppvObject: ^rawptr) -> HRESULT, QueryInterface: proc "system" (This: ^IUnknown, riid: REFIID, ppvObject: ^rawptr) -> HRESULT,
AddRef: proc "system" (This: ^IUnknown) -> ULONG, AddRef: proc "system" (This: ^IUnknown) -> ULONG,
Release: proc "system" (This: ^IUnknown) -> ULONG, Release: proc "system" (This: ^IUnknown) -> ULONG,
+3 -8
View File
@@ -29,14 +29,9 @@ SIZE :: win32.SIZE
WCHAR :: win32.WCHAR WCHAR :: win32.WCHAR
DWORD :: win32.DWORD DWORD :: win32.DWORD
IUnknown :: struct { IUnknown :: win32.IUnknown
using _iunknown_vtable: ^IUnknown_VTable, IUnknown_VTable :: win32.IUnknown_VTable
} LPUNKNOWN :: win32.LPUNKNOWN
IUnknown_VTable :: struct {
QueryInterface: proc "system" (this: ^IUnknown, riid: ^IID, ppvObject: ^rawptr) -> HRESULT,
AddRef: proc "system" (this: ^IUnknown) -> ULONG,
Release: proc "system" (this: ^IUnknown) -> ULONG,
}
@(default_calling_convention="system") @(default_calling_convention="system")
foreign dxgi { foreign dxgi {