diff options
Diffstat (limited to 'src/libcamera/include')
-rw-r--r-- | src/libcamera/include/v4l2_controls.h | 7 | ||||
-rw-r--r-- | src/libcamera/include/v4l2_device.h | 4 |
2 files changed, 7 insertions, 4 deletions
diff --git a/src/libcamera/include/v4l2_controls.h b/src/libcamera/include/v4l2_controls.h index 133f5262..4d7ac1a1 100644 --- a/src/libcamera/include/v4l2_controls.h +++ b/src/libcamera/include/v4l2_controls.h @@ -28,13 +28,14 @@ public: class V4L2ControlInfo { public: - V4L2ControlInfo(const struct v4l2_query_ext_ctrl &ctrl); + V4L2ControlInfo(const V4L2ControlId &id, + const struct v4l2_query_ext_ctrl &ctrl); - const ControlId &id() const { return id_; } + const ControlId &id() const { return *id_; } const ControlRange &range() const { return range_; } private: - V4L2ControlId id_; + const V4L2ControlId *id_; ControlRange range_; }; diff --git a/src/libcamera/include/v4l2_device.h b/src/libcamera/include/v4l2_device.h index daa762d5..5a5b8582 100644 --- a/src/libcamera/include/v4l2_device.h +++ b/src/libcamera/include/v4l2_device.h @@ -8,7 +8,8 @@ #define __LIBCAMERA_V4L2_DEVICE_H__ #include <map> -#include <string> +#include <memory> +#include <vector> #include <linux/videodev2.h> @@ -48,6 +49,7 @@ private: const struct v4l2_ext_control *v4l2Ctrls, unsigned int count); + std::vector<std::unique_ptr<V4L2ControlId>> controlIds_; V4L2ControlInfoMap controls_; std::string deviceNode_; int fd_; |