21 #ifndef __MLPACK_CORE_TREE_BINARY_SPACE_TREE_BINARY_SPACE_TREE_HPP
22 #define __MLPACK_CORE_TREE_BINARY_SPACE_TREE_BINARY_SPACE_TREE_HPP
27 #include "../statistic.hpp"
55 template<
typename BoundType,
57 typename MatType = arma::mat,
98 template<
typename RuleType>
102 template<
typename RuleType>
125 std::vector<size_t>& oldFromNew,
142 std::vector<size_t>& oldFromNew,
143 std::vector<size_t>& newFromOld,
184 std::vector<size_t>& oldFromNew,
212 std::vector<size_t>& oldFromNew,
213 std::vector<size_t>& newFromOld,
306 typename BoundType::MetricType
Metric()
const {
return bound.Metric(); }
374 size_t Point(
const size_t index)
const;
395 template<
typename VecType>
400 return bound.MinDistance(point);
404 template<
typename VecType>
409 return bound.MaxDistance(point);
413 template<
typename VecType>
418 return bound.RangeDistance(point);
492 void SplitNode(MatType& data, std::vector<size_t>& oldFromNew);
506 #include "binary_space_tree_impl.hpp"