shadPS4/src/Emulator/Util/singleton.h
2023-10-26 23:13:24 +03:00

22 lines
334 B
C++

#pragma once
#include <memory>
template <class T>
class singleton {
public:
static T* instance() {
if (!m_instance) {
m_instance = std::make_unique<T>();
}
return m_instance;
}
protected:
singleton();
~singleton();
private:
static inline std::unique_ptr<T> m_instance{};
};