camera3: Add physical camera id field in capture result

- Add an array of physical camera ids and metadata when physical
cameras are requested within a logical multi-camera.
- Physical camera ids and metadata are only necessary for the final
capture_results, not the partial result.
- Physical camera ids and metadata must not be populated if no physical
camera is requested.

Test: Compile
Bug: 64691172
Change-Id: I78b20fe3d0c6462abf95b8fe7e3b4c66b3acefdf
This commit is contained in:
Shuzhen Wang
2017-12-31 16:57:11 -08:00
parent 6accb1de92
commit 1d4c09e83e

View File

@@ -2498,6 +2498,37 @@ typedef struct camera3_capture_result {
*/
uint32_t partial_result;
/**
* >= CAMERA_DEVICE_API_VERSION_3_5:
*
* Specifies the number of physical camera metadata this capture result
* contains. It must be equal to the number of physical cameras being
* requested from.
*
* If the current camera device is not a logical multi-camera, or the
* corresponding capture_request doesn't request on any physical camera,
* this field must be 0.
*/
uint32_t num_physcam_metadata;
/**
* >= CAMERA_DEVICE_API_VERSION_3_5:
*
* An array of strings containing the physical camera ids for the returned
* physical camera metadata. The length of the array is
* num_physcam_metadata.
*/
const char **physcam_ids;
/**
* >= CAMERA_DEVICE_API_VERSION_3_5:
*
* The array of physical camera metadata for the physical cameras being
* requested upon. This array should have a 1-to-1 mapping with the
* physcam_ids. The length of the array is num_physcam_metadata.
*/
const camera_metadata_t **physcam_metadata;
} camera3_capture_result_t;
/**********************************************************************