Added "Cancel goal" action

This commit is contained in:
matlabbe
2015-06-21 20:16:56 -04:00
parent a5efee20bc
commit 87063cf357
6 changed files with 27 additions and 3 deletions

View File

@@ -76,7 +76,8 @@ public:
kCmdPublishTOROGraphLocal, // params: optimized
kCmdTriggerNewMap,
kCmdPause,
kCmdGoal}; // params: label or location ID
kCmdGoal, // params: label or location ID
kCmdCancelGoal};
public:
RtabmapEventCmd(Cmd cmd, const std::string & strValue = "", int intValue = 0, const ParametersMap & parameters = ParametersMap()) :
UEvent(0),

View File

@@ -74,7 +74,8 @@ public:
kStatePublishingTOROGraphGlobal,
kStateTriggeringMap,
kStateAddingUserData,
kStateSettingGoal
kStateSettingGoal,
kStateCancellingGoal
};
public:

View File

@@ -286,6 +286,9 @@ void RtabmapThread::mainLoop()
}
this->post(new RtabmapGlobalPathEvent(id, _rtabmap->getPath()));
break;
case kStateCancellingGoal:
_rtabmap->clearPath();
break;
default:
UFATAL("Invalid state !?!?");
break;
@@ -492,6 +495,11 @@ void RtabmapThread::handleEvent(UEvent* event)
param.insert(ParametersPair("goal_id", uNumber2Str(rtabmapEvent->getInt())));
pushNewState(kStateSettingGoal, param);
}
else if(cmd == RtabmapEventCmd::kCmdCancelGoal)
{
ULOGGER_DEBUG("CMD_CANCEL_GOAL");
pushNewState(kStateCancellingGoal);
}
else
{
UWARN("Cmd %d unknown!", cmd);