#ifndef LUNA_PLUGINMANAGER_H #define LUNA_PLUGINMANAGER_H #include"Plugin/plugindef.h" #include"textthread.h" class LunaHost; class Pluginmanager{ std::unordered_mapOnNewSentenceS; std::optional checkisvalidplugin(const std::wstring&); concurrency::reader_writer_lock OnNewSentenceSLock; bool checkisdump(LPVOID); LunaHost* host; std::array GetSentenceInfo(TextThread& thread); void loadqtdlls(std::vector&collectQtplugs); public: std::vectorPluginRank; Pluginmanager(LunaHost*); bool dispatch(TextThread&, std::wstring& sentence); bool addplugin(const std::wstring&,bool isQt=false); void swaprank(int,int); void remove(const std::wstring&); std::optionalselectpluginfile(); }; #endif