Orfeo Toolbox  3.16
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes
itk::ChildTreeIterator< TTreeType > Class Template Reference

#include <itkChildTreeIterator.h>

+ Inheritance diagram for itk::ChildTreeIterator< TTreeType >:
+ Collaboration diagram for itk::ChildTreeIterator< TTreeType >:

List of all members.

Public Types

enum  {
  UNDEFIND = 0,
  PREORDER = 1,
  INORDER = 2,
  POSTORDER = 3,
  LEVELORDER = 4,
  CHILD = 5,
  ROOT = 6,
  LEAF = 7
}
typedef ChildTreeIterator Self
typedef TreeIteratorBase
< TTreeType > 
Superclass
typedef Superclass::TreeNodeType TreeNodeType
typedef TTreeType TreeType
typedef TTreeType::ValueType ValueType

Public Member Functions

 ChildTreeIterator (TreeType *tree, const TreeNodeType *start=NULL)
 ChildTreeIterator (const TreeIteratorBase< TTreeType > &iterator)
virtual bool Add (ValueType element)
virtual bool Add (int position, ValueType element)
virtual bool Add (TTreeType &subTree)
virtual int ChildPosition (ValueType element) const
virtual TreeIteratorBase
< TTreeType > * 
Children ()
TreeIteratorBase< TTreeType > * Clone ()
virtual int Count ()
virtual int CountChildren () const
virtual bool Disconnect ()
virtual const ValueTypeGet () const
virtual TreeIteratorBase
< TTreeType > * 
GetChild (int number) const
virtual TreeNodeTypeGetNode ()
virtual const TreeNodeTypeGetNode () const
const TreeNodeTypeGetParent () const
TreeNodeTypeGetRoot ()
const TreeNodeTypeGetRoot () 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
Selfoperator++ ()
void operator++ (int)
Selfoperator= (Superclass &iterator)
virtual TreeIteratorBase
< TTreeType > * 
Parents ()
bool Remove ()
virtual bool RemoveChild (int number)
void Set (ValueType element)

Protected Member Functions

bool HasNext () const
const ValueTypeNext ()

Protected Attributes

TreeNodeTypem_Begin
TreeNodeTypem_End
TreeNodeTypem_Position
const TreeNodeTypem_Root
TTreeType * m_Tree

Private Attributes

int m_ListPosition
TreeNode< ValueType > * m_ParentNode

Detailed Description

template<class TTreeType>
class itk::ChildTreeIterator< TTreeType >

Definition at line 27 of file itkChildTreeIterator.h.


Member Typedef Documentation

template<class TTreeType>
typedef ChildTreeIterator itk::ChildTreeIterator< TTreeType >::Self

Typedefs

Reimplemented from itk::TreeIteratorBase< TTreeType >.

Definition at line 32 of file itkChildTreeIterator.h.

template<class TTreeType>
typedef TreeIteratorBase<TTreeType> itk::ChildTreeIterator< TTreeType >::Superclass

Definition at line 33 of file itkChildTreeIterator.h.

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

Reimplemented from itk::TreeIteratorBase< TTreeType >.

Definition at line 36 of file itkChildTreeIterator.h.

template<class TTreeType>
typedef TTreeType itk::ChildTreeIterator< TTreeType >::TreeType

Definition at line 34 of file itkChildTreeIterator.h.

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

Reimplemented from itk::TreeIteratorBase< TTreeType >.

Definition at line 35 of file itkChildTreeIterator.h.


Member Enumeration Documentation

template<class TTreeType>
anonymous enum
inherited

Enumerations

Enumerator:
UNDEFIND 
PREORDER 
INORDER 
POSTORDER 
LEVELORDER 
CHILD 
ROOT 
LEAF 

Definition at line 160 of file itkTreeIteratorBase.h.


Constructor & Destructor Documentation

template<class TTreeType >
itk::ChildTreeIterator< TTreeType >::ChildTreeIterator ( TreeType tree,
const TreeNodeType start = NULL 
)
template<class TTreeType >
itk::ChildTreeIterator< TTreeType >::ChildTreeIterator ( const TreeIteratorBase< TTreeType > &  iterator)

Member Function Documentation

template<class TTreeType >
bool itk::TreeIteratorBase< TTreeType >::Add ( ValueType  element)
virtualinherited

Add an element to the tree

Add a value to the node. This creates a new child node

Definition at line 85 of file itkTreeIteratorBase.txx.

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

Referenced by itk::TreeContainer< TValueType >::Add(), and main().

template<class TTreeType >
bool itk::TreeIteratorBase< TTreeType >::Add ( int  position,
ValueType  element 
)
virtualinherited

Add an element at a given position

Add a new element at a given position

Definition at line 123 of file itkTreeIteratorBase.txx.

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

template<class TTreeType >
bool itk::TreeIteratorBase< TTreeType >::Add ( TTreeType &  subTree)
virtualinherited

Add a subtree

Definition at line 171 of file itkTreeIteratorBase.txx.

References NULL.

template<class TTreeType >
int itk::TreeIteratorBase< TTreeType >::ChildPosition ( ValueType  element) const
virtualinherited

Return the current ChildPosition of an element

Return the current position of the child

Definition at line 228 of file itkTreeIteratorBase.txx.

template<class TTreeType >
TreeIteratorBase< TTreeType > * itk::TreeIteratorBase< TTreeType >::Children ( )
virtualinherited

Return a list of children

Return the children list

Definition at line 320 of file itkTreeIteratorBase.txx.

template<class TTreeType >
TreeIteratorBase< TTreeType > * itk::ChildTreeIterator< TTreeType >::Clone ( )
virtual

Clone function

Implements itk::TreeIteratorBase< TTreeType >.

Definition at line 174 of file itkChildTreeIterator.h.

Referenced by main().

template<class TTreeType >
int itk::TreeIteratorBase< TTreeType >::Count ( )
virtualinherited

Count the number of nodes

Count the number of nodes from the beginning

Definition at line 410 of file itkTreeIteratorBase.txx.

template<class TTreeType >
int itk::TreeIteratorBase< TTreeType >::CountChildren ( ) const
virtualinherited

Count the number of children

Definition at line 266 of file itkTreeIteratorBase.txx.

References NULL.

template<class TTreeType >
bool itk::TreeIteratorBase< TTreeType >::Disconnect ( )
virtualinherited

Disconnect the tree

Definition at line 286 of file itkTreeIteratorBase.txx.

References NULL.

template<class TTreeType >
const TreeIteratorBase< TTreeType >::ValueType & itk::TreeIteratorBase< TTreeType >::Get ( void  ) const
virtualinherited
template<class TTreeType >
TreeIteratorBase< TTreeType > * itk::TreeIteratorBase< TTreeType >::GetChild ( int  number) const
virtualinherited

Return a list of child

Get a child given a number

Definition at line 391 of file itkTreeIteratorBase.txx.

References NULL.

template<class TTreeType >
TreeIteratorBase< TTreeType >::TreeNodeType * itk::TreeIteratorBase< TTreeType >::GetNode ( )
virtualinherited
template<class TTreeType >
const TreeIteratorBase< TTreeType >::TreeNodeType * itk::TreeIteratorBase< TTreeType >::GetNode ( ) const
virtualinherited

Get the node pointed by the iterator

Definition at line 436 of file itkTreeIteratorBase.txx.

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

Return the first parent found

Definition at line 332 of file itkTreeIteratorBase.txx.

References NULL.

Referenced by itk::TreeContainer< TValueType >::PrintSelf().

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

Get the root

Definition at line 444 of file itkTreeIteratorBase.txx.

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

Get the root (const)

Definition at line 452 of file itkTreeIteratorBase.txx.

template<class TTreeType >
TTreeType * itk::TreeIteratorBase< TTreeType >::GetSubTree ( ) const
virtualinherited

Get the subtree

Return the subtree

Definition at line 201 of file itkTreeIteratorBase.txx.

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

Get the tree

Return the tree

Definition at line 501 of file itkTreeIteratorBase.txx.

template<class TTreeType >
int itk::ChildTreeIterator< TTreeType >::GetType ( void  ) const
virtual

Get the type of the iterator

Return the type of the iterator

Implements itk::TreeIteratorBase< TTreeType >.

Definition at line 142 of file itkChildTreeIterator.h.

Referenced by main().

template<class TTreeType>
void itk::TreeIteratorBase< TTreeType >::GoToBegin ( void  )
inlineinherited
template<class TTreeType >
bool itk::ChildTreeIterator< TTreeType >::GoToChild ( int  number = 0)
virtual

Go to a specific child node

Go to a specific child

Reimplemented from itk::TreeIteratorBase< TTreeType >.

Definition at line 106 of file itkChildTreeIterator.h.

References NULL.

template<class TTreeType>
void itk::TreeIteratorBase< TTreeType >::GoToEnd ( void  )
inlineinherited

Move an iterator to the end of the tree.

Definition at line 138 of file itkTreeIteratorBase.h.

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

template<class TTreeType >
bool itk::ChildTreeIterator< TTreeType >::GoToParent ( )
virtual

Go to a parent node

Go to the parent node

Reimplemented from itk::TreeIteratorBase< TTreeType >.

Definition at line 123 of file itkChildTreeIterator.h.

References itk::TreeNode< TValueType >::GetChild(), itk::TreeNode< TValueType >::GetParent(), and NULL.

Referenced by main().

template<class TTreeType >
bool itk::TreeIteratorBase< TTreeType >::HasChild ( int  number = 0) const
virtualinherited

Return true if the current node has a child

Return true of the current node has a child

Definition at line 212 of file itkTreeIteratorBase.txx.

References NULL.

Referenced by itk::LeafTreeIterator< TTreeType >::FindNextNode().

template<class TTreeType >
bool itk::ChildTreeIterator< TTreeType >::HasNext ( ) const
protectedvirtual

Return true if the next value exists

Return true if the next node exists

Implements itk::TreeIteratorBase< TTreeType >.

Definition at line 150 of file itkChildTreeIterator.h.

template<class TTreeType >
bool itk::TreeIteratorBase< TTreeType >::HasParent ( ) const
virtualinherited

Return true if the current node has a parent

Return true of the pointed node has a parent

Definition at line 278 of file itkTreeIteratorBase.txx.

References NULL.

Referenced by itk::TreeContainer< TValueType >::IsRoot(), and otb::VectorData< TPrecision, VDimension, TValuePrecision >::PrintSelf().

template<class TTreeType>
bool itk::TreeIteratorBase< TTreeType >::IsAtBegin ( void  ) const
inlineinherited

Is the iterator at the beginning of the tree?

Definition at line 144 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
inlineinherited
template<class TTreeType >
bool itk::TreeIteratorBase< TTreeType >::IsLeaf ( ) const
virtualinherited

Return true if the current node is a leaf

Return true if the current pointed node is a leaf

Definition at line 146 of file itkTreeIteratorBase.txx.

Referenced by itk::TreeContainer< TValueType >::IsLeaf().

template<class TTreeType >
bool itk::TreeIteratorBase< TTreeType >::IsRoot ( ) const
virtualinherited

Return true if the current node is a root

Return true if the current pointed node is a root

Definition at line 154 of file itkTreeIteratorBase.txx.

References NULL.

template<class TTreeType >
const ChildTreeIterator< TTreeType >::ValueType & itk::ChildTreeIterator< TTreeType >::Next ( )
protectedvirtual

Get the next value

Return the next node

Implements itk::TreeIteratorBase< TTreeType >.

Definition at line 165 of file itkChildTreeIterator.h.

template<class TTreeType>
Self& itk::TreeIteratorBase< TTreeType >::operator++ ( )
inlineinherited

operator++

Definition at line 173 of file itkTreeIteratorBase.h.

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

template<class TTreeType>
void itk::TreeIteratorBase< TTreeType >::operator++ ( int  )
inlineinherited

operator++

Definition at line 180 of file itkTreeIteratorBase.h.

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

template<class TTreeType>
Self& itk::ChildTreeIterator< TTreeType >::operator= ( Superclass iterator)
inline
template<class TTreeType >
TreeIteratorBase< TTreeType > * itk::TreeIteratorBase< TTreeType >::Parents ( )
virtualinherited

Return a list of parents

Return the list of parents

Definition at line 344 of file itkTreeIteratorBase.txx.

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

Remove the current node from the tree

Remove a specific node (and its child nodes!)

Definition at line 460 of file itkTreeIteratorBase.txx.

References NULL.

Referenced by itk::TreeContainer< TValueType >::Clear(), and otb::VectorDataEditionModel::DeleteSelectedGeometriesInROI().

template<class TTreeType >
bool itk::TreeIteratorBase< TTreeType >::RemoveChild ( int  number)
virtualinherited

Remove a child

Definition at line 240 of file itkTreeIteratorBase.txx.

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

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

Set the current value of the node

Definition at line 74 of file itkTreeIteratorBase.txx.


Member Data Documentation

template<class TTreeType>
TreeNodeType* itk::TreeIteratorBase< TTreeType >::m_Begin
mutableprotectedinherited
template<class TTreeType>
TreeNodeType* itk::TreeIteratorBase< TTreeType >::m_End
mutableprotectedinherited
template<class TTreeType>
int itk::ChildTreeIterator< TTreeType >::m_ListPosition
mutableprivate
template<class TTreeType>
TreeNode<ValueType>* itk::ChildTreeIterator< TTreeType >::m_ParentNode
private
template<class TTreeType>
TreeNodeType* itk::TreeIteratorBase< TTreeType >::m_Position
mutableprotectedinherited
template<class TTreeType>
const TreeNodeType* itk::TreeIteratorBase< TTreeType >::m_Root
protectedinherited
template<class TTreeType>
TTreeType* itk::TreeIteratorBase< TTreeType >::m_Tree
protectedinherited

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

Generated at Sun Feb 3 2013 01:21:00 for Orfeo Toolbox with doxygen 1.8.1.1