libcamera: Allow access to v4l2_query_ext_ctrl structure for a V4L2 control
The V4L2Device::controlInfo method simply returns a pointer to the v4l2_query_ext_ctrl structure for the given control, which has already been retrieved and stored. Signed-off-by: David Plowman <david.plowman@raspberrypi.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
This commit is contained in:
parent
15a98fab79
commit
d522ad2549
2 changed files with 17 additions and 0 deletions
|
@ -29,6 +29,8 @@ public:
|
||||||
ControlList getControls(const std::vector<uint32_t> &ids);
|
ControlList getControls(const std::vector<uint32_t> &ids);
|
||||||
int setControls(ControlList *ctrls);
|
int setControls(ControlList *ctrls);
|
||||||
|
|
||||||
|
const struct v4l2_query_ext_ctrl *controlInfo(uint32_t id) const;
|
||||||
|
|
||||||
const std::string &deviceNode() const { return deviceNode_; }
|
const std::string &deviceNode() const { return deviceNode_; }
|
||||||
std::string devicePath() const;
|
std::string devicePath() const;
|
||||||
|
|
||||||
|
|
|
@ -353,6 +353,21 @@ int V4L2Device::setControls(ControlList *ctrls)
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief Retrieve the v4l2_query_ext_ctrl information for the given control
|
||||||
|
* \param[in] id The V4L2 control id
|
||||||
|
* \return A pointer to the v4l2_query_ext_ctrl structure for the given
|
||||||
|
* control, or a null pointer if not found
|
||||||
|
*/
|
||||||
|
const struct v4l2_query_ext_ctrl *V4L2Device::controlInfo(uint32_t id) const
|
||||||
|
{
|
||||||
|
const auto it = controlInfo_.find(id);
|
||||||
|
if (it == controlInfo_.end())
|
||||||
|
return nullptr;
|
||||||
|
|
||||||
|
return &it->second;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Retrieve the device path in sysfs
|
* \brief Retrieve the device path in sysfs
|
||||||
*
|
*
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue