Implement LOGN for all sinks

This commit is contained in:
Alexey Rybalchenko 2019-08-19 15:58:51 +02:00 committed by Mohammad Al-Turany
parent dcc27744cd
commit d9ac93552e
3 changed files with 12 additions and 8 deletions

View File

@ -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) void Logger::SetConsoleSeverity(const Severity severity)

View File

@ -181,7 +181,7 @@ class Logger
Logger& Log() { return *this; } Logger& Log() { return *this; }
static void PrintEmptyLine(); void LogEmptyLine();
enum class Color : int enum class Color : int
{ {
@ -391,7 +391,9 @@ class Logger
#define LOGP(severity, ...) LOG(severity) << fmt::sprintf(__VA_ARGS__) #define LOGP(severity, ...) LOG(severity) << fmt::sprintf(__VA_ARGS__)
// Log an empty line // 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 // Log with custom file, line, function
#define LOGD(severity, file, line, f) \ #define LOGD(severity, file, line, f) \

View File

@ -203,10 +203,11 @@ int main()
LOGV(info, verylow) << "I should be printed with very low verbosity"; LOGV(info, verylow) << "I should be printed with very low verbosity";
LOGN(); cout << "cout: pushing 4 new lines with LOGN() in info verbosity" << endl;
LOGN(); LOGN(info);
LOGN(); LOGN(info);
LOGN(); LOGN(info);
LOGN(info);
return 0; return 0;
} }