Public Types | Public Member Functions | Protected Attributes | Friends | List of all members
ApproxMVBB::KdTree::NodeSimple< TTraits, PD > Class Template Reference

#include <KdTree.hpp>

Inheritance diagram for ApproxMVBB::KdTree::NodeSimple< TTraits, PD >:
Inheritance graph
[legend]

Public Types

using Base = NodeBase< typename details::select< PD, NodeSimple< TTraits, PD > >::type, TTraits::Dimension >
 
using DerivedType = typename details::select< PD, NodeSimple< TTraits, PD > >::type
 
using Traits = TTraits
 
- Public Types inherited from ApproxMVBB::KdTree::NodeBase< details::select< PD, NodeSimple< TTraits, PD > >::type, TTraits::Dimension >
using BoundaryInfoType = BoundaryInformation
 
using DerivedNode = details::select< PD, NodeSimple< TTraits, PD > >::type
 
using SplitAxisType = char
 

Public Member Functions

const BoundaryInfoTypegetBoundaries () const
 
BoundaryInfoTypegetBoundaries ()
 
 NodeSimple ()
 
 NodeSimple (std::size_t idx, const AABB< Dimension > &aabb)
 
 NodeSimple (NodeSimple &&t)
 
 NodeSimple (const NodeSimple &t)
 
template<typename T >
 NodeSimple (const Node< T > &t)
 
template<typename T , typename NodeVector >
void setup (const Node< T > *t, const NodeVector &nodes)
 
- Public Member Functions inherited from ApproxMVBB::KdTree::NodeBase< details::select< PD, NodeSimple< TTraits, PD > >::type, TTraits::Dimension >
AABB< Dimension > & aabb ()
 
const AABB< Dimension > & aabb () const
 
std::size_t getIdx () const
 
unsigned int getLevel () const
 
SplitAxisType getSplitAxis () const
 
PREC getSplitPosition () const
 
PREC getSplitRatio () const
 
bool hasChildren () const
 
bool hasLeftChildren () const
 
bool isLeaf () const
 
DerivedNodeleftNode ()
 
const DerivedNodeleftNode () const
 
 NodeBase ()
 
 NodeBase (std::size_t idx, const AABB< Dimension > &aabb, unsigned int treeLevel=0)
 
 NodeBase (const NodeBase< Derived, Dimension > &n)
 
 NodeBase (NodeBase< Derived, Dimension > &&n)
 
DerivedNodeparent ()
 
const DerivedNodeparent () const
 
DerivedNoderightNode ()
 
const DerivedNoderightNode () const
 
void setChilds (DerivedNode *r, DerivedNode *l)
 
void setIdx (std::size_t i)
 
void setLevel (unsigned int l) const
 
void setSplitAxis (SplitAxisType splitAxis)
 
void setSplitPosition (PREC splitPos)
 
 ~NodeBase ()
 

Protected Attributes

Base::BoundaryInfoType m_bound
 
- Protected Attributes inherited from ApproxMVBB::KdTree::NodeBase< details::select< PD, NodeSimple< TTraits, PD > >::type, TTraits::Dimension >
AABB< Dimension > m_aabb
 
std::array< DerivedNode *, 2 > m_child
 
std::size_t m_idx
 node index More...
 
DerivedNodem_parent
 
SplitAxisType m_splitAxis
 -1 indicates leaf node More...
 
PREC m_splitPosition
 
unsigned int m_treeLevel
 

Friends

template<typename T >
class TreeBase
 

Additional Inherited Members

- Protected Member Functions inherited from ApproxMVBB::KdTree::NodeBase< details::select< PD, NodeSimple< TTraits, PD > >::type, TTraits::Dimension >
 NodeBase (std::size_t idx, const AABB< Dimension > &aabb, SplitAxisType axis, PREC splitPos)
 

Detailed Description

template<typename TTraits, typename PD = void>
class ApproxMVBB::KdTree::NodeSimple< TTraits, PD >

Definition at line 918 of file KdTree.hpp.

Member Typedef Documentation

template<typename TTraits , typename PD = void>
using ApproxMVBB::KdTree::NodeSimple< TTraits, PD >::Base = NodeBase< typename details::select<PD, NodeSimple<TTraits,PD> >::type , TTraits::Dimension>

Definition at line 924 of file KdTree.hpp.

template<typename TTraits , typename PD = void>
using ApproxMVBB::KdTree::NodeSimple< TTraits, PD >::DerivedType = typename details::select<PD, NodeSimple<TTraits,PD> >::type

Definition at line 925 of file KdTree.hpp.

template<typename TTraits , typename PD = void>
using ApproxMVBB::KdTree::NodeSimple< TTraits, PD >::Traits = TTraits

Definition at line 922 of file KdTree.hpp.

Constructor & Destructor Documentation

template<typename TTraits , typename PD = void>
ApproxMVBB::KdTree::NodeSimple< TTraits, PD >::NodeSimple ( )
inline

Definition at line 948 of file KdTree.hpp.

template<typename TTraits , typename PD = void>
ApproxMVBB::KdTree::NodeSimple< TTraits, PD >::NodeSimple ( std::size_t  idx,
const AABB< Dimension > &  aabb 
)
inline

Definition at line 949 of file KdTree.hpp.

template<typename TTraits , typename PD = void>
ApproxMVBB::KdTree::NodeSimple< TTraits, PD >::NodeSimple ( NodeSimple< TTraits, PD > &&  t)
inline

Definition at line 950 of file KdTree.hpp.

template<typename TTraits , typename PD = void>
ApproxMVBB::KdTree::NodeSimple< TTraits, PD >::NodeSimple ( const NodeSimple< TTraits, PD > &  t)
inline

Definition at line 951 of file KdTree.hpp.

template<typename TTraits , typename PD = void>
template<typename T >
ApproxMVBB::KdTree::NodeSimple< TTraits, PD >::NodeSimple ( const Node< T > &  t)
inlineexplicit

Copy values from TreeNode<T>, only Base class does copy

Definition at line 955 of file KdTree.hpp.

Member Function Documentation

template<typename TTraits , typename PD = void>
const BoundaryInfoType& ApproxMVBB::KdTree::NodeSimple< TTraits, PD >::getBoundaries ( ) const
inline

Definition at line 1005 of file KdTree.hpp.

template<typename TTraits , typename PD = void>
BoundaryInfoType& ApproxMVBB::KdTree::NodeSimple< TTraits, PD >::getBoundaries ( )
inline

Definition at line 1006 of file KdTree.hpp.

template<typename TTraits , typename PD = void>
template<typename T , typename NodeVector >
void ApproxMVBB::KdTree::NodeSimple< TTraits, PD >::setup ( const Node< T > *  t,
const NodeVector &  nodes 
)
inline

Setup node from some other node t, with a node pointer list nodes (continous index ordered)!

Definition at line 963 of file KdTree.hpp.

Friends And Related Function Documentation

template<typename TTraits , typename PD = void>
template<typename T >
friend class TreeBase
friend

Definition at line 935 of file KdTree.hpp.

Member Data Documentation

template<typename TTraits , typename PD = void>
Base::BoundaryInfoType ApproxMVBB::KdTree::NodeSimple< TTraits, PD >::m_bound
protected

Boundary information which is empty for non-leaf nodes Pointer which point to the subtrees min/max for each dimension

Definition at line 941 of file KdTree.hpp.


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


asr_approx_mvbb
Author(s): Gassner Nikolai
autogenerated on Mon Jun 10 2019 12:38:09