diff options
author | Paul Elder <paul.elder@ideasonboard.com> | 2024-03-13 19:25:16 +0900 |
---|---|---|
committer | Paul Elder <paul.elder@ideasonboard.com> | 2024-06-14 22:16:01 +0900 |
commit | 248374feca901d79c5df24b06e01fc0113e84638 (patch) | |
tree | 963706a1df59cc0e55018d8b11d93a31c1254759 /src/ipa/rkisp1/ipa_context.h | |
parent | 35233938ee5d7a560dd4a93c0a1b08eae4935ae4 (diff) |
ipa: rkisp1: agc: Plumb mode-selection and frame duration controls
Plumb controls for setting metering mode, exposure mode, constraint
mode, and frame duration limits. Also report them as available controls,
as well as in metadata.
While at it, add the missing #include for tuple, as a std::tie is used.
Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
Reviewed-by: Stefan Klug <stefan.klug@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Diffstat (limited to 'src/ipa/rkisp1/ipa_context.h')
-rw-r--r-- | src/ipa/rkisp1/ipa_context.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/ipa/rkisp1/ipa_context.h b/src/ipa/rkisp1/ipa_context.h index 2a994d81..6022480d 100644 --- a/src/ipa/rkisp1/ipa_context.h +++ b/src/ipa/rkisp1/ipa_context.h @@ -12,6 +12,7 @@ #include <libcamera/base/utils.h> +#include <libcamera/control_ids.h> #include <libcamera/controls.h> #include <libcamera/geometry.h> @@ -68,8 +69,10 @@ struct IPAActiveState { } automatic; bool autoEnabled; - uint32_t constraintMode; - uint32_t exposureMode; + controls::AeConstraintModeEnum constraintMode; + controls::AeExposureModeEnum exposureMode; + controls::AeMeteringModeEnum meteringMode; + utils::Duration maxShutterSpeed; } agc; struct { @@ -115,6 +118,11 @@ struct IPAFrameContext : public FrameContext { uint32_t exposure; double gain; bool autoEnabled; + controls::AeConstraintModeEnum constraintMode; + controls::AeExposureModeEnum exposureMode; + controls::AeMeteringModeEnum meteringMode; + utils::Duration maxShutterSpeed; + bool update; } agc; struct { |