DP3
Public Member Functions | List of all members
dp3::base::cursor< T > Class Template Reference

Multi-dimensional iterators. More...

#include <Cursor.h>

Public Member Functions

 cursor ()
 
 cursor (T *pointer)
 
template<typename T_STRIDE >
 cursor (T *pointer, size_t rank, const T_STRIDE *strides)
 
T * address ()
 
const T * address () const
 
void backward (size_t i)
 
void backward (size_t i, size_t n)
 
void forward (size_t i)
 
void forward (size_t i, size_t n)
 
T & operator* ()
 
const T & operator* () const
 
cursoroperator++ ()
 
cursor operator++ (int)
 
cursoroperator+= (size_t n)
 
cursoroperator-= (size_t n)
 
T * operator-> ()
 
const T * operator-> () const
 
T & operator[] (size_t n)
 
const T & operator[] (size_t n) const
 
size_t rank () const
 
size_t stride (size_t i) const
 

Detailed Description

template<typename T>
class dp3::base::cursor< T >

Multi-dimensional iterators.

Constructor & Destructor Documentation

◆ cursor() [1/3]

template<typename T >
dp3::base::cursor< T >::cursor ( )
inline

◆ cursor() [2/3]

template<typename T >
dp3::base::cursor< T >::cursor ( T *  pointer)
inline

◆ cursor() [3/3]

template<typename T >
template<typename T_STRIDE >
dp3::base::cursor< T >::cursor ( T *  pointer,
size_t  rank,
const T_STRIDE *  strides 
)
inline

Member Function Documentation

◆ address() [1/2]

template<typename T >
T* dp3::base::cursor< T >::address ( )
inline

◆ address() [2/2]

template<typename T >
const T* dp3::base::cursor< T >::address ( ) const
inline

◆ backward() [1/2]

template<typename T >
void dp3::base::cursor< T >::backward ( size_t  i)
inline

◆ backward() [2/2]

template<typename T >
void dp3::base::cursor< T >::backward ( size_t  i,
size_t  n 
)
inline

◆ forward() [1/2]

template<typename T >
void dp3::base::cursor< T >::forward ( size_t  i)
inline

◆ forward() [2/2]

template<typename T >
void dp3::base::cursor< T >::forward ( size_t  i,
size_t  n 
)
inline

◆ operator*() [1/2]

template<typename T >
T& dp3::base::cursor< T >::operator* ( )
inline

◆ operator*() [2/2]

template<typename T >
const T& dp3::base::cursor< T >::operator* ( ) const
inline

◆ operator++() [1/2]

template<typename T >
cursor& dp3::base::cursor< T >::operator++ ( )
inline

◆ operator++() [2/2]

template<typename T >
cursor dp3::base::cursor< T >::operator++ ( int  )
inline

◆ operator+=()

template<typename T >
cursor& dp3::base::cursor< T >::operator+= ( size_t  n)
inline

◆ operator-=()

template<typename T >
cursor& dp3::base::cursor< T >::operator-= ( size_t  n)
inline

◆ operator->() [1/2]

template<typename T >
T* dp3::base::cursor< T >::operator-> ( )
inline

◆ operator->() [2/2]

template<typename T >
const T* dp3::base::cursor< T >::operator-> ( ) const
inline

◆ operator[]() [1/2]

template<typename T >
T& dp3::base::cursor< T >::operator[] ( size_t  n)
inline

◆ operator[]() [2/2]

template<typename T >
const T& dp3::base::cursor< T >::operator[] ( size_t  n) const
inline

◆ rank()

template<typename T >
size_t dp3::base::cursor< T >::rank ( ) const
inline

◆ stride()

template<typename T >
size_t dp3::base::cursor< T >::stride ( size_t  i) const
inline

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