2019-11-06 20:52:09 +08:00
|
|
|
|
#ifndef HGL_GRAPH_VULKAN_DEBUG_OUT_INCLUDE
|
|
|
|
|
#define HGL_GRAPH_VULKAN_DEBUG_OUT_INCLUDE
|
|
|
|
|
|
|
|
|
|
#include<hgl/graph/vulkan/VK.h>
|
|
|
|
|
|
|
|
|
|
VK_NAMESPACE_BEGIN
|
|
|
|
|
|
2019-11-08 01:58:51 +08:00
|
|
|
|
const char *GetVkDebugReportObjectTypename(VkDebugReportObjectTypeEXT objType);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Vulkan <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><br>
|
|
|
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*/
|
2019-11-06 20:52:09 +08:00
|
|
|
|
class VKDebugOut
|
|
|
|
|
{
|
2019-11-08 01:58:51 +08:00
|
|
|
|
VkInstance inst;
|
2019-11-06 20:52:09 +08:00
|
|
|
|
|
|
|
|
|
VkDebugUtilsMessengerEXT debug_messenger;
|
|
|
|
|
VkDebugReportCallbackEXT debug_report_callback;
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
2019-11-08 01:58:51 +08:00
|
|
|
|
virtual VkBool32 OnDebugUtilsMessage(VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,VkDebugUtilsMessageTypeFlagsEXT messageType,const VkDebugUtilsMessengerCallbackDataEXT *pCallbackData);
|
|
|
|
|
virtual VkBool32 OnDebugReport(VkDebugReportFlagsEXT msgFlags,VkDebugReportObjectTypeEXT objType,uint64_t srcObject,size_t location,int32_t msgCode,const char *pLayerPrefix,const char *pMsg);
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
|
|
|
|
VKDebugOut()
|
|
|
|
|
{
|
|
|
|
|
inst=VK_NULL_HANDLE;
|
|
|
|
|
debug_messenger=VK_NULL_HANDLE;
|
|
|
|
|
debug_report_callback=VK_NULL_HANDLE;
|
|
|
|
|
}
|
|
|
|
|
|
2019-11-06 20:52:09 +08:00
|
|
|
|
virtual ~VKDebugOut();
|
|
|
|
|
|
|
|
|
|
virtual bool Init(VkInstance);
|
|
|
|
|
};//class VKDebugOut
|
2019-11-08 01:58:51 +08:00
|
|
|
|
|
2019-11-06 20:52:09 +08:00
|
|
|
|
VK_NAMESPACE_END
|
|
|
|
|
#endif//HGL_GRAPH_VULKAN_DEBUG_OUT_INCLUDE
|