ToolBox Library 2.1.0
An Library containing function and class to make developing in C faster
log.h
1#ifndef TOOLBOX_LOG_H
2#define TOOLBOX_LOG_H
3
4#include "toolbox/ansi_escape.h"
5
6#include <stdio.h>
7
8#ifndef LOG_FILE_OUT
9#define LOG_FILE_OUT stdout
10#endif
11
12#define LOGV_TEST(MSG, ...) \
13 fprintf(LOG_FILE_OUT \
14 , FG_MAGENTA""SET_BLINK"[TEST] (%s:%d) "MSG""RST_ALL"\n" \
15 , __FILE_NAME__, __LINE__, __VA_ARGS__)
16#define LOGV_INFO(MSG, ...) \
17 fprintf(LOG_FILE_OUT, "[INFO] (%s:%d) "MSG""RST_ALL"\n" \
18 , __FILE_NAME__, __LINE__, __VA_ARGS__)
19#define LOGV_WARNING(MSG, ...) \
20 fprintf(LOG_FILE_OUT, FG_YELLOW"[WARNING] (%s:%d) "MSG""RST_ALL"\n" \
21 , __FILE_NAME__, __LINE__, __VA_ARGS__)
22#define LOGV_ERROR(MSG, ...) \
23 fprintf(LOG_FILE_OUT, FG_RED"[ERROR] (%s:%d) "MSG""RST_ALL"\n" \
24 , __FILE_NAME__, __LINE__, __VA_ARGS__)
25
26#define LOG_TEST(MSG) \
27 fprintf(LOG_FILE_OUT \
28 , FG_MAGENTA""SET_BLINK"[TEST] (%s:%d) "MSG""RST_ALL"\n" \
29 , __FILE_NAME__, __LINE__)
30#define LOG_INFO(MSG) \
31 fprintf(LOG_FILE_OUT, "[INFO] (%s:%d) "MSG""RST_ALL"\n" \
32 , __FILE_NAME__, __LINE__)
33#define LOG_WARNING(MSG) \
34 fprintf(LOG_FILE_OUT, FG_YELLOW"[WARNING] (%s:%d) "MSG""RST_ALL"\n" \
35 , __FILE_NAME__, __LINE__)
36#define LOG_ERROR(MSG) \
37 fprintf(LOG_FILE_OUT, FG_RED"[ERROR] (%s:%d) "MSG""RST_ALL"\n" \
38 , __FILE_NAME__, __LINE__)
39
40#endif