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,