21 #include <farm_pp/preprocessor/comma.hpp>
22 #include <farm_pp/preprocessor/empty.hpp>
27 #define FARM_LOG_LEVEL_TRACE 0
28 #define FARM_LOG_LEVEL_DEBUG 1
29 #define FARM_LOG_LEVEL_INFO 2
42 #ifdef FARM_ONLY_INCLUDE_ME_IN_CPP_FILE
45 "Shoot FARM_ONLY_INCLUDE_ME_IN_CPP_FILE is already define, but it should "
46 "not! You must include trace_debug_log.h only from a *.cpp file and you "
49 "FARM_LOG_LEVEL right above the include.");
51 #define FARM_ONLY_INCLUDE_ME_IN_CPP_FILE 1
53 #ifndef FARM_LOG_LEVEL
56 "You must include log_macros.h only from a *.cpp file and you must define "
57 "FARM_LOG_LEVEL right above the include.");
66 #define FARM_TRACE(...)
67 #define FARM_DEBUG(...)
69 #ifdef FARM_LOG_ENABLED
70 #if FARM_LOG_LEVEL <= FARM_LOG_LEVEL_TRACE
72 #define FARM_TRACE(...) \
73 farm_ng::defaultLogger().log( \
74 farm_ng::LogLevel::trace, \
81 #if FARM_LOG_LEVEL <= FARM_LOG_LEVEL_DEBUG
83 #define FARM_DEBUG(...) \
84 farm_ng::defaultLogger().log( \
85 farm_ng::LogLevel::debug, \
92 #endif // FARM_LOG_ENABLED