Removed the dumpMessages() function made it to act like the console logger.

This commit is contained in:
Raynaldo Rivera 2010-02-14 22:04:30 +00:00
parent 0c0a8d12ac
commit 7d782233c0
5 changed files with 24 additions and 35 deletions

View File

@ -19,11 +19,10 @@ namespace cAudio
~cFileLogReceiver();
bool OnLogMessage(const char* sender, const char* message, LogLevel level, float time);
void dumpMessages();
private:
std::list<std::string> logs;
std::list<int> levels;
bool firsttime;
};
};

View File

@ -40,8 +40,6 @@ namespace cAudio
virtual bool isLogReceiverRegistered(const char* name);
//!Returns a registered log receiver
virtual ILogReceiver* getLogReceiver(const char* name);
//!Dumps the log messages to a file
virtual void dumpMessages();
protected:
void broadcastMessage( LogLevel level, const char* sender, const char* msg, va_list args );

View File

@ -10,7 +10,7 @@ namespace cAudio
{
cFileLogReceiver::cFileLogReceiver()
{
firsttime = false;
}
cFileLogReceiver::~cFileLogReceiver()
@ -20,27 +20,19 @@ namespace cAudio
bool cFileLogReceiver::OnLogMessage(const char* sender, const char* message, LogLevel level, float time)
{
levels.push_back(level);
logs.push_back(message);
return true;
}
void cFileLogReceiver::dumpMessages()
{
std::list<std::string>::iterator it = logs.begin();
std::list<int>::iterator it2 = levels.begin();
std::ofstream outf;
if( !outf.is_open() )
if(firsttime == false)
{
if( !outf.is_open() )
{
// Reset log file
outf.setf( std::ios::fixed );
outf.precision( 3 );
outf.open( "cAudioEngineLog.html", std::ios::out );
if( !outf ){
return;
return false;
}
outf<<"<html>\n";
@ -108,17 +100,25 @@ namespace cAudio
outf<<"<table>\n";
outf.flush();
}
firsttime = true;
}
for(it;it != logs.end(); it++)
else
{
outf.open( "cAudioEngineLog.html", std::ios::out | std::ios::app );
if( !outf ){
return false;
}
outf<<"<tr>\n";
outf<<"<td width=\"100\">";
outf<<"Log: ";
outf<<time;
outf <<"</td>\n";
outf<<"<td class=\"";
switch( *it2 )
switch( level )
{
case ELL_DEBUG:
outf<<"debug";
@ -149,16 +149,15 @@ namespace cAudio
}
outf<<"\"><pre>\n";
outf<<*it;
outf<<message;
outf<<"\n</pre></td>\n";
outf<<"</tr>\n";
outf.flush();
if(it2 != levels.end())
{
it2++;
}
}
return true;
}
};

View File

@ -142,11 +142,6 @@ namespace cAudio
return NULL;
}
void cLogger::dumpMessages()
{
((cFileLogReceiver*)Logger.getLogReceiver("File"))->dumpMessages();
}
CAUDIO_API ILogger* getLogger()
{
if(!FirstTimeLogInit)

View File

@ -36,8 +36,6 @@ namespace cAudio
virtual bool isLogReceiverRegistered(const char* name) = 0;
//!Returns a registered log receiver
virtual ILogReceiver* getLogReceiver(const char* name) = 0;
//!Dumps the log messages to a file
virtual void dumpMessages() = 0;
protected:
private: