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 vkCmdBeginDebugUtilsLabelEXT
| PFN_vkCmdBeginDebugUtilsLabelEXT vkCmdBeginDebugUtilsLabelEXT { nullptr };
|
variable vkCmdEndDebugUtilsLabelEXT
| PFN_vkCmdEndDebugUtilsLabelEXT vkCmdEndDebugUtilsLabelEXT { 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 vkCmdDrawMeshTasksEXT
| PFN_vkCmdDrawMeshTasksEXT vkCmdDrawMeshTasksEXT { nullptr };
|
variable vkCmdDrawMeshTasksIndirectEXT
| PFN_vkCmdDrawMeshTasksIndirectEXT vkCmdDrawMeshTasksIndirectEXT { nullptr };
|
variable isOwned
Updated on 2024-11-25 at 00:15:04 +0000