[libcamera-devel,v3,0/3] MediaDevice class and MediaObject classes
mbox series

Message ID 20190108204241.10674-1-jacopo@jmondi.org
Headers show
Series
  • MediaDevice class and MediaObject classes
Related show

Message

Jacopo Mondi Jan. 8, 2019, 8:42 p.m. UTC
Hello
   this is 3rd version of MediaDevice and associated MediaObject classes.

v1 available for reference here:
https://lists.libcamera.org/pipermail/libcamera-devel/2018-December/000120.html
v2 available for reference here:
https://lists.libcamera.org/pipermail/libcamera-devel/2018-December/000181.html

This iteration addresses comments received from Laurent on v2.

Notable changes:
- Use references to class instances and not global ids to reference
  MediaObjects from other MediaObjects
- Remove devnode path from entities: they will be reworked anyhow when
  integrating with DeviceEnumerator
- Add public method to get a list of entities in the media device
- Remove functions to enable MediaLinks from the MediaDevice: it requires
  better discussions on which API to expose.
- Make the media graph printout functiona part of media device tests.
- Expand documentation for classes and public methods, polish doxygen and
  remove doxygen comments from private members.

Tested locally using the printout test on VIMC and integrated webcam media
devices.

Valgrind does not report memory leaks.

Thanks
   j

Jacopo Mondi (3):
  libcamera: Add MediaObject class hierarchy
  libcamera: Add MediaDevice class
  test: Add media device test

 src/libcamera/include/media_device.h    |  61 ++++
 src/libcamera/include/media_object.h    | 107 +++++++
 src/libcamera/media_device.cpp          | 370 ++++++++++++++++++++++++
 src/libcamera/media_object.cpp          | 281 ++++++++++++++++++
 src/libcamera/meson.build               |   4 +
 test/media_device/media_device_test.cpp | 175 +++++++++++
 test/media_device/meson.build           |   5 +
 test/meson.build                        |   4 +
 8 files changed, 1007 insertions(+)
 create mode 100644 src/libcamera/include/media_device.h
 create mode 100644 src/libcamera/include/media_object.h
 create mode 100644 src/libcamera/media_device.cpp
 create mode 100644 src/libcamera/media_object.cpp
 create mode 100644 test/media_device/media_device_test.cpp
 create mode 100644 test/media_device/meson.build

--
2.20.1

Comments

Jacopo Mondi Jan. 8, 2019, 8:47 p.m. UTC | #1
Uuuuups,
   sent the wrong series (>.<)

Please ignore...

On Tue, Jan 08, 2019 at 09:42:38PM +0100, Jacopo Mondi wrote:
> Hello
>    this is 3rd version of MediaDevice and associated MediaObject classes.
>
> v1 available for reference here:
> https://lists.libcamera.org/pipermail/libcamera-devel/2018-December/000120.html
> v2 available for reference here:
> https://lists.libcamera.org/pipermail/libcamera-devel/2018-December/000181.html
>
> This iteration addresses comments received from Laurent on v2.
>
> Notable changes:
> - Use references to class instances and not global ids to reference
>   MediaObjects from other MediaObjects
> - Remove devnode path from entities: they will be reworked anyhow when
>   integrating with DeviceEnumerator
> - Add public method to get a list of entities in the media device
> - Remove functions to enable MediaLinks from the MediaDevice: it requires
>   better discussions on which API to expose.
> - Make the media graph printout functiona part of media device tests.
> - Expand documentation for classes and public methods, polish doxygen and
>   remove doxygen comments from private members.
>
> Tested locally using the printout test on VIMC and integrated webcam media
> devices.
>
> Valgrind does not report memory leaks.
>
> Thanks
>    j
>
> Jacopo Mondi (3):
>   libcamera: Add MediaObject class hierarchy
>   libcamera: Add MediaDevice class
>   test: Add media device test
>
>  src/libcamera/include/media_device.h    |  61 ++++
>  src/libcamera/include/media_object.h    | 107 +++++++
>  src/libcamera/media_device.cpp          | 370 ++++++++++++++++++++++++
>  src/libcamera/media_object.cpp          | 281 ++++++++++++++++++
>  src/libcamera/meson.build               |   4 +
>  test/media_device/media_device_test.cpp | 175 +++++++++++
>  test/media_device/meson.build           |   5 +
>  test/meson.build                        |   4 +
>  8 files changed, 1007 insertions(+)
>  create mode 100644 src/libcamera/include/media_device.h
>  create mode 100644 src/libcamera/include/media_object.h
>  create mode 100644 src/libcamera/media_device.cpp
>  create mode 100644 src/libcamera/media_object.cpp
>  create mode 100644 test/media_device/media_device_test.cpp
>  create mode 100644 test/media_device/meson.build
>
> --
> 2.20.1
>