function_macros.hpp 1.2 KB

1234567891011121314151617181920212223
  1. #include "../config_macros.hpp";
  2. #ifdef DEBUG
  3. #define LOG_BASE(level,msg) diag_log text format[QUOTE(ADDON[level]: %1), msg]
  4. #define LOG(msg) LOG_BASE(DEBUG, LOG_FILENUMBER(msg))
  5. #define LOGF_1(msg,arg0) LOG(format[ARR_2(msg,arg0)])
  6. #define LOGF_2(msg,arg0,arg1) LOG(format[ARR_3(msg,arg0,arg1)])
  7. #define LOGF_3(msg,arg0,arg1,arg2) LOG(format[ARR_4(msg,arg0,arg1,arg2)])
  8. #define LOG_ERROR(msg) LOG_BASE(ERR,LOG_FILENUMBER(msg))
  9. #define LOG_ERRORF_1(msg,arg0) LOG_ERROR(format[ARR_2(msg,arg0)])
  10. #define LOG_ERRORF_2(msg,arg0,arg1) LOG_ERROR(format[ARR_3(msg,arg0,arg1)])
  11. #define LOG_FILENUMBER(msg) format [ARR_4('%1 at %2:%3',msg,__FILE__,__LINE__ + 1)]
  12. #endif
  13. #ifndef DEBUG
  14. #define LOG_BASE(level,msg) diag_log text format[QUOTE(ADDON[level]: %1), msg]
  15. #define LOG_FILENUMBER(msg) format [ARR_4('%1 at %2:%3',msg,__FILE__,__LINE__ + 1)]
  16. #define LOG_ERROR(msg) LOG_BASE(ERR,LOG_FILENUMBER(msg))
  17. #define LOG_ERRORF_1(msg,arg0) LOG_ERROR(format[ARR_2(msg,arg0)])
  18. #define LOG_ERRORF_2(msg,arg0,arg1) LOG_ERROR(format[ARR_3(msg,arg0,arg1)])
  19. #define LOG(msg) //not debug
  20. #define LOGF_1(msg,arg0) //not debug
  21. #define LOGF_2(msg,arg0,arg1) //not debug
  22. #define LOGF_3(msg,arg0,arg1,arg2) //not debug
  23. #endif