MayaFlux 0.5.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ cleanup()

void MayaFlux::Core::VKDevice::cleanup ( )

Cleanup device resources.

Definition at line 266 of file VKDevice.cpp.

267{
268 if (m_logical_device) {
269 m_logical_device.destroy();
270 m_logical_device = nullptr;
271 MF_INFO(Journal::Component::Core, Journal::Context::GraphicsBackend, "Vulkan logical device destroyed.");
272 }
273 m_physical_device = nullptr;
274 m_graphics_queue = nullptr;
275 m_compute_queue = nullptr;
276 m_transfer_queue = nullptr;
277 m_queue_families = {};
278 m_present_queues.clear();
279 m_device_name.clear();
280 m_device_uuid = {};
281 m_graphics_presents = false;
283}
#define MF_INFO(comp, ctx,...)
std::array< uint8_t, VK_UUID_SIZE > m_device_uuid
Selected device UUID.
Definition VKDevice.hpp:208
bool m_supports_mesh_shaders
Whether the device supports mesh shaders.
Definition VKDevice.hpp:209
vk::PhysicalDevice m_physical_device
Selected physical device (GPU)
Definition VKDevice.hpp:172
vk::Queue m_compute_queue
Compute queue handle.
Definition VKDevice.hpp:176
vk::Queue m_transfer_queue
Transfer queue handle.
Definition VKDevice.hpp:177
vk::Device m_logical_device
Logical device handle.
Definition VKDevice.hpp:173
bool m_graphics_presents
Graphics family passed the surfaceless presentation probe.
Definition VKDevice.hpp:205
std::unordered_map< uint32_t, vk::Queue > m_present_queues
One queue per presentation-capable family.
Definition VKDevice.hpp:206
std::string m_device_name
Selected device name, cached for logging.
Definition VKDevice.hpp:207
vk::Queue m_graphics_queue
Graphics queue handle.
Definition VKDevice.hpp:175
QueueFamilyIndices m_queue_families
Indices of required queue families.
Definition VKDevice.hpp:179
@ GraphicsBackend
Graphics/visual rendering backend (Vulkan, OpenGL)
@ Core
Core engine, backend, subsystems.

References MayaFlux::Journal::Core, MayaFlux::Journal::GraphicsBackend, m_compute_queue, m_device_name, m_device_uuid, m_graphics_presents, m_graphics_queue, m_logical_device, m_physical_device, m_present_queues, m_queue_families, m_supports_mesh_shaders, m_transfer_queue, and MF_INFO.

Referenced by MayaFlux::Core::VKContext::cleanup(), and ~VKDevice().

+ Here is the caller graph for this function: