18#ifndef vtkWebGPUConfiguration_h
19#define vtkWebGPUConfiguration_h
24#include "vtkRenderingWebGPUModule.h"
29VTK_ABI_NAMESPACE_BEGIN
107 vtkSetMacro(Timeout,
double);
108 vtkGetMacro(Timeout,
double);
178 static std::size_t
Align(std::size_t value, std::size_t alignment);
240 std::unique_ptr<vtkWebGPUConfigurationInternals> Internals;
a simple class to control print indentation
abstract base class for most VTK objects
A compute pipeline is the orchestrator of a collection of compute passes.
Create a webgpu device for use in rendering and compute pipelines.
vtkGetEnumMacro(PowerPreference, PowerPreferenceType)
Set/Get the power preference of the graphics adapter.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
bool IsMicrosoftGPUInUse()
Checks whether a particular vendor's GPU is in use.
wgpu::Device GetDevice()
Get handles of the WGPU adapter/device/instance.
bool IsBroadcomGPUInUse()
Checks whether a particular vendor's GPU is in use.
@ DeviceRequestCompletedEvent
PowerPreferenceType
These enums have a one-one correspondence with the webgpu enums.
BackendType GetBackendInUse()
Get the backend in use.
vtkGetEnumMacro(Backend, BackendType)
Set/Get the graphics backend to use from the graphics adapter.
std::uint32_t GetAdapterDeviceID()
static std::size_t Align(std::size_t value, std::size_t alignment)
Adjusts a given value to the nearest multiple of the specified alignment.
void AcquireAdapter(vtkObject *caller, unsigned long event, void *calldata)
~vtkWebGPUConfiguration() override
static vtkWebGPUConfiguration * New()
static void SetDefaultTimeout(double)
Use this method to customize the default value for Timeout.
bool IsAppleGPUInUse()
Checks whether a particular vendor's GPU is in use.
void AcquireDevice(vtkObject *caller, unsigned long event, void *calldata)
vtkSetEnumMacro(Backend, BackendType)
Set/Get the graphics backend to use from the graphics adapter.
std::string ReportCapabilities()
Print information of webgpu adapter and device to the output string.
bool IsAMDGPUInUse()
Checks whether a particular vendor's GPU is in use.
void Finalize()
Finalizes the class.
bool IsNVIDIAGPUInUse()
Checks whether a particular vendor's GPU is in use.
vtkSetEnumMacro(PowerPreference, PowerPreferenceType)
Set/Get the power preference of the graphics adapter.
void ProcessEvents()
Process events on the WGPUInstance.
bool IsIntelGPUInUse()
Checks whether a particular vendor's GPU is in use.
bool IsARMGPUInUse()
Checks whether a particular vendor's GPU is in use.
std::uint32_t GetAdapterVendorID()
Get the PCI vendor ID of the adapter and the system PCI ID of the device.
bool IsMesaGPUInUse()
Checks whether a particular vendor's GPU is in use.
bool IsSamsungGPUInUse()
Checks whether a particular vendor's GPU is in use.
static std::string DeviceNotReadyMessage()
std::string GetBackendInUseAsString()
Convenient function returns a string representation of the currently used backend.
wgpu::Instance GetInstance()
Get handles of the WGPU adapter/device/instance.
bool Initialize()
Initializes the class.
wgpu::Adapter GetAdapter()
Get handles of the WGPU adapter/device/instance.