jntarray.hpp
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef KDL_JNTARRAY_HPP
00023 #define KDL_JNTARRAY_HPP
00024
00025 #include "frames.hpp"
00026 #include "jacobian.hpp"
00027
00028 #include <Eigen/Core>
00029
00030 namespace KDL
00031 {
00069 class JntArray
00070 {
00071 public:
00072 Eigen::VectorXd data;
00073
00081 JntArray();
00092 JntArray(unsigned int size);
00096 JntArray(const JntArray& arg);
00097 ~JntArray();
00107 void resize(unsigned int newSize);
00108
00109 JntArray& operator = ( const JntArray& arg);
00118 double operator()(unsigned int i,unsigned int j=0)const;
00127 double& operator()(unsigned int i,unsigned int j=0);
00132 unsigned int rows()const;
00136 unsigned int columns()const;
00137
00138 friend void Add(const JntArray& src1,const JntArray& src2,JntArray& dest);
00139 friend void Subtract(const JntArray& src1,const JntArray& src2,JntArray& dest);
00140 friend void Multiply(const JntArray& src,const double& factor,JntArray& dest);
00141 friend void Divide(const JntArray& src,const double& factor,JntArray& dest);
00154 friend void MultiplyJacobian(const Jacobian& jac, const JntArray& src, Twist& dest);
00155 friend void SetToZero(JntArray& array);
00156 friend bool Equal(const JntArray& src1,const JntArray& src2,double eps);
00157
00158 friend bool operator==(const JntArray& src1,const JntArray& src2);
00159
00160 };
00161
00162 bool operator==(const JntArray& src1,const JntArray& src2);
00163
00164
00174 void Add(const JntArray& src1,const JntArray& src2,JntArray& dest);
00184 void Subtract(const JntArray& src1,const JntArray& src2,JntArray& dest);
00194 void Multiply(const JntArray& src,const double& factor,JntArray& dest);
00204 void Divide(const JntArray& src,const double& factor,JntArray& dest);
00217 void MultiplyJacobian(const Jacobian& jac, const JntArray& src, Twist& dest);
00223 void SetToZero(JntArray& array);
00234 bool Equal(const JntArray& src1,const JntArray& src2,double eps=epsilon);
00235
00236 }
00237
00238 #endif