From 58602f740711d75389180b309e29f99b91d4c987 Mon Sep 17 00:00:00 2001 From: Stephen Gutekanst Date: Fri, 15 Jul 2022 00:13:54 -0700 Subject: [PATCH] gpu: make Device an enum with methods Signed-off-by: Stephen Gutekanst --- gpu/src/Device.zig | 12 ++++++++---- gpu/src/main.zig | 4 ++-- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/gpu/src/Device.zig b/gpu/src/Device.zig index 6046ae59..78fd01d9 100644 --- a/gpu/src/Device.zig +++ b/gpu/src/Device.zig @@ -1,6 +1,10 @@ -ptr: *anyopaque, +pub const Device = enum(usize) { + _, -pub const LostReason = enum(u32) { - undef = 0x00000000, - destroyed = 0x00000001, + pub const none: Device = @intToEnum(Device, 0); + + pub const LostReason = enum(u32) { + undef = 0x00000000, + destroyed = 0x00000001, + }; }; diff --git a/gpu/src/main.zig b/gpu/src/main.zig index b4887861..9a9a2671 100644 --- a/gpu/src/main.zig +++ b/gpu/src/main.zig @@ -17,7 +17,7 @@ pub const CommandBuffer = @import("command_buffer.zig").CommandBuffer; pub const CommandEncoder = @import("command_encoder.zig").CommandEncoder; pub const ComputePassEncoder = @import("compute_pass_encoder.zig").ComputePassEncoder; pub const ComputePipeline = @import("compute_pipeline.zig").ComputePipeline; -pub const Device = @import("Device.zig"); +pub const Device = @import("device.zig").Device; pub const ExternalTexture = @import("ExternalTexture.zig"); pub const Instance = @import("Instance.zig"); pub const PipelineLayout = @import("PipelineLayout.zig"); @@ -45,7 +45,7 @@ test { refAllDecls(@import("command_encoder.zig")); refAllDecls(@import("compute_pass_encoder.zig")); refAllDecls(@import("compute_pipeline.zig")); - refAllDecls(@import("Device.zig")); + refAllDecls(@import("device.zig")); refAllDecls(@import("ExternalTexture.zig")); refAllDecls(@import("Instance.zig")); refAllDecls(@import("PipelineLayout.zig"));