Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
scan_tools::SegmentTree::Node< Axis > Struct Template Reference

Public Types

using ChildNode = Node< ChildAxis >
 
using ChildPtr = typename ChildNode::Ptr
 
using Ptr = std::unique_ptr< Node >
 

Public Member Functions

 Node ()=default
 
 Node (const Node &)=delete
 
 Node (Node &&)=default
 
 Node (std::vector< Segment > segs)
 
Nodeoperator= (const Node &)=delete
 
Nodeoperator= (Node &&)=default
 
template<class Callback >
void segments_within (Point p, double radius, const Callback &cb) const
 
template<class Callback >
void traverse (const Callback &cb, int depth=0) const
 

Public Attributes

ChildPtr left_
 
double pivot_
 
ChildPtr right_
 
std::vector< Segmentsegments_
 

Static Public Attributes

constexpr static auto ChildAxis = (Axis+1)%2
 
constexpr static auto leaf_capacity = 64
 

Detailed Description

template<int Axis>
struct scan_tools::SegmentTree::Node< Axis >

Definition at line 43 of file segment_tree.h.

Member Typedef Documentation

◆ ChildNode

template<int Axis>
using scan_tools::SegmentTree::Node< Axis >::ChildNode = Node<ChildAxis>

Definition at line 47 of file segment_tree.h.

◆ ChildPtr

template<int Axis>
using scan_tools::SegmentTree::Node< Axis >::ChildPtr = typename ChildNode::Ptr

Definition at line 49 of file segment_tree.h.

◆ Ptr

template<int Axis>
using scan_tools::SegmentTree::Node< Axis >::Ptr = std::unique_ptr<Node>

Definition at line 48 of file segment_tree.h.

Constructor & Destructor Documentation

◆ Node() [1/4]

template<int Axis>
scan_tools::SegmentTree::Node< Axis >::Node ( std::vector< Segment segs)

Definition at line 29 of file segment_tree.cpp.

◆ Node() [2/4]

template<int Axis>
scan_tools::SegmentTree::Node< Axis >::Node ( )
default

◆ Node() [3/4]

template<int Axis>
scan_tools::SegmentTree::Node< Axis >::Node ( Node< Axis > &&  )
default

◆ Node() [4/4]

template<int Axis>
scan_tools::SegmentTree::Node< Axis >::Node ( const Node< Axis > &  )
delete

Member Function Documentation

◆ operator=() [1/2]

template<int Axis>
Node& scan_tools::SegmentTree::Node< Axis >::operator= ( const Node< Axis > &  )
delete

◆ operator=() [2/2]

template<int Axis>
Node& scan_tools::SegmentTree::Node< Axis >::operator= ( Node< Axis > &&  )
default

◆ segments_within()

template<int Axis>
template<class Callback >
void scan_tools::SegmentTree::Node< Axis >::segments_within ( Point  p,
double  radius,
const Callback &  cb 
) const

Definition at line 87 of file segment_tree.cpp.

◆ traverse()

template<int Axis>
template<class Callback >
void scan_tools::SegmentTree::Node< Axis >::traverse ( const Callback &  cb,
int  depth = 0 
) const

Definition at line 114 of file segment_tree.cpp.

Member Data Documentation

◆ ChildAxis

template<int Axis>
constexpr static auto scan_tools::SegmentTree::Node< Axis >::ChildAxis = (Axis+1)%2
staticconstexpr

Definition at line 46 of file segment_tree.h.

◆ leaf_capacity

template<int Axis>
constexpr static auto scan_tools::SegmentTree::Node< Axis >::leaf_capacity = 64
staticconstexpr

Definition at line 45 of file segment_tree.h.

◆ left_

template<int Axis>
ChildPtr scan_tools::SegmentTree::Node< Axis >::left_

Definition at line 51 of file segment_tree.h.

◆ pivot_

template<int Axis>
double scan_tools::SegmentTree::Node< Axis >::pivot_

Definition at line 52 of file segment_tree.h.

◆ right_

template<int Axis>
ChildPtr scan_tools::SegmentTree::Node< Axis >::right_

Definition at line 51 of file segment_tree.h.

◆ segments_

template<int Axis>
std::vector<Segment> scan_tools::SegmentTree::Node< Axis >::segments_

Definition at line 53 of file segment_tree.h.


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


lsm_localization
Author(s): Ivan Dryanovski , Ilija Hadzic
autogenerated on Fri Dec 23 2022 03:09:12