Log: Add possibility of set default logger (for initialization)
This commit is contained in:
parent
fca5aeb9cd
commit
308a603324
|
|
@ -41,6 +41,7 @@ namespace Nz
|
||||||
|
|
||||||
static bool IsEnabled();
|
static bool IsEnabled();
|
||||||
|
|
||||||
|
static void SetDefaultLogger(AbstractLogger* defaultLogger);
|
||||||
static void SetLogger(AbstractLogger* logger);
|
static void SetLogger(AbstractLogger* logger);
|
||||||
|
|
||||||
static void Write(const String& string);
|
static void Write(const String& string);
|
||||||
|
|
@ -53,6 +54,7 @@ namespace Nz
|
||||||
static bool Initialize();
|
static bool Initialize();
|
||||||
static void Uninitialize();
|
static void Uninitialize();
|
||||||
|
|
||||||
|
static AbstractLogger* s_defaultLogger;
|
||||||
static AbstractLogger* s_logger;
|
static AbstractLogger* s_logger;
|
||||||
static bool s_enabled;
|
static bool s_enabled;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -52,6 +52,22 @@ namespace Nz
|
||||||
return s_enabled;
|
return s_enabled;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Sets the default logger
|
||||||
|
*
|
||||||
|
* \param defaultLogger Default AbstractLogger
|
||||||
|
*/
|
||||||
|
|
||||||
|
void Log::SetDefaultLogger(AbstractLogger* defaultLogger)
|
||||||
|
{
|
||||||
|
if (s_defaultLogger != &s_stdLogger)
|
||||||
|
delete s_defaultLogger;
|
||||||
|
|
||||||
|
s_defaultLogger = defaultLogger;
|
||||||
|
if (!s_defaultLogger)
|
||||||
|
s_defaultLogger = &s_stdLogger;
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Sets the logger
|
* \brief Sets the logger
|
||||||
*
|
*
|
||||||
|
|
@ -111,7 +127,7 @@ namespace Nz
|
||||||
|
|
||||||
bool Log::Initialize()
|
bool Log::Initialize()
|
||||||
{
|
{
|
||||||
SetLogger(new FileLogger());
|
SetLogger(s_defaultLogger);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -121,12 +137,14 @@ namespace Nz
|
||||||
|
|
||||||
void Log::Uninitialize()
|
void Log::Uninitialize()
|
||||||
{
|
{
|
||||||
|
SetDefaultLogger(nullptr);
|
||||||
SetLogger(nullptr);
|
SetLogger(nullptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
NazaraStaticSignalImpl(Log, OnLogWrite);
|
NazaraStaticSignalImpl(Log, OnLogWrite);
|
||||||
NazaraStaticSignalImpl(Log, OnLogWriteError);
|
NazaraStaticSignalImpl(Log, OnLogWriteError);
|
||||||
|
|
||||||
|
AbstractLogger* Log::s_defaultLogger = &s_stdLogger;
|
||||||
AbstractLogger* Log::s_logger = &s_stdLogger;
|
AbstractLogger* Log::s_logger = &s_stdLogger;
|
||||||
bool Log::s_enabled = true;
|
bool Log::s_enabled = true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue