From cd4021fa56a973af1d7d4b05b1047738de893794 Mon Sep 17 00:00:00 2001 From: Stephen Gutekanst Date: Mon, 25 Jul 2022 00:48:37 -0700 Subject: [PATCH] gpu: add RequestDeviceCallback Signed-off-by: Stephen Gutekanst --- gpu/TODO-webgpu.h | 2 -- gpu/src/adapter.zig | 8 ++++++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/gpu/TODO-webgpu.h b/gpu/TODO-webgpu.h index 8faf7e13..8a642023 100644 --- a/gpu/TODO-webgpu.h +++ b/gpu/TODO-webgpu.h @@ -1,5 +1,3 @@ -typedef void (*WGPURequestDeviceCallback)(WGPURequestDeviceStatus status, WGPUDevice device, char const * message, void * userdata); - // Methods of Adapter // WGPU_EXPORT bool wgpuAdapterHasFeature(WGPUAdapter adapter, WGPUFeatureName feature); export fn wgpuAdapterHasFeature(adapter: gpu.Adapter, feature: gpu.FeatureName) bool { diff --git a/gpu/src/adapter.zig b/gpu/src/adapter.zig index 683b17dc..80d6f295 100644 --- a/gpu/src/adapter.zig +++ b/gpu/src/adapter.zig @@ -4,6 +4,7 @@ const Device = @import("device.zig").Device; const DeviceDescriptor = @import("device.zig").DeviceDescriptor; const FeatureName = @import("types.zig").FeatureName; const SupportedLimits = @import("types.zig").SupportedLimits; +const RequestDeviceStatus = @import("types.zig").RequestDeviceStatus; const impl = @import("interface.zig").impl; pub const Adapter = *opaque { @@ -25,6 +26,13 @@ pub const Adapter = *opaque { } }; +pub const RequestDeviceCallback = fn ( + status: RequestDeviceStatus, + device: Device, + message: [*:0]const u8, + userdata: *anyopaque, +) callconv(.C) void; + pub const AdapterType = enum(u32) { discrete_gpu, integrated_gpu,