![]() |
VPP
0.7
A high-level modern C++ API for Vulkan
|
Base class for debug report generators. More...
#include <vppDebugReporter.hpp>
Public Types | |
enum | { ERRORS, WARNINGS, PERF, INFO, DEBUG, SHADERS } |
Enumeration of flags to be used in DebugReporter constructor. More... | |
Public Member Functions | |
DebugReporter (const Instance &hInstance) | |
Constructs the debug reporter with default flags. | |
DebugReporter (const Instance &hInstance, VkFlags flags) | |
Constructs the debug reporter with specified flags. | |
virtual VkBool32 | debugReport (VkDebugReportFlagsEXT flags, VkDebugReportObjectTypeEXT objectType, uint64_t object, size_t location, int32_t messageCode, const char *pLayerPrefix, const char *pMessage) |
Override this method for custom message processing. | |
virtual void | shaderCompilationLog (const std::string &shaderCode, const char *pShaderType) |
Override this method for custom handling of shader translation dumps. | |
Base class for debug report generators.
This class participates in generation of debug reports from the following sources:
This is a general debug reporter class. To generate text reports into specified C++ output stream, you might want to use a vpp::StreamDebugReporter subclass. vpp::DebugReporter allows custom debug message processing.
You use both classes (as well as reporters derived from vpp::DebugReporter) by defining an object of respective class after your instance object and providing the instance reference to the constructor.
Additionally, to enable Vulkan validation you must specify vpp::Instance::VALIDATION flag to the instance constructor.
Cosntructors of debug reporters have two variants. The first one takes only the instance reference. The second one requires one additional argument, which is a bitwise or
of flags specifying messages to be included.
anonymous enum |
Enumeration of flags to be used in DebugReporter constructor.