SMACC
Loading...
Searching...
No Matches
backward_global_planner.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
8#include <nav_core/base_global_planner.h>
9#include <nav_msgs/GetPlan.h>
10#include <nav_msgs/Path.h>
11#include <ros/ros.h>
12
14{
15namespace backward_global_planner
16{
17class BackwardGlobalPlanner : public nav_core::BaseGlobalPlanner
18{
19public:
21
22 virtual ~BackwardGlobalPlanner();
23
24 bool makePlan(const geometry_msgs::PoseStamped &start,
25 const geometry_msgs::PoseStamped &goal, std::vector<geometry_msgs::PoseStamped> &plan);
26
27 bool makePlan(const geometry_msgs::PoseStamped &start,
28 const geometry_msgs::PoseStamped &goal, std::vector<geometry_msgs::PoseStamped> &plan,
29 double &cost);
30
31 virtual bool createDefaultBackwardPath(const geometry_msgs::PoseStamped &start,
32 const geometry_msgs::PoseStamped &goal, std::vector<geometry_msgs::PoseStamped> &plan);
33
34 virtual void initialize(std::string name, costmap_2d::Costmap2DROS *costmap_ros_) override;
35
36private:
37 ros::NodeHandle nh_;
38
39 ros::Publisher planPub_;
40
41 ros::Publisher markersPub_;
42
43 costmap_2d::Costmap2DROS *costmap_ros_;
44
45 void onForwardTrailMsg(const nav_msgs::Path::ConstPtr &trailMessage);
46
47 void publishGoalMarker(const geometry_msgs::Pose &pose, double r, double g, double b);
48
50
51 double puresSpinningRadStep_; // rads
52};
53} // namespace backward_global_planner
54} // namespace cl_move_base_z
virtual bool createDefaultBackwardPath(const geometry_msgs::PoseStamped &start, const geometry_msgs::PoseStamped &goal, std::vector< geometry_msgs::PoseStamped > &plan)
void publishGoalMarker(const geometry_msgs::Pose &pose, double r, double g, double b)
bool makePlan(const geometry_msgs::PoseStamped &start, const geometry_msgs::PoseStamped &goal, std::vector< geometry_msgs::PoseStamped > &plan)
void onForwardTrailMsg(const nav_msgs::Path::ConstPtr &trailMessage)
virtual void initialize(std::string name, costmap_2d::Costmap2DROS *costmap_ros_) override