#ifndef LOG_DEFINE_H
#define LOG_DEFINE_H
#define LOG_LEVEL_OFF (0)
#define LOG_LEVEL_ERR (1)
#define LOG_LEVEL_WRN (2)
#define LOG_LEVEL_INF (3)
#define LOG_LEVEL_DBG (4)
#define LOG_LEVEL LOG_LEVEL_INF
#define LOG_TAG_ERR "[ERR] "
#define LOG_TAG_WRN "[WRN] "
#define LOG_TAG_INF "[INF] "
#define LOG_TAG_DBG "[DBG] "
#define LOG_TAG_FUNC “”
#define LOG_TAG_LINE “
#define LOG_ERR(…) do
{
if(LOG_LEVEL < LOG_LEVEL_ERR)
break;
printf("%s%s%s %s%d “, LOG_TAG_ERR, LOG_TAG_FUNC,
func, LOG_TAG_LINE, LINE);
printf(VA_ARGS);
printf(”\r\n");
}while(0)
#define LOG_WRN(fmt,…) do
{
if(LOG_LEVEL < LOG_LEVEL_WRN)
break;
printf("%s%s%s %s%d “, LOG_TAG_WRN, LOG_TAG_FUNC,
func, LOG_TAG_LINE, LINE);
printf(fmt,##VA_ARGS);
printf(”\r\n");
}while(0)
#define LOG_INF(…) do
{
if(LOG_LEVEL < LOG_LEVEL_INF)
break;
printf("%s%s%s %s%d “, LOG_TAG_INF, LOG_TAG_FUNC,
func, LOG_TAG_LINE, LINE);
printf(VA_ARGS);
printf(”\r\n");
}while(0)
#define LOG_DBG(fmt,…) do
{
if(LOG_LEVEL < LOG_LEVEL_DBG)
break;
printf("%s%s%s %s%d “, LOG_TAG_DBG, LOG_TAG_FUNC,
func, LOG_TAG_LINE, LINE);
printf(fmt,##VA_ARGS);
printf(”\r\n");
}while(0)
#endif