Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::PreOrderTreeIterator< TTreeType > Class Template Reference

#include <itkPreOrderTreeIterator.h>

Inheritance diagram for itk::PreOrderTreeIterator< TTreeType >:
Inheritance graph
[legend]
Collaboration diagram for itk::PreOrderTreeIterator< TTreeType >:
Collaboration graph
[legend]

List of all members.

Public Types

enum  {
  UNDEFIND = 0,
  PREORDER = 1,
  INORDER = 2,
  POSTORDER = 3,
  LEVELORDER = 4,
  CHILD = 5,
  ROOT = 6,
  LEAF = 7
}
typedef TreeIteratorBase Self
typedef TreeIteratorBase
< TTreeType > 
Superclass
typedef Superclass::TreeNodeType TreeNodeType
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 ValueTypeGet () const
virtual TreeIteratorBase
< TTreeType > * 
GetChild (int number) const
const TreeNodeTypeGetParent () 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)
Selfoperator++ ()
virtual TreeIteratorBase
< TTreeType > * 
Parents ()
 PreOrderTreeIterator (const TTreeType *tree, const TreeNodeType *start=NULL)
bool Remove ()
virtual bool RemoveChild (int number)
void Set (ValueType element)



virtual const TreeNodeTypeGetNode () const
virtual TreeNodeTypeGetNode ()
const TreeNodeTypeGetRoot () const
TreeNodeTypeGetRoot ()

Protected Attributes

TreeNodeTypem_Begin
TreeNodeTypem_End
TreeNodeTypem_Position
const TreeNodeTypem_Root
TTreeType * m_Tree



TreeIteratorBase< TTreeType > * Clone ()
bool HasNext () const
const ValueTypeNext ()

Detailed Description

template<class TTreeType>
class itk::PreOrderTreeIterator< TTreeType >

Definition at line 25 of file itkPreOrderTreeIterator.h.


Member Typedef Documentation

template<class TTreeType>
typedef TreeIteratorBase itk::TreeIteratorBase< TTreeType >::Self [inherited]
template<class TTreeType>
typedef TreeIteratorBase<TTreeType> itk::PreOrderTreeIterator< TTreeType >::Superclass

Definition at line 31 of file itkPreOrderTreeIterator.h.

template<class TTreeType>
typedef Superclass::TreeNodeType itk::PreOrderTreeIterator< TTreeType >::TreeNodeType

Reimplemented from itk::TreeIteratorBase< TTreeType >.

Definition at line 32 of file itkPreOrderTreeIterator.h.

template<class TTreeType>
typedef TTreeType::ValueType itk::PreOrderTreeIterator< TTreeType >::ValueType

Typedefs

Reimplemented from itk::TreeIteratorBase< TTreeType >.

Definition at line 30 of file itkPreOrderTreeIterator.h.


Member Enumeration Documentation

template<class TTreeType>
anonymous enum [inherited]

Enumerations

Enumerator:
UNDEFIND 
PREORDER 
INORDER 
POSTORDER 
LEVELORDER 
CHILD 
ROOT 
LEAF 

Definition at line 162 of file itkTreeIteratorBase.h.


Constructor & Destructor Documentation

template<class TTreeType >
itk::PreOrderTreeIterator< TTreeType >::PreOrderTreeIterator ( const TTreeType *  tree,
const TreeNodeType start = NULL 
) [inline]

Constructor

Definition at line 60 of file itkPreOrderTreeIterator.h.


Member Function Documentation

template<class TTreeType>
virtual bool itk::TreeIteratorBase< TTreeType >::Add ( TTreeType &  subTree  )  [virtual, inherited]

Add a subtree

template<class TTreeType>
virtual bool itk::TreeIteratorBase< TTreeType >::Add ( int  position,
ValueType  element 
) [virtual, inherited]

Add an element at a given position

template<class TTreeType>
virtual bool itk::TreeIteratorBase< TTreeType >::Add ( ValueType  element  )  [virtual, inherited]

Add an element to the tree

template<class TTreeType>
virtual int itk::TreeIteratorBase< TTreeType >::ChildPosition ( ValueType  element  )  const [virtual, inherited]

Return the current ChildPosition of an element

template<class TTreeType>
virtual TreeIteratorBase<TTreeType>* itk::TreeIteratorBase< TTreeType >::Children (  )  [virtual, inherited]

Return a list of children

template<class TTreeType >
TreeIteratorBase< TTreeType > * itk::PreOrderTreeIterator< TTreeType >::Clone (  )  [inline, virtual]
template<class TTreeType>
virtual int itk::TreeIteratorBase< TTreeType >::Count (  )  [virtual, inherited]

Count the number of nodes

template<class TTreeType>
virtual int itk::TreeIteratorBase< TTreeType >::CountChildren (  )  const [virtual, inherited]

Count the number of children

Referenced by itk::ChildTreeIterator< TTreeType >::HasNext().

template<class TTreeType>
virtual bool itk::TreeIteratorBase< TTreeType >::Disconnect (  )  [virtual, inherited]

Disconnect the tree

template<class TTreeType>
virtual const ValueType& itk::TreeIteratorBase< TTreeType >::Get (  )  const [virtual, inherited]

Get a value

template<class TTreeType>
virtual TreeIteratorBase<TTreeType>* itk::TreeIteratorBase< TTreeType >::GetChild ( int  number  )  const [virtual, inherited]

Return a list of child

template<class TTreeType>
virtual const TreeNodeType* itk::TreeIteratorBase< TTreeType >::GetNode (  )  const [virtual, inherited]

Get the current node

template<class TTreeType>
virtual TreeNodeType* itk::TreeIteratorBase< TTreeType >::GetNode (  )  [virtual, inherited]

Get the current node

template<class TTreeType>
const TreeNodeType* itk::TreeIteratorBase< TTreeType >::GetParent (  )  const [inherited]

Return the first parent found

template<class TTreeType>
const TreeNodeType* itk::TreeIteratorBase< TTreeType >::GetRoot (  )  const [inherited]

Get the current node

template<class TTreeType>
TreeNodeType* itk::TreeIteratorBase< TTreeType >::GetRoot (  )  [inherited]

Get the root

template<class TTreeType>
virtual TTreeType* itk::TreeIteratorBase< TTreeType >::GetSubTree (  )  const [virtual, inherited]

Get the subtree

template<class TTreeType>
TTreeType* itk::TreeIteratorBase< TTreeType >::GetTree (  )  const [inherited]

Get the tree

template<class TTreeType >
int itk::PreOrderTreeIterator< TTreeType >::GetType ( void   )  const [inline, virtual]

Get the type of the iterator

Return the type of the iterator

Implements itk::TreeIteratorBase< TTreeType >.

Definition at line 69 of file itkPreOrderTreeIterator.h.

template<class TTreeType>
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.

template<class TTreeType>
virtual bool itk::TreeIteratorBase< TTreeType >::GoToChild ( int  number = 0  )  [virtual, inherited]

Go to the specified child

Reimplemented in itk::ChildTreeIterator< TTreeType >.

template<class 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.

template<class TTreeType>
virtual bool itk::TreeIteratorBase< TTreeType >::GoToParent (  )  [virtual, inherited]

Go to the parent

Reimplemented in itk::ChildTreeIterator< TTreeType >.

template<class TTreeType>
virtual bool itk::TreeIteratorBase< TTreeType >::HasChild ( int  number = 0  )  const [virtual, inherited]

Return true if the current node has a child

template<class TTreeType >
bool itk::PreOrderTreeIterator< TTreeType >::HasNext (  )  const [inline, protected, virtual]

Return true if the next node exists

Implements itk::TreeIteratorBase< TTreeType >.

Definition at line 77 of file itkPreOrderTreeIterator.h.

References NULL.

template<class TTreeType>
virtual bool itk::TreeIteratorBase< TTreeType >::HasParent (  )  const [virtual, inherited]

Return true if the current node has a parent

template<class TTreeType>
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.

template<class TTreeType>
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 153 of file itkTreeIteratorBase.h.

References itk::TreeIteratorBase< TTreeType >::m_End, and itk::TreeIteratorBase< TTreeType >::m_Position.

template<class TTreeType>
virtual bool itk::TreeIteratorBase< TTreeType >::IsLeaf (  )  const [virtual, inherited]

Return true if the current node is a leaf

template<class TTreeType>
virtual bool itk::TreeIteratorBase< TTreeType >::IsRoot (  )  const [virtual, inherited]

Return true if the current node is a root

template<class TTreeType >
const PreOrderTreeIterator< TTreeType >::ValueType & itk::PreOrderTreeIterator< TTreeType >::Next (  )  [inline, protected, virtual]

Return the next node

Implements itk::TreeIteratorBase< TTreeType >.

Definition at line 90 of file itkPreOrderTreeIterator.h.

References itk::TreeIteratorBase< TTreeType >::m_Position.

template<class TTreeType>
void itk::TreeIteratorBase< TTreeType >::operator++ ( int   )  [inline, inherited]

operator++

Definition at line 183 of file itkTreeIteratorBase.h.

References itk::TreeIteratorBase< TTreeType >::Next().

template<class TTreeType>
Self& itk::TreeIteratorBase< TTreeType >::operator++ (  )  [inline, inherited]

operator++

Definition at line 175 of file itkTreeIteratorBase.h.

References itk::TreeIteratorBase< TTreeType >::Next().

template<class TTreeType>
virtual TreeIteratorBase<TTreeType>* itk::TreeIteratorBase< TTreeType >::Parents (  )  [virtual, inherited]

Return a list of parents

template<class TTreeType>
bool itk::TreeIteratorBase< TTreeType >::Remove (  )  [inherited]

Remove the current node from the tree

template<class TTreeType>
virtual bool itk::TreeIteratorBase< TTreeType >::RemoveChild ( int  number  )  [virtual, inherited]

Remove a child

template<class TTreeType>
void itk::TreeIteratorBase< TTreeType >::Set ( ValueType  element  )  [inherited]

Set the current value of the node


Member Data Documentation

template<class TTreeType>
TreeNodeType* itk::TreeIteratorBase< TTreeType >::m_Begin [mutable, protected, inherited]
template<class TTreeType>
TreeNodeType* itk::TreeIteratorBase< TTreeType >::m_End [mutable, protected, inherited]
template<class TTreeType>
TreeNodeType* itk::TreeIteratorBase< TTreeType >::m_Position [mutable, protected, inherited]
template<class TTreeType>
const TreeNodeType* itk::TreeIteratorBase< TTreeType >::m_Root [protected, inherited]
template<class TTreeType>
TTreeType* itk::TreeIteratorBase< TTreeType >::m_Tree [protected, inherited]

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

Generated at Fri Apr 16 23:55:07 2010 for ITK by doxygen 1.6.1 written by Dimitri van Heesch, © 1997-2000