Skip to content
Snippets Groups Projects
Commit b8f54c3e authored by Joan Solà Ortega's avatar Joan Solà Ortega
Browse files

Change order in Prb::getTimeStamp()

parent 752939e2
No related branches found
No related tags found
1 merge request!380Resolve "Problem::getState/getTimeStamp considering not initialized processors"
Pipeline #5667 failed
...@@ -419,15 +419,7 @@ FrameBasePtr Problem::emplaceFrame(FrameType _frame_key_type, // ...@@ -419,15 +419,7 @@ FrameBasePtr Problem::emplaceFrame(FrameType _frame_key_type, //
TimeStamp Problem::getTimeStamp ( ) const TimeStamp Problem::getTimeStamp ( ) const
{ {
if ( processor_is_motion_list_.empty() ) // Use last estimated frame's state if (not processor_is_motion_list_.empty() ) // Use most recent Motion processor data
{
auto last_kf_or_aux = trajectory_ptr_->getLastKeyOrAuxFrame();
assert(last_kf_or_aux != nullptr && "Problem has no Keyframe so no timestamp can be obtained!");
return last_kf_or_aux->getTimeStamp();
}
else
{ {
TimeStamp ts(0); TimeStamp ts(0);
for (const auto& prc : processor_is_motion_list_) for (const auto& prc : processor_is_motion_list_)
...@@ -435,6 +427,19 @@ TimeStamp Problem::getTimeStamp ( ) const ...@@ -435,6 +427,19 @@ TimeStamp Problem::getTimeStamp ( ) const
ts = prc->getTimeStamp(); ts = prc->getTimeStamp();
return ts; return ts;
} }
else
{
const auto& last_kf_or_aux = trajectory_ptr_->getLastKeyOrAuxFrame();
if (last_kf_or_aux)
return last_kf_or_aux->getTimeStamp(); // Use last estimated frame's state
else
{
WOLF_WARN( "Problem has no Keyframe so no timestamp can be obtained!");
return TimeStamp::Invalid();
}
}
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment