MADARA  3.4.1
madara::utility::CircularBuffer< T >::const_iterator Class Reference

Const input iterator for elements of a CircularBuffer. Usual semantics. More...

#include <CircularBuffer.h>

Public Types

using difference_type = size_t
 
using iterator_category = std::random_access_iterator_tag
 
using pointer = const T *
 
using reference = const T &
 
using value_type = const T
 

Public Member Functions

reference at () const
 
reference at (size_t i) const
 
size_t index () const
 Index this iterator refers to. More...
 
size_t index_actual () const
 Actual index within buffer this iterator refers to. More...
 
bool operator!= (const const_iterator &other) const
 
reference operator* () const
 
const_iterator operator+ (size_t n) const
 
const_iteratoroperator++ ()
 
const_iterator operator++ (int)
 
const_iteratoroperator+= (size_t n)
 
size_t operator- (const const_iterator &other) const
 
const_iterator operator- (size_t n) const
 
const_iteratoroperator-- ()
 
const_iterator operator-- (int)
 
const_iteratoroperator-= (size_t n)
 
pointer operator-> () const
 
bool operator< (const const_iterator &other) const
 
bool operator<= (const const_iterator &other) const
 
bool operator== (const const_iterator &other) const
 
bool operator> (const const_iterator &other) const
 
bool operator>= (const const_iterator &other) const
 
reference operator[] (size_t i) const
 

Private Member Functions

 const_iterator (const CircularBuffer &buf, size_t idx)
 

Private Attributes

const CircularBufferbuf_
 
size_t idx_
 

Friends

class CircularBuffer< T >
 
const_iterator operator+ (size_t n, const const_iterator &me)
 

Detailed Description

template<typename T>
class madara::utility::CircularBuffer< T >::const_iterator

Const input iterator for elements of a CircularBuffer. Usual semantics.

Definition at line 192 of file CircularBuffer.h.

Member Typedef Documentation

◆ difference_type

template<typename T >
using madara::utility::CircularBuffer< T >::const_iterator::difference_type = size_t

Definition at line 196 of file CircularBuffer.h.

◆ iterator_category

template<typename T >
using madara::utility::CircularBuffer< T >::const_iterator::iterator_category = std::random_access_iterator_tag

Definition at line 199 of file CircularBuffer.h.

◆ pointer

template<typename T >
using madara::utility::CircularBuffer< T >::const_iterator::pointer = const T*

Definition at line 198 of file CircularBuffer.h.

◆ reference

template<typename T >
using madara::utility::CircularBuffer< T >::const_iterator::reference = const T&

Definition at line 197 of file CircularBuffer.h.

◆ value_type

template<typename T >
using madara::utility::CircularBuffer< T >::const_iterator::value_type = const T

Definition at line 195 of file CircularBuffer.h.

Constructor & Destructor Documentation

◆ const_iterator()

template<typename T >
madara::utility::CircularBuffer< T >::const_iterator::const_iterator ( const CircularBuffer buf,
size_t  idx 
)
inlineprivate

Definition at line 330 of file CircularBuffer.h.

Member Function Documentation

◆ at() [1/2]

template<typename T >
reference madara::utility::CircularBuffer< T >::const_iterator::at ( ) const
inline

Definition at line 205 of file CircularBuffer.h.

◆ at() [2/2]

template<typename T >
reference madara::utility::CircularBuffer< T >::const_iterator::at ( size_t  i) const
inline

Definition at line 217 of file CircularBuffer.h.

◆ index()

template<typename T >
size_t madara::utility::CircularBuffer< T >::const_iterator::index ( ) const
inline

Index this iterator refers to.

Definition at line 245 of file CircularBuffer.h.

◆ index_actual()

template<typename T >
size_t madara::utility::CircularBuffer< T >::const_iterator::index_actual ( ) const
inline

Actual index within buffer this iterator refers to.

Definition at line 251 of file CircularBuffer.h.

◆ operator!=()

template<typename T >
bool madara::utility::CircularBuffer< T >::const_iterator::operator!= ( const const_iterator other) const
inline

Definition at line 261 of file CircularBuffer.h.

◆ operator*()

template<typename T >
reference madara::utility::CircularBuffer< T >::const_iterator::operator* ( void  ) const
inline

Definition at line 201 of file CircularBuffer.h.

◆ operator+()

template<typename T >
const_iterator madara::utility::CircularBuffer< T >::const_iterator::operator+ ( size_t  n) const
inline

Definition at line 298 of file CircularBuffer.h.

◆ operator++() [1/2]

template<typename T >
const_iterator& madara::utility::CircularBuffer< T >::const_iterator::operator++ ( void  )
inline

Definition at line 221 of file CircularBuffer.h.

◆ operator++() [2/2]

template<typename T >
const_iterator madara::utility::CircularBuffer< T >::const_iterator::operator++ ( int  )
inline

Definition at line 231 of file CircularBuffer.h.

◆ operator+=()

template<typename T >
const_iterator& madara::utility::CircularBuffer< T >::const_iterator::operator+= ( size_t  n)
inline

Definition at line 286 of file CircularBuffer.h.

◆ operator-() [1/2]

template<typename T >
size_t madara::utility::CircularBuffer< T >::const_iterator::operator- ( const const_iterator other) const
inline

Definition at line 319 of file CircularBuffer.h.

◆ operator-() [2/2]

template<typename T >
const_iterator madara::utility::CircularBuffer< T >::const_iterator::operator- ( size_t  n) const
inline

Definition at line 312 of file CircularBuffer.h.

◆ operator--() [1/2]

template<typename T >
const_iterator& madara::utility::CircularBuffer< T >::const_iterator::operator-- ( void  )
inline

Definition at line 226 of file CircularBuffer.h.

◆ operator--() [2/2]

template<typename T >
const_iterator madara::utility::CircularBuffer< T >::const_iterator::operator-- ( int  )
inline

Definition at line 237 of file CircularBuffer.h.

◆ operator-=()

template<typename T >
const_iterator& madara::utility::CircularBuffer< T >::const_iterator::operator-= ( size_t  n)
inline

Definition at line 292 of file CircularBuffer.h.

◆ operator->()

template<typename T >
pointer madara::utility::CircularBuffer< T >::const_iterator::operator-> ( ) const
inline

Definition at line 209 of file CircularBuffer.h.

◆ operator<()

template<typename T >
bool madara::utility::CircularBuffer< T >::const_iterator::operator< ( const const_iterator other) const
inline

Definition at line 266 of file CircularBuffer.h.

◆ operator<=()

template<typename T >
bool madara::utility::CircularBuffer< T >::const_iterator::operator<= ( const const_iterator other) const
inline

Definition at line 276 of file CircularBuffer.h.

◆ operator==()

template<typename T >
bool madara::utility::CircularBuffer< T >::const_iterator::operator== ( const const_iterator other) const
inline

Definition at line 256 of file CircularBuffer.h.

◆ operator>()

template<typename T >
bool madara::utility::CircularBuffer< T >::const_iterator::operator> ( const const_iterator other) const
inline

Definition at line 271 of file CircularBuffer.h.

◆ operator>=()

template<typename T >
bool madara::utility::CircularBuffer< T >::const_iterator::operator>= ( const const_iterator other) const
inline

Definition at line 281 of file CircularBuffer.h.

◆ operator[]()

template<typename T >
reference madara::utility::CircularBuffer< T >::const_iterator::operator[] ( size_t  i) const
inline

Definition at line 213 of file CircularBuffer.h.

Friends And Related Function Documentation

◆ CircularBuffer< T >

template<typename T >
friend class CircularBuffer< T >
friend

Definition at line 336 of file CircularBuffer.h.

◆ operator+

template<typename T >
const_iterator operator+ ( size_t  n,
const const_iterator me 
)
friend

Definition at line 305 of file CircularBuffer.h.

Member Data Documentation

◆ buf_

template<typename T >
const CircularBuffer* madara::utility::CircularBuffer< T >::const_iterator::buf_
private

Definition at line 335 of file CircularBuffer.h.

◆ idx_

template<typename T >
size_t madara::utility::CircularBuffer< T >::const_iterator::idx_
private

Definition at line 336 of file CircularBuffer.h.


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