From 92c59963f82f81aa3202657e7fdbb2592924ede3 Mon Sep 17 00:00:00 2001 From: "cedeel@gmail.com" Date: Thu, 14 Jun 2012 13:06:06 +0000 Subject: Attempt to bring sanity to newlines across systems. git-svn-id: http://mc-server.googlecode.com/svn/trunk@606 0a769ca7-a7f5-676a-18bf-c427514a06d6 --- source/cMCLogger.cpp | 382 +++++++++++++++++++++++++-------------------------- 1 file changed, 191 insertions(+), 191 deletions(-) (limited to 'source/cMCLogger.cpp') diff --git a/source/cMCLogger.cpp b/source/cMCLogger.cpp index 0869daa53..4e0823d14 100644 --- a/source/cMCLogger.cpp +++ b/source/cMCLogger.cpp @@ -1,191 +1,191 @@ - -#include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules - -#include -#include "cLog.h" - - - - - -cMCLogger* cMCLogger::s_MCLogger = 0; - -cMCLogger* cMCLogger::GetInstance() -{ - return s_MCLogger; -} - - - - - -cMCLogger::cMCLogger() -{ - AString FileName; - Printf(FileName, "LOG_%d.txt", (int)time(0) ); - m_Log = new cLog(FileName); - m_Log->Log("--- Started Log ---"); - - s_MCLogger = this; -} - - - - - -cMCLogger::cMCLogger( char* a_File ) -{ - m_Log = new cLog( a_File ); -} - - - - - -cMCLogger::~cMCLogger() -{ - m_Log->Log("--- Stopped Log ---"); - delete m_Log; - if (this == s_MCLogger) - s_MCLogger = NULL; -} - - - - - -void cMCLogger::LogSimple(const char* a_Text, int a_LogType /* = 0 */ ) -{ - switch( a_LogType ) - { - case 0: - LOG("%s", a_Text); - break; - case 1: - LOGINFO("%s", a_Text); - break; - case 2: - LOGWARN("%s", a_Text); - break; - case 3: - LOGERROR("%s", a_Text); - break; - default: - LOG("(#%d#: %s", a_LogType, a_Text); - break; - } -} - - - - - -void cMCLogger::Log(const char* a_Format, va_list a_ArgList) -{ - cCSLock Lock(m_CriticalSection); - SetColor( 0x7 ); // 0x7 is default grey color - m_Log->Log( a_Format, a_ArgList ); - SetColor(0x07); // revert color back -} - - - - - -void cMCLogger::Info(const char* a_Format, va_list a_ArgList) -{ - cCSLock Lock(m_CriticalSection); -// for( int i = 0; i < 16; i++) -// { -// for( int j = 0; j < 16; j++ ) -// { -// SetConsoleTextAttribute( hConsole, i | (j<<4) ); -// printf("0x%x", (i|j<<4)); -// } -// printf("\n"); -// } - - SetColor( 0xe ); // 0xe is yellow - m_Log->Log( a_Format, a_ArgList ); - SetColor(0x07); // revert color back -} - - - - - -void cMCLogger::Warn(const char* a_Format, va_list a_ArgList) -{ - cCSLock Lock(m_CriticalSection); - SetColor( 0xc ); // 0xc is red - m_Log->Log( a_Format, a_ArgList ); - SetColor(0x07); // revert color back -} - - - - - -void cMCLogger::Error(const char* a_Format, va_list a_ArgList) -{ - cCSLock Lock(m_CriticalSection); - SetColor( 0xc0 ); // 0xc0 is red bg and black text - m_Log->Log( a_Format, a_ArgList ); - SetColor(0x07); // revert color back -} - - - - - -void cMCLogger::SetColor( unsigned char a_Color ) -{ -#ifdef _WIN32 - HANDLE hConsole = GetStdHandle( STD_OUTPUT_HANDLE ); - SetConsoleTextAttribute( hConsole, a_Color ); -#else - (void)a_Color; -#endif -} - - - - - -////////////////////////////////////////////////////////////////////////// -// Global functions -void LOG(const char* a_Format, ...) -{ - va_list argList; - va_start(argList, a_Format); - cMCLogger::GetInstance()->Log( a_Format, argList ); - va_end(argList); -} - -void LOGINFO(const char* a_Format, ...) -{ - va_list argList; - va_start(argList, a_Format); - cMCLogger::GetInstance()->Info( a_Format, argList ); - va_end(argList); -} - -void LOGWARN(const char* a_Format, ...) -{ - va_list argList; - va_start(argList, a_Format); - cMCLogger::GetInstance()->Warn( a_Format, argList ); - va_end(argList); -} - -void LOGERROR(const char* a_Format, ...) -{ - va_list argList; - va_start(argList, a_Format); - cMCLogger::GetInstance()->Error( a_Format, argList ); - va_end(argList); -} - - - - + +#include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules + +#include +#include "cLog.h" + + + + + +cMCLogger* cMCLogger::s_MCLogger = 0; + +cMCLogger* cMCLogger::GetInstance() +{ + return s_MCLogger; +} + + + + + +cMCLogger::cMCLogger() +{ + AString FileName; + Printf(FileName, "LOG_%d.txt", (int)time(0) ); + m_Log = new cLog(FileName); + m_Log->Log("--- Started Log ---"); + + s_MCLogger = this; +} + + + + + +cMCLogger::cMCLogger( char* a_File ) +{ + m_Log = new cLog( a_File ); +} + + + + + +cMCLogger::~cMCLogger() +{ + m_Log->Log("--- Stopped Log ---"); + delete m_Log; + if (this == s_MCLogger) + s_MCLogger = NULL; +} + + + + + +void cMCLogger::LogSimple(const char* a_Text, int a_LogType /* = 0 */ ) +{ + switch( a_LogType ) + { + case 0: + LOG("%s", a_Text); + break; + case 1: + LOGINFO("%s", a_Text); + break; + case 2: + LOGWARN("%s", a_Text); + break; + case 3: + LOGERROR("%s", a_Text); + break; + default: + LOG("(#%d#: %s", a_LogType, a_Text); + break; + } +} + + + + + +void cMCLogger::Log(const char* a_Format, va_list a_ArgList) +{ + cCSLock Lock(m_CriticalSection); + SetColor( 0x7 ); // 0x7 is default grey color + m_Log->Log( a_Format, a_ArgList ); + SetColor(0x07); // revert color back +} + + + + + +void cMCLogger::Info(const char* a_Format, va_list a_ArgList) +{ + cCSLock Lock(m_CriticalSection); +// for( int i = 0; i < 16; i++) +// { +// for( int j = 0; j < 16; j++ ) +// { +// SetConsoleTextAttribute( hConsole, i | (j<<4) ); +// printf("0x%x", (i|j<<4)); +// } +// printf("\n"); +// } + + SetColor( 0xe ); // 0xe is yellow + m_Log->Log( a_Format, a_ArgList ); + SetColor(0x07); // revert color back +} + + + + + +void cMCLogger::Warn(const char* a_Format, va_list a_ArgList) +{ + cCSLock Lock(m_CriticalSection); + SetColor( 0xc ); // 0xc is red + m_Log->Log( a_Format, a_ArgList ); + SetColor(0x07); // revert color back +} + + + + + +void cMCLogger::Error(const char* a_Format, va_list a_ArgList) +{ + cCSLock Lock(m_CriticalSection); + SetColor( 0xc0 ); // 0xc0 is red bg and black text + m_Log->Log( a_Format, a_ArgList ); + SetColor(0x07); // revert color back +} + + + + + +void cMCLogger::SetColor( unsigned char a_Color ) +{ +#ifdef _WIN32 + HANDLE hConsole = GetStdHandle( STD_OUTPUT_HANDLE ); + SetConsoleTextAttribute( hConsole, a_Color ); +#else + (void)a_Color; +#endif +} + + + + + +////////////////////////////////////////////////////////////////////////// +// Global functions +void LOG(const char* a_Format, ...) +{ + va_list argList; + va_start(argList, a_Format); + cMCLogger::GetInstance()->Log( a_Format, argList ); + va_end(argList); +} + +void LOGINFO(const char* a_Format, ...) +{ + va_list argList; + va_start(argList, a_Format); + cMCLogger::GetInstance()->Info( a_Format, argList ); + va_end(argList); +} + +void LOGWARN(const char* a_Format, ...) +{ + va_list argList; + va_start(argList, a_Format); + cMCLogger::GetInstance()->Warn( a_Format, argList ); + va_end(argList); +} + +void LOGERROR(const char* a_Format, ...) +{ + va_list argList; + va_start(argList, a_Format); + cMCLogger::GetInstance()->Error( a_Format, argList ); + va_end(argList); +} + + + + -- cgit v1.2.3