HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UT_BidirectionalTree< T > Class Template Reference

#include <UT_BidirectionalTree.h>

Public Types

typedef UT_BidirectionalTree< TNodeType
 

Public Member Functions

 UT_BidirectionalTree ()
 
virtual ~UT_BidirectionalTree ()
 
void unlinkAll ()
 Unlink this node from the tree completely. More...
 
void setParent (NodeType *parent)
 
void addChildToHead (NodeType *child)
 Add a child node to the head of the children list. O(1) More...
 
void removeChild (NodeType *child)
 Remove the given child node. More...
 
void removeAllChildren ()
 Remove all children from the tree. More...
 
TgetParent () const
 Iterators. More...
 
TgetFirstChild () const
 Iterators. More...
 
TgetPrevSibling () const
 Iterators. More...
 
TgetNextSibling () const
 Iterators. More...
 
bool hasParent () const
 Some utility methods. More...
 
bool hasChildren () const
 Some utility methods. More...
 
bool hasSiblings () const
 Some utility methods. More...
 
bool isInTree () const
 Some utility methods. More...
 

Detailed Description

template<typename T>
class UT_BidirectionalTree< T >

Definition at line 31 of file UT_BidirectionalTree.h.

Member Typedef Documentation

template<typename T >
typedef UT_BidirectionalTree<T> UT_BidirectionalTree< T >::NodeType

Definition at line 34 of file UT_BidirectionalTree.h.

Constructor & Destructor Documentation

template<typename T >
UT_BidirectionalTree< T >::UT_BidirectionalTree ( )
inline

Definition at line 36 of file UT_BidirectionalTree.h.

template<typename T >
virtual UT_BidirectionalTree< T >::~UT_BidirectionalTree ( )
inlinevirtual

Definition at line 43 of file UT_BidirectionalTree.h.

Member Function Documentation

template<typename T >
void UT_BidirectionalTree< T >::addChildToHead ( NodeType child)
inline

Add a child node to the head of the children list. O(1)

Definition at line 77 of file UT_BidirectionalTree.h.

template<typename T >
T* UT_BidirectionalTree< T >::getFirstChild ( ) const
inline

Iterators.

Definition at line 124 of file UT_BidirectionalTree.h.

template<typename T >
T* UT_BidirectionalTree< T >::getNextSibling ( ) const
inline

Iterators.

Definition at line 132 of file UT_BidirectionalTree.h.

template<typename T >
T* UT_BidirectionalTree< T >::getParent ( ) const
inline

Iterators.

Definition at line 119 of file UT_BidirectionalTree.h.

template<typename T >
T* UT_BidirectionalTree< T >::getPrevSibling ( ) const
inline

Iterators.

Definition at line 128 of file UT_BidirectionalTree.h.

template<typename T >
bool UT_BidirectionalTree< T >::hasChildren ( ) const
inline

Some utility methods.

Definition at line 141 of file UT_BidirectionalTree.h.

template<typename T >
bool UT_BidirectionalTree< T >::hasParent ( ) const
inline

Some utility methods.

Definition at line 140 of file UT_BidirectionalTree.h.

template<typename T >
bool UT_BidirectionalTree< T >::hasSiblings ( ) const
inline

Some utility methods.

Definition at line 142 of file UT_BidirectionalTree.h.

template<typename T >
bool UT_BidirectionalTree< T >::isInTree ( ) const
inline

Some utility methods.

Definition at line 143 of file UT_BidirectionalTree.h.

template<typename T >
void UT_BidirectionalTree< T >::removeAllChildren ( )
inline

Remove all children from the tree.

Definition at line 111 of file UT_BidirectionalTree.h.

template<typename T >
void UT_BidirectionalTree< T >::removeChild ( NodeType child)
inline

Remove the given child node.

Definition at line 89 of file UT_BidirectionalTree.h.

template<typename T >
void UT_BidirectionalTree< T >::setParent ( NodeType parent)
inline

Set the parent of this node. If it already belongs to a tree, it will first be removed from it.

Definition at line 57 of file UT_BidirectionalTree.h.

template<typename T >
void UT_BidirectionalTree< T >::unlinkAll ( )
inline

Unlink this node from the tree completely.

Definition at line 49 of file UT_BidirectionalTree.h.


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