1 // constructor cl_timing(cl_time_consumption&).
12 static void report_accu (const cl_timing& t)
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;
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;
25 cl_timing::cl_timing (cl_time_consumption& accumulator)
27 report_fn = report_accu; report_destination = &accumulator;
28 tmp = cl_current_time_consumption();