#pragma once #include "chatManager.hpp" #include "format.hpp" #include class CIOManager { public: CIOManager(); ~CIOManager(); struct SLog { eFormatType type; std::string log; }; struct SIO { // once a time std::optional msg = std::nullopt; std::optional log = std::nullopt; std::optional> custom = std::nullopt; }; const std::vector &getIO() const; void addLog(const SLog &log); void addMessage(const CChatManager::SMessage &msg); void addCustom(const std::pair &custom); private: std::vector m_vIO; friend class CChatManager; }; inline std::unique_ptr g_pIOManager;