include
rviz_visual_tools
remote_reciever.h
Go to the documentation of this file.
1
/*********************************************************************
2
* Software License Agreement (BSD License)
3
*
4
* Copyright (c) 2017, PickNik Consulting
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 PickNik Consulting 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 OWNER 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
/* Author: Dave Coleman
36
Desc: Object for wrapping remote control functionality
37
*/
38
39
#ifndef RVIZ_VISUAL_TOOLS_REMOTE_RECIEVER_H
40
#define RVIZ_VISUAL_TOOLS_REMOTE_RECIEVER_H
41
42
#include <sensor_msgs/Joy.h>
43
#include <
ros/ros.h
>
44
45
namespace
rviz_visual_tools
46
{
47
class
RemoteReciever
48
{
49
public
:
50
RemoteReciever
()
51
{
52
joy_publisher_
=
nh_
.
advertise
<sensor_msgs::Joy>(
"/rviz_visual_tools_gui"
, 1);
53
}
54
55
void
publishNext
()
56
{
57
ROS_DEBUG_STREAM_NAMED
(
"gui"
,
"Next"
);
58
sensor_msgs::Joy msg;
59
msg.buttons.resize(9);
60
msg.buttons[1] = 1;
61
joy_publisher_
.
publish
(msg);
62
}
63
64
void
publishContinue
()
65
{
66
ROS_DEBUG_STREAM_NAMED
(
"gui"
,
"Continue"
);
67
sensor_msgs::Joy msg;
68
msg.buttons.resize(9);
69
msg.buttons[2] = 1;
70
joy_publisher_
.
publish
(msg);
71
}
72
73
void
publishBreak
()
74
{
75
ROS_DEBUG_STREAM_NAMED
(
"gui"
,
"Break (not implemented yet)"
);
76
77
sensor_msgs::Joy msg;
78
msg.buttons.resize(9);
79
msg.buttons[3] = 1;
80
joy_publisher_
.
publish
(msg);
81
}
82
83
void
publishStop
()
84
{
85
ROS_DEBUG_STREAM_NAMED
(
"gui"
,
"Stop (not implemented yet)"
);
86
87
sensor_msgs::Joy msg;
88
msg.buttons.resize(9);
89
msg.buttons[4] = 1;
90
joy_publisher_
.
publish
(msg);
91
}
92
93
protected
:
94
// The ROS publishers
95
ros::Publisher
joy_publisher_
;
96
97
// The ROS node handle.
98
ros::NodeHandle
nh_
;
99
};
100
101
}
// end namespace rviz_visual_tools
102
103
#endif // RVIZ_VISUAL_TOOLS_REMOTE_RECIEVER_H
rviz_visual_tools::RemoteReciever::publishBreak
void publishBreak()
Definition:
remote_reciever.h:73
ros::NodeHandle
ROS_DEBUG_STREAM_NAMED
#define ROS_DEBUG_STREAM_NAMED(name, args)
rviz_visual_tools::RemoteReciever::publishContinue
void publishContinue()
Definition:
remote_reciever.h:64
ros::Publisher::publish
void publish(const boost::shared_ptr< M > &message) const
ros::NodeHandle::advertise
Publisher advertise(const std::string &topic, uint32_t queue_size, bool latch=false)
rviz_visual_tools::RemoteReciever::joy_publisher_
ros::Publisher joy_publisher_
Definition:
remote_reciever.h:95
rviz_visual_tools
Definition:
imarker_simple.h:56
ros.h
rviz_visual_tools::RemoteReciever
Definition:
remote_reciever.h:47
rviz_visual_tools::RemoteReciever::RemoteReciever
RemoteReciever()
Definition:
remote_reciever.h:50
rviz_visual_tools::RemoteReciever::publishStop
void publishStop()
Definition:
remote_reciever.h:83
rviz_visual_tools::RemoteReciever::nh_
ros::NodeHandle nh_
Definition:
remote_reciever.h:98
rviz_visual_tools::RemoteReciever::publishNext
void publishNext()
Definition:
remote_reciever.h:55
ros::Publisher
rviz_visual_tools
Author(s): Dave Coleman
autogenerated on Mon Feb 28 2022 23:43:06