mirror of
https://github.com/Kbz-8/Pulse.git
synced 2026-01-11 23:43:34 +00:00
working on WebGPU support
This commit is contained in:
33
Sources/Backends/WebGPU/WebGPUComputePass.h
git.filemode.normal_file
33
Sources/Backends/WebGPU/WebGPUComputePass.h
git.filemode.normal_file
@@ -0,0 +1,33 @@
|
||||
// Copyright (C) 2025 kanel
|
||||
// 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_PASS_H_
|
||||
#define PULSE_WEBGPU_COMPUTE_PASS_H_
|
||||
|
||||
#include <webgpu/webgpu.h>
|
||||
|
||||
#include <Pulse.h>
|
||||
#include "WebGPUBuffer.h"
|
||||
#include "WebGPUCommandList.h"
|
||||
|
||||
typedef struct WebGPUComputePass
|
||||
{
|
||||
} WebGPUComputePass;
|
||||
|
||||
PulseComputePass WebGPUCreateComputePass(PulseDevice device, PulseCommandList cmd);
|
||||
void WebGPUDestroyComputePass(PulseDevice device, PulseComputePass pass);
|
||||
|
||||
PulseComputePass WebGPUBeginComputePass(PulseCommandList cmd);
|
||||
void WebGPUEndComputePass(PulseComputePass pass);
|
||||
void WebGPUBindStorageBuffers(PulseComputePass pass, const PulseBuffer* buffers, uint32_t num_buffers);
|
||||
void WebGPUBindUniformData(PulseComputePass pass, uint32_t slot, const void* data, uint32_t data_size);
|
||||
void WebGPUBindStorageImages(PulseComputePass pass, const PulseImage* images, uint32_t num_images);
|
||||
void WebGPUBindComputePipeline(PulseComputePass pass, PulseComputePipeline pipeline);
|
||||
void WebGPUDispatchComputations(PulseComputePass pass, uint32_t groupcount_x, uint32_t groupcount_y, uint32_t groupcount_z);
|
||||
|
||||
#endif // PULSE_WEBGPU_COMPUTE_PASS_H_
|
||||
|
||||
#endif // PULSE_ENABLE_WEBGPU_BACKEND
|
||||
Reference in New Issue
Block a user