summaryrefslogtreecommitdiff
path: root/src/libcamera/include
diff options
context:
space:
mode:
Diffstat (limited to 'src/libcamera/include')
-rw-r--r--src/libcamera/include/v4l2_controls.h7
-rw-r--r--src/libcamera/include/v4l2_device.h4
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_;