From 71a7b79f24534a816ba37a1a1d24a38f8f4dfcf6 Mon Sep 17 00:00:00 2001 From: Sebastian Eibl <sebastian.eibl@fau.de> Date: Fri, 12 Apr 2019 10:46:41 +0200 Subject: [PATCH] added stream output to Timer --- src/core/timing/Timer.h | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/core/timing/Timer.h b/src/core/timing/Timer.h index 86814b043..d3c72dfe0 100644 --- a/src/core/timing/Timer.h +++ b/src/core/timing/Timer.h @@ -28,6 +28,8 @@ #include "WcPolicy.h" #include "core/DataTypes.h" +#include <iomanip> +#include <iostream> #include <limits> @@ -442,6 +444,24 @@ inline void Timer<TP>::merge( const Timer<TP> & other ) //********************************************************************************************************************** +//====================================================================================================================== +// +// OSTREAM OVERLOAD +// +//====================================================================================================================== + +template< typename TP > // Timing policy +std::ostream & operator<< ( std::ostream & os, const Timer<TP> & timer ) +{ + os << std::fixed << std::setprecision(3) << + "average: " << timer.average() << + " | min: " << timer.min() << + " | max: " << timer.max() << + " | variance: " << timer.variance(); + return os; +} + + } // namespace timing typedef timing::Timer<timing::CpuPolicy> CpuTimer; -- GitLab