VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
DtRecursiveSimStatementIterator Class Reference

Iterator for iterating over a DtList of DtSimBlock subblocks and all its descendants (each DtSimBlock is a DtRwIntrusiveList of DtSimStatements). This iterator performs an pre-order iteration over the 'forest' that represents the statement's descendants.

Public Member Functions

 DtRecursiveSimStatementIterator (DtSimStatement *statement)
 
 DtRecursiveSimStatementIterator (const DtRecursiveSimStatementIterator &orig)
 
const
DtRecursiveSimStatementIterator
operator= (const DtRecursiveSimStatementIterator &orig)
 
virtual ~DtRecursiveSimStatementIterator ()
 
DtRecursiveSimStatementIteratorclone () const
 
virtual DtSimStatementfirst (bool reset=true)
 
virtual DtSimStatementcurrent () const
 
virtual DtSimStatementnext ()
 
virtual void reset ()
 
virtual int cursor () const
 
virtual DtSimStatementstatement () const
 
virtual DtSimStatementparentStatement () const
 
virtual int parentSubBlockIndex () const
 
virtual void setParentIterator (DtRecursiveSimBlockIterator *parentIterator)
 
virtual
DtRecursiveSimBlockIterator
parentIterator () const
 
void setVisitedTriggers (const std::set< DtString > &s)
 

Protected Member Functions

 DtRecursiveSimStatementIterator ()
 

Protected Attributes

int myCursor
 
DtSimStatementmyStatement
 
DtRecursiveSimBlockIteratormyChildIterator
 
DtRecursiveSimBlockIteratormyParentIterator
 
std::set< DtStringmyVisitedTriggers
 

Constructor & Destructor Documentation

DtRecursiveSimStatementIterator::DtRecursiveSimStatementIterator ( )
protected

Default Constructor. Do not use.

DtRecursiveSimStatementIterator::DtRecursiveSimStatementIterator ( DtSimStatement statement)

Constructor. Pass in the statement whose sub-blocks are to be iterated over.

DtRecursiveSimStatementIterator::DtRecursiveSimStatementIterator ( const DtRecursiveSimStatementIterator orig)

Copy Constructor.

virtual DtRecursiveSimStatementIterator::~DtRecursiveSimStatementIterator ( )
virtual

Destructor.

Member Function Documentation

const DtRecursiveSimStatementIterator& DtRecursiveSimStatementIterator::operator= ( const DtRecursiveSimStatementIterator orig)

Assignment Operator.

DtRecursiveSimStatementIterator* DtRecursiveSimStatementIterator::clone ( ) const
virtual DtSimStatement* DtRecursiveSimStatementIterator::first ( bool  reset = true)
virtual

Calls reset() if reset arg is true (useful for for() loops). Returns the first object on the list.

virtual DtSimStatement* DtRecursiveSimStatementIterator::current ( ) const
virtual

returns the current object. List index is unmodified.

virtual DtSimStatement* DtRecursiveSimStatementIterator::next ( )
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 void DtRecursiveSimStatementIterator::reset ( )
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 int DtRecursiveSimStatementIterator::cursor ( ) const
virtual

get a pointer to the cursor. Use with care.

virtual DtSimStatement* DtRecursiveSimStatementIterator::statement ( ) const
virtual

get a pointer to our statement.

virtual DtSimStatement* DtRecursiveSimStatementIterator::parentStatement ( ) const
virtual

get a pointer to the current statement's parent statement.

virtual int DtRecursiveSimStatementIterator::parentSubBlockIndex ( ) const
virtual

get index of parent subblock in which the current statement resides.

virtual void DtRecursiveSimStatementIterator::setParentIterator ( DtRecursiveSimBlockIterator parentIterator)
virtual

set/get the parent iterator (the one that created us). parentIterator is the iterator over our parent statement's sub blocks, inside one of which our statement belongs (its the iterator that spawned us).

virtual DtRecursiveSimBlockIterator* DtRecursiveSimStatementIterator::parentIterator ( ) const
virtual
void DtRecursiveSimStatementIterator::setVisitedTriggers ( const std::set< DtString > &  s)
inline

Member Data Documentation

int DtRecursiveSimStatementIterator::myCursor
protected
DtSimStatement* DtRecursiveSimStatementIterator::myStatement
protected
DtRecursiveSimBlockIterator* DtRecursiveSimStatementIterator::myChildIterator
protected
DtRecursiveSimBlockIterator* DtRecursiveSimStatementIterator::myParentIterator
protected
std::set<DtString> DtRecursiveSimStatementIterator::myVisitedTriggers
protected

The documentation for this class was generated from the following file:

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)