alpaqa 1.0.0a18
Nonconvex constrained optimization
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | Related Symbols | 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 Symbols

(Note that these are not member symbols.)

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

Definition at line 90 of file ringbuffer.hpp.

◆ Indices

Definition at line 91 of file ringbuffer.hpp.

◆ value_type

template<class IndexT = size_t>
using value_type = Indices

Definition at line 100 of file ringbuffer.hpp.

◆ reference

template<class IndexT = size_t>
using reference = value_type

Definition at line 101 of file ringbuffer.hpp.

◆ difference_type

template<class IndexT = size_t>
using difference_type = std::ptrdiff_t

Definition at line 102 of file ringbuffer.hpp.

◆ pointer

template<class IndexT = size_t>
using pointer = void

Definition at line 103 of file ringbuffer.hpp.

◆ iterator_category

template<class IndexT = size_t>
using iterator_category = std::input_iterator_tag

Definition at line 104 of file ringbuffer.hpp.

Constructor & Destructor Documentation

◆ ReverseCircularIndexIterator() [1/3]

template<class IndexT = size_t>
ReverseCircularIndexIterator ( )
inline

Definition at line 93 of file ringbuffer.hpp.

◆ ReverseCircularIndexIterator() [2/3]

template<class IndexT = size_t>
ReverseCircularIndexIterator ( Indices  i,
Index  max 
)
inline

Definition at line 94 of file ringbuffer.hpp.

◆ ReverseCircularIndexIterator() [3/3]

template<class IndexT = size_t>
ReverseCircularIndexIterator ( ForwardIterator  forwardit)
inline

Definition at line 95 of file ringbuffer.hpp.

Member Function Documentation

◆ operator*()

template<class IndexT = size_t>
reference operator* ( ) const
inline

Definition at line 106 of file ringbuffer.hpp.

◆ operator++() [1/2]

template<class IndexT = size_t>
ReverseCircularIndexIterator & operator++ ( )
inline

Definition at line 110 of file ringbuffer.hpp.

◆ operator--() [1/2]

template<class IndexT = size_t>
ReverseCircularIndexIterator & operator-- ( )
inline

Definition at line 114 of file ringbuffer.hpp.

◆ operator++() [2/2]

template<class IndexT = size_t>
ReverseCircularIndexIterator operator++ ( int  )
inline

Definition at line 118 of file ringbuffer.hpp.

◆ operator--() [2/2]

template<class IndexT = size_t>
ReverseCircularIndexIterator operator-- ( int  )
inline

Definition at line 123 of file ringbuffer.hpp.

Friends And Related Symbol Documentation

◆ operator==()

Note
Only valid for two indices in the same range.

Definition at line 133 of file ringbuffer.hpp.

◆ operator!=()

Note
Only valid for two indices in the same range.

Definition at line 140 of file ringbuffer.hpp.

Member Data Documentation

◆ forwardit

template<class IndexT = size_t>
ForwardIterator forwardit

Definition at line 98 of file ringbuffer.hpp.


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