alpaqa 1.0.0a11
Nonconvex constrained optimization
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | Related Functions | List of all members
ReverseCircularIndexIterator< IndexT > Struct Template Reference

#include <alpaqa/util/ringbuffer.hpp>

Detailed Description

template<class IndexT = size_t>
struct alpaqa::ReverseCircularIndexIterator< IndexT >

Definition at line 88 of file ringbuffer.hpp.

+ Collaboration diagram for ReverseCircularIndexIterator< IndexT >:

Public Types

using ForwardIterator = CircularIndexIterator< IndexT >
 
using Index = typename ForwardIterator::Index
 
using Indices = typename ForwardIterator::Indices
 
using value_type = Indices
 
using reference = value_type
 
using difference_type = std::ptrdiff_t
 
using pointer = void
 
using iterator_category = std::input_iterator_tag
 

Public Member Functions

 ReverseCircularIndexIterator ()
 
 ReverseCircularIndexIterator (Indices i, Index max)
 
 ReverseCircularIndexIterator (ForwardIterator forwardit)
 
reference operator* () const
 
ReverseCircularIndexIteratoroperator++ ()
 
ReverseCircularIndexIteratoroperator-- ()
 
ReverseCircularIndexIterator operator++ (int)
 
ReverseCircularIndexIterator operator-- (int)
 

Public Attributes

ForwardIterator forwardit
 

Related Functions

(Note that these are not member functions.)

template<class IndexT >
bool operator== (ReverseCircularIndexIterator< IndexT > a, ReverseCircularIndexIterator< IndexT > b)
 
template<class IndexT >
bool operator!= (ReverseCircularIndexIterator< IndexT > a, ReverseCircularIndexIterator< IndexT > b)
 

Member Typedef Documentation

◆ ForwardIterator

Definition at line 89 of file ringbuffer.hpp.

◆ Index

using Index = typename ForwardIterator::Index

Definition at line 90 of file ringbuffer.hpp.

◆ Indices

Definition at line 91 of file ringbuffer.hpp.

◆ value_type

Definition at line 100 of file ringbuffer.hpp.

◆ reference

Definition at line 101 of file ringbuffer.hpp.

◆ difference_type

using difference_type = std::ptrdiff_t

Definition at line 102 of file ringbuffer.hpp.

◆ pointer

using pointer = void

Definition at line 103 of file ringbuffer.hpp.

◆ iterator_category

using iterator_category = std::input_iterator_tag

Definition at line 104 of file ringbuffer.hpp.

Constructor & Destructor Documentation

◆ ReverseCircularIndexIterator() [1/3]

Definition at line 93 of file ringbuffer.hpp.

◆ ReverseCircularIndexIterator() [2/3]

ReverseCircularIndexIterator ( Indices  i,
Index  max 
)
inline

Definition at line 94 of file ringbuffer.hpp.

◆ ReverseCircularIndexIterator() [3/3]

Definition at line 95 of file ringbuffer.hpp.

Member Function Documentation

◆ operator*()

reference operator* ( ) const
inline

Definition at line 106 of file ringbuffer.hpp.

◆ operator++() [1/2]

ReverseCircularIndexIterator & operator++ ( )
inline

Definition at line 110 of file ringbuffer.hpp.

◆ operator--() [1/2]

ReverseCircularIndexIterator & operator-- ( )
inline

Definition at line 114 of file ringbuffer.hpp.

◆ operator++() [2/2]

ReverseCircularIndexIterator operator++ ( int  )
inline

Definition at line 118 of file ringbuffer.hpp.

◆ operator--() [2/2]

ReverseCircularIndexIterator operator-- ( int  )
inline

Definition at line 123 of file ringbuffer.hpp.

Friends And Related Function Documentation

◆ operator==()

bool operator== ( ReverseCircularIndexIterator< IndexT >  a,
ReverseCircularIndexIterator< IndexT >  b 
)
related
Note
Only valid for two indices in the same range.

Definition at line 133 of file ringbuffer.hpp.

◆ operator!=()

bool operator!= ( ReverseCircularIndexIterator< IndexT >  a,
ReverseCircularIndexIterator< IndexT >  b 
)
related
Note
Only valid for two indices in the same range.

Definition at line 140 of file ringbuffer.hpp.

Member Data Documentation

◆ forwardit

ForwardIterator forwardit

Definition at line 98 of file ringbuffer.hpp.


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