#include <mapnode.h>
Public Methods | |
| csNodeIterator (iSector *pSector, const char *classname=NULL) | |
| The constructor. More... | |
| ~csNodeIterator () | |
| The destructor as usual. | |
| void | Reset (iSector *pSector, const char *classname=NULL) |
| Reuse the iterator for an other search. | |
| iMapNode* | GetNode () |
| Get the object we are pointing at. | |
| void | Next () |
| Move forward. | |
| bool | IsFinished () const |
| Check if there are other nodes. | |
Protected Methods | |
| void | SkipWrongClassname () |
| Skip all nodes with wrong classname. | |
| void | NextNode () |
| Step to the next node in the sector, ignoring its classname. | |
Protected Attributes | |
| iObjectIterator* | Iterator |
| const char* | Classname |
| iMapNode* | CurrentNode |
|
|
The constructor. Theorectially, we could handle any iObject, but that doesn't make sense for the current implementation, so we restrict it to iSector to avoid some pitfalls.
If a classname is given, search is restricted to nodes, in which the key "classname" has the same value as the given classname. the classname string is _not_ duplicated, so the caller is responsible to take care, that the string is available while the Iterator is alive. |