VPP  0.7
A high-level modern C++ API for Vulkan
Public Types | Public Member Functions | List of all members
vpp::DebugReporter Class Reference

Base class for debug report generators. More...

#include <vppDebugReporter.hpp>

Inheritance diagram for vpp::DebugReporter:
vpp::StreamDebugReporter

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.
 

Detailed Description

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.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Enumeration of flags to be used in DebugReporter constructor.

Enumerator
ERRORS 

Include error messages.

WARNINGS 

Include warning messages.

PERF 

Include performance messages.

INFO 

Include information messages.

DEBUG 

Include debug messages.

SHADERS 

Include shader translation dumps.


The documentation for this class was generated from the following file: