/* SPDX-License-Identifier: LGPL-2.1-or-later */ /* * Copyright (C) 2024 Ideas on Board Oy * * AWB grey world algorithm */ #pragma once #include "libcamera/internal/vector.h" #include "libcamera/internal/yaml_parser.h" #include "awb.h" #include "interpolator.h" namespace libcamera { namespace ipa { class AwbGrey : public AwbAlgorithm { public: AwbGrey() = default; int init(const YamlObject &tuningData) override; AwbResult calculateAwb(const AwbStats &stats, int lux) override; RGB gainsFromColourTemperature(double colourTemperature) override; private: std::optional>> colourGainCurve_; }; } /* namespace ipa */ } /* namespace libcamera */