Quellcode durchsuchen

core: Remove static system instance

Morph vor 4 Jahren
Ursprung
Commit
b6719094e6
2 geänderte Dateien mit 5 neuen und 28 gelöschten Zeilen
  1. 1 14
      src/core/core.cpp
  2. 4 14
      src/core/core.h

+ 1 - 14
src/core/core.cpp

@@ -428,21 +428,8 @@ struct System::Impl {
 };
 
 System::System() : impl{std::make_unique<Impl>(*this)} {}
-System::~System() = default;
-
-System& System::GetInstance() {
-    if (!s_instance) {
-        throw std::runtime_error("Using System instance before its initialization");
-    }
-    return *s_instance;
-}
 
-void System::InitializeGlobalInstance() {
-    if (s_instance) {
-        throw std::runtime_error("Reinitializing Global System instance.");
-    }
-    s_instance = std::unique_ptr<System>(new System);
-}
+System::~System() = default;
 
 CpuManager& System::GetCpuManager() {
     return impl->cpu_manager;

+ 4 - 14
src/core/core.h

@@ -108,22 +108,16 @@ class System {
 public:
     using CurrentBuildProcessID = std::array<u8, 0x20>;
 
+    explicit System();
+
+    ~System();
+
     System(const System&) = delete;
     System& operator=(const System&) = delete;
 
     System(System&&) = delete;
     System& operator=(System&&) = delete;
 
-    ~System();
-
-    /**
-     * Gets the instance of the System singleton class.
-     * @returns Reference to the instance of the System singleton class.
-     */
-    [[deprecated("Use of the global system instance is deprecated")]] static System& GetInstance();
-
-    static void InitializeGlobalInstance();
-
     /// Enumeration representing the return values of the System Initialize and Load process.
     enum class ResultStatus : u32 {
         Success,             ///< Succeeded
@@ -403,12 +397,8 @@ public:
     void ApplySettings();
 
 private:
-    System();
-
     struct Impl;
     std::unique_ptr<Impl> impl;
-
-    inline static std::unique_ptr<System> s_instance{};
 };
 
 } // namespace Core