rendered paste bodyvoid Log( LOG_TYPE flag, char *format, ... )
{
boost::mutex::scoped_lock lConsole( mConsole, false );
va_list arglist;
va_start( arglist, format );
switch( flag )
{
case MSG_NONE:
SetConsoleColor( CC_WHITE );
printf( "[MSG]: " );
break;
case MSG_LOAD:
SetConsoleColor( CC_LIGHTMAGENTA );
printf( "[LOAD]: " );
break;
case MSG_STATUS:
SetConsoleColor( CC_LIGHTGREEN );
printf( "[STATUS]: " );
break;
case MSG_INFO:
SetConsoleColor( CC_GREEN );
printf( "[INFO]: " );
break;
case MSG_WARNING:
SetConsoleColor( CC_LIGHTMAGENTA );
printf( "[WARNING]: " );
break;
case MSG_ERROR:
SetConsoleColor( CC_LIGHTRED );
printf( "[ERROR]: " );
break;
case MSG_DEBUG:
SetConsoleColor( CC_LIGHTBLUE );
printf( "[DEBUG]: " );
break;
}
SetConsoleColor( CC_WHITE );
lConsole.lock( );
vprintf( format, arglist );
printf( ( flag == MSG_LOAD ) ? "\r" : "\n" );
lConsole.unlock( );
va_end( arglist );
}