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

ConstDenseRandomIterator allows to loop over the elements of containers Array. More...

#include <STK_DenseRandomIterator.h>

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

Public Types

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

Public Member Functions

 ConstDenseRandomIterator ()
 Default constructor.
 
 ConstDenseRandomIterator (Array const &array, int pos)
 Constructor with array and position given.
 
 ConstDenseRandomIterator (ConstDenseRandomIterator const &it)
 
 ~ConstDenseRandomIterator ()
 
ConstDenseRandomIteratoroperator= (ConstDenseRandomIterator const &it)
 
reference operator* () const
 
pointer operator-> () const
 
reference operator[] (int pos) const
 
bool operator== (ConstDenseRandomIterator const &rhs)
 comparing two iterators (only position is compared !)
 
bool operator!= (ConstDenseRandomIterator const &rhs)
 comparing two iterators (only position is compared !)
 
- Public Member Functions inherited from STK::DenseIteratorBase< ConstDenseRandomIterator< Array > >
Index pos () const
 
ConstDenseRandomIterator< Array > & operator++ ()
 next position
 
ConstDenseRandomIterator< Array > & operator++ (int junk)
 next position
 
ConstDenseRandomIterator< Array > & operator-- ()
 previous position
 
ConstDenseRandomIterator< Array > & operator-- (int)
 previous position
 
ConstDenseRandomIterator< Array > & operator+= (Index n)
 add n positions to current position
 
ConstDenseRandomIterator< 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.
 

Private Attributes

Array constp_array_
 

Friends

void swap (ConstDenseRandomIterator &lhs, ConstDenseRandomIterator &rhs)
 

Additional Inherited Members

- Protected Member Functions inherited from STK::DenseIteratorBase< ConstDenseRandomIterator< 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< ConstDenseRandomIterator< Array > >
Index pos_
 Current position.
 

Detailed Description

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

ConstDenseRandomIterator allows to loop over the elements of containers Array.

Definition at line 203 of file STK_DenseRandomIterator.h.

Member Typedef Documentation

◆ Base

Definition at line 206 of file STK_DenseRandomIterator.h.

◆ ColRange

Definition at line 224 of file STK_DenseRandomIterator.h.

◆ difference_type

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

Definition at line 230 of file STK_DenseRandomIterator.h.

◆ Index

Definition at line 208 of file STK_DenseRandomIterator.h.

◆ iterator_category

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

Definition at line 226 of file STK_DenseRandomIterator.h.

◆ pointer

Definition at line 229 of file STK_DenseRandomIterator.h.

◆ reference

Definition at line 228 of file STK_DenseRandomIterator.h.

◆ RowRange

Definition at line 223 of file STK_DenseRandomIterator.h.

◆ Type

◆ TypeConst

Definition at line 221 of file STK_DenseRandomIterator.h.

◆ value_type

Definition at line 227 of file STK_DenseRandomIterator.h.

Member Enumeration Documentation

◆ anonymous enum

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

Definition at line 210 of file STK_DenseRandomIterator.h.

211 {
212 structure_ = hidden::IteratorTraits< ConstDenseRandomIterator >::structure_,
213 orient_ = hidden::IteratorTraits< ConstDenseRandomIterator >::orient_,
214 sizeCols_ = hidden::IteratorTraits< ConstDenseRandomIterator >::sizeCols_,
215 sizeRows_ = hidden::IteratorTraits< ConstDenseRandomIterator >::sizeRows_,
216 size_ = hidden::IteratorTraits< ConstDenseRandomIterator >::size_,
217 storage_ = hidden::IteratorTraits< ConstDenseRandomIterator >::storage_
218 };

Constructor & Destructor Documentation

◆ ConstDenseRandomIterator() [1/3]

template<class Array >
STK::ConstDenseRandomIterator< Array >::ConstDenseRandomIterator ( )
inline

Default constructor.

Definition at line 235 of file STK_DenseRandomIterator.h.

235: Base(), RowRange(), p_array_(0) {}
hidden::IteratorTraits< ConstDenseRandomIterator >::RowRange RowRange
DenseIteratorBase< ConstDenseRandomIterator< Array > > Base

◆ ConstDenseRandomIterator() [2/3]

template<class Array >
STK::ConstDenseRandomIterator< Array >::ConstDenseRandomIterator ( Array const array,
int  pos 
)
inline

Constructor with array and position given.

Definition at line 237 of file STK_DenseRandomIterator.h.

238 : Base(pos)
239 , RowRange(array.range())
240 , p_array_(&array)
241 {}

◆ ConstDenseRandomIterator() [3/3]

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

Definition at line 242 of file STK_DenseRandomIterator.h.

243 : Base(it)
244 , RowRange(it)
245 , p_array_(it.p_array_)
246 {}

◆ ~ConstDenseRandomIterator()

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

Definition at line 247 of file STK_DenseRandomIterator.h.

247{}

Member Function Documentation

◆ operator!=()

template<class Array >
bool STK::ConstDenseRandomIterator< Array >::operator!= ( ConstDenseRandomIterator< Array > const rhs)
inline

comparing two iterators (only position is compared !)

Definition at line 264 of file STK_DenseRandomIterator.h.

264{ return(pos_!=rhs.pos_); }

References STK::DenseIteratorBase< Derived >::pos_, and STK::DenseIteratorBase< ConstDenseRandomIterator< Array > >::pos_.

◆ operator*()

◆ operator->()

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

◆ operator=()

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

Definition at line 248 of file STK_DenseRandomIterator.h.

249 {
250 Base::operator=(it);
251 RowRange::operator=(it);
252 p_array_ = it.p_array_;
253 return *this;
254 }

References STK::ConstDenseRandomIterator< Array >::p_array_.

◆ operator==()

template<class Array >
bool STK::ConstDenseRandomIterator< Array >::operator== ( ConstDenseRandomIterator< Array > const rhs)
inline

comparing two iterators (only position is compared !)

Definition at line 262 of file STK_DenseRandomIterator.h.

262{ return(pos_==rhs.pos_); }

References STK::DenseIteratorBase< Derived >::pos_, and STK::DenseIteratorBase< ConstDenseRandomIterator< Array > >::pos_.

◆ operator[]()

template<class Array >
reference STK::ConstDenseRandomIterator< Array >::operator[] ( int  pos) const
inline

Friends And Related Symbol Documentation

◆ swap

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

Definition at line 267 of file STK_DenseRandomIterator.h.

268 {
269 std::swap(lhs.p_array_, rhs.p_array_);
270 Base::swap(lhs, rhs);
271 }
friend void swap(DenseIteratorBase &lhs, DenseIteratorBase &rhs)
swap two iterators (only position is swaped)

Member Data Documentation

◆ p_array_


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