From 482d5aaa3425b2dd1cffd998521ca387ece018dc Mon Sep 17 00:00:00 2001 From: Stephen Gutekanst Date: Fri, 18 Mar 2022 15:08:12 -0700 Subject: [PATCH] gpu: implement Device.tick Signed-off-by: Stephen Gutekanst --- gpu/src/Device.zig | 8 ++++++-- gpu/src/NativeInstance.zig | 5 +++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/gpu/src/Device.zig b/gpu/src/Device.zig index a3bb5671..4d45429f 100644 --- a/gpu/src/Device.zig +++ b/gpu/src/Device.zig @@ -87,8 +87,7 @@ pub const VTable = struct { // TODO: callback // setUncapturedErrorCallback: fn (ptr: *anyopaque, callback: UncapturedErrorCallback) void, // WGPU_EXPORT void wgpuDeviceSetUncapturedErrorCallback(WGPUDevice device, WGPUErrorCallback callback, void * userdata); - // tick: fn (ptr: *anyopaque) void, - // WGPU_EXPORT void wgpuDeviceTick(WGPUDevice device); + tick: fn (ptr: *anyopaque) void, }; pub inline fn reference(device: Device) void { @@ -154,6 +153,10 @@ pub inline fn createRenderPipelineAsync( device.vtable.createRenderPipelineAsync(device.ptr, descriptor, callback); } +pub inline fn tick(device: Device) void { + device.vtable.tick(device.ptr); +} + pub const Descriptor = struct { label: ?[*:0]const u8 = null, required_features: ?[]Feature = null, @@ -180,6 +183,7 @@ test { _ = createComputePipelineAsync; _ = createRenderPipeline; _ = createRenderPipelineAsync; + _ = tick; _ = Descriptor; _ = LostReason; } diff --git a/gpu/src/NativeInstance.zig b/gpu/src/NativeInstance.zig index 9577fd65..8a83caab 100644 --- a/gpu/src/NativeInstance.zig +++ b/gpu/src/NativeInstance.zig @@ -533,6 +533,11 @@ const device_vtable = Device.VTable{ ); } }).createRenderPipelineAsync, + .tick = (struct { + pub fn tick(ptr: *anyopaque) void { + c.wgpuDeviceTick(@ptrCast(c.WGPUDevice, ptr)); + } + }.tick), }; inline fn convertComputePipelineDescriptor(descriptor: *const ComputePipeline.Descriptor) c.WGPUComputePipelineDescriptor {