| Flutter Impeller |

debug_report_vk.h
Go to the documentation of this file.
1 // Copyright 2013 The Flutter Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef FLUTTER_IMPELLER_RENDERER_BACKEND_VULKAN_DEBUG_REPORT_VK_H_
6 #define FLUTTER_IMPELLER_RENDERER_BACKEND_VULKAN_DEBUG_REPORT_VK_H_
7
8 #include "impeller/renderer/backend/vulkan/vk.h"
9
10 namespace impeller {
11
12 class CapabilitiesVK;
13
14 class DebugReportVK {
15 public:
16 DebugReportVK(const CapabilitiesVK& caps, const vk::Instance& instance);
17
18 ~DebugReportVK();
19
20 bool IsValid() const;
21
22 private:
23 vk::UniqueDebugUtilsMessengerEXT messenger_;
24 bool is_valid_ = false;
25
26 enum class Result {
27 kContinue,
28 kAbort,
29 };
30
31 Result OnDebugCallback(vk::DebugUtilsMessageSeverityFlagBitsEXT severity,
32 vk::DebugUtilsMessageTypeFlagsEXT type,
33 const vk::DebugUtilsMessengerCallbackDataEXT* data);
34
35 static VKAPI_ATTR VkBool32 VKAPI_CALL DebugUtilsMessengerCallback(
36 vk::DebugUtilsMessageSeverityFlagBitsEXT severity,
37 vk::DebugUtilsMessageTypeFlagsEXT type,
38 const vk::DebugUtilsMessengerCallbackDataEXT* callback_data,
39 void* user_data);
40
41 DebugReportVK(const DebugReportVK&) = delete;
42
43 DebugReportVK& operator=(const DebugReportVK&) = delete;
44 };
45
46 } // namespace impeller
47
48 #endif // FLUTTER_IMPELLER_RENDERER_BACKEND_VULKAN_DEBUG_REPORT_VK_H_
type
GLenum type
Definition: blit_command_gles.cc:153
impeller::CapabilitiesVK
The Vulkan layers and extensions wrangler.
Definition: capabilities_vk.h:181
impeller::DebugReportVK
Definition: debug_report_vk.h:14
impeller::DebugReportVK::DebugReportVK
DebugReportVK(const CapabilitiesVK &caps, const vk::Instance &instance)
Definition: debug_report_vk.cc:12
impeller::DebugReportVK::IsValid
bool IsValid() const
Definition: debug_report_vk.cc:44
impeller::DebugReportVK::~DebugReportVK
~DebugReportVK()
impeller
Definition: allocation.cc:12
data
std::shared_ptr< const fml::Mapping > data
Definition: texture_gles.cc:68
vk.h