/* SPDX-License-Identifier: BSD-2-Clause */ /* * Copyright (C) 2022, Raspberry Pi (Trading) Limited * Copyright (C) 2022, Theobroma Systems * * af_algorithm.cpp - Autofocus control algorithm interface */ #include "af_algorithm.h" /** * \file af_algorithm.h * \brief AF algorithm common interface */ namespace libcamera::ipa::common::algorithms { /** * \class AfAlgorithm * \brief Common interface for auto-focus algorithms * \tparam Module The IPA module type for this class of algorithms * * The AfAlgorithm class defines a standard interface for IPA auto focus * algorithms. */ /** * \fn AfAlgorithm::setMode() * \brief Set auto focus mode * \param[in] mode AF mode */ /** * \fn AfAlgorithm::setRange() * \brief set the range of focus distances that is scanned * \param[in] range AF range */ /** * \fn AfAlgorithm::setSpeed() * \brief Set how fast algorithm should move the lens * \param[in] speed Lens move speed */ /** * \fn AfAlgorithm::setMetering() * \brief Set AF metering mode * \param[in] metering AF metering mode */ /** * \fn AfAlgorithm::setWindows() * \brief Set AF windows * \param[in] windows AF windows * * Sets the focus windows used by the AF algorithm when AfMetering is set * to AfMeteringWindows. */ /** * \fn AfAlgorithm::setTrigger() * \brief Starts or cancels the autofocus scan * \param[in] trigger Trigger mode */ /** * \fn AfAlgorithm::setPause() * \brief Pause the autofocus while in AfModeContinuous mode. * \param[in] pause Pause mode */ /** * \fn AfAlgorithm::setLensPosition() * \brief Set the lens position while in AfModeManual * \param[in] lensPosition Lens position */ } /* namespace libcamera::ipa::common::algorithms */