26#ifndef vtkWebGPURenderPipelineCache_h
27#define vtkWebGPURenderPipelineCache_h
31#include "vtkRenderingWebGPUModule.h"
34VTK_ABI_NAMESPACE_BEGIN
59 std::string
GetPipelineKey(wgpu::RenderPipelineDescriptor* descriptor,
const char* shaderSource);
82 std::unique_ptr<vtkInternals> Internals;
a simple class to control print indentation
abstract base class for most VTK objects
Class to create and retrieve render pipelines based on a given key.
static vtkWebGPURenderPipelineCache * New()
void DestroyRenderPipeline(const std::string &key)
Destroy the render pipeline associated with the given hash.
~vtkWebGPURenderPipelineCache() override
void ReleaseGraphicsResources(vtkWindow *w)
Reset the pipeline cache.
wgpu::RenderPipeline GetRenderPipeline(const std::string &key)
Get a render pipeline associated with the given hash.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
std::string GetPipelineKey(wgpu::RenderPipelineDescriptor *descriptor, const char *shaderSource)
Get a unique hash for the given combination of render pipeline descriptor and shader source.
vtkWebGPURenderPipelineCache()
void CreateRenderPipeline(wgpu::RenderPipelineDescriptor *descriptor, vtkWebGPURenderer *wgpuRenderer, const char *shaderSource)
Create a render pipeline for the given combination of render pipeline descriptor and shader source.
window superclass for vtkRenderWindow