cpputil/src/logger.cpp

30 lines
524 B
C++

#include "logger.h"
#include <iostream>
#include <stdexcept>
logger ulog;
logger::logger(): _enabled(true), _type(log_type::std_output)
{
}
logger::logger(std::string path): _enabled(true), _outFile(path), _type(log_type::file)
{
}
void logger::set_enabled(bool enabled)
{
_enabled = enabled;
}
void logger::form_log_line(const char *s)
{
while (*s)
{
if (*s == '%' && *++s != '%')
throw std::runtime_error("invalid format string: missing arguments");
_logLine << *s++;
}
}