src
nodelet.cpp
Go to the documentation of this file.
1
/*
2
* slam_gmapping
3
* Copyright (c) 2008, Willow Garage, Inc.
4
*
5
* Redistribution and use in source and binary forms, with or without
6
* modification, are permitted provided that the following conditions are met:
7
* * Redistributions of source code must retain the above copyright notice,
8
* this list of conditions and the following disclaimer.
9
* * Redistributions in binary form must reproduce the above copyright
10
* notice, this list of conditions and the following disclaimer in the
11
* documentation and/or other materials provided with the distribution.
12
* * Neither the names of Stanford University or Willow Garage, Inc. nor the names of its
13
* contributors may be used to endorse or promote products derived from
14
* this software without specific prior written permission.
15
*
16
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
20
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
23
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
24
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
25
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26
* POSSIBILITY OF SUCH DAMAGE.
27
*
28
*/
29
30
#include <
ros/ros.h
>
31
#include <
nodelet/nodelet.h
>
32
#include <
pluginlib/class_list_macros.h
>
33
34
#include "
slam_gmapping.h
"
35
36
class
SlamGMappingNodelet
:
public
nodelet::Nodelet
37
{
38
public
:
39
SlamGMappingNodelet
() {}
40
41
~SlamGMappingNodelet
() {}
42
43
virtual
void
onInit
()
44
{
45
NODELET_INFO_STREAM
(
"Initialising Slam GMapping nodelet..."
);
46
sg_
.reset(
new
SlamGMapping
(
getNodeHandle
(),
getPrivateNodeHandle
()));
47
NODELET_INFO_STREAM
(
"Starting live SLAM..."
);
48
sg_
->startLiveSlam();
49
}
50
51
private
:
52
boost::shared_ptr<SlamGMapping>
sg_
;
53
};
54
55
PLUGINLIB_EXPORT_CLASS
(
SlamGMappingNodelet
,
nodelet::Nodelet
)
nodelet::Nodelet::getNodeHandle
ros::NodeHandle & getNodeHandle() const
boost::shared_ptr< SlamGMapping >
SlamGMappingNodelet::sg_
boost::shared_ptr< SlamGMapping > sg_
Definition:
nodelet.cpp:52
ros.h
slam_gmapping.h
SlamGMapping
Definition:
slam_gmapping.h:46
nodelet::Nodelet::getPrivateNodeHandle
ros::NodeHandle & getPrivateNodeHandle() const
class_list_macros.h
SlamGMappingNodelet::onInit
virtual void onInit()
Definition:
nodelet.cpp:43
PLUGINLIB_EXPORT_CLASS
#define PLUGINLIB_EXPORT_CLASS(class_type, base_class_type)
SlamGMappingNodelet
Definition:
nodelet.cpp:36
nodelet::Nodelet
nodelet.h
NODELET_INFO_STREAM
#define NODELET_INFO_STREAM(...)
SlamGMappingNodelet::~SlamGMappingNodelet
~SlamGMappingNodelet()
Definition:
nodelet.cpp:41
SlamGMappingNodelet::SlamGMappingNodelet
SlamGMappingNodelet()
Definition:
nodelet.cpp:39
gmapping
Author(s): Brian Gerkey
autogenerated on Wed Aug 21 2024 02:12:11