4 #ifndef __multicontact_api_geometry_curve_map_hpp__ 5 #define __multicontact_api_geometry_curve_map_hpp__ 7 #include <ndcurves/curve_abc.h> 9 #include <boost/serialization/access.hpp> 10 #include <boost/serialization/base_object.hpp> 11 #include <boost/serialization/map.hpp> 12 #include <boost/serialization/shared_ptr.hpp> 13 #include <boost/serialization/string.hpp> 15 #include <ndcurves/serialization/registeration.hpp> 20 template <
typename Curve>
21 struct CurveMap :
public std::map<std::string, Curve> {
23 typedef std::map<std::string, Curve>
Parent;
28 if (this->size() != other.size())
return false;
29 for (
typename Parent::const_iterator it = this->begin(); it != this->end();
31 if (other.count(it->first) < 1)
return false;
32 if ((it->second != other.at(it->first)) &&
33 !(it->second->isApprox(other.at(it->first).get())))
41 friend class boost::serialization::access;
42 template <
class Archive>
44 ar& BOOST_SERIALIZATION_BASE_OBJECT_NVP(
Parent);
48 #endif // CURVEMAP_HPP CurveMap< Curve > CurveMap_t
Definition: curve-map.hpp:22
Definition: curve-map.hpp:21
bool operator==(const CurveMap_t &other) const
Definition: curve-map.hpp:27
void serialize(Archive &ar, const unsigned int)
Definition: curve-map.hpp:43
std::map< std::string, Curve > Parent
Definition: curve-map.hpp:23
bool operator!=(const CurveMap_t &other) const
Definition: curve-map.hpp:39