SPH
Public Types | Public Member Functions | List of all members
ComponentIterator< TIterator > Class Template Reference

#include <IteratorAdapters.h>

Public Types

using iterator_category = typename TIterator::iterator_category
 
using value_type = RawT
 
using difference_type = std::ptrdiff_t
 
using pointer = RawT *
 
using reference = RawT &
 

Public Member Functions

 ComponentIterator ()=default
 
 ComponentIterator (const TIterator &iterator, const int component)
 
const RawT & operator* () const
 
RawT & operator* ()
 
ComponentIteratoroperator++ ()
 
ComponentIterator operator++ (int)
 
ComponentIteratoroperator-- ()
 
ComponentIterator operator-- (int)
 
ComponentIterator operator+ (const int n) const
 
ComponentIterator operator- (const int n) const
 
void operator+= (const int n)
 
void operator-= (const int n)
 
Size operator- (const ComponentIterator &other) const
 
bool operator< (const ComponentIterator &other) const
 
bool operator> (const ComponentIterator &other) const
 
bool operator<= (const ComponentIterator &other) const
 
bool operator>= (const ComponentIterator &other) const
 
bool operator== (const ComponentIterator &other)
 
bool operator!= (const ComponentIterator &other)
 

Detailed Description

template<typename TIterator>
class ComponentIterator< TIterator >

Provides iterator over selected component of vector array or any iterable container holding vectors. Can be used in STL algorithms, namely in std::sort.

Definition at line 126 of file IteratorAdapters.h.

Member Typedef Documentation

◆ difference_type

template<typename TIterator >
using ComponentIterator< TIterator >::difference_type = std::ptrdiff_t

Definition at line 137 of file IteratorAdapters.h.

◆ iterator_category

template<typename TIterator >
using ComponentIterator< TIterator >::iterator_category = typename TIterator::iterator_category

Definition at line 135 of file IteratorAdapters.h.

◆ pointer

template<typename TIterator >
using ComponentIterator< TIterator >::pointer = RawT*

Definition at line 138 of file IteratorAdapters.h.

◆ reference

template<typename TIterator >
using ComponentIterator< TIterator >::reference = RawT&

Definition at line 139 of file IteratorAdapters.h.

◆ value_type

template<typename TIterator >
using ComponentIterator< TIterator >::value_type = RawT

Definition at line 136 of file IteratorAdapters.h.

Constructor & Destructor Documentation

◆ ComponentIterator() [1/2]

template<typename TIterator >
ComponentIterator< TIterator >::ComponentIterator ( )
default

◆ ComponentIterator() [2/2]

template<typename TIterator >
ComponentIterator< TIterator >::ComponentIterator ( const TIterator &  iterator,
const int  component 
)
inline

Definition at line 143 of file IteratorAdapters.h.

Member Function Documentation

◆ operator!=()

template<typename TIterator >
bool ComponentIterator< TIterator >::operator!= ( const ComponentIterator< TIterator > &  other)
inline

Definition at line 206 of file IteratorAdapters.h.

◆ operator*() [1/2]

template<typename TIterator >
RawT& ComponentIterator< TIterator >::operator* ( )
inline

Definition at line 151 of file IteratorAdapters.h.

◆ operator*() [2/2]

template<typename TIterator >
const RawT& ComponentIterator< TIterator >::operator* ( ) const
inline

Definition at line 147 of file IteratorAdapters.h.

◆ operator+()

template<typename TIterator >
ComponentIterator ComponentIterator< TIterator >::operator+ ( const int  n) const
inline

Definition at line 175 of file IteratorAdapters.h.

◆ operator++() [1/2]

template<typename TIterator >
ComponentIterator& ComponentIterator< TIterator >::operator++ ( )
inline

Definition at line 155 of file IteratorAdapters.h.

◆ operator++() [2/2]

template<typename TIterator >
ComponentIterator ComponentIterator< TIterator >::operator++ ( int  )
inline

Definition at line 159 of file IteratorAdapters.h.

◆ operator+=()

template<typename TIterator >
void ComponentIterator< TIterator >::operator+= ( const int  n)
inline

Definition at line 181 of file IteratorAdapters.h.

◆ operator-() [1/2]

template<typename TIterator >
Size ComponentIterator< TIterator >::operator- ( const ComponentIterator< TIterator > &  other) const
inline

Definition at line 188 of file IteratorAdapters.h.

◆ operator-() [2/2]

template<typename TIterator >
ComponentIterator ComponentIterator< TIterator >::operator- ( const int  n) const
inline

Definition at line 178 of file IteratorAdapters.h.

◆ operator--() [1/2]

template<typename TIterator >
ComponentIterator& ComponentIterator< TIterator >::operator-- ( )
inline

Definition at line 164 of file IteratorAdapters.h.

◆ operator--() [2/2]

template<typename TIterator >
ComponentIterator ComponentIterator< TIterator >::operator-- ( int  )
inline

Definition at line 168 of file IteratorAdapters.h.

◆ operator-=()

template<typename TIterator >
void ComponentIterator< TIterator >::operator-= ( const int  n)
inline

Definition at line 184 of file IteratorAdapters.h.

◆ operator<()

template<typename TIterator >
bool ComponentIterator< TIterator >::operator< ( const ComponentIterator< TIterator > &  other) const
inline

Definition at line 191 of file IteratorAdapters.h.

◆ operator<=()

template<typename TIterator >
bool ComponentIterator< TIterator >::operator<= ( const ComponentIterator< TIterator > &  other) const
inline

Definition at line 197 of file IteratorAdapters.h.

◆ operator==()

template<typename TIterator >
bool ComponentIterator< TIterator >::operator== ( const ComponentIterator< TIterator > &  other)
inline

Definition at line 203 of file IteratorAdapters.h.

◆ operator>()

template<typename TIterator >
bool ComponentIterator< TIterator >::operator> ( const ComponentIterator< TIterator > &  other) const
inline

Definition at line 194 of file IteratorAdapters.h.

◆ operator>=()

template<typename TIterator >
bool ComponentIterator< TIterator >::operator>= ( const ComponentIterator< TIterator > &  other) const
inline

Definition at line 200 of file IteratorAdapters.h.


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