rofi  1.7.0
timings.c
Go to the documentation of this file.
1 /*
2  * rofi
3  *
4  * MIT/X11 License
5  * Copyright © 2013-2021 Qball Cow <qball@gmpclient.org>
6  *
7  * Permission is hereby granted, free of charge, to any person obtaining
8  * a copy of this software and associated documentation files (the
9  * "Software"), to deal in the Software without restriction, including
10  * without limitation the rights to use, copy, modify, merge, publish,
11  * distribute, sublicense, and/or sell copies of the Software, and to
12  * permit persons to whom the Software is furnished to do so, subject to
13  * the following conditions:
14  *
15  * The above copyright notice and this permission notice shall be
16  * included in all copies or substantial portions of the Software.
17  *
18  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
19  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
21  * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
22  * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
23  * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
24  * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
25  *
26  */
27 
29 #define G_LOG_DOMAIN "Timings"
30 
31 #include "timings.h"
32 #include "config.h"
33 #include "rofi.h"
34 #include <stdio.h>
38 GTimer *global_timer = NULL;
42 double global_timer_last = 0.0;
43 
44 void rofi_timings_init(void) {
45  global_timer = g_timer_new();
46  double now = g_timer_elapsed(global_timer, NULL);
47  g_debug("%4.6f (%2.6f): Started", now, 0.0);
48 }
49 
50 void rofi_timings_tick(const char *file, char const *str, int line,
51  char const *msg) {
52  double now = g_timer_elapsed(global_timer, NULL);
53 
54  g_debug("%4.6f (%2.6f): %s:%s:%-3d %s", now, now - global_timer_last, file,
55  str, line, msg);
56  global_timer_last = now;
57 }
58 
59 void rofi_timings_quit(void) {
60  double now = g_timer_elapsed(global_timer, NULL);
61  g_debug("%4.6f (%2.6f): Stopped", now, 0.0);
62  g_timer_destroy(global_timer);
63 }
void rofi_timings_init(void)
Definition: timings.c:44
void rofi_timings_tick(const char *file, char const *str, int line, char const *msg)
Definition: timings.c:50
void rofi_timings_quit(void)
Definition: timings.c:59
GTimer * global_timer
Definition: timings.c:38
double global_timer_last
Definition: timings.c:42