8#include <unordered_map>
12 #define RELATIVE_FILE (__FILE__ + sizeof(SOURCE_ROOT) - 1)
14 #define RELATIVE_FILE __FILE__
18#define LOG_INFO(msg) Engine::Core::Logger::Instance().Log(msg, Engine::Core::LogLevel::LOG_INFO, RELATIVE_FILE, __LINE__, __func__)
20#define LOG_WARNING(msg) Engine::Core::Logger::Instance().Log(msg, Engine::Core::LogLevel::LOG_WARNING, RELATIVE_FILE, __LINE__, __func__)
22#define LOG_ERROR(msg) Engine::Core::Logger::Instance().Log(msg, Engine::Core::LogLevel::LOG_ERROR, RELATIVE_FILE, __LINE__, __func__)
24#define LOG_FATAL(msg) Engine::Core::Logger::Instance().Log(msg, Engine::Core::LogLevel::LOG_FATAL, RELATIVE_FILE, __LINE__, __func__)
27 #define LOG_DEBUG(msg) do {} while (0)
29 #define LOG_DEBUG(msg) Engine::Core::Logger::Instance().Log(msg, Engine::Core::LogLevel::LOG_DEBUG, RELATIVE_FILE, __LINE__, __func__)
52 std::ofstream mLogFile;
96 default:
return "UNKNOWN";
std::ostream & Stream()
Renvoie un stream vers le fichier de log actuellement ouvert.
Definition logger.cpp:20
void Log(const std::string &message, LogLevel level=LogLevel::LOG_INFO, const char *file="", int line=0, const char *func="")
Envoie un message de log dans la console, et dans le fichier ouvert.
Definition logger.cpp:28
static Logger & Instance()
Renvoie l'instance du singleton Logger.
Definition logger.cpp:15
const char * LogLevelToString(LogLevel level)
Fonction utilitaire qui revnoie une string associé à un niveau de log Utile pour afficher la sévérité...
Definition logger.hpp:89
LogLevel
Enumération qui définit les types de logs à disposition.
Definition logger.hpp:34
@ LOG_INFO
Definition logger.hpp:36
@ LOG_ERROR
Definition logger.hpp:38
@ LOG_FATAL
Definition logger.hpp:39
@ LOG_WARNING
Definition logger.hpp:37
@ LOG_DEBUG
Definition logger.hpp:35