[v2,1/5] treewide: Remove `libcamera::LOG(...)` occurrences
diff mbox series

Message ID 20260119113104.3560802-2-barnabas.pocze@ideasonboard.com
State New
Headers show
Series
  • libcamera: base: log: Do not instantiate disabled `LogMessage`s
Related show

Commit Message

Barnabás Pőcze Jan. 19, 2026, 11:30 a.m. UTC
When a class inherits from `Loggable`, it will have a protected `_log()`
function and that will be used instead of the global `_log()` function in
the expansion of the `LOG()` macro. However, if such a class has static member
functions, then simply writing `LOG()` will not work because name lookup will
find the non-static member function and no the global function, resulting in a
compiler error because the non-static member cannot be invoked without an
object, and there is no object in a static member function.

This can be avoided by using `using libcamera::_log;`, thereby bringing the
global declaration into the current scope.

Signed-off-by: Barnabás Pőcze <barnabas.pocze@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
---
 src/libcamera/sensor/camera_sensor_raw.cpp |  8 +++++---
 src/libcamera/v4l2_device.cpp              | 10 ++++++----
 2 files changed, 11 insertions(+), 7 deletions(-)

Patch
diff mbox series

diff --git a/src/libcamera/sensor/camera_sensor_raw.cpp b/src/libcamera/sensor/camera_sensor_raw.cpp
index 759cccafe..81d8985ee 100644
--- a/src/libcamera/sensor/camera_sensor_raw.cpp
+++ b/src/libcamera/sensor/camera_sensor_raw.cpp
@@ -172,10 +172,12 @@  CameraSensorRaw::~CameraSensorRaw() = default;
 std::variant<std::unique_ptr<CameraSensor>, int>
 CameraSensorRaw::match(MediaEntity *entity)
 {
+	using libcamera::_log;
+
 	/* Check the entity type. */
 	if (entity->type() != MediaEntity::Type::V4L2Subdevice ||
 	    entity->function() != MEDIA_ENT_F_CAM_SENSOR) {
-		libcamera::LOG(CameraSensor, Debug)
+		LOG(CameraSensor, Debug)
 			<< entity->name() << ": unsupported entity type ("
 			<< utils::to_underlying(entity->type())
 			<< ") or function (" << utils::hex(entity->function()) << ")";
@@ -200,7 +202,7 @@  CameraSensorRaw::match(MediaEntity *entity)
 			break;
 
 		default:
-			libcamera::LOG(CameraSensor, Debug)
+			LOG(CameraSensor, Debug)
 				<< entity->name() << ": unsupported pad " << pad->index()
 				<< " type " << utils::hex(pad->flags());
 			return { 0 };
@@ -208,7 +210,7 @@  CameraSensorRaw::match(MediaEntity *entity)
 	}
 
 	if (numSinks < 1 || numSinks > 2 || numSources != 1) {
-		libcamera::LOG(CameraSensor, Debug)
+		LOG(CameraSensor, Debug)
 			<< entity->name() << ": unsupported number of sinks ("
 			<< numSinks << ") or sources (" << numSources << ")";
 		return { 0 };
diff --git a/src/libcamera/v4l2_device.cpp b/src/libcamera/v4l2_device.cpp
index 1582c03ef..b49d73b1c 100644
--- a/src/libcamera/v4l2_device.cpp
+++ b/src/libcamera/v4l2_device.cpp
@@ -1032,6 +1032,8 @@  template std::optional<ColorSpace> V4L2Device::toColorSpace(const struct v4l2_mb
 template<typename T>
 int V4L2Device::fromColorSpace(const std::optional<ColorSpace> &colorSpace, T &v4l2Format)
 {
+	using libcamera::_log;
+
 	v4l2Format.colorspace = V4L2_COLORSPACE_DEFAULT;
 	v4l2Format.xfer_func = V4L2_XFER_FUNC_DEFAULT;
 	v4l2Format.ycbcr_enc = V4L2_YCBCR_ENC_DEFAULT;
@@ -1060,7 +1062,7 @@  int V4L2Device::fromColorSpace(const std::optional<ColorSpace> &colorSpace, T &v
 	if (itPrimaries != primariesToV4l2.end()) {
 		v4l2Format.colorspace = itPrimaries->second;
 	} else {
-		libcamera::LOG(V4L2, Warning)
+		LOG(V4L2, Warning)
 			<< "Unrecognised primaries in "
 			<< ColorSpace::toString(colorSpace);
 		ret = -EINVAL;
@@ -1070,7 +1072,7 @@  int V4L2Device::fromColorSpace(const std::optional<ColorSpace> &colorSpace, T &v
 	if (itTransfer != transferFunctionToV4l2.end()) {
 		v4l2Format.xfer_func = itTransfer->second;
 	} else {
-		libcamera::LOG(V4L2, Warning)
+		LOG(V4L2, Warning)
 			<< "Unrecognised transfer function in "
 			<< ColorSpace::toString(colorSpace);
 		ret = -EINVAL;
@@ -1080,7 +1082,7 @@  int V4L2Device::fromColorSpace(const std::optional<ColorSpace> &colorSpace, T &v
 	if (itYcbcrEncoding != ycbcrEncodingToV4l2.end()) {
 		v4l2Format.ycbcr_enc = itYcbcrEncoding->second;
 	} else {
-		libcamera::LOG(V4L2, Warning)
+		LOG(V4L2, Warning)
 			<< "Unrecognised YCbCr encoding in "
 			<< ColorSpace::toString(colorSpace);
 		ret = -EINVAL;
@@ -1090,7 +1092,7 @@  int V4L2Device::fromColorSpace(const std::optional<ColorSpace> &colorSpace, T &v
 	if (itRange != rangeToV4l2.end()) {
 		v4l2Format.quantization = itRange->second;
 	} else {
-		libcamera::LOG(V4L2, Warning)
+		LOG(V4L2, Warning)
 			<< "Unrecognised quantization in "
 			<< ColorSpace::toString(colorSpace);
 		ret = -EINVAL;