IDS peak AFL v1.7.0
Loading...
Searching...
No Matches
AutoController

Topics

 Auto focus
 
 Auto whitebalance
 
 Auto brightness
 
 Controller settings
 

Enumerations

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 }
 controller types 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 status More...
 

Functions

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_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_Status (peak_afl_controller_handle controller, peak_afl_controller_status *status)
 Get the status 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.
 

Detailed Description

Auto controller

The Auto controller represents a specific controller. A controller is always assigned to an Auto manager

It is possible to add multiple controllers to an Auto manager therefore the images will be processed in sequence.

Example

// create auto manager
peak_afl_AutoFeatureManager_Create(&hManager, nodemapHandle);
// create a brightness controller within our manager
peak_afl_controller_handle hBrightnessController = 0;
hManager, &hBrightnessController, PEAK_AFL_CONTROLLER_TYPE_BRIGHTNESS);
// run the auto exposure and auto gain component in continuous mode
// create a whitebalance controller within our manager
peak_afl_controller_handle hWhitebalanceController = 0;
hManager, &hWhitebalanceController, PEAK_AFL_CONTROLLER_TYPE_WHITE_BALANCE);
while (acquisitionRunning)
{
// submit the images
peak_afl_AutoFeatureManager_Process(hManager, imageHandle);
}
// remove && destroy the white balance controller
peak_afl_AutoFeatureManager_RemoveController(hManager, hWhitebalanceController);
peak_afl_AutoController_Destroy(hWhitebalanceController);
// destroy all left controllers
// destroy the auto manager

Enumeration Type Documentation

◆ peak_afl_controller_status

controller status

Enumerator
PEAK_AFL_CONTROLLER_STATUS_UNDEFINED 

Controller status undefined.

PEAK_AFL_CONTROLLER_STATUS_OFF 

Controller status off.

PEAK_AFL_CONTROLLER_STATUS_IN_PROGRESS 

Controller status in progress.

PEAK_AFL_CONTROLLER_STATUS_FINISHED 

Controller status finished.

PEAK_AFL_CONTROLLER_STATUS_BUSY 

Controller status busy.

PEAK_AFL_CONTROLLER_STATUS_CANCELED 

Controller status canceled.

PEAK_AFL_CONTROLLER_STATUS_ERROR 

Controller status error.

PEAK_AFL_CONTROLLER_STATUS_SKIPPED 

Controller status skipped.

◆ peak_afl_controllerType

controller types

Enumerator
PEAK_AFL_CONTROLLER_TYPE_INVALID 

Invalid controller.

PEAK_AFL_CONTROLLER_TYPE_BRIGHTNESS 

Exposure controller.

PEAK_AFL_CONTROLLER_TYPE_WHITE_BALANCE 

White balance controller.

PEAK_AFL_CONTROLLER_TYPE_AUTOFOCUS 

Autofocus Controller.

Function Documentation

◆ peak_afl_AutoController_Create()

PEAK_AFL_API_STATUS peak_afl_AutoController_Create ( peak_afl_controller_handle * controller,
peak_afl_controllerType controllerType )

Create a new controller.

Parameters
[out]controllercontroller handle
[in]controllerTypecontroller type
Returns
PEAK_AFL_STATUS_SUCCESS Operation was successful; no error occurred.
PEAK_AFL_STATUS_NOT_INITIALIZED The library is not initialized.
PEAK_AFL_STATUS_INVALID_PARAMETER The argument is invalid.
PEAK_AFL_STATUS_ERROR An unexpected internal error occurred.
Since
1.0

◆ peak_afl_AutoController_Destroy()

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.

Parameters
[in]controllercontroller handle
Returns
PEAK_AFL_STATUS_SUCCESS Operation was successful; no error occurred.
PEAK_AFL_STATUS_NOT_INITIALIZED The library is not initialized.
PEAK_AFL_STATUS_INVALID_PARAMETER The argument is invalid.
PEAK_AFL_STATUS_ACCESS_DENIED The operation is not allowed. Remove the instance from a manager first.
PEAK_AFL_STATUS_ERROR An unexpected internal error occurred.
Since
1.0

◆ peak_afl_AutoController_Status()

PEAK_AFL_API_STATUS peak_afl_AutoController_Status ( peak_afl_controller_handle controller,
peak_afl_controller_status * status )

Get the status for a controller.

See peak_afl_controller_status for a list of values.

Parameters
[in]controllercontroller handle
[out]statuscontroller status
Returns
PEAK_AFL_STATUS_SUCCESS Operation was successful; no error occurred.
PEAK_AFL_STATUS_NOT_INITIALIZED The library is not initialized.
PEAK_AFL_STATUS_INVALID_PARAMETER The argument is invalid.
PEAK_AFL_STATUS_ERROR An unexpected internal error occurred.
Since
1.0

◆ peak_afl_AutoController_Type_Get()

PEAK_AFL_API_STATUS peak_afl_AutoController_Type_Get ( peak_afl_controller_handle controller,
peak_afl_controllerType * type )

Get the controller type.

See peak_afl_controllerType for a list of values.

Parameters
[in]controllercontroller handle
[out]typeauto controller type
Returns
PEAK_AFL_STATUS_SUCCESS Operation was successful; no error occurred.
PEAK_AFL_STATUS_NOT_INITIALIZED The library is not initialized.
PEAK_AFL_STATUS_INVALID_PARAMETER The argument is invalid.
PEAK_AFL_STATUS_ERROR An unexpected internal error occurred.
Since
1.0