Overview     Modules     Class Hierarchy     Classes     Members  
tlp::FilterIterator< TYPE, FILTER > Class Template Reference

Iterator that enables to filter an other Iterator. More...

#include <filteriterator.h>

Inheritance diagram for tlp::FilterIterator< TYPE, FILTER >:
Collaboration diagram for tlp::FilterIterator< TYPE, FILTER >:

Public Member Functions

 FilterIterator (Iterator< TYPE > *it, FILTER filter)
 ~FilterIterator ()
TYPE next ()
 Moves the Iterator on the next element.
bool hasNext ()
 Tells if the sequence is at its end.
- Public Member Functions inherited from tlp::Iterator< TYPE >
 Iterator ()
virtual ~Iterator ()

Detailed Description

template<typename TYPE, typename FILTER>
class tlp::FilterIterator< TYPE, FILTER >

Iterator that enables to filter an other Iterator.

Parameters
itthe iterator that should be filtered
filterthe functor that enables to test wheter or not an element is filtered

The functor function shoul have the following form

class AFilterFunctor {
bool operator()(TYPE a) {
return true if a should be iterated, false if a should be removed;
}
};

Constructor & Destructor Documentation

template<typename TYPE , typename FILTER >
tlp::FilterIterator< TYPE, FILTER >::FilterIterator ( Iterator< TYPE > *  it,
FILTER  filter 
)
inline
template<typename TYPE , typename FILTER >
tlp::FilterIterator< TYPE, FILTER >::~FilterIterator ( )
inline

Member Function Documentation

template<typename TYPE , typename FILTER >
bool tlp::FilterIterator< TYPE, FILTER >::hasNext ( )
inlinevirtual

Tells if the sequence is at its end.

Returns
bool Whether there are more elements to iterate on.

Implements tlp::Iterator< TYPE >.

template<typename TYPE , typename FILTER >
TYPE tlp::FilterIterator< TYPE, FILTER >::next ( )
inlinevirtual

Moves the Iterator on the next element.

Returns
The current element pointed by the Iterator.

Implements tlp::Iterator< TYPE >.



Tulip Software by LaBRI Visualization Team    2001 - 2012