no-OS
no_os_print_log.h
Go to the documentation of this file.
1 /***************************************************************************/
40 #ifndef _NO_OS_PRINT_LOG_H_
41 #define _NO_OS_PRINT_LOG_H_
42 
43 #include <stdio.h>
44 
45 #define NO_OS_LOG_EMERG 0x0
46 #define NO_OS_LOG_ALERT 0x1
47 #define NO_OS_LOG_CRIT 0x2
48 #define NO_OS_LOG_ERR 0x3
49 #define NO_OS_LOG_WARNING 0x4
50 #define NO_OS_LOG_NOTICE 0x5
51 #define NO_OS_LOG_INFO 0x6
52 #define NO_OS_LOG_DEBUG 0x7
53 
54 #ifndef NO_OS_LOG_LEVEL
55 #define NO_OS_LOG_LEVEL NO_OS_LOG_INFO
56 #endif
57 
58 #if defined(PRINT_TIME)
59 #define pr_time { struct no_os_time _t = no_os_get_time(); \
60  printf("[%5d.%06d] ", _t.s, _t.us); \
61 }
62 #else
63 #define pr_time ;
64 #endif
65 
66 #if defined(NO_OS_LOG_LEVEL) && NO_OS_LOG_LEVEL >= NO_OS_LOG_EMERG && NO_OS_LOG_LEVEL <= NO_OS_LOG_DEBUG
67 #define pr_emerg(fmt, args...) do { \
68  pr_time \
69  printf("EMERG: %s:%d:%s(): " fmt, __FILE__, __LINE__, __func__, ##args); \
70 } while (0)
71 #else
72 #define pr_emerg(fmt, args...)
73 #endif
74 
75 #if defined(NO_OS_LOG_LEVEL) && NO_OS_LOG_LEVEL >= NO_OS_LOG_ALERT && NO_OS_LOG_LEVEL <= NO_OS_LOG_DEBUG
76 #define pr_alert(fmt, args...) do { \
77  pr_time \
78  printf("ALERT: %s:%d:%s(): " fmt, __FILE__, __LINE__, __func__, ##args); \
79 } while (0)
80 #else
81 #define pr_alert(fmt, args...)
82 #endif
83 
84 #if defined(NO_OS_LOG_LEVEL) && NO_OS_LOG_LEVEL >= NO_OS_LOG_CRIT && NO_OS_LOG_LEVEL <= NO_OS_LOG_DEBUG
85 #define pr_crit(fmt, args...) do { \
86  pr_time \
87  printf("CRIT: %s:%d:%s(): " fmt, __FILE__, __LINE__, __func__, ##args); \
88 } while (0)
89 #else
90 #define pr_crit(fmt, args...)
91 #endif
92 
93 #if defined(NO_OS_LOG_LEVEL) && NO_OS_LOG_LEVEL >= NO_OS_LOG_ERR && NO_OS_LOG_LEVEL <= NO_OS_LOG_DEBUG
94 #define pr_err(fmt, args...) do { \
95  pr_time \
96  printf("ERR: %s:%d:%s(): " fmt, __FILE__, __LINE__, __func__, ##args); \
97 } while (0)
98 #else
99 #define pr_err(fmt, args...)
100 #endif
101 
102 #if defined(NO_OS_LOG_LEVEL) && NO_OS_LOG_LEVEL >= NO_OS_LOG_WARNING && NO_OS_LOG_LEVEL <= NO_OS_LOG_DEBUG
103 #define pr_warning(fmt, args...) do { \
104  pr_time \
105  printf("WARNING: " fmt, ##args); \
106 } while (0)
107 #else
108 #define pr_warning(fmt, args...)
109 #endif
110 
111 #if defined(NO_OS_LOG_LEVEL) && NO_OS_LOG_LEVEL >= NO_OS_LOG_NOTICE && NO_OS_LOG_LEVEL <= NO_OS_LOG_DEBUG
112 #define pr_notice(fmt, args...) do { \
113  pr_time \
114  printf("NOTICE: " fmt, ##args); \
115 } while (0)
116 #else
117 #define pr_notice(fmt, args...)
118 #endif
119 
120 #if defined(NO_OS_LOG_LEVEL) && NO_OS_LOG_LEVEL >= NO_OS_LOG_INFO && NO_OS_LOG_LEVEL <= NO_OS_LOG_DEBUG
121 #define pr_info(fmt, args...) do { \
122  pr_time \
123  printf(fmt, ##args); \
124 } while(0)
125 #else
126 #define pr_info(fmt, args...)
127 #endif
128 
129 #if defined(NO_OS_LOG_LEVEL) && NO_OS_LOG_LEVEL == NO_OS_LOG_DEBUG
130 #define pr_debug(fmt, args...) do { \
131  pr_time \
132  printf("DEBUG: " fmt, ##args); \
133 } while(0)
134 #else
135 #define pr_debug(fmt, args...)
136 #endif
137 
138 #endif // _NO_OS_PRINT_LOG_H_