VTK  9.3.0
vtkWebGPUInternalsRenderPipelineDescriptor.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
3#ifndef vtkWebGPUInternalsRenderPipelineDescriptor_h
4#define vtkWebGPUInternalsRenderPipelineDescriptor_h
5
6#include "vtkRenderingWebGPUModule.h"
7#include "vtk_wgpu.h"
8
9#include <array>
10
11VTK_ABI_NAMESPACE_BEGIN
12class VTKRENDERINGWEBGPU_EXPORT vtkWebGPUInternalsRenderPipelineDescriptor
13 : public wgpu::RenderPipelineDescriptor
14{
15public:
16 static constexpr int kMaxVertexBuffers = 8u;
17 static constexpr int kMaxVertexAttributes = 16u;
18 static constexpr int kMaxColorAttachments = 8u;
19
21
29
30 wgpu::DepthStencilState* EnableDepthStencil(
31 wgpu::TextureFormat format = wgpu::TextureFormat::Depth24PlusStencil8);
33
34 std::array<wgpu::VertexBufferLayout, kMaxVertexBuffers> cBuffers;
35 std::array<wgpu::VertexAttribute, kMaxVertexAttributes> cAttributes;
36 std::array<wgpu::ColorTargetState, kMaxColorAttachments> cTargets;
37 std::array<wgpu::BlendState, kMaxColorAttachments> cBlends;
38
39 wgpu::FragmentState cFragment;
40 wgpu::DepthStencilState cDepthStencil;
41};
42VTK_ABI_NAMESPACE_END
43
44#endif
45// VTK-HeaderTest-Exclude: vtkWebGPUInternalsRenderPipelineDescriptor.h
std::array< wgpu::ColorTargetState, kMaxColorAttachments > cTargets
vtkWebGPUInternalsRenderPipelineDescriptor(vtkWebGPUInternalsRenderPipelineDescriptor &&)=delete
vtkWebGPUInternalsRenderPipelineDescriptor(const vtkWebGPUInternalsRenderPipelineDescriptor &)=delete
vtkWebGPUInternalsRenderPipelineDescriptor & operator=(vtkWebGPUInternalsRenderPipelineDescriptor &&)=delete
vtkWebGPUInternalsRenderPipelineDescriptor & operator=(const vtkWebGPUInternalsRenderPipelineDescriptor &)=delete
wgpu::DepthStencilState * EnableDepthStencil(wgpu::TextureFormat format=wgpu::TextureFormat::Depth24PlusStencil8)
std::array< wgpu::BlendState, kMaxColorAttachments > cBlends
std::array< wgpu::VertexBufferLayout, kMaxVertexBuffers > cBuffers
std::array< wgpu::VertexAttribute, kMaxVertexAttributes > cAttributes