aboutsummaryrefslogtreecommitdiff
path: root/src/lua/common
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2018-12-07 11:22:59 +0800
committerchai <chaifix@163.com>2018-12-07 11:22:59 +0800
commit150944ee9e41df2ae5ee25c7845c3f5b2bd74af0 (patch)
treeea399aeb2172132855ffa2a8c9533b9870a0e9a9 /src/lua/common
parentfe16b453e093d721e60be0a12219d40635b96a3a (diff)
*私有化shared object template retain和release
Diffstat (limited to 'src/lua/common')
-rw-r--r--src/lua/common/je_lua_shared.hpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/lua/common/je_lua_shared.hpp b/src/lua/common/je_lua_shared.hpp
index ad65be0..bfe0629 100644
--- a/src/lua/common/je_lua_shared.hpp
+++ b/src/lua/common/je_lua_shared.hpp
@@ -10,25 +10,31 @@ namespace JinEngine
namespace Lua
{
+ class LuaObject;
+
///
/// Thread safe.
///
class SharedBase
{
public:
- void retain();
-
- void release();
-
bool isType(const char* t);
const char* getType();
protected:
+ friend class LuaObject;
+
SharedBase(void* obj, const char* t);
SharedBase(const SharedBase&);
+ // ͬһ̵߳lua_StateУLuaObjectEngineObjectӦһһӦLuaObject(lua runtime)
+ // üͻաEngine-sideüΪά̵ͬ߳lua_StateͬһEngineObject
+ void retain();
+
+ void release();
+
virtual ~SharedBase();
void* mObject;