IDSpeakAFL  v1.1.0
peak_afl.h
Go to the documentation of this file.
1 
11 #pragma once
12 
13 /* Function declaration modifiers */
14 #if defined(_WIN32)
15 # ifndef PEAK_AFL_NO_DECLSPEC_STATEMENTS
16 # ifdef PEAK_AFL_EXPORTING
17 # define PEAK_AFL_EXPORT __declspec(dllexport)
18 # else
19 # define PEAK_AFL_EXPORT __declspec(dllimport)
20 # endif
21 # else
22 # define PEAK_AFL_EXPORT
23 # endif
24 # if defined(_M_IX86) || defined(__i386__)
25 # define PEAK_AFL_CALLCONV __cdecl
26 # else
27 # define PEAK_AFL_CALLCONV
28 # endif
29 #else
30 # define PEAK_AFL_EXPORT
31 # define PEAK_AFL_CALLCONV
32 #endif
33 
34 #ifdef __cplusplus
35 # include <cstddef>
36 # include <cstdint>
37 
38 extern "C" {
39 #else
40 # include <stddef.h>
41 # include <stdint.h>
42 #endif
43 
44 #include <peak_ipl/backend/peak_ipl_backend.h>
45 #include <peak/backend/peak_backend.h>
46 
51 
52 #define PEAK_AFL_VERSION_CODE(major, minor, subminor, patch) (((major) << 24) + ((minor) << 16) + ((subminor) << 8) + (patch))
53 #define PEAK_AFL_API_STATUS PEAK_AFL_EXPORT peak_afl_status PEAK_AFL_CALLCONV
54 
86 typedef enum peak_afl_status
87 {
90 
93 
96 
99 
102 
105 
108 
111 
115 
121 {
124 
128 
134 {
137 
140 
144 
150 {
153 
156 
159 
162 
165 
168 
172 
178 {
181 
184 
187 
190 
194 
200 {
203 
206 
209 
212 
216 
222 {
225 
228 
232 
238 {
241 
245 
247 typedef void(PEAK_AFL_CALLCONV* PEAK_AFL_CALLBACK_FINISHED_FUNC)(void*);
248 
250 typedef void(PEAK_AFL_CALLCONV* PEAK_AFL_CALLBACK_PROCESSING_DATA_FUNC)(int, int, void*);
251 
257 {
261 
270 typedef struct
271 {
273  uint32_t width;
274 
276  uint32_t height;
277 } peak_afl_size;
278 
287 typedef struct
288 {
290  uint32_t x;
291 
293  uint32_t y;
295 
304 typedef struct
305 {
307  uint32_t x;
308 
310  uint32_t y;
311 
313  uint32_t width;
314 
316  uint32_t height;
318 
326 typedef struct
327 {
330 
334 
342 typedef struct
343 {
345  int min;
346 
348  int max;
350 
352 typedef uint8_t peak_afl_BOOL8;
353 
355 #define PEAK_AFL_TRUE 1
356 
358 #define PEAK_AFL_FALSE 0
359 
374 PEAK_AFL_API_STATUS peak_afl_Init(void);
375 
391 PEAK_AFL_API_STATUS peak_afl_Exit(void);
392 
414 PEAK_AFL_API_STATUS peak_afl_GetLastError(peak_afl_status* lastErrorCode, char* lastErrorMessage, size_t* lastErrorMessageSize);
415 
433 PEAK_AFL_API_STATUS peak_afl_GetVersion(
434  uint32_t* majorVersion, uint32_t* minorVersion, uint32_t* subminorVersion, uint32_t* patchVersion);
435 
450 PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_Create(peak_afl_manager_handle* handle, PEAK_NODE_MAP_HANDLE nodeMapHandle);
451 
464 PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_Destroy(peak_afl_manager_handle handle);
465 
483 PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_AddController(peak_afl_manager_handle handle, peak_afl_manager_handle controller);
484 
503  peak_afl_manager_handle handle, peak_afl_manager_handle controller);
504 
521 PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_Process(peak_afl_manager_handle handle, PEAK_IPL_IMAGE_HANDLE imageHandle);
522 
540  peak_afl_manager_handle handle, peak_afl_controller_handle* controller, peak_afl_controllerType controllerType);
541 
555 PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_DestroyAllController(peak_afl_manager_handle handle);
556 
572  peak_afl_manager_handle handle, peak_afl_controller_handle controller);
573 
588 PEAK_AFL_API_STATUS peak_afl_AutoFeatureManager_Status(peak_afl_manager_handle handle, peak_afl_BOOL8* running);
589 
602 PEAK_AFL_API_STATUS peak_afl_AutoController_Create(
603  peak_afl_controller_handle* controller, peak_afl_controllerType controllerType);
604 
617 PEAK_AFL_API_STATUS peak_afl_AutoController_Destroy(peak_afl_controller_handle controller);
618 
632  peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
633 
649 PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_Set(peak_afl_controller_handle controller, uint32_t count);
650 
666 PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_Get(peak_afl_controller_handle controller, uint32_t* count);
667 
684  peak_afl_controller_handle controller, uint32_t* min, uint32_t* max, uint32_t* inc);
685 
700 PEAK_AFL_API_STATUS peak_afl_AutoController_ROI_IsSupported(peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
701 
717 PEAK_AFL_API_STATUS peak_afl_AutoController_ROI_Set(peak_afl_controller_handle controller, peak_afl_rectangle roi);
718 
734 PEAK_AFL_API_STATUS peak_afl_AutoController_ROI_Get(peak_afl_controller_handle controller, peak_afl_rectangle* roi);
735 
751  peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
752 
768 PEAK_AFL_API_STATUS peak_afl_AutoController_ROI_Preset_Set(peak_afl_controller_handle controller, peak_afl_roi_preset roiPreset);
769 
784 PEAK_AFL_API_STATUS peak_afl_AutoController_Mode_IsSupported(peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
785 
801 PEAK_AFL_API_STATUS peak_afl_AutoController_Mode_Set(peak_afl_controller_handle controller, peak_afl_controller_automode mode);
802 
816 PEAK_AFL_API_STATUS peak_afl_AutoController_Mode_Get(peak_afl_controller_handle controller, peak_afl_controller_automode* mode);
817 
832 PEAK_AFL_API_STATUS peak_afl_AutoController_Status(peak_afl_controller_handle controller, peak_afl_controller_status* status);
833 
849 PEAK_AFL_API_STATUS peak_afl_AutoController_GetLastAutoAverage(peak_afl_controller_handle controller, uint8_t* average);
850 
869  peak_afl_controller_handle controller, uint8_t* averageRed, uint8_t* averageGreen, uint8_t* averageBlue);
870 
886  peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
887 
904 PEAK_AFL_API_STATUS peak_afl_AutoController_AutoTarget_Set(peak_afl_controller_handle controller, uint32_t target);
905 
919 PEAK_AFL_API_STATUS peak_afl_AutoController_AutoTarget_Get(peak_afl_controller_handle controller, uint32_t* target);
920 
940  peak_afl_controller_handle controller, uint32_t* min, uint32_t* max, uint32_t* inc);
941 
957  peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
958 
974 PEAK_AFL_API_STATUS peak_afl_AutoController_AutoTolerance_Set(peak_afl_controller_handle controller, uint32_t tolerance);
975 
989 PEAK_AFL_API_STATUS peak_afl_AutoController_AutoTolerance_Get(peak_afl_controller_handle controller, uint32_t* tolerance);
990 
1010  peak_afl_controller_handle controller, uint32_t* min, uint32_t* max, uint32_t* inc);
1011 
1027  peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
1028 
1045 PEAK_AFL_API_STATUS peak_afl_AutoController_AutoPercentile_Set(peak_afl_controller_handle controller, double percentile);
1046 
1060 PEAK_AFL_API_STATUS peak_afl_AutoController_AutoPercentile_Get(peak_afl_controller_handle controller, double* percentile);
1061 
1081  peak_afl_controller_handle controller, double* min, double* max, double* inc);
1082 
1097 PEAK_AFL_API_STATUS peak_afl_AutoController_Type_Get(peak_afl_controller_handle controller, peak_afl_controllerType* type);
1098 
1116  peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
1117 
1133 PEAK_AFL_API_STATUS peak_afl_AutoController_Algorithm_Set(
1134  peak_afl_controller_handle controller, peak_afl_controller_algorithm algorithm);
1135 
1149 PEAK_AFL_API_STATUS peak_afl_AutoController_Algorithm_Get(
1150  peak_afl_controller_handle controller, peak_afl_controller_algorithm* algorithm);
1151 
1175 PEAK_AFL_API_STATUS peak_afl_AutoController_Algorithm_GetList(
1176  peak_afl_controller_handle controller, peak_afl_controller_algorithm* typeList, uint32_t* listSize);
1177 
1195  peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
1196 
1213  peak_afl_controller_handle controller, peak_afl_controller_sharpness_algorithm algorithm);
1214 
1229  peak_afl_controller_handle controller, peak_afl_controller_sharpness_algorithm* algorithm);
1230 
1254  peak_afl_controller_handle controller, peak_afl_controller_sharpness_algorithm* typeList, uint32_t* listSize);
1255 
1278 PEAK_AFL_API_STATUS peak_afl_AutoController_Callback_Set(
1279  peak_afl_controller_handle controller, peak_afl_callback_type type, void* funcPtr, void* context);
1280 
1296  peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
1297 
1311 PEAK_AFL_API_STATUS peak_afl_AutoController_Weighted_ROI_Min_Size(peak_afl_controller_handle controller, peak_afl_size* size);
1312 
1329 PEAK_AFL_API_STATUS peak_afl_AutoController_Weighted_ROI_Set(
1330  peak_afl_controller_handle controller, const peak_afl_weighted_rectangle* weightedRoiList, uint32_t listSize);
1331 
1356 PEAK_AFL_API_STATUS peak_afl_AutoController_Weighted_ROI_Get(
1357  peak_afl_controller_handle controller, peak_afl_weighted_rectangle* weightedRoiList, uint32_t* listSize);
1358 
1373 PEAK_AFL_API_STATUS peak_afl_AutoController_Limit_IsSupported(peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
1374 
1388 PEAK_AFL_API_STATUS peak_afl_AutoController_Limit_Default(
1389  peak_afl_controller_handle controller, peak_afl_controller_limit* limit);
1390 
1406 PEAK_AFL_API_STATUS peak_afl_AutoController_Limit_Set(peak_afl_controller_handle controller, peak_afl_controller_limit limit);
1407 
1421 PEAK_AFL_API_STATUS peak_afl_AutoController_Limit_Get(peak_afl_controller_handle controller, peak_afl_controller_limit* limit);
1422 
1438  peak_afl_controller_handle controller, peak_afl_BOOL8* supported);
1439 
1453 PEAK_AFL_API_STATUS peak_afl_AutoController_Hysteresis_Default(peak_afl_controller_handle controller, uint8_t* hysteresis);
1454 
1470 PEAK_AFL_API_STATUS peak_afl_AutoController_Hysteresis_Set(peak_afl_controller_handle controller, uint8_t hysteresis);
1471 
1485 PEAK_AFL_API_STATUS peak_afl_AutoController_Hysteresis_Get(peak_afl_controller_handle controller, uint8_t* hysteresis);
1486 
1503  peak_afl_controller_handle controller, uint8_t* min, uint8_t* max, uint8_t* inc);
1504 
1505 #ifdef __cplusplus
1506 } // extern "C"
1507 #endif // __cplusplus
uint32_t width
Width.
Definition: peak_afl.h:273
peak_afl_status peak_afl_GetVersion(uint32_t *majorVersion, uint32_t *minorVersion, uint32_t *subminorVersion, uint32_t *patchVersion)
Query the library version.
Controller algorithm global search.
Definition: peak_afl.h:189
peak_afl_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_status peak_afl_AutoFeatureManager_AddController(peak_afl_manager_handle handle, peak_afl_manager_handle controller)
Add a controller to an automanager instance.
Automode off.
Definition: peak_afl.h:136
peak_afl_status peak_afl_AutoController_SkipFrames_Get(peak_afl_controller_handle controller, uint32_t *count)
Get number of frames skipped for a controller.
Controller sharpness algorithm auto.
Definition: peak_afl.h:202
Controller status canceled.
Definition: peak_afl.h:167
peak_afl_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_controller_sharpness_algorithm
controller sharpness algorithm (focus)
Definition: peak_afl.h:199
peak_afl_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_status peak_afl_AutoController_SkipFrames_Set(peak_afl_controller_handle controller, uint32_t count)
Set number of frames skipped for a controller.
peak_afl_status peak_afl_AutoController_Limit_Default(peak_afl_controller_handle controller, peak_afl_controller_limit *limit)
Get the autofeature default limit.
int min
Minimum.
Definition: peak_afl.h:345
peak_afl_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_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_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_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.
void(* PEAK_AFL_CALLBACK_PROCESSING_DATA_FUNC)(int, int, void *)
Callback function type definition for PEAK_AFL_CONTROLLER_CALLBACK_PROCESSING_DATA.
Definition: peak_afl.h:250
peak_afl_status peak_afl_AutoFeatureManager_Status(peak_afl_manager_handle handle, peak_afl_BOOL8 *running)
Get the status of a manager.
Library not Initialized.
Definition: peak_afl.h:95
uint32_t height
Height.
Definition: peak_afl.h:276
peak_afl_status
peak_afl Status codes
Definition: peak_afl.h:86
peak_afl Size (2D)
Definition: peak_afl.h:270
peak_afl_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_rectangle roi
Roi.
Definition: peak_afl.h:329
Error.
Definition: peak_afl.h:92
Controller status busy.
Definition: peak_afl.h:164
uint32_t width
Width.
Definition: peak_afl.h:313
Controller sharpness algorithm histogram variance.
Definition: peak_afl.h:214
peak_afl_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_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_status peak_afl_AutoController_Limit_Get(peak_afl_controller_handle controller, peak_afl_controller_limit *limit)
Get the autofeature limit for a controller.
Invalid image format.
Definition: peak_afl.h:110
peak_afl Rectangle (2D)
Definition: peak_afl.h:304
peak_afl_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_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.
Controller algorithm hill climbing search.
Definition: peak_afl.h:186
peak_afl_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 Position (2D)
Definition: peak_afl.h:287
Controller sharpness algorithm mean score.
Definition: peak_afl.h:211
peak_afl_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.
Controller status in progress.
Definition: peak_afl.h:158
peak_afl_status peak_afl_AutoController_Type_Get(peak_afl_controller_handle controller, peak_afl_controllerType *type)
Get the controller type.
uint32_t x
X-Position.
Definition: peak_afl.h:307
peak_afl_status peak_afl_AutoController_AutoPercentile_Get(peak_afl_controller_handle controller, double *percentile)
Get the auto percentile for a controller.
peak_afl_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 Focus Limit
Definition: peak_afl.h:342
Automode continuous.
Definition: peak_afl.h:139
Automode once.
Definition: peak_afl.h:142
peak_afl_status peak_afl_AutoController_Weighted_ROI_Min_Size(peak_afl_controller_handle controller, peak_afl_size *size)
Get the autofeature minimum size of weighted region of interest for a controller. ...
peak_afl_status peak_afl_AutoFeatureManager_Destroy(peak_afl_manager_handle handle)
Destroy an automanager instance.
peak_afl_status peak_afl_AutoFeatureManager_RemoveController(peak_afl_manager_handle handle, peak_afl_manager_handle controller)
Remove a controller to an automanager instance.
peak_afl_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_roi_preset
controller roi preset
Definition: peak_afl.h:256
peak_afl_status peak_afl_AutoController_Limit_Set(peak_afl_controller_handle controller, peak_afl_controller_limit limit)
Set the autofeature limit for a controller.
Controller roi weight middle.
Definition: peak_afl.h:227
peak_afl_controller_automode
controller automode
Definition: peak_afl.h:133
peak_afl_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.
uint8_t peak_afl_BOOL8
custom boolean type
Definition: peak_afl.h:352
peak_afl_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.
void * peak_afl_manager_handle
opaque manager handle type
Definition: peak_afl.h:50
Success.
Definition: peak_afl.h:89
uint32_t height
Height.
Definition: peak_afl.h:316
peak_afl_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_status peak_afl_AutoFeatureManager_DestroyAllController(peak_afl_manager_handle handle)
Destroy all controllers for a manager.
peak_afl_status peak_afl_AutoController_AutoTarget_Set(peak_afl_controller_handle controller, uint32_t target)
Set the auto target for a controller.
Autofocus Controller.
Definition: peak_afl.h:126
Controller roi weight weak.
Definition: peak_afl.h:224
Controller status off.
Definition: peak_afl.h:155
peak_afl_status peak_afl_Init(void)
Init the peak_afl auto feature library.
peak_afl_roi_weight weight
Weight.
Definition: peak_afl.h:332
peak_afl_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_status peak_afl_AutoController_GetLastAutoAverage(peak_afl_controller_handle controller, uint8_t *average)
Get the last auto average for a controller.
peak_afl_controller_algorithm
controller algorithm
Definition: peak_afl.h:177
uint32_t y
Y-Position.
Definition: peak_afl.h:310
int max
Maximum.
Definition: peak_afl.h:348
Not supported.
Definition: peak_afl.h:113
peak_afl_status peak_afl_Exit(void)
Exit the peak_afl auto feature library.
peak_afl_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_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_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.
Controller callback type processing data.
Definition: peak_afl.h:243
uint32_t y
Y-Position.
Definition: peak_afl.h:293
peak_afl_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_status peak_afl_AutoController_Destroy(peak_afl_controller_handle controller)
Destroy a controller. Will fail if it is queued inside a manager.
peak_afl_roi_weight
controller roi weight (focus)
Definition: peak_afl.h:221
controller roi preset center
Definition: peak_afl.h:259
peak_afl_status peak_afl_AutoFeatureManager_Create(peak_afl_manager_handle *handle, PEAK_NODE_MAP_HANDLE nodeMapHandle)
Create an automanager instance.
peak_afl_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_status peak_afl_AutoController_Algorithm_Set(peak_afl_controller_handle controller, peak_afl_controller_algorithm algorithm)
Set the used algorithm for a controller.
Controller roi weight strong.
Definition: peak_afl.h:230
peak_afl_status peak_afl_AutoController_AutoPercentile_IsSupported(peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
check if auto percentile is supported for a controller.
Controller algorithm full scan.
Definition: peak_afl.h:192
Access Denied.
Definition: peak_afl.h:101
peak_afl_status peak_afl_AutoController_Limit_IsSupported(peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
Check if limit is supported for a controller.
uint32_t x
X-Position.
Definition: peak_afl.h:290
peak_afl_status peak_afl_AutoController_Status(peak_afl_controller_handle controller, peak_afl_controller_status *status)
Get the status for a controller.
Buffer too small.
Definition: peak_afl.h:107
peak_afl_status peak_afl_AutoController_Hysteresis_Default(peak_afl_controller_handle controller, uint8_t *hysteresis)
Get the autofeature hysteresis default.
peak_afl_status peak_afl_AutoController_AutoTolerance_Set(peak_afl_controller_handle controller, uint32_t tolerance)
Set the auto tolerance for a controller.
Controller algorithm golden ratio search.
Definition: peak_afl.h:183
peak_afl Focus Rectangle
Definition: peak_afl.h:326
peak_afl_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.
void(* PEAK_AFL_CALLBACK_FINISHED_FUNC)(void *)
Callback function type definition for PEAK_AFL_CONTROLLER_CALLBACK_FINISHED.
Definition: peak_afl.h:247
Controller status error.
Definition: peak_afl.h:170
peak_afl_status peak_afl_AutoController_AutoTolerance_Get(peak_afl_controller_handle controller, uint32_t *tolerance)
Get the current auto tolerance for a controller.
Invalid Parameter.
Definition: peak_afl.h:98
Controller status undefined.
Definition: peak_afl.h:152
peak_afl_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_status peak_afl_AutoController_Create(peak_afl_controller_handle *controller, peak_afl_controllerType controllerType)
Create a new controller.
peak_afl_controller_status
controller status
Definition: peak_afl.h:149
peak_afl_status peak_afl_AutoFeatureManager_Process(peak_afl_manager_handle handle, PEAK_IPL_IMAGE_HANDLE imageHandle)
Process an image.
Controller algorithm auto.
Definition: peak_afl.h:180
peak_afl_status peak_afl_AutoController_Hysteresis_Get(peak_afl_controller_handle controller, uint8_t *hysteresis)
Get the autofeature hysteresis for a controller.
Busy.
Definition: peak_afl.h:104
Controller status finished.
Definition: peak_afl.h:161
Controller sharpness algorithm sobel.
Definition: peak_afl.h:208
peak_afl_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.
void * peak_afl_controller_handle
opaque controller handle type
Definition: peak_afl.h:48
peak_afl_status peak_afl_GetLastError(peak_afl_status *lastErrorCode, char *lastErrorMessage, size_t *lastErrorMessageSize)
Get the last error message.
peak_afl_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_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_controllerType
controller types
Definition: peak_afl.h:120
peak_afl_status peak_afl_AutoController_Mode_IsSupported(peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
Check if auto mode is supported for a controller.
Controller callback type finished.
Definition: peak_afl.h:240
Invalid controller.
Definition: peak_afl.h:123
Controller sharpness algorithm tenengrad.
Definition: peak_afl.h:205
peak_afl_status peak_afl_AutoController_AutoPercentile_Set(peak_afl_controller_handle controller, double percentile)
Set the auto percentile for a controller.
peak_afl_status peak_afl_AutoController_Hysteresis_Set(peak_afl_controller_handle controller, uint8_t hysteresis)
Set the autofeature hysteresis for a controller.
peak_afl_callback_type
controller callback type
Definition: peak_afl.h:237
peak_afl_status peak_afl_AutoFeatureManager_DestroyController(peak_afl_manager_handle handle, peak_afl_controller_handle controller)
Destroy a controller.