Imported from 6.824 labs
[invirt/third/libt4.git] / rpc / jsl_log.h
1 #ifndef __JSL_LOG_H__
2 #define __JSL_LOG_H__ 1
3
4 enum dbcode {
5         JSL_DBG_OFF = 0,
6         JSL_DBG_1 = 1, // Critical
7         JSL_DBG_2 = 2, // Error
8         JSL_DBG_3 = 3, // Info
9         JSL_DBG_4 = 4, // Debugging
10 };
11
12 extern int JSL_DEBUG_LEVEL;
13
14 #define jsl_log(level,...)                                    \
15         do {                                                        \
16                 if(JSL_DEBUG_LEVEL < abs(level))                                                                                \
17                 {;}                                                       \
18                 else {                                                    \
19                         { printf(__VA_ARGS__);}                                                                                                         \
20                 }                                                         \
21         } while(0)
22
23 void jsl_set_debug(int level);
24
25 #endif // __JSL_LOG_H__