include
nav_core_adapter
global_planner_adapter2.h
Go to the documentation of this file.
1
/*
2
* Software License Agreement (BSD License)
3
*
4
* Copyright (c) 2017, Locus Robotics
5
* All rights reserved.
6
*
7
* Redistribution and use in source and binary forms, with or without
8
* modification, are permitted provided that the following conditions
9
* are met:
10
*
11
* * Redistributions of source code must retain the above copyright
12
* notice, this list of conditions and the following disclaimer.
13
* * Redistributions in binary form must reproduce the above
14
* copyright notice, this list of conditions and the following
15
* disclaimer in the documentation and/or other materials provided
16
* with the distribution.
17
* * Neither the name of the copyright holder nor the names of its
18
* contributors may be used to endorse or promote products derived
19
* from this software without specific prior written permission.
20
*
21
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
24
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
25
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
26
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
27
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
28
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
29
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
31
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
32
* POSSIBILITY OF SUCH DAMAGE.
33
*/
34
35
#ifndef NAV_CORE_ADAPTER_GLOBAL_PLANNER_ADAPTER2_H
36
#define NAV_CORE_ADAPTER_GLOBAL_PLANNER_ADAPTER2_H
37
38
#include <
nav_core/base_global_planner.h
>
39
#include <
nav_core2/global_planner.h
>
40
#include <
pluginlib/class_loader.h
>
41
#include <string>
42
#include <vector>
43
44
namespace
nav_core_adapter
45
{
46
51
class
GlobalPlannerAdapter2
:
public
nav_core2::GlobalPlanner
52
{
53
public
:
54
GlobalPlannerAdapter2
();
55
56
// Nav Core 2 Global Planner Interface
57
void
initialize
(
const
ros::NodeHandle
& parent,
const
std::string& name,
58
TFListenerPtr
tf
,
nav_core2::Costmap::Ptr
costmap)
override
;
59
nav_2d_msgs::Path2D
makePlan
(
const
nav_2d_msgs::Pose2DStamped&
start
,
60
const
nav_2d_msgs::Pose2DStamped& goal)
override
;
61
62
protected
:
63
// Plugin handling
64
pluginlib::ClassLoader<nav_core::BaseGlobalPlanner>
planner_loader_
;
65
boost::shared_ptr<nav_core::BaseGlobalPlanner>
planner_
;
66
67
costmap_2d::Costmap2DROS
*
costmap_ros_
;
68
nav_core2::Costmap::Ptr
costmap_
;
69
};
70
71
}
// namespace nav_core_adapter
72
73
#endif // NAV_CORE_ADAPTER_GLOBAL_PLANNER_ADAPTER2_H
class_loader.h
boost::shared_ptr< nav_core::BaseGlobalPlanner >
nav_core_adapter::GlobalPlannerAdapter2::makePlan
nav_2d_msgs::Path2D makePlan(const nav_2d_msgs::Pose2DStamped &start, const nav_2d_msgs::Pose2DStamped &goal) override
Definition:
global_planner_adapter2.cpp:78
nav_core_adapter::GlobalPlannerAdapter2::planner_
boost::shared_ptr< nav_core::BaseGlobalPlanner > planner_
Definition:
global_planner_adapter2.h:65
nav_core2::GlobalPlanner
nav_core_adapter::GlobalPlannerAdapter2::planner_loader_
pluginlib::ClassLoader< nav_core::BaseGlobalPlanner > planner_loader_
Definition:
global_planner_adapter2.h:64
nav_core_adapter::GlobalPlannerAdapter2
used for employing a nav_core global planner (such as navfn) as a nav_core2 plugin,...
Definition:
global_planner_adapter2.h:51
pluginlib::ClassLoader< nav_core::BaseGlobalPlanner >
start
ROSCPP_DECL void start()
nav_core2::Costmap::Ptr
std::shared_ptr< Costmap > Ptr
base_global_planner.h
TFListenerPtr
std::shared_ptr< tf2_ros::Buffer > TFListenerPtr
nav_core_adapter
Definition:
costmap_adapter.h:43
tf
nav_core_adapter::GlobalPlannerAdapter2::GlobalPlannerAdapter2
GlobalPlannerAdapter2()
Definition:
global_planner_adapter2.cpp:48
global_planner.h
nav_core_adapter::GlobalPlannerAdapter2::costmap_
nav_core2::Costmap::Ptr costmap_
Definition:
global_planner_adapter2.h:68
costmap_2d::Costmap2DROS
nav_core_adapter::GlobalPlannerAdapter2::initialize
void initialize(const ros::NodeHandle &parent, const std::string &name, TFListenerPtr tf, nav_core2::Costmap::Ptr costmap) override
Load the nav_core global planner and initialize it.
Definition:
global_planner_adapter2.cpp:56
ros::NodeHandle
nav_core_adapter::GlobalPlannerAdapter2::costmap_ros_
costmap_2d::Costmap2DROS * costmap_ros_
Definition:
global_planner_adapter2.h:67
nav_core_adapter
Author(s):
autogenerated on Sun May 18 2025 02:47:37