]> www.ginac.de Git - cln.git/blob - src/timing/cl_t_c1.cc
Make @exec_prefix@ usable in shell scripts.
[cln.git] / src / timing / cl_t_c1.cc
1 // constructor cl_timing(cl_time_consumption&).
2
3 // General includes.
4 #include "cl_sysdep.h"
5
6 // Specification.
7 #include "cl_timing.h"
8
9
10 // Implementation.
11
12 static void report_accu (const cl_timing& t)
13 {
14         var const cl_time_consumption usage_end = cl_current_time_consumption();
15         var const cl_time_consumption& usage_start = t.tmp;
16         var cl_time_consumption usage;
17         usage.realtime = usage_end.realtime - usage_start.realtime;
18         usage.usertime = usage_end.usertime - usage_start.usertime;
19
20         var cl_time_consumption& accumulator = *(cl_time_consumption*)(t.report_destination);
21         accumulator.realtime = accumulator.realtime + usage.realtime;
22         accumulator.usertime = accumulator.usertime + usage.usertime;
23 }
24
25 cl_timing::cl_timing (cl_time_consumption& accumulator)
26 {
27         report_fn = report_accu; report_destination = &accumulator;
28         tmp = cl_current_time_consumption();
29 }