tizen 2.3 release
[framework/system/deviced.git] / src / logd / src / liblogd-db / tests / padvisor-test.c
1 #include <db.h>
2 #include <errno.h>
3 #include <macro.h>
4 #include <padvisor.h>
5
6 int main(void)
7 {
8         struct logd_power_advisor *lpa = NULL;
9         struct device_power_consumption *dpc =
10                 logd_get_device_power_cons(1, 2000000000);
11
12         if (!dpc) {
13                 puts("logd_get_device_power_cons failed");
14                 return -errno;
15         }
16
17         puts("Device id  | Working time  | persent");
18         for (int i = 0; i < LOGD_OBJECT_MAX; ++i) {
19                 printf("%9d  | %12d  | %.4f\n", i, dpc->device_cons[i].time,
20                         dpc->device_cons[i].percentage * 100);
21         }
22         logd_free_device_power_cons(dpc);
23
24
25         lpa = logd_get_power_advisor();
26         if (lpa != NULL) {
27                 for (int i = 0; i < lpa->idle_devices_used_num; i++) {
28                         printf("device - %d, time - %lld\n",
29                                 lpa->idle_devices[i].device,
30                                 lpa->idle_devices[i].idle_time);
31                 }
32                 for (int i = 0; i < lpa->proc_stat_used_num; i++) {
33                         printf("application - %s, percentage - %.2f, power cons(uAh) - %f  utime - %lld, stime - %lld\n",
34                                 lpa->procs[i].application, lpa->procs[i].percentage * 100,
35                                 lpa->procs[i].utime_power_cons + lpa->procs[i].stime_power_cons,
36                                 lpa->procs[i].utime, lpa->procs[i].stime);
37                 }
38         } else {
39                 printf("logd_get_power_advisor() returned NULL\n");
40                 return -errno;
41         }
42
43         logd_free_power_advisor(lpa);
44
45         return 0;
46 }