diff --git a/src/log.h b/src/log.h new file mode 100644 index 0000000..f41dedd --- /dev/null +++ b/src/log.h @@ -0,0 +1,29 @@ +#pragma once + +namespace opustags { + + enum class LogLevel { + LOG_NORMAL = 0, + LOG_VERBOSE = 1, + LOG_DEBUG = 2, + LOG_DEBUG_EXTRA = 3, + }; + + class Log + { + public: + Log(std::ostream &out); + + LogLevel level; + + Log& operator<<(LogLevel lvl); + template Log& operator<<(const T&); + + private: + std::ostream &out; + }; + + + extern Log log; + +}