From 068b82938418322de023ebc8147141ccf8336fb0 Mon Sep 17 00:00:00 2001 From: Stephen Gutekanst Date: Fri, 15 Jul 2022 00:18:32 -0700 Subject: [PATCH] gpu: make Queue an enum with methods Signed-off-by: Stephen Gutekanst --- gpu/src/Queue.zig | 16 ++++++++++------ gpu/src/main.zig | 4 ++-- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/gpu/src/Queue.zig b/gpu/src/Queue.zig index 19ef839e..394af603 100644 --- a/gpu/src/Queue.zig +++ b/gpu/src/Queue.zig @@ -1,8 +1,12 @@ -ptr: *anyopaque, +pub const Queue = enum(usize) { + _, -pub const WorkDoneStatus = enum(u32) { - success = 0x00000000, - err = 0x00000001, - unknown = 0x00000002, - device_lost = 0x00000003, + pub const none: Queue = @intToEnum(Queue, 0); + + pub const WorkDoneStatus = enum(u32) { + success = 0x00000000, + err = 0x00000001, + unknown = 0x00000002, + device_lost = 0x00000003, + }; }; diff --git a/gpu/src/main.zig b/gpu/src/main.zig index a729ad2a..56c9b932 100644 --- a/gpu/src/main.zig +++ b/gpu/src/main.zig @@ -22,7 +22,7 @@ pub const ExternalTexture = @import("external_texture.zig").ExternalTexture; pub const Instance = @import("instance.zig").Instance; pub const PipelineLayout = @import("pipeline_layout.zig").PipelineLayout; pub const QuerySet = @import("query_set.zig").QuerySet; -pub const Queue = @import("Queue.zig"); +pub const Queue = @import("queue.zig").Queue; pub const RenderBundle = @import("RenderBundle.zig"); pub const RenderBundleEncoder = @import("RenderBundleEncoder.zig"); pub const RenderPassEncoder = @import("RenderPassEncoder.zig"); @@ -50,7 +50,7 @@ test { refAllDecls(@import("instance.zig")); refAllDecls(@import("pipeline_layout.zig")); refAllDecls(@import("query_set.zig")); - refAllDecls(@import("Queue.zig")); + refAllDecls(@import("queue.zig")); refAllDecls(@import("RenderBundle.zig")); refAllDecls(@import("RenderBundleEncoder.zig")); refAllDecls(@import("RenderPassEncoder.zig"));