8 #ifndef LLUVIA_CORE_VULKAN_INSTANCE_H_
9 #define LLUVIA_CORE_VULKAN_INSTANCE_H_
36 static VkBool32 VKAPI_CALL
debugCallback(VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity, VkDebugUtilsMessageTypeFlagsEXT messageType,
const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData,
void* pUserData);
49 vk::Instance&
get() noexcept;
52 static std::atomic_bool m_hasReceivedVulkanWarningMessages;
55 std::vector<const
char*> getRequiredLayersNames();
56 std::vector<const
char*> getRequiredExtensionNames();
58 vk::DynamicLoader m_loader;
60 vk::DebugUtilsMessengerEXT m_debugMessenger;
Definition: Instance.h:19
Instance(bool debugEnabled)
Instance(Instance &&instance)=delete
Instance & operator=(const Instance &Instance)=delete
Instance & operator=(Instance &&Instance)=delete
static bool hasReceivedVulkanWarningMessages()
returns whether or not the application has received messages through the debug callback.
static VkBool32 VKAPI_CALL debugCallback(VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity, VkDebugUtilsMessageTypeFlagsEXT messageType, const VkDebugUtilsMessengerCallbackDataEXT *pCallbackData, void *pUserData)
debug callback function to receive messages from the vulkan debug messenger.
Instance(const Instance &instance)=delete
vk::Instance & get() noexcept