From d9ac93552ebb2693fb2681e1e5ad0c65433a9614 Mon Sep 17 00:00:00 2001 From: Alexey Rybalchenko Date: Mon, 19 Aug 2019 15:58:51 +0200 Subject: [PATCH] Implement LOGN for all sinks --- logger/Logger.cxx | 5 +++-- logger/Logger.h | 6 ++++-- test/loggerTest.cxx | 9 +++++---- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/logger/Logger.cxx b/logger/Logger.cxx index c124237..73527fa 100644 --- a/logger/Logger.cxx +++ b/logger/Logger.cxx @@ -354,9 +354,10 @@ Logger::~Logger() noexcept(false) } } -void Logger::PrintEmptyLine() +void Logger::LogEmptyLine() { - cout << "\n" << flush; + // do nothing, line break is added by the destructor + // this call just to prevent any output to be added to the logger object } void Logger::SetConsoleSeverity(const Severity severity) diff --git a/logger/Logger.h b/logger/Logger.h index 2d41395..a611177 100644 --- a/logger/Logger.h +++ b/logger/Logger.h @@ -181,7 +181,7 @@ class Logger Logger& Log() { return *this; } - static void PrintEmptyLine(); + void LogEmptyLine(); enum class Color : int { @@ -391,7 +391,9 @@ class Logger #define LOGP(severity, ...) LOG(severity) << fmt::sprintf(__VA_ARGS__) // Log an empty line -#define LOGN() fair::Logger::PrintEmptyLine() +#define LOGN(severity) \ + for (bool fairLOggerunLikelyvariable = false; fair::Logger::Logging(fair::Severity::severity) && !fairLOggerunLikelyvariable; fairLOggerunLikelyvariable = true) \ + fair::Logger(fair::Severity::severity, fair::Verbosity::verylow, MESSAGE_ORIGIN).LogEmptyLine() // Log with custom file, line, function #define LOGD(severity, file, line, f) \ diff --git a/test/loggerTest.cxx b/test/loggerTest.cxx index d2d9f36..e0ccfa1 100644 --- a/test/loggerTest.cxx +++ b/test/loggerTest.cxx @@ -203,10 +203,11 @@ int main() LOGV(info, verylow) << "I should be printed with very low verbosity"; - LOGN(); - LOGN(); - LOGN(); - LOGN(); + cout << "cout: pushing 4 new lines with LOGN() in info verbosity" << endl; + LOGN(info); + LOGN(info); + LOGN(info); + LOGN(info); return 0; }