camera_get_focus_regions()

Retrieve the focus regions configured on the camera

Synopsis:

#include <camera/camera_3a.h>
camera_error_t camera_get_focus_regions(camera_handle_t handle,
                                        int numasked,
                                        int *numsupported,
                                        int *numreturned,
                                        camera_region_t *regions)

Arguments:

handle
The handle returned by a call to the camera_open() function.
numasked
The requested number of regions to return in the regions array. You can specify a value of 0 to determine the number of focus regions supported by the camera.
numsupported
A pointer to an integer that will be updated with the number of focus regions supported by the camera.
numreturned
A pointer to an integer that will be updated with the number of focus regions returned in the regions array.
regions
A pointer to a camera_region_t array that will be updated with the focus regions configured on the camera. Ensure that you allocate an array with numasked elements. For information about interpreting region geometry, see camera_set_focus_regions().

Library:

libcamapi

Description:

Use this function to retrieve the configured autofocus regions from the camera. For more information on configuring focus regions, see camera_set_focus_regions(). When focus regions are defined, the autofocus algorithm will give priority to focusing on objects in the defined areas of the scene.

The maximum number of supported focus regions is determined by checking the numsupported argument when the function completes successfully.

Ensure that the regions argument points to an array which has at least numasked elements allocated. To determine an appropriate size for this array, you can invoke this function in presizing mode by setting the numasked argument to 0 or the regions argument to NULL. The function then returns, in the numsupported argument, the maximum array size required. You can then allocate an array of this size and invoke the function again with numasked set to that previous numsupported value.

Returns:

CAMERA_EOK when the function successfully completes, otherwise another camera_error_t value that provides the reason that the call failed.