X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Futil%2Flog.hpp;h=a4bfabec8a1c3628f1da4b872520674f10465057;hb=092556fd403b1464402c741f949c48f04f628ee8;hp=54bcb789ab0396734912fa2233ec978e39850ffd;hpb=ff08b8e1983016221967a024dab76799a3d75059;p=supertux.git diff --git a/src/util/log.hpp b/src/util/log.hpp index 54bcb789a..a4bfabec8 100644 --- a/src/util/log.hpp +++ b/src/util/log.hpp @@ -18,33 +18,22 @@ #define HEADER_SUPERTUX_UTIL_LOG_HPP #include - -#ifndef NDEBUG - #include -std::ostream& log_debug_f(const char* file, int line); -std::ostream& log_info_f(const char* file, int line); -std::ostream& log_warning_f(const char* file, int line); -std::ostream& log_fatal_f(const char* file, int line); - -#define log_debug log_debug_f(__FILE__, __LINE__) -#define log_info log_info_f(__FILE__, __LINE__) -#define log_warning log_warning_f(__FILE__, __LINE__) -#define log_fatal log_fatal_f(__FILE__, __LINE__) +enum LogLevel { LOG_NONE, LOG_FATAL, LOG_WARNING, LOG_INFO, LOG_DEBUG }; +extern LogLevel g_log_level; -#else - -#include +std::ostream& log_debug_f(const char* file, int line); +#define log_debug if (g_log_level < LOG_DEBUG) {} else log_debug_f(__FILE__, __LINE__) -std::ostream& log_fatal_f(); +std::ostream& log_info_f(const char* file, int line); +#define log_info if (g_log_level < LOG_INFO) {} else log_info_f(__FILE__, __LINE__) -#define log_debug if (0) std::cerr -#define log_info std::cout -#define log_warning std::cerr -#define log_fatal log_fatal_f() +std::ostream& log_warning_f(const char* file, int line); +#define log_warning if (g_log_level < LOG_WARNING) {} else log_warning_f(__FILE__, __LINE__) -#endif +std::ostream& log_fatal_f(const char* file, int line); +#define log_fatal if (g_log_level < LOG_FATAL) {} else log_fatal_f(__FILE__, __LINE__) class Vector; std::ostream& operator<< (std::ostream& str, const Vector& vector);