4 #include <rtt/types/TransportPlugin.hpp> 6 #include <boost/serialization/vector.hpp> 7 #include <boost/serialization/array.hpp> 8 #include <kdl/frames.hpp> 9 #include <kdl/jacobian.hpp> 10 #include <kdl/framevel.hpp> 11 #include <kdl/jntarray.hpp> 12 #include <kdl/jntarrayvel.hpp> 13 #include <Eigen/Dense> 20 using namespace Eigen;
24 namespace serialization{
26 template<
class Archive,
35 const Eigen::Matrix<S, Rows_, Cols_, Ops_, MaxRows_, MaxCols_> & g,
36 const unsigned int version)
43 ar & boost::serialization::make_array(g.data(), rows * cols);
46 template<
class Archive,
55 Eigen::Matrix<S, Rows_, Cols_, Ops_, MaxRows_, MaxCols_> & g,
56 const unsigned int version)
62 ar & boost::serialization::make_array(g.data(), rows * cols);
65 template<
class Archive,
74 Eigen::Matrix<S, Rows_, Cols_, Ops_, MaxRows_, MaxCols_> & g,
75 const unsigned int version)
77 split_free(ar, g, version);
85 namespace serialization{
89 const unsigned int version)
91 ar & make_array(g.
data,9);
96 const unsigned int version)
98 ar & make_array(g.
data,3);
103 const unsigned int version)
111 const unsigned int version)
119 const unsigned int version)
121 ar & make_array(g.
p.
data,3);
122 ar & make_array(g.
M.
data,9);
127 const unsigned int version)
134 const unsigned int version)
141 const unsigned int version)
151 bool MQKDLPlugin::registerTransport(std::string name,
TypeInfo* ti)
153 if ( name ==
"KDL.Vector" )
155 if ( name ==
"KDL.Rotation" )
157 if ( name ==
"KDL.Frame" )
159 if ( name ==
"KDL.Wrench" )
161 if ( name ==
"KDL.Twist" )
163 if ( name ==
"KDL.Jacobian" )
165 if ( name ==
"KDL.JntArray" )
167 if ( name ==
"KDL.JntArrayVel" )
173 std::string MQKDLPlugin::getTransportName()
const {
177 std::string MQKDLPlugin::getTypekitName()
const {
180 std::string MQKDLPlugin::getName()
const {
181 return "kdl-mqueue-types";
#define ORO_TYPEKIT_PLUGIN(TYPEKIT)
EIGEN_MAKE_ALIGNED_OPERATOR_NEW Eigen::Matrix< double, 6, Eigen::Dynamic > data
void load(Archive &ar, Eigen::Matrix< S, Rows_, Cols_, Ops_, MaxRows_, MaxCols_ > &g, const unsigned int version)
bool addProtocol(int protocol_id, TypeTransporter *tt)
void save(Archive &ar, const Eigen::Matrix< S, Rows_, Cols_, Ops_, MaxRows_, MaxCols_ > &g, const unsigned int version)
void serialize(Archive &ar, KDL::JntArrayVel &g, const unsigned int version)
#define ORO_MQUEUE_PROTOCOL_ID