[libcamera-devel,v6,0/4] Python bindings
mbox series

Message ID 20220426110236.104511-1-tomi.valkeinen@ideasonboard.com
Headers show
Series
  • Python bindings
Related show

Message

Tomi Valkeinen April 26, 2022, 11:02 a.m. UTC
Hi,

This is v6 of the python bindings. Main changes to v5:

- Sorted out most of the checkstyle.py warnings
- Generate enums for controls from control_ids.yaml (as a new patch for
  clarity)
- Python unit test as a meson test

 Tomi

Tomi Valkeinen (4):
  Add Python bindings
  py: generate control enums from yaml
  py: add unittests.py
  py: Add cam.py

 meson.build                               |   1 +
 meson_options.txt                         |   5 +
 src/meson.build                           |   1 +
 src/py/cam/cam.py                         | 483 ++++++++++++++++++++++
 src/py/cam/cam_kms.py                     | 183 ++++++++
 src/py/cam/cam_null.py                    |  47 +++
 src/py/cam/cam_qt.py                      | 354 ++++++++++++++++
 src/py/cam/cam_qtgl.py                    | 385 +++++++++++++++++
 src/py/cam/gl_helpers.py                  |  74 ++++
 src/py/libcamera/__init__.py              |  12 +
 src/py/libcamera/gen-py-control-enums.py  |  95 +++++
 src/py/libcamera/meson.build              |  52 +++
 src/py/libcamera/pyenums.cpp              |  53 +++
 src/py/libcamera/pyenums_generated.cpp.in |  21 +
 src/py/libcamera/pymain.cpp               | 454 ++++++++++++++++++++
 src/py/meson.build                        |   1 +
 subprojects/.gitignore                    |   3 +-
 subprojects/pybind11.wrap                 |   6 +
 test/meson.build                          |   1 +
 test/py/meson.build                       |  17 +
 test/py/unittests.py                      | 368 +++++++++++++++++
 21 files changed, 2615 insertions(+), 1 deletion(-)
 create mode 100755 src/py/cam/cam.py
 create mode 100644 src/py/cam/cam_kms.py
 create mode 100644 src/py/cam/cam_null.py
 create mode 100644 src/py/cam/cam_qt.py
 create mode 100644 src/py/cam/cam_qtgl.py
 create mode 100644 src/py/cam/gl_helpers.py
 create mode 100644 src/py/libcamera/__init__.py
 create mode 100755 src/py/libcamera/gen-py-control-enums.py
 create mode 100644 src/py/libcamera/meson.build
 create mode 100644 src/py/libcamera/pyenums.cpp
 create mode 100644 src/py/libcamera/pyenums_generated.cpp.in
 create mode 100644 src/py/libcamera/pymain.cpp
 create mode 100644 src/py/meson.build
 create mode 100644 subprojects/pybind11.wrap
 create mode 100644 test/py/meson.build
 create mode 100755 test/py/unittests.py