From 3318352a72e0eb98d9c966d0bf95d2610c32e789 Mon Sep 17 00:00:00 2001 From: Stephen Gutekanst Date: Tue, 26 Jul 2022 19:44:28 -0700 Subject: [PATCH] gpu: implement RenderPipeline methods Signed-off-by: Stephen Gutekanst --- gpu/src/render_pipeline.zig | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/gpu/src/render_pipeline.zig b/gpu/src/render_pipeline.zig index 7017ddd1..0c967d6f 100644 --- a/gpu/src/render_pipeline.zig +++ b/gpu/src/render_pipeline.zig @@ -5,19 +5,25 @@ const VertexState = @import("types.zig").VertexState; const PrimitiveState = @import("types.zig").PrimitiveState; const FragmentState = @import("types.zig").FragmentState; const PipelineLayout = @import("pipeline_layout.zig").PipelineLayout; +const BindGroupLayout = @import("bind_group_layout.zig").BindGroupLayout; +const impl = @import("interface.zig").impl; pub const RenderPipeline = *opaque { - // TODO - // pub inline fn renderPipelineGetBindGroupLayout(render_pipeline: gpu.RenderPipeline, group_index: u32) gpu.BindGroupLayout { + pub inline fn getBindGroupLayout(render_pipeline: RenderPipeline, group_index: u32) BindGroupLayout { + return impl.renderPipelineGetBindGroupLayout(render_pipeline, group_index); + } - // TODO - // pub inline fn renderPipelineSetLabel(render_pipeline: gpu.RenderPipeline, label: [*:0]const u8) void { + pub inline fn setLabel(render_pipeline: RenderPipeline, label: [*:0]const u8) void { + impl.renderPipelineSetLabel(render_pipeline, label); + } - // TODO - // pub inline fn renderPipelineReference(render_pipeline: gpu.RenderPipeline) void { + pub inline fn reference(render_pipeline: RenderPipeline) void { + impl.renderPipelineReference(render_pipeline); + } - // TODO - // pub inline fn renderPipelineRelease(render_pipeline: gpu.RenderPipeline) void { + pub inline fn release(render_pipeline: RenderPipeline) void { + impl.renderPipelineRelease(render_pipeline); + } }; pub const RenderPipelineDescriptor = extern struct {