|
MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
|
Manages Vulkan instance creation and validation layers. More...
#include <VKInstance.hpp>
Collaboration diagram for MayaFlux::Core::VKInstance:Public Member Functions | |
| void | cleanup () |
| Cleanup Vulkan instance. | |
| vk::Instance | get_instance () const |
| Get the Vulkan instance handle. | |
| bool | initialize (bool enable_validation=true, const std::vector< const char * > &required_extensions={}) |
| Initialize Vulkan instance. | |
| VKInstance & | operator= (const VKInstance &)=delete |
| VKInstance & | operator= (VKInstance &&) noexcept |
| VKInstance ()=default | |
| VKInstance (const VKInstance &)=delete | |
| VKInstance (VKInstance &&) noexcept | |
| ~VKInstance () | |
| Destructor to clean up Vulkan instance and debug messenger. | |
Private Member Functions | |
| bool | check_validation_layer_support (const std::vector< const char * > &layers) |
| Check if requested validation layers are available. | |
| bool | setup_debug_messenger () |
| Setup debug messenger for validation layer output. | |
Static Private Member Functions | |
| static vk::Bool32 | debug_callback (vk::DebugUtilsMessageSeverityFlagBitsEXT message_severity, vk::DebugUtilsMessageTypeFlagsEXT message_types, const vk::DebugUtilsMessengerCallbackDataEXT *p_callback_data, void *p_user_data) |
| Validation layer callback. | |
Private Attributes | |
| vk::DebugUtilsMessengerEXT | m_debug_messenger |
| Debug messenger for validation layers. | |
| vk::detail::DispatchLoaderDynamic | m_dynamic_dispatcher |
| Dynamic dispatcher for extension functions. | |
| vk::Instance | m_instance |
| Vulkan instance handle. | |
| bool | m_validation_enabled = false |
| Flag to indicate if validation layers are enabled. | |
Manages Vulkan instance creation and validation layers.
The instance is the connection between your application and Vulkan. It handles global Vulkan state and validation layers for debugging.
Definition at line 14 of file VKInstance.hpp.