From 64f89347883d519b202711a11d2ea175bd80be37 Mon Sep 17 00:00:00 2001 From: chai Date: Sun, 15 Nov 2020 09:59:22 +0800 Subject: +lua binding --- Runtime/Scripting/luax_vm.h | 63 --------------------------------------------- 1 file changed, 63 deletions(-) delete mode 100644 Runtime/Scripting/luax_vm.h (limited to 'Runtime/Scripting/luax_vm.h') diff --git a/Runtime/Scripting/luax_vm.h b/Runtime/Scripting/luax_vm.h deleted file mode 100644 index 3eda3f8..0000000 --- a/Runtime/Scripting/luax_vm.h +++ /dev/null @@ -1,63 +0,0 @@ -#ifndef __LUAX_CONTEXT_H__ -#define __LUAX_CONTEXT_H__ - -#include -#include - -#include "luax_ref.h" -#include "luax_config.h" -#include "luax_state.h" -#include "luax_globalstate.h" - -namespace Luax -{ - - /// - /// 单个lua_state相关的context。是一系列代理的集合,拷贝也没关系,主要是为了节约内存。 - /// - class LuaxVM - { - public: - - /// - /// 根据global_State拿到虚拟机。 - /// - static LuaxVM* TryGetVM(global_State* gState); - static LuaxVM* TryGetVM(lua_State* state); - - LuaxVM(); - ~LuaxVM(); - - /// - /// 创建虚拟机后,需要手动调用Setup函数,初始化一些虚拟机状态。 - /// - void Setup(); - - lua_State* GetMainThread(); - lua_State* CreateThread(); - LuaxState GetMainState(); - - LuaxRefTable& GetStrongRefTable(); - LuaxRefTable& GetWeakRefTable(); - - private: - - typedef std::map VMap; - - static VMap VMs; // 通过global_State索引虚拟机,为了方便 - - LuaxRefTable mStrongRefTable; // _LUAX_STRONGREF_TABLE - LuaxRefTable mWeakRefTable; // _LUAX_WEAKREF_TABLE - - global_State* mGlobalState; // 虚拟机的global_State,由当前虚拟机的所有线程共享 - lua_State* mMainThread; // 主线程 - -#if LUAX_PROFILER - size_t mObjectCount; // 统计所有在此虚拟机中创建的实例 -#endif - - }; - -} - -#endif \ No newline at end of file -- cgit v1.1-26-g67d0