diff options
author | David Plowman <david.plowman@raspberrypi.com> | 2023-12-06 10:38:38 +0000 |
---|---|---|
committer | Kieran Bingham <kieran.bingham@ideasonboard.com> | 2024-01-09 15:39:02 +0000 |
commit | 8892d937c55ce2d62a5b0ee24c2b23b64366e73c (patch) | |
tree | 0e65ca57d1e1234565efb4f6af084d6a9927ee11 /src/ipa/rpi/controller/black_level_algorithm.h | |
parent | e71d63ce1bfa9784e18852fec264357bda5e3671 (diff) |
ipa: rpi: black_level: Add an initialValues method
This allows the IPA to discover the correct black level values even
before any frames have been processed. This is important on the PiSP
platform where the front end black level blocks must be programmed in
advance.
Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
Reviewed-by: Naushir Patuck <naush@raspberrypi.com>
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Diffstat (limited to 'src/ipa/rpi/controller/black_level_algorithm.h')
-rw-r--r-- | src/ipa/rpi/controller/black_level_algorithm.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/ipa/rpi/controller/black_level_algorithm.h b/src/ipa/rpi/controller/black_level_algorithm.h new file mode 100644 index 00000000..c2cff2f5 --- /dev/null +++ b/src/ipa/rpi/controller/black_level_algorithm.h @@ -0,0 +1,23 @@ +/* SPDX-License-Identifier: BSD-2-Clause */ +/* + * Copyright (C) 2023, Raspberry Pi Ltd + * + * black_level_algorithm.h - black level control algorithm interface + */ +#pragma once + +#include "algorithm.h" + +namespace RPiController { + +class BlackLevelAlgorithm : public Algorithm +{ +public: + BlackLevelAlgorithm(Controller *controller) + : Algorithm(controller) {} + /* A black level algorithm must provide the following: */ + virtual void initialValues(uint16_t &blackLevelR, uint16_t &blackLevelG, + uint16_t &blackLevelB) = 0; +}; + +} /* namespace RPiController */ |