mirror of
https://git.eden-emu.dev/eden-emu/eden
synced 2026-04-25 05:19:06 +02:00
Fix some issues in RAII
This commit is contained in:
parent
8599c47fe0
commit
4cf41673ba
3 changed files with 54 additions and 61 deletions
|
|
@ -110,16 +110,16 @@ RendererVulkan::RendererVulkan(Core::Frontend::EmuWindow& emu_window,
|
|||
instance(CreateInstance(*library, dld, VK_API_VERSION_1_1, render_window.GetWindowInfo().type,
|
||||
Settings::values.renderer_debug.GetValue())),
|
||||
// Now create RAII wrappers for the resources in the correct order
|
||||
raii_instance(MakeInstance(instance, dld)),
|
||||
managed_instance(MakeManagedInstance(instance, dld)),
|
||||
// Create debug messenger if debug is enabled
|
||||
debug_messenger(Settings::values.renderer_debug ? CreateDebugUtilsCallback(instance)
|
||||
: vk::DebugUtilsMessenger{}),
|
||||
raii_debug_messenger(Settings::values.renderer_debug
|
||||
? MakeDebugUtilsMessenger(debug_messenger, instance, dld)
|
||||
: RaiiDebugUtilsMessenger{}),
|
||||
managed_debug_messenger(Settings::values.renderer_debug
|
||||
? MakeManagedDebugUtilsMessenger(debug_messenger, instance, dld)
|
||||
: ManagedDebugUtilsMessenger{}),
|
||||
// Create surface
|
||||
surface(CreateSurface(instance, render_window.GetWindowInfo())),
|
||||
raii_surface(MakeSurface(surface, instance, dld)),
|
||||
managed_surface(MakeManagedSurface(surface, instance, dld)),
|
||||
device(CreateDevice(instance, dld, *surface)), memory_allocator(device), state_tracker(),
|
||||
scheduler(device, state_tracker),
|
||||
swapchain(*surface, device, scheduler, render_window.GetFramebufferLayout().width,
|
||||
|
|
|
|||
|
|
@ -80,15 +80,15 @@ private:
|
|||
// Keep original handles for compatibility with existing code
|
||||
vk::Instance instance;
|
||||
// RAII wrapper for instance
|
||||
RaiiInstance raii_instance;
|
||||
ManagedInstance managed_instance;
|
||||
|
||||
vk::DebugUtilsMessenger debug_messenger;
|
||||
// RAII wrapper for debug messenger
|
||||
RaiiDebugUtilsMessenger raii_debug_messenger;
|
||||
ManagedDebugUtilsMessenger managed_debug_messenger;
|
||||
|
||||
vk::SurfaceKHR surface;
|
||||
// RAII wrapper for surface
|
||||
RaiiSurface raii_surface;
|
||||
ManagedSurface managed_surface;
|
||||
|
||||
Device device;
|
||||
MemoryAllocator memory_allocator;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue