16#ifndef __albaVMEIterator_h
17#define __albaVMEIterator_h
48 albaVME *
GetFirstNode() {this->GoToFirstNode();
return (m_TraversalDone)?NULL:this->GetCurrentNode();}
50 albaVME *
GetLastNode() {this->GoToLastNode();
return (m_TraversalDone)?NULL:this->GetCurrentNode();}
52 albaVME *
GetNextNode() {this->GoToNextNode();
return (m_TraversalDone)?NULL:this->GetCurrentNode();}
Abstract superclass for all ALBA classes implementing RTTI APIs.
albaVMEIterator - an m-way tree data structure iterator albaVMEIterator is a class to traverse a tree...
void SetTraversalModeToPostOrder()
Set the traverse modality to PostOrder: first the the subtrees left to right, then the root.
int IsDoneWithTraversal()
Check if the iterator is at the end of the container.
void SetTraversalMode(int mode)
Set/Get the traverse modality.
albaTypeMacro(albaVMEIterator, albaObject)
albaVector< albaID > m_CurrentIdx
virtual void IgnoreVisibleToTraverse(bool ignore)
Allow to ignore m_VisibleToTraverse flag for the iterator.
albaVME * GetNextNode()
Shortcut to traverse the tree.
void SetTraversalModeToPreOrder()
Set the traverse modality to PreOrder: first the root then the subtrees left to right.
virtual int GoToNextNode()
Increment the iterator to the next location.
virtual int GoToPreviousNode()
Decrement the iterator to the next location.
albaVME * FindLeftMostLeaf(albaVME *node)
Find the left most leaf of the tree.
albaVME * GetPreviousNode()
Shortcut to traverse the tree.
void SetRootNode(albaVME *root)
Set the root node of the (sub)tree to be traversed.
virtual int GoToLastNode()
Go to the last item of the list.
albaVME * FindRightMostLeaf(albaVME *node)
Find the right most leaf of the tree.
virtual bool IsVisible(albaVME *node)
Return true if the VME is visible.
bool m_IgnoreVisibleToTraverse
virtual ~albaVMEIterator()
albaVME * GetFirstNode()
Shortcut to traverse the tree.
traversalMode
Set the traverse modality to InOrder: first the the left subtrees (left to right),...
virtual int GoToFirstNode()
Go to the first item of the list.
albaVME * GetLastNode()
Shortcut to traverse the tree.
albaVME * GetCurrentNode()
Retrieve the current node pointer data from the iterator.
albaVMEIterator(albaVME *root=NULL)
void InitTraversal()
Initialize the traversal of the container.
bool IsVisible()
Return true if visible to tree traversal.
albaVector - vector container wrapping STL vectors.