SMACC
Loading...
Searching...
No Matches
cb_undo_path_backwards2.h
Go to the documentation of this file.
1/*****************************************************************************************************************
2 * ReelRobotix Inc. - Software License Agreement Copyright (c) 2018
3 * Authors: Pablo Inigo Blasco, Brett Aldrich
4 *
5 ******************************************************************************************************************/
6#pragma once
7
11#include <tf/transform_listener.h>
13
14namespace cl_move_base_z
15{
16template <typename TSource, typename TObjectTag>
17struct EvGoalVirtualLinePassed : sc::event<EvGoalVirtualLinePassed<TSource, TObjectTag>>
18{
19};
20
22{
23public:
25 virtual void onEntry() override;
26
27 virtual void onExit() override;
28
29 virtual void update() override;
30
31 template <typename TOrthogonal, typename TSourceObject>
33 {
34 CbMoveBaseClientBehaviorBase::onOrthogonalAllocation<TOrthogonal, TSourceObject>();
35
36 postVirtualLinePassed_ = [=] { this->postEvent<EvGoalVirtualLinePassed<TSourceObject, TOrthogonal>>(); };
37 }
38
39private:
40 void publishMarkers();
41 float evalPlaneSide(const geometry_msgs::Pose& pose);
42
43 ClMoveBaseZ::Goal goal_;
45
46 tf::TransformListener listener;
48 std::atomic<bool> goalLinePassed_;
50 float triggerThreshold_; // meters absolute
51 std::function<void()> postVirtualLinePassed_;
52};
53} // namespace cl_move_base_z
odom_tracker::OdomTracker * odomTracker_
float evalPlaneSide(const geometry_msgs::Pose &pose)
This class track the required distance of the cord based on the external localization system.
Definition: odom_tracker.h:47