X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=src%2Ftiming.c;h=df43a4122b2e37e28d15714f30049d1151bddde9;hp=3b653af4d7268a546659d8862277b8c2e72f0e00;hb=236966a07ceb8e28649470995f88251c37423715;hpb=fe507b6b15788a3a8e58063d9dae52532a5229a5 diff --git a/src/timing.c b/src/timing.c index 3b653af..df43a41 100644 --- a/src/timing.c +++ b/src/timing.c @@ -1,8 +1,6 @@ -/* - * Copyright (C) 1995-2007, Index Data ApS +/* This file is part of the YAZ toolkit. + * Copyright (C) Index Data * See the file LICENSE for details. - * - * $Id: timing.c,v 1.5 2007-05-06 20:12:20 adam Exp $ */ /** @@ -36,11 +34,12 @@ struct yaz_timing { #endif #if HAVE_SYS_TIME_H struct timeval start_time, end_time; -#endif +#else #ifdef WIN32 - ULONGLONG start_time, end_time; - ULONGLONG start_time_sys, start_time_user; - ULONGLONG end_time_sys, end_time_user; + LONGLONG start_time, end_time; + LONGLONG start_time_sys, start_time_user; + LONGLONG end_time_sys, end_time_user; +#endif #endif double real_sec, user_sec, sys_sec; }; @@ -67,7 +66,7 @@ static void get_process_time(ULONGLONG *lp_user, ULONGLONG *lp_sys) li.HighPart = sys_t.dwHighDateTime; *lp_sys = li.QuadPart; } -static void get_date_as_largeinteger(ULONGLONG *lp) +static void get_date_as_largeinteger(LONGLONG *lp) { FILETIME f; ULARGE_INTEGER li; @@ -93,7 +92,7 @@ void yaz_timing_start(yaz_timing_t t) #if HAVE_SYS_TIME_H gettimeofday(&t->start_time, 0); t->real_sec = 0.0; -#endif +#else #ifdef WIN32 t->real_sec = 0.0; t->user_sec = 0.0; @@ -101,13 +100,14 @@ void yaz_timing_start(yaz_timing_t t) get_date_as_largeinteger(&t->start_time); get_process_time(&t->start_time_user, &t->start_time_sys); #endif +#endif } void yaz_timing_stop(yaz_timing_t t) { #if HAVE_SYS_TIMES_H times(&t->tms2); - + t->user_sec = (double) (t->tms2.tms_utime - t->tms1.tms_utime)/100; t->sys_sec = (double) (t->tms2.tms_stime - t->tms1.tms_stime)/100; #endif @@ -115,8 +115,7 @@ void yaz_timing_stop(yaz_timing_t t) gettimeofday(&t->end_time, 0); t->real_sec = ((t->end_time.tv_sec - t->start_time.tv_sec) * 1000000.0 + t->end_time.tv_usec - t->start_time.tv_usec) / 1000000; - -#endif +#else #ifdef WIN32 get_date_as_largeinteger(&t->end_time); t->real_sec = (t->end_time - t->start_time) / 10000000.0; @@ -125,6 +124,7 @@ void yaz_timing_stop(yaz_timing_t t) t->user_sec = (t->end_time_user - t->start_time_user) / 10000000.0; t->sys_sec = (t->end_time_sys - t->start_time_sys) / 10000000.0; #endif +#endif } double yaz_timing_get_real(yaz_timing_t t) @@ -154,6 +154,7 @@ void yaz_timing_destroy(yaz_timing_t *tp) /* * Local variables: * c-basic-offset: 4 + * c-file-style: "Stroustrup" * indent-tabs-mode: nil * End: * vim: shiftwidth=4 tabstop=8 expandtab