This class provides a non-const iterator for iterating over unique elements of a NavDataFactoryMap. This is done by wrapping a standard iterator, keeping track of the pointer values when this iterator is dereferenced, and skipping over iterators that have been dereferenced already. It can be used via:
Definition at line 60 of file NDFUniqIterator.hpp.
#include <NDFUniqIterator.hpp>
Public Member Functions | |
NDFUniqIterator | begin () |
NDFUniqIterator | end () |
NDFUniqIterator () | |
NDFUniqIterator (std::shared_ptr< T > omap) | |
NDFUniqIterator (std::shared_ptr< T > omap, typename T::iterator i) | |
NDFUniqIterator (T &omap) | |
NDFUniqIterator (T &omap, typename T::iterator i) | |
bool | operator!= (const NDFUniqIterator &i) |
T::value_type & | operator* () |
NDFUniqIterator & | operator++ () |
Private Attributes | |
T * | map |
Original map. More... | |
T::iterator | nuit |
non-unique iterator. More... | |
std::set< typename T::mapped_type::element_type * > | uniques |
Pointers already encountered. This assumes a map to a shared_ptr. More... | |
|
inline |
Definition at line 63 of file NDFUniqIterator.hpp.
|
inline |
Definition at line 66 of file NDFUniqIterator.hpp.
|
inline |
Definition at line 69 of file NDFUniqIterator.hpp.
|
inline |
Definition at line 72 of file NDFUniqIterator.hpp.
|
inline |
Definition at line 75 of file NDFUniqIterator.hpp.
|
inline |
Definition at line 104 of file NDFUniqIterator.hpp.
|
inline |
Definition at line 106 of file NDFUniqIterator.hpp.
|
inline |
Definition at line 108 of file NDFUniqIterator.hpp.
|
inline |
Definition at line 94 of file NDFUniqIterator.hpp.
|
inline |
Definition at line 78 of file NDFUniqIterator.hpp.
|
private |
Original map.
Definition at line 116 of file NDFUniqIterator.hpp.
|
private |
non-unique iterator.
Definition at line 112 of file NDFUniqIterator.hpp.
|
private |
Pointers already encountered. This assumes a map to a shared_ptr.
Definition at line 114 of file NDFUniqIterator.hpp.