#include <itkLevelOrderTreeIterator.h>
Definition at line 27 of file itkLevelOrderTreeIterator.h.
TreeIteratorBase< TTreeType > * | Clone () |
Public Types | |
enum | { UNDEFIND = 0, PREORDER = 1, INORDER = 2, POSTORDER = 3, LEVELORDER = 4, CHILD = 5, ROOT = 6, LEAF = 7 } |
typedef LevelOrderTreeIterator | Self |
typedef TreeIteratorBase < TTreeType > | Superclass |
typedef Superclass::TreeNodeType | TreeNodeType |
typedef TTreeType | TreeType |
typedef TTreeType::ValueType | ValueType |
Public Member Functions | |
virtual bool | Add (TTreeType &subTree) |
virtual bool | Add (int position, ValueType element) |
virtual bool | Add (ValueType element) |
virtual int | ChildPosition (ValueType element) const |
virtual TreeIteratorBase < TTreeType > * | Children () |
virtual int | Count () |
virtual int | CountChildren () const |
virtual bool | Disconnect () |
virtual const ValueType & | Get () const |
virtual TreeIteratorBase < TTreeType > * | GetChild (int number) const |
int | GetEndLevel () const |
int | GetLevel () const |
const TreeNodeType * | GetParent () const |
int | GetStartLevel () const |
virtual TTreeType * | GetSubTree () const |
TTreeType * | GetTree () const |
int | GetType () const |
void | GoToBegin () |
virtual bool | GoToChild (int number=0) |
void | GoToEnd () |
virtual bool | GoToParent () |
virtual bool | HasChild (int number=0) const |
virtual bool | HasParent () const |
bool | IsAtBegin (void) const |
bool | IsAtEnd (void) const |
virtual bool | IsLeaf () const |
virtual bool | IsRoot () const |
void | operator++ (int) |
Self & | operator++ () |
virtual TreeIteratorBase < TTreeType > * | Parents () |
bool | Remove () |
virtual bool | RemoveChild (int number) |
void | Set (ValueType element) |
virtual | ~LevelOrderTreeIterator () |
virtual const TreeNodeType * | GetNode () const |
virtual TreeNodeType * | GetNode () |
const TreeNodeType * | GetRoot () const |
TreeNodeType * | GetRoot () |
LevelOrderTreeIterator (TreeType *tree, int startLevel, int endLevel, const TreeNodeType *start=NULL) | |
LevelOrderTreeIterator (TreeType *tree, int endLevel=INT_MAX, const TreeNodeType *start=NULL) | |
const Self & | operator= (const Self &iterator) |
Protected Member Functions | |
bool | HasNext () const |
const ValueType & | Next () |
Protected Attributes | |
TreeNodeType * | m_Begin |
TreeNodeType * | m_End |
TreeNodeType * | m_Position |
const TreeNodeType * | m_Root |
TTreeType * | m_Tree |
typedef LevelOrderTreeIterator itk::LevelOrderTreeIterator< TTreeType >::Self |
Typedefs
Reimplemented from itk::TreeIteratorBase< TTreeType >.
Definition at line 32 of file itkLevelOrderTreeIterator.h.
typedef TreeIteratorBase<TTreeType> itk::LevelOrderTreeIterator< TTreeType >::Superclass |
Definition at line 33 of file itkLevelOrderTreeIterator.h.
typedef Superclass::TreeNodeType itk::LevelOrderTreeIterator< TTreeType >::TreeNodeType |
Reimplemented from itk::TreeIteratorBase< TTreeType >.
Definition at line 36 of file itkLevelOrderTreeIterator.h.
typedef TTreeType itk::LevelOrderTreeIterator< TTreeType >::TreeType |
Definition at line 34 of file itkLevelOrderTreeIterator.h.
typedef TTreeType::ValueType itk::LevelOrderTreeIterator< TTreeType >::ValueType |
Reimplemented from itk::TreeIteratorBase< TTreeType >.
Definition at line 35 of file itkLevelOrderTreeIterator.h.
anonymous enum [inherited] |
Enumerations
Definition at line 161 of file itkTreeIteratorBase.h.
itk::LevelOrderTreeIterator< TTreeType >::LevelOrderTreeIterator | ( | TreeType * | tree, | |
int | endLevel = INT_MAX , |
|||
const TreeNodeType * | start = NULL | |||
) | [inline] |
Constructors
Constructor with end level specification
Definition at line 95 of file itkLevelOrderTreeIterator.h.
References NULL.
itk::LevelOrderTreeIterator< TTreeType >::LevelOrderTreeIterator | ( | TreeType * | tree, | |
int | startLevel, | |||
int | endLevel, | |||
const TreeNodeType * | start = NULL | |||
) | [inline] |
Constructor with end level specification
Definition at line 120 of file itkLevelOrderTreeIterator.h.
References NULL.
virtual itk::LevelOrderTreeIterator< TTreeType >::~LevelOrderTreeIterator | ( | ) | [inline, virtual] |
Definition at line 43 of file itkLevelOrderTreeIterator.h.
virtual bool itk::TreeIteratorBase< TTreeType >::Add | ( | TTreeType & | subTree | ) | [virtual, inherited] |
Add a subtree
virtual bool itk::TreeIteratorBase< TTreeType >::Add | ( | int | position, | |
ValueType | element | |||
) | [virtual, inherited] |
Add an element at a given position
virtual bool itk::TreeIteratorBase< TTreeType >::Add | ( | ValueType | element | ) | [virtual, inherited] |
Add an element to the tree
virtual int itk::TreeIteratorBase< TTreeType >::ChildPosition | ( | ValueType | element | ) | const [virtual, inherited] |
Return the current ChildPosition of an element
virtual TreeIteratorBase<TTreeType>* itk::TreeIteratorBase< TTreeType >::Children | ( | ) | [virtual, inherited] |
Return a list of children
TreeIteratorBase< TTreeType > * itk::LevelOrderTreeIterator< TTreeType >::Clone | ( | ) | [inline, virtual] |
Clone function
Implements itk::TreeIteratorBase< TTreeType >.
Definition at line 293 of file itkLevelOrderTreeIterator.h.
References itk::TreeIteratorBase< TTreeType >::m_Tree.
virtual int itk::TreeIteratorBase< TTreeType >::Count | ( | ) | [virtual, inherited] |
Count the number of nodes
virtual int itk::TreeIteratorBase< TTreeType >::CountChildren | ( | ) | const [virtual, inherited] |
Count the number of children
Referenced by itk::ChildTreeIterator< TTreeType >::HasNext().
virtual bool itk::TreeIteratorBase< TTreeType >::Disconnect | ( | ) | [virtual, inherited] |
Disconnect the tree
virtual const ValueType& itk::TreeIteratorBase< TTreeType >::Get | ( | ) | const [virtual, inherited] |
Get a value
virtual TreeIteratorBase<TTreeType>* itk::TreeIteratorBase< TTreeType >::GetChild | ( | int | number | ) | const [virtual, inherited] |
Return a list of child
int itk::LevelOrderTreeIterator< TTreeType >::GetEndLevel | ( | ) | const [inline] |
Get the end level
Definition at line 183 of file itkLevelOrderTreeIterator.h.
int itk::LevelOrderTreeIterator< TTreeType >::GetLevel | ( | ) | const [inline] |
Get the current level
Return the current level
Definition at line 217 of file itkLevelOrderTreeIterator.h.
References itk::TreeIteratorBase< TTreeType >::m_Position, itk::TreeIteratorBase< TTreeType >::m_Root, and NULL.
virtual const TreeNodeType* itk::TreeIteratorBase< TTreeType >::GetNode | ( | ) | const [virtual, inherited] |
Get the current node
virtual TreeNodeType* itk::TreeIteratorBase< TTreeType >::GetNode | ( | ) | [virtual, inherited] |
Get the current node
const TreeNodeType* itk::TreeIteratorBase< TTreeType >::GetParent | ( | ) | const [inherited] |
Return the first parent found
const TreeNodeType* itk::TreeIteratorBase< TTreeType >::GetRoot | ( | ) | const [inherited] |
Get the root
TreeNodeType* itk::TreeIteratorBase< TTreeType >::GetRoot | ( | ) | [inherited] |
Get the root
int itk::LevelOrderTreeIterator< TTreeType >::GetStartLevel | ( | ) | const [inline] |
virtual TTreeType* itk::TreeIteratorBase< TTreeType >::GetSubTree | ( | ) | const [virtual, inherited] |
Get the subtree
TTreeType* itk::TreeIteratorBase< TTreeType >::GetTree | ( | ) | const [inherited] |
Get the tree
int itk::LevelOrderTreeIterator< TTreeType >::GetType | ( | void | ) | const [inline, virtual] |
Get the type of the iterator
Return the type of iterator
Implements itk::TreeIteratorBase< TTreeType >.
Definition at line 145 of file itkLevelOrderTreeIterator.h.
void itk::TreeIteratorBase< TTreeType >::GoToBegin | ( | void | ) | [inline, inherited] |
Move an iterator to the beginning of the tree
Definition at line 134 of file itkTreeIteratorBase.h.
References itk::TreeIteratorBase< TTreeType >::m_Begin, and itk::TreeIteratorBase< TTreeType >::m_Position.
virtual bool itk::TreeIteratorBase< TTreeType >::GoToChild | ( | int | number = 0 |
) | [virtual, inherited] |
Go to the specified child
Reimplemented in itk::ChildTreeIterator< TTreeType >.
void itk::TreeIteratorBase< TTreeType >::GoToEnd | ( | void | ) | [inline, inherited] |
Move an iterator to the end of the tree.
Definition at line 140 of file itkTreeIteratorBase.h.
References itk::TreeIteratorBase< TTreeType >::m_End, and itk::TreeIteratorBase< TTreeType >::m_Position.
virtual bool itk::TreeIteratorBase< TTreeType >::GoToParent | ( | ) | [virtual, inherited] |
Go to the parent
Reimplemented in itk::ChildTreeIterator< TTreeType >.
virtual bool itk::TreeIteratorBase< TTreeType >::HasChild | ( | int | number = 0 |
) | const [virtual, inherited] |
Return true if the current node has a child
bool itk::LevelOrderTreeIterator< TTreeType >::HasNext | ( | ) | const [inline, protected, virtual] |
Return true if the next node exists
Return true if the next value exists
Implements itk::TreeIteratorBase< TTreeType >.
Definition at line 153 of file itkLevelOrderTreeIterator.h.
virtual bool itk::TreeIteratorBase< TTreeType >::HasParent | ( | ) | const [virtual, inherited] |
Return true if the current node has a parent
bool itk::TreeIteratorBase< TTreeType >::IsAtBegin | ( | void | ) | const [inline, inherited] |
Is the iterator at the beginning of the tree?
Definition at line 146 of file itkTreeIteratorBase.h.
References itk::TreeIteratorBase< TTreeType >::m_Begin, and itk::TreeIteratorBase< TTreeType >::m_Position.
bool itk::TreeIteratorBase< TTreeType >::IsAtEnd | ( | void | ) | const [inline, inherited] |
Is the iterator at the end of the tree?. The iterator is at the end if it points to NULL
Definition at line 152 of file itkTreeIteratorBase.h.
References itk::TreeIteratorBase< TTreeType >::m_End, and itk::TreeIteratorBase< TTreeType >::m_Position.
Referenced by itk::TreeIteratorBase< TTreeType >::operator++().
virtual bool itk::TreeIteratorBase< TTreeType >::IsLeaf | ( | ) | const [virtual, inherited] |
Return true if the current node is a leaf
virtual bool itk::TreeIteratorBase< TTreeType >::IsRoot | ( | ) | const [virtual, inherited] |
Return true if the current node is a root
const LevelOrderTreeIterator< TTreeType >::ValueType & itk::LevelOrderTreeIterator< TTreeType >::Next | ( | ) | [inline, protected, virtual] |
Return the next node
Implements itk::TreeIteratorBase< TTreeType >.
Definition at line 166 of file itkLevelOrderTreeIterator.h.
References itk::TreeIteratorBase< TTreeType >::m_Position.
void itk::TreeIteratorBase< TTreeType >::operator++ | ( | int | ) | [inline, inherited] |
operator++
Definition at line 182 of file itkTreeIteratorBase.h.
References itk::TreeIteratorBase< TTreeType >::IsAtEnd(), and itk::TreeIteratorBase< TTreeType >::Next().
Self& itk::TreeIteratorBase< TTreeType >::operator++ | ( | ) | [inline, inherited] |
operator++
Definition at line 174 of file itkTreeIteratorBase.h.
References itk::TreeIteratorBase< TTreeType >::Next().
const Self& itk::LevelOrderTreeIterator< TTreeType >::operator= | ( | const Self & | iterator | ) | [inline] |
operator =
Definition at line 61 of file itkLevelOrderTreeIterator.h.
References itk::LevelOrderTreeIterator< TTreeType >::m_EndLevel, itk::LevelOrderTreeIterator< TTreeType >::m_Queue, itk::LevelOrderTreeIterator< TTreeType >::m_StartLevel, and itk::TreeIteratorBase< TTreeType >::operator=().
virtual TreeIteratorBase<TTreeType>* itk::TreeIteratorBase< TTreeType >::Parents | ( | ) | [virtual, inherited] |
Return a list of parents
bool itk::TreeIteratorBase< TTreeType >::Remove | ( | ) | [inherited] |
Remove the current node from the tree
virtual bool itk::TreeIteratorBase< TTreeType >::RemoveChild | ( | int | number | ) | [virtual, inherited] |
Remove a child
void itk::TreeIteratorBase< TTreeType >::Set | ( | ValueType | element | ) | [inherited] |
Set the current value of the node
TreeNodeType* itk::TreeIteratorBase< TTreeType >::m_Begin [mutable, protected, inherited] |
Definition at line 209 of file itkTreeIteratorBase.h.
Referenced by itk::ChildTreeIterator< TTreeType >::ChildTreeIterator(), itk::TreeIteratorBase< TTreeType >::GoToBegin(), itk::ChildTreeIterator< TTreeType >::GoToChild(), itk::ChildTreeIterator< TTreeType >::GoToParent(), itk::TreeIteratorBase< TTreeType >::IsAtBegin(), itk::LeafTreeIterator< TTreeType >::LeafTreeIterator(), itk::TreeIteratorBase< TTreeType >::operator=(), itk::PostOrderTreeIterator< TTreeType >::PostOrderTreeIterator(), and itk::RootTreeIterator< TTreeType >::RootTreeIterator().
TreeNodeType* itk::TreeIteratorBase< TTreeType >::m_End [mutable, protected, inherited] |
Definition at line 210 of file itkTreeIteratorBase.h.
Referenced by itk::TreeIteratorBase< TTreeType >::GoToEnd(), itk::TreeIteratorBase< TTreeType >::IsAtEnd(), and itk::TreeIteratorBase< TTreeType >::operator=().
TreeNodeType* itk::TreeIteratorBase< TTreeType >::m_Position [mutable, protected, inherited] |
Definition at line 208 of file itkTreeIteratorBase.h.
Referenced by itk::ChildTreeIterator< TTreeType >::ChildTreeIterator(), itk::RootTreeIterator< TTreeType >::Clone(), itk::PreOrderTreeIterator< TTreeType >::Clone(), itk::ChildTreeIterator< TTreeType >::Clone(), itk::PostOrderTreeIterator< TTreeType >::FindNextNode(), itk::LevelOrderTreeIterator< TTreeType >::GetLevel(), itk::TreeIteratorBase< TTreeType >::GoToBegin(), itk::ChildTreeIterator< TTreeType >::GoToChild(), itk::TreeIteratorBase< TTreeType >::GoToEnd(), itk::ChildTreeIterator< TTreeType >::GoToParent(), itk::LeafTreeIterator< TTreeType >::HasNext(), itk::TreeIteratorBase< TTreeType >::IsAtBegin(), itk::TreeIteratorBase< TTreeType >::IsAtEnd(), itk::RootTreeIterator< TTreeType >::Next(), itk::PreOrderTreeIterator< TTreeType >::Next(), itk::PostOrderTreeIterator< TTreeType >::Next(), itk::LevelOrderTreeIterator< TTreeType >::Next(), itk::LeafTreeIterator< TTreeType >::Next(), itk::InOrderTreeIterator< TTreeType >::Next(), itk::ChildTreeIterator< TTreeType >::Next(), itk::TreeIteratorBase< TTreeType >::operator=(), itk::PostOrderTreeIterator< TTreeType >::PostOrderTreeIterator(), and itk::RootTreeIterator< TTreeType >::RootTreeIterator().
const TreeNodeType* itk::TreeIteratorBase< TTreeType >::m_Root [protected, inherited] |
TTreeType* itk::TreeIteratorBase< TTreeType >::m_Tree [protected, inherited] |
Definition at line 212 of file itkTreeIteratorBase.h.
Referenced by itk::RootTreeIterator< TTreeType >::Clone(), itk::PreOrderTreeIterator< TTreeType >::Clone(), itk::PostOrderTreeIterator< TTreeType >::Clone(), itk::LevelOrderTreeIterator< TTreeType >::Clone(), itk::LeafTreeIterator< TTreeType >::Clone(), itk::InOrderTreeIterator< TTreeType >::Clone(), itk::ChildTreeIterator< TTreeType >::Clone(), and itk::TreeIteratorBase< TTreeType >::operator=().