![]() |
IDS peak AFL v2.0.1
|
Brightness algorithm feature implementation for auto controllers. More...
#include <peak_afl/pipeline/modules/controllers/features/peak_afl_brightness_algorithm.hpp>
Public Member Functions | |
| BrightnessAlgorithm (std::shared_ptr< peak::afl::Controller > controller) | |
| Constructs a BrightnessAlgorithm feature with the specified controller. | |
| void | Set (const BrightnessAnalysisAlgorithm &value) override |
| Sets the brightness analysis algorithm. | |
| BrightnessAnalysisAlgorithm | Get () const override |
| Gets the current brightness analysis algorithm. | |
| void | Serialize (peak::common::serialization::IArchive &archive) const override |
| Serializes the current brightness algorithm to an archive. | |
| void | Deserialize (const peak::common::serialization::IArchive &archive) override |
| Deserializes the brightness algorithm from an archive. | |
| Public Member Functions inherited from IFeature< BrightnessAnalysisAlgorithm > | |
| virtual | ~IFeature ()=default |
| Virtual destructor for proper cleanup of derived classes. | |
Brightness algorithm feature implementation for auto controllers.
The BrightnessAlgorithm class provides a feature interface for managing the brightness analysis algorithm used by auto controllers. This feature controls how the automatic exposure and brightness systems calculate the representative brightness value from the image data.
Different algorithms provide different characteristics:
This class inherits from IFeature<BrightnessAnalysisAlgorithm> and provides serialization support for configuration persistence.
|
inlineexplicit |
Constructs a BrightnessAlgorithm feature with the specified controller.
| [in] | controller | Shared pointer to the auto controller that will be used to manage the brightness algorithm parameter. The controller must support brightness algorithm operations. |
|
inlineoverridevirtual |
Deserializes the brightness algorithm from an archive.
Loads the brightness analysis algorithm from the provided archive and applies it to the controller. The algorithm is expected to be stored with the key "BrightnessAlgorithm".
| [in] | archive | The archive to read the brightness algorithm from |
| May | throw serialization exceptions if the archive operation fails |
| May | throw controller exceptions if the deserialized algorithm is invalid |
Implements ISerializable.
|
inlineoverridevirtual |
Gets the current brightness analysis algorithm.
Retrieves the currently configured algorithm used for brightness analysis in automatic exposure and brightness control.
| May | throw exceptions based on the underlying controller implementation if the controller is in an invalid state. |
Implements IFeature< BrightnessAnalysisAlgorithm >.
|
inlineoverridevirtual |
Serializes the current brightness algorithm to an archive.
Stores the current brightness analysis algorithm in the provided archive for configuration persistence. The algorithm is stored with the key "BrightnessAlgorithm".
| [in,out] | archive | The archive to write the brightness algorithm to |
| May | throw serialization exceptions if the archive operation fails |
Implements ISerializable.
|
inlineoverridevirtual |
Sets the brightness analysis algorithm.
Sets the algorithm used for analyzing brightness in automatic exposure and brightness control. Different algorithms provide different characteristics in terms of robustness, speed, and sensitivity to outliers.
| [in] | value | The brightness analysis algorithm to set. Must be one of the values from BrightnessAnalysisAlgorithm enumeration. |
| May | throw exceptions based on the underlying controller implementation if the algorithm is not supported or if the controller is in an invalid state. |
Implements IFeature< BrightnessAnalysisAlgorithm >.