 |
Computer Assited Medical Intervention Tool Kit
version 4.1
|
Go to the documentation of this file.
26 #ifndef CAMITKLOGGER_H
27 #define CAMITKLOGGER_H
123 class CAMITK_API CamiTKLogger :
public InterfaceLogger {
130 ~CamiTKLogger()
override;
134 LogLevel getLogLevel()
override;
138 void setLogLevel(LogLevel level)
override;
142 void setLogToStandardOutput(
bool writeToStdOut)
override;
147 bool getLogToStandardOutput()
override;
156 bool setLogToFile(
bool writeToFile)
override;
174 bool setLogFileDirectory(QDir directoryName,
bool moveExistingLogFile =
true)
override;
177 bool getLogToFile()
override;
180 QFileInfo getLogFileInfo()
override;
187 void setMessageBoxLevel(LogLevel level)
override;
190 LogLevel getMessageBoxLevel()
override;
196 void setDebugInformation(
bool)
override;
199 bool getDebugInformation()
override;
206 void setTimeStampInformation(
bool showTimeStamp)
override;
209 bool getTimeStampInformation()
override;
222 QString log(
const QString msg,
const LogLevel level,
char const* fileName,
char const* methodName,
int lineNumber,
const QObject* sender =
nullptr)
override;
227 virtual QString buildLogMessage(QString message, LogLevel level,
char const* fileName,
char const* methodName,
int lineNumber,
const QObject* sender =
nullptr);
231 QString getCamiTKAPIInformation(
const QObject* sender);
234 bool openLogFile(
bool moveFile =
false, QFileInfo fileToMove = QFileInfo());
252 bool displayDebugInformation;
255 bool displayTimeStampInformation;
258 QDir logFileDirectory;
264 QTextStream* logStream;
267 QDateTime logStartTime;
273 #endif // CAMITKLOGGER_H
CamiTKLogger()
Default constructor.
Definition: CamiTKLogger.cpp:70
QFile * logFile
Current log file (the stream is flushed log message by log message)
Definition: CamiTKLogger.h:260
bool logToStdOut
is the logger currently writing everything to the standard output
Definition: CamiTKLogger.h:245
void setLogLevel(LogLevel level) override
Sets Current verbosity level of the log:
Definition: CamiTKLogger.cpp:96
LogLevel getMessageBoxLevel() override
Definition: CamiTKLogger.cpp:237
bool getLogToStandardOutput() override
check if the logger is currently writing on standard output (std::cout)
Definition: CamiTKLogger.cpp:112
bool displayDebugInformation
display debug information (file/class name, method name and line number)
Definition: CamiTKLogger.h:251
bool openLogFile(bool moveFile=false, QFileInfo fileToMove=QFileInfo())
open the log file,
Definition: CamiTKLogger.cpp:159
void setMessageBoxLevel(LogLevel level) override
Set the lowest log level that will open modal message box for messages instead of (silently/undisrupt...
Definition: CamiTKLogger.cpp:229
bool getDebugInformation() override
Definition: CamiTKLogger.cpp:250
QFileInfo getLogFileInfo() override
Definition: CamiTKLogger.cpp:219
QDir logFileDirectory
Current directory for the log file.
Definition: CamiTKLogger.h:257
No message is logged.
Definition: InterfaceLogger.h:60
Only error messages are logged.
Definition: InterfaceLogger.h:61
QString getCamiTKAPIInformation(const QObject *sender)
Returns CamiTK API description string if and only if sender derived from CamiTK Action.
Definition: CamiTKLogger.cpp:345
bool logToFile
is the logger currently writing everything to a file
Definition: CamiTKLogger.h:248
virtual QString buildLogMessage(QString message, LogLevel level, char const *fileName, char const *methodName, int lineNumber, const QObject *sender=nullptr)
Builds a log message of correct format.
Definition: CamiTKLogger.cpp:323
LogLevel getLogLevel() override
Get Current verbosity level of the log:
Definition: CamiTKLogger.cpp:91
QString log(const QString msg, const LogLevel level, char const *fileName, char const *methodName, int lineNumber, const QObject *sender=nullptr) override
Log a message: If the logger is allowed to write on standard output, it will display the message (and...
Definition: CamiTKLogger.cpp:268
~CamiTKLogger() override
Destructor.
Definition: CamiTKLogger.cpp:85
InterfaceLogger::LogLevel level
current log level
Definition: CamiTKLogger.h:239
InterfaceLogger::LogLevel messageBoxLevel
current level for message boxes
Definition: CamiTKLogger.h:242
void setLogToStandardOutput(bool writeToStdOut) override
Allows the logger to write on std::cout.
Definition: CamiTKLogger.cpp:104
QTextStream * logStream
Current stream to output to the log file.
Definition: CamiTKLogger.h:263
information, warning and error messages are logged
Definition: InterfaceLogger.h:63
bool getLogToFile() override
check if the logger is currently writing on a file
Definition: CamiTKLogger.cpp:154
void setTimeStampInformation(bool showTimeStamp) override
By default a logger should always show the time-stamp in the form of "yyyy-MM-dd HH:mm:ss....
Definition: CamiTKLogger.cpp:255
LogLevel
Definition: InterfaceLogger.h:59
QDateTime logStartTime
instantiation time
Definition: CamiTKLogger.h:266
bool displayTimeStampInformation
display time stamp information (in the form "yyyy-MM-dd HH:mm:ss.zzz")
Definition: CamiTKLogger.h:254
void setDebugInformation(bool) override
Allows the logger to add debug information to the log message.
Definition: CamiTKLogger.cpp:242
Only Warning and Error messages are logged.
Definition: InterfaceLogger.h:62
bool setLogFileDirectory(QDir directoryName, bool moveExistingLogFile=true) override
Set the specific directory to write to (default is the subdirectory "CamiTK" in the system temporary ...
Definition: CamiTKLogger.cpp:133
static QString getLevelAsString(InterfaceLogger::LogLevel level)
get the enum value as a text
Definition: Log.cpp:80
void closeLogFile()
close the current log file and reset state
Definition: CamiTKLogger.cpp:202
all types of messages are logged
Definition: InterfaceLogger.h:64
bool setLogToFile(bool writeToFile) override
Allows the logger to write to the log file.
Definition: CamiTKLogger.cpp:117
bool getTimeStampInformation() override
Definition: CamiTKLogger.cpp:263
#define CAMITK_API
Definition: CamiTKAPI.h:48
Definition: Action.cpp:36