Message ID | 20250317181141.214118-1-barnabas.pocze@ideasonboard.com |
---|---|
State | New |
Headers | show |
Series |
|
Related | show |
Hi Barnabás On Mon, Mar 17, 2025 at 07:11:41PM +0100, Barnabás Pőcze wrote: > 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 <barnabas.pocze@ideasonboard.com> Seems like a nice idea Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com> Thanks j > --- > 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 9e9348277..8a555339c 100644 > --- a/src/apps/cam/camera_session.cpp > +++ b/src/apps/cam/camera_session.cpp > @@ -8,6 +8,7 @@ > #include <iomanip> > #include <iostream> > #include <limits.h> > +#include <optional> > #include <sstream> > > #include <libcamera/control_ids.h> > @@ -173,6 +174,11 @@ void CameraSession::listControls() const > std::cout << "Control: " << io.str() > << id->vendor() << "::" << id->name() << ":" > << std::endl; > + > + std::optional<int32_t> def; > + if (!info.def().isNone()) > + def = info.def().get<int32_t>(); > + > for (const auto &value : info.values()) { > int32_t val = value.get<int32_t>(); > const auto &it = id->enumerators().find(val); > @@ -182,7 +188,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; > } > } > > -- > 2.49.0 >
Quoting Barnabás Pőcze (2025-03-17 18:11:41) > 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 <barnabas.pocze@ideasonboard.com> I like this! Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> > --- > 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 9e9348277..8a555339c 100644 > --- a/src/apps/cam/camera_session.cpp > +++ b/src/apps/cam/camera_session.cpp > @@ -8,6 +8,7 @@ > #include <iomanip> > #include <iostream> > #include <limits.h> > +#include <optional> > #include <sstream> > > #include <libcamera/control_ids.h> > @@ -173,6 +174,11 @@ void CameraSession::listControls() const > std::cout << "Control: " << io.str() > << id->vendor() << "::" << id->name() << ":" > << std::endl; > + > + std::optional<int32_t> def; > + if (!info.def().isNone()) > + def = info.def().get<int32_t>(); > + > for (const auto &value : info.values()) { > int32_t val = value.get<int32_t>(); > const auto &it = id->enumerators().find(val); > @@ -182,7 +188,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; > } > } > > -- > 2.49.0 >
diff --git a/src/apps/cam/camera_session.cpp b/src/apps/cam/camera_session.cpp index 9e9348277..8a555339c 100644 --- a/src/apps/cam/camera_session.cpp +++ b/src/apps/cam/camera_session.cpp @@ -8,6 +8,7 @@ #include <iomanip> #include <iostream> #include <limits.h> +#include <optional> #include <sstream> #include <libcamera/control_ids.h> @@ -173,6 +174,11 @@ void CameraSession::listControls() const std::cout << "Control: " << io.str() << id->vendor() << "::" << id->name() << ":" << std::endl; + + std::optional<int32_t> def; + if (!info.def().isNone()) + def = info.def().get<int32_t>(); + for (const auto &value : info.values()) { int32_t val = value.get<int32_t>(); const auto &it = id->enumerators().find(val); @@ -182,7 +188,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; } }
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 <barnabas.pocze@ideasonboard.com> --- src/apps/cam/camera_session.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-)