From 8b00d67febf133e89f6a0bfabc41feed555dc4a9 Mon Sep 17 00:00:00 2001 From: chai Date: Sat, 12 Jan 2019 21:48:33 +0800 Subject: =?UTF-8?q?*=E5=8E=BB=E6=8E=89=E6=96=87=E4=BB=B6=E5=89=8D=E7=BC=80?= =?UTF-8?q?je=5F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/libjin/common/je_singleton.hpp | 84 -------------------------------------- 1 file changed, 84 deletions(-) delete mode 100644 src/libjin/common/je_singleton.hpp (limited to 'src/libjin/common/je_singleton.hpp') diff --git a/src/libjin/common/je_singleton.hpp b/src/libjin/common/je_singleton.hpp deleted file mode 100644 index 51dc9c5..0000000 --- a/src/libjin/common/je_singleton.hpp +++ /dev/null @@ -1,84 +0,0 @@ -#ifndef __JE_SINGLETON_H__ -#define __JE_SINGLETON_H__ - -#include "je_object.h" -#include "je_exception.h" - -namespace JinEngine -{ - - /// - /// Singleton base class. - /// - template - class Singleton : public Object - { - public: - /// - /// Get singleton. - /// - /// @param Singleton instance of class. - /// - static T* get() - { - if (_instance == nullptr) - _instance = new T; - return _instance; - } - - /// - /// Destroy instance of singleton. - /// - static void destroy() - { - delete _instance; - _instance = nullptr; - } - - protected: - /// - /// Singleton constructor. - /// - Singleton() - { - // Check singleton. - if (_instance) - throw Exception("This is a singleton."); - }; - - /// - /// Singleton destructor. - /// - virtual ~Singleton() {}; - - /// - /// Singleton instance. - /// - static T* _instance; - - private: - /// - /// Singleton copy constructor. - /// - /// @param singleton Singleton of class. - /// - Singleton(const Singleton& singleton); - - /// - /// Singleton assignment. - /// - /// @param singleton Singleton of class. - /// - Singleton& operator = (const Singleton& singleton); - - }; - - /// - /// Singleton instance. - /// - template - T* Singleton::_instance = nullptr; - -} // namespace JinEngine - -#endif // __JE_SINGLETON_H__ \ No newline at end of file -- cgit v1.1-26-g67d0