Hubris Engine Dev
A Project to learn and get into Game Engine developement.
 
Loading...
Searching...
No Matches
Hubris::Graphics::Vulkan::vkBackend Class Referencefinal

The Vulkan backend manager. More...

#include <vkBackend.h>

Public Member Functions

 vkBackend ()=delete
 
 ~vkBackend ()=delete
 

Static Public Member Functions

static void CreateInstance () noexcept
 
static VkInstance GetInstance () noexcept
 
static VkDevice GetDevice () noexcept
 
static VkPhysicalDevice GetPhysicalDevice () noexcept
 
static ErrorCode Init (VkSurfaceKHR surface) noexcept
 Initializes the Vulkan backend. This is the first step to use any vulkan api.
 
static std::multimap< int, RuntimeDeviceData > QueryDevices (VkSurfaceKHR surface) noexcept
 Queries the available devices and scores them based on their features, then caches the Query. This function is called if a device info cache is not found.
 
static void Cleanup ()
 
static const VkAllocationCallbacks * GetAllocator () noexcept
 
static void SetAllocator (VkAllocationCallbacks cb)
 
static void setupDebugMessenger ()
 
static void populateDebugMessengerCreateInfo (VkDebugUtilsMessengerCreateInfoEXT &createInfo)
 
static VKAPI_ATTR VkBool32 VKAPI_CALL debugCallback (VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity, VkDebugUtilsMessageTypeFlagsEXT messageType, const VkDebugUtilsMessengerCallbackDataEXT *pCallbackData, void *pUserData)
 

Detailed Description

The Vulkan backend manager.

Definition at line 46 of file vkBackend.h.

Constructor & Destructor Documentation

◆ vkBackend()

Hubris::Graphics::Vulkan::vkBackend::vkBackend ( )
delete

◆ ~vkBackend()

Hubris::Graphics::Vulkan::vkBackend::~vkBackend ( )
delete

Member Function Documentation

◆ Cleanup()

static void Hubris::Graphics::Vulkan::vkBackend::Cleanup ( )
inlinestatic

Definition at line 506 of file vkBackend.h.

◆ CreateInstance()

static void Hubris::Graphics::Vulkan::vkBackend::CreateInstance ( )
inlinestaticnoexcept

Definition at line 176 of file vkBackend.h.

+ Here is the call graph for this function:

◆ debugCallback()

static VKAPI_ATTR VkBool32 VKAPI_CALL Hubris::Graphics::Vulkan::vkBackend::debugCallback ( VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,
VkDebugUtilsMessageTypeFlagsEXT messageType,
const VkDebugUtilsMessengerCallbackDataEXT * pCallbackData,
void * pUserData )
inlinestatic

Definition at line 542 of file vkBackend.h.

+ Here is the caller graph for this function:

◆ GetAllocator()

static const VkAllocationCallbacks * Hubris::Graphics::Vulkan::vkBackend::GetAllocator ( )
inlinestaticnoexcept

Definition at line 515 of file vkBackend.h.

+ Here is the caller graph for this function:

◆ GetDevice()

static VkDevice Hubris::Graphics::Vulkan::vkBackend::GetDevice ( )
inlinestaticnoexcept

Definition at line 252 of file vkBackend.h.

+ Here is the caller graph for this function:

◆ GetInstance()

static VkInstance Hubris::Graphics::Vulkan::vkBackend::GetInstance ( )
inlinestaticnoexcept

Definition at line 251 of file vkBackend.h.

+ Here is the caller graph for this function:

◆ GetPhysicalDevice()

static VkPhysicalDevice Hubris::Graphics::Vulkan::vkBackend::GetPhysicalDevice ( )
inlinestaticnoexcept

Definition at line 253 of file vkBackend.h.

+ Here is the caller graph for this function:

◆ Init()

static ErrorCode Hubris::Graphics::Vulkan::vkBackend::Init ( VkSurfaceKHR surface)
inlinestaticnoexcept

Initializes the Vulkan backend. This is the first step to use any vulkan api.

Note
Don't call this manually, unless GraphicsApi is not managed by the engine.

Definition at line 260 of file vkBackend.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ populateDebugMessengerCreateInfo()

static void Hubris::Graphics::Vulkan::vkBackend::populateDebugMessengerCreateInfo ( VkDebugUtilsMessengerCreateInfoEXT & createInfo)
inlinestatic

Definition at line 534 of file vkBackend.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ QueryDevices()

static std::multimap< int, RuntimeDeviceData > Hubris::Graphics::Vulkan::vkBackend::QueryDevices ( VkSurfaceKHR surface)
inlinestaticnoexcept

Queries the available devices and scores them based on their features, then caches the Query. This function is called if a device info cache is not found.

Definition at line 328 of file vkBackend.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetAllocator()

static void Hubris::Graphics::Vulkan::vkBackend::SetAllocator ( VkAllocationCallbacks cb)
inlinestatic

Definition at line 519 of file vkBackend.h.

◆ setupDebugMessenger()

static void Hubris::Graphics::Vulkan::vkBackend::setupDebugMessenger ( )
inlinestatic

Definition at line 523 of file vkBackend.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

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