![]() |
IDS peak AFL v2.0.0
|
Abstract base interface for all automatic controllers. More...
#include <peak_afl/pipeline/modules/controllers/detail/peak_afl_icontroller.hpp>
Public Types | |
| using | FinishedCallback |
| Callback function type for operation completion notifications. | |
| using | FinishedCallbackHandle |
| Handle type for managing callback registrations. | |
Public Member Functions | |
| 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. | |
| virtual std::string | GetName () const =0 |
| Gets the unique name of this controller. | |
| virtual ControllerType | GetType () const =0 |
| Gets the type of this controller. | |
| virtual void | SetMode (ControllerMode mode)=0 |
| Sets the operational mode for this controller. | |
| virtual ControllerMode | GetMode () const =0 |
| Gets the current operational mode of this controller. | |
| virtual bool | IsRunning () const =0 |
| Checks if the controller is currently running. | |
| virtual void | ResetToDefault ()=0 |
| Resets the controller to its default configuration. | |
| Public Member Functions inherited from ISerializable | |
| virtual void | Serialize (IArchive &archive) const =0 |
| Serializes the current object into the provided archive. | |
| virtual void | Deserialize (const IArchive &archive)=0 |
| Deserializes the object's state from the provided archive. | |
Protected Member Functions | |
| peak::afl::Manager & | GetManager () |
| Gets a reference to the API manager. | |
Abstract base interface for all automatic controllers.
The IController class defines the fundamental interface that all automatic controllers must implement. This interface provides the common functionality required for controller management, mode control, and integration with the auto feature pipeline system.
Core Responsibilities:
| using FinishedCallback |
Callback function type for operation completion notifications.
| using FinishedCallbackHandle |
Handle type for managing callback registrations.
|
virtualdefault |
Virtual destructor for proper cleanup of derived classes.
|
delete |
Copy constructor deleted to prevent copying.
|
delete |
Move constructor deleted to prevent moving.
|
inlineprotected |
Gets a reference to the API manager.
Provides derived classes with access to the API manager for camera communication and system coordination.
|
pure virtual |
Gets the current operational mode of this controller.
Returns the currently configured operational mode that determines when and how the automatic algorithms are executed.
Implemented in AdvancedAutoBrightness, AdvancedAutoFocus, AdvancedAutoWhiteBalance, BasicAutoBrightness, BasicAutoFocus, and BasicAutoWhiteBalance.
|
pure virtual |
Gets the unique name of this controller.
Returns a human-readable name that uniquely identifies this controller instance. This name is used for logging, debugging, and user interface display purposes.
Implemented in AdvancedAutoBrightness, AdvancedAutoFocus, and AdvancedAutoWhiteBalance.
|
pure virtual |
Gets the type of this controller.
Returns the controller type enumeration that identifies what kind of automatic functionality this controller provides (Focus, Brightness, or WhiteBalance).
Implemented in AdvancedAutoBrightness, AdvancedAutoFocus, and AdvancedAutoWhiteBalance.
|
pure virtual |
Checks if the controller is currently running.
Returns true if the controller is actively processing or executing automatic algorithms, false if it is idle or disabled.
Implemented in AdvancedAutoBrightness, AdvancedAutoFocus, AdvancedAutoWhiteBalance, BasicAutoBrightness, BasicAutoFocus, and BasicAutoWhiteBalance.
|
delete |
Copy assignment deleted to prevent copying.
|
delete |
Move assignment deleted to prevent moving.
|
pure virtual |
Resets the controller to its default configuration.
Restores all controller parameters, features, and settings to their default values. This provides a clean state for reconfiguration.
| Implementation-specific | exceptions may be thrown if the reset operation fails or if the controller is in an invalid state |
Implemented in AdvancedAutoBrightness, AdvancedAutoFocus, AdvancedAutoWhiteBalance, BasicAutoBrightness, BasicAutoFocus, and BasicAutoWhiteBalance.
|
pure virtual |
Sets the operational mode for this controller.
Configures how the controller operates: Off (disabled), Continuous (automatic processing on every frame), or Once (single operation).
| [in] | mode | The operational mode to set |
| Implementation-specific | exceptions may be thrown if the mode cannot be set or if the controller is in an invalid state |
Implemented in AdvancedAutoBrightness, AdvancedAutoFocus, AdvancedAutoWhiteBalance, BasicAutoBrightness, BasicAutoFocus, and BasicAutoWhiteBalance.