ITK  5.1.0
Insight Toolkit
Public Types | Public Member Functions | 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 >:

Public Types

using ChildIdentifier = typename TreeNodeType::ChildIdentifier
 
using NodeType = typename Superclass::NodeType
 
using Self = ChildTreeIterator
 
using Superclass = TreeIteratorBase< TTreeType >
 
using TreeNodeType = typename Superclass::TreeNodeType
 
using TreeType = TTreeType
 
using ValueType = typename TTreeType::ValueType
 
- Public Types inherited from itk::TreeIteratorBase< TTreeType >
using ChildIdentifier = typename TreeNodeType::ChildIdentifier
 
using NodeType = TreeIteratorBaseNodeEnum
 
using Self = TreeIteratorBase
 
using TreeNodeType = typename TTreeType::TreeNodeType
 
using ValueType = typename TTreeType::ValueType
 

Public Member Functions

 ChildTreeIterator (const TreeIteratorBase< TTreeType > &iterator)
 
 ChildTreeIterator (TreeType *tree, const TreeNodeType *start=nullptr)
 
TreeIteratorBase< TTreeType > * Clone () override
 
NodeType GetType () const override
 
bool GoToChild (ChildIdentifier number=0) override
 
bool GoToParent () override
 
- Public Member Functions inherited from itk::TreeIteratorBase< TTreeType >
virtual bool Add (int position, ValueType element)
 
virtual bool Add (TTreeType &subTree)
 
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
 
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 () const
 
bool IsAtEnd () const
 
virtual bool IsLeaf () const
 
virtual bool IsRoot () const
 
virtual TreeIteratorBase< TTreeType > * Parents ()
 
bool Remove ()
 
virtual bool RemoveChild (int number)
 
void Set (ValueType element)
 
Selfoperator++ ()
 
void operator++ (int)
 
Selfoperator= (const Self &iterator)
 
virtual ~TreeIteratorBase ()=default
 
ChildIdentifier m_ListPosition
 
TreeNodeTypem_ParentNode
 
Selfoperator= (Superclass &iterator)
 
const ValueTypeNext () override
 
bool HasNext () const override
 

Additional Inherited Members

- Protected Member Functions inherited from itk::TreeIteratorBase< TTreeType >
 TreeIteratorBase (TTreeType *tree, const TreeNodeType *start)
 
 TreeIteratorBase (const TTreeType *tree, const TreeNodeType *start)
 
- Protected Attributes inherited from itk::TreeIteratorBase< TTreeType >
TreeNodeTypem_Position
 
TreeNodeTypem_Begin
 
const TreeNodeTypem_Root
 
TTreeType * m_Tree
 

Detailed Description

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

Examples
Examples/DataRepresentation/Containers/TreeContainer.cxx.

Definition at line 26 of file itkChildTreeIterator.h.

Member Typedef Documentation

◆ ChildIdentifier

template<typename TTreeType>
using itk::ChildTreeIterator< TTreeType >::ChildIdentifier = typename TreeNodeType::ChildIdentifier

Definition at line 35 of file itkChildTreeIterator.h.

◆ NodeType

template<typename TTreeType>
using itk::ChildTreeIterator< TTreeType >::NodeType = typename Superclass::NodeType

Definition at line 36 of file itkChildTreeIterator.h.

◆ Self

template<typename TTreeType>
using itk::ChildTreeIterator< TTreeType >::Self = ChildTreeIterator

Typedefs

Definition at line 30 of file itkChildTreeIterator.h.

◆ Superclass

template<typename TTreeType>
using itk::ChildTreeIterator< TTreeType >::Superclass = TreeIteratorBase<TTreeType>

Definition at line 31 of file itkChildTreeIterator.h.

◆ TreeNodeType

template<typename TTreeType>
using itk::ChildTreeIterator< TTreeType >::TreeNodeType = typename Superclass::TreeNodeType

Definition at line 34 of file itkChildTreeIterator.h.

◆ TreeType

template<typename TTreeType>
using itk::ChildTreeIterator< TTreeType >::TreeType = TTreeType

Definition at line 32 of file itkChildTreeIterator.h.

◆ ValueType

template<typename TTreeType>
using itk::ChildTreeIterator< TTreeType >::ValueType = typename TTreeType::ValueType

Definition at line 33 of file itkChildTreeIterator.h.

Constructor & Destructor Documentation

◆ ChildTreeIterator() [1/2]

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

Constructor

◆ ChildTreeIterator() [2/2]

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

Constructor

Member Function Documentation

◆ Clone()

template<typename TTreeType>
TreeIteratorBase<TTreeType>* itk::ChildTreeIterator< TTreeType >::Clone ( )
overridevirtual

Clone function

Implements itk::TreeIteratorBase< TTreeType >.

◆ GetType()

template<typename TTreeType>
NodeType itk::ChildTreeIterator< TTreeType >::GetType ( ) const
overridevirtual

Get the type of the iterator

Implements itk::TreeIteratorBase< TTreeType >.

◆ GoToChild()

template<typename TTreeType>
bool itk::ChildTreeIterator< TTreeType >::GoToChild ( ChildIdentifier  number = 0)
overridevirtual

Go to a specific child node

Reimplemented from itk::TreeIteratorBase< TTreeType >.

◆ GoToParent()

template<typename TTreeType>
bool itk::ChildTreeIterator< TTreeType >::GoToParent ( )
overridevirtual

Go to a parent node

Reimplemented from itk::TreeIteratorBase< TTreeType >.

◆ HasNext()

template<typename TTreeType>
bool itk::ChildTreeIterator< TTreeType >::HasNext ( ) const
overrideprotectedvirtual

Return true if the next value exists

Implements itk::TreeIteratorBase< TTreeType >.

◆ Next()

template<typename TTreeType>
const ValueType& itk::ChildTreeIterator< TTreeType >::Next ( )
overrideprotectedvirtual

Get the next value

Implements itk::TreeIteratorBase< TTreeType >.

◆ operator=()

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

operator =

Definition at line 62 of file itkChildTreeIterator.h.

References itk::ChildTreeIterator< TTreeType >::m_ListPosition.

Member Data Documentation

◆ m_ListPosition

template<typename TTreeType>
ChildIdentifier itk::ChildTreeIterator< TTreeType >::m_ListPosition
mutableprivate

operator =

Definition at line 85 of file itkChildTreeIterator.h.

Referenced by itk::ChildTreeIterator< TTreeType >::operator=().

◆ m_ParentNode

template<typename TTreeType>
TreeNodeType* itk::ChildTreeIterator< TTreeType >::m_ParentNode
private

operator =

Definition at line 86 of file itkChildTreeIterator.h.


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