diff --git a/gpu/src/Buffer.zig b/gpu/src/Buffer.zig index c0456577..0245ac31 100644 --- a/gpu/src/Buffer.zig +++ b/gpu/src/Buffer.zig @@ -13,7 +13,7 @@ pub const VTable = struct { // WGPU_EXPORT void const * wgpuBufferGetConstMappedRange(WGPUBuffer buffer, size_t offset, size_t size); // WGPU_EXPORT void * wgpuBufferGetMappedRange(WGPUBuffer buffer, size_t offset, size_t size); // WGPU_EXPORT void wgpuBufferMapAsync(WGPUBuffer buffer, WGPUMapModeFlags mode, size_t offset, size_t size, WGPUBufferMapCallback callback, void * userdata); - // WGPU_EXPORT void wgpuBufferSetLabel(WGPUBuffer buffer, char const * label); + setLabel: fn (ptr: *anyopaque, label: [:0]const u8) void, // WGPU_EXPORT void wgpuBufferUnmap(WGPUBuffer buffer); }; @@ -25,8 +25,13 @@ pub inline fn release(buffer: Buffer) void { buffer.vtable.release(buffer.ptr); } +pub inline fn setLabel(group: Buffer, label: [:0]const u8) void { + group.vtable.setLabel(group.ptr, label); +} + test "syntax" { _ = VTable; _ = reference; _ = release; + _ = setLabel; } diff --git a/gpu/src/NativeInstance.zig b/gpu/src/NativeInstance.zig index a61f2180..6c0fc003 100644 --- a/gpu/src/NativeInstance.zig +++ b/gpu/src/NativeInstance.zig @@ -781,6 +781,11 @@ const buffer_vtable = Buffer.VTable{ c.wgpuBufferRelease(@ptrCast(c.WGPUBuffer, ptr)); } }).release, + .setLabel = (struct { + pub fn setLabel(ptr: *anyopaque, label: [:0]const u8) void { + c.wgpuBufferLayoutSetLabel(@ptrCast(c.WGPUBufferLayout, ptr), label); + } + }).setLabel, }; fn wrapCommandEncoder(enc: c.WGPUCommandEncoder) CommandEncoder {