[libcamera-devel] [PATCH] py: Support controls that are ControlTypeNone
David Plowman
david.plowman at raspberrypi.com
Fri Sep 30 14:18:12 CEST 2022
Such controls can now be created when a control doesn't have a
reasonable or obvious default value. We support them using Python's
"None" value, rather than generating a runtime error.
Signed-off-by: David Plowman <david.plowman at raspberrypi.com>
---
src/py/libcamera/py_helpers.cpp | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/py/libcamera/py_helpers.cpp b/src/py/libcamera/py_helpers.cpp
index 45aecce9..f685e606 100644
--- a/src/py/libcamera/py_helpers.cpp
+++ b/src/py/libcamera/py_helpers.cpp
@@ -55,6 +55,7 @@ py::object controlValueToPy(const ControlValue &cv)
return py::cast(v);
}
case ControlTypeNone:
+ return py::none();
default:
throw std::runtime_error("Unsupported ControlValue type");
}
@@ -91,6 +92,7 @@ ControlValue pyToControlValue(const py::object &ob, ControlType type)
case ControlTypeSize:
return ControlValue(ob.cast<Size>());
case ControlTypeNone:
+ return ControlValue();
default:
throw std::runtime_error("Control type not implemented");
}
--
2.30.2
More information about the libcamera-devel
mailing list