typedef float CoordinateType; class Coordinate { private: friend class boost::serialization::access; CoordinateType m_xCoordinate; CoordinateType m_yCoordinate; CoordinateType m_zCoordinate; template void serialize(Archive & ar, const unsigned int version) { ar & m_xCoordinate; ar & m_yCoordinate; ar & m_zCoordinate; } public: Coordinate(CoordinateType p_xCoordinate, CoordinateType p_yCoordinate, CoordinateType p_zCoordinate); };