From cce2722c4dcaed69ad736e660e433752c1135abc Mon Sep 17 00:00:00 2001 From: Varun Agrawal Date: Tue, 26 Jul 2022 18:02:09 -0400 Subject: [PATCH] add to hybrid group --- gtsam/hybrid/GaussianMixture.h | 1 + gtsam/hybrid/GaussianMixtureFactor.h | 1 + gtsam/hybrid/HybridBayesNet.h | 2 ++ gtsam/hybrid/HybridBayesTree.h | 5 ++++- gtsam/hybrid/HybridConditional.h | 2 ++ gtsam/hybrid/HybridDiscreteFactor.h | 2 ++ gtsam/hybrid/HybridEliminationTree.h | 2 ++ gtsam/hybrid/HybridFactor.h | 2 ++ gtsam/hybrid/HybridGaussianFactor.h | 2 ++ gtsam/hybrid/HybridGaussianFactorGraph.h | 13 +++++++++++-- gtsam/hybrid/HybridGaussianISAM.h | 5 +++++ gtsam/hybrid/HybridJunctionTree.h | 3 ++- 12 files changed, 36 insertions(+), 4 deletions(-) diff --git a/gtsam/hybrid/GaussianMixture.h b/gtsam/hybrid/GaussianMixture.h index fc1eb0f06..d065a16cd 100644 --- a/gtsam/hybrid/GaussianMixture.h +++ b/gtsam/hybrid/GaussianMixture.h @@ -41,6 +41,7 @@ namespace gtsam { * where i indexes the components and k_i is a component-wise normalization * constant. * + * @ingroup hybrid */ class GTSAM_EXPORT GaussianMixture : public HybridFactor, diff --git a/gtsam/hybrid/GaussianMixtureFactor.h b/gtsam/hybrid/GaussianMixtureFactor.h index 6c90ee6a7..0e6ea29a9 100644 --- a/gtsam/hybrid/GaussianMixtureFactor.h +++ b/gtsam/hybrid/GaussianMixtureFactor.h @@ -40,6 +40,7 @@ using GaussianFactorVector = std::vector; * Represents the underlying Gaussian Mixture as a Decision Tree, where the set * of discrete variables indexes to the continuous gaussian distribution. * + * @ingroup hybrid */ class GTSAM_EXPORT GaussianMixtureFactor : public HybridFactor { public: diff --git a/gtsam/hybrid/HybridBayesNet.h b/gtsam/hybrid/HybridBayesNet.h index 43eead280..04be5153a 100644 --- a/gtsam/hybrid/HybridBayesNet.h +++ b/gtsam/hybrid/HybridBayesNet.h @@ -25,6 +25,8 @@ namespace gtsam { /** * A hybrid Bayes net is a collection of HybridConditionals, which can have * discrete conditionals, Gaussian mixtures, or pure Gaussian conditionals. + * + * @ingroup hybrid */ class GTSAM_EXPORT HybridBayesNet : public BayesNet { public: diff --git a/gtsam/hybrid/HybridBayesTree.h b/gtsam/hybrid/HybridBayesTree.h index 0b89ca8c4..09e7425cf 100644 --- a/gtsam/hybrid/HybridBayesTree.h +++ b/gtsam/hybrid/HybridBayesTree.h @@ -34,8 +34,11 @@ class HybridConditional; class VectorValues; /* ************************************************************************* */ -/** A clique in a HybridBayesTree +/** + * @brief A clique in a HybridBayesTree * which is a HybridConditional internally. + * + * @ingroup hybrid */ class GTSAM_EXPORT HybridBayesTreeClique : public BayesTreeCliqueBase { diff --git a/gtsam/hybrid/HybridFactor.h b/gtsam/hybrid/HybridFactor.h index 3e91e2487..d139f8a9f 100644 --- a/gtsam/hybrid/HybridFactor.h +++ b/gtsam/hybrid/HybridFactor.h @@ -40,6 +40,8 @@ DiscreteKeys CollectDiscreteKeys(const DiscreteKeys &key1, * - HybridDiscreteFactor * - GaussianMixtureFactor * - GaussianMixture + * + * @ingroup hybrid */ class GTSAM_EXPORT HybridFactor : public Factor { private: diff --git a/gtsam/hybrid/HybridGaussianFactor.h b/gtsam/hybrid/HybridGaussianFactor.h index 2a92c717c..8bffead94 100644 --- a/gtsam/hybrid/HybridGaussianFactor.h +++ b/gtsam/hybrid/HybridGaussianFactor.h @@ -27,6 +27,8 @@ namespace gtsam { * A HybridGaussianFactor is a layer over GaussianFactor so that we do not have * a diamond inheritance i.e. an extra factor type that inherits from both * HybridFactor and GaussianFactor. + * + * @ingroup hybrid */ class GTSAM_EXPORT HybridGaussianFactor : public HybridFactor { private: diff --git a/gtsam/hybrid/HybridGaussianFactorGraph.h b/gtsam/hybrid/HybridGaussianFactorGraph.h index 6dc9cd409..599357e38 100644 --- a/gtsam/hybrid/HybridGaussianFactorGraph.h +++ b/gtsam/hybrid/HybridGaussianFactorGraph.h @@ -36,7 +36,14 @@ class DecisionTreeFactor; class JacobianFactor; -/** Main elimination function for HybridGaussianFactorGraph */ +/** + * @brief Main elimination function for HybridGaussianFactorGraph. + * + * @param factors The factor graph to eliminate. + * @param keys The elimination ordering. + * @return The conditional on the ordering keys and the remaining factors. + * @ingroup hybrid + */ GTSAM_EXPORT std::pair, HybridFactor::shared_ptr> EliminateHybrid(const HybridGaussianFactorGraph& factors, const Ordering& keys); @@ -66,10 +73,12 @@ struct EliminationTraits { }; /** - * Gaussian Hybrid Factor Graph + * Hybrid Gaussian Factor Graph * ----------------------- * This is the linearized version of a hybrid factor graph. * Everything inside needs to be hybrid factor or hybrid conditional. + * + * @ingroup hybrid */ class GTSAM_EXPORT HybridGaussianFactorGraph : public FactorGraph, diff --git a/gtsam/hybrid/HybridGaussianISAM.h b/gtsam/hybrid/HybridGaussianISAM.h index d5b6271da..572a68ec3 100644 --- a/gtsam/hybrid/HybridGaussianISAM.h +++ b/gtsam/hybrid/HybridGaussianISAM.h @@ -26,6 +26,11 @@ namespace gtsam { +/** + * @brief + * + * @ingroup hybrid + */ class GTSAM_EXPORT HybridGaussianISAM : public ISAM { public: typedef ISAM Base; diff --git a/gtsam/hybrid/HybridJunctionTree.h b/gtsam/hybrid/HybridJunctionTree.h index cad1e15a1..4b0c369a8 100644 --- a/gtsam/hybrid/HybridJunctionTree.h +++ b/gtsam/hybrid/HybridJunctionTree.h @@ -45,7 +45,8 @@ class HybridEliminationTree; * EliminationTree, except that in the JunctionTree, at each node multiple * variables are eliminated at a time. * - * \addtogroup Multifrontal + * \ingroup Multifrontal + * \ingroup hybrid * \nosubgrouping */ class GTSAM_EXPORT HybridJunctionTree