Stride Reference Manual  - generated for commit 9643b11
geopop::kd::BaseNode< P > Class Template Referenceabstract

A base class for all instantiations of a Node with D. More...

#include <KdNode.h>

Inheritance diagram for geopop::kd::BaseNode< P >:
Inheritance graph
Collaboration diagram for geopop::kd::BaseNode< P >:
Collaboration graph

Public Member Functions

virtual ~BaseNode ()=default
 
virtual BaseNode< P > * BorrowLeft () const =0
 Get a non-owning pointer to the left child (nullptr if no such child). More...
 
virtual BaseNode< P > * BorrowRight () const =0
 Get a non-owning pointer to the right child (nullptr if no such child). More...
 
virtual BaseNode< P > * BorrowSplitChild (const P &point) const =0
 Get a non-owning pointer to the child corresponding to the correct split for point. More...
 
virtual void AddChild (P point)=0
 Add a new child in the right place, according to split. More...
 
virtual P GetPoint () const =0
 Gets the point for this node. More...
 

Detailed Description

template<typename P>
class geopop::kd::BaseNode< P >

A base class for all instantiations of a Node with D.

Definition at line 33 of file KdNode.h.

Constructor & Destructor Documentation

template<typename P>
virtual geopop::kd::BaseNode< P >::~BaseNode ( )
virtualdefault

Member Function Documentation

template<typename P>
virtual BaseNode<P>* geopop::kd::BaseNode< P >::BorrowLeft ( ) const
pure virtual

Get a non-owning pointer to the left child (nullptr if no such child).

Implemented in geopop::kd::Node< P, D >, geopop::kd::Node< geogrid_detail::KdTree2DPoint, 0 >, and geopop::kd::Node< P, 0 >.

Referenced by geopop::KdTree< P >::Apply(), and geopop::KdTree< P >::GetHeight().

Here is the caller graph for this function:

template<typename P>
virtual BaseNode<P>* geopop::kd::BaseNode< P >::BorrowRight ( ) const
pure virtual

Get a non-owning pointer to the right child (nullptr if no such child).

Implemented in geopop::kd::Node< P, D >, geopop::kd::Node< geogrid_detail::KdTree2DPoint, 0 >, and geopop::kd::Node< P, 0 >.

Referenced by geopop::KdTree< P >::Apply(), and geopop::KdTree< P >::GetHeight().

Here is the caller graph for this function:

template<typename P>
virtual BaseNode<P>* geopop::kd::BaseNode< P >::BorrowSplitChild ( const P &  point) const
pure virtual

Get a non-owning pointer to the child corresponding to the correct split for point.

Implemented in geopop::kd::Node< P, D >, geopop::kd::Node< geogrid_detail::KdTree2DPoint, 0 >, and geopop::kd::Node< P, 0 >.

Referenced by geopop::KdTree< P >::Apply(), and geopop::KdTree< P >::Insert().

Here is the caller graph for this function:

template<typename P>
virtual void geopop::kd::BaseNode< P >::AddChild ( point)
pure virtual

Add a new child in the right place, according to split.

Implemented in geopop::kd::Node< P, D >, geopop::kd::Node< geogrid_detail::KdTree2DPoint, 0 >, and geopop::kd::Node< P, 0 >.

Referenced by geopop::KdTree< P >::Insert().

Here is the caller graph for this function:

template<typename P>
virtual P geopop::kd::BaseNode< P >::GetPoint ( ) const
pure virtual

Gets the point for this node.

Implemented in geopop::kd::Node< P, D >, geopop::kd::Node< geogrid_detail::KdTree2DPoint, 0 >, and geopop::kd::Node< P, 0 >.

Referenced by geopop::KdTree< P >::Apply().

Here is the caller graph for this function:


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