// Copyright (C) 2025 kbz_8 // This file is part of "Pulse" // For conditions of distribution and use, see copyright notice in LICENSE #ifdef PULSE_ENABLE_WEBGPU_BACKEND #ifndef PULSE_WEBGPU_COMPUTE_PIPELINE_H_ #define PULSE_WEBGPU_COMPUTE_PIPELINE_H_ #include #include typedef struct WebGPUComputePipeline { WGPUShaderModule shader; WGPUPipelineLayout layout; WGPUComputePipeline pipeline; WGPUBindGroupLayout readonly_group; WGPUBindGroupLayout readwrite_group; WGPUBindGroupLayout uniform_group; } WebGPUComputePipeline; PulseComputePipeline WebGPUCreateComputePipeline(PulseDevice device, const PulseComputePipelineCreateInfo* info); void WebGPUDestroyComputePipeline(PulseDevice device, PulseComputePipeline pipeline); #endif // PULSE_WEBGPU_COMPUTE_PIPELINE_H_ #endif // PULSE_ENABLE_WEBGPU_BACKEND