// Log a few different types...
LOG("This is an [I]nfo line (notice the 'I' on the far left of the log");
string data("data data data");
LOG("Here is some [D]ata: " + data, Logger::LOG_DATA);
LOG("A log with the [W]arning flag set", Logger::LOG_WARN);
LOG("Here we have an [E]rror entry in the log", Logger::LOG_ERR);
LOG("And finally a [!] critical error", Logger::LOG_CRIT);
}

// Do some indentation. We'll use braces to limit scope of temporary objects that handle the indention for us. When the
// braces terminate, so will the scope of the temporary objects, which automatically "pops" the indention stack
LOG("Here we have some indentation without having to call multiple routines");