diff --git a/gtsam/hybrid/HybridBayesNet.cpp b/gtsam/hybrid/HybridBayesNet.cpp index 6e96afb25..3c77e3f9a 100644 --- a/gtsam/hybrid/HybridBayesNet.cpp +++ b/gtsam/hybrid/HybridBayesNet.cpp @@ -206,7 +206,7 @@ GaussianBayesNet HybridBayesNet::choose( for (auto &&conditional : *this) { if (auto gm = conditional->asHybrid()) { // If conditional is hybrid, select based on assignment. - gbn.push_back((*gm)(assignment)); + gbn.push_back(gm->choose(assignment)); } else if (auto gc = conditional->asGaussian()) { // If continuous only, add Gaussian conditional. gbn.push_back(gc); diff --git a/gtsam/hybrid/HybridBayesNet.h b/gtsam/hybrid/HybridBayesNet.h index 22a43f3bd..62688e8b2 100644 --- a/gtsam/hybrid/HybridBayesNet.h +++ b/gtsam/hybrid/HybridBayesNet.h @@ -127,6 +127,8 @@ class GTSAM_EXPORT HybridBayesNet : public BayesNet { * @brief Get the Gaussian Bayes Net which corresponds to a specific discrete * value assignment. * + * @note Any pure discrete factors are ignored. + * * @param assignment The discrete value assignment for the discrete keys. * @return GaussianBayesNet */