diff options
author | chai <chaifix@163.com> | 2019-01-14 16:40:14 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2019-01-14 16:40:14 +0800 |
commit | 98c9825c49a1674f59eafb3253829ca7d5cac3c1 (patch) | |
tree | bdd2a6da72fc998ff884b011a2260dc72537c25f /src/libjin-lua/common/je_lua_shared.hpp | |
parent | 8b00d67febf133e89f6a0bfabc41feed555dc4a9 (diff) |
*rename source file
Diffstat (limited to 'src/libjin-lua/common/je_lua_shared.hpp')
-rw-r--r-- | src/libjin-lua/common/je_lua_shared.hpp | 84 |
1 files changed, 0 insertions, 84 deletions
diff --git a/src/libjin-lua/common/je_lua_shared.hpp b/src/libjin-lua/common/je_lua_shared.hpp deleted file mode 100644 index 6a58ab3..0000000 --- a/src/libjin-lua/common/je_lua_shared.hpp +++ /dev/null @@ -1,84 +0,0 @@ -#ifndef __JE_LUA_SHARED_H__ -#define __JE_LUA_SHARED_H__ - -#include <map> -#include <vector> -#include <functional> - -#include "libjin/jin.h" - -namespace JinEngine -{ - namespace Lua - { - - class LuaObject; - - /// - /// Thread shared object wrapper. - /// - class Shared - { - public: - Shared(Object* obj) - : mCount(0) - , mObject(obj) - { - } - - inline Object* operator->() - { - return static_cast<Object*>(mObject); - } - - inline Object* getObject() - { - return static_cast<Object*>(mObject); - } - - template<class T> - inline T* getObject() - { - return static_cast<T*>(mObject); - } - - private: - friend class LuaObject; - - // Disable copy. - Shared(const Shared& shared); - - /// - /// Sharedֻڶ - /// - ~Shared() - { - delete mObject; - } - - /// - /// ͬһ̵߳lua_StateУLuaObjectEngineObjectӦһһӦLuaObject(lua runtime)ü - /// ͻաEngine-sideüΪά̵ͬ߳lua_StateͬһEngineObjectÿLuaObjectһ - /// Sharedʱһüͬһ߳УһEngineObjectֻһLuaObjectnew - /// instanceУômCountͱEngineObjectĹ߳ - /// - inline void Shared::retain() - { - ++mCount; - } - - inline void Shared::release() - { - if (--mCount <= 0) - delete this; - } - - Object* mObject; - int mCount; - - }; - - } // namespace Lua -} // namespace JinEngine - -#endif
\ No newline at end of file |