HOPS
HOPS class reference
Public Types | Public Member Functions | List of all members
hops::MHO_BidirectionalStrideIterator< XValueType > Class Template Reference

Class MHO_BidirectionalStrideIterator. More...

#include <MHO_BidirectionalStrideIterator.hh>

Public Types

typedef std::ptrdiff_t difference_type
 
typedef std::bidirectional_iterator_tag iterator_category
 
typedef XValueType * pointer
 
typedef XValueType & reference
 
typedef MHO_BidirectionalStrideIterator self_type
 
typedef XValueType value_type
 

Public Member Functions

 MHO_BidirectionalStrideIterator (const self_type &copy)
 
 MHO_BidirectionalStrideIterator (pointer begin_ptr, pointer ptr, std::size_t length, std::size_t stride)
 
std::size_t GetOffset () const
 
pointer GetPtr ()
 
const pointer GetPtr () const
 
bool IsValid () const
 
bool operator!= (const self_type &rhs) const
 
reference operator* ()
 
const reference operator* () const
 
self_type operator+ (const std::ptrdiff_t &diff)
 
self_type operator++ ()
 
self_type operator++ (int)
 
self_type operator+= (const std::ptrdiff_t &diff)
 
std::ptrdiff_t operator- (const self_type &iter)
 
self_type operator- (const std::ptrdiff_t &diff)
 
self_type operator-- ()
 
self_type operator-- (int)
 
self_type operator-= (const std::ptrdiff_t &diff)
 
pointer operator-> ()
 
const pointer operator-> () const
 
self_type operator= (const self_type &rhs)
 
bool operator== (const self_type &rhs) const
 

Detailed Description

template<typename XValueType>
class hops::MHO_BidirectionalStrideIterator< XValueType >

Class MHO_BidirectionalStrideIterator.

provides an iterator over a object in either increasing or decreasing index direction, with strided access

Author
J. Barrett - barre.nosp@m.ttj@.nosp@m.mit.e.nosp@m.du
Date
Sat Oct 2 04:34:18 2021 -0400

Member Typedef Documentation

◆ difference_type

template<typename XValueType >
typedef std::ptrdiff_t hops::MHO_BidirectionalStrideIterator< XValueType >::difference_type

◆ iterator_category

template<typename XValueType >
typedef std::bidirectional_iterator_tag hops::MHO_BidirectionalStrideIterator< XValueType >::iterator_category

◆ pointer

template<typename XValueType >
typedef XValueType* hops::MHO_BidirectionalStrideIterator< XValueType >::pointer

◆ reference

template<typename XValueType >
typedef XValueType& hops::MHO_BidirectionalStrideIterator< XValueType >::reference

◆ self_type

template<typename XValueType >
typedef MHO_BidirectionalStrideIterator hops::MHO_BidirectionalStrideIterator< XValueType >::self_type

◆ value_type

template<typename XValueType >
typedef XValueType hops::MHO_BidirectionalStrideIterator< XValueType >::value_type

Constructor & Destructor Documentation

◆ MHO_BidirectionalStrideIterator() [1/2]

template<typename XValueType >
hops::MHO_BidirectionalStrideIterator< XValueType >::MHO_BidirectionalStrideIterator ( pointer  begin_ptr,
pointer  ptr,
std::size_t  length,
std::size_t  stride 
)
inline

◆ MHO_BidirectionalStrideIterator() [2/2]

template<typename XValueType >
hops::MHO_BidirectionalStrideIterator< XValueType >::MHO_BidirectionalStrideIterator ( const self_type copy)
inline

Member Function Documentation

◆ GetOffset()

template<typename XValueType >
std::size_t hops::MHO_BidirectionalStrideIterator< XValueType >::GetOffset ( ) const
inline

◆ GetPtr() [1/2]

template<typename XValueType >
pointer hops::MHO_BidirectionalStrideIterator< XValueType >::GetPtr ( )
inline

◆ GetPtr() [2/2]

template<typename XValueType >
const pointer hops::MHO_BidirectionalStrideIterator< XValueType >::GetPtr ( ) const
inline

◆ IsValid()

template<typename XValueType >
bool hops::MHO_BidirectionalStrideIterator< XValueType >::IsValid ( ) const
inline

◆ operator!=()

template<typename XValueType >
bool hops::MHO_BidirectionalStrideIterator< XValueType >::operator!= ( const self_type rhs) const
inline

◆ operator*() [1/2]

template<typename XValueType >
reference hops::MHO_BidirectionalStrideIterator< XValueType >::operator* ( )
inline

◆ operator*() [2/2]

template<typename XValueType >
const reference hops::MHO_BidirectionalStrideIterator< XValueType >::operator* ( ) const
inline

◆ operator+()

template<typename XValueType >
self_type hops::MHO_BidirectionalStrideIterator< XValueType >::operator+ ( const std::ptrdiff_t &  diff)
inline

◆ operator++() [1/2]

template<typename XValueType >
self_type hops::MHO_BidirectionalStrideIterator< XValueType >::operator++ ( )
inline

◆ operator++() [2/2]

template<typename XValueType >
self_type hops::MHO_BidirectionalStrideIterator< XValueType >::operator++ ( int  )
inline

◆ operator+=()

template<typename XValueType >
self_type hops::MHO_BidirectionalStrideIterator< XValueType >::operator+= ( const std::ptrdiff_t &  diff)
inline

◆ operator-() [1/2]

template<typename XValueType >
std::ptrdiff_t hops::MHO_BidirectionalStrideIterator< XValueType >::operator- ( const self_type iter)
inline

◆ operator-() [2/2]

template<typename XValueType >
self_type hops::MHO_BidirectionalStrideIterator< XValueType >::operator- ( const std::ptrdiff_t &  diff)
inline

◆ operator--() [1/2]

template<typename XValueType >
self_type hops::MHO_BidirectionalStrideIterator< XValueType >::operator-- ( )
inline

◆ operator--() [2/2]

template<typename XValueType >
self_type hops::MHO_BidirectionalStrideIterator< XValueType >::operator-- ( int  )
inline

◆ operator-=()

template<typename XValueType >
self_type hops::MHO_BidirectionalStrideIterator< XValueType >::operator-= ( const std::ptrdiff_t &  diff)
inline

◆ operator->() [1/2]

template<typename XValueType >
pointer hops::MHO_BidirectionalStrideIterator< XValueType >::operator-> ( )
inline

◆ operator->() [2/2]

template<typename XValueType >
const pointer hops::MHO_BidirectionalStrideIterator< XValueType >::operator-> ( ) const
inline

◆ operator=()

template<typename XValueType >
self_type hops::MHO_BidirectionalStrideIterator< XValueType >::operator= ( const self_type rhs)
inline

◆ operator==()

template<typename XValueType >
bool hops::MHO_BidirectionalStrideIterator< XValueType >::operator== ( const self_type rhs) const
inline

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