TachyonUI 0.1.0
High-performance UI for building tools.
Loading...
Searching...
No Matches
vk_device_context.h File Reference
#include <gui_core/gui_base_types.h>
#include <gui_core/graphics/gui_graphics_context.h>
#include <gui_core/graphics/gui_image.h>
#include <gui_core/windows/gui_window_backend.h>
#include <gui_core/graphics/vulkan/vk_image.h>
#include <gui_core/graphics/vulkan/vk_meshes.h>
#include <gui_core/graphics/vulkan/vk_rhi.h>
#include <gui_core/graphics/vulkan/vk_upload_worker.h>
#include <gui_core/graphics/vulkan/vk_descriptors.h>
#include <gui_core/memory/gui_allocation_hooks.h>
#include <vulkan/vulkan.h>
#include <vk_mem_alloc.h>
#include <algorithm>
#include <array>
#include <mutex>
#include <optional>
#include <unordered_map>
#include <unordered_set>
#include <string>
#include <vector>
#include <functional>
#include <source_location>
#include <span>

Go to the source code of this file.

Classes

struct  tachyon::vulkan::DeletionQueue
 Library internal: destroy functions that run later, newest first. More...
struct  tachyon::vulkan::FrameWaits
 Timeline semaphores the GUI's frame submissions wait on (VulkanGraphicsContext::AddFrameWait). More...
class  tachyon::vulkan::VulkanDeviceContext
 The Vulkan device the GUI renders with: its own, or a host's (SetExternalDevice). More...
struct  tachyon::vulkan::VulkanDeviceContext::InstanceDebugConfig
 Diagnostic hook for the GPU test harness: the instance is built with this debug callback instead of the default printing messenger, and optionally with synchronization validation, so tests can fail on validation errors. More...
struct  tachyon::vulkan::VulkanDeviceContext::ExternalDevice
 A host's Vulkan handles for SetExternalDevice, so the GUI renders on the host's device (an engine hosting it as its editor, say) and can share resources with it. More...
struct  tachyon::vulkan::VulkanDeviceContext::DeviceRequirements
 What a device must provide for the GUI to run on it. More...

Namespaces

namespace  tachyon
namespace  tachyon::vulkan

Variables

constexpr unsigned int tachyon::vulkan::FRAME_DELETION_SLOT_COUNT = 3
 Frame deletion queue slots: FRAME_OVERLAP + 1, so the slot pushed to is never the one flushed in the same frame (static-asserted against FRAME_OVERLAP).