summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Elder <paul.elder@ideasonboard.com>2024-10-16 20:19:43 +0900
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2024-10-21 00:23:07 +0300
commit79893cc00fc6b58d42c411164947b8876bc628c3 (patch)
tree23526334d82bb430ce9fe43e062866ee0c214856
parentb777d8272af030f66b1a3636d6ffc9b41be58e24 (diff)
py: Add bindings for ControlId vendor information
Add python bindings for quering vendor information from a ControlId. While at it, update __repr__ so that it also prints the vendor. Example usage: >>> cid libcamera.ControlId(20, libcamera.Saturation, ControlType.Float) >>> cid.vendor 'libcamera' Signed-off-by: Paul Elder <paul.elder@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
-rw-r--r--src/py/libcamera/py_main.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/py/libcamera/py_main.cpp b/src/py/libcamera/py_main.cpp
index 983b76f6..09b6f9db 100644
--- a/src/py/libcamera/py_main.cpp
+++ b/src/py/libcamera/py_main.cpp
@@ -399,11 +399,12 @@ PYBIND11_MODULE(_libcamera, m)
pyControlId
.def_property_readonly("id", &ControlId::id)
.def_property_readonly("name", &ControlId::name)
+ .def_property_readonly("vendor", &ControlId::vendor)
.def_property_readonly("type", &ControlId::type)
.def("__str__", [](const ControlId &self) { return self.name(); })
.def("__repr__", [](const ControlId &self) {
- return py::str("libcamera.ControlId({}, {}, {})")
- .format(self.id(), self.name(), self.type());
+ return py::str("libcamera.ControlId({}, {}.{}, {})")
+ .format(self.id(), self.vendor(), self.name(), self.type());
})
.def("enumerators", &ControlId::enumerators);