Package smach_ros

Source Code for Package smach_ros

 1  # Copyright (c) 2010, Willow Garage, Inc. 
 2  # All rights reserved. 
 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  #  
 7  #     * Redistributions of source code must retain the above copyright 
 8  #       notice, 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 name of the 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   
27  # ROS imports 
28  import roslib; roslib.load_manifest('smach_ros') 
29  import rospy 
30   
31  # SMACH 
32  import smach 
33   
34  __all__ = ['set_preempt_handler', 
35          'ActionServerWrapper', 
36          'IntrospectionClient','IntrospectionServer', 
37          'SimpleActionState', 
38          'ServiceState', 
39          'MonitorState', 
40          'ConditionState'] 
41   
42  # Setup smach-ros interface 
43  smach.set_loggers( 
44          rospy.loginfo, 
45          rospy.logwarn, 
46          rospy.logdebug, 
47          rospy.logerr) 
48   
49  smach.set_shutdown_check(rospy.is_shutdown) 
50   
51  ### Core classes 
52  from util import set_preempt_handler 
53   
54  ### Top-level Containers / Wrappers 
55  from action_server_wrapper import ActionServerWrapper 
56  from introspection import IntrospectionClient, IntrospectionServer 
57   
58  ### State Classes 
59  from simple_action_state import SimpleActionState 
60  from service_state import ServiceState 
61  from monitor_state import MonitorState 
62  from condition_state import ConditionState 
63