Donner SVG 0.8.0
0.8.0 ยท ebf353960.8.0 main
SVG editor and embeddable C⁠+⁠+⁠20 engine.
Loading...
Searching...
No Matches
donner::gpu::vulkan::VulkanSurfaceContext Struct Reference

What a swapchain borrows from the device that owns it. None of these are owned here, and all of them outlive the swapchain. More...

#include "donner/gpu/vulkan/VulkanSwapchain.h"

Public Attributes

const VulkanApi * api = nullptr
 Entry points, presentation group loaded.
VkInstance instance = VK_NULL_HANDLE
 Instance the surface is created on.
VkPhysicalDevice physicalDevice = VK_NULL_HANDLE
 Device the surface is queried against.
VkDevice device = VK_NULL_HANDLE
 Logical device.
VkQueue queue = VK_NULL_HANDLE
 Queue frames are presented on.
uint32_t queueFamilyIndex = 0
 Family of queue.
VkCommandPool commandPool = VK_NULL_HANDLE
 Pool the present barrier is recorded in.
std::shared_ptr< VulkanSurfaceLifetime > lifetime
 Shared owner-retention state.
std::mutex * queueMutex = nullptr
 Shared VkQueue call lock; null for fake test contexts.
std::shared_ptr< DeviceLostState > rootLoss
 Shared loss condition of the owning root.
VulkanQueueProgress * queueProgress = nullptr
 Progress of the shared queue. The swapchain's waits for its own submissions measure a stall by it, and each frame handover the queue accepts is noted on it, so a handover to an idle queue starts its clock. Null for fake test contexts, whose waits bound their whole duration.

Detailed Description

What a swapchain borrows from the device that owns it. None of these are owned here, and all of them outlive the swapchain.

Member Data Documentation

◆ api

const VulkanApi* donner::gpu::vulkan::VulkanSurfaceContext::api = nullptr

Entry points, presentation group loaded.

◆ commandPool

VkCommandPool donner::gpu::vulkan::VulkanSurfaceContext::commandPool = VK_NULL_HANDLE

Pool the present barrier is recorded in.

◆ device

VkDevice donner::gpu::vulkan::VulkanSurfaceContext::device = VK_NULL_HANDLE

Logical device.

◆ instance

VkInstance donner::gpu::vulkan::VulkanSurfaceContext::instance = VK_NULL_HANDLE

Instance the surface is created on.

◆ lifetime

std::shared_ptr<VulkanSurfaceLifetime> donner::gpu::vulkan::VulkanSurfaceContext::lifetime

Shared owner-retention state.

◆ physicalDevice

VkPhysicalDevice donner::gpu::vulkan::VulkanSurfaceContext::physicalDevice = VK_NULL_HANDLE

Device the surface is queried against.

◆ queue

VkQueue donner::gpu::vulkan::VulkanSurfaceContext::queue = VK_NULL_HANDLE

Queue frames are presented on.

◆ queueFamilyIndex

uint32_t donner::gpu::vulkan::VulkanSurfaceContext::queueFamilyIndex = 0

Family of queue.

◆ queueMutex

std::mutex* donner::gpu::vulkan::VulkanSurfaceContext::queueMutex = nullptr

Shared VkQueue call lock; null for fake test contexts.

◆ queueProgress

VulkanQueueProgress* donner::gpu::vulkan::VulkanSurfaceContext::queueProgress = nullptr

Progress of the shared queue. The swapchain's waits for its own submissions measure a stall by it, and each frame handover the queue accepts is noted on it, so a handover to an idle queue starts its clock. Null for fake test contexts, whose waits bound their whole duration.

◆ rootLoss

std::shared_ptr<DeviceLostState> donner::gpu::vulkan::VulkanSurfaceContext::rootLoss

Shared loss condition of the owning root.


The documentation for this struct was generated from the following file: