kinfamproperties.hpp
Go to the documentation of this file.
00001 /******************************************************************************
00002 *                   This file is part of the KDL project                      *
00003 *                                                                             *
00004 *                     (C) 2010 Ruben Smits                                    *
00005 *                         2010 Steven Bellens                                 *
00006 *                     ruben.smits@mech.kuleuven.be                            *
00007 *                     steven.bellens@mech.kuleuven.be                         *
00008 *                    Department of Mechanical Engineering,                    *
00009 *                   Katholieke Universiteit Leuven, Belgium.                  *
00010 *                                                                             *
00011 *       You may redistribute this software and/or modify it under either the  *
00012 *       terms of the GNU Lesser General Public License version 2.1 (LGPLv2.1  *
00013 *       <http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html>) or (at your *
00014 *       discretion) of the Modified BSD License:                              *
00015 *       Redistribution and use in source and binary forms, with or without    *
00016 *       modification, are permitted provided that the following conditions    *
00017 *       are met:                                                              *
00018 *       1. Redistributions of source code must retain the above copyright     *
00019 *       notice, this list of conditions and the following disclaimer.         *
00020 *       2. Redistributions in binary form must reproduce the above copyright  *
00021 *       notice, this list of conditions and the following disclaimer in the   *
00022 *       documentation and/or other materials provided with the distribution.  *
00023 *       3. The name of the author may not be used to endorse or promote       *
00024 *       products derived from this software without specific prior written    *
00025 *       permission.                                                           *
00026 *       THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR  *
00027 *       IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED        *
00028 *       WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE    *
00029 *       ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,*
00030 *       INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES    *
00031 *       (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS       *
00032 *       OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) *
00033 *       HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,   *
00034 *       STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING *
00035 *       IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE    *
00036 *       POSSIBILITY OF SUCH DAMAGE.                                           *
00037 *                                                                             *
00038 *******************************************************************************/
00039 /* @Description:
00040  * @brief KDL typekit for Orocos RTT
00041  * @Author: Ruben Smits, Steven Bellens
00042  */
00043 
00044 #ifndef JOINTPROPERTIES_HPP
00045 #define JOINTPROPERTIES_HPP
00046 
00047 #include <kdl/joint.hpp>
00048 #include <kdl/segment.hpp>
00049 #include <kdl/kinfam_io.hpp>
00050 #include <kdl/jacobian.hpp>
00051 #include <kdl/jntarray.hpp>
00052 
00053 #include <rtt/PropertyBag.hpp>
00054 
00055 namespace RTT
00056 {
00057     using namespace KDL;
00058 
00059     void decomposeProperty(const Joint &joint, PropertyBag& target);
00060     bool composeProperty(const PropertyBag& bag, Joint &joint);
00061 
00062     void decomposeProperty(const Segment &segment, PropertyBag& target);
00063     bool composeProperty(const PropertyBag& bag, Segment &segment);
00064 
00065     void decomposeProperty(const Chain &chain, PropertyBag& target);
00066     bool composeProperty(const PropertyBag& bag, Chain &chain);
00067 
00068     void decomposeProperty(const JntArray &jntarray, PropertyBag& target);
00069     bool composeProperty(const PropertyBag& bag, JntArray &jntarray);
00070 
00071     void decomposeProperty(const Jacobian &jacobian, PropertyBag& target);
00072     bool composeProperty(const PropertyBag& bag, Jacobian &jacobian);
00073 
00074 }
00075 #endif


kdl_typekit
Author(s): Steven Bellens, Ruben Smits
autogenerated on Fri May 17 2019 02:37:38