From b0db9388f650fe0e00c0db0af488cd7a2d5dd4bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Barnab=C3=A1s=20P=C5=91cze?= Date: Mon, 3 Mar 2025 16:04:44 +0100 Subject: [PATCH] libcamera: base: log: Take `LogCategory` by reference MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When no log category is specified, `nullptr` is passed, and then the `_log()` function implementations replace that with `LogCategory::defaultCategory()`. But since the call site always knows the log category, this condition can be removed and the `_LOG1()` macro can use `LogCategory::defaultCategory()`. So remove the condition from the `_log()` implementations and use references to refer to log categories. Signed-off-by: Barnabás Pőcze Reviewed-by: Laurent Pinchart Reviewed-by: Kieran Bingham --- include/libcamera/base/log.h | 8 ++++---- src/libcamera/base/log.cpp | 12 ++++-------- 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/include/libcamera/base/log.h b/include/libcamera/base/log.h index 8af74b59..958cb488 100644 --- a/include/libcamera/base/log.h +++ b/include/libcamera/base/log.h @@ -96,12 +96,12 @@ public: protected: virtual std::string logPrefix() const = 0; - LogMessage _log(const LogCategory *category, LogSeverity severity, + LogMessage _log(const LogCategory &category, LogSeverity severity, const char *fileName = __builtin_FILE(), unsigned int line = __builtin_LINE()) const; }; -LogMessage _log(const LogCategory *category, LogSeverity severity, +LogMessage _log(const LogCategory &category, LogSeverity severity, const char *fileName = __builtin_FILE(), unsigned int line = __builtin_LINE()); @@ -109,9 +109,9 @@ LogMessage _log(const LogCategory *category, LogSeverity severity, #define _LOG_CATEGORY(name) logCategory##name #define _LOG1(severity) \ - _log(nullptr, Log##severity).stream() + _log(LogCategory::defaultCategory(), Log##severity).stream() #define _LOG2(category, severity) \ - _log(&_LOG_CATEGORY(category)(), Log##severity).stream() + _log(_LOG_CATEGORY(category)(), Log##severity).stream() /* * Expand the LOG() macro to _LOG1() or _LOG2() based on the number of diff --git a/src/libcamera/base/log.cpp b/src/libcamera/base/log.cpp index 6a8e2a3e..81b550e2 100644 --- a/src/libcamera/base/log.cpp +++ b/src/libcamera/base/log.cpp @@ -952,12 +952,10 @@ Loggable::~Loggable() * * \return A log message */ -LogMessage Loggable::_log(const LogCategory *category, LogSeverity severity, +LogMessage Loggable::_log(const LogCategory &category, LogSeverity severity, const char *fileName, unsigned int line) const { - return LogMessage(fileName, line, - category ? *category : LogCategory::defaultCategory(), - severity, logPrefix()); + return LogMessage(fileName, line, category, severity, logPrefix()); } /** @@ -972,12 +970,10 @@ LogMessage Loggable::_log(const LogCategory *category, LogSeverity severity, * * \return A log message */ -LogMessage _log(const LogCategory *category, LogSeverity severity, +LogMessage _log(const LogCategory &category, LogSeverity severity, const char *fileName, unsigned int line) { - return LogMessage(fileName, line, - category ? *category : LogCategory::defaultCategory(), - severity); + return LogMessage(fileName, line, category, severity); } /**