From df7850494cd516c06f0e170eea56b27507a7f350 Mon Sep 17 00:00:00 2001 From: Varun Agrawal Date: Sat, 14 Sep 2024 15:07:27 -0400 Subject: [PATCH] fix testHybridEstimation test --- gtsam/hybrid/tests/testHybridEstimation.cpp | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/gtsam/hybrid/tests/testHybridEstimation.cpp b/gtsam/hybrid/tests/testHybridEstimation.cpp index 8f9875a9a..76e5880ee 100644 --- a/gtsam/hybrid/tests/testHybridEstimation.cpp +++ b/gtsam/hybrid/tests/testHybridEstimation.cpp @@ -542,9 +542,8 @@ std::shared_ptr mixedVarianceFactor( double logNormalizationConstant = log(1.0 / noise_tight); double logConstant = -0.5 * d * log2pi + logNormalizationConstant; - auto func = - [&](const Assignment& assignment, - const GaussianFactor::shared_ptr& gf) -> GaussianFactorValuePair { + auto func = [&](const Assignment& assignment, + const GaussianFactor::shared_ptr& gf) { if (assignment.at(mode) != tight_index) { double factor_log_constant = -0.5 * d * log2pi + log(1.0 / noise_loose); @@ -556,14 +555,19 @@ std::shared_ptr mixedVarianceFactor( } _gfg.emplace_shared(c); - return {std::make_shared(_gfg), 0.0}; + return std::make_shared(_gfg); } else { - return {dynamic_pointer_cast(gf), 0.0}; + return dynamic_pointer_cast(gf); } }; auto updated_components = gmf->factors().apply(func); + auto updated_pairs = HybridGaussianFactor::FactorValuePairs( + updated_components, + [](const GaussianFactor::shared_ptr& gf) -> GaussianFactorValuePair { + return {gf, 0.0}; + }); auto updated_gmf = std::make_shared( - gmf->continuousKeys(), gmf->discreteKeys(), updated_components); + gmf->continuousKeys(), gmf->discreteKeys(), updated_pairs); return updated_gmf; }