#pragma once #include "stdafx.h" #include "IMessageManager.h" #include #include "../Utilities/SimpleLock.h" class MessageManager { private: static IMessageManager* _messageManager; static std::unordered_map _enResources; static std::unordered_map _frResources; static std::unordered_map _jaResources; static std::unordered_map _ruResources; static std::unordered_map _esResources; static std::unordered_map _ukResources; static std::unordered_map _ptResources; static std::unordered_map _caResources; static std::unordered_map _zhResources; static std::unordered_map _itResources; static std::unordered_map _plResources; static bool _osdEnabled; static SimpleLock _logLock; static SimpleLock _messageLock; static std::list _log; public: static void SetOsdState(bool enabled); static string Localize(string key); static void RegisterMessageManager(IMessageManager* messageManager); static void UnregisterMessageManager(IMessageManager* messageManager); static void DisplayMessage(string title, string message, string param1 = "", string param2 = ""); static void Log(string message = ""); static string GetLog(); };