STK++ 0.9.13
STK::ConstBiDirectionalIterator< Array > Struct Template Reference

ConstBiDirectionalIterator allows to loop over the element of one dimensional list containers. More...

#include <STK_BiDirectionalIterator.h>

Inheritance diagram for STK::ConstBiDirectionalIterator< Array >:
Inheritance graph

Public Types

enum  {
  structure_ = hidden::IteratorTraits< ConstBiDirectionalIterator >::structure_ , orient_ = hidden::IteratorTraits< ConstBiDirectionalIterator >::orient_ , sizeCols_ = hidden::IteratorTraits< ConstBiDirectionalIterator >::sizeCols_ , sizeRows_ = hidden::IteratorTraits< ConstBiDirectionalIterator >::sizeRows_ ,
  size_ = hidden::IteratorTraits< ConstBiDirectionalIterator >::size_ , storage_ = hidden::IteratorTraits< ConstBiDirectionalIterator >::storage_
}
 
typedef DenseIteratorBase< ConstBiDirectionalIteratorBase
 
typedef hidden::IteratorTraits< ConstBiDirectionalIterator >::Index Index
 
typedef hidden::IteratorTraits< ConstBiDirectionalIterator >::Type Type
 
typedef hidden::IteratorTraits< ConstBiDirectionalIterator >::TypeConst TypeConst
 
typedef hidden::IteratorTraits< ConstBiDirectionalIterator >::RowRange RowRange
 
typedef hidden::IteratorTraits< ConstBiDirectionalIterator >::ColRange ColRange
 
typedef hidden::IteratorTraits< ConstBiDirectionalIterator >::iterator_category iterator_category
 
typedef hidden::IteratorTraits< ConstBiDirectionalIterator >::value_type value_type
 
typedef hidden::IteratorTraits< ConstBiDirectionalIterator >::reference reference
 
typedef hidden::IteratorTraits< ConstBiDirectionalIterator >::pointer pointer
 
typedef hidden::IteratorTraits< ConstBiDirectionalIterator >::difference_type difference_type
 
- Public Types inherited from STK::DenseIteratorBase< ConstBiDirectionalIterator< Array > >
typedef hidden::IteratorTraits< ConstBiDirectionalIterator< Array > >::Index Index
 
typedef hidden::IteratorTraits< ConstBiDirectionalIterator< Array > >::iterator_category iterator_category
 
typedef hidden::IteratorTraits< ConstBiDirectionalIterator< Array > >::value_type value_type
 
typedef hidden::IteratorTraits< ConstBiDirectionalIterator< Array > >::reference reference
 
typedef hidden::IteratorTraits< ConstBiDirectionalIterator< Array > >::pointer pointer
 
typedef hidden::IteratorTraits< ConstBiDirectionalIterator< Array > >::difference_type difference_type
 

Public Member Functions

 ConstBiDirectionalIterator (Array const &list1D, int pos)
 
 ConstBiDirectionalIterator (ConstBiDirectionalIterator const &it)
 
 ~ConstBiDirectionalIterator ()
 
ConstBiDirectionalIteratoroperator= (ConstBiDirectionalIterator const &it)
 
reference operator* ()
 
pointer operator-> ()
 
- Public Member Functions inherited from STK::DenseIteratorBase< ConstBiDirectionalIterator< Array > >
Index pos () const
 
ConstBiDirectionalIterator< Array > & operator++ ()
 next position
 
ConstBiDirectionalIterator< Array > & operator++ (int junk)
 next position
 
ConstBiDirectionalIterator< Array > & operator-- ()
 previous position
 
ConstBiDirectionalIterator< Array > & operator-- (int)
 previous position
 
ConstBiDirectionalIterator< Array > & operator+= (Index n)
 add n positions to current position
 
ConstBiDirectionalIterator< Array > & operator-= (Index n)
 Subtract n positions to current position.
 
- Public Member Functions inherited from STK::IRecursiveTemplate< Derived >
Derived & asDerived ()
 static cast : return a reference of this with a cast to the derived class.
 
Derived constasDerived () const
 static cast : return a const reference of this with a cast to the derived class.
 
Derived * asPtrDerived ()
 static cast : return a ptr on a Derived of this with a cast to the derived class.
 
Derived constasPtrDerived () const
 static cast : return a ptr on a constant Derived of this with a cast to the derived class.
 
Derived * clone () const
 create a leaf using the copy constructor of the Derived class.
 
Derived * clone (bool isRef) const
 create a leaf using the copy constructor of the Derived class and a flag determining if the clone is a reference or not.
 

Public Attributes

Index pos_
 Current position.
 

Private Attributes

Array constlist1D_
 

Friends

void swap (ConstBiDirectionalIterator &lhs, ConstBiDirectionalIterator &rhs)
 

Additional Inherited Members

- Protected Member Functions inherited from STK::DenseIteratorBase< ConstBiDirectionalIterator< Array > >
 DenseIteratorBase ()
 default constructor
 
 DenseIteratorBase (Index pos)
 constructor with specified position
 
 DenseIteratorBase (DenseIteratorBase const &it)
 copy constructor.
 
 ~DenseIteratorBase ()
 destructor
 
- Protected Member Functions inherited from STK::IRecursiveTemplate< Derived >
 IRecursiveTemplate ()
 constructor.
 
 ~IRecursiveTemplate ()
 destructor.
 
- Protected Attributes inherited from STK::DenseIteratorBase< ConstBiDirectionalIterator< Array > >
Index pos_
 Current position.
 

Detailed Description

template<class Array>
struct STK::ConstBiDirectionalIterator< Array >

ConstBiDirectionalIterator allows to loop over the element of one dimensional list containers.

See also
STK::List1D

Definition at line 193 of file STK_BiDirectionalIterator.h.

Member Typedef Documentation

◆ Base

◆ ColRange

Definition at line 214 of file STK_BiDirectionalIterator.h.

◆ difference_type

template<class Array >
typedef hidden::IteratorTraits<ConstBiDirectionalIterator>::difference_type STK::ConstBiDirectionalIterator< Array >::difference_type

Definition at line 220 of file STK_BiDirectionalIterator.h.

◆ Index

◆ iterator_category

template<class Array >
typedef hidden::IteratorTraits<ConstBiDirectionalIterator>::iterator_category STK::ConstBiDirectionalIterator< Array >::iterator_category

Definition at line 216 of file STK_BiDirectionalIterator.h.

◆ pointer

Definition at line 219 of file STK_BiDirectionalIterator.h.

◆ reference

Definition at line 218 of file STK_BiDirectionalIterator.h.

◆ RowRange

Definition at line 213 of file STK_BiDirectionalIterator.h.

◆ Type

◆ TypeConst

Definition at line 211 of file STK_BiDirectionalIterator.h.

◆ value_type

Definition at line 217 of file STK_BiDirectionalIterator.h.

Member Enumeration Documentation

◆ anonymous enum

template<class Array >
anonymous enum
Enumerator
structure_ 
orient_ 
sizeCols_ 
sizeRows_ 
size_ 
storage_ 

Definition at line 200 of file STK_BiDirectionalIterator.h.

201 {
202 structure_ = hidden::IteratorTraits< ConstBiDirectionalIterator >::structure_,
203 orient_ = hidden::IteratorTraits< ConstBiDirectionalIterator >::orient_,
204 sizeCols_ = hidden::IteratorTraits< ConstBiDirectionalIterator >::sizeCols_,
205 sizeRows_ = hidden::IteratorTraits< ConstBiDirectionalIterator >::sizeRows_,
206 size_ = hidden::IteratorTraits< ConstBiDirectionalIterator >::size_,
207 storage_ = hidden::IteratorTraits< ConstBiDirectionalIterator >::storage_
208 };

Constructor & Destructor Documentation

◆ ConstBiDirectionalIterator() [1/2]

template<class Array >
STK::ConstBiDirectionalIterator< Array >::ConstBiDirectionalIterator ( Array const list1D,
int  pos 
)
inline

Definition at line 226 of file STK_BiDirectionalIterator.h.

227 : Base(pos)
228 , RowRange()
229 , list1D_(list1D)
230 {}
DenseIteratorBase< ConstBiDirectionalIterator > Base
hidden::IteratorTraits< ConstBiDirectionalIterator >::RowRange RowRange

◆ ConstBiDirectionalIterator() [2/2]

template<class Array >
STK::ConstBiDirectionalIterator< Array >::ConstBiDirectionalIterator ( ConstBiDirectionalIterator< Array > const it)
inline

Definition at line 231 of file STK_BiDirectionalIterator.h.

232 : Base(it), RowRange(it), list1D_(it.list1D_)
233 {}

◆ ~ConstBiDirectionalIterator()

template<class Array >
STK::ConstBiDirectionalIterator< Array >::~ConstBiDirectionalIterator ( )
inline

Definition at line 234 of file STK_BiDirectionalIterator.h.

234{}

Member Function Documentation

◆ operator*()

◆ operator->()

template<class Array >
pointer STK::ConstBiDirectionalIterator< Array >::operator-> ( )
inline

◆ operator=()

template<class Array >
ConstBiDirectionalIterator & STK::ConstBiDirectionalIterator< Array >::operator= ( ConstBiDirectionalIterator< Array > const it)
inline

Definition at line 235 of file STK_BiDirectionalIterator.h.

236 {
237 Base::operator=(it);
238 RowRange::operator=(it);
239 list1D_ = it.list1D_;
240 return *this;
241 }

References STK::ConstBiDirectionalIterator< Array >::list1D_.

Friends And Related Symbol Documentation

◆ swap

template<class Array >
void swap ( ConstBiDirectionalIterator< Array > &  lhs,
ConstBiDirectionalIterator< Array > &  rhs 
)
friend

Definition at line 246 of file STK_BiDirectionalIterator.h.

247 {
248 Base::swap(lhs, rhs);
249 std::swap(lhs.list1D_, rhs.list1D_);
250 }
friend void swap(DenseIteratorBase &lhs, DenseIteratorBase &rhs)
swap two iterators (only position is swaped)

Member Data Documentation

◆ list1D_

◆ pos_


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