neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type > Class Template Reference

#include <segmented_tree.hpp>

Public Types

typedef std::bidirectional_iterator_tag iterator_category
 
typedef tree_type::value_type value_type
 
typedef tree_type::difference_type difference_type
 
typedef tree_type::const_pointer pointer
 
typedef tree_type::const_reference reference
 

Public Member Functions

 basic_const_iterator ()
 
 basic_const_iterator (node const &parentNode, node_child_list_const_iterator childIterator)
 
template<iterator_type Type2>
 basic_const_iterator (basic_const_iterator< Type2 > const &other)
 
template<iterator_type Type2>
 basic_const_iterator (basic_iterator< Type2 > const &other)
 
template<iterator_type Type2>
bool operator== (basic_const_iterator< Type2 > const &other) const
 
template<iterator_type Type2>
bool operator!= (basic_const_iterator< Type2 > const &other) const
 
self_type & operator++ ()
 
self_type operator++ (int) const
 
self_type & operator-- ()
 
self_type operator-- (int) const
 
reference operator* () const
 
pointer operator-> () const
 
basic_const_iterator< iterator_type::Siblingcparent () const
 
basic_const_iterator< iterator_type::Siblingparent () const
 
basic_const_iterator< iterator_type::Siblingcbegin () const
 
basic_const_iterator< iterator_type::Siblingbegin () const
 
basic_const_iterator< iterator_type::Siblingcend () const
 
basic_const_iterator< iterator_type::Siblingend () const
 
std::reverse_iterator< basic_const_iterator< iterator_type::Sibling > > crbegin () const
 
std::reverse_iterator< basic_const_iterator< iterator_type::Sibling > > rbegin () const
 
std::reverse_iterator< basic_const_iterator< iterator_type::Sibling > > crend () const
 
std::reverse_iterator< basic_const_iterator< iterator_type::Sibling > > rend () const
 
bool parent_is_root () const
 
std::size_t depth () const
 
std::size_t descendent_count () const
 
bool children_skipped () const
 

Friends

class segmented_tree< T, N, Alloc >
 

Detailed Description

template<typename T, size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
class neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >

Definition at line 444 of file segmented_tree.hpp.

Member Typedef Documentation

◆ difference_type

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
typedef tree_type::difference_type neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::difference_type

Definition at line 451 of file segmented_tree.hpp.

◆ iterator_category

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
typedef std::bidirectional_iterator_tag neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::iterator_category

Definition at line 449 of file segmented_tree.hpp.

◆ pointer

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
typedef tree_type::const_pointer neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::pointer

Definition at line 452 of file segmented_tree.hpp.

◆ reference

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
typedef tree_type::const_reference neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::reference

Definition at line 453 of file segmented_tree.hpp.

◆ value_type

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
typedef tree_type::value_type neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::value_type

Definition at line 450 of file segmented_tree.hpp.

Constructor & Destructor Documentation

◆ basic_const_iterator() [1/4]

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::basic_const_iterator ( )
inline

Definition at line 455 of file segmented_tree.hpp.

◆ basic_const_iterator() [2/4]

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::basic_const_iterator ( node const parentNode,
node_child_list_const_iterator  childIterator 
)
inline

Definition at line 456 of file segmented_tree.hpp.

◆ basic_const_iterator() [3/4]

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
template<iterator_type Type2>
neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::basic_const_iterator ( basic_const_iterator< Type2 > const other)
inline

Definition at line 458 of file segmented_tree.hpp.

◆ basic_const_iterator() [4/4]

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
template<iterator_type Type2>
neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::basic_const_iterator ( basic_iterator< Type2 > const other)
inline

Definition at line 460 of file segmented_tree.hpp.

Member Function Documentation

◆ begin()

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
basic_const_iterator< iterator_type::Sibling > neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::begin ( ) const
inline

Definition at line 541 of file segmented_tree.hpp.

◆ cbegin()

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
basic_const_iterator< iterator_type::Sibling > neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::cbegin ( ) const
inline

Definition at line 537 of file segmented_tree.hpp.

◆ cend()

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
basic_const_iterator< iterator_type::Sibling > neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::cend ( ) const
inline

Definition at line 545 of file segmented_tree.hpp.

◆ children_skipped()

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
bool neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::children_skipped ( ) const
inline

Definition at line 582 of file segmented_tree.hpp.

◆ cparent()

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
basic_const_iterator< iterator_type::Sibling > neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::cparent ( ) const
inline

Definition at line 529 of file segmented_tree.hpp.

◆ crbegin()

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
std::reverse_iterator< basic_const_iterator< iterator_type::Sibling > > neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::crbegin ( ) const
inline

Definition at line 553 of file segmented_tree.hpp.

◆ crend()

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
std::reverse_iterator< basic_const_iterator< iterator_type::Sibling > > neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::crend ( ) const
inline

Definition at line 561 of file segmented_tree.hpp.

◆ depth()

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
std::size_t neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::depth ( ) const
inline

Definition at line 574 of file segmented_tree.hpp.

◆ descendent_count()

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
std::size_t neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::descendent_count ( ) const
inline

Definition at line 578 of file segmented_tree.hpp.

◆ end()

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
basic_const_iterator< iterator_type::Sibling > neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::end ( ) const
inline

Definition at line 549 of file segmented_tree.hpp.

◆ operator!=()

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
template<iterator_type Type2>
bool neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::operator!= ( basic_const_iterator< Type2 > const other) const
inline

Definition at line 468 of file segmented_tree.hpp.

◆ operator*()

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
reference neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::operator* ( ) const
inline

Definition at line 520 of file segmented_tree.hpp.

◆ operator++() [1/2]

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
self_type & neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::operator++ ( )
inline

Definition at line 473 of file segmented_tree.hpp.

◆ operator++() [2/2]

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
self_type neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::operator++ ( int  ) const
inline

Definition at line 490 of file segmented_tree.hpp.

◆ operator--() [1/2]

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
self_type & neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::operator-- ( )
inline

Definition at line 496 of file segmented_tree.hpp.

◆ operator--() [2/2]

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
self_type neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::operator-- ( int  ) const
inline

Definition at line 513 of file segmented_tree.hpp.

◆ operator->()

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
pointer neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::operator-> ( ) const
inline

Definition at line 524 of file segmented_tree.hpp.

◆ operator==()

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
template<iterator_type Type2>
bool neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::operator== ( basic_const_iterator< Type2 > const other) const
inline

Definition at line 463 of file segmented_tree.hpp.

◆ parent()

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
basic_const_iterator< iterator_type::Sibling > neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::parent ( ) const
inline

Definition at line 533 of file segmented_tree.hpp.

◆ parent_is_root()

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
bool neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::parent_is_root ( ) const
inline

Definition at line 570 of file segmented_tree.hpp.

◆ rbegin()

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
std::reverse_iterator< basic_const_iterator< iterator_type::Sibling > > neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::rbegin ( ) const
inline

Definition at line 557 of file segmented_tree.hpp.

◆ rend()

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
std::reverse_iterator< basic_const_iterator< iterator_type::Sibling > > neolib::segmented_tree< T, N, Alloc >::basic_const_iterator< Type >::rend ( ) const
inline

Definition at line 565 of file segmented_tree.hpp.

Friends And Related Symbol Documentation

◆ segmented_tree< T, N, Alloc >

template<typename T , size_t N = 64, typename Alloc = std::allocator<T>>
template<iterator_type Type>
friend class segmented_tree< T, N, Alloc >
friend

Definition at line 446 of file segmented_tree.hpp.


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