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::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess > Class Template Reference

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

Inheritance diagram for BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >:
BALL::ConstBidirectionalFilterIterator< Predicate, IteratorRandomAccess > BALL::ConstForwardFilterIterator< Predicate, IteratorRandomAccess > BALL::BaseFilterIterator< Predicate, IteratorRandomAccess > BALL::RandomAccessFilterIterator< Predicate, IteratorRandomAccess >

Public Types

Typedefs
typedef
IteratorRandomAccess::difference_type 
difference_type
 
typedef
IteratorRandomAccess::value_type 
value_type
 
typedef
IteratorRandomAccess::container_type 
Container
 
typedef
IteratorRandomAccess::value_type 
DataType
 
typedef
IteratorRandomAccess::difference_type 
Position
 
typedef
IteratorRandomAccess::traits_type 
Traits
 
typedef
IteratorRandomAccess::pointer 
pointer
 
typedef
IteratorRandomAccess::reference 
reference
 
typedef
std::random_access_iterator_tag 
iterator_category
 
typedef
ConstBidirectionalFilterIterator
< Predicate,
IteratorRandomAccess
Base
 
- Public Types inherited from BALL::ConstBidirectionalFilterIterator< Predicate, IteratorRandomAccess >
typedef
IteratorRandomAccess::container_type 
Container
 
typedef
IteratorRandomAccess::value_type 
DataType
 
typedef
IteratorRandomAccess::difference_type 
Position
 
typedef
IteratorRandomAccess::traits_type 
Traits
 
typedef
IteratorRandomAccess::value_type 
value_type
 
typedef
IteratorRandomAccess::difference_type 
difference_type
 
typedef
IteratorRandomAccess::pointer 
pointer
 
typedef
IteratorRandomAccess::reference 
reference
 
typedef
std::bidirectional_iterator_tag 
iterator_category
 
typedef
ConstForwardFilterIterator
< Predicate,
IteratorRandomAccess
Base
 
- Public Types inherited from BALL::ConstForwardFilterIterator< Predicate, IteratorRandomAccess >
typedef
IteratorRandomAccess::container_type 
Container
 
typedef
IteratorRandomAccess::value_type 
DataType
 
typedef
IteratorRandomAccess::difference_type 
Position
 
typedef
IteratorRandomAccess::traits_type 
Traits
 
typedef
IteratorRandomAccess::value_type 
value_type
 
typedef
IteratorRandomAccess::difference_type 
difference_type
 
typedef
IteratorRandomAccess::pointer 
pointer
 
typedef
IteratorRandomAccess::reference 
reference
 
typedef std::forward_iterator_tag iterator_category
 
typedef BaseFilterIterator
< Predicate,
IteratorRandomAccess
Base
 
- Public Types inherited from BALL::BaseFilterIterator< Predicate, IteratorRandomAccess >
typedef
IteratorRandomAccess::container_type 
Container
 
typedef
IteratorRandomAccess::value_type 
DataType
 
typedef
IteratorRandomAccess::difference_type 
Position
 
typedef
IteratorRandomAccess::traits_type 
Traits
 
typedef
IteratorRandomAccess::value_type 
value_type
 
typedef
IteratorRandomAccess::difference_type 
difference_type
 
typedef
IteratorRandomAccess::pointer 
pointer
 
typedef
IteratorRandomAccess::reference 
reference
 
typedef std::input_iterator_tag iterator_category
 

Public Member Functions

Constructors and Destructors
 ConstRandomAccessFilterIterator ()
 
 ConstRandomAccessFilterIterator (Predicate p, IteratorRandomAccess it)
 
 ConstRandomAccessFilterIterator (const ConstRandomAccessFilterIterator &iterator)
 
 ~ConstRandomAccessFilterIterator ()
 
Predicates
bool operator+ () const
 
bool operator- () const
 
bool operator< (const ConstRandomAccessFilterIterator &iterator) const
 
bool operator<= (const ConstRandomAccessFilterIterator &iterator) const
 
bool operator>= (const ConstRandomAccessFilterIterator &iterator) const
 
bool operator> (const ConstRandomAccessFilterIterator &iterator) const
 
Iterator dereferencing
const DataTypeoperator[] (Index index) const
 
- Public Member Functions inherited from BALL::ConstBidirectionalFilterIterator< Predicate, IteratorRandomAccess >
void setIterator (const IteratorRandomAccess &iterator)
 Set the internal iterator. More...
 
 ConstBidirectionalFilterIterator ()
 
 ConstBidirectionalFilterIterator (Predicate p, IteratorRandomAccessit)
 
 ConstBidirectionalFilterIterator (const ConstBidirectionalFilterIterator &iterator)
 
 ~ConstBidirectionalFilterIterator ()
 
void toBegin ()
 
bool isBegin () const
 Check whether the iterator points to the item at the beginning of the container. More...
 
void toEnd ()
 
bool isEnd () const
 Check whether the iterator points to the position after the last item of the container. More...
 
void toRBegin ()
 
bool isRBegin () const
 Test whether the iterator points to the "reverse" first element of the container. More...
 
void toREnd ()
 
bool isREnd () const
 Test wheter the iterator points to the position before the first element. More...
 
ConstBidirectionalFilterIteratoroperator++ ()
 
ConstBidirectionalFilterIterator operator++ (int)
 
ConstBidirectionalFilterIteratoroperator-- ()
 
ConstBidirectionalFilterIterator operator-- (int)
 
- Public Member Functions inherited from BALL::ConstForwardFilterIterator< Predicate, IteratorRandomAccess >
void setIterator (const IteratorRandomAccess &iterator)
 Set the internal iterator. More...
 
const IteratorRandomAccessgetIterator () const
 Get a constant reference to the internal iterator. More...
 
IteratorRandomAccessgetIterator ()
 Get a constant reference to the internal iterator. More...
 
 ConstForwardFilterIterator ()
 Default constructor. More...
 
 ConstForwardFilterIterator (Predicate p, IteratorRandomAccessit)
 
 ConstForwardFilterIterator (const ConstForwardFilterIterator &iterator)
 Copy constructor. More...
 
 ~ConstForwardFilterIterator ()
 
ConstForwardFilterIteratoroperator= (const ConstForwardFilterIterator &iterator)
 
void swap (ConstForwardFilterIterator &iterator)
 
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...
 
ConstForwardFilterIteratoroperator++ ()
 
ConstForwardFilterIterator operator++ (int)
 
- Public Member Functions inherited from BALL::BaseFilterIterator< Predicate, IteratorRandomAccess >
 BaseFilterIterator ()
 Default constructor. More...
 
 BaseFilterIterator (Predicate p, IteratorRandomAccessit)
 Default constructor. More...
 
 BaseFilterIterator (const BaseFilterIterator &iterator)
 Copy constructor. More...
 
 ~BaseFilterIterator ()
 Destructor. More...
 
BaseFilterIteratoroperator= (const BaseFilterIterator &iterator)
 
void swap (BaseFilterIterator &iterator)
 Swap two iterators. More...
 
void invalidate ()
 Invalidate the iterator. More...
 
void setTraits (const Traits &traits)
 Set the traits. More...
 
const TraitsgetTraits () const
 Get a constant reference to the traits of this iterator. More...
 
TraitsgetTraits ()
 Get a constant reference to the traits of this iterator. More...
 
void setPredicate (const Predicate &predicate)
 Set the predicates. More...
 
const Predicate & getPredicate () const
 Get a constant reference to the traits of this iterator. More...
 
Predicate & getPredicate ()
 Get a constant reference to the traits of this iterator. More...
 
const ContainergetContainer () const
 Get a constant pointer to the container of this iterator. 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...
 
bool operator== (const BaseFilterIterator &iterator) const
 Equality operator. More...
 
bool operator== (const IteratorRandomAccess &iterator) const
 Equality operator. More...
 
bool operator!= (const BaseFilterIterator &iterator) const
 Inequality operator. More...
 
bool operator!= (const IteratorRandomAccess &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

 ConstRandomAccessFilterIterator (const Container &container)
 
- Protected Member Functions inherited from BALL::ConstBidirectionalFilterIterator< Predicate, IteratorRandomAccess >
 ConstBidirectionalFilterIterator (const Container &container)
 Construct an iterator bound to a specific container. More...
 
- Protected Member Functions inherited from BALL::ConstForwardFilterIterator< Predicate, IteratorRandomAccess >
 ConstForwardFilterIterator (const Container &container)
 
- Protected Member Functions inherited from BALL::BaseFilterIterator< Predicate, IteratorRandomAccess >
 BaseFilterIterator (const Container &container)
 

Assignment

ConstRandomAccessFilterIteratoroperator+= (Distance distance)
 
ConstRandomAccessFilterIteratoroperator-= (Distance distance)
 
ConstRandomAccessFilterIterator operator+ (Distance distance) const
 
ConstRandomAccessFilterIterator operator- (Distance distance) const
 
Distance operator- (const ConstRandomAccessFilterIterator &iterator) const
 
static
ConstRandomAccessFilterIterator 
begin (const Container &container)
 
static
ConstRandomAccessFilterIterator 
end (const Container &container)
 
static
ConstRandomAccessFilterIterator 
rbegin (const Container &container)
 
static
ConstRandomAccessFilterIterator 
rend (const Container &container)
 

Additional Inherited Members

- Static Public Member Functions inherited from BALL::ConstBidirectionalFilterIterator< Predicate, IteratorRandomAccess >
static
ConstBidirectionalFilterIterator 
begin (const Container &container)
 
static
ConstBidirectionalFilterIterator 
end (const Container &container)
 
static
ConstBidirectionalFilterIterator 
rbegin (const Container &container)
 
static
ConstBidirectionalFilterIterator 
rend (const Container &container)
 
- Static Public Member Functions inherited from BALL::ConstForwardFilterIterator< Predicate, IteratorRandomAccess >
static ConstForwardFilterIterator begin (const Container &container)
 
static ConstForwardFilterIterator end (const Container &container)
 
- Public Attributes inherited from BALL::BaseFilterIterator< Predicate, IteratorRandomAccess >
Predicate predicate_
 The instance of the iterator and the predicate. More...
 
IteratorRandomAccess iterator_
 

Detailed Description

template<class Predicate, class IteratorRandomAccess>
class BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >

Definition at line 20 of file randomAccessFilterIterator.h.

Member Typedef Documentation

template<class Predicate, class IteratorRandomAccess>
typedef ConstBidirectionalFilterIterator<Predicate, IteratorRandomAccess> BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::Base

Definition at line 49 of file randomAccessFilterIterator.h.

template<class Predicate, class IteratorRandomAccess>
typedef IteratorRandomAccess::container_type BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::Container

Definition at line 35 of file randomAccessFilterIterator.h.

template<class Predicate, class IteratorRandomAccess>
typedef IteratorRandomAccess::value_type BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::DataType

Definition at line 37 of file randomAccessFilterIterator.h.

template<class Predicate, class IteratorRandomAccess>
typedef IteratorRandomAccess::difference_type BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::difference_type

Definition at line 31 of file randomAccessFilterIterator.h.

template<class Predicate, class IteratorRandomAccess>
typedef std::random_access_iterator_tag BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::iterator_category

Definition at line 47 of file randomAccessFilterIterator.h.

template<class Predicate, class IteratorRandomAccess>
typedef IteratorRandomAccess::pointer BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::pointer

Definition at line 43 of file randomAccessFilterIterator.h.

template<class Predicate, class IteratorRandomAccess>
typedef IteratorRandomAccess::difference_type BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::Position

Definition at line 39 of file randomAccessFilterIterator.h.

template<class Predicate, class IteratorRandomAccess>
typedef IteratorRandomAccess::reference BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::reference

Definition at line 45 of file randomAccessFilterIterator.h.

template<class Predicate, class IteratorRandomAccess>
typedef IteratorRandomAccess::traits_type BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::Traits

Definition at line 41 of file randomAccessFilterIterator.h.

template<class Predicate, class IteratorRandomAccess>
typedef IteratorRandomAccess::value_type BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::value_type

Definition at line 33 of file randomAccessFilterIterator.h.

Constructor & Destructor Documentation

template<class Predicate, class IteratorRandomAccess>
BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::ConstRandomAccessFilterIterator ( )
inline

Definition at line 57 of file randomAccessFilterIterator.h.

template<class Predicate, class IteratorRandomAccess>
BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::ConstRandomAccessFilterIterator ( Predicate  p,
IteratorRandomAccess  it 
)
inline

Definition at line 60 of file randomAccessFilterIterator.h.

template<class Predicate, class IteratorRandomAccess>
BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::ConstRandomAccessFilterIterator ( const ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess > &  iterator)
inline

Definition at line 66 of file randomAccessFilterIterator.h.

template<class Predicate, class IteratorRandomAccess>
BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::~ConstRandomAccessFilterIterator ( )
inline

Definition at line 72 of file randomAccessFilterIterator.h.

template<class Predicate, class IteratorRandomAccess>
BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::ConstRandomAccessFilterIterator ( const Container container)
inlineprotected

Definition at line 206 of file randomAccessFilterIterator.h.

Member Function Documentation

template<class Predicate , class IteratorRandomAccess >
ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess > BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::begin ( const Container container)
static

Return a ConstRandomAccessFilterIterator for a given container. It points to the first element.

Exceptions
Exception::Precondition

Definition at line 411 of file randomAccessFilterIterator.h.

template<class Predicate , class IteratorRandomAccess >
ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess > BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::end ( const Container container)
static

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

Exceptions
Exception::Precondition

Definition at line 420 of file randomAccessFilterIterator.h.

template<class Predicate , class IteratorRandomAccess >
ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess > BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::operator+ ( Distance  distance) const

Return an iterator. It points to the element with the given distance from the element of this iterator.

Exceptions
Exception::InvalidIteratorif the iterator is invalid

Definition at line 304 of file randomAccessFilterIterator.h.

template<class Predicate, class IteratorRandomAccess>
bool BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::operator+ ( ) const
inline

Definition at line 143 of file randomAccessFilterIterator.h.

template<class Predicate , class IteratorRandomAccess >
ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess > & BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::operator+= ( Distance  distance)

Advance iterator a given distance.

Exceptions
Exception::InvalidIteratorif the iterator is invalid

Definition at line 256 of file randomAccessFilterIterator.h.

template<class Predicate , class IteratorRandomAccess >
ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess > BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::operator- ( Distance  distance) const

Return an iterator. It points to the element with the given distance in reverse direction from the element of this iterator.

Exceptions
Exception::InvalidIteratorif the iterator is invalid

Definition at line 312 of file randomAccessFilterIterator.h.

template<class Predicate , class IteratorRandomAccess >
Distance BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::operator- ( const ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess > &  iterator) const

Return an iterator. It points to the element with the given distance in reverse direction from the element of this iterator.

Exceptions
Exception::InvalidIteratorif the iterator is invalid
Exception::IncompatibleIteratorsif this iterator and the argument are incompatible

Return the distance between two iterators. It points to the element with the given distance in reverse direction of the given iterator.

Exceptions
InvalidIteratorif one of the iterators is not valid
IncompatibleIteratorsif the iterators point into different containers.

Definition at line 234 of file randomAccessFilterIterator.h.

template<class Predicate, class IteratorRandomAccess>
bool BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::operator- ( ) const
inline

Definition at line 146 of file randomAccessFilterIterator.h.

template<class Predicate , class IteratorRandomAccess >
ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess > & BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::operator-= ( Distance  distance)

Advance iterator a given distance in reverse direction.

Exceptions
Exception::InvalidIteratorif the iterator is invalid

Definition at line 276 of file randomAccessFilterIterator.h.

template<class Predicate , class IteratorRandomAccess >
bool BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::operator< ( const ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess > &  iterator) const

Lesser operator. Returns true if both iterators have the same container and the element of this iterator resides before the elemen of the given iterator.

Exceptions
InvalidIteratorif one of the iterators is not valid
IncompatibleIteratorsif the iterators point into different containers.

Definition at line 320 of file randomAccessFilterIterator.h.

template<class Predicate , class IteratorRandomAccess >
bool BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::operator<= ( const ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess > &  iterator) const

Lesser or equal operator. Returns true if both iterators have the same container and the element of this iterator resides before the elemen of the given iterator or both iterators point to the same element.

Exceptions
InvalidIteratorif one of the iterators is not valid
IncompatibleIteratorsif the iterators point into different containers.

Definition at line 343 of file randomAccessFilterIterator.h.

template<class Predicate , class IteratorRandomAccess >
bool BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::operator> ( const ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess > &  iterator) const

Greater operator. Returns true if both iterators have the same container and the element of this iterator resides after the elemen of the given iterator.

Exceptions
InvalidIteratorif one of the iterators is not valid
IncompatibleIteratorsif the iterators point into different containers.

Definition at line 388 of file randomAccessFilterIterator.h.

template<class Predicate , class IteratorRandomAccess >
bool BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::operator>= ( const ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess > &  iterator) const

Greater or equal operator. Returns true if both iterators have the same container and the element of this iterator resides after the elemen of the given iterator or both iterators point to the same element.

Exceptions
InvalidIteratorif one of the iterators is not valid
IncompatibleIteratorsif the iterators point into different containers.

Definition at line 365 of file randomAccessFilterIterator.h.

template<class Predicate, class IteratorRandomAccess>
const DataType& BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::operator[] ( Index  index) const
inline

Random access operator.

Exceptions
Exception::InvalidIteratorif the iterator is invalid

Definition at line 192 of file randomAccessFilterIterator.h.

template<class Predicate , class IteratorRandomAccess >
ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess > BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::rbegin ( const Container container)
static

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

Exceptions
Exception::Precondition

Definition at line 429 of file randomAccessFilterIterator.h.

template<class Predicate , class IteratorRandomAccess >
ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess > BALL::ConstRandomAccessFilterIterator< Predicate, IteratorRandomAccess >::rend ( const Container container)
static

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

Exceptions
Exception::Precondition

Definition at line 438 of file randomAccessFilterIterator.h.