mlpack 3.4.2
tree_traits.hpp
Go to the documentation of this file.
1
14#ifndef MLPACK_CORE_TREE_TREE_TRAITS_HPP
15#define MLPACK_CORE_TREE_TREE_TRAITS_HPP
16
17namespace mlpack {
18namespace tree {
19
76template<typename TreeType>
78{
79 public:
84 static const bool HasOverlappingChildren = true;
85
89 static const bool HasDuplicatedPoints = false;
90
94 static const bool FirstPointIsCentroid = false;
95
100 static const bool HasSelfChildren = false;
101
105 static const bool RearrangesDataset = false;
106
110 static const bool BinaryTree = false;
111
116 static const bool UniqueNumDescendants = true;
117};
118
119} // namespace tree
120} // namespace mlpack
121
122#endif
The TreeTraits class provides compile-time information on the characteristics of a given tree type.
Definition: tree_traits.hpp:78
static const bool UniqueNumDescendants
This is true if the NumDescendants() method doesn't include duplicated points.
static const bool FirstPointIsCentroid
This is true if the first point of each node is the centroid of its bound.
Definition: tree_traits.hpp:94
static const bool HasOverlappingChildren
This is true if the subspaces represented by the children of a node can overlap.
Definition: tree_traits.hpp:84
static const bool RearrangesDataset
This is true if the tree rearranges points in the dataset when it is built.
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...
static const bool BinaryTree
This is true if the tree always has only two children.
static const bool HasDuplicatedPoints
This is true if a point can be included in more than one node.
Definition: tree_traits.hpp:89
Linear algebra utility functions, generally performed on matrices or vectors.
Definition: cv.hpp:1