Home | Trees | Indices | Help |
|
---|
|
1 # Software License Agreement (BSD License) 2 # 3 # Copyright (c) 2009, Willow Garage, Inc. 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 8 # are met: 9 # 10 # * Redistributions of source code must retain the above copyright 11 # notice, this list of conditions and the following disclaimer. 12 # * Redistributions in binary form must reproduce the above 13 # copyright notice, this list of conditions and the following 14 # disclaimer in the documentation and/or other materials provided 15 # with the distribution. 16 # * Neither the name of Willow Garage, Inc. nor the names of its 17 # contributors may be used to endorse or promote products derived 18 # from this software without specific prior written permission. 19 # 20 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 21 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 22 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 23 # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 24 # COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 25 # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 26 # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 27 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 28 # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 30 # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 31 # POSSIBILITY OF SUCH DAMAGE. 32 33 import roslib; roslib.load_manifest('dynamic_reconfigure') 34 import rospy 35 36 from dynamic_reconfigure.msg import Config as ConfigMsg 37 from dynamic_reconfigure.msg import ConfigDescription as ConfigDescrMsg 38 from dynamic_reconfigure.msg import IntParameter, BoolParameter, StrParameter, DoubleParameter, ParamDescription 3941 msg = ConfigDescrMsg() 42 msg.max = encode_config(descr.max) 43 msg.min = encode_config(descr.min) 44 msg.dflt = encode_config(descr.defaults) 45 for param in descr.config_description: 46 msg.parameters.append(ParamDescription(param['name'], param['type'], param['level'], param['description'], param['edit_method'])) 47 return msg4850 msg = ConfigMsg() 51 for k, v in config.items(): 52 ## @todo add more checks here? 53 if type(v) == int: msg.ints.append(IntParameter(k, v)) 54 elif type(v) == bool: msg.bools.append(BoolParameter(k, v)) 55 elif type(v) == str: msg.strs.append(StrParameter(k, v)) 56 elif type(v) == float: msg.doubles.append(DoubleParameter(k, v)) 57 return msg5860 descr = [] 61 mins = decode_config(msg.min) 62 maxes = decode_config(msg.max) 63 defaults = decode_config(msg.dflt) 64 for param in msg.parameters: 65 name = param.name 66 descr.append({ 67 'name': name, 68 'min': mins[name], 69 'max': maxes[name], 70 'default': defaults[name], 71 'type': param.type, 72 'description': param.description, 73 'edit_method': param.edit_method, 74 }) 75 return descr76 79
Home | Trees | Indices | Help |
|
---|
Generated by Epydoc 3.0.1 on Fri Jan 11 10:12:22 2013 | http://epydoc.sourceforge.net |