girara
log.h
Go to the documentation of this file.
1 /* See LICENSE file for license and copyright information */
2 
3 #ifndef GIRARA_LOG_H
4 #define GIRARA_LOG_H
5 
6 #include <glib.h>
7 #include <stdarg.h>
8 
9 #include "types.h"
10 #include "macros.h"
11 
12 #define GIRARA_INDIRECT(x) x
13 
18 #define girara_debug(...) girara_log(G_STRLOC, __func__, GIRARA_DEBUG, __VA_ARGS__)
19 
23 #define girara_info(...) girara_log(G_STRLOC, __func__, GIRARA_INFO, __VA_ARGS__)
24 
28 #define girara_warning(...) girara_log(G_STRLOC, __func__, GIRARA_WARNING, __VA_ARGS__)
29 
33 #define girara_error(...) girara_log(G_STRLOC, __func__, GIRARA_ERROR, __VA_ARGS__)
34 
43 void girara_log(const char* location, const char* function, girara_log_level_t level,
44  const char* format, ...) GIRARA_PRINTF(4, 5);
45 
55 void girara_vlog(const char* location, const char* function, girara_log_level_t level,
56  const char* format, va_list ap);
57 
63 
70 
71 #endif
girara_log_level_t girara_get_log_level(void)
void girara_set_log_level(girara_log_level_t level)
girara_log_level_t
Definition: types.h:58
void girara_log(const char *location, const char *function, girara_log_level_t level, const char *format,...) GIRARA_PRINTF(4
#define GIRARA_PRINTF(format_idx, arg_idx)
Definition: macros.h:11
void void girara_vlog(const char *location, const char *function, girara_log_level_t level, const char *format, va_list ap)