diff options
Diffstat (limited to 'src/logger_base.hh')
| -rw-r--r-- | src/logger_base.hh | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/logger_base.hh b/src/logger_base.hh new file mode 100644 index 0000000..56911f0 --- /dev/null +++ b/src/logger_base.hh @@ -0,0 +1,25 @@ +#ifndef LOGGER_BASE_HH +#define LOGGER_BASE_HH + +#include <string_view> + +#include "logger.hh" + +class LoggerBase : public Logger { +public: + void err(char const* format, ...) override; + void warn(char const* format, ...) override; + void info(char const* format, ...) override; +#ifndef NDEBUG + void dbg(char const* format, ...) override; +#endif + +protected: + enum class Level { + ERR, WARN, INFO, DBG + }; + + virtual void msg(Level level, std::string_view str) = 0; +}; + +#endif // LOGGER_BASE_HH |
