aboutsummaryrefslogtreecommitdiffstats
path: root/docs/logger.dox
diff options
context:
space:
mode:
Diffstat (limited to 'docs/logger.dox')
-rw-r--r--docs/logger.dox43
1 files changed, 43 insertions, 0 deletions
diff --git a/docs/logger.dox b/docs/logger.dox
new file mode 100644
index 00000000..57f3a052
--- /dev/null
+++ b/docs/logger.dox
@@ -0,0 +1,43 @@
+/** @class yage::Logger
+
+## Logger
+
+Aynchronous logging is built into the YAGE library, which can be used to log events in the game
+and also debug the game by using the debug output that the game engine produces. This can help
+if for example, a texture is being loaded.
+
+### Log levels
+
+The logger has five different levels that can be assigned to a message. These are, from lowest to
+highest severity, `LogLevel::DEBUG`, `LogLevel::INFO`, `LogLevel::WARNING`, `LogLevel::ERROR`
+and `LogLevel::FATAL`. Messages that the developer then wants to write to the logs can take any
+of these severities and the developer can then decide what the minimum severity is that the logger
+should log. By default, the logger will log anything that is above `LogLevel::INFO`.
+
+### Using the Logger in your Game
+
+There are a few preprocessor definitions to make the use of the logger as simple as possible.
+First of all, there is a definition to get the instance of the current global logger, which
+can then be used to set a different minimum display level. This definition is `yLogger`, and an
+example of how to use it to change the default output level can be seen below
+
+``` c++
+yLogger.setLevel(yage::LogLevel::ERROR);
+```
+
+The above code changes the global logger so that it will only output things that are an error or
+fatal and make the engine crash.
+
+
+Other preprocessor definitions are `yLogDebug`, `yLogInfo`, `yLogWarning`, `yLogError` and
+`yLogFatal`. These return an object that is similar to a buffer, but belongs to the main
+global logger `yLogger`. These are the definitions that should be used to print somehting
+to the main logger. For example
+
+``` c++
+yLogWarning << "This is a warning";
+```
+
+will print the message "This is a warning" with the severity of `LogLevel::WARNING`.
+
+*/ \ No newline at end of file