PixelBullet  0.0.1
A C++ game engine
Loading...
Searching...
No Matches
gpu_diagnostics_runtime_backend_internal.h
1#pragma once
2
3#include "pixelbullet/graphics/gpu_diagnostics.h"
4#include "pixelbullet/graphics/graphics_config.h"
5
6#include <cstddef>
7#include <cstdint>
8#include <optional>
9#include <string>
10#include <vector>
11
12namespace pixelbullet::graphics_internal
13{
15{
16 GraphicsDeviceProperties graphics_properties;
17 std::string type_name;
18 uint32_t api_version_major = 0;
19 uint32_t api_version_minor = 0;
20 uint32_t api_version_patch = 0;
21};
22
24{
25 bool is_compatible = false;
26 uint32_t score = 0;
27 std::vector<std::string> rejection_reasons;
28};
29
31{
34 bool matches_preference = false;
35 bool selected = false;
36};
37
39{
40 std::optional<std::size_t> selected_index;
41 bool matched_preference = false;
42 bool exact_index_requested = false;
43 bool exact_index_in_range = false;
44};
45
47{
48 std::vector<GpuListingDiagnosticsEntry> entries;
49 std::optional<std::size_t> selected_index;
50 bool matched_preference = false;
51 GpuListingSelectionResult selection_result;
52};
53
54[[nodiscard]] GpuListingDiagnosticsReport EnumerateUtilityGpuDiagnosticsBackend(const GraphicsDeviceDiagnosticsRequest& request);
55} // namespace pixelbullet::graphics_internal
Definition graphics_config.h:25
Definition gpu_diagnostics.h:24
Definition gpu_diagnostics_runtime_backend_internal.h:24
Definition gpu_diagnostics_runtime_backend_internal.h:15
Definition gpu_diagnostics_runtime_backend_internal.h:31
Definition gpu_diagnostics_runtime_backend_internal.h:47
Definition gpu_diagnostics_runtime_backend_internal.h:39