![]() |
IDS peak AFL v2.0.1
|
Sharpness algorithm feature implementation for auto focus controllers. More...
#include <peak_afl/pipeline/modules/controllers/features/peak_afl_sharpness_algorithm.hpp>
Public Member Functions | |
| SharpnessAlgorithm (std::shared_ptr< peak::afl::Controller > controller) | |
| Constructs a SharpnessAlgorithm feature with the specified controller. | |
| void | Set (const FocusSharpnessAlgorithm &value) override |
| Sets the focus sharpness algorithm. | |
| FocusSharpnessAlgorithm | Get () const override |
| Gets the current focus sharpness algorithm. | |
| std::vector< FocusSharpnessAlgorithm > | GetList () const override |
| Gets the list of supported focus sharpness algorithms. | |
| void | Serialize (peak::common::serialization::IArchive &archive) const override |
| Serializes the current sharpness algorithm to an archive. | |
| void | Deserialize (const peak::common::serialization::IArchive &archive) override |
| Deserializes the sharpness algorithm from an archive. | |
| Public Member Functions inherited from IFeature< FocusSharpnessAlgorithm > | |
| virtual | ~IFeature ()=default |
| Virtual destructor for proper cleanup of derived classes. | |
Sharpness algorithm feature implementation for auto focus controllers.
The SharpnessAlgorithm class provides a feature interface for managing the sharpness measurement algorithm used by auto focus controllers. This feature controls how the automatic focus system measures image sharpness to determine the optimal focus position.
Different algorithms provide different characteristics:
This class inherits from IListFeature<FocusSharpnessAlgorithm> and provides both current algorithm management and a list of supported algorithms.
|
inlineexplicit |
Constructs a SharpnessAlgorithm feature with the specified controller.
| [in] | controller | Shared pointer to the auto focus controller that will be used to manage the sharpness algorithm parameter. The controller must support sharpness algorithm operations. |
|
inlineoverridevirtual |
Deserializes the sharpness algorithm from an archive.
Loads the focus sharpness algorithm from the provided archive and applies it to the controller. The algorithm is expected to be stored with the key "SharpnessAlgorithm".
| [in] | archive | The archive to read the sharpness 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 focus sharpness algorithm.
Retrieves the currently configured algorithm that the automatic focus system is using to measure image sharpness.
| May | throw exceptions based on the underlying controller implementation if the controller is in an invalid state. |
Implements IFeature< FocusSharpnessAlgorithm >.
|
inlineoverridevirtual |
Gets the list of supported focus sharpness algorithms.
Retrieves a list of all focus sharpness algorithms that are supported by the current controller. This can be used to populate user interface controls or to validate algorithm selections.
| May | throw exceptions based on the underlying controller implementation if the controller is in an invalid state. |
Implements IListFeature< FocusSharpnessAlgorithm >.
|
inlineoverridevirtual |
Serializes the current sharpness algorithm to an archive.
Stores the current focus sharpness algorithm in the provided archive for configuration persistence. The algorithm is stored with the key "SharpnessAlgorithm".
| [in,out] | archive | The archive to write the sharpness algorithm to |
| May | throw serialization exceptions if the archive operation fails |
Implements ISerializable.
|
inlineoverridevirtual |
Sets the focus sharpness algorithm.
Sets the algorithm that the automatic focus system will use to measure image sharpness. Different algorithms provide different characteristics for detecting optimal focus in various scene conditions.
| [in] | value | The focus sharpness algorithm to set. Must be one of the algorithms supported by the controller (see GetList()). |
| 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< FocusSharpnessAlgorithm >.