VTK  9.7.1
vtkWebGPURenderPassDescriptorInternals.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 vtkWebGPURenderPassDescriptorInternals_h
4 #define vtkWebGPURenderPassDescriptorInternals_h
5 
6 #include "vtkRenderingWebGPUModule.h"
7 #include "vtk_wgpu.h"
8 
9 #include <array>
10 #include <vector>
11 
12 VTK_ABI_NAMESPACE_BEGIN
13 class VTKRENDERINGWEBGPU_NO_EXPORT vtkWebGPURenderPassDescriptorInternals
14  : public wgpu::RenderPassDescriptor
15 {
16 public:
17  static constexpr int kMaxColorAttachments = 8u;
18  vtkWebGPURenderPassDescriptorInternals(const std::vector<wgpu::TextureView>& colorAttachmentInfo,
19  wgpu::TextureView depthStencil = wgpu::TextureView(), bool clearColor = true,
20  bool clearDepth = true, bool clearStencil = true);
22 
24  const vtkWebGPURenderPassDescriptorInternals& otherRenderPass);
26  const vtkWebGPURenderPassDescriptorInternals& otherRenderPass);
27 
28  void UnsetDepthStencilLoadStoreOpsForFormat(wgpu::TextureFormat format);
29 
30  std::array<wgpu::RenderPassColorAttachment, kMaxColorAttachments> ColorAttachments;
31  wgpu::RenderPassDepthStencilAttachment DepthStencilAttachmentInfo = {};
32 };
33 VTK_ABI_NAMESPACE_END
34 
35 #endif
36 // VTK-HeaderTest-Exclude: vtkWebGPURenderPassDescriptorInternals.h
std::array< wgpu::RenderPassColorAttachment, kMaxColorAttachments > ColorAttachments