26template <
typename AsyncCB,
typename Orthogonal>
35 std::string goalWaypointName,
36 std::optional<NavigateNextWaypointOptions> options = std::nullopt);
40 template <
typename TOrthogonal,
typename TSourceObject>
44 CbNavigateNextWaypoint::onOrthogonalAllocation<TOrthogonal, TSourceObject>();
48 this->postEvent<EvGoalWaypointReached<TSourceObject, TOrthogonal>>();
71 getLogger(),
"[%s] Propagating success event from action server",
getName().c_str());
81 "[CbNavigateNextWaypointUntilReached] GoalReached current iteration waypoint i: %ld with "
91 "[CbNavigateNextWaypointUntilReached] goal:'%s' current:'%s'. keep navigating.",
cl_nav2z::ClNav2Z * nav2zClient_
rclcpp_action::ResultCode navigationResult_
std::function< void()> postEvGoalWaypointReached_
void onNavigationActionSuccess(const ClNav2Z::WrappedResult &r) override
std::string goalWaypointName_
virtual ~CbNavigateNextWaypointUntilReached()
void onOrthogonalAllocation()
WaypointNavigator * waypointsNavigator_
long getCurrentWaypointIndex() const
std::optional< std::string > getCurrentWaypointName() const
std::string getName() const
virtual rclcpp::Logger getLogger() const
void requiresClient(SmaccClientType *&storage)
TComponent * getComponent()
GoalHandle::WrappedResult WrappedResult