/***********************************************************************************************************/
/* Description:This file used to print special text with linux OS. */
/* Author:DingChongChong */
/* Time:20160314 */
/* Release:1.1 */
/***********************************************************************************************************/
#ifndef _DEBUG_H
#define _DEBUG_H
#include <stdio.h>
#include <stdlib.h>
#include<string.h>
#include <sys/time.h>
#include <unistd.h>
#define DEBUG_ON 1
static char * pEnv;
struct timeval tv;
#define FUNC_ENTRY "\033[1;32m[%ld:%ld][ %s %d][FuncEntry]:"
#define FUNC_ENTRY_TAIL "\033[m"
#define MENU_ECHO "\033[1;35m<----------------"
#define MENU_ECHO_TAIL "---------------->\033[m\n"
#define PROMPT_ECHO "\033[1;36m[%ld:%ld][ %s %d][PromptEcho]:"
#define PROMPT_ECHO_TAIL "\033[m"
#define DATA_ECHO "\033[1;34m[%ld:%ld][ %s %d][DataEcho]:"
#define DATA_ECHO_TAIL "\033[m"
#define WARN_ECHO "\033[1;33m[%ld:%ld][ %s %d][WarnEcho]:"
#define WARN_ECHO_TAIL "\033[m"
#define ERROR_OCCUR "\033[1;31m[%ld:%ld][ %s %d][ErrorOccur]:"
#define ERROR_OCCUR_TAIL "\033[m"
#define debugFuncEcho(fmt, args...) do { gettimeofday(&tv,NULL); \
if(( DEBUG_ON == 1) && ((pEnv=getenv("DEBUG"))!=NULL ) && (0==strcmp(pEnv,"ON"))) \
printf(FUNC_ENTRY fmt FUNC_ENTRY_TAIL,tv.tv_sec,tv.tv_usec,__FILE__,__LINE__,##args);fflush(stdout); }while(0)
#define debugMenuEcho(fmt, args...) do { gettimeofday(&tv,NULL); \
if(( DEBUG_ON == 1) && ((pEnv=getenv("DEBUG"))!=NULL ) && (0==strcmp(pEnv,"ON"))) \
printf(MENU_ECHO fmt MENU_ECHO_TAIL,##args);fflush(stdout); }while(0)
#define debugPromptEcho(fmt, args...) do { gettimeofday(&tv,NULL); \
if(( DEBUG_ON == 1) && ((pEnv=getenv("DEBUG"))!=NULL ) && (0==strcmp(pEnv,"ON"))) \
printf(PROMPT_ECHO fmt PROMPT_ECHO_TAIL,tv.tv_sec,tv.tv_usec,__FILE__,__LINE__,##args);fflush(stdout); }while(0)
#define debugDataEcho(fmt, args...) do { gettimeofday(&tv,NULL); \
if(( DEBUG_ON == 1) && ((pEnv=getenv("DEBUG"))!=NULL ) && (0==strcmp(pEnv,"ON"))) \
printf(DATA_ECHO fmt DATA_ECHO_TAIL,tv.tv_sec,tv.tv_usec,__FILE__,__LINE__,##args);fflush(stdout); }while(0)
#define debugWarnEcho(fmt, args...) do { gettimeofday(&tv,NULL); \
if(( DEBUG_ON == 1) && ((pEnv=getenv("DEBUG"))!=NULL ) && (0==strcmp(pEnv,"ON"))) \
printf(WARN_ECHO fmt WARN_ECHO_TAIL,tv.tv_sec,tv.tv_usec,__FILE__,__LINE__,##args);fflush(stdout); }while(0)
#define debugErrorEcho(fmt, args...) do { gettimeofday(&tv,NULL); \
if(( DEBUG_ON == 1) && ((pEnv=getenv("DEBUG"))!=NULL ) && (0==strcmp(pEnv,"ON"))) \
printf(ERROR_OCCUR fmt ERROR_OCCUR_TAIL,tv.tv_sec,tv.tv_usec,__FILE__,__LINE__,##args);fflush(stdout); }while(0)
#endif
/* Begin:"\033[Bright;BackColor;FontColor m"
* Bright: 0-no,1-yes
* BackColor: 40:black - 41:red - 42:green - 43:yellow - 44:cyan - 45:blue - 47:white
* FontColor: 30:black - 31:red - 32:green - 33:yellow - 34:blue - 35:purple - 36:cyan - 37:white
* End:"\033[m"
*/
/* Description:This file used to print special text with linux OS. */
/* Author:DingChongChong */
/* Time:20160314 */
/* Release:1.1 */
/***********************************************************************************************************/
#ifndef _DEBUG_H
#define _DEBUG_H
#include <stdio.h>
#include <stdlib.h>
#include<string.h>
#include <sys/time.h>
#include <unistd.h>
#define DEBUG_ON 1
static char * pEnv;
struct timeval tv;
#define FUNC_ENTRY "\033[1;32m[%ld:%ld][ %s %d][FuncEntry]:"
#define FUNC_ENTRY_TAIL "\033[m"
#define MENU_ECHO "\033[1;35m<----------------"
#define MENU_ECHO_TAIL "---------------->\033[m\n"
#define PROMPT_ECHO "\033[1;36m[%ld:%ld][ %s %d][PromptEcho]:"
#define PROMPT_ECHO_TAIL "\033[m"
#define DATA_ECHO "\033[1;34m[%ld:%ld][ %s %d][DataEcho]:"
#define DATA_ECHO_TAIL "\033[m"
#define WARN_ECHO "\033[1;33m[%ld:%ld][ %s %d][WarnEcho]:"
#define WARN_ECHO_TAIL "\033[m"
#define ERROR_OCCUR "\033[1;31m[%ld:%ld][ %s %d][ErrorOccur]:"
#define ERROR_OCCUR_TAIL "\033[m"
#define debugFuncEcho(fmt, args...) do { gettimeofday(&tv,NULL); \
if(( DEBUG_ON == 1) && ((pEnv=getenv("DEBUG"))!=NULL ) && (0==strcmp(pEnv,"ON"))) \
printf(FUNC_ENTRY fmt FUNC_ENTRY_TAIL,tv.tv_sec,tv.tv_usec,__FILE__,__LINE__,##args);fflush(stdout); }while(0)
#define debugMenuEcho(fmt, args...) do { gettimeofday(&tv,NULL); \
if(( DEBUG_ON == 1) && ((pEnv=getenv("DEBUG"))!=NULL ) && (0==strcmp(pEnv,"ON"))) \
printf(MENU_ECHO fmt MENU_ECHO_TAIL,##args);fflush(stdout); }while(0)
#define debugPromptEcho(fmt, args...) do { gettimeofday(&tv,NULL); \
if(( DEBUG_ON == 1) && ((pEnv=getenv("DEBUG"))!=NULL ) && (0==strcmp(pEnv,"ON"))) \
printf(PROMPT_ECHO fmt PROMPT_ECHO_TAIL,tv.tv_sec,tv.tv_usec,__FILE__,__LINE__,##args);fflush(stdout); }while(0)
#define debugDataEcho(fmt, args...) do { gettimeofday(&tv,NULL); \
if(( DEBUG_ON == 1) && ((pEnv=getenv("DEBUG"))!=NULL ) && (0==strcmp(pEnv,"ON"))) \
printf(DATA_ECHO fmt DATA_ECHO_TAIL,tv.tv_sec,tv.tv_usec,__FILE__,__LINE__,##args);fflush(stdout); }while(0)
#define debugWarnEcho(fmt, args...) do { gettimeofday(&tv,NULL); \
if(( DEBUG_ON == 1) && ((pEnv=getenv("DEBUG"))!=NULL ) && (0==strcmp(pEnv,"ON"))) \
printf(WARN_ECHO fmt WARN_ECHO_TAIL,tv.tv_sec,tv.tv_usec,__FILE__,__LINE__,##args);fflush(stdout); }while(0)
#define debugErrorEcho(fmt, args...) do { gettimeofday(&tv,NULL); \
if(( DEBUG_ON == 1) && ((pEnv=getenv("DEBUG"))!=NULL ) && (0==strcmp(pEnv,"ON"))) \
printf(ERROR_OCCUR fmt ERROR_OCCUR_TAIL,tv.tv_sec,tv.tv_usec,__FILE__,__LINE__,##args);fflush(stdout); }while(0)
#endif
/* Begin:"\033[Bright;BackColor;FontColor m"
* Bright: 0-no,1-yes
* BackColor: 40:black - 41:red - 42:green - 43:yellow - 44:cyan - 45:blue - 47:white
* FontColor: 30:black - 31:red - 32:green - 33:yellow - 34:blue - 35:purple - 36:cyan - 37:white
* End:"\033[m"
*/