KDGpu::VulkanDevice
Module: Vulkan
VulkanDevice. 
#include <vulkan_device.h>
Inherits from KDGpu::ApiDevice
Public Functions
Public Attributes
Public Functions Documentation
function VulkanDevice
 | explicit VulkanDevice(
    VkDevice _device,
    uint32_t _apiVersion,
    VulkanResourceManager * _vulkanResourceManager,
    const Handle< Adapter_t > & _adapterHandle,
    const AdapterFeatures & requestedFeatures,
    bool _isOwned =true
)
  | 
 
function VulkanDevice
 | VulkanDevice(
    VulkanDevice & 
) =delete
  | 
 
function operator=
 | VulkanDevice & operator=(
    VulkanDevice & 
) =delete
  | 
 
function VulkanDevice
 | VulkanDevice(
    VulkanDevice && 
) =default
  | 
 
function operator=
 | VulkanDevice & operator=(
    VulkanDevice && 
) =default
  | 
 
function getQueues
 | virtual std::vector< QueueDescription > getQueues(
    ResourceManager * resourceManager,
    const std::vector< QueueRequest > & queueRequests,
    std::span< AdapterQueueType > queueTypes
)
  | 
 
Reimplements: KDGpu::ApiDevice::getQueues
function waitUntilIdle
 | virtual void waitUntilIdle()
  | 
 
Reimplements: KDGpu::ApiDevice::waitUntilIdle
Public Attributes Documentation
variable device
 | VkDevice device { VK_NULL_HANDLE };
  | 
 
variable vulkanResourceManager
 | VulkanResourceManager * vulkanResourceManager { nullptr };
  | 
 
variable adapterHandle
 | Handle< Adapter_t > adapterHandle;
  | 
 
variable allocator
 | VmaAllocator allocator { VK_NULL_HANDLE };
  | 
 
variable externalAllocator
 | VmaAllocator externalAllocator { VK_NULL_HANDLE };
  | 
 
variable queueDescriptions
 | std::vector< QueueDescription > queueDescriptions;
  | 
 
variable commandPools
 | std::vector< VkCommandPool > commandPools;
  | 
 
variable descriptorSetPools
 | std::vector< VkDescriptorPool > descriptorSetPools;
  | 
 
variable renderPasses
 | std::unordered_map< VulkanRenderPassKey, Handle< RenderPass_t > > renderPasses;
  | 
 
variable framebuffers
 | std::unordered_map< VulkanFramebufferKey, Handle< Framebuffer_t > > framebuffers;
  | 
 
variable timestampQueryPool
 | VkQueryPool timestampQueryPool { VK_NULL_HANDLE };
  | 
 
variable vkSetDebugUtilsObjectNameEXT
 | PFN_vkSetDebugUtilsObjectNameEXT vkSetDebugUtilsObjectNameEXT { nullptr };
  | 
 
variable vkCreateRenderPass2
 | PFN_vkCreateRenderPass2 vkCreateRenderPass2 { nullptr };
  | 
 
variable vkCmdBuildAccelerationStructuresKHR
 | PFN_vkCmdBuildAccelerationStructuresKHR vkCmdBuildAccelerationStructuresKHR { nullptr };
  | 
 
variable vkGetAccelerationStructureDeviceAddressKHR
 | PFN_vkGetAccelerationStructureDeviceAddressKHR vkGetAccelerationStructureDeviceAddressKHR { nullptr };
  | 
 
variable vkCreateAccelerationStructureKHR
 | PFN_vkCreateAccelerationStructureKHR vkCreateAccelerationStructureKHR { nullptr };
  | 
 
variable vkDestroyAccelerationStructureKHR
 | PFN_vkDestroyAccelerationStructureKHR vkDestroyAccelerationStructureKHR { nullptr };
  | 
 
variable vkGetAccelerationStructureBuildSizesKHR
 | PFN_vkGetAccelerationStructureBuildSizesKHR vkGetAccelerationStructureBuildSizesKHR { nullptr };
  | 
 
variable vkCreateRayTracingPipelinesKHR
 | PFN_vkCreateRayTracingPipelinesKHR vkCreateRayTracingPipelinesKHR { nullptr };
  | 
 
variable vkCmdTraceRaysKHR
 | PFN_vkCmdTraceRaysKHR vkCmdTraceRaysKHR { nullptr };
  | 
 
variable vkGetRayTracingShaderGroupHandlesKHR
 | PFN_vkGetRayTracingShaderGroupHandlesKHR vkGetRayTracingShaderGroupHandlesKHR { nullptr };
  | 
 
variable isOwned
Updated on 2025-07-08 at 12:01:11 +0000