IDS peak AFL v2.1.0
Loading...
Searching...
No Matches
peak_afl.h File Reference

C API interface for automatic camera feature control. More...

#include <peak_ipl/backend/peak_ipl_backend.h>
#include <peak/backend/peak_backend.h>
#include <stddef.h>
#include <stdint.h>

Go to the source code of this file.

Data Structures

struct  peak_afl_process_data
 Generic process data structure. More...
struct  peak_afl_process_data_brightness
 Brightness controller process data. More...
struct  peak_afl_process_data_whitebalance
 White balance controller process data. More...
struct  peak_afl_process_data_focus
 Focus controller process data. More...
struct  peak_afl_size
 2D size structure More...
struct  peak_afl_position
 2D position structure More...
struct  peak_afl_rectangle
 2D rectangle structure More...
struct  peak_afl_weighted_rectangle
 Weighted region of interest for focus control. More...
struct  peak_afl_controller_limit
 Controller parameter limit range. More...
struct  peak_afl_double_limit
 Floating-point parameter limit range. More...

Macros

#define PEAK_AFL_TRUE
 Boolean true value.
#define PEAK_AFL_FALSE
 Boolean false value.

Typedefs

typedef void * peak_afl_controller_handle
 Opaque handle for auto feature controllers.
typedef void * peak_afl_manager_handle
 Opaque handle for auto feature managers.
typedef void(PEAK_AFL_CALLCONV * PEAK_AFL_CALLBACK_FINISHED_FUNC) (void *context)
 Callback function type definition for PEAK_AFL_CONTROLLER_CALLBACK_FINISHED.
typedef void(PEAK_AFL_CALLCONV * PEAK_AFL_CALLBACK_PROCESSING_FUNC) (peak_afl_process_data *data, void *context)
 Callback function type definition for PEAK_AFL_CONTROLLER_CALLBACK_PROCESSING.
typedef uint8_t peak_afl_BOOL8
 Custom 8-bit boolean type.

Enumerations

enum  peak_afl_status {
  PEAK_AFL_STATUS_SUCCESS , PEAK_AFL_STATUS_ERROR , PEAK_AFL_STATUS_NOT_INITIALIZED , PEAK_AFL_STATUS_INVALID_PARAMETER ,
  PEAK_AFL_STATUS_ACCESS_DENIED , PEAK_AFL_STATUS_BUSY , PEAK_AFL_STATUS_BUFFER_TOO_SMALL , PEAK_AFL_STATUS_INVALID_IMAGE_FORMAT ,
  PEAK_AFL_STATUS_NOT_SUPPORTED , PEAK_AFL_STATUS_VALUE_ADJUSTED
}
 Auto feature library status codes. More...
enum  peak_afl_controllerType { PEAK_AFL_CONTROLLER_TYPE_INVALID , PEAK_AFL_CONTROLLER_TYPE_BRIGHTNESS , PEAK_AFL_CONTROLLER_TYPE_WHITE_BALANCE , PEAK_AFL_CONTROLLER_TYPE_AUTOFOCUS }
 Auto feature controller types. More...
enum  peak_afl_controller_automode { PEAK_AFL_CONTROLLER_AUTOMODE_OFF , PEAK_AFL_CONTROLLER_AUTOMODE_CONTINUOUS , PEAK_AFL_CONTROLLER_AUTOMODE_ONCE }
 Auto feature controller operation modes. More...
enum  peak_afl_controller_status {
  PEAK_AFL_CONTROLLER_STATUS_UNDEFINED , PEAK_AFL_CONTROLLER_STATUS_OFF , PEAK_AFL_CONTROLLER_STATUS_IN_PROGRESS , PEAK_AFL_CONTROLLER_STATUS_FINISHED ,
  PEAK_AFL_CONTROLLER_STATUS_BUSY , PEAK_AFL_CONTROLLER_STATUS_CANCELED , PEAK_AFL_CONTROLLER_STATUS_ERROR , PEAK_AFL_CONTROLLER_STATUS_SKIPPED
}
 Controller operational status. More...
enum  peak_afl_controller_algorithm {
  PEAK_AFL_CONTROLLER_ALGORITHM_AUTO , PEAK_AFL_CONTROLLER_ALGORITHM_GOLDEN_RATIO_SEARCH , PEAK_AFL_CONTROLLER_ALGORITHM_HILL_CLIMBING_SEARCH , PEAK_AFL_CONTROLLER_ALGORITHM_GLOBAL_SEARCH ,
  PEAK_AFL_CONTROLLER_ALGORITHM_FULL_SCAN
}
 Focus search algorithms. More...
enum  peak_afl_controller_brightness_algorithm { PEAK_AFL_CONTROLLER_BRIGHTNESS_ALGORITHM_MEDIAN , PEAK_AFL_CONTROLLER_BRIGHTNESS_ALGORITHM_MEAN }
 Brightness calculation algorithms. More...
enum  peak_afl_controller_sharpness_algorithm {
  PEAK_AFL_CONTROLLER_SHARPNESS_ALGORITHM_AUTO , PEAK_AFL_CONTROLLER_SHARPNESS_ALGORITHM_TENENGRAD , PEAK_AFL_CONTROLLER_SHARPNESS_ALGORITHM_SOBEL , PEAK_AFL_CONTROLLER_SHARPNESS_ALGORITHM_MEAN_SCORE ,
  PEAK_AFL_CONTROLLER_SHARPNESS_ALGORITHM_HISTOGRAM_VARIANCE
}
 Focus sharpness calculation algorithms. More...
enum  peak_afl_controller_brightness_component {
  PEAK_AFL_CONTROLLER_BRIGHTNESS_COMPONENT_INVALID , PEAK_AFL_CONTROLLER_BRIGHTNESS_COMPONENT_EXPOSURE , PEAK_AFL_CONTROLLER_BRIGHTNESS_COMPONENT_GAIN , PEAK_AFL_CONTROLLER_BRIGHTNESS_COMPONENT_ANALOG_GAIN ,
  PEAK_AFL_CONTROLLER_BRIGHTNESS_COMPONENT_DIGITAL_GAIN , PEAK_AFL_CONTROLLER_BRIGHTNESS_COMPONENT_COMBINED_GAIN , PEAK_AFL_CONTROLLER_BRIGHTNESS_COMPONENT_HOST_GAIN
}
 Brightness control components. More...
enum  peak_afl_controller_whitebalance_component {
  PEAK_AFL_CONTROLLER_WHITEBALANCE_COMPONENT_INVALID , PEAK_AFL_CONTROLLER_WHITEBALANCE_COMPONENT_ANALOG_GAIN , PEAK_AFL_CONTROLLER_WHITEBALANCE_COMPONENT_DIGITAL_GAIN , PEAK_AFL_CONTROLLER_WHITEBALANCE_COMPONENT_COMBINED_GAIN ,
  PEAK_AFL_CONTROLLER_WHITEBALANCE_COMPONENT_HOST_GAIN
}
 White balance control components. More...
enum  peak_afl_roi_weight { PEAK_AFL_CONTROLLER_ROI_WEIGHT_WEAK , PEAK_AFL_CONTROLLER_ROI_WEIGHT_MEDIUM , PEAK_AFL_CONTROLLER_ROI_WEIGHT_STRONG }
 ROI weight values for focus control. More...
enum  peak_afl_callback_type { PEAK_AFL_CONTROLLER_CALLBACK_FINISHED , PEAK_AFL_CONTROLLER_CALLBACK_PROCESSING_DATA , PEAK_AFL_CONTROLLER_CALLBACK_PROCESSING }
 Controller callback types. More...
enum  peak_afl_roi_preset { PEAK_AFL_CONTROLLER_ROI_PRESET_CENTER }
 Predefined ROI preset configurations. More...

Functions

PEAK_AFL_API_STATUS peak_afl_Init (void)
 Init the peak_afl auto feature library.
PEAK_AFL_API_STATUS peak_afl_Exit (void)
 Exit the peak_afl auto feature library.
PEAK_AFL_API_STATUS peak_afl_GetLastError (peak_afl_status *lastErrorCode, char *lastErrorMessage, size_t *lastErrorMessageSize)
 Get the last error message.
PEAK_AFL_API_STATUS peak_afl_GetVersion (uint32_t *majorVersion, uint32_t *minorVersion, uint32_t *patchVersion, uint32_t *_)
 Query the library version.
PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_Create (peak_afl_manager_handle *handle, PEAK_NODE_MAP_HANDLE nodeMapHandle)
 Create an automanager instance.
PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_Destroy (peak_afl_manager_handle handle)
 Destroy an automanager instance.
PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_AddController (peak_afl_manager_handle handle, peak_afl_controller_handle controller)
 Add a controller to an auto manager instance.
PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_RemoveController (peak_afl_manager_handle handle, peak_afl_controller_handle controller)
 Remove a controller from an auto feature manager instance.
PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_Process (peak_afl_manager_handle handle, PEAK_IPL_IMAGE_HANDLE imageHandle)
 Process an image through the auto feature pipeline.
PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_CreateController (peak_afl_manager_handle handle, peak_afl_controller_handle *controller, peak_afl_controllerType controllerType)
 Create a controller and append it to Manager.
PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_DestroyAllController (peak_afl_manager_handle handle)
 Destroy all controllers associated with a manager.
PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_DestroyController (peak_afl_manager_handle handle, peak_afl_controller_handle controller)
 Destroy a controller from a manager.
PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_SetGainIPL (peak_afl_manager_handle handle, PEAK_IPL_GAIN_HANDLE gainHandle)
 Set the IPL Gain for image processing.
PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_SetCCM (peak_afl_manager_handle handle, float *ccm, size_t ccmSize)
 Set the Color Correction Matrix (CCM)
PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_Status (peak_afl_manager_handle handle, peak_afl_BOOL8 *running)
 Get the processing status of an auto feature manager.
PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_Controller_IsSupported (peak_afl_manager_handle handle, peak_afl_controllerType controllerType, peak_afl_BOOL8 *supported)
 Check if a controller type is supported by the manager.
PEAK_AFL_API_STATUS peak_afl_AutoController_Create (peak_afl_controller_handle *controller, peak_afl_controllerType controllerType)
 Create a new auto feature controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Destroy (peak_afl_controller_handle controller)
 Destroy a standalone controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_IsSupported (peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
 Check if skip frames feature is supported for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_Set (peak_afl_controller_handle controller, uint32_t count)
 Set number of frames to skip for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_Get (peak_afl_controller_handle controller, uint32_t *count)
 Get the current skip frames count for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_GetRange (peak_afl_controller_handle controller, uint32_t *min, uint32_t *max, uint32_t *inc)
 Get the valid range for skip frames count.
PEAK_AFL_API_STATUS peak_afl_AutoController_ROI_IsSupported (peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
 Check if region of interest (ROI) feature is supported for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_ROI_Set (peak_afl_controller_handle controller, peak_afl_rectangle roi)
 Set the region of interest for automatic feature processing.
PEAK_AFL_API_STATUS peak_afl_AutoController_ROI_Get (peak_afl_controller_handle controller, peak_afl_rectangle *roi)
 Get the current region of interest for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_ROI_Preset_IsSupported (peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
 Check if ROI preset feature is supported for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_ROI_Preset_Set (peak_afl_controller_handle controller, peak_afl_roi_preset roiPreset)
 Set a predefined region of interest preset for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Mode_IsSupported (peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
 Check if automatic mode configuration is supported for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Mode_Set (peak_afl_controller_handle controller, peak_afl_controller_automode mode)
 Set the automatic processing mode for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Mode_Get (peak_afl_controller_handle controller, peak_afl_controller_automode *mode)
 Get the current automatic processing mode for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_BrightnessAlgorithm_Set (peak_afl_controller_handle controller, peak_afl_controller_brightness_algorithm algorithm)
 Set the brightness analysis algorithm for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_BrightnessAlgorithm_Get (peak_afl_controller_handle controller, peak_afl_controller_brightness_algorithm *algorithm)
 Get the current brightness analysis algorithm for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_BrightnessAlgorithm_IsSupported (peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
 Check if brightness algorithm configuration is supported for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_BrightnessComponent_Mode_IsSupported (peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
 Check if brightness component mode configuration is supported for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_BrightnessComponent_Unit_IsSupported (peak_afl_controller_handle controller, peak_afl_controller_brightness_component unit, peak_afl_BOOL8 *supported)
 Check if a specific brightness component unit is supported for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_BrightnessComponent_Mode_Set (peak_afl_controller_handle controller, peak_afl_controller_brightness_component component, peak_afl_controller_automode mode)
 Set the automatic mode for a specific brightness component.
PEAK_AFL_API_STATUS peak_afl_AutoController_BrightnessComponent_Mode_Get (peak_afl_controller_handle controller, peak_afl_controller_brightness_component component, peak_afl_controller_automode *mode)
 Get the current automatic mode for a specific brightness component.
PEAK_AFL_API_STATUS peak_afl_AutoController_BrightnessComponent_Status (peak_afl_controller_handle controller, peak_afl_controller_brightness_component component, peak_afl_controller_status *status)
 Get the operational status for a specific brightness component.
PEAK_AFL_API_STATUS peak_afl_AutoController_BrightnessComponent_Callback_Set (peak_afl_controller_handle controller, peak_afl_controller_brightness_component component, peak_afl_callback_type type, void *funcPtr, void *context)
 Set a callback function for a specific brightness component.
PEAK_AFL_API_STATUS peak_afl_AutoController_ExposureLimit_IsSupported (peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
 Check if exposure limit configuration is supported for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_ExposureLimit_Set (peak_afl_controller_handle controller, peak_afl_double_limit limit)
 Set exposure time limits for automatic exposure control.
PEAK_AFL_API_STATUS peak_afl_AutoController_ExposureLimit_Get (peak_afl_controller_handle controller, peak_afl_double_limit *limit)
 Get the current exposure time limits for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_ExposureLimit_GetRange (peak_afl_controller_handle controller, peak_afl_double_limit *limit)
 Get autofeature exposure limit range for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Status (peak_afl_controller_handle controller, peak_afl_controller_status *status)
 Get the status for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_GetLastAutoAverage (peak_afl_controller_handle controller, uint8_t *average)
 Get the last auto average for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_GetLastAutoAverages (peak_afl_controller_handle controller, uint8_t *averageRed, uint8_t *averageGreen, uint8_t *averageBlue)
 Get the last auto average for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_AutoTarget_IsSupported (peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
 Check if auto target is supported for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_AutoTarget_Set (peak_afl_controller_handle controller, uint32_t target)
 Set the auto target for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_AutoTarget_Get (peak_afl_controller_handle controller, uint32_t *target)
 Get the currently set auto target for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_AutoTarget_GetRange (peak_afl_controller_handle controller, uint32_t *min, uint32_t *max, uint32_t *inc)
 Get the auto target range for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_AutoTolerance_IsSupported (peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
 Check if auto tolerance is supported for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_AutoTolerance_Set (peak_afl_controller_handle controller, uint32_t tolerance)
 Set the auto tolerance for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_AutoTolerance_Get (peak_afl_controller_handle controller, uint32_t *tolerance)
 Get the current auto tolerance for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_AutoTolerance_GetRange (peak_afl_controller_handle controller, uint32_t *min, uint32_t *max, uint32_t *inc)
 Get the auto tolerance range for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_AutoPercentile_IsSupported (peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
 Check if auto percentile is supported for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_AutoPercentile_Set (peak_afl_controller_handle controller, double percentile)
 Set the auto percentile for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_AutoPercentile_Get (peak_afl_controller_handle controller, double *percentile)
 Get the auto percentile for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_AutoPercentile_GetRange (peak_afl_controller_handle controller, double *min, double *max, double *inc)
 Get the auto percentile range for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Type_Get (peak_afl_controller_handle controller, peak_afl_controllerType *type)
 Get the controller type.
PEAK_AFL_API_STATUS peak_afl_AutoController_Algorithm_IsSupported (peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
 Check if setting an algorithm is supported for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Algorithm_Set (peak_afl_controller_handle controller, peak_afl_controller_algorithm algorithm)
 Set the used algorithm for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Algorithm_Get (peak_afl_controller_handle controller, peak_afl_controller_algorithm *algorithm)
 Get the used algorithm for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Algorithm_GetList (peak_afl_controller_handle controller, peak_afl_controller_algorithm *typeList, uint32_t *listSize)
 Get the list of supported algorithms for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_SharpnessAlgorithm_IsSupported (peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
 Check if setting a sharpness algorithm is supported by a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_SharpnessAlgorithm_Set (peak_afl_controller_handle controller, peak_afl_controller_sharpness_algorithm algorithm)
 Set the used sharpness algorithm for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_SharpnessAlgorithm_Get (peak_afl_controller_handle controller, peak_afl_controller_sharpness_algorithm *algorithm)
 Get the used sharpness algorithm for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_SharpnessAlgorithm_GetList (peak_afl_controller_handle controller, peak_afl_controller_sharpness_algorithm *typeList, uint32_t *listSize)
 Get the list of supported sharpness algorithms for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Callback_Set (peak_afl_controller_handle controller, peak_afl_callback_type type, void *funcPtr, void *context)
 Set a callback for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Weighted_ROI_IsSupported (peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
 Check if weighted region of interest is supported for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Weighted_ROI_Min_Size (peak_afl_controller_handle controller, peak_afl_size *size)
 Get the autofeature minimum size for the weighted region of interest for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Weighted_ROI_Set (peak_afl_controller_handle controller, const peak_afl_weighted_rectangle *weightedRoiList, uint32_t listSize)
 Set the autofeature weighted region of interest for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Weighted_ROI_Get (peak_afl_controller_handle controller, peak_afl_weighted_rectangle *weightedRoiList, uint32_t *listSize)
 Get the autofeature weighted region of interest for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Limit_IsSupported (peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
 Check if limit is supported for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Limit_Default (peak_afl_controller_handle controller, peak_afl_controller_limit *limit)
 Get the autofeature default limit.
PEAK_AFL_API_STATUS peak_afl_AutoController_Limit_Set (peak_afl_controller_handle controller, peak_afl_controller_limit limit)
 Set the autofeature limit for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Limit_Get (peak_afl_controller_handle controller, peak_afl_controller_limit *limit)
 Get the autofeature limit for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Hysteresis_IsSupported (peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
 Check if hysteresis is supported for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Hysteresis_Default (peak_afl_controller_handle controller, uint8_t *hysteresis)
 Get the autofeature hysteresis default.
PEAK_AFL_API_STATUS peak_afl_AutoController_Hysteresis_Set (peak_afl_controller_handle controller, uint8_t hysteresis)
 Set the autofeature hysteresis for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Hysteresis_Get (peak_afl_controller_handle controller, uint8_t *hysteresis)
 Get the autofeature hysteresis for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Hysteresis_GetRange (peak_afl_controller_handle controller, uint8_t *min, uint8_t *max, uint8_t *inc)
 Get autofeature hysteresis range for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_GainLimit_IsSupported (peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
 Check if gain limit is supported for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_GainLimit_Set (peak_afl_controller_handle controller, peak_afl_double_limit limit)
 Set autofeature gain limit for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_GainLimit_Get (peak_afl_controller_handle controller, peak_afl_double_limit *limit)
 Get autofeature gain limit for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_GainLimit_GetRange (peak_afl_controller_handle controller, peak_afl_double_limit *limit)
 Get autofeature gain limit range for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_GainAnalogLimit_Set (peak_afl_controller_handle controller, peak_afl_double_limit limit)
 Set autofeature analog gain limit for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_GainAnalogLimit_Get (peak_afl_controller_handle controller, peak_afl_double_limit *limit)
 Get autofeature analog gain limit for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_GainAnalogLimit_GetRange (peak_afl_controller_handle controller, peak_afl_double_limit *limit)
 Get autofeature analog gain limit range for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_GainDigitalLimit_Set (peak_afl_controller_handle controller, peak_afl_double_limit limit)
 Set autofeature digital gain limit for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_GainDigitalLimit_Get (peak_afl_controller_handle controller, peak_afl_double_limit *limit)
 Get autofeature digital gain limit for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_GainDigitalLimit_GetRange (peak_afl_controller_handle controller, peak_afl_double_limit *limit)
 Get autofeature digital gain limit range for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_GainCombinedLimit_Set (peak_afl_controller_handle controller, peak_afl_double_limit limit)
 Set autofeature combined gain limit for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_GainCombinedLimit_Get (peak_afl_controller_handle controller, peak_afl_double_limit *limit)
 Get autofeature combined gain limit for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_GainCombinedLimit_GetRange (peak_afl_controller_handle controller, peak_afl_double_limit *limit)
 Get autofeature combined gain limit range for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_GainHostLimit_Set (peak_afl_controller_handle controller, peak_afl_double_limit limit)
 Set autofeature host gain limit for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_GainHostLimit_Get (peak_afl_controller_handle controller, peak_afl_double_limit *limit)
 Get autofeature host gain limit for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_GainHostLimit_GetRange (peak_afl_controller_handle controller, peak_afl_double_limit *limit)
 Get autofeature host gain limit range for a controller.

Detailed Description

C API interface for automatic camera feature control.

This header provides the complete C API for the auto feature library, enabling automatic control of camera parameters such as brightness, focus, and white balance.

Since
1.0
See also
peak_afl.hpp for C++ API

Typedef Documentation

◆ peak_afl_controller_handle

Opaque handle for auto feature controllers.

This handle represents an instance of an automatic feature controller (brightness, focus, or white balance). Controllers are created through manager instances and should be treated as opaque pointers.

Warning
Never cast or manipulate this handle directly
See also
peak_afl_AutoFeatureManager_AddController()

◆ peak_afl_manager_handle

typedef void* peak_afl_manager_handle

Opaque handle for auto feature managers.

This handle represents an instance of an automatic feature manager that coordinates multiple controllers and processes images. Managers maintain the processing pipeline and handle communication with camera devices.

Warning
Never cast or manipulate this handle directly
See also
peak_afl_AutoFeatureManager_Create()