33#ifndef DVD_VK_DEVICE_H_
34#define DVD_VK_DEVICE_H_
43 VKDevice( vkb::Instance& instance, VkSurfaceKHR targetSurface);
46 [[nodiscard]] VkDevice
getVKDevice()
const noexcept;
49 [[nodiscard]]
const vkb::Device&
getDevice()
const noexcept;
52 [[nodiscard]] VkCommandPool
createCommandPool(uint32_t queueFamilyIndex, VkCommandPoolCreateFlags createFlags = VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT)
const;
const vkb::PhysicalDevice & getPhysicalDevice() const noexcept
VkCommandPool createCommandPool(uint32_t queueFamilyIndex, VkCommandPoolCreateFlags createFlags=VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT) const
PROPERTY_R_IW(bool, supportsDescriptorBuffers, false)
std::array< Mutex, to_base(QueueType::COUNT)> _queueLocks
PROPERTY_R_IW(bool, supportsDynamicExtension3, false)
U32 getPresentQueueIndex() const noexcept
std::array< VKQueue, to_base(QueueType::COUNT) > _queues
void submitToQueue(QueueType queue, const VkSubmitInfo &submitInfo, VkFence &fence) const
VkPhysicalDevice getVKPhysicalDevice() const noexcept
PROPERTY_R_IW(bool, supportsPushDescriptors, false)
VKQueue getQueue(QueueType type) const noexcept
const vkb::Device & getDevice() const noexcept
VKQueue getQueueInternal(QueueType type, bool dedicated) const noexcept
vkb::PhysicalDevice _physicalDevice
VkResult queuePresent(QueueType queue, const VkPresentInfoKHR &presentInfo) const
VkDevice getVKDevice() const noexcept
Handle console commands that start with a forward slash.
constexpr U32 INVALID_VK_QUEUE_INDEX
constexpr auto to_base(const Type value) -> Type