Main Page
Classes
Class List
Class Members
All
Functions
Variables
Files
File List
File Members
All
a
c
d
g
m
o
Functions
a
c
m
Variables
Typedefs
add_two_ints_server
add_two_ints_server.cpp
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2008, Morgan Quigley and Willow Garage, Inc.
3
*
4
* Redistribution and use in source and binary forms, with or without
5
* modification, are permitted provided that the following conditions are met:
6
* * Redistributions of source code must retain the above copyright notice,
7
* this list of conditions and the following disclaimer.
8
* * Redistributions in binary form must reproduce the above copyright
9
* notice, this list of conditions and the following disclaimer in the
10
* documentation and/or other materials provided with the distribution.
11
* * Neither the names of Stanford University or Willow Garage, Inc. nor the names of its
12
* contributors may be used to endorse or promote products derived from
13
* this software without specific prior written permission.
14
*
15
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
16
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
19
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
20
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
21
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
24
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
25
* POSSIBILITY OF SUCH DAMAGE.
26
*/
27
28
#include "
ros/ros.h
"
29
#include "roscpp_tutorials/TwoInts.h"
30
31
bool
add
(roscpp_tutorials::TwoInts::Request &req,
32
roscpp_tutorials::TwoInts::Response &res )
33
{
34
res.sum = req.a + req.b;
35
ROS_INFO
(
"request: x=%ld, y=%ld"
, (
long
int
)req.a, (
long
int
)req.b);
36
ROS_INFO
(
" sending back response: [%ld]"
, (
long
int
)res.sum);
37
return
true
;
38
}
39
40
int
main
(
int
argc,
char
**argv)
41
{
42
ros::init
(argc, argv,
"add_two_ints_server"
);
43
ros::NodeHandle
n;
44
45
// %Tag(SERVICE_SERVER)%
46
ros::ServiceServer
service = n.
advertiseService
(
"add_two_ints"
,
add
);
47
// %EndTag(SERVICE_SERVER)%
48
49
ros::spin
();
50
51
return
0;
52
}
53
ros::init
ROSCPP_DECL void init(const M_string &remappings, const std::string &name, uint32_t options=0)
ros.h
ros::NodeHandle::advertiseService
ServiceServer advertiseService(AdvertiseServiceOptions &ops)
ros::ServiceServer
add
bool add(roscpp_tutorials::TwoInts::Request &req, roscpp_tutorials::TwoInts::Response &res)
Definition:
add_two_ints_server.cpp:31
main
int main(int argc, char **argv)
Definition:
add_two_ints_server.cpp:40
ros::spin
ROSCPP_DECL void spin()
ROS_INFO
#define ROS_INFO(...)
ros::NodeHandle
roscpp_tutorials
Author(s): Morgan Quigley, Dirk Thomas
autogenerated on Fri Jun 24 2022 02:27:48