27 unsigned int maxWidth = 180)
36 void flush(
const Level& lvl,
const std::ostringstream& input)
override {
37 std::ostringstream os;
38 std::string text = input.str();
39 std::reverse(text.begin(), text.end());
40 os << std::right << std::setw(
m_maxWidth) << text;
64 std::ostream* log_stream) {
65 using namespace Logging;
66 auto output = std::make_unique<LevelOutputDecorator>(
67 std::make_unique<NamedOutputDecorator>(
68 std::make_unique<TimedOutputDecorator>(
69 std::make_unique<MirrorOutputDecorator>(
70 std::make_unique<DefaultPrintPolicy>(log_stream))),
72 auto print = std::make_unique<DefaultFilterPolicy>(lvl);
73 return std::make_unique<const Logger>(std::move(output), std::move(
print));