mlpack  2.0.1
traits.hpp
Go to the documentation of this file.
1 
14 #ifndef __MLPACK_CORE_TREE_BINARY_SPACE_TREE_TRAITS_HPP
15 #define __MLPACK_CORE_TREE_BINARY_SPACE_TREE_TRAITS_HPP
16 
18 
19 namespace mlpack {
20 namespace tree {
21 
28 template<typename MetricType,
29  typename StatisticType,
30  typename MatType,
31  template<typename BoundMetricType> class BoundType,
32  template<typename SplitBoundType, typename SplitMatType>
33  class SplitType>
34 class TreeTraits<BinarySpaceTree<MetricType, StatisticType, MatType, BoundType, SplitType>>
35 {
36  public:
42  static const bool HasOverlappingChildren = false;
43 
47  static const bool FirstPointIsCentroid = false;
48 
52  static const bool HasSelfChildren = false;
53 
57  static const bool RearrangesDataset = true;
58 
62  static const bool BinaryTree = true;
63 };
64 
65 } // namespace tree
66 } // namespace mlpack
67 
68 #endif
Linear algebra utility functions, generally performed on matrices or vectors.
static const bool RearrangesDataset
This is true if the tree rearranges points in the dataset when it is built.
A binary space partitioning tree, such as a KD-tree or a ball tree.
static const bool HasOverlappingChildren
This is true if the subspaces represented by the children of a node can overlap.
Definition: tree_traits.hpp:86
static const bool FirstPointIsCentroid
This is true if Point(0) is the centroid of the node.
Definition: tree_traits.hpp:91
The TreeTraits class provides compile-time information on the characteristics of a given tree type...
Definition: tree_traits.hpp:79
static const bool BinaryTree
This is true if the tree always has only two children.
static const bool HasSelfChildren
This is true if the points contained in the first child of a node (Child(0)) are also contained in th...
Definition: tree_traits.hpp:97