No description
Find a file
Laurent Pinchart 4f043b05e7 libcamera: device_enumerator: Reference-count MediaDevice instances
The MediaDevice class will be the entry point to hot-unplug, as it
corresponds to the kernel devices that will report device removal
events. The class will signal media device disconnection to pipeline
handlers, which will clean up resources as a result.

This can't be performed synchronously as references may exist to the
related Camera objects in applications. The MediaDevice object thus
needs to be reference-counted in order to support unplugging, as
otherwise pipeline handlers would be required to drop all the references
to the media device they have borrowed synchronously with the
disconnection signal handler, which would be very error prone (if even
possible at all in a sane way).

Handle MedieDevice instances with std::shared_ptr<> to support this.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
2019-01-24 22:24:11 +02:00
Documentation utils: checkstyle: Add support for clang-format 2019-01-22 14:30:00 +02:00
include libcamera: camera: Associate cameras with their pipeline handler 2019-01-24 22:24:11 +02:00
licenses licenses: Add the Developer CoO 2019-01-02 21:59:46 +02:00
src libcamera: device_enumerator: Reference-count MediaDevice instances 2019-01-24 22:24:11 +02:00
test libcamera: device_enumerator: Reference-count MediaDevice instances 2019-01-24 22:24:11 +02:00
utils utils: checkstyle: Add support for clang-format 2019-01-22 14:30:00 +02:00
.clang-format libcamera: Add clang-format style 2019-01-22 14:30:00 +02:00
.gitignore git: Add .gitignore file 2018-12-14 13:23:07 +00:00
meson.build meson: Utilise default compiler options 2019-01-15 21:14:35 +00:00
README.md README: Update build instructions 2018-11-26 15:52:21 +00:00

libcamera: A complex camera support library for Linux, Android, and ChromeOS

To build and install:

  meson build
  cd build
  ninja
  ninja install