13 #include <type_traits>
29 template<
class T,
class... dependencies_t>
30 requires(std::is_base_of_v<base_singleton, dependencies_t> && ...)
51 template<
class T,
class... dependencies_t>
52 requires(std::is_base_of_v<base_singleton, dependencies_t> && ...)
76 void add(std::unique_ptr<base_singleton> pSingleton) noexcept;
79 std::mutex m_SingletonsMutex;
80 std::vector<std::unique_ptr<base_singleton>> m_Singletons;
96 template<
class T,
class... dependencies_t>
97 requires(std::is_base_of_v<base_singleton, dependencies_t> && ...)
107 static T& get_instance();
The class provides a solution to the fiasco static deinitialization for qx::singleton by storing all ...
Inherit the necessary singleton class from this.