Volume Cartographer 2.27.0
Public Member Functions | Private Attributes | List of all members
volcart::Range2DIterable< T, >::Counting2DIterator< ItT > Class Template Reference

Public Types

using difference_type = std::size_t
 
using value_type = std::pair< ItT const &, ItT const & >
 
using pointer = value_type *
 
using reference = value_type
 
using iterator_category = std::input_iterator_tag
 

Public Member Functions

 Counting2DIterator (ItT v, ItT vMax, ItT u, ItT uMax, ItT step)
 
reference operator* () const
 
bool operator== (const Counting2DIterator &other) const
 
bool operator!= (const Counting2DIterator &other) const
 
Counting2DIteratoroperator++ ()
 

Private Attributes

ItT v_ {0}
 
ItT vMax_ {1}
 
ItT u_ {0}
 
ItT uStart_ {0}
 
ItT uMax_ {1}
 
ItT step_ {1}
 

Detailed Description

template<typename T, std::enable_if_t< std::is_arithmetic< T >::value, int > = 0>
template<typename ItT>
class volcart::Range2DIterable< T, >::Counting2DIterator< ItT >

Definition at line 198 of file Iteration.hpp.

Member Typedef Documentation

◆ difference_type

template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0>
template<typename ItT >
using volcart::Range2DIterable< T, >::Counting2DIterator< ItT >::difference_type = std::size_t

Iterator type traits

Definition at line 216 of file Iteration.hpp.

◆ iterator_category

template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0>
template<typename ItT >
using volcart::Range2DIterable< T, >::Counting2DIterator< ItT >::iterator_category = std::input_iterator_tag

Definition at line 220 of file Iteration.hpp.

◆ pointer

template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0>
template<typename ItT >
using volcart::Range2DIterable< T, >::Counting2DIterator< ItT >::pointer = value_type*

Definition at line 218 of file Iteration.hpp.

◆ reference

template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0>
template<typename ItT >
using volcart::Range2DIterable< T, >::Counting2DIterator< ItT >::reference = value_type

Definition at line 219 of file Iteration.hpp.

◆ value_type

template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0>
template<typename ItT >
using volcart::Range2DIterable< T, >::Counting2DIterator< ItT >::value_type = std::pair<ItT const&, ItT const&>

Definition at line 217 of file Iteration.hpp.

Constructor & Destructor Documentation

◆ Counting2DIterator()

template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0>
template<typename ItT >
volcart::Range2DIterable< T, >::Counting2DIterator< ItT >::Counting2DIterator ( ItT  v,
ItT  vMax,
ItT  u,
ItT  uMax,
ItT  step 
)
inlineexplicit

Construct with starting values and step size

Definition at line 224 of file Iteration.hpp.

Member Function Documentation

◆ operator!=()

template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0>
template<typename ItT >
bool volcart::Range2DIterable< T, >::Counting2DIterator< ItT >::operator!= ( const Counting2DIterator< ItT > &  other) const
inline

Inequality comparison

Definition at line 239 of file Iteration.hpp.

◆ operator*()

template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0>
template<typename ItT >
reference volcart::Range2DIterable< T, >::Counting2DIterator< ItT >::operator* ( ) const
inline

Get the current value

Definition at line 230 of file Iteration.hpp.

◆ operator++()

template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0>
template<typename ItT >
Counting2DIterator & volcart::Range2DIterable< T, >::Counting2DIterator< ItT >::operator++ ( )
inline

Increment operator

Definition at line 245 of file Iteration.hpp.

◆ operator==()

template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0>
template<typename ItT >
bool volcart::Range2DIterable< T, >::Counting2DIterator< ItT >::operator== ( const Counting2DIterator< ItT > &  other) const
inline

Equality comparison

Definition at line 233 of file Iteration.hpp.

Member Data Documentation

◆ step_

template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0>
template<typename ItT >
ItT volcart::Range2DIterable< T, >::Counting2DIterator< ItT >::step_ {1}
private

Step size

Definition at line 212 of file Iteration.hpp.

◆ u_

template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0>
template<typename ItT >
ItT volcart::Range2DIterable< T, >::Counting2DIterator< ItT >::u_ {0}
private

Current iterator U value

Definition at line 206 of file Iteration.hpp.

◆ uMax_

template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0>
template<typename ItT >
ItT volcart::Range2DIterable< T, >::Counting2DIterator< ItT >::uMax_ {1}
private

U loop limit

Definition at line 210 of file Iteration.hpp.

◆ uStart_

template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0>
template<typename ItT >
ItT volcart::Range2DIterable< T, >::Counting2DIterator< ItT >::uStart_ {0}
private

Starting value

Definition at line 208 of file Iteration.hpp.

◆ v_

template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0>
template<typename ItT >
ItT volcart::Range2DIterable< T, >::Counting2DIterator< ItT >::v_ {0}
private

Current iterator V value

Definition at line 202 of file Iteration.hpp.

◆ vMax_

template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0>
template<typename ItT >
ItT volcart::Range2DIterable< T, >::Counting2DIterator< ItT >::vMax_ {1}
private

V loop limit

Definition at line 204 of file Iteration.hpp.


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