girara
log.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: Zlib */
2 
3 #ifndef GIRARA_LOG_H
4 #define GIRARA_LOG_H
5 
6 #include <glib.h>
7 #include <stdarg.h>
8 
9 #include "macros.h"
10 
14 typedef enum girara_log_level_e
15 {
21 
26 #define girara_debug(...) girara_log(G_STRLOC, __func__, GIRARA_DEBUG, __VA_ARGS__)
27 
31 #define girara_info(...) girara_log(G_STRLOC, __func__, GIRARA_INFO, __VA_ARGS__)
32 
36 #define girara_warning(...) girara_log(G_STRLOC, __func__, GIRARA_WARNING, __VA_ARGS__)
37 
41 #define girara_error(...) girara_log(G_STRLOC, __func__, GIRARA_ERROR, __VA_ARGS__)
42 
51 void girara_log(const char* location, const char* function, girara_log_level_t level,
52  const char* format, ...) GIRARA_PRINTF(4, 5) GIRARA_VISIBLE;
53 
63 void girara_vlog(const char* location, const char* function, girara_log_level_t level,
64  const char* format, va_list ap) GIRARA_VISIBLE;
65 
71 
78 
79 #endif
GIRARA_WARNING
@ GIRARA_WARNING
Definition: log.h:18
GIRARA_DEBUG
@ GIRARA_DEBUG
Definition: log.h:16
macros.h
GIRARA_INFO
@ GIRARA_INFO
Definition: log.h:17
GIRARA_VISIBLE
void GIRARA_VISIBLE
Definition: log.h:52
girara_vlog
void girara_vlog(const char *location, const char *function, girara_log_level_t level, const char *format, va_list ap) GIRARA_VISIBLE
GIRARA_PRINTF
#define GIRARA_PRINTF(format_idx, arg_idx)
Definition: macros.h:26
GIRARA_ERROR
@ GIRARA_ERROR
Definition: log.h:19
girara_set_log_level
void girara_set_log_level(girara_log_level_t level) GIRARA_VISIBLE
girara_log
void girara_log(const char *location, const char *function, girara_log_level_t level, const char *format,...) GIRARA_PRINTF(4
girara_log_level_t
girara_log_level_t
Definition: log.h:15
girara_get_log_level
girara_log_level_t girara_get_log_level(void) GIRARA_VISIBLE