Pārlūkot izejas kodu

[rtdbg] Add simple API to rtdbg.h. Such as LOG_D, LOG_E.

armink 7 gadi atpakaļ
vecāks
revīzija
67188c8692
1 mainītis faili ar 23 papildinājumiem un 2 dzēšanām
  1. 23 2
      include/rtdbg.h

+ 23 - 2
include/rtdbg.h

@@ -20,6 +20,7 @@
  * Change Logs:
  * Date           Author       Notes
  * 2016-11-12     Bernard      The first version
+ * 2018-05-25     armink       Add simple API, such as LOG_D, LOG_E
  */
 
 /*
@@ -31,6 +32,11 @@
  * In your C/C++ file, enable/disable DEBUG_ENABLE macro, and then include this
  * header file.
  *
+ * #undef DBG_SECTION_NAME      // avoid the macro is already defined
+ * #undef DBG_LEVEL
+ * #undef DBG_COLOR
+ * #undef DBG_ENABLE
+ *
  * #define DBG_SECTION_NAME    "[ MOD]"
  * #define DBG_ENABLE          // enable debug macro
  * #define DBG_LEVEL           DBG_INFO
@@ -39,7 +45,11 @@
  * Then in your C/C++ file, you can use dbg_log macro to print out logs:
  * dbg_log(DBG_INFO, "this is a log!\n");
  *
- * Or if you want to use different color for different kinds log, you can
+ * Or if you want to using the simple API, you can
+ * LOG_D("this is a debug log!");
+ * LOG_E("this is a error log!");
+ *
+ * If you want to use different color for different kinds log, you can
  * #define DBG_COLOR
  */
 
@@ -120,12 +130,23 @@
         _DBG_COLOR(0);                                      \
     }
 
+#define dbg_log_line(level, ...)                            \
+    dbg_log(level, __VA_ARGS__);                            \
+    if ((level) >= DBG_LEVEL) {                             \
+        rt_kprintf("\n");                                   \
+    }
+
 #else
 #define dbg_log(level, fmt, ...)
 #define dbg_here
 #define dbg_enter
 #define dbg_exit
+#define dbg_log_line(level, ...)
 #endif
 
-#endif
+#define LOG_D(...)           dbg_log_line(DBG_LOG    , __VA_ARGS__)
+#define LOG_I(...)           dbg_log_line(DBG_INFO   , __VA_ARGS__)
+#define LOG_W(...)           dbg_log_line(DBG_WARNING, __VA_ARGS__)
+#define LOG_E(...)           dbg_log_line(DBG_ERROR  , __VA_ARGS__)
 
+#endif /* RT_DBG_H__ */