#ifndef LUNA_PLUGINMANAGER_H #define LUNA_PLUGINMANAGER_H #include"Plugin/plugindef.h" #include"textthread.h" class LunaHost; class pluginmanager{ std::vector>OnNewSentenceS; std::optional> checkisvalidplugin(const std::wstring&); std::vectorreadpluginfile(); void writepluginfile(const std::wstring&); std::wstring pluginfilename; concurrency::reader_writer_lock OnNewSentenceSLock; bool checkisdump(LPVOID); LunaHost* host; std::array GetSentenceInfo(TextThread& thread); public: pluginmanager(LunaHost*); bool dispatch(TextThread&, std::wstring& sentence); bool addplugin(const std::wstring&); std::optionalselectpluginfile(); }; #endif