#pragma once #include #include #include "LogSettings.h" #include "Logger.h" namespace mitech::utils::logging { enum class eLOGGER { DEBUG_LOG, DEBUG_TIMING_LOG, GUI_EVENT_LOG, MAX_LOGGER }; class CLogManager { public: CLogManager(); virtual ~CLogManager(); void Initialize(); void Shutdown() const; CLogger& GetLogger(eLOGGER eLog) { return *m_mapLogger[eLog]; } private: const std::map m_mapLoggerSettingFile{ { eLOGGER::DEBUG_LOG, R"(d:\machine\ini\debugLogSetting.json)" }, { eLOGGER::DEBUG_TIMING_LOG, R"(d:\machine\ini\debugLogTimingSetting.json)" }, { eLOGGER::GUI_EVENT_LOG, R"(d:\machine\ini\guiEventLogSetting.json)" } }; std::map m_mapLoggerOption; std::map> m_mapLogger; }; }