40
45
void setConsoleLog(bool);
41
46
void setDebugMode(bool);
42
47
bool getDebugMode();
45
#define LOGGER(M, LEVEL, ...) Logger::log(LEVEL, "%s:%d:tid %lu:\t" M, __FILE__, \
46
__LINE__, pthread_self() & 0xffff, ##__VA_ARGS__)
51
#define LOG_FORMAT(M, ...) "%s:%d:0x%x: " M, FILE_NAME, __LINE__, (unsigned long) pthread_self() & 0xffff, ##__VA_ARGS__
55
#define FILE_NAME __FILE__
48
56
#define ERROR(M, ...) LOGGER(M, LOG_ERR, ##__VA_ARGS__)
49
57
#define WARN(M, ...) LOGGER(M, LOG_WARNING, ##__VA_ARGS__)
50
58
#define INFO(M, ...) LOGGER(M, LOG_INFO, ##__VA_ARGS__)
51
59
#define DEBUG(M, ...) LOGGER(M, LOG_DEBUG, ##__VA_ARGS__)
60
#define LOGGER(M, LEVEL, ...) Logger::log(LEVEL, LOG_FORMAT(M, ##__VA_ARGS__))
65
#define APP_NAME "libsflphone"
68
// Avoid printing whole path on android
69
#define FILE_NAME (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__)
71
#define ERROR(M, ...) LOGGER(M, ANDROID_LOG_ERROR, ##__VA_ARGS__)
72
#define WARN(M, ...) LOGGER(M, ANDROID_LOG_WARN, ##__VA_ARGS__)
73
#define INFO(M, ...) LOGGER(M, ANDROID_LOG_INFO, ##__VA_ARGS__)
74
#define DEBUG(M, ...) LOGGER(M, ANDROID_LOG_DEBUG, ##__VA_ARGS__)
75
#define LOGGER(M, LEVEL, ...) __android_log_print(LEVEL, APP_NAME, LOG_FORMAT(M, ##__VA_ARGS__))
53
78
#define BLACK "\033[22;30m"
54
79
#define RED "\033[22;31m"