remove redundancy from HybridConditional constructors

release/4.3a0
Varun Agrawal 2024-09-16 13:31:03 -04:00
parent 4302ee33c9
commit 8cb95d5b5a
1 changed files with 4 additions and 11 deletions

View File

@ -28,13 +28,8 @@ HybridConditional::HybridConditional(const KeyVector &continuousFrontals,
const DiscreteKeys &discreteFrontals, const DiscreteKeys &discreteFrontals,
const KeyVector &continuousParents, const KeyVector &continuousParents,
const DiscreteKeys &discreteParents) const DiscreteKeys &discreteParents)
: HybridConditional( : HybridConditional(CollectKeys(continuousFrontals, continuousParents),
CollectKeys( CollectDiscreteKeys(discreteFrontals, discreteParents),
{continuousFrontals.begin(), continuousFrontals.end()},
KeyVector{continuousParents.begin(), continuousParents.end()}),
CollectDiscreteKeys(
{discreteFrontals.begin(), discreteFrontals.end()},
{discreteParents.begin(), discreteParents.end()}),
continuousFrontals.size() + discreteFrontals.size()) {} continuousFrontals.size() + discreteFrontals.size()) {}
/* ************************************************************************ */ /* ************************************************************************ */
@ -56,9 +51,7 @@ HybridConditional::HybridConditional(
/* ************************************************************************ */ /* ************************************************************************ */
HybridConditional::HybridConditional( HybridConditional::HybridConditional(
const std::shared_ptr<HybridGaussianConditional> &gaussianMixture) const std::shared_ptr<HybridGaussianConditional> &gaussianMixture)
: BaseFactor(KeyVector(gaussianMixture->keys().begin(), : BaseFactor(gaussianMixture->continuousKeys(),
gaussianMixture->keys().begin() +
gaussianMixture->nrContinuous()),
gaussianMixture->discreteKeys()), gaussianMixture->discreteKeys()),
BaseConditional(gaussianMixture->nrFrontals()) { BaseConditional(gaussianMixture->nrFrontals()) {
inner_ = gaussianMixture; inner_ = gaussianMixture;