summaryrefslogtreecommitdiff
path: root/src/libcamera/include/device_enumerator.h
diff options
context:
space:
mode:
authorNiklas Söderlund <niklas.soderlund@ragnatech.se>2018-12-21 02:43:24 +0100
committerNiklas Söderlund <niklas.soderlund@ragnatech.se>2018-12-31 00:58:19 +0100
commit4db38e82a371b4a38955f74358b35d646123e928 (patch)
tree0bff4a298e1ba2c432df25d77c19810654c7b132 /src/libcamera/include/device_enumerator.h
parentaf8c212600f9c609ef63819f7aa0ff10fbf7ee63 (diff)
libcamera: device_enumerator: add DeviceEnumeratorUdev class
Provide a DeviceEnumeratorUdev class which is a specialization of DeviceEnumerator which uses udev to enumerate information in the system. Signed-off-by: Niklas Söderlund <niklas.soderlund@ragnatech.se> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'src/libcamera/include/device_enumerator.h')
-rw-r--r--src/libcamera/include/device_enumerator.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/libcamera/include/device_enumerator.h b/src/libcamera/include/device_enumerator.h
index 1f8cef33..5348e6cf 100644
--- a/src/libcamera/include/device_enumerator.h
+++ b/src/libcamera/include/device_enumerator.h
@@ -75,6 +75,21 @@ private:
virtual std::string lookupDevnode(int major, int minor) = 0;
};
+class DeviceEnumeratorUdev: public DeviceEnumerator
+{
+public:
+ DeviceEnumeratorUdev();
+ ~DeviceEnumeratorUdev();
+
+ int init() final;
+ int enumerate() final;
+
+private:
+ struct udev *udev_;
+
+ std::string lookupDevnode(int major, int minor) final;
+};
+
} /* namespace libcamera */
#endif /* __LIBCAMERA_DEVICE_ENUMERATOR_H__ */