00001 /* 00002 * TreeJntToJacSolver.hpp 00003 * 00004 * Created on: Nov 27, 2008 00005 * Author: rubensmits 00006 */ 00007 00008 #ifndef TREEJNTTOJACSOLVER_HPP_ 00009 #define TREEJNTTOJACSOLVER_HPP_ 00010 00011 #include "tree.hpp" 00012 #include "jacobian.hpp" 00013 #include "jntarray.hpp" 00014 00015 namespace KDL { 00016 00017 class TreeJntToJacSolver { 00018 public: 00019 explicit TreeJntToJacSolver(const Tree& tree); 00020 00021 virtual ~TreeJntToJacSolver(); 00022 00023 /* 00024 * Calculate the jacobian for a part of the tree: from a certain segment, given by segmentname to the root. 00025 * The resulting jacobian is expressed in the baseframe of the tree ("root"), the reference point is in the end-segment 00026 */ 00027 00028 int JntToJac(const JntArray& q_in, Jacobian& jac, 00029 const std::string& segmentname); 00030 00031 private: 00032 KDL::Tree tree; 00033 00034 }; 00035 00036 }//End of namespace 00037 00038 #endif /* TREEJNTTOJACSOLVER_H_ */