#include <utils.h>
Inheritance diagram for CB2::Iterator< Tcontainer, Tref, Tmemb >:
Public Types | |
typedef Iterator< Tcontainer, Tref, Tmemb > | this_type |
Template type alias. | |
Public Member Functions | |
Iterator (const Tcontainer &cont, const Tref &reference) | |
Constructor. | |
const this_type & | operator++ () |
Advance iterator reference. | |
bool | operator== (const this_type &it) const |
Compare iterators. | |
bool | operator!= (const this_type &it) const |
const Tmemb & | operator * () const |
Dereference iterators. | |
const Tmemb * | operator-> () const |
Public Attributes | |
int | tag |
Tag for user-specific data. | |
Private Attributes | |
const Tcontainer & | container |
Container reference. | |
Tref | ref |
Current item reference. |
This template implements a generic iterator for data items from Tcontainer. The iterator refers to the items by Tref and returns the values as Tmemb.
Tcontainer must implement these methods:
|
Template type alias.
|
|
Constructor. Create an iterator refering to the given item.
|
|
Dereference iterators. Get the item referenced by the iterator using container's Deref() method.
|
|
|
|
Advance iterator reference. Use container's RefNext() to get the reference to the succeding item.
|
|
|
|
Compare iterators. Compare iterators by comparing the references.
|
|
Container reference.
|
|
Current item reference.
|
|
Tag for user-specific data.
|