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

Cбалансированное дерево. Подробнее...

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

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

typedef ThreeStates(* Compare_t )(const Type *, const Type *)
typedef ThreeStates(* Compare_v )(const Type *, const void *)
typedef void(* IterFunc )(Type &, void *)

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

 BalanceTree (Compare_t c_t=SimplePointCompFuncT, Compare_v c_v=NULL, bool shouldDelete=true)
 Конструктор.
virtual ~BalanceTree ()
 Деструктор.
bool Add (Type *)
 Добавить элемент.
size_t Count () const
 Получить количество элементов.
void Flush (DelType=defDelete)
 Удалить все элементы.
bool Remove (Type *delObject, DelType=defDelete)
 Удалить элемент из массива.
bool FindIt (const Type *) const
 Найти элемент по указателю.
Type * Find (void *) const
 Найти элемент.
bool Detach (const Type *)
 Отсоединить объект.
void ForEach (IterFunc f, void *pars)

Открытые атрибуты

BalanceTreeNode< Type > * root_m
 Корень дерева.
size_t allCount_m
 Количество.
bool owns_m
 Можно ли удалять элементы.
bool isBranchGrew_m
 Флаг роста дерева.
Compare_t compT_m
 Функция сортировки используется при добавлении объекта.
Compare_v compV_m
 Функция сортировки используется при поиске объекта.

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

bool AddToBalanceTree (Type &content, BalanceTreeNode< Type > *&node, bool &isBranchGrew)
 Добавить объект в дерево.
bool DeleteFromBalanceTree (Type &content, BalanceTreeNode< Type > *&node, bool &isBranchGrew, DelType del)
 Удалить объект из дерева.
void BalanceL (BalanceTreeNode< Type > *&node, bool &isBranchGrew)
 Балансировать левую ветвь.
void BalanceR (BalanceTreeNode< Type > *&node, bool &isBranchGrew)
 Балансировать правую ветвь.
bool DelFromBalanceTree (BalanceTreeNode< Type > *&q, BalanceTreeNode< Type > *&r, bool &isBranchGrew)

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

template<class Type>
class BalanceTree< Type >

Cбалансированное дерево.


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