mirror of
https://git.libcamera.org/libcamera/libcamera.git
synced 2025-07-12 23:09:45 +03:00
ipa: rkisp1: agc: Initialize enum controls with a list of values
The controls ExposureTimeMode and AnalogueGainMode are shown in camshark as normal int entries instead of enum popups. The reason is that ControlInfos for these controls are constructed using min/max instead of a list of valid ControlValues. Camshark (and cam) uses the values() vector to deduce if the control is an enum or not. It might be debatable if this is the correct check, but all other ControlInfos for enum controls in libcamera are initialized using a list. Modify the construction of the ControlInfos to use the Span based constructor to fix that issue. Signed-off-by: Stefan Klug <stefan.klug@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com>
This commit is contained in:
parent
9b1f609e5b
commit
ee918b370a
1 changed files with 6 additions and 6 deletions
|
@ -149,13 +149,13 @@ int Agc::init(IPAContext &context, const YamlObject &tuningData)
|
|||
return ret;
|
||||
|
||||
context.ctrlMap[&controls::ExposureTimeMode] =
|
||||
ControlInfo(static_cast<int32_t>(controls::ExposureTimeModeAuto),
|
||||
static_cast<int32_t>(controls::ExposureTimeModeManual),
|
||||
static_cast<int32_t>(controls::ExposureTimeModeAuto));
|
||||
ControlInfo({ { ControlValue(controls::ExposureTimeModeAuto),
|
||||
ControlValue(controls::ExposureTimeModeManual) } },
|
||||
controls::ExposureTimeModeAuto);
|
||||
context.ctrlMap[&controls::AnalogueGainMode] =
|
||||
ControlInfo(static_cast<int32_t>(controls::AnalogueGainModeAuto),
|
||||
static_cast<int32_t>(controls::AnalogueGainModeManual),
|
||||
static_cast<int32_t>(controls::AnalogueGainModeAuto));
|
||||
ControlInfo({ { ControlValue(controls::AnalogueGainModeAuto),
|
||||
ControlValue(controls::AnalogueGainModeManual) } },
|
||||
controls::AnalogueGainModeAuto);
|
||||
/* \todo Move this to the Camera class */
|
||||
context.ctrlMap[&controls::AeEnable] = ControlInfo(false, true, true);
|
||||
context.ctrlMap.merge(controls());
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue