VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator 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). More...

Public Member Functions

 DtRecursiveSimStatementIterator (DtSimStatement *statement)
 Constructor.
 DtRecursiveSimStatementIterator (const DtRecursiveSimStatementIterator &orig)
 Copy Constructor.
const
DtRecursiveSimStatementIterator
operator= (const DtRecursiveSimStatementIterator &orig)
 Assignment Operator.
virtual ~DtRecursiveSimStatementIterator ()
 Destructor.
DtRecursiveSimStatementIteratorclone () const
virtual DtSimStatementfirst (bool reset=true)
 Calls reset() if reset arg is true (useful for for() loops).
virtual DtSimStatementcurrent () const
 returns the current object. List index is unmodified.
virtual DtSimStatementnext ()
 moves the index to the next position and returns the object at that position in the list.
virtual void reset ()
 sets the current pointer to the start of the list.
virtual int cursor () const
 get a pointer to the cursor. Use with care.
virtual DtSimStatementstatement () const
 get a pointer to our statement.
virtual DtSimStatementparentStatement () const
 get a pointer to the current statement's parent statement.
virtual int parentSubBlockIndex () const
 get index of parent subblock in which the current statement resides.
virtual void setParentIterator (DtRecursiveSimBlockIterator *parentIterator)
 set/get the parent iterator (the one that created us).
virtual
DtRecursiveSimBlockIterator
parentIterator () const

Protected Member Functions

 DtRecursiveSimStatementIterator ()
 Default Constructor. Do not use.

Protected Attributes

int myCursor
DtSimStatementmyStatement
DtRecursiveSimBlockIteratormyChildIterator
DtRecursiveSimBlockIteratormyParentIterator

Detailed Description

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.

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

Member Data Documentation

int DtRecursiveSimStatementIterator::myCursor
protected
DtSimStatement* DtRecursiveSimStatementIterator::myStatement
protected
DtRecursiveSimBlockIterator* DtRecursiveSimStatementIterator::myChildIterator
protected
DtRecursiveSimBlockIterator* DtRecursiveSimStatementIterator::myParentIterator
protected

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

Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)