/* SPDX-License-Identifier: BSD-2-Clause */ /* * Copyright (C) 2019, Raspberry Pi Ltd * * agc_status.h - AGC/AEC control algorithm status */ #pragma once #include <libcamera/base/utils.h> /* * The AGC algorithm should post the following structure into the image's * "agc.status" metadata. */ /* * Note: total_exposure_value will be reported as zero until the algorithm has * seen statistics and calculated meaningful values. The contents should be * ignored until then. */ struct AgcStatus { libcamera::utils::Duration totalExposureValue; /* value for all exposure and gain for this image */ libcamera::utils::Duration targetExposureValue; /* (unfiltered) target total exposure AGC is aiming for */ libcamera::utils::Duration shutterTime; double analogueGain; char exposureMode[32]; char constraintMode[32]; char meteringMode[32]; double ev; libcamera::utils::Duration flickerPeriod; int floatingRegionEnable; libcamera::utils::Duration fixedShutter; double fixedAnalogueGain; double digitalGain; int locked; };