[libcamera-devel] [PATCH v5 0/6] Introduce UVC hotplugging support
Umang Jain
email at uajain.com
Tue Jun 16 21:45:32 CEST 2020
v4->v5:
- Rework "libcamera: CameraManager: Drop the vector of created
PipelineHandlers" commit to guard against the possibility of
pipeline handler getting deleted in PipelineHandler::disconnect().
Add a _lot_ of documentation to it via commit message and a comment.
- Make sure no use-after-free errors are present when the unit-test
runs under valgrind. Fold the patch given by Laurent in previous
review to properly address and document it.
- Provide more past context to "libcamera: CameraManager: Drop the
vector of created PipelineHandlers" in commit message, to 'why'
pipes_ vector is not needed anymore.
- Few typos fixes.
v3->v4:
- Introduce one additional commit to eliminate Pipehandlers' vector
from CameraManager. It was leaving behind a leaked reference which
was causing unclean unbind->bind operation (due to dangling dirs)
for the hotplug unit test to run.
- Simplify hotplug unit test with use of std::ofstream.
- Change CameraManager::Private::addCamera() signature to accept
Camera arg as pass-by-value instead of pass-by-reference.
- qcam: Finalize HotplugEvent naming with ::HotPlug and ::HotUnplug
- Few small improvements in commit messages and rebase.
Umang Jain (6):
libcamera: CameraManager: Drop the vector of created PipelineHandlers
libcamera: camera_manager: Refactor pipelines creation into separate
function
libcamera: device_enumerator: Emit a signal when new devices are added
libcamera: camera_manager: Introduce signals when a camera is added or
removed
qcam: main_window: Introduce initial hotplug support
tests: Introduce hotplug hot-unplug unit test
include/libcamera/camera_manager.h | 6 +-
.../libcamera/internal/device_enumerator.h | 4 +
src/libcamera/camera_manager.cpp | 65 ++++++---
src/libcamera/device_enumerator.cpp | 13 ++
src/libcamera/pipeline_handler.cpp | 20 ++-
src/qcam/main_window.cpp | 76 +++++++++++
src/qcam/main_window.h | 6 +
test/hotplug-cameras.cpp | 128 ++++++++++++++++++
test/meson.build | 1 +
9 files changed, 298 insertions(+), 21 deletions(-)
create mode 100644 test/hotplug-cameras.cpp
--
2.26.2
More information about the libcamera-devel
mailing list