diff options
Diffstat (limited to 'src/libcamera/include/v4l2_device.h')
-rw-r--r-- | src/libcamera/include/v4l2_device.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/libcamera/include/v4l2_device.h b/src/libcamera/include/v4l2_device.h index 55696046..24a0134a 100644 --- a/src/libcamera/include/v4l2_device.h +++ b/src/libcamera/include/v4l2_device.h @@ -10,11 +10,14 @@ #include <map> #include <string> +#include <linux/videodev2.h> + #include "log.h" namespace libcamera { class V4L2ControlInfo; +class V4L2ControlList; class V4L2Device : protected Loggable { @@ -23,6 +26,8 @@ public: bool isOpen() const { return fd_ != -1; } const V4L2ControlInfo *getControlInfo(unsigned int id) const; + int getControls(V4L2ControlList *ctrls); + int setControls(V4L2ControlList *ctrls); const std::string &deviceNode() const { return deviceNode_; } @@ -38,6 +43,10 @@ protected: private: void listControls(); + void updateControls(V4L2ControlList *ctrls, + const V4L2ControlInfo **controlInfo, + const struct v4l2_ext_control *v4l2Ctrls, + unsigned int count); std::map<unsigned int, V4L2ControlInfo> controls_; std::string deviceNode_; |