libcamera: device_enumerator: add DeviceEnumeratorSysfs class

A udev-based device enumerator is not sufficient, since libudev is an
optional dependency, or udev might fail. In these cases, we should fall
back to using sysfs to enumerate devices.

Add a DeviceEnumeratorSysfs class which is a specialization of
DeviceEnumerator that uses sysfs to enumerate media devices on the
system.

Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
This commit is contained in:
Paul Elder
2019-05-02 16:50:49 -04:00
parent 05ff3d56e0
commit 977cfbd526
5 changed files with 142 additions and 3 deletions
+3 -1
View File
@@ -833,7 +833,9 @@ RECURSIVE = YES
# Note that relative paths are relative to the directory from which doxygen is
# run.
EXCLUDE = ../src/libcamera/device_enumerator_udev.cpp \
EXCLUDE = ../src/libcamera/device_enumerator_sysfs.cpp \
../src/libcamera/device_enumerator_udev.cpp \
../src/libcamera/include/device_enumerator_sysfs.h \
../src/libcamera/include/device_enumerator_udev.h \
../src/libcamera/pipeline/