From 90208694c8c0652eb12407c016a649333a64f990 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Barnab=C3=A1s=20P=C5=91cze?= Date: Fri, 14 Mar 2025 16:55:19 +0100 Subject: apps: cam: Highlight default enumerator MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Print "[default]" after the default enumerator when listing controls. Example: $ cam -c 1 --list-controls [...] Control: [inout] libcamera::ExposureTimeMode: - ExposureTimeModeAuto (0) [default] - ExposureTimeModeManual (1) Signed-off-by: Barnabás Pőcze Reviewed-by: Jacopo Mondi Reviewed-by: Kieran Bingham --- src/apps/cam/camera_session.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/apps/cam/camera_session.cpp b/src/apps/cam/camera_session.cpp index a352494b..97c1ae44 100644 --- a/src/apps/cam/camera_session.cpp +++ b/src/apps/cam/camera_session.cpp @@ -10,6 +10,7 @@ #include #include #include +#include #include #include @@ -174,6 +175,11 @@ void CameraSession::listControls() const std::cout << "Control: " << io.str() << id->vendor() << "::" << id->name() << ":" << std::endl; + + std::optional def; + if (!info.def().isNone()) + def = info.def().get(); + for (const auto &value : info.values()) { int32_t val = value.get(); const auto &it = id->enumerators().find(val); @@ -183,7 +189,10 @@ void CameraSession::listControls() const std::cout << "UNKNOWN"; else std::cout << it->second; - std::cout << " (" << val << ")" << std::endl; + + std::cout << " (" << val << ")" + << (val == def ? " [default]" : "") + << std::endl; } } -- cgit v1.2.1