LogBufferStream::LogBufferStream(outputStream* wst, size_t len) : stringStream(NEW_RESOURCE_ARRAY(char, len), len), _wst(wst) { } void LogBufferStream::stamp() { if(_wst!=NULL){ TimeStamp* stamp = _wst->get_time_stamp(); if (!stamp->is_updated()) { stamp->update(); } print("%.3f", stamp->seconds()); } else { stringStream::stamp(); } } // ============================================================================ // BufferedLoggerMark implementation // ============================================================================ BufferedLoggerMark::BufferedLoggerMark(const char* tag, int opt, bool stp, bool crp, outputStream* st, long bufferSize) : LoggerStackObj(tag, opt, stp, crp, st), _mst(st, bufferSize), _depth(0) { } void BufferedLoggerMark::vout(const char*format,va_list ap){ _mst.vprint(format, ap); }