From 5c4194e7cd800c8cd232f92a63dbd8e10b935340 Mon Sep 17 00:00:00 2001 From: Varun Agrawal Date: Fri, 3 Jan 2025 13:13:51 -0500 Subject: [PATCH] add serialization code to TableFactor --- gtsam/discrete/TableFactor.h | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/gtsam/discrete/TableFactor.h b/gtsam/discrete/TableFactor.h index 5ddb4ab43..a2fdb4d32 100644 --- a/gtsam/discrete/TableFactor.h +++ b/gtsam/discrete/TableFactor.h @@ -31,6 +31,12 @@ #include #include +#if GTSAM_ENABLE_BOOST_SERIALIZATION +#include + +#include +#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 + 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