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

#include <BALL/MATHS/LINALG/reverseIterator.h>

Inheritance diagram for BALL::ReverseIterator< Container, DataType, Position, Traits >:
BALL::ConstReverseIterator< Container, DataType, Position, Traits > BALL::ConstRandomAccessIterator< Container, DataType, Position, Traits > BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits > BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits > BALL::ConstForwardIterator< Container, DataType, Position, Traits > BALL::ConstForwardIterator< 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 > 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 ConstReverseIterator
< Container, DataType,
Position, Traits > 
Base
- Public Types inherited from BALL::ConstReverseIterator< Container, DataType, Position, Traits >
typedef
std::random_access_iterator_tag 
iterator_category
typedef
ConstRandomAccessIterator
< Container, DataType,
Position, Traits > 
Base
- Public Types inherited from BALL::ConstRandomAccessIterator< Container, DataType, Position, Traits >
typedef
std::random_access_iterator_tag 
iterator_category
typedef
ConstBidirectionalIterator
< Container, DataType,
Position, Traits > 
Base
typedef
std::random_access_iterator_tag 
iterator_category
typedef
ConstBidirectionalIterator
< Container, DataType,
Position, Traits > 
Base
- Public Types inherited from BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits >
typedef
std::bidirectional_iterator_tag 
iterator_category
typedef ConstForwardIterator
< Container, DataType,
Position, Traits > 
Base
typedef
std::bidirectional_iterator_tag 
iterator_category
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
 ReverseIterator ()
 ReverseIterator (const ReverseIterator &iterator)
 ~ReverseIterator ()
Dereferenciation
reference operator[] (Index index) const
reference operator* () const
 Convert an iterator to its Datatype by returning a reference to the current data.
pointer operator-> () const
 Return a pointer to the current data.
- Public Member Functions inherited from BALL::ConstReverseIterator< Container, DataType, Position, Traits >
 ConstReverseIterator ()
 ConstReverseIterator (const ConstReverseIterator &iterator)
 ~ConstReverseIterator ()
bool operator+ () const
 Validity predicate.
bool operator- () const
 Invalidity perdicate.
bool operator< (const ConstReverseIterator &iterator) const
bool operator<= (const ConstReverseIterator &iterator) const
bool operator>= (const ConstReverseIterator &iterator) const
bool operator> (const ConstReverseIterator &iterator) const
ConstReverseIteratoroperator+= (Distance distance)
ConstReverseIteratoroperator-= (Distance distance)
ConstReverseIterator operator+ (Distance distance) const
ConstReverseIterator operator- (Distance distance) const
Distance operator- (const ConstReverseIterator &iterator) const
ConstReverseIteratoroperator++ ()
ConstReverseIterator operator++ (int)
ConstReverseIteratoroperator-- ()
ConstReverseIterator operator-- (int)
- Public Member Functions inherited from BALL::ConstRandomAccessIterator< Container, DataType, Position, Traits >
BALL_INLINE ConstRandomAccessIterator ()
BALL_INLINE ConstRandomAccessIterator (const ConstRandomAccessIterator &iterator)
BALL_INLINE ~ConstRandomAccessIterator ()
 ConstRandomAccessIterator ()
 ConstRandomAccessIterator (const ConstRandomAccessIterator &iterator)
 ~ConstRandomAccessIterator ()
bool operator< (const ConstRandomAccessIterator &iterator) const
bool operator<= (const ConstRandomAccessIterator &iterator) const
bool operator>= (const ConstRandomAccessIterator &iterator) const
bool operator> (const ConstRandomAccessIterator &iterator) const
bool operator< (const ConstRandomAccessIterator &iterator) const
bool operator<= (const ConstRandomAccessIterator &iterator) const
bool operator>= (const ConstRandomAccessIterator &iterator) const
bool operator> (const ConstRandomAccessIterator &iterator) const
Distance operator- (const ConstRandomAccessIterator &iterator) const
Distance operator- (const ConstRandomAccessIterator &iterator) const
- Public Member Functions inherited from BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits >
BALL_INLINE ConstBidirectionalIterator ()
BALL_INLINE ConstBidirectionalIterator (const ConstBidirectionalIterator &iterator)
BALL_INLINE ~ConstBidirectionalIterator ()
 ConstBidirectionalIterator ()
 ConstBidirectionalIterator (const ConstBidirectionalIterator &iterator)
 ~ConstBidirectionalIterator ()
BALL_INLINE void toBegin ()
BALL_INLINE bool isBegin () const
 Check whether the iterator points to the item at the beginning of the container.
void toEnd ()
BALL_INLINE bool isEnd () const
 Check whether the iterator points to the position after the last item of the container.
void toRBegin ()
BALL_INLINE bool isRBegin () const
 Test whether the iterator points to the "reverse" first element of the container.
void toREnd ()
BALL_INLINE bool isREnd () const
 Test wheter the iterator points to the position before the first element.
void toBegin ()
bool isBegin () const
 Check whether the iterator points to the item at the beginning of the container.
void toEnd ()
bool isEnd () const
 Check whether the iterator points to the position after the last item of the container.
void toRBegin ()
bool isRBegin () const
 Test whether the iterator points to the "reverse" first element of the container.
void toREnd ()
bool isREnd () const
 Test wheter the iterator points to the position before the first element.
- Public Member Functions inherited from BALL::ConstForwardIterator< Container, DataType, Position, Traits >
BALL_INLINE ConstForwardIterator ()
 Default constructor.
BALL_INLINE ConstForwardIterator (const ConstForwardIterator &iterator)
 Copy constructor.
BALL_INLINE ~ConstForwardIterator ()
 ConstForwardIterator ()
 Default constructor.
 ConstForwardIterator (const ConstForwardIterator &iterator)
 Copy constructor.
 ~ConstForwardIterator ()
BALL_INLINE ConstForwardIteratoroperator= (const ConstForwardIterator &iterator)
BALL_INLINE void swap (ConstForwardIterator &iterator)
ConstForwardIteratoroperator= (const ConstForwardIterator &iterator)
void swap (ConstForwardIterator &iterator)
- Public Member Functions inherited from BALL::BaseIterator< Container, DataType, Position, Traits >
BALL_INLINE BaseIterator ()
 Default constructor.
BALL_INLINE BaseIterator (const BaseIterator &iterator)
 Copy constructor.
BALL_INLINE ~BaseIterator ()
 Destructor.
 BaseIterator ()
 Default constructor.
 BaseIterator (const BaseIterator &iterator)
 Copy constructor.
 ~BaseIterator ()
 Destructor.
BALL_INLINE BaseIteratoroperator= (const BaseIterator &iterator)
BALL_INLINE void swap (BaseIterator &iterator)
 Swap two iterators.
BaseIteratoroperator= (const BaseIterator &iterator)
void swap (BaseIterator &iterator)
 Swap two iterators.
BALL_INLINE void invalidate ()
 Invalidate the iterator.
BALL_INLINE void setTraits (const Traits &traits)
 Set the traits.
BALL_INLINE const Traits & getTraits () const
 Get a constant reference to the traits of this iterator.
BALL_INLINE Traits & getTraits ()
 Get a constant reference to the traits of this iterator.
BALL_INLINE const Container * getContainer () const
 Get a constant pointer to the container of this iterator.
void invalidate ()
 Invalidate the iterator.
void setTraits (const Traits &traits)
 Set the traits.
const Traits & getTraits () const
 Get a constant reference to the traits of this iterator.
Traits & getTraits ()
 Get a constant reference to the traits of this iterator.
const Container * getContainer () const
 Get a constant pointer to the container of this iterator.
BALL_INLINE operator const Position & () const
 operator const Position & () const
BALL_INLINE bool operator== (const BaseIterator &iterator) const
 Equality operator.
BALL_INLINE bool operator!= (const BaseIterator &iterator) const
 Inequality operator.
BALL_INLINE bool isSingular () const
BALL_INLINE bool isValid () const
bool operator== (const BaseIterator &iterator) const
 Equality operator.
bool operator!= (const BaseIterator &iterator) const
 Inequality operator.
bool isSingular () const
bool isValid () const

Static Public Member Functions

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

Protected Member Functions

 ReverseIterator (const Container &container)
- Protected Member Functions inherited from BALL::ConstReverseIterator< Container, DataType, Position, Traits >
 ConstReverseIterator (const Container &container)
- Protected Member Functions inherited from BALL::ConstRandomAccessIterator< Container, DataType, Position, Traits >
 ConstRandomAccessIterator (const Container &container)
 ConstRandomAccessIterator (const Container &container)
- Protected Member Functions inherited from BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits >
BALL_INLINE ConstBidirectionalIterator (const Container &container)
 Construct an iterator bound to a specific container.
 ConstBidirectionalIterator (const Container &container)
 Construct an iterator bound to a specific 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)

Detailed Description

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

Random Access Iterator Class

Definition at line 505 of file reverseIterator.h.

Member Typedef Documentation

template<typename Container , typename DataType , typename Position , typename Traits >
typedef ConstReverseIterator<Container, DataType, Position, Traits> BALL::ReverseIterator< Container, DataType, Position, Traits >::Base

Definition at line 518 of file reverseIterator.h.

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

Definition at line 516 of file reverseIterator.h.

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

Definition at line 514 of file reverseIterator.h.

Constructor & Destructor Documentation

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

Definition at line 526 of file reverseIterator.h.

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

Definition at line 529 of file reverseIterator.h.

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

Definition at line 535 of file reverseIterator.h.

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

Definition at line 581 of file reverseIterator.h.

Member Function Documentation

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

Return a ReverseIterator for a given container. It points at the first element.

Exceptions
Exception::InvalidIteratorif the iterator is invalid

Reimplemented from BALL::ConstReverseIterator< Container, DataType, Position, Traits >.

Definition at line 591 of file reverseIterator.h.

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

Return a ReverseIterator for a given container. It points behind the last element of the container.

Exceptions
Exception::InvalidIteratorif the iterator is invalid

Reimplemented from BALL::ConstReverseIterator< Container, DataType, Position, Traits >.

Definition at line 600 of file reverseIterator.h.

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

Convert an iterator to its Datatype by returning a reference to the current data.

Reimplemented from BALL::BaseIterator< Container, DataType, Position, Traits >.

Definition at line 546 of file reverseIterator.h.

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

Return a pointer to the current data.

Reimplemented from BALL::BaseIterator< Container, DataType, Position, Traits >.

Definition at line 548 of file reverseIterator.h.

template<typename Container , typename DataType , typename Position , typename Traits >
reference BALL::ReverseIterator< Container, DataType, Position, Traits >::operator[] ( Index  index) const
inline

Random access operator.

Exceptions
Exception::InvalidIteratorif the iterator is invalid

Reimplemented from BALL::ConstReverseIterator< Container, DataType, Position, Traits >.

Definition at line 544 of file reverseIterator.h.

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

Return a ReverseIterator for a given container. It points at the last element of the container.

Exceptions
Exception::InvalidIteratorif the iterator is invalid

Reimplemented from BALL::ConstReverseIterator< Container, DataType, Position, Traits >.

Definition at line 609 of file reverseIterator.h.

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

Return a ReverseIterator for a given container. It points before the first element.

Exceptions
Exception::InvalidIteratorif the iterator is invalid

Reimplemented from BALL::ConstReverseIterator< Container, DataType, Position, Traits >.

Definition at line 618 of file reverseIterator.h.