Go to the documentation of this file. 1 #ifndef GfxTL__INDEXEDITERATOR_HEADER__
2 #define GfxTL__INDEXEDITERATOR_HEADER__
7 template<
class IndexIteratorT,
class IteratorT >
11 typedef typename std::iterator_traits< IteratorT >::value_type
13 typedef typename std::iterator_traits< IteratorT >::pointer
15 typedef typename std::iterator_traits< IteratorT >::reference
17 typedef typename std::iterator_traits< IndexIteratorT >
19 typedef typename std::iterator_traits< IndexIteratorT >
22 typedef typename std::iterator_traits< IndexIteratorT >::value_type
IndexType;
37 template<
class IdxItT,
class ItT >
45 return &m_it[*m_idxIt];
50 return m_it[*m_idxIt];
81 return m_idxIt == i.m_idxIt && m_it == i.m_it;
91 return m_idxIt - i.m_idxIt;
106 return m_it[m_idxIt[d]];
123 template<
class IdxItT,
class ItT >
133 return m_idxIt < i.m_idxIt;
137 return m_idxIt > i.m_idxIt;
141 return m_idxIt <= i.m_idxIt;
145 return m_idxIt >= i.m_idxIt;
149 IndexIteratorT m_idxIt;
153 template<
class IndexIteratorT,
class IteratorT >
IndexedIterator(const ThisType &it)
bool operator>(const ThisType &i) const
ThisType operator-(difference_type d) const
bool operator<(const ThisType &i) const
std::iterator_traits< IteratorT >::value_type value_type
std::iterator_traits< IteratorT >::reference reference
std::iterator_traits< IndexIteratorT >::value_type IndexType
const IteratorT & Iterator() const
IndexedIterator< IndexIteratorT, IteratorT > ThisType
bool operator<=(const ThisType &i) const
bool operator==(const ThisType &i) const
std::iterator_traits< IteratorT >::pointer pointer
const IndexIteratorT & IndexIterator() const
reference operator[](difference_type d)
IndexedIterator< IndexIteratorT, IteratorT > IndexIterate(IndexIteratorT idxIt, IteratorT it)
IndexedIterator(IndexIteratorT idxIt, IteratorT it)
difference_type operator-(const ThisType &i) const
bool operator!=(const ThisType &i) const
ThisType operator+(difference_type d) const
bool operator>=(const ThisType &i) const
IndexedIterator(const IndexedIterator< IdxItT, ItT > &it)
std::iterator_traits< IndexIteratorT >::difference_type difference_type
std::iterator_traits< IndexIteratorT >::iterator_category iterator_category
ThisType & operator=(const IndexedIterator< IdxItT, ItT > &it)