ITK  4.4.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Protected Member Functions | Private Attributes | List of all members
itk::ChildTreeIterator< TTreeType > Class Template Reference

#include <itkChildTreeIterator.h>

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

Detailed Description

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

Definition at line 26 of file itkChildTreeIterator.h.

Public Types

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

Public Member Functions

 ChildTreeIterator (TreeType *tree, const TreeNodeType *start=NULL)
 
 ChildTreeIterator (const TreeIteratorBase< TTreeType > &iterator)
 
TreeIteratorBase< TTreeType > * Clone ()
 
NodeType GetType () const
 
virtual bool GoToChild (ChildIdentifier number=0)
 
virtual bool GoToParent ()
 
Selfoperator= (Superclass &iterator)
 
- Public Member Functions inherited from itk::TreeIteratorBase< TTreeType >
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 ()
 
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
 
void GoToBegin ()
 
void GoToEnd ()
 
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
 
virtual TreeIteratorBase
< TTreeType > * 
Parents ()
 
bool Remove ()
 
virtual bool RemoveChild (int number)
 
void Set (ValueType element)
 
virtual ~TreeIteratorBase ()
 
Selfoperator++ ()
 
void operator++ (int)
 
const Selfoperator= (const Self &iterator)
 

Protected Member Functions

bool HasNext () const
 
const ValueTypeNext ()
 
- Protected Member Functions inherited from itk::TreeIteratorBase< TTreeType >
 TreeIteratorBase (TTreeType *tree, const TreeNodeType *start)
 
 TreeIteratorBase (const TTreeType *tree, const TreeNodeType *start)
 

Private Attributes

ChildIdentifier m_ListPosition
 
TreeNodeTypem_ParentNode
 

Additional Inherited Members

- Protected Attributes inherited from itk::TreeIteratorBase< TTreeType >
TreeNodeTypem_Begin
 
TreeNodeTypem_End
 
TreeNodeTypem_Position
 
const TreeNodeTypem_Root
 
TTreeType * m_Tree
 

Member Typedef Documentation

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

Definition at line 36 of file itkChildTreeIterator.h.

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

Definition at line 37 of file itkChildTreeIterator.h.

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

Typedefs

Definition at line 31 of file itkChildTreeIterator.h.

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

Definition at line 32 of file itkChildTreeIterator.h.

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

Definition at line 35 of file itkChildTreeIterator.h.

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

Definition at line 33 of file itkChildTreeIterator.h.

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

Definition at line 34 of file itkChildTreeIterator.h.

Constructor & Destructor Documentation

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

Constructor

template<class TTreeType>
itk::ChildTreeIterator< TTreeType >::ChildTreeIterator ( const TreeIteratorBase< TTreeType > &  iterator)

Constructor

Member Function Documentation

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

Clone function

Implements itk::TreeIteratorBase< TTreeType >.

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

Get the type of the iterator

Implements itk::TreeIteratorBase< TTreeType >.

template<class TTreeType>
virtual bool itk::ChildTreeIterator< TTreeType >::GoToChild ( ChildIdentifier  number = 0)
virtual

Go to a specific child node

Reimplemented from itk::TreeIteratorBase< TTreeType >.

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

Go to a parent node

Reimplemented from itk::TreeIteratorBase< TTreeType >.

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

Return true if the next value exists

Implements itk::TreeIteratorBase< TTreeType >.

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

Get the next value

Implements itk::TreeIteratorBase< TTreeType >.

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

Member Data Documentation

template<class TTreeType>
ChildIdentifier itk::ChildTreeIterator< TTreeType >::m_ListPosition
mutableprivate
template<class TTreeType>
TreeNodeType* itk::ChildTreeIterator< TTreeType >::m_ParentNode
private

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