From ebeac1847204703293c1925e66dfb23b1cdd3602 Mon Sep 17 00:00:00 2001 From: Michael Maltese Date: Thu, 13 Jul 2017 12:58:26 -0700 Subject: [PATCH] DolphinQt2/Host: cleanup --- Source/Core/DolphinQt2/Host.cpp | 15 +++------------ Source/Core/DolphinQt2/Host.h | 13 +++++-------- 2 files changed, 8 insertions(+), 20 deletions(-) diff --git a/Source/Core/DolphinQt2/Host.cpp b/Source/Core/DolphinQt2/Host.cpp index fdd3b5aecd..21faff73c8 100644 --- a/Source/Core/DolphinQt2/Host.cpp +++ b/Source/Core/DolphinQt2/Host.cpp @@ -4,55 +4,46 @@ #include #include -#include #include "Common/Common.h" #include "Core/Host.h" #include "DolphinQt2/Host.h" -#include "DolphinQt2/MainWindow.h" -Host* Host::m_instance = nullptr; +Host::Host() = default; Host* Host::GetInstance() { - if (m_instance == nullptr) - m_instance = new Host(); - return m_instance; + static Host* s_instance = new Host(); + return s_instance; } void* Host::GetRenderHandle() { - QMutexLocker locker(&m_lock); return m_render_handle; } void Host::SetRenderHandle(void* handle) { - QMutexLocker locker(&m_lock); m_render_handle = handle; } bool Host::GetRenderFocus() { - QMutexLocker locker(&m_lock); return m_render_focus; } void Host::SetRenderFocus(bool focus) { - QMutexLocker locker(&m_lock); m_render_focus = focus; } bool Host::GetRenderFullscreen() { - QMutexLocker locker(&m_lock); return m_render_fullscreen; } void Host::SetRenderFullscreen(bool fullscreen) { - QMutexLocker locker(&m_lock); m_render_fullscreen = fullscreen; } diff --git a/Source/Core/DolphinQt2/Host.h b/Source/Core/DolphinQt2/Host.h index 325e682384..d779c84b4b 100644 --- a/Source/Core/DolphinQt2/Host.h +++ b/Source/Core/DolphinQt2/Host.h @@ -4,9 +4,8 @@ #pragma once -#include #include -#include +#include // Singleton that talks to the Core via the interface defined in Core/Host.h. // Because Host_* calls might come from different threads than the MainWindow, @@ -35,11 +34,9 @@ signals: void RequestRenderSize(int w, int h); private: - Host() {} - static Host* m_instance; - QMutex m_lock; + Host(); - void* m_render_handle; - bool m_render_focus; - bool m_render_fullscreen; + std::atomic m_render_handle; + std::atomic m_render_focus; + std::atomic m_render_fullscreen; };