45 std::list< std::pair< int, std::string > >
g_logList;
48 static const char* LOG_HEADERS[7] = {
73 if( level < MIN_LOG_LEVEL ) {
74 level = MIN_LOG_LEVEL;
76 if( level > MAX_LOG_LEVEL ) {
77 level = MAX_LOG_LEVEL;
106 void outputlog(
const char* msg,
int level,
const char* file,
int line ) {
108 level =
CLAMP( level, MIN_LOG_LEVEL, MAX_LOG_LEVEL );
114 std::string s = std::string( LOG_HEADERS[ level ] );
120 s +=
strfmt(
"(%d)", line );
123 if( file ==
NULL && line < 0 ) {
127 s +=
strfmt(
" - %s ", msg );
133 (*g_outputLogFun)( s.c_str(), level );
138 std::pair< int, std::string > logInfo = std::make_pair( level, s );
158 void logfatal(
const char* msg,
const char* file,
int line ) {
159 outputlog( msg, LOG_LEVEL_FATAL, file, line );
162 void logfatalcode(
int code,
const char* msg,
const char* file,
int line ) {
168 void logerror(
const char* msg,
const char* file,
int line ) {
169 outputlog( msg, LOG_LEVEL_ERROR, file, line );
172 void logerrorcode(
int code,
const char* msg,
const char* file,
int line ) {
178 void logwarn(
const char* msg,
const char* file,
int line ) {
179 outputlog( msg, LOG_LEVEL_WARN, file, line );
182 void logwarncode(
int code,
const char* msg,
const char* file,
int line ) {
188 void loginfo(
const char* msg,
const char* file,
int line ) {
189 outputlog( msg, LOG_LEVEL_INFO, file, line );
192 void loginfocode(
int code,
const char* msg,
const char* file,
int line ) {
198 void logdebug(
const char* msg,
const char* file,
int line ) {
199 outputlog( msg, LOG_LEVEL_DEBUG, file, line );
202 void logdebugcode(
int code,
const char* msg,
const char* file,
int line ) {
208 void logtrace(
const char* msg,
const char* file,
int line ) {
209 outputlog( msg, LOG_LEVEL_TRACE, file, line );
212 void logtracecode(
int code,
const char* msg,
const char* file,
int line ) {
238 for( std::list< std::pair< int, std::string > >::iterator it =
g_logList.begin();
std::string getfilename(const char *path)
get file name
std::string strfmt(const char *fmt,...)
get formated string
void outputlog(const char *msg, int level, const char *file, int line)
output log
std::string g_errorMessage
void logdebugcode(int code, const char *msg, const char *file, int line)
output debug log and set error code
void logwarncode(int code, const char *msg, const char *file, int line)
output warning log and set error code
interfaces of file system function.
void logfatal(const char *msg, const char *file, int line)
output fatal log
void logwarn(const char *msg, const char *file, int line)
output warning log
void setoutputlogfunction(void(*outputLogFun)(const char *, int))
set output log function
void logtracecode(int code, const char *msg, const char *file, int line)
output trace log and set error code
void logdebug(const char *msg, const char *file, int line)
output debug log
void logerrorcode(int code, const char *msg, const char *file, int line)
output error log and set error code
void(* g_outputLogFun)(const char *, int)
void logflush()
flushes logs to be stored in the list
void logerror(const char *msg, const char *file, int line)
output error log
void setErrorCode(int code, const char *msg)
set error code and message
void loginfocode(int code, const char *msg, const char *file, int line)
output information log and set error code
void seterrorcode(int code, const char *msg)
set error code
std::string g_tmperrorMessage
#define CLAMP(x, low, high)
const char * getlasterrormessage()
get last error message
void logfatalcode(int code, const char *msg, const char *file, int line)
output fatal log and set error code
std::list< std::pair< int, std::string > > g_logList
interfaces of log function
interfaces of string function
void setloglevel(int level)
set log level
void logtrace(const char *msg, const char *file, int line)
output trace log
void loginfo(const char *msg, const char *file, int line)
output information log
int getloglistsize()
gets log list size
int getloglevel()
get log level
void setloglistsize(const int size)
sets log list size
int getlasterror()
get last error code