SYNOPSIS

Public Member Functions

DualTreeTraverser (RuleType &rule)

Instantiate the dual-tree traverser with the given rule set. size_t NumBaseCases () const

Get the number of times a base case was calculated. size_t & NumBaseCases ()

Modify the number of times a base case was calculated. size_t NumPrunes () const

Get the number of prunes. size_t & NumPrunes ()

Modify the number of prunes. size_t NumScores () const

Get the number of times a node combination was scored. size_t & NumScores ()

Modify the number of times a node combination was scored. size_t NumVisited () const

Get the number of visited combinations. size_t & NumVisited ()

Modify the number of visited combinations. void Traverse (BinarySpaceTree &queryNode, BinarySpaceTree &referenceNode)

Traverse the two trees.

Private Attributes

size_t numBaseCases

The number of times a base case was calculated. size_t numPrunes

The number of prunes. size_t numScores

The number of times a node combination was scored. size_t numVisited

The number of node combinations that have been visited during traversal. RuleType & rule

Reference to the rules with which the trees will be traversed. RuleType::TraversalInfoType traversalInfo

Traversal information, held in the class so that it isn't continually being reallocated.

Detailed Description

template<typename BoundType, typename StatisticType = EmptyStatistic, typename MatType = arma::mat, typename SplitType = MeanSplit<BoundType, MatType>>template<typename RuleType>class mlpack::tree::BinarySpaceTree< BoundType, StatisticType, MatType, SplitType >::DualTreeTraverser< RuleType >

A dual-tree traverser for binary space trees; see dual_tree_traverser.hpp.

Definition at line 103 of file binary_space_tree.hpp.

Constructor & Destructor Documentation

template<typename BoundType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, typename SplitType = MeanSplit<BoundType, MatType>> template<typename RuleType > \fBmlpack::tree::BinarySpaceTree\fP< BoundType, StatisticType, MatType, SplitType >::\fBDualTreeTraverser\fP< RuleType >::\fBDualTreeTraverser\fP (RuleType &rule)

Instantiate the dual-tree traverser with the given rule set.

Member Function Documentation

template<typename BoundType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, typename SplitType = MeanSplit<BoundType, MatType>> template<typename RuleType > size_t \fBmlpack::tree::BinarySpaceTree\fP< BoundType, StatisticType, MatType, SplitType >::\fBDualTreeTraverser\fP< RuleType >::NumBaseCases () const\fC [inline]\fP

Get the number of times a base case was calculated.

Definition at line 75 of file dual_tree_traverser.hpp.

template<typename BoundType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, typename SplitType = MeanSplit<BoundType, MatType>> template<typename RuleType > size_t& \fBmlpack::tree::BinarySpaceTree\fP< BoundType, StatisticType, MatType, SplitType >::\fBDualTreeTraverser\fP< RuleType >::NumBaseCases ()\fC [inline]\fP

Modify the number of times a base case was calculated.

Definition at line 77 of file dual_tree_traverser.hpp.

template<typename BoundType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, typename SplitType = MeanSplit<BoundType, MatType>> template<typename RuleType > size_t \fBmlpack::tree::BinarySpaceTree\fP< BoundType, StatisticType, MatType, SplitType >::\fBDualTreeTraverser\fP< RuleType >::NumPrunes () const\fC [inline]\fP

Get the number of prunes.

Definition at line 60 of file dual_tree_traverser.hpp.

template<typename BoundType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, typename SplitType = MeanSplit<BoundType, MatType>> template<typename RuleType > size_t& \fBmlpack::tree::BinarySpaceTree\fP< BoundType, StatisticType, MatType, SplitType >::\fBDualTreeTraverser\fP< RuleType >::NumPrunes ()\fC [inline]\fP

Modify the number of prunes.

Definition at line 62 of file dual_tree_traverser.hpp.

template<typename BoundType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, typename SplitType = MeanSplit<BoundType, MatType>> template<typename RuleType > size_t \fBmlpack::tree::BinarySpaceTree\fP< BoundType, StatisticType, MatType, SplitType >::\fBDualTreeTraverser\fP< RuleType >::NumScores () const\fC [inline]\fP

Get the number of times a node combination was scored.

Definition at line 70 of file dual_tree_traverser.hpp.

template<typename BoundType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, typename SplitType = MeanSplit<BoundType, MatType>> template<typename RuleType > size_t& \fBmlpack::tree::BinarySpaceTree\fP< BoundType, StatisticType, MatType, SplitType >::\fBDualTreeTraverser\fP< RuleType >::NumScores ()\fC [inline]\fP

Modify the number of times a node combination was scored.

Definition at line 72 of file dual_tree_traverser.hpp.

template<typename BoundType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, typename SplitType = MeanSplit<BoundType, MatType>> template<typename RuleType > size_t \fBmlpack::tree::BinarySpaceTree\fP< BoundType, StatisticType, MatType, SplitType >::\fBDualTreeTraverser\fP< RuleType >::NumVisited () const\fC [inline]\fP

Get the number of visited combinations.

Definition at line 65 of file dual_tree_traverser.hpp.

template<typename BoundType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, typename SplitType = MeanSplit<BoundType, MatType>> template<typename RuleType > size_t& \fBmlpack::tree::BinarySpaceTree\fP< BoundType, StatisticType, MatType, SplitType >::\fBDualTreeTraverser\fP< RuleType >::NumVisited ()\fC [inline]\fP

Modify the number of visited combinations.

Definition at line 67 of file dual_tree_traverser.hpp.

template<typename BoundType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, typename SplitType = MeanSplit<BoundType, MatType>> template<typename RuleType > void \fBmlpack::tree::BinarySpaceTree\fP< BoundType, StatisticType, MatType, SplitType >::\fBDualTreeTraverser\fP< RuleType >::Traverse (\fBBinarySpaceTree\fP &queryNode, \fBBinarySpaceTree\fP &referenceNode)

Traverse the two trees. This does not reset the number of prunes.

Parameters:

queryNode The query node to be traversed.

referenceNode The reference node to be traversed.

score The score of the current node combination.

Member Data Documentation

template<typename BoundType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, typename SplitType = MeanSplit<BoundType, MatType>> template<typename RuleType > size_t \fBmlpack::tree::BinarySpaceTree\fP< BoundType, StatisticType, MatType, SplitType >::\fBDualTreeTraverser\fP< RuleType >::numBaseCases\fC [private]\fP

The number of times a base case was calculated.

Definition at line 93 of file dual_tree_traverser.hpp.

template<typename BoundType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, typename SplitType = MeanSplit<BoundType, MatType>> template<typename RuleType > size_t \fBmlpack::tree::BinarySpaceTree\fP< BoundType, StatisticType, MatType, SplitType >::\fBDualTreeTraverser\fP< RuleType >::numPrunes\fC [private]\fP

The number of prunes.

Definition at line 84 of file dual_tree_traverser.hpp.

template<typename BoundType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, typename SplitType = MeanSplit<BoundType, MatType>> template<typename RuleType > size_t \fBmlpack::tree::BinarySpaceTree\fP< BoundType, StatisticType, MatType, SplitType >::\fBDualTreeTraverser\fP< RuleType >::numScores\fC [private]\fP

The number of times a node combination was scored.

Definition at line 90 of file dual_tree_traverser.hpp.

template<typename BoundType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, typename SplitType = MeanSplit<BoundType, MatType>> template<typename RuleType > size_t \fBmlpack::tree::BinarySpaceTree\fP< BoundType, StatisticType, MatType, SplitType >::\fBDualTreeTraverser\fP< RuleType >::numVisited\fC [private]\fP

The number of node combinations that have been visited during traversal.

Definition at line 87 of file dual_tree_traverser.hpp.

template<typename BoundType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, typename SplitType = MeanSplit<BoundType, MatType>> template<typename RuleType > RuleType& \fBmlpack::tree::BinarySpaceTree\fP< BoundType, StatisticType, MatType, SplitType >::\fBDualTreeTraverser\fP< RuleType >::rule\fC [private]\fP

Reference to the rules with which the trees will be traversed.

Definition at line 81 of file dual_tree_traverser.hpp.

template<typename BoundType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, typename SplitType = MeanSplit<BoundType, MatType>> template<typename RuleType > RuleType::TraversalInfoType \fBmlpack::tree::BinarySpaceTree\fP< BoundType, StatisticType, MatType, SplitType >::\fBDualTreeTraverser\fP< RuleType >::traversalInfo\fC [private]\fP

Traversal information, held in the class so that it isn't continually being reallocated.

Definition at line 97 of file dual_tree_traverser.hpp.

Author

Generated automatically by Doxygen for MLPACK from the source code.