#include #include "EngineManager.h" #include #include #include #include #include #include //////////////////// Structs //////////////////// //导出函数表 struct ExportedFuncData { std::string fromEngineType; ScriptEngine* engine; script::Global func; std::function)> callback; }; //消息系统处理函数信息 struct MessageHandlers { script::utils::Message::MessageProc* handler; script::utils::Message::MessageProc* cleaner; }; //全局共享数据 struct GlobalDataType { //引擎管理器表 SRWLock engineListLock; std::list globalEngineList; //注册过的命令 std::unordered_map playerRegisteredCmd; std::unordered_map consoleRegisteredCmd; //导出函数表 std::unordered_map exportedFuncs; //模块消息系统 int messageSystemNextId = 0; std::map messageSystemHandlers; std::map messageThreads; // OperationCount std::map operationCountData; }; //////////////////// Externs //////////////////// //全局共享数据 extern GlobalDataType* globalShareData; //////////////////// APIs //////////////////// void InitGlobalShareData();