aboutsummaryrefslogtreecommitdiff
path: root/zencore/include
diff options
context:
space:
mode:
authorStefan Boberg <[email protected]>2021-09-15 11:27:48 +0200
committerStefan Boberg <[email protected]>2021-09-15 11:27:48 +0200
commit2b9bed6635d95e15847c4d9b602e34d90e277d14 (patch)
tree66fb191150ccbf9f56315a716abd23b25cc1d401 /zencore/include
parentxmake: added zenhttp dependency to make zen CLI tool buld (diff)
downloadzen-2b9bed6635d95e15847c4d9b602e34d90e277d14.tar.xz
zen-2b9bed6635d95e15847c4d9b602e34d90e277d14.zip
Changed logging implementation
* Code should no longer directly `#include spdlog/spdlog.h`, instead use `#include <zencore/logging.h>` * Instead of explicit calls to `spdlog::info(...)` and such please use the logging macros defined in `zencore/logging.h`. I.e `ZEN_INFO`, `ZEN_DEBUG`, `ZEN_TRACE`, `ZEN_ERROR`, `ZEN_CRITITCAL` * The macros will pick up the "most local" logger via a `Log()` call to retrieve a logger instance. To override the default logger in a class please implement your own `Log()` function
Diffstat (limited to 'zencore/include')
-rw-r--r--zencore/include/zencore/logging.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/zencore/include/zencore/logging.h b/zencore/include/zencore/logging.h
index a2404a5e9..eefed4efa 100644
--- a/zencore/include/zencore/logging.h
+++ b/zencore/include/zencore/logging.h
@@ -20,3 +20,20 @@ void InitializeLogging();
void ShutdownLogging();
} // namespace zen::logging
+
+namespace zen {
+spdlog::logger& Log();
+using logging::ConsoleLog;
+} // namespace zen
+
+using zen::ConsoleLog;
+using zen::Log;
+
+// Helper macros for logging
+
+#define ZEN_TRACE(...) Log().trace(__VA_ARGS__)
+#define ZEN_DEBUG(...) Log().debug(__VA_ARGS__)
+#define ZEN_INFO(...) Log().info(__VA_ARGS__)
+#define ZEN_WARN(...) Log().warn(__VA_ARGS__)
+#define ZEN_ERROR(...) Log().error(__VA_ARGS__)
+#define ZEN_CRITICAL(...) Log().critical(__VA_ARGS__)