diff --git a/logging/README.md.txt b/logging/README.md.txt new file mode 100644 index 0000000..324a714 --- /dev/null +++ b/logging/README.md.txt @@ -0,0 +1,26 @@ +Usage: +====== + +Wrap your for loop in an extra scope with a progressbar, like this: + + { // extra scope + Progressbar p(std::cout); + for(i = 0; i < 1000; ++i){ + ... + p.show(i, 999); + } + } // end extra scope (destructor of Progressbar will be used). + +You can give extra information to show in the constructor: +`Progressbar p(stream, "prefix", "Start message", " End message");` +this will look like: + + Start message + prefix [===============> ] + End message + +You may leave these things empty (`""`). + +NOTE: the width of the bar (incl. prefix) is fixed ATM. +NOTE: pass the maximum-value to the function show, not the bound of the for-loop (this way the function also works nicely for floating types) + \ No newline at end of file diff --git a/logging/main.cpp b/logging/main.cpp new file mode 100644 index 0000000..52caa48 --- /dev/null +++ b/logging/main.cpp @@ -0,0 +1,12 @@ +#include + +#include "Progressbar.hpp" + +int main () { + // lame example + progressbar p(std::cout, "doing magic"); + for (int i = 0; i < 1000; ++i) { + p.show(i, 999); + } +} + diff --git a/logging/progressbar.hpp b/logging/progressbar.hpp index 18f35f5..547a039 100644 --- a/logging/progressbar.hpp +++ b/logging/progressbar.hpp @@ -44,7 +44,7 @@ struct progressbar { , end(end) { if (begin != "") { - out << begin << "\n"; + out << begin << std::endl; } show(0, 1, ' '); @@ -54,9 +54,9 @@ struct progressbar { show(1, 1, '='); if (end != "") { - out << "\n" << end << "\n"; + out << "\n" << end << std::endl; } else { - out << "\n"; + out << std::endl; } }