Main Page
Namespaces
Namespace List
Namespace Members
All
Variables
Classes
Class List
Class Hierarchy
Class Members
All
Functions
Variables
Files
File List
File Members
All
Functions
Macros
src
test_nodelet.cpp
Go to the documentation of this file.
1
// *****************************************************************************
2
//
3
// Copyright (c) 2016, Southwest Research Institute® (SwRI®)
4
// All rights reserved.
5
//
6
// Redistribution and use in source and binary forms, with or without
7
// modification, are permitted provided that the following conditions are met:
8
// * Redistributions of source code must retain the above copyright
9
// notice, this list of conditions and the following disclaimer.
10
// * Redistributions in binary form must reproduce the above copyright
11
// notice, this list of conditions and the following disclaimer in the
12
// documentation and/or other materials provided with the distribution.
13
// * Neither the name of Southwest Research Institute® (SwRI®) nor the
14
// names of its contributors may be used to endorse or promote products
15
// derived from this software without specific prior written permission.
16
//
17
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
18
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20
// ARE DISCLAIMED. IN NO EVENT SHALL SOUTHWEST RESEARCH INSTITUTE BE LIABLE FOR
21
// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
23
// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
24
// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
25
// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
//
28
// *****************************************************************************
29
30
#include <
nodelet/nodelet.h
>
31
#include <
ros/ros.h
>
32
#include <std_msgs/Int32.h>
33
34
namespace
swri_nodelet
35
{
36
class
TestNodelet
:
public
nodelet::Nodelet
37
{
38
public
:
39
virtual
void
onInit
()
40
{
41
publisher_
=
getNodeHandle
().
advertise
<std_msgs::Int32>(
"numbers"
, 2);
42
timer_
=
getNodeHandle
().
createTimer
(
ros::Duration
(0.1), &
TestNodelet::timerCallback
,
this
);
43
}
44
private
:
45
ros::Publisher
publisher_
;
46
ros::Timer
timer_
;
47
48
void
timerCallback
(
ros::TimerEvent
const
& e)
49
{
50
std_msgs::Int32 msg;
51
msg.data = 1337;
52
publisher_
.
publish
(msg);
53
}
54
};
55
}
56
57
#include <
swri_nodelet/class_list_macros.h
>
58
SWRI_NODELET_EXPORT_CLASS
(
swri_nodelet
, TestNodelet);
ros::Publisher
nodelet::Nodelet::getNodeHandle
ros::NodeHandle & getNodeHandle() const
swri_nodelet
Definition:
test_nodelet.cpp:34
ros.h
ros::Publisher::publish
void publish(const boost::shared_ptr< M > &message) const
ros::NodeHandle::advertise
Publisher advertise(AdvertiseOptions &ops)
swri_nodelet::TestNodelet
Definition:
test_nodelet.cpp:36
swri_nodelet::TestNodelet::onInit
virtual void onInit()
Definition:
test_nodelet.cpp:39
class_list_macros.h
swri_nodelet::TestNodelet::publisher_
ros::Publisher publisher_
Definition:
test_nodelet.cpp:45
ros::TimerEvent
swri_nodelet::TestNodelet::timer_
ros::Timer timer_
Definition:
test_nodelet.cpp:46
nodelet::Nodelet
nodelet.h
swri_nodelet::TestNodelet::timerCallback
void timerCallback(ros::TimerEvent const &e)
Definition:
test_nodelet.cpp:48
SWRI_NODELET_EXPORT_CLASS
SWRI_NODELET_EXPORT_CLASS(swri_nodelet, TestNodelet)
ros::NodeHandle::createTimer
Timer createTimer(Duration period, const TimerCallback &callback, bool oneshot=false, bool autostart=true) const
ros::Duration
ros::Timer
swri_nodelet
Author(s): P. J. Reed
autogenerated on Thu Feb 27 2025 03:34:01