gpu: internalize CommandEncoder types
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
This commit is contained in:
parent
99ff21e992
commit
85fbe41a86
3 changed files with 9 additions and 10 deletions
|
|
@ -12,6 +12,11 @@ const Extent3D = @import("types.zig").Extent3D;
|
||||||
const Impl = @import("interface.zig").Impl;
|
const Impl = @import("interface.zig").Impl;
|
||||||
|
|
||||||
pub const CommandEncoder = opaque {
|
pub const CommandEncoder = opaque {
|
||||||
|
pub const Descriptor = extern struct {
|
||||||
|
next_in_chain: ?*const ChainedStruct = null,
|
||||||
|
label: ?[*:0]const u8 = null,
|
||||||
|
};
|
||||||
|
|
||||||
pub inline fn beginComputePass(command_encoder: *CommandEncoder, descriptor: ?*const ComputePassDescriptor) *ComputePassEncoder {
|
pub inline fn beginComputePass(command_encoder: *CommandEncoder, descriptor: ?*const ComputePassDescriptor) *ComputePassEncoder {
|
||||||
return Impl.commandEncoderBeginComputePass(command_encoder, descriptor);
|
return Impl.commandEncoderBeginComputePass(command_encoder, descriptor);
|
||||||
}
|
}
|
||||||
|
|
@ -92,8 +97,3 @@ pub const CommandEncoder = opaque {
|
||||||
Impl.commandEncoderRelease(command_encoder);
|
Impl.commandEncoderRelease(command_encoder);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
pub const CommandEncoderDescriptor = extern struct {
|
|
||||||
next_in_chain: ?*const ChainedStruct = null,
|
|
||||||
label: ?[*:0]const u8 = null,
|
|
||||||
};
|
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,6 @@ const BindGroup = @import("bind_group.zig").BindGroup;
|
||||||
const BindGroupLayout = @import("bind_group_layout.zig").BindGroupLayout;
|
const BindGroupLayout = @import("bind_group_layout.zig").BindGroupLayout;
|
||||||
const Buffer = @import("buffer.zig").Buffer;
|
const Buffer = @import("buffer.zig").Buffer;
|
||||||
const CommandEncoder = @import("command_encoder.zig").CommandEncoder;
|
const CommandEncoder = @import("command_encoder.zig").CommandEncoder;
|
||||||
const CommandEncoderDescriptor = @import("command_encoder.zig").CommandEncoderDescriptor;
|
|
||||||
const ComputePipeline = @import("compute_pipeline.zig").ComputePipeline;
|
const ComputePipeline = @import("compute_pipeline.zig").ComputePipeline;
|
||||||
const ComputePipelineDescriptor = @import("compute_pipeline.zig").ComputePipelineDescriptor;
|
const ComputePipelineDescriptor = @import("compute_pipeline.zig").ComputePipelineDescriptor;
|
||||||
const ExternalTexture = @import("external_texture.zig").ExternalTexture;
|
const ExternalTexture = @import("external_texture.zig").ExternalTexture;
|
||||||
|
|
@ -51,7 +50,7 @@ pub const Device = opaque {
|
||||||
return Impl.deviceCreateBuffer(device, descriptor);
|
return Impl.deviceCreateBuffer(device, descriptor);
|
||||||
}
|
}
|
||||||
|
|
||||||
pub inline fn createCommandEncoder(device: *Device, descriptor: ?*const CommandEncoderDescriptor) *CommandEncoder {
|
pub inline fn createCommandEncoder(device: *Device, descriptor: ?*const CommandEncoder.Descriptor) *CommandEncoder {
|
||||||
return Impl.deviceCreateCommandEncoder(device, descriptor);
|
return Impl.deviceCreateCommandEncoder(device, descriptor);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -82,7 +82,7 @@ pub fn Interface(comptime T: type) type {
|
||||||
assertDecl(T, "deviceCreateBindGroup", fn (device: *gpu.Device, descriptor: *const gpu.BindGroup.Descriptor) callconv(.Inline) *gpu.BindGroup);
|
assertDecl(T, "deviceCreateBindGroup", fn (device: *gpu.Device, descriptor: *const gpu.BindGroup.Descriptor) callconv(.Inline) *gpu.BindGroup);
|
||||||
assertDecl(T, "deviceCreateBindGroupLayout", fn (device: *gpu.Device, descriptor: *const gpu.BindGroupLayout.Descriptor) callconv(.Inline) *gpu.BindGroupLayout);
|
assertDecl(T, "deviceCreateBindGroupLayout", fn (device: *gpu.Device, descriptor: *const gpu.BindGroupLayout.Descriptor) callconv(.Inline) *gpu.BindGroupLayout);
|
||||||
assertDecl(T, "deviceCreateBuffer", fn (device: *gpu.Device, descriptor: *const gpu.Buffer.Descriptor) callconv(.Inline) *gpu.Buffer);
|
assertDecl(T, "deviceCreateBuffer", fn (device: *gpu.Device, descriptor: *const gpu.Buffer.Descriptor) callconv(.Inline) *gpu.Buffer);
|
||||||
assertDecl(T, "deviceCreateCommandEncoder", fn (device: *gpu.Device, descriptor: ?*const gpu.CommandEncoderDescriptor) callconv(.Inline) *gpu.CommandEncoder);
|
assertDecl(T, "deviceCreateCommandEncoder", fn (device: *gpu.Device, descriptor: ?*const gpu.CommandEncoder.Descriptor) callconv(.Inline) *gpu.CommandEncoder);
|
||||||
assertDecl(T, "deviceCreateComputePipeline", fn (device: *gpu.Device, descriptor: *const gpu.ComputePipelineDescriptor) callconv(.Inline) *gpu.ComputePipeline);
|
assertDecl(T, "deviceCreateComputePipeline", fn (device: *gpu.Device, descriptor: *const gpu.ComputePipelineDescriptor) callconv(.Inline) *gpu.ComputePipeline);
|
||||||
assertDecl(T, "deviceCreateComputePipelineAsync", fn (device: *gpu.Device, descriptor: *const gpu.ComputePipelineDescriptor, callback: gpu.CreateComputePipelineAsyncCallback, userdata: *anyopaque) callconv(.Inline) void);
|
assertDecl(T, "deviceCreateComputePipelineAsync", fn (device: *gpu.Device, descriptor: *const gpu.ComputePipelineDescriptor, callback: gpu.CreateComputePipelineAsyncCallback, userdata: *anyopaque) callconv(.Inline) void);
|
||||||
assertDecl(T, "deviceCreateErrorBuffer", fn (device: *gpu.Device) callconv(.Inline) *gpu.Buffer);
|
assertDecl(T, "deviceCreateErrorBuffer", fn (device: *gpu.Device) callconv(.Inline) *gpu.Buffer);
|
||||||
|
|
@ -564,7 +564,7 @@ pub fn Export(comptime T: type) type {
|
||||||
}
|
}
|
||||||
|
|
||||||
// WGPU_EXPORT WGPUCommandEncoder wgpuDeviceCreateCommandEncoder(WGPUDevice device, WGPUCommandEncoderDescriptor const * descriptor /* nullable */);
|
// WGPU_EXPORT WGPUCommandEncoder wgpuDeviceCreateCommandEncoder(WGPUDevice device, WGPUCommandEncoderDescriptor const * descriptor /* nullable */);
|
||||||
export fn wgpuDeviceCreateCommandEncoder(device: *gpu.Device, descriptor: ?*const gpu.CommandEncoderDescriptor) *gpu.CommandEncoder {
|
export fn wgpuDeviceCreateCommandEncoder(device: *gpu.Device, descriptor: ?*const gpu.CommandEncoder.Descriptor) *gpu.CommandEncoder {
|
||||||
return T.deviceCreateCommandEncoder(device, descriptor);
|
return T.deviceCreateCommandEncoder(device, descriptor);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1635,7 +1635,7 @@ pub const StubInterface = Interface(struct {
|
||||||
unreachable;
|
unreachable;
|
||||||
}
|
}
|
||||||
|
|
||||||
pub inline fn deviceCreateCommandEncoder(device: *gpu.Device, descriptor: ?*const gpu.CommandEncoderDescriptor) *gpu.CommandEncoder {
|
pub inline fn deviceCreateCommandEncoder(device: *gpu.Device, descriptor: ?*const gpu.CommandEncoder.Descriptor) *gpu.CommandEncoder {
|
||||||
_ = device;
|
_ = device;
|
||||||
_ = descriptor;
|
_ = descriptor;
|
||||||
unreachable;
|
unreachable;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue