base::AbstractIterator< T > Class Template Reference

Abstract class for Iterator objects. More...

#include <base_types2.hh>

Inheritance diagram for base::AbstractIterator< T >:

base::DlistIterator< T, LOCK > base::STLIterator< T, CONTAINER >

List of all members.

Public Member Functions

 AbstractIterator (void)
virtual ~AbstractIterator ()
virtual operator bool ()=0
virtual T Next (void)=0


Detailed Description

template<typename T>
class base::AbstractIterator< T >

Abstract class for Iterator objects.

In itself, an abstract Iterator class is useless, because Iterator objects are returned by value which precludes polymorphism. Rather, its purpose is to be a reference for writing concrete Iterators that all have a compatible interface.

By using Iterator as a facade, classes such as Dlist, STL containers, Array can be transparently substituted without changing clients of Iterator.


Constructor & Destructor Documentation

template<typename T>
base::AbstractIterator< T >::AbstractIterator ( void   )  [inline]

template<typename T>
virtual base::AbstractIterator< T >::~AbstractIterator (  )  [inline, virtual]


Member Function Documentation

template<typename T>
virtual base::AbstractIterator< T >::operator bool (  )  [pure virtual]

Implemented in base::DlistIterator< T, LOCK >, and base::STLIterator< T, CONTAINER >.

template<typename T>
virtual T base::AbstractIterator< T >::Next ( void   )  [pure virtual]

Implemented in base::DlistIterator< T, LOCK >, and base::STLIterator< T, CONTAINER >.


The documentation for this class was generated from the following file: Palomino 3D Engine documents generated by doxygen 1.5.3 on Fri Nov 23 11:26:20 2007