#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. |