TheAtlasEngine
 
Loading...
Searching...
No Matches
atlas::vk::vk_context Class Reference

vulkan-specific implementation that is the backend of the graphics contextd More...

#include <vk_context.hpp>

Inheritance diagram for atlas::vk::vk_context:
atlas::graphics_context

Public Member Functions

 vk_context (const std::string &p_tag)
 
- Public Member Functions inherited from atlas::graphics_context
void destroy ()
 explicit cleanup of the graphics API context
 

Static Public Member Functions

static void submit_resource_free (std::function< void()> &&p_resource)
 used for providing a way to submit all vulkan metaobjects before the destruction of the vulkan logical device
 
static PFN_vkSetDebugUtilsObjectNameEXT get_debug_object_name ()
 returns function pointer to allow for setting debug object name
 
static VkInstance handler ()
 Gives you direct access to the vulkan instance.
 
static vk_physical_driver physical_driver ()
 direct access to the vulkan physical device
 
static vk_driver driver_context ()
 direct access to the vulkan logical device
 

Detailed Description

vulkan-specific implementation that is the backend of the graphics contextd

Member Function Documentation

◆ destroy_context()

void atlas::vk::vk_context::destroy_context ( )
overrideprivatevirtual

◆ get_debug_object_name()

static PFN_vkSetDebugUtilsObjectNameEXT atlas::vk::vk_context::get_debug_object_name ( )
inlinestatic

returns function pointer to allow for setting debug object name

This allows for utilizing vkSetDebugUtilsObjectNameEXT during debug builds

This allows for setting up object names that is useful to the programmer when a validation layer error message occurs unexpectedly

◆ submit_resource_free()

static void atlas::vk::vk_context::submit_resource_free ( std::function< void()> &&  p_resource)
static

used for providing a way to submit all vulkan metaobjects before the destruction of the vulkan logical device

Per vulkan specification, it is required to have all object handles created with the logical device to be destroyed before the logical device itself gets destroyed during post cleanup

This function was a means to ensure that the destruction of those vulkan child objects are handled in that order correctly


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