![]() |
IDS peak AFL v2.0.1
|
Advanced automatic white balance controller with comprehensive feature set. More...
#include <peak_afl/pipeline/modules/controllers/peak_afl_advanced_auto_white_balance.hpp>
Public Member Functions | |
| AdvancedAutoWhiteBalance (peak::afl::Manager &manager, ProcessingCallback callback) | |
| Constructs an AdvancedAutoWhiteBalance instance. | |
| ~AdvancedAutoWhiteBalance () override=default | |
| Destructor. | |
| std::string | GetName () const override |
| Gets the controller name. | |
| void | Serialize (peak::common::serialization::IArchive &archive) const override |
| Serializes the controller configuration to an archive. | |
| void | Deserialize (const peak::common::serialization::IArchive &archive) override |
| Deserializes the controller configuration from an archive. | |
| void | SetMode (ControllerMode mode) override |
| Sets the controller operation mode. | |
| ControllerMode | GetMode () const override |
| Gets the current controller operation mode. | |
| bool | IsRunning () const override |
| Checks if the controller is currently running. | |
| void | ResetToDefault () override |
| Resets the controller to its default configuration. | |
| features::SkipFrames & | SkipFrames () const |
| Gets the skip frames feature controller. | |
| features::Roi & | Roi () const |
| Gets the region of interest (ROI) feature controller. | |
| ControllerType | GetType () const override |
| Gets the controller type identifier. | |
| IController::FinishedCallbackHandle | RegisterFinishedCallback (const IController::FinishedCallback &callback) |
| Registers a callback for processing completion notifications. | |
| void | UnregisterFinishedCallback (IController::FinishedCallbackHandle callbackHandle) |
| Unregisters a previously registered callback. | |
| Public Member Functions inherited from IController | |
| virtual | ~IController ()=default |
| Virtual destructor for proper cleanup of derived classes. | |
| IController (const IController &)=delete | |
| Copy constructor deleted to prevent copying. | |
| IController & | operator= (const IController &)=delete |
| Copy assignment deleted to prevent copying. | |
| IController (IController &&)=delete | |
| Move constructor deleted to prevent moving. | |
| IController & | operator= (IController &&)=delete |
| Move assignment deleted to prevent moving. | |
Additional Inherited Members | |
| Public Types inherited from IController | |
| using | FinishedCallback |
| Callback function type for operation completion notifications. | |
| using | FinishedCallbackHandle |
| Handle type for managing callback registrations. | |
| Protected Member Functions inherited from IController | |
| peak::afl::Manager & | GetManager () |
| Gets a reference to the API manager. | |
Advanced automatic white balance controller with comprehensive feature set.
The AdvancedAutoWhiteBalance class provides a sophisticated and highly configurable interface for automatic white balance control. This controller offers the complete white balance feature set with granular control over all color correction mechanisms and algorithmic options.
Advanced Features:
|
inlineexplicit |
Constructs an AdvancedAutoWhiteBalance instance.
| manager | Reference to the API manager that handles controller lifecycle |
| callback | Processing completion callback function |
Initializes the white balance controller with the specified manager and callback. The callback will be invoked when white balance processing operations complete.
|
overridedefault |
Destructor.
Default destructor that properly cleans up controller resources.
|
inlineoverridevirtual |
Deserializes the controller configuration from an archive.
| archive | Reference to the serialization archive containing configuration data |
Restores the controller configuration state from the provided archive. This allows previously saved white balance controller settings to be loaded and applied.
Implements ISerializable.
|
inlineoverridevirtual |
Gets the current controller operation mode.
Implements IController.
|
inlineoverridevirtual |
Gets the controller name.
Implements IController.
|
inlineoverridevirtual |
Gets the controller type identifier.
Implements IController.
|
inlineoverridevirtual |
Checks if the controller is currently running.
A controller is considered running when it's not in the Off mode. This indicates whether the white balance processing is currently active.
Implements IController.
|
inline |
Registers a callback for processing completion notifications.
| callback | The callback function to register |
Registers a callback function that will be invoked when white balance processing operations complete. This includes both successful white balance adjustments and processing failures. The returned handle can be used to unregister the callback later.
|
inlineoverridevirtual |
Resets the controller to its default configuration.
Restores all controller settings to their default values. This includes resetting operation mode, white balance algorithm settings, ROI configurations, and other configuration parameters to factory defaults.
Implements IController.
|
inline |
Gets the region of interest (ROI) feature controller.
The ROI feature allows limiting white balance analysis to a specific rectangular region within the image, which can improve accuracy and performance by focusing the color analysis on the most relevant area of the scene.
|
inlineoverridevirtual |
Serializes the controller configuration to an archive.
| archive | Reference to the serialization archive for writing configuration data |
Saves the current controller configuration state to the provided archive. This includes white balance algorithm settings, ROI configurations, and other controller parameters, allowing the controller settings to be persisted and restored later.
Implements ISerializable.
|
inlineoverridevirtual |
Sets the controller operation mode.
| mode | The desired controller operation mode |
Changes the controller's operation mode, which determines how the white balance processing behaves. Different modes may include automatic white balance calculation, manual override, or disabled states.
Implements IController.
|
inline |
Gets the skip frames feature controller.
The skip frames feature allows the controller to process only every Nth frame, which can improve performance when full-rate white balance processing is not required. This is particularly useful for reducing computational load in high frame rate scenarios.
|
inline |
Unregisters a previously registered callback.
| callbackHandle | Handle of the callback to unregister |
Removes a previously registered callback using its handle. After unregistration, the callback will no longer be invoked for white balance processing events.