VTK  9.7.20260913
vtkWebGPUProcLoader.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
4#ifndef vtkWebGPUProcLoader_h
5#define vtkWebGPUProcLoader_h
6
7#include "vtkRenderingWebGPUModule.h"
8#include <string>
9
30class VTKRENDERINGWEBGPU_EXPORT vtkWebGPUProcLoader
31{
32public:
47
52 ImplementationType GetImplementation() const { return this->Implementation; }
53
57 bool IsLoaded() const;
58
62 const std::string& GetError() const { return this->Error; }
63
73
75 void operator=(const vtkWebGPUProcLoader&) = delete;
76
77private:
80
86 bool Load(const std::string& libPath = "");
87
92 static ImplementationType DetectImplementation();
93
94 std::string Error;
95 bool Loaded;
96 ImplementationType Implementation = Unknown;
97};
98
99#endif // vtkWebGPUProcLoader_h
ImplementationType GetImplementation() const
Which implementation the loaded library is, as identified by the extension entry points only that imp...
void operator=(const vtkWebGPUProcLoader &)=delete
const std::string & GetError() const
Get the last error message if Load() failed.
static vtkWebGPUProcLoader * GetInstance()
Get the singleton instance (loads on first access).
vtkWebGPUProcLoader(const vtkWebGPUProcLoader &)=delete
bool IsLoaded() const
Check if a library has been successfully loaded.
ImplementationType
The implementation behind the loaded library.