74 lines
1.6 KiB
C
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
|