From 8932f538419e6455f3e51d3b9a594f5bf8d86fc3 Mon Sep 17 00:00:00 2001 From: Stephen Gutekanst Date: Sun, 24 Jul 2022 14:54:20 -0700 Subject: [PATCH] gpu: convert Queue from enum(usize) to *opaque Signed-off-by: Stephen Gutekanst --- gpu/src/device.zig | 3 ++- gpu/src/queue.zig | 27 +++++++++++---------------- 2 files changed, 13 insertions(+), 17 deletions(-) diff --git a/gpu/src/device.zig b/gpu/src/device.zig index d5594ffc..73bc114b 100644 --- a/gpu/src/device.zig +++ b/gpu/src/device.zig @@ -2,6 +2,7 @@ const ChainedStruct = @import("types.zig").ChainedStruct; const FeatureName = @import("types.zig").FeatureName; const RequiredLimits = @import("types.zig").RequiredLimits; const Queue = @import("queue.zig").Queue; +const QueueDescriptor = @import("queue.zig").QueueDescriptor; pub const Device = *opaque {}; @@ -16,5 +17,5 @@ pub const DeviceDescriptor = extern struct { required_features_count: u32, required_features: [*]const FeatureName, required_limits: ?*const RequiredLimits = null, // nullable - default_queue: Queue.Descriptor, + default_queue: QueueDescriptor, }; diff --git a/gpu/src/queue.zig b/gpu/src/queue.zig index c754d05f..2aa390d8 100644 --- a/gpu/src/queue.zig +++ b/gpu/src/queue.zig @@ -1,20 +1,15 @@ const ChainedStruct = @import("types.zig").ChainedStruct; -pub const Queue = enum(usize) { - _, +pub const Queue = *opaque {}; - // TODO: verify there is a use case for nullable value of this type. - pub const none: Queue = @intToEnum(Queue, 0); - - pub const WorkDoneStatus = enum(u32) { - success = 0x00000000, - err = 0x00000001, - unknown = 0x00000002, - device_lost = 0x00000003, - }; - - pub const Descriptor = extern struct { - next_in_chain: *const ChainedStruct, - label: ?[*:0]const u8 = null, - }; +pub const QueueWorkDoneStatus = enum(u32) { + success = 0x00000000, + err = 0x00000001, + unknown = 0x00000002, + device_lost = 0x00000003, +}; + +pub const QueueDescriptor = extern struct { + next_in_chain: *const ChainedStruct, + label: ?[*:0]const u8 = null, };