some formatting and improved printing

release/4.3a0
Varun Agrawal 2022-06-07 14:11:49 -04:00
parent fc939b08e0
commit 60e3321da3
3 changed files with 8 additions and 10 deletions

View File

@ -36,8 +36,7 @@ GaussianMixture::GaussianMixture(
conditionals_(conditionals) {} conditionals_(conditionals) {}
/* *******************************************************************************/ /* *******************************************************************************/
const GaussianMixture::Conditionals & const GaussianMixture::Conditionals &GaussianMixture::conditionals() {
GaussianMixture::conditionals() {
return conditionals_; return conditionals_;
} }
@ -48,8 +47,8 @@ GaussianMixture GaussianMixture::FromConditionals(
const std::vector<GaussianConditional::shared_ptr> &conditionalsList) { const std::vector<GaussianConditional::shared_ptr> &conditionalsList) {
Conditionals dt(discreteParents, conditionalsList); Conditionals dt(discreteParents, conditionalsList);
return GaussianMixture(continuousFrontals, continuousParents, return GaussianMixture(continuousFrontals, continuousParents, discreteParents,
discreteParents, dt); dt);
} }
/* *******************************************************************************/ /* *******************************************************************************/
@ -66,8 +65,7 @@ GaussianMixture::Sum GaussianMixture::add(
} }
/* *******************************************************************************/ /* *******************************************************************************/
GaussianMixture::Sum GaussianMixture::Sum GaussianMixture::asGaussianFactorGraphTree() const {
GaussianMixture::asGaussianFactorGraphTree() const {
auto lambda = [](const GaussianFactor::shared_ptr &factor) { auto lambda = [](const GaussianFactor::shared_ptr &factor) {
GaussianFactorGraph result; GaussianFactorGraph result;
result.push_back(factor); result.push_back(factor);
@ -106,13 +104,13 @@ bool GaussianMixture::equals(const HybridFactor &lf, double tol) const {
/* *******************************************************************************/ /* *******************************************************************************/
void GaussianMixture::print(const std::string &s, void GaussianMixture::print(const std::string &s,
const KeyFormatter &formatter) const { const KeyFormatter &formatter) const {
std::cout << s; std::cout << s;
if (isContinuous()) std::cout << "Continuous "; if (isContinuous()) std::cout << "Continuous ";
if (isDiscrete()) std::cout << "Discrete "; if (isDiscrete()) std::cout << "Discrete ";
if (isHybrid()) std::cout << "Hybrid "; if (isHybrid()) std::cout << "Hybrid ";
BaseConditional::print("", formatter); BaseConditional::print("", formatter);
std::cout << "\nDiscrete Keys = "; std::cout << " Discrete Keys = ";
for (auto &dk : discreteKeys()) { for (auto &dk : discreteKeys()) {
std::cout << "(" << formatter(dk.first) << ", " << dk.second << "), "; std::cout << "(" << formatter(dk.first) << ", " << dk.second << "), ";
} }

View File

@ -47,7 +47,7 @@ bool HybridDiscreteFactor::equals(const HybridFactor &lf, double tol) const {
void HybridDiscreteFactor::print(const std::string &s, void HybridDiscreteFactor::print(const std::string &s,
const KeyFormatter &formatter) const { const KeyFormatter &formatter) const {
HybridFactor::print(s, formatter); HybridFactor::print(s, formatter);
inner_->print("inner: ", formatter); inner_->print("\n", formatter);
}; };
} // namespace gtsam } // namespace gtsam

View File

@ -41,7 +41,7 @@ bool HybridGaussianFactor::equals(const HybridFactor &other, double tol) const {
void HybridGaussianFactor::print(const std::string &s, void HybridGaussianFactor::print(const std::string &s,
const KeyFormatter &formatter) const { const KeyFormatter &formatter) const {
HybridFactor::print(s, formatter); HybridFactor::print(s, formatter);
inner_->print("inner: ", formatter); inner_->print("\n", formatter);
}; };
} // namespace gtsam } // namespace gtsam