3#ifndef vtkWebGPUInternalsBindGroupLayout_h
4#define vtkWebGPUInternalsBindGroupLayout_h
6#include "vtkRenderingWebGPUModule.h"
9#include <initializer_list>
11VTK_ABI_NAMESPACE_BEGIN
26 wgpu::BufferBindingType bufferType,
bool bufferHasDynamicOffset =
false,
27 uint64_t bufferMinBindingSize = 0);
30 wgpu::SamplerBindingType samplerType);
33 wgpu::TextureSampleType textureSampleType,
34 wgpu::TextureViewDimension viewDimension = wgpu::TextureViewDimension::e2D,
35 bool textureMultisampled =
false);
38 wgpu::StorageTextureAccess storageTextureAccess, wgpu::TextureFormat format,
39 wgpu::TextureViewDimension viewDimension = wgpu::TextureViewDimension::e2D);
45 std::initializer_list<LayoutEntryInitializationHelper> entriesInitializer);
static wgpu::BindGroupLayout MakeBindGroupLayout(const wgpu::Device &device, std::initializer_list< LayoutEntryInitializationHelper > entriesInitializer)
LayoutEntryInitializationHelper(uint32_t entryBinding, wgpu::ShaderStage entryVisibility, wgpu::StorageTextureAccess storageTextureAccess, wgpu::TextureFormat format, wgpu::TextureViewDimension viewDimension=wgpu::TextureViewDimension::e2D)
LayoutEntryInitializationHelper(uint32_t entryBinding, wgpu::ShaderStage entryVisibility, wgpu::BufferBindingType bufferType, bool bufferHasDynamicOffset=false, uint64_t bufferMinBindingSize=0)
LayoutEntryInitializationHelper(const wgpu::BindGroupLayoutEntry &entry)
LayoutEntryInitializationHelper(uint32_t entryBinding, wgpu::ShaderStage entryVisibility, wgpu::TextureSampleType textureSampleType, wgpu::TextureViewDimension viewDimension=wgpu::TextureViewDimension::e2D, bool textureMultisampled=false)
LayoutEntryInitializationHelper(uint32_t entryBinding, wgpu::ShaderStage entryVisibility, wgpu::SamplerBindingType samplerType)