summaryrefslogtreecommitdiff
path: root/src/gpu/wgpu_resource.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gpu/wgpu_resource.h')
-rw-r--r--src/gpu/wgpu_resource.h28
1 files changed, 19 insertions, 9 deletions
diff --git a/src/gpu/wgpu_resource.h b/src/gpu/wgpu_resource.h
index e448b18..e12aa45 100644
--- a/src/gpu/wgpu_resource.h
+++ b/src/gpu/wgpu_resource.h
@@ -11,11 +11,14 @@
#include "platform/platform.h"
#include "util/fatal_error.h"
-template<typename T, void(*Release)(T)>
-class WGPUResource {
+template <typename T, void (*Release)(T)> class WGPUResource {
public:
- WGPUResource() : ptr_(nullptr) {}
- ~WGPUResource() { if (ptr_) Release(ptr_); }
+ WGPUResource() : ptr_(nullptr) {
+ }
+ ~WGPUResource() {
+ if (ptr_)
+ Release(ptr_);
+ }
void set(T ptr) {
FATAL_ASSERT(ptr_ == nullptr);
@@ -23,12 +26,17 @@ class WGPUResource {
}
void replace(T ptr) {
- if (ptr_) Release(ptr_);
+ if (ptr_)
+ Release(ptr_);
ptr_ = ptr;
}
- T get() const { return ptr_; }
- T* get_address() { return &ptr_; }
+ T get() const {
+ return ptr_;
+ }
+ T* get_address() {
+ return &ptr_;
+ }
private:
T ptr_;
@@ -37,8 +45,10 @@ class WGPUResource {
};
using BindGroup = WGPUResource<WGPUBindGroup, wgpuBindGroupRelease>;
-using RenderPipeline = WGPUResource<WGPURenderPipeline, wgpuRenderPipelineRelease>;
-using ComputePipeline = WGPUResource<WGPUComputePipeline, wgpuComputePipelineRelease>;
+using RenderPipeline =
+ WGPUResource<WGPURenderPipeline, wgpuRenderPipelineRelease>;
+using ComputePipeline =
+ WGPUResource<WGPUComputePipeline, wgpuComputePipelineRelease>;
using Sampler = WGPUResource<WGPUSampler, wgpuSamplerRelease>;
using Texture = WGPUResource<WGPUTexture, wgpuTextureRelease>;
using TextureView = WGPUResource<WGPUTextureView, wgpuTextureViewRelease>;