gpu: correct queueWriteTexture signature

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
This commit is contained in:
Stephen Gutekanst 2022-07-30 19:31:01 -07:00 committed by Stephen Gutekanst
parent 3def7588cd
commit 9fc5ba10a1
3 changed files with 9 additions and 10 deletions

View file

@ -748,12 +748,10 @@ pub const Interface = gpu.Interface(struct {
);
}
// TODO: signature is wrong!
// WGPU_EXPORT void wgpuQueueWriteTexture(WGPUQueue queue, WGPUImageCopyTexture const * destination, void const * data, size_t dataSize, WGPUTextureDataLayout const * dataLayout, WGPUExtent3D const * writeSize);
pub inline fn queueWriteTexture(queue: *gpu.Queue, data: *anyopaque, data_size: usize, data_layout: *const gpu.Texture.DataLayout, write_size: *const gpu.Extent3D) void {
pub inline fn queueWriteTexture(queue: *gpu.Queue, destination: *const gpu.ImageCopyTexture, data: *const anyopaque, data_size: usize, data_layout: *const gpu.Texture.DataLayout, write_size: *const gpu.Extent3D) void {
procs.queueWriteTexture.?(
@ptrCast(c.WGPUQueue, queue),
null, // @ptrCast(*const c.WGPUImageCopyTexture, destination), // TODO
@ptrCast(*const c.WGPUImageCopyTexture, destination),
data,
data_size,
@ptrCast(*const c.WGPUTextureDataLayout, data_layout),

View file

@ -135,7 +135,7 @@ pub fn Interface(comptime T: type) type {
assertDecl(T, "queueSetLabel", fn (queue: *gpu.Queue, label: [*:0]const u8) callconv(.Inline) void);
assertDecl(T, "queueSubmit", fn (queue: *gpu.Queue, command_count: u32, commands: [*]*gpu.CommandBuffer) callconv(.Inline) void);
assertDecl(T, "queueWriteBuffer", fn (queue: *gpu.Queue, buffer: *gpu.Buffer, buffer_offset: u64, data: *anyopaque, size: usize) callconv(.Inline) void);
assertDecl(T, "queueWriteTexture", fn (queue: *gpu.Queue, data: *anyopaque, data_size: usize, data_layout: *const gpu.Texture.DataLayout, write_size: *const gpu.Extent3D) callconv(.Inline) void);
assertDecl(T, "queueWriteTexture", fn (queue: *gpu.Queue, destination: *const gpu.ImageCopyTexture, data: *const anyopaque, data_size: usize, data_layout: *const gpu.Texture.DataLayout, write_size: *const gpu.Extent3D) callconv(.Inline) void);
assertDecl(T, "queueReference", fn (queue: *gpu.Queue) callconv(.Inline) void);
assertDecl(T, "queueRelease", fn (queue: *gpu.Queue) callconv(.Inline) void);
assertDecl(T, "renderBundleReference", fn (render_bundle: *gpu.RenderBundle) callconv(.Inline) void);
@ -829,8 +829,8 @@ pub fn Export(comptime T: type) type {
}
// WGPU_EXPORT void wgpuQueueWriteTexture(WGPUQueue queue, WGPUImageCopyTexture const * destination, void const * data, size_t dataSize, WGPUTextureDataLayout const * dataLayout, WGPUExtent3D const * writeSize);
export fn wgpuQueueWriteTexture(queue: *gpu.Queue, data: *anyopaque, data_size: usize, data_layout: *const gpu.Texture.DataLayout, write_size: *const gpu.Extent3D) void {
T.queueWriteTexture(queue, data, data_size, data_layout, write_size);
export fn wgpuQueueWriteTexture(queue: *gpu.Queue, destination: *const gpu.ImageCopyTexture, data: *const anyopaque, data_size: usize, data_layout: *const gpu.Texture.DataLayout, write_size: *const gpu.Extent3D) void {
T.queueWriteTexture(queue, destination, data, data_size, data_layout, write_size);
}
// WGPU_EXPORT void wgpuQueueReference(WGPUQueue queue);
@ -1955,8 +1955,9 @@ pub const StubInterface = Interface(struct {
unreachable;
}
pub inline fn queueWriteTexture(queue: *gpu.Queue, data: *anyopaque, data_size: usize, data_layout: *const gpu.Texture.DataLayout, write_size: *const gpu.Extent3D) void {
pub inline fn queueWriteTexture(queue: *gpu.Queue, destination: *const gpu.ImageCopyTexture, data: *const anyopaque, data_size: usize, data_layout: *const gpu.Texture.DataLayout, write_size: *const gpu.Extent3D) void {
_ = queue;
_ = destination;
_ = data;
_ = data_size;
_ = data_layout;

View file

@ -45,8 +45,8 @@ pub const Queue = opaque {
Impl.queueWriteBuffer(queue, buffer, buffer_offset, data, size);
}
pub inline fn writeTexture(queue: *Queue, data: *anyopaque, data_size: usize, data_layout: *const Texture.DataLayout, write_size: *const Extent3D) void {
Impl.queueWriteTexture(queue, data, data_size, data_layout, write_size);
pub inline fn writeTexture(queue: *Queue, destination: *const ImageCopyTexture, data: *const anyopaque, data_size: usize, data_layout: *const Texture.DataLayout, write_size: *const Extent3D) void {
Impl.queueWriteTexture(queue, destination, data, data_size, data_layout, write_size);
}
pub inline fn reference(queue: *Queue) void {