gpu: internalize Queue types
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
This commit is contained in:
parent
f4a6e08357
commit
b4830688bb
3 changed files with 22 additions and 23 deletions
|
|
@ -8,11 +8,28 @@ const CopyTextureForBrowserOptions = @import("types.zig").CopyTextureForBrowserO
|
|||
const Impl = @import("interface.zig").Impl;
|
||||
|
||||
pub const Queue = opaque {
|
||||
pub const WorkDoneCallback = fn (
|
||||
status: WorkDoneStatus,
|
||||
userdata: *anyopaque,
|
||||
) callconv(.C) void;
|
||||
|
||||
pub const WorkDoneStatus = enum(u32) {
|
||||
success = 0x00000000,
|
||||
err = 0x00000001,
|
||||
unknown = 0x00000002,
|
||||
device_lost = 0x00000003,
|
||||
};
|
||||
|
||||
pub const Descriptor = extern struct {
|
||||
next_in_chain: ?*const ChainedStruct = null,
|
||||
label: ?[*:0]const u8 = null,
|
||||
};
|
||||
|
||||
pub inline fn copyTextureForBrowser(queue: *Queue, source: *const ImageCopyTexture, destination: *const ImageCopyTexture, copy_size: *const Extent3D, options: *const CopyTextureForBrowserOptions) void {
|
||||
Impl.queueCopyTextureForBrowser(queue, source, destination, copy_size, options);
|
||||
}
|
||||
|
||||
pub inline fn onSubmittedWorkDone(queue: *Queue, signal_value: u64, callback: QueueWorkDoneCallback, userdata: *anyopaque) void {
|
||||
pub inline fn onSubmittedWorkDone(queue: *Queue, signal_value: u64, callback: Queue.WorkDoneCallback, userdata: *anyopaque) void {
|
||||
Impl.queueOnSubmittedWorkDone(queue, signal_value, callback, userdata);
|
||||
}
|
||||
|
||||
|
|
@ -40,20 +57,3 @@ pub const Queue = opaque {
|
|||
Impl.queueRelease(queue);
|
||||
}
|
||||
};
|
||||
|
||||
pub const QueueWorkDoneCallback = fn (
|
||||
status: QueueWorkDoneStatus,
|
||||
userdata: *anyopaque,
|
||||
) callconv(.C) void;
|
||||
|
||||
pub const QueueWorkDoneStatus = enum(u32) {
|
||||
success = 0x00000000,
|
||||
err = 0x00000001,
|
||||
unknown = 0x00000002,
|
||||
device_lost = 0x00000003,
|
||||
};
|
||||
|
||||
pub const QueueDescriptor = extern struct {
|
||||
next_in_chain: ?*const ChainedStruct = null,
|
||||
label: ?[*:0]const u8 = null,
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue