X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Ftimer.h;h=6435155c6c88d774d87f0bb67385a9e9065d2c30;hb=530f42305826fa96dc8fd807f44ac83a5b7866c4;hp=44724ee026e28e0188b68a507fb00dc0462437d6;hpb=e7440b69bf0dc486314544b0e1fb5ac2d45a9a8d;p=dcpomatic.git diff --git a/src/lib/timer.h b/src/lib/timer.h index 44724ee02..6435155c6 100644 --- a/src/lib/timer.h +++ b/src/lib/timer.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2012-2019 Carl Hetherington + Copyright (C) 2012-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,18 +18,22 @@ */ + /** @file src/timer.h * @brief Some timing classes for debugging and profiling. */ + #ifndef DCPOMATIC_TIMER_H #define DCPOMATIC_TIMER_H + #include #include #include #include + /** @class PeriodTimer * @brief A class to allow timing of a period within the caller. * @@ -49,6 +53,7 @@ private: struct timeval _start; }; + /** @class StateTimer * @brief A class to allow measurement of the amount of time a program * spends in one of a set of states. @@ -61,9 +66,13 @@ class StateTimer { public: explicit StateTimer (std::string n); + /** @param n Name to use when giving output. + * @param s Initial state. + */ StateTimer (std::string n, std::string s); ~StateTimer (); + /** @param s New state that the caller is in */ void set (std::string s); void unset (); @@ -95,4 +104,5 @@ private: std::map _counts; }; + #endif