diff options
Diffstat (limited to 'plugins/MirLua/src/mlua.h')
| -rw-r--r-- | plugins/MirLua/src/mlua.h | 23 | 
1 files changed, 23 insertions, 0 deletions
diff --git a/plugins/MirLua/src/mlua.h b/plugins/MirLua/src/mlua.h index c792c32780..5d771d8ea9 100644 --- a/plugins/MirLua/src/mlua.h +++ b/plugins/MirLua/src/mlua.h @@ -1,20 +1,43 @@  #ifndef _LUA_CORE_H_
  #define _LUA_CORE_H_
 +struct HandleRefParam
 +{
 +	HANDLE h;
 +	int ref;
 +	lua_State *L;
 +	HandleRefParam(HANDLE h) : L(NULL), h(h), ref(0) { }
 +	HandleRefParam(lua_State *L, HANDLE h, int ref = 0) : L(L), h(h), ref(ref) { }
 +};
 +
  class CMLua
  {
  private:
  	lua_State *L;
 +	HANDLE hLoadedEvent;
 +	HANDLE hUnloadEvent;
 +
 +	static void KillModuleEventHooks();
 +	static void KillModuleServices();
  	void Load();
  	void Unload();
  public:
 +	static LIST<void> Hooks;
 +	static LIST<void> Events;
 +	static LIST<void> Services;
 +	static LIST<void> HookRefs;
 +	static LIST<void> ServiceRefs;
 +
  	CMLua();
  	~CMLua();
  	void Reload();
 +	static int OnScriptLoaded(lua_State *L);
 +	static int OnScriptUnload(lua_State *L);
 +
  	static int HookEventObjParam(void *obj, WPARAM wParam, LPARAM lParam, LPARAM param);
  };
  | 
