Revision: 40690
http://brlcad.svn.sourceforge.net/brlcad/?rev=40690&view=rev
Author: davidloman
Date: 2010-09-26 22:17:59 +0000 (Sun, 26 Sep 2010)
Log Message:
-----------
Rewire the internals of the GS Logger to piggyback on top of bu_log.
Modified Paths:
--------------
rt^3/trunk/include/Logger.h
rt^3/trunk/src/utility/CMakeLists.txt
rt^3/trunk/src/utility/Logger.cxx
rt^3/trunk/tests/GS/GeometryServiceTest.cxx
Modified: rt^3/trunk/include/Logger.h
===================================================================
--- rt^3/trunk/include/Logger.h 2010-09-26 20:48:09 UTC (rev 40689)
+++ rt^3/trunk/include/Logger.h 2010-09-26 22:17:59 UTC (rev 40690)
@@ -38,32 +38,33 @@
public:
static Logger* getInstance();
+ virtual ~Logger(){};
void enableVerbose()
{
- this->_verbose = true;
+ this->verbose = true;
}
void disableVerbose()
{
- this->_verbose = false;
+ this->verbose = false;
}
- void enableLogToStdOut()
+ void enableLogToConsole()
{
- this->_toStdOut = true;
+ this->printToConsole = true;
}
- void disableLogToStdOut()
+ void disableLogToConsole()
{
- this->_toStdOut = false;
+ this->printToConsole = false;
}
void enableLogToFile()
{
- this->_toFile = true;
+ this->printToFile = true;
}
void disableLogToFile()
{
- this->_toFile = false;
+ this->printToFile = false;
}
void logBANNER(QString origin, QString string);
@@ -78,18 +79,18 @@
BANNER, INFO, WARNING, ERROR, FATAL, DEBUG
};
-protected:
+private:
static Logger* instance;
static QMutex* lock;
- bool _verbose;
- bool _toStdOut;
- bool _toFile;
+ bool verbose;
+ bool printToConsole;
+ bool printToFile;
Logger();
Logger(const Logger& logger){};
Logger& operator=(const Logger& log){};
- ~Logger(){};
+
void log(quint32 logLevel, QString origin, QString string);
};
Modified: rt^3/trunk/src/utility/CMakeLists.txt
===================================================================
--- rt^3/trunk/src/utility/CMakeLists.txt 2010-09-26 20:48:09 UTC (rev
40689)
+++ rt^3/trunk/src/utility/CMakeLists.txt 2010-09-26 22:17:59 UTC (rev
40690)
@@ -31,11 +31,12 @@
#Set Include Dirs
RT3_PROJECT_ADD_INCLUDE_DIRS(
${QT_INCLUDE_DIR}
+ ${BRLCAD_INC_DIRS}
)
#Set Libs
RT3_PROJECT_ADD_LIBS(
-
+ ${_BRLCAD_LIBRARY_bu}
${QT_LIBRARIES}
)
Modified: rt^3/trunk/src/utility/Logger.cxx
===================================================================
--- rt^3/trunk/src/utility/Logger.cxx 2010-09-26 20:48:09 UTC (rev 40689)
+++ rt^3/trunk/src/utility/Logger.cxx 2010-09-26 22:17:59 UTC (rev 40690)
@@ -25,111 +25,109 @@
#include "Logger.h"
#include <QtCore/QTime>
+#include "brlcad/bu.h"
#include <iomanip>
+#include <sstream>
//Statics instantiation
Logger* Logger::instance;
QMutex* Logger::lock = new QMutex();
Logger::Logger() :
- _verbose(false), _toFile(false), _toStdOut(true)
-{
+ verbose(false), printToFile(false), printToConsole(true) {
}
-Logger* Logger::getInstance()
-{
- QMutexLocker locker(Logger::lock);
+Logger* Logger::getInstance() {
+ QMutexLocker locker(Logger::lock);
- if (Logger::instance == NULL) {
- Logger::instance = new Logger();
- }
+ if (Logger::instance == NULL) {
+ Logger::instance = new Logger();
+ }
- return Logger::instance;
+ return Logger::instance;
}
-void Logger::logBANNER(QString origin, QString string)
-{
- this->log(Logger::BANNER, origin, string);
+void Logger::logBANNER(QString origin, QString string) {
+ this->log(Logger::BANNER, origin, string);
}
-void Logger::logDEBUG(QString origin, QString string)
-{
- this->log(Logger::DEBUG, origin, string);
+void Logger::logDEBUG(QString origin, QString string) {
+ this->log(Logger::DEBUG, origin, string);
}
-void Logger::logINFO(QString origin, QString string)
-{
- this->log(Logger::INFO, origin, string);
+void Logger::logINFO(QString origin, QString string) {
+ this->log(Logger::INFO, origin, string);
}
-void Logger::logWARNING(QString origin, QString string)
-{
- this->log(Logger::WARNING, origin, string);
+void Logger::logWARNING(QString origin, QString string) {
+ this->log(Logger::WARNING, origin, string);
}
-void Logger::logERROR(QString origin, QString string)
-{
- this->log(Logger::ERROR, origin, string);
+void Logger::logERROR(QString origin, QString string) {
+ this->log(Logger::ERROR, origin, string);
}
-void Logger::logFATAL(QString origin, QString string)
-{
- this->log(Logger::FATAL, origin, string);
+void Logger::logFATAL(QString origin, QString string) {
+ this->log(Logger::FATAL, origin, string);
}
-void Logger::log(quint32 logLevel, QString origin, QString string)
-{
- QString time("");
+void Logger::log(quint32 logLevel, QString origin, QString string) {
+ std::string time("");
- QString type("");
+ std::string type("");
- time += QTime::currentTime().toString();
+ time += QTime::currentTime().toString().toStdString();
- switch (logLevel) {
- case (Logger::FATAL):
- type += "(FATAL) ";
- break;
- case (Logger::ERROR):
- type += "(ERROR) ";
- break;
- case (Logger::WARNING):
- type += "(WARNING) ";
- break;
- case (Logger::INFO):
- type += "(INFO) ";
- break;
- case (Logger::BANNER):
- type += "(BANNER) ";
- break;
- case (Logger::DEBUG):
- default:
- type += "(DEBUG) ";
- break;
- }
+ switch (logLevel) {
+ case (Logger::FATAL):
+ type += "(FATAL) ";
+ break;
+ case (Logger::ERROR):
+ type += "(ERROR) ";
+ break;
+ case (Logger::WARNING):
+ type += "(WARNING) ";
+ break;
+ case (Logger::INFO):
+ type += "(INFO) ";
+ break;
+ case (Logger::BANNER):
+ type += "(BANNER) ";
+ break;
+ case (Logger::DEBUG):
+ default:
+ type += "(DEBUG) ";
+ break;
+ }
- QMutexLocker locker(Logger::lock);
+ QMutexLocker locker(Logger::lock);
- if (this->_toFile) {
- //TODO add file logging
- }
+ if (this->printToFile) {
+ //TODO add file logging
+ }
- if (this->_toStdOut) {
- std::cout << std::setw(12) << std::setfill(' ') << std::left <<
time.toStdString();
- std::cout << std::setw(20) << std::setfill(' ') << std::left <<
origin.toStdString();
- std::cout << std::setw(12) << std::setfill(' ') << std::left <<
type.toStdString();
+ std::ostringstream out("");
- if (logLevel == Logger::BANNER) {
- std::cout << std::setfill(' ') << std::left << "======= " <<
string.toStdString() << " =======";
- } else {
- std::cout << std::setfill(' ') << std::left << string.toStdString();
- }
+ if (this->printToConsole) {
+ out << std::setw(12) << std::setfill(' ') << std::left << time;
+ out << std::setw(20) << std::setfill(' ') << std::left
+ << origin.toStdString();
+ out << std::setw(12) << std::setfill(' ') << std::left << type;
- if (this->_verbose) {
- std::cout << std::setfill(' ') << " \t" << "STACK TRACE GOES HERE";
- }
+ if (logLevel == Logger::BANNER) {
+ out << std::setfill(' ') << std::left << "======= " <<
string.toStdString() << " =======";
+ } else {
+ out << std::setfill(' ') << std::left <<
string.toStdString();
+ }
- std::cout << std::endl;
- }
+ if (this->verbose) {
+ out << std::setfill(' ') << " \t" << "STACK TRACE GOES
HERE";
+ }
+
+ out << std::endl;
+
+ bu_log(out.str().c_str());
+ }
}
// Local Variables: ***
Modified: rt^3/trunk/tests/GS/GeometryServiceTest.cxx
===================================================================
--- rt^3/trunk/tests/GS/GeometryServiceTest.cxx 2010-09-26 20:48:09 UTC (rev
40689)
+++ rt^3/trunk/tests/GS/GeometryServiceTest.cxx 2010-09-26 22:17:59 UTC (rev
40690)
@@ -448,7 +448,7 @@
int main(int ac, char *av[])
{
//disable the logger for now.
- Logger::getInstance()->disableLogToStdOut();
+ Logger::getInstance()->disableLogToConsole();
std::vector<std::string> gcdir, gc2dir, gc3dir;
std::string rep, rep2;
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Start uncovering the many advantages of virtual appliances
and start using them to simplify application deployment and
accelerate your shift to cloud computing.
http://p.sf.net/sfu/novell-sfdev2dev
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits