template<typename MetricType, typename StatisticType = EmptyStatistic, typename MatType = arma::mat, template< typename HyperplaneMetricType > class HyperplaneType = AxisOrthogonalHyperplane, template< typename SplitMetricType, typename SplitMatType > class SplitType = MidpointSpaceSplit>
template<typename MetricType, typename StatisticType, typename MatType, template< typename HyperplaneMetricType > class HyperplaneType, template< typename SplitMetricType, typename SplitMatType > class SplitType>
class mlpack::tree::SpillTree< MetricType, StatisticType, MatType, HyperplaneType, SplitType >::SpillDualTreeTraverser< MetricType, StatisticType, MatType, HyperplaneType, SplitType >
A generic dual-tree traverser for hybrid spill trees; see spill_dual_tree_traverser.hpp for implementation.
The Defeatist template parameter determines if the traverser must do defeatist search on overlapping nodes.
Definition at line 35 of file spill_dual_tree_traverser.hpp.
template<typename MetricType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, template< typename HyperplaneMetricType > class HyperplaneType = AxisOrthogonalHyperplane, template< typename SplitMetricType, typename SplitMatType > class SplitType = MidpointSpaceSplit>
template<typename MetricType , typename StatisticType , typename MatType , template< typename HyperplaneMetricType > class HyperplaneType, template< typename SplitMetricType, typename SplitMatType > class SplitType>
Instantiate the dual-tree traverser with the given rule set.
template<typename MetricType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, template< typename HyperplaneMetricType > class HyperplaneType = AxisOrthogonalHyperplane, template< typename SplitMetricType, typename SplitMatType > class SplitType = MidpointSpaceSplit>
template<typename MetricType , typename StatisticType , typename MatType , template< typename HyperplaneMetricType > class HyperplaneType, template< typename SplitMetricType, typename SplitMatType > class SplitType>
template<typename MetricType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, template< typename HyperplaneMetricType > class HyperplaneType = AxisOrthogonalHyperplane, template< typename SplitMetricType, typename SplitMatType > class SplitType = MidpointSpaceSplit>
template<typename MetricType , typename StatisticType , typename MatType , template< typename HyperplaneMetricType > class HyperplaneType, template< typename SplitMetricType, typename SplitMatType > class SplitType>
template<typename MetricType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, template< typename HyperplaneMetricType > class HyperplaneType = AxisOrthogonalHyperplane, template< typename SplitMetricType, typename SplitMatType > class SplitType = MidpointSpaceSplit>
template<typename MetricType , typename StatisticType , typename MatType , template< typename HyperplaneMetricType > class HyperplaneType, template< typename SplitMetricType, typename SplitMatType > class SplitType>
template<typename MetricType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, template< typename HyperplaneMetricType > class HyperplaneType = AxisOrthogonalHyperplane, template< typename SplitMetricType, typename SplitMatType > class SplitType = MidpointSpaceSplit>
template<typename MetricType , typename StatisticType , typename MatType , template< typename HyperplaneMetricType > class HyperplaneType, template< typename SplitMetricType, typename SplitMatType > class SplitType>
template<typename MetricType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, template< typename HyperplaneMetricType > class HyperplaneType = AxisOrthogonalHyperplane, template< typename SplitMetricType, typename SplitMatType > class SplitType = MidpointSpaceSplit>
template<typename MetricType , typename StatisticType , typename MatType , template< typename HyperplaneMetricType > class HyperplaneType, template< typename SplitMetricType, typename SplitMatType > class SplitType>
template<typename MetricType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, template< typename HyperplaneMetricType > class HyperplaneType = AxisOrthogonalHyperplane, template< typename SplitMetricType, typename SplitMatType > class SplitType = MidpointSpaceSplit>
template<typename MetricType , typename StatisticType , typename MatType , template< typename HyperplaneMetricType > class HyperplaneType, template< typename SplitMetricType, typename SplitMatType > class SplitType>
template<typename MetricType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, template< typename HyperplaneMetricType > class HyperplaneType = AxisOrthogonalHyperplane, template< typename SplitMetricType, typename SplitMatType > class SplitType = MidpointSpaceSplit>
template<typename MetricType , typename StatisticType , typename MatType , template< typename HyperplaneMetricType > class HyperplaneType, template< typename SplitMetricType, typename SplitMatType > class SplitType>
template<typename MetricType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, template< typename HyperplaneMetricType > class HyperplaneType = AxisOrthogonalHyperplane, template< typename SplitMetricType, typename SplitMatType > class SplitType = MidpointSpaceSplit>
template<typename MetricType , typename StatisticType , typename MatType , template< typename HyperplaneMetricType > class HyperplaneType, template< typename SplitMetricType, typename SplitMatType > class SplitType>
template<typename MetricType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, template< typename HyperplaneMetricType > class HyperplaneType = AxisOrthogonalHyperplane, template< typename SplitMetricType, typename SplitMatType > class SplitType = MidpointSpaceSplit>
template<typename MetricType , typename StatisticType , typename MatType , template< typename HyperplaneMetricType > class HyperplaneType, template< typename SplitMetricType, typename SplitMatType > class SplitType>
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. |
template<typename MetricType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, template< typename HyperplaneMetricType > class HyperplaneType = AxisOrthogonalHyperplane, template< typename SplitMetricType, typename SplitMatType > class SplitType = MidpointSpaceSplit>
template<typename MetricType , typename StatisticType , typename MatType , template< typename HyperplaneMetricType > class HyperplaneType, template< typename SplitMetricType, typename SplitMatType > class SplitType>
template<typename MetricType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, template< typename HyperplaneMetricType > class HyperplaneType = AxisOrthogonalHyperplane, template< typename SplitMetricType, typename SplitMatType > class SplitType = MidpointSpaceSplit>
template<typename MetricType , typename StatisticType , typename MatType , template< typename HyperplaneMetricType > class HyperplaneType, template< typename SplitMetricType, typename SplitMatType > class SplitType>
template<typename MetricType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, template< typename HyperplaneMetricType > class HyperplaneType = AxisOrthogonalHyperplane, template< typename SplitMetricType, typename SplitMatType > class SplitType = MidpointSpaceSplit>
template<typename MetricType , typename StatisticType , typename MatType , template< typename HyperplaneMetricType > class HyperplaneType, template< typename SplitMetricType, typename SplitMatType > class SplitType>
template<typename MetricType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, template< typename HyperplaneMetricType > class HyperplaneType = AxisOrthogonalHyperplane, template< typename SplitMetricType, typename SplitMatType > class SplitType = MidpointSpaceSplit>
template<typename MetricType , typename StatisticType , typename MatType , template< typename HyperplaneMetricType > class HyperplaneType, template< typename SplitMetricType, typename SplitMatType > class SplitType>
template<typename MetricType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, template< typename HyperplaneMetricType > class HyperplaneType = AxisOrthogonalHyperplane, template< typename SplitMetricType, typename SplitMatType > class SplitType = MidpointSpaceSplit>
template<typename MetricType , typename StatisticType , typename MatType , template< typename HyperplaneMetricType > class HyperplaneType, template< typename SplitMetricType, typename SplitMatType > class SplitType>
template<typename MetricType , typename StatisticType = EmptyStatistic, typename MatType = arma::mat, template< typename HyperplaneMetricType > class HyperplaneType = AxisOrthogonalHyperplane, template< typename SplitMetricType, typename SplitMatType > class SplitType = MidpointSpaceSplit>
template<typename MetricType , typename StatisticType , typename MatType , template< typename HyperplaneMetricType > class HyperplaneType, template< typename SplitMetricType, typename SplitMatType > class SplitType>