Class VulkanDevice

Class Documentation

class VulkanDevice

Handles Vulkan device creation and management.

This class is responsible for selecting a physical device, creating the logical device, retrieving queues, and querying swapchain details and hardware capabilities.

Public Functions

VulkanDevice(VulkanInstance *instance, VkSurfaceKHR *surface)

Constructs a VulkanDevice object.

Parameters:
  • instance – Pointer to the VulkanInstance.

  • surface – Pointer to the Vulkan surface used for presentation.

inline VkPhysicalDeviceProperties getPhysicalDeviceProperties()

Returns properties of the selected physical device.

Returns:

VkPhysicalDeviceProperties containing device details.

inline VkPhysicalDevice getPhysicalDevice() const
inline VkDevice getLogicalDevice() const
Kataglyphis::VulkanRendererInternals::QueueFamilyIndices getQueueFamilies()
inline VkQueue getGraphicsQueue() const
inline VkQueue getComputeQueue() const
inline VkQueue getPresentationQueue() const
Kataglyphis::VulkanRendererInternals::SwapChainDetails getSwapchainDetails()
inline bool supportsHardwareAcceleratedRRT()
void cleanUp()
~VulkanDevice()