aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/renderer_vulkan/vk_device.h
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2019-12-22 15:57:16 -0500
committerGitHub <noreply@github.com>2019-12-22 15:57:16 -0500
commit1e76655f839d4ccdaa59fe47f7a09a596ac500a0 (patch)
tree6f63042ba7aa6d8b05638898ea2ea7ed8be27bd4 /src/video_core/renderer_vulkan/vk_device.h
parent0f3ac9cfeba1d60854dfbbddeb2c0cff21398a87 (diff)
parente41da22c8df960d85c6942ff21bf8f119b8ad0ed (diff)
Merge pull request #3238 from ReinUsesLisp/vk-resource-manager
vk_resource_manager: Catch device losses and other changes
Diffstat (limited to 'src/video_core/renderer_vulkan/vk_device.h')
-rw-r--r--src/video_core/renderer_vulkan/vk_device.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/video_core/renderer_vulkan/vk_device.h b/src/video_core/renderer_vulkan/vk_device.h
index a844c52df..72603f9f6 100644
--- a/src/video_core/renderer_vulkan/vk_device.h
+++ b/src/video_core/renderer_vulkan/vk_device.h
@@ -39,6 +39,9 @@ public:
vk::Format GetSupportedFormat(vk::Format wanted_format, vk::FormatFeatureFlags wanted_usage,
FormatType format_type) const;
+ /// Reports a device loss.
+ void ReportLoss() const;
+
/// Returns the dispatch loader with direct function pointers of the device.
const vk::DispatchLoaderDynamic& GetDispatchLoader() const {
return dld;
@@ -159,6 +162,11 @@ public:
return ext_shader_viewport_index_layer;
}
+ /// Returns true if the device supports VK_NV_device_diagnostic_checkpoints.
+ bool IsNvDeviceDiagnosticCheckpoints() const {
+ return nv_device_diagnostic_checkpoints;
+ }
+
/// Returns the vendor name reported from Vulkan.
std::string_view GetVendorName() const {
return vendor_name;
@@ -218,6 +226,7 @@ private:
bool ext_index_type_uint8{}; ///< Support for VK_EXT_index_type_uint8.
bool ext_depth_range_unrestricted{}; ///< Support for VK_EXT_depth_range_unrestricted.
bool ext_shader_viewport_index_layer{}; ///< Support for VK_EXT_shader_viewport_index_layer.
+ bool nv_device_diagnostic_checkpoints{}; ///< Support for VK_NV_device_diagnostic_checkpoints.
// Telemetry parameters
std::string vendor_name; ///< Device's driver name.