summaryrefslogtreecommitdiff
path: root/camera/common/1.0/default/CameraMetadata.cpp
diff options
context:
space:
mode:
authorJayant Chowdhary <jchowdhary@google.com>2019-04-01 10:29:53 -0700
committerJayant Chowdhary <jchowdhary@google.com>2019-04-04 14:24:06 -0700
commit661f4410f4b4d13dde6fb758fd56848e329edfab (patch)
tree2029ea8c7e6bc12e1b3286001553ffb059b87213 /camera/common/1.0/default/CameraMetadata.cpp
parent6f5a48f7af9de2c7cb69ac14a8a8666617f27d21 (diff)
Allow android.hardware.camera.common@1.0-helper to access vendor tags
This allows vendor camera clients to access provider specific vendor tags. No expected behavior changes to camera HAL process(es). Also fixes OWNERS file. Bug: 129688550 Test: AImageReaderTest modified to set a vendor tag in CaptureRequest Test: Take still pictures / record video (sanity) Test: camera CTS tests Change-Id: I18b678e7e0db7f1b29c3de0b762cb65e25842fa8 Signed-off-by: Jayant Chowdhary <jchowdhary@google.com>
Diffstat (limited to 'camera/common/1.0/default/CameraMetadata.cpp')
-rw-r--r--camera/common/1.0/default/CameraMetadata.cpp31
1 files changed, 14 insertions, 17 deletions
diff --git a/camera/common/1.0/default/CameraMetadata.cpp b/camera/common/1.0/default/CameraMetadata.cpp
index 4c54931a11..eb1bd1c149 100644
--- a/camera/common/1.0/default/CameraMetadata.cpp
+++ b/camera/common/1.0/default/CameraMetadata.cpp
@@ -171,17 +171,16 @@ status_t CameraMetadata::sort() {
}
status_t CameraMetadata::checkType(uint32_t tag, uint8_t expectedType) {
- int tagType = get_camera_metadata_tag_type(tag);
+ int tagType = get_local_camera_metadata_tag_type(tag, mBuffer);
if ( CC_UNLIKELY(tagType == -1)) {
ALOGE("Update metadata entry: Unknown tag %d", tag);
return INVALID_OPERATION;
}
if ( CC_UNLIKELY(tagType != expectedType) ) {
ALOGE("Mismatched tag type when updating entry %s (%d) of type %s; "
- "got type %s data instead ",
- get_camera_metadata_tag_name(tag), tag,
- camera_metadata_type_names[tagType],
- camera_metadata_type_names[expectedType]);
+ "got type %s data instead ",
+ get_local_camera_metadata_tag_name(tag, mBuffer), tag,
+ camera_metadata_type_names[tagType], camera_metadata_type_names[expectedType]);
return INVALID_OPERATION;
}
return OK;
@@ -298,7 +297,7 @@ status_t CameraMetadata::updateImpl(uint32_t tag, const void *data,
ALOGE("%s: CameraMetadata is locked", __FUNCTION__);
return INVALID_OPERATION;
}
- int type = get_camera_metadata_tag_type(tag);
+ int type = get_local_camera_metadata_tag_type(tag, mBuffer);
if (type == -1) {
ALOGE("%s: Tag %d not found", __FUNCTION__, tag);
return BAD_VALUE;
@@ -332,9 +331,9 @@ status_t CameraMetadata::updateImpl(uint32_t tag, const void *data,
}
if (res != OK) {
- ALOGE("%s: Unable to update metadata entry %s.%s (%x): %s (%d)",
- __FUNCTION__, get_camera_metadata_section_name(tag),
- get_camera_metadata_tag_name(tag), tag, strerror(-res), res);
+ ALOGE("%s: Unable to update metadata entry %s.%s (%x): %s (%d)", __FUNCTION__,
+ get_local_camera_metadata_section_name(tag, mBuffer),
+ get_local_camera_metadata_tag_name(tag, mBuffer), tag, strerror(-res), res);
}
IF_ALOGV() {
@@ -391,18 +390,16 @@ status_t CameraMetadata::erase(uint32_t tag) {
if (res == NAME_NOT_FOUND) {
return OK;
} else if (res != OK) {
- ALOGE("%s: Error looking for entry %s.%s (%x): %s %d",
- __FUNCTION__,
- get_camera_metadata_section_name(tag),
- get_camera_metadata_tag_name(tag), tag, strerror(-res), res);
+ ALOGE("%s: Error looking for entry %s.%s (%x): %s %d", __FUNCTION__,
+ get_local_camera_metadata_section_name(tag, mBuffer),
+ get_local_camera_metadata_tag_name(tag, mBuffer), tag, strerror(-res), res);
return res;
}
res = delete_camera_metadata_entry(mBuffer, entry.index);
if (res != OK) {
- ALOGE("%s: Error deleting entry %s.%s (%x): %s %d",
- __FUNCTION__,
- get_camera_metadata_section_name(tag),
- get_camera_metadata_tag_name(tag), tag, strerror(-res), res);
+ ALOGE("%s: Error deleting entry %s.%s (%x): %s %d", __FUNCTION__,
+ get_local_camera_metadata_section_name(tag, mBuffer),
+ get_local_camera_metadata_tag_name(tag, mBuffer), tag, strerror(-res), res);
}
return res;
}