14 #ifndef MLPACK_CORE_TREE_BINARY_SPACE_TREE_MEAN_SPLIT_HPP    15 #define MLPACK_CORE_TREE_BINARY_SPACE_TREE_MEAN_SPLIT_HPP    28 template<
typename BoundType, 
typename MatType = arma::mat>
    54   static bool SplitNode(
const BoundType& bound,
    78     return split::PerformSplit<MatType, MeanSplit>(data, begin, count,
   102                              std::vector<size_t>& oldFromNew)
   104     return split::PerformSplit<MatType, MeanSplit>(data, begin, count,
   105         splitInfo, oldFromNew);
   114   template<
typename VecType>
   126 #include "mean_split_impl.hpp" Linear algebra utility functions, generally performed on matrices or vectors. 
The core includes that mlpack expects; standard C++ includes and Armadillo. 
static size_t PerformSplit(MatType &data, const size_t begin, const size_t count, const SplitInfo &splitInfo)
Perform the split process according to the information about the split. 
static size_t PerformSplit(MatType &data, const size_t begin, const size_t count, const SplitInfo &splitInfo, std::vector< size_t > &oldFromNew)
Perform the split process according to the information about the split and return the list of changed...
An information about the partition. 
size_t splitDimension
The dimension to split the node on. 
static bool AssignToLeftNode(const VecType &point, const SplitInfo &splitInfo)
Indicates that a point should be assigned to the left subtree. 
A binary space partitioning tree node is split into its left and right child. 
double splitVal
The split in dimension splitDimension is based on this value. 
static bool SplitNode(const BoundType &bound, MatType &data, const size_t begin, const size_t count, SplitInfo &splitInfo)
Find the partition of the node.