diff --git a/apps/nexus/report.h b/apps/nexus/report.h new file mode 100644 index 00000000..e474e8d3 --- /dev/null +++ b/apps/nexus/report.h @@ -0,0 +1,31 @@ +#ifndef NXS_REPORT_H +#define NXS_REPORT_H + +#include +using namespace std; + +#include "stopwatch.h" + +class Report { +public: + void Start(unsigned int tot, unsigned int st) { + total = tot; + step = st; + watch.Restart(); + } + void Output(unsigned int count) { + if((count%step) != 0) return; + float r = 100.0 * count/total; + float t = watch.Elapsed(); + cout << r << "% in " << t << "s -> " << count/t << "n/s\n"; + } + double Elapsed() { + return watch.Elapsed(); + } +private: + StopWatch watch; + unsigned int total; //when finished + unsigned int step; //check once every step +}; + +#endif