Loading camera/CameraMetadata.cpp +22 −4 Original line number Original line Diff line number Diff line Loading @@ -17,7 +17,9 @@ // #define LOG_NDEBUG 0 // #define LOG_NDEBUG 0 #define LOG_TAG "Camera2-Metadata" #define LOG_TAG "Camera2-Metadata" #define ATRACE_TAG ATRACE_TAG_CAMERA #include <utils/Log.h> #include <utils/Log.h> #include <utils/Trace.h> #include <utils/Errors.h> #include <utils/Errors.h> #include <binder/Parcel.h> #include <binder/Parcel.h> Loading @@ -38,11 +40,13 @@ CameraMetadata::CameraMetadata() : CameraMetadata::CameraMetadata(size_t entryCapacity, size_t dataCapacity) : CameraMetadata::CameraMetadata(size_t entryCapacity, size_t dataCapacity) : mLocked(false) mLocked(false) { { ATRACE_CALL(); mBuffer = allocate_camera_metadata(entryCapacity, dataCapacity); mBuffer = allocate_camera_metadata(entryCapacity, dataCapacity); } } CameraMetadata::CameraMetadata(const CameraMetadata &other) : CameraMetadata::CameraMetadata(const CameraMetadata &other) : mLocked(false) { mLocked(false) { ATRACE_CALL(); mBuffer = clone_camera_metadata(other.mBuffer); mBuffer = clone_camera_metadata(other.mBuffer); } } Loading Loading @@ -104,6 +108,7 @@ camera_metadata_t* CameraMetadata::release() { } } void CameraMetadata::clear() { void CameraMetadata::clear() { ATRACE_CALL(); if (mLocked) { if (mLocked) { ALOGE("%s: CameraMetadata is locked", __FUNCTION__); ALOGE("%s: CameraMetadata is locked", __FUNCTION__); return; return; Loading @@ -115,6 +120,7 @@ void CameraMetadata::clear() { } } void CameraMetadata::acquire(camera_metadata_t *buffer) { void CameraMetadata::acquire(camera_metadata_t *buffer) { ATRACE_CALL(); if (mLocked) { if (mLocked) { ALOGE("%s: CameraMetadata is locked", __FUNCTION__); ALOGE("%s: CameraMetadata is locked", __FUNCTION__); return; return; Loading @@ -128,6 +134,7 @@ void CameraMetadata::acquire(camera_metadata_t *buffer) { } } void CameraMetadata::acquire(CameraMetadata &other) { void CameraMetadata::acquire(CameraMetadata &other) { ATRACE_CALL(); if (mLocked) { if (mLocked) { ALOGE("%s: CameraMetadata is locked", __FUNCTION__); ALOGE("%s: CameraMetadata is locked", __FUNCTION__); return; return; Loading @@ -136,10 +143,12 @@ void CameraMetadata::acquire(CameraMetadata &other) { } } status_t CameraMetadata::append(const CameraMetadata &other) { status_t CameraMetadata::append(const CameraMetadata &other) { ATRACE_CALL(); return append(other.mBuffer); return append(other.mBuffer); } } status_t CameraMetadata::append(const camera_metadata_t* other) { status_t CameraMetadata::append(const camera_metadata_t* other) { ATRACE_CALL(); if (mLocked) { if (mLocked) { ALOGE("%s: CameraMetadata is locked", __FUNCTION__); ALOGE("%s: CameraMetadata is locked", __FUNCTION__); return INVALID_OPERATION; return INVALID_OPERATION; Loading @@ -161,6 +170,7 @@ bool CameraMetadata::isEmpty() const { } } status_t CameraMetadata::sort() { status_t CameraMetadata::sort() { ATRACE_CALL(); if (mLocked) { if (mLocked) { ALOGE("%s: CameraMetadata is locked", __FUNCTION__); ALOGE("%s: CameraMetadata is locked", __FUNCTION__); return INVALID_OPERATION; return INVALID_OPERATION; Loading Loading @@ -291,6 +301,7 @@ status_t CameraMetadata::update(const camera_metadata_ro_entry &entry) { status_t CameraMetadata::updateImpl(uint32_t tag, const void *data, status_t CameraMetadata::updateImpl(uint32_t tag, const void *data, size_t data_count) { size_t data_count) { ATRACE_CALL(); status_t res; status_t res; if (mLocked) { if (mLocked) { ALOGE("%s: CameraMetadata is locked", __FUNCTION__); ALOGE("%s: CameraMetadata is locked", __FUNCTION__); Loading Loading @@ -348,11 +359,13 @@ status_t CameraMetadata::updateImpl(uint32_t tag, const void *data, } } bool CameraMetadata::exists(uint32_t tag) const { bool CameraMetadata::exists(uint32_t tag) const { ATRACE_CALL(); camera_metadata_ro_entry entry; camera_metadata_ro_entry entry; return find_camera_metadata_ro_entry(mBuffer, tag, &entry) == 0; return find_camera_metadata_ro_entry(mBuffer, tag, &entry) == 0; } } camera_metadata_entry_t CameraMetadata::find(uint32_t tag) { camera_metadata_entry_t CameraMetadata::find(uint32_t tag) { ATRACE_CALL(); status_t res; status_t res; camera_metadata_entry entry; camera_metadata_entry entry; if (mLocked) { if (mLocked) { Loading @@ -369,6 +382,7 @@ camera_metadata_entry_t CameraMetadata::find(uint32_t tag) { } } camera_metadata_ro_entry_t CameraMetadata::find(uint32_t tag) const { camera_metadata_ro_entry_t CameraMetadata::find(uint32_t tag) const { ATRACE_CALL(); status_t res; status_t res; camera_metadata_ro_entry entry; camera_metadata_ro_entry entry; res = find_camera_metadata_ro_entry(mBuffer, tag, &entry); res = find_camera_metadata_ro_entry(mBuffer, tag, &entry); Loading @@ -380,6 +394,7 @@ camera_metadata_ro_entry_t CameraMetadata::find(uint32_t tag) const { } } status_t CameraMetadata::erase(uint32_t tag) { status_t CameraMetadata::erase(uint32_t tag) { ATRACE_CALL(); camera_metadata_entry_t entry; camera_metadata_entry_t entry; status_t res; status_t res; if (mLocked) { if (mLocked) { Loading Loading @@ -410,6 +425,7 @@ status_t CameraMetadata::erase(uint32_t tag) { status_t CameraMetadata::removePermissionEntries(metadata_vendor_id_t vendorId, status_t CameraMetadata::removePermissionEntries(metadata_vendor_id_t vendorId, std::vector<int32_t> *tagsRemoved) { std::vector<int32_t> *tagsRemoved) { ATRACE_CALL(); uint32_t tagCount = 0; uint32_t tagCount = 0; std::vector<uint32_t> tagsToRemove; std::vector<uint32_t> tagsToRemove; Loading Loading @@ -486,6 +502,7 @@ void CameraMetadata::dump(int fd, int verbosity, int indentation) const { } } status_t CameraMetadata::resizeIfNeeded(size_t extraEntries, size_t extraData) { status_t CameraMetadata::resizeIfNeeded(size_t extraEntries, size_t extraData) { ATRACE_CALL(); if (mBuffer == NULL) { if (mBuffer == NULL) { mBuffer = allocate_camera_metadata(extraEntries * 2, extraData * 2); mBuffer = allocate_camera_metadata(extraEntries * 2, extraData * 2); if (mBuffer == NULL) { if (mBuffer == NULL) { Loading Loading @@ -525,7 +542,7 @@ status_t CameraMetadata::resizeIfNeeded(size_t extraEntries, size_t extraData) { status_t CameraMetadata::readFromParcel(const Parcel& data, status_t CameraMetadata::readFromParcel(const Parcel& data, camera_metadata_t** out) { camera_metadata_t** out) { ATRACE_CALL(); status_t err = OK; status_t err = OK; camera_metadata_t* metadata = NULL; camera_metadata_t* metadata = NULL; Loading Loading @@ -616,6 +633,7 @@ status_t CameraMetadata::readFromParcel(const Parcel& data, status_t CameraMetadata::writeToParcel(Parcel& data, status_t CameraMetadata::writeToParcel(Parcel& data, const camera_metadata_t* metadata) { const camera_metadata_t* metadata) { ATRACE_CALL(); status_t res = OK; status_t res = OK; /** /** Loading Loading @@ -710,7 +728,7 @@ status_t CameraMetadata::writeToParcel(Parcel& data, } } status_t CameraMetadata::readFromParcel(const Parcel *parcel) { status_t CameraMetadata::readFromParcel(const Parcel *parcel) { ATRACE_CALL(); ALOGV("%s: parcel = %p", __FUNCTION__, parcel); ALOGV("%s: parcel = %p", __FUNCTION__, parcel); status_t res = OK; status_t res = OK; Loading Loading @@ -742,7 +760,7 @@ status_t CameraMetadata::readFromParcel(const Parcel *parcel) { } } status_t CameraMetadata::writeToParcel(Parcel *parcel) const { status_t CameraMetadata::writeToParcel(Parcel *parcel) const { ATRACE_CALL(); ALOGV("%s: parcel = %p", __FUNCTION__, parcel); ALOGV("%s: parcel = %p", __FUNCTION__, parcel); if (parcel == NULL) { if (parcel == NULL) { Loading Loading @@ -771,7 +789,7 @@ void CameraMetadata::swap(CameraMetadata& other) { status_t CameraMetadata::getTagFromName(const char *name, status_t CameraMetadata::getTagFromName(const char *name, const VendorTagDescriptor* vTags, uint32_t *tag) { const VendorTagDescriptor* vTags, uint32_t *tag) { ATRACE_CALL(); if (name == nullptr || tag == nullptr) return BAD_VALUE; if (name == nullptr || tag == nullptr) return BAD_VALUE; size_t nameLength = strlen(name); size_t nameLength = strlen(name); Loading Loading
camera/CameraMetadata.cpp +22 −4 Original line number Original line Diff line number Diff line Loading @@ -17,7 +17,9 @@ // #define LOG_NDEBUG 0 // #define LOG_NDEBUG 0 #define LOG_TAG "Camera2-Metadata" #define LOG_TAG "Camera2-Metadata" #define ATRACE_TAG ATRACE_TAG_CAMERA #include <utils/Log.h> #include <utils/Log.h> #include <utils/Trace.h> #include <utils/Errors.h> #include <utils/Errors.h> #include <binder/Parcel.h> #include <binder/Parcel.h> Loading @@ -38,11 +40,13 @@ CameraMetadata::CameraMetadata() : CameraMetadata::CameraMetadata(size_t entryCapacity, size_t dataCapacity) : CameraMetadata::CameraMetadata(size_t entryCapacity, size_t dataCapacity) : mLocked(false) mLocked(false) { { ATRACE_CALL(); mBuffer = allocate_camera_metadata(entryCapacity, dataCapacity); mBuffer = allocate_camera_metadata(entryCapacity, dataCapacity); } } CameraMetadata::CameraMetadata(const CameraMetadata &other) : CameraMetadata::CameraMetadata(const CameraMetadata &other) : mLocked(false) { mLocked(false) { ATRACE_CALL(); mBuffer = clone_camera_metadata(other.mBuffer); mBuffer = clone_camera_metadata(other.mBuffer); } } Loading Loading @@ -104,6 +108,7 @@ camera_metadata_t* CameraMetadata::release() { } } void CameraMetadata::clear() { void CameraMetadata::clear() { ATRACE_CALL(); if (mLocked) { if (mLocked) { ALOGE("%s: CameraMetadata is locked", __FUNCTION__); ALOGE("%s: CameraMetadata is locked", __FUNCTION__); return; return; Loading @@ -115,6 +120,7 @@ void CameraMetadata::clear() { } } void CameraMetadata::acquire(camera_metadata_t *buffer) { void CameraMetadata::acquire(camera_metadata_t *buffer) { ATRACE_CALL(); if (mLocked) { if (mLocked) { ALOGE("%s: CameraMetadata is locked", __FUNCTION__); ALOGE("%s: CameraMetadata is locked", __FUNCTION__); return; return; Loading @@ -128,6 +134,7 @@ void CameraMetadata::acquire(camera_metadata_t *buffer) { } } void CameraMetadata::acquire(CameraMetadata &other) { void CameraMetadata::acquire(CameraMetadata &other) { ATRACE_CALL(); if (mLocked) { if (mLocked) { ALOGE("%s: CameraMetadata is locked", __FUNCTION__); ALOGE("%s: CameraMetadata is locked", __FUNCTION__); return; return; Loading @@ -136,10 +143,12 @@ void CameraMetadata::acquire(CameraMetadata &other) { } } status_t CameraMetadata::append(const CameraMetadata &other) { status_t CameraMetadata::append(const CameraMetadata &other) { ATRACE_CALL(); return append(other.mBuffer); return append(other.mBuffer); } } status_t CameraMetadata::append(const camera_metadata_t* other) { status_t CameraMetadata::append(const camera_metadata_t* other) { ATRACE_CALL(); if (mLocked) { if (mLocked) { ALOGE("%s: CameraMetadata is locked", __FUNCTION__); ALOGE("%s: CameraMetadata is locked", __FUNCTION__); return INVALID_OPERATION; return INVALID_OPERATION; Loading @@ -161,6 +170,7 @@ bool CameraMetadata::isEmpty() const { } } status_t CameraMetadata::sort() { status_t CameraMetadata::sort() { ATRACE_CALL(); if (mLocked) { if (mLocked) { ALOGE("%s: CameraMetadata is locked", __FUNCTION__); ALOGE("%s: CameraMetadata is locked", __FUNCTION__); return INVALID_OPERATION; return INVALID_OPERATION; Loading Loading @@ -291,6 +301,7 @@ status_t CameraMetadata::update(const camera_metadata_ro_entry &entry) { status_t CameraMetadata::updateImpl(uint32_t tag, const void *data, status_t CameraMetadata::updateImpl(uint32_t tag, const void *data, size_t data_count) { size_t data_count) { ATRACE_CALL(); status_t res; status_t res; if (mLocked) { if (mLocked) { ALOGE("%s: CameraMetadata is locked", __FUNCTION__); ALOGE("%s: CameraMetadata is locked", __FUNCTION__); Loading Loading @@ -348,11 +359,13 @@ status_t CameraMetadata::updateImpl(uint32_t tag, const void *data, } } bool CameraMetadata::exists(uint32_t tag) const { bool CameraMetadata::exists(uint32_t tag) const { ATRACE_CALL(); camera_metadata_ro_entry entry; camera_metadata_ro_entry entry; return find_camera_metadata_ro_entry(mBuffer, tag, &entry) == 0; return find_camera_metadata_ro_entry(mBuffer, tag, &entry) == 0; } } camera_metadata_entry_t CameraMetadata::find(uint32_t tag) { camera_metadata_entry_t CameraMetadata::find(uint32_t tag) { ATRACE_CALL(); status_t res; status_t res; camera_metadata_entry entry; camera_metadata_entry entry; if (mLocked) { if (mLocked) { Loading @@ -369,6 +382,7 @@ camera_metadata_entry_t CameraMetadata::find(uint32_t tag) { } } camera_metadata_ro_entry_t CameraMetadata::find(uint32_t tag) const { camera_metadata_ro_entry_t CameraMetadata::find(uint32_t tag) const { ATRACE_CALL(); status_t res; status_t res; camera_metadata_ro_entry entry; camera_metadata_ro_entry entry; res = find_camera_metadata_ro_entry(mBuffer, tag, &entry); res = find_camera_metadata_ro_entry(mBuffer, tag, &entry); Loading @@ -380,6 +394,7 @@ camera_metadata_ro_entry_t CameraMetadata::find(uint32_t tag) const { } } status_t CameraMetadata::erase(uint32_t tag) { status_t CameraMetadata::erase(uint32_t tag) { ATRACE_CALL(); camera_metadata_entry_t entry; camera_metadata_entry_t entry; status_t res; status_t res; if (mLocked) { if (mLocked) { Loading Loading @@ -410,6 +425,7 @@ status_t CameraMetadata::erase(uint32_t tag) { status_t CameraMetadata::removePermissionEntries(metadata_vendor_id_t vendorId, status_t CameraMetadata::removePermissionEntries(metadata_vendor_id_t vendorId, std::vector<int32_t> *tagsRemoved) { std::vector<int32_t> *tagsRemoved) { ATRACE_CALL(); uint32_t tagCount = 0; uint32_t tagCount = 0; std::vector<uint32_t> tagsToRemove; std::vector<uint32_t> tagsToRemove; Loading Loading @@ -486,6 +502,7 @@ void CameraMetadata::dump(int fd, int verbosity, int indentation) const { } } status_t CameraMetadata::resizeIfNeeded(size_t extraEntries, size_t extraData) { status_t CameraMetadata::resizeIfNeeded(size_t extraEntries, size_t extraData) { ATRACE_CALL(); if (mBuffer == NULL) { if (mBuffer == NULL) { mBuffer = allocate_camera_metadata(extraEntries * 2, extraData * 2); mBuffer = allocate_camera_metadata(extraEntries * 2, extraData * 2); if (mBuffer == NULL) { if (mBuffer == NULL) { Loading Loading @@ -525,7 +542,7 @@ status_t CameraMetadata::resizeIfNeeded(size_t extraEntries, size_t extraData) { status_t CameraMetadata::readFromParcel(const Parcel& data, status_t CameraMetadata::readFromParcel(const Parcel& data, camera_metadata_t** out) { camera_metadata_t** out) { ATRACE_CALL(); status_t err = OK; status_t err = OK; camera_metadata_t* metadata = NULL; camera_metadata_t* metadata = NULL; Loading Loading @@ -616,6 +633,7 @@ status_t CameraMetadata::readFromParcel(const Parcel& data, status_t CameraMetadata::writeToParcel(Parcel& data, status_t CameraMetadata::writeToParcel(Parcel& data, const camera_metadata_t* metadata) { const camera_metadata_t* metadata) { ATRACE_CALL(); status_t res = OK; status_t res = OK; /** /** Loading Loading @@ -710,7 +728,7 @@ status_t CameraMetadata::writeToParcel(Parcel& data, } } status_t CameraMetadata::readFromParcel(const Parcel *parcel) { status_t CameraMetadata::readFromParcel(const Parcel *parcel) { ATRACE_CALL(); ALOGV("%s: parcel = %p", __FUNCTION__, parcel); ALOGV("%s: parcel = %p", __FUNCTION__, parcel); status_t res = OK; status_t res = OK; Loading Loading @@ -742,7 +760,7 @@ status_t CameraMetadata::readFromParcel(const Parcel *parcel) { } } status_t CameraMetadata::writeToParcel(Parcel *parcel) const { status_t CameraMetadata::writeToParcel(Parcel *parcel) const { ATRACE_CALL(); ALOGV("%s: parcel = %p", __FUNCTION__, parcel); ALOGV("%s: parcel = %p", __FUNCTION__, parcel); if (parcel == NULL) { if (parcel == NULL) { Loading Loading @@ -771,7 +789,7 @@ void CameraMetadata::swap(CameraMetadata& other) { status_t CameraMetadata::getTagFromName(const char *name, status_t CameraMetadata::getTagFromName(const char *name, const VendorTagDescriptor* vTags, uint32_t *tag) { const VendorTagDescriptor* vTags, uint32_t *tag) { ATRACE_CALL(); if (name == nullptr || tag == nullptr) return BAD_VALUE; if (name == nullptr || tag == nullptr) return BAD_VALUE; size_t nameLength = strlen(name); size_t nameLength = strlen(name); Loading