gpu: make enum namers methods
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
This commit is contained in:
parent
963f06261f
commit
089eb3bdda
2 changed files with 36 additions and 20 deletions
|
|
@ -1,3 +1,5 @@
|
||||||
|
const testing = @import("std").testing;
|
||||||
|
|
||||||
ptr: *anyopaque,
|
ptr: *anyopaque,
|
||||||
|
|
||||||
pub const Type = enum(u32) {
|
pub const Type = enum(u32) {
|
||||||
|
|
@ -5,13 +7,17 @@ pub const Type = enum(u32) {
|
||||||
integrated_gpu,
|
integrated_gpu,
|
||||||
cpu,
|
cpu,
|
||||||
unknown,
|
unknown,
|
||||||
|
|
||||||
|
pub fn name(t: Type) []const u8 {
|
||||||
|
return switch (t) {
|
||||||
|
.discrete_gpu => "Discrete GPU",
|
||||||
|
.integrated_gpu => "Integrated GPU",
|
||||||
|
.cpu => "CPU",
|
||||||
|
.unknown => "Unknown",
|
||||||
|
};
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
pub fn typeName(t: Type) []const u8 {
|
test "Adapter.Type name" {
|
||||||
return switch (t) {
|
try testing.expectEqualStrings("Discrete GPU", Type.discrete_gpu.name());
|
||||||
.discrete_gpu => "Discrete GPU",
|
|
||||||
.integrated_gpu => "Integrated GPU",
|
|
||||||
.cpu => "CPU",
|
|
||||||
.unknown => "Unknown",
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,5 @@
|
||||||
|
const testing = @import("std").testing;
|
||||||
|
|
||||||
pub const AlphaMode = enum(u32) {
|
pub const AlphaMode = enum(u32) {
|
||||||
premultiplied = 0x00000000,
|
premultiplied = 0x00000000,
|
||||||
unpremultiplied = 0x00000001,
|
unpremultiplied = 0x00000001,
|
||||||
|
|
@ -12,20 +14,20 @@ pub const BackendType = enum(u32) {
|
||||||
vulkan,
|
vulkan,
|
||||||
opengl,
|
opengl,
|
||||||
opengles,
|
opengles,
|
||||||
};
|
|
||||||
|
|
||||||
pub fn backendTypeName(t: BackendType) []const u8 {
|
pub fn name(t: BackendType) []const u8 {
|
||||||
return switch (t) {
|
return switch (t) {
|
||||||
.nul => "Null",
|
.nul => "Null",
|
||||||
.webgpu => "WebGPU",
|
.webgpu => "WebGPU",
|
||||||
.d3d11 => "D3D11",
|
.d3d11 => "D3D11",
|
||||||
.d3d12 => "D3D12",
|
.d3d12 => "D3D12",
|
||||||
.metal => "Metal",
|
.metal => "Metal",
|
||||||
.vulkan => "Vulkan",
|
.vulkan => "Vulkan",
|
||||||
.opengl => "OpenGL",
|
.opengl => "OpenGL",
|
||||||
.opengles => "OpenGLES",
|
.opengles => "OpenGLES",
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
};
|
||||||
|
|
||||||
pub const BlendFactor = enum(u32) {
|
pub const BlendFactor = enum(u32) {
|
||||||
zero = 0x00000000,
|
zero = 0x00000000,
|
||||||
|
|
@ -94,3 +96,11 @@ pub const CullMode = enum(u32) {
|
||||||
front = 0x00000001,
|
front = 0x00000001,
|
||||||
back = 0x00000002,
|
back = 0x00000002,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
test "BackendType name" {
|
||||||
|
try testing.expectEqualStrings("Vulkan", BackendType.vulkan.name());
|
||||||
|
}
|
||||||
|
|
||||||
|
test "enum name" {
|
||||||
|
try testing.expectEqualStrings("front", @tagName(CullMode.front));
|
||||||
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue