Skip to content

KDGpu::VulkanInstance

Module: Vulkan

VulkanInstance.

#include <vulkan_instance.h>

Public Functions

Name
VulkanInstance(VulkanResourceManager * _vulkanResourceManager, VkInstance _instance, bool _isOwned =true)
std::vector< Extension > extensions() const
std::vector< Handle< Adapter_t > > queryAdapters(const Handle< Instance_t > & instanceHandle)
std::vector< AdapterGroup > queryAdapterGroups()
Handle< Surface_t > createSurface(const SurfaceOptions & options)
Handle< Surface_t > createSurface(VkSurfaceKHR surface)

Public Attributes

Name
VulkanResourceManager * vulkanResourceManager
VkInstance instance
VkDebugUtilsMessengerEXT debugMessenger
bool isOwned
std::map< VkPhysicalDevice, Handle< Adapter_t > > m_physicalDeviceToHandle

Public Functions Documentation

function VulkanInstance

1
2
3
4
5
explicit VulkanInstance(
    VulkanResourceManager * _vulkanResourceManager,
    VkInstance _instance,
    bool _isOwned =true
)

function extensions

1
std::vector< Extension > extensions() const

function queryAdapters

1
2
3
std::vector< Handle< Adapter_t > > queryAdapters(
    const Handle< Instance_t > & instanceHandle
)

function queryAdapterGroups

1
std::vector< AdapterGroup > queryAdapterGroups()

function createSurface

1
2
3
Handle< Surface_t > createSurface(
    const SurfaceOptions & options
)

function createSurface

1
2
3
Handle< Surface_t > createSurface(
    VkSurfaceKHR surface
)

Public Attributes Documentation

variable vulkanResourceManager

1
VulkanResourceManager * vulkanResourceManager { nullptr };

variable instance

1
VkInstance instance { VK_NULL_HANDLE };

variable debugMessenger

1
VkDebugUtilsMessengerEXT debugMessenger { VK_NULL_HANDLE };

variable isOwned

1
bool isOwned { true };

variable m_physicalDeviceToHandle

1
std::map< VkPhysicalDevice, Handle< Adapter_t > > m_physicalDeviceToHandle;

Updated on 2024-12-22 at 00:01:23 +0000