summaryrefslogtreecommitdiff
path: root/resourceqt-client/time-stat.c
blob: 6fb4fdcbcd071920b0b4f5fe4a33ed22870b3ae2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include "time-stat.h"

static struct timespec start_time = {0,0};

int start_timer(void)
{
    int r;
    r = clock_gettime(CLOCK_REALTIME, &start_time);

    if (r == 0)
        return 1;
    else
        return 0;
}

double stop_timer(void)
{
    struct timespec end_time;
    int r;
    double milliseconds = 0.0;

    r = clock_gettime(CLOCK_REALTIME, &end_time);

    if (r == 0) {
        milliseconds = 1000.0 * (end_time.tv_sec - start_time.tv_sec) +
                   (end_time.tv_nsec - start_time.tv_nsec) / 1000000.0;
    }
    start_time.tv_sec = 0;
    start_time.tv_nsec = 0;

    return milliseconds;
}