diff --git a/include/core/utils/params_server.hpp b/include/core/utils/params_server.hpp index 5dad0e8262b603c3de5eaeacecf8726f536e8eb0..a750eab79f4ee90b39e4e21d1926129897c29d92 100644 --- a/include/core/utils/params_server.hpp +++ b/include/core/utils/params_server.hpp @@ -40,14 +40,19 @@ public: _params.insert(std::pair<std::string, std::string>(key, value)); } -// template<typename T> -// T getParam(std::string key, std::string def_value) const { -// if(_params.find(key) != _params.end()){ -// return converter<T>::convert(_params.find(key)->second); -// }else{ -// return converter<T>::convert(def_value); -// } -// } + void addParams(std::map<std::string, std::string> params) + { + _params.insert(params.begin(), params.end()); + } + + // template<typename T> + // T getParam(std::string key, std::string def_value) const { + // if(_params.find(key) != _params.end()){ + // return converter<T>::convert(_params.find(key)->second); + // }else{ + // return converter<T>::convert(def_value); + // } + // } template<typename T> T getParam(std::string key) const { diff --git a/src/processor/processor_tracker.cpp b/src/processor/processor_tracker.cpp index e1b2744d1f83f4373a777a6692f0d8ab7d8ecac0..227f819941fb886e657cb03c0f0cf1422218738b 100644 --- a/src/processor/processor_tracker.cpp +++ b/src/processor/processor_tracker.cpp @@ -87,8 +87,9 @@ void ProcessorTracker::processCapture(CaptureBasePtr _incoming_ptr) // Issue KF callback with new KF getProblem()->keyFrameCallback(kfrm, shared_from_this(), params_tracker_->time_tolerance); - // Update pointers resetDerived(); + + // Update pointers origin_ptr_ = incoming_ptr_; last_ptr_ = incoming_ptr_; incoming_ptr_ = nullptr; @@ -175,9 +176,9 @@ void ProcessorTracker::processCapture(CaptureBasePtr _incoming_ptr) last_ptr_->getFrame()->setState(getProblem()->getState(last_ptr_->getTimeStamp())); last_ptr_->getFrame()->setKey(); - // make F; append incoming to new F - FrameBasePtr frm = getProblem()->emplaceFrame(NON_ESTIMATED, incoming_ptr_->getTimeStamp()); - incoming_ptr_->link(frm); + // // make F; append incoming to new F + // FrameBasePtr frm = getProblem()->emplaceFrame(NON_ESTIMATED, incoming_ptr_->getTimeStamp()); + // incoming_ptr_->link(frm); // Establish factors establishFactors(); @@ -187,6 +188,11 @@ void ProcessorTracker::processCapture(CaptureBasePtr _incoming_ptr) // Update pointers resetDerived(); + + // make F; append incoming to new F + FrameBasePtr frm = getProblem()->emplaceFrame(NON_ESTIMATED, last_ptr_->getFrame()->getState(), incoming_ptr_->getTimeStamp()); + incoming_ptr_->link(frm); + origin_ptr_ = last_ptr_; last_ptr_ = incoming_ptr_; incoming_ptr_ = nullptr;