libcamera/src/ipa/raspberrypi/controller/algorithm.cpp
David Plowman ff291b3c15 libcamera: ipa: raspberrypi: Allow SwitchMode method to return camera settings
This commit adds a Metadata parameter to the SwitchMode method
enabling it to return camera and other settings to the caller
(usually the configure method, just after the camera mode has been
selected).

In future this will allow the Raspberry Pi IPAs to take those settings
(such as exposure and analogue gain) and program them directly into
the camera or ISP before the camera is even started.

Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2020-06-22 07:03:25 +03:00

48 lines
966 B
C++

/* SPDX-License-Identifier: BSD-2-Clause */
/*
* Copyright (C) 2019, Raspberry Pi (Trading) Limited
*
* algorithm.cpp - ISP control algorithms
*/
#include "algorithm.hpp"
using namespace RPi;
void Algorithm::Read(boost::property_tree::ptree const &params)
{
(void)params;
}
void Algorithm::Initialise() {}
void Algorithm::SwitchMode(CameraMode const &camera_mode, Metadata *metadata)
{
(void)camera_mode;
(void)metadata;
}
void Algorithm::Prepare(Metadata *image_metadata)
{
(void)image_metadata;
}
void Algorithm::Process(StatisticsPtr &stats, Metadata *image_metadata)
{
(void)stats;
(void)image_metadata;
}
// For registering algorithms with the system:
static std::map<std::string, AlgoCreateFunc> algorithms;
std::map<std::string, AlgoCreateFunc> const &RPi::GetAlgorithms()
{
return algorithms;
}
RegisterAlgorithm::RegisterAlgorithm(char const *name,
AlgoCreateFunc create_func)
{
algorithms[std::string(name)] = create_func;
}