1 2 #ifndef H_NSK_DBG 3 #define H_NSK_DBG 4 5 #define NSK_DEBUG_LEVEL 0 6 #define NSK_DEBUG_RAW(x) { printf x ; } 7 8 #define PRINT_ERROR 3 9 #define PRINT_INFO 4 10 #define PRINT_TRACE 7 11 12 MS_U32 debug_level; 13 14 #define NSK_PRINT(A) do { if(debug_level >= PRINT_TRACE) \ 15 { \ 16 NSK_DEBUG_RAW(A); \ 17 } } while (0) 18 19 #define NSK_ERROR(A) do { if(debug_level >= PRINT_ERROR) \ 20 { \ 21 NSK_DEBUG_RAW(("ERROR: ")); NSK_DEBUG_RAW(A); NSK_DEBUG_RAW((" at line %d file %s\n", __LINE__, __FILE__)); \ 22 } } while (0) 23 24 #define NSK_INFO(A) do { if(debug_level >= PRINT_INFO) \ 25 { \ 26 NSK_DEBUG_RAW(("------ %s(): ", __FUNCTION__)); NSK_DEBUG_RAW(A); \ 27 } } while (0) 28 29 30 #define NSK_TRACE(A) do { if(debug_level >= PRINT_TRACE) \ 31 { \ 32 NSK_DEBUG_RAW(("------ %s(): ", __FUNCTION__)); NSK_DEBUG_RAW(A); \ 33 } } while (0) 34 35 #if 0 36 #if NSK_DEBUG_LEVEL == 0 37 #define NSK_PRINT(A) 38 #define NSK_ERROR(A) 39 #define NSK_TRACE(A) 40 #elif NSK_DEBUG_LEVEL == 1 41 #define NSK_PRINT(A) NSK_DEBUG_RAW(A) 42 #define NSK_ERROR(A) { NSK_DEBUG_RAW(("ERROR: ")); NSK_DEBUG_RAW(A); NSK_DEBUG_RAW((" at line %d file %s\n", __LINE__, __FILE__)); } 43 #define NSK_TRACE(A) 44 #else 45 #define NSK_PRINT(A) NSK_DEBUG_RAW(A) 46 #define NSK_ERROR(A) { NSK_DEBUG_RAW(("ERROR: ")); NSK_DEBUG_RAW(A); NSK_DEBUG_RAW((" at line %d file %s\n", __LINE__, __FILE__)); } 47 #define NSK_TRACE(A) { NSK_DEBUG_RAW(("------ %s(): ", __FUNCTION__)); NSK_DEBUG_RAW(A); } 48 #endif 49 50 #define DEBUG_LEVEL 0 51 52 #define debug(lvl, x...) do { if (lvl <= DEBUG_LEVEL) { printf(x); } } while (0) 53 #endif 54 55 56 57 #endif // H_NSK_DBG 58 59