86 return "WhiteBalance";
91inline std::ostream& operator<<(std::ostream& os,
ControllerType mode)
123inline std::ostream& operator<<(std::ostream& os,
ControllerMode mode)
130PEAK_COMMON_NO_DISCARD
inline ControllerMode ToControllerMode(
const std::string& mode)
136 if (mode ==
"Continuous")
144 throw peak::afl::error::InvalidParameterException(
150 switch (controllerMode)
165 switch (controllerMode)
180 switch (controllerType)
237 : m_manager{ manager }
280 PEAK_COMMON_NO_DISCARD
virtual std::string
GetName()
const = 0;
338 PEAK_COMMON_NO_DISCARD
virtual bool IsRunning()
const = 0;
Central coordination object for automatic camera feature control.
Definition peak_afl.hpp:708
The exception thrown for passing an invalid parameter to a function.
Definition peak_afl.hpp:436
Interface for objects that can be serialized to and deserialized from an archive.
Definition peak_common_iserializable.hpp:26
std::function< void()> FinishedCallback
Callback function type for operation completion notifications.
Definition peak_afl_icontroller.hpp:229
virtual ~IController()=default
Virtual destructor for proper cleanup of derived classes.
virtual std::string GetName() const =0
Gets the unique name of this controller.
peak::afl::Manager & GetManager()
Gets a reference to the API manager.
Definition peak_afl_icontroller.hpp:364
virtual bool IsRunning() const =0
Checks if the controller is currently running.
FinishedCallback * FinishedCallbackHandle
Handle type for managing callback registrations.
Definition peak_afl_icontroller.hpp:234
IController(const IController &)=delete
Copy constructor deleted to prevent copying.
virtual ControllerType GetType() const =0
Gets the type of this controller.
virtual ControllerMode GetMode() const =0
Gets the current operational mode of this controller.
IController(IController &&)=delete
Move constructor deleted to prevent moving.
virtual void SetMode(ControllerMode mode)=0
Sets the operational mode for this controller.
virtual void ResetToDefault()=0
Resets the controller to its default configuration.
IController & operator=(IController &&)=delete
Move assignment deleted to prevent moving.
IController & operator=(const IController &)=delete
Copy assignment deleted to prevent copying.
peak_afl_controllerType
Auto feature controller types.
Definition peak_afl.h:486
@ PEAK_AFL_CONTROLLER_TYPE_WHITE_BALANCE
Automatic white balance controller.
Definition peak_afl.h:515
@ PEAK_AFL_CONTROLLER_TYPE_AUTOFOCUS
Automatic focus controller.
Definition peak_afl.h:526
@ PEAK_AFL_CONTROLLER_TYPE_BRIGHTNESS
Automatic brightness exposure/gain controller.
Definition peak_afl.h:504
peak_afl_controller_automode
Auto feature controller operation modes.
Definition peak_afl.h:540
@ PEAK_AFL_CONTROLLER_AUTOMODE_CONTINUOUS
Continuous automatic adjustment.
Definition peak_afl.h:559
@ PEAK_AFL_CONTROLLER_AUTOMODE_OFF
Auto feature disabled.
Definition peak_afl.h:548
@ PEAK_AFL_CONTROLLER_AUTOMODE_ONCE
Single adjustment operation.
Definition peak_afl.h:570
@ PEAK_AFL_STATUS_INVALID_PARAMETER
Invalid parameter provided.
Definition peak_afl.h:416
ControllerMode
Controller operation mode enumeration.
Definition peak_afl_icontroller.hpp:55
ControllerType
Controller type enumeration.
Definition peak_afl_icontroller.hpp:36
std::string ToString(ControllerType mode)
Converts ControllerType enumeration to string representation.
Definition peak_afl_icontroller.hpp:74
@ Continuous
Continuous operation - automatic processing on every frame.
Definition peak_afl_icontroller.hpp:59
@ Off
Controller is disabled - no automatic processing.
Definition peak_afl_icontroller.hpp:57
@ Once
Single operation - automatic processing triggered once.
Definition peak_afl_icontroller.hpp:61
@ WhiteBalance
Automatic white balance controller - manages color correction.
Definition peak_afl_icontroller.hpp:42
@ Brightness
Automatic brightness controller - manages exposure and gain.
Definition peak_afl_icontroller.hpp:40
@ Focus
Automatic focus controller - manages lens focus positioning.
Definition peak_afl_icontroller.hpp:38
Interface definitions and implementations for individual module types used within a pipeline.
Definition peak_afl_generic_auto_brightness.hpp:35
Interfaces and implementations for defining and controlling data processing pipelines.
Definition peak_afl_generic_auto_brightness.hpp:33
C API interface for automatic camera feature control.