All pastes #617023 Raw Edit

Something

public text v1 · immutable
·published 2007-07-12 23:46 UTC
rendered paste body
void 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 );
}