1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110
|
/*****************************************************************************
* $CAMITK_LICENCE_BEGIN$
*
* CamiTK - Computer Assisted Medical Intervention ToolKit
* (c) 2001-2025 Univ. Grenoble Alpes, CNRS, Grenoble INP - UGA, TIMC, 38000 Grenoble, France
*
* Visit http://camitk.imag.fr for more information
*
* This file is part of CamiTK.
*
* CamiTK is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3
* only, as published by the Free Software Foundation.
*
* CamiTK is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License version 3 for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with CamiTK. If not, see <http://www.gnu.org/licenses/>.
*
* $CAMITK_LICENCE_END$
****************************************************************************/
// -- Core stuff
#include "Log.h"
#include "InterfaceLogger.h"
#include "CamiTKLogger.h"
namespace camitk {
/// Global Logger manager
InterfaceLogger* Log::applicationLogger = nullptr;
// --------------------- setLogger ---------------------
void Log::setLogger(InterfaceLogger* logger) {
// Ensures that the given logger really exists, otherwise, do not change anything...
if (logger != nullptr) {
// If there is already a logger, delete it so that it can finish everything properly
// Check that it is not the existing logger otherwise there will no logger any more !
if ((logger != applicationLogger) && (applicationLogger != nullptr)) {
delete applicationLogger;
}
applicationLogger = logger;
}
}
// --------------------- getLogger ---------------------
InterfaceLogger* Log::getLogger() {
// lazy instancation but make sure that there is always a logger
if (applicationLogger == nullptr) {
applicationLogger = new CamiTKLogger();
}
return applicationLogger;
}
// --------------------- getLevelAsText ---------------------
QString Log::getLevelAsString(InterfaceLogger::LogLevel level) {
QString levelString;
switch (level) {
case InterfaceLogger::NONE:
levelString = "NONE";
break;
case InterfaceLogger::ERROR:
levelString = "ERROR";
break;
case InterfaceLogger::WARNING:
levelString = "WARNING";
break;
case InterfaceLogger::INFO:
levelString = "INFO";
break;
case InterfaceLogger::TRACE:
levelString = "TRACE";
break;
default:
levelString = "UNKNOWN";
break;
}
return levelString;
}
// --------------- getLevelFromString -------------------
InterfaceLogger::LogLevel Log::getLevelFromString(QString levelString) {
InterfaceLogger::LogLevel logLevel;
if (levelString.toUpper() == "NONE") {
logLevel = InterfaceLogger::NONE;
}
else if (levelString.toUpper() == "TRACE") {
logLevel = InterfaceLogger::TRACE;
}
else if (levelString.toUpper() == "INFO") {
logLevel = InterfaceLogger::INFO;
}
else if (levelString.toUpper() == "WARNING") {
logLevel = InterfaceLogger::WARNING;
}
else if (levelString.toUpper() == "ERROR") {
logLevel = InterfaceLogger::ERROR;
}
else {
logLevel = InterfaceLogger::NONE;
}
return logLevel;
}
}
|