add serialization code to TableFactor

release/4.3a0
Varun Agrawal 2025-01-03 13:13:51 -05:00
parent cbcfab4176
commit 5c4194e7cd
1 changed files with 19 additions and 0 deletions

View File

@ -31,6 +31,12 @@
#include <utility>
#include <vector>
#if GTSAM_ENABLE_BOOST_SERIALIZATION
#include <gtsam/base/MatrixSerialization.h>
#include <boost/serialization/nvp.hpp>
#endif
namespace gtsam {
class DiscreteConditional;
@ -342,6 +348,19 @@ class GTSAM_EXPORT TableFactor : public DiscreteFactor {
double error(const HybridValues& values) const override;
/// @}
private:
#if GTSAM_ENABLE_BOOST_SERIALIZATION
/** Serialization function */
friend class boost::serialization::access;
template <class ARCHIVE>
void serialize(ARCHIVE& ar, const unsigned int /*version*/) {
ar& BOOST_SERIALIZATION_BASE_OBJECT_NVP(Base);
ar& BOOST_SERIALIZATION_NVP(sparse_table_);
ar& BOOST_SERIALIZATION_NVP(denominators_);
ar& BOOST_SERIALIZATION_NVP(sorted_dkeys_);
}
#endif
};
// traits