use KeyVector and iterator constructor

release/4.3a0
Varun Agrawal 2022-06-04 11:45:42 -04:00
parent e25b0c8879
commit 28db8b20ff
1 changed files with 6 additions and 8 deletions

View File

@ -82,14 +82,12 @@ HybridBayesNet HybridBayesNet::prune(
// reverse keys to get a natural ordering // reverse keys to get a natural ordering
std::reverse(discreteKeys.begin(), discreteKeys.end()); std::reverse(discreteKeys.begin(), discreteKeys.end());
// Convert from boost::iterator_range to std::vector. // Convert from boost::iterator_range to KeyVector
std::vector<Key> frontals, parents; // so we can pass it to constructor.
for (Key key : gaussianMixture->frontals()) { KeyVector frontals(gaussianMixture->frontals().begin(),
frontals.push_back(key); gaussianMixture->frontals().end()),
} parents(gaussianMixture->parents().begin(),
for (Key key : gaussianMixture->parents()) { gaussianMixture->parents().end());
parents.push_back(key);
}
// Create the new gaussian mixture and add it to the bayes net. // Create the new gaussian mixture and add it to the bayes net.
auto prunedGaussianMixture = boost::make_shared<GaussianMixture>( auto prunedGaussianMixture = boost::make_shared<GaussianMixture>(