test_mux_delete_add.py
Go to the documentation of this file.
1 #!/usr/bin/env python
2 
3 # Software License Agreement (BSD License)
4 #
5 # Copyright (c) 2008, Willow Garage, Inc.
6 # All rights reserved.
7 #
8 # Redistribution and use in source and binary forms, with or without
9 # modification, are permitted provided that the following conditions
10 # are met:
11 #
12 # * Redistributions of source code must retain the above copyright
13 # notice, this list of conditions and the following disclaimer.
14 # * Redistributions in binary form must reproduce the above
15 # copyright notice, this list of conditions and the following
16 # disclaimer in the documentation and/or other materials provided
17 # with the distribution.
18 # * Neither the name of Willow Garage, Inc. nor the names of its
19 # contributors may be used to endorse or promote products derived
20 # from this software without specific prior written permission.
21 #
22 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
23 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
24 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
25 # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
26 # COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
27 # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
28 # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
29 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
30 # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
32 # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
33 # POSSIBILITY OF SUCH DAMAGE.
34 #
35 # Author: Brian Gerkey
36 
37 PKG = 'topic_tools'
38 
39 import rospy
40 
41 from topic_tools.srv import MuxAdd
42 from topic_tools.srv import MuxDelete
43 from topic_tools.srv import MuxList
44 from topic_tools.srv import MuxSelect
45 from std_msgs.msg import String
46 
47 def go():
48  rospy.init_node('chatter')
49 
50  rospy.wait_for_service('mux/add', 5)
51  rospy.wait_for_service('mux/delete', 5)
52  rospy.wait_for_service('mux/list', 5)
53  rospy.wait_for_service('mux/select', 5)
54 
55  add_srv = rospy.ServiceProxy('mux/add', MuxAdd)
56  delete_srv = rospy.ServiceProxy('mux/delete', MuxDelete)
57  list_srv = rospy.ServiceProxy('mux/list', MuxList)
58  select_srv = rospy.ServiceProxy('mux/select', MuxSelect)
59 
60  b_pub = rospy.Publisher('b', String)
61 
62  # Execute the sequence given in #2863
63  select_srv('c')
64  delete_srv('b')
65  add_srv('b')
66  select_srv('b')
67 
68  # Now start publishing on b
69  while not rospy.is_shutdown():
70  b_pub.publish('foo')
71  rospy.sleep(0.2)
72 
73 if __name__ == "__main__":
74  go()


topic_tools
Author(s): Morgan Quigley, Brian Gerkey, Dirk Thomas
autogenerated on Mon Feb 28 2022 23:34:17