C3D Kernel  104065
Открытые типы | Открытые члены | Защищенные члены | Защищенные данные
Шаблон класса BalanceTreeIterator< Type >

Итератор сбалансированного дерева. Подробнее...

Граф связей класса BalanceTreeIterator< Type >:
Collaboration graph
[см. легенду]

Полный список членов класса

Открытые типы

enum  IteratorType {
  iDeforder = 0, iPreorder = 1, iInorder = 2, iPostorder = 3,
  iBackorder = 4
}
 Типы движения по дереву. Подробнее...

Открытые члены

 BalanceTreeIterator (BalanceTree< Type > &tree, IteratorType t=iPreorder)
Type * operator++ (int)
virtual operator Type * () const
virtual void Restart (IteratorType t=iDeforder)

Защищенные члены

void Iterate (BalanceTreeNode< Type > *node)
PPNode< Type >::PPNodeType GetNodeType (bool add, typename PPNode< Type >::PPNodeType oldTypeRAB)

Защищенные данные

BalanceTree< Type > & m_tree
 Дерево, по которому движемся.
IteratorType m_iterType
 Тип движения.
SArray< PPNode< Type > > m_PPNodes
 Последовательный список узлов итератора(имитация рекурсии).
PPNode< Type > m_PPNode
 Для наполнения.
BalanceTreeNode< Type > * m_CurNode
 Текущий узел.

Подробное описание

template<class Type>
class BalanceTreeIterator< Type >

Итератор сбалансированного дерева.


Перечисления

template<class Type >
enum BalanceTreeIterator::IteratorType
Элементы перечислений:
iDeforder 

Умолчательный.

iPreorder 

Сверху вниз R(корень), A(слева), B(справа).

iInorder 

Слева направо A(слева), R(корень), B(справа) по возрастанию.

iPostorder 

Снизу вверх A(слева), B(справа), R(корень).

iBackorder 

Справа налево B(справа), R(корень), A(слева) по убыванию.


Объявления и описания членов класса находятся в файле:
 Указатель Классы Пространства имен Файлы Функции Переменные Определения типов Перечисления Элементы перечислений Друзья Макросы