IDS peak AFL v1.4.0
Loading...
Searching...
No Matches
peak_afl.h
Go to the documentation of this file.
1
11#pragma once
12
13#include <peak_ipl/backend/peak_ipl_backend.h>
14#include <peak/backend/peak_backend.h>
15
16/* Function declaration modifiers */
17#if defined(_WIN32)
18# ifndef PEAK_AFL_NO_DECLSPEC_STATEMENTS
19# ifdef PEAK_AFL_EXPORTING
20# define PEAK_AFL_EXPORT __declspec(dllexport)
21# else
22# define PEAK_AFL_EXPORT __declspec(dllimport)
23# endif
24# else
25# define PEAK_AFL_EXPORT
26# endif
27# if defined(_M_IX86) || defined(__i386__)
28# define PEAK_AFL_CALLCONV __cdecl
29# else
30# define PEAK_AFL_CALLCONV
31# endif
32#else
33# define PEAK_AFL_EXPORT
34# define PEAK_AFL_CALLCONV
35#endif
36
37#ifdef __cplusplus
38# include <cstddef>
39# include <cstdint>
40
41extern "C" {
42#else
43# include <stddef.h>
44# include <stdint.h>
45#endif
46
47
52
53#define PEAK_AFL_VERSION_CODE(major, minor, subminor, patch) (((major) << 24) + ((minor) << 16) + ((subminor) << 8) + (patch))
54#define PEAK_AFL_API_STATUS PEAK_AFL_EXPORT peak_afl_status PEAK_AFL_CALLCONV
55
119
138
154
182
204
226
240
256
269
273typedef void(PEAK_AFL_CALLCONV* PEAK_AFL_CALLBACK_FINISHED_FUNC)(void* context);
274
280typedef void(PEAK_AFL_CALLCONV* PEAK_AFL_CALLBACK_PROCESSING_DATA_FUNC)(int focusValue, int sharpnessValue, void* context);
281
291
300typedef struct
301{
303 uint32_t width;
304
306 uint32_t height;
308
317typedef struct
318{
320 uint32_t x;
321
323 uint32_t y;
325
334typedef struct
335{
337 uint32_t x;
338
340 uint32_t y;
341
343 uint32_t width;
344
346 uint32_t height;
348
364
372typedef struct
373{
375 int min;
376
378 int max;
380
388typedef struct
389{
391 double min;
393 double max;
395
397typedef uint8_t peak_afl_BOOL8;
398
400#define PEAK_AFL_TRUE 1
401
403#define PEAK_AFL_FALSE 0
404
419PEAK_AFL_API_STATUS peak_afl_Init(void);
420
436PEAK_AFL_API_STATUS peak_afl_Exit(void);
437
459PEAK_AFL_API_STATUS peak_afl_GetLastError(peak_afl_status* lastErrorCode, char* lastErrorMessage, size_t* lastErrorMessageSize);
460
478PEAK_AFL_API_STATUS peak_afl_GetVersion(
479 uint32_t* majorVersion, uint32_t* minorVersion, uint32_t* subminorVersion, uint32_t* patchVersion);
480
495PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_Create(peak_afl_manager_handle* handle, PEAK_NODE_MAP_HANDLE nodeMapHandle);
496
510
529
549
566PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_Process(peak_afl_manager_handle handle, PEAK_IPL_IMAGE_HANDLE imageHandle);
567
586
601
618
632PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_SetGainIPL(peak_afl_manager_handle handle, PEAK_IPL_GAIN_HANDLE gainHandle);
633
650
664 peak_afl_controller_handle* controller, peak_afl_controllerType controllerType);
665
679
693 peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
694
710PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_Set(peak_afl_controller_handle controller, uint32_t count);
711
727PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_Get(peak_afl_controller_handle controller, uint32_t* count);
728
745 peak_afl_controller_handle controller, uint32_t* min, uint32_t* max, uint32_t* inc);
746
762
779
796
812 peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
813
830
846
863
878
894 peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
895
914
931
949
974 peak_afl_controller_brightness_component component, peak_afl_callback_type type, void* funcPtr, void* context);
975
976
992 peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
993
1008
1023
1039
1055PEAK_AFL_API_STATUS peak_afl_AutoController_GetLastAutoAverage(peak_afl_controller_handle controller, uint8_t* average);
1056
1075 peak_afl_controller_handle controller, uint8_t* averageRed, uint8_t* averageGreen, uint8_t* averageBlue);
1076
1092 peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
1093
1110PEAK_AFL_API_STATUS peak_afl_AutoController_AutoTarget_Set(peak_afl_controller_handle controller, uint32_t target);
1111
1125PEAK_AFL_API_STATUS peak_afl_AutoController_AutoTarget_Get(peak_afl_controller_handle controller, uint32_t* target);
1126
1146 peak_afl_controller_handle controller, uint32_t* min, uint32_t* max, uint32_t* inc);
1147
1163 peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
1164
1180PEAK_AFL_API_STATUS peak_afl_AutoController_AutoTolerance_Set(peak_afl_controller_handle controller, uint32_t tolerance);
1181
1195PEAK_AFL_API_STATUS peak_afl_AutoController_AutoTolerance_Get(peak_afl_controller_handle controller, uint32_t* tolerance);
1196
1216 peak_afl_controller_handle controller, uint32_t* min, uint32_t* max, uint32_t* inc);
1217
1233 peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
1234
1251PEAK_AFL_API_STATUS peak_afl_AutoController_AutoPercentile_Set(peak_afl_controller_handle controller, double percentile);
1252
1266PEAK_AFL_API_STATUS peak_afl_AutoController_AutoPercentile_Get(peak_afl_controller_handle controller, double* percentile);
1267
1287 peak_afl_controller_handle controller, double* min, double* max, double* inc);
1288
1304
1322 peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
1323
1341
1357
1382 peak_afl_controller_handle controller, peak_afl_controller_algorithm* typeList, uint32_t* listSize);
1383
1401 peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
1402
1420
1436
1460 peak_afl_controller_handle controller, peak_afl_controller_sharpness_algorithm* typeList, uint32_t* listSize);
1461
1485 peak_afl_controller_handle controller, peak_afl_callback_type type, void* funcPtr, void* context);
1486
1502 peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
1503
1518
1536 peak_afl_controller_handle controller, const peak_afl_weighted_rectangle* weightedRoiList, uint32_t listSize);
1537
1563 peak_afl_controller_handle controller, peak_afl_weighted_rectangle* weightedRoiList, uint32_t* listSize);
1564
1580
1596
1613
1628
1644 peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
1645
1659PEAK_AFL_API_STATUS peak_afl_AutoController_Hysteresis_Default(peak_afl_controller_handle controller, uint8_t* hysteresis);
1660
1676PEAK_AFL_API_STATUS peak_afl_AutoController_Hysteresis_Set(peak_afl_controller_handle controller, uint8_t hysteresis);
1677
1691PEAK_AFL_API_STATUS peak_afl_AutoController_Hysteresis_Get(peak_afl_controller_handle controller, uint8_t* hysteresis);
1692
1709 peak_afl_controller_handle controller, uint8_t* min, uint8_t* max, uint8_t* inc);
1710
1726 peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
1727
1750
1765
1780
1781#ifdef __cplusplus
1782} // extern "C"
1783#endif // __cplusplus
PEAK_AFL_API_STATUS peak_afl_AutoController_ExposureLimit_IsSupported(peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
Check if exposure limit is supported 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_Limit_Default(peak_afl_controller_handle controller, peak_afl_controller_limit *limit)
Get the autofeature default limit.
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_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 for a controller component.
PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_GetRange(peak_afl_controller_handle controller, uint32_t *min, uint32_t *max, uint32_t *inc)
Get range for frames skipped 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_Mode_Get(peak_afl_controller_handle controller, peak_afl_controller_automode *mode)
Get the current autofeature mode for a controller.
peak_afl_callback_type
controller callback type
Definition peak_afl.h:262
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_controllerType
controller types
Definition peak_afl.h:125
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 status for a controller component.
peak_afl_controller_brightness_component
controller brightness component
Definition peak_afl.h:232
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_BrightnessComponent_Mode_Get(peak_afl_controller_handle controller, peak_afl_controller_brightness_component component, peak_afl_controller_automode *mode)
Get the current brightness component mode for a controller.
peak_afl_controller_automode
controller automode
Definition peak_afl.h:144
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_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_Status(peak_afl_controller_handle controller, peak_afl_controller_status *status)
Get the status for a controller.
peak_afl_roi_preset
controller roi preset
Definition peak_afl.h:287
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_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_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_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_SkipFrames_Set(peak_afl_controller_handle controller, uint32_t count)
Set number of frames skipped for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_Get(peak_afl_controller_handle controller, uint32_t *count)
Get number of frames skipped 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_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_ROI_Preset_Set(peak_afl_controller_handle controller, peak_afl_roi_preset roiPreset)
Set the autofeature region of interest preset for a controller.
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_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_Mode_IsSupported(peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
Check if auto mode is supported for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_IsSupported(peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
Check if skip frames 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 autofeature mode for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_ROI_Get(peak_afl_controller_handle controller, peak_afl_rectangle *roi)
Get the autofeature region of interest for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_ExposureLimit_Set(peak_afl_controller_handle controller, peak_afl_double_limit limit)
Set autofeature exposure limit 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_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_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_ROI_Preset_IsSupported(peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
Check if ROI preset is supported for a controller.
peak_afl_controller_status
controller status
Definition peak_afl.h:160
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_ExposureLimit_Get(peak_afl_controller_handle controller, peak_afl_double_limit *limit)
Get autofeature exposure limit for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_Create(peak_afl_controller_handle *controller, peak_afl_controllerType controllerType)
Create a new 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 autofeature mode for a brightness component.
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_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_IsSupported(peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
Check if weighted region of interest is supported for a controller.
peak_afl_controller_algorithm
controller algorithm
Definition peak_afl.h:188
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_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_Limit_IsSupported(peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
Check if limit is supported for a controller.
peak_afl_controller_sharpness_algorithm
controller sharpness algorithm (focus)
Definition peak_afl.h:210
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_Set(peak_afl_controller_handle controller, uint32_t target)
Set the auto target for a controller.
PEAK_AFL_API_STATUS peak_afl_AutoController_ROI_Set(peak_afl_controller_handle controller, peak_afl_rectangle roi)
Set the autofeature region of interest 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_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_Destroy(peak_afl_controller_handle controller)
Destroy a controller. Will fail if it is queued inside a manager.
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_roi_weight
controller roi weight (focus)
Definition peak_afl.h:246
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_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_AutoPercentile_Get(peak_afl_controller_handle controller, double *percentile)
Get the auto percentile 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_ROI_IsSupported(peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
Check if setting a region of interest 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 is supported for a controller component.
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_SharpnessAlgorithm_IsSupported(peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
check setting a sharpness algorithm is supported by a controller.
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_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_Get(peak_afl_controller_handle controller, peak_afl_double_limit *limit)
Get autofeature gain limit for a controller.
@ PEAK_AFL_CONTROLLER_CALLBACK_FINISHED
Controller callback type finished.
Definition peak_afl.h:264
@ PEAK_AFL_CONTROLLER_CALLBACK_PROCESSING_DATA
Controller callback type processing data.
Definition peak_afl.h:267
@ PEAK_AFL_CONTROLLER_TYPE_INVALID
Invalid controller.
Definition peak_afl.h:127
@ PEAK_AFL_CONTROLLER_TYPE_WHITE_BALANCE
White balance controller.
Definition peak_afl.h:133
@ PEAK_AFL_CONTROLLER_TYPE_AUTOFOCUS
Autofocus Controller.
Definition peak_afl.h:136
@ PEAK_AFL_CONTROLLER_TYPE_BRIGHTNESS
Exposure controller.
Definition peak_afl.h:130
@ PEAK_AFL_CONTROLLER_BRIGHTNESS_COMPONENT_GAIN
gain
Definition peak_afl.h:237
@ PEAK_AFL_CONTROLLER_BRIGHTNESS_COMPONENT_EXPOSURE
exposure
Definition peak_afl.h:234
@ PEAK_AFL_CONTROLLER_AUTOMODE_CONTINUOUS
Automode continuous.
Definition peak_afl.h:149
@ PEAK_AFL_CONTROLLER_AUTOMODE_OFF
Automode off.
Definition peak_afl.h:146
@ PEAK_AFL_CONTROLLER_AUTOMODE_ONCE
Automode once.
Definition peak_afl.h:152
@ PEAK_AFL_CONTROLLER_ROI_PRESET_CENTER
controller roi preset center
Definition peak_afl.h:289
@ PEAK_AFL_CONTROLLER_STATUS_OFF
Controller status off.
Definition peak_afl.h:165
@ PEAK_AFL_CONTROLLER_STATUS_ERROR
Controller status error.
Definition peak_afl.h:180
@ PEAK_AFL_CONTROLLER_STATUS_UNDEFINED
Controller status undefined.
Definition peak_afl.h:162
@ PEAK_AFL_CONTROLLER_STATUS_FINISHED
Controller status finished.
Definition peak_afl.h:171
@ PEAK_AFL_CONTROLLER_STATUS_BUSY
Controller status busy.
Definition peak_afl.h:174
@ PEAK_AFL_CONTROLLER_STATUS_IN_PROGRESS
Controller status in progress.
Definition peak_afl.h:168
@ PEAK_AFL_CONTROLLER_STATUS_CANCELED
Controller status canceled.
Definition peak_afl.h:177
@ PEAK_AFL_CONTROLLER_ALGORITHM_GOLDEN_RATIO_SEARCH
Controller algorithm golden ratio search.
Definition peak_afl.h:193
@ PEAK_AFL_CONTROLLER_ALGORITHM_HILL_CLIMBING_SEARCH
Controller algorithm hill climbing search.
Definition peak_afl.h:196
@ PEAK_AFL_CONTROLLER_ALGORITHM_FULL_SCAN
Controller algorithm full scan.
Definition peak_afl.h:202
@ PEAK_AFL_CONTROLLER_ALGORITHM_AUTO
Controller algorithm auto.
Definition peak_afl.h:190
@ PEAK_AFL_CONTROLLER_ALGORITHM_GLOBAL_SEARCH
Controller algorithm global search.
Definition peak_afl.h:199
@ PEAK_AFL_CONTROLLER_SHARPNESS_ALGORITHM_MEAN_SCORE
Controller sharpness algorithm mean score.
Definition peak_afl.h:221
@ PEAK_AFL_CONTROLLER_SHARPNESS_ALGORITHM_SOBEL
Controller sharpness algorithm sobel.
Definition peak_afl.h:218
@ PEAK_AFL_CONTROLLER_SHARPNESS_ALGORITHM_AUTO
Controller sharpness algorithm auto.
Definition peak_afl.h:212
@ PEAK_AFL_CONTROLLER_SHARPNESS_ALGORITHM_HISTOGRAM_VARIANCE
Controller sharpness algorithm histogram variance.
Definition peak_afl.h:224
@ PEAK_AFL_CONTROLLER_SHARPNESS_ALGORITHM_TENENGRAD
Controller sharpness algorithm tenengrad.
Definition peak_afl.h:215
@ PEAK_AFL_CONTROLLER_ROI_WEIGHT_WEAK
Controller roi weight weak.
Definition peak_afl.h:248
@ PEAK_AFL_CONTROLLER_ROI_WEIGHT_STRONG
Controller roi weight strong.
Definition peak_afl.h:254
@ PEAK_AFL_CONTROLLER_ROI_WEIGHT_MEDIUM
Controller roi weight middle.
Definition peak_afl.h:251
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_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_Process(peak_afl_manager_handle handle, PEAK_IPL_IMAGE_HANDLE imageHandle)
Process an image.
PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_DestroyController(peak_afl_manager_handle handle, peak_afl_controller_handle controller)
Destroy a controller.
PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_Status(peak_afl_manager_handle handle, peak_afl_BOOL8 *running)
Get the status of a manager.
PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_Destroy(peak_afl_manager_handle handle)
Destroy an automanager instance.
PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_DestroyAllController(peak_afl_manager_handle handle)
Destroy all controllers for a manager.
PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_AddController(peak_afl_manager_handle handle, peak_afl_manager_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_manager_handle controller)
Remove a controller to an automanager instance.
PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_SetGainIPL(peak_afl_manager_handle handle, PEAK_IPL_GAIN_HANDLE gainHandle)
Set the IPL Gain.
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_GetVersion(uint32_t *majorVersion, uint32_t *minorVersion, uint32_t *subminorVersion, uint32_t *patchVersion)
Query the library version.
PEAK_AFL_API_STATUS peak_afl_GetLastError(peak_afl_status *lastErrorCode, char *lastErrorMessage, size_t *lastErrorMessageSize)
Get the last error message.
peak_afl_status
peak_afl Status codes
Definition peak_afl.h:88
@ PEAK_AFL_STATUS_SUCCESS
Success.
Definition peak_afl.h:90
@ PEAK_AFL_STATUS_INVALID_IMAGE_FORMAT
Invalid image format.
Definition peak_afl.h:111
@ PEAK_AFL_STATUS_ACCESS_DENIED
Access Denied.
Definition peak_afl.h:102
@ PEAK_AFL_STATUS_BUSY
Busy.
Definition peak_afl.h:105
@ PEAK_AFL_STATUS_NOT_SUPPORTED
Not supported.
Definition peak_afl.h:114
@ PEAK_AFL_STATUS_INVALID_PARAMETER
Invalid Parameter.
Definition peak_afl.h:99
@ PEAK_AFL_STATUS_BUFFER_TOO_SMALL
Buffer too small.
Definition peak_afl.h:108
@ PEAK_AFL_STATUS_NOT_INITIALIZED
Library not initialized.
Definition peak_afl.h:96
@ PEAK_AFL_STATUS_ERROR
Error.
Definition peak_afl.h:93
void(PEAK_AFL_CALLCONV * PEAK_AFL_CALLBACK_PROCESSING_DATA_FUNC)(int focusValue, int sharpnessValue, void *context)
Callback function type definition for PEAK_AFL_CONTROLLER_CALLBACK_PROCESSING_DATA.
Definition peak_afl.h:280
void * peak_afl_controller_handle
opaque controller handle type
Definition peak_afl.h:49
void * peak_afl_manager_handle
opaque manager handle type
Definition peak_afl.h:51
uint8_t peak_afl_BOOL8
custom boolean type
Definition peak_afl.h:397
void(PEAK_AFL_CALLCONV * PEAK_AFL_CALLBACK_FINISHED_FUNC)(void *context)
Callback function type definition for PEAK_AFL_CONTROLLER_CALLBACK_FINISHED.
Definition peak_afl.h:273
peak_afl Focus Limit
Definition peak_afl.h:373
int min
Minimum.
Definition peak_afl.h:375
int max
Maximum.
Definition peak_afl.h:378
peak_afl Double Limit
Definition peak_afl.h:389
double max
Maximum.
Definition peak_afl.h:393
double min
Minimum.
Definition peak_afl.h:391
peak_afl Position (2D)
Definition peak_afl.h:318
uint32_t y
Y-Position.
Definition peak_afl.h:323
uint32_t x
X-Position.
Definition peak_afl.h:320
peak_afl Rectangle (2D)
Definition peak_afl.h:335
uint32_t width
Width.
Definition peak_afl.h:343
uint32_t height
Height.
Definition peak_afl.h:346
uint32_t y
Y-Position.
Definition peak_afl.h:340
uint32_t x
X-Position.
Definition peak_afl.h:337
peak_afl Size (2D)
Definition peak_afl.h:301
uint32_t width
Width.
Definition peak_afl.h:303
uint32_t height
Height.
Definition peak_afl.h:306
peak_afl Focus Rectangle
Definition peak_afl.h:357
peak_afl_roi_weight weight
Weight.
Definition peak_afl.h:362
peak_afl_rectangle roi
Roi.
Definition peak_afl.h:359