BinarySpaceTree< MetricType, StatisticType, MatType, BoundType, SplitType >::BreadthFirstDualTreeTraverser< RuleType > Class Template Reference

Public Types

typedef QueueFrame< BinarySpaceTree, typename RuleType::TraversalInfoType > QueueFrameType
 

Public Member Functions

 BreadthFirstDualTreeTraverser (RuleType &rule)
 Instantiate the dual-tree traverser with the given rule set. More...

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

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

 
size_t NumPrunes () const
 Get the number of prunes. More...

 
size_t & NumPrunes ()
 Modify the number of prunes. More...

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

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

 
size_t NumVisited () const
 Get the number of visited combinations. More...

 
size_t & NumVisited ()
 Modify the number of visited combinations. More...

 
void Traverse (BinarySpaceTree &queryNode, BinarySpaceTree &referenceNode)
 Traverse the two trees. More...

 
void Traverse (BinarySpaceTree &queryNode, std::priority_queue< QueueFrameType > &referenceQueue)
 

Detailed Description


template<typename MetricType, typename StatisticType = EmptyStatistic, typename MatType = arma::mat, template< typename BoundMetricType, typename... > class BoundType = bound::HRectBound, template< typename SplitBoundType, typename SplitMatType > class SplitType = MidpointSplit>

template
<
typename
RuleType
>

class mlpack::tree::BinarySpaceTree< MetricType, StatisticType, MatType, BoundType, SplitType >::BreadthFirstDualTreeTraverser< RuleType >

Definition at line 103 of file binary_space_tree.hpp.

Member Typedef Documentation

◆ QueueFrameType

typedef QueueFrame<BinarySpaceTree, typename RuleType::TraversalInfoType> QueueFrameType

Definition at line 53 of file breadth_first_dual_tree_traverser.hpp.

Constructor & Destructor Documentation

◆ BreadthFirstDualTreeTraverser()

BreadthFirstDualTreeTraverser ( RuleType &  rule)

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

Member Function Documentation

◆ NumBaseCases() [1/2]

size_t NumBaseCases ( ) const
inline

Get the number of times a base case was calculated.

Definition at line 83 of file breadth_first_dual_tree_traverser.hpp.

◆ NumBaseCases() [2/2]

size_t& NumBaseCases ( )
inline

Modify the number of times a base case was calculated.

Definition at line 85 of file breadth_first_dual_tree_traverser.hpp.

References QueueFrame< TreeType, TraversalInfoType >::traversalInfo.

◆ NumPrunes() [1/2]

size_t NumPrunes ( ) const
inline

Get the number of prunes.

Definition at line 68 of file breadth_first_dual_tree_traverser.hpp.

◆ NumPrunes() [2/2]

size_t& NumPrunes ( )
inline

Modify the number of prunes.

Definition at line 70 of file breadth_first_dual_tree_traverser.hpp.

◆ NumScores() [1/2]

size_t NumScores ( ) const
inline

Get the number of times a node combination was scored.

Definition at line 78 of file breadth_first_dual_tree_traverser.hpp.

◆ NumScores() [2/2]

size_t& NumScores ( )
inline

Modify the number of times a node combination was scored.

Definition at line 80 of file breadth_first_dual_tree_traverser.hpp.

◆ NumVisited() [1/2]

size_t NumVisited ( ) const
inline

Get the number of visited combinations.

Definition at line 73 of file breadth_first_dual_tree_traverser.hpp.

◆ NumVisited() [2/2]

size_t& NumVisited ( )
inline

Modify the number of visited combinations.

Definition at line 75 of file breadth_first_dual_tree_traverser.hpp.

◆ Traverse() [1/2]

void Traverse ( BinarySpaceTree queryNode,
BinarySpaceTree referenceNode 
)

Traverse the two trees.

This does not reset the number of prunes.

Parameters
queryNodeThe query node to be traversed.
referenceNodeThe reference node to be traversed.
scoreThe score of the current node combination.

◆ Traverse() [2/2]

void Traverse ( BinarySpaceTree queryNode,
std::priority_queue< QueueFrameType > &  referenceQueue 
)

The documentation for this class was generated from the following files: