Tatooine
Public Types | Public Member Functions | Private Attributes | List of all members
tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions > Struct Template Reference

#include <vertex_container.h>

Inheritance diagram for tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >:
[legend]
Collaboration diagram for tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >:
[legend]

Public Types

using pointset_type = tatooine::pointset< Real, NumDimensions >
 
using vertex_handle = typename pointset_type::vertex_handle
 
using sentinel_type = sentinel
 
- Public Types inherited from tatooine::iterator_facade< vertex_container_iterator< Real, NumDimensions > >
using iterator_type = vertex_container_iterator< Real, NumDimensions >
 
using this_type = iterator_facade< iterator_type >
 

Public Member Functions

 vertex_container_iterator ()=default
 
 vertex_container_iterator (vertex_handle const vh, pointset_type *ps)
 
 vertex_container_iterator (vertex_container_iterator const &other)=default
 
 vertex_container_iterator (vertex_container_iterator &&other) noexcept=default
 
auto operator= (vertex_container_iterator const &other) -> vertex_container_iterator &=default
 
auto operator= (vertex_container_iterator &&other) noexcept -> vertex_container_iterator &=default
 
 ~vertex_container_iterator ()=default
 
constexpr auto increment ()
 
constexpr auto decrement ()
 
constexpr auto distance_to (vertex_container_iterator const &other) const -> std::ptrdiff_t
 
constexpr auto distance_to (sentinel_type const) const -> std::ptrdiff_t
 
constexpr auto advance (std::ptrdiff_t const off) -> vertex_container_iterator &
 
constexpr auto equal (vertex_container_iterator const &other) const
 
auto dereference () const
 
constexpr auto at_end () const
 
- Public Member Functions inherited from tatooine::iterator_facade< vertex_container_iterator< Real, NumDimensions > >
auto operator* () const -> decltype(auto)
 
auto operator-> () const
 
auto operator++ () -> auto &
 
auto operator++ (int)
 
auto operator-- () -> auto &
 
auto operator-- (int)
 
auto operator[] (difference_type_arg< iterator_type > auto pos) -> decltype(auto)
 

Private Attributes

vertex_handle m_vh {}
 
pointset_typem_pointset = nullptr
 

Member Typedef Documentation

◆ pointset_type

template<typename Real , std::size_t NumDimensions>
using tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::pointset_type = tatooine::pointset<Real, NumDimensions>

◆ sentinel_type

template<typename Real , std::size_t NumDimensions>
using tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::sentinel_type = sentinel

◆ vertex_handle

template<typename Real , std::size_t NumDimensions>
using tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::vertex_handle = typename pointset_type::vertex_handle

Constructor & Destructor Documentation

◆ vertex_container_iterator() [1/4]

template<typename Real , std::size_t NumDimensions>
tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::vertex_container_iterator ( )
default

◆ vertex_container_iterator() [2/4]

template<typename Real , std::size_t NumDimensions>
tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::vertex_container_iterator ( vertex_handle const  vh,
pointset_type ps 
)
inline

◆ vertex_container_iterator() [3/4]

template<typename Real , std::size_t NumDimensions>
tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::vertex_container_iterator ( vertex_container_iterator< Real, NumDimensions > const &  other)
default

◆ vertex_container_iterator() [4/4]

template<typename Real , std::size_t NumDimensions>
tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::vertex_container_iterator ( vertex_container_iterator< Real, NumDimensions > &&  other)
defaultnoexcept

◆ ~vertex_container_iterator()

template<typename Real , std::size_t NumDimensions>
tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::~vertex_container_iterator ( )
default

Member Function Documentation

◆ advance()

template<typename Real , std::size_t NumDimensions>
constexpr auto tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::advance ( std::ptrdiff_t const  off) -> vertex_container_iterator&
inlineconstexpr

◆ at_end()

template<typename Real , std::size_t NumDimensions>
constexpr auto tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::at_end ( ) const
inlineconstexpr

◆ decrement()

template<typename Real , std::size_t NumDimensions>
constexpr auto tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::decrement ( )
inlineconstexpr

◆ dereference()

template<typename Real , std::size_t NumDimensions>
auto tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::dereference ( ) const
inline

◆ distance_to() [1/2]

template<typename Real , std::size_t NumDimensions>
constexpr auto tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::distance_to ( sentinel_type const  ) const -> std::ptrdiff_t
inlineconstexpr

◆ distance_to() [2/2]

template<typename Real , std::size_t NumDimensions>
constexpr auto tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::distance_to ( vertex_container_iterator< Real, NumDimensions > const &  other) const -> std::ptrdiff_t
inlineconstexpr

◆ equal()

template<typename Real , std::size_t NumDimensions>
constexpr auto tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::equal ( vertex_container_iterator< Real, NumDimensions > const &  other) const
inlineconstexpr

◆ increment()

template<typename Real , std::size_t NumDimensions>
constexpr auto tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::increment ( )
inlineconstexpr

◆ operator=() [1/2]

template<typename Real , std::size_t NumDimensions>
auto tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::operator= ( vertex_container_iterator< Real, NumDimensions > &&  other) -> vertex_container_iterator &=default
defaultnoexcept

◆ operator=() [2/2]

template<typename Real , std::size_t NumDimensions>
auto tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::operator= ( vertex_container_iterator< Real, NumDimensions > const &  other) -> vertex_container_iterator &=default
default

Member Data Documentation

◆ m_pointset

template<typename Real , std::size_t NumDimensions>
pointset_type* tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::m_pointset = nullptr
private

◆ m_vh

template<typename Real , std::size_t NumDimensions>
vertex_handle tatooine::detail::pointset::vertex_container_iterator< Real, NumDimensions >::m_vh {}
private

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