add Serialization function to Unit3 and EssentialMatrix classes
parent
e4f2d39a35
commit
fe81828a2c
|
@ -157,6 +157,33 @@ public:
|
|||
|
||||
/// @}
|
||||
|
||||
private:
|
||||
|
||||
/// @name Advanced Interface
|
||||
/// @{
|
||||
|
||||
/** Serialization function */
|
||||
friend class boost::serialization::access;
|
||||
template<class ARCHIVE>
|
||||
void serialize(ARCHIVE & ar, const unsigned int version) {
|
||||
ar & boost::serialization::make_nvp("EssentialMatrix",
|
||||
boost::serialization::base_object<Value>(*this));
|
||||
ar & BOOST_SERIALIZATION_NVP(aRb_);
|
||||
ar & BOOST_SERIALIZATION_NVP(aTb_);
|
||||
|
||||
ar & boost::serialization::make_nvp("E11", E_(0,0));
|
||||
ar & boost::serialization::make_nvp("E12", E_(0,1));
|
||||
ar & boost::serialization::make_nvp("E13", E_(0,2));
|
||||
ar & boost::serialization::make_nvp("E21", E_(1,0));
|
||||
ar & boost::serialization::make_nvp("E22", E_(1,1));
|
||||
ar & boost::serialization::make_nvp("E23", E_(1,2));
|
||||
ar & boost::serialization::make_nvp("E31", E_(2,0));
|
||||
ar & boost::serialization::make_nvp("E32", E_(2,1));
|
||||
ar & boost::serialization::make_nvp("E33", E_(2,2));
|
||||
}
|
||||
|
||||
/// @}
|
||||
|
||||
};
|
||||
|
||||
} // gtsam
|
||||
|
|
|
@ -136,6 +136,24 @@ public:
|
|||
Vector localCoordinates(const Unit3& s) const;
|
||||
|
||||
/// @}
|
||||
|
||||
private:
|
||||
|
||||
/// @name Advanced Interface
|
||||
/// @{
|
||||
|
||||
/** Serialization function */
|
||||
friend class boost::serialization::access;
|
||||
template<class ARCHIVE>
|
||||
void serialize(ARCHIVE & ar, const unsigned int version) {
|
||||
ar & boost::serialization::make_nvp("Unit3",
|
||||
boost::serialization::base_object<Value>(*this));
|
||||
ar & BOOST_SERIALIZATION_NVP(p_);
|
||||
ar & BOOST_SERIALIZATION_NVP(B_);
|
||||
}
|
||||
|
||||
/// @}
|
||||
|
||||
};
|
||||
|
||||
} // namespace gtsam
|
||||
|
|
Loading…
Reference in New Issue