66 _stream->exceptions( std::ios_base::failbit | std::ios_base::badbit );
67 _stream->open( filepath.c_str(), std::ios::out );
110 _writer.reset(
new fmt::Writer );
140 std::list<WriterPtr> writers;
142 auto _write_to_stream = [&]( std::list<WriterPtr>& l ) {
143 for (
const auto& _w : l )
155 _write_to_stream( writers );
158 catch ( writer_queue::Canceled& )
163 _write_to_stream( writers );
175 _stream->exceptions( std::ios_base::failbit | std::ios_base::badbit );
176 _stream->open( filepath.c_str(), std::ios::out );
189 _writer.reset(
new fmt::Writer );
virtual void flush() POL_OVERRIDE
void pop_remaining(std::list< Message > *msgs)
virtual void flush() POL_OVERRIDE
ThreadedOFStreamWriter()
ofstream implementation with worker thread for file io
std::unique_ptr< fmt::Writer > _writer
virtual void flush_file() POL_OVERRIDE
virtual void init(const std::string &filepath) POL_OVERRIDE
fmt::Writer & operator()()
void pop_wait(Message *msg)
virtual void flush() POL_OVERRIDE
virtual void flush_file() POL_OVERRIDE
StreamWriter()
BaseClass implements only writer operator logic.
virtual ~OFStreamWriter()
void push(Message const &msg)
virtual void init(const std::string &filepath) POL_OVERRIDE
virtual void init(const std::string &filepath) POL_OVERRIDE
OFStreamWriter()
ofstream implementation (simple non threaded)
virtual void flush_file() POL_OVERRIDE
std::list< WriterPtr > _writers_hold
virtual ~ThreadedOFStreamWriter()
OStreamWriter()
ostream implementation (non threaded)
const std::size_t flush_limit