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

logical device implementation wrapper around the VkDevice More...

#include <vk_driver.hpp>

Public Member Functions

 vk_driver (const vk_physical_driver &p_physical)
 construct a new logical device
 
VkQueue graphics_queue () const
 returns the specified graphics queue from this logical device
 
uint32_t select_memory_type (uint32_t p_type_filter, VkMemoryPropertyFlags p_property_flag)
 
void destroy ()
 
VkFormat depth_format () const
 gives you the depth format from the logical device
 
 operator VkDevice () const
 allows to treat vk_driver as a VkDevice handle
 
 operator VkDevice ()
 allows to treat vk_driver as a VkDevice handle
 

Detailed Description

logical device implementation wrapper around the VkDevice

This class was a wrapper around VKDevice, that provided you with other API's to do with that particular logical device.

Logical devices are representation of virtual software ways to interact with the GPU through Vulkan specifications

TODO: Out-of-date. Using vulkan-cpp ::vk::device class to provide API's that allow you to do more queries on specific attributes the logical device gives you.

Constructor & Destructor Documentation

◆ vk_driver()

atlas::vk::vk_driver::vk_driver ( const vk_physical_driver p_physical)

construct a new logical device

Parameters
p_physicalis the physical device required for the creation of the logical device

Member Function Documentation

◆ depth_format()

VkFormat atlas::vk::vk_driver::depth_format ( ) const

gives you the depth format from the logical device

Returns
VkFormat

◆ operator VkDevice() [1/2]

atlas::vk::vk_driver::operator VkDevice ( )
inline

allows to treat vk_driver as a VkDevice handle

For vulkan API's that accept only taking in VKDevice, this simplifies the need to not have a getter API

◆ operator VkDevice() [2/2]

atlas::vk::vk_driver::operator VkDevice ( ) const
inline

allows to treat vk_driver as a VkDevice handle

For vulkan API's that accept only taking in VKDevice, this simplifies the need to not have a getter API

◆ select_memory_type()

uint32_t atlas::vk::vk_driver::select_memory_type ( uint32_t  p_type_filter,
VkMemoryPropertyFlags  p_property_flag 
)
Returns
-1 if there are no flags available/compatible/valid

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