Skip to content

Commit 5d50f75

Browse files
authored
fix: update the logic to store metadata (#9)
Signed-off-by: quic-zhanlin <[email protected]>
1 parent 8d0a31a commit 5d50f75

File tree

1 file changed

+4
-7
lines changed

1 file changed

+4
-7
lines changed

src/qmmf_camera.cpp

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -457,14 +457,11 @@ void qmmfCAMERA::camera_metadata_cb(uint32_t camera_id, const CameraMetadata & r
457457
if (result_metadata_cache_.size() >= 120) {
458458
result_metadata_cache_.erase(result_metadata_cache_.begin());
459459
}
460-
auto ret = result_metadata_cache_.insert((result_metadata_cache_.end())--,
461-
std::pair<const uint64_t, CameraMetadata>(meta_frame_index, result));
462-
if (ret == result_metadata_cache_.end()) {
463-
RCLCPP_ERROR(rclcpp::get_logger("qrb_ros_camera"),
464-
"Could not store result metadata : frame_ts = %d", meta_frame_index);
460+
auto it = result_metadata_cache_.find(meta_frame_index);
461+
if (it != result_metadata_cache_.end()) {
462+
it->second = result;
465463
} else {
466-
// CAM_DBG("ResultCB : A_TS = %lld \n",
467-
// result.find(ANDROID_SENSOR_TIMESTAMP).data.i64[0]);
464+
result_metadata_cache_.emplace(std::make_pair(meta_frame_index, result));
468465
}
469466
result_metadata_cache_mutex_.unlock();
470467
}

0 commit comments

Comments
 (0)