45 [[nodiscard]]
virtual std::string
name() const noexcept = 0;
51 [[nodiscard]] virtual lib::Uuid uuid() const noexcept = 0;
57 [[nodiscard]] virtual
unsigned int vendorId() const noexcept = 0;
63 [[nodiscard]] virtual
unsigned int deviceId() const noexcept = 0;
69 [[nodiscard]] virtual GraphicsAdapterType type() const noexcept = 0;
75 [[nodiscard]] virtual
unsigned int driverVersion() const noexcept = 0;
81 [[nodiscard]] virtual
unsigned int apiVersion() const noexcept = 0;
87 [[nodiscard]] virtual
unsigned long long int dedicatedVideoMemory() const noexcept = 0;
92struct std::formatter<spark::render::GraphicsAdapterType>
94 static constexpr auto parse(format_parse_context& ctx) {
return ctx.begin(); }
96 static constexpr auto format(
const spark::render::GraphicsAdapterType adapter,
auto& ctx)
100 case spark::render::GraphicsAdapterType::None:
101 return std::format_to(ctx.out(),
"None");
102 case spark::render::GraphicsAdapterType::GPU:
103 return std::format_to(ctx.out(),
"Gpu");
104 case spark::render::GraphicsAdapterType::CPU:
105 return std::format_to(ctx.out(),
"Cpu");
109 return std::format_to(ctx.out(),
"Other");