![]() |
VR-Forces 5.0.1 Developer's Guide
|
Iterator for iterating over a DtRwIntrusiveList of DtSimStatements and all its descendants (as represented by each DtSimStatement's list of DtSimBlock subblocks). This iterator performs an pre-order iteration over the 'forest' that represents the DtSimBlock's descendants.
Public Member Functions | |
| DtRecursiveSimBlockIterator (DtSimBlock *simBlock) | |
| DtRecursiveSimBlockIterator (const DtRecursiveSimBlockIterator &orig) | |
| const DtRecursiveSimBlockIterator & | operator= (const DtRecursiveSimBlockIterator &orig) |
| virtual | ~DtRecursiveSimBlockIterator () |
| DtRecursiveSimBlockIterator * | clone () const |
| virtual DtSimStatement * | first (bool reset=true) |
| virtual DtSimStatement * | current () const |
| virtual DtSimStatement * | next () |
| virtual void | reset () |
| virtual DtSimStatement * | cursor () const |
| virtual DtSimStatement * | parentStatement () const |
| virtual int | parentSubBlockIndex () const |
| virtual void | setParentIterator (DtRecursiveSimStatementIterator *parentIterator) |
| virtual DtRecursiveSimStatementIterator * | parentIterator () const |
| void | setVisitedTriggers (const std::set< DtString > &s) |
| virtual DtSimStatement * | internalNext () |
Protected Member Functions | |
| DtRecursiveSimBlockIterator () | |
Protected Attributes | |
| DtSimStatement * | myCursor |
| DtSimBlock * | myList |
| DtRecursiveSimStatementIterator * | myChildIterator |
| DtRecursiveSimStatementIterator * | myParentIterator |
| std::set< DtString > | myVisitedTriggers |
|
protected |
Default Constructor. Do not use.
| DtRecursiveSimBlockIterator::DtRecursiveSimBlockIterator | ( | DtSimBlock * | simBlock | ) |
Constructor. simBlock is the DtSimBlock whose statements are to be iterated over.
| DtRecursiveSimBlockIterator::DtRecursiveSimBlockIterator | ( | const DtRecursiveSimBlockIterator & | orig | ) |
Copy Constructor.
|
virtual |
Destructor.
| const DtRecursiveSimBlockIterator& DtRecursiveSimBlockIterator::operator= | ( | const DtRecursiveSimBlockIterator & | orig | ) |
Assignment Operator.
| DtRecursiveSimBlockIterator* DtRecursiveSimBlockIterator::clone | ( | ) | const |
|
virtual |
Calls reset() if reset arg is true (useful for for() loops). Returns the first object on the list.
|
virtual |
returns the current object. List index is unmodified.
|
virtual |
moves the index to the next position and returns the object at that position in the list. Returns null if already at the end of list.
|
virtual |
sets the current pointer to the start of the list. Normally this isn't needed if you use the standard for loop syntax.
|
virtual |
get a pointer to the cursor. Use with care.
|
virtual |
set/get a pointer to the current statement's parent statement. Accessor is recursive. If currently iterating over a child (myChildIterator exists), invokes child iterator's parentStatement() method. Otherwise, returns myParentStmt.
|
virtual |
set/get index of parent subblock in which the current statement resides. Accessor is recursive. If currently iterating over a child (myChildIterator exists), invokes child iterator's subBlockIndex() method. Otherwise, returns myParentSubBlockIndex.
|
virtual |
set/get parent iterator. parentIterator is the iterator over our parent statement. Should be NULL in the case that simBlock is the top-level block in a plan. parentIterator is the iterator that created us.
|
virtual |
|
inline |
|
virtual |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |