![]() |
IDS peak AFL v2.0.0
|
Auto percentile feature implementation for auto controllers. More...
#include <peak_afl/pipeline/modules/controllers/features/peak_afl_auto_percentile.hpp>
Public Member Functions | |
| AutoPercentile (std::shared_ptr< peak::afl::Controller > controller) | |
| Constructs an AutoPercentile feature with the specified controller. | |
| void | Set (const double &value) override |
| Sets the auto percentile value. | |
| double | Get () const override |
| Gets the current auto percentile value. | |
| RangeD | GetRange () const override |
| Gets the valid range for auto percentile values. | |
| void | Serialize (peak::common::serialization::IArchive &archive) const override |
| Serializes the current auto percentile value to an archive. | |
| void | Deserialize (const peak::common::serialization::IArchive &archive) override |
| Deserializes the auto percentile value from an archive. | |
| Public Member Functions inherited from IFeature< double > | |
| virtual | ~IFeature ()=default |
| Virtual destructor for proper cleanup of derived classes. | |
Auto percentile feature implementation for auto controllers.
The AutoPercentile class provides a feature interface for managing the auto percentile parameter of auto controllers. This feature controls the percentile value used in automatic exposure and brightness calculations, determining which portion of the histogram is considered for the automatic adjustments.
The percentile value typically ranges from 0.0 to 100.0, where:
This class inherits from IRangeFeature<double> and provides serialization support for configuration persistence.
|
inlineexplicit |
Constructs an AutoPercentile feature with the specified controller.
| [in] | controller | Shared pointer to the auto controller that will be used to manage the auto percentile parameter. The controller must support auto percentile operations. |
|
inlineoverridevirtual |
Deserializes the auto percentile value from an archive.
Loads the auto percentile value from the provided archive and applies it to the controller. The value is expected to be stored with the key "AutoPercentile".
| [in] | archive | The archive to read the auto percentile value from |
| May | throw serialization exceptions if the archive operation fails |
| May | throw controller exceptions if the deserialized value is invalid |
Implements ISerializable.
|
inlineoverridevirtual |
Gets the current auto percentile value.
Retrieves the currently configured percentile value used for automatic exposure and brightness calculations.
| May | throw exceptions based on the underlying controller implementation if the controller is in an invalid state. |
Implements IFeature< double >.
|
inlineoverridevirtual |
Gets the valid range for auto percentile values.
Retrieves the minimum, maximum, and increment values that are valid for the auto percentile parameter. This information can be used to validate input values or to populate user interface controls.
| May | throw exceptions based on the underlying controller implementation if the controller is in an invalid state. |
Implements IRangeFeature< double >.
|
inlineoverridevirtual |
Serializes the current auto percentile value to an archive.
Stores the current auto percentile value in the provided archive for configuration persistence. The value is stored with the key "AutoPercentile".
| [in,out] | archive | The archive to write the auto percentile value to |
| May | throw serialization exceptions if the archive operation fails |
Implements ISerializable.
|
inlineoverridevirtual |
Sets the auto percentile value.
Sets the percentile value used for automatic exposure and brightness calculations. The percentile determines which portion of the image histogram is considered when calculating automatic adjustments.
| [in] | value | The percentile value to set. Typically ranges from 0.0 to 100.0. The exact valid range can be obtained using GetRange(). |
| May | throw exceptions based on the underlying controller implementation if the value is outside the valid range or if the controller is in an invalid state. |
Implements IFeature< double >.