![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2001 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: recBlockIter.h,v $ $Revision: 1.7 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00017 00018 #ifndef DtRecursiveSimBlockIterator_H_ 00019 #define DtRecursiveSimBlockIterator_H_ 00020 00021 #include <vlutil/vlList.h> 00022 00023 class DtSimBlock; 00024 class DtSimStatement; 00025 class DtRecursiveSimStatementIterator; 00026 00034 #include "vrfplan/vrfplanDefines.h" 00035 class DT_DLL_vrfplan DtRecursiveSimBlockIterator 00036 { 00037 00038 protected: 00040 DtRecursiveSimBlockIterator(); 00041 00042 public: 00045 DtRecursiveSimBlockIterator(DtSimBlock* simBlock); 00046 00048 DtRecursiveSimBlockIterator( 00049 const DtRecursiveSimBlockIterator& orig); 00050 00052 const DtRecursiveSimBlockIterator& operator=( 00053 const DtRecursiveSimBlockIterator& orig); 00054 00056 virtual ~DtRecursiveSimBlockIterator(); 00057 00058 DtRecursiveSimBlockIterator* clone() const; 00059 00062 virtual DtSimStatement* first(bool reset = true); 00063 00065 virtual DtSimStatement* current() const; 00066 00069 virtual DtSimStatement* next(); 00070 00073 virtual void reset(); 00074 00076 virtual DtSimStatement* cursor() const; 00077 00082 virtual DtSimStatement* parentStatement() const; 00083 00088 virtual int parentSubBlockIndex() const; 00089 00093 virtual void setParentIterator(DtRecursiveSimStatementIterator* 00094 parentIterator); 00095 virtual DtRecursiveSimStatementIterator* parentIterator() const; 00096 00097 protected: 00098 DtSimStatement* myCursor; 00099 DtSimBlock* myList; 00100 DtRecursiveSimStatementIterator* myChildIterator; 00101 DtRecursiveSimStatementIterator* myParentIterator; 00102 }; 00103 00104 #endif