UFO 1.0.0
An Efficient Probabilistic 3D Mapping Framework That Embraces the Unknown
Loading...
Searching...
No Matches
ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord > Class Template Reference

Public Types

using ReflectionBlock = DataBlock< Reflection, N >
 

Public Member Functions

count_t hits (Code code) const
 
count_t hits (Index node) const
 
count_t hits (Key key) const
 
count_t hits (Node node) const
 
count_t hits (Point coord, depth_t depth=0) const
 
count_t misses (Code code) const
 
count_t misses (Index node) const
 
count_t misses (Key key) const
 
count_t misses (Node node) const
 
count_t misses (Point coord, depth_t depth=0) const
 
Reflection reflection (Code code) const
 
Reflection reflection (Index node) const
 
Reflection reflection (Key key) const
 
Reflection reflection (Node node) const
 
Reflection reflection (Point coord, depth_t depth=0) const
 
ReflectionBlock & reflectionBlock (pos_t block)
 
ReflectionBlock const & reflectionBlock (pos_t block) const
 
constexpr PropagationCriteria reflectionPropagationCriteria () const noexcept
 
reflection_t reflectiveness (Code code) const
 
reflection_t reflectiveness (Index node) const
 
reflection_t reflectiveness (Key key) const
 
reflection_t reflectiveness (Node node) const
 
reflection_t reflectiveness (Point coord, depth_t depth=0) const
 
Node setHits (Code code, count_t value, bool propagate=true)
 
void setHits (Index node, count_t value)
 
Node setHits (Key key, count_t value, bool propagate=true)
 
Node setHits (Node node, count_t value, bool propagate=true)
 
Node setHits (Point coord, count_t value, bool propagate=true, depth_t depth=0)
 
Node setMisses (Code code, count_t value, bool propagate=true)
 
void setMisses (Index node, count_t value)
 
Node setMisses (Key key, count_t value, bool propagate=true)
 
Node setMisses (Node node, count_t value, bool propagate=true)
 
Node setMisses (Point coord, count_t value, bool propagate=true, depth_t depth=0)
 
Node setReflection (Code code, Reflection value, bool propagate=true)
 
void setReflection (Index node, Reflection value)
 
Node setReflection (Key key, Reflection value, bool propagate=true)
 
Node setReflection (Node node, Reflection value, bool propagate=true)
 
Node setReflection (Point coord, Reflection value, bool propagate=true, depth_t depth=0)
 
constexpr void setReflectionPropagationCriteria (PropagationCriteria prop_criteria, bool propagate=true) noexcept
 
template<class BinaryOp , std::enable_if_t< std::is_invocable_v< BinaryOp, Index, Reflection >, bool > = true>
Node updateReflection (Code code, BinaryOp binary_op, bool propagate=true)
 
Node updateReflection (Code code, int hits_change, int misses_change, bool propagate=true)
 
template<class UnaryOp , std::enable_if_t< std::is_invocable_v< UnaryOp, Reflection >, bool > = true>
Node updateReflection (Code code, UnaryOp unary_op, bool propagate=true)
 
template<class BinaryOp , std::enable_if_t< std::is_invocable_v< BinaryOp, Index, Reflection >, bool > = true>
void updateReflection (Index node, BinaryOp binary_op)
 
void updateReflection (Index node, int hits_change, int misses_change)
 
template<class UnaryOp , std::enable_if_t< std::is_invocable_v< UnaryOp, Reflection >, bool > = true>
void updateReflection (Index node, UnaryOp unary_op)
 
template<class BinaryOp , std::enable_if_t< std::is_invocable_v< BinaryOp, Index, Reflection >, bool > = true>
Node updateReflection (Key key, BinaryOp binary_op, bool propagate=true)
 
Node updateReflection (Key key, int hits_change, int misses_change, bool propagate=true)
 
template<class UnaryOp , std::enable_if_t< std::is_invocable_v< UnaryOp, Reflection >, bool > = true>
Node updateReflection (Key key, UnaryOp unary_op, bool propagate=true)
 
template<class BinaryOp , std::enable_if_t< std::is_invocable_v< BinaryOp, Index, Reflection >, bool > = true>
Node updateReflection (Node node, BinaryOp binary_op, bool propagate=true)
 
Node updateReflection (Node node, int hits_change, int misses_change, bool propagate=true)
 
template<class UnaryOp , std::enable_if_t< std::is_invocable_v< UnaryOp, Reflection >, bool > = true>
Node updateReflection (Node node, UnaryOp unary_op, bool propagate=true)
 
template<class BinaryOp , std::enable_if_t< std::is_invocable_v< BinaryOp, Index, Reflection >, bool > = true>
Node updateReflection (Point coord, BinaryOp binary_op, bool propagate=true, depth_t depth=0)
 
Node updateReflection (Point coord, int hits_change, int misses_change, bool propagate=true, depth_t depth=0)
 
template<class UnaryOp , std::enable_if_t< std::is_invocable_v< UnaryOp, Reflection >, bool > = true>
Node updateReflection (Point coord, UnaryOp unary_op, bool propagate=true, depth_t depth=0)
 

Protected Member Functions

 ReflectionMap (ReflectionMap &&other)=default
 
 ReflectionMap (ReflectionMap const &other)=default
 
template<class Derived2 >
 ReflectionMap (ReflectionMap< Derived2, N, Index, Node, Code, Key, Coord > &&other)
 
template<class Derived2 >
 ReflectionMap (ReflectionMap< Derived2, N, Index, Node, Code, Key, Coord > const &other)
 
void clearImpl ()
 
void clearImpl (pos_t)
 
void createBlock (Index node)
 
constexpr Derived & derived ()
 
constexpr Derived const & derived () const
 
void dotFileInfo (std::ostream &out, Index node) const
 
void fill (Index node, pos_t children)
 
void initRoot ()
 
bool isPrunable (pos_t block) const
 
constexpr Reflection max (pos_t block) const
 
constexpr Reflection mean (pos_t block) const
 
constexpr Reflection min (pos_t block) const
 
ReflectionMapoperator= (ReflectionMap &&rhs)=default
 
ReflectionMapoperator= (ReflectionMap const &rhs)=default
 
template<class Derived2 >
ReflectionMapoperator= (ReflectionMap< Derived2, N, Index, Node, Code, Key, Coord > &&rhs)
 
template<class Derived2 >
ReflectionMapoperator= (ReflectionMap< Derived2, N, Index, Node, Code, Key, Coord > const &rhs)
 
void preparePrune (Index node)
 
template<class Container >
void readNodes (ReadBuffer &in, Container const &c)
 
void reserveImpl (std::size_t new_cap)
 
void resize (std::size_t count)
 
template<class Container >
constexpr std::size_t serializedSize (Container const &c) const
 
void swap (ReflectionMap &other) noexcept
 
void updateBlock (pos_t block, std::array< bool, N > modified_parent)
 
void updateNode (Index node, pos_t children)
 
template<class BlockRange >
void writeBlocks (WriteBuffer &out, BlockRange const &blocks) const
 

Static Protected Member Functions

static constexpr MapType mapType () noexcept
 
static constexpr std::size_t serializedSizeBlock () noexcept
 
static constexpr std::size_t sizeofBlock (pos_t) noexcept
 
static constexpr std::size_t sizeofBlockLowerBound () noexcept
 
static constexpr std::size_t sizeofMap () noexcept
 
static constexpr std::size_t sizeofNodeTimesN (Index) noexcept
 

Protected Attributes

PropagationCriteria prop_criteria_ = PropagationCriteria::MAX
 
Container< ReflectionBlock > reflection_
 

Detailed Description

template<class Derived, offset_t N, class Index, class Node, class Code, class Key, class Coord>
class ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >

Definition at line 60 of file reflection_map.hpp.

Member Typedef Documentation

◆ ReflectionBlock

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
using ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::ReflectionBlock = DataBlock<Reflection, N>

Definition at line 63 of file reflection_map.hpp.

Constructor & Destructor Documentation

◆ ReflectionMap() [1/3]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::ReflectionMap ( )
inlineprotected

Definition at line 555 of file reflection_map.hpp.

◆ ReflectionMap() [2/3]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
template<class Derived2 >
ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::ReflectionMap ( ReflectionMap< Derived2, N, Index, Node, Code, Key, Coord > const &  other)
inlineprotected

Definition at line 562 of file reflection_map.hpp.

◆ ReflectionMap() [3/3]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
template<class Derived2 >
ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::ReflectionMap ( ReflectionMap< Derived2, N, Index, Node, Code, Key, Coord > &&  other)
inlineprotected

Definition at line 568 of file reflection_map.hpp.

Member Function Documentation

◆ clearImpl() [1/2]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::clearImpl ( )
inlineprotected

Definition at line 676 of file reflection_map.hpp.

◆ clearImpl() [2/2]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::clearImpl ( pos_t  )
inlineprotected

Definition at line 678 of file reflection_map.hpp.

◆ createBlock()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::createBlock ( Index  node)
inlineprotected

Definition at line 631 of file reflection_map.hpp.

◆ derived() [1/2]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
constexpr Derived & ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::derived ( )
inlineconstexprprotected

Definition at line 620 of file reflection_map.hpp.

◆ derived() [2/2]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
constexpr Derived const & ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::derived ( ) const
inlineconstexprprotected

Definition at line 622 of file reflection_map.hpp.

◆ dotFileInfo()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::dotFileInfo ( std::ostream &  out,
Index  node 
) const
inlineprotected

Definition at line 829 of file reflection_map.hpp.

◆ fill()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::fill ( Index  node,
pos_t  children 
)
inlineprotected

Definition at line 667 of file reflection_map.hpp.

◆ hits() [1/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
count_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::hits ( Code  code) const
inline

Definition at line 145 of file reflection_map.hpp.

◆ hits() [2/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
count_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::hits ( Index  node) const
inline

Definition at line 141 of file reflection_map.hpp.

◆ hits() [3/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
count_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::hits ( Key  key) const
inline

Definition at line 147 of file reflection_map.hpp.

◆ hits() [4/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
count_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::hits ( Node  node) const
inline

Definition at line 143 of file reflection_map.hpp.

◆ hits() [5/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
count_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::hits ( Point  coord,
depth_t  depth = 0 
) const
inline

Definition at line 149 of file reflection_map.hpp.

◆ initRoot()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::initRoot ( )
inlineprotected

Definition at line 657 of file reflection_map.hpp.

◆ isPrunable()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
bool ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::isPrunable ( pos_t  block) const
inlineprotected

Definition at line 748 of file reflection_map.hpp.

◆ mapType()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
static constexpr MapType ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::mapType ( )
inlinestaticconstexprprotectednoexcept

Definition at line 785 of file reflection_map.hpp.

◆ max()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
constexpr Reflection ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::max ( pos_t  block) const
inlineconstexprprotected

Definition at line 723 of file reflection_map.hpp.

◆ mean()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
constexpr Reflection ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::mean ( pos_t  block) const
inlineconstexprprotected

Definition at line 734 of file reflection_map.hpp.

◆ min()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
constexpr Reflection ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::min ( pos_t  block) const
inlineconstexprprotected

Definition at line 712 of file reflection_map.hpp.

◆ misses() [1/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
count_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::misses ( Code  code) const
inline

Definition at line 162 of file reflection_map.hpp.

◆ misses() [2/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
count_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::misses ( Index  node) const
inline

Definition at line 158 of file reflection_map.hpp.

◆ misses() [3/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
count_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::misses ( Key  key) const
inline

Definition at line 164 of file reflection_map.hpp.

◆ misses() [4/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
count_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::misses ( Node  node) const
inline

Definition at line 160 of file reflection_map.hpp.

◆ misses() [5/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
count_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::misses ( Point  coord,
depth_t  depth = 0 
) const
inline

Definition at line 166 of file reflection_map.hpp.

◆ operator=() [1/2]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
template<class Derived2 >
ReflectionMap & ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::operator= ( ReflectionMap< Derived2, N, Index, Node, Code, Key, Coord > &&  rhs)
inlineprotected

Definition at line 598 of file reflection_map.hpp.

◆ operator=() [2/2]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
template<class Derived2 >
ReflectionMap & ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::operator= ( ReflectionMap< Derived2, N, Index, Node, Code, Key, Coord > const &  rhs)
inlineprotected

Definition at line 589 of file reflection_map.hpp.

◆ preparePrune()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::preparePrune ( Index  node)
inlineprotected

Definition at line 755 of file reflection_map.hpp.

◆ readNodes()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
template<class Container >
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::readNodes ( ReadBuffer in,
Container const &  c 
)
inlineprotected

Definition at line 802 of file reflection_map.hpp.

◆ reflection() [1/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Reflection ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::reflection ( Code  code) const
inline

Definition at line 93 of file reflection_map.hpp.

◆ reflection() [2/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Reflection ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::reflection ( Index  node) const
inline

Definition at line 83 of file reflection_map.hpp.

◆ reflection() [3/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Reflection ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::reflection ( Key  key) const
inline

Definition at line 98 of file reflection_map.hpp.

◆ reflection() [4/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Reflection ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::reflection ( Node  node) const
inline

Definition at line 88 of file reflection_map.hpp.

◆ reflection() [5/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Reflection ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::reflection ( Point  coord,
depth_t  depth = 0 
) const
inline

Definition at line 103 of file reflection_map.hpp.

◆ reflectionBlock() [1/2]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
ReflectionBlock & ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::reflectionBlock ( pos_t  block)
inline

Definition at line 69 of file reflection_map.hpp.

◆ reflectionBlock() [2/2]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
ReflectionBlock const & ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::reflectionBlock ( pos_t  block) const
inline

Definition at line 74 of file reflection_map.hpp.

◆ reflectionPropagationCriteria()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
constexpr PropagationCriteria ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::reflectionPropagationCriteria ( ) const
inlineconstexprnoexcept

Definition at line 528 of file reflection_map.hpp.

◆ reflectiveness() [1/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
reflection_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::reflectiveness ( Code  code) const
inline

Definition at line 122 of file reflection_map.hpp.

◆ reflectiveness() [2/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
reflection_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::reflectiveness ( Index  node) const
inline

Definition at line 112 of file reflection_map.hpp.

◆ reflectiveness() [3/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
reflection_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::reflectiveness ( Key  key) const
inline

Definition at line 127 of file reflection_map.hpp.

◆ reflectiveness() [4/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
reflection_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::reflectiveness ( Node  node) const
inline

Definition at line 117 of file reflection_map.hpp.

◆ reflectiveness() [5/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
reflection_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::reflectiveness ( Point  coord,
depth_t  depth = 0 
) const
inline

Definition at line 132 of file reflection_map.hpp.

◆ reserveImpl()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::reserveImpl ( std::size_t  new_cap)
inlineprotected

Definition at line 651 of file reflection_map.hpp.

◆ resize()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::resize ( std::size_t  count)
inlineprotected

Definition at line 641 of file reflection_map.hpp.

◆ serializedSize()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
template<class Container >
constexpr std::size_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::serializedSize ( Container const &  c) const
inlineconstexprprotected

Definition at line 796 of file reflection_map.hpp.

◆ serializedSizeBlock()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
static constexpr std::size_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::serializedSizeBlock ( )
inlinestaticconstexprprotectednoexcept

Definition at line 790 of file reflection_map.hpp.

◆ setHits() [1/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::setHits ( Code  code,
count_t  value,
bool  propagate = true 
)
inline

Definition at line 236 of file reflection_map.hpp.

◆ setHits() [2/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::setHits ( Index  node,
count_t  value 
)
inline

Definition at line 211 of file reflection_map.hpp.

◆ setHits() [3/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::setHits ( Key  key,
count_t  value,
bool  propagate = true 
)
inline

Definition at line 249 of file reflection_map.hpp.

◆ setHits() [4/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::setHits ( Node  node,
count_t  value,
bool  propagate = true 
)
inline

Definition at line 223 of file reflection_map.hpp.

◆ setHits() [5/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::setHits ( Point  coord,
count_t  value,
bool  propagate = true,
depth_t  depth = 0 
)
inline

Definition at line 254 of file reflection_map.hpp.

◆ setMisses() [1/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::setMisses ( Code  code,
count_t  value,
bool  propagate = true 
)
inline

Definition at line 288 of file reflection_map.hpp.

◆ setMisses() [2/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::setMisses ( Index  node,
count_t  value 
)
inline

Definition at line 263 of file reflection_map.hpp.

◆ setMisses() [3/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::setMisses ( Key  key,
count_t  value,
bool  propagate = true 
)
inline

Definition at line 301 of file reflection_map.hpp.

◆ setMisses() [4/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::setMisses ( Node  node,
count_t  value,
bool  propagate = true 
)
inline

Definition at line 275 of file reflection_map.hpp.

◆ setMisses() [5/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::setMisses ( Point  coord,
count_t  value,
bool  propagate = true,
depth_t  depth = 0 
)
inline

Definition at line 306 of file reflection_map.hpp.

◆ setReflection() [1/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::setReflection ( Code  code,
Reflection  value,
bool  propagate = true 
)
inline

Definition at line 189 of file reflection_map.hpp.

◆ setReflection() [2/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::setReflection ( Index  node,
Reflection  value 
)
inline

Definition at line 175 of file reflection_map.hpp.

◆ setReflection() [3/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::setReflection ( Key  key,
Reflection  value,
bool  propagate = true 
)
inline

Definition at line 196 of file reflection_map.hpp.

◆ setReflection() [4/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::setReflection ( Node  node,
Reflection  value,
bool  propagate = true 
)
inline

Definition at line 182 of file reflection_map.hpp.

◆ setReflection() [5/5]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::setReflection ( Point  coord,
Reflection  value,
bool  propagate = true,
depth_t  depth = 0 
)
inline

Definition at line 201 of file reflection_map.hpp.

◆ setReflectionPropagationCriteria()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
constexpr void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::setReflectionPropagationCriteria ( PropagationCriteria  prop_criteria,
bool  propagate = true 
)
inlineconstexprnoexcept

Definition at line 534 of file reflection_map.hpp.

◆ sizeofBlock()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
static constexpr std::size_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::sizeofBlock ( pos_t  )
inlinestaticconstexprprotectednoexcept

Definition at line 766 of file reflection_map.hpp.

◆ sizeofBlockLowerBound()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
static constexpr std::size_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::sizeofBlockLowerBound ( )
inlinestaticconstexprprotectednoexcept

Definition at line 771 of file reflection_map.hpp.

◆ sizeofMap()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
static constexpr std::size_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::sizeofMap ( )
inlinestaticconstexprprotectednoexcept

Definition at line 776 of file reflection_map.hpp.

◆ sizeofNodeTimesN()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
static constexpr std::size_t ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::sizeofNodeTimesN ( Index  )
inlinestaticconstexprprotectednoexcept

Definition at line 761 of file reflection_map.hpp.

◆ swap()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::swap ( ReflectionMap< Derived, N, Index, Node, Code, Key, Coord > &  other)
inlineprotectednoexcept

Definition at line 610 of file reflection_map.hpp.

◆ updateBlock()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::updateBlock ( pos_t  block,
std::array< bool, N >  modified_parent 
)
inlineprotected

Definition at line 684 of file reflection_map.hpp.

◆ updateNode()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::updateNode ( Index  node,
pos_t  children 
)
inlineprotected

Definition at line 694 of file reflection_map.hpp.

◆ updateReflection() [1/15]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
template<class BinaryOp , std::enable_if_t< std::is_invocable_v< BinaryOp, Index, Reflection >, bool > = true>
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::updateReflection ( Code  code,
BinaryOp  binary_op,
bool  propagate = true 
)
inline

Definition at line 462 of file reflection_map.hpp.

◆ updateReflection() [2/15]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::updateReflection ( Code  code,
int  hits_change,
int  misses_change,
bool  propagate = true 
)
inline

Definition at line 423 of file reflection_map.hpp.

◆ updateReflection() [3/15]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
template<class UnaryOp , std::enable_if_t< std::is_invocable_v< UnaryOp, Reflection >, bool > = true>
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::updateReflection ( Code  code,
UnaryOp  unary_op,
bool  propagate = true 
)
inline

Definition at line 443 of file reflection_map.hpp.

◆ updateReflection() [4/15]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
template<class BinaryOp , std::enable_if_t< std::is_invocable_v< BinaryOp, Index, Reflection >, bool > = true>
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::updateReflection ( Index  node,
BinaryOp  binary_op 
)
inline

Definition at line 351 of file reflection_map.hpp.

◆ updateReflection() [5/15]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::updateReflection ( Index  node,
int  hits_change,
int  misses_change 
)
inline

Definition at line 315 of file reflection_map.hpp.

◆ updateReflection() [6/15]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
template<class UnaryOp , std::enable_if_t< std::is_invocable_v< UnaryOp, Reflection >, bool > = true>
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::updateReflection ( Index  node,
UnaryOp  unary_op 
)
inline

Definition at line 333 of file reflection_map.hpp.

◆ updateReflection() [7/15]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
template<class BinaryOp , std::enable_if_t< std::is_invocable_v< BinaryOp, Index, Reflection >, bool > = true>
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::updateReflection ( Key  key,
BinaryOp  binary_op,
bool  propagate = true 
)
inline

Definition at line 495 of file reflection_map.hpp.

◆ updateReflection() [8/15]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::updateReflection ( Key  key,
int  hits_change,
int  misses_change,
bool  propagate = true 
)
inline

Definition at line 479 of file reflection_map.hpp.

◆ updateReflection() [9/15]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
template<class UnaryOp , std::enable_if_t< std::is_invocable_v< UnaryOp, Reflection >, bool > = true>
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::updateReflection ( Key  key,
UnaryOp  unary_op,
bool  propagate = true 
)
inline

Definition at line 487 of file reflection_map.hpp.

◆ updateReflection() [10/15]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
template<class BinaryOp , std::enable_if_t< std::is_invocable_v< BinaryOp, Index, Reflection >, bool > = true>
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::updateReflection ( Node  node,
BinaryOp  binary_op,
bool  propagate = true 
)
inline

Definition at line 406 of file reflection_map.hpp.

◆ updateReflection() [11/15]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::updateReflection ( Node  node,
int  hits_change,
int  misses_change,
bool  propagate = true 
)
inline

Definition at line 367 of file reflection_map.hpp.

◆ updateReflection() [12/15]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
template<class UnaryOp , std::enable_if_t< std::is_invocable_v< UnaryOp, Reflection >, bool > = true>
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::updateReflection ( Node  node,
UnaryOp  unary_op,
bool  propagate = true 
)
inline

Definition at line 387 of file reflection_map.hpp.

◆ updateReflection() [13/15]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
template<class BinaryOp , std::enable_if_t< std::is_invocable_v< BinaryOp, Index, Reflection >, bool > = true>
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::updateReflection ( Point  coord,
BinaryOp  binary_op,
bool  propagate = true,
depth_t  depth = 0 
)
inline

Definition at line 518 of file reflection_map.hpp.

◆ updateReflection() [14/15]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::updateReflection ( Point  coord,
int  hits_change,
int  misses_change,
bool  propagate = true,
depth_t  depth = 0 
)
inline

Definition at line 500 of file reflection_map.hpp.

◆ updateReflection() [15/15]

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
template<class UnaryOp , std::enable_if_t< std::is_invocable_v< UnaryOp, Reflection >, bool > = true>
Node ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::updateReflection ( Point  coord,
UnaryOp  unary_op,
bool  propagate = true,
depth_t  depth = 0 
)
inline

Definition at line 509 of file reflection_map.hpp.

◆ writeBlocks()

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
template<class BlockRange >
void ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::writeBlocks ( WriteBuffer out,
BlockRange const &  blocks 
) const
inlineprotected

Definition at line 818 of file reflection_map.hpp.

Friends And Related Symbol Documentation

◆ ReflectionMap

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
template<class Derived2 , offset_t N2, class Index2 , class Node2 , class Code2 , class Key2 , class Coord2 >
friend class ReflectionMap
friend

Definition at line 843 of file reflection_map.hpp.

Member Data Documentation

◆ prop_criteria_

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
PropagationCriteria ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::prop_criteria_ = PropagationCriteria::MAX
protected

Definition at line 839 of file reflection_map.hpp.

◆ reflection_

template<class Derived , offset_t N, class Index , class Node , class Code , class Key , class Coord >
Container<ReflectionBlock> ufo::ReflectionMap< Derived, N, Index, Node, Code, Key, Coord >::reflection_
protected

Definition at line 836 of file reflection_map.hpp.


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