7#ifndef __LIBCAMERA_IPU3_ALGORITHMS_AGC_H__
8#define __LIBCAMERA_IPU3_ALGORITHMS_AGC_H__
10#include <linux/intel-ipu3.h>
20struct IPACameraSensorInfo;
22namespace ipa::ipu3::algorithms {
34 void measureBrightness(
const ipu3_uapi_stats_3a *stats,
35 const ipu3_uapi_grid_config &grid);
36 void filterExposure();
37 void computeExposure(
IPAFrameContext &frameContext,
double currentYGain);
39 const ipu3_uapi_grid_config &grid,
40 const ipu3_uapi_stats_3a *stats,
51 double minAnalogueGain_;
52 double maxAnalogueGain_;
Algorithm common interface.
The base class for all IPU3 algorithms.
Definition: algorithm.h:19
A mean-based auto-exposure algorithm.
Definition: agc.h:25
int configure(IPAContext &context, const IPAConfigInfo &configInfo) override
Configure the AGC given a configInfo.
Definition: agc.cpp:88
void process(IPAContext &context, const ipu3_uapi_stats_3a *stats) override
Process IPU3 statistics, and run AGC operations.
Definition: agc.cpp:313
Helper class from std::chrono::duration that represents a time duration in nanoseconds with double pr...
Definition: utils.h:324
Data structures related to geometric objects.
Top-level libcamera namespace.
Definition: backtrace.h:17
Global IPA context data shared between all algorithms.
Definition: ipa_context.h:63
Per-frame context for algorithms.
Definition: ipa_context.h:36
Miscellaneous utility functions.