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