diff --git a/gtsam/hybrid/GaussianMixtureFactor.h b/gtsam/hybrid/GaussianMixtureFactor.h index 8e1a95e9d..1325cfe93 100644 --- a/gtsam/hybrid/GaussianMixtureFactor.h +++ b/gtsam/hybrid/GaussianMixtureFactor.h @@ -144,7 +144,7 @@ class GTSAM_EXPORT GaussianMixtureFactor : public HybridFactor { double error(const HybridValues &values) const override; /// Getter for GaussianFactor decision tree - Factors factors() const { return factors_; } + const Factors &factors() const { return factors_; } /// Add MixtureFactor to a Sum, syntactic sugar. friend GaussianFactorGraphTree &operator+=( diff --git a/gtsam/hybrid/tests/testHybridEstimation.cpp b/gtsam/hybrid/tests/testHybridEstimation.cpp index 836b5cb23..e74990fe6 100644 --- a/gtsam/hybrid/tests/testHybridEstimation.cpp +++ b/gtsam/hybrid/tests/testHybridEstimation.cpp @@ -530,8 +530,7 @@ std::shared_ptr mixedVarianceFactor( c(i) = std::sqrt(2.0 * (logConstant - factor_log_constant)); } - auto constantFactor = std::make_shared(c); - _gfg.push_back(constantFactor); + _gfg.emplace_shared(c); return std::make_shared(_gfg); } else { return dynamic_pointer_cast(gf); @@ -607,12 +606,6 @@ TEST(HybridEstimation, ModeSelection) { auto fg = bn.toFactorGraph(vv); auto expected_posterior = fg.eliminateSequential(); - // graph.print(); - // gfg->print("Original Gaussian Factor Graph:"); - // fg.print("\n\nFrom Bayes Net"); - - // bayesNet->print("\n\nBayes Net from FG"); - // expected_posterior->print("\n\n"); EXPECT(assert_equal(*expected_posterior, *bayesNet, 1e-6)); } @@ -644,9 +637,8 @@ TEST(HybridEstimation, ModeSelection2) { auto fg = bn.toFactorGraph(vv); auto expected_posterior = fg.eliminateSequential(); - // expected_posterior->print("\n\n\nLikelihood BN:"); - // std::cout << "\n\n==================\n\n" << std::endl; + // ===================================== HybridNonlinearFactorGraph graph; Values initial; @@ -681,7 +673,6 @@ TEST(HybridEstimation, ModeSelection2) { HybridBayesNet::shared_ptr bayesNet = gfg->eliminateSequential(); - // bayesNet->print(); EXPECT(assert_equal(*expected_posterior, *bayesNet, 1e-6)); }