Re: [Boost-users] progress_timer writes two newlines?

Beman Dawes scribbled:
Daniel Lidström scribbled:
Hello!
Why does boost::progress_timer write two newlines on destruction? One would suffice for me.
Another thing about progress_timer: Why is the only option to output seconds? I'd like to be able to use my own formatter, so that I can have the output in HH:MM:SS.mmm for example:
boost::progress_timer timer(cout, hhmmssmmm_formatter());
Care to submit a patch?
Here is a patch. With it, it is possible to use progress_timer as such: #include <boost/progress.hpp> #include <iomanip> using namespace std; // Time: S.mmm struct my_formatter { string operator()(double s) const { stringstream stream; stream << "Time: " << fixed << setprecision(3) << s << " s\n" ; return stream.str(); } }; // formats as HH:MM:SS.mmm string form(double s) { stringstream stream; int h = static_cast<int>(s/3600); int min = static_cast<int>((s-h*3600))/60; double sec = s - h*3600 - min*60; stream << setfill('0') << setw(2) << h; stream << ':'; stream << setfill('0') << setw(2) << min; stream << ':'; stream << fixed << setprecision(3) << setfill('0') << setw(6) << sec; stream << '\n'; return stream.str(); } int main() { { boost::progress_timer t(cout, my_formatter()); } { boost::progress_timer t(cout, form); } } Hälsningar, Daniel
participants (1)
-
Daniel Lidström