gpu: implement RenderPassEncoder.writeTimestamp

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
This commit is contained in:
Stephen Gutekanst 2022-03-16 10:51:15 -07:00 committed by Stephen Gutekanst
parent d707d7e2e2
commit 054b9e95a5
2 changed files with 14 additions and 16 deletions

View file

@ -1083,15 +1083,15 @@ const render_pass_encoder_vtable = RenderPassEncoder.VTable{
); );
} }
}).setViewport, }).setViewport,
// .writeTimestamp = (struct { .writeTimestamp = (struct {
// pub fn writeTimestamp(ptr: *anyopaque, query_set: QuerySet, query_index: u32) void { pub fn writeTimestamp(ptr: *anyopaque, query_set: QuerySet, query_index: u32) void {
// c.wgpuRenderPassEncoderWriteTimestamp( c.wgpuRenderPassEncoderWriteTimestamp(
// @ptrCast(c.WGPURenderPassEncoder, ptr), @ptrCast(c.WGPURenderPassEncoder, ptr),
// @ptrCast(c.WGPUQuerySet, query_set.ptr), @ptrCast(c.WGPUQuerySet, query_set.ptr),
// query_index, query_index,
// ); );
// } }
// }).writeTimestamp, }).writeTimestamp,
}; };
fn wrapRenderBundleEncoder(enc: c.WGPURenderBundleEncoder) RenderBundleEncoder { fn wrapRenderBundleEncoder(enc: c.WGPURenderBundleEncoder) RenderBundleEncoder {

View file

@ -46,7 +46,7 @@ pub const VTable = struct {
setStencilReference: fn (ptr: *anyopaque, reference: u32) void, setStencilReference: fn (ptr: *anyopaque, reference: u32) void,
setVertexBuffer: fn (ptr: *anyopaque, slot: u32, buffer: Buffer, offset: u64, size: u64) void, setVertexBuffer: fn (ptr: *anyopaque, slot: u32, buffer: Buffer, offset: u64, size: u64) void,
setViewport: fn (ptr: *anyopaque, x: f32, y: f32, width: f32, height: f32, min_depth: f32, max_depth: f32) void, setViewport: fn (ptr: *anyopaque, x: f32, y: f32, width: f32, height: f32, min_depth: f32, max_depth: f32) void,
// writeTimestamp: fn (ptr: *anyopaque, query_set: QuerySet, query_index: u32) void, writeTimestamp: fn (ptr: *anyopaque, query_set: QuerySet, query_index: u32) void,
}; };
pub inline fn reference(pass: RenderPassEncoder) void { pub inline fn reference(pass: RenderPassEncoder) void {
@ -175,11 +175,9 @@ pub inline fn setViewport(
pass.vtable.setViewport(pass.ptr, x, y, width, height, min_depth, max_depth); pass.vtable.setViewport(pass.ptr, x, y, width, height, min_depth, max_depth);
} }
// pub inline fn writeTimestamp(pass: RenderPassEncoder, query_set: QuerySet, query_index: u32) void { pub inline fn writeTimestamp(pass: RenderPassEncoder, query_set: QuerySet, query_index: u32) void {
// pass.vtable.writeTimestamp(pass.ptr, query_set, query_index); pass.vtable.writeTimestamp(pass.ptr, query_set, query_index);
// } }
// // writeTimestamp: fn (ptr: *anyopaque, query_set: QuerySet, query_index: u32) void,
// // WGPU_EXPORT void wgpuRenderPassEncoderWriteTimestamp(WGPURenderPassEncoder renderPassEncoder, WGPUQuerySet querySet, uint32_t queryIndex);
pub const Descriptor = struct { pub const Descriptor = struct {
label: ?[*:0]const u8 = null, label: ?[*:0]const u8 = null,
@ -213,6 +211,6 @@ test {
_ = setStencilReference; _ = setStencilReference;
_ = setVertexBuffer; _ = setVertexBuffer;
_ = setViewport; _ = setViewport;
// _ = writeTimestamp; _ = writeTimestamp;
_ = Descriptor; _ = Descriptor;
} }