Files

74 lines
1.6 KiB
C

/*
* Copyright (c) XMEDIA. All rights reserved.
*/
#ifndef __LOG_BASE_H__
#define __LOG_BASE_H__
#define LOG_LEVEL_ERR 1
#define LOG_LEVEL_WARN 2
#define LOG_LEVEL_INFO 3
#define LOG_LEVEL_PRINT 3
#define LOG_LEVEL_DEBUG 5
/**
* RED [error]
* YELLOW [warn]
* GREEN [info]
* GREEN [trace]
* BLUE [debug]
*/
#ifdef PRINT_COLOR_ON
#define RED "\033[1;31m"
#define YELLOW "\033[1;33m"
#define GREEN "\033[1;32m"
#define BLUE "\033[1;34m"
#define NONE "\033[m"
#else
#define RED ""
#define YELLOW ""
#define GREEN ""
#define BLUE ""
#define NONE ""
#endif
#define TAG "LOG"
extern unsigned int g_loglevel;
#define LOGE(fmt, args...) do { \
if (g_loglevel >= LOG_LEVEL_ERR) { \
printf(RED "[%s E] <%s : %d> " fmt NONE, \
TAG, __func__, __LINE__, ##args); \
} \
} while (0)
#define LOGW(fmt, args...) do { \
if (g_loglevel >= LOG_LEVEL_WARN) { \
printf(YELLOW "[%s W] <%s : %d> " fmt NONE, \
TAG, __func__, __LINE__, ##args); \
} \
} while (0)
#define LOGI(fmt, args...) do { \
if (g_loglevel >= LOG_LEVEL_INFO) { \
printf(GREEN "[%s I] <%s : %d> " fmt NONE, \
TAG, __func__, __LINE__, ##args); \
} \
} while (0)
#define LOGD(fmt, args...) do { \
if (g_loglevel >= LOG_LEVEL_DEBUG) { \
printf(NONE "[%s D] <%s : %d> " fmt NONE, \
TAG, __func__, __LINE__, ##args); \
} \
} while (0)
#define LOGT(fmt, args...) do { \
if (g_loglevel >= LOG_LEVEL_PRINT) { \
printf(GREEN fmt NONE, ##args); \
} \
} while (0)
#endif