#pragma once #include "logstream.hpp" #include namespace llarp { struct OStreamLogStream : public ILogStream { OStreamLogStream(bool withColours, std::ostream& out); ~OStreamLogStream() override = default; void PreLog( std::stringstream& s, LogLevel lvl, std::string_view filename, int lineno, const std::string& nodename) const override; virtual void Print(LogLevel lvl, std::string_view tag, const std::string& msg) override; void PostLog(std::stringstream& ss) const override; virtual void ImmediateFlush() override; void Tick(llarp_time_t) override {} private: bool m_withColours; std::ostream& m_Out; }; } // namespace llarp