2 * UCW Library -- A Simple Millisecond Timer
4 * (c) 2007--2012 Martin Mares <mj@ucw.cz>
6 * This software may be freely distributed and used according to the terms
7 * of the GNU Lesser General Public License.
16 * All timing functions in LibUCW are based on signed 64-bit timestamps
17 * with millisecond precision (the <<basics:type_timestamp_t,`timestamp_t`>> type), which measure
18 * time from an unspecified moment in the past. Depending on the compile-time
19 * settings, that moment can be the traditional UNIX epoch, or for example
20 * system boot if POSIX monotonic clock is used.
25 timestamp_t get_timestamp(void); /** Get current time as a millisecond timestamp. **/
30 * A timer is a very simple construct for measuring execution time.
31 * It can be initialized and then read multiple times. Each read returns
32 * the number of milliseconds elapsed since the previous read or initialization.
37 void init_timer(timestamp_t *timer); /** Initialize a timer. **/
38 uns get_timer(timestamp_t *timer); /** Get the number of milliseconds since last init/get of a timer. **/
39 uns switch_timer(timestamp_t *oldt, timestamp_t *newt); /** Stop ticking of one timer and resume another. **/