get_node_data service: if no ids requested, send back the last node

This commit is contained in:
matlabbe
2020-08-21 16:31:12 -04:00
parent 48c5e76bf6
commit 3df4648b14
+4 -1
View File
@@ -2700,9 +2700,12 @@ bool CoreWrapper::getNodeDataCallback(rtabmap_ros::GetNodeData::Request& req, rt
req.grid?"true":"false",
req.user_data?"true":"false");
if(req.ids.empty() && rtabmap_.getMemory() && rtabmap_.getMemory()->getLastWorkingSignature())
{
req.ids.push_back(rtabmap_.getMemory()->getLastWorkingSignature()->id());
}
for(size_t i=0; i<req.ids.size(); ++i)
{
int id = req.ids[i];
Signature s = rtabmap_.getSignatureCopy(id, req.images, req.scan, req.user_data, req.grid, true, true);