/* SPDX-License-Identifier: BSD-2-Clause */ /* * Copyright (C) 2021, Raspberry Pi Ltd * * Denoise control algorithm interface */ #pragma once #include <string> #include "algorithm.h" namespace RPiController { enum class DenoiseMode { Off, ColourOff, ColourFast, ColourHighQuality }; class DenoiseAlgorithm : public Algorithm { public: DenoiseAlgorithm(Controller *controller) : Algorithm(controller) {} /* A Denoise algorithm must provide the following: */ virtual void setMode(DenoiseMode mode) = 0; /* Some platforms may not be able to define this, so supply a default. */ virtual void setConfig([[maybe_unused]] std::string const &name) {} }; } /* namespace RPiController */