From ed1f8734c969818f5660f2fc1c0fc7be5cb181a9 Mon Sep 17 00:00:00 2001 From: Varun Agrawal Date: Sat, 8 Feb 2025 22:43:19 -0500 Subject: [PATCH] wrap HybridSmoother --- gtsam/hybrid/hybrid.i | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/gtsam/hybrid/hybrid.i b/gtsam/hybrid/hybrid.i index 2d59c100f..19ea9ef42 100644 --- a/gtsam/hybrid/hybrid.i +++ b/gtsam/hybrid/hybrid.i @@ -243,9 +243,8 @@ class HybridNonlinearFactorGraph { #include class HybridNonlinearFactor : gtsam::HybridFactor { - HybridNonlinearFactor( - const gtsam::DiscreteKey& discreteKey, - const std::vector& factors); + HybridNonlinearFactor(const gtsam::DiscreteKey& discreteKey, + const std::vector& factors); HybridNonlinearFactor( const gtsam::DiscreteKey& discreteKey, @@ -266,4 +265,19 @@ class HybridNonlinearFactor : gtsam::HybridFactor { gtsam::DefaultKeyFormatter) const; }; +#include +class HybridSmoother { + HybridSmoother(const std::optional marginalThreshold = std::nullopt); + + const gtsam::DiscreteValues& fixedValues() const; + void reInitialize(gtsam::HybridBayesNet& hybridBayesNet); + + void update( + const gtsam::HybridGaussianFactorGraph& graph, + std::optional maxNrLeaves = std::nullopt, + const std::optional given_ordering = std::nullopt); + + HybridValues optimize() const; +}; + } // namespace gtsam