basemodule.h 631 B

123456789101112131415161718192021222324252627282930
  1. #pragma once
  2. #include "sol/sol.hpp"
  3. namespace module
  4. {
  5. /// <summary>
  6. /// 模块继承接口
  7. /// </summary>
  8. class base {
  9. public:
  10. virtual ~base() {};
  11. /// <summary>
  12. /// 注册全局变量(global类管理)
  13. /// </summary>
  14. /// <param name="name"></param>
  15. /// <param name="lua"></param>
  16. virtual void regist_global(const char* name, sol::state* lua) = 0;
  17. /// <summary>
  18. /// 释放全局变量(global类管理)
  19. /// </summary>
  20. virtual void delete_global() = 0;
  21. /// <summary>
  22. /// 全局变量阶段获取自身指针
  23. /// </summary>
  24. /// <returns></returns>
  25. virtual void* self() { return this; }
  26. };
  27. }