BALL  1.4.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Protected Member Functions | List of all members
BALL::ForwardIterator< Container, DataType, Position, Traits > Class Template Reference

#include <BALL/CONCEPT/forwardIterator.h>

Inheritance diagram for BALL::ForwardIterator< Container, DataType, Position, Traits >:
BALL::ConstForwardIterator< Container, DataType, Position, Traits > BALL::ConstForwardIterator< Container, DataType, Position, Traits > BALL::BaseIterator< Container, DataType, Position, Traits > BALL::BaseIterator< Container, DataType, Position, Traits > BALL::BaseIterator< Container, DataType, Position, Traits > BALL::BaseIterator< Container, DataType, Position, Traits >

Public Types

Typedefs
typedef DataType & reference
 
typedef DataType * pointer
 
typedef ConstForwardIterator
< Container, DataType,
Position, Traits > 
Base
 
typedef DataType & reference
 
typedef DataType * pointer
 
typedef ConstForwardIterator
< Container, DataType,
Position, Traits > 
Base
 
- Public Types inherited from BALL::ConstForwardIterator< Container, DataType, Position, Traits >
typedef std::forward_iterator_tag iterator_category
 
typedef BaseIterator
< Container, DataType,
Position, Traits > 
Base
 
typedef std::forward_iterator_tag iterator_category
 
typedef BaseIterator
< Container, DataType,
Position, Traits > 
Base
 
- Public Types inherited from BALL::BaseIterator< Container, DataType, Position, Traits >
typedef DataType value_type
 
typedef Position difference_type
 
typedef const DataType * pointer
 
typedef const DataType & reference
 
typedef std::input_iterator_tag iterator_category
 
typedef DataType value_type
 
typedef Position difference_type
 
typedef const DataType * pointer
 
typedef const DataType & reference
 
typedef Container container_type
 
typedef Traits traits_type
 
typedef std::input_iterator_tag iterator_category
 

Public Member Functions

Constructors and Destructors
BALL_INLINE ForwardIterator ()
 
BALL_INLINE ForwardIterator (const ForwardIterator &iterator)
 
BALL_INLINE ~ForwardIterator ()
 
 ForwardIterator ()
 
 ForwardIterator (const ForwardIterator &iterator)
 
 ~ForwardIterator ()
 
Assignemnt
BALL_INLINE ForwardIteratoroperator= (const ForwardIterator &iterator)
 
BALL_INLINE void swap (ForwardIterator &iterator)
 
ForwardIteratoroperator= (const ForwardIterator &iterator)
 
void swap (ForwardIterator &iterator)
 
- Public Member Functions inherited from BALL::ConstForwardIterator< Container, DataType, Position, Traits >
BALL_INLINE ConstForwardIterator ()
 Default constructor. More...
 
BALL_INLINE ConstForwardIterator (const ConstForwardIterator &iterator)
 Copy constructor. More...
 
BALL_INLINE ~ConstForwardIterator ()
 
 ConstForwardIterator ()
 Default constructor. More...
 
 ConstForwardIterator (const ConstForwardIterator &iterator)
 Copy constructor. More...
 
 ~ConstForwardIterator ()
 
BALL_INLINE ConstForwardIteratoroperator= (const ConstForwardIterator &iterator)
 
BALL_INLINE void swap (ConstForwardIterator &iterator)
 
ConstForwardIteratoroperator= (const ConstForwardIterator &iterator)
 
void swap (ConstForwardIterator &iterator)
 
BALL_INLINE void toBegin ()
 
BALL_INLINE bool isBegin () const
 Check whether the iterator points to the first item of the container. More...
 
BALL_INLINE void toEnd ()
 
BALL_INLINE bool isEnd () const
 Check whether the iterator points behind the last item of the container. More...
 
BALL_INLINE ConstForwardIteratoroperator++ ()
 
BALL_INLINE ConstForwardIterator operator++ (int)
 
void toBegin ()
 
bool isBegin () const
 Check whether the iterator points to the first item of the container. More...
 
void toEnd ()
 
bool isEnd () const
 Check whether the iterator points behind the last item of the container. More...
 
ConstForwardIteratoroperator++ ()
 
ConstForwardIterator operator++ (int)
 
- Public Member Functions inherited from BALL::BaseIterator< Container, DataType, Position, Traits >
BALL_INLINE BaseIterator ()
 Default constructor. More...
 
BALL_INLINE BaseIterator (const BaseIterator &iterator)
 Copy constructor. More...
 
BALL_INLINE ~BaseIterator ()
 Destructor. More...
 
 BaseIterator ()
 Default constructor. More...
 
 BaseIterator (const BaseIterator &iterator)
 Copy constructor. More...
 
 ~BaseIterator ()
 Destructor. More...
 
BALL_INLINE BaseIteratoroperator= (const BaseIterator &iterator)
 
BALL_INLINE void swap (BaseIterator &iterator)
 Swap two iterators. More...
 
BaseIteratoroperator= (const BaseIterator &iterator)
 
void swap (BaseIterator &iterator)
 Swap two iterators. More...
 
BALL_INLINE void invalidate ()
 Invalidate the iterator. More...
 
BALL_INLINE void setTraits (const Traits &traits)
 Set the traits. More...
 
BALL_INLINE const Traits & getTraits () const
 Get a constant reference to the traits of this iterator. More...
 
BALL_INLINE Traits & getTraits ()
 Get a constant reference to the traits of this iterator. More...
 
BALL_INLINE const Container * getContainer () const
 Get a constant pointer to the container of this iterator. More...
 
void invalidate ()
 Invalidate the iterator. More...
 
void setTraits (const Traits &traits)
 Set the traits. More...
 
const Traits & getTraits () const
 Get a constant reference to the traits of this iterator. More...
 
Traits & getTraits ()
 Get a constant reference to the traits of this iterator. More...
 
const Container * getContainer () const
 Get a constant pointer to the container of this iterator. More...
 
BALL_INLINE operator const Position & () const
 
BALL_INLINE reference operator* () const
 Convert an iterator to its Datatype by returning a reference to the current data. More...
 
BALL_INLINE pointer operator-> () const
 Return a pointer to the current data. More...
 
 operator const Position & () const
 
reference operator* () const
 Convert an iterator to its Datatype by returning a reference to the current data. More...
 
pointer operator-> () const
 Return a pointer to the current data. More...
 
BALL_INLINE bool operator== (const BaseIterator &iterator) const
 Equality operator. More...
 
BALL_INLINE bool operator!= (const BaseIterator &iterator) const
 Inequality operator. More...
 
BALL_INLINE bool isSingular () const
 
BALL_INLINE bool isValid () const
 
BALL_INLINE bool operator+ () const
 Validity predicate. More...
 
BALL_INLINE bool operator- () const
 Invalidity perdicate. More...
 
bool operator== (const BaseIterator &iterator) const
 Equality operator. More...
 
bool operator!= (const BaseIterator &iterator) const
 Inequality operator. More...
 
bool isSingular () const
 
bool isValid () const
 
bool operator+ () const
 Validity predicate. More...
 
bool operator- () const
 Invalidity predicate. More...
 

Protected Member Functions

BALL_INLINE ForwardIterator (const Container &container)
 
 ForwardIterator (const Container &container)
 
- Protected Member Functions inherited from BALL::ConstForwardIterator< Container, DataType, Position, Traits >
BALL_INLINE ConstForwardIterator (const Container &container)
 
 ConstForwardIterator (const Container &container)
 
- Protected Member Functions inherited from BALL::BaseIterator< Container, DataType, Position, Traits >
BALL_INLINE BaseIterator (const Container &container)
 
 BaseIterator (const Container &container)
 

Iterator methods

BALL_INLINE reference operator* () const
 
BALL_INLINE pointer operator-> () const
 
BALL_INLINE ForwardIteratoroperator++ ()
 
BALL_INLINE ForwardIterator operator++ (int)
 
reference operator* () const
 
pointer operator-> () const
 
ForwardIteratoroperator++ ()
 
ForwardIterator operator++ (int)
 
static ForwardIterator begin (const Container &container)
 
static ForwardIterator end (const Container &container)
 
static ForwardIterator begin (const Container &container)
 
static ForwardIterator end (const Container &container)
 

Additional Inherited Members

- Static Public Member Functions inherited from BALL::ConstForwardIterator< Container, DataType, Position, Traits >
static ConstForwardIterator begin (const Container &container)
 
static ConstForwardIterator end (const Container &container)
 
static ConstForwardIterator begin (const Container &container)
 
static ConstForwardIterator end (const Container &container)
 

Detailed Description

template<typename Container, typename DataType, typename Position, typename Traits>
class BALL::ForwardIterator< Container, DataType, Position, Traits >

Generic mutable forward iterator class

Definition at line 197 of file CONCEPT/forwardIterator.h.

Member Typedef Documentation

template<typename Container , typename DataType , typename Position , typename Traits >
typedef ConstForwardIterator<Container, DataType, Position, Traits> BALL::ForwardIterator< Container, DataType, Position, Traits >::Base

Definition at line 211 of file CONCEPT/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
typedef ConstForwardIterator<Container, DataType, Position, Traits> BALL::ForwardIterator< Container, DataType, Position, Traits >::Base

Definition at line 216 of file MATHS/LINALG/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
typedef DataType* BALL::ForwardIterator< Container, DataType, Position, Traits >::pointer

Definition at line 209 of file CONCEPT/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
typedef DataType* BALL::ForwardIterator< Container, DataType, Position, Traits >::pointer

Definition at line 214 of file MATHS/LINALG/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
typedef DataType& BALL::ForwardIterator< Container, DataType, Position, Traits >::reference

Definition at line 207 of file CONCEPT/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
typedef DataType& BALL::ForwardIterator< Container, DataType, Position, Traits >::reference

Definition at line 212 of file MATHS/LINALG/forwardIterator.h.

Constructor & Destructor Documentation

template<typename Container , typename DataType , typename Position , typename Traits >
BALL_INLINE BALL::ForwardIterator< Container, DataType, Position, Traits >::ForwardIterator ( )
inline

Definition at line 219 of file CONCEPT/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
BALL_INLINE BALL::ForwardIterator< Container, DataType, Position, Traits >::ForwardIterator ( const ForwardIterator< Container, DataType, Position, Traits > &  iterator)
inline

Definition at line 222 of file CONCEPT/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
BALL_INLINE BALL::ForwardIterator< Container, DataType, Position, Traits >::~ForwardIterator ( )
inline

Definition at line 228 of file CONCEPT/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
BALL_INLINE BALL::ForwardIterator< Container, DataType, Position, Traits >::ForwardIterator ( const Container &  container)
inlineprotected

Definition at line 297 of file CONCEPT/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
BALL::ForwardIterator< Container, DataType, Position, Traits >::ForwardIterator ( )
inline

Definition at line 224 of file MATHS/LINALG/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
BALL::ForwardIterator< Container, DataType, Position, Traits >::ForwardIterator ( const ForwardIterator< Container, DataType, Position, Traits > &  iterator)
inline

Definition at line 227 of file MATHS/LINALG/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
BALL::ForwardIterator< Container, DataType, Position, Traits >::~ForwardIterator ( )
inline

Definition at line 233 of file MATHS/LINALG/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
BALL::ForwardIterator< Container, DataType, Position, Traits >::ForwardIterator ( const Container &  container)
inlineprotected

Definition at line 310 of file MATHS/LINALG/forwardIterator.h.

Member Function Documentation

template<typename Container , typename DataType , typename Position , typename Traits >
ForwardIterator< Container, DataType, Position, Traits > BALL::ForwardIterator< Container, DataType, Position, Traits >::begin ( const Container &  container)
static

Return an iterator pointing to the beginning of the container

Exceptions
Exception::Precondition

Definition at line 307 of file CONCEPT/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
static ForwardIterator BALL::ForwardIterator< Container, DataType, Position, Traits >::begin ( const Container &  container)
static

Return an iterator pointing to the beginning of the container

Exceptions
Exception::Precondition
template<typename Container , typename DataType , typename Position , typename Traits >
ForwardIterator< Container, DataType, Position, Traits > BALL::ForwardIterator< Container, DataType, Position, Traits >::end ( const Container &  container)
static

Return an iterator pointing at the end of the container

Exceptions
Exception::Precondition

Definition at line 317 of file CONCEPT/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
static ForwardIterator BALL::ForwardIterator< Container, DataType, Position, Traits >::end ( const Container &  container)
static

Return an iterator pointing at the end of the container

Exceptions
Exception::Precondition
template<typename Container , typename DataType , typename Position , typename Traits >
BALL_INLINE reference BALL::ForwardIterator< Container, DataType, Position, Traits >::operator* ( ) const
inline

Definition at line 260 of file CONCEPT/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
reference BALL::ForwardIterator< Container, DataType, Position, Traits >::operator* ( ) const
inline

Definition at line 265 of file MATHS/LINALG/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
BALL_INLINE ForwardIterator& BALL::ForwardIterator< Container, DataType, Position, Traits >::operator++ ( )
inline

Increment operator

Exceptions
Exception::Precondition

Definition at line 274 of file CONCEPT/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
ForwardIterator& BALL::ForwardIterator< Container, DataType, Position, Traits >::operator++ ( )
inline

Increment operator

Exceptions
Exception::InvalidIteratorif the iterator is invalid

Definition at line 279 of file MATHS/LINALG/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
BALL_INLINE ForwardIterator BALL::ForwardIterator< Container, DataType, Position, Traits >::operator++ ( int  )
inline

Postfix increment operator

Exceptions
Exception::Precondition

Definition at line 284 of file CONCEPT/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
ForwardIterator BALL::ForwardIterator< Container, DataType, Position, Traits >::operator++ ( int  )
inline

Postfix increment operator

Exceptions
Exception::InvalidIteratorif the iterator is invalid

Definition at line 293 of file MATHS/LINALG/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
BALL_INLINE pointer BALL::ForwardIterator< Container, DataType, Position, Traits >::operator-> ( ) const
inline

Definition at line 266 of file CONCEPT/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
pointer BALL::ForwardIterator< Container, DataType, Position, Traits >::operator-> ( ) const
inline

Definition at line 271 of file MATHS/LINALG/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
BALL_INLINE ForwardIterator& BALL::ForwardIterator< Container, DataType, Position, Traits >::operator= ( const ForwardIterator< Container, DataType, Position, Traits > &  iterator)
inline

Definition at line 235 of file CONCEPT/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
ForwardIterator& BALL::ForwardIterator< Container, DataType, Position, Traits >::operator= ( const ForwardIterator< Container, DataType, Position, Traits > &  iterator)
inline

Definition at line 240 of file MATHS/LINALG/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
BALL_INLINE void BALL::ForwardIterator< Container, DataType, Position, Traits >::swap ( ForwardIterator< Container, DataType, Position, Traits > &  iterator)
inline

Definition at line 242 of file CONCEPT/forwardIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
void BALL::ForwardIterator< Container, DataType, Position, Traits >::swap ( ForwardIterator< Container, DataType, Position, Traits > &  iterator)
inline

Definition at line 247 of file MATHS/LINALG/forwardIterator.h.