application_3.h 804 B

12345678910111213141516171819202122232425262728293031323334
  1. typedef struct {
  2. char* hostname;
  3. int pid;
  4. } user_locinfo_t;
  5. #define log4c_category_log_userinfo(a_category, a_void, a_priority, a_format, args...) \
  6. helper(a_category, __FILE__, __LINE__, __FUNCTION__, a_void, a_priority, a_format , ## args );
  7. LOG4C_ATTRIBUTE((format(printf, 7, 8)))
  8. static inline void helper(
  9. const log4c_category_t* a_category,
  10. char* file,
  11. int line,
  12. const char* func,
  13. void* user_locinfo,
  14. int a_priority,
  15. const char* a_format,
  16. ...)
  17. {
  18. log4c_location_info_t locinfo;
  19. locinfo.loc_file = file;
  20. locinfo.loc_line = line;
  21. locinfo.loc_function = func;
  22. locinfo.loc_data = user_locinfo;
  23. va_list va;
  24. va_start(va, a_format);
  25. log4c_category_log_locinfo(a_category, &locinfo, a_priority, a_format,va);
  26. va_end(va);
  27. }